python3-salt-3006.0-150500.4.57.2<>,hwp9|GTTm<-Ƀ[̼,]@>߇`N8H=M@c2@Xe`X ş[fjLS*VsT?zoF=[~IBt-dk.^wR{Rn?,͏7US~Ә1 4xX ɏ.m(If\y~|[ÑcEѴu??J)ߓRu%,c/)E0mC9cWPt<>L @? @d $ =`dpt XC `~ }  E U##^l^#_@#a_#(a8a9hh:=i>i@iFiGiHIDXY\P] )^ 2b Tc UDd Ue Uf Ul Uu Uv w x dy ( z ?  ? ? ? ? ? ? @ @+ @0 @< @B @Cpython3-salt3006.0150500.4.57.2python3 library for salt Python3 specific files for salthwh01-armsrv2SUSE Linux Enterprise 15SUSE LLC Apache-2.0https://www.suse.com/System/Managementhttps://saltproject.io/linuxaarch64for SALT_SCRIPT in salt-call salt-support spm; do [ -h "/usr/bin/${SALT_SCRIPT}" ] || rm -f "/usr/bin/${SALT_SCRIPT}" if [ "$1" -gt 0 ] && [ -f /usr/sbin/update-alternatives ]; then update-alternatives --quiet --remove "${SALT_SCRIPT}" "/usr/bin/${SALT_SCRIPT}-3.6" fi done for SALT_SCRIPT in salt salt-api salt-cloud salt-cp salt-key salt-master salt-minion salt-proxy salt-run salt-ssh salt-syndic zyppnotify; do [ -h "/usr/libexec/salt/${SALT_SCRIPT}" ] || rm -f "/usr/libexec/salt/${SALT_SCRIPT}" if [ "$1" -gt 0 ] && [ -f /usr/sbin/update-alternatives ]; then update-alternatives --quiet --remove "${SALT_SCRIPT}" "/usr/libexec/salt/${SALT_SCRIPT}-3.6" fi doneif [ -f /usr/sbin/update-alternatives ]; then for SALT_SCRIPT in salt-call salt-support spm; do update-alternatives --quiet --install "/usr/bin/${SALT_SCRIPT}" "${SALT_SCRIPT}" \ "/usr/bin/${SALT_SCRIPT}-3.6" 36 done for SALT_SCRIPT in salt salt-api salt-cloud salt-cp salt-key salt-master salt-minion salt-proxy salt-run salt-ssh salt-syndic zyppnotify; do update-alternatives --quiet --install "/usr/libexec/salt/${SALT_SCRIPT}" "${SALT_SCRIPT}" \ "/usr/libexec/salt/${SALT_SCRIPT}-3.6" 36 done fiif [ -f /usr/sbin/update-alternatives ]; then for SALT_SCRIPT in salt-call salt-support spm; do if [ ! -e "/usr/bin/${SALT_SCRIPT}-3.6" ]; then update-alternatives --quiet --remove "${SALT_SCRIPT}" "/usr/bin/${SALT_SCRIPT}-3.6" fi done for SALT_SCRIPT in salt salt-api salt-cloud salt-cp salt-key salt-master salt-minion salt-proxy salt-run salt-ssh salt-syndic zyppnotify; do if [ ! -e "/usr/libexec/salt/${SALT_SCRIPT}-3.6" ]; then update-alternatives --quiet --remove "${SALT_SCRIPT}" "/usr/libexec/salt/${SALT_SCRIPT}-3.6" fi done fi.WO^ bN&SM]}(!6=6|_$%S:0+`T?TqZ/O l ^B!wY 3. 1I/ @t m R ?m $ A M . < H!  Ek!!p! v l. YS.5  ?>A ) c Y Q )//:-_{"m:C( LGD\9VIx7W 8L*;bPz4,%QHII92I:_#P`6#;V-$v B_1?0enw fC.%+5A6S t&N4m.kZ.E Gr{ 5A|c_>G_q?A, xZ=2NLJl&q1tD,`U(/C 5i P= _drFS [ &w%hL)0 fw<   7(4Ud.X M{: )mi}.@!?"% 8#'-/B Mi/g< %y_E X6O+nk&E/b6>& c+Q-3.ayQ+-> GJ"DmV-Ymn>I4$1ƅ7&`xOW(@W*I@Gq4/{.5D`d W J d )E &8d:R&,{}  B e  [ ,a#G}|\mn,ǽA,| 0= %)3+BP7]!o  4Qbp ;E^c1J~S[Chd#+H|K<;) bZ2a3R RwAoA0nGb8 w#TO>P| ?)C`O $80$"+hc,S?/H1 p $Wn7;Skc}eXf7Bw- @+y%Nr/}t D3 #Y6u&#`8 |":lL@g#m8RwqUpYqcWY'g5)zX + 6p,:! Q#()qSP@3.#0#(G"9<F=/vjAI&| d%AWP8 |@98@BK/M8 Q2$f2 GW38+3  ҿLbF  9VosagKEVI'm0+d:.! #ZA)!Ci g j*|1BA(54/ w="6 lPI*. U"58*0Uj 0In 7Q((WZ `"*eeo!/qTJfGLY<9@ -f r";%$wZR4$~  %h{ @ B pe i#~ڎFH2 U]# OU,*]<Ւ#sE/Q '$I\b%uan+ / >+x zD/'Q ?@ =i>^ 'i<6\=IR9,* ;P,q/ cDR 6EE*TYU@[A% &>6. tRv/( i*Y,d zD D %y3@ A66DA)ZX ;HE P:'C-|I -;t .M1KLUGk@N)Dc'z2 `-cCm4A''ko 4F5$5,I1VwY[M-38 LJF`+Sl[ [0=5*yI2}`HN(1 ]@=‚X?c*"?71S5?6Kp,soGoZ԰H3m29+%:;=82^?g+!.~hN~E,501dRk+u&)ا7 Q?D .\;*W%)@C33~-pX(S@,!DcxB/8$Hs"{H. y>P+# O# *"<,~#TD'42"(G*gW$! MN2h\yWA/| T F(d[ ) ?n*1:o%~<\&A $77Rn'YDP- -(?V 70,v]q?1'd#8 !AF5Cn<57m+Z$@`K?`=i)p, ;&' Au% PY^a-o < #)b K0>Z !z&G+V( A CL%Es)T+C4"6, Y @ % + 2 Cq >t J f+o _0 j2*,:B3 '"OE 46X70"o$ .EaT" G- U! '2k,F/2#V-!c&NF? jEjHhe 3 c#aFV.'/$[ 8 FXk$H . 8C  sO (  ` f t R Q A }+  S WL2kz`4~b]a& a&OwR'gUl1!U*#r Z%64J5%Z#bUHAi& #]'L77(<Ivu e0 *t(F9!YB*4c A1;  @R5G)8(t Ki=H@9}h<d<& 'u0,J1=+DJo@$4A r  z1q8N> G cB  n t : AzIJS|A1+ Q# Y <>R@hP  5  8:Tgt  -8 q!_uvmM3E 28G X  #q )s)-u _zR)3jm.K - f va U"  t v  ,,C U0`#%g&4S` \ y (2/  ) e!m!Q(m g z u50qwbE  %Ac !B!)/ rVJ : R1-Tc_B"#lT  X&*E X/h8dpRU)2KP.41O6IuCC1j0l{eUB0r,.hM%Kb{#! )\ Fb9L 9!]'2WaUA!i*Q ? YEPo,' \Rn[jm U00oE:F<>I'a&)M"$H{ g NlG\]d2!&n_ qG# lx ; n WO "Xc O#a p5RXX*Xr8` y ^J d  } #1!4E&$2 -N@f_,M,z)} qDDYQ !-a O" `q`|% `- !1 EA,4;!K|~;c$k8>():(7!A Go n%gmCFb&& r $A$.35 g /E< gT7 00 ^ k<puR&8 A X&*r ='4 % N h 2D u 0;4: _"pl6 x;~ |z36| '= ,< uS_0 V$m#G#h u WW nC* uJ ; yT)lZ# E.W` Z> 0 df-,`w3& y)DB"# {i; q < d0%+.G < %+ $, 9.B] %B &6C49 IKY}l9gE +"m<0$) +a,>4jHϺ.y 5c8+I OQ-M!n -d +H8*" 6sZ~  A-M/H eb%/Mj#x oXV ( oZ t & >+ 8 v;js6QE\'34l!sbU > ,'@ h 0}!GnY4  Kn6 M  ]{*K #9  $N, ;!cC`;# 0` ]_VjMD ?YD}~62!GvB> N7d{3*"9p2<7] v6l* kL2 : 7` $66vɁAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAhw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hwyhw}hw|hw}hwxhw|hwxhw|hw|hg@hw|hwyhwyhwyhwzhwzhwzhwzhwzhwzhwzhw{hw{hw{hw{hw|hw|hw|d?hwyd?hwyhwyhwyhwyhwyhg@hg@d?hg@hwjhwyd?hwyhwyhwyhg@hwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyd?d?d?d?d?d?hg@hg@d?d?d?hwyhg@hwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyd?d?d?d?d?d?hg@d?d?hg@d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?hwyd?hwyhwyhwyhwyhwyhwyhwyd?d?d?d?d?hwyd?hwyhwyhwyhwyhg@hg@hwyd?hwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyd?hg@hg@hg@d?d?hg@d?d?hg@d?hg@hwyhg@hwyhwyhwyhwyhwyhwyhg@hg@hg@hg@hw}hwihwyhwyhwihwihwihwihwihwihwihwihwyhg@hwyhwyhwyhwyd?d?hwyhg@hwyhwyhwyhwyhwyhwyhg@hg@hg@d?hwyd?hwyhwyhwyhwyhwyhwyhwyhwyhwyhwyd?d?d?d?d?d?hg@d?hwyd?hwzhwyhwyhwyhwzd?hwyd?hwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyhwyd?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hwyd?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hwzhg@hwzhwzhwzd?hwzhwzhwzhwzhwzhwzhwzhwzhwzhwzd?d?d?d?d?d?d?d?hg@hwzd?hwzhwzhwzhg@hwzd?hwzhwzhwzhwzd?d?hwzd?hwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzd?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@hwzd?hwzhwzhwzhwzhwzhwzhwzd?d?d?d?d?hwzd?hwzhwzhwzhwzhwzhwzhwzhwzd?hwzd?hwzhwzhwzd?d?d?d?hwzd?hwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzd?d?d?hg@hg@d?d?d?d?d?hg@d?d?d?d?d?hg@d?hw}d?hwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzd?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hwzd?d?hwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzd?d?d?d?d?d?d?d?hg@hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?hg@d?d?hwzd?hwzhwzhwzhwzd?d?d?d?d?hg@hwzhg@hwzhwzhwzhwzhwzhwzhwzhwzhwzd?d?d?d?hg@d?d?hwzd?hwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzd?d?hg@d?d?hg@d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hwzhg@hwzhwzhwzhwzd?hg@hwzhg@hwzhwzhwzhwzhwzhg@hwzhwzhg@hg@hwzd?hwzhwzhwzhwzhwzhwzd?d?d?d?hg@hwzd?hwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzd?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?hwzd?hwzhwzhwzhwzd?d?hg@hwzd?hw{hwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhwzhw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{d?d?d?d?d?d?hg@d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@hg@d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?hg@hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?hg@hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hwzd?hwzhwzhwzhwzhwzhwzhwzhwzhwzd?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?d?hg@d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?hg@d?d?hg@hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?hg@hw{hg@hw{hw{hw{hw{d?hw{hw{hw{hw{hw{d?d?hw{d?hw{hw{hw{d?d?hw{d?hw{hw{hw{hw{hw{d?d?d?d?hw{d?hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?hw{hg@hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hw{d?hw{hw{hw{d?hw{d?hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hw{d?hw{hw{hw{hw{d?d?hw{d?hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?d?hw{d?hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{d?d?d?hg@d?d?hg@d?d?d?d?d?d?d?hg@d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hw{hg@hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{d?d?d?d?d?d?hg@d?d?d?d?d?hw{d?hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@hw{d?hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{d?d?d?d?d?d?d?d?d?d?d?d?d?d?hw{d?hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{d?d?d?d?d?d?d?d?d?hw{d?hw{hw{hw{d?hw{hw{hw{d?hw{d?hw{hw{hw{d?hg@hw{d?hw|hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw{hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hw|d?hw|hw|hw}d?d?d?d?d?d?d?hwyd?d?hwyd?hw}d?d?d?d?d?d?d?hwyd?d?d?hwyd?d?d?d?d?d?d?d?hw|d?hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|d?d?d?d?d?d?d?d?d?d?hw|d?hw|hw|hw|hw|d?d?hw|d?hw|hw|hw|hw|hw|hw|hw|hw|d?d?d?d?d?d?hw|d?hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|d?d?d?hg@d?d?d?hg@hw|d?hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|hw|d?hg@hg@hg@d?d?hg@d?d?d?d?hg@d?hg@d?d?d?d?d?d?hg@d?d?d?hw|hg@hw|hw|hw|hw|hw|d?d?d?d?d?d?d?d?hw|d?hw|hw|hw|d?hw|hw|hw|hw|hw|d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?hg@d?d?d?hg@d?d?d?d?d?d?hg@d?hg@d?d?d?d?hg@d?hg@d?d?d?d?d?d?hg@d?d?d?d?d?d?d?hg@d?d?d?hw|d?hw|hw|hw|hw|hw|d?d?hw|d?hw|hw|hw|hw|d?d?d?d?d?hg@d?d?hw|d?hw|hw|hw|hw|hw|d?hg@d?d?d?d?d?d?d?d?d?hg@d?hw|d?hw|hw|hw|d?hw|d?hw|hw|hw|hw|hw|d?d?d?d?hg@d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?hg@hg@hw|d?hw|hw|hw|hw|hw|d?d?d?d?d?hg@d?hg@d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?d?hg@d?d?d?d?d?d?d?d?d?d?d?hg@hw|d?hw|hw|hw|hw|hw|hw|hw|hw|d?d?d?d?d?d?hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}hw}4688f5cc4231357f591cbd3920987d24105d64b54794ad32d8c59d8bae9cf34dc303d7f09bacfde446f0886ed61cac4d9918d9eb795be9e425b65d383da5e20607cc9926e6259af0d9a5829c29feb6b8d60e06f5f7bbba411c3951203e4f5a5af0c5bdba67aad7764a5791620f5284278e54399bca81ea415e07a5511bdee03da5602948c9e1c6ede8a9b74d7a8dfff0443d583ba7bc495e00f6275463e8999d01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b4ef3f928644e7a75f67ca26e50d0a9b82ad0f94c53880a5d6f9071f7055b011601ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b55da85015c8f40d662b6b6ad2d116deb042180b63452a637d2427748d48545bc06a4b397fc7045eac527c2aec3ff46cee5ce30016c760f238c26e79902fe67b6e8cc5b360c990a5c3c835e0404114e6fc7ce643aca23395b47c99a646bf8bd6c65abd1975a990f53689ef9627f968420e3df5a90491ec0b1a4419bb8411abc65926446a3dc47e6035b902ab76eb9c2917cd1d57c0d27f4891507713071c0c0494095c057284b859cce12423ccd157cd16e2993626a4546e9aed54c01b883aa46012f6e3df43e0537706cc4fdafd92859f1b630b68788227687d74dcfce5d756c878c2294dcfd5a0f8259d3a7e84c3f42795f26412a41a845a54282a7e8752a73c5306361bf54c173cef9115af642017592985f93fadc322a33b0611bb94ba305e257a62420976d00ba58da0cbb76a65932673f4353bbedc2a4a10fad2f2cacb920bf5869cffb85417072de0068a04fe3d86900988681dec9dd28a81ff82e3c9f8a24d5ed2628270245f2d56cc6fc39c51f9a8f8ac6371a054fa9c846dd3359ed6d5ff3badfe77b2252f1ebcbc80970f1717f061e27ef3ccca268ef9fb4406f0655532d9e9373cc708500d74cbb75098dea7fbeb27191eb16ab75cf3f67def96c4677bdbab91b33ea10b5762d4a64500587793dbd571c840e6479c2c75f5eba32df27da78550bd1b4071b3377608fe5cb28d8199433efd3dd9708f89529c1ccedaabb7f4b3f5f89045895002cf009c132323961fa6e2ecbec7c928d9a37a82d710741cf90b826c116e7682ecb12f8f8c31e631b731557b26bf93a77dc60fb0507f61fb1f0d6cb1bf0227c413334c03ed0e5e4dfd2456f65814f6f0b1df81096b4a79a877b413e9b2a3cdf89a84c7d1ca0bfadc37c0a25726687dbdf060af8a5c63b76cf772306c636e1717e16134f23587a3be739a6004c98c3cf94db17df167b683ed17d8c5ee490d1998b55d02d3db22d972a0cf3a12bf88ded4fd5d7d1161400f6574ed1aa464bfd9a582b57103e69b8343d59c7d68275af21a41aa586cf06572171aac50998f8bbd63ec1ef59e4df03dc584dc4c914cb42b107108a797796201c0ab3376532ce4247532d431e4536ee134f4af7957097797dee3f993c95c4ce0e22235af46add056fa5bf5b6569acde53986d63110efca3de85c395533649e4abe9b674c12083b9a9361ce70db12c930da566933b0d29a2ecc66925e4b27c5a776a5928e5721921c4c8361abbe4c86c43b747e1019602ac2a23d961ca4d4c3f448c71aa1eb3763dee1fc1b5f6a183f5120df13cdd1823b608c7f45c177347710c6936850d3cbffc9a85bc7eb337cdf10f67da26b8b2d9640af023b663a8771070f332ffa5d1e40e98e7e9ce04ca2bb2c09327931ab5cb7a23d8a91ca6d93357a8c662081007369dd32c5c8fd0e2d00d168776e60db19db120ddd9d6a8b88c2bf93b18a33e989face4b31a5d32c827e632eb7089464218fccd613e45e1de76066ffe4c0ac5f8211801ef53132f5c4dedb9836be812583433a72893232ce16c9f78d82a681d4862399e982aa1cae7ae557568f65e4489c1225d36bad79e0d8875e7ef1a94d3a35444b58d841ba529155f115c08520468c6ac638e3bc02425a0c56b9177b21a74586fd13603d7a0291d12d02633986955b5313acdf53585d80c7b2f4bceffcf76b1ebc7990b841d3c3dcb07733b8df88773e894a32a4e308f951e30564773ffa595fd4abca437fd6ac0267611b70fdc06e8bd6d01693531bb134cc9c325ef15169551541594b82f5c59afecf6cd891e77a4f350b0b3d4a0ab74db1623a9bef2499b99858a033ad2e57b28cbd623a9e7fd009ad4cf9d74c9fb18828167fca0e27f95746a7c60584f7efc0beb772f29233d5f05a66e5579d87e647a1a26a0fdfadadd2a73e31192c9de7c1be539efb93fed0379db352605873ad5c930b3cc7e711be1baf8d8355e4bbecdc10a9b0f46db5a2ec901b8899b5137dc3d21607322ca8f2d5c00866ea1d918b78e1b9db3f84b11e9d80902dad7db68eb0c03ece28afd81b178222a7983d794aacfca5067f0d8085ceb4f89205bb63cac3280801e035aa4337611bf9ba63f235f472a8e5960337289f038aa987f6cb5f7c419b1c3ca55b3ff13295587d7f6108db17209bb27fc5a8912d11e66c7e07e7eefe6172a518e8ed4a405accd88de848dbddcbbb2ba04c625cfbcebb341afabee7d67974816ed7c4d8b4e053c8a890f607445ed18eed32f01a64d62b5a9e783c66a4d84c9996ceca717e70c992735701a334352d16f8473a511117944999566a5f742f923193a66c9b5efc3264b9c99c2eed2f1abd2d69021492a5f46eee68c3f7ebcd4c55e518d74c983678eeffe09c5c8765e4d6581dfb99ae771b1ffd07113419bc98d51b3ebc0b5272215c4bd67ea8c4a530bb81d3473cf51ebf61f67c5d10179c59faec4dd9463663dd2ca7bd60129af75e7fedc27e3c66e9c9e2ae072fc1779c87d3e330fe765600eb67a7e7820f854dde564e9a1a6d64e44319cfbc128d676d6ced6a5e99bbee9c6e6cef18b07f3a66ce68c5bf2004dc4526cea7987ce20fc0717821d06fe5a5079140c66204e94dd4544533d368aff363912fb1f039aed447124a54249eaca46980d3dbb13a483877594afafdddc32c134e9639c711e9b0424c587563e2fc5a0998dfb79d92ae8031ed52f0198134291f12df44312cc84f717bd970bad2f6e07da390dfab1aeab24a119336604ddf471f887c5c0b62e8880bf11ac82400909c45b481549fac314d41f81007991d6caa047689059afc6bbc410b1907776c8e9739fa72c89d14437dde68ebccd044c90a3f898f0efd9f10ee7b1ffdfc9587669757a30f588053ae89c770811ed1dc1c5626c3b9e5c42d5b83792f5a7119608ad5b7036704fec345bbe3b8e3d914e16d246f4de8491e22b113e24d72c2b4524131124915522758f7327b8716d79e93e5293b19405a666a69bc0f9d7f46667308c3728635c28e86040b0d8fc63e81b7aaeeb32fd3abce0a0055c8094f5b154bab9c4b311630fb95c5ed7a275aab17ec7f53a6e161e893a5865ce95024a5e1984dda0ed5c405ecf769dabc1d84d3eb2ece6ec66d1ecfda6065610bc2f3b966b3fc5ee434a97775242b90d9d79bb76fdbe52a1901bbe335b7b52ba1aac3fccaa0f9584d30b72943084787ebe088af643e113c17e98f3de758d8e4a00dd69c831417ae90e4eb5448bf67313f872686038dc3d751629b6722069d558ecc66e71b11b94d87083f9fcaf05452bf842fd04e5cffbc2d894558efa9bb079ee73efc49f9d0ee74b504a0d16c817dd71b42682adb6f795a0f0d1efe140e1f347151a894ee1aa8fb85552d43e7d1ad4dd7398a167a0db7922cc7a000019078bd9f8f98f378dac25cb71a35163f5dbbb69af421c5cac41c0021b3021ad50acf5a7d3b4cb4ebbd10c179300523e434e7af32458a68b7d47b70093ba49ff5971021e77c2c6a174ff150008753e60c3f9bc68925b803c3ea21f7de10aede545d3a52dcf5649eefbc1b221ba3b50c54d4308f5ebc4fb244f62418425b1e9bea198021e3e995cdeb4ca52f2577af52fba626ed4731e1da713fb4dc1bce7772b7445180613e87363b567f839d1fc0ed5a548bc032d0e7d25567017ce4c6750dc507fb736a5f91812c1e86eae62f19498cefacb5ed5a13573f729d19f6fef725b6920a5be1978b06ad286a5042e7d2faaffa9cb89c61ac276b5a1c0c9a62ffefd4a9e4b3f81f4da11e9e601e36b52c6a0584a930eb83c66f7388aed11412fdbf890e51858a7ccac13c6d651e0af56ffc237f232c0c5105101fa540798fa71b34aa17a8af7d50d968cbac7b01bb0dad87e7f69af009fd33dc81f28a4cd2671c0a28f8a348c25cb960ed8dc7f0bba26b6f56d1328fe72e2a0737b2ed515f0872f04f8ca72895c0580d903487a6aeea5ca72264518a97275dc894d273a5b3cfb4a26e2bb1cacaa28a625ff6b16bf4986a8a06f88dbf881352f390ac6d6a008b135c01d4734824ced75a0c895b4324102f2c85d7d56a7325930dbf629f9fbc751d72f0d0d98784ac6cf183a247a79d2c58f8ed3935014402798219d015fea5fde279630efed16db014dda6506d07a4a6f40bacd0ae2b4690d1ddf6532dda8edc5e8a5a695f2a751e10103e6883aa81d5bd4e0dcaaf7732b999293e18125c38d8bb4b589c45e8eca659a3544cc9798f0838e369f857ea087531ee7e0c374a5f14d5bb63883aeb81263f5aed2318230d0a567e4c4754f2bba525dd89fa3b0278024ac7b2bbea4a1ac2b8fb1fed0dad4d9048f25dd5906789b0ae8984e4114f7572483260d164b8a0ddf06e6e5851244d1ce85a5a3680bb1ea271fdf9d8e3e182380abdc71457074e5bf8ab287e29679384bf4661aa3e28ddf2172fc250bc95455ceb1aa96016eb55aebdf77e793f4fee2f4b8b536de13ea21c30387baf9e2191398745134461533594aca2a9305c2eb0de21261d50ec5691007ac8a9fae90d21cf8afeff5298020933c91cbf63b8247890181774881fb3f8846e14d85e65fdace5e1c9fc2e6c8951a5a5903e08bf984a689e270bdbdc7500d2601f33c68de2850b750c9a9a931eddae1c09c698c2b36ab4b4c149de94c22cd4eb6cfdc57944ff08df44aa6a53a875cf2cc506a7005198cda5529cc9b5b20bfd1f59d4911549048607720222b12d79acd4381f2564982a384ba6632f18a6dcb5f28d9ace93d8a8d4b5d90be5c6278389c792ae1fe3f114ea3810a16f95b0617d532780863babb61090b4cd65d95a24106886a9acf232e81f8e2ccec72dfde66ed03d2a9852dd207664e5ed9c6badbbb6fba5ebb38e7a8eb2ce3ba76cc271f3605e036622a17405b6633733574e0d37b962e76b37bd40de1c1b4424d89372df0c12b80432156c41570f0a401e07b954bd1fe1dc44900c06381839bd06238b38f579040f9307d0c11e85bb6e3f9a4470cba8c5aefda65291d48e8a44a658fb10145975ae1516e59590e40914b124f0e0cc436a6fc5c58412be1ef9ed0d88efa7bf0bf7700152980532ab079f4fed93b5e421fb9935d2930649b37ea6a5784db12aa1b2f31fc745b82ac99accc8aa9645df6a393dbea2bbd1617f78793bb821f895d4bb680083220e43e14f3970ec7a0dedaa88240ac6800a70aa805fa52ff5e73ac7635b943b7288b24a6543fc726ef059580b1e46d1530a26ec99a2583ff62099b4cb6da2847b19e866f6c795a9b7f2832f49e5c31901fa72cf23fbd5e6f89872e5715e78c24f93c33e25e1734a0c9302eb5522c0e6e19989a95e9c8c8eda6d0a3df6748db306c2eca72084150be702e52628e3b55806c2f6c31a07060d4d4d0e8f02eec82e9bedeff60da0960cbd671c0914b84adfffcffe33cb04c48f859659f6316cac659415865f768495f5d33185e135bb2e9e3b5eabe23940f60871f9cc67025682eedc1d472679f64dbffbc10d09cd363f4afaf46d9799fc98f73b679a71cb838941474fa7e245a893a56c0d4e6b4acfd877da4ed1e322d0f44ecf4cff9e92d0df01998fa2cc8646f4bb23834477f35f2cc269bc9952f6e8c11375794e4526b4281ee6d8a5cdc1c3f218958f2db1435b299aaf663ff40b72a1cbe95ae1261930a5cbbff8225366ef897933cfbba423c81f281e0f601a77dce8ef8c38f25889cde5b981c0115a0625da230dbf741a3e28ca85a1ccf03a5f5bfe4faed228a85ef13907b0fce35c7ec227947ac98dc713070922000e381751b7a0bacd9edf3425928452714435fc9a68e04571964cf9799cbc827aa6f411fd55a9305e4c2ec83914d420b447d4503eefce962c5679f2997d8bfce7100b5307b3fae1b8a5e0a8e9957ab14b73e20d18e12aed28c50af61dde13cc3c221328e3f8ff8a10a4d607e712f959487f2f5022ca752608e6239ed9289ac39664ed30cd0eae93b575fbd05f49de31c8ad5333511a36c1792919eab56ead110f06537db944af55fac866be322e1804245f89e1eacdc072315dd0102af85f06d8e5852e65244cca5a242cb46e2862548d4d3d9d3881fa114853996bf58e5530887967812bd57b8e6cd8d85c5d3c70281da1d6b047cef148e1adc7b110ec76b5f56490a43f142c31a5721ce026bc925c73610472c535545fdc85845bfd165363ff7a9a987dacd26f6b699e47683b7823b60d02b3bae8a60ce3f60df1306bfafbb91fcab9cf26756159df9b718fb848cfb54dc058be5b35d02256436c09f8db2976869363f03298819d009bd9171af30171dab8806cf43e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8558651003d74591fdf79ffecdda81b37a991966d3f6cf71be57e932fedb5ae4c850e5cc79c5a2cb3c7de8b37324f17feac9a6ad2443202a67fa68b9d322925623a80f61291776a5b8fc1f584227cabd8bb6790f94edb961b9c6acb6011dc70c49c4e5e326fd7f865847ab327a6bcecc4dfd6c3a9da6aaf9a84bebab8ff8b482bd8975aa1e04b619e59cd285f5464d53cb9fefe03f8028447a0e524d5bfa0412c534aae8779a1be0d1c25879e109afa0a555bf9dd55706cc3ab70e835b8e419176235a5831a16eda283422de5ba5de85ab7c9dea6ac3b711bc5bc59f2af7c9c2126484b1c6a579029f918e9abda1f9e9cdf1ee35d428df1d9739549918edc96623fa93114cad0a1a7f046f681540bc584ac88a6712bf942a0c26e4a799ed620bfec8dec96e3ecf0d6b52685258a1ec1109b3dde851180ed76ee3806ecf5e9d26364ccd33d530378f34d5ed164e1eec252c698ec56eb9bcd75b9f5c3c4127f04b9da10887e8dde29510f64b9d0bef0eca1a1f3b584ad1434d6a734d07ec78380a9e36d6b62d2cf8f1a55da16c1c2508df735e6d905ba9b5074a24d7473818c66f79504d80753a97afd4fa033a0635d0af66177a399929945fa28ff08edb7eed14c2f167b3a91b64d756187e275ac8eb422e80967e3e9e6e027ef8736cbe3963ea1302ef6b679de92b963052e1ccd1125b07130ad8205ad0812640f16efd3ccd1d28af5700a9b986d55b606565bf25c96a7869797122687b5f5822da6838713526b1e576ba9dde90a6d072bd569e1a4d001901f4eb21d3c4a2dd4bcbce6f660217e32e903598f15e41df1dc6db5bc79bc4fe19ba4be83c841419481ab2afdc487f74cde2a0a0c0827a60c450736157ba180116312619854c890bd1a236da668f8f141270424c876cc344f20339ca7bd61818b5c3604bc4a2886763f7de8d257c7013eb3c3d1f3604420da9a3443240554c356322d2f03795da0a898b35e6302314711f26f85b818364e06b29e334449d230ab2e7ef5374b6943b0bbea8d798ef05f3bfc0a0fdb76dfd6f2b06726b87a1eee980cb1e613960776ff6c7d2805352ac3a8187d1229591034ce0e5ff4737e2d5f0536851cd5103b7ad1dba2c7fcaeecd8c1c0bc7672017c3bbcda35e07abda0b6168e883ac2145443f0539da4094579b7711e8931c0359a5b42ff7f6e79ff29a7b897c01cc1f2559f2857c2d291e868c609474b03aa749248fab7a75248ab4f06384251a13f482a6dcfba2edecdfececa85fcc3c8b9877418fd04d405f0e3a8213d7e5ed4ebe8d76a7913a4fcccedb569e29cae3bd881993bbb8493745d4307bf7d157154d97d9df3edb6e2937db0574d96f097e81e9b35c224b73e0f91090da5be66948f18383128b1134ec718a80386addc233f43b5b59c8c0004b7610378074d01247011904812c8b5fdf4ba67dc2a021a520fa3131d806ec5541f932e1c02b99a17d70eeb433b8f74d3a4563e89926a74de71d9e5ed5f862908f75648b97a76628233c953180d782dd498b84043f82593fa2a720f91889154e82a7a3d25eb63919658663188635158295fcc7f12ea6edd485e76b13daa942f91c15a5540996db5275c966711e94cb14d31727db727d855183946674c98d9c0b558b70ed00619ed24d9e499536141df27ff663e51026b28f9889c1ed15ffa6cbe75e30fa9001a6c3cfcd9b21f137ec014d13d17941eafb5ebd20a80b335bd11f979c969eae15f6b5a8981e99b34de2c58a693119a75a6ac0ed03fe0014cb218c0b15d79e312dccce6e6c263b3c51dfc091cf59ce7d9d3268389565792526c0267640f8de9bfeff848d3d4582406ea4e50ada09861caf5e12799c805b91f7c9ff807952c501ef4d570f1bf43557c9cbcb21762225e00eff0bd1b8cb3dc45ec30ad6c1838263f56202e09e46e4b668057a720a9c6eaba045a58639fc1514836907d0ec492bfa699696f581121e4ee31cef94207cd85688dec4be41b5a3e18ea446bdef3dfebdf949a5435837d6924f0d7f0a657b794b52a98a63fd908ee8dacef7baf87ca4e113013894d24683054e19120e1735fe1a18d56598eaa811aeb9113e903cf3fd4e541920f270ef8787a45b73aa9c38a67ffa297b79ac74daf451d6f4798ebca68518435eeb3d9d45ad0566c721c3f435efcded05ae40a850fcfa81bfa152547ada0e7bb54fed9484d7bb012802ea186c6bda3764757f4aeaf87c848d5e90e29468e7c4a6f9f4e5d5dc06c1444faede5a2bb8149d49d78dc7213571d0a55b5e6ec573c57f92e5a638aaca59f3c91815216c21867963cd21d8b69c14ab9e0e83deba00ee95e2073bcb80ad5ceed14f139adada30af87f57764f83c435574db0b4ff90a4cdd7b82087abf2561958fc308389e12d782272758ad35cb97a8dc3c243f05413ab144beac510dbe10510dd983ae5afead3af5e91ecdde1c04b00e9a991dcb855a9911a90b446ff62f3b92c683d91990f34f5348892d6e405bd078af712c427e7b33873b1e6cf4e4bdb87286fd7e0021d23ab3009fe0e0c1a4c31f4536fd34c6df88e53020ee7d79f623885412d6b0b1553b0e15e4b53bf474f65a55b4c3ee6f7a9458492cacce60671c7f28fcb795e4fd7e0c8247ef1231f81d8121f84936e0600f50ea4a305e5d1ccc6f12cabf4dc1f6c91f77cc87cac98f61eaeb5993bc5f5e4b820f27fa13489e27fa6ea56827fc3053cec66c8ea9a6159b8f63518c5c7d208bf81a33d58e27dc98897a344d3884a62b9982c54a8b42a67025e1147c81826ae30669e3e98b298ca91ee3b270904acefbedcdf1e4db8bfd0e302703f689c2cb842f1a08afa5d3b1b426d6be7e691f8c14a1862d3a7ccadb0ecd697f3f59c661cb945d5df437e9c2e5e24dca6abc8b75a5aa34e0a450e65f8445bda111b93117b91914d7c07f59d27b505847bdd4e0af08384e73f802e8d3896a460109d1c9c9eb9ce41a133ef72810562b2c62fe2435e7c9b85672ac40c859844ce60b2cab7c4e7ae80129cbf079b9c97c8d50c0b1f63cd95644a432227b6e1057d8ced65a402149dc1f67a244c728201162719632148866f44acb718d85c7c6b28c058bb98545fec4875664b2891022f18c79b90746de3043354c040b6cb73e94ab1a28a9f2ecf0aa5ccc8721cff0622101e8c82f6fde3825113136dc394550da5cacbf98aa639e2b24dc588fab1a4bb710d6fc6f3f2179bbc24930a2455767a6114264419eb1bba25a54a80df29975f72626d9262f8ee9cd81b42bfe8e28b99fdd8c6ded4cd83a97c5906394ab6ad35fbdf940de2d9f39a2545db80f9926bd53899e9aac4b9ad55502bbe14d5f17433c928fbdeefed239a973405b1e21333c1bd104c71ade06ae9b3b5e689cd6ed5d938ac1d346e1815e9fd06ab7b82a1e341bf4330104ae5893e06ef6e10b1e564f3e083697b8c708bdb10f89752b2eb45e74399b37c69ab7166d3f769e078e9dd3d816cff1da997839ab5cd4e2b6d2964f0d70aa923d699e347d78bcb7ad94edf73d1820dad728a2a6c873e809320052486db7d1ab039f1e747f6e24670399d55a2c3422094e57d5eb4943158f73b959b4c9e3cd85dbafc369c492b6920e9d4adfe36ac6ba6a8e616870b5cb3d323739c87ec66d8af5070bbb54d5ee555f89cefb46f3825bdf17383266549b25bdfb3bce4e7e85492b665cb79858f8eba27a96c746daef0e68d92fe6cadbac027f865b299853554261eacb2e8ce6f978ffe876baf08771227689f2ecbf9e66b939b39855f28b1670349bf9cecce65f937601d4fb60d03aea4e405382681a33c54057b99d63ca69389a4eeae611478eb617fd54821169067550f0cee2bee23acd716848b8898f57f03f68ebb9039ed74dc44f2b923585061ad1681affbfafc8cce009f05c868289969eca26db6146660dede7a184363e9f806ec58baa220f2b93f0e70656e71db56a9e016c301ff5961a56c5dd3ad88237374da196500784b47ebfb2d16a9a110a33596612404f853dd3633e9d07d8896a6b6983fd2510873e68b853abad4b441d179d7571dc358e39533c902e3164dd8dd693341c20c883822597825283f0020c813f7481abc5fb441ba417b71c6caa9cd2b68e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855781f2f209089b53228077d1f3d50557e5fc67a7f1d5f45153b8ef5b1be71bd808611f4c6d7c6f07c08dc6b463a510c7640f065105959ca0518dbaf2dba0c5f64e6ceb61c685d497c46f0d2b249584f8c8b7bc33b4a3f62879337b9951799e0a34a250f88db65cc5180bd4e0a293b38fa6d964ba1e05d0f5d9fa6cb79abe254575c6890c046d82748c7880ea541de6970c294f5816848932e3cef1a1e8c36d8c7a13cf8ca331c190b9b278488a046a93c5c58a6860698bf3bd89fe4c780bc3593ee5e2b80e7cfd71cddb87ab978ff9daf7b741a23fce78c20a9523d30b8d4326a79686db6fb6d9b541a79d36f34978e5c927a4b7f9a9b300a5897ce1ef5e318d55fb7fffc86c41540b65ffa8c60fba661e4b12d3a2f69e6343bb51c8af22f26caf4d55a0c3b0b0871f3297752f2ad8649caad7d5a65235cdb4a9fbd3f73f562292c2ae40c37797eef76e9d6a835ee6b6146a045ccdae70e00bd44d3535227b28cb2be81635503e1c91e46f06210e733805fbf2061b0e01c3c85067d350126ae416027f8602b9be1f86d32da391634b6cfb1b9021d4bc7b6412f9a8005d20c09c1970b327c4ba74f02176f06e876a04d8c955a45dd3e0e024247cad68247423cf18dd7c11477f0f69fe000db13957071878bb3c0be52ac84bd9661244d53572614683d8d97f2779815b2de07572b49adfc639647372e2ec37a1c1b99f0edd88d960040ce47cecb3f3bc7a543a5cf5fb30ad2ed16ba9abdc8c5733ad446b22132c868d587c22a7f06a1efa435eb45f7de18f8d54f917aaf83069aba9486d202f872eaa7d3ed08a72ef5d7206e317e77091357d83dda5a823d7b88f680c37b8470aec146f0fe192418e005f45edc458e9accb36ac5b78f796b43a4047296e59d4de34d10a1a4be3ba495cecfa451cfb1715705c07fce6c05abc691f4e60b70d1a8c88d99d826187c44be1a99402c0621517e8d1fafc7a9050acb88314510799448343ddf280a698fc074179db1478da06ac270e2256d180b693d01737ebde38dec0dd4cfd0378698adb49ef3ed2ef8dda61994d2d9494bdcf7de64d4ebfde1e32d8815f72a23ad0683461073af43dec7f63b4ffb1e6f78e1a2fa1e17c922f596443a50caaa70f2ef4a91b672006d055094a6a438578002df4faf72ad9200c4a5cb8f1234ff4fea06525d8bf51d19f06e4bbce6037575fd12aa3a6a14a2e796825a28872e527434793e67478157a3267a07f79a7fedf85b97ff844a28c4e9d484ab17a5ab230ee5b2cd45bd8038fdebe1e33a633a3275aab4a1a1f24075495d664bf1364723a5293d901357165b3b6ae44cb4e1e3085787b575dba7e106e75ee3d3b429dd2169dc494589be98aa577eebb99d38551c390237ec83a0bb0547fbbe48550fc03addd5010af30a279832124e035ccc4de614cfb7d2a6b601e2ad31e37af1af6e8c398040db1d26e3903b18bbc0b59a78442b6b7b1675115a80ce54c5ec3cd2b6a652d394f204f0d5b6cb5d1a06b8e9abcbad30e65c3e3d188efcc91f4bf757530bc3964d6fabd3c62cc89ca0ce0c3a0724eaf58fa725d84a2c42393e9a68d54833efda95a9ced2a96cbbef5a34954563587fdfe63162fb0f896e33653129991af27980eac7f5421583a6a1bfea44b9318b4b745e212ebbf6687cb6fe2995447921f43f9632ed8c38fc6fc2cff796b5e93820e0bf6b1c82d1665a51d88bc16614c95f750d396c00227aa1a730ced409275e4a6aa79df31c96e4c53ac99b42ab571cd0194fea5614247dac3b1c40485c7278c3fb772bf6ed3346c772a428d20013a6028ec7ec3a7b6ad37ad83efdaf65d50731ffd633c87d0d6e9b567bd9dae5640956b5106b7e043fede43d3a16f2ad7367af681383ab9d4c89d091e663abfb8abd7a2d8d9b3bfb77d59d5f2f4866748ce85ba275a526da7982b7781f02d103ba99126d6445fbdcf7bef420f7451205b963811ac4f12b6668618b6a2d3e8532efbd99a930374a6ea427fb368381b590564f80ea1d4ded5670930f80e9761e2acc1c150dfd54ddf5774d1a8bd1af522677c68a64507e589f6d2d8b7ac0a2361ed850843734387ce9102437bc70c1e5fb682e90e5387b505c6162a11b4a42f2561cb668ea9a89742cc9acbf38218e37173df601be2af7a58e39d74658b3a28d7f42dee9d41e4a1e50b370ae7a18de070bc2249e9370ccc6e030b3d9bb31708c164fd152b40ae1fd221aac6db260e7df61eb9014053cb0234527beb8faeb7c79d523ccf9ae49d348bd4bca643d88bb2817685a879cbafaa5dceb2c2cc9dd382599dea9081411e7e5ced0a5c68af4176565ddb513aee8897e8b58a99a068216fcbbf818f0fff72ac0bb0e334e9cf671ae0c08898b837374792992cab49940c8852ee1e65d0cb37f78cff67ec65fbc001a8cc194deb442e0103ba4c4da22befac0e39c5b36468a0b49b7bb86ac89dd970591a339af05baa57a90b98cf91ac90d2685891f21a21c73a53b6f3ceebba692e79bae90ef953aeaa77e7fa42941f893a05c244809007cc91bc4d0adb2b5fc80f5f08c8a80eb13167c237c0266b600411138113c1337526a22b180a5a7d16277bfbdeefd689ec746716140c3b5dd7abf0148c960685aeca5110737c3dd2e39310dda0ebe3f72b61d2f09377266656d58853ea4a905e101c365b786427fbc4ca24dcf57443bc211879ba30e722aec4d7f541e3165ceeb7ffc49bc6ec5b7001261cf4b70b00c8055cfb59046fe2c755ebecd28c4f2754f239d6b0cdf22db11c4485f91aa2a1f24b55185e8592c0a7162abeef15e7bb98abf6d362dd93dbbef7f052635f6a30ced52b1111a101c82f9deec08c6837ad8aeb3649630ab91302b54fa7ddcff0d0488e1987af6d2807e351522715f30984aaa20c9b332746a43dbab904f07221905cb15100842d332823b760692109032be7e300f90b9d75ee5d74d09b509be07114dab6b2aa414b862100687ec4f0f963432a1557465785f442a54caac7694c9fdec3e19e607303a794354a88af214fee60c94f6534e48d41c85c20a233bb2007242488d4025178883f435b753ffdf4ce68f01f4dc8c74d1c0d297256a8100905984069c11fbe9d6360ee2b280b458b42a6c41ce55033308f80990e05ceb0568e03470537b8f8bd933a8c77f96e90ac79e98f8c6456bc4026a9f6824b5a165c62a5e37a437fd1d0996c4bdc8473ef2a0470d2279232d5a3fcfeaa8fb74131846507ea3448a52c3f3643c1339ece12786467599c5910741ecdaf795c736c06061549cbcee7296a8ead347e95e48570e9565fd1f86274efd3032999c4c3338a1a18ee7d398a9ab127f5fe8ae391ca24106f7de1dd0a425cefd2d18548a7dce2a83477928f91b1faa3d142100a831b32b49ee4353e29f499330b3bc35dc83c2daa7d75b06190590cf466c21128c3704206fc840d6c0088639cc9e859c82f3dc193771498a0cdb2550bf8a97fcbbc9f28742b21958ed7db40663fbd5bf2fdf7e92e46484c7fbc6e995e6980d844c278d2cbed1fd8578a91275fcb047c74895ab837bd80246756f613430cbc793a47414ed3c17825384ff81966e5d688b1d17a3138d28860b8213cec61b904d60741e1421ca8688c75b4d9b7c1a3f826ea55f6024f6b1e33cffd2ee58c599fad4a492f381b16e43523f8adf714d17ae41703bd8cafb1575cb2e12297c5a383df2635c61b5c2fd4a7bc640a16a9f2d92a2be8299d13f9c50825c3f1aa3e6e131e82dee3703ec70f5eb4139da818f60624b8ea1f349821a6722534a00e1d362ef537ce283f202802d3317f0dbeb76347422e1fde7a999405113850e7e4f036b64dd23f6d0686c2daeed18bb726e58eef75a69afe9ee56a1a23b2c32cd4e87d6005638e2e40db12d6d49428e35d8c5675e4db56ad37f8072dfea3a1479011ce5181dd65b426bdf96dccec5e006fc10de0f830be53a2399227b1dfdd7955dd87dd755b469c67faf79b27432e6d50179292d4acde607a0e1a68d8b377a11b4bb6853b6236a9e06024cd2d2c878f1ecfae9986e20bffc0ab4c1bb747a93ccb9f7c41869a77c8a03ccbdc2766194440676d1f8c4d216316a6b4e30da07f9119a55c11de920959637948c9df67e56a89ee090ad0987eaf688dd196f1e545dbf10a56869ec0a466548d68241510da48acb719a46dfe5261757a9319e4d78862e577b7d268c084d891cbf2aa4c601221d74ca1e0f362208eb4cb895620079a3496ff52610ddeaa7710dc7aabcd7b10b81a2702b1c088c983362dd6f59f3e1cc377d48b860b78cd0ae0a6bd0fac62829be09a9ed00f3885514b73e7952e326d1198872d0484029da32bd5dda4f0ca9eb8714ded48fb4c5b912cc02becdd276e84eb922a4607acbd44c5396308d969698092d6b2b0d48073e85a1e41b6ae7f63345d0926e71b66766e103a17a9542be607646b26e026ac1dedc863caf0321b618b6b20dd912e444dbee53987ee8aab40d38eab211fc1e47558397d5ac65bcbac15188e313861eef598246be1c37d84fcc3002652b6e164b12a5a991e0bf77962d8a8f5ea33982aaa30f61d131f0f07f1b16f1cefbcae320d20529fd38aca9d4f69c9089e7197b0229e34ecfbefe8203f475fae6b43694347bf07b992238428110e557ef067df0f2553886d28acc23fe7ee2955615fafeeba6a89e1c67511de76dd4db96f06f0897ec694642c788441a3be9b3a19e45b2b1a23257c15894603842e0cd18665f15fe4c1cc6f6d74a9773e1286891f263898235e890864e4a83b1307fa390faaf6455a3ffd69d1a8a723784204c5ffcf77f5988e500544201ff5fb6b19e486d5be403995da880a0631f2d05abd5e0d5865c7cd25c195c3c379f1416d72e851be00c4b113b0147c3c91fff79f45cb090f797f5fffe8a2cc61c530a0b930e9ec46047237349cec2b284626186d63400dda0cb8acde9d2354f05956ff723c51e9b4393c9c2079994054e59add46e917fd33ea4646e285ce1dc4ad7ff2f54e0c4f992efce860aa4efa74f0c34f00e69901991a1f48592105357e0f8acd0c4178c6bcc31a901018651ba7c433ee9fd96c3088b042cf1c22d5c5a9310d80c5ea07684eec1a5b332890fdf724e0fbe09fd4db0e46ad55b1541f6113443a4a3d71f77dd89b39f7b3791c4d4319892c3b342bd444a150ddfe4159db6afd7f6954382e5fadc5fc25116b38500e1b098c98a09875ba5449e2e021181d1dafa78f2d5b45fca534e06c9f2545626d4e04209efb247ef6a8c5b9ed5d8ad9978f5315d0cb5af0d64dd13b7734e64e2326da62432dd90a722ef2c5efc6bca2b3f4a84d43c38b00339125c509a753f807f7e23687b97b3f8875d858461334596b2018a2d1fedb1a17423a73cacfe09f02fa0d1a46d661386d6855c206dc5df2dc558071886f5e063c85dd38026696ef151f52f9b0f0f93db2a65ae93f887629ba2678d9c01b9aa2d752071582cfcf5705733fd3e2d65c9653bb52b20b6f2954cee549899fd413929b3335e9216906f7bd4907bdb508cf44984b3cb32ffb52de11ea0ee8a73cb8e73321b3179a8805bbe8a7654bb08cb77de735548aaf35aa34cd7a8a8a6c750eb4980df277af60ffd34f2c6bc923c3d41fe8d8ee69eccaaa1cd1d376499694232e1afa194f0545126dfb1e86d742454a98fe4ac9566d70cba1fec172e57df7875ab0218482739a056c3b88ffd3403a9e68c851e0a2d2d5416f5805813bfd6208e60cf97c5d7b0237f12e7847f33e9f850c61d8d69ed3eaf1f6ee8dd3fede7e47b571fea8bde80134590a3b16cfc373dec19f5d0aaf4beb67f6a0778cd9b81d521cff5c9d905430273dc44931f225ea9578e1404e044d4cff3008f23638fb7cac0b1f9dc3f34f5614057aca908d3adb120af960b90e676c39f9408d011cd3bef324a95f1fbea499624af756e3fe61d2f13dabb00c160ef78c481f59484bcfa500d34bf3ca34459d9c196959fe5247cb32c7b579d6e19862f9268bdb18e82c9c3da8ef8116e879936dc117c127d925cae8b6c2652a259f9f1dcb2d380177489f03e14304782318f37da21299dc421f616018aaf4d7ba7a0c85bcb6ac167596a7d0d6a99213ade3c26b1760551a4d6fa8469e85401865f17bf063e8c41af2c712165314404f19811a1458924ce142d26295d0a56a18bc4c789296a804cf3489c1c28e80af52f2144626d77c04474b3bbcfd59cfab041bbe3b654b0bcde8c2f0d20ec46e69fb1c15c099d2cbd2e426c75113c2e33a46fc3e4912b8478868e51dc0b8fbeb8afcdf89b9ab8172240c992ede58e56f408434ef4491988861752d431225c284a8fd6e81407fd5cfcabc66278a5c3df7737abc8b1a0b6b3bab1ef2f23fbf923c0e2357dd6e318c7d32da742dc487dd9be5949ebe9494ba2c88dba329a7d5cee45047367187c2eb7a0a86ccfa0297fc8c91a55bd6d6a0489eb5569f20539947446b61b910fcb767502bf35e012a6aadf65bc0eb703e1243d441d9b40d715efbd76efdde3eed732b297349269eba6f0d01a55707df89d729ab1a19f83bc94e24e236aebfc3e4f4a14542b2da6f0fb427a1f304454e2642eb576817a1d48dc83cc44729acb01eab0f1adb2d0c43c3fcdc79587c6a60620451bd71fd92feb7baaa61a21fdcabd03a34356b946cb219f201eccf97235b6f68012dd9d6f7bab41c74a82d6237e38e6ed4efeeb1be805c9bfd38f32d195cd28e8bcf6c35ee056810031bd236d2dd1c954ea95c0b094a530069b68aead66cee1fae32bdbb4b4739bd3a8698c8378b96dc6aa0433e4cbed0e39319e933a08037c6ee6a1aa1aa23493bfc13a0d5d937a0adf5f13b9b3786a98c77eb3c6884f2cff80a48f854125d3a9a26bbaa60cabf240fe8bd819461e3e4a036d078740932063a1f3850d715517c43e2a86d46f889c9efa940260459232cc4174f56e5406e8b96f5e94802a11fe7d4d325a7f6cb37714f3ed83d4a3ddbabb224318f1e66c834f264c392c0fac72f5063f65f2d1647ad68b3958a8ff23567e2c1a8af216ac8026822c23a4bd8d617a34369187fb3e211dedfa0d26771f250cd58e0940f86ac33f82e2af001263a72ef475dbb483fbf49ee875f8448bbeaf89792a59f0f5419bb8af9c611ed2fd56a626a61e48adb809e146f0e99b995790d0af7dcf8f960453124ab1ee1ce44b86f74cd7a2f74489937f5176381d2f3050b15dea8fc7a2b90ad432b59556908c883ca420f4e6875748294418c63372f8b955e2892ab116605e4d3db57f6f60765f3f2b3f90333fcb16df0f8ad5d02f823b91a5b14d59e19f957319f7fde0326b167d1732190696a30fead0ce2ebc2a275a158b0714bc6a9998b932999c4eb523129c01e06592868b40b87c9f19dbc277dca9379d087b86d8941e5b5fd5bb49c87b823acaf65b05ed85bb1531aa1d1c64dfd02df0f0c903d06036c7e2d86412077121b2847b4faf7379333a9407f44865191a5695cb4cbd1c841f51deb4a6363480bec8a164ff6c06ac5a263576609fe930593e5c4f9f5d338ff04c191257a9b8736f73e820d5ee2eda9e4cc0ef2717007a550b00914eb76783db650cfebdf68c4b4f48b00ee5db72d0b5a747493dd0fbcde25d28e5d6b2135485db13fd911dd05119d8f99d2fad6db4f70e1bf433452b304f3ade4a2e062b79a65cba6c21a8f3ae6db75920b49c82016c51570de1d59f1c4e41c929eb354d5bb38b3049264fa03d4939960d9416c45b2468ade053742c3e5c38e555a047ad6836cb28bf5559e58594727cf97afb2a28a4b1e9a07fd2773a5f3f4cdea47eb4639d498d042d8e517349bc535e9e08eac7d2ecec130e10e349ead9b1a7794f72a2294dc0287c644ebc96284fe05652c1f6ff407d78df0c32e32c18c2a8f0c756717d372031f9c27e58f63e46a6488235c00d99522018cc6eecfdcd4a8ff1b2c11738b3d4a0b7d3e9d329e54519f1ced655f5d0757a6e38ede75efef9d2446d295fd63a701122ec0c73bdf4991c373648ace7c25304c7c6146fe9a850bc081f0d0efe35cc14f55d4c67de8601afa1abe0bbd20ef796d4422db4b34417ce4622798621643eaec49dbf2fb61fd7902e7ed0380bc10203fd83bc0f3094f1a596f5eda6845dcb6947c3bb9ff239e5c3f1822b95d3d6080245fd073d1ce428776a725a0eac5ddabc571548dbf04dcd0c5c984dceee3ac9a260912a9eceb2f40864a5872c8578058a2c0c78cffd9275582d4bfd01ed1a4d568debd034329ee47b5d655c5f8832330fd23f466ab715b7905f32d9408874964cd5b6e8b030595bd063def5e8fddeebf5f3993338ab2e9c5ef62f7b141002becede84284a684da844f4d4fae2b315c38340d7017da161642a34020fffa4406c294b8829f4935b191a9d8537acae2dca988412a7111867a4403a0d3967ba7d9d01c254c99ddd1586a76082399d05e1bfa5dbf65afea805a6ac6637b03c9ce60f387729af057e38e3569e336c1e8a2f259f84f86bb1d49e5a3a9be37cb72026f041ce0ef490a4a71e3e8fe8044ca388b7b82eceb726788e63f4e793fd06a6f4b9213d1046758843223ddaa40936bdb8e16999c4d5423e34b368d223c3370574ce67bbdba4237e473f99820dd308a28c80ebebfc1fafc002b028ba3265abba722768b91f3688f3750e5d3403c53ac6416113d9e243405493c9fb6760972a702cf33a4ffb236cac6699133ee3051f5c1126ed837f213ba16ea4b4e0bf71c22853628254bbb2e46e4c786ff320ce3db6a3d6a4752929888caee46f45f4f581a6444c19cbf9cd44fc40e204af8ed2c04f7256d7b382b8202eca32dcffa153a0709ceaad49012a3a8c5b1710fbfda30afa737a8ef17421776bb20868c6fb142ceea6b5352c6f4e86bc524bf44fa1fe3f8a771ad69238cf8b845fff3f95c48a021bd53e05704298af29c76ed5b19fe3bf6872452fc1e356f07c691d2e179da6f940f0dee4d4109428c066b456440197cc04e292edb2c874eee798968329b637f98004b5b28f9ac966602a6c5cd6bf8ad5179518d72969b16f1f1b28230f97f75082a566caf01ce3b2190dc7bfa626ae9a1de1f63cf13b740a96b871a10e762fcbb5d1299823c4d5c75c46ff6233bf4cabb20b8310d3f096ab5046b31eeb5afd3f776bda6f8a4caec8f4f72e93fcdc730d3233ad5552608ce26d7f37284e6e9f405f269ad0893330cddd1e62898f8784a36f4af22c7ca4ac2278e19d093b19df5f14609b63c36d8ec8a74e25f176f62826001139d1ccdfbc27d2f551947d00caf9e5571fb29ef98f0149345ae66fc2909164c16d07bfe08dc338423c10c1e0b9fc8087537e828456e4fc9d9ac54bc31b41e8b47945d2654eff361e45e97d129af66a5f940579ba68f1804e19cd0b111f92b4bbc7d740531a7715ff08641fae755327cef9baf541e3414b8a3f19bbcd18e822197e8a5617cb9c02962a71daa3c69be5dd7c85d283be82ccde0f8b5549d660f5d45b99094ca84a953bd89de986b6330c121b7c07c0f01f013ce36ac567cdaaadbc90aca652066ee76ca3be55a7ce024f41e171060482fcbef7159114e5094c46fb1c60963c402ec8404c489652904c9e20045d552a6c4a3dbfb92a71b274b56a1f0e918c440454c53e6a48ea489afdb47f075c2fa558405d11392e0ff57398763322296cfe156f3eb688e086352b53c862e402581bdc41ed7dd731125c87700c1881d35f369cf3cde7550963149a80ff025b082803db028892de5720b5869c8ab3b97fc2db90fc4967b9fced4e86d8142f3d77045489818fb50e6faa2c839b8f04aad17f39794a33d26b8fd7bab09576932d8d42f25bb83cb4d40f34ee13c567dd5cb566ec8f096b0dad441fa0b421f560b300fc3a7dbdcb2cd3308accf270651d2034fc1853ac882b418aa0633dcb2dd79edc6e85ad1a5e7d4c928acea5928169c94801d8a06df8dbaac7238bad71ea2a384b111293ad8b0dfe3cc99afd9c4b6993e0bcaf364965dc9980de3861be089d1ef5e47442024b332a07d83942d8fff3499527c22b9ffc5f0dc1e9f71f25d42a912d7408ace20dbee72911a2b46bb48f52c0e8f81ce7859bfbe5611c3fea170e1b1f12c6cbe67d27e38038b9f820288be5f2896221b3c36ba1671c6cc0c7c270d534b84f240bcc7f7459c61ed42c473cd2efcc54a128218ad78c329fdb9992ff8099ca0c04dae2a2d34491ea2e646a172e8e70992fce700e414253b8056de26000061c5427848c075766e2abdb98224427e5c5171848b1069dee0b80db21eb9d300b58a7549cff602136d0f6672447b668d9176177f93cd602d2550a5748aa4764f99bb7e4889f65ef62b62b715de066d2276fdb40b583746ca4eee2b8dd35e4f30bac58734cd320067a94a4ae55b9b810bc04646f81c0f0ea69be6f34bbe3d5cfdd5cda88b9f96fb691501d1e47d757eab521699d40ff82c05a57de2dd0269ed126d427383325083e6b4480965aa7728e723fca4a84f425a64b5fcdfab344ccaddd8c641df16644bbe14cbda9ef8d2ee8455dafdd6e63b338218dce760425d7f83b426cb9da0bcf5e3b8c0f9cd04bcad005c92b7aae0b185d8351f9fd0a3656d3b4cc4f1193f127fe02e352daa177ebb27e92605ab65d437decd01d2d0dd053702372535d386f18c8667b428a5ae2c5bca971c87d58e879571606ad956f6dd0bad5aee2580a1368835742754ab4a599d4a07d35a34c802e3a6bfaf8446b810d0cb646722217353e1b9743800bd1abe59f43e5f9cf52be1ff4702f2dd605e1d3dd950bf999b3d4978944c0c38d4ae13284e33dd36f662c015a7c579badf691b581024073c021e17035686b8d7ada750c43ab6f7ec5a4f7f943d9db6a85c9b8aea6e78871e7ba1f0b3dd346dec398adbbf67cd50417265eca82a2b9b79c1129b2370ffd51ecb9b1fc313206a06acd6d3071a164eff9fc49d1f2e2fbd10359b95ee8e17396c405f333e194c33af6a1b5d320aa8db658410093431be270e572b65e59a74347b8686c5ebdd77d840707a7188b3c2ccdda192a3d3129dc30a3d8a8d1568847d2073a9aeb361d01f5be5adbfbb25270260c2d9ba15fcbb33402ffe58bf09b6f21c1006cfc486cce233fd9e14969437f6e0947e34cdffe021cd9c8641e6516a175bc31b7f3f226cc0469a59229c5a7aa9577bd47bc1e32802e1df22091752342eeb8ffc27754c3551a92c2a97bd2f9da5134a8c1e5ba3c68ab2a335bac42ee9acf8efd9a349a3b0af20288c2c02955b53d76dd59b1f1868f97c813b0c5074cd9f520f1f83447d331015b709e82df5aece590d159a5227baf8c1027484f67cc1420d1236cc37bcbbeadf0e37048fb91d755ac05d3f6c72142fd8e20772b6eba649f5d60f75ed7dcaf7b6b57d005aaadd4eb72a882e226136b007d054590fa244e8dd44297d18a9db8d2a5940ca9614a2bec76bfffd60c5344b6e076846bc23745d6d21d0a7e26f0d0ec8e6f5a8bf639fc04b58414bfe6260bf8bcfff4394ca45b23592a65752f270a3e7f1e8f2155f5f3f2aecf1692e0f08b4d066e7cd140465e3478854eba13ec63c9fadecfdc31b0aa6847c238addf3152cb1f4e8783c6023c5164872be84d88a05be30b3c5d3532140fabcef730d45e9db5208346cd7cf50eb8689f08b13f29f7b5d59af46b097fba4fd8f0975ad7a1af62836ede52cbfa18154639f0034e943b83de59439efdfa8d7caf88dad900991aae2d1ec083311c12d9ecf1449dbd4ff09f39575e299568ea3cf79bb211bfa7f0db345b864084dab7b5f373da80b4187594af730185fc552dc628f6689801cb515e8855c47dda6ebb808537da3c6f879012facdfe5c10461f617acc5f6f70b930c58dc2d9d4d2c477b18c36261bdce18354105b70b131de228d3d46d30651ecb872d03df5ff496f2a4da4b287fa5bc2c749d733f2a0561ff9fe47d5229dfb4a484fad283b62b52313ad5574334c0ce51e94a6ecbf34da1a2ead7c90caf858fb1b80c1e0238026fab647071eccd9ccbeae430fa51edca85b3e0db61885df3b8a79158512b82bd47fe2e91a0d86fd833e74c72420bbbca2d30dac585d5886a291585cfd882aa2cfd1fed1a4746a5eda4dc44a43ed1071558c146fa60179f8bd7879e14794873b722f31a4a2345dc7fbf2a8dd4b8619c929bebfab5be7e9a9d87f71c67c70726993e6bdbd95aeccc890410bb3b83e536c69099e4e53667eee7617d792716d8829f8e9a944751c0e053f413f51c63cb56c218efdd596524f8184ceafb311f746b83c1209f135ecfe0d47b21cc31f624298cd389648060bbf0d0138095a3b62ae62ef6c7d7ddfe89a4bf01e3c1dd81ff5103558582a0c66d4a887dd49754ba2ca6d7510290a72cd1124b45dbe9ecde3740104cd2e5c6d8aef91706b9b3560d8b82ce71e7de32f772f91e3ca43a0acfd6ddedb5a77e27031d9cd4289dfc6ad0571d68a3ea899bcaf95507e7cb443e04fe414ef5315949c567e54695dfd47f5d8a8d1568847d2073a9aeb361d01f5be5adbfbb25270260c2d9ba15fcbb334029508f8c32bda7116c8bb5d7360b77b55f6dc444978ff00c04c44d2defa0cbcd04a77c5eeebb8b9aa14353ba826a27577fd3707363c2c495c48b2dad7b1a3bf3a2cb6c82ae984c12b74ddd344770da0383164b39a883058e7e23d735bafd1009159673a6bdb4657826cce0f26457cdf4ef2f0e093229ce65fa0045dd8544d81ba2dea7c0107c3cd370af26ad0f6801612ccb7ce7b7c6b83ac7e46b9f0c0d8c3628e8dd58df321a2978d64b2baf0f1f5762c233a85ad15af90d89f91e600dc56c5f5479db58dcffd5f53a6ac9b41fa2d08cf14d12612738261c5070eb1b7177bdb303d68ddaebc3a1b8d873593cbdf94c6c0f19a74b29486d2d5cd577ae3efd41e641383436d64220526a1e75558e5679a4d6240684207559da6086a435cddf80138c8d0f218ff10ccbade03eb175013f6af88f9657196acc022c17021e80f5aca6c3025355c8f6b7cb9f30fe5f1fc6a4e3b90a4f89cf97061b62c5b50bc58e57240b42517ca152c48c0cc5b7e3412f3e979e4ffcd4941ec63044ae25c83e22b72dff41dc62e0df86883eca545422e4ff6c8eb9b5e8c8083e2e3315d7a0fc0b681b6a667010cad584e0b68f2385cc67007c51acbda4e227a6a1fc005bce23c8679a03c9f2ac0b18a52d0368fce94c897b7a5e202c1b00c29abcfb84a40c54792a416d4decf31ecdd47adfc6c5a035a87953f51c8455f90a2084878d53a5daa29f20eb6b75e55e90aa1d75b91eb02bf9f2ad535ad5cfb6eafc9f1ecabf76d0160a813682686b3547425cad38bdfb986109a066d6b209d18bf8667bc696748902a201a6f7a9e313f91c54c5bebd02e4052a9eb6ab7b89ccf20912274dcea117950eb166b531082bce1a4ca0bb13e1caf2d7f102f3480a26210736fec451c30e30f1ff2ec2f373a2cbc68c6d8e2f3f215948c055f4c56dcf6bad83c8213225734a398db60b9a09d54b8d59a1850e9d5a6922638147cb7f432b8b9e2cc121181d0e6020e537b56f6509a45677151485902f82da6c2a726d1f70c1d62ae68396d3ca8e74731b9dd5b0c480d6a97b6d1d705e89d6bbe946951f109a2b0c7238560d8596693d79730f3c32713ce87d5cedcf77631d8726ccf642a1bf5166dee08372b6ea452c57db800123f0ce6f70446e73e7f0ca4e5762305869e4649c9c095124097514fa533d4163f876cf7c1ee1961516b5f8dad81078e3bc2876b7765efedd9d26462ce6f783f1df998509d22210319bc8ea4206747156654992807f5e8d0c2a13ab72002406298c3952cebaaf0e30e91113689b67efcd41efc126e5d48b659598f36e1430653e6d534c1f4e0c6fd43692cfe91db67cd78d369e22a02ab6f6ba100cd36a59d224fd5cbaa8d87422ad04c6717899d6f41785f71f0c0717b9b6c79fa856684bc330f820d73bcab18e5fd3b5184798a7e4e93bcd8ae9a115ef469927bf59b634cab884ba1676b0a0a3f9ff0a539929dd62483a4536b84854823cec334a34fe57ef10c6b2f0fc44ac611d65561f7d157b892dc8b03eb7863b07bdb6034f26474dacff454cbd6eb58f0ba4e68d2f5f95346298260afd54452e81c37e0c9b99bcbacc4e1bcb5c0b6fc81068b41543b9f8488bc4ac7b43ded33f3910485f815457e1d9e8879f1e4fe4606da941544b775da7b79eb71bc81ad760368e27dff70c41135a559ef9d6af732dd5138f3a008ba1b96d1d90f8c292253ca02856c4546e98d758468b416312da77484eac086c8ebc501b50508cfafc7fa6ee07781c84810767336db24d8f12f19fead633a57adff52d066345af7d7820b8827518bd0c764906b6d734c2e2e1365317f4b2ee061365b65b1b7eb2f06bec0e6621445fb794d0ec0ba5cd5c10a9e7df913eb936427c26dcb17ba56e0bd70270bf650247e0bdf977965ce9806c0825e37dd23eb59c609fb82dcdc291793b9e0165fad96216ede4f6c1ed3625ce55c4591f5534a42fcaee5965ab6049fafc32880f2e7fc4715db0c7f40b2d57b52c0b9ba81e3fecee9594ca8c7f4d762edcbc3bd29505ba667472ef0f0e8db4f565d73f5dc0e949c9262c2f4cfcfc856064d3435d7220b3ddd8039b410cd4f395c386dafbede10fb48bfef43ae907ef5720b154acf9d01ef1ce44856a486de25719a3fa02729ee97225a8f7e2d421458775a4a842c9403d23c8247c415f5cd26f8e0a33b2063c426a869cca402e8fbbc17bf865bbed12c432dcf4313edcdc154fafae15f7469656efc4282c5408ddb85cde564251b6ff05fd91fd7f9f66a6f6da1025ce18197cb6ae963d9ad7ba7301399032b4216e9323f0b6087c5c85324c77946a33638f39ccce8a4e4a277ac54a6b46828196ad3c2e50975d21412baa223b07ea1f3cae9e1347977ec68e4029bcc7047341b47b9ab94bd1da0fb9f2b574883f61301558e59f504b1487d5ff094c508ab1a3c853c4338c5bdc308f0d73c33141d073591de48732c5ad47c1d14e84f75df757a6b1e9b75aedd4b7369229a8ae21ca823af368c03eed5a87d910d2286373d52729372da2e7404ffbbac5dcbd0dc2c7fc6f338d65548ca515e2cf1dfb474c45e9b4b5644b314793fabe92b02c63a9267fbf7a33a959b00552a3b49f992bd9f9286ec93b991d5817d7bbdcc39be66b381cfba69914c5a48089252989541c45610caf0248f4cfe855e17a01962165bb74df9efcd0827f6160f8d6bfa7b92d052879d5d97716ab26f2c73ad13047c91753a70ecf9f1062fd0eca231df3d7ba6e1e40e674d9e8d471ecd7bcbcc5a3322eae72bda3bba82b7ac4813f174786ac12abbfe2d25a04194883f4decfe0ce6f586ff291fc26f9d9693ceee3375e3f5f182f137221752f4befba88f1193d87d86ad1c1b7f676a74342dfd1ffeded6bceead67ea343f792edc71e11f727f83a9cb9da2fa74bbc72ebe72980a1778458cdca5feb8bd6b9364fedcc56718cc870e1b65d689998896c77d7b6e29937fb74c15858f663bb1c3355c72e4317d7e50991839523e5744319f34c61af3e68be9a3cbdc0e8c47d47c66d6179a95ee7ed063a4d7b3a2976addfb99706a63126959e8fc1feb70480fd489ceff4b3abb1021a67182cefe6db129de8e2626c3329b19a2fb03cb5671dd6b7737b7b0055ca4a8e43b536c947134bb1408f1c9e1492e15a9ae536e98f3b3a61257d6dcaed4e2ac1e07731835d453098e405b34122fbf13a2b58d55f065f823642422b1a24445077e72e689a4c4b39ef362afea6c8a1e27271e9b8c09bb07499ac62de641d64b3a6e502c4f938cfcf0bafb0184dc0773f31e3cb2b362053e6cb43ee60077b259cc3bd0b04b5a4aa181dce6461348c633cc366030e9e5ed74cce26fe207d939fdf4145e4ac0a1959758d90d6c0be2fe30895dae5527bad8aef9f9aad239a742ec600e90a7889c834d0b2849b3bdc44195051bb293a57f9857bbe9ab42c8e1d963fabb7458270e59412ccee26981991fd7e9c3974614fafcf0f3648f9d22f7b9a05b3e65c81fcc577d3f7f6f6a767f6b6b54d8874a2392691e1c1382b9b00d35c4a3ea0260487a7caa591f29f2f6ae40b843cc35fc00aff34e5013b8b6e4da5cbdb539a229070088b3b91032735eb8fbd7cccbd2ca8d62b4e9208869426ea24ad1ce607a2eacc51c25da99b388d3162e3acf22c95bee49997749a7b0b22da1b83aaf494446e732c26dca5e625b1c08742bd5207d0fec105ed7af441e3e99fd0d43cee3ed1776f01de14c7d1def60481296c98fc60b4c8240f8729d4918030d49b257c30c79a3dd0fb8f9aa8584f046096222611e3f53ea9e2ca6333da62bc7bb53fd74f5948781b3014e28eb1def1f09ce4d83696bf9a6f5cdaa20631309e9cd377bd63dc2c785e78818486b7f90a0d98ea53db62f8a58abc0cef9336aedb87838a2f23ff07039e1abc586c39d38062df8e0477c0037ab4ad8fa7171c5e68987b03176ba9c749f37583caee1efb2b25aa7bf8ca6058828561e7abcb2b4517ab05db1b2830145520c10fba7ac6ccb1b124af7e02949350f3da9545c79e7a3d6234d05495c80fb524428d83c3c91cc378140bfd294f2f8af1a0ecc790709357a76b7bc61267de1d76338275df9f2a51c5b076a9e7eee212a3727831408afd5bdcc2d03b81d9b5d7e2645452a260d31ba7dc04099731d7f9ab2b9071200c6b5cc68af1c28a5ce604fff6892936b33916d2dfc97546ca5c29b951397a364c277ad62128d2d8ca54cc820cc04c64d5e10b5e10bef68fb564ceb95170f5a05c3f36891928a280e7ac5bc1cf0ef3e9d67095cb8b7ebb272b54702bb1c9b3973c2fe01f338141e3ca6b9618b711a95dd159572b5a28428ae5ea9b6c587197eacba4fcb77e2ba4dd13a3666791b1b0b20653e8faabe43f95afba1bf66e8cf6cd2cd2913a7c2ed06c4c62b9854868a9fc8741f1111586f8324d62cd5fd64376e3a60f451e332699ba4cc4aeeeac825be08a7384d068ebfb9b865c9628c6f75966c38e07ac2639ac033ad7c87fe7cdd43bc2d3dadbc29f48eda5ad5c6b53ff8e81187c573f5bf6a186dc74a1998baafbe0121135bbfe09b6cd430890512451af0897ea25e5289a5b9db539acbc3af98d470666520b3528b70af1772bce79b30276cad5f39b2696b2db8f8deb975f7dfd8fb782493ea83038c48e5b298eda63fbc3eb8a4610193bb159dae666231ac4fc779e95f6ac6d808d589631e42a816cfb9419f43322568b3a978d45d4e2c56d0ceeaca0adf0dbee50b1264ffd954087d31870ca92027262a3db6ba1c708eb22434ac4e44801ac8662df774e9a2cc2c419d30169d0c67e983d8d9ede5fa980ee1a5c27ae9ef992cfc4e9d6e3070bfbf15f7781c1c8343d3ad8ecd022ae46d6d83ac4b702dc6c46f39cb483d681496f367d5d4056f3bde9086407d1bbc9c4d104eb05a1b26dbadbc951ce3e17bcf60ea8e001b7ff46555b83edc91e8262d657a67d925269d480f38a8e65c4bd5b3847e8618d884d0d3753286c4fb8467090994715c19bca3af7b6482489a5b7d73c919f0ef48fd9958f0dd371e5a1d036a6df4699e28f3687aca8375d5553fb0e591fa411116cc952bd276b7c3e9dfb77f3858e0d617ed66fc2f63253f0db82e100b1a6b4c2608593b70a7320e06732ba50a30a29b0cc4001e94ed52799b5088872dbfeb7db2e6056b8a91a1c09c217a5443c3785083077ca787464b32f914311175828ba03d07087f993ae8c7c908208bd4f410ff59d4e820954b2937277ee788336f5f86f73006cfe7edd67ec3d2ce6470ac0a1cce7ede075359c187e3504739e50d2448f0fb2a7d19ec51144a1a6c050f72554f8027f83eb184e8f94581dc7b663dd1b70443f6c8a30696e3f7678ff771032efa3cbafa38f00ae6408b7d3c7af6968229a1a8ff0247aea80653de96c45bace6779d6147e6e573589761674f150f6f46589e8d30175842c03d767a65c4dac6e44188ce94baec17e5b038170852accfc0131b95b825bd1b019c32ba11fdb0c311a8b4265eb811c45f3c6c36f19739fe1e6adb9dd3d20e7a7f8464387ea0e6d76861cb56ad7d710028f57c48d77b0c4d45acd06ecc83f8621fc5f4e100aa44a16ed1bb38aff331078170ac4fb836ccb2f844b76ee4824dd854f2e44b47cd7a33119d9971340a1d6ef14709de2e4e95049af0877ee4d8a8982735e0c6a27ef0867250461c70eeaffde4ef39f811f74fddbb9869d64d3b95574406140b6af199f3f7ef351056e080bb0efccb180513d1706f78ebc75df4b062d2f7936708a8c42be669d0d5ab42f014b373536796d5141fe32a0a1ff91d0a63a3b27084052e03f8f45cc7aa27e43450ec27a68884bd481c85dd27094def466d1d92c262cdb79eba41b1318706088ad90052b6660f3781f46e58b4ac9498a75912e5c10d9f425c6dc2822932e4bdbaecf1693913cbda4d7b7289d77426ae53050fff306f4603d2553652a46cb36d028513b651a60ba33be4bff4fa2b428a17920bc65acd0df8396abd24ad906a8fb4c1f65df9fdde58fd57c20108184c52ed427b7b1ee4df84ba6ebdc5c137a39debceb6dcf5d867a544bda70b6d38bf05afd44c616a1e38fa30387709414fb475a25c9770674276b177bdeafea83d7f464732ac60b7ac693a657040e46a89ea4952ac9d55a6cf9609e15734a0dd8f54e3574254562ae6989c868fe152b657b5860cdb563f270ad936f0ebfc6352fb1a46dcd90825678c2685a7fb0afcd4b3b2d7102dc80dd0d7b1217fb34ce7bd79833d94ff83b084b517fcc05b3c39a78522563482a4e43e734f7951db305606ceb83c7bbd522dede91f62f30d52eb5cc9fa81b685f73dadc8eee01e121e8d9cb3bc83ec13a1c04775674f76afb9f060684b4a4bd6b9c21fed1748d0455d7be54e19b32c70979d77edee81088948410bd3fa4044875eb3dd463fb4f22cdd7049bd402ebd875c03816a43f093d7f2fb3200735109d573e261da5fe6fa0f0ab84bd1dc0a3f16a7ce65fbc6785d580ae80d615872119ab905075a6006b1f2a9b69a9fb4c9652a6659d414b7c2577123cc400ccc5a083261a31750bc24b2de03dbbdd292e27f77fcdf2fc3e4fc826dac2f8951cbf2355bbd50be9632c3ee14d5931d5714f12f38c0ae6053c93c5e4f1c9cd29d8be3d64998c41029c6a18e940a9ba7f14180a80fcbdef18b29fbc218f63b2557fad8a1faf8c4f9847e71e6f8666ec585155afa753865c72444357b640be61a7c46dc75b80e641fd01a1f61d12bfcc15db6ce67364962eb3e5f0bc1df5968d1e4f18052489dd18667b32a5e80bfaddbf53cd1169808131c76878681472d14c03846916eed0d578f7b2780419a19553658e9c68d29b7a206b389d13dea4fa92fd1d074e478839de483e5d489a89c3dbbc8d6db26e41f1e9c596038fbd6210b5efcfe34bbe84d1497db8fe488426e60b44f7eb2e148610f32188f2e7bd898ab1c132428986ba04e538c46dc067eaabc0b753633fb6cd3f3cc5c08d70fd7b05382a9fc562f1e42aa9313d6e72f9e09ebb9490e4be612a80e76f030d896c8815f8025289e4a92ead7b8372e2de8cf4161917c43ff442b709b4f493c7ce901a5a658ab861e5c20a8190867b6a70b673c485e605bd192f946658ff2b0f94f0369f66f65d1345d6ab6a142d1415c2493743c5ce07d4dcf09558497edc56601f6e43f001bb73234bc5e46c0704e71e060e1eb96f288a8f29a7edeb0b2cf096d2a9853eccb728fabe56c91b394d04d180a1db7a30a6abf1604b4a108e7c53cdb6a41df3623fc6d27418ad54664b6563d394a41c043eb527cbd6de224aea33c9087f51ce6bc45309042b45af351769e80c288f5895cd35338ac81977ac33a5d3681a8a2819227c3d4520b204387cf745c12c4908ad1f3f21fb13aa05da8a481b7b44e6ed06fc9c96ca849b9bba1f2431f7c99b64b8f4c41b9695f89a508dfe61588ea060988ac7e312b873a2fe42244a6a98571ce59ada08d957d0dcef29252952e2acd24057703c379581616d74e76f6ea5f1ce6ea1f1792bcec2f15bea6282624181197e345fe5cb40f6a4e2ea499a627a73ff8c1f2e0ec9f365b55df0fc2962f201cffbf55d48dfe18d9dc0b0e12fcee925472ffeeb9c63476579507a646cf713c2c5e7b36b7115ac0667a43d4b09d94526f9b817da78f70dd51efb98c6bce6f44540ea99c7d3e20892641593bdaed67f5ce32542d18e427d39e6771d03eb23251fd08f92d4439e12db5f7df7e2a7f8333fcd4c5e4fead9e3de7d3ff2404d01edaf5ff85ed91f1a8b5cb91a5a8a0d00f1175ea536db5e1e37d3b460756524355385113e5b8dc647ea1f75804e5af9e6f3de39c618f0f5d40364575e6f374add9b5a60b28b12c33f8077f910d93ea27d09d0e798cce5e6dd20f243bddaa4d2275849f877f066ef56c1e249ec13506425e7758e3cb06f202f4047e3ab0d0e7c8b08739d348811f77231719158dfbcb7753e979372b8659b58a4bfebdc5852df2c8a40238ae444db7cc6c13bbcecfad4626639abb4c644978b40aa9460e53eb4338081386e022a37a2b3ad0a7ed4ed2193dbe9adcbfc7a4fc6872bc76508e02bf7faf96220e416d7be3754b97d3920f47c2353eece0f47f8d42ecf52ca22d4bdc07dc046c96ff103bfebc5be7a21e0c62fd48832932e723874498bfd8f90945e3e744588bb2f7d93fde1cf64982df7a8ae884d8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855615f2d08c865a14b570484da8d19194b5794fef5edcb5dc13f09e98f36d4899c4163db081a7ca82dbb99110e16c16c565c4a6077f7a5cb71e0f0f196392b3c8c6321ff0c7fbd93028c22ae019a5d245317e76d64d0415cec511362b6358de5cb652ce63fb46673e87c72c6b791781e1af9b6312a7b16cd84493b62e6002a139afc6f1081bfa0409050864ccb8fe7f5aac3d4246c8382db66cb9603ce2c29d69d1faa1939a2813fa3a918d0ec2314bd7f4bf2d293fd025b36ef28680270f63688a8c43972a2629022026241dea9fe691f13b3d388f1951dc57a2e6d0e562d5cffb7067731d08b0aa806443650cbe08e79e47253ee26fcdac7ea79e668114a79b893fdb7215f751cd0e135d32cef5aa3b4f4a986051e5379aa441ff2b08db0dd71c52644292bd886ebdc6ea469d69378564bb356ac762856d4ffd8eec246dddda9e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85564604e3db373b082283432b4c27a91cc748afceedbd9898c6009acb24f13a029d0a7e20e0e057d6a8516bf791f6ca06ab2818de46bf68fd7c740ece7a721e56a9b886a2656ea93e048acc87b21101f8ee98811e15faf9026ab9745d6925daa64d2ae63c669266c6a6c845d8e4d678782e92b0c8fc9d4b1da422c57c7782135de3946b76ed1a256950a0e5fe8afe1e85c048ad31711bd4fddfac71360996ac7db91f7c2e4a1f8387331af1103a7a61617152f3c3e67eaf5275b2da050e5151e9bddf33245abfd38c242c1e6f495d20a8a8cbfbe3da450f8750caa485af77b0c4b022d128e42af6cff35d463040efdecb3a32f4b1b3a2e749b066cf4247a81ae6203b945d5b9f4e4115d1c6e10eb12c507210ab8ee01d35f51110d1f6325a50714d84abdcf2bd91deccee429c7c05fd830b52c79506d00f1c01e764d12f072cca699c20cf1336cb7e4defed4b221245d20cb381d55098bf5431862fb5c613db1e58af1c924a1efd47cb955e1bb1e4215473b9dd15d1d748626b73d3902ea5f4e3cd38550738f412dd2ab3ed367521139f2381ecca70b80fc95507cd82b1e039d5112eb5256b209f87377db7f3942251ac2f1b23f4a9030ada6973437aab1c186cd8e5ccf09ddc41a9075c08a91d74f3364db50e5a699cda8f11f11dd7f1aed95c00484ad3f14bf275dc113e18def14afbc4dcd63df2f01d41b06a5b7b09c3e871aec9e18d678cd6cd2618ae4ad2e918514faa7ae5480781f3b27e60ceb441460892d4d0fe97c4179df47360311f854c155ee7ca66e7d91ae6969c8e9d31ffb112de956a2cc3aaa7208816af1d98a3716d9c527af02921397ecc510590ab1ef3488e6690baf86468441ccb0b0528d936d89f4a4901694e2f66acd8b4189f4373f05b8758d8eca2c3cb2858a239395f33915a519c43b548d7b6f481b29344c669f493202b50ed7cd57356cc29d4581b02291a2a8c08e878d5e05233634f6f5d8cb0ced3c8c1aaead7e8869fe1c9d30d1d1f03def05cb66338e7eff0bfcaf50cc29ac69a5a8847c011f3eb60e99103f4c734ee7898cba79a5ce99c01ed9479f377e9a710ef290d3aabc1bb70c7350d9116b18cf0597153abb87b1ad94e1104285cc6d70b9cca4c85beebde1e5c507a061ae5bb2c19af8c846d25c7a81967cf19c5086243cce525c6cec134f95473c1ff8b4695df1daa9a28b15416223221a25a155935c9a5ebca06705155f954e8ed7a740ad72440b11435b68d5842bafee80a53dc344032f0a4229d7edd5cb885f03df5f0ebe1d33aa56739df98bf2fe22a703ff28a1469eaceeffc84a4aaa4273ea7a2bab8ead4ff6230435162cc3f681d05091fc85015b40ad1e83c4b88608580d7748492f245edc0be3794ed2469b1f1c4ce096f25c5e6b89409b40e0a59a4b7cc850514ffdf3e6c4e25edfd20e2869d585aa717b7b3dcf874a742d3a277fdac1b6cbfab4135d7ec4c980579b24ea0e60ba3799975880da2c5d63893c6a4959aa4f3ec1e16fd1596483073d1d9edd81528746ed36b73dea70b45ac98b8e3ab259972e30e88b088c238a84c5c1eae2fc413c6b36b1acd4df6a318c0876514cccb730e15cbed6911a7a9c4df30576912bb76691cb24b0e23e83384d4fb74e0665f3d799b233edd5ec5aafe153a17c45b413ba196a59a34992b3263aa6f965fd3f7447e8bcc858b681aa87e59b41855dd578d2fae061358f399aa4876c1fb5b895edbb69e6e8c84545758032483abf3a82229f547e73be7c3a3808beb46b7c769070fbe9372662db628e926023e6913f9c63089a5497bcc2208311ea3f04c553ce77dcaa98565d1e503cd8cfba2655882c84253a0ff1f80d6d121a8f7e7c672b4b3a0976f3c9e00c659468509ba4f6937895fa485b6faaf4caa98046ea55136282a2bef767a4474baea7a72abe6af7555e96450f3389f061eea01ce2e3285b023cec3cef97ab3411ef40d50834ee9bf5b2f07b23349d47c29bff14fcc41272c61f51c51ba892152644928a2f5341bbdb9ad36b8221fe92c428b094726058535f6805e5f2a27af7eb7b434e478d68590c0c069cd24ecb982c2668da82cd0a36903e89a692f9aaa01ce37c023a32318068df6d8a4341f483b1a56ef2fc22dbe3cc765e44795104c445f4e3409554564403120c658f81125b8f20b3c0ba4f9b59f2aa4346b51291dc03ef8fb433bca1ec483996991e65e0e2bd8c379bfef7fd6e71c1d532e98ec891750f6f3cbf278ccf2ec8c352cab468006104d4f0d9aab8fc00e0d9995b7f8813424932323f639aee345669837b1479cde7a34ffc7bf1b584d89faa1408349ec26cf799bb4eab8d32b6c168761f6171b81fa8c5dc219e04b662c1ce92d95afc75b2ef26f9b25045d5f79880128fd15dcbc895678adc4d61628955f7259de28b7054a220d2745eeb021e09715bf318e5b3e423aae096b10387be6a21e22722ef23c944544b90d981bbfd2f3cc4b2aaf6b16133ffc95ada51818fb358e1960ac71ab2df2a5294b608c104aa2007989423b9a7b8cec6c576361d65b821c8e9dca4c49f26cf135a96d5fb26128d2045447a51cf11ce8b0f6c7ea32898d825a51b3e854be1dda5ab9b68ef28199cffab9f09b5de86ab69e5829030f9d0c83d6a3d1ba20564991ec49d0e4f150b41b303ece04bc00a4a60721e7a9dd0b13fa6578feda725c579e96aff37e2fa2fbc71073c6bd7a0aa4ad9cceef3b501063926cafd7b08f75b11645dd3be86434f51ae4ddfac3134fbc9fe1a2b96de71c8a768d348317a2db992f44fa6efa68d9d79b76b12e3c0ab6822065bf5413cf9b866f9125963310318e3f7e724cb35ca5b6d67ec95450acb1b906b7689d634c64e0a2c99d53831332f50508a170e261843c415a53058d27b77259413cc10e1ab90789c06524b8dcf3c047b0b59bf093966f5b6fba1554dd1b649a931c0ca244e3f0b5985fcf23b6e1f4e04bc9719c42210fd8fe9db48c6cc7f25a8324228d7090c05065b57e1f1795b46f3cc152faf35ce766d991b26363d39e5f59fd778198e2c6bb587830f371fc5d5c656c9bce11b595f90748fcc5af83dbb56dcb0d7860096364ba6f600f0de5138472995a562c39cc84e405d0f8c5dea9bc5da202cd1478656bcd50387afa9926377349972b484179f1bd4a5fbfc846b22d7042611be6f3e0163345c57ee22d4ed77319bef5898f87eaabe8956840b9c5195d8dc413e13be3357986be2a687400f5cf153899fbebb24a2d87dbf84c92cc15a4936f4ca926425ec2478f89984c42ba6b5829498a6695ac7aa586abf4aa27261716c70f94babab7298e96adbbcbe3a90a8d2c874f7691310281252c70c0ae6038653c0cee19f3ea676116d3eab05917fc8ee2b6bd4a3b33aafc95d4965b513d44f6da3ea37d9552351c33baece352ad3f906d2c7cd7226ffe6aacfd0726c990b8a9eaa46f45a67caa34538f3fa343d57966f1e66a081fdba9a2e5c9850c4c6c784b60b1efcbbeed402f2e8f4b5555c80e00e6bba2c7bb442f196c980248a4473ce4117b5ca5b86b47df966b89fb786460f500556288059e9e18cd8c4bb14de9fa6398f3d3756f178d3b73e464777638aa20dbd10cfaba93c437154163d3afc199a22804846fdbda9c3948d565f169dcf784126e7d3866711ce46159b9fbe1b247a356651d7b8f912045bc1db6133bc51b2f92d9088af7fcd7c9a642a546ed7d02db043124ef48678e615904ed97b4482098e4069b3db4fe157a550ea928e92ddbb34f531b019d45dd094f4fb5b1043543940d0a9b8242fb3d528b2bdaabea105447059704164ddc67a90388d912580a027f2a9afcc2614348c898dc8e397c29d015f438988a7f24685146a874e1316a62fd6d51e8608e4d8be7a49f3cb63693c3120817958dd7c2b951c77e99a1bfa248a6f72e21ddea2da911b080a826fe42347c1fd942fe209ab53d08cc27093b8303a644f18bae6eca8886ba91ab9d0948a6e8521845d7542cd819f4d2fe86eefe5280dccc88569e5af186edc201e0cacddc12a5a9e767b42a48a68e0cfe14d8b079ac0c1ec7fb67325c41542022c852b5ba5f5a6d3fdc0e94d62598a825e8be5c566dd34d4cecaae1a008a3c15baab6ad750ddbe40d2ef8ab9878a91afdd33678140c5fb837eb22add852c2fc1639d6399deb5d39ed795d15361a22cc27891448a0ce59bbfb125fe407af235f3f905da27882dafe5f41067e9974cec49cd45a7dc09e0cad07bd3f5acb3d177f75e33baf28b1567720e9797faeb2e4e4a2cff75244b02b4314f112db8f6fd73a7a27fbf7e82d282cd406ec5a9a7d4bab4a95c0bd8facfcaa5344e3fe045aa67832b4d618b31d91115a6f00c15ab6ddcfd7b5a9f84117cc7dcb08f4c1299cfe775ce9566292eedbec8e36133c96bf4af60b440f283d1341369480ca65ca6ae9cfc8fb5298ce319ef9bcd1ca62aa2086e33b8bda34f096734218b6e88d0a9f9c723b570456734e6a042fad41d90924cf536549f60c6bf12c58b8d7aa20afbc94a4170299443bea22ee499854191793f5530cde572c9cc7db2400154849cd919d06bf7ebb2bf0ab276962a985fb6526a81741b70ba0a6066ef4b509996c9ba05b230c5938f8b74629365a8d414bdee8bb2fee30084b4f92ad66ae8f3ef8a3fceff3282779741507aa4e68fb4f4ea12873a77881a9294ccb6c80e66db06c8adbb3a6b421bf4f1003a389ad71b0d950ac6adc4887081200f1b43c856ef83aeaab48e70bf809c65d4c70a6dce0261608879555d07f0b571d1ae997ea54392a0cfb916837220fadd8b7b7ed65a8298ab9077385eb2971295e66e39ddc624a7556840b7311c7a6eee6bc2b2c2e3210bfb12020c8096ada7f5933426108b537b20f3208741958c272067ac46255846aeb54ecd49e06578243546527b1fb8f85bc57ccd26ec60967b834e01479747a854d865467879548602169ddd39919d992aed308e5f3f9b97cd74db024ea2c6c5e421375ae41a1a626800f4e7bac5d581643c8100c6eb0e61ccf04dc0df674fd545b82e49fcbe8d47e6e140755ea55905b70493ae1ae8734472fb10b26f0d680cefaa2acd81719015d4d7effdd20f5d6a6fa03793ff05a3a465a0f1664181c12376243f85c20dea725d458a507fd1ee6f86ec3eeb1a609dfb4e0a6743f02b472156c014dfc39bb8266f25418c383bf98d547abd784d89f255f8f87c0a336fa10860f695f7bb8b819831a6a452f04e937d1458b3feb8d1ecab8faf3e8bda81949e5d74d63ecace419c0f29e442da94b070115f044c9d309bd0ff4527c999c601641ec4dd3d5da84ae7211faa205bbd0f910200d2790200a168fb4b60eb148651628bfadc4e7e9a396772b32224d24d2d1a047964a67c8484148fdd20a853773fda02103af1121c3ccd9682197f99e2a61dba30bc98c11c30ae493282a9ff1e110d6007d8fffc333a35b67902f613997c74bd9b961c7f0578e8dd7fda0309044034dd3a4995b12a468f09f55f53001be877846eeed2f4c421c0a0f238188e7f758c039f82a0cd4dabc6584c5667137e83d55ba9e5ebd7b21a59dcaaaf7621afbb38e9c473de49c94ef6048457adffb29ed4ad725692a902592d2f0a9ebd29801a7723d99f41d3e9c87fa7b1e4369813592806a509d259ba7d18d46930831acc3ef0856377ec757bb24ac544f654a76903f2aad9d046192b0d1ffca0e8ce0213ad9782b71345de7d10f3edcbb335dd5327b1733d83236d367588fcfd75399d7da170f060c69913ae84d0171f5e0ac33766358bd6f7327f4617e0a84d43c2242dc833828c42caf626f6b14aea9d4c5692de9415cb595e06427889bc195416d1c740553ea3230eaebca69a6ba3c8c4b682fd17146e052e1d493fd16c8c23d67c9b415e09e9f85ea5f98c8cf07881c001caaf81b87c683a3c47b4427ff5cdd934479099f4a670a7bad4b2bc8704b19eed79716abcb73ef30c7f2350cd00b3c88604402b12626a9b90a06e74aa23936ebfb4d1c58a69f2c55a7ac562281636f62f007b87facc24a38df5c818dd86552c312a63bc71b5993e10a209dc7e7326ff262c9c0ebdffe5645920dcd021deb2421dd8a44b5c7625883cd7357ffb1aad2cec71e9db0ac57339d6cadbb85fa3f2a885b7e04c97ec1af308678959dd71c4f0ff07fa85d4e9614531ff771d409c761974d9dec35b4f94f58b86826013640c9e4db850d6a81a34c8f218cdab03febaa96c6659995d16293e99254950e1a219e57c29a9cc461344a3d7a1bba447a19bd75ccf3851e57a318fbdad38e724069f7bc11a1a4a53ceab1fe0fe1bf5d5f37034f7812bb68d62e478c7001e27b5a55e3ab0c0f0e04bf4222dc00ccea87138731e04b9b1aaa254861271348d6694cf1a669588e51f159125a67243ce12bf28a638313f2b2952058c46b1657874bb0403439701848d4681d6f8765d6afef702a5e9b0b47f4b5d5f9da2212c9fd66ab919cc4e2b41906bebe980b49f30fc35a9888840f8ee3f9d9b8cadfad84165b14fe300b76c5229d76734f7899a305354230aa97aa8d4cc12eb3088e3d0009305120652d3a09ccce74b8a553aa89ae9cbb1ce64f15583f8a63c48f4bd2a333cbdbf1ebc5bf2bef9fb881d69ffd5c39855d30239ef8b2f1d90e4c4efaeb222761451e58985dcc01645fcc3a1ddd45dc9828cdd5041a744b9913a0939510ca47d5442a49158623763d25b86df74956b52ea389159909863f48c4ed3d82225b9ca07412ece0a1a10553fe7620c63f13946eafe2ce549b38fe313cb04c61e2ddcbadbf615124d915d075ea1f4f540daff52abf69ef0048490f3e1faf04aa6540be10628a86a2e1efb0f8375cdbe52bd55a98410fae9e67575d686931c065a05680bce1db6cd63e29f9f3d03e80e769445d476412e90568c5930657f58d90a9d62caf6ed04ece3f6033173dd62d6bd7fcd12c80cdf185018053ac5b6f4358564db80d495b1a9fd66db17ee2983003b6c6a4b517b2131d5b3aa72e92c9299924352d8f5986b67d63b99b381b39559c5d43433304d6855c09bc063a1d9e57d3d4be10142913e739db6a0f412e1e885373c8a680d709b5cf0d5ecf4a55291896e35af897fe547a67b2c1d1aff99ce6afa86fabb8ea2908afe4b272041c4a821ea0c6146f44fa4d1b6105de80d25ba2cb1fda9ad49e0904026bb901e82e104f6f738dadcd3782ea10b8440bc1e8e9146dcd3b2b9333a0787051f84ace5ad429166e2d9645fe2f2730070ea71de5f7a2623b7ad39361099398d79f9529d9ef85145c380c5ce68f4f9d6aaf10157da0ba989c3e78f52c6cc8a2239f028aad9f742a14cc2b7d2f6bab06ede81c032e14d7a73dbac637143ae89a8e475a119f1d424b1e8d4e2bb32311f96a07fcbe2b8dd945eed55c62be54aced186bfe2c17a87db7c617e474cc25ad189d21df42c4d23a4a76678e47af3ec79c2952497b16a80f4599d24b7d8dc7d209f3a147b45f30aa5a3cf03135576a50163dbbdab6027f696ede9e0369e329d4336f78c1a8f2cbfc5887d2f4161454ddbf927ebd12808615e7e7502340f4b0ba1a43186c0a2920b23c17d9ed7603379a786524bdbfb3203334b7ec22a41d9f56d893a74a17e426b74df03129fe5cefb1c4b9e91da94f3879276471e1e26e61a8cc5d566600c6f0d1a86b09970da4a03d5441d2df1080375b0f717d57d4fc1e28afa78f9c25b01014e76df3a0c3f57a4dcb3e06a621e35457b0eccc48a8592ef5859efd8f96de33935feb0b3ea83cc31b5070b524d34894575be4a2fa2934f7b5fe3f15b5709ca8c04ac2be4cbb2a436da8a5975b2c9c0a686146829dca4fd525c5bac39668c04deecf456694ca551fe9a2e678b916c02bf4048f21e136ac343f9fbbd00b0fb467d328920ee94f2f032f6dd0e781ab4db11aee2d4e9ec16f73a023dc71fbe636300878da2f0626d0515780fbcd60b108150d0a89fcf1443013c4b550799ca8b8f920499818cb5a8a6d8ae5eb074797514bcd674eb22251294e364b3391582948eb3c5fa5a2f02e58d9af87c12de94e6c266a2efba40d0c113f8ff9b5c68d14118566c9758f32f2efa6f236e287c22ffefd1f67cb0b6ea764c94e07dae35c51f572b4fac404a2f245e02c176e167624c71b745abdb932c83d77b539405bc7cb312028e8ee8ffcbcf98d89308015c9043f6703468ecf327b31893a7e472dfa5e31ab060d49fc5ca71d5974cb5231fe49da8ea7264db32d867f6dfbcd7568f9c6b6f8b2e5c940a8337adc566f9c2d980cfc0167b97f6457078fdae33c9777cdca3d1cd567bf6f69cca5edacd6fde21dc8fae63a6c1c89db4d3e631f39a57c6ec3132cc17b82234922d8fa2bf0c4cd9a939613cece1d448f8069fd04d5a8c936d8b7b48c189d5498ecee7dd132ee8c837d31e35f2ba33a524fa37e160ca75fd0f685135764e464095bdbcb16165c73b15aff5863c4dbbfe140e6d3e9fd5491e5be4e250ac86be0ab9c734450b6d4bbf934269a0151e5357ebced6b84f35e5983eac67d8beb1a0a9676000622f5c0525ebb748e6a7e73ad4bf6d4daafa59734bda733c9c7c4cdbd99350ecf14dc01f4dce9227b81ba837d60e81803fd71b31919ce85911207e86259371b6f59f84f77aea7d589452e90c09beef8ed7440f93485ad10e7e96bacf4b26b2e53a74347fdbecc1ae35fc60fc382aa63c8326a8bf948072291e0b99efd051296659dd4a68bbb260d6b7227535dbbc602e0e64f8621741f3363928475327ed0b0980bb67699df3704a3b7e4a3d7d39c08615212f2c663b944c30c2bb3c371b941b4640b3b09e1b6b12345aae1d64778fd9c765e7fa0dfd74ee6541a669906a3bcf1e50f3a1163c9f16a19cc438fd5ac57d5599cd2508a71e189585837ed9dc175083560b3f931013881c364d39268ff30cd6f72004e63dc7649b652204a2ce47cfe36abf3c81bd05459ee8f849d1c92457b15132addcf38d60b6157560f1a90b04ffeb24be0e6369a96b209a09f56807e05dc561b834b656bd94253f4fbaffcda795f43f287755e863912068e293aeeed3c5214e6d9bbe3afabc3328823a20f051b2187fd40423f9b434c7a9650e9724ff2bec2380fc74ebfe31b4d12860d8b6723bd322b90d26d00daf69e889e1fbf17509fcfb97418969a1500371bc9b67a15751823c2f195ad52819cbb4edc99d09f832d7e8966226d2e3c625635ac9e39646f105a16d48de968090e1d76e1bc3c748cca632d684cf6b60004228ade827f9df1bc0e9c4397be175fccaba5c23a63d60f8cd86dee53f9c18e3b48ceab7814941f8f63e04e85dd4be58e5f64290cf8e8e4e13680a10d08ff5aa5584c00b9a4a68649e51029a76e4e55e2833e10a4902451e617d034b5c3cdce8c94e4cf76de43cbe35c67a58f1588eb772a1bce7f402d164072f2ca059fdda4b4604a7beaa07af6b447b7b9a6dd5269434093e698507022d13f18a4beb57d5fce64feaac0635898f9cff5cb6b2fc31618d71b643a292b198acc398ed3fff96d412466771c58aaa9785a47305f15e53c2aaac085fa39721eba0e1ed58abd396dd06a0708ea8c4d0084673bcf0cd34393a7a951d8515947d4508085ef2ee9657efcaeead03890fd435587917b043d5a02831333071453dcb44dcb16d5a0d53bfb574ff02035de983b538019367c16c24eb61ff7365e075b71a2941461dd91a575419e13261fa9d85f9c251d01a3f6837b29d7973ffe504a95123f59878b68071be9852413aaef454fb30c5fa1166cbb4043f0757fa020fab9d243c050f4ceeff0fed9d1781f7c752f76454f36cee89bba3063bb936fe898bb73b3f47ce3455ecb9df3da3705205fb3741dcf2bb534599a73fc2de2acfa71f9ee1a5304674622b7f2d427d30d755efdb74a1f53a6abf4e6f1bd1740f5992a032aa65cbdb539eba6b413ced3e3fdfd4fc782f85a8919e4d6040d28680d4c7b2406811c0e374e0a8784ad5491cd3c5fe30b1df590dd2adc2dae972456ca3ea8cd3fca29e18c9a444c74eb8544175f294d4095beef0348ef8398e8790f8e4b661865263a54bf6241a4bea016f93aa71b43631b0bacdf7eaf8b6aac9f0ac76f11d4f7f5410792e84f65270287067aa2d221d71241c0f9d6962fa5dbcc93a0247a1a0a645444acdc724986c3fc9fd2b8126d2c0b256ed695420725f1440d558e25d7291ebb1997b5200b7bb5d92abfbf6dcb9791f820683d8f8df5add717f1d2b95a8f0746bfa51443cf8774ebb80f8348f4d4f9e18f3970b21f8f1a27d607daf5db83c7b4b290f0812c04305e0e84ffcc265cdd9828e1e660eda0f5c509d9901fd45bd7b61569646535c9570c53a778d2e623c74e50c81c14a73aedee2eaa64060e2de2b1220d9956cecc0ad1e82e640d2a3346afbcd60acadfc427a234801e1131ec333d6f44cbfadded8980e3fc169496070f5c065805f3ce29583222c62c75dd00bb24234825fef7d7446a9ceffddf62025242819b0846a66387aa963fd0a9eadb75d0f002b10b0fc2c701a1d3dd6434d4e9418ce062885273db1b1206afbe92dca98e49d40bd4cb6b2094c787078618e92fd812515709287f8beddb61992e1fece251d699f8e9df2632548890f19cb52b2def984462c18e9214f061a0b66c3e8b3fd270a38697533ddb7b4c1e00ec68021105a172b4bee66820688ce5545e20e4dc7561ec19efecef5af1706017c45a85e9c7c507522bb31d6d9fde9176c74cd43f63655516d62dfc29067a1609fe8e5a382eb7e772f06d7683daffbc96d122125d9f07f362ba03faa565886dc151178e471f9cc606ec7cc813fb4970504993cb4afdb1ee3817ca1e4f8634df96f25aebd3508927e15efe6c4d9ca0f0fa4945472ebe48d4a0e3201af0d595ce2f73e24bc0fc2e86af875fdac54741e7fea0bab0e1e89ab0805e1463ca8b6507cc654a0fde5ca53df96ad11f814f0551f4a46b762edd198aa2fba63109065b177f4da88e6205fe960d6b1aee420a957a972d7c0fd4c7c813384ca19be47caf11a8c42aaaebab9e8e1921cf72e62b682523930f2fd3a8992f4146a7ddbe244054c8fc1622deaace3bae1e3d686057df4bf4ad2841db30408345fdaad362837d9bc0dd4aabfa450150e24ff7777e315361dfc34303f993a9d558c8d374a24d526c8b35d1d595579589dd5907e1316ffbd50d1c481fd0a23b425bc6e34eff3ba618a65eb64cc61feac3eebbb203b9a9b6364bccac95a649f94e804fdbe716b10076cbb0f3fabe9e6c6a81e224a818a97926414055ad933530eb3afe7b31d0cc7831c602941285a8109770edad7ffbba39c9bfe79d7669e46bac2307fb1b65626961357b822c86b86013e46185956a2467854e4440e9b7dffd7e646e30946f9103f766d54fbfca9fc51a18a7cb85eafcbc9c0466395a4d9aa172e95cf46fec00d279ff66870b7bae29d8f6bd6e0340bcceb12836088cd1641e939f78c06a2d4775b51bf9bc80890e14f55a8b98081cd275c8325d8b854540df473de57a3c04286ec98001063d9f34c8b1404c7dc2b40c869ca6843503c997c8e4ffe25253b0aa31a643f8dadf2b417aa943e436812c3d4b37bbc8567588557b7106dabf18d20db59bc6b80cefdafe2fbd6d7540dd3c317e96ab56ea60cb606aef6e87e388b8293fb3648a5d61af94dfe8014bdbce712a7f8dd834aee74bd7f9892b9e956b1e1adcdd53e27735da6573a278fb5ed4da35b88a21b7281289560b6c27b805fb0e64ff846ce01de927a50a858ea61ab87d4c224754fa321e4c6027aad5b85550932d96d03a97f383b970c999f3b1ae56f000709036e1d415c7c9d0d2d2aa809e40164182df714c82d7629c5a384c6d57b61bcf29eda12d5a6573e3457a44aa509fd7f3f622a24f291b2ec74b61db75a22035f860137ab52ac9998cecbedd2d60086894a3201c5f6e51708152980399bf1a8db51b74b797372d5e6c5ace3c25d49fd5e398f3130a279e8bc460bbad23e22babd4aea831d2aa56d1c392c95ef5ccc978fa3dfcdccfa4a542760adc64bf4778836ba06f953f1f91df156d9cb7d528beca480da3d788a15317a82a26dbbcc6f311722517ff501a720ad97df7adaf8afccc7f18d2f189a4613ab3f7d24c27fe13b5c1dee9dfc943f80db730fbd2803d1f99dd5f4c1be0e50b5add1777b19ae28080c0545afc184d2e02f2f4f395de8effa5c2d80036d3d04bc435b339f7ccc4f613c71a1c2d685390a72134bf98f1f8b09ad20aff4debd9e0aed4efe031e40ba08fe9fe4dde4fcda456c316288a1820a2ffd9ba845bb9a84a87cdb9d8756e10ecdcca1942253d95edac24e9e7ee64b5c94c18030122021f5440a4f08c0deb93b9abfda14b904b40417f9c7043594cbf57234f6e787142c3d3bdb818284e41b2b03a3bedee9eaf1eb15adcf1fe131e01ae18b560bafa99cb9f7c6a4b99e58014b4bb67cf344c8c4e88697dceea444e190c1316417d253f45fddd0efc9d6df0754252ce52512402ef451ee71a38418759d7989c353425ab6870249001a5dea83474d024d47acbf9739ede42c34fcf7f474e588522609d7d14763b37a9d18ca60e5ae36310e542bca166c666f1702040609103e35e8181acdadadd9a87b33712429a5735572ecc0b237f74c9421bfaec3fd6b665a53888ddf147ec97353481db704e701f6d58b024d49661e10a00fa6f06aa60a04b2a8ddd2f57bce118e4214c8546c2a69d8d5e6ba291e60fd7ff09b9e8663959bba730bf61f8bf5efc8904b736437c4bf735c195f72f5c3a848ce67e69abfc2fe76150b4ce14434bde5feb1f342be3638c968efcd362cdf5dc405c0ca09a0933c5979152178b84a09e9472a56d93b568b675e4a1db992f0e4b2e1dabfbbd6d055771826479f47d44542a7665b901a1cb6cf500daef242284354b96fa9a3fdfab47f197ae1bbde243c66e9a950e5aa13ff4aa40c2cf8b4a50a573cf54926b3a641c0ad1b4ac5e0d34d1385b3bc9ca00ade9064c823535aa4a405ba487f1b416534cd4f9d0e37a5b41e47e122c19cd93e4aecd93e9b79f7477dd21d6e4ee2137dd226440c7beb7a6e323a90a6230a53ba297ceff0f70dd8642bbc083d7fe18c7ff143942dae4468d92329f6d3f171681d129d09ba03209c46f70e742eb3c67bbf352266a1999a17791337c81f504e9c159d857eba2a3523d61b3165fa9656f93da36ecf0d714f5cad82e45564d58ff5f4b593bf2544f2b93632ac552874b01cd8aac46c00708420eade9f41a9ae15b45a97843d7c8a0dc31e9a2ad1b1ef5169ed776acc1b902c5465ca8fab044ed4739420767e5e48abfd4db0f3855b217ac49d8497ec46d1ec0e554b3655ae96d8459bf9cb2376185800ed552a4a1e45c637fe3c9ae7d9e0c8cb846f822354712a9dff4003fe44d18caa513ab364853b8f190d2775307b955a07abde4ae82c57a452b07e521de40a154914f424d39db11f4feca248ebb8bf74e89a9781303e379f0fa84c822ca97d5fde12f10272f17a640652f994cae6b3b1b046d477f7ab580285f996778e443bec3045f14b4210465be08d0813195ea04fdf34b27ba78218ed08017e831a037cda3ba4ff4695c1d5199d90b8f2e30c87b2d2ffa6dff48a53d1d2d9836e109e6a55ff4848a213770622fd24d2dca58a189de27ab98aa996460f62a8f216f748fe448990f02e878f9c6f47f9dab55a8f5ae9b9596890a65a1082e9d85ed539695787352a5250ef7c395df7c818b4d6689865ea431c8ec65448a4db6a169412d858e01ee69382786dd458b91e15beb9d311d5bf5d645ec3db13b4758c82f33d596b2aaa434b0ec914676418204d5ed31a39329e6d8f05ab9aed0237757c3b7d10a2c471099645514d797eaaf97f55d894dde219833a25e8b8e4071773730528875753cf175102f4bc96c44ea2efabcadd9aef1da95568fdc232a8123ed80c1e5c536f36bcb1356eaac0df8f99bb65da2c1fdb46aea2d1e3564ccf5a3e1d52c22fd91f56acbd0ca9fcb3d45dab109dbbf4186b267be87fb9221df89500e0e7f219153f9088c8bee95ff936e2fe3ffa42d992e67e16079a7789c7ca0321c82947c9b6873a093b0dd132bd5ff3a9722dc21d6229ecf36a6f3cdaf2e00cf43908b65cae595611d7e76978ff499b5090828b1696293d09ed6448170fd9cb99953f9177535fe375dce132df2be5dca0ef339242e348d6e79cde65a43864cb5ce11d8b709e6db52204b7863ffd61a59f9f0907bf47fae88405d5d950a2c7904799cff8f40c08b379ea0a8ec7fb3e872d27e8e317ae6c0b2396911a0ef272d9b14b45e1801368cebf08ce217bcabc220510868dbb7e87d4aa9f9ff15491578a91da60b880a37f14803ed0aa5debf7f75f7d087b4f9ee365f5298c8f97c7c3e8975bdad17c072623c8fedc076c36b6c44ed003b3d8aacb421c55d3dcb80016f9661e8e9beb298998f39014c515b0a116aadc9bf09908e774433d3ca37a4b27bf998546ab44c84cbf88fe8c655cabdbe2297da5b2517ccfc0274ab4c4c066f6942f63d39ac6ad372aefba352837cd7c5a1b019d630b81b01f72f5944ee40e41011d368c134b798021256303dc880ae30ef475bc19e822f95fc0107116445765b4a1283305e4a8c1260dd4d7564f23b2ac83ee4e0648bbdac6ccab044951fa53dcb0f019a2f6e1cabb127198d85a1be684f0a07f3a9de5d67cdec39ac7b124247abe17c0f8a6b87b3f49ec39a0e790aab4cada6319a823948c28af6b3b0cd0d70cc5eb231a7d744ca9e598915502098dfb600807eade52f50237c5219696388586438a8b6578509e33496a5ba60b85162b97ff0dc24b3a2336288d86c1edf435a5bae5caeb64f6d77c5c3dd8d5f66603430d76092c5a3f9a9455ab63507a170d32b451cb05f4dc7f5d1ca8a3a372e116e98066434de46387877d10854ac1eb13740835103222762fe7e01345bbbe2db2b0811d9e70e3edcede75ed998a75a156d3bec316d462aeddd7c8af5d289b062756eb555a57201b36b596e4769ef269dfd9d5f6ffe1ba3469694569770b1c0d47d5de910397bc08150b27a45ea0d1e29587fe271226e26bc2d250f20713dba666fe1ee0e40822c874edfcac8d2db983120c4fa6a3f89eb12579f3aa411ad09ad56cae35335b1aa203d613620bc5cf0222880525a24fcf4ab55595dbefe363470ba00efccd9f19c07b68495dde4213943664310e69964ceb1ad1b05f474e40e7b1f07d50f8083a5c3882f93307cc6e6fb3b1d0c3b74b1b6141a3aaf6829ef81a711346b79431c899ccdc79df372d69cf8d55d8c198103b9c375af3083e61825cccbc3813ededc950f964ec746571e1fbbc41a7555e3fd3486856146700e2f67db7611820e92a1dbf572970b4b7add2e87ea2da97aa0d6dc199532d1328459987920035365aeacf41e4427c51438e9af53400ed2bd246a13b5511406448a475dbc3160c9f937f4d4bf4b8239cdd93e6da441881fc29297fd5aad73ce5144940bbf92575e3e9906c22cfee8691a4e09983bbda84040a8d594dbfaa5da8c9670e984dc2cfb5de22e80efda42f4ae2497ab8cab243cd1d118df1d1692cc272c6c3170bf4629b981a2226e4421cacaa90108aed30d6924f1827adfc004ae780e5d9c9755609862528e4a6460ee1a72c48618ecaa826b3b60825d0cb3330214a2fe75269964f4e017f424409865e407db947b894d6342399251987290655b12132b3579be718076ac2bd2902f13786652a2b7051f96d93383e094ec9ef07c2db4306ed6e168a0269ff9415d8e9b6e3027bedda7b4738d59d46e75ae7310667f3977374a22593484ec0a13965a93feec13138ebd01c21073b2822fc8431f618a95482b7691bfbb1508cca13de62e7250a63dee508299d6ff48201b686248b8213cb9cab85942061aca1c9964eaa4b3cc8526c812e4572dab6853bc7f27d6b46db3e44b164536904b4ec617ccc4a541b9845621bc8dc7c07edaf104bef172f73296fcb1800bf33db3c53a835f96a609406a3874e6c07ccf6e47bb030e1329ae033e4e42b80bfb424d8aa8a571e9ef8fdfa60d43cf0de3f372f27a86639dce2313f49996dfbb6e1427ddaffa1b442c3ab8e9968a7596b206ea59dbfed87a949a0a0f484023668c6bd7ca7823fe700686c09a2f05e49d16b91f10483aa612286468d4c9a9d9c76f546da12f6bc26e907d4faf90a1e6b5854f9dccadfbd1e54a7a1997873b6842f296fbefbd4f15322a565c9cafe987172b75a44ef7f471a290a1f3b9c437eaa0095a58a653f7e0cbdb5de3879e63d5afa1416f3aad64e22e7ae92c86be96c22b5b8a618a069140da4fe55ed1901897c6428360355965e8501dee38da9806f5b91f7dcd1ca46375c896f6d9787bfd10f3247bf501c0e78000c0e9e4269dedf29c5f6453a1e98d481d90bb7c156a3b5ac824e4c1c9ced9490224b1fbd35e8141c940b55026a8d47799d38cff8335968a66f33877e6bf46add987b5503f5c1a6cd3ebdf7a309b7b486fd30825d47e1d72febb2bf1f2a3fb4af97668545bc18863ccda5cf77fefa53851c6c843df63a89fc9d61a6cf7c29ffc69861fbb5d9abd7fe73f50d3761b70032fbbf5599f8fa79c35a1db900ebef4160075643416e14cee3407fc452145a1baa1d4733b04b4e9b5a115713403aa587a0e9a7cd9b5058ec3a79eb124f3ed8cc6ed142eb009529e105110cd919cdc45340bbe5330de99abf50e45cca3fe6f21d3d3b762e9a2c6c263bcd94cf56c478a4389633a9e18d7eec57b6c5180818fe064003aced9dc51d380fafd456ded4816737be0413436e5f3308575a1b063351c9a0ec36e76a916aa8b40bf3af3b295992eb52471689a61417025626ddca6be3f8f3a60e286111136c5e62b860d622e269d2e3952276fade2c0dee78c0e1209b890ce52c3f30ef3919871a2ac03b83585c05083ca35df86d8bf970160bd50f50f67d19fa8703e4d96411d15a98e12da0c2813a0fdfaa9c5157a80f3372ae42fdf6e5ad585e41aad502893e0da4c1850818b3338a26b72da82626064523126ba6491421ff66e96fb65381452f247eeb2816e4af9d1bc0c2f58e71dc26a8409d64b90664d5642e794e4a024cc6e522deb245edc2f944715a6e4e8fedd8f39493a059f6ea8a2f8f63ae69a4220b6e3864650e79a8d8b7d22606d4ae7a0dc34789a6a8b82b0705cdd3ff3ba0cb8bde37071be43c892930bf7e033e4f7cd329b48cd80e673a7001fe6da6421d96fb4f64fa7dce0bee65a8acacd6d5c678edb4b63df77d5a267d998697ceb2e0398c73e290c589ad8e69dc268d2390a1a7928b1c1ba5c06c37121ee8e8d41356962eba10b18fab969b68c42a39cf9817ed8be1b794089920abf9878559af85bb02429597108c6309a5b1b1ea4ce84286b4d37695cd0b49103caecdf82c921f9f0404f0917a1defa9b747917209daa888344189044009f727a2fc3e2b8a42b9401b1944397bd8a897490f5323761e792762629e6b656658f8756300a450b822c91e2176a6c06d18c282a90528125921cc5af74ebac2b1e7d3042684ffff5f481c5b5729fb68a950f49d4ce5b5ccd967e45268841280eabf8c9aabd6e75885b73278e5ce363cf93c8f44671a55204269e0fb429f1657fb383dc00350aaa6ab2373bdbb7e8799f6ec9d83d0f4069d713a30a3dcc344b6ce8856b057a077bef0b8f5103f2b7d30fd4944fe8d553b74ad6b4c1ed5b4b30a1476147a8744f02d8a6f822b7949c464548a0c9f846958bc917db3ab8214a1fea19513813725a3c094848ec1f9e8015a60af0d795dae1276964471cecadc27da5468a7281b057c5afc88301f5fcaad406713c770c48cc811bd454114475711fab5a3e89a4377df4775a89931e45877eb306f6a090ad159d6c877a9c22deaacf8fd5d44ff86db78c89c321ebda2af2090fa23cc9a75e814749cb8f949796240b8bc81e7e08fbd8646409def2ee06b780f36238475d3cad5dffc44f638002ece44e376285ed1ae19d1680e04965bd487dd7961549652900e10c046469dcc044b45ccc9301b0a6d03bf22b4f6ae310868b02298e1cf6ee49d16191e7bfc51df980862f74c3e189b3d980b34d2c5fb15f1bb3f537406672a66717184f7305230a62399d4cf0831f8481b70519f3ff549bc163270f6de76b3f4cc8c3f7f4792e4189fab330f8fa89a0930808cf5c10bd5e8d416035d14b949ba43c68880341cd3dfc14be7a93af278f6f4f2312e57237ee8003d7c85638a58d2e87788b9d1dfcf648febcac04709d20765dc373a2fcba204443aac09ef0525190e27ec6868adf9e9665bc97564d486be07b5e64d4780bc562386ad7148706117fa80876d7333ca801e22e244dc69371b1ad18cca5caa5cce456885098dd7933c5f25ad19878609bdadb928692856f3fa188cd5101200655388fd720563f431ececb31bcba778c05d37517458e4f2c8551496063397d6d73a74bb0870191cece22dff12a8898fdd31854084facec58842876d33c950026fb9921f2dea5ae462f6aa4a43bb6ed38b0d8fed5e8f56015328d204c2786342838b82bf26950deeffcd1eebee634edee39496372b370be89c2aba323b219508eb4981c322987ca07096f58ec7a81910995f05d032df4b4c68a027d49deadaf7094eb7c5709d677df3c36814afb5ca728514c09b8b5b6e28a58f5bca7f4ca0f70fd0aaede73b6207e0921387dd33b241ddf2d70e9682f904eb56a4bca296828519775826b5030efade9a686debf5b8e48b6c0218ef4ec200444d36efb0ce39e71021c5075108cf5772ac604d7202af1742e3d6ec93ab04a76cf49682e74ff4d5f7f3e8dc63d3e31dae08f9392fa3cbc129a219f51de9cb6759cfae338f9767264549155236776c06d6d5c81d6b53fe26a5be710b3be2018e2f86fd104e71385f5683e560844adb7a12a15084b86906a6f1118b2ba658e1b83c05c6ac5afe9534ec8700531320d2dd3d628f88118ac0467970462bc95b0f2e91c761d63b7f2d955923f18b3bfac7512cfc281ddf17d5971b59aef28b4ac18020eb7a98cf274ed2e715f857624a614a83b4647b1e0d3fd50a1163a3852886ba5da403afd2722cfd269256549574fb681eca374d3b717fc90ca68a216416f5906d93b8491207ef3e9aeb51507233952604e6378f780234fad94cc0c86da27f7410f2cf8529b1cda15a7f8af03aadb6e0a6b536e161665bf58998e09fd30d5319309b5961bb7fe36f868f02f8f7087173388473b05cd98ea49726325d3bd87462bd79b4f365122771e138030dcb1ff0567a599f096fa32c4c640dfb74f5c16312fe16c2fa0ae5d2360f8878858fdeb0e977a841b39fc5c6ff6183f4e688a434777bb82ae23f754f70f8c512a3f60f0e29380a2690e13e6c569a1c7fd66f78e13bdc0b638337cd4d62ad4564d4b452be07d2d94d827f97fd3e4fde4835455f417b63482df9cf0b437dc2e61aee247a7506a138e4ee3f6e61596f1c208570d2fe56b8483bcbd90d20c466a7e40df1e2b6a1da6d341fae4a3583821ade71724802180990f69e10b1e6ee9bf6f049c983d7d14ed98c0a2fc92c4d2c74083606185d5813312e53a28a561e1c5e2fc8f70b6d7a202b0e91e69fd21dd70fe5a4c4db992a35f480774f672540e9ff1f8b054bf92b74e83e8e8e3419e06226ea453ed075a4b20a7a29ae3079a7ec8fef888feb865a7459691b492072d4e6a2faffd66423310ef9e6499f92671814bb5e6e0b3f9f349b679ddb9bb7df4430447645b61d83b88f359d489218dbc807185ca1087f716755ac3719c1d611ba50f76f8dcf0ea27bd0425b100a1ef806d14312c11e05a4a7031f2209f7c7924ef5fce6ef1f62ff3da446ca39fedc46d34dc873416a4b82048a6dad3b97a95727c18ec50c4276d5bbce094becd4551a4c1970dcda328c24c229f8bc1d7bc62c3be7130b51a21de83cffde90a6c7ae6a9ed1c705c2d5ab4889635f81e004ad12022c80b06e25f2b6fc88ea233b2730620a676831c7029a78366fd8f0b03f0c2d3d7567574f82882f0155baa860659ed9634e84667e355eb8973f881e5660cc0300427e8a490381efc3b8346944115950da5e5a204cd679e204818e8ca3d2ba3ae5234a34a96374cb6a012d5dac671523d34248533651cc8e2caf8139947d8b8ceabe40d20b6a2d9a3f88aacc45e5366fc13d71ad9f89e25db38e96528cce549916c076784cd77bce9d412751961201de3721421b0df04989db9ca3a598105d3082f273dcb5081d5a20fd48364de8bd2d8275e7785192fa919fadb3f6dca40b32c2a4434cc0425ea0962b86aeba6dcc51b8bba1365518c4feb8c012f19be02792651a1b5be301be8ca8f0e5a6bf9c703eeb8c8343ccfc5af6e3b53da4f30881cd5b413a54ef9df813e777980b25c81ac5b47828345ddfea7d1415baff91836e0b93abbf94c28150f45b56e17d81ea42fa699ddecc92d8518fc6f82a4cc5bfc31ff9536bfd676e1b6a309a4f925e7f49311f05103308c508d0eaee23b75e37d8b61bb257248155cc34525e023986d2e8c62c966b6808902dc201149e489481a632b3e9367f4c9c5d63bcd5043e25a93ee2cb79d1ad75880ffa65b04094a617ec5346741729a7c086b35043a4d4efb120a1e985122a46169d1b06bea52f2f6b6a59d2b3f028e7246692d71e3c8b53f971222d720d585a9396cdbb4550705e34e1c34d20aa944b83af0cba8357d0ca63535c6a31ea05dc650a9e793a4853c576940b26ce326fb31211670430dd5ccbc08d5ddeda9fcae06392377e3b0df85e4f377db8545f2018d479bf249c3c3d21f7cdd3cbe28992ad99dccc191bd1809ef51663f20510a26aecc3dbdfb6ae1c9d826cf73e06af9f80b06e0305f4243e2ddc9ba2c69726b8cb9c10b948a58e8725ad3f8810c36004978122fbdd52d6cb84f49bf8e522b140cdb19ff4f78efb2c26b5049a17398982835eeb8457ba301ef637ac1898cfbc309b051745779e0dc9c10d9068b18cce55176feada175036df1c52e1c28045ccf9165a53e4748b8770b7db791921207aad2f06d700024fd2745cbabaa58f1cb38ba43187e4dc10463c1c127cc6548bdcf1ef4ec76d9b16c8e54831e122b45e43b2b9bfb7437958650d7504512227be6b47399d23c8102b3ebc9de1036686959d804855b08b44fecb080c239f674e9a0cb4c9c7c23495dfa6457831748ce9226e89cfcac377408ce3d394de349021b0c324ed380b3ad1a13ea45360c28ffc68a84c32780a5ddd1efa4c376d110d34df5092ac7f4054a35471ccc5b273f09fa4106cc0847a2860f6ce882bf1f4e6c55844d7fb59d71358e2dbb5aa1c5040dc6593cf0869e66c8a432f5861a0aa41267d2fab7c960b12d95c0d00dd365fd6422566e51ebd87e3a57f2fec0b56a1126564343c255e69fabe02a7374a4d81d571163485d7cc8ea83738ac31ca66f3a5155f64feccbf6ce5953eb53cdb1d0fc657a61110be1696400d93b3d523fa6902067408fe13cda8247b757828b58da025c35e365a6c6667abdc12e36a1235a15dfb5fca5f0e68a99599853b35c1401b65c7f2f6aa9ec90ad85f11438b9673609922ade746bddcd0066620508b46e18cad683843347fb4386fee3a547be6742a2d00be3ab54507d299d034064e8cc5db06c1afacd697f47f6036d8f6a1555a1f7f9f2dd5bb9b5e889634661469a4ebf73cbce951e022b10c828b698fb8bfcf77f7af1599e1ff391e179f0b0e7bd16740dda894e3c786cad454be9dde16a372b14a999223c08a6df35df10c7d3a3bfe78996f6130b577650faee2eee02644258fec24a497ee317a3242a98936c6849dd3cd324c72ce59eddf3eb103070988eb2116932f71e268593443da07686f82baa8631106aa127fcba634a9e627df4fc979cbf71fc49ce5bc2c65d29522997d004f0e8b572de41ba23fe8e1230fb1e4124313c13c7bfa40ed71caa918ba0523a72bba0bcd2cc4f5ae206f62380f26f36039a93c59925ac6804906618ea1f2998436a637d0dacd13154232c46ab98932742975eda110a898d8266c844d8a2e98f17b92163485b62d6eea7844e47c44e39364dac6767c13137566cdfd73073d72a7e727b79d01f1a821cf5bb450e708e086246525a2883fc9f735599524fb377c8b8ce2bd3ce8460474e66c44d61979583490e52e5fa35017d3c3f669b905ef7cd8862730b989e474ad905c327069f79a9b54ecceb0ec02789a3d1814dcb658801508cde7d2b80ecb4c25c9f0842cbafbad52f9e6b6ce7c7801d6eae4d6e61e1d28814fb6227159b875217b5d020a395f006bf84569986b2657dc43984efc93d3e4f7de209c94e88f854bf7272aaee7f078c0497d9a5f5d1d94eec9f75ce0aafadca9d2e55de6bd65f2075c112a4fe738d7b0b95642d53968587af5f8303d0c113e2b884d458d9ad5ad448ecb33a4fd9ed7bc5902ac270a85c85019a3a127790e28fb3e1a7f1ffd77b843e8055f8e546a0b926bcea14698e4f8defbb7c78d5145aa6e1e3f05982a47e3f9303aa047c4fef8443ee80df7180e39a11a7995d8d4d777ba045552bcfb797ae07db2d13dec4947cc863480dc4e518a3b29faf9dad403b41c0af2197431894e67d8be8d84d375fc1040a502528835a67efda9fb81dd54bca2589a5c8cfc7cdf1dd56c87ba8b9132f25c3537e3d10ae4084015d1bdc55687375c94959a123ff9845ddb5946177f13282798cbaad61c90a6ea70acd8b18eedc67396d1deb090933fdb47870c5e216db4a56ebafb2c5157bcb0f973c7d308dcc402cc7c70aa2c064ded70bef148109426e8e0a598df5591ab0bc83abfc3ab36a19d65f30987558fd2539653c58cd071759d058b008d5959ed95533d37c712df74a547d98eb1d8e6f9dd4a808974dce22b0083038cc09b5b1c49b7491febb38e0d645691cedc8213e7c8c0e6aeb06b87f038a5647cb4212b4783fd274d78b18d0512364dffc40c25bba86051e88065b60e796d5ce00cfd93824d653ba28ea06a374c6775016adec0ed10f3afb32729e808320abb7ef4d1dcf703282e91f08d7b21abdbbf61a891a605312d61f4a4b7e18bf88ab0b275fa7fffa512f8106c4ae124dc8a4424207988f6d93908d4ce5530eef3dba28ae31afad159aaeabb27e07b7e6de620958221b74c490cf157f98a241fd589b8661da41fd7c63e0d4d8d39d0c7618c46f8e13436ae47807eba9ed171c99529a8fd71d8d5a3e1b66389ade12b7b67b3dd021308874d19b6116578603a357108e07c52f2511dff34876969fbd0cea6d7d2261f4a4695df881a237005fda00078175b6570515bc6206939f6e62da0f938452c4dd61382ef79d8bbc5244785eb57a0664f09ae1b49f231a76a8cd15a435cf4e74804a843e054d0df5bfe27757d92ce39593618ba29cce1d550567bed5fd63360a7151df9b01708cd708ca81cc61a4493f2965caaf5459f46fc2b7f56c3b039fb2647d72c72345a7d0db54445a149272b01fadf5b915ba6546c7f55543a26ce09fa9793e4bec1689e974ba9b69c414fcbe926e49324957b01635fdf0987599d0518cc1679602abb12795d239a84eac8bbfef9b1828343161b24fb5767bf4f09a6bb996fbf66d546d948b5745f1ee251828548e7e010e3eeea9524bf5891bfca7d3d692ab17781e68de0fe5c79871e3a7c2b5c417a97dde88e9b2313b4374efea7fda0223ee728ed76bdb10a66594d0c841414a32650af216c93f4c17939f826e4fd30d2c61de89eb47a62d7668b93361632c67c9f314e859b017d1f46449ca175c24b2449f78ca3e9d9c5fbbc63c15b18206dcd20fa404b9111d1cb17b39fddf682739323ba0407f8838ccbe3a321f2b5f5c9ad055d48082596d3f8be17fc1576f3492a987108512a2736272481c79ec824f52cf6b7d49da3c04c0f562b977e26da393c4ab5d8eb71a786f033b82bef070adc078c954499fdf8ed7d2b0e35ad8709644a0b633ad53d92c43f083c59b4bef423fc03929f2522dec5674c30f3703b540b6371d3638bc4c9c9ad24acf3f798f8363763e88f80f529cbc37828ac627aaa25f13f33d80811e2d910bcba5addacebbbe7b0a1e0fbe651e15247a2be9e6be5c7f959ad10e444e4437a33cdbd2ac6216dcfca2b2c7857717cd3254695b3a63793a337c6bb47a6419186109ca549f9a3e721759fcf1a53d60dd584a52c8331b404cd55a64f7d30e73da13cfafc1a6e83421ecfa722d3ee5846d7d9b17e602d55d6920b36e5bcf50433f1fe9554f8f0605b1348f7ac4ee7bfd9276a9aa7371a14087d5321d6f7506c88c7063f0af2a41d0ceff4bb63342f1fab62855caed75f3a3b059c0049622d869d1ea0597a261caa7eb0903be696017349cca8b565d366337503b145f183c9a0755bcdc31afe54fc46171fbf2d9a3cb7c0f21a5b8e76afd4e3249b3857ca3b559675ef2ab1e474f76b902601e673bf0176b7b291fc3e4ff6132090e8d2134eb2ba65bf45dd2bb2eec046644cfd027ad84d96bea8e75073d0fffb6393bd061b155d9f2433917ce3ed3157630653bf3d7107ead94a4b42c351ef62f6b508b2c2bc13e3370ea8a3b759b424d59d1eab7d928ca0ce468dbcdffd4351f34b5201aa267a29ef306a26d43ce7e47d895c8895c342d4f63bb6849d8c048dfaa33fd911ea62cb37529407967957f3f4ef611afc2cf2958cdb80b7a2cb05c7ff9079b985beeb4d4a5fe136a37736dede702cec8c77e0eadc3324ef5b3110ac15de9735edda6b5fe7c5200b79248a19bdf6f61564a6d00107455158d3a7c2c657fac55a560de18123e8eda3b46803416a265c92b6e04e92b2ee31a2cc0669b9650a13cc9be7da91d494aba3784af409077559ff1448703c7ccaaca34e80d8a455419378043d0377b645b7bf66e26a9e11ea1981c427b194f866c2eefe0cd9f6008b58a85ef34f4b0bf8bc8767c6681ac74adbf1b2b9b7acec8bc2673c027ca6d8c68d1772b9f5335ad3ae6c2e92b7b063be335e64674edafdfdffeabeed73938256d4487f06c829335901de5bdbba922a6ad06568d6257b0c96d24d2ebd76057ae63819689c31cf99775f3dfce083e01700a3936799e241b5dfc0a4581fb160c026c5c30ad6c169143238c399fff7e667e8fb652d76bc6aa575f85761f0ae2bd2345f12a255e930a612f82092c7de5b75dd75c6c287eb53899a5db1e5eadf9bd5972affcc734f429597197c6128221cb0bbfc943035878cf615870358718c2c3f8b59bcc439881c398be1e4ef724023be982383e5be2239d5a7801f99d665fd02ac3c326868d78301b82677ce7ec419fcdf9e9dee0bc8a2ad23ce02d9a766c0453e4175681227abca34a523d3ffaeacf25e926abbf2e4bd673c90fdbe76aa1f39946d69869e523b8fe6693e04b021b0beb802ae832d1f293d6a38e7e359ade30764c26db61c12214b515e2e2dc1d65f07d528cf0edfe8b06f3a349408465eedb2bf75d467bd935c59111c107e3afdfd47c82971c2e9ad8149986d61971f64b1673d624660f996932733dc5191dab0ea3adb1e9915c5f8914c050cca02e0a1e1000a870a36e745ba86e1fb3245b9c12fe416106668195504a27e7986c2862ac716c5f9c956c62a4628e571e8565d5dce4e7090bc2c0f2394f63bb0a82555f368695a2cb53a783859bd24bee4e0068f5d8e6ce6379b571f5562b41de80a56636440934afe65f5da2966d6699e4e8a87affc34cd0be6c8642fac70612a7b837b2a6d6e1c886c7c1bd598c110803c19df08138b9c193846718ec825e8cde0a1ef97d540388d0c9ab37bba9e0b8144e2d11855c3ec6bc91c5eff003a55701fe362fb179e3f4dd3a3792b1d070ee132ccf825fab23b87fbf113f89cc2cbb01bc8ba41415a8b6b0ab4e922dc1a0ff72af173c8904330d989b9e6613ea400bcb7976aeb2c334285040ca5d8723f35d4cec0884148e5f67182a9c6ec02ecaa0cc7dbfeef1cabfcb8ed53d0f10fee2dea5da8cd3b607c7a4d91b1aec660324acf9ac9fa650dd6db64beeb80bde660d4c99d5d9c2553307a15d35a31db68a1cb3e7f0ea8f4ad30b6784903ae5f475a22230006d3e0e352dc45941fb74e25159dcfd567b66d932812ced7bd67adcb64f8b55e97c660aae52329becd3468f1c52f0ed3cfba8f1d203f715dfbb7bea0dd02395efeea67f6465f8b5d688dc3c05b07896f270997a061b0740fac9e25454f8516799054fc51b90a584b464934ceb0d37507be6394f606d1ba0e16b10826a3fa043de8a3ec376c055977abc3e68f0c66726481494a18c440132d1bff480f965c0e83fd1341a0594b66278827a335b1d37baabae233536dd720e559ae256247d892551fcbb43856fa0832125295d0267b32e0427ebfa1035a46f2b762100a993859b2776fbcb300e0d545fa3b24c851374d0253187af0f6c4d0c6a743526316d465a3c0ad8f7f942f89674a6deefb38533a11bb65b1bb825383e71f954b41b7bbe65df5b921dd709947b7ae8f65df47f1bed71757b9872c8a8b4819ba6cc8c9ba4f23fd3d372b7ffdba2d8c055b91fe05e44435a420b5ee19cd47ccdb76a07aafb8b299e517f727c1ea157e8c314da69b655520563d353c6942bde4dd9af7a7620073741cccb8c37506d828ce434805bb3c7c96c4b01a64adf5be30fad7e3fcb2f9480939c96be74039a9b609bbfa063bb9033ad7e9b3bc9a20b98fdc69dfbb291c8be916ad8bc5fbeca82a21f6538998a239b2e0386a0e2dab8fad8b7c4d7f876828df4213c510e5901e6fd3bac27c2c48b88261698d30e607ee2373a6113fed941ae82ed876568679605fdf09515e809a6a8555a33973cc761e250d89c7b8c74a29318f7694ca5a993b354f649ec23df9b01581ddecffa4999fde575428837416d69695998c05c523d429526adfd29748617347e73822965d2dbe23c376fa7941cbcb33f354d1c3f82622ef0f66af5b354ca847e907502fa82628e5742ddd45f59754ad2775c344f707d4efca359d40e5472e072ade9ad88a1635cb59dcc8023ead2d3f2f930a0e380efa8af99a2a63ca323b11cf2752c3d2263a46d7bedab91c962450ff2544f7393137ab2f2c7742aae34485176c5b902e983140ae8ef97e5611bb911547f0fd57416aa48457b6a34dae4142fc59540dc507a2193f3d57c1c0b48680142e530c404de58377e1e3ef2496463219162abebb4c1b80c231920c5cebb332e38f22887d7d9b7aa761ac62edbd32cbf854fd390aacca33782e7db23ada4d2b7756a2a2d32b06d491ef79eb9718cd9647918afcb7f5b2f3c1269d147e38220ec89e8feb24a8fb002a14e2c012f99620990127fe17b7e9f74d997394336aff87462a60a6ade0b865ddef23d7a0023bc8d1a31f3ce5cd0f084fae28def65cb0eaf79a0ffaf35a50c36d2c4ca441c9cea9fa80eb6f202ed4a0cf21f2910e9391ac4dbb9213a474904b8be6eb53209339e2ed54e45d817595c935cc5e99dccbcacbd720e2b888a600b1aad52579382ade515c39e4992741901f8a88f1b8c2bfec0167fb5b610f7926bbeca45a5516fc3fbb15988bff3c04a2c2907d3a10ad05e9f0fc2ce1bf149b2b19d3180a3828fd27c82fe613b21eae2c86a09e2639120c8503959c9585445f76c7fc7a1e389e729e477db81efde9cf65c01bf8130e2a5d3f715b82981a4909e30c4250614909f669db5e1d04d224696dee047a205dc37e0334811d995837bbffe222de07f22d7ed137b96b3678642652cd36f94e9d73271d420ddf5a5f8146f6dcc7974ea9c049a6e2c1a61b4ce50af8d85d1fea228fb37878cc99d225049c7ad8122c5ee38bd9a4bc957c869d875f3cb2692ba28fb221a282ed44666081ec492e93c4f2916e41d2b01cefcbce53f8d6e51db8e7c90a5d6b6f4914a9786ace83aa6a8e17ccb3d131fa4e0ca99cf6a254c04994f6acea1d33d77b23c00d54ede909d09be91507242a57af82fd607db09d618a8f748e97e56c19d68e452dbc8e6b675d31bfcac882764d8d2488573bd7862cd7f2805a1232c2df6d9835fe4eedc5ab6bf1453d205d52bc16c6a66975beeb0e36ad31c14e2529748227f7d713e16b8250357aa2bc260734bcb5d43c77b7d8baff412b78633e50166443a68aa355dde5a99d3b867b21c52577a5e3beb168b24fc0829f3878563eb4f4cb99f27f2390f65895a464f140d520cafdc7dd265b4dcff74ea70d02bf5e54c0c7e199e03813b8fe2d4cd62cbfcc78cf397b53fc7b4a369ad5ad7db7f9f6acae6a37d6a8482c4f08cce4867ba39999a3e2a16932ab7cc51817ae00653f3e437c8e4a38086d9ccab82a93a2d1101acdad92b49fac1fd0a9c932f4598f0862a2ffbf2a95fe19b29c734614b09731138eaadae70bee11870217dcafffae13bc0d7ca29f79230c9c06b7da8c1ff0cd962467a274dd99e368696903a54c31df703cfe4763d2be1c7138b7b6914cacc989fb73c26759956d8f268ea3c7b8ea33b14a9b633662348124e334a21fca66a66cd3864e431728ae7e6eb80dda8024be737ad67a6056bc9c3e339f33a1a72b1dc152ce6489197507457d035726b74b9f6dc0f7cf1cbba28cf57f2ca9317bb76d847b3bcb3596ddab6c97ba82f945b3cb61608340b350ac9d477631302657f719d4add81187c761a4479a84a0af85b90104e64c42e4a145ae82152b21e9ebdbfe8d93b163abd8514d17e2c0e270a7082198eeb706ba10145ba5dbd3728647b811e391390ea9cb172741ab81449a2fba450d80852fd4810bde2f539e7eda3f2dad5d91420aab0bee81906c9baa50d4a5fc53635e22fa554520ac4080a02bf20c4f412d88ef66c58b3f4b97792f29a17481623f8869353a93948b2ae6ad73f8d222f10a5a74c0d85475dc82fa28c336009fb6c7616f9e03c2418208a72fa5e1cc6613be0587ca8c427304bd96511cd082079f1e1e4ed1aa1c15a7a07125520fac2e08f0b9cbe0a898fcc19530046904b55131bd0aa1c35af344ecffdd5a1ca3321c532fb541bdf54172537d3f46eabb70bc4727c0a473d25542079469b615fe67e577e14f4cad0db6b339f49c24f9308e0c0bf1cb382c814dfac7aec7b071de22db94bcd3a800137f5052454808801083a84a977d58ec3d55af72d7dec407437f38a88c6a06e66d715e6166f89682b7cacb9933b4f2c82f4c7d8c3e7efd19013fce422ed033d289484f0fa03adae4e5bcf6e550ed3a6a7c94c12c09a4f8978b8a31c2638eed3987c9a9074124be7bcd4e280af6fd7a3a6368f72a80ed71bf44e5e2b32460f9f7a91af756b2d7a6026582e8d20169b71f3087fc5b0988a69e394ad35e4dd60cae247cf80419fe1b318a55bf5038ab1496c959771ddc2e8aa2a448055965fc03e3e6f5b2ddffa2ffeaada06b5bbe5dda7df2f8fed3c21dfe6aa1bac73843276d51f8b358f724a191165e14f550fb6a1ce166110d58181a4bb374de5dc03c7baba5e4aa5fbbdd022c57337fd8aebd299a2f251efa54ca061e7c5d82d46fbb22a164924530974fd3701b555b0813bfd5ba80e0c16152d1548696f3b255a688128cb53955b60be915ac36feb0f1a1b08d6b6fb363b18029d71cb05216408e0073c93852b659b49dc7bf6ccfa7fea6b865f78e3d5c2e93b46aad6bbc1e8d7d526426ec3648b09a620d38d64634477a08822ae322f70fd27d6d2ba03b3ac3df789ef5ce6465bc5f4ca87a9687f7bf9478d08e5db94713aecab62bc6b27f821c992a5c445395280da9ef2c7d8756a21973b3fbd79560a412a9a350e0e740da92780858a3f29f8e1b9743e6d8b436f835417cd31c4b0e5c6289334012feb4bc8ae90925b158ce02abadffad789115dcdd1dcd6855cc7bd1c66905041e4b348046ae6699c7d19800c68b810314279be36d17a77c8d7e8feb549cac61df7d916088a59de79cb846132b01e80bbabf0c0b101c4eb840c78139a94b23692aeb484014a42e8f7a54004ecd5501f45a7d254330126b32edf0eaa4257039fb209c095f9f59386276cde350467cad6118f1779120f6db5b15f5ce3c5f16fdf74e35759738e2de2c602b0a5f863ac3b0a20107d4ba986e4927d145b418e28626b6a66d2fce90dbb522fc10c7f09795b90b73548f3224e0394d99cdf892ba15df0d9e511a6f82f6f86d505f5915528c28b7c9b570c35cf6aee7bd99393728d9caa64cde5ac6791b500e735a09b9e4b5cd683878a8178ca58027e57c762aaaed129a6ce46beb590fc4d377da4b2a4039eafa0425bb7923fe66b578d702a8e73943c9154bc6cfa774fee734a4181dd519dd9755e1cb08e7442f11367135b524342054c9b285d5a0639e338e42750a36fdb2a419bd93fdb69c849603eb01be1a39d9dc87a0bdbbd9427410d5b25699a38b00329f34f5b46815ee7b08d70c6fd0cd41c20a5582b4366735b6154f7a70b1e34458e206dd560e52994dc2f2c34e654ebabee6069692419cad03668af6f09d3d32e9d9a4d0faea0262f999402a666bfb0742078e1d1be8e44a98537df89ab6d7f63b972e577f4a8ae143abc6cc3bdee3161a6c62345ec30b9afb9a6c983d4d7bf9a3988bc62e6c9bf4fa559f8c9c2ed8298287b6bf4c8716ff02f89e4723d6c2075ef0cc38d8e3d054464e8097c35267c3c54b020f81b9fdc25e4f5c0552255a210e835696b1488fe72fc202e8410f2f7ea9e37040b8cc18dbbdfd856427b9c5c758959571818509402160c56b8b11b821b728450e51d24eb7135d76e06332622f389475d3610e6a715ed3c1d3b278855cfb2ff613da9fc9090b2115d702b89bf9a7deeb63899f3f6b2f84ead1b48fffef15e0dca6e029f7cc79798d7da1c6cac8a10b4bfa07f17390af2eb7c5d3b6bb8fca49b8dc01861d624bfb083616ff2343c240066646d5c8109c1da67af45f3385d7de0f0700b987dddf1f01af9348329144af56354d990446dc15e779d66f2a59a51710404594f02eb277bd6ce5d6fdfe760423d108aeb44b0e28d8597eb101b659d2f7842b8a400cdc103c8164005869c8a60e5650b061adf67c3ac4459913d11dea18910083d75d7d9de20bf8b22810a00bcf4a94f244159a319bcb0163ab1655b3fcbff5b213077e80ce210c69a28b3e2091689e5c4da1866738109fdbd8a5d320988e746fe3bf125c1e49a5671245b27df5ffe01da787f047b096acb5d130303b0fde29eb8bb0265846ac33804fd2c299caeef3efb804307d3206121fc258846beb2e3673ae081aaaaf95a8dcc36e8c27e6e6d03cbb3b77dd5ee5b4d80d74ce9d758a72c685927000ea372f92e48b78985cf7d350dac097bb432d28631dda20444df297cfbd87605e4d9cb13f46aee1f974406dc027cc2fe3c165e15a1a3b6471c79d46325b6cc8f18f2500006431fbf3942d688d65fcc4c1cb25a164fa3320c8af7f1cb11ef35edb858a75976cdc4e82c7405f81dda3781ff484c52020e1fc89706bd3dcf9deffa33f8aa7ae676fd98b879a8b755aaaf70d17ce0d61827f22dfc74df8e3c9d64f1755104b247fca22a184797ec08ac44360d184daa36584cf5445b384d00ef2fad49335152f765a3bc426bc5e4d2e712ba90456abfaae9b7e3de2f9b56e11bda42f66bad5d5ed874e5340438ff3c191113685d8646845146405853130dc3836781d6f71696ba3054bde735e86ac5e8ef16f3f9b95b8f55f00566b4432c33090f3a014287ec4851293c0c6099a54e24f98cdd37575a6e87736db799ac19e7cee813ff58be2cf9b5d55b7432802c594c74d5063e34a74a757084f874eb4be7695d3218d366bccb3259d37154cbe61afec923520b5790415b566763ea5c8a4527b64d6f8ff5a52c7bca607dd1078ddc303d84a98c3ab3df6ae0d8acffd01aa275511bae745a7eed722eaffc80225d7cd98765b23ffca4a6125d2f61c72c1bdd7e27aea91c2fb6569a28d8e84061fcea4b63c57d539fe378ceda2e751209312acb803752b5b5454169b5e9b1a443952b821536bf54a8442d8120956dbdec1b4b31e7ba28f6616186f013c844ce39c78029b0f38a831c6d33dba634c1334c945ba715de8d6a9f07afec3278bb6f0f218a7edaeb69c3ecd3defaeb052ffa0159881a8435477cc4eeae07d5173b1e64679342d256f0be89e15371a792c98a2e0da0d31f476bb9fbbd46a468ccf26c1147b3071d9d7ff820e5b686296ec04662038b5b9465b473ff1a08d34fd1862af4211454ca36e88e8605c80aedb9a4ab2db642b2416db2bb5105394ad6aebb754c09019b47634b090fcaaa6f022766ca45a4765074d758c9989824a29b2e011b5393e763c06df68a5f3503499650cf70ceacaa3a914445130a1198c9966169bb8eb38ba30297c3cc7eecf95d100c81d1b00ebe41b1d6e2079048a0a3dd5f77eb56f26075d8f20247d2413eb6af7a02b13b4e46908312f65632d0ec5525a12c56344b22c84d0d1fa525abea85020fbfd666c81c55e5f5e340c60f53bcd8e903ef5010baab76efe2b55db625498badc67aa79619c388862c01a5f226e26e00f3206fe00aaeb852a5e190417381ab06b760143bc4912e7bae0698b6f174f3bd249760dd1a368164611b20dc260de6a0eca0aa05ba04db8f101b15691d9cd67a1ef107289e1666e85eb7132abaffb9b3d1eeca308073d69d0a41565c3cca57bc2d47df4ab98a92d21732f11cd5b4f36d73de821ba17a8ddc4ec1da866c79eefffb001e9f8f9b50b9812cd412e3d12530db8f56ff155bd2fbe3bc6f5f4b0791216463054ea094858587ba47f0873a11fa8d5be1beb2c6d7becad29067cd7b82f20b7fc95735adcf21747544b41f512c1b5182c55567834a0fa711357950ec1305a5a5868b9dcd22909da9898bbb96d08dcf0cf128deaa9aff9ce8f88207f2c94ad5db9053f348a8f9a91b3ea5daddb76b49caaa63322b1b33479cd8bb7967df5c9fde9f59599bcbacb27a065fa091d307cc0428af8661cfa9e96f38e56edcd0e2819652a25458e9998021dc402e2dec3fed77c0325e43e4f96a38f4d679867e74cd8824a96212b4e2d32dfeaa3bd350585af486360ec3a3bbaa2dbbc3957e069b5b50c3f0c8124e2013ed4561a551f7a2ef9b1981d46d4b41f75086e6c462add9515ab39156e52b34319ca48dc0c5ccbf925cf642e38cb634bc737861165d44465c111093a05241338588cfcaf7dc700f7f3a20d4dc62937c0f6cfb737375560082f3588a52dfd8a9fe6397fcc7071aea1783489288ffd37b29c0cae9816f9168c53a4926cd6b8ee03dcea8c3a185fbeb4c3f657168fbc22a7cf000a3935a6c191e6f891f475df1e1883761ac7b178f2f80db624f41af9d3543bbe34e4f83fe640c7560f3198122d268f87ad0cf978ab0545172a91f5320a0260923c7946cf842930687bf2fbdc67de914bdbf9ee263a446b1ddfb3546740c0a8bc11db51bd02cf11dad8dca6c3903b396e229f8cca96adfe0e5f5e3807c162a3de645b222b7f3f1818219c2c0e8ecd84bb87a702b45c0de870a98a1a1e06001edab18dbb32bbf2c7f0a41f7fabf713fd7c7f76a94ccf815004344836f599b7a43bd10a350d1d4a5aabe4dcb9085ab04ce4954ed534f4f10384bbabd57c60d626710a96209560d98565bf869347ff2925a85fab2887851225f65207d946032595187c3a64b427011afabf6573393e080b6381e27ae4e64f5726f425c54d23247d3bb0cdc9efe1a39f11e1cd96e3eaa056f47d1d502fe84647ccdf35ce241ea6553f9c08f0ecebbcc89e3e78dd4a41d0953aa075d9bc825e2df9dd2dc2ca35a28adc1d9228b794ecc075ba44661c1e21d5da8d7919ecb40a4440e683d1512dbd720024a1e277b6a29a31e8202cb673b5b191011e2967be1303849eebfb089defc6ecea2bb1d0a3df4693cb046f2939824380a17ca2b5e3896505c2ad298a0ab2c1cb1aa971e3be9317382b7a89a6bbd7565e9952515a44d95f71ee40fa4bb41b8f21d0e28510bcfa79d66494de03be2d7070a653f52f33ba35d3657038128955494f9d02f3907cbc6d22a192fff379463ae10091802f8e2cc0aa2d63e4b85498c69bafc2c4fccf992e3d7e224c89e9a850712761f80c5bb097f03650c3f4528eb9cad69d43819e546a0f1202b28dd12653136a2e90a1914d208364991fed12c9ee1050eac19dfe0e5436efe5560b12cf096d294f2a89723b96d4115f7b0a6492379781bcbc572b224020b229b46a2d2712d4c67145ba2029646079bc46cd8364a71f552903b4517324748bbb20871b32044a3d7d2024b216937b38d66cada94ff3900c79baec48ec96356e9a46df6ab087b467c076b0eaac963d83ec102ee54ef1d04961eccfea6d44a7d73f0bfedac0b065e4f46561474154ce52cc68e432e9f5c0086cb448217e1a5a43dd2bfff4641c331b8105db773cf6c5a80156bf6515f60765370121f0a82a6e23878523488f0856c9dd670553dfccbd41c318ddfe36b2865036cd7716769f5b2c850b1fed78554cf8f2d07baf34fa708cf437b927d6ff4554355567960b4db9e699dddd5eb6379ecab574031edb044df3d5caf10d23d555f606f4966d7b4223a482611bd09374cec62942422469109c61e6f20f3dce038f511c171ab969c5b6b82c31790af16af715e1d74ec66f7ff4b3262258f3b6050573a9f38d642315c4882e7e61419c7fcfeebcf86707d2da09545f985b3b6c1d534cc76a42ad245406034e2a95d6e1c0ae58616b32f4a71de67da2988e5c539a1fadbd1523e73ac3baa765e50a78a050cfd790e664bbab28b3e64eefc1be5ffc142c2b4085038e171ef263e7a2d1b40bc0e080571f286889f96e68a70a7d09d349bb7bcaeae145b2af53708d8333fd66ea7e224731d94c7acbf63b0374275304d65c2b92309fefdf497da140900ddddfb833d2590677eda781318ed28cc865ffc7afc99c729398d7fee2a55b027dbaab26ce43728a2ae07fcb02aa38dfc83805b4e8c4922f5842a0b41da77e6c74ea722d7162b4e2146b68b1385a7969c53489d3701e2c55b91b96ff72d83138477579661006ff4cffcdb175bac970c04a9720c0c404c36318963f92588e8a0a35b3e507276b27a88a9631fcceedcae6481beaa8104738b0ea8282114563138c1f3184dc0f1b6106777114ca0d87bae1e48b4e71cdfc9e8d5e61a93b13b76baa174dba2791534da2156a6a4a80323cf455db1b7f374009610fecb9e2d7f05d803c52f44ea39ece17045c539d6421c0a728cf320767cbe8210eaa8749cac90af17a207506a928ee8f09a924def03f63bc25da39a5ca49d95c70c7d1c6a8237a6f0eada9ac15ee02f8d3e0ecb5c169f6acd92df143aeb802f52647910d8649c628a363d36548b3ae3958d0a5fe6fbe8398f04ade14bd0289627ebfa175b6e2baa65a8660b3d9f89c2cbfa98f3b63d9aed5a793af2f91723ea90ea80515d7ffb9afb020ac40550aff25f892fdfc7ff297b6ab6702e3f9771510892e276ffe5a62cbf80be51bd93822de3f979c830bcb9161cc247d33e10653e0964260cc090b852384af6b6d9279ac3f39d7dd568711e55686d7ac5f869a09435de4a3d6563d7e2d9fb01adcd67b47325caca02674e3017e498d88719f4734b259aed04945ba04d8eb34089a7368a38630936b563053020833e6768cb372989b2565f77c7200c43fc0ee99ef8b71ef868e95752d87c9293dae4a90caf24edd1ab1b8d5d4b53d6c8820aa8d80b2e48edeb3815ba1069bc34ca3337c89cdf53bb8ce6293cfdf1c91dff089479f163cf707b50fc883b2531053ea418a26ddc1bf64dd6baa241a52549b6e65cd270e6a314b3f1c7b8eed57d74ead2026332a2747039de1fda4802745db294609c01aeb5abadcae05895ef96c5313f615bb6f8eaa50d8d3f6083d67aad038590dd6bdb8cf3b49628fb206996bb821de2dd8fb19a9485952b65cea67ae89ac7d3b0a147dcb9b21263a4c7cde704dc9b161fa107b45c54e8f06cb7a31eb6163302f96d92e489797507642d64864d8bb6060791c3ffe0b75b4c5e0d984963165220aa7022608da15797e27cfeec64c47f1acc45376ffb9e5a60341f1e0d21355ab4fba7d0fc83ef238ed9775a187a155f74fff416544ee64cf60e80ddbb7789c99a2ef669da115b6fb84cf8618c7b45f1f5f7932793318f2632f1111706f901926e4c6a43fdc492b2b1ed68b1e608d4feec014280f6e8cc847d09d8921d6dc9c4b3c9b6d668b74a55a06c3444d5934bb7f032d227009f213da249d4ac8b1f4cc45857b874c0231b3511d1d3c69482db31e2df2f3d52d066642b06a0c2e47ab4852a72fb4b8b46b66a3c672ee4f905a0e55a85e24307068555c05482ea0e10aea8756153d00652114393fd062d0d26ad7ac6c8b1202fbfbd0a9bb22be899ec8d117b49e61ba7812df2f34d04c61818bc6cb1e61449ed4f1f13e3b7165b82b0c66adbf2550999ca70121d95074ab6af5a5641129d7518dcf2528e961c04673bd0c5d4ba82f2976ef5c292692115152e5a1913e0918521d96242d67c77435bd13f7e80134e055a6ccd14ce7af6de02b9151c02dfeaaa3a3e9fac20eeab063b60584bac594bef5202d5bd5b1fc459ada979cb59354a55bc6e6caa76a7946b8dfc748c858477e49ae1b55e5663c90e162b69daf1b2330b0d746f65b2f7c9d0dafccfa124678f78b1e8a103852d622d359510bc3000ecdd09f8c48a5cdebe123cf0d85ab2adb08c35a51c20f31de250c3b69ab6eb0729172cd93c74df1039b07f0883d64c53080b504e5bae44c03eabce43a5e5eeb1f0f0b377c766dd0910b0e6b6b97128138017bcb6521b42ba8cec1afb5df3e3ab14cd986f18cc4f6a24a0b6815900e4f2e40a595cad770f83d0e600fdffa96b066107902d70adbb58fc75289d799c5edcac51ce697995e4e8784da554bcdb45f3bd92a3700f3fb84aeab177546041ad88d907a7df4579ba0457cfccb841bdfb747028a851d5951ba3e2a7f546947a773e3b2d16d7dc42afdb52daa3a730eb07ae26fe5e8bc5b0742c2d4c1c375a65842ebe54e5baf04febddd30615b47620a657963399a7a5c9cb55da35ed498ac7156a750c9003fe5361b03de049c3a251ee436a4c10504d7cad45386b8d2964268cc3fe3474e2c9407b2e09d2e1120c2a0a3f7a13b9fe9fdd612bd111e95371b77b5a613b91cda38d453ba02ccbf5678ecf059d44ada2767759c76bace45138ea1ddb7cb4dcf4d4b6397de6a98ef79f6542b9b5ee10a4a2e6f1cdb577cb8368426da846e541f52be5c2efe89b3a0764c0f4dfa4f7329852e8b204e4d306965fe582bd93674db248fbc65e1fb654a5a1c8c9ee32e1e58eb261742e6b4d44be1cd6d2f6503e7e97576c21adebc04cf86a5f1104e54fcd26ff0521694be5c5c0ef63311876ca34b29673c9f9cf4a47b6eff28a0caa5ca8ab0d00957a241f441ae8c5ce5f577f07433d65325d4452506bee46306898142ddd9624c7648591d087752e9fdcad53accb31948dc1ef72297bebfa6eed50f90cc624c8dff94a22a1f356aa593218ff71034130f0236b2cad7041fd7cfaf750c5d0886f598185397bd22fceec01f3075ed08ab64be1f80c91c7d7d6d299c9fd0bec9f5007d5b9c150cbb2d586c91b31cbc3d942ae7bf09889a03264884fd8eeb62a0c40466c6cd1031a1bfefba3a405c0ef0bb29af78f08dd792876aad07420e130512bae4c929ed7f66a5234aa0d73719e362da9375608938694126b5a3aecaf9d48539a90021bf0563c4309782ec6633f0363af0fd36425030bf18827d1d7d4e20697ebb7a59de58e2f605d79184251df3c6b7d0be66c92f26eb9b6f10d2ca6590dd19be7b0b564c6bd6a8d17049678dea4c704503867dfec5cb2bf571f158728f89fb24dea892f1b03510bde45382323eddf0b1de0f99562ace13107d21d6ba93e9e1783a4ebbef3f922471a6a264316674b84a609d57a6b4d607f9e55c815421aa56445df61b438f7995414843c0c74c53cd1cc5c7e57793f9d445655f7658ef28b73ad4a106bd40f6c5396552d9055ef0ef44c32d8821ee5b9c9ed458bc64a4e83b915f4f777319cb4512da23904d0d37c1c1a0f58a12044169ccced7904913bee8c133293fe8b67645a6aa5d8ea912f4733cd7601178b4542448cf4f1b2006b63ed278a105d0988f61046f10ee4b556a9c46b4bf6e3a3801c1ba07124cecd6704c667e19873ba7025835b222ab7315103a7295dabf72492adb1dfffa500dcc859c4da9b3520824759f615e52321ef0c15dbe41edc3e6fd829ee6f7e87707ce3ca2dde8ad17259e05a8172a41db2e54e7593d231b46ea2942242e3196eb2a9570242f6f4199869813c93e84924af75b5a8120d817aa646a884b4587c66c86bc9b9b16c442f85a375e3b282dc33094913af72d0ec4ef7ad748ae2f54cd94109d3c4a9259999b895a69c7b5b8ad4a01b5dc85f860eb7f2264d650f3ce941a4f35385b7cbef1456f7260913861356275b292bce94e5d427e4876e983f7bc2f6a309f13e7597518e88ca8afb28c9740d76d6b8e2f378ad229a681a59d706814a8ddecc49e8deddca1ef57dc01258b7636e975294794132774d07a3e265bf9588c12be03da3af4cacb954756d97c05571c409d1558bcbd3f4da975636fc3c863f1a79ff1925e54b5111908c337527ae3165a858c3a394ca3c9a21604b31a65909cbe888dca6e8b09ef7f13ece8382b463270c4998988e0098326be8bd9c35f59023a86bc602597f2037344410fb14aa5aef027dde35d7febc5e3dd6d73aff3368e35632d6a85daa35887574cbd5df594c8e24da531367f3a5c221285236b8031dfd34e61cf6f014c0c0c22e6e11c296a4ce4733c6356477b3afb3d59802af6efa06bb65c7f03f6837608fdb9be8dbf91990ee80140f14b6b7a1efa382017f8da27cf5e3a78a77e93a54aea34c5267d00bc6a4e421e4fb131963e4506b1561d6fdf6eef46b1162abf983a46587117a710c5ae689572b4edace5d0dba9ad67483d8a8dcfe2cf5833c8f4ed98688d0b8c579c39a7b97040befcf4d5d7be2462b945f9db5c08a37cff18990b5c87671a505c719a1efdbc0f16e176771b1a8048d3607c214a272451d6900efd3809e196f2e881fe234f9421db7e30b2345ae4f2f401c5240e14618f0309c1b078699fa0e720193f37bfe0dd6c371e11e0812c4f57b437c416300d6cc938c790d765bbd4202340e3d356c96df895e03f868d5a937930209d615c04737768bc06f9df2c2d16e21f708dcfdc57192f9b2a4136d830d66eaa996aa2a89f60efe3179d1641fa2503b33c29a18f2e646a4b5a6ef33371e9d594df9b11a012f97bb95348ed74ce1affe50353fd2a4feec27f7750fe43c66f2e319ac6e09b165adfd785130e3d33ea3c1263b0358205797b8aeaf4b7398e6b9608c0e52b6775b49f823334fb6d435ab7b5df7dff0fcc67b7296c54d4b00e5ae95e76f1361196e03a568943d9b28dae4f020880b826366bd43e1d8ab61bc2984bb96f4c502fa23add421b7f2ec2d410a54284df2278bf806b4f3a8a6c7c735de9bd71bc772aa27b547ec6d2bfa43ccbd34b5ee6a3e562f0f7de453da5f917c4ec5cbf0a9ff4bacbbe13e1789070ce05539724ee2f55ee737ef85172710a4adfef0c1040fa02172447ab139330f7fc2d61497843673bdc4bddd69c2b94723155e0cae48ef0c06f6610f162a6cf7a3945332fe0816f75035e85e466816917c7c45f7cf18ef7fd5deb634859b40142288dbd9da4835a801333f2ca626d97cafb1844738bd9d034c2b3b1b49bf484ee5efef88a5515b5948942dc75c82e806e1d404f6974854270593def68fae86219756a53738e9926f3b9a131484fe7dd8b3810b7bef543212b56df14465a9c10f6a1b62a672493c884985c817ae7801d5429e8dd4ec25a93f1f33986403bba33d688eb8131c6491692eca19a5c3b6d4706160a855299b7c4dac50c0cc2f5675e41537f57911fccfe4707d28e5d68099d8e3e3d0ec167d6ea7d13b854b296a743f3579bbb192997956a33de21107dfcb9cf1e302e9724bdb3710b51afc08d1d97fd93dba373eb1c7e9b4bbe886be5015772b5b9d4c7c320453523b10bfbd7bcb0e9b8465a3143b665398db4894bba09a936ae3a275e76d6fcc5e20e6bf0ca030a4d9f9c6e32f55bfa74de4567f5c596704046a9da89ac0208e8edd1da29ed789557bdc909bdcf45e4f390ee0bef97b95c5d5824a4cb21cb847d53cf4091ddd44ffb7cfa55f4b23d8597319646aabe56034d881e67a878cb5203030476f1e62d818cc486cc5fa820bfbe79064ef1e15af9692049c0788683a41db8f6c8b050b8b73b57db1843ce18c9bb82dba187d6f7f22b39104718f23ca105592fdaee23b12893b0f2de79559c4a1ff805c298d8334da9341339d388f12dd2468e7820a5ffc902b9c32079ebba405cbea3401dcfa3ed26c0196a65736460557259668db267de9285f2d65e87e4dbdba8db7ed50b4cb6db57c5253df00987ce80782a847d06342428cc1f4f8bef1f89a9a8574f788bdf8852dd0474dd55220314cb953e912edaf4c14e74e505a22e67f4fab032984f141c4a62ee0f4605cc632fbf9dc0a8bc9407bd8be3d8126ba8a3daa6b82ac02d4295d33c2159a11198f4eb68b36b52390dd8b3a2d5f6c65d8a090cf65b88b9fe3892ca26c9eaa98e1238d87229c6029e145cdf9704b05422b509a55620380346d502b68d46b83ec4ad0a2b6ab61e9ca25c26aa0df787c1e5a09b309f975c98767f74062c760ddab483f68cc61bb736991145940bded6c35da32a97e05026456a3ef1e1378acbe928c324cde12ef1218d3016e265032328ee3ce06c5df6b5e92f7b623c0cf221aa820cc891780bdec89ac6e01572167d179b29ebcab4b21f49060b648f58a56a8fd81c142831ff68d983657c4d689c086f119332c586e3fc9002e183f2d7429d3aee9dbfae4b9497d8d4003583b8064f106b8c2b68af0dcfe71ee1c90d873381f1e8f368c44a0b4cf38f45d6a0e3d118da398dc87c1878d5d113ae7908e9d993c109260572f6d15972717080fdee617944b330605faea25672a1cf93059f295e350492f5039799d470e7a0ad707a43d0b4db458475544ff2e438adf814e2182ec7355d84ef3d01719a82ea034c33264fffdd4a0b281fcc52563200bb3b50796e5038c796a61ce6d039db34031cfb013f54949f555d8d2763aa609f0d39972cbbc13c5f77d74ba315599a02a55e2e9803f0f367bfe51115fe5d33c60deb0e29b49e3013336974f225a1617482eb6cfea23caf29b962b990e61c3c387e9ef388d5b2f5e3e7cb70d7b0fb814b4a36550997f96e8be7edd67f5ba67ca06ba3f3a959f181619e73ca95a712118d2c3e8957efd9c56581d71c7784d42bb4096587d4991dd0a1dec62aca31f0592f41ad32136fa86d761004835b6714c9ce88e7183b3e0cc26b0d664b7ce70bbd2fa5ec353a9e0315a55f6b0a99905380684c88c6c88d10c7f5bad483ee34dad1c198c4a28e66347d142208e2983bc99dcb34d644001173fd352caf49b3acb3c75fa53141ec725041a813c78e5d3a0289490252aa06a47f12a9a77912222ee69481f15992baa22664815f30f5be4252e29538f5f3ba6467618cd5c7115e845366b5379f77c6806af1e8af1a7f790215c18901ce41866964f8930eb5cc56ff343f1fa04b0e1b0e78ff008ced8fc2be1acf37747044529a79498a6ed0a259df826df106d3a3b4d213d51927f6c3c65a97624878859eb0556daded443b970b3702175baa539d9aaf632249886f6c07218f035aab19814ad2f101daf14e28c28c4babcde89a5e8ad96553d8b3792214405a27a71db848918b773d71b75676d31f72b8a6ce31341af35aadabaa4bc13bf5709ee183d3a4d1743dff20feaabfc017ad4f2f539b5072f93b2f9d61226fe0c085082f8e4ccd81303bea785f07a7b6a1afec65a05eb462d004ca7ed765a008817c4a6f981258b1593b395d78c854f5aff6171d2dd8eeda0ec885fd1b9073d77f006bc5165a0a3d0caea44dbce252f1a43371d57c61526620cc5a8c4a609e4af79852119506851c451351db5000423088e773837fb856ec92d6ebf0d03a0bc3b2bd1be5133aee793047d3a91b7eaad9aaa7b8b1460073d45eca5f9e8a94c67175ee5632bf3007574b4b755f938f468f13adf420923386033a722fe1eb7d9b542ed4e93d4c7e2de0fa1ccf83598609444fa352279f3c4b375beadd6e00082f1c2342ca0f789ae06d31b1e6a982c497940079de884000eeb22a3f9668aa42c3c3a15c161ee36cbbf067295eb3f64751dd05812d8ab5fcccf1355dd40a2fa6d4c68a14838ce1a130f62fe8c79d130720c6444fe2972cd190cedb3d8025b4fb214918080e9dcb0a065f57725bb372d285c59eda1898e68419724d2bec85273d0985f5996c281b68908e15ab85ceab9d34b12349fa9de3ae5ad9f683c12fcf9c4b38c36793b10318bf6c6d9509f6f9978df5265120c5578721e848a8a74f561b1caeb49a220a014b7772e7499ce82c4c25ce968cdadf6eae760233dd72e1520866c489a6e545db99494f10c1999bdb11a4ce5ac8bb5c411f94ac14b9ce02e0e696b8c7eb87a45cb246c1fe9434ecc9edbd655f1853b144968e78f59ae81cca1069ae65d654747b3c7492c3eda3dbb8b2b6c6f3b2965b55a59053c1c16bff2ceda63e6997e539e1fb791579cf9b4646cd611df695c80eb858b592b388b36231807a3de62303e24435cb5047c97596c7125aedb65d30f0f67edcb5baf676e2a582a8ad683c0457e28d0660c4d74a43858db8c15de7f59013370b68eebbe34bf2a1d88cbbf1723277d5c4bc8fbd6d069690ed671efe4e9691b57d6502b74cd90990d1084a81ab65169df4bea92249c4a8c4f118bc3ba5019880ecad55166d5037ffe8c9225193ea30157a9ffdd412274101d72503ce0dc46b69375b56434e694f7b5690d0be06e21b9334f493ececd2b2802fcda0ca8f6b215fa31609f635a8bac6a2bb050481a22b112d33497de87890ef4fe5b12038a14e605e4f809ba71215d6a0bb6ec89daaf3862926734279f453e72da98697cad627e2273e208845f9466d5728c02c9b7d0b397879183763c9a494b0ab3d1df379710e90ad35d968d05e90d5bac9c6c6bfe8eecd6ac2fcbebe8787eca2baa9eaa0e63314d0a1ed5f3d9ff9bd566531d74b45eb6145f8980d1e505a8661b7873503b523895acf92b569ff15653a770d7bb42268dc24c964ee1aca1b2cae146f00a4c36603ae4b151c42208253353e5ff1cf97f7b38d3b9bacae7e5bfca02a5847fd8a3f46f30d523ecd170556748ffeabcb35c8f76e77d0553705e4e3becae788e9a6fff6308408f088e580722e7e94531b9d39c77d3de44533d26bad21405e7b09c7efeb79cccc084a3d2499cf693d66c0907bb157358eb0bf114a8e3639436cd01200776fe3b9d54d69c922c87e5c3cd115336d169a35b11f27b1bbcb28fdbf45ce6a322f133ccbf3d7259b36cc052bbc4a7a4118e6f3037ce7076cbbc38dee1c4319c8da81e05b1cdbc674cde3063484a4a73875e0b11dd7df1a7bbe8169ae383a7866f10d8533cf251b44e0b3c2a885f05ed8cd82fa5995e78f4ab4663dc46b68daa7b07d04b061b3d3b720643151cb7cec5d790fb1bdd970c3574e86a4897beba001269b14121ad79544ae77c33fe821cc7e590006eb4ba6cf1b28d3e2f748f738d272af7734c204a30358a4836c848aabf42f09a59a317ed4b4b2c7f9c7c28cba5a81de30d1e915825a017a8eded66ee0e2d864f03669a40931b5b453390eac384313a3f11e3073b15411fcacfbace29fb31943e5438a15e59d21d10c7e74b890ece7a6e20bac4aea6b4eab97b66e7f4d1d18648779d2c90c3c177d61cc7fc2c2507aab3f6d96f42656996fe3cb741e1724a8fd757e5f3f121390519a89029cfe5596414e5657710c09be54bf35e2c419ac2a9909623588aea0614099749e069a5ac40a39e92ede5b612739cd6faf345e0304475a59e9783bba8a0c76404e5b308595edc8bf7a0dfa77ba315d1601b71f4b99be2d167e74a928bc0a3c79364b10817320e0811179064259c1da06004ba6ef253e170a0e7a7126d828e9d172dbf5b6148e2d1fdaa262074de331371b594a9ab9e7a4cd557932eb31bc2edd389a6f591e75cefbf13ae456b662954ce2ad1557d67203a60891e3b10bf9ff4ea3f65a301ba4d4994f271d62477009565032560e89b4e19a5c64d3ee5d8102e46b0d884c691c042b0cef87b4df3302c778bd00fb11b1488a9f221ed18a038c47fabaae41a3881a9cec5449bc25452ef862f4ef5fcffb54358724c778481d61fdf19f0f44bf54a6a0f9b9ea4394cd77c563d8ffa937622fdccd0e830fb958da7628037d0a9fbdd134679ee1635d59dc7c8ced3c56c49183de35479d29edbfd02758923534720b66cf7fad1bc5d8952979778a2445644a23ee698dc85a0fbfd5f6ce2b2617bfacd53ee0f4483205fd99dca2df68a564e757bc7f43a3dfe4b02a15f24a7bad52f9fe4a08956de87c981462b1d25363ac5f97cc8bd1833f618b30e56c5ee5d2c3f4728a525205458f4bbb3dd19c852051498e2c419c106e9b91a337a795ca4781383b5b2dbbc60e49efbed67392dcfff343651a20d4b12837ad51ad8a7c9291e69f6f4fde545ea04120b42fcb0c91f084d388193d20acac1a2857bd9b252665e33c8e1158491633635423f272575eaf0b606b0727d1a10528546fade278704fe527db4be0b9faac8ca5e83471284c653de8d9fc458a6d9ac55a01f5d410b4bf680af90e3bd87f066db0edc6dc41a9081cd51bb31ad77934ffb9fc999b4ea6cb60f11e91143c30c21305c8dd072b02cd73e4c9f606eaacfcfff68cc61d451deae79b78a5822e5fe7d3c1b8b05d761e679ac0410f4f286746aaafe7666fa8120e174a32a3154a2badf6b60bcb7a32cb1c1be066f88a3e91a9267b34d5f283815ca493fd1005e9716ca4b5710cab248fc29a96e3e50987e62e5dd1a55acc9101162c43f711178c44f402d57c74d3dadb4df75a3ba75e79c9c6549abaa5e71d067a0c957c09acc4db2a10ed8e9e7e7ad5a765d2950dd74b053ab3be33611709c16160d593c746458dbc5fccf3efdf5915a3587772b015c8032db63b6af9615605548ae604eb7088890759d981601845458360703eb8737b1e74af6c6eb22025662a1eb7529aec2e7c5b81216365c70a9798465a80124f796772ecef43e8e07aba11a8d9f29a348b994afb1ee383c6420fafc6c7eef04c157c00e48368b2793055e83d6f288b65c4a24d773df54d7a998f036187e2c84048775a24d624eed1f7444c6ba0ec92ebb000514a25aa02e63e2c0de0cce3f0f78b745f8de244e13015e3cc60be91db4eb85639bbe4897553fce3977763170c18f60b8cf528d3193c143582b0f93fd53cf266cba379ac83b1a981e8cfa7942c7fd20b2d8663c548c972779778af5fe002e70208452e904946f607825190d42ae0147fcbbd139b3066375d566074c90f89b22b6baf272116b07c34d61cba4c14ff13a8e31f8b84aa826a6df5dd7e2c6a59b46bbf71e055900dbfb9d1e44c6feb7b6b07b2f5fcf07afc913726fd435180efc9130125d228e0b0ba2fa8abca4e1affd25186806d38ea237f50ff75afa20d277e59fc91617860fc96479b23eaed7b655e3547b42cac43d796b0102814cb44becc0e2b69762b9bcd385e839ead2b98fa38c1c195916e38209da4ae89665b05664d81be8eaf52f8642fc1d24bf3884fc80022ed1689832c44e74e7381427975c4510420a4d373b547d7713b0258cf6219ff295b610c401565c0a2737dbea307de7c9273d40cd32e9f45f9986c81c814c56eef0484f5b25f856d66f66b02a56ec14a7f0057300d9fbb904571e83cf5f6d3eecfbcc7d7b9cd76ae13aede8322c6c4826025195959bc63d84e6e3709a862ce06ed195f39df556cca40567c69c81a5f4524751e20817cb0743643af1dfe8de55598b4e8c08f543b9e020d59569b6d1cef6d2b9d43084d7bee983ff45b856cbc21ecc9bde973923a9643dc2a894a108f8f1210e4b6e0941c14cf59875127c3e8b4c9ab32c2b0214d8fcbb28f4a47e434488f49b07256335d19f6d3a270422b35ab44d8bb88cbb2ae759c1111fe44b29ff7294b6edc3fc8db149dff99946621204161ae84b510c8c6bf334c9a9d0f3284943db91460d5d8e8be02e76354a84ebbc5bbc899cd7fa6ad6b6cc120cd9ebd03b3ed99032f104cb85e713348da94a7e9fdb873563b706a2b9fa3edf54b2bfc29f69dd288c800f544dd6b14c91c8d4fac444b7336c9d8cdf3c6bf529519dd8f8d7d09f5a55f915f8044dea371f830f6f2afd65951249206b02fa9f69aacbdb9716b18f4a5d983e4f5f67877f13c6ec065cd1fec6b22166319c13c6201c0f96ab8a13da52aaf6de652de936b94ac2a2434d91e2503bc0b85f4c191a9356ec9653069ad8f6495a25d027b543990d0323f2eb94ff93ae440733da3e6879585531c844784c4f3d20a25efd7dcc8e9711506db45210db3b37b22facdb8a57879707077d35d6538c3c0f754a2b70701ceba838e901dbaf78943f2a70c3fc98ffdd70f4cff096eadb7626fa1513b23b523eee2a86b099dd1154074c8c3aa4cbb8fcaab2998154ba87392725b058179aba4fed6993e667728994e0ccae229e0ebb35103f0d347e7525cf00850d53904db116f7c8cf563b6b0ab7626acb710da13f3dc05b08eacb7dd6f64c57706eb6bacc5de758a97efbd0a0afd502b9f35d10681d7adbab87f0c5ab8a197222e56b9dd1298b59ef564254b6edde8c750110a0738a1e0558fec6dd82c427d49045626744c7fab7ca6fd8c91481a2261514abcdf66f3bbfef3445907d90c973a5985a4b4ebfec4a4456153ecdef3d51f36b71f1e74c9261744474f8eab4419bb73095d1a021c3556df41f3ed8fe05252816a5de2123af7a06b155973167879e73011e52892a9ddb15dfbb9db076506a9199d3d30a4f307edebd5845499699c6157de2b39b55a8cbb27e4cdb2764063cca48fafa2af3cfff2f1035b36b3728498dc8a3439fb5b34c5927e780e97282a0a1e44fb639966f045240f8bd48f0bbbf8035cbeed0e11c96b1735a0653c181b5f2011d1d51db85c05c2a24bbb89becd5d8c86e555d754b409a310b027315f47ab490b432d8d1003b69ec2198a5b77503285df2413c6cd6db46f7fce5a975290c3878f1634f58a4d0cf36900f84c009041c8952dd2502e40f373e34f4a4449f61e221874d2664f0651128139948a6f30fc27acfe8c6e7be0e572874dd7d8f4c62ae41490b5ad961efd9da4ef358854c447d7cba31aeffa8dd55720e18c200641529793e9ed1331bc29a6fee80157b8a876bbd8bbb55d3ea9e696755e8766f056dcd494486e4a03538347b52fff22fd03f2dff2edd75e3b4da332e81eb84e68f5f85bd37a4b53d62474bfd121c02c35872c641a72c490454988b2317fb57dbb4fac73415be17a294ccb2079e4c6f009812d8622ff88e409deb88b5ba1afd4aa42be04fef254e9435be8b12a434b863abb1606fdecb4ae720a01eeb5b43553ddd36c2bd96fe6690f5e83246122c6e95790524661144d0a4a9cc2c3d65f5cdb3db94cbad2a0def2acac9820fd9e9dca13b5219ad8d9ad500fc20b95f9356ea81d20b3ee281e2007b230345b2fb6f62332e0d0991ec8c0459e554a811a875ef354299083d7df678cee6f9f6805fa65935cab6c2497671dca18de680a561989d0bb0451fc2a3b667d779f110858e4b49c9f03951d494d73c8f6efba852ebae89a9f106daffe1fe4aed4163b5c6acad8df2fea2b6f6d07a9b5e06edd287253ac3ffcc372f33222f15c89b8c9dbfcae2037393678359958d07d719ffe5cd75b080d9cf6474214ec5c6b697718428b5f1cd0f418fa37d18110c52e5af13c64f03146d0f38fd331465098f7a7bf2f1c5f967b469bd8164c428ac8ff5e0ab15ae42ed6f0c672bd0cd64dbc8f1655a2e3ad1ab74b294d0ba02145fc278e2534646f39ffd7201c652f9308342ccab93298602aab019d5307cded8bc7f7f430d153f8536c9fca61da25cab151af01ef6a9cf0f022bc857ac12f56ff15494005d8654f8cc35f420b6ee84169ad9faa7d00a1696d3ea293c77f7440e0d36f6904898397d7e4d8c20baff4cf82718443c0f9d1a5201d2e6e15e44619a17fbc206cc7c84a6b9dd5581d1824625a4d5d758ff4bd01545922f508f05b17bc0d32cd3c6468a27b07d6d10558a8c832f9c9746a5105541c8e7b9d2bb45b6d109079601ea6b00bc15edc85dd93e7f8aa4640279c7c0f6448200d2f322cb94a0342db4f04997ca8c2246d56cdf7d698a7696049c2c4cedb42314e606eff4a8822fe9c609acdc6f9a9839a4c2a30a2cc6dd8d29ec36842f9bf45a35dd0b7df72610eb75a81df27dc59bbdc5b705e1f3b23d3bd35be3e6591ca576d32a0a7e9750788dd48862a3e68e87a0f06a74c2926c492f0a52573a97479d784ede6acb0fe70e388c3e2505d1359e6f2147c67fda2c6cd3398acc785944188a4fc974b56c3d7dde8e3463eb3e8d27c4e3c82c87a488a8c1da6f301f1c1c1ba9fe4a6f0aa836150a8b40355eb0b3971dd8483b86751c7d96b3733101c623d2a45113be2f19a8aa516d6e33b1b277394196347cf29b4534b74fa7ef3f7a64259b205685c763ca243a3ecb6086135ae1fc5da3e7271dade8df62f7e09b635b5873f8f61f69cdcee0ce119e4a7f0f371dd1b9a56bbe3c41f2d2ef73abaecee297458c23e6de641d2dababc7fe82b610b4b20466c90d29eb03aafc1e1e7caaead3681ee09b859bcdd7128b61285dd8ad81f7647a751fd8b198444244a63d00e0e58c8e799a642064bfa01cdb25e89a4c4580bf159da0ccab5cf5b63492352f4843454d531c8dd72291f860371692f5f42a56f09d03399b013b7b6d02670fcd8524b9edd0243614be3f95ac58afdc26ad1a219b9abebf65a8b84cb24418f4c28eb8d37dc32236304331c68f7c24c34b08e9ea02bfdcc6d53f167072a52bf9b0c6d8a07dec08b81516e6a367edc5f472ea909deff39eb388f9a3a2065a82d9b3b62b23dfd694eea32858d9f8ad0b33e66759b5b164facb8c9f533228b6401bbcfc489289f8804621cd7686b4569f84c09f832bece6cbbe918383ce3f08ae3ca4de2ab297bc0d99456c9274f3acea50c98e4ac094a17d9ac7d0363a8e055f3fbc38afe9a15ffe7cf72e2b06d2a90564c41c70ec8846161b389ba8d35e702c4009688695f0ef6f0b74956df49c6f16aeeba529da6600620dd1cb5a8520c7ae5ff0c1b2865b76a621746de1012f57047a14a6df86bd1a89310267699d20b06e40b178fd171937ef905a6aef72f27466a971c9573c959fc0b3f7bccb6db8f9c82a0995ec6e5158b7bddf1927b3157c8080e91db3cf5ee487fa3b3d3b090732fb191d650f0ce5cc3e8d27f7c6963f99934da9038984d987dd07a0e822a03ea7fa48a14424e70fb3f08dc74c256d94d92f235ea50be42f1d1fc2242f20c0cd925b06b57decde2d461c43c7a118caad1f7a1579cccd392830a999d891faf0d7f5e11165f03fea78a74d0814d591c286627804711e8fbcf27ba253ae493b2de0caf39309e32eaca7ef0c53992d3ac98af42341a1121964dccc7fbd25d39bb04838c134a6301ffdda0abce3be5867d3bf9bc6393cbc5bf2970a9bac3d3769ffbe1a4654d03e299df7dcff84162bbd61b1c55a183298835525fe9f15d5f44a41eddafb225a1d0be3cb998db86a792fa504cd8163ade957201da695ee2e33f1205cb5f48c70291cd30682e436d44f97f3eef9bfd7f562cf2e94488d3d1a010f169d1a6b520ff401759365e8926e15849fcd5eb2b8da107afea81cf052fa993bf0bedede1adc577fd19ab984dd8b829e7f7c09cf8eb68d0b06135d9fdf1ecd6fce3c919222d97d544eb2fda168e396e57b3fd8fe437188f80dbff0178a9a5433e4275ca0dfb970d001dba62c7b2eceb2cfc2746b57354e71142ba90285711ab520ecd525c2849c9d29e6d1546a8e91e7b2daaf89031d5204329e9bbee92c72c3681bc6eee2d5c84b9436d7726321e7439d85005f7595ed7b3b8494bae6f9f033fba701792d537537511f9321bab375e20e6482d97bbf4131ea7ea21d33452266af92622f38aff711883b058209657ce5d6953e2eedc1b9f6140fe67e864bcce404af7ddc23a31edf931331af9ee5185ed05c4de1012d6f5307d312771b2a6f3add2472daaa6b632df9803a2393b3c0f7c89c45865e70682d1d54637966fb3248961d95adaad5db5ed6713262d948a02882b6c05af010d0708eb838138feb7751852ad68afca856cc3c2e0393e79542c12b3b10e0b0a791d6a47e7a6c3ccb1f5a77a2ec520c3f48cd0e19dd64d40262a7c860f6e595e19b05615490ab88b9ed2de3d79bb0ed3ec7db7c5348187ff2566246146d80a21a495f43ae836e2af338b2ea3ce0ec0dccceb643d43e91ee449e07177b49fae97d42f0c669f56ae28854b218772c6d66684f2fe5bca9e971e7d0ccfdbd6dfe0865474e7419c53b9e3ccbcdf4c3ac1e47bd116c962b5d033c322a8c4d3a74e3ab1e5549a1c35eaabbdf3ff40dcbb66c5873b78701968069bee8c2fcc7a44a5f57ebf20d0dfc10b7c696f9be1bbd78a854aa0ac7814a01b8bfdec4216b1b715b2ea61879258c822347c32d85fda42c4f66f3e97d07176e058732a7a010902998e8cfb9d661d99380282f289f7bd9207b8beb065d7f41fbf5d79df9e120b8461ca43c3f12e298ff5e9a737bf7e5ae5940812515d1751df3c0deae9163cb3f052501a9048d5431126837d4e83ddbc4ed1d9a4bdbb95583d7010c65c9e5ac84c725adac9c0dc8cb42cd064bb485f4914560a288dd5455d5ed2e003dced710b2ee4bc057e5c5644f7196169450e201f05087fad8d3ace6a7bfac8451bbb581326cf984e0456dd64cd12cdb99b6a58fbf7d28488422b431602bc923e41c15881a23163ce87cf536f86b92381039224a975ad5209122a410cf1502254ae7bf7bbabe68a1fe253e72aae6956bc7680ee708d5b065a5bfea7438e9384ce027145375f88212ac22fba56a93bcd9d70ac897982d7ddec654d5c085fbbb5c3c6f6a375347a0a23d84b02daab5a0a1796fd195c763de723f6d6fbd51320d78ef6c9b54d4bc44a14f57ef02fdc3144125e08c8230f177cdda1eabbdd1fdc1dc99f018f4ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855ccd9984996b407121ed8cdc81d0e01dd12890b3b6a7c89d1d520b94267c436a3416ee42a0f983e01789385ea3d645c42cf89c7b73f6073e68a19c1027c73e90e882f8ad52b22877d2ea866a6b2d6d852b086041982694e624ab06e9d3c116fee83ef38707f8ae88e96d3fb56a6a92cb78a63a9f4d0f0dbc6b675ed092d4159ad32c490a2f6d71847d23d106a2edc409a8662824a62c7d04f3c4b58207a44b81335474bce8d95183621fd80d784ea35e239917318d2ff00c5c263fc2ad7d708e75bf3f00497c1504d36d33738f7a81612a692b73a4a24234cc7e3cca2c201b54b1c1b66a145850c33681f7fd9874c0cd9bc9034df8d35ce52138621752e84cc2aaf991e3584b09505f63cfaff458098626906503ac13247fa02e99386f42800d3d3770aa81fd7ef06c4c96757847e8f3175cc4deb3ad573400c1f23b0b2045a8e908afdc59fcead7f8c9e5a144ad3ea2d4d96736130c763f108e79f80feedad9847eaff6be6720ce2ef6a8c3080f0b411d0ae634ca06b82a7f5fcb1132903e5a51c1d3542080e335b9b6f8c0281583fa952d09354aab8a375d55f93745d87308db3bbac071991b64889ccec0541537fbf919aa4becdabf08c43db19814abec373f79b12cb1e7391672c8cb5df11218a37529d3dfa6b356a6f9bedb21b428721b01dfedb26e5381bc6dc6d105baefe5c712ba582e265409f2ae0311e238796207ab33707be8efd63d622724529e4089529efab3542100fcb4fe4e9c4308b920a89019f10918107ea2d1616fbe3664a50c4917d617b3d077282e36f1a192743a6d93b7ced3e18c902ed6ea19f23f3d88d215ec7cc8732311773a5de6c52a640a7d2c5cf68491b7c27a23f787637ada86ab040b3e58a7dc6b2d7a6950e3bc1f21e603dc73ca9af049e050d347b7fb891e9518ce7a83b75d2acd551f6ba51bd33346a70d123aaba2107625ef91b13b06838e0f9d776129a459e2a619748a947a8fa3358689f908bf40067f0a59ba34dfbc06d673d45c962dcff063b55fac645f417d54f2936f1597ec9dec5cd87e081442935e0bfaefcac64c4c775748f7086222acca7c1740a68afb3df0dab36b31e0b9c704cca025b20bcc225bc73b77bcbfdde66d4887f0456b69233376764efd17e9e7022a1e4c94996500d129739ddd074b18e5ed7273af2b0cea2e50ca0712d18e9da8ca465b3c413a9f2931bbb581474eb8a5cf1fa43a30bb6067b5357db28da54a0f5fa010dfd9636c0f7f5cc0301ecfa75df0de44d77ea6327db4613fa94eed9f7231e53163bd8621812bb774f7e7d40ce20d2def717cd5aef3984b51cc1d129496b804abf63b401eacffd6cd0b17c59cc5dd2610813f3c34be1f16e6cefc62f913ad5161d64f03f868ecd82b883185980f1aeca0bd4697e5b88103e2f320e4b5de55f80f9d8311d61d1876ec297a700d75fb742c65edeabb3262a0db8cc255236dbaccb17f2f65800556c8c4a339c153e8a3aa59490ba725043e75ec0f62b6c51d5da6fdf6675355c9fdaf6de473301224b042e049f83b326c57499897eb3506bbfb90602a62a8dcf2f79ceddbeacd0fb9d8a83bb4d1290e45427e7614712ddbfc0f4b45f2f4c50eacf4f2f1fc1e3b551ed3eed1aa083438df1ace38a683e11b98520a055bbd73b7c119b688c043c1345e155c94fcad1d17a3eaffe36408e296ecd6ff98012a266367e5e58ca8d6d7f40c669bf51847d751cf550fecfa133674a55dc3577b32ec95e0347ea6ccace684548ee69a985c53c934602f6756549baf8c20a1f14f20c3a9c9a86cd0f0c6e0aecbb22593831c1ff14c3f4483f759e1e60d377eb106bf5163c8a726314539c2a21c86d2b305caea182a061c01fe637b2f3d2a65ef640737942cfbb24107597b27bfcc47624984dd72aefa9ffe345bfcfc0d004e404bd668e533db78f6636a99d65fc11d9a76e91767820bc613a51921376eb50f191d20a093656c1295b25baeabc5beca69c78048323ae89a11e275fb6fa750d1b1c61a5094477714d6b89928b2541c2a5e0b1971a023aca7ce9a95f7c14ac125a9afdade0e712489e4f92390f0e2fca7410230e711c93b14cc7269147bbd1afbc16d23efbe5bc97720fac46b5e7ef55c0e3b346a51f3642f55b6c284f70e46e1a345ef31cefcde1b3f9f1b9c9e805780fe5162aae574baca9e04a136ef85b1bd2df380392fcd0a011c543da3c825e6dd6e6945fdf874974890e04fda442398ede67042efcdb84c77c6d5c624daed8b478d12bbf40b0c5a71d4c345c29a6c53bc05865ca5b7696eda3a2627aabe15f6ec5b3db4472347b7a2f2204fd32163fba6bf20fb29031f811f869f362caea8e24b9f0e96bfd7cea3854aa0345933cfae2fe1013503fddce0330db78dc963d536e7ab3d1b3db1f822e486e7d3918760ac9940cb646993e6c54580a3b456b82dd42b5f3fc8e4934af2c9fc195e81a23848a2c68b9acb50a7fd1fcde2bafaab2e5da70c71861f29f010689df83d4ad4cf9268a2940507cd4da416f8892669c8bafdf4fa0a521772bc501facc879b488dcf68768d46148327aa9aa648f39d22531875e2f27c3b87ec251b986aa50865a73521a0e5fb937628bfe742cc790a33015f76eb653e95347322ec860e8fca2d492fbce381ea3a29bcfbe1b5c1fa4a709c0cbf356fd3e21c8e0242f50ad84aa59f0dd31ac8bde9ac8bd49b776320d69f9d36469a81a0630cd91a1883b32f9399180e249c9dc21ccafd70ff22f30e4a79892260198c2aa41f7699ad31f1e652f7d4b42b9a30cf951a32602c5ba42f559f7ed34a9ea99ecfa1da35d5370e00cd321bbf3045f7e05d65389406d3126b53da3d65c9cf871f2be908aebdef42921ce515e8ff7b9acb09e50120f313e5492d57991726c253df1543b88b1cd25332f434d65fb0860be29232688314ab509a1169cdd1c833db6197fdef02dc9640d8b05edcb50724c36d2d64b480aeeb45bc307aee226e4e898a6c3a482cd23a3c219807e057d64b37eea079f18bc0f5e83c4516ff847ddebf7fc171b53122ab7ec1c2acb9816100a57d3fc4bbcb9511caa27abb4781753aa58501352b6dde7837d1913db3fbef70e056b60107c73ddca25b70ecd9433134b8a3bf9d57e090921eac94a05c31f2813f0e7fb953dc79a15ff8c5e7bf4d79a67e64cfffaad4670fd104a578d570c324c3df642a938498a835d299e6aa2fe57551cd9e2a6201af1211a46074631f00a107f29b903ef7d6f40b58f481bcf570075ffca24fa587b18a545b5ff71d4cb487274d10a9b0a6609f19acfbb0216b9c1460d07865a1bbe4304782b943a5c4a6288fe3efeb5c7036f6a1017909c7f4c9ee216bb45f39159fd7acf5e53ca5b86ba05572a8a6075fbd5b47ba7802c2b0482714e63726178acb3855a27cee41001309ddfda0c9117b5b7b67908c6780908080c73f237644f564608655790cff0fb17a439e1534768a44f917a16c68d130b119dfa2498db3d9634f68ebea9c78dafd5f2d2ae24c48d62f8321c2b3fab8262b7016f8a85cdc56b2737fd11d5802665bd57d4f658805cbb51615d7799ae7e30c1761b5c899d62730df8728527e9f6e954ad27316efa0437675c817c3af3757bc4a45ded9d0716046991dc1b3a8ec4bc33f849399d50e018b15bd953683cc3788775f71055d34e346f6baf4b93c9a81e39a895e8b067f6b523f56022eabdaf07bd5eba4df144546ce5bd3614e7145369310a82acd8c1b71b2490676f8b2ebfdec799194c64a88168ee9e3791691fbfe310610474e46a13d4c19e7b78cc2a9c430bad15b664986e78607b98ede316064ffaceb99a87e9523b82de0e7125559079890a96bf5840b0fd2f52a7f5f8dabb1152fead951a04bc2db6e7f4afbf4c8ee7be8dbbbde10ad0dde174da6b0debc8bf0535e2791180729fe8206cd218f752ad4e8f11d8a4cf6a333d82bbb0eec82221912fc9c861662de070e2ab09bcc28d4aef78c622cf8057ec8c91e0c26f7c866fa70e333db54b2cb0bc4f3e826dd15466f5532d36887f78a5b31049db2542e1437a26894cf67a31751063db992791b1e889b96c74c29267e51664adebbd5fc9f65f0a50e74b0f8515702a47d26e11826e69801250ce3f675a01d81cb16aea9a01fead8656ab0de558bd50e7d4e3d0b3077b7f631f5f93034b3403e8233075a091149f7713b0faabdc3e258fb0b078a13a45b8bdf4691dcd9403db6618009347d82615d741d073d52850009a395fe2bec66bec8d8bfcf34f076dbb0b936f858af341a262bfb7c2ff28a163f37e5007d8dd5bb75a4c59c0e2dc9a28582436930ca35e6ff56cd74927cd4190696ae947b04ee761e4d74f108fc6c08d6dd96b47894c133576a0ad06cbfcb719f72676aff5bca32f6d0d9550031ce39089fd733b0365e308f176aef7f7a55f09391d175bc42de14cbd892031cdf65fcc24389f57e560c38b35f8942e292332cba96d31a491f7d8fa46edcddddf58c1cc725bd5f0a0c731774add82d32bc142c974c748e1c1f579c14ab6aea8c0626f82a012b9bd4bfa8705c218de019b312626736f54e6c453591f2c7c767d611e0791d6b2ffa7ce705a7cc5241279b63c3ce2301f426d8d3bb2790953a2e2d4477fa4d35c5796f6a679db60f2a37fe9a7c1df7928332192cda3bba69804840890e2de2fd9564345ee920c76f34299468275ae292826c35de3727f919bbedc94f6fd3317ec12acd8f828dcd1e00b7b74ae68c6ad2a3948f62fe05573175150251f2ff071aa7ec4f392b2ef0a4b00265508b5e9db1341494e498fbb1a6b1e08d547bd200593306f57d211e64b54a5f19ec5fe5ef0025717ddeb1037e340203cc21b0dc1247ebcde92aad8a1c7d36aad11b40de45487c191a5640fa694f9d87a4b314eecdf40a321db0aebfc44684bafc9a3ed29ae0a313a76cd96a2513853fbc90c03718b578b2497997a6fed47a3df98b06d42c60dccb4c3b67bd304cd3e927507933f3a5b640b0519aeb5893262f4acf0c415b4cde28ddbf145e5edf64e1917d3c375b002036e3158d0faec4fe0eb64ab3a71a79f19ef0a5d33efe356e8d09c44abdf66c4a4700677211af0739eecc00e9013721a5e9cb779c964a55ce1c2ef100e34da62578a6004a4c8eba9049da0c6900fc1582e68ee00991bc92f53ebab231f36b39232fbafa84bc743da2d62f129229d962ab80f05c33cd93953ced1ccc5b36bca906f6dc7e49526f1e20ad2831f5b14e24e17c756a329c433af7561e5683621e464cce95e92c5d5c566d2c45f0ccb7d73b29d8a4ff85ac9e4d32d7170c834858b3073025e9ae18fe9e5ce3c1253c367c41a167aaf60caa1715a64088af30ea04ba307099345aa6fb775ecd1792dff41857d26a08459a9afe9cbde96e071b0d7be505e966113f6890948fa305eafaeab00858cb4e12b2fd50239ea356c832f109a74a42fc888fe75382fe9777279acda31678541133adc98598517997f29ce2a2dd3246f24f9b2720d66e9b3c02b0476451ffedd34f473d99230d93e2720c610c149ad5af4d1bd4b901e200d8ed135bcd460346b862333de9fd786c4b324883ba5eef9f44481144c28c33c8f824e77aeb465fd91db864145a3225e624d910302fdc5dfec5953afed7be95a16f190afbeb9846f711fcb843cc1f7caa93b079a8192e74cc82aa0f9e0e47eb3859d5f41ae1129963809e63d1fb63c38d9bfa3a24ded64b8aa81c87e64d62ececf6a565b708be72f17c0be41cd461973b4e784afa6fb15cedc19ba2c41e9bd136424509cdd4b30769f510f5f69f7e76a57ea1da374e435c04c8e4ccaffd26460cca888bb42e69176f130c02631602b3212169ee11724db972430637c87b45ac70ea53639f8e4b4dbbae34f743ffbb38f79afd9bb6a2be6c07b10bcf132a0d9a57032f1edfe5c904819d964981a9b3a68f1076c29bcb6be8742884ff410fe1ab1f9855b8d079ed177479164aea5251a127796902918705ed12cfe0f8e611951a252cb7633d8d76894b3e8970e10cb84b2aebf33d7114141d497b9f59e61378bf2ac34c9a50b8c85cd2b1bd7b9ea674372674a164ede644e265d9bbb75b6fa7d62e93c6f013f40476c37f7e3521ab8b5ed2a449728814fee5d8645540124f34df5662ac7fcb19f9c029a7e584ff35b81f7264802fd983105cd0cb1871863217d50159a61ae56da9f3a783841af54206055dfa5fc21c7610f4693fd255c2e31b71babf657ec6ebe4663f0207aa2d6182fcd4d174d32b63dfd3eb6fec6f95cf115a05e8b4c5917d30722f41e5dc4b27fbeed35a86d667691dc25e9fd8b0736e8b606627423570f3b878cdeeca2baf81ca83c57b5a6d521ddf55ae8c4dbd764a55ee549ca7d50953ecb045142b2c4f661bbb154d6834aefd6891e3d6b6578799b7302f5aad4566e350fda2effe18a9ffd5201ab9ca66e242818a8b1735c8606b51e36b7fea11d4b50f89d42c47104f62a1edf03097dfef8fa00dde988ee0ffe03a0417d752b5781c436f1816d82738dae1af1fadfb53a588b02e7a1ba6be0ae2d0a2d3ffbcf120a2c54f70ca0e46c1870687f1a9237d9a4ae853cb7faeb8f33f9376bc151bc22c8ac215e2ee44b44109ca2681e7680fd7da1cc46862b9c2d293082afe1e006b27ed034dbd5ac95d2c01aaca9b7a85484dec3bfae3e6c6687bfafccf7a8ed14334986ee958458da42bb87319e3eaee842b42b844ede5e3440776fdcfa00583961f42e8b1fa905684f7cb83c6e4445fc5eae0670a37ae3e020ba2f8540f94a1c301f8bf96f517e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855fe9dc0af8a61b22c1f9ee6a5f3622bfdcb84b2eeb470db9012f581930687c8fb2672f7b57ac9dd10294632cc607802c6b39bda17d15c95c48d7c4ff198db8d26732c08b53d215942c06a92166f5d7e853c1192277730850ccd9bc345ff13a9a2b369d2e0c3de5507d36fae62b5032ed286f562afd7cfb145279c739e2900c60482e45122bba59b6a269b782afc98be19172660fe5f1e629aef5f2208625334fca3275213ad98a8d9b0156e0910657ee1b5247717a4fff856739de7b75da66ec459ce2e52f3e7928fe03e6d9d5d6a588cea8f75650bdbf0cf9832654979ba8eccf7f833d0fb4434d2e39880518f92f210b77870f582a94bc661890d4a3760c6d5c607c469a6c97fba8acd5c6ae065a30f41a80d59cf0dabf5bc540efd2de29e35df710833bae5fa4b0db7686e27cb8aea54e2db0bbdcbe91c7d967e2781229f5690149fc3acbe9862c906430f3e328a5d1d959a122c0365075d19f213923cbbffe045d87286935bcf022dcbe2cf3401f2203abbb492b544ec7d2fccbff6d31abbd2d786d533b058ef1f9b549d4b2af98d784b36c612a40565f9d286a2541b7f6af471fb5ecaf78d4f81211aa83ac1b25a2e3b7116fbe41c8063cfed798263fb186a7b38b2c060bead0abef74cb35ffd2a3bfbddf73ba0e1d2934a3fedfd8bdb4619f7bf815667eae5547da38dec73e4559a9305897e68fc14cc246743a66d2809195c0475376b92f93ded6847820a662f48484cf501fb0fcf817568887e9b743603a8e6546f28b123864e5cbf7943c91bde83bbc45d07cfa93bf0cb81b3f407228d2d1a17a920f97ee0bc9ecbb00105e526b71572b2ce61cefefa5cf7dc9cf4f91f9b2ec9efcb362b383fc2fd2d89fe3554436074113c7dd885012b259163cabcf1bbb7c4a411f853d813f655bc3445125dabc34c99a4ff8c061ad0bb82e086790290f383e6d7772b044fd77f68324c61874b6b0259e99e340b43176b4a0e7ac3065d90863eedf12cf8ef8853a27034792f17429362c9b721d8d6e3046cc2d9b93c4b0a57049ffcc6a45d2a182382a20297acfc6a831765ebf9d83962736c7c0abb5f2040b01d50b7f0e9587c702dd45644ac4e6950224fc7c29255a887e95d5e6bca7ec2197707add4a4a717d13cc8af75571954b836fc3f7620449c2d0f6f75798a3eb9090be88250320f02ce7716b83178c7b3791d572e046a8ae5940372e3a018932e9daa03f1a25e0426b24d8ff617963c1cdc5f7316c947ce7c5dff16b560c03d6928886d6e19bbac9b2423895feebbcc72eb9cd64d58c997dcbff37ea1ad4ac8dc8e4793267ba3c5d8e71eedea9b9ee8e3f3ea212e803bf63513f71f319d148abdef72a8a60daed6397152828d4902176f5d3c725d4434315f41c9a4619becf222fce5c68d2387f19e991c03ba6ee31e0264c0a24cfc05eb271693442189f57946ac03a503093cf6236a332d85b2080d716d9281da273d1e2f73537e25f923f53d363084e7f900c41db1f6550fd9aa3f150cb44f28af5e9655f4b5797a7b34119a6770a19bfcb76732860cbee7210a0ea4c4b32b860ac4554b7b9b0b7ba68771715c6028d866138c21e589b7d529320dd802fbdfba095fe1c78b65aba050301f089ad3cc53f92726227e9167a47429976bcb9b1b437130555d424957ff59abd137b0951403f5dbdb975f01d70c6e47dce7b2b39118035d521df9bbc5850ec7690fb534ae6e78d17445f654396d323ced4093c3143693f6f43500e1ce06b81517fa000b92e1646c01c8ca10393339fa6f26be1b73fd0753fcf067eae24b4dc9070b456164de3d9261db647616db037f6ae3c376d5a46a16fa9bdc5e25733e5106e2e9a05410d8b869871e23952bacd3b360903bec7fbe4802deac4e25e2b090a7bc0c82937907ace29934aa74653f8483be0f968b0064e9d0cb3f4073fdf4350796520d1dd6095688d7229eafeaab254d2362ed5451dbb8719640b8e208fe56d8280e01b0aecbf33b7cc82f05dc0f0ec8acbeb66e2e498e87265e6021ab323385a99eba37e921d3b52e982e377f349827877643b909301d1b1eb1d518c179be22dff2f08ed713dd01627cde593975d1eff3259c8b367f8254accd38f47ca109c66228406f43e3e9627cc2eb0108e6c6c19db6509a990d0e917ea902a76aaa8e8a3bfaadb8f61eca106bb69c3e93dcece05995b7d4f9c15218f84799a887a5f6569a086b47b09d249aac73d404f33df0eca3806feebf254e149955dc7f0d9667c4aed793a064ad8ca495228a45b9b3c6c27383923bcab8d736cd23310d53e0af9cb9fea31930284074a2af2f7f3646020a10aaddd33595f8b3f44d3169d1f78d8e9b1494f8b301c0cef778690bd195c277dcd5e57f3605b7e3b21602d4726750b812feaf9fce08d1c6a67e5676c30e879b4cc51b2a8aa3b8e070fb09954d70cc8b877d3f558ba58938e6ae2df0532144dc073d7214abb179e68a7d4626f536411788522e70f089d2d5f45b326960995c4d7fd0ea2557fd1937d2fa2a0c437f8e2f8bf9242b001fd1d37b828dccdf0afe33c7a63149cd04b742965d50539e922551d32734ecd472d1c743383161cc7b5e437541c364e29be28858ec8bc5d6c05505988b55497e5b6ac3cf4daace263549fd6903ac78da4d5cd9417ca134b6f732b47ffc33dfe5c7770919ae57949984fb2dd9409d831c9cd6c9df2b34bb96dbd31f3f61a6726a64c2a496c83665e2a4842bc81bbf6a7a0a7ac73c83fb9c88e6a2c0ccb58fe1c9e6824fb4d4097035451ed1aee1b763560a3c450b0f14e86c4a15370bf95301e849289f28211c6fec639189cfe801a26d6ea25c26c0e24b42da249848c158ea8f9984dcb14977cf9c4610487ca5d0526f1800ef47aa6d8b43211ddd75310ee5235ddc6f1722e6227bce819b53c277a39620231dfed13da99f9172e34f65559fb9122c92353b787655f68ad6f972730f3a6e59dfc42918eb54264dc1052340901525b3443792e98a7d9b43e1c4b9a22d90948b6da840b5af8cdc6a38dc1b757f8380ab0cb4128bf727eb90f49359e37ddea9cfe770c1c9c0e106e77333726fed3156c3ddc46d93970b75d3eab55d778e20bd098108883509e4284e1bc52c5bbfea1764f2e8ec5f02bce71853327a5a59330756862d61875a71d4a361df30b9af2806cd8c5aac2da07c0a5e55fe4981d1a7a6aa1ccfaccdd89ee2b7b234dc78fe8d14772a0fd8b0719a66dcf2806f1c08bc1ef1979b5172436f4d66b1ea8689e045c24044a753aebdca137b1b64b3ade82db0638e9f4c0211b844800ac6f9eca84f3e26308d43c2b8b33d9c9115feb60ac982c1893c105a7e17c4fac6f1f808fc2a933e6e4be7a28dc903945ee00f0606d90c73bbe4fde3230a6fa07aaab2d71ac6cf51464a5a1466cefde97fc1425cee76c2c91cceb1c2a8519458a759173a3490e17678ede2c35f372082e7eff1a2bf3f737298514d9580a8b6d1dc85c687b46c7f81700c586e3eb28fc492e81fb11ec319e8993c156bef9511f01eab48a29786d822d55acb9c698bf144f420cd0cb22705d7779c17efa219757c35587d3a490019e279e3211ae778e4ec3fdae13d4e1dc9a677e615542730aa66473b52002366f1605083b5d2455dc7836bbb6dedc7049dfe794bb915b5235550cd1bd2718dec0f7f3e609ef63c2819e5b24d2559b5aea68ee8a7457a472180ae5a94f326c5a81b19125940545c2f5e01f6e99d9c701809280e045ebde3264fa7e3a52f11cd77a24b0b1b590d9a7cb81e43f24b5c8da61c059632bde464f4a95d338c85046ccaae443f21aa8a68b0e4884e3d32c5affd18b604c30174877d4c1309c9676e9ae8df2124ef1dc961fbc2ac783d005c62eca6254cbad9182fefd8e7a8e47dba9a59f79861498df2c179e897f1c78ddd37bb32ae6379b3f89a74d78f5078599db975027c0c0f0d1a6a83c386184f2a696a9bebacd466c90c91f9e4662415f4b425f92c10ffa20afb70d1ddf3fbdf6446815d84c063f0b163248c3fbe72b63fbcc344692853ac3937597f3eb310aa8b11ad7a044f2094930896e6112b8c3249da6660c1513b645cfbc815594901fd48bd3f73556c1197d45f2ffb7d4d8d935e4a697020de34e5af9d52562ed31d9093bad7a9503d688c132215997538809f8bdd6e51615cf33b02bb55449308e5fc4fbffb4babbe291df8912d4b1e3e964035f027522d357f12613124e41f28bf2fe7040f5a0aacfd3f482eca4d2a6858689da4992632af6c7c4658bff03b5d19f599189d0b1bc4aca1d08801466d0c11ff27f23ead4d778799933fb84adc3a5131d6419df62278c4e057a7c4890d4c98e17eacc7354d34cefa84df7b384f64f9ee7ef0b242ed0e4f1d1f88fddc380f6dfbe523316b95615fdad408299e9038fad3e9d651134e588f3790c722b8743099bdca570bc2b09b2d773cc1ab7beb2da3acd48610b6ddc36bc643f33a24df956cdcb50e52ea476e3c63eb8f2798e3841f5d4fd0362d06417d094823a7f4f376cf877b920a3ad3670e2171d03739105e0a5eb3a047064584c22749a629b0d594e54103a73b2e06e010b295b59b3fcce6e888ff0157773b4c2a9c2fde8026326a7d96595f5e3ee0c9574c0f37ab88d5cbc1740297ac16b057c5616ffb8130c3d524d0d936580066cf6ecb147625c5cd162d183da5eb4fa23047501341d9c06cf82c1d685e9cd693f156ba0ee5c8782851ee4cde7799f3bc9afe737b7a5fec4b0bd526d8dc5d0eea5faf9b68949e88c5de80b4ded7c46a9e137a03fa0c89c364cac9ce752a19eb6f75336e35a080ee9ca54938d262eb879b2505c7e43b04bbae13d6515eb46394c3f9e60984e1b551d118c9408cb0712b01a79a8c37d3627a0d7319c0e9ef1ebfc36a92006eac02fe3c7069d5a77002d58507bc517d3ff0dcfaa21e892ff9b8ca65e013f37671fb1ad3872ecd8cedf452612588a1195723da83fc8cd9b18a31bb6f2a5a486d5ccdab8ed1a62ecc150db40a36684c1c847599a1b0018ada10bb4842ac98a059bef7ae05f6e14ed4a675f8a9243539f54e04b7ca8c499057442fc1a5edf2b2a622fbbda9437e74fb4cf19bcb942cbe8335ab2a6c66709b3e8da9fff618d78ce6432c6a15ff1514d2b3ebcc970fcc1cca5f2fb0db9a2938b07c1c6bf756db5a2a07831bae46f0cc8daeae436f0105f1048d533ea800b1760f9904e10df64194fcbf68a5179ac298fb9545a58531448af5f65199d3473267d30f8e452ccc05458a7c83df862a512eb21e71c5cd0a361e91da3b33e0d264c2df7ebf1e4a5ffddc7b256423f86a864dcdc234e8806a0c49fdde85f958010c1230fd02d9f34590aaedb398e90760fdb44508e8e36b6f1557a32ef304c2ffbc88674d9d9985d756693db05ebbc2ff2b7ccadf0d4765600e956ac881db5e756c035c94ca3a600fd614f5a4271272959b41e7fd86ef1294215ad3a0475cf26b19966366b15e15a727a226e33a90916f0261626026fbfe100ed7a6262f4213d09d1b7ca9944bad6f8bf21d3c7f03ff6c93d469159aba788964f60f75c11a16a9f55a401eb23e448746dd214135565851c556afc803aa80c4a338338d38dc3baec303297b40688321d2be68cff9f28fe017dd5f6b315a3e30d7ee297257cb3d6d82795f98d6252355f864314c5b5d288b23d9b762c58ba9438eed9a0ac2546dfb58cd583892034e06eb0251a8407ba5c56920bdf5283ac2cdb1c109b67d7e18edbec5eb26bdae695bf8bb86c0d958bb1279589ff4b3ae619e2604b4dfd038d19b226c4c8ca7f8c37b392997de1a273a72ba45719e4f4e435ff09e7765faf6e37c879a082bfa06dce425ecc60c5411c940fcc1d9d9b29e2b3b4eec73797769740bcdb3043b87fa3f77f4fac165245107e2ec33c2c46e6746cb27aa1b049866ea1e7dac247e425a18066d927f0bd5278eacaa56c5f08a5feff86b0b25d863a122b0f2f757caf8b47c5206235bfc1969ce33080e64a1ea77f74792f2b719751a7b10ed5dfe59806b8764592579dd2f914329d69bf64c8b720514b2bc29a47c107e82a61c85445009f6026dd02830b6a2abce4bb931c7ba9c15595191a0fd25cc741efeb3ccf88bb8081ecb463ce75800353a249b792884232b6694cb299550f9f2c6c4ec8533131683dd3ba09ea7d4322fa1d990f882a1e60abb85d523db10d30a148aa3961c151f507fda4a3363d11e6d8a12e34148b9895c11d3b8df976ec0e6fca2d4caeb3e2a2c9bf324b7c0184d0dc87a2800fb68b967ab41cb9c7b00ebeed438759d4d9e180d1ae0ce9c0ffbbeabcd9ff6ca6fc3f4d2162f1a6ab45c868a21b0c47cc2fe7d57940586aaa8d972e62e27389dc0b919f1dd2e054321200b83cc3abc61fea72a3ec72ce063acc2506d7811e78199a3e9d9e45fb806efe923af971319c137a32e0a89ca2fc8e5e792a1a6bbefd70b0b0f29ac7b70f7d7d550fc3fc49762c7ac50bf8190d871ea86177725f87441d94a07cd208a715677a140108a0b373c471d493f18f6625120e11f99a1b4cacb4588f73aac87fbfd1f35ce4a8b54fc81f364db8e2293cbc0174c5e3c3f3184ae9322b447c41ce6fdc4036660584b5f63406cdc14a3e91def9a640afc9d0bf96919738df3bd7463eae6fd1a21ffd0ea7a4045bbff70caeb33e4154b7c7c3acdd73849f8a7693088afc0ac08befcf72da944f85cc0867f893092f2c22e603be4e29363cc7cdb337510c284a7046755e1dc1822e7998ad4963d662c6cd9f02b6dd17c7c2e7603299a572fdfc01a1e9e895083087caa7568fb922a1c271d976f9af8c1583b6113ad1f56e4b4b7206f05cf1929c55601755779ad4d7d4d8f3984cd90ba387abd4c9b5c4f2ee4b0723c894e12578ddae807a8f7bbdd53a8d8350c4ae64cf07536e95d9712f77d0fcd04ca232a435e81d75874de659ebd2ab792cceee39937823fd270b3a11dd5db10e88e41ffc2de8fa5b25e14a5e2f833a5dc01ec3feff92b5aa4b2f410d4f312ddb7ceee2c0c25048aee5aa2bd91d780bc3e5fdbe248937418ef0e8da358c038098f2ed41f1335c59d1781d94777dcf62375f0f0af5c47e38f00eefb6f5392a1edd44d9c917db3377b64a049eb9e87ba7ffb3c38b720c10a16b06bbf04ace1ce190ffb9f33f66e60144b8afcd1dc88af34990058bdaf9454c01bccc08ac468e1c2a3b6877049772b58ccd32325b803a0fc4aa247cc1430578a006854dba9cd534d9824f8c6c7c6b0094219cf7062eaf622d17b760a83278e574a98966732d90a3f596c4991972aec3e2973faf811c9393eed6362a169fceafcc16e97ffed77af44f7c129697c643db199e0ae73dc40433ab32cf707442d51636091ee35c1d4f808dffacc50ff3da2b96f1ab5ac66462c71a0fae5634abd907f852007eb1fcb57c8df728eea3efcff91c0baccc11e9ebe8e5a0063179ab98a550a760a40f48befbe9b573c90d5aeabec9a70c49e3b141c268d675970e9d2513f9d8553ac4f6d5e810a2a0313d20f326b1d922886e63591be56ddfbbc8b429a6bca30ef28e806e0e35bdb157fc342e3ee213dd501229415c941b6ed505cf190f9ce48297ae36db92ee64bfea3e2c313d6ebd25260054a1b595943fd45e50f079d049722fbd8ae6fc8000b8887f80b4f9ef0eee9a124fbba86655acb6db05a1f966a89ad6c247dcf8a6c528efe75efaae2857797e8bd4f982a763ead53097ddee73e772921f4b464362ead71aeb1a61fca7ea4ad5e462f694069337640e268b6ce39897f9ebe47441859b83b434b5f3a963eaee9ff871a3e678c1214ca69618a3d5646f1bdab4b81ad8db96559869b1f94e57aa36229e9f337510eaa7a42a485adebd8ca9b6c5233aa17ea172f71458e43e219b182195919969732b44bc10c16452ed63262e5f00aaa6db99445c2fa8ded2536444c1e9ab35ca9aee8bdde710966235b02d7d080154e2efb5aacef14575946b5cd6392b9bbdd49d7d883b9ab2566cb075f5fe88b36fca39ca7f8f4a4fbaac57589b4e8e9e76443b59661d1b47e5b4a8d16c897633cfef60f234d1a31d3787500464b43544efe20b8489d20e0fbdaa91e1d03fc2961426d702d6c780cbcfbac888847c5f14dafec0af5d58c42075c400f864f4cf4c857c2c9a76a89db40fc263394b59c86263b9d4b7bdaaa8dc42b401f60c5d9490cf7554e43f003e76bf5f32ceecb3bafedb6fbe880a3d4433fe1cc83de5cd00fd3c629349f098d8009f6aeed4e0163770fd1515fa3d0f699c44af5f84cd61b0946db38f03d46ddeea2de40ca6dc651841778a2f662e6f593e7aed1760af60c1ac54bf4bf4aff9b241d5780c8c32d99505d9cd6907c05f9761db0319a7d2907d3a7432450ae4286d80256d64735806a808704a3fa5557ffe86ddfb3661a866521d347ed332483aa41094e083f1fa73331105dcbca9657eeeb2fbe071c58127fd0073fbb622a576a5a0ab3ab3650632e1749fc0b056324688aef08f6737900aa64c46388e4149a2d4653a78a5d83aecae9a50e01cd82a472ccf36b3500fc872b9d7c81f4b314424fd363003e30887ff89327f934bd355d21ea0495ef4d0efacdd3e232a2d5ef5efd4a4117f02927165ced25ca6c2d0e75b98ddab786d5e0834ebbc1fa1f37d619c23f59c48b037df82933a31f254fce7f2cd2e0e9752dd4686756e3363a263d58e7a3fa47df9c6672e578b63d73b85c91dcdeb9335863a03dc5d0055e08e3eabf95d344cf589e25f79ebb1f080f791a927f0552621f0db4a4bf489a08fc44188b074ba2b9d974df71aeb18df5a4f0c085a01d51cd2b39bbd964afed3e8f5cf7446d6f3459f2bb73d4416469f26642838180d10a2033d374f6815aa7e933dd14773e12b902ea70c5eb80dd21f66441de9091fec666d5d516f074d112adc0e4db7ddf7b654ed40025ab127e7f8641de550f49313b6b769c51f3fffdda8c5d1bbac17ea20bdf58f22333cbdfa04c03c19410f0bdfd54ab361c86cf2c3734065bee41e686f3980de804af33fa4335f4e0bc9c6ad96ccf82b63b28d1c89d03895f3d026f20358624a15508bbef9ec028b49135160c39a846e47ce95368c36c97be64422edec04599244ba94e9678f6ab7c46caded949e12f137066816c54b4d7f2b5080e24b2ca00c9fcc8557f48a4904c00f0b599e2b764f11739bc3ac9cc3d3698699f5f368f4d05682b81959cc06e307c4bda1dbbb9d106fc8c026c5d36e788035bbd8111cbae11d23b95d76ecb50376c21a0c6aa4549718b92ca04cbd410ce892f0733634cb934d4ea2d157894c60f69e684acc330d260c1b104f4bae3a54f8cecf2b31536b129259fc6f96321fafa7f69cdcc17b2f0ff51a9f78cfd4b46ce99a4318e1ba927c1fbc951df75022a5f7993615de400888a848df99c2fb2cdacf5f5c9de08b8360218d5ab01c8169318272914e22b6d1f079758bf37de1823202189c3e3bee120660b4267445b43a43beb1536e6382f6793173097be7c991d8c87d684f7812b0d25ef8ae0aab9c916a0392e0a11dddd93374501d803f54c031768b41d45ce0dd7e1e4ef498761b6975fbea47daddd190e4af49baadbfa32ba0f9dc9bdbf7e9274d976b060c679e4729c68f86296b064730df0a4e1cf88c4783c2136f3e0675053419e2e0486bf6656f9f222da3c92674af25f4f7c598c15ec42cb8ad8815f770b09e78268a19107239c12fec8463142c9741801353908406e320e9e665c31a566a2147ff32e10ef2ffd57e250238a8dce96a75349406d2464e249cf2279be560be81f44af0c7f207794cb708cd841d77db7e25d731582ca56edad663eca67ae1b1996ce0e03e83c15c283b08665a00450cabb1126bcac82fd63fe76a54176aab1c772bfd487f9ae8be276c201c5b42512c1ab19702618073d15f61a441b98b5a85581f885c467b0bccb39489fb40c966b400ec303e78ee4317cd08c55fd3fcb0912229a5ee18b578e43e36740f97e0d7f113760493488d857d10a30a8d08a2bea867d5fe09d7e3ea0965a7ee0b819c368a32cf542ef8f08debcb9f4e1d5e4232726c717209a2222cf9375769d26cb02d4b36f0240582c0f0f86bdcb4b01cf4c543c3fc10ee0e1114ff3f2fc301374d2f6599b6a095596163b90259b5bc8dcbf065c9508fcc9dc1f7c18df61ddaf1ce5fef3d7ed7b31bfc6c3243527ea69b8f773939fea3ddb4d713884d0134824803ad8dbe2bdc45bd087acae2f5d00b6f1dc6cb1acc987fcd22623cce69239490fce1bdf80f4a4da8b7b42ea10e7c5ea775500106ea17d46cf4877d06dfe984f348f7ad5da6b138e21f7adbfe6aca47e3a1e3e4b520db4ae7f7ee344dd79810f2a245ae2a1ff23a8d639313942a169cae20c4f9a154e825da8cc549bec0db6a7ebcdae82cd3849f09e0f4471f552cef6f05f9c764e6f251782c632c1fdc0d2fd2e0fa13a922aa325ce8496f22cedb1b0a3b4b29a22cdd778ab5781a4aae8f2644bad34853b34dde992adda77aad6992164981efb264cff59311da963cab1edafcba41b02dc3e6cb22c028f762eb2ca21d717b3c904f06387712cb7863baba676a6ea82e2d827304410b0893b167febc3878e64d79c53c422e30ca40121a9c800912a3023efa8e99bc53958bd263830701d371b26d8d770552806ce0642493185746d560be53619dc7e0311462aba24e739e08556d5459feb512ac23bfa1b32dc399dbb4f5e27413e9b5588fabef21db3470c4eea61ae4825e7c87a712366b2c1971f05cfa5170b47c6149d437d8a08abadf1c107548d0a1483ac151853dc6f26808a6bd2ac4e7f679453a52cc92271c6b52179165d0a64af39534b67cf58fe4acf08fcc7e5c4cb9f7c23fb4e2a9e7713f8a70f8d2a5e36fc1dd2c757208635244732f5ab5ac1d76f04103e4f7a5d5b1f33b2ce6d8749c2d06d6766ca28ee101aaeae3f93163aa9b4353b3650dc7bd35030aa0ec06afce08503e92946846157e4abdb5993b256e27330e15494cd90204f622a6b5f3ba1e79e52127a61ce73c0a39b70f454a7fd21471f900ca166e2fc97bce99d0b9f1400fb185c61f1ca53c6d4ea8beda17483539bfe8b353d0a9c3c6e0a73999e48015984a158095a8f8a7f9cc7dd53872eb5ca85269854eafa28b227518245cedf9778cda31bdb84c29226457e316268ee62cde4e10047ff6506da2b4421b80a80545213a1edb54675c2b07e0f954e88ae14bec368843c985c55ea785abf3181f950db6c9885996b30b79abf3a1a767551a505f280cd7e5820b640d7a6152aec04faf46e1eff1fb82880740b14ced3ff196e10cf5c73729d36eb3e13e92835fa944c2ee0a715d1ead439c03f34701b11283391796847245f0290b4da908abdfd6e40ef46d9775a0e229050aba53006b263b30bb2f3afbc776c7513c1fbec1b13de6342c83c900c6276177f81853478dc97a46a83ffbcf610782dfc4162a150f002133151a31975419310eddc6bb0831712e38266621f449de9626fa4a1bc9da9a5e345d1c35e683ddaac1aa6b55fde649904f6a70ce09ca5681eab14e3b515a38c61d77ecb77b62d3645a09f1da1d951ca6f891eb9dda774ce4db560c1f266d00e7543ee1471f01bb8643884ebdc6bb1c84cc6d68b6f292d38cbeccf8253f30a2635a067e8ebac3fd5e784c8dc9cb6d417cea0195f16f045b1c6954760165348d392a3fb4c6bee9e8aa4251f38f7df246904ff722c6970128b389e7895c8b74a5725b27eeb798518845bfeef62647125c460b981dc8961c91ad0ac6adbbf94052940607c24cb9111d244547d51dae227f72560341c08f091ba9ce4deb309e313a2906dbc516b6e7e6075b5e0d6c9d98a3e20d8452e0d5fb3571b8ff0b83ce7cec6fe9450eb1d170b8046ec752cc6f22b1105ea2383fd64e49be2eca39b502e2ba604cecdace7e59edbb04e0e49b646e9adc32018a10409e57bb6f62252bc0b11e9bfae23bb0199326bca1fed776a5179ca0a75c760a3a856846bb4bedc13c1c92b7d7124c287c3f07fbcaeb6a6597f49b188046bd5fbd6f0e0ce83612ab694cf10d72df46478f131ccb4d84d3240f15c6b5c243a510d4255b9a3aac8b282a9a2ae1173bb69ebf20541cca1d68d7a26889044bbee423c7d16b5c2ccd73e6410d0cbd918929132ada8613f2b72ae23bf4177dbf4c608ac5ed5017b5adc43644320f708f3b0c30a93980aa87aa8f6aeeae1cb53a03edf6ab0974515a609eae774b39bd248319a56e88d8be93d044737f9b9d65fb4d4b003b28fe4f83d85f11351563f034cc122243a955d0c2ae66924ceb79f764845ce77d3af9471ea7248a12f4d3b3511fc47fa1815a097ba33c7c6b8c4371017b7a60be89e2b18572554a065941e656f9eabb4d268d5ea00b5ed1551fa3e91dfff1c92ef29cb9de34441fca72514a3186e0fbf3006c62c50389dbcf0cde58859f776ade839620265d9e23d2385916d1c63d9a4693335017f50d5d61ac6a133f3401de8bf4eddf7c529c8dd7261af0940399c91e36be9cb80fdc52461e8df5fbb86487337d8ba747fa754e278e45619bf34e1bbd4b6da406ec7bf3b29d176803f6007c72140af5a061a28adb284842dea8746277e4dd765f28e9dcea06cdbd195ad9e931068f83f957576d3bf8bc0864a4891349c36d979c8a8b324d77a15919b009fd17262737b53c40d0e7b87a9885a150c9779237df255548231dbb220f572f542ef20b71e4dfb65a0be3ab64489c52384136325fdccfdee237550202e1208c8faa8f93cb037ac6fb7eff559bbbdc9af2beabc4ec43f9b679655a83305abf0b496c81cc5b1b2f4d716b83605aa4febcbec6267149e1de2bd3dea5d1f38aac00d3824d7ae5ffdf9e6874457748a1659dc2e47bc937ecc8ef872765ef8d800e89812ea740913b23a3f97dca371201e40adbeabc6984c2de020472a85e46f95ddd6ce2070db88170323e5c7191dc7d7df7e443c297eb4554f0540524afa38298354b1e0c818810272c17ef6cdd45fc4ff4787f7614d0f6aa3294ce4ed361116fc8f42065f0b3121e6ef0e997b158e2316446ed430f394f8f0ed58172872b3dd056a9ab15bb762d354d2c405b17fa96cb603702753be5fd8e5e2b018f8d3f59b4e12db6c8a5e3a7570e1d1c992eb396a18b59f6e66e2c7f87f09fe049af3cab0a79b620c8372f930a5490ed54c02f1f34d30837af0b79fee775047089e5ca524d3d6f524fc1762335486325f40faf9957424c741ae23b30d5077b4c725281016fefdf3618bec2c5158dd12809ec0ecf08b38672d19f2b9b6c9f1dc6ba80b4847826db4b49b0d605aace5af38475e1007154e9def73274a5e794506b00f1ef73c52c0f7191a08e7e9373fc74e79ac0e6fb793e59e6db7457dc7303792c2cfa202096a2f28fb70f55e95de87c772a2824b473fe3420bdce9c09b2b0584af0bf30e5968f62320414f21eac44c6f75dc371226c6cb337c82fc37e5dc13d7dddf7c6d2e3e28a9c4235d3bbe74d46274cec46b3a6657e3b9b378381f74bc01e4443b4c3ea4610a062baa8a9fbd5723ed9c69553e2b191cad537343bb923c3d008794551bc6c7a6a41b63161906fc4e91a40444f99abd21e2623dc189d4e62d7527506bd4ab798ae9fd103d28ffac464ca255f1bdcff7dcbbc46a1bc2fc7ba017378443fc31f69488fbdb0077d12d45731dbcd9ad74aacc8b86955cd31f87be9188ac9a90280d3b493dd15db967318985b83da5d4cc878a83593876f25476dc18311f9ba62ac9aad02ba2880df3269ddcb472bca4407c3b97c21ff1938e273695df72baefd45c1948175e9a38e77c35175b9bea6f65538492882be0693c1adbdc5005dc5394ca3c7ef31a39db1087172f5cc3ff0e69398782677af2ac77aef9bf59ed241a9a481c611f84db3d35a8e4fe09fc11362060dc2a8ba2e0e153597433e294b2a7a3871a5c2ea47bd68ed13fbc934d45b0a931a68737e117f7656723f8d3f8e266b7e10ab47303fb7f40b837ebe6b37116c047ca1821b5d01570dec58a5041b486dd009b983e2444bc1a8790d5cd16537f39421fb8321a5ff61f581a931a219c6b0b5442eefaf29e2b3ffda6bf584c5f8689ed32c3dab249421fc2226e6e336d7eae19719d504610c430be48058352459332911559370b3ff7099c94c8d48324573b5afa65906f83dfb6747eb79ebe364e050096476f85b18cfbb2d8d1dd981be2e3cedc8517a39e10958e512cbd6c89a13ce4fb3ff225f1a51a4191239124adb8d53f125a709660357d5da46e74c3898358e0f9374c1213efafa7b36956f993b7f9a38e7ee7266ff7d0ccdc37e3fcaec1d22cbb1177e2c8cac226ed19c1a3fdbaa119c7332b7c20e52801d5ac25321d37d0f9a769635f96850a5c2a414c371baf3bcace87b3b0c7cb755d67959463c52a247d8a9651e1a6d55014975df4f9464bae2f61868b1674f626952f835cb5556bc8c64134a0ac05be9d6e0c645fe37cd8663c76708869d827a581ca90f1fb0eea73b2c8738e8b3b8a453407a83d85b83627cb1c4fc9bab119cd6c771db3bfe38dc2bc725d9080d3dd6cf2a38e5a979887efaa2ab9a3f4ca7f0142f9c6a8aef8c1281d7ea22f10e839b41d3cf7333b838ad25e785a6a7f886c29cc9285d2ca32af85e757b33c9970faf778fd0fa1cce2749cd564c97bf4c09e47ebc65f01fc40344a98964a6a42fcfc47d83014e6d95c2c4e2c87e892baa922c0930858bd00b98f108cccd9a0f8455b8df308121a04acf8ee7a876f885e5b075570ad14e6cfd97aa0657aaab56f9daf84b6dd3c0b54cb6645718e26d09c2fd2708c3b7240df493a20fceae0bbeac1940a5bb090ac548bb6fed10fdf224738d652cecb8fa8344492ec33a2a8828eb17b509f0a3f8e3a8be5360a8404cfe363c0bf1f90610db3fe4e1acdc4920600ee4ab945b8981d86216635238af02b0859d91bc60c429229121ee96c41b55d0a0209586d17dcf89e6b74a17e1c878cdab7ab76f89556297c9f847288b0f726836ccb7ecef0221cce18a105e8651611dfbee6c396784da81f5eed5cad48f5ab8e661bf4caa69bae3661d73d317e005a58271173613454fc4072f1e22285ff0513ede33b28ba2d3d89ae7d5cec104e179ef1a55d440837666b9cac575afc00193528ebba69339e88a3d38cff3bc1e18147ef8ae0b7a1294b0de3e2fbb1f08c4cf648f61df89b2a65ddb96abbb6bac7f2f8fb70c8de26e88df1575272317e286c1fa35f9a873dde7990b85cf9bf79f58defc91f335b44a823216847c6bec55de0234a09faa9abb367bbcc0ab9c9ec03ac536f657765097eed920c570bced438279e80a4289c10b9dab2b5438ed89cc4427c915c8a20cad7dc234de8199d38e8d380f1e516c2007a337d6e81f06fab6f3dd78f6f7f7115aa4a434d2683563c2d6b5f3623e5eeb2bbf41134fcd02f4ffebf3a6afe4eea01372a5f101df99f59b4d91a226728292d00a70a0c512e0cc8e380469a017e8fea15d11a3a72cc5ab9ee59a01e65c91965ed0cea677f95e58b936e094b7e6eb2d7be5e8ba138d78df3ba542f8559f1fc60e2b9ed32b994881c52c255fb4e8a586b855c10dc43c38d250c428fa0838a170c7cb6411604e07be4ce6f32ac6aea7fef072d72a110d8d79e77b55661c8802ba5045990d116b6b3294fd9a866245c909e25a462d10dac30494da261cec11859e470bf54c793ceb7b220ee76f68b20516b51121125deb1e8aa0a89fbc43fc572993a66b3376bb0e0d10b4397e11b45c0b6bd52c66c1731ee19b95041c3a3467f50775f3b6201063d2e7fe0c0a60bd1b650beafb3b8e6c34a2413919471c2fa1ee178c377fff527d426cf88d03dbd2eea68be30f1c04544eea19da37158ca6a2eb180942a7fa4e1e21212094ce9a7d03be311afee91681803226e9772ee3c17c015ca5941aa59c89f48295e98443c06fc018fcb3aa51b6ab4ba21ae911aa2a7d7eea807e4014b023f5414282ea52e9198bf8751be22b002d85b09ebe586c9f40bfb3b8a57c2e36dc1c4a7267e8af65e627b3103ea3c19f639ce73bdfd4058801f42a5e82d6107e7e9e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855155cc9dc2b54b92cd2c82f3fdd213c35993939233a209233b41251bb7ef4b1e47180112c67465950ce6b00151381e882f017fe49a21b5c73ab1acade71b0156b8ec55924a7a681fa60cf58503fd66d0e3e66094fed48712f0a49631c3f4e4546e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555d72bbfbec4eea8501ab8187bb42b4d5d5ba9d213fa9eb1db9d9b84a8c41bd81c5009c24a80ff7a379c3edb036b2e08f606f4fcf91fef70ea90c29cdeedc3829536efc5f1e8ed9ab9c87898c5a79794f51c0e316f4c0be36a2d2dff0c2c48405ed3207044286c094095e7930c9db6b7ceda5aec8680cca37ea31af614f5d9f2e0851fdf6e10fefa5937b66b1dda5677c6ac2d7b6e6c5191e4bd1aaa23bef1d1e32b71cb354cab7b995f0e05efc525720d4d620d8b66d1191c744579730d007ba732187217221554aa91a8574306f4473b3383ce8e5b6aa7690b8459fda63ebbb78dc36639fb08f8da11dcd379f1f073984700d478fbf6c99cb83a8fd5efb66f2a0445d98c380233ee6d273e05bab3a4f7b914bb2c2cd3f32cba2b2c456b0bb477f2d3c02d183521f104cc248240e8396d1d6438d84531a8e66c92aa9da0c7ec0442887086d077ad138d96787ff77c50fde4d7e787c2f69d619fad84909cd7d1d4769f82e66c1bd27160854e3681271dca1abfc4d667ccb435fec0029d8af32e1567671f06c07a2e9436d8147b86298098ab632c0f45d35bdba16ffb9ec7df20cbf87fa7c0207cdad4fc712e6147c88f5d7f00237ba5ca8d8e90b5f861ed74fbb2814c80b888a871fcb85f8d491a44903eff8e3b818327f7230a6d7026d1b2b61bfbbca386c5565516c954ed7da7a4075b16ab2a6f97a684f1c7d37ea3765658a15ff8d4360a1e22782c359ccfedf16242ba9739461217e154086c7c2d55f38314c98ea2d198f97f8746938cf21727046b39cc322e96cb37d0298c435187cd4b78ec8069585de0ec87a52734fc5161cc6fe2b7ca7f1cf37bc62d80d4b642f13c4c02c0cc89342ebadf26f5c6733db4ba999d712f44d2e25c9af1ea8ba26a9e9845f6afea11ccbe0e4c877b0215a18c598fffa421b638a559cee1783600fb38f2470654842056fe9e437610a52486fffe8908240bddcb159052316cce0f7c73f29656ae25043d2767038a0d37db78ea7601af4fb62eac211d7526d8d88d8790f7224ef88e29313a73f74573140be4a5156f4de9a5443b4297123db1d7e075b6b651c62e5895450067523c92cfa6ba81cf39b6c98cd0f558e2a2bb765a0fb7e1ef96517c3ddcf82ba92f1b5e8c99824ed9e1d6b1a21194bf8e55eae29d6d90a4737be05eea449c63c2d402daa49c0e7bc34e07473ba5df960ed9699a70cce2089b01837dcbaffa87d078f79ad43a656eb3fe5f39f28970126648fb38b254433567e2cb97e88e40eb5aa2ff0e3d39553dca45865f83a7ea62e070cf676b8b04e67ab4c487881bd3e84811b68b6ce85c0987980829601eeb88abad61aff78928e358b746d890d7cbf3280db9c302db022c64b61b559f4889ab826788f8be89b11d74e7110b0a1c0f4bad85d0c55eb4b81827bff49d56334eeebbb4e7d3d7e282a7742c412d22e4816fae5dd893f054ef2f53417bb22a7c57a124a841dcc41097b633e07332372f31f3466364f5fab88944c67eb5ca17160194eaa9ee70a02d4a9d472e38eddf2266a9cfc28b67e731b3fe0eb20f0dee364f8f01a49be6e4772007702d4c1980399b45c0624a2978d9abf6d48db70f199e46707bc749f5d14159872672155430b1d0453066903c78efdac7c4aa2277b7519a69dabe9f30d09674b4369f784e130ca349300a52a03a958321092b7577688c7e3f79366e4bccf5215aa3584b5050a4635261dc55411db890805a7f0130d97c8022d8c5abca7cf48917912c7aee0bc1512f241efc76e976f82d41913e09f108b106b1cec14fc9a442d980b6d6a466fa0a5f8c59183676bdb55b4f0ecf98344c8b0801878aa25139b9b7bea8288826d53608dfb219323fe2abc75c1a081ceba6e3a06325b1a070d8cb1454daf68dea8e17e0419ca182b066419dbcbc828880400ab4a6c1647b860ab2eeee70fa1df901764f48b7caa9163529ceaa0680b651342bdcc883066f03c1459a0934ec5645782122c24dbde8f1ca32057b8c2a5dc905bd6d43146f1ea69f89e56a5095014d3f320f58319e09b5460051eee1806bfccd57d49252ff62d8c89f7a5d3d880796871efd2a503bd5da9739ec292fff2aec268b16e3a0dcdeba6a2b5e881fd2382c5d1d7de050687e856770c052fba00bcb5c7795941f8d55fef928f07b8cbc298e6900073380992a5658e1c1aa9ff5992ca376f2bb370c95cd5df33683c4999d6ad953e8769a25565398145bf163579c85db9a038824447b1dee57dbb0c733ecac13474aa800eb91ec6eb96591529af2ae190f6d2261105c1aa684d72da80f9ac88f9735903d020f83fb4ef079a6270500b1d463d1f6883434343d3f4dfdd6ceffe374d8906b5fd03f5c01edbae291bfa4ce93b19ae47d8a2fd5753afbdd4cd01280ef8ec86330c1f412cb12b70781788f26b11e06c3061536c73e982e2916e451f8355beab207436f9d525d203930269b633f98b442536527664e9b1d2f66407d26942a2cc149190f12795f0db55f061200b89d2f96c7eb2169189f40da7a5e9b88412ff84081d86fe0db148aae70816350f39ac9fe6f577d4dd042be9fb7e863f3ccce06eb187330113d18a6ee10e386387a07c24cdbbaf7dd71a343ef649b721049cc4feee8ea39e327190ce1c634198e35227ee9c394c739779716f98db2bb8452dcf0ae71d80d991803d18f8b769378f8d4d53bdbb88f0fcbc351db1eae35fb394a9564f0c44055e2c3739130bbae8c643b7606bf92f5ef3feb8f40d788cd36d38cb30250997dd04769d1fba27022a0d489f0eec834753a3144a31766a9f9cc42609594ebbfe03890d5e21d79bdebcb85f794fb5df2cc68c764bfe0a543a04b19cd952f2be7041773da6c86de1fdc1aa91a75f503459170d6cda924fe7d236a59dbc38ddd7b98f295c42ffda38041ac5b316eacc12f86721b1aeef663a531e3bbf29736a34fdbc03344ec16ec31a285e490bce5618cc5a6431f8c7c73fe5c8d48523970e3f7186788eea3ed8032e55438c1f14e65851ac366c838fa59c700989f6da09ffcb750d890511ea6fef33166785204b4e83428b57b5c591acdd4762db19fb5d58fa1a20070189f6c65bb4a59c4532562c890c67c3c1f2387b426573d452b4ac49ed75ae91d077462d45ba3bde6ba0a0f7185b05e0e3df09dda405f76256179f0a20c0d0898996e48715689d71f32f4cbba40b6fd69c294b4c9a94d373bc96ee58a198c03168ede5b902528b14f47239339cc4e204f83f9360c52613da60e19dbc647c691d466812bec042f280dad64ae2e479946251529b943d1524bb92dddb0d6701d38f87b15b1d9f110a03bca9ac3111be2231bcb1f39c0d8594ee9c9d4763b806779702ea2b70912c41788f32be02ce051451006b27715ccc3d1d910390e040c6152894becaf04d8619f814e48e525ac5e36da9c0e3084e67d28c3e9f15ba9f29b8b64162c9d5af9034419b21bc849d700f8ac0c7629bc40b25ec5e98a64b5480da49fb611b273d61fa11231b93303c8cc70c0b327317c8a277a93254069eb53ffb137cbeb772448b77d744bac79e935a38ec56d32077f19de6ff43cdff80ee1ab290bb1c4dcd21620116a8c4b6f8c3e54f47f149aadce777bdcef8f56f6e088e157734c183af70380d31215ac97a4af324d9ce802488887879f3bc2935913da12e20b328eb00cc6e0b10aa2fabba4ea15a90cbf701bf3ff2a4c71a8a8f2886163db62be5492c9342689ae71fd0e6c82781c0188c972d8f2341d432ff42f722fd02c9d3e6c4fbadbfcc6823951b4fe5fa9ec24239a614d8871f51bcf540dba9663d21ae74a5252ecea0c527cdb42d4ff0b131d7c086ed098b5b3bbbc3f7bb9d10372876e300210786d134098b4b79f2fa52c8604902e843d5100e5d58b54fa1ec34fe3f020187a0237bc2ce7dc8b747d04ed25f4158401250ddd85092bf78e9c632c1f54c9426807b6aeacbc6d75cc7e50a4a2dea251a0eb85a6b9b1cee5c6e4f3f1275def2363e686dbe8810cdc77daeb7abca23769762f68dee9bcbff97d9f08bb9a35d1a911c932f95c87739289429cb5f855b1434c2e0088e38d93fd80da224f27712defba07fce13a0c163110ac99e43ebd99d63f263dfe1dbde72b2c1ca0d0d7aea400c423f83a1741b4dc9136d76c8dd1665fac4b186d97bd5ee625ce5e1b2099a1dc67e2529dbb4105964a2326b4e17ad4c03f0ae9d59c8af5445ade3286135edad15406550f1bc88fb1b68789804de34150f9e01481ca40acae9189acaa5e513be3a59b8355a11c11c01362c4d5ffcb3df84ec1e6e16c7e0c5471e6e5c857cc00ae5441269a8a9d4a7fad90c1179a27eb3b1f10d4ffabb872f0a3aa58cf4a45a76542a211c6d73cbde325a493ec5f2c21d097d724f23a331395946b9e57c47a8b41b30f135fad638284334049091aa30639447321197dff9d1f8fee4c61f551c2adbe64c692b4b07f7196a444e51c8c41fd30208e74f995b9d9d28f2cf8dfd49824235293cf73cb61c90357938ef3a912390002dbddbe7bb9eb01fffe5b5515f83f860edbd97419690def11a8e2f57cf36d1ce4044c6bc5cc150034f65c998ba72a8e870da7339021f9c7e97f0a87157cd79594b53214c6720a6a6d275237b6ef467b232e93b40f3eba147de9115acfd88a484b4e9d2aaab9603e41690944923822b1c0e5701ba07406fb7c0311be5952f54e2f6732a46aa15a0c4e3367483f4cd7ad4a740817502500eaf3b354400c54f51bbd00ea096cf1918597f5ef9fdb565899428e90b60b58e2d2e4e9263e1fa13a962dfd61b8045a4ce8abc15dd9c3f5ade529e9f953fc08f6406d118d297a18772ef98e3e83d4833549819364009802239449d6528967351d66e692b9cbe729bf1fdbf0046348d340826ea1ed997ceba98e591143f9476c857a8cc754ee6ccdeaa7df5b07a5165a458a7fb33a77773f84f7703366b49d44c84e4c531d834fbb2c6a73b79c4690eb0538c18118f035225d5432aa214a568b13df77eb8bd47531f42096329216d9639f863e12be5f5a311fdd49908601bd03070aa888284f1db86a1b9535f0173fa98d43d64cf2f16c0e1ea25cc30618693a4f574fe2ba0039922eac31cac76f0724c6ef83ec68bbe0d13720621be897cdbbd8b6a4877f8364600548e51e58bef08478d5b2ac0ceee91dfd65084e6f7b3552a1ace3815237d126634310c38181db5bcc9e93207df22e59dad8c7fd4c8deb5ae2b30b8b04f861b98fc89f9f98fb4aca935ff08ecc70bc5137e3e90d98fa2642f103bd73416366840c40bd6d8ae3bc4cbd1b4aec16f8dfe9133028054d0023e131ba3bef93d828e36e7e13091704a741f79927631a6b659003c2e8dc923982627a4f3849f25a75a16d6adee22500644a02bbe6dc31bc29380f5a223ea904c614f14ef8c99f1e04839e384b0a097b8639a772a5ced7c02a13a8d0de74f32a54faa310402725add3657366e7dd948c705e6e964461c9f35cf810020ca121e68ea6637fb059871d29ba752dcefb6bfc44e6224c28705d88c19c5e31894ac600fda773980d5f6de102bf041cf616e722630e48553306fbf20f762a2cbc1a5b915cf2f89123264af5dd79dda87f670a095a750ea158e83e59c5f3e41af9f16122867e1b3693d6ed34c50a9ef4d83ac0500f4fb5d5eec5056b19ce62cc3352c6cc4994f55e67cca3520318abbd3807f6e0bf3c20f7f76022dc5b9a415c827935de0313049adc7b38ff7aaa834ceb1c9d10ac40671df8b7f891a44ce7803b65fcf9f45be1571bf973c9f0a7bdf6098ed3274c879d2ad361299e7187a04090a369f8a9af113a0a4ce93781e6a47ab7268e4836344a367687b38bc90c621d9318793f665ee0c2e94b5ef0181afad00eb642e76f7e6f3c2c5b30be07ece8a709a7cd3bd447734ae099467d617358a6201f673c70917cd1f02539cb4d8bb590f2148d5817481134148c4ad2f704254f7caebab6c02ec4ae2a81b53a44c631b2fc2d3f4fb75fdbd6a22056dfedb4375f224b8e26eab06b067617d62949820c6feca9a2920a37430513403fd9a570fff54f796385411f25cd8a2d99a0f8a41bd6f0d8a617419c8a812b0d3df908f4af818ecfc960c3de67280a04809caca13f253fbff1599280aa88583c4383e82b9f3dcdaae9547d520c48186e80d26a189be73e25ff4909d32f04506dae8a8a3c3c036f41cfbf788ec6db0059df06203d04cfb14303b74b15dc9063203a48743526bfe03c4bfbca0973d613e9afa63a12eec6c97db665b870ba4b0bb3fda8885681c15943eece32651bde43e5b03da37b24a66efca5e3825c6b9c350d367dc951584a7cdbe28f0037b6d6f7abd6854f1e87876cff34c8e04bcc1c946ac6321d9a2f1f4d050d0f477abd6fe3d8fead7aa61089408767a022a5121977035455db92c997b9b4c6caf30f371c1bcd1146bad3e65b2dca3f60510ab4821dc9e9fed07864c095a9ecdc500104f51981bd2a1ae676e4a1360dd586e75390c2dd591f105ee2f36cc1eef7d46178cf62b590a7dcb6dd783798d8319ceb476a8b48962cf23959125cbd98518d0916fe683000bc580fb19994b557dcae950536984809fb28d4da90d89334c246857076991419bddfa3d0c4b4e8bb163b4be109a1d0e99455249e950c6c3897fa8539ed98fdba3d1d6e25ae58cab69430f98052d7d71bc59459c8df3508b76bb539896ad1b5506732fca223d10f7222c7898b034adfcc2ebd697e9d7b054b8fdb507f388989b22849f835c504789a0e48c832ccdf3864d8ab7740b3f4251b0389cc5225539c0d653d98f9ffa2f608c7cba7b8f8467bc3a6d70109380ecd5a70f7cdf88caae94253fcfa7a470591ff7d82356e326ed91072f19e7dd55e811ecaf7bc1b78ebc0aaa5c488ead9c3a5123765186173129998812e0da58d7b55017424dec3be223e2f5ac41cacde4e46153927bcabd44b2bcc6cbf571713d0250b9c598909d0ce1072158015564cb69b6ac452d55c87627c394698e9d74a0c037770df536d5d02bcee7e16c7937e3c669338f6ae50ed49c30cfa4dbe82c9c85e9f729fb64dcff8ce644769be9fec2cb13e75c00242d7552e1c39a5e993c9e8144ae6c21b8ac5be2e6c49b0c93c77a2ffb47daee1ab5d6f528c1e3c5fcb93a87387ecf234ff4f61bbcde5fa8cf350dc75e766524758896a5ebecd6d3036e14c7308ce16a3d2cef2d6cbc5a4152f785b0ddb1c55d7f1421d2e51597d41daed33bb8a909e81c9a3d3ec61e0862abcb4e08aaa40f4ca87199783783eee530cf776056642f03ea4b2e95a4f7e0c5e11fa78b62dbac0c4082f7afd10ecc8fbfd1edc3d378b45efc07ff19ea85d2d2ba37fc86fdd5d8bd555e2faeb8bef2dac7bb3415b5dc07c167038e89d0fd74ffccb31cd6019192f06696c1ae8c249a67a8cb5812069d3af83ac6c77d1b8596f8d297e093d257fa860b74f9dd513d599449d836c9db28c1f6314f9d2b9792e3af854c3678dbc896f3765af2ceaa176bacd721e17e66dd8bc9a2fe4775b1b8a041fcabe66b2debcd5b4086dda38f09e6f3ded3cfc87eb42387df51d97a2304414d809a5ee08eaad798c7664af1ddafcc20d8d54f62ba5db91b41e9f9265eb273fa5e3a6667cca42566f6dceed048bdfc72ee62c3eb08b6907a0754d0e10cab1e14a989fb17da3cc3916dc277922f5e420817975e1a83a3849298c803e1ddbef684a0612739a58e152884d843c146e56bf48174abac805ec3ea18eaf32cf06c2ce22c759cb83cedc35fd4f40fefdb988b12171492fe5a55a014dd2aea3216dad001826277a170ef385fe43d581f8206a6de093e006c1467614f325eee8f5664533de38ec110af5a9813f5d27ab2d7eaaa4285242247c0eb89d886a099b25190f2a86cb9deee33fb792423b0f6a838e3aa86ab1eec9eba6a78fe94e14aa723e10ab90cc76e26f0396713c0b059666dfdf8d3885bc0812386020df32b04bbafc85ac5583fb5a5d0a8f27eb3f0f79164da0a7d9dbfb105525160b7c01dedf00671396e171f50b12c4a12badf8d1176a715a1f37bda2c334b1e23b18c8341e07d2a556e552fa3b1eb5f22f120408daeb11d3ecde9f94a81278f6f3848a4c2c81f87074877f36ef6dc3a5ca155fb0487b417bb4bf9fba48eb0e2638297ff6c3cf3b0c509086f63545be11fde0ad26219474578e0401b5dc763ab3af568e882c8cae9150b7bbf5c35d44700a45ffc330adf8fd5600e5eeac309afc95f0610410d4b64e29f2a09eb55474bebc873d48aa76eb2c435686a66b2c1fe57366ab1c7902a24422c2efab6b1b31f7e419e81e730a3f87fbb63a5c49fab133ee2ee4d4cdc87a265c9124e45484b52a004364b47948630480f619394aec35d4d6b2d820f58602f6d2dd6e86960d73c44099682d58ca41bfc238d2c6c4f54d2226e6fa00b64d8e27db573083663e84c65c8630e077d55e0a696d6094891bea1c91ff96814d9e766d8d53c87765ae448dd441a82a944d5e5d83c24fe2310891f2a4c3113cf71b3542cfb71d3b0ccb0127542dda24507866a290bfb929b49b9f177ce1dda703b26b79c4b4bf5f8399f3305530a874387554e04b6ca28a7713b746d7632cce5abe90ec527a79004c35123dd361c103b308528dbebc7d32b608bbf516fd81e1d4b26599176e0b2db0ab207aeecc9a43b76139137fcbc224798d9137b8170b461ac228d6af6a6d692ba4babb2aae5f63f2c6e18e084326a136bf4a091f6caf83d2c3896145180bcc556957b8e1d1709e5d16afa1b9d03a7dbd7d1e4b03112a63e14799810fb338e9da129921f57838030ec58ea65631990ba3e9eaf28c105c6ffcea3ac9736c4e9b83b861273c5f2aa21ad8fbfdb7ff0bc510ef673425da37db5100de44e86d190a607673cc2e8f4ba49cb2627c4f6c4265f6dc3b5c9c02f01b15e9792d2a1663fb5c632f364a87d12a4e3ace2954e68127dda1720d050f3f81b770f099a858f0f3fbd8fca4b0f547fe34219283e0fa8a5603964dc58b1f5f24a36721a6a3d69ff8f8dfea1a91f6808584f8cb9422acf32a05ddbb1caf32060bbd04226a670f91c25866257bae6525f8fc653b997f34a2f3e24c58b84d12ae3fd4375efec003525e96187b727f45972ac8d22e62861bead539a9ec51a216f25cf1046cad4b2ee899209d360199abeca57c5a0823447ca1847cc717216f165868830a6d149b3f95c764170d84e43cf3062108d13f86c55ef218fb440da7d64bb4874454511b72aaa91d63932564ae27eaf86a6bc4cdb296ac30e4b868f965f8837223670c4a68573306979dfd00083d8a36cff02ce1149424543a7d355eecea06327fde6049359e77a13920b454ada3d0070321cb2b05427b3ec907ebd0538327edf1aeeb58bfb671ac8761d9a630eef240ca3f0eab89b950254dd843b9b9ce821ef66670ecba21306eaceec38a6adbe6591970e046879b84b3a5c0431c74915e408d5daba9728e62bae9aeb0db8440c8b29875df555adf635c7387a856a0464a2129c42ae471c2ea0f0fb132c9ae209015e52cac7a53cdd4fc40bd16c6c4d986995d48739f4613f7bec0414a90ed1a6bbe461b9667a9c14eb95b7b77e6f3d4e1c7f39cd3d4b971ae1c9e5c1a740a628b6924168b0d3f944a8c9d5c49efb5c9abfea41bfb7c88cee717c3237aadf7982aa1569f1e5b8494f04888c0e4def07b47b98e43d188b24021264d56d2c6536ddba39c95e36da62bc144a1d65f33177df6e03112ae979d59fe0cd52dd14765b59704314adb6c9fc12ee1fcce5442bc4075fe873f90c172567ad2320865559125071f9154cd46dd0dd904061f907806bef065bf0d8de12f9e92595679f8dde9dbc97b082e272e65e3d912a4dffeddf2847502b09b978b297ff2105e430de0ed66a049c6f2add6d736d1debd08091abf3db4e842e497feea34d165e923cfde2fcbe8cc24a061c7a4ba2f07bb0a2ff571e54ae560d0cd2e9e1503eddb3ea473917e446a67f6b9ded218375159bde50e6048dc21d02a901f705c5d43ff0166b047607e86ee27282e76784065e90fbb2b2ca0461f15eaa63e61d95dd18f660dc24da744843639a758c62e29df5d34f21cfb527cdddbda6c5ba2e62b2d3f32c0664e6362d504dd911988b3c2293e04457c4de4500dc46726c55387cd9de58265bdc61754ac48b0562cceb125c1a5d3670fa5a47fcc4776f4c6d55bd54e6b396206e3f716e022a16d5c51b454346a6f94b78d09dbe8b59262821b866dd1e0da9d6fd26ff6a3c6b6058242d9d4e89400024bc30de66e39c537f7fecdebed2b48c867d43074879e782f98ed67c5c30859d000d9b95a0cec9c1850ca74a9a9197cb6c68a025f5d172f142742ee97b3c83ea80cc89a53cdf3c09c8c341cb57ab37031f10ec4795f469749a3d124e57d465aff77ad5a2c4aed0839c73822006264daec877d674d97626c65ca83ec9610546d1a9a4cd7e5fcc82c2d8bfd7769a003824b4626574d5aae9f9c5321f6bef62585b886c0c256544ad8b71fc9babbb72150cbe83b7ccb1f100c3cdef92e262912453bef6c7d3a3b16460b133d82d9665326546751f4e3387b90c59b33e8e1f24b6ecc72d1c378230ecb34a529d04a9894b4e9edc348b2056616a0995f5f1ebcba9be3a7f581fc2ceea511af3e83718028513a5fa76d8bb2b861b37fe69953ade6113a7dd793025e8db08b61bfc2a99b34cf9187a06453cabfcb30db6fdab155224e006b9cc4598db482970d2374dbdc700fb787e55d714f4d358ce877cb18dd3471112f3ff45e81fbecf5c80a2a2bfae0ac5db3f5d9def46a3c73755d394d8bb1386d63b0f9b32db98200e8dff39ecf71d9c889d3884ccd9cc1dc328a3b88b24c6a52c1cd0f9b09e13127c8a7b215bd100bd7f3206ca718a1ff9b5109a7afc546f8979c5c61b0f60a0ab03bf3762f71911ad107d3fa6988212370f523ee526115b4c942f919a3f314bbdc69f7bd0ce0f6e9f7a1e5cbf21f3e904dc7bf84e49a0dd545eda85131dbe74863c72c0481cab2b75462d92f19ff34e3a4f639dceb3d73f1b33286564df95c251b9ce5170bb5d6f4afdd16316dffd427875908d6f5bf24f95a22f8501e95d7222eb28a937af5622274fe055087a47d99591e4482ea48cb4b5c3104f9b1871c890ffbe179ae66ae5e7c80c38ac0fb8f100ebadb9e6c2bff082f86b31e8a21829e40856dd7d89e4f96ba7526a954a987a42a98e8c71fcc46aa7aa3943c368b55bd1b3907851990d490b263892d745e02894f80ea46bc12b10ab932f44abd18d9af0390766e749499543b6eba69a60c6b561fbc21c94190a4578aacb1d13617006dd9c76a66c8636841125ed394572eb8f1852d61e347a3c64c70e2969cb9440b7813bb1e44aeab28e96e3acce7582b3859cc583ba7fa4569ba5c9c3f55bd28217f9fff41f85037476e3b26c910221ecf4871e499efb4c3bd6b4a67e9c1cbe6c6550e4bde6177172e1222fc8e9a4f6027ffc0aef994d9395e8048409136593fb284409a092daba9eea84d5bd62192d2a3dd122a84e4ec5204680d9eadd212a3c85279b67c793cd95aaeda418ae918b90de95c74e837e52dfb13b61a3f8f01e45be721bd1c8d465c410a3b53eaeb382e2de87db4476681862554686badc431aba96d6ef501ed9e7d70de8c3e314597d8c96402b86604fffcbac0f1d01f657e55489c64c048d24cd53ce7604a3c595801c57ae3c415abc18f8cdebe1ae26562250b74790cf1fe65f76d74c3e5cea25ed4f19c7c72e62e8224568bd4356bf36d7f8bc72a73d975d1521bf3c5c03d983ea172f634e7afbdcd5e92c88c36f2e585927802336a25fe7b537b0b4d7a04d1d478a46da1f207e199a51d25307c4854c91f913917cd1837fa522610f249482fbf4d35694e494672480f59d0a2951c159874c0fa3fc47e9f2368897d1c175750cb4d93b81a2c3773e0362355e3935a18cf839c933a09bd742b74f850a38ead416a0c6bbaed2e2de7256913fae0fd522d986140fe8ae0bd32da7a4c6a3b0d9808cebd04a3abdbdc68e0dadc7a1d064691db5c63d4b342e1db56590275e81ffccef24aea34ccced931020eb72c9cf20bdb0f181d73288d69fc03b05839beb4bad089153e649f2d6d40cd4f4885cdeb2c298c21586142d28bfd636612205b2bd70e1e08ba38493c0204e0acf7803ef673b4a02412cf15425c7bd9bc6f07c680b766d6450c5de637cf2f5f91fb1e4e93156bfbb28cb105b1177ebed7178b920de7afc2a4411c4f33cc189533aa7acc3ae7d4dd093b549193f6fd77b91d03d68c7f4405ba4d114b782d1095d83639b9f8a5f99d8ca14c001ec1737c1ca590684f3829365a9541ebb9382fada35192c0d6cb581d0d3bb5c018cc3b52412e6e3b5454c5f7e145e1c631feac294e865609624dca5f3968d84759e92f4bb540671360415e2d8cf04419af9f565444854000122181928ad22927321858d5b3858b5e317236d61c714778b4f43bcf894f56d70bc16351026972051c8a417fc49b45baece162d170ce4f4583b29e47f8155d76d7d861be79ede493ddec0f40bc9ef1dce535386eb3e2b51deea4d7e8fe3dcf0dc31e82663a87defe3ef48b1f6e0d8fc43d2a599d27284cf40bd6d6e4c72415862405a9704ed70411ffee8d44f77137e8a2eab7a7e518bf7e935e8a628452cc64c03eaa36a787d9cfe43afbf6c3112a4b45c47c4f07fd23e5051bc666cb913212c337439ec65249c6952a385f4cc1c9d77b5ba38f7ffba769a3d9f75c67ca0ae50efe36f7369a6e249d84bc72e0c4f6a39315a3b67aab376b235cb7b86727bf6e71a57513cd9f1bf858735fe1f32b52ac26644921fc404bac54188cc96ad66a9d9f4c5dc36641960d26f287d3aac55091348c0dfa3f3b50579f0926ffabe8374e35746fb6ef811e881d0f9c789e76385c07efbd539502b1453cdca510a336424b42fec3e57d2d96704a1b58d483c94fc52152e1c3bba24ff8444bc06d47f3b62fa8d579e83f4ed0827c2da7eb79dc1b0e3872152af05c472866f0bf6d55e1db9a8c2cf69dce48d4ecc58f6809f03f249345f16f68c98cfead4376b697757b7d6c4516f9a80bc7a9849267f4e78b200cbd7d007e1a14b11077db80ff99a2a13dbfa6145a7f549f85631bc9f31898137694c33b43bd9bafb0726353fe97c455a882419841ee511056f3279539b7e72ce6e908aff52db157293868b0af1990931640acfaabaa87b2f9deae7f5a1c9361f293e7604baf92d87f55af8f7429d471de947744eb01790929fd30eca2123e90ca48de1284b9285b47ac65107c91a36395b4f36dc6693d2f86e4ba38a85102a613184d4c85701c6f8cd9b87f04bfe341c3da49376bc0e72a928da0c183c0fc015405cb16319ea134f21ae122724f97a861e50794822b2ad0995fa28f3cd16f0024c6dc588a9adb6d7c052e0ecdac6bbf068da88159fab5358c54a4b8d02dcc3cca4a41c3e62d082d756aa1f17bd5fba1d790a286518a0d613c612d56b609183c32c4408e9ae20237543d0e0f52148833a20afcf8e8f30de63ad32e5d16a4c9fd008d52bf3886ee0aff122c01322f4062a6d041910bdedf8c2bb70030baa582587726244093aa5e9e1f689f52026051b108d35dd8d5c0adbc33d53544dee66d4b5231a38c5b7af99ea01a63e3fec4375c44abfe32df8c83485614b97553951018b87a25b7aac854291220712a972833d985cc157a67042a0e0379cb7f33d8ad70dd7842968505f0ce52fe326c6bfc6690ff5412c7bae045b8f6266abb0070d3a88b30f898331ea31ae12c08aea0b63ae553155119afe007705ad1f52ee34a8b679b5736d651de5c31677a33f8fca3fc790eb5aa744d6290f5e0c9be50b02c58b9da07b819eade13a29fd75aa0d024382613ecd84842201114e6b7f6586dcbd354caf8b34673e508bb62c284e9e915ba91f2a16bf8551369997307c4081b40a5c7f065299ed2cb5c2729f7688070942c44be1e94e4a5a9b57c520eeda95c6a270599321cb8a21895e580fa60a339f81b8ec0d633fe9d98d88dce1f146f7e5ac28bdb33c3ded0c38901d24063efde426ab248553146e4f8cb9edc5b50860cd0715b2e53f2e385d4902927dce3031a47013855ffa3dcaf6733e884237c8f8832d4971969680a4ab7b18b31c84d76136c16347cd1cf153260a74a24cc38c04da1393327dd1452a9578c604bebf15f19c744a4058dd834d5c169bdfb6bdf9b37d90a1e28a24335809f7c52204cc39d0d8785aef1657350ae6e185f8aeb3d1cb821c328d494309f7e6fdccb073aa0a9171e9e0df85bb1158c544e67402c3b96dcbc22d5ca64bd751b986eb3b6b34f0f7aaed012780e6fc349c72f34eb838a0387427278ac62ebef125f6323cebf274f548ec862dc59ef56ed382aab035a42daa8f02425e7447643740f90a465d116bbd51edeea31095b6cf2bfda42386a8d11e176bdc02d1e6929bbd3dad05a412cbd6a7c273d90623ffece96a21133121190d1cb60f64a040b3efa0bba0d6ebcde63cc8729d6de848bb5f62c464d6f00d12f338bc9ba40afff324288b0ddbca4377e5a5614172eff43967bd8f2d9ae856e9f9be499cc02ffd0b3ff15e8a3099a1c0f3f3b68b4e866b7b61572bcc907021253258070682d4c241583bf894cd704ad59e16d8a33562894b8d8489894c914910c88e4d1fbe5de082ed666366b79cd78a42e13a0526392d545be9367643b205b6b89d558a6071816bb39b60738ca2a43b44420135a2ecfba6ec1cafce832ed0f6a90697701a9a56ad30ccfcac79c15232a9995e0b65490fee090063867405a2d858642f1981b6be71909ff65f5109d795c5c75f6fe3aedbe8050bcfe1da97e6f0cbcae0547983b899636d16bff565062887787796998e0fc2ca254b82e9e482ed73538cbaa946a25017b42bdd406bfcbcb0821d1451b4445572b874182e3f490f0d15795a2eeae8818ad26ca171aa11af27d5b8441411b4f7ce0dd99d4149f63d0d755bf5cb13e046e8957cb12421d02514884eb94cf22d22a04358406837425c87514123f93a724126eb233601dc2e2fea156ac6b2767aa35e781c54b454383258c5ceff9004db1ee2b88a3ea597d36f5819dfaa7feaf7f3eb56f6308d9687e5a7ef8523868c1cd46fb0ea60a53ff0d04e03d46096b5624feb77550e9fda9e3138ca00124e1111c643dc96d3ddc35d4ac35db1fcdc261936e7148e95cec7473e9ab8fe463350e2d9dfe71d51f62162a13ca88fad930ce58424f8fe4aa333aa5a7bf925648e21d4004db2ad341cd1196a53d0716dea7a4d70f5428455981c40c25fa72e54436782587a3cef93e686ad7ad4a5a24eee44e67f53ffd678240dcd3ffd538a3cae3fd02cf9c546babc0d184e1571d0dfa0450be1fc41820862096b986ce526f9ffee6c30b20f6f54cb59f3e1dc1b38d14760868272451efde2dd53769294114d585aabf83b470619cbc4270eda66bfb9832b449291e58ee1091f416becf92c7aecb2aafa0db33c1e1c055abdd1eb66f7e51b752a5c7aeab0165907a9f1b2726a53897662fd827e1106c98aa93da2332e173bbe61884852c466531fa80471f5fb3896fb4863a5c66c3d4258e2d8b333ee5eb6b9d278465915dba711efffde79b199232bd4560fd64e34698045f3d3caf833f54074878b75318c5411f9d818f634cc19d13319d74df93f34b7740b7607887e855842868dcb111ee51efe943e781118d3468cbadbce9f27632d0eef0f4a7bfcd86e5bd95847e7236925b585ace6a526040188df1a7a4924f4ebaa42dc416637b6fb22d173290ab59733f48ff907b26c453191115a1e73dde2d58b06c8cf6d06e8098e1971de3c98524a235099ed54f00114fb8e78da82a87c172afca4e2b52bb6d34eb42a440512f82c33074cd2614741d8befa78546e00436dbee9e0f7ddd63a859dc78e6801b1923b43a578c59908c6016dc23a7aa21933607ade2302229573fc91d9afd8bb5f2abedc0aef223a8b046aad9e553c0888c5d493005462cad831bce6058706a48e31621a55b5991a6233cdef5fe221c31c5c68867a71dece150543f835eeef0a22f16a778d947fef8c9a754e0ec837e6d20493f471aa1f9acb716d835debdf118479ae7c68824d100880381e511ec7527d18df2a77bf83cbd64cd9cab26e72d5f5c7f9367026b64bb1e34f70868adc748bd12a7a0f56381225f41c85ad469c234fe1dd3b9ec4a50c94f29da856273e6207287bd5abcc4bac7282653b3b6682d33a5239e64a1ffc53ee7f2beb9d087f0a24871f0a94f0633ce76f4909103fd84ab12e03b2c24e7a4b2e09b7d6173fe0bf04137b40f0e78aa1c62f48b40626ed7853a208e5243654bd69061d4a379b9861f3e73839ad55bdf660bb569f0b81f46cc2c6dfcc9de6dfb43fc21e4193e90f82be54bb4daa6cfb188755bca7c35835f939d8f5f538b952922c91f5c9496f4adda8929c731d6314b0dfa3a5114f8f897b458c5cb557156dcd2de4a95b5ee87c2a1708702588b8b6cc7f3a972b018772d9cba325d24f6bc5ee0cc94beadbea8b6c4ec1db6fef523eec2b579bd3c1b3fb5927a199dbc8540666f7ddd5d18c924b71b8bc8980e3938e638a52b69601414247c81002179f479ca65a4e7958ecf7115d1b0ef65c4b60c32e87356fd0a52c5f4fe6ee1370bfbcbd24e743f4feb67bd777f8aa8a7bc4096492f349030ef3219f34a8de72557457b7aaf808ad27694a5741ba33f1855b976fa2158419f677ef0c6e356bca2b33f65ca3b11e7a96440d00c6fdea407d6c3b1d86ceb09f03e8cc3f65c18345f431ed2ecddebe8a3ddde6605810482e70ef69e136fd95acec25c4c8bf0000014b36213bac0d104db030393fc4c10df0c0bd160f68dc987272d5242dac74b0eb9dda1f32b2f810b6bc4e5be651c2a9c41142be092e71ce178315ed02afd76a4b9a088cfdfc473715925270bea37d242ee0604740afaa9c309aeea0b0ed96e1c75ff7ab6ef7919555a6437571d4e3a1aefdbc681248d652bc5944512cc8b77fcf02310d199a4979b88c98bea17ca0a6500936e3a4b57c32ec18ad6f44e2249ed6faa8d2b9cdd49cef12df3f3aff845b4d89c8e48e02f485ea627e46bee54e6f8c991c5c2f10570ef8cf7aeef04a69757878e8ff14144209e323c41690e662265954fc2db318e3b932431bc806a1d8e89379deb2b8d92442c43ec4df341a70ddab8c4f653a119ccc1e5e0ff04a0dceaaf2bb761754e2554417a1c656124e4ce6ea1055c961b90941bee41105ec6b17b4e85471cd81ec0933d834701033ee03cbcacd607e70e7e031edb77ad8e96c165bbc250502dd32f8170e9b5dfbc3b666c9d47590e5921d7f0b64ad2e39e6bbb33ceb8da79781297e66c96e5ffb2f1e03a76bf7ffb5c95b4b02b6be5ac193eee6254e983abe936b7679779a8b8d404edb85b869a9633fcc0a391b16de97e84f6741d0f6a75601b5c6e60b8f401cf72de19dd8196785c072003711f5e65f2b51bedf62ad0781f7e466966ca7c54c411a8c3bf1f396d9f49a48749758de05375c1f7342407090a975b1ec309107246c7bcb6b9a44109892306a8fa3a8e3c18df3fd3a72e870a09749ff4715d88acd427d9e12d68266eb8d71505dce674d86ca5131a7f57271c1e0e536fa961123d3b5a2ecbb50d28eae5e919dc937d976c2a20b0fc0dbb9f94ee76626dcbb5726fce5ff647c1c9acd17a3ce37d1d1966644935668d960752bbbf35e1936b0a87c876b401638a6299fef5755e3703f30820295a5c8fdd50a42e5b12d89a5ec01b97ab33b8975b23917fed0d711860983242d4f8b71be8310756ca062060d4e6ce5c367469da123daf4a4f057fb6c831faeeb0d09c64d2f715a2ea7517f9cfc2059ab709ee8c4d9b13b0b3025aa7baa0e23d5037b7cf69d7ea578329f8a38576b2245236987bed05a2347d0423cfe26f48bc73f59c3712b366c6a374d22b2e98426d5da91c4b7b2340a6b3449d6bffb289890e001f82f50390a2a78d77111182da32fd5973a92bcc417f3fa66112dfefb84f34b504c7a9b6df14d3035d15fb0431134af001c155df2e97a07b2ddc3ed43b9676a5833ce7c1f7f18fbecc64066215a8b902ba8740edb63a950c073963532fcebdd9dbfe8f3e9dea2b27e030b1903690200ff619b80dc542c07cfb3adebf63297a7b78a685a2e044cb35e2146065f0892c1111bdfc9bd2e109c2d6dbbda6ce333c4e68aaef38654a3c590d623a287f62e37f10ade0191d0d5b8abb1fa1098158cd3f9c2bbd85b493dc07563512c25539bdd14282e2befb978368db6192e55ec74f6059486ee2863cb10e6a227b883b56add308ee9ce1b36ac1e46228528b3b9c455d9f6906920c0ed5071d5bc560550ca3872f3679ae6d025accb126a68d0b7aa1bbf018524a48bacb38c141774423e18360ebebf3002b9523af054bd4fe3c6a33757bfa8528d5b4dbc754994bbae5439d8448a6b7146894393d14df0e920513d3859f1f052830b0a8decbfc0cef1a3ac1f7837f18268477ef66e42aaf467a00c0a09d9f2734b2f7000585ddc552f3c9613e4b150395557309dcc2605d8c83756e8e533dd374115606a431980f88bbb62beffe58783756c9077ca7ecd40bd01e5a8fc2b0538e4257f0c1ec7b30be6f44c90ee19fad402a7ee7d40fc474026e6c4fb79fec10cfc1624fc7922f93f0e2e2ce435f62b0b3ec8c0745b109f59db304f644f385d2e2e7371410631c94b4ba2188ba3f7c23fbfd786609e40b1c530e11f41f32d67553e059b9853cd8d070fcba5ee8281ba2747e57fa2a1e86202286def8c302f425720acda0c9d7d093fb1e22e1c4350b58912c54c957c59203a23142c4c8fcbd68f098bac214cc47f76348375c57f73c97ee080c5c9de493f5aa29c06c39c2243f42302469accab3253262b12def30791c3d04c842eee629aad44e77dc89d3c4de69471a74599642fa07ecf622f702a54af7ae1fc6f3719442c17105f2f195175bfc6cfdf99c36547c47a5545f58b1f332e076be2d77b9fa4426a62c4e6a962fe8e393519bcfcc3e9c106689e08104799c17df02666c9620c04a62ac6d07ea2ea78e2313344d910dd3f54befe893450450d95f9056617e5862782e48ad282a8572ebbe966e0d0375a4a318a8ace0d92be3fd6170cdb0fe0d810f37be5201d153cd0305936bce4e4301535f267810293ef41a7807a0369441de320a3c8e418bed96f7695e27bf50ee35d00dbe148dc7cb141449c80116e392254e09a003cbabbc4bc192c870570ed6de50dd7a5e45b5d5f914d3ac802228d2bcd54dc127f9ccc733544dfe977f50d39dc0f25b721d9ce64c1599c710e3ca572aa12238e78eb73f0f8f3a642ab2ea886e3233889290d11a67c819fddc7ad478cab6b637e5e16b5465aa8d0f0c23a6747b29425b8b13c1d0fed0d3cfe31c14bb7f2bfc0affbcc5b4d84e061c6f716867f5507e7e9e5d845f0531a94757bb08dfea11d6736f32090f5416861118f8e59287726dde7029e4fa57468e04282be0ee4f24e0606df8b2be87816bdae20b019e9613bccc4eab439b54b004c7a51ad0bb79d3ea5465ddcd5cec7cbd9f498a0108febaaabcdadeb1022522e5754874f1f47ba2210330c21f867c3bd43e35488b3e40bda21235dbd10c25fa532db5e524050a8007d1efaaf1f329fcec243d1542fcc10c16b4ffae2a427f129fedf227fc71b311fa2149e7eb39405d522bba96fa83ed08f6b9a06b9a2d20b7b7e35290b1f6c61ec17e564d39f1e526ec19efeec196624b0d568244b64aacd05353cdcfaa2b37bc7b2e9a6040944d433e69f7e93903fc0674eaf13b82758e0f0632123690deb5a9a7acaddda248bf723c7ccd5a333320130d9edcec9f016a43b17088bc5277be9cf36e1000460fa9c4fda64c002d8d17cac2513d004201eecca175688a06e1522d3eda5960e9ad76b6f690ad233e88967965104c9ad79882953b58e1932f1a17909ecf666f2e135101a34713af8ed406cfef3efe53c3fb7c5ab2db218705d9adee92cd59ed49ed113bf2232f8e3eedccab7368d3e594208b1e795407064ab33295626868e5faecbee1dfa0e3c5e718aaba83b8bc11987f1c0471a3e24d762a7db44842781df7f162d9d4c24b3d8defa824d6748d023179de6b30945ffecff09c331d9ad62fe55afb1326334d96715ec130ee507cf5270ac47551333b0903f263d8818cc693db56d827508049b90a370d8e476fa15c0cb0acf22e2a4f3e72d3a5bc83a3a00edccecbd9e071e6b5817339f2733777069e656080fca0f3246d525a1abdabd537818433610286fb8e3c977d0f87287310dde0f0cdb9b9a5e0d29b997e2aaa04d7fd6ee95ec9de028c83848ee5af55199338411fe771c111ff6ed103a22d84a7d70849c4a33c0670e82e6525efd54417a82bdd79f18bf1d5e4e3f3c2b1692c627a912cfb78162524824131c23ffa846ad34627983d5dbdb3de732b9a55f8f1174d65739d67316162d1fa78d14eb25289e389f24f1df49a704b576492b32923b19df0765dc94f383b1c4fba53c11e268c74592bf8bc3c041b97153f0d671db2cf39758b9ef6b3b4ccbba877d2fcc1404973f114c934f6e5639a361cb9631fb02760a6b09b6c9a025a418cfa8d76f79bd4b0fed9c716300fef86e4615b907f04fbe8e177b5f6e60c07a301e2566ef92cabfff90ae8073f089d8964ea56492405c37b2da57c49e4eac73acea7675f299e300a757f9a117ffdb331a2e91febb9380a34aa5404a33552daa9451dbb7b08f25f10b3ba91882af3daa79c1ee5e48ec363bfea360698658c66ba09e24a0f423d8f8d46d220fc8e707495e0c35402295dbb12c62d146f6454b26c8b6b98f96b5117f7d8bf68eb3db54e1f2e16f5128a4fc6e7821b36b4729558deb2f415781a62f4bcc27ca6fb5f04fe065229ea9d9f7d79f6cded81d81793757d9164a6cd38fb9d12bed19a53402ffcd5a6bb114e7f59cdc1523d5ca6c92bec126f75d9df87bfd2f6a90025786518e1424e643703729ecfbb504fe948db2183ddecd5c37a1b44ec74babe2d6898d459784e88b8957ba7857ae6319dfed6635db09c4ef383733e3692d78e49a43e42122d30739fcbbfd1e52dbde68e0cc8c96fc0666a222cbfc5f716de7827253cb29b5890e5d7571eba8853ee4c83d6669cf4f253363538ba588f3bb427a1d2389b0168c424ab6e367ff7e9d938c1e3ddd400ca21028f88045feaf422bb0c83ec93d26520bc9853d5581e7ab0d42b4ff2e65da58859be5e60a77648ce4d0d21a2f367e2f1d6310ae34bd5936223eb8ed580e91a646ff234981ed1182abb30bb7cbfd0ef2e0390abcd6170067ad13ce5771e1d0bdf7bd06ca80840cbddd7fba47e96387da7996bd3d044cdd76eb38772b50629be5d9915a6159c82a37175918fc6b1519ac0b1e1b40362f30d115e1c8e815c3d0f6258a043cbfd4057762a8eedede7d40bbd12d7140877c0c5c0f5027683d4c40bc9697d6ef7ea0f8846eff6f0da550d4d279803940a76ad10281a515f7a4498f9d897b6351ad77e7361dc0145658277c2325f0fd230937f508950d79bbb7438fddd732857109286e4e05db3938d0fc09771cc96c331c2208b4c2d6f79f64695939cfc82039b615810aae8e0d5d24f0af0ff5c93c7b4b4e7ff3f6f5af6197822701c534476b5248af7897b35046666b75702705a015dd62b95f02629e7544746442b1e0e320b8bdff25ae5a516baeb86542657a73fc1d27f7492ac94d6a951859493bf4d1bc669748f5fb78e3afa5d677499bb7b9592ad853565b4d924b80a3db1d2867b046d6a09efb0f3203f2e8fc30b994f1e807f68e823a93c8695357421bafcbdb4b560430105d4cb74494bfbc8fcdd9e1282fddde6baa995b254abae2bed766681fe7cda1f159bbe64e00348f165d3c3298b7feaab929310ef0472cd180c44541d31f9f540d577ce7f4dfd85088fbc3964248a216e3523e5609136be29fb5586e300b1df4cb90494ca8502b359f60e23d6e82883e751962e8b442639f7c15c0cc3b6bee1290cda85b1eda2beb4dd02e2a7055d7b87f0c1b8bf60d84e105a6b049f14ba061ab40c73a8ff7806707febf49e9a38d8718392a2678b6a405684b47acbe230ecd50cd86949ec2e66defde3d0c013449d811cf3fd8432eb58a9226f77a997d3b55eca2d23359e874f3a139d13759cc1df35949effe8afa2b93159a2703b07234a06d8e66afef7037bc755d95f0c099c17817f26173e08405ded4e9dfdfa992262e19070b460fc4447dcdc03da1a14b3b318821086d7516a7ade0f58cc5c46b183d8dc7cbbc9cc6c18532f55461943f021233903c64ce4387657d874c804968e54f2b2723127d6bf081785edf51e001e3ebcead42b92903220b38f145518bdb505c4535b0b91b56abb4cea129554b5f00312e2661189b2ba7f2cb7222d7fe623562bd727a3606750d1b625c75d2c2fc4aea99a1c64757203fc631d06327baf1ff89584b2e56cc82720a4303a15e656143c7b284a71d2a8ed76f40a45e8bae89bc814266d115143d5dcd9c8931d11245adcf8710c109dede8fc3cbdfcae2f1606c50a361d44037c38c0e9bab13ed216b8a2c0f1d4757a468756f8c1c4e85250bcc2264212eaff096e13df3fd765950668275f102bcc3d510643ceb77e562c2b7fd828e78438e9bbd9767d02fc491c73d4b46e1a03642e8d4dfbd71290a3c7291dcc010c41590c1857795d6ac2c9c9a21c3ccbe33299818753de89eb47e600bf1c074d73e2d22bfbbe8950a61397a5c954ae83f1a5ce4c071c3c56289be2c57b688eee4e6ebc3e6e982ee11712a85aeee42efceaad1783c05e80fb09c0ea7494ce165ba659999bfe8a04e2c7947b4dbd9f3f09030f2128f2571da82f6a3e4ca0fab3a8131431e83f7300eef14d13ebc3843aac7581fc6ce69841e001f658d760fad8b242164d3c5e0741b83b4de0e12078ec4084ea568392f8bd02c5076c64489e460f5ad3398ba18d5135944c90cbb0930e4142a4b6f869d0901e37c1850948d365e750d56cc85c95a5c16e0c7c49dca74088fffedbde3c24da4f4ca0aa29ebe76d4bd5d163fcde4536f7e6d8d06008d8e7cac4a676dd8222fdd9bd1f2371314fe086388d63137877a5fbd6702a0530d3d03febe57bf4b6580ab796b9688dae103e5f35f1b24c437cc5d3e5cde286d9e9a103af8a393fe7319f4d4d4e7cd1166099b6bef04eaa5fe65abdc4343fad642c084052b0e470d85de939d33aeae19579a9639ff24e531e8637ec4fbc7fa9edad957bd9c45a4e7df98b791303b2a34aba95b4faa7ed5cad79d6b70f22ca4159b6995dea37b6ba77b97413524468cc40c16271d6b5c839c4ab957ea29b59686f2b41e2e412443bc3a733f1d06aafe7bb14ab891ad5eac796ce7b693036014bc5afd3ef553b80d6ec5be68030ab542d98e9d91b5624186a365a7cfdec6984e137331e2b4c7d9a891b0dd69f78435fd4ae36ffb5b1207da8c2ac9ccf7a7ffe2f1c4c4d5d193491e73ee0df00c94711676cdbc9bb507fe2394060cb39416cef8d1054dc1d15ce4cdd23fad6f5b29dadb2bd8c708afda403b3a2b9731da2da2cf2bcbfddcfa8f0bcaf2f07dacfe2a7d72223c013327a48bf7712c55e0d0beeaae4e6c2557175090baf33e8c0f582e8fd1578d249596d855f0e8f9a5752882685f992b709239c3e76f96ddca4b6d19aa464d1d3cee95965748d1caf640456b7744f439483a888ff1eb5381141fc36120f56d3fb05348196d040206997298f2521d304823e28aac493fa03fbfe8889b1fbc1d738a2fd0489d8590e685f877a2742686365533f35e397859057e64203bc4a63b6d1643c6aa0aea342736a77a1d0a7441f3c13b90a42c5f23a16089d02419dddc19e37346e1b6ab50156794bc5cbd10c703934d1a6bcb6677175522b45020a91245df1a65a1b5c780e2ef904995867748f5d9c20aa68c5cb6699959a9efb047d88ec4b685496f2ffdf881d78669fef97b6e15baba00dacbbe0e1b94ee84e6e93e9b663dd68211c898f030296acb27d2d641a5606c3e2507ebd658ee01afb21cf90770107aebefa457a477740366f7eca8a80a357cd22ead2b791f4a1e4695e9fc47ef99fd3411863524701313dbe1d31473a1be1e35eaeb3fa370f4ea18e271859bdebbe0066110d6cfd56150650c464441fff6394de08b3d09fcf02cd188d8516119e8b63825de9d592c557f34c71219f643b95f98e965e5b27d68039e7959ab6d9d3913e0ea650a9a6b08b20bb7450322a62245dc80897368a3cc4241fd3febb981a2536f60b461064cb9c64d0da510a978ff9d4fee12f42d35a945e50c78fad39954ea3070dbf408a2970f02b24704a9406bf244aea81cbaeab72285c260e278c00ea77542756dc070eb9c135ca5086be7371a113ba29631b6b8a4d86d9390b99e6427a1b612bb3be4f6d3c497dab70a765e68de73e30339c5f7fc12affc13d41d2977fb1720300d0b2f7417f939709805267c3a534819f95f31e12c3f4f31022c3c5fffaca05aee4969dea00d2b4cd153576dcb83e50c77cb17a1331aab46b9385ca7521a4dd0944542698e8626abe97f7d11cb6ea950c1049102e6fd53a12ab36595c9effda6b7991009bd857a2fcd291a8cd9212520c1247fe29044d249eaf96ff9f575b55e55ce041bcb7c26f120c878f28134b6b7de1e658f0ad7ca294993acdb1edb9f0c98ffb90d6a3f2e10904027df498d96519e9aee85eba4ce0962f9d2247f2e1e369edaa5e35479feb9e4ca65303e2cf3984fdb0dce872b493e1c3a1338eb13dad3db9467ea575100298ffa8857cef620cf2e203dc9e3a835e4873f9fd82af5fa0b8ecb6fbb56e2ac34b08cd8768c32b4d03ec06ae1e0221f4c9d7efe784762b8c397048fb459b5168f1c4a0006fc35b084ed23fff55f0ff057f222ad74a21e9f11ae0975103212d90e7356a1a4b18b6c275111e1bf874d319774ed1a0a35d1cb8a37559fb56ba90b6c2a10c32bacf061e22903ccce953450376d1671439c32f250446a1490021d4197844485f0ebcd6f54672d8f29aa83e76ac8ea8df60b6955296d791b35f8f7e21aa1bcc2c654652dd7488a40a5e04b3a388a3fcd7f2e5d49248aa04dc36f14cc64d736d52e768cbd2bae06a9baa5fa87531d85d7812bc8e31a351edc697a60eea7e259fe0ba47e83472520d1f0cb0312f067cd7d73a2b99784f10af95b3692e2c701ad9b2d25344f37e78729717d1924c375005b0542aa74351af71f0f0d32cf0f37517b03d929dddf59dd8b8cf5c00e032e5f75ad87802fd91e80a6fee802e279b97faca13c4374df987a80981115e097edc857086fc2d84e076110e00cf2c93c066b38a07bcebb4af619eae9c10c6dac54878a13cfc09f0815cd118476d05b521dde6d2f6bcde2d6cc6c6b89313762839b25dcd3220fa53c846380ed0678e71babd5b4660fcb8ecbedcdd171f8a2369d836140bf34608a3e77f824e0b84f71446b5b9c67982a252e51e4c8fafc60364141fcc0ee8c83cd90c88d56a2f1906ff8b1b3d6086b7bd01746d7822ece257db8abf35b1106fac802ed82eab3b4fc1482888ea4a0681294cc02478ed659bd19d88abaf52d2f42a4efa28d5e72f3ec14e0039e5d12dcae472f4e68c4338c72e503b98ec67cc4e16f2c6f4e59e8f5d7a51217cbcb7fe9c9237fcf81fb419b2a1cf55ea917636f31709931c7dff018d169ce4b6b1e00fd352a3d13bf5806f143fddd8bc907ed232f0a9e27b1502896d8b240ce1d776049eb4fe7a1ae8318bcbfcd340d1bf8738528047099551ebf55f10892e4a3c2289b3ab4351bdc008230723077466db70f1b497d2be527b1160ad65b8aa1befe829310079c2372158cd7eb054c7979dbfc716432d4b1260f91731bc3a4769bb2d8a33727e168a4ee355af95e6c9f8ff549e259628c47cf0357ed6b39eb0ffce839c84da4bef2a6aefdd058eb34c379e1bb543b4d2298d546a9f552e3cc2c90ae5e47379ec438795b839768d1704e06cb53318e9f58d06e4946a5f750edca93d3eae754ebe61d9c6c44143b1bdeddc14efd713fc33cdee15606b126eaa93530fec85cc34dd307aaac86fca6e4479932d76078fd75bf7f930773f59a2a6fc92e3a924ff53da47091fc34912af990049cbfbd07043d9aad62c6a3e0fe51c63be45387cbf2b83335ab761c4da112a723ae66ec7778b2e31dcc7b2b76f7ab59aeab432317f7707e65d450f5e47915ebe3cc780f0c6a675001e078bdfaa7c392e7607b15d42f4f58eba19908730a5a1e3fa995d0cfa6bf53a22063874d7f8df68a40492b919c649cf1defb3af92359d8bb1210cc34c4b03a15b71650720ed68ef7fc6efd017ad7278acd4e61572627b78d1f92e7e771c45bff259afa52a06e9d744869bbf9453471784fa6c4f833aed26087c4521e2030c6c0597f18265241e0ccfe7dc9c43a04eb002ab85fab39ef4f7ae6398d74ca878210927219dda474a13a2329a9dfb1abd67898a99342329dad062f85dd665bad9d68c96b6f5764e2a724d239f63939a0bb983269af47ab59943135a9513a7e76563bfe603c45904621244ad1561e743f9e3558d4182212bd6e985439f137174bb77bdafe3b50e4190d3839dbd2b7d26f64ef18ff5cc8522f55d9891d0b6e4a5e87b517161580dda4fafd117b60a2a763a65fcb4a7614faa050cb913366362c04f8bfe92d7761df518c45cf6ec16f4750a7ea63a653a39800312cf1faae5f697e8160c68274fe57b8428c6d39907f289e2cb6a53e7c74b266fdb1fd35a3d913fcde37080fea82a33a6948325890aee381b9deda7bbff67fa2a8a520a517a20c84be5fb3264cdd78069e4fcccd24bee06c4b9021e98c62a138422683982d0eb97363e989e40ab853c83f8ef10506cd049a578e31c4fd7db2fe8a7607bc38dd66c48ef3b1c2f2736bb8bc0a86ba9e61085e492b8eaccb22e190ffb1d3796d7a2ab554d86ab1bb95e402096bf8b1d81431ccb1da3c2519a5a5ea3cbd8526c6154734bbc782fe376e528edc9dab6a3f133c0f6fa4b20160cacdeac1ee573b9fb7072b6a686aea0d883528ad52b4c0ea03db271c75a2702956c42bf9728b25464f9c8e842fda93559b8e1f01c048da4d155c04d94e85143f23aeb3e49795eda3c67cea1986bc31ed0fce7cc8fc7c94040c781e19d4c83ba5a28813bfde38627236a818136d3a35c89c09521edde70b1b140b9b07f54f9d49f894ab97cb1d848665251ab820731c54c8e63c0e4f613ba93faf37e332f178237b72ae3b3b0e4c98984c9422639415b5173380784f0941b91908e00b5bd39d2711df30cf7669167005d7ca39cb65e3db9150f9e220c082698e5e319d4813357ee9044a6eb62204ec340e57d72c678d1aa0ee7769aa7bbf5048dd74eefc14eb360f8af1e57c3d32436be39784be0429ff707e5568f18fd3a09a347f8a5cd8ace076f2b6904e0b07caddcfd30fb1054787e5c094ff628d7709f3cbb0d4ad8325cb78c3b2d069f0efe0cd8fdd30a5ed12df2550064622dbda0e4d24df8f659092f3310f95f0bedc118c04af1d00bf1ca3efb547ac1738fad9c3d1828b14a424e7e63b3c99c7cd3866b3f2abe61e7db7dcd1a66774e39f03b250db0340c4c07752bc726f162c7bd350e48ab57583dc4d1124e0867ad8ea51457dd43203ec069bce8562d587ae241234c2d560fe5c3a329a153bbac9097f6fa46965da5e0ab902ec733f7cebd380cf8c0b4d50abd24c2fa4e6739d5de098c215b206515d739c31e09a77d38b3a3c5fbfbe037f067dba6209fa5f7c177d370e354a0f0005bac8c9a9ed1d2f3c47bae0dd0ba70887b6bd543f7435d8ff23d06c192b6a49d3d9cc5f60f1b22668fec34ceddfeced6f11e3c3014f59464805a35e216e0b81c093dca466e04996bbc42d67538598e80d81912aaa95ee955b251fbbf8b5137aac98452cb453ceee7e0e5833f5a4e1d23fad32f3891dde28fcaa9d50c3ff4d6f80a60f5289779558690f3d1977c2ac17cdcd54e83f66e536dd46e66ee6dbc1a4460e03e44b56a85eaa87aaae593ee06999dd647018e22dadf007cd8d6f0d4563c3093534d57fd3849d0fd9a9b6bdf15ba062b4369185f1b31dd67ab6e1727646df9c73e813e07878594f1b234b1b0dfd02eedc393a79405b214a0f1f6d4bfebdd14b622750b72789a7426e4242cd5df57a87d76a7babfbf1402c9b5d24a677ce92eeef01bcaaf5a494982743f7899f11efa4c519cdf1bfb22891e7922ffcfebbe8397058ace205b1ffe96247c7a390149a0805b994200b0a684c52fd5e96f8a453fe3f66d86c292982836330ae652ded8118e6298fb30df09eba27eb67badcbb0bbea3b3aab9c455888a16a214a5f52c5b0ad7fae276702abb9549d963ba1fc92de1bf8a067ee81209e0883b1ea2b81fa9f4641017148cb18321078a3381761062f16675426086d63f4ee288358edad0f644ab13bd43d7119f7a12a8e26efd4e905e2a4a11a34f0f8745b6c70d831161f90f1cdab5ff1a156d046e5cf787e4a920850009abbfe394245ca999e914819344c64964cf469863b5458b9da4bf4180a2ef540a431b175ea29bea1716ebe3c0454c545f50f9119821c60e38bd845638423a9771ed8c2c669a53846ad22a6dbe7af1e07c4bd7ddc1bc44ee816887201c0133a1d85b341906ebb8c6ccf9dec5795d04013d8d7209691f56a28e0cad463bd2e5b21baa14f27c484ebeb9e041e6ecce1ab78e0b925b19bd3427a73cb3901c3dc2d9134d8b39784c3345509e21b18dcaf154e4c26b544496f61a155e295bc8d35fad0e95a4afa0099e580ae5eb4cecfc4a9105411df1919fd8de5af605d07d7a0ef2c3d5f9c5f40f98ce86bc0ac57c293e97f65d40e6b05550e2b7b687e84bbee22c1ea46f598cc004f1a4c82ede8639c37e07c5366ecf0897ecd577bd30741db104cd024275d5446a7544702183ee56d187c74e68bb23b3798241a81f177fe245ca969b641d15e0dad4e46eefab15813906cc5e2f31a329762adb3f268243cfc4829a8f5b2b3809f6485c654580cac3b3c9da631adaf46c0d8e100d746cb8cc972f50e7f5b49bf465caf94d98914556a85bef782096272156effa3ab2451facf10c9ff722c3fa61010e6bfc99a246565ed9eda908bbea34f682a5fc92dc8b30a405c31d7f2d7ac3baa1ad85420e969c495a329dc8cc5045208ec7913c963aa6073f2981853ef6e0231f02b978036a09454e0a80927b91f9ce20db8736b2ace541f43849d7b69f490e1afa85fac14a1768e7aac0147eee6c5a6bfc6b6b3bc62456561db4de496d32beb4eb1c78713138959165258e7052fbdd8458a902e8ea2ec2637d73ed7d22edb081897c9dadf5d6d0f98184049c8287836d24bbd82a34c443ffdeed74b67273f4a1bb05b1c0023e36cd7b14f4908bafad0dc1e42002a75aaf697536f284eec47158df406162fe220f08e2e5b189d00a09f128e8be113bda82035956f59ba682dc309bdb0160e26ebe6999d6175778be0d77170aab3409fa5c357323e51128e3a309b1090573b319fa396c6ff8446d4c9c50bb23302c6bfdd5aca28a1c5dfe913a887ab12f3ceba0c71e540b3f2eb974d89c2dc386a7ef3f68c75730b60da9c2e92b797e034481f55a9125e8e36736a5b93acdbfdff3240af4918aaf82101099ddd59cdd6a3f33e162c46b13287a208e187989d63e971743b2921a2aa5d4d1c80a03ab91bffcec803bc0bf7666fa37025edf35ecec38fa7400fd550d26337f990c832cb2c982afcc317dbe47a83c2dc0394e082be72010d7c7f7ee6108714e0d2b41d1f88d3072213b2e4c4b5f426d71b7d76217ae8d0e32019ca5160a9b14a84d55e347837351bdcae08be17cf3106079a84d1a022a61e0d6b074da7d46f8a66e55c7fc80f0527a3f6dd43a274abc68540a7215dd7eea9a44bde2d5dfcea99437ef32669c79c7e65e0f62958de3fcc8bcb341580f21fc17164e3ea5bb6f77ce38e2b0c52a4645754996541cbf80bf3fe8d847688aaeb08f48e9e0079ea965d7db8f15dce976e6796ad28010f976dcaea4adb2d02a7fac36136cc021e6c59a4cf80f1ed73734f5dffd6b5ee181a2e05a4faf9ddc42afcd049f9ba8899be8ccecfa692a0fcf3d46b35dfc17930167ccfe5ff10622d357f1d2cbd7d97a15406ed4dfb60a8e8f3a2b7eb243ebd01bbc93ebfa8f02f5dd9d0ba11792625abe61d7d2e865ed6dbd9d9f0f983f371deac4831421b79b0c7dc5b5b0244e84835092bb523a1ff1bb2e2afaaf501649604076ad2ec00c832cdfeba9e5378df4b414f55b8d91cf9e07e7efb8034bd992813e064741f0cdf7ff73bab5adee92ba7e870ae00d7b164365eb4d5eda98a19814f49d7da3cc354c1066ad35afe24819d8ff8d38c6d563f75e8a4e5ea907aa11e5c4899accda0c4243a85917afead07857e311d6f939180c674724865b2ab6012b106fa479991966af6622d39e3591c6f6ea3c62d302140b70d5186bfed42fd34bffcd566259caf398167a322f51a9cdd2bfe74d751682d5a90ae7128b63c88fa30191b4cbd1d18904ac2559e29175d26eafd5b8f5fbc9666aee53b3ac6673220140e24c9dcacc2639d871be006d883b2f8f9970a062568b51d9d2b334876f5f54930a7c0d5c262298a6fc18fae06f9df73b8011c07d4c4ff6ec64a6af74a1bbd735769fde41e43c8878670948ce4dfdf241dc94b9dd1e2d6f2b989ed8c581d3db7fa0108339003ced5384146fb1748812f31850a4cc353855d057c0c8196f5d7d736ea8b52353b168ed3b752d291a8df71d7e5a3b33dc3448dffc839c1c6a50e5315281b89473efdd71efe609b16fc73741de603d6b40a49da78c890cee339510faef8ae7dcf2883fa27a91f61c8fb60452af0e923b9ce51d2ade0a767eadfcec0e7af6894fffe18e8632a89d253e4627c8c5738434e41389dacc5cddeae7727b71a59e26e09cbfe8df79f23abdb6d38d4f7dcf21d4d805e82d997f00f92edcfe2867c54dab641cd05a6fb76d0f079463dcfd6882bb4068f29fd75aae5e760c4d09a6f615dc2f3cf39ca91e63ff1d69545a2326327a8e2033cff058d622c084a583c5179892fe5ad503bef7bc2400eeeffb3aa0261002fae9ee3f8b8f820d5997f40b921c72c0e1af84cdb0d5b8493d3d787187ffd1ca6523fa0274d0d981f28afda26f2fe1bdcb4b07275bf015c74a47138d76121834acfe4aed4cab7cb0add824415b0caae289fc8808a7b1869873764b011aa8b1694a4ef924372d4462cdb403c876b451b370261dd8072628515596a5ac3221ca0e9a73589f53b018a7abd7ab9e732a1e7d816241ff8d2ac3bf516e5647030aa5f086385419ccaeb93a02000ab741077987f69f6a56d039e1fde658ba652e7abbf68867604f6a56c91f658369e2a962899f692eebe5ad8364a0bf527bb5f301a72c99944a13536ab0de7da734adbe8fa06b234c510df462d0b7be14120c7dc3e97e3d3917b26194dff12f0d625ef8e2b1b380fc93539e14bf43a6183c690c24f273d58ef3628ad9a874cf840bb790df552296f3cef40e8b3d5b5e4746b5f86d3b3e1c590b399054bc7321656d0f85f15b0cc98b64817143a2cc72bb62c4bc833f8a8e501c94508916ecf1fc9d26d5456383af46b2258b8f8cc7442aff70efb9fca377604f068a998b1a7e427b48139241922af38c844f83828f46da557780bdddbe9a82fc2253ebf89c0952a622b72744d26e7cef5e91021b95fd5fe58f1f4f2b58fe1b5c1ed992a70f455708a6f5a85ddda21e2636a8f4d73a4fa7fab624e3c5f9ddd4bd1f2b3c847b3d61f3ba87cc1d36ff006a882bd35aba7ef4034a8857d031d4c2153d9149455b6ece3605204f4666b2b1dda079f6ac26a611227c1ebd3e25520cc417346cefeb3939f3902ce7ab69533773e23ec7c1aad5017ae23d55e8b5bac888b937131f7505d9bace1265303b26dd5287cf0bb38631b01787cc6892f473dd7bfaf77b93e49c5fe08d837f2dd9f27ae8b63ca8cf0276472a69c63a4084ec8b6fbca2be247257a22bd3303b79f88e1ac1e7163297bd7678c12a7c9410a12ddc6b0582cd819668b9fa9a0f7a2931067c1943572fc4dc0c4d4535c054577f553f12ff7bb9120f6b0547b4195d3cb89797a3eb63e04d77256a5e3082e1eb91bcbbf533c4c56bc6c28ec458dd701dedad56f793b100fd52d27013a259e9911ccc5f430f3db54a616b72fdfce282422c632e0b1841a3f2a622093869ea840e7be65ef066dbda240d3dea8eebfacd75fced2fdc69b3fa52341c629fbae0cead2fd74838710e1ed0203366ce1130d66cfb8d5549fa7b1744fa00efbf2744c0db889737231a9a56712b8b57e809ad3468cae94aeeef43d298b98cdefff4eb9b4d90c28d4c2f2c58a599ae1fc7676b238d3c891e8beba33079bb94eb11ac183f186327255303a0590a7c0d31b83097c1309c5f679cee8e62ff8192b685cc0c96d82552202fdb1b5f1eaaff38d3c281c42e1fb93f74801bd76659776152a3f7c3851923050dd1552b8a6be79060a737a9951e2ed6bcf407e5d5d7753c0ea7ed5b321ce82b42d72244503f544b3adb08bb7e92cce96d612422c6db4e5296303b1c857aef624164c54d172fb9266de2bb79f39b2c12f413d0c35e81e07e6c4cf9993d84a60b1af71fc0b3cab02acb5f55e3eedd8dde7e9e46713551abb39f2cd0014188bb1c8be89d405f7e80aa26fee93ecedc3ff106f27ed6529ac95a52677dde0d227064f3a14f49b95c5cbc7fe338ce9844885ccd80b994a013724d55e702a9dd0b8f933cb5409fe76535187e0665862ddf771161a33eacf8af598ae6492b6890b89e0133cf08e4c73f353afe2703f10f1bdca494ddc8dfc9f5d3b180007644b73f9a93f4d8ffb1b125a2e939fc50d2cfa165b69f3de66548ae2403e8996a788490e6f70c6b71cec13b1fbe394b9051e298346f3fd46004b05b8f5936a2638e82e10b20020ca0fefb8420e18a677daefebb9f3a56b06575bbd50a888011c96b6ecad4aecebb75f9d7084ec82618170ed6a8da54c69ba38e12aa6c7b36ba2ef7b22442e6503e0cdd1e64ac50c5c9b7333e78d92640bc89701881e061e06f6f3afa7820d2e3838c7fed6fffe7e5191bd0f41f4bc0d6795efe1b64c86a16a9dc33ed3301df6edcd0cc5037ffa08bc8448359dc363b727936b0361f845a52677dde0d227064f3a14f49b95c5cbc7fe338ce9844885ccd80b994a01372197a9aafe9520cbdca95b9ba44ece87f31739a546d5868b089c028734f8ad95cbfb8ebc3cf47c1a50939f753589bbe2980160b765e4a32ea13bf55646d273b700bcad88e2012117611095bf2af33677048486e0a35cb6b7c4b32850d1567d1fc0bcad88e2012117611095bf2af33677048486e0a35cb6b7c4b32850d1567d1fc0bcad88e2012117611095bf2af33677048486e0a35cb6b7c4b32850d1567d1fc88a5cec24bc6e993fb9cafe217cec66f1f474bb843b983c25cda21fb5cfd98a16b78937b1be469e3deb3d72879d919d46e7969df873a1091ab3fbec5eeb184ecf4bd2b7f138122ae10ff3c813a084f7523f4a228121f34c77e04a4b51fd19a9e001fa5a97d616400d32b7dbc9e1391281911f510c6063dcbed60244d516acbb798fe56b96abd58c4a7b417d85ae3174db995a4943ccaf3a0b555458e759556333732adec6aa71c0897a99ad0e2a824466b93c333ea4e8bb23e6b3243adac2ec93353b955e340fd899fa73a059b1f3682913167554d468f2cae0e62b7c6c90f320c58a9630099495456c076c4349c9357a1b37f129f52f92ef748df3d236c4915ad980a46ac57df7369b9ec13617f2cb1c5c30c4e56cac5d3c963b282e06c717f6f07ed3e07b7a12f8028cdbce9bbacbf08b61b00a1c330794cf898f8cf0f4726a4c9585493759020eea1456db39453e8c9830778c5ba6176cac7850449656345e3b1a16068b10c35d7fbe10747d48f1f95891a4ae6321affbd3c474a78d808d8a214cb938ed89e596ae92bbafdd8f0a3469684318d0ed5574326f024147682cd2439543f9c153574f92567d2e9d7bc9836e52f81d5bfd2638c6843ece93260ee1906c2604f613e9fa52f8d2d6b395fbcf2276c283dec3640eb38ca5af58e506a6b431b97cdfb6118e18e7686645f0031ab777f15950a31d9d061273a0988d6952439a43a7212dcec7428a2e8fe4583b7711c0953f0a1dcb9131aec9b9f8fa7cb935aaa3b1ce8b5315358cf763dc19e196cf047ed2b9e36f1779eb6f89a78ea8ba6af36df50da86384657a536f5f9bb3b334f57ba41584bda25fd9520f29778ad30187c523b0a1788c89e2402efcdd951e9a0c573a2767b72a5bab56f411f029188a5c52eea4335c631b813255a4c4b20cc2568dfe4b04b0a3933f6ddca5ace89a8894a7128b97d2fd00e9c4333841510fe3ef7182c63421368f8aca9b3002ad2b9cff1ae81310b0633c8c3ed6813253ecdd808afac4d102384b6950454a63a87e17f7da8ef3aeb2d7ff9a6bd8526363b52611f9853a81dffe2965c7df0193cd6ff73f466e62d5904be85e334e25c818926e9a079cfcbb19a21e67fa2d48fda7c605f542d23e521d93f9f8b7f62007094e6a94b3d4ff000f92feaaeb9ba75b35fd6073b2e223f0dbbea76bbfa3b4aa7a2757210aa8616a621264d08e477b068cd534483a91a5efda0f56aaf09a1a22897df026e8175ad866077bcf4e27d0824e4d62e96a3716617df0233ef66f94b8b9742fe5adcc3fdac76107ea3136246d3689ae28e3c56f41b6d2c492ee1359cea25463a4d56ca22e365bee211a2aa42b65c0af1a085e05a54aa1bbd4291ad86523e7f760413acaef8f1f797509d398541a0fe28905b9e238fcb14608f75e97e605644073c3d6a56c8635848084b76e1245b450bc9190d7bed6e01626bbcd0f7401e8983dc488dc9b0536cf7246277064e57eff88967d8044aaf0ea8ad2b8ab1dacf74e5c02d0a2ee8efde5d56cea05d3ec2240cb1f65c24cdc65d95c72d64941303880dad5cffb061312bf8e13369908f30cb5ae70356474105b282eb3434594678a336985565b9ebd0eb5e53abac23394cc56e6eac44846b80b19211af8ed9e5f8e7ffa914af1ed4b4b17570d8d3727a7312cbba3c14c95d36d3debca9cd4f8417f6bdb9dfc38c858280ea4a3e0c5860f162ac0aacff51d1d4537300754ee52720540eb3ed8d6d06842d09f4cbb50f2c9460f5add466961c07b9bdbf599641b9ad739c006ea121c88078f644c7b0c7ba68529899ebb20ac33961bc477417c93ee12cacf0e2e00e41289645de859805262863c4a3db93b93655f59b35eb7664b2b7d01f0d5d7dcaa721e667132cba8fecb6b9533ece3f27dda5d623cca30a586d459f24dbb2b6ea93e1e00c6042c0496e711e59af2158180b5aaca1ddd9ce1e6630b133255c9c5ae90a2492d755a6636b86fbe9ffdf76a4b3ebbf4080f8eba7a83f8d509bc34f63e9761de58f19fc99086dec9a5da43017fe5c11f057388bab1afee029a08bd65a92444745e9e66c84f83de3758d0e3157fdf6a14456513112708ee396b6255f4962f7f2ea4c1b036c65469124a3bef5911b2ac8bfba2499e205f7baec03660ceaccbe7fe97c5a5c49febe6360369279f88107f01dcdeeaf3fbbf7fbc6149f954037de64cbcd2305d4dd2a9e36d046dd164aafd3889df41d7b4f614b4df033db26d07689da23f71c4f2ba76b5d59b5535c05460b7971df8f2af1a716b34ef117e723c806588cc2362c6e0fcb2339da702c9106c56c147ec38d8fcf7f6da397e5937d4e5f9c8e9b32afe868850e22cc07ba496a62c78e97c7d407e3c920a730acff5f22a7ea51ac2d2b1f3c54d2c15d9a1d84043bb04ff42faea4cc76370168c5aae7a19050f0c9cb2cb832e9ed995c7046d405b21f1c1a40524d417da69069061ea84c467504fd0df04b5472e34ef2cd96e3a9297bea1f2a4c54eb2361b0c179126ed7f8b915a754becf511c46b8c4756e18ba616015bb6797ace61bcc5e1016d228a7628f5edce7165e56a4c807005661650aa69cfd95d1b0dfd09fb8d40ac85e2b41abbf07aa4162915119aa05dec54e796a94d9d43fcdd4a4641987473f32a9c194650cbbcc47bfcd748c67d7e693656580d7a11ddcf4d8e9e5067a5cb2684a8ffa03e264f64bf245453c00342fd25955966d5f4cbd86a5593491adaca7e0921d549f99f6a94b3b8c8b4c0916d3161ea08acef6fe092522a9adee4941f04895931aec52369563ffcc82d725c4d44052e07d93a50fcbabcb642848187529f9be63af3547887fd354af5e6823ba40056abf8cbea1bd0ad006f0086d4bb62b400b2807d02e45e8f1198ba238abe056c46baab3c5cc700b83313da80543dc07d422ccf921de2649672a37caf4ffb34b1079dbc4030d04b3b6412c0232f9b7d0f284e710009d8dc0278a7061b74219baf53cfca88848eaedf3a29a97fbde3b2e3f98544c335949c6a65751ed558ddd4243f1d0d5cf32ebc31bfd358e44818a81f092dcc473896fd026a4c157315403e680460d217fe78aae54b959d4a64b3682d63fd279738b2fcb15e16ac05b27470455bce7ee8e30b4e8aced6690d3467f0c7d8646cae65616fd0faf7e3d2f94710d1bda9f3fa8bc053582849012373a16d4cec6f0ff7d2e0f15f489fd202b0b42810edd3ee58295087226b9b141e45a4436272690819226588198957864d5706b112641d0d37c17ddc9beb190cc2bad822b73701d94ece4717ae0defd56b724690c3d70e5375e077a0111debaf47afd309342e2f0c377bc6753fe8555744eab9249a1a7eb6d52a1542352e72c75d227f0ec2acca10250733886dec995499c5685c0d743d0091dc009b6ee77b014c896674ca8bb1b34c95eb5dc1c0d75d73bbc8d431cd441acd323beb03f5e7970090c3626866245fc5a572c653a852f472f7ee86ccadf7f93df83a4094eb844c15289ec5754d9d8eb71723148202795a2cc10ab2a5fb317ea0986466100df17f9b9f803b7f8da494371a8af3dcc5283d2dafb45ec32e5baee0be58523811e181e23a2283682f516fc105416ec14ec7fc987432a61134dfff3d18ed79ea061622cfcfe6d51bf69663f9c76271d051832803c2ac753ce52cf2d5de988bcf3fce1e6c3862a9af9496aba0d2950e9984b39a27517125e94805117f4d1f570785e9772e4bb174e21ffd07219a95a81bae47fec1aa194978170e9624068502e3dd0f6a7072293178e86572727dcfb559eee31765ef16abcbf9760c06d74b5676f90d35e0b31e91ab6f202686a1bb11a05bb4c2ec5e3e9df745ab7d3f5158e69f47f1d2d9c53d109190a7b8bc60a68a903c2acac1cbdbea8c907f21dfc065cc3487e0bbdda3771262f6d51656f95b68b8ffbd78a5bc5efdaa655d4d849ef2bd5142b11545f642ff37b3f49fc20e158d1f50f2fc4d891e24313c951937b0efefbce61d4f707cee20353e268b9e514cc7b070e2fd3c90239b2db678853e678a0ed6ff909be7df194284cde9cea0f7cd3954ef1f943eba16d0360c2465042862fb6335dbf3fe4f8e17417f52053389617eb64de150c100591231557dbdbca4a451da2a4f28519876f2c1b8b665b085e46da94bb7951d6484add3571b785b813acde60e4704d723e223bb3df9392b1ec809485a37012e41e231a7c1189421a84b2d8006b57c95cd3ef4cd6d6d2e041998d76e7592bfa9f5ca9ff3982733660c4320862af8e8402a68d4187033acea766e1978f556bbfe049a521b3d626aa78b443d5f3926101ab6aa14e612dcb7f25122c3fce2f0e90cc3f24832aa40b1ff03e8c76b00e87421b0d0d7b0de7163e0c445efd3815f41ac80fdd235b543cd25019fbea62cdd02a9bb74aec37b1ef24f827ca6bb861ed010163678ca725a1f72e34e7a42011876150f1df454fb22ce3f07f84e51159da1bc4d086a682459404fd9c899efa8f05b12f4b6c80cfe5a366a0d7f6404bfaab30fb23d2fb9e6e42469034fccba3826aca8bd44793a625cee97491e0f2e66057fdb1b943c606fbc9f0652165dc6917c0abc93d7e751076a9973fc756792855057313c026dd96fb0e297d069197217818971c411e5da786314d2b716b01eea223fb804abd26fe6901c0e9eba5cb9a8767de1fb646aaf5e1bbec60f74aaba56c6be2bf39a349cbc9fde3dba0fced6b1a818f239efbfcb152e8461ffb20daafbb5698363913a98ed20c9fa3ec16fecaf8cc4a174ae818b683c9fd14e98fe6d10d7b9e58bf5ced0d4ae2fd2a2707863b7feaeb3f75952883e820f39bd2fe5fc7b9998f866cd6db578728184c72e10cc3d598dfbba2c90c7bafa5d58e3c5525b8c4e5b142cb4c7ff5d5520a0d3e5c5529f65521d6dcaf3ab8742e2a215798332d7611bbff8fc4dcc609c12f96702d2602a8740014cd368e72b5e14a03d10917b3523641ad0d145fc034116ddfd85c1a1511de02a8f40c071d2f1adc7e6f6e745ee4c54a6a43406d7d2ea301b78d025a9359140aa0c894050f90dd1a6557fb4ecbb1bb65a4484b04e736c11c7ae89764a9fddab14fdd1d1bb06e6a998f89fec0521a2e7ba5eb36342aad2478c25bb6bd8edd8d7fdd6ac04c93f044d89ccfc4b3b0b439c5ce82d6ce9f067e9d1ff95ef99580127e413d10e7f8fa62e7c03263cbbbd82b7c4109038fe6dbfc779423b8f69d9630626a47ca3f2be0ff7bfc5f33c0adcdccfcd43023a028fb4ac0e50348b4397c09ea2af386ce0528b0e78f0a497c21737c8e043ef7412c1fb3c7fd4f6a78a11ba82b8dbd83324e1d3d11351b51c69aa5c3aa5b70a51ac901c328c7acfd8ade06e4043290931601c84dd8aca1c4d3e064ea24dbb87ea47f95b55b215af06ed6d08cc20219f843fce4e54cba50f894ff84a4f0ae2e6c447ca84cb9481a01994555e5ed596c6086fa627e32b43109c6dc15406521312f0c64a89331b71ec6ac3ca7832325514b4415e1bccefefc9bd85996540ae461c002c97c4730526019b939c325f0b9489cf3bd9821a02eaf6dca2ef9bf96e2d0393574b8af5ae52ee7343f0c88cdfb878ae1774ab2545f80946c8737fd0888b84f57e41d21361e5cca4055a8fd74fc05fc8486da0a2e169419a053c625ce51f545a12c7ed73aefa14a65168437a8d0bb257cac5b49439cc1cfe450e0c07a045362b1e35860024bd6f6ba0846200120faf828d983cbbd52ca94b8a530c94d3af1a79fa1a1bae0e68e874470d9907feefc18724a75dd59e88e3eec31ca73b531173de2b4f5846cdc318cf8b4b673b1e013b9291c6daeceabf8ec26276a4b3a10e2ca7aa5ca44f1b8ef4cc5158a6195ce0f399b1e42bcd0397a5202d09c4490e62355c6a8d118accda00f9b3c1a47ccac970a9ecc7654f79b29e43af859d89e00683880a1d93e5d9a9b965cb0e737a4b0d3eb2a936b019d7189143878eda383d8d3a39805e0d88a423b13168b27f2f14cfe09db1a3c076aa9538187ca8f66073e807f47da03bdb841a0409563adb9e9b9ebb423d4e4759969d4bc215743cc84f3561951791171bdea7fd54390a89b0b59a6f306d13346dd286bfba909afc44022d04468067c06c70083e9cba522753ba8df513db08e4644dd3394c7bca6b7895d9b9dc9c5a5ad331e01ab8b94fede6ae447085b86daf3e98bd54910964053a5d1b03631c942071717af37d65b6d48b9ec33bf9e3835ef2beaaaa895e3638967a8baaad4c483242e1e6c6d4cc06673a4ec87d56540cf19afd27c9ba3638df46ffc0c08b6a0adabc649b8b6e44aae00d180051d6d82ae4c5d180ef966141f0d9b7c49236200e1f7f94b5145e4716b836162f000cc2c6261ea556f5fc513b6bf5501ed6fd5d462bde8b795fe901ffb30587e22734320d8027311581d4a5ce04393ee6126622c05ecd5976094e55d6d1d6f6b04e0437dfbd0850b856f51b3165657accf683d40373b0c0b0bcb54a321e4a5b74d5697d15afa0b26b8778c72b3d848ce9c951a68bd9f0db58bbd0108542dbed0be5f5afd77e899be493eaca12045525f250364de6d9ca590692a964b5c12d100950b2f8a3a6dd4520f86710eb83a01d3f6866a68df89a6e9b1da3f0287f9098375f96435a0942e0c3931212daf584e7fdaaf47c7b7ef73c49b4db4ca7de0881666c669bd459e617cf7c7e56a9168165eaca461a7ee27fd67d9f4ba33333a7fbc0bf527518d8ba639d7c54d0eaadac901a880f5c2776f669a54b0fa5bfa762517c0d497ddd3c9cacbccb8bcd9d5971b54c5b815ab8d0c3c53a74474cd0f735dd8ac0e97eecc7030871a245aa79e539d3009a812cd1152f58a8a0291a2ea2ff3de2ff293969ce50a7752206b68fb533a4047b317dfb23fa4ef839a3567898df6b35e55fbbe12e27e2900af7fe936928ba657c240d5066061eef4c3c97a145ebd69023c4821cbd58844d9a3c7fd95062cccb57637dbe12d82d0f9cf610fb40e6026be71a5f4143a598877d6f8c631f0f5bb7e090e79d945fce12ef5919e0cfe51269cbfaaa25eca782cf0b10363f43c5441ab504aa35d2679d65481fa985226a579043367093def9871a2ca47fc18973e5ac29f34a67056e4841e62e147b9e2e7a73415393d24b9eda4fb600f05bd2defc036a1b46f1a2385875d5e3171642ef0970fa1873de81e1c7a5201eccb15cd1fe15fb9569269a80089903620ef5f09ebc60e32d20c24fc3ddfef088cb865ca99a599db864156a0a801bdddb646c43a9b18f185fa4524192aea68b06d8137c0563ac92539f971976d918070ea251ab5aff7103c70b561ac677819efedd6669bbf12b1a3c3a66ca62fb359d4b1578d7d8a4613dd7494b785a8c2f7c3f9cf29338210b892512de84953bcb7d74c876a4e822d2c74efb4c2f050004f9e1d01255030b786ee0a91ab54f8ffaa9df7069d2f7f2dedd13e121058224f64e17f90931d1d5b5ce7d2810f1b2143b7f5417cbcc39642b11cecbb03fc353117be5965cc40c8fa3475ffd8a334a3c55dd0c33f4ab8437d3e6fa123f970a226041cc0d0c28b770be60c0bd18ea12276e8b10b2bdc24a5a4d4465d165dd29f7fe37e77fe0d177dbd193f83010894b41363df4db3d7914533634971b1c2f56b9b4c5fbe9cfd5d120e146abc9753b0055205d9760d998750fe128c20bb84a3413a194206b18164ad46743af3406f063dec51ea209383cab31548650662d5b2d761b25a0e77d542c4083bdac4819b886425697faaab982dcb28b768782188be9ee8757bea55bda1721890194cef1dd392caef2fc87f882c8e97be039ab581619b9b1d72b7f34f2c3590b6226cb9810f156e5a75bb2c4e0ce2ad1527d01ab9262a45a81989c9770605f00fa343e020e84e60d860a4c7d2849ba5b0b2bd20e998fbe98acb0075791d6f4a127071fec432f1dbbb79258cbc9edc7f8f80b3ce904412fac9a39396fa7f6385d2dde537634179f6077ed63bab2211dfd998995a4a9cf849c8206b23310e7cab9888a500b1ba69762883cb61d14b6e546bad9a4158489c60ecf2c8279ac4c3d002315ed66694b376c35929d70f9fa3ee1ea21e2466f09cbca48af9a98885bcf61fea0f5967a6c78de36706eca494f139298ab56553dab63966aafb75a59b9de01c42da532c0844ac669fb5ddf15be3b08be630b87e03457d793256f645f8db0078d0c361a216a793f26183fa11cfdf0de8dd3872a6e67b3153b777f271932b5b81516be0b6d7639d0280502ea7371e2d1f1b3855bd077b290ef0f916caacd6f1b791363add2839b948930ab12e46a643c3097f246d20684eb6386827cdb3d0ca0981df4b14b7bbf9e2b69b2475f1485263fdd8605c4db32c73559732a9db03823b25e600ccd73f30b20ead64ea03cf9bd44a067aa822b7f312db0c981d437bc66e39af935f5482dfd42bda369cd017159a1ca1d174b109c875c34a1b032998242e49d6900c3b40aa516b39425eaf8a03842bff1d33a10f28848c101e54637ea6b9fd9db061978532b5d0808923774388bab3b53a64effe9aaf748c412f5aa9d025865011b3b30ce2c00bc17b70e62486cd5949fcd79571119fedbced4d8e44c8cc74eea18a6070b4ae1125f9dec9548b89d01c12174b441dda81fcea3aec3d6074ab7541d772bab851a126ecdba48a4125a7d4d3a48b5c32bb40b6f6b9c8513bc2b2f475ddfc1702c114602a1f0746fee5c41cd0b4434b61cc2de3815c6db799b8a9dfe2a63e636c753b08969f3fbfcf8a25a4ef1d0c41f1b9d1fdbbf22f2814f12fc514a996e86b624d2f7169338bc9605efe1f3f2d2f59d6b6f1a3a80e111ff5690a6ace61ffe257e2496aa1be120a97e80572d7d44b07951d93c5cea68144c4a25d02786e1b99d12690e5a2d3edb01304b79e436ae7941ee053c42b478d4972bce4a05f8a42dfee8a4b8219ce7b66ad0a4a8ecf13af43e407063d7f7065afaf134047643cf69f992fd13e46edeaf2d63515e7059e9ae51620c13d3e16fb7d2fb9f2c87ff3edcf5815a47e256fdd9a81ccb7c07af8ad0ed14f5c319356e418e2af48ea4b335d94aa913194eb02bae362d7d4f210e54da139c269478982a093b8e7bfb20d67626d5e9671bbe3ad59ddf04b621592ecbd945d7f930f4370fcf414b8ed2b4720c5cbcd97a2c89a2fe83669ddafe32a403ceed5addd40f0e83eb7a65031f59578a7c28f83fde86f12071a7a2992d4e8b02394cd0bd0f3d51c88d6b439ab809ae2a5e2a72cc40e4c3ee11426c4e0936defd45e55a161d91b4a39dce1cf12f33f12f8ee84e88a37e75ece2404e25b0f2a1bdf729a23759cad971a595fe45ab4fc60a2238c081c4dff03d506dedb71259b88eeb096be6dfc93761b9e3477eb6a56486f55eeca0f9db3714b29b7ad23a0b71cf969f8781ed06b08b1442b5073571e2abd0e1a346167f9cac02759b8c0cd524d63ebd2f7d867ead6120316657a32b6fae8180f0ec0b94e4a389beca2d9b8f3691e424c11c928a140e34514e8709096de5a4e62f847a7793944b61b29d76682bc78d96b654618c61cf88c5460fad56c4e755c606ad3ad18e5a96a297e05d2fa03a6d6e6dc3b1f40a852a44deb8dad396a5cacc48509d5ddc214577b26e750b70ddcb53efda3ec8c76faac385836542c638d3e9d93669d5a7d623fcacbcc3782cb935aeff34ca304383293834613a57ef1bdc29a01ed5657bf8b9e1159ff8f7a25b2ee495fe3820192df1bbdf0d70c1dd98653642859b2bb08f56fb658b3df767bb78738c4fd7b58435e2b25c69700659824c34bbeb2f1a608116598b44a1515bb0780c32f370b59170eff0fe80861fd59581b2da9b553b975bd9acf67b9e7371a3d51b2a2ced3fdc00579eb6b4addededd6ef6a346f058509de84d4bbb3c47b056db888dfa9a9fa48ef0249b1ef049100035d7aa4acce0b151dc5cef6ffd6536c3f63ead3603e372a655c04f249cfa4e2b6304a66b8acff0ea8b25e2e0d3703c934eb459bd9a2bdb1bf3c02375a6637c6bae6f5eb77423e3363359845b109a72b2b77d8e58f89cc663b4ebdb80f70529457bacaca3d6695229daaa6214d1323da428b1cd7cb909b93d5bf434d1f1c03f7093e6518b6ac3f93b134200fdbd4976b66812bec2e07d1c2f0fd9a227b94b93a49c5e4047ede46e1351f68c957caf26e02c1a2b85f289a3be7c343cb418f2242bbf57a8ebceca45c096a85172f6e95b7011919be50d00387e959f9b669cb9f194bf2ddcdee2a7c61bb3ef381b59268970bb44ba5435c9be82fdd85d3b0c14d68fd92da8bc7f643c988d03a9fc35d179874ce77d8179f6b47dd560e75650663f631d76de733a8dd64b2fddbebff99c59445c81e3d28cbe8dbbc29e2bf74dd87e51e433f020c8feb79ddc55e61db759b8067201fe38966a61569af62ee470a16b2f7b2fad0cce4e6819eb3aae00a4aef6338e2bbc25592a6ae04c2c3a360330903dfbc62a3727a2fd05ed936981d29b45ebb40ba1ee46257a7f7d4f47655ce8084a93f5472cccfd530bfc8c4220db66959a70bff66adf1336b0b1c68b6c7a5eeed476c6de05c4f27d4c3bfde8a38fcd0e627d17f769b28c7c729b1a8ffdb166822132481883cb91bc38af50895664bcc6752b6b21f2e69090032a18acdf55f9cdf6b70524f03dfb1f6583cb2e115b945dfa396ea35c3c81284a9301e12ffbdc03b99a4bf888a2e9ddf9517fcdd8a96d9bb3bf47c987e138b02ebaa223c4ecd31681cf4f17b2dc1cd772e7ea910ac9ca24c4104a6b1e8fafbc9f54a466ac9837b67f06cfc1ab18f0523b67d9ab2ee06ecc7740d6fd21b74f886c90830637f1d0732caabfbf7b974d6536fad67acbfed985f726a526a98655d31f7590cda5e1b57dda5452007ca94fb56893c1ba3f1a2726b2e15c676e34b20b5cd110f1e89901aebb8af1e54c1de54e0294237b9dd7181f8891c55163bceb47bf3f239b40e7b56e482847cbef21218746f0cd903bbd1009689853cc24186242f3f9b9cdfde508db3a06e458104abbd84308ce908af7a4853782a733333ad86e4a08d3a1cf35e24c906656994dfad997186a8edac7c3f7b8c65267c79e2643c82cc82364084087a2dd98d32476ba3d74bb764461b5d8eeb195fd37899ca2c199bf5b46c5772e21c5ae3f63bfb8163323f0d8751af64eef120d5d1b16ab5cb22c5d0ae87048e31cb447be9b45eaf25300106358fbb30d9b1fd6fe77a97ccdd82bb55e5843891a50bb50fd17780bc9ba641718c7b40c2339ea44777e900a33ee29525fb8b394a46aa6a2b3814d81ff45b4d65465df542a67cbee4fea5d7a3b6192819844de780838d408eb50007de428b21a1ad72cb88687854fce74b1e37b7fe59c20b30ce0c3d064f5174534a9187dac3f38caa3269efe5403cfc70ec8e2a041713585dd4a99f0c01f9543004bf09f95bda9f7cf94ae2716202efa37db151244045fc0224595de44cb86949805e5d01f6492e88eeec9bdaf73f449ca243e67859e08610c4a7c6720dd18da8f88c5db3b8f8467bf6230971028eddca2bb9d07212be59c081ecdd6e5ca372edaf0c9f3ef0517019ca983065ed512a9e425c4542fc0e5081a9419049dd8b7aad02098b7ade0ba2cd9600e9a675df4391b9b8d1cc81a4f46f82c6d7cfafe866551045d82e39b7dbc48634dfb6db00d000cc02074528f29c72ca51816188a7dc03f8bc33a49eaa8ca6e63a4455508fb6f63b1d6e173a271e59ea74807dcc4820015ba631cbac5238eeba90438f1c6c9b0969aab80a073cd865cd780b2f9b260b2dc3ec9e2f37304c26ffd4c57f423a260d6d1f7a5ce70892ed351851da3885d59c3bf1776f5553ffbaee7c32112e8d2c3347a3bda0dd8f90e8805a63146db91d31fb5cc7d65411408d723bb2103f39405ff0751e9af21aa040282f2724e63d01a0f4824af34e7820fddca00288dc5c99115453cfdc45932dcfff11e38cdd71c80e9ed228fe2cec3ef3038c2bcb37eca87b671178df4ee3a581bdb5619384ab86334789fa731c4663611d996796d076a149549a0ee01f0d1929480a3ec7e12c9c06d770ee35786df0c5d53f7cd27c5763c372622a3845a56d2780d064a19e04a89e798458b7179080739a2d4a36bb79dc8f9145c8dc6c1a84de348852b480acf3b9dc65f8abfffffc11116f800a086fed95ed27c69273b4d57f46d985e8b2aee1a9ddc7fdce1ba6ad3c324c16a219ec7e5e74c5712c2a39dc985626a0db0df3ad3b432489641840c4551e976dbb147cbc66a6801fb59332703bdb982a09fd88f914794b62ab86c2f8c4c3ad3b21b505297aae02eccf3fdadb03df6ee03ecf48be12af1e586359e640973ab596f1d48193ccb8fd901667d1f5ab18470f3a940fd0a1a967d7ef2f2bdce096270c17ac0819082b11f228b996e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855c0fae374a38094bbd8c383fe9f02c4a07682f7d473d35b9d902a0278e400b4e5d0531f5763e08472b12dd46e80e1402851eb0c7b17b834de7d053547726e71018468a88eb3c2a194d4d563e23cc51ffd3142b2ec5d62d6bbb3221162666ccf207aec3e50ec5828346b112c2633a427ec1dd60e15bd7744e819b85f2991818fb7b00821180c6abc601465ff3788173bb9b537f9b794418bf7f103ba3616006c419fb92256b4922a3ce5711e283e380e4d2aad72952f66bd04bea3b8c5aa8c8a16e73382e6824a8f60f2ff20b40e1b3a6c7ac3dc0b840d0c3a96c7fefeb953d7dfa7351fe2514c26e06026e0f64de4f8e431d32a682f603a35d80ee3f81140763ce1ead5fa1f8c3b2df042a614d25b1077cec1f3c1dc91fcea40c0b7c9ef6028263aa54044a16091c1152ac04f26eae4d1c1b118a659919717fc5ec6646f0b3f8b1ad8e38345f42af67e6a64493bf5e982c4e724f80fead51e6c94d31ce8506fdc298f4b1c9b644548c895b5932fc0d48ed1b26fa0cd88e63985b1082d3d94977a23f123bb889136738e4d270a2c3b976272cfa467a8c5bdb602be0e7034669ce788dc6bdc6ca4aff0cc3b02aa4ab33abe3287a25a72bed18342dacdc2c5409633ed773b122b8d28a9b65d44c569c2a64600de563c91e92b01e0dc04e0ca9160e4064f722828142d047bac28d60e80351294ce402e022f70d363809ec7f9e5f1c792e16f378942704901aa8f559100b25d2d6f70dc740f3ece8a1e72897a527d6eb19a5b9c817e11924b67add615a186267c6f66a624981eabc7befe625a9bf3229066702c46d67ba84a679d6b09ce90eab21996f1d10a91a0394c6049e5f3cd0f7d9699fa5ff9a6fd8eb6e8909e6fc9106555c022f1e36777d81cdb0d5931aeab2e3df1afcca6df2ba4a5187baa65f7353be075987aa59048b02d8bfedf8ad75c67eda75be2cf70ec368bc1447c034749f7833a5acb5ef5029b5785a2d73c389e27f909198bb96df3f777025152e09b14283208c56f8dfb0c4fd772c59c6f41a94b6bf34d6de1a4000c2e708263de448c43749028bd49205938e821d3bc9b6f50f65e4453bce0b9614fd4dc438e2e68da96f15f2dc20d4f782362062a2376ade2beaf90da391f29760211be9f4ed5297ff75bb8128c30f7606247bfa25fc11e6924162c089f27826f9eb8d1f1ad84cac7632fe01086a2a1e98309dff4b67291ab5168f36431958e29a909915390d62e76e8cdb4fcc0961a74f7fb54fadee68afdbdaa4583aabcfb8d911a2daf2e6c0466b0c96181e288ea7a6363f7dd041bf3e8f23c9ca3abf19cbf486f70a7aac10c3d555c55c12a09ca5bc654479a40bc4466aefa20efbff97f79d4a13bb42194b5598db9574b05e7881da11e05eb3787b3ae5d76ab60173fedc39122560c529fa9485ec6b6a6ea7aefcae29cda48fb0544e1a8f6eec2211e7391ab826c0a696902574d567592ac2d8e4dac0f97998696b3f452f51f94dff62746c16f054884d50570c1e151e5a269b8b180ee593e873455695401522f7bd4c1b3c5df60d366fe2b5cff4269b19a6a9aca3d3769772a04499f910e72a81db29ffe7700169ca193ed01306638325df6891e3d850accd8be3c7292b670f2d194a2811fc2c85d42b5224c5ba73571b0852a5eb14d99b02b9efed45fa8a60872ac95ef818f3abd01c10b366fb81663fc16c75c17f57d293950a3182336c48ee92b07672a5ec65245d108a908c356867aa6224895e1316e584470faf492a34b4c8c020ce6af8a4ec0be6cf94243d49c93b90dddd9e59516e4d338d3df10dace4823f12ea69203e6c324667f18cdf31299d1819a004904ffcba48dbf2c69e2a0f4d7a0c16be5d9522f2437c92dfba3cfb08112ba8ad9e965d34b9f8b4741024e47aafa00347cedef8c98682ef0606680dd0441d3290e2c52acf82603035f633e8bd08207a8d1d7620b47ccfdbe469e4e30e6d15927ca47886b0ceb050e7619daaffabd79f1ef42e0daf937396b9a5976c26b1425f691ba81a4be3c6426635b5a0da16082b68b24aea82bee706f820ec2fd057f7eaf6b2dc1216b0502b3ac28b7256bd99f8bbe3a8298a0e9ba9f6f34ebde653cc14b0bac8ef47b7a74186778f1389f7e60ab7a5a059620c0f34fe0ed979eaaafb0589d6714bbaca4719d5061dfa4a72b8c1c573fec0801120a0fa6866d2f06e26568d69f8a8a0217ab149b9ec828a75677e4324632033f997ad8f3c07e13717b425702e1c86fe28902d8d47fe9fe7c423e810c3fad18f77b9bce44fb5ad3d79d93924c4fb126b7ae14c154a3ce4aa88c8841f009d389af6112a53cc4e4b1c948ddaa1d9ed61a36d73ef50e0e77ce281e17ed61d74450b0ffdab7d00a5dd2e72bc0c3c6b522e75290d143e426242fa7483f40257f81d3b407f1e94e5dba31bf5331304f5c1d92691d11a9a001323583d767681a96bcc502a50b7061865bb6478216303223b4cf6a047493f875b11ca06c274cfbae26f6f91bc2020eb30673e63878c1c6f01d05dec82d331fed4d02c34a7278f4de05cfa39ea96252b155a64194fef54812370107a0b3657214faa6919b96e6829cdf0f1d59f84e93eb4d0661a5c4e202c310fd9ceeb07d669e7c7878abc0c336b3f6d06bb87be7efd41e7b53cd6099cb9a7d2a75d12d192c7dab33b7dc53aa732e51e6d49b5121079b9301d2782b6287e57bc4c01af2079d5920b2e2ef2f08a08f9a00277b453058f4cf8dc5ba504e95b3a5a332f0baf0663f5021fb873bdc51c13e5ee0b7d778adfda0f66c75f2e1057eaa43a0958dec071f70d5e93a34ddd5b37e6915453b7eacd18482e72d21c6fc2db58778830075f2ec55af26b8ed7cf35aa4466f634a73886dbe321bd49edb62d50d149c1a78c6f91804c79b68138f2567c35fbefc665edb9729c129e88d20fa095d714f55b60e0d4c041c96fa037f838406bf67964352e0d78357331ea16e29125c69c6f5c49d7db8d097e044501c59bf8ac05125891472241b0ef65f0cb8626b098bbf8ab1b606f0b81ad69c33a3ba1d151ffb7f0aa198d5255597a3d30a6ae35c5fb11bda395d28fbb52431e2f75687848c04ed9bd372493bf2c65b514e699cf1b5ef30ee39b8dc2317d09a762db4f8559ab4413b925ab050fd104203ba6fac6951f85b8644c8fcf74cb07a2e8a463d8dac7434790753c8550cdb951b582414d714f347036561eba8376ba2878dd0bd6281ef3878bbe35a86a132f74838a0e9c41eafb9763031e85b1871d2cf81e9c59ca32079d4168a3518b4c7417bf1b30637176a260a4b7d4bf72ca01f0731edcf11b0d3ad15d8b3be77c47cd6b4f970e9e2fa0c823140d6341503ee0ec7364efa4365f8ed378cf7b478047837201a8a731b74c4ba0849bca82444309076b2ce572062f412a603d273664349e74540638d65ec4648a706cc636b6649f7683879e59ec5892e6607eb75b27ab5a28e439431e507e33e5bec0fe02797664aae424c9b07f36e1f9279c37f435938607bd526d82357be144eb49285bc3d8fdfb724f49980b31846da62a698abcd4161dd9d03f5fa46469808bffb11be4454d8798a1bcfbcab2cfe837ab7d6ca3604690ffade60a2f7023e37e89228941cbbe0eac8343b53dc531fb970b99aea60379966a1d01041119b7bff947ed7168c8bc406df6feb1247ab227ecf4e898cdad5e6cfb69def6c5bba78f7aa9f51a1fa36c5f46268c6c959378b29bba2ea601ab753444f3006c07cb9a87cf336b3f9c1b18b0ec7f47614e28e59183b79fa32e2964b4e78464f355bb4cca422b48798b518796568c024f84fc6d03f89dabda2e19022a0968ed9e6180e5edcc72c8be5a25dadc565757b1ac0ac5fef7ee04b260f2b096a96b2c98dabd9dea43da1bdc2d6d8fa15510956889d989587b47fbc0af3635ecf20ce859642085b69b6a91989b78d485bd297cc7d7fffe86a991ccea5c32c64fead18b9c8bfd2299a10dabe455af3e1b322f889c20b3215b32bdd1280399bfefb836d55ce5a99caac8597e97ab3ec3d5ebe1fec2328d92e7866195f20b00d53bb654f102b524494cb498a640370d5618d265af1e0adfae64ab75f340e74afb1109ce29693d52356a3c49884130d1d70e5e391553b0eaf03ef349832414b2eb1399311776c2c9f1bbe519dbffc3bd57473adacb4499cea3ab2243ec6aa7dfa463b60045178844311e5cb67664ab4ab537b2925d2ce9ee3efe68ca2d68d26af273be672beed6aff643382ed059b182057752ef6f18bac93d7d31d3cbf59967c4d14301983ae17ff0469c09c76ce05bec13822302a8d1bba1615257257e60212b8dafe6659974725f38ce735815266d71187d4cba485245bac2db7fe67ad09c7d3359f1a9d38f7150bee4d597a9f89633b7063dd39b866d64b4af396a5777692834c92124858ac14258ecd8dbc951eace7429633271b35d29ac603954d81a2e829e36584a8d3639317963ae15f495fddc2dba4ccd0878629f4d97aeef75b1a5f5b083d687acaa51879dc43f9fd247433cb76f575fbb131bfbf85d6a6c028c97c08d6e745ac5658a06ca209039259b4b934c335d991c675c9ca9b7357ff2eb817ad19fb7077a66b3bddb64e1add42f37c2727224062ffaee5a3b4010d98bce61c4072923f7622b01c37dd29726e746c96378b76c1f798aa41f7573141546d066fa7c15b871ffa382f8e028ae142771962b4868085fe6bc9e5ddd95a766d9e9c991828eae58cf286253e1e3c8ee92eb418e4714e90972b5a2172c2c164c626069a0819a4609a45354f99bc416752b2205f98e6c7821eba7ac28c0f60afc34f052a2e961e190d6f463f14b3d392fe43f9dace54b41d3dbef16225298045c045130de953535606ebc8505b75763445a10f485850d43a54632019ec2a08862ee4175e607b014fdc8da7ad9ccf53e1e712b95c9bf2e85e8db944dbb264d8e61636ec59a4cd723bea2e021bf687c6af0ec9b44e41bfbc068118e2c4ce65b8988d34fd3ad984bd32f1dcfffd41243938e3b918ccf51cbf4e19484b5acf62453a6114fc462cd7466e687039d8414361b7095ae53b25d25f015acb0d73541a4bf401592aed871461e6473a83400ceb37cdea7fb6df0ad5ecc41cd9c7a0da8375e29631d561645098e617af8ef0cd7351e294bd190522afacec8b0500c48cbb6b8d701aed18ee85bd583da15a944f8aabd96f4bc50b70e874101df01f9632954bfd71f5e101f6a2356d41c7e91f0c25f54525230b2d165bcee22de2eff35d8d4c53b1915d91304bfeb6c7ba2b79b7a878533ea32df08e9e0405881b210af2adb837aadc188acf16122a3ea7dcbfe8570a5d3fee4d106ed58504a1c4df0e112cb5e1126f4a5b6e837236cb05e21e1a96be8a1d0fc4ef0e37ace04de7573fefe193571f171fd6857f9a082e9840b184f80a91cd0e7f53d6bcc877f96f5e06682d12aedd83819f5a6f55b3e31341778d47d8420aaab2cc0b98eb6e8ae8cc6720b663218406b95525f5e5911c97cebea73615fc4146d6a4caac7a92c73ba0ab46daccc678f31bc784b81d5ad7a48ae557d13e77db7923c0f24f7e7710f6a8a8f265888b3a415258312f8e36e723b4fe164c2e58ba1bb5452b1ce2ba8e5e547d804d9c1a6740d2d414aa44db5a438b3d095ef90ba83927f3b70035113812f3ba09820126bb99f4340464dcbf2a071b7043c719d75dc2f60a7bc44ba32554dd0ee46f504fe3eb908e77c8b9bd2369e9b8af55eb1bbece292cdcee4a40707abbae83945dbd419833346572e7c0a734958c7529af1b9c1d18a5f0b2ef4d048d1ed0c3811874de46670536bdd5985a3ba7c6ae41a04831e5a1922f8639b1069447dce656224b30c15fb6aa0b9ef80d1a9700bbbbe2a750835345f9337cafa1406e72b38c59274ce64680a2172923a82be527a93d2c9be6624f7ce4ef45d6bcdfa89630db98d33d8a873d90c614e275d527b3394035a53a25d038a1b57e604b6a500fe12adc95072c8b17d79356a7e85acdf787d49aa94d0952649a2aeba573861ba2d9871b4a4c5280f543bebcf4bf8245c3258b05c369db9b307f8c3ffe0da84f775646d0a23ae9575bf08f16615cce47346f03eb03f7f1b266a10bacaa2b732a9d3dff3916e71a71b76a830f23db0e18c83cffc51fa9155da51fcd24b40f87e5f35bffc629b234328993187c5ed6bedc9083a120e64222b1552e9af82cc4e9adb69f2065336c2c3ffc179f9db83a2d8bf81d4998181191a73f349c6484eeff9fd63f0ca9c7adfd4d6c769a97de60576ba1509e0ab0efd0102e04b1a0da9a777985dca37d82e5574a39119a6c8d1ba689fe2f06d0c4b3cebc6b897c591485a6af69cf45d97ccf81fc4fd7b3b16a59d8fc7d100d94030830281c85f50011ca4c88f7ed4dcf3350a521b07efa3a06e0240b619c8768e467609fe08fa53022d3037a45cdddb67b42f7f2b9187c395d2d6edffac3bea4ca207e7262c888177780b28dd73fe087fc842c17a6f997b78d66b88b7d8a00eb40503b089786fb84ff351fc4352ee52088dd26d06d0cbe4b5ad1b168c0474c93b1e0715b24c52b2983debb829c8d4bec352cfa33850baf9d9781a33b8773efbb1d4b1f6928086e0af8faa6e78034327359c87dae14de00e7883183b119148c6db6361fdc96464deaaff9f22e3ba01bcd130d08209323f4b4d15a4a1904a61e1f3f5129f04c8b49310b0ce4aa7847ea0caa61b7af7dd6a0efee93c0e2f476fa2c99696d4ca4039270b5768384f40b7e254e3eb391f652f5bd99a6cdc8f84ad28d9ea775b5cf598f35c8e9b89c13c44a622fe7c786e72a060a7fa156ba2c87d6360ce6bc8a7cc340f8493ea7f051ea9d2a2c60c81b42a091a623ad5d9e35cc45d68d149f4a73666f5afb06b3d1c6a843283ae783092b1ada66598f295321e010efcf50f1017c014bb5b2a05331601c66f6732a01ede55c658c583a498599fc01f10e38fa237996d62c171d8344672efa442115602f6c3219ae057f45b80e7aee30b9518e15c87e8aa6a7ff90ca6a3f626e13376f2ca90caa6191258aeb40d776c68c966c26d257e889902b9acc5b97ab86e031ba9e75ea02ae724142e8ae851d868c03a65995130ded4246a720c1a9a532ac5a5c49115bced9ed81ca9b87c19673af52639636428c293319e5262b622ddbe03cd59af06d5bc8622e42120b4b14d4dd0ec788405518359829dc0cd56aa021d38563f62f461cec6b3460279c5a5da90827e7d744cfb2ca5efc1b4a22d1913223ab1c5fa70eb3dc9b94845a943b57e4c6cf43c15718e30695387834af1cdf30173566b2b00d032da78a0aed6db71c6a9c515aa127a5a03588faae40d2b1fd5da5924d7dba9ab6fdcf7a066db72018d7d1de423eea47dec2eec237ac4ca8faeae01e2e32cca87f33dc0d41bd0c1d2cf8e2f1f878e39490cd31003ffb0ffdc2b5de38316fa00cecaad70d7defa21fd52d1b7a2675658bdb3835002738eeebbfac91024051b2ea5c10791a419e51c06b71159dccecd1795a3410e6b2f93ac69e4737cd10b0c4e99edade28782925ce5366b15c8edd00a6afcf7252bb9885b0b89d945367b4be3b87188e42b950172880c6b01f23ba74097eb201ac18ad8a42b5cd33b5d014001f85e15360ec423a6eba9b06ce023b54eb395036cb8cf2e0c9c424a87dfdacbb31b34d69df79cb9b2ca68b25ba479c0d260281ffc307fe2694acbded0c8a74f3a817babcad98d3d9e89895d70d44faaf8d2504bced050381ad08fcd09fa5b867446313b7e88bc5a0af4028952f741da41a8c83c07ebbf0592363eec655ae515b1380d8d8bb8f6314f907e71b661dfcddc54bac6166ce84b82903c2b283a723ef43da98341dfc057a6d9aac2fba1f2162661c8533b909abe7325de7342f629f352d5c47f63e73b55680bb84c316bfdc2c929c70e7fc25861ab93992e7200d619105d3f837f7e6bd7cf47443d95b30b3808d8f61348ed3e0cfb3c6a784eda8f8fa258af22b64f29a1209f90f1bd0417107d45db5c2a30593f9155ed00d27536ed598038351632c7c5f306f8fd529ff7bb1b113d3baf18147c0f4789d6fb960f09dfbc0f810b26f3aaa098d07ead6da79fd98d664d74ad973a672757c17e3b2d6045b39aa540df2f9682ca74665d8593f6cac61a64613ec252d070fcdaefbe8ad37bbe74a433fb80d7193e14221cada6c345a15bba5631f8eb2ab2530550f2658cb34afef5973ec85ba8ee1c021bb7733ca216b642d56bf969d8abea6d69db8050ced9391c8ebc7993679b6a34ab677a0093db5a6bc9eec8e3828b42aadda24698609220b55f21f573a7eb742577afe1e4b06c6d689a7ffe57418d161ccd51c40d13dceb5a46218ddfb36ca2f1e6debea43a146be1a11612f956eb99d91d5517bc32bfd7d11bd7042e7c98571e70b8ed8df5a0a9468443e5b3178168ceb0051c8cd6bc8d5f2eb1bb855e4831f9c59998a0134229edad8e0feec8601ee82392de5cd07cc16d01081bec620916b12d28367fbfb967eef16d6bf798bdecc0b4efc072da4e7c558241a8c64e21c87e7ff92037944daa95f263d208f96c2b1023728844677653860bcb8d89c76b23435c27c0c01803349f3f57603463a5f17c5200f7ca5e8bc2cc9ec8a2aed43d5be3dd7e76a9a005924db6aafbd8e546c3e5153d09b939b22f4d149625d368af37ec162b3b7f119b7ceb2fa5bbba8a6a1798a0fbb3c0d67b634aab9fb5b9f09ec15e9f52c9405740d2f8383d5fc470830aa4233a7a0d920cc12081cebf604e633881d57ba87d5479f3207e04505f0bb7ae021af16b7cf2549eb72465ad31dc398d8db848ef1825cad93f927b4e6dea20f397547add97b8ecb183cd4799512a9afda0d6ea3081b6eb9b1e61f38716e20482d8b9de2e701c5f58634e331ac21be8e5c762daa0fa81c8e1285f80ccc880b31897a3b79dc5d654c9e99427ae122eeca2bb11a1b62d5b24dfaf96b1c4e8180244dcf99bd527014780986468a57113b696026a46322141ff9569f6b7a446b0c12982099fff9491564c205bfe1aaffcdaa4de275de30e6eee44e1606aeb1c5bf9589ac94a83c5e3ee57cfef54117012566889195bacc26767745410c25f1283ea9b5553c407e08128b37b5844f9cfe940decfcdbfe1117bf55f312ac0ef095a5b6c78cf4f3d720fb10e50b6bb4775908b1e7cd53fe38e1081d0083657fe878e081c3e2ca0fcaac698eff1d08cad151d3d02e42c0ee0fcfcacc129c96fd5a5cebd73beef3d10b4532d104b564b9c3a2acb4e4420746c3f677ece8a97a1ba70554ad029ed068eb8597407a27b7ebfbf6e2f6ae6492fed9aa0556cc150496ed31c8c449d0bfa67f981bea5aba89415b11d633906db804a03299c8fd5a17be4c8c203865a92848ad8663d24e6864f5fb726200/etc/alternatives/salt-call/etc/alternatives/salt-support/etc/alternatives/spm/etc/alternatives/salt/etc/alternatives/salt-api/etc/alternatives/salt-cloud/etc/alternatives/salt-cp/etc/alternatives/salt-key/etc/alternatives/salt-master/etc/alternatives/salt-minion/etc/alternatives/salt-proxy/etc/alternatives/salt-run/etc/alternatives/salt-ssh/etc/alternatives/salt-syndic/etc/alternatives/zyppnotify@@@@@@@@@@@@@@@rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootsalt-3006.0-150500.4.57.2.src.rpmbundled(python3-tornado)python3-saltpython3-salt(aarch-64)salt-call @@@ @      /bin/sh/bin/sh/bin/sh/bin/sh/bin/sh/usr/bin/env/usr/bin/python3.6fileiputilslibzypp(plugin:system)python(abi)python3-Jinja2python3-M2Cryptopython3-MarkupSafepython3-PyYAMLpython3-basepython3-contextvarspython3-distropython3-looseversionpython3-msgpack-pythonpython3-packagingpython3-psutilpython3-pyzmqpython3-requestspython3-rpmpython3-xmlpython3-zypp-pluginrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)saltsudoupdate-alternatives03.60.32.2.01.0.03.0.4-14.6.0-14.0.4-14.0-15.2-13006.0-150500.4.57.24.14.3hg@hcg@g@f5fxfb@f:feee@@e%]9]%@]#0@]]@] u@]@]@\\ \t@\\@\\\s@\-@\\8\\w@\w@\v{\HW@\?\=@\8@\73\73\/J\-@\-@\l@\&@[@[@[%@[ٙ@[G[Ѱ@[u[$@[$@[[[;@[@[F[ @[[[@[[:@[[@[^ZnZ@Z4@ZK@ZmZ3@Z3@Za@ZZľ@ZZZ2@Z@Z@ZZZZZ@ZkZZw@Z%Z@V>@VIV@VU@VVVŲ@V`VwVwV&@V@V@V@V_V@VvVvV@V<@VwVrVpVhV]V]V\:@VV@VUVO @VEV@VVVVVVV@V@V@V@V@V @V @V @VVVf@V@V @V }@V@VBVBU@U@UUUp=U`kUUUJ@U3U:TܕTTWn@T?@vzhestkov@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.commarek.czernek@suse.comyeray.gutierrez@suse.commarek.czernek@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.comyeray.gutierrez@suse.compablo.suarezhernandez@suse.comalexander.graul@suse.comalexander.graul@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.comvzhestkov@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.comyeray.gutierrez@suse.compablo.suarezhernandez@suse.comalexander.graul@suse.comalexander.graul@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.comalexander.graul@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.comvictor.zhestkov@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.comalexander.graul@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.comjbreuer@suse.depablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.comjbreuer@suse.depablo.suarezhernandez@suse.compablo.suarezhernandez@suse.comjbreuer@suse.dejbreuer@suse.depablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.comjbreuer@suse.dejbreuer@suse.dejbreuer@suse.dejbreuer@suse.depablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.commihai.dinca@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.commihai.dinca@suse.commihai.dinca@suse.compablo.suarezhernandez@suse.commihai.dinca@suse.compablo.suarezhernandez@suse.comjbreuer@suse.depablo.suarezhernandez@suse.compablo.suarezhernandez@suse.comjbreuer@suse.depablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.comjbreuer@suse.dejbreuer@suse.demihai.dinca@suse.comjbreuer@suse.depablo.suarezhernandez@suse.commihai.dinca@suse.commihai.dinca@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.commihai.dinca@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compsuarezhernandez@suse.compsuarezhernandez@suse.compsuarezhernandez@suse.compsuarezhernandez@suse.compsuarezhernandez@suse.commihai.dinca@suse.compsuarezhernandez@suse.commdinca@suse.demdinca@suse.depsuarezhernandez@suse.commdinca@suse.dejbreuer@suse.dejbreuer@suse.dejbreuer@suse.debo@suse.depsuarezhernandez@suse.combo@suse.depsuarezhernandez@suse.commdinca@suse.debo@suse.debo@suse.debo@suse.debo@suse.depsuarezhernandez@suse.combo@suse.debo@suse.debo@suse.depsuarezhernandez@suse.combo@suse.dejbreuer@suse.depsuarezhernandez@suse.combo@suse.debo@suse.debo@suse.debo@suse.debo@suse.debo@suse.depsuarezhernandez@suse.compsuarezhernandez@suse.combo@suse.debo@suse.debo@suse.depsuarezhernandez@suse.compsuarezhernandez@suse.compsuarezhernandez@suse.commihai.dinca@suse.combo@suse.demihai.dinca@suse.comjbreuer@suse.dejbreuer@suse.depsuarezhernandez@suse.comjbreuer@suse.depsuarezhernandez@suse.compsuarezhernandez@suse.compsuarezhernandez@suse.commdinca@suse.demdinca@suse.demdinca@suse.demdinca@suse.demc@suse.demdinca@suse.demdinca@suse.demdinca@suse.depsuarezhernandez@suse.commc@suse.demichele.bologna@suse.commdinca@suse.demdinca@suse.demc@suse.demc@suse.demdinca@suse.demdinca@suse.demdinca@suse.demdinca@suse.demdinca@suse.demdinca@suse.demdinca@suse.dejbreuer@suse.dejbreuer@suse.demdinca@suse.dejbreuer@suse.depablo.suarezhernandez@suse.compablo.suarezhernandez@suse.combmaryniuk@suse.combmaryniuk@suse.compablo.suarezhernandez@suse.comjrenner@suse.comjbreuer@suse.demichele.bologna@suse.commc@suse.commihai.dinca@suse.commihai.dinca@suse.commihai.dinca@suse.commihai.dinca@suse.commihai.dinca@suse.commihai.dinca@suse.commihai.dinca@suse.comdimstar@opensuse.orgmihai.dinca@suse.commihai.dinca@suse.commdinca@suse.dejbreuer@suse.debmaryniuk@suse.combmaryniuk@suse.combmaryniuk@suse.compablo.suarezhernandez@suse.comjbreuer@suse.dejbreuer@suse.depablo.suarezhernandez@suse.comjbreuer@suse.dejbreuer@suse.dejbreuer@suse.dejrenner@suse.combrejoc@gmail.compablo.suarezhernandez@suse.combmaryniuk@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.commc@suse.commc@suse.combmaryniuk@suse.combmaryniuk@suse.combmaryniuk@suse.commc@suse.commc@suse.commc@suse.combmaryniuk@suse.combmaryniuk@suse.combmaryniuk@suse.combmaryniuk@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.combmaryniuk@suse.commalbu@suse.compablo.suarezhernandez@suse.combmaryniuk@suse.combmaryniuk@suse.combmaryniuk@suse.compablo.suarezhernandez@suse.combmaryniuk@suse.commoio@suse.combmaryniuk@suse.compkazmierczak@suse.compablo.suarezhernandez@suse.commihai.dinca@suse.commc@suse.commihai.dinca@suse.commihai.dinca@suse.commihai.dinca@suse.compablo.suarezhernandez@suse.commihai.dinca@suse.combmaryniuk@suse.compablo.suarezhernandez@suse.combmaryniuk@suse.compablo.suarezhernandez@suse.commalbu@suse.commc@suse.depablo.suarezhernandez@suse.compablo.suarezhernandez@suse.commihai.dinca@suse.commihai.dinca@suse.commihai.dinca@suse.comkkaempf@suse.comkkaempf@suse.commc@suse.compablo.suarezhernandez@suse.combmaryniuk@suse.compablo.suarezhernandez@suse.commihai.dinca@suse.commihai.dinca@suse.commc@suse.commc@suse.demihai.dinca@suse.comMichele.Bologna@suse.combmaryniuk@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.combmaryniuk@suse.commc@suse.demihai.dinca@suse.combmaryniuk@suse.commihai.dinca@suse.combmaryniuk@suse.combmaryniuk@suse.combmaryniuk@suse.compablo.suarezhernandez@suse.commc@suse.dedmacvicar@suse.debmaryniuk@suse.combmaryniuk@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.combmaryniuk@suse.combmaryniuk@suse.compablo.suarezhernandez@suse.commc@suse.detserong@suse.compablo.suarezhernandez@suse.commihai.dinca@suse.compablo.suarezhernandez@suse.combmaryniuk@suse.combmaryniuk@suse.combmaryniuk@suse.comtserong@suse.compablo.suarezhernandez@suse.compablo.suarezhernandez@suse.combmaryniuk@suse.combmaryniuk@suse.combmaryniuk@suse.combmaryniuk@suse.combmaryniuk@suse.commc@suse.debmaryniuk@suse.combmaryniuk@suse.commc@suse.commc@suse.comkkaempf@suse.commc@suse.commc@suse.combmaryniuk@suse.combmaryniuk@suse.commc@suse.combmaryniuk@suse.comkkaempf@suse.comtampakrap@opensuse.orgmc@suse.demc@suse.debmaryniuk@suse.commc@suse.demc@suse.demc@suse.demc@suse.demc@suse.demc@suse.deaboe76@gmail.combmaryniuk@suse.combmaryniuk@suse.comdmacvicar@suse.dekkaempf@suse.combmaryniuk@suse.combmaryniuk@suse.combmaryniuk@suse.combmaryniuk@suse.combmaryniuk@suse.comkkaempf@suse.comdmacvicar@suse.dedmacvicar@suse.dekkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comaboe76@gmail.combmaryniuk@suse.commrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.deaboe76@gmail.commrueckert@suse.detampakrap@opensuse.orgtoddrme2178@gmail.comdmacvicar@suse.dedmacvicar@suse.dedmacvicar@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.dedmacvicar@suse.dedmacvicar@suse.dedmacvicar@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.detampakrap@opensuse.orgtampakrap@opensuse.orginfroma@gmail.comtoddrme2178@gmail.comtoddrme2178@gmail.comaboe76@gmail.cominfroma@gmail.cominfroma@gmail.comtampakrap@opensuse.orgaboe76@gmail.combwiedemann@suse.comaboe76@gmail.comaboe76@gmail.comaboe76@gmail.comaboe76@gmail.comaboe76@gmail.comaboe76@gmail.comaboe76@gmail.comaboe76@gmail.comaboe76@gmail.comaboe76@gmail.comaboe76@gmail.com- Add `minion_legacy_req_warnings` option to avoid noisy warnings - Require M2Crypto >= 0.44.0 for SUSE Family distros - Added: * add-minion_legacy_req_warnings-option-to-avoid-noisy.patch- Prevent tests failures when pygit2 is not present - Several fixes for security issues (bsc#1244561, CVE-2024-38822) (bsc#1244564, CVE-2024-38823) (bsc#1244565, CVE-2024-38824) (bsc#1244566, CVE-2024-38825) (bsc#1244567, CVE-2025-22240) (bsc#1244568, CVE-2025-22236) (bsc#1244570, CVE-2025-22241) (bsc#1244571, CVE-2025-22237) (bsc#1244572, CVE-2025-22238) (bsc#1244574, CVE-2025-22239) (bsc#1244575, CVE-2025-22242) * Request server hardening * Prevent traversal in local_cache::save_minions * Add test and fix for file_recv cve * Fix traversal in gitfs find_file * Fix traversal in salt.utils.virt * Fix traversal in pub_ret * Reasonable failures when pillars timeout * Make send_req_async wait longer * Remove token to prevent decoding errors * Fix checking of non-url style git remotes * Allow subdirs in GitFS find_file check - Add subsystem filter to udev.exportdb (bsc#1236621) - tornado.httputil: raise errors instead of logging in multipart/form-data parsing (CVE-2025-47287, bsc#1243268) - Fix Ubuntu 24.04 edge-case test failures - Fix broken tests for Ubuntu 24.04 - Fix refresh of osrelease and related grains on Python 3.10+ - Make "salt" package to obsolete "python3-salt" package on SLE15SP7+ - Fix issue requiring proper Python flavor for dependencies and recommended package - Added: * fix-tests-issues-in-salt-shaker-environments-721.patch * several-fixes-for-security-issues.patch * add-subsystem-filter-to-udev.exportdb-bsc-1236621-71.patch * fix-of-cve-2025-47287-bsc-1243268-718.patch * fix-ubuntu-24.04-specific-failures-716.patch * fix-debian-tests-715.patch * fix-refresh-of-osrelease-and-related-grains-on-pytho.patch- Fix aptpkg 'NoneType object has no attribute split' error - Detect openEuler as RedHat family OS - Ensure the correct crypt module is loaded - Implement multiple inventory for ansible.targets - Make x509 module compatible with M2Crypto 0.44.0 - Remove deprecated code from x509.certificate_managed test mode - Move logrotate config to /usr/etc/logrotate.d where possible - Add DEB822 apt repository format support - Make Salt-SSH work with all SSH passwords (bsc#1215484) - Fix issue of using update-alternatives with alts (#105) - Fix virt_query outputter and add support for block devices - Make _auth calls visible with master stats - Repair mount.fstab_present always returning pending changes - Set virtual grain in Podman systemd container - Fix crash due wrong client reference on `SaltMakoTemplateLookup` - Enhace batch async and fix some detected issues - Enhacement of Salt packaging * Use update-alternatives for all salt scripts * Use flexible dependencies for the subpackages * Make salt-minion to require flavored zypp-plugin * Make zyppnotify to use update-alternatives * Drop unused yumnotify plugin * Add dependency to python3-dnf-plugins-core for RHEL based - Fix tests failures after "repo.saltproject.io" deprecation - Fix error to stat '/root/.gitconfig' on gitfs (bsc#1230944) (bsc#1234881) (bsc#1220905) - Adapt to removal of hex attribute in pygit2 v1.15.0 (bsc#1230642) - Enhance smart JSON parsing when garbage is present (bsc#1231605) - Fix virtual grains for VMs running on Nutanix AHV (bsc#1234022) - Fix issues running on Python 3.12 and 3.13 - Added: * fix-deb822-nonetype-object-has-no-attribute-split-71.patch * detect-openeuler-as-redhat-family-os.patch * ensure-the-correct-crypt-module-is-loaded.patch * implement-multiple-inventory-for-ansible.targets.patch * make-x509-module-compatible-with-m2crypto-0.44.0.patch * remove-deprecated-code-from-x509.certificate_managed.patch * add-deb822-apt-source-format-support-692.patch * remove-password-from-shell-after-functional-text-mat.patch * repair-virt_query-outputter-655.patch * make-_auth-calls-visible-with-master-stats-696.patch * repair-fstab_present-test-mode-702.patch * set-virtual-grain-in-podman-systemd-container-703.patch * fixed-file-client-private-attribute-reference-on-sal.patch * backport-batch-async-fixes-and-improvements-701.patch * fix-tests-failures-after-repo.saltproject.io-depreca.patch * fix-failed-to-stat-root-.gitconfig-issue-on-gitfs-bs.patch * update-for-deprecation-of-hex-in-pygit2-1.15.0-and-a.patch * enhance-find_json-garbage-filtering-bsc-1231605-688.patch * fix-virtual-grains-for-vms-running-on-nutanix-ahv-bs.patch * fix-issues-that-break-salt-in-python-3.12-and-3.13-6.patch- Revert setting SELinux context for minion service (bsc#1233667) - Remove System V init support - Make systemd the only supported init system by removing System V init and insserv references - Ensure package builds with no init system dependencies if built without systemd (for example for use in containers) - Apply some spec-cleaner suggestions (update copyright year, sort requirements, adjust spacing) - Signed-off-by: Georg Pfuetzenreuter - Fix the condition of alternatives for Tumbleweed and Leap 16 - Use update-alternatives for salt-call and fix builing on EL8 - Build all python bindings for all flavors - Make minion reconnecting on changing master IP (bsc#1228182) - Handle logger exception when flushing already closed file - Include passlib as a recommended dependency - Make Salt Bundle more tolerant to long running jobs (bsc#1228690) - Fix additional x509 tests and test_suse tests for SLE12 - Added: * handle-logger-flushing-already-closed-file-686.patch * make-minion-reconnecting-on-changing-master-ip-bsc-1.patch * revert-setting-selinux-context-for-minion-service-bs.patch * enhance-cleanup-mechanism-after-salt-bundle-upgrade-.patch * fix-x509-private-key-tests-and-test_suse-on-sle12-68.patch- Fix failing x509 tests with OpenSSL < 1.1 - Avoid explicit reading of /etc/salt/minion (bsc#1220357) - Allow NamedLoaderContexts to be returned from loader - Revert the change making reactor less blocking (bsc#1230322) - Use --cachedir for extension_modules in salt-call (bsc#1226141) - Prevent using SyncWrapper with no reason - Fix the SELinux context for Salt Minion service (bsc#1219041) - Set contextvars as a build requirement for package - Increase warn_until_date date for code we still support - The test_debian test now uses port 80 for ubuntu keyserver - Fix too frequent systemd service restart in test_system test - Avoid crash on wrong output of systemctl version (bsc#1229539) - Improve error handling with different OpenSSL versions - Remove redundant run_func from salt.master.MWorker._handle_aes - Fix cloud minion configuration for multiple masters (bsc#1229109) - Use Pygit2 id instead of deprecated oid in gitfs - Fix few failing tests to work with both Salt and Salt bundle - Skip testing unsupported OpenSSL crypto algorithms - Added: * revert-the-change-making-reactor-less-blocking-bsc-1.patch * fix-x509-test-fails-on-old-openssl-systems-682.patch * prevent-using-syncwrapper-with-no-reason.patch * avoid-crash-on-wrong-output-of-systemctl-version-bsc.patch * allow-namedloadercontexts-to-be-returned-from-loader.patch * fix-deprecated-code-677.patch * fix-test_debian-to-work-in-our-infrastructure-676.patch * fix-the-selinux-context-for-salt-minion-service-bsc-.patch * use-cachedir-for-extension_modules-in-salt-call-bsc-.patch * fix-test_system-flaky-setup_teardown-fn.patch * join-masters-if-it-is-a-list-671.patch * replace-use-of-pygit2-deprecated-and-removed-1.15.0-.patch * remove-redundant-run_func-from-salt.master.mworker._.patch * make-tests-compatible-with-venv-bundle.patch * avoid-explicit-reading-of-etc-salt-minion-bsc-122035.patch * skip-more-tests-related-to-old-openssl-algorithms.patch * improve-error-handling-with-different-openssl-versio.patch- Fix rich rule comparison in firewalld module (bsc#1222684) - test_vultrpy: adjust test expectation to prevent failure after Debian 10 EOL - Make auth.pam more robust with Salt Bundle and fix tests - Fix performance of user.list_groups with many remote groups - Fix "status.diskusage" function and exclude some tests for Salt Bundle - Skip certain tests if necessary for some OSes and set flaky ones - Add a timer to delete old env post update for venv-minion - Several fixes for tests to avoid errors and failures in some OSes - Added: * firewalld-normalize-new-rich-rules-before-comparing-.patch * several-fixes-for-tests-to-avoid-errors-and-failures.patch * test_vultrpy-adjust-test-expectation-to-prevent-fail.patch * fix-status.diskusage-and-exclude-some-tests-to-run-w.patch * skip-certain-tests-if-necessary-and-mark-some-flaky-.patch * some-more-small-tests-fixes-enhancements-661.patch * provide-systemd-timer-unit.patch * fix-user.list_groups-omits-remote-groups.patch- Speed up salt.matcher.confirm_top by using __context__ - Do not call the async wrapper calls with the separate thread - Prevent OOM with high amount of batch async calls (bsc#1216063) - Add missing contextvars dependency in salt.version - Skip tests for unsupported algorithm on old OpenSSL version - Remove redundant `_file_find` call to the master - Prevent possible exception in tornado.concurrent.Future._set_done - Make reactor engine less blocking the EventPublisher - Make salt-master self recoverable on killing EventPublisher - Improve broken events catching and reporting - Make logging calls lighter - Remove unused import causing delays on starting salt-master - Mark python3-CherryPy as recommended package for the testsuite - Added: * skip-tests-for-unsupported-algorithm-on-old-openssl-.patch * make-reactor-engine-less-blocking-the-eventpublisher.patch * remove-unused-import-causing-delays-on-starting-salt.patch * make-logging-calls-lighter.patch * remove-redundant-_file_find-call-to-the-master.patch * prevent-possible-exception-in-tornado.concurrent.fut.patch * do-not-call-the-async-wrapper-calls-with-the-separat.patch * add-missing-contextvars-dependency-in-salt.version.patch * prevent-oom-with-high-amount-of-batch-async-calls-bs.patch * speed-up-salt.matcher.confirm_top-by-using-__context.patch * improve-broken-events-catching-and-reporting.patch * make-salt-master-self-recoverable-on-killing-eventpu.patch- Make "man" a recommended package instead of required- Convert oscap output to UTF-8 - Make Salt compatible with Python 3.11 - Ignore non-ascii chars in oscap output (bsc#1219001) - Fix detected issues in Salt tests when running on VMs - Make importing seco.range thread safe (bsc#1211649) - Fix problematic tests and allow smooth tests executions on containers - Discover Ansible playbook files as "*.yml" or "*.yaml" files (bsc#1211888) - Provide user(salt)/group(salt) capabilities for RPM 4.19 - Extend dependencies for python3-salt-testsuite and python3-salt packages - Improve Salt and testsuite packages multibuild - Enable multibuilld and create test flavor - Prevent exceptions with fileserver.update when called via state (bsc#1218482) - Improve pip target override condition with VENV_PIP_TARGET environment variable (bsc#1216850) - Fixed KeyError in logs when running a state that fails - Added: * make-importing-seco.range-thread-safe-bsc-1211649.patch * fixed-keyerror-in-logs-when-running-a-state-that-fai.patch * allow-kwargs-for-fileserver-roots-update-bsc-1218482.patch * decode-oscap-byte-stream-to-string-bsc-1219001.patch * fix-problematic-tests-and-allow-smooth-tests-executi.patch * discover-both-.yml-and-.yaml-playbooks-bsc-1211888.patch * fix-salt-warnings-and-testuite-for-python-3.11-635.patch * switch-oscap-encoding-to-utf-8-639.patch * fix-tests-failures-and-errors-when-detected-on-vm-ex.patch * improve-pip-target-override-condition-with-venv_pip_.patch- Prevent directory traversal when creating syndic cache directory on the master (CVE-2024-22231, bsc#1219430) - Prevent directory traversal attacks in the master's serve_file method (CVE-2024-22232, bsc#1219431) - Added: * fix-cve-2024-22231-and-cve-2024-22232-bsc-1219430-bs.patch- Ensure that pillar refresh loads beacons from pillar without restart - Fix the aptpkg.py unit test failure - Prefer unittest.mock to python-mock in test suite - Enable "KeepAlive" probes for Salt SSH executions (bsc#1211649) - Revert changes to set Salt configured user early in the stack (bsc#1216284) - Align behavior of some modules when using salt-call via symlink (bsc#1215963) - Fix gitfs "__env__" and improve cache cleaning (bsc#1193948) - Remove python-boto dependency for the python3-salt-testsuite package for Tumbleweed - Added: * enable-keepalive-probes-for-salt-ssh-executions-bsc-.patch * update-__pillar__-during-pillar_refresh.patch * fix-gitfs-__env__-and-improve-cache-cleaning-bsc-119.patch * dereference-symlinks-to-set-proper-__cli-opt-bsc-121.patch * prefer-unittest.mock-for-python-versions-that-are-su.patch * fix-the-aptpkg.py-unit-test-failure.patch * revert-make-sure-configured-user-is-properly-set-by-.patch- Randomize pre_flight_script path (CVE-2023-34049 bsc#1215157) - Allow all primitive grain types for autosign_grains (bsc#1214477) - Added: * fix-cve-2023-34049-bsc-1215157.patch * allow-all-primitive-grain-types-for-autosign_grains-.patch- Fix optimization_order opt to prevent testsuite fails - Improve salt.utils.json.find_json to avoid fails (bsc#1213293) - Use salt-call from salt bundle with transactional_update - Only call native_str on curl_debug message in tornado when needed - Implement the calling for batch async from the salt CLI - Fix calculation of SLS context vars when trailing dots on targetted sls/state (bsc#1213518) - Rename salt-tests to python3-salt-testsuite - Added: * fix-optimization_order-opt-to-prevent-test-fails.patch * fix-calculation-of-sls-context-vars-when-trailing-do.patch * implement-the-calling-for-batch-async-from-the-salt-.patch * improve-salt.utils.json.find_json-bsc-1213293.patch * use-salt-call-from-salt-bundle-with-transactional_up.patch * only-call-native_str-on-curl_debug-message-in-tornad.patch- Fix inconsistency in reported version by egg-info metadata (bsc#1215489) - Added: * write-salt-version-before-building-when-using-with-s.patch- Revert usage of long running REQ channel to prevent possible missing responses on requests and dublicated responses (bsc#1213960, bsc#1213630, bsc#1213257) - Fix gitfs cachedir basename to avoid hash collisions (bsc#1193948, bsc#1214797, CVE-2023-20898) - Added: * fixed-gitfs-cachedir_basename-to-avoid-hash-collisio.patch * revert-usage-of-long-running-req-channel-bsc-1213960.patch- Make sure configured user is properly set by Salt (bsc#1210994) - Do not fail on bad message pack message (bsc#1213441, CVE-2023-20897) - Fix broken tests to make them running in the testsuite - Prevent possible exceptions on salt.utils.user.get_group_dict (bsc#1212794) - Create minion_id with reproducible mtime - Fix detection of Salt codename by "salt_version" execution module - Fix regression: multiple values for keyword argument 'saltenv' (bsc#1212844) - Fix the regression of user.present state when group is unset (bsc#1212855) - Fix zypper repositories always being reconfigured - Fix utf8 handling in 'pass' renderer and make it more robust - Added: * make-sure-configured-user-is-properly-set-by-salt-bs.patch * prevent-possible-exceptions-on-salt.utils.user.get_g.patch * mark-salt-3006-as-released-586.patch * fix-the-regression-of-user.present-state-when-group-.patch * fix-tests-to-make-them-running-with-salt-testsuite.patch * fix-utf8-handling-in-pass-renderer-and-make-it-more-.patch * do-not-fail-on-bad-message-pack-message-bsc-1213441-.patch * zypper-pkgrepo-alreadyconfigured-585.patch * fix-regression-multiple-values-for-keyword-argument-.patch- Prevent _pygit2.GitError: error loading known_hosts when $HOME is not set (bsc#1210994) - Fix ModuleNotFoundError and other issues raised by salt-support module (bsc#1211591) - tornado: Fix an open redirect in StaticFileHandler (CVE-2023-28370, bsc#1211741) - Added: * 3006.0-prevent-_pygit2.giterror-error-loading-known_.patch * fix-some-issues-detected-in-salt-support-cli-module-.patch * tornado-fix-an-open-redirect-in-staticfilehandler-cv.patch- Make master_tops compatible with Salt 3000 and older minions (bsc#1212516) (bsc#1212517) - Added: * make-master_tops-compatible-with-salt-3000-and-older.patch- Avoid failures due transactional_update module not available in Salt 3006.0 (bsc#1211754) - Added: * define-__virtualname__-for-transactional_update-modu.patch- Avoid conflicts with Salt dependencies versions (bsc#1211612) - Added: * avoid-conflicts-with-dependencies-versions-bsc-12116.patch- Update to Salt release version 3006.0 (jsc#PED-3139) * See release notes: https://docs.saltproject.io/en/latest/topics/releases/3006.0.html - Add python3-looseversion as new dependency for salt - Add python3-packaging as new dependency for salt - Drop conflictive patch dicarded from upstream - Fix SLS rendering error when Jinja macros are used - Fix version detection and avoid building and testing failures - Added: * fix-version-detection-and-avoid-building-and-testing.patch * make-sure-the-file-client-is-destroyed-upon-used.patch - Modified: * 3005.1-implement-zypper-removeptf-573.patch * activate-all-beacons-sources-config-pillar-grains.patch * add-custom-suse-capabilities-as-grains.patch * add-environment-variable-to-know-if-yum-is-invoked-f.patch * add-migrated-state-and-gpg-key-management-functions-.patch * add-publish_batch-to-clearfuncs-exposed-methods.patch * add-salt-ssh-support-with-venv-salt-minion-3004-493.patch * add-sleep-on-exception-handling-on-minion-connection.patch * add-standalone-configuration-file-for-enabling-packa.patch * add-support-for-gpgautoimport-539.patch * allow-vendor-change-option-with-zypper.patch * async-batch-implementation.patch * avoid-excessive-syslogging-by-watchdog-cronjob-58.patch * bsc-1176024-fix-file-directory-user-and-group-owners.patch * change-the-delimeters-to-prevent-possible-tracebacks.patch * control-the-collection-of-lvm-grains-via-config.patch * debian-info_installed-compatibility-50453.patch * dnfnotify-pkgset-plugin-implementation-3002.2-450.patch * do-not-load-pip-state-if-there-is-no-3rd-party-depen.patch * don-t-use-shell-sbin-nologin-in-requisites.patch * drop-serial-from-event.unpack-in-cli.batch_async.patch * early-feature-support-config.patch * enable-passing-a-unix_socket-for-mysql-returners-bsc.patch * enhance-openscap-module-add-xccdf_eval-call-386.patch * fix-bsc-1065792.patch * fix-for-suse-expanded-support-detection.patch * fix-issue-2068-test.patch * fix-missing-minion-returns-in-batch-mode-360.patch * fix-ownership-of-salt-thin-directory-when-using-the-.patch * fix-regression-with-depending-client.ssh-on-psutil-b.patch * fix-salt-ssh-opts-poisoning-bsc-1197637-3004-501.patch * fix-salt.utils.stringutils.to_str-calls-to-make-it-w.patch * fix-the-regression-for-yumnotify-plugin-456.patch * fix-traceback.print_exc-calls-for-test_pip_state-432.patch * fixes-for-python-3.10-502.patch * include-aliases-in-the-fqdns-grains.patch * info_installed-works-without-status-attr-now.patch * let-salt-ssh-use-platform-python-binary-in-rhel8-191.patch * make-aptpkg.list_repos-compatible-on-enabled-disable.patch * make-setup.py-script-to-not-require-setuptools-9.1.patch * pass-the-context-to-pillar-ext-modules.patch * prevent-affection-of-ssh.opts-with-lazyloader-bsc-11.patch * prevent-pkg-plugins-errors-on-missing-cookie-path-bs.patch * prevent-shell-injection-via-pre_flight_script_args-4.patch * read-repo-info-without-using-interpolation-bsc-11356.patch * restore-default-behaviour-of-pkg-list-return.patch * return-the-expected-powerpc-os-arch-bsc-1117995.patch * revert-fixing-a-use-case-when-multiple-inotify-beaco.patch * run-salt-api-as-user-salt-bsc-1064520.patch * run-salt-master-as-dedicated-salt-user.patch * save-log-to-logfile-with-docker.build.patch * skip-package-names-without-colon-bsc-1208691-578.patch * switch-firewalld-state-to-use-change_interface.patch * temporary-fix-extend-the-whitelist-of-allowed-comman.patch * update-target-fix-for-salt-ssh-to-process-targets-li.patch * use-adler32-algorithm-to-compute-string-checksums.patch * use-rlock-to-avoid-deadlocks-in-salt-ssh.patch * use-salt-bundle-in-dockermod.patch * x509-fixes-111.patch * zypperpkg-ignore-retcode-104-for-search-bsc-1176697-.patch - Removed: * add-amazon-ec2-detection-for-virtual-grains-bsc-1195.patch * add-support-for-name-pkgs-and-diff_attr-parameters-t.patch * align-amazon-ec2-nitro-grains-with-upstream-pr-bsc-1.patch * allow-entrypoint-compatibility-for-importlib-metadat.patch * clarify-pkg.installed-pkg_verify-documentation.patch * detect-module.run-syntax.patch * fix-salt.states.file.managed-for-follow_symlinks-tru.patch * fix-state.apply-in-test-mode-with-file-state-module-.patch * fix-test_ipc-unit-tests.patch * fixes-pkg.version_cmp-on-openeuler-systems-and-a-few.patch * fopen-workaround-bad-buffering-for-binary-mode-563.patch * ignore-erros-on-reading-license-files-with-dpkg_lowp.patch * ignore-extend-declarations-from-excluded-sls-files.patch * ignore-non-utf8-characters-while-reading-files-with-.patch * include-stdout-in-error-message-for-zypperpkg-559.patch * make-pass-renderer-configurable-other-fixes-532.patch * make-sure-saltcacheloader-use-correct-fileclient-519.patch * normalize-package-names-once-with-pkg.installed-remo.patch * retry-if-rpm-lock-is-temporarily-unavailable-547.patch * set-default-target-for-pip-from-venv_pip_target-envi.patch * state.apply-don-t-check-for-cached-pillar-errors.patch * state.orchestrate_single-does-not-pass-pillar-none-4.patch- Require python3-jmespath runtime dependency (bsc#1209233) - Fix problem with detecting PTF packages (bsc#1208691) - Fixes pkg.version_cmp on openEuler systems and a few other OS flavors - Make pkg.remove function from zypperpkg module to handle also PTF packages - Added: * 3005.1-implement-zypper-removeptf-573.patch * skip-package-names-without-colon-bsc-1208691-578.patch * fixes-pkg.version_cmp-on-openeuler-systems-and-a-few.patch- Update to Salt release version 3005.1 (jsc#PED-3042) - See release notes: https://docs.saltstack.com/en/latest/topics/releases/3005.1.html - Allow entrypoint compatibility for "importlib-metadata>=5.0.0" (bsc#1207071) - Add missing patch after rebase to fix collections Mapping issues - Prevent deadlocks in salt-ssh executions - Create new salt-tests subpackage containing Salt tests - Added: * allow-entrypoint-compatibility-for-importlib-metadat.patch * use-rlock-to-avoid-deadlocks-in-salt-ssh.patch - Modified: * activate-all-beacons-sources-config-pillar-grains.patch * add-amazon-ec2-detection-for-virtual-grains-bsc-1195.patch * add-custom-suse-capabilities-as-grains.patch * add-environment-variable-to-know-if-yum-is-invoked-f.patch * add-migrated-state-and-gpg-key-management-functions-.patch * add-publish_batch-to-clearfuncs-exposed-methods.patch * add-salt-ssh-support-with-venv-salt-minion-3004-493.patch * add-sleep-on-exception-handling-on-minion-connection.patch * add-standalone-configuration-file-for-enabling-packa.patch * add-support-for-gpgautoimport-539.patch * add-support-for-name-pkgs-and-diff_attr-parameters-t.patch * align-amazon-ec2-nitro-grains-with-upstream-pr-bsc-1.patch * allow-vendor-change-option-with-zypper.patch * async-batch-implementation.patch * avoid-excessive-syslogging-by-watchdog-cronjob-58.patch * bsc-1176024-fix-file-directory-user-and-group-owners.patch * change-the-delimeters-to-prevent-possible-tracebacks.patch * clarify-pkg.installed-pkg_verify-documentation.patch * control-the-collection-of-lvm-grains-via-config.patch * debian-info_installed-compatibility-50453.patch * detect-module.run-syntax.patch * dnfnotify-pkgset-plugin-implementation-3002.2-450.patch * do-not-load-pip-state-if-there-is-no-3rd-party-depen.patch * don-t-use-shell-sbin-nologin-in-requisites.patch * drop-serial-from-event.unpack-in-cli.batch_async.patch * early-feature-support-config.patch * enable-passing-a-unix_socket-for-mysql-returners-bsc.patch * enhance-openscap-module-add-xccdf_eval-call-386.patch * fix-bsc-1065792.patch * fixes-for-python-3.10-502.patch * fix-for-suse-expanded-support-detection.patch * fix-issue-2068-test.patch * fix-missing-minion-returns-in-batch-mode-360.patch * fix-ownership-of-salt-thin-directory-when-using-the-.patch * fix-regression-with-depending-client.ssh-on-psutil-b.patch * fix-salt-ssh-opts-poisoning-bsc-1197637-3004-501.patch * fix-salt.states.file.managed-for-follow_symlinks-tru.patch * fix-salt.utils.stringutils.to_str-calls-to-make-it-w.patch * fix-state.apply-in-test-mode-with-file-state-module-.patch * fix-test_ipc-unit-tests.patch * fix-the-regression-for-yumnotify-plugin-456.patch * fix-traceback.print_exc-calls-for-test_pip_state-432.patch * fopen-workaround-bad-buffering-for-binary-mode-563.patch * ignore-erros-on-reading-license-files-with-dpkg_lowp.patch * ignore-extend-declarations-from-excluded-sls-files.patch * ignore-non-utf8-characters-while-reading-files-with-.patch * include-aliases-in-the-fqdns-grains.patch * include-stdout-in-error-message-for-zypperpkg-559.patch * info_installed-works-without-status-attr-now.patch * let-salt-ssh-use-platform-python-binary-in-rhel8-191.patch * make-aptpkg.list_repos-compatible-on-enabled-disable.patch * make-pass-renderer-configurable-other-fixes-532.patch * make-setup.py-script-to-not-require-setuptools-9.1.patch * make-sure-saltcacheloader-use-correct-fileclient-519.patch * normalize-package-names-once-with-pkg.installed-remo.patch * pass-the-context-to-pillar-ext-modules.patch * prevent-affection-of-ssh.opts-with-lazyloader-bsc-11.patch * prevent-pkg-plugins-errors-on-missing-cookie-path-bs.patch * prevent-shell-injection-via-pre_flight_script_args-4.patch * read-repo-info-without-using-interpolation-bsc-11356.patch * restore-default-behaviour-of-pkg-list-return.patch * retry-if-rpm-lock-is-temporarily-unavailable-547.patch * return-the-expected-powerpc-os-arch-bsc-1117995.patch * revert-fixing-a-use-case-when-multiple-inotify-beaco.patch * run-salt-api-as-user-salt-bsc-1064520.patch * run-salt-master-as-dedicated-salt-user.patch * save-log-to-logfile-with-docker.build.patch * set-default-target-for-pip-from-venv_pip_target-envi.patch * state.apply-don-t-check-for-cached-pillar-errors.patch * state.orchestrate_single-does-not-pass-pillar-none-4.patch * switch-firewalld-state-to-use-change_interface.patch * temporary-fix-extend-the-whitelist-of-allowed-comman.patch * update-target-fix-for-salt-ssh-to-process-targets-li.patch * use-adler32-algorithm-to-compute-string-checksums.patch * use-salt-bundle-in-dockermod.patch * x509-fixes-111.patch * zypperpkg-ignore-retcode-104-for-search-bsc-1176697-.patch - Removed: * 3003.3-do-not-consider-skipped-targets-as-failed-for.patch * 3003.3-postgresql-json-support-in-pillar-423.patch * add-missing-ansible-module-functions-to-whitelist-in.patch * add-rpm_vercmp-python-library-for-version-comparison.patch * adds-explicit-type-cast-for-port.patch * backport-syndic-auth-fixes.patch * batch.py-avoid-exception-when-minion-does-not-respon.patch * check-if-dpkgnotify-is-executable-bsc-1186674-376.patch * do-not-crash-when-unexpected-cmd-output-at-listing-p.patch * enhance-logging-when-inotify-beacon-is-missing-pyino.patch * fix-62092-catch-zmq.error.zmqerror-to-set-hwm-for-zm.patch * fix-crash-when-calling-manage.not_alive-runners.patch * fixes-56144-to-enable-hotadd-profile-support.patch * fix-exception-in-yumpkg.remove-for-not-installed-pac.patch * fix-for-cve-2022-22967-bsc-1200566.patch * fix-inspector-module-export-function-bsc-1097531-481.patch * fix-ip6_interface-grain-to-not-leak-secondary-ipv4-a.patch * fix-issues-with-salt-ssh-s-extra-filerefs.patch * fix-jinja2-contextfuntion-base-on-version-bsc-119874.patch * fix-multiple-security-issues-bsc-1197417.patch * fix-salt-call-event.send-call-with-grains-and-pillar.patch * fix-the-regression-in-schedule-module-releasded-in-3.patch * fix-wrong-test_mod_del_repo_multiline_values-test-af.patch * force-zyppnotify-to-prefer-packages.db-than-packages.patch * implementation-of-held-unheld-functions-for-state-pk.patch * implementation-of-suse_ip-execution-module-bsc-10999.patch * improvements-on-ansiblegate-module-354.patch * mock-ip_addrs-in-utils-minions.py-unit-test-443.patch * notify-beacon-for-debian-ubuntu-systems-347.patch * refactor-and-improvements-for-transactional-updates-.patch * support-transactional-systems-microos.patch * wipe-notify_socket-from-env-in-cmdmod-bsc-1193357-30.patch- Control the collection of lvm grains via config (bsc#1204939) - Added: * control-the-collection-of-lvm-grains-via-config.patch- Pass the context to pillar ext modules - Align Amazon EC2 (Nitro) grains with upstream (bsc#1203685) - Detect module run syntax version - Implement automated patches alignment for the Salt Bundle - Ignore extend declarations from excluded SLS files (bsc#1203886) - Clarify pkg.installed pkg_verify documentation - Enhance capture of error messages for Zypper calls in zypperpkg module - Make pass renderer configurable and fix detected issues - Workaround fopen line buffering for binary mode (bsc#1203834) - Added: * detect-module.run-syntax.patch * fopen-workaround-bad-buffering-for-binary-mode-563.patch * make-pass-renderer-configurable-other-fixes-532.patch * clarify-pkg.installed-pkg_verify-documentation.patch * align-amazon-ec2-nitro-grains-with-upstream-pr-bsc-1.patch * pass-the-context-to-pillar-ext-modules.patch * ignore-extend-declarations-from-excluded-sls-files.patch * include-stdout-in-error-message-for-zypperpkg-559.patch- Handle non-UTF-8 bytes in core grains generation (bsc#1202165) - Fix Syndic authentication errors (bsc#1199562) - Add Amazon EC2 detection for virtual grains (bsc#1195624) - Fix the regression in schedule module releasded in 3004 (bsc#1202631) - Fix state.apply in test mode with file state module on user/group checking (bsc#1202167) - Change the delimeters to prevent possible tracebacks on some packages with dpkg_lowpkg - Make zypperpkg to retry if RPM lock is temporarily unavailable (bsc#1200596) - Fix test_ipc unit test - Added: * retry-if-rpm-lock-is-temporarily-unavailable-547.patch * change-the-delimeters-to-prevent-possible-tracebacks.patch * fix-test_ipc-unit-tests.patch * backport-syndic-auth-fixes.patch * fix-the-regression-in-schedule-module-releasded-in-3.patch * add-amazon-ec2-detection-for-virtual-grains-bsc-1195.patch * ignore-non-utf8-characters-while-reading-files-with-.patch * fix-state.apply-in-test-mode-with-file-state-module-.patch- Add support for gpgautoimport in zypperpkg module - Update Salt to work with Jinja >= and <= 3.1.0 (bsc#1198744) - Fix salt.states.file.managed() for follow_symlinks=True and test=True (bsc#1199372) - Make Salt 3004 compatible with pyzmq >= 23.0.0 (bsc#1201082) - Add support for name, pkgs and diff_attr parameters to upgrade function for zypper and yum (bsc#1198489) - Fix ownership of salt thin directory when using the Salt Bundle - Set default target for pip from VENV_PIP_TARGET environment variable - Normalize package names once with pkg.installed/removed using yum (bsc#1195895) - Save log to logfile with docker.build - Use Salt Bundle in dockermod - Ignore erros on reading license files with dpkg_lowpkg (bsc#1197288) - Added: * fix-ownership-of-salt-thin-directory-when-using-the-.patch * add-support-for-name-pkgs-and-diff_attr-parameters-t.patch * save-log-to-logfile-with-docker.build.patch * add-support-for-gpgautoimport-539.patch * fix-jinja2-contextfuntion-base-on-version-bsc-119874.patch * normalize-package-names-once-with-pkg.installed-remo.patch * use-salt-bundle-in-dockermod.patch * ignore-erros-on-reading-license-files-with-dpkg_lowp.patch * fix-62092-catch-zmq.error.zmqerror-to-set-hwm-for-zm.patch * fix-salt.states.file.managed-for-follow_symlinks-tru.patch * set-default-target-for-pip-from-venv_pip_target-envi.patch- Fix PAM auth issue due missing check for PAM_ACCT_MGM return value (CVE-2022-22967) (bsc#1200566) - Added: * fix-for-cve-2022-22967-bsc-1200566.patch- Make sure SaltCacheLoader use correct fileclient (bsc#1199149) - Added: * make-sure-saltcacheloader-use-correct-fileclient-519.patch- Fixes for Python 3.10 - Added: * fixes-for-python-3.10-502.patch- Fix regression preventing bootstrapping new clients caused by redundant dependency on psutil (bsc#1197533) - Prevent data pollution between actions proceesed at the same time (bsc#1197637) - Added: * fix-regression-with-depending-client.ssh-on-psutil-b.patch * prevent-affection-of-ssh.opts-with-lazyloader-bsc-11.patch- Fix salt-ssh opts poisoning (bsc#1197637) - Added: * fix-salt-ssh-opts-poisoning-bsc-1197637-3004-501.patch- Fix multiple security issues (bsc#1197417) * Sign authentication replies to prevent MiTM (CVE-2022-22935) * Sign pillar data to prevent MiTM attacks. (CVE-2022-22934) * Prevent job and fileserver replays (CVE-2022-22936) * Fixed targeting bug, especially visible when using syndic and user auth. (CVE-2022-22941) - Added: * fix-multiple-security-issues-bsc-1197417.patch- Add salt-ssh with Salt Bundle support (venv-salt-minion) (bsc#1182851, bsc#1196432) - Fix issues found around pre_flight_script_args - Restrict "state.orchestrate_single" to pass a pillar value if it exists (bsc#1194632) - Fix salt-call event.send with pillar or grains - Update generated documentation to 3004 - Added: * add-salt-ssh-support-with-venv-salt-minion-3004-493.patch * state.orchestrate_single-does-not-pass-pillar-none-4.patch * prevent-shell-injection-via-pre_flight_script_args-4.patch * fix-salt-call-event.send-call-with-grains-and-pillar.patch- Expose missing "ansible" module functions in Salt 3004 (bsc#1195625) - Added: * add-missing-ansible-module-functions-to-whitelist-in.patch- Update to version 3004 (jsc#SLE-23675) * See release notes: https://docs.saltproject.io/en/master/topics/releases/3004.html - Don't check for cached pillar errors on state.apply (bsc#1190781) - Fix exception in batch_async caused by a bad function call - Fix inspector module export function (bsc#1097531) - Wipe NOTIFY_SOCKET from env in cmdmod (bsc#1193357) - Added: * state.apply-don-t-check-for-cached-pillar-errors.patch * wipe-notify_socket-from-env-in-cmdmod-bsc-1193357-30.patch * fix-inspector-module-export-function-bsc-1097531-481.patch * drop-serial-from-event.unpack-in-cli.batch_async.patch - Modified: * revert-fixing-a-use-case-when-multiple-inotify-beaco.patch * add-rpm_vercmp-python-library-for-version-comparison.patch * zypperpkg-ignore-retcode-104-for-search-bsc-1176697-.patch * 3003.3-postgresql-json-support-in-pillar-423.patch * fix-exception-in-yumpkg.remove-for-not-installed-pac.patch * add-migrated-state-and-gpg-key-management-functions-.patch * add-custom-suse-capabilities-as-grains.patch * 3003.3-do-not-consider-skipped-targets-as-failed-for.patch * switch-firewalld-state-to-use-change_interface.patch * debian-info_installed-compatibility-50453.patch * refactor-and-improvements-for-transactional-updates-.patch * mock-ip_addrs-in-utils-minions.py-unit-test-443.patch * info_installed-works-without-status-attr-now.patch * do-not-crash-when-unexpected-cmd-output-at-listing-p.patch * enhance-openscap-module-add-xccdf_eval-call-386.patch * implementation-of-held-unheld-functions-for-state-pk.patch * update-target-fix-for-salt-ssh-to-process-targets-li.patch * fix-traceback.print_exc-calls-for-test_pip_state-432.patch * early-feature-support-config.patch * enable-passing-a-unix_socket-for-mysql-returners-bsc.patch * improvements-on-ansiblegate-module-354.patch * support-transactional-systems-microos.patch * x509-fixes-111.patch * fix-issues-with-salt-ssh-s-extra-filerefs.patch * use-adler32-algorithm-to-compute-string-checksums.patch * prevent-pkg-plugins-errors-on-missing-cookie-path-bs.patch * run-salt-master-as-dedicated-salt-user.patch * add-environment-variable-to-know-if-yum-is-invoked-f.patch * include-aliases-in-the-fqdns-grains.patch - Removed: * parsing-epoch-out-of-version-provided-during-pkg-rem.patch * add-missing-aarch64-to-rpm-package-architectures-405.patch * better-handling-of-bad-public-keys-from-minions-bsc-.patch * don-t-call-zypper-with-more-than-one-no-refresh.patch * templates-move-the-globals-up-to-the-environment-jin.patch * adding-preliminary-support-for-rocky.-59682-391.patch * do-not-monkey-patch-yaml-bsc-1177474.patch * fix-save-for-iptables-state-module-bsc-1185131-372.patch * fix-a-test-and-some-variable-names-229.patch * add-alibaba-cloud-linux-2-by-backporting-upstream-s-.patch * virt-enhancements.patch * fix-aptpkg.normalize_name-when-package-arch-is-all.patch * figure-out-python-interpreter-to-use-inside-containe.patch * do-not-break-master_tops-for-minion-with-version-low.patch * prevent-logging-deadlock-on-salt-api-subprocesses-bs.patch * add-astra-linux-common-edition-to-the-os-family-list.patch- Simplify "transactional_update" module to not use SSH wrapper and allow more flexible execution - Add "--no-return-event" option to salt-call to prevent sending return event back to master. - Make "state.highstate" to acts on concurrent flag. - Use dnfnotify instead yumnotify for relevant distros - dnfnotify pkgset plugin implementation - Add rpm_vercmp python library support for version comparison - Prevent pkg plugins errors on missing cookie path (bsc#1186738) - Make "tar" as required for "salt-transactional-update" package - Make "salt-api" package to require python3-cherrypy on RHEL systems - Fix ip6_interface grain to not leak secondary IPv4 aliases (bsc#1191412) - Added: * fix-traceback.print_exc-calls-for-test_pip_state-432.patch * mock-ip_addrs-in-utils-minions.py-unit-test-443.patch * add-rpm_vercmp-python-library-for-version-comparison.patch * prevent-pkg-plugins-errors-on-missing-cookie-path-bs.patch * refactor-and-improvements-for-transactional-updates-.patch * fix-the-regression-for-yumnotify-plugin-456.patch * dnfnotify-pkgset-plugin-implementation-3002.2-450.patch * fix-ip6_interface-grain-to-not-leak-secondary-ipv4-a.patch- Fix issues with salt-ssh's extra-filerefs - Fix crash when calling manage.not_alive runners - Do not consider skipped targets as failed for ansible.playbooks state (bsc#1190446) - Added: * fix-crash-when-calling-manage.not_alive-runners.patch * 3003.3-do-not-consider-skipped-targets-as-failed-for.patch * fix-issues-with-salt-ssh-s-extra-filerefs.patch- Do not break master_tops for minion with version lower to 3003 - Support querying for JSON data in external sql pillar - Added: * do-not-break-master_tops-for-minion-with-version-low.patch * 3003.3-postgresql-json-support-in-pillar-423.patch- Update to Salt release version 3003.3 (jsc#SLE-22204) * See release notes: https://docs.saltstack.com/en/latest/topics/releases/3003.3.html - Added: * do-not-break-master_tops-for-minion-with-version-low.patch * support-transactional-systems-microos.patch * allow-vendor-change-option-with-zypper.patch * 3003.3-postgresql-json-support-in-pillar-423.patch * virt-enhancements.patch - Modified: * return-the-expected-powerpc-os-arch-bsc-1117995.patch * include-aliases-in-the-fqdns-grains.patch * do-not-load-pip-state-if-there-is-no-3rd-party-depen.patch * do-not-monkey-patch-yaml-bsc-1177474.patch * improvements-on-ansiblegate-module-354.patch * better-handling-of-bad-public-keys-from-minions-bsc-.patch * fixes-56144-to-enable-hotadd-profile-support.patch * use-adler32-algorithm-to-compute-string-checksums.patch * enhance-openscap-module-add-xccdf_eval-call-386.patch * add-alibaba-cloud-linux-2-by-backporting-upstream-s-.patch * implementation-of-held-unheld-functions-for-state-pk.patch * x509-fixes-111.patch * parsing-epoch-out-of-version-provided-during-pkg-rem.patch * fix-wrong-test_mod_del_repo_multiline_values-test-af.patch * add-migrated-state-and-gpg-key-management-functions-.patch * figure-out-python-interpreter-to-use-inside-containe.patch * implementation-of-suse_ip-execution-module-bsc-10999.patch * templates-move-the-globals-up-to-the-environment-jin.patch * debian-info_installed-compatibility-50453.patch * add-missing-aarch64-to-rpm-package-architectures-405.patch * revert-fixing-a-use-case-when-multiple-inotify-beaco.patch * prevent-logging-deadlock-on-salt-api-subprocesses-bs.patch * add-astra-linux-common-edition-to-the-os-family-list.patch * fix-bsc-1065792.patch * adding-preliminary-support-for-rocky.-59682-391.patch * fix-exception-in-yumpkg.remove-for-not-installed-pac.patch * async-batch-implementation.patch * make-aptpkg.list_repos-compatible-on-enabled-disable.patch * adds-explicit-type-cast-for-port.patch * restore-default-behaviour-of-pkg-list-return.patch * add-custom-suse-capabilities-as-grains.patch * temporary-fix-extend-the-whitelist-of-allowed-comman.patch * do-not-crash-when-unexpected-cmd-output-at-listing-p.patch * update-target-fix-for-salt-ssh-to-process-targets-li.patch * zypperpkg-ignore-retcode-104-for-search-bsc-1176697-.patch * early-feature-support-config.patch - Removed: * virt-pass-emulator-when-getting-domain-capabilities-.patch * fix-virt.update-with-cpu-defined-263.patch * fix-unit-tests-for-batch-async-after-refactor.patch * opensuse-3000.3-spacewalk-runner-parse-command-250.patch * python3.8-compatibility-pr-s-235.patch * support-for-btrfs-and-xfs-in-parted-and-mkfs.patch * fixed-bug-lvm-has-no-parttion-type.-the-scipt-later-.patch * do-not-break-repo-files-with-multiple-line-values-on.patch * fix-failing-unit-tests-for-batch-async.patch * prevent-command-injection-in-the-snapper-module-bsc-.patch * accumulated-changes-from-yomi-167.patch * add-docker-logout-237.patch * use-threadpool-from-multiprocessing.pool-to-avoid-le.patch * get-os_arch-also-without-rpm-package-installed.patch * loosen-azure-sdk-dependencies-in-azurearm-cloud-driv.patch * add-hold-unhold-functions.patch * fix-zypper-pkg.list_pkgs-expectation-and-dpkg-mockin.patch * improve-batch_async-to-release-consumed-memory-bsc-1.patch * support-config-non-root-permission-issues-fixes-u-50.patch * virt-use-dev-kvm-to-detect-kvm-383.patch * fix-unit-test-for-grains-core.patch * do-not-make-ansiblegate-to-crash-on-python3-minions.patch * open-suse-3002.2-xen-grub-316.patch * transactional_update-detect-recursion-in-the-executo.patch * fix-zypper.list_pkgs-to-be-aligned-with-pkg-state.patch * grains-master-can-read-grains.patch * remove-arch-from-name-when-pkg.list_pkgs-is-called-w.patch * fix-batch_async-obsolete-test.patch * remove-deprecated-usage-of-no_mock-and-no_mock_reaso.patch * backport-thread.is_alive-fix-390.patch * backport-virt-patches-from-3001-256.patch * fix-cve-2020-25592-and-add-tests-bsc-1178319.patch * handle-volumes-on-stopped-pools-in-virt.vm_info-373.patch * loop-fix-variable-names-for-until_no_eval.patch * add-saltssh-multi-version-support-across-python-inte.patch * do-not-raise-streamclosederror-traceback-but-only-lo.patch * add-new-custom-suse-capability-for-saltutil-state-mo.patch * exclude-the-full-path-of-a-download-url-to-prevent-i.patch * zypperpkg-filter-patterns-that-start-with-dot-244.patch * virt._get_domain-don-t-raise-an-exception-if-there-i.patch * add-batch_presence_ping_timeout-and-batch_presence_p.patch * ensure-virt.update-stop_on_reboot-is-updated-with-it.patch * opensuse-3000-virt-defined-states-222.patch * changed-imports-to-vendored-tornado.patch * add-virt.all_capabilities.patch * fix-for-some-cves-bsc1181550.patch * fix-grains.test_core-unit-test-277.patch * path-replace-functools.wraps-with-six.wraps-bsc-1177.patch * implement-network.fqdns-module-function-bsc-1134860-.patch * prevent-race-condition-on-sigterm-for-the-minion-bsc.patch * ansiblegate-take-care-of-failed-skipped-and-unreacha.patch * do-not-crash-when-there-are-ipv6-established-connect.patch * grains.extra-support-old-non-intel-kernels-bsc-11806.patch * fall-back-to-pymysql.patch * virt-uefi-fix-backport-312.patch * reintroducing-reverted-changes.patch * allow-extra_filerefs-as-sanitized-kwargs-for-ssh-cli.patch * virt-adding-kernel-boot-parameters-to-libvirt-xml-55.patch * calculate-fqdns-in-parallel-to-avoid-blockings-bsc-1.patch * batch_async-avoid-using-fnmatch-to-match-event-217.patch * fix-memory-leak-produced-by-batch-async-find_jobs-me.patch * make-profiles-a-package.patch * handle-master-tops-data-when-states-are-applied-by-t.patch * 3002.2-xen-spicevmc-dns-srv-records-backports-314.patch * sanitize-grains-loaded-from-roster_grains.json.patch * pkgrepo-support-python-2.7-function-call-295.patch * integration-of-msi-authentication-with-azurearm-clou.patch * fix-regression-on-cmd.run-when-passing-tuples-as-cmd.patch * opensuse-3000-libvirt-engine-fixes-251.patch * revert-add-patch-support-for-allow-vendor-change-opt.patch * allow-passing-kwargs-to-pkg.list_downloaded-bsc-1140.patch * prevent-import-errors-when-running-test_btrfs-unit-t.patch * transactional_update-unify-with-chroot.call.patch * batch-async-catch-exceptions-and-safety-unregister-a.patch * fix-novendorchange-option-284.patch * fix-async-batch-race-conditions.patch * regression-fix-of-salt-ssh-on-processing-targets-353.patch * move-vendor-change-logic-to-zypper-class-355.patch * fixes-cve-2018-15750-cve-2018-15751.patch * virt.network_update-handle-missing-ipv4-netmask-attr.patch * add-supportconfig-module-for-remote-calls-and-saltss.patch * use-current-ioloop-for-the-localclient-instance-of-b.patch * prevent-systemd-run-description-issue-when-running-a.patch * backport-a-few-virt-prs-272.patch * fix-issue-parsing-errors-in-ansiblegate-state-module.patch * fix-__mount_device-wrapper-254.patch * provide-the-missing-features-required-for-yomi-yet-o.patch * move-server_id-deprecation-warning-to-reduce-log-spa.patch * strip-trailing-from-repo.uri-when-comparing-repos-in.patch * xfs-do-not-fails-if-type-is-not-present.patch * add-cpe_name-for-osversion-grain-parsing-u-49946.patch * avoid-traceback-when-http.query-request-cannot-be-pe.patch * fix-a-wrong-rebase-in-test_core.py-180.patch * remove-vendored-backports-abc-from-requirements.patch * remove-deprecated-warning-that-breaks-miniion-execut.patch * re-adding-function-to-test-for-root.patch * fix-async-batch-multiple-done-events.patch * 3002-set-distro-requirement-to-oldest-supported-vers.patch * backport-of-upstream-pr59492-to-3002.2-404.patch * fix-error-handling-in-openscap-module-bsc-1188647-40.patch * accumulated-changes-required-for-yomi-165.patch * add-pkg.services_need_restart-302.patch * remove-unnecessary-yield-causing-badyielderror-bsc-1.patch * add-all_versions-parameter-to-include-all-installed-.patch * prevent-test_mod_del_repo_multiline_values-to-fail.patch * fix-for-temp-folder-definition-in-loader-unit-test.patch * opensuse-3000.2-virt-backports-236-257.patch * drop-wrong-mock-from-chroot-unit-test.patch * option-to-en-disable-force-refresh-in-zypper-215.patch * fix-failing-unit-tests-for-systemd.patch * fix-the-removed-six.itermitems-and-six.-_type-262.patch * fixing-streamclosed-issue.patch * fix-onlyif-unless-when-multiple-conditions-bsc-11808.patch * invalidate-file-list-cache-when-cache-file-modified-.patch * add-almalinux-and-alibaba-cloud-linux-to-the-os-fami.patch * allow-vendor-change-option-with-zypper-313.patch * xen-disk-fixes-264.patch * fix-git_pillar-merging-across-multiple-__env__-repos.patch * drop-wrong-virt-capabilities-code-after-rebasing-pat.patch * do-noop-for-services-states-when-running-systemd-in-.patch * open-suse-3002.2-bigvm-310.patch * fix-for-log-checking-in-x509-test.patch * open-suse-3002.2-virt-network-311.patch * async-batch-implementation-fix-320.patch * apply-patch-from-upstream-to-support-python-3.8.patch * add-multi-file-support-and-globbing-to-the-filetree-.patch * add-patch-support-for-allow-vendor-change-option-wit.patch * fix-ipv6-scope-bsc-1108557.patch * remove-msgpack-1.0.0-requirement-in-the-installed-me.patch * fix-aptpkg-systemd-call-bsc-1143301.patch * prevent-ansiblegate-unit-tests-to-fail-on-ubuntu.patch * support-transactional-systems-microos-271.patch- Exclude the full path of a download URL to prevent injection of malicious code (bsc#1190265) (CVE-2021-21996) - Added: * exclude-the-full-path-of-a-download-url-to-prevent-i.patch- Fix wrong relative paths resolution with Jinja renderer when importing subdirectories - Don't pass shell="/sbin/nologin" to onlyif/unless checks (bsc#1188259) - Add missing aarch64 to rpm package architectures - Backport of upstream PR#59492 - Fix failing unit test for systemd - Fix error handling in openscap module (bsc#1188647) - Better handling of bad public keys from minions (bsc#1189040) - Define license macro as doc in spec file if not existing - Add standalone formulas configuration for salt minion and remove salt-master requirement (bsc#1168327) - Added: * fix-failing-unit-tests-for-systemd.patch * add-missing-aarch64-to-rpm-package-architectures-405.patch * don-t-use-shell-sbin-nologin-in-requisites.patch * better-handling-of-bad-public-keys-from-minions-bsc-.patch * templates-move-the-globals-up-to-the-environment-jin.patch * fix-error-handling-in-openscap-module-bsc-1188647-40.patch * backport-of-upstream-pr59492-to-3002.2-404.patch- Do noop for services states when running systemd in offline mode (bsc#1187787) - transactional_updates: do not execute states in parallel but use a queue (bsc#1188170) - Handle "master tops" data when states are applied by "transactional_update" (bsc#1187787) - Enhance openscap module: add "xccdf_eval" call - virt: pass emulator when getting domain capabilities from libvirt - Adding preliminary support for Rocky Linux - Implementation of held/unheld functions for state pkg (bsc#1187813) - Replace deprecated Thread.isAlive() with Thread.is_alive() - Fix exception in yumpkg.remove for not installed package - Fix save for iptables state module (bsc#1185131) - virt: use /dev/kvm to detect KVM - zypperpkg: improve logic for handling vendorchange flags - Add bundled provides for tornado to the spec file - Enhance logging when inotify beacon is missing pyinotify (bsc#1186310) - Add "python3-pyinotify" as a recommended package for Salt in SUSE/OpenSUSE distros - Fix tmpfiles.d configuration for salt to not use legacy paths (bsc#1173103) - Detect Python version to use inside container (bsc#1167586) (bsc#1164192) - Handle volumes on stopped pools in virt.vm_info (bsc#1186287) - grains.extra: support old non-intel kernels (bsc#1180650) - Fix missing minion returns in batch mode (bsc#1184659) - Parsing Epoch out of version provided during pkg remove (bsc#1173692) - Added: * fix-save-for-iptables-state-module-bsc-1185131-372.patch * grains.extra-support-old-non-intel-kernels-bsc-11806.patch * enhance-openscap-module-add-xccdf_eval-call-386.patch * backport-thread.is_alive-fix-390.patch * parsing-epoch-out-of-version-provided-during-pkg-rem.patch * handle-volumes-on-stopped-pools-in-virt.vm_info-373.patch * virt-use-dev-kvm-to-detect-kvm-383.patch * implementation-of-held-unheld-functions-for-state-pk.patch * enhance-logging-when-inotify-beacon-is-missing-pyino.patch * move-vendor-change-logic-to-zypper-class-355.patch * virt-pass-emulator-when-getting-domain-capabilities-.patch * do-noop-for-services-states-when-running-systemd-in-.patch * fix-exception-in-yumpkg.remove-for-not-installed-pac.patch * adding-preliminary-support-for-rocky.-59682-391.patch * fix-missing-minion-returns-in-batch-mode-360.patch * figure-out-python-interpreter-to-use-inside-containe.patch * handle-master-tops-data-when-states-are-applied-by-t.patch- Check if dpkgnotify is executable (bsc#1186674) - Added: * check-if-dpkgnotify-is-executable-bsc-1186674-376.patch- Drop support for Python2. Obsoletes "python2-salt" package (jsc#SLE-18033) - Fix issue parsing errors in ansiblegate state module - Prevent command injection in the snapper module (bsc#1185281) (CVE-2021-31607) - transactional_update: detect recursion in the executor - Add subpackage salt-transactional-update (jsc#SLE-18028) - Remove duplicate directories - Added: * fix-issue-parsing-errors-in-ansiblegate-state-module.patch * prevent-command-injection-in-the-snapper-module-bsc-.patch * transactional_update-detect-recursion-in-the-executo.patch- Improvements on "ansiblegate" module (bsc#1185092): * New methods: ansible.targets / ansible.discover_playbooks * General bugfixes - Added: * improvements-on-ansiblegate-module-354.patch- Regression fix of salt-ssh on processing some targets - Add support for Alibaba Cloud Linux 2 (Aliyun Linux) - Update target fix for salt-ssh to process targets list (bsc#1179831) - Add notify beacon for Debian/Ubuntu systems - Add core grains support for AlmaLinux and Alibaba Could Linux - Allow vendor change option with zypper - Added: * add-almalinux-and-alibaba-cloud-linux-to-the-os-fami.patch * update-target-fix-for-salt-ssh-to-process-targets-li.patch * regression-fix-of-salt-ssh-on-processing-targets-353.patch * notify-beacon-for-debian-ubuntu-systems-347.patch * allow-vendor-change-option-with-zypper-313.patch * add-alibaba-cloud-linux-2-by-backporting-upstream-s-.patch- virt.network_update: handle missing ipv4 netmask attribute - Set distro requirement to oldest supported version in requirements/base.txt - Do not monkey patch yaml loaders: Prevent breaking Ansible filter modules (bsc#1177474) - Don't require python3-certifi - Fix race conditions for corner cases when handling SIGTERM by minion (bsc#1172110) - Added: * prevent-race-condition-on-sigterm-for-the-minion-bsc.patch * 3002-set-distro-requirement-to-oldest-supported-vers.patch * do-not-monkey-patch-yaml-bsc-1177474.patch * virt.network_update-handle-missing-ipv4-netmask-attr.patch- Allow extra_filerefs as sanitized kwargs for SSH client - Fix regression on cmd.run when passing tuples as cmd (bsc#1182740) - Fix for multiple for security issues (CVE-2020-28243) (CVE-2020-28972) (CVE-2020-35662) (CVE-2021-3148) (CVE-2021-3144) (CVE-2021-25281) (CVE-2021-25282) (CVE-2021-25283) (CVE-2021-25284) (CVE-2021-3197) (bsc#1181550) (bsc#1181556) (bsc#1181557) (bsc#1181558) (bsc#1181559) (bsc#1181560) (bsc#1181561) (bsc#1181562) (bsc#1181563) (bsc#1181564) (bsc#1181565) - Implementation of suse_ip execution module to prevent issues with network.managed (bsc#1099976) - Add sleep on exception handling on minion connection attempt to the master (bsc#1174855) - Allows for the VMware provider to handle CPU and memory hot-add in newer versions of the software. (bsc#1181347) - Always require python-certifi (used by salt.ext.tornado) - Bring missing part of async batch implementation back (bsc#1182382) (CVE-2021-25315) - Always require python3-distro (bsc#1182293) - Added: * async-batch-implementation-fix-320.patch * implementation-of-suse_ip-execution-module-bsc-10999.patch * fix-for-some-cves-bsc1181550.patch * fixes-56144-to-enable-hotadd-profile-support.patch * add-sleep-on-exception-handling-on-minion-connection.patch * allow-extra_filerefs-as-sanitized-kwargs-for-ssh-cli.patch * fix-regression-on-cmd.run-when-passing-tuples-as-cmd.patch- virt: search for grub.xen path - Xen spicevmc, DNS SRV records backports: Fix virtual network generated DNS XML for SRV records Don't add spicevmc channel to xen VMs - virt UEFI fix: virt.update when efi=True - Do not crash when unexpected cmd output at listing patches (bsc#1181290) - Fix behavior for "onlyif/unless" when multiple conditions (bsc#1180818) - Added: * 3002.2-xen-spicevmc-dns-srv-records-backports-314.patch * do-not-crash-when-unexpected-cmd-output-at-listing-p.patch * open-suse-3002.2-xen-grub-316.patch * fix-onlyif-unless-when-multiple-conditions-bsc-11808.patch * virt-uefi-fix-backport-312.patch- Remove deprecated warning that breaks minion execution when "server_id_use_crc" opts is missing - Added: * remove-deprecated-warning-that-breaks-miniion-execut.patch- Revert wrong zypper patch to support vendorchanges flags on pkg.install - Added: * revert-add-patch-support-for-allow-vendor-change-opt.patch- Force zyppnotify to prefer Packages.db than Packages if it exists - Allow vendor change option with zypper - Add pkg.services_need_restart - Fix for file.check_perms to work with numeric uid/gid - Added: * force-zyppnotify-to-prefer-packages.db-than-packages.patch * fix-salt.utils.stringutils.to_str-calls-to-make-it-w.patch * add-pkg.services_need_restart-302.patch * add-patch-support-for-allow-vendor-change-option-wit.patch- virt: more network support Add more network and PCI/USB host devices passthrough support to virt module and states - Bigvm backports virt consoles, CPU tuning and topology, and memory tuning. - Fix pkg states when DEB package has "all" arch - Added: * open-suse-3002.2-virt-network-311.patch * open-suse-3002.2-bigvm-310.patch * fix-aptpkg.normalize_name-when-package-arch-is-all.patch- Update to Salt release version 3002.2 - See release notes: https://docs.saltstack.com/en/latest/topics/releases/3002.2.html - Do not force beacons configuration to be a list. Revert https://github.com/saltstack/salt/pull/58655 - Drop wrong virt capabilities code after rebasing patches - Remove msgpack < 1.0.0 from base requirements (bsc#1176293) - Added: * revert-fixing-a-use-case-when-multiple-inotify-beaco.patch * drop-wrong-virt-capabilities-code-after-rebasing-pat.patch * remove-msgpack-1.0.0-requirement-in-the-installed-me.patch - Modified: * add-all_versions-parameter-to-include-all-installed-.patch * fix-failing-unit-tests-for-batch-async.patch * return-the-expected-powerpc-os-arch-bsc-1117995.patch * get-os_arch-also-without-rpm-package-installed.patch * fix-cve-2020-25592-and-add-tests-bsc-1178319.patch * fix-async-batch-race-conditions.patch * avoid-excessive-syslogging-by-watchdog-cronjob-58.patch * make-profiles-a-package.patch * virt._get_domain-don-t-raise-an-exception-if-there-i.patch * add-docker-logout-237.patch * do-not-make-ansiblegate-to-crash-on-python3-minions.patch * fall-back-to-pymysql.patch * fix-zypper.list_pkgs-to-be-aligned-with-pkg-state.patch * fix-bsc-1065792.patch * support-for-btrfs-and-xfs-in-parted-and-mkfs.patch * fix-novendorchange-option-284.patch * do-not-crash-when-there-are-ipv6-established-connect.patch * allow-passing-kwargs-to-pkg.list_downloaded-bsc-1140.patch * accumulated-changes-from-yomi-167.patch * add-new-custom-suse-capability-for-saltutil-state-mo.patch * loosen-azure-sdk-dependencies-in-azurearm-cloud-driv.patch * make-setup.py-script-to-not-require-setuptools-9.1.patch * prevent-systemd-run-description-issue-when-running-a.patch * implement-network.fqdns-module-function-bsc-1134860-.patch * add-batch_presence_ping_timeout-and-batch_presence_p.patch * provide-the-missing-features-required-for-yomi-yet-o.patch * debian-info_installed-compatibility-50453.patch * enable-passing-a-unix_socket-for-mysql-returners-bsc.patch * fixes-cve-2018-15750-cve-2018-15751.patch * strip-trailing-from-repo.uri-when-comparing-repos-in.patch * ensure-virt.update-stop_on_reboot-is-updated-with-it.patch * add-multi-file-support-and-globbing-to-the-filetree-.patch * accumulated-changes-required-for-yomi-165.patch * calculate-fqdns-in-parallel-to-avoid-blockings-bsc-1.patch * zypperpkg-ignore-retcode-104-for-search-bsc-1176697-.patch * ansiblegate-take-care-of-failed-skipped-and-unreacha.patch * prevent-ansiblegate-unit-tests-to-fail-on-ubuntu.patch * reintroducing-reverted-changes.patch * fix-a-wrong-rebase-in-test_core.py-180.patch * changed-imports-to-vendored-tornado.patch * prevent-logging-deadlock-on-salt-api-subprocesses-bs.patch * fix-batch_async-obsolete-test.patch * xen-disk-fixes-264.patch * remove-deprecated-usage-of-no_mock-and-no_mock_reaso.patch * read-repo-info-without-using-interpolation-bsc-11356.patch * batch.py-avoid-exception-when-minion-does-not-respon.patch * fix-zypper-pkg.list_pkgs-expectation-and-dpkg-mockin.patch * temporary-fix-extend-the-whitelist-of-allowed-comman.patch * adds-explicit-type-cast-for-port.patch * remove-vendored-backports-abc-from-requirements.patch * drop-wrong-mock-from-chroot-unit-test.patch * remove-arch-from-name-when-pkg.list_pkgs-is-called-w.patch * loop-fix-variable-names-for-until_no_eval.patch * fix-for-suse-expanded-support-detection.patch * make-aptpkg.list_repos-compatible-on-enabled-disable.patch * run-salt-api-as-user-salt-bsc-1064520.patch * do-not-load-pip-state-if-there-is-no-3rd-party-depen.patch * fix-unit-test-for-grains-core.patch * add-custom-suse-capabilities-as-grains.patch * transactional_update-unify-with-chroot.call.patch * x509-fixes-111.patch * fix-ipv6-scope-bsc-1108557.patch * add-cpe_name-for-osversion-grain-parsing-u-49946.patch * use-current-ioloop-for-the-localclient-instance-of-b.patch * fixed-bug-lvm-has-no-parttion-type.-the-scipt-later-.patch * prevent-import-errors-when-running-test_btrfs-unit-t.patch * add-standalone-configuration-file-for-enabling-packa.patch * support-config-non-root-permission-issues-fixes-u-50.patch * use-threadpool-from-multiprocessing.pool-to-avoid-le.patch * fixing-streamclosed-issue.patch * early-feature-support-config.patch * add-astra-linux-common-edition-to-the-os-family-list.patch * switch-firewalld-state-to-use-change_interface.patch * xfs-do-not-fails-if-type-is-not-present.patch * fix-aptpkg-systemd-call-bsc-1143301.patch * fix-unit-tests-for-batch-async-after-refactor.patch * move-server_id-deprecation-warning-to-reduce-log-spa.patch * add-migrated-state-and-gpg-key-management-functions-.patch * add-virt.all_capabilities.patch * fix-the-removed-six.itermitems-and-six.-_type-262.patch * activate-all-beacons-sources-config-pillar-grains.patch * integration-of-msi-authentication-with-azurearm-clou.patch * run-salt-master-as-dedicated-salt-user.patch * grains-master-can-read-grains.patch * async-batch-implementation.patch * add-hold-unhold-functions.patch * info_installed-works-without-status-attr-now.patch * add-saltssh-multi-version-support-across-python-inte.patch * backport-a-few-virt-prs-272.patch * fix-wrong-test_mod_del_repo_multiline_values-test-af.patch * improve-batch_async-to-release-consumed-memory-bsc-1.patch * invalidate-file-list-cache-when-cache-file-modified-.patch * apply-patch-from-upstream-to-support-python-3.8.patch * prevent-test_mod_del_repo_multiline_values-to-fail.patch * avoid-traceback-when-http.query-request-cannot-be-pe.patch * let-salt-ssh-use-platform-python-binary-in-rhel8-191.patch * fix-async-batch-multiple-done-events.patch * include-aliases-in-the-fqdns-grains.patch * do-not-raise-streamclosederror-traceback-but-only-lo.patch * backport-virt-patches-from-3001-256.patch * restore-default-behaviour-of-pkg-list-return.patch * batch_async-avoid-using-fnmatch-to-match-event-217.patch * do-not-break-repo-files-with-multiple-line-values-on.patch * opensuse-3000-virt-defined-states-222.patch * add-environment-variable-to-know-if-yum-is-invoked-f.patch * fix-a-test-and-some-variable-names-229.patch * add-supportconfig-module-for-remote-calls-and-saltss.patch * option-to-en-disable-force-refresh-in-zypper-215.patch * fix-for-temp-folder-definition-in-loader-unit-test.patch * sanitize-grains-loaded-from-roster_grains.json.patch * add-publish_batch-to-clearfuncs-exposed-methods.patch * fix-virt.update-with-cpu-defined-263.patch * fix-git_pillar-merging-across-multiple-__env__-repos.patch * fix-for-log-checking-in-x509-test.patch * virt-adding-kernel-boot-parameters-to-libvirt-xml-55.patch * batch-async-catch-exceptions-and-safety-unregister-a.patch * re-adding-function-to-test-for-root.patch * bsc-1176024-fix-file-directory-user-and-group-owners.patch * fix-memory-leak-produced-by-batch-async-find_jobs-me.patch * path-replace-functools.wraps-with-six.wraps-bsc-1177.patch * don-t-call-zypper-with-more-than-one-no-refresh.patch * fix-issue-2068-test.patch * python3.8-compatibility-pr-s-235.patch * remove-unnecessary-yield-causing-badyielderror-bsc-1.patch * use-adler32-algorithm-to-compute-string-checksums.patch - Removed: * make-salt.ext.tornado.gen-to-use-salt.ext.backports_.patch * add-patch-support-for-allow-vendor-change-option-wit.patch * add-missing-fun-for-returns-from-wfunc-executions.patch * use-full-option-name-instead-of-undocumented-abbrevi.patch * set-passphrase-for-salt-ssh-keys-to-empty-string-293.patch * make-lazyloader.__init__-call-to-_refresh_file_mappi.patch * add-pkg.services_need_restart-302.patch * fix-typo-on-msgpack-version-when-sanitizing-msgpack-.patch * avoid-has_docker-true-if-import-messes-with-salt.uti.patch * msgpack-support-versions-1.0.0.patch * force-zyppnotify-to-prefer-packages.db-than-packages.patch * fix-for-return-value-ret-vs-return-in-batch-mode.patch * do-not-report-patches-as-installed-when-not-all-the-.patch * fix-for-bsc-1102248-psutil-is-broken-and-so-process-.patch * fix-salt.utils.stringutils.to_str-calls-to-make-it-w.patch * decide-if-the-source-should-be-actually-skipped.patch * loader-invalidate-the-import-cachefor-extra-modules.patch * opensuse-3000.3-bigvm-backports-303.patch * add-missing-_utils-at-loader-grains_func.patch * removes-unresolved-merge-conflict-in-yumpkg-module.patch * add-ip-filtering-by-network.patch * fix-cve-2020-11651-and-fix-cve-2020-11652.patch * various-fixes-to-the-mysql-module-to-break-out-the-h.patch * fix-for-unless-requisite-when-pip-is-not-installed.patch * fix-type-error-in-tornadoimporter.patch * fix-regression-in-service-states-with-reload-argumen.patch * revert-changes-to-slspath-saltstack-salt-56341.patch - Renamed: * support-transactional-systems-microos-268.patch - > support-transactional-systems-microos-271.patch * zypperpkg-filter-patterns-that-start-with-dot-243.patch - > zypperpkg-filter-patterns-that-start-with-dot-244.patch * opensuse-3000-libvirt-engine-fixes-248.patch - > opensuse-3000-libvirt-engine-fixes-251.patch * opensuse-3000.2-virt-backports-236.patch - > opensuse-3000.2-virt-backports-236-257.patch * pkgrepo-support-python-2.7-function-call-294.patch - > pkgrepo-support-python-2.7-function-call-295.patch * fix-__mount_device-wrapper-253.patch - > fix-__mount_device-wrapper-254.patch * fix-grains.test_core-unit-test-276.patch - > fix-grains.test_core-unit-test-277.patch * opensuse-3000-spacewalk-runner-parse-command-247.patch - > opensuse-3000.3-spacewalk-runner-parse-command-250.patch- Adjusted python2-cherrypy naming in salt-api. (#40) - Force zyppnotify to prefer Packages.db than Packages if it exists - Allow vendor change option with zypper - Add pkg.services_need_restart - Bigvm backports - virt consoles, CPU tuning and topology, and memory tuning. - Fix for file.check_perms to work with numeric uid/gid - change 'Requires(pre)' to 'Requires' for salt-minion package (bsc#1083110) - Added: * opensuse-3000-bigvm-backports-300.patch * force-zyppnotify-to-prefer-packages.db-than-packages.patch * fix-salt.utils.stringutils.to_str-calls-to-make-it-w.patch * add-pkg.services_need_restart-302.patch * add-patch-support-for-allow-vendor-change-option-wit.patch- Fix syntax error on pkgrepo state with Python 2.7 - transactional_update: unify with chroot.call - Add "migrated" state and GPG key management functions - Master can read grains - Fix for broken psutil (bsc#1102248) - Fix novendorchange handling in zypperpkg module - Added: * add-migrated-state-and-gpg-key-management-functions-.patch * fix-for-bsc-1102248-psutil-is-broken-and-so-process-.patch * fix-novendorchange-option-284.patch * grains-master-can-read-grains.patch * transactional_update-unify-with-chroot.call.patch * pkgrepo-support-python-2.7-function-call-294.patch- Avoid regression on "salt-master": set passphrase for salt-ssh keys to empty string (bsc#1178485) - Added: * set-passphrase-for-salt-ssh-keys-to-empty-string-293.patch- Properly validate eauth credentials and tokens on SSH calls made by Salt API (bsc#1178319) (bsc#1178362) (bsc#1178361) (CVE-2020-25592) (CVE-2020-17490) (CVE-2020-16846) - Added: * fix-cve-2020-25592-and-add-tests-bsc-1178319.patch- Fix disk.blkid to avoid unexpected keyword argument '__pub_user' (bsc#1177867) - Ensure virt.update stop_on_reboot is updated with its default value - Do not break package building for systemd OSes - Drop wrong mock from chroot unit test - Support systemd versions with dot (bsc#1176294) - Fix for grains.test_core unit test - Fix file/directory user and group ownership containing UTF-8 characters (bsc#1176024) - Several changes to virtualization: - - Fix virt update when cpu and memory are changed - - Memory Tuning GSoC - - Properly fix memory setting regression in virt.update - - Expose libvirt on_reboot in virt states - Support transactional systems (MicroOS) - zypperpkg module ignores retcode 104 for search() (bsc#1159670) - Xen disk fixes. No longer generates volumes for Xen disks, but the corresponding file or block disk (bsc#1175987) - Invalidate file list cache when cache file modified time is in the future (bsc#1176397) - Prevent import errors when running test_btrfs unit tests - Added: * drop-wrong-mock-from-chroot-unit-test.patch * ensure-virt.update-stop_on_reboot-is-updated-with-it.patch * invalidate-file-list-cache-when-cache-file-modified-.patch * zypperpkg-ignore-retcode-104-for-search-bsc-1176697-.patch * support-transactional-systems-microos-268.patch * xen-disk-fixes-264.patch * prevent-import-errors-when-running-test_btrfs-unit-t.patch * bsc-1176024-fix-file-directory-user-and-group-owners.patch * path-replace-functools.wraps-with-six.wraps-bsc-1177.patch * backport-a-few-virt-prs-272.patch * fix-grains.test_core-unit-test-276.patch- Fix virt.update with CPU defined - Fix virt issues and invalid input errors from 'salt.utils.data' (bsc#1176480) - Reintroduces the patches from opensuse-3000.2-virt-backports-236.patch coming from Salt 3001 - Do not raise StreamClosedError traceback but only log it (bsc#1175549) - Various fixes to the mysql module to break out the handling of user - Take care of failed, skipped and unreachable tasks and propagate "retcode" (bsc#1173911) (bsc#1173909) - Added: * do-not-raise-streamclosederror-traceback-but-only-lo.patch * fix-the-removed-six.itermitems-and-six.-_type-262.patch * backport-virt-patches-from-3001-256.patch * various-fixes-to-the-mysql-module-to-break-out-the-h.patch * ansiblegate-take-care-of-failed-skipped-and-unreacha.patch * fix-virt.update-with-cpu-defined-263.patch- Require /usr/bin/python instead of /bin/python for RHEL-family (bsc#1173936) - Don't install SuSEfirewall2 service files in Factory - Fix __mount_device wrapper to accept separate args and kwargs - Fix the registration of libvirt pool and nodedev events - Accept nested namespaces in spacewalk.api runner function. (bsc#1172211) - info_installed works without status attr now (bsc#1171461) - Added: * info_installed-works-without-status-attr-now.patch * fix-__mount_device-wrapper-253.patch * opensuse-3000-libvirt-engine-fixes-248.patch * opensuse-3000-spacewalk-runner-parse-command-247.patch- Fix for TypeError in Tornado importer (bsc#1174165) - Added: * fix-type-error-in-tornadoimporter.patch- Require python3-distro only for TW (bsc#1173072)- Various virt backports from 3000.2 - Added: * opensuse-3000.2-virt-backports-236.patch- Avoid traceback on debug logging for swarm module (bsc#1172075) - Add publish_batch to ClearFuncs exposed methods - zypperpkg: filter patterns that start with dot (bsc#1171906) - Batch mode now also correctly provides return value (bsc#1168340) - Add docker.logout to docker execution module (bsc#1165572) - Testsuite fix - Add option to enable/disable force refresh for zypper - Python3.8 compatibility changes - Prevent sporious "salt-api" stuck processes when managing SSH minions because of logging deadlock (bsc#1159284) - Avoid segfault from "salt-api" under certain conditions of heavy load managing SSH minions (bsc#1169604) - Revert broken changes to slspath made on Salt 3000 (saltstack/salt#56341) (bsc#1170104) - Returns a the list of IPs filtered by the optional network list - Added: * option-to-en-disable-force-refresh-in-zypper-215.patch * zypperpkg-filter-patterns-that-start-with-dot-243.patch * prevent-logging-deadlock-on-salt-api-subprocesses-bs.patch * revert-changes-to-slspath-saltstack-salt-56341.patch * fix-for-return-value-ret-vs-return-in-batch-mode.patch * add-docker-logout-237.patch * add-ip-filtering-by-network.patch * make-lazyloader.__init__-call-to-_refresh_file_mappi.patch * add-publish_batch-to-clearfuncs-exposed-methods.patch * python3.8-compatibility-pr-s-235.patch * fix-a-test-and-some-variable-names-229.patch * avoid-has_docker-true-if-import-messes-with-salt.uti.patch- Fix CVE-2020-11651 and CVE-2020-11652 (bsc#1170595) - Do not require vendored backports-abc (bsc#1170288) - Fix partition.mkpart to work without fstype (bsc#1169800) - Added: * fixed-bug-lvm-has-no-parttion-type.-the-scipt-later-.patch * remove-vendored-backports-abc-from-requirements.patch * fix-cve-2020-11651-and-fix-cve-2020-11652.patch- Update to Salt version 3000 See release notes: https://docs.saltstack.com/en/latest/topics/releases/3000.html - Do not make file.recurse state to fail when msgpack 0.5.4 (bsc#1167437) - Fixes status attribute issue in aptpkg test - Make setup.py script not to require setuptools greater than 9.1 loop: fix variable names for until_no_eval - Drop conflictive module.run state patch (bsc#1167437) - Update patches after rebase with upstream v3000 tag (bsc#1167437) - Fix some requirements issues depending on Python3 versions - Removes obsolete patch - Fix for low rpm_lowpkg unit test - Add python-singledispatch as dependency for python2-salt - Fix for temp folder definition in loader unit test - Make "salt.ext.tornado.gen" to use "salt.ext.backports_abc" on Python 2 - Fix regression in service states with reload argument - Fix integration test failure for test_mod_del_repo_multiline_values - Fix for unless requisite when pip is not installed - Fix errors from unit tests due NO_MOCK and NO_MOCK_REASON deprecation - Fix tornado imports and missing _utils after rebasing patches - Removes unresolved merge conflict in yumpkg module - Added: * make-setup.py-script-to-not-require-setuptools-9.1.patch * opensuse-3000-virt-defined-states-222.patch * fix-for-unless-requisite-when-pip-is-not-installed.patch * fix-typo-on-msgpack-version-when-sanitizing-msgpack-.patch * fix-regression-in-service-states-with-reload-argumen.patch * batch_async-avoid-using-fnmatch-to-match-event-217.patch * make-salt.ext.tornado.gen-to-use-salt.ext.backports_.patch * virt._get_domain-don-t-raise-an-exception-if-there-i.patch * loop-fix-variable-names-for-until_no_eval.patch * removes-unresolved-merge-conflict-in-yumpkg-module.patch * add-missing-_utils-at-loader-grains_func.patch * changed-imports-to-vendored-tornado.patch * sanitize-grains-loaded-from-roster_grains.json.patch * fix-for-temp-folder-definition-in-loader-unit-test.patch * remove-deprecated-usage-of-no_mock-and-no_mock_reaso.patch * reintroducing-reverted-changes.patch * adds-explicit-type-cast-for-port.patch * fix-wrong-test_mod_del_repo_multiline_values-test-af.patch * re-adding-function-to-test-for-root.patch - Modified: * move-server_id-deprecation-warning-to-reduce-log-spa.patch * let-salt-ssh-use-platform-python-binary-in-rhel8-191.patch * strip-trailing-from-repo.uri-when-comparing-repos-in.patch * prevent-test_mod_del_repo_multiline_values-to-fail.patch * prevent-ansiblegate-unit-tests-to-fail-on-ubuntu.patch * remove-arch-from-name-when-pkg.list_pkgs-is-called-w.patch * async-batch-implementation.patch * add-hold-unhold-functions.patch * add-all_versions-parameter-to-include-all-installed-.patch * enable-passing-a-unix_socket-for-mysql-returners-bsc.patch * fix-for-log-checking-in-x509-test.patch * fix-zypper.list_pkgs-to-be-aligned-with-pkg-state.patch * add-multi-file-support-and-globbing-to-the-filetree-.patch * remove-unnecessary-yield-causing-badyielderror-bsc-1.patch * fix-bsc-1065792.patch * use-threadpool-from-multiprocessing.pool-to-avoid-le.patch * return-the-expected-powerpc-os-arch-bsc-1117995.patch * fixes-cve-2018-15750-cve-2018-15751.patch * add-cpe_name-for-osversion-grain-parsing-u-49946.patch * fix-failing-unit-tests-for-batch-async.patch * decide-if-the-source-should-be-actually-skipped.patch * allow-passing-kwargs-to-pkg.list_downloaded-bsc-1140.patch * add-batch_presence_ping_timeout-and-batch_presence_p.patch * run-salt-master-as-dedicated-salt-user.patch * use-current-ioloop-for-the-localclient-instance-of-b.patch * integration-of-msi-authentication-with-azurearm-clou.patch * temporary-fix-extend-the-whitelist-of-allowed-comman.patch * improve-batch_async-to-release-consumed-memory-bsc-1.patch * fix-unit-test-for-grains-core.patch * add-supportconfig-module-for-remote-calls-and-saltss.patch * avoid-excessive-syslogging-by-watchdog-cronjob-58.patch * debian-info_installed-compatibility-50453.patch * include-aliases-in-the-fqdns-grains.patch * implement-network.fqdns-module-function-bsc-1134860-.patch * fix-async-batch-multiple-done-events.patch * support-config-non-root-permission-issues-fixes-u-50.patch * fix-zypper-pkg.list_pkgs-expectation-and-dpkg-mockin.patch * activate-all-beacons-sources-config-pillar-grains.patch * avoid-traceback-when-http.query-request-cannot-be-pe.patch * fix-aptpkg-systemd-call-bsc-1143301.patch * use-adler32-algorithm-to-compute-string-checksums.patch * do-not-break-repo-files-with-multiple-line-values-on.patch * fix-batch_async-obsolete-test.patch * provide-the-missing-features-required-for-yomi-yet-o.patch * fall-back-to-pymysql.patch * xfs-do-not-fails-if-type-is-not-present.patch * restore-default-behaviour-of-pkg-list-return.patch * add-missing-fun-for-returns-from-wfunc-executions.patch * virt-adding-kernel-boot-parameters-to-libvirt-xml-55.patch * run-salt-api-as-user-salt-bsc-1064520.patch * loosen-azure-sdk-dependencies-in-azurearm-cloud-driv.patch * support-for-btrfs-and-xfs-in-parted-and-mkfs.patch * fixing-streamclosed-issue.patch * do-not-crash-when-there-are-ipv6-established-connect.patch * calculate-fqdns-in-parallel-to-avoid-blockings-bsc-1.patch * fix-async-batch-race-conditions.patch * fix-issue-2068-test.patch * fix-a-wrong-rebase-in-test_core.py-180.patch * fix-for-suse-expanded-support-detection.patch * add-environment-variable-to-know-if-yum-is-invoked-f.patch * add-standalone-configuration-file-for-enabling-packa.patch * switch-firewalld-state-to-use-change_interface.patch * do-not-make-ansiblegate-to-crash-on-python3-minions.patch * make-aptpkg.list_repos-compatible-on-enabled-disable.patch * add-custom-suse-capabilities-as-grains.patch * accumulated-changes-from-yomi-167.patch * get-os_arch-also-without-rpm-package-installed.patch * fix-git_pillar-merging-across-multiple-__env__-repos.patch * do-not-load-pip-state-if-there-is-no-3rd-party-depen.patch * add-saltssh-multi-version-support-across-python-inte.patch * early-feature-support-config.patch * add-virt.all_capabilities.patch * accumulated-changes-required-for-yomi-165.patch * fix-memory-leak-produced-by-batch-async-find_jobs-me.patch * fix-ipv6-scope-bsc-1108557.patch * prevent-systemd-run-description-issue-when-running-a.patch * make-profiles-a-package.patch * don-t-call-zypper-with-more-than-one-no-refresh.patch * batch.py-avoid-exception-when-minion-does-not-respon.patch * read-repo-info-without-using-interpolation-bsc-11356.patch * x509-fixes-111.patch * do-not-report-patches-as-installed-when-not-all-the-.patch - Removed: * remove-virt.pool_delete-fast-parameter-178.patch * adds-the-possibility-to-also-use-downloadonly-in-kwa.patch * align-virt-full-info-fixes-with-upstream-192.patch * take-checksums-arg-into-account-for-postgres.datadir.patch * virt-1.volume_infos-fix-for-single-vm.patch * virt.volume_infos-needs-to-ignore-inactive-pools-174.patch * preserve-already-defined-destructive_tests-and-expen.patch * list_downloaded-for-apt-module.patch * fix-virt-states-to-not-fail-on-vms-already-stopped.-.patch * virt.volume_infos-fix-for-single-vm.patch * restrict-the-start_event_grains-only-to-the-start-ev.patch * fix-virt.full_info-176.patch * preserving-signature-in-module.run-state-u-50049.patch * checking-for-jid-before-returning-data.patch * virt.volume_infos-silence-libvirt-error-message-175.patch * add-virt.volume_infos-and-virt.volume_delete.patch * add-virt.network_get_xml-function.patch * virt.network_define-allow-adding-ip-configuration.patch * add-ppc64le-as-a-valid-rpm-package-architecture.patch * bugfix-any-unicode-string-of-length-16-will-raise-ty.patch * fix-for-older-mock-module.patch * fix-virt.get_hypervisor-188.patch * 2019.2.0-pr-54196-backport-173.patch * enable-passing-grains-to-start-event-based-on-start_.patch * fix-load-cached-grain-osrelease_info.patch * open-suse-2019.2.3-virt-defined-states-219.patch * backport-saltutil-state-module-to-2019.2-codebase.patch- Enable building and installation for Fedora - Disable python2 build on Tumbleweed We are removing the python2 interpreter from openSUSE (SLE16). As such disable salt building for python2 there.- Sanitize grains loaded from roster_grains.json cache during "state.pkg" - Added: * fix-load-cached-grain-osrelease_info.patch- Build: Buildequire pkgconfig(systemd) instead of systemd- Backport saltutil state module to 2019.2 codebase (bsc#1167556) - Add new custom SUSE capability for saltutil state module - Added: * backport-saltutil-state-module-to-2019.2-codebase.patch * add-new-custom-suse-capability-for-saltutil-state-mo.patch- virt._get_domain: don't raise an exception if there is no VM - Added: * virt._get_domain-don-t-raise-an-exception-if-there-i.patch- Adds test for zypper abbreviation fix - Improved storage pool or network handling - Better import cache handline - Added: * loader-invalidate-the-import-cachefor-extra-modules.patch * open-suse-2019.2.3-virt-defined-states-219.patch - Modified: * use-full-option-name-instead-of-undocumented-abbrevi.patch- Use full option name instead of undocumented abbreviation for zypper - Requiring python3-distro only for openSUSE/SLE >= 15 - Added: * use-full-option-name-instead-of-undocumented-abbrevi.patch- python-distro is only needed for > Python 3.7. Removing it for Python 2- Avoid possible user escalation upgrading salt-master (bsc#1157465) (CVE-2019-18897)- Fix unit tests failures in test_batch_async tests - Added: * fix-unit-tests-for-batch-async-after-refactor.patch- Batch Async: Handle exceptions, properly unregister and close instances after running async batching to avoid CPU starvation of the MWorkers (bsc#1162327) - RHEL/CentOS 8 uses platform-python instead of python3 - Enable build for Python 3.8 - Added: * batch_async-avoid-using-fnmatch-to-match-event-217.patch * apply-patch-from-upstream-to-support-python-3.8.patch * batch-async-catch-exceptions-and-safety-unregister-a.patch- Fix 'os_family' grain for Astra Linux Common Edition - Added: * add-astra-linux-common-edition-to-the-os-family-list.patch- Update to Salt version 2019.2.3 (CVE-2019-17361) (bsc#1163981) (bsc#1162504) See release notes: https://docs.saltstack.com/en/latest/topics/releases/2019.2.3.html - Modified: * use-adler32-algorithm-to-compute-string-checksums.patch- Enable passing grains to start event based on 'start_event_grains' configuration parameter - Added: * restrict-the-start_event_grains-only-to-the-start-ev.patch * enable-passing-grains-to-start-event-based-on-start_.patch- Support for Btrfs and XFS in parted and mkfs added - Added: * support-for-btrfs-and-xfs-in-parted-and-mkfs.patch- Adds list_downloaded for apt Module to enable pre-downloading support - Adds virt.(pool|network)_get_xml functions - Various libvirt updates * Add virt.pool_capabilities function * virt.pool_running improvements * Add virt.pool_deleted state * virt.network_define allow adding IP configuration - Added: * virt.network_define-allow-adding-ip-configuration.patch * list_downloaded-for-apt-module.patch * add-virt.network_get_xml-function.patch- virt: adding kernel boot parameters to libvirt xml - Added: * virt-adding-kernel-boot-parameters-to-libvirt-xml-55.patch- Fix virt states to not fail on VMs already stopped - Added: * fix-virt-states-to-not-fail-on-vms-already-stopped.-.patch- Add missing bugzilla references: Properly handle colons in inline dicts with yamlloader (bsc#1095651) Fix corrupt public key with m2crypto python3 (bsc#1099323) Add missing dateutils import (bsc#1099945) Fix UnicodeDecodeError using is_binary check (bsc#1100225) Prevent payload crash on decoding binary data (bsc#1100697) Fix file.blockreplace to avoid throwing IndexError (bsc#1101812) Add API log rotation on SUSE package (bsc#1102218) Fix wrong recurse behavior on for linux_acl.present (bsc#1106164) Handle anycast IPv6 addresses on network.routes (bsc#1114474) Crontab module fix: file attributes option missing (bsc#1114824) Add metadata to accepted keyword arguments (bsc#1122680) Bugfix: properly refresh pillars (bsc#1125015)- xfs: do not fail if type is not present (bsc#1153611) - Added: * xfs-do-not-fails-if-type-is-not-present.patch- Don't use __python indirection macros on spec file %__python is no longer defined in RPM 4.15 (python2 is going EOL in Jan 2020); additionally, python/python3 are just binaries in the path.- Fix errors when running virt.get_hypervisor function - Added: * fix-virt.get_hypervisor-188.patch- Align virt.full_info fixes with upstream Salt - Let salt-ssh use platform-python on RHEL8 (bsc#1158441) - Added: * align-virt-full-info-fixes-with-upstream-192.patch * let-salt-ssh-use-platform-python-binary-in-rhel8-191.patch- Fix StreamClosedError issue (bsc#1157479) - Added: * fix-batch_async-obsolete-test.patch * fixing-streamclosed-issue.patch- Prevent test_mod_del_repo_multiline_values to fail - Read repo info without using interpolation (bsc#1135656) - Requires vs BuildRequires - Limiting M2Crypto to >= SLE15 - Replacing pycrypto with M2Crypto (bsc#1165425) - Fix for log checking in x509 test - Update to 2019.2.2 release - Added: * fix-for-log-checking-in-x509-test.patch * prevent-test_mod_del_repo_multiline_values-to-fail.patch * read-repo-info-without-using-interpolation-bsc-11356.patch - Modified: * async-batch-implementation.patch * add-hold-unhold-functions.patch * adds-the-possibility-to-also-use-downloadonly-in-kwa.patch * decide-if-the-source-should-be-actually-skipped.patch * allow-passing-kwargs-to-pkg.list_downloaded-bsc-1140.patch * add-batch_presence_ping_timeout-and-batch_presence_p.patch * run-salt-master-as-dedicated-salt-user.patch * run-salt-api-as-user-salt-bsc-1064520.patch * fix-unit-test-for-grains-core.patch * add-environment-variable-to-know-if-yum-is-invoked-f.patch * fix-async-batch-multiple-done-events.patch * activate-all-beacons-sources-config-pillar-grains.patch * fix-for-older-mock-module.patch * do-not-break-repo-files-with-multiple-line-values-on.patch * fall-back-to-pymysql.patch * add-missing-fun-for-returns-from-wfunc-executions.patch * loosen-azure-sdk-dependencies-in-azurearm-cloud-driv.patch * add-virt.volume_infos-and-virt.volume_delete.patch * fix-issue-2068-test.patch * switch-firewalld-state-to-use-change_interface.patch * make-aptpkg.list_repos-compatible-on-enabled-disable.patch * fix-ipv6-scope-bsc-1108557.patch * 2019.2.0-pr-54196-backport-173.patch * do-not-make-ansiblegate-to-crash-on-python3-minions.patch * x509-fixes-111.patch * prevent-ansiblegate-unit-tests-to-fail-on-ubuntu.patch * fix-zypper.list_pkgs-to-be-aligned-with-pkg-state.patch * add-cpe_name-for-osversion-grain-parsing-u-49946.patch * fix-failing-unit-tests-for-batch-async.patch * temporary-fix-extend-the-whitelist-of-allowed-comman.patch * improve-batch_async-to-release-consumed-memory-bsc-1.patch * batch.py-avoid-exception-when-minion-does-not-respon.patch * preserve-already-defined-destructive_tests-and-expen.patch * virt.volume_infos-fix-for-single-vm.patch * move-server_id-deprecation-warning-to-reduce-log-spa.patch * include-aliases-in-the-fqdns-grains.patch * don-t-call-zypper-with-more-than-one-no-refresh.patch * add-custom-suse-capabilities-as-grains.patch * get-os_arch-also-without-rpm-package-installed.patch * add-saltssh-multi-version-support-across-python-inte.patch * accumulated-changes-required-for-yomi-165.patch * use-adler32-algorithm-to-compute-string-checksums.patch * remove-arch-from-name-when-pkg.list_pkgs-is-called-w.patch * use-current-ioloop-for-the-localclient-instance-of-b.patch * remove-virt.pool_delete-fast-parameter-178.patch * add-multi-file-support-and-globbing-to-the-filetree-.patch * use-threadpool-from-multiprocessing.pool-to-avoid-le.patch * prevent-systemd-run-description-issue-when-running-a.patch * integration-of-msi-authentication-with-azurearm-clou.patch * virt.volume_infos-needs-to-ignore-inactive-pools-174.patch * virt-1.volume_infos-fix-for-single-vm.patch * add-supportconfig-module-for-remote-calls-and-saltss.patch * avoid-excessive-syslogging-by-watchdog-cronjob-58.patch * strip-trailing-from-repo.uri-when-comparing-repos-in.patch * preserving-signature-in-module.run-state-u-50049.patch * fix-zypper-pkg.list_pkgs-expectation-and-dpkg-mockin.patch * fix-aptpkg-systemd-call-bsc-1143301.patch * calculate-fqdns-in-parallel-to-avoid-blockings-bsc-1.patch * remove-unnecessary-yield-causing-badyielderror-bsc-1.patch * debian-info_installed-compatibility-50453.patch * add-standalone-configuration-file-for-enabling-packa.patch * accumulated-changes-from-yomi-167.patch * add-virt.all_capabilities.patch * fix-memory-leak-produced-by-batch-async-find_jobs-me.patch * do-not-report-patches-as-installed-when-not-all-the-.patch * support-config-non-root-permission-issues-fixes-u-50.patch * add-all_versions-parameter-to-include-all-installed-.patch * fixes-cve-2018-15750-cve-2018-15751.patch * fix-bsc-1065792.patch * enable-passing-a-unix_socket-for-mysql-returners-bsc.patch * avoid-traceback-when-http.query-request-cannot-be-pe.patch * restore-default-behaviour-of-pkg-list-return.patch * take-checksums-arg-into-account-for-postgres.datadir.patch * early-feature-support-config.patch * provide-the-missing-features-required-for-yomi-yet-o.patch * implement-network.fqdns-module-function-bsc-1134860-.patch * fix-virt.full_info-176.patch * checking-for-jid-before-returning-data.patch * virt.volume_infos-silence-libvirt-error-message-175.patch * do-not-crash-when-there-are-ipv6-established-connect.patch * fix-for-suse-expanded-support-detection.patch * fix-a-wrong-rebase-in-test_core.py-180.patch * add-ppc64le-as-a-valid-rpm-package-architecture.patch * make-profiles-a-package.patch * bugfix-any-unicode-string-of-length-16-will-raise-ty.patch * fix-git_pillar-merging-across-multiple-__env__-repos.patch * return-the-expected-powerpc-os-arch-bsc-1117995.patch * fix-async-batch-race-conditions.patch * do-not-load-pip-state-if-there-is-no-3rd-party-depen.patch - Removed: * fix-syndic-start-issue.patch * prevent-already-reading-continuous-exception-message.patch * virt.pool_running-fix-pool-start.patch * azurefs-gracefully-handle-attributeerror.patch * virt-handle-whitespaces-in-vm-names.patch * mount-fix-extra-t-parameter.patch * try-except-undefineflags-as-this-operation-is-not-su.patch- Remove virt.pool_delete fast parameter (U#54474) - Added: * remove-virt.pool_delete-fast-parameter-178.patch- Remove unnecessary yield causing BadYieldError (bsc#1154620) - Added: * remove-unnecessary-yield-causing-badyielderror-bsc-1.patch- Prevent 'Already reading' continuous exception message (bsc#1137642) - Added: * prevent-already-reading-continuous-exception-message.patch- Fix for aptpkg test with older mock modules - Added: * fix-for-older-mock-module.patch- Remove wrong tests for core grain and improve debug logging - Use rich RPM deps to get a compatible version of tornado into the buildroot. - Added: * fix-a-wrong-rebase-in-test_core.py-180.patch- core.py: ignore wrong product_name files - zypperpkg: understand product type - Added: * accumulated-changes-from-yomi-167.patch- Enable usage of downloadonly parameter for apt module - Added: * adds-the-possibility-to-also-use-downloadonly-in-kwa.patch- Add missing 'fun' on events coming from salt-ssh wfunc executions (bsc#1151947) - Added: * add-missing-fun-for-returns-from-wfunc-executions.patch- Fix failing unit tests for batch async - Added: * fix-failing-unit-tests-for-batch-async.patch- Fix memory consumption problem on BatchAsync (bsc#1137642) - Added: * use-current-ioloop-for-the-localclient-instance-of-b.patch- Fix dependencies for RHEL 8- Prevent systemd-run description issue when running aptpkg (bsc#1152366) - Added: * prevent-systemd-run-description-issue-when-running-a.patch- Take checksums arg into account for postgres.datadir_init (bsc#1151650) - Added: * take-checksums-arg-into-account-for-postgres.datadir.patch- Improve batch_async to release consumed memory (bsc#1140912) - Fix memory leak produced by batch async find_jobs mechanism (bsc#1140912) - Grant read and execute permission to others (bsc#1150447) - Added: * improve-batch_async-to-release-consumed-memory-bsc-1.patch * fix-memory-leak-produced-by-batch-async-find_jobs-me.patch- Require shadow instead of old pwdutils (bsc#1130588)- Conflict with tornado >= 5; for now we can only cope with Tornado 4.x (boo#1101780).- Fix virt.full_info (bsc#1146382) - virt.volume_infos: silence libvirt error message - virt.volume_infos needs to ignore inactive pools - Fix for various bugs in virt network and pool states - Implement network.fqdns module function (bsc#1134860) - Added: * 2019.2.0-pr-54196-backport-173.patch * virt.volume_infos-silence-libvirt-error-message-175.patch * fix-virt.full_info-176.patch * implement-network.fqdns-module-function-bsc-1134860-.patch * virt.volume_infos-needs-to-ignore-inactive-pools-174.patch- Restore default behaviour of pkg list return (bsc#1148714) - Strip trailing "/" from repo.uri when comparing repos in apktpkg.mod_repo (bsc#1146192) - Added: * strip-trailing-from-repo.uri-when-comparing-repos-in.patch * restore-default-behaviour-of-pkg-list-return.patch- Use python3 to build package Salt for RHEL8 - Make python3 default for RHEL8- Fix aptpkg systemd call (bsc#1143301) - Added: * fix-aptpkg-systemd-call-bsc-1143301.patch- Move server_id deprecation warning to reduce log spamming (bsc#1135567) (bsc#1135732) - Added: * move-server_id-deprecation-warning-to-reduce-log-spa.patch- Multiple fixes on cmdmod, chroot, freezer and zypperpkg needed for Yomi cmdmod: fix runas and group in run_chroot chroot: add missing sys directory chroot: change variable name to root chroot: fix bug in safe_kwargs iteration freezer: do not fail in cache dir is present freezer: clean freeze YAML profile on restore zypperpkg: fix pkg.list_pkgs cache - Added: * accumulated-changes-required-for-yomi-165.patch- Avoid traceback on http.query when there are errors with the requested URL (bsc#1128554) - Added: * avoid-traceback-when-http.query-request-cannot-be-pe.patch- Salt python client get_full_returns seems return data from incorrect jid (bsc#1131114) - Added: * checking-for-jid-before-returning-data.patch- virt.volume_infos: don't raise an error if there is no VM - Added: * virt-1.volume_infos-fix-for-single-vm.patch- Prevent ansiblegate unit tests to fail on Ubuntu - Added: * prevent-ansiblegate-unit-tests-to-fail-on-ubuntu.patch- Allow passing kwargs to pkg.list_downloaded for Zypper (bsc#1140193) - Added: * allow-passing-kwargs-to-pkg.list_downloaded-bsc-1140.patch- Do not make "ansiblegate" module to crash on Python3 minions (bsc#1139761) - Added: * do-not-make-ansiblegate-to-crash-on-python3-minions.patch- Provide the missing features required for Yomi (Yet one more installer) - Added: * provide-the-missing-features-required-for-yomi-yet-o.patch- Fix zypper pkg.list_pkgs test expectation and dpkg mocking - Added: * fix-zypper-pkg.list_pkgs-expectation-and-dpkg-mockin.patch- Set 'salt' group for files and directories created by salt-standalone-formulas-configuration package - Various fixes for virt module - Fix virt.volume_infos raising an exception when there is only virtual machine on the minion. - Fix virt.purge() on all non-KVM hypervisors. For instance on Xen, virt.purge would simply throw an exception about unsupported flag - Building a libvirt pool starts it. When defining a new pool, we need to let build start it or we will get libvirt errors. - Fix handling of Virtual Machines with white space in their name. - Added: * virt.pool_running-fix-pool-start.patch * virt-handle-whitespaces-in-vm-names.patch * virt.volume_infos-fix-for-single-vm.patch * try-except-undefineflags-as-this-operation-is-not-su.patch- avoid batch.py exception when minion does not respond (bsc#1135507) - Added: * batch.py-avoid-exception-when-minion-does-not-respon.patch- Preserve already defined DESTRUCTIVE_TESTS and EXPENSIVE_TESTS env variables - Added: * preserve-already-defined-destructive_tests-and-expen.patch- Do not break repo files with multiple line values on yumpkg (bsc#1135360) - Added: * do-not-break-repo-files-with-multiple-line-values-on.patch- Fix return status when installing or updating RPM packages with "ppc64le" arch (bsc#1133647) - Added: * add-ppc64le-as-a-valid-rpm-package-architecture.patch- Add new "salt-standalone-formulas-configuration" package (fate#327791) - Added: * add-standalone-configuration-file-for-enabling-packa.patch- Switch firewalld state to use change_interface (bsc#1132076) - Added: * switch-firewalld-state-to-use-change_interface.patch- Fix async-batch to fire a single done event - Added: * fix-async-batch-multiple-done-events.patch- Do not make Salt CLI to crash when there are IPv6 established connections (bsc#1130784) - Added: * do-not-crash-when-there-are-ipv6-established-connect.patch- Include aliases in FQDNS grain (bsc#1121439)- Fix issue preventing syndic to start - Update year on spec copyright notice - Added: * fix-syndic-start-issue.patch- Use ThreadPool from multiprocessing.pool to avoid leakings when calculating FQDNs - Do not report patches as installed on RHEL systems when not all the related packages are installed (bsc#1128061) - Added: * use-threadpool-from-multiprocessing.pool-to-avoid-le.patch * do-not-report-patches-as-installed-when-not-all-the-.patch- Update to 2019.2.0 complete (FATE#327138, bsc#1133523) - Fix batch/batch-async related issues - Calculate FQDNs in parallel to avoid blockings (bsc#1129079) - Incorporate virt.volume_info fixes (PR#131) - Re-adds patch because of increased offset due to previous patch removal - Removing patch to add root parameter to zypper module - Fix for -t parameter in mount module - Added: * mount-fix-extra-t-parameter.patch * add-batch_presence_ping_timeout-and-batch_presence_p.patch * fix-async-batch-race-conditions.patch * calculate-fqdns-in-parallel-to-avoid-blockings-bsc-1.patch - Modified: * don-t-call-zypper-with-more-than-one-no-refresh.patch * add-virt.volume_infos-and-virt.volume_delete.patch - Removed: * zypper-add-root-configuration-parameter.patch- No longer limiting Python3 version to <3.7- Async batch implementation - Added: * async-batch-implementation.patch- Update to Salt 2019.2.0 release For further information see: https://docs.saltstack.com/en/latest/topics/releases/2019.2.0.html - Added: * add-virt.all_capabilities.patch * add-virt.volume_infos-and-virt.volume_delete.patch * don-t-call-zypper-with-more-than-one-no-refresh.patch * include-aliases-in-the-fqdns-grains.patch * temporary-fix-extend-the-whitelist-of-allowed-comman.patch - Removed: * accounting-for-when-files-in-an-archive-contain-non-.patch * add-engine-relaying-libvirt-events.patch * add-other-attribute-to-gecos-fields-to-avoid-inconsi.patch * add-support-for-python-3.7.patch * align-suse-salt-master.service-limitnofiles-limit-wi.patch * avoid-incomprehensive-message-if-crashes.patch * change-stringio-import-in-python2-to-import-the-clas.patch * decode-file-contents-for-python2-bsc-1102013.patch * do-not-override-jid-on-returners-only-sending-back-t.patch * don-t-error-on-retcode-0-in-libcrypto.openssl_init_c.patch * feat-add-grain-for-all-fqdns.patch * fix-async-call-to-process-manager.patch * fix-decrease-loglevel-when-unable-to-resolve-addr.patch * fix-deprecation-warning-bsc-1095507.patch * fix-diffing-binary-files-in-file.get_diff-bsc-109839.patch * fix-for-ec2-rate-limit-failures.patch * fix-for-errno-0-resolver-error-0-no-error-bsc-108758.patch * fix-for-sorting-of-multi-version-packages-bsc-109717.patch * fix-index-error-when-running-on-python-3.patch * fix-latin1-encoding-problems-on-file-module-bsc-1116.patch * fix-mine.get-not-returning-data-workaround-for-48020.patch * fix-unboundlocalerror-in-file.get_diff.patch * fixed-usage-of-ipaddress.patch * fixing-issue-when-a-valid-token-is-generated-even-wh.patch * get-os_family-for-rpm-distros-from-the-rpm-macros.-u.patch * improved-handling-of-ldap-group-id.patch * only-do-reverse-dns-lookup-on-ips-for-salt-ssh.patch * option-to-merge-current-pillar-with-opts-pillar-duri.patch * prepend-current-directory-when-path-is-just-filename.patch * prevent-zypper-from-parsing-repo-configuration-from-.patch * remove-old-hack-when-reporting-multiversion-packages.patch * retire-md5-checksum-for-pkg-mgmt-plugins.patch * show-recommendations-for-salt-ssh-cross-version-pyth.patch * strip-trailing-commas-on-linux-user-gecos-fields.patch * support-use-of-gce-instance-credentials-109.patch * update-error-list-for-zypper.patch * x509-fixes-for-remote-signing-106.patch - Modified: * add-all_versions-parameter-to-include-all-installed-.patch * add-cpe_name-for-osversion-grain-parsing-u-49946.patch * add-environment-variable-to-know-if-yum-is-invoked-f.patch * add-hold-unhold-functions.patch * add-saltssh-multi-version-support-across-python-inte.patch * azurefs-gracefully-handle-attributeerror.patch * bugfix-any-unicode-string-of-length-16-will-raise-ty.patch * debian-info_installed-compatibility-50453.patch * do-not-load-pip-state-if-there-is-no-3rd-party-depen.patch * fall-back-to-pymysql.patch * fix-for-suse-expanded-support-detection.patch * fix-git_pillar-merging-across-multiple-__env__-repos.patch * fix-ipv6-scope-bsc-1108557.patch * fix-issue-2068-test.patch * fix-zypper.list_pkgs-to-be-aligned-with-pkg-state.patch * fixes-cve-2018-15750-cve-2018-15751.patch * get-os_arch-also-without-rpm-package-installed.patch * integration-of-msi-authentication-with-azurearm-clou.patch * loosen-azure-sdk-dependencies-in-azurearm-cloud-driv.patch * remove-arch-from-name-when-pkg.list_pkgs-is-called-w.patch * use-adler32-algorithm-to-compute-string-checksums.patch * x509-fixes-111.patch * zypper-add-root-configuration-parameter.patch- Add root parameter to Zypper module - Added: * zypper-add-root-configuration-parameter.patch- Do not restrict the Python version to < 3.7- Fix integration tests in state compiler (U#2068) - Added: * fix-issue-2068-test.patch- Fix "pkg.list_pkgs" output when using "attr" to take the arch into account (bsc#1114029) - Added: * remove-arch-from-name-when-pkg.list_pkgs-is-called-w.patch- Fix powerpc null server_id_arch (bsc#1117995) - Added: * return-the-expected-powerpc-os-arch-bsc-1117995.patch- Fix module 'azure.storage' has no attribute '__version__' (bsc#1121091) - Added: * azurefs-gracefully-handle-attributeerror.patch- Add supportconfig module and states for minions and SaltSSH - Added: * add-supportconfig-module-for-remote-calls-and-saltss.patch- Fix FIPS enabled RES clients (bsc#1099887) - Added: * retire-md5-checksum-for-pkg-mgmt-plugins.patch- Add hold/unhold functions. Fix Debian repo "signed-by". - Added: * decide-if-the-source-should-be-actually-skipped.patch * add-hold-unhold-functions.patch- Fix latin1 encoding problems on file module (bsc#1116837) - Added: * fix-latin1-encoding-problems-on-file-module-bsc-1116.patch- Don't error on retcode 0 in libcrypto.OPENSSL_init_crypto - Added: * don-t-error-on-retcode-0-in-libcrypto.openssl_init_c.patch- Debian info_installed compatibility (U#50453) - Added: * debian-info_installed-compatibility-50453.patch- Add compatibility with other package modules for "list_repos" function - Bugfix: unable to detect os arch when RPM is not installed (bsc#1114197) - Added: * make-aptpkg.list_repos-compatible-on-enabled-disable.patch * get-os_arch-also-without-rpm-package-installed.patch- Fix git_pillar merging across multiple __env__ repositories (bsc#1112874) - Added: * fix-git_pillar-merging-across-multiple-__env__-repos.patch- Fix LDAP authentication issue when a valid token is generated by the salt-api even when invalid user credentials are passed. (U#48901) - Added: * fixing-issue-when-a-valid-token-is-generated-even-wh.patch- Improved handling of LDAP group id. gid is no longer treated as a string, which could have lead to faulty group creations. (bsc#1113784) - Added: * improved-handling-of-ldap-group-id.patch- Fix remote command execution and incorrect access control when using salt-api. (bsc#1113699) (CVE-2018-15751) - Fix Directory traversal vulnerability when using salt-api. Allows an attacker to determine what files exist on a server when querying /run or /events. (bsc#1113698) (CVE-2018-15750) - Added: * fixes-cve-2018-15750-cve-2018-15751.patch- Add multi-file support and globbing to the filetree (U#50018) - Added: * add-multi-file-support-and-globbing-to-the-filetree-.patch- Bugfix: supportconfig non-root permission issues (U#50095) - Added: * support-config-non-root-permission-issues-fixes-u-50.patch- Open profiles permissions to everyone for read-only- Preserving signature in "module.run" state (U#50049) - Added: * preserving-signature-in-module.run-state-u-50049.patch- Install default salt-support profiles- Fix unit tests due to merger failure - Add CPE_NAME for osversion* grain parsing - Get os_family for RPM distros from the RPM macros - Install support profiles - Added: * get-os_family-for-rpm-distros-from-the-rpm-macros.-u.patch * add-cpe_name-for-osversion-grain-parsing-u-49946.patch * make-profiles-a-package.patch * fix-unit-test-for-grains-core.patch- Bugfix: any unicode string of length 16 will raise TypeError - Added: * bugfix-any-unicode-string-of-length-16-will-raise-ty.patch- Fix async call to process manager (bsc#1110938) - Early feature: Salt support-config (salt-support) - Added: * fix-async-call-to-process-manager.patch * early-feature-support-config.patch- Fix IPv6 scope (bsc#1108557) - Added: * fix-ipv6-scope-bsc-1108557.patch- Handle zypper ZYPPER_EXIT_NO_REPOS exit code (bsc#1108834, bsc#1109893) - Added: * update-error-list-for-zypper.patch- Bugfix for pkg_resources crash (bsc#1104491) - Added: * do-not-load-pip-state-if-there-is-no-3rd-party-depen.patch- Fix loosen azure sdk dependencies in azurearm cloud driver (bsc#1107333) - Added: * loosen-azure-sdk-dependencies-in-azurearm-cloud-driv.patch- Fix broken "resolve_capabilities" on Python 3 (bsc#1108995) - Added: * fix-index-error-when-running-on-python-3.patch- Allow empty service_account_private_key in GCE driver (bsc#1108969) - Added: * support-use-of-gce-instance-credentials-109.patch- Decode file contents for python2 (bsc#1103530) - Check dmidecoder executable on each "smbios" call to avoid race condition (bsc#1101880) - Fix pkg.upgrade reports when dealing with multiversion packages (bsc#1102265) - Accounting for when files in an archive contain non-ascii characters (bsc#1099460) - Fix deprecation warning (bsc#1095507) - Fix (bsc#1065792) - Fix (bsc#108758) - Handle packages with multiple version properly with zypper (bsc#1096514) - Fix file.get_diff regression in 2018.3 (bsc#1098394) - Provide python version mismatch solutions (bsc#1072599) - Fix file.managed binary file utf8 error (bsc#1098394) - Prevent zypper from parsing repo configuration from not .repo files (bsc#1094055) - Add environment variable to know if yum is invoked from Salt (bsc#1057635) - Prevent deprecation warning with salt-ssh (bsc#1095507) - Align SUSE salt-master.service 'LimitNOFILES' limit with upstream Salt - Add 'other' attribute to GECOS fields to avoid inconsistencies with chfn - Collect all versions of installed packages on SUSE and RHEL systems (bsc#1089526)- Prepend current directory when path is just filename (bsc#1095942) - Integration of MSI authentication for azurearm - Adds fix for SUSE Expanded Support os grain detection - Fixes 509x remote signing - Fix for StringIO import in Python2 - Use Adler32 algorithm to compute string checksums (bsc#1102819) - Only do reverse DNS lookup on IPs for salt-ssh (bsc#1104154) - Add support for Python 3.7 - Fix license macro to build on SLE12SP2 - Decode file contents for python2 (bsc#1102013) - Fix for sorting of multi-version packages (bsc#1097174 and bsc#1097413) - Fix mine.get not returning data - workaround for #48020 (bsc#1100142) - Added: * change-stringio-import-in-python2-to-import-the-clas.patch * integration-of-msi-authentication-with-azurearm-clou.patch * x509-fixes-for-remote-signing-106.patch * fix-for-suse-expanded-support-detection.patch * only-do-reverse-dns-lookup-on-ips-for-salt-ssh.patch * prepend-current-directory-when-path-is-just-filename.patch * add-support-for-python-3.7.patch * decode-file-contents-for-python2-bsc-1102013.patch * fix-mine.get-not-returning-data-workaround-for-48020.patch * x509-fixes-111.patch * use-adler32-algorithm-to-compute-string-checksums.patch - Modified: * fix-for-sorting-of-multi-version-packages-bsc-109717.patch- Update to 2018.3.2 See https://docs.saltstack.com/en/latest/topics/releases/2018.3.2.html for full changelog - Added: * accounting-for-when-files-in-an-archive-contain-non-.patch * add-all_versions-parameter-to-include-all-installed-.patch * add-custom-suse-capabilities-as-grains.patch * add-engine-relaying-libvirt-events.patch * add-environment-variable-to-know-if-yum-is-invoked-f.patch * add-other-attribute-to-gecos-fields-to-avoid-inconsi.patch * align-suse-salt-master.service-limitnofiles-limit-wi.patch * avoid-incomprehensive-message-if-crashes.patch * fix-deprecation-warning-bsc-1095507.patch * fix-diffing-binary-files-in-file.get_diff-bsc-109839.patch * fix-unboundlocalerror-in-file.get_diff.patch * fix-zypper.list_pkgs-to-be-aligned-with-pkg-state.patch * prevent-zypper-from-parsing-repo-configuration-from-.patch * remove-old-hack-when-reporting-multiversion-packages.patch * show-recommendations-for-salt-ssh-cross-version-pyth.patch - Modified: * activate-all-beacons-sources-config-pillar-grains.patch * add-saltssh-multi-version-support-across-python-inte.patch * avoid-excessive-syslogging-by-watchdog-cronjob-58.patch * do-not-override-jid-on-returners-only-sending-back-t.patch * enable-passing-a-unix_socket-for-mysql-returners-bsc.patch * fall-back-to-pymysql.patch * feat-add-grain-for-all-fqdns.patch * fix-bsc-1065792.patch * fix-decrease-loglevel-when-unable-to-resolve-addr.patch * fix-for-ec2-rate-limit-failures.patch * fix-for-errno-0-resolver-error-0-no-error-bsc-108758.patch * fixed-usage-of-ipaddress.patch * option-to-merge-current-pillar-with-opts-pillar-duri.patch * run-salt-api-as-user-salt-bsc-1064520.patch * run-salt-master-as-dedicated-salt-user.patch * strip-trailing-commas-on-linux-user-gecos-fields.patch - Deleted: * explore-module.run-response-to-catch-the-result-in-d.patch * extra-filerefs-include-files-even-if-no-refs-in-stat.patch * fix-cp.push-empty-file.patch * fix-for-sorting-of-multi-version-packages-bsc-109717.patch * fix-openscap-push.patch * initialize-__context__-retcode-for-functions-handled.patch * make-it-possible-to-use-login-pull-and-push-from-mod.patch * move-log_file-option-to-changeable-defaults.patch * provide-kwargs-to-pkg_resource.parse_targets-require.patch * remove-obsolete-unicode-handling-in-pkg.info_install.patch- Documentation refresh to 2018.3.0- No more AWS EC2 rate limitations in salt-cloud (bsc#1088888) - MySQL returner now also allows to use Unix sockets (bsc#1091371) - Added: * fix-for-ec2-rate-limit-failures.patch * enable-passing-a-unix_socket-for-mysql-returners-bsc.patch- Do not override jid on returners, only sending back to master (bsc#1092373) - Fixes for salt-ssh: - Option --extra-filerefs doesn't add all files to the state archive - Pillar completely overwritten (not merged) when doing module.run + state.apply with pillar in kwargs - Remove minion/thin/version if exists to force thin regeneration (bsc#1092161) - Added: * extra-filerefs-include-files-even-if-no-refs-in-stat.patch * do-not-override-jid-on-returners-only-sending-back-t.patch * option-to-merge-current-pillar-with-opts-pillar-duri.patch- Fixed Python 3 issue with CIDR addresses. - Added: * fixed-usage-of-ipaddress.patch- Fix minion scheduler to return a 'retcode' attribute (bsc#1089112) - Fix for logging during network interface querying (bsc#1087581) - Fix rhel packages requires both net-tools and iproute (bsc#1087055) - Added: * initialize-__context__-retcode-for-functions-handled.patch - Modified: * fix-for-errno-0-resolver-error-0-no-error-bsc-108758.patch- Fix patchinstall on yum module. Bad comparison (bsc#1087278) - Added: * provide-kwargs-to-pkg_resource.parse_targets-require.patch- Strip trailing commas on Linux user's GECOS fields (bsc#1089362) - Fallback to PyMySQL (bsc#1087891) - Improved test for fqdns - Update SaltSSH patch - Fix for [Errno 0] Resolver Error 0 (no error) (bsc#1087581) * Lintfix: PEP8 ident * Use proper levels of the error handling, use proper log formatting. * Fix unit test for reversed fqdns return data - Added: * strip-trailing-commas-on-linux-user-gecos-fields.patch * fall-back-to-pymysql.patch * fix-for-errno-0-resolver-error-0-no-error-bsc-108758.patch - Modified: * add-saltssh-multi-version-support-across-python-inte.patch- Update to 2018.3.0 - Modified: * explore-module.run-response-to-catch-the-result-in-d.patch * add-saltssh-multi-version-support-across-python-inte.patch * run-salt-api-as-user-salt-bsc-1064520.patch * fix-openscap-push.patch * fix-decrease-loglevel-when-unable-to-resolve-addr.patch * fix-cp.push-empty-file.patch * make-it-possible-to-use-login-pull-and-push-from-mod.patch * avoid-excessive-syslogging-by-watchdog-cronjob-58.patch * feat-add-grain-for-all-fqdns.patch * fix-bsc-1065792.patch * run-salt-master-as-dedicated-salt-user.patch * move-log_file-option-to-changeable-defaults.patch * activate-all-beacons-sources-config-pillar-grains.patch * remove-obsolete-unicode-handling-in-pkg.info_install.patch- Add python-2.6 support to salt-ssh - Modified: * add-saltssh-multi-version-support-across-python-inte.patch- Update salt-ssh multiversion patch - Modified: * add-saltssh-multi-version-support-across-python-inte.patch - Removed: * require-same-major-version-while-minor-is-allowed-to.patch- Add iprout/net-tools dependency- salt-ssh: require same major version while minor is allowed to be - Added: * require-same-major-version-while-minor-is-allowed-to.patch - Modified: * explore-module.run-response-to-catch-the-result-in-d.patch * add-saltssh-multi-version-support-across-python-inte.patch * run-salt-api-as-user-salt-bsc-1064520.patch * fix-openscap-push.patch * fix-decrease-loglevel-when-unable-to-resolve-addr.patch * fix-cp.push-empty-file.patch * make-it-possible-to-use-login-pull-and-push-from-mod.patch * avoid-excessive-syslogging-by-watchdog-cronjob-58.patch * feat-add-grain-for-all-fqdns.patch * fix-bsc-1065792.patch * run-salt-master-as-dedicated-salt-user.patch * move-log_file-option-to-changeable-defaults.patch * activate-all-beacons-sources-config-pillar-grains.patch * remove-obsolete-unicode-handling-in-pkg.info_install.patch- Add SaltSSH multi-version support across Python interpeters. - Added: * add-saltssh-multi-version-support-across-python-inte.patch- Fix zypper.info_installed 'ascii' issue - Modified: * explore-module.run-response-to-catch-the-result-in-d.patch * fix-openscap-push.patch * fix-decrease-loglevel-when-unable-to-resolve-addr.patch * fix-cp.push-empty-file.patch * make-it-possible-to-use-login-pull-and-push-from-mod.patch * move-log_file-option-to-changeable-defaults.patch * remove-obsolete-unicode-handling-in-pkg.info_install.patch- Update openscap push patch to include the test fixes - Modified: * explore-module.run-response-to-catch-the-result-in-d.patch * fix-openscap-push.patch * fix-decrease-loglevel-when-unable-to-resolve-addr.patch * fix-cp.push-empty-file.patch * make-it-possible-to-use-login-pull-and-push-from-mod.patch * move-log_file-option-to-changeable-defaults.patch- Explore 'module.run' state module output in depth to catch "result" properly - Added: * explore-module.run-response-to-catch-the-result-in-d.patch- make it possible to use docker login, pull and push from module.run and detect errors - Added: * make-it-possible-to-use-login-pull-and-push-from-mod.patch- Fix logging with FQDNs - Added: * fix-decrease-loglevel-when-unable-to-resolve-addr.patch- Update patches - Modified: * run-salt-master-as-dedicated-salt-user.patch * run-salt-api-as-user-salt-bsc-1064520.patch * fix-openscap-push.patch * fix-cp.push-empty-file.patch * avoid-excessive-syslogging-by-watchdog-cronjob-58.patch * feat-add-grain-for-all-fqdns.patch * fix-bsc-1065792.patch * move-log_file-option-to-changeable-defaults.patch * activate-all-beacons-sources-config-pillar-grains.patch * remove-obsolete-unicode-handling-in-pkg.info_install.patch - Removed: * salt-ssh-fix-json-load-of-return-data-when-it-contai.patch- Update cp.push patch - Modified: * fix-cp.push-empty-file.patch * salt-ssh-fix-json-load-of-return-data-when-it-contai.patch- force re-generate a new thin.tgz when an update gets installed- fix salt-ssh with a different patch - remove: dumps-should-return-unicode-also-with-py2-to-prevent.patch - added: salt-ssh-fix-json-load-of-return-data-when-it-contai.patch - Added: * salt-ssh-fix-json-load-of-return-data-when-it-contai.patch - Removed: * dumps-should-return-unicode-also-with-py2-to-prevent.patch- Fix unicode decode error with salt-ssh - Added: * dumps-should-return-unicode-also-with-py2-to-prevent.patch - Modified: * run-salt-master-as-dedicated-salt-user.patch * run-salt-api-as-user-salt-bsc-1064520.patch * fix-openscap-push.patch * fix-cp.push-empty-file.patch * avoid-excessive-syslogging-by-watchdog-cronjob-58.patch * feat-add-grain-for-all-fqdns.patch * fix-bsc-1065792.patch * move-log_file-option-to-changeable-defaults.patch * activate-all-beacons-sources-config-pillar-grains.patch * remove-obsolete-unicode-handling-in-pkg.info_install.patch- Fix cp.push empty file (bsc#1075950) - salt-ssh - move log_file option to changeable defaults - Added: * fix-cp.push-empty-file.patch * move-log_file-option-to-changeable-defaults.patch - Modified: * run-salt-master-as-dedicated-salt-user.patch * run-salt-api-as-user-salt-bsc-1064520.patch * fix-openscap-push.patch * avoid-excessive-syslogging-by-watchdog-cronjob-58.patch * feat-add-grain-for-all-fqdns.patch * fix-bsc-1065792.patch * activate-all-beacons-sources-config-pillar-grains.patch * remove-obsolete-unicode-handling-in-pkg.info_install.patch- Daily update - Added: * fix-openscap-push.patch - Removed: * fix-grains-with-n.patch- Fix grains containing trailing "\n" - Added: * fix-grains-with-n.patch- Remove salt-minion python2 requirement when python3 is default (bsc#1081592)- Remove-obsolete-unicode-handling-in-pkg.info_installed - Added: * remove-obsolete-unicode-handling-in-pkg.info_install.patch- Update to salt-2018.1.99 - Modified: * activate-all-beacons-sources-config-pillar-grains.patch * avoid-excessive-syslogging-by-watchdog-cronjob-58.patch * feat-add-grain-for-all-fqdns.patch * fix-bsc-1065792.patch * list_pkgs-add-parameter-for-returned-attribute-selec.patch * run-salt-api-as-user-salt-bsc-1064520.patch * run-salt-master-as-dedicated-salt-user.patch - Deleted: * python3-compatibility-fix-got-bytes-instead-of-strin.patch * enable-with-salt-version-parameter-for-setup.py-scri.patch * catching-error-when-pidfile-cannot-be-deleted.patch * bugfix-always-return-a-string-list-on-unknown-job-ta.patch * bugfix-the-logic-according-to-the-exact-described-pu.patch * cherrypy-read-reads-bytes-from-the-wire-and-write-th.patch * fix-for-delete_deployment-in-kubernetes-module.patch * fix-salt-master-for-old-psutil.patch * introduce-process_count_max-minion-configuration-par.patch * multiprocessing-minion-option-documentation-fixes.patch * older-logrotate-need-su-directive.patch * return-error-when-gid_from_name-and-group-does-not-e.patch * set-shell-environment-variable-64.patch * split-only-strings-if-they-are-such.patch * use-home-to-get-the-user-home-directory-instead-usin.patch * yumpkg-don-t-use-diff_attr-when-determining-install-.patch- Fix-epoch-handling-for-Rhel-6-and-7 - Modified: * yumpkg-don-t-use-diff_attr-when-determining-install-.patch - Removed: * fix-for-wrong-version-processing.patch- Restoring-installation-of-packages-for-Rhel-6-7 Added: * yumpkg-don-t-use-diff_attr-when-determining-install-.patch- Prevent queryformat pattern from expanding (bsc#1079048)- Fix epoch handling for Rhel 6 and 7 (bsc#1068566) - Reverting to current API for split_input - Added: * yumpkg-don-t-use-diff_attr-when-determining-install-.patch - Removed: * fix-for-wrong-version-processing.patch- Fix for wrong version processing during yum pkg install (bsc#1068566) - Feat: add grain for all FQDNs (bsc#1063419) - Added: * fix-for-wrong-version-processing.patch * feat-add-grain-for-all-fqdns.patch- Fix the usage of custom macros on the spec file.- Fix RES7: different dependency names for python-PyYAML and python-MarkupSafe- Build both python2 and python3 binaries together.- Bugfix: errors in external pillar causes crash instead of report of them (bsc#1068446) - Fix 'user.present' when 'gid_from_name' is set but group does not exist. - Added: * bugfix-the-logic-according-to-the-exact-described-pu.patch * return-error-when-gid_from_name-and-group-does-not-e.patch- Fix "No service execution module loaded" issue (bsc#1065792) - Set SHELL environment variable Added: * fix-bsc-1065792.patch * set-shell-environment-variable-64.patch- Removed unnecessary logging on shutdown (bsc#1050003) - Renamed patch that adds grain fqdns Changed: * catching-error-when-pidfile-cannot-be-deleted Removed: * fix-for-pidfile-removal-logging Renamed: * add-fqdns-grains -> feat-add-grain-for-all-fqdns- Add fqdns to grains (bsc#1063419) Added: * add-fqdns-grains.patch- Fixing cherrypy websocket with python3 Added: * python3-compatibility-fix-got-bytes-instead-of-strin.patch- Various-bug-fixes - Python3 bugfix for cherrypy read() - Fix for logging on salt-master exit in rare cases (pid-file removal) - Added: * cherrypy-read-reads-bytes-from-the-wire-and-write-th.patch * fix-for-pidfile-removal-logging.patch * split-only-strings-if-they-are-such.patch- Fix salt-master for old psutil version - Added: * fix-salt-master-for-old-psutil.patch- Put back accidentally removed patches - Added: * avoid-excessive-syslogging-by-watchdog-cronjob-58.patch * catching-error-when-pidfile-cannot-be-deleted.patch- Fix for delete_deployment in Kubernetes module (bsc#1059291) - Added: * fix-for-delete_deployment-in-kubernetes-module.patch- Older logrotate need su directive (bsc#1071322) * Added: older-logrotate-need-su-directive.patch- Fix bsc#1041993 already included in 2017.7.2 - Removed: * removes-beacon-configuration-deprecation-warning-48.patch- Fixed beacons failure when pillar-based suppressing config-based. (bsc#1060230) - Added: * activate-all-beacons-sources-config-pillar-grains.patch- Escape the usage of %{VERSION} when calling out to rpm. RPM 4.14 has %{VERSION} defined as 'the main packages version'.- Fix wrong version reported by Salt (bsc#1061407) - Fix CVE-2017-14696 (bsc#1062464) already included in 2017.7.2- Run salt master as dedicated salt user - Run salt-api as user salt (bsc#1064520) - Added: * run-salt-master-as-dedicated-salt-user.patch * run-salt-api-as-user-salt-bsc-1064520.patch- Update to 2017.7.2 See https://docs.saltstack.com/en/latest/topics/releases/2017.7.2.html - Added: * enable-with-salt-version-parameter-for-setup.py-scri.patch - Removed: * add-a-salt-minion-service-control-file.patch * add-clean_id-function-to-salt.utils.verify.py.patch * add-options-for-dockerng.patch * add-ssh-option-to-salt-ssh.patch * add-unit-test-for-skip-false-values-from-preferred_i.patch * add-yum-plugin.patch * add-zypp-notify-plugin.patch * adding-salt-minion-watchdog-for-sysv-systems-rhel6-a.patch * adding-support-for-installing-patches-in-yum-dnf-exe.patch * avoid-failures-on-sles-12-sp2-because-of-new-systemd.patch * bugfix-jobs-scheduled-to-run-at-a-future-time-stay-p.patch * bugfix-unable-to-use-127-as-hostname.patch * catching-error-when-pidfile-cannot-be-deleted.patch * change-travis-configuration-file-to-use-salt-toaster.patch * check-if-byte-strings-are-properly-encoded-in-utf-8.patch * clean-up-change-attribute-from-interface-dict.patch * do-not-generate-a-date-in-a-comment-to-prevent-rebui.patch * enables-salt-minion-watchdog-on-init.d-script-for-sy.patch * escape-the-os.sep.patch * fix-for-delete_deployment-in-kubernetes-module.patch * fix-format-error-bsc-1043111.patch * fix-grain-for-os_family-on-suse-series.patch * fix-os_family-case-in-unittest.patch * fix-regression-in-file.get_managed-add-unit-tests.patch * fix-salt-summary-to-count-not-responding-minions-cor.patch * fix-setting-language-on-suse-systems.patch * fixed-issue-with-parsing-of-master-minion-returns-wh.patch * fixing-beacons.list-integration-test-failure.patch * introducing-the-kubernetes-module.patch * notify-systemd-synchronously-bsc-1053376.patch * rest_cherrypy-remove-sleep-call.patch * revert-we-don-t-have-python-systemd-so-notify-can-t-.patch * run-salt-api-as-user-salt-bsc-990029.patch * run-salt-master-as-dedicated-salt-user.patch * search-the-entire-cache_dir-because-storage-paths-ch.patch * security-fixes-cve-2017-14695-and-cve-2017-14696.patch * setting-up-os-grains-for-sles-expanded-support-suse-.patch * special-salt-minion.service-file-for-rhel7.patch * translate-variable-arguments-if-they-contain-hidden-.patch * tserong-suse.com-we-don-t-have-python-systemd-so-not.patch * use-correct-grain-constants-for-timezone.patch- Re-added previously removed unit-test for bsc#1050003 - Changed: * catching-error-when-pidfile-cannot-be-deleted.patch- Fixes for CVE-2017-14695 and CVE-2017-14696 (bsc#1062462) - Added: * security-fixes-cve-2017-14695-and-cve-2017-14696.patch- Add missing follow-up for CVE-2017-12791 (bsc#1053955) - Fixed salt target-type field returns "String" for existing jids but an empty "Array" for non existing jids. (issue#1711) - Added: * bugfix-always-return-a-string-list-on-unknown-job-ta.patch * escape-the-os.sep.patch- Fixed minion resource exhaustion when many functions are being executed in parallel (bsc#1059758) - Changed: * catching-error-when-pidfile-cannot-be-deleted.patch - Added: * introduce-process_count_max-minion-configuration-par.patch * multiprocessing-minion-option-documentation-fixes.patch * revert-we-don-t-have-python-systemd-so-notify-can-t-.patch - Removed: * revert-we-don-t-have-python-systemd-so-notify-can-t-work.patch- Remove 'TasksTask' attribute from salt-master.service in older versions of systemd (bsc#985112)- Fix for delete_deployment in Kubernetes module (bsc#1059291) - Added: * fix-for-delete_deployment-in-kubernetes-module.patch- Catching error when PIDfile cannot be deleted (bsc#1050003) - Added: * catching-error-when-pidfile-cannot-be-deleted.patch- Use $HOME to get the user home directory instead using '~' char (bsc#1042749) - Added: * use-home-to-get-the-user-home-directory-instead-usin.patch- Fixed patches for Kubernetes and YUM modules - Updated: * list_pkgs-add-parameter-for-returned-attribute-selec.patch * introducing-the-kubernetes-module.patch- Add patches to salt to support SUSE Manager scalability features (bsc#1052264) - Added: * list_pkgs-add-parameter-for-returned-attribute-selec.patch- Introducing the kubernetes module (bsc#1051948) - Added: * introducing-the-kubernetes-module.patch- Revert "We don't have python-systemd, so notify can't work" - Added: * revert-we-don-t-have-python-systemd-so-notify-can-t-work.patch- Notify systemd synchronously via NOTIFY_SOCKET (bsc#1053376) - Added: * notify-systemd-synchronously-bsc-1053376.patch- Add clean_id function to salt.utils.verify.py (CVE-2017-12791, bsc#1053955) - Added: * add-clean_id-function-to-salt.utils.verify.py.patch- Added bugfix when jobs scheduled to run at a future time stay pending for Salt minions (bsc#1036125) - Added: * bugfix-jobs-scheduled-to-run-at-a-future-time-stay-p.patch- Adding procps as dependency. This provides "ps" and "pgrep" utils which are called from different Salt modules and also from new salt-minion watchdog.- Adding a salt-minion watchdog for RHEL6 and SLES11 systems (sysV) to restart salt-minion in case of crashes during upgrade. - Added: * adding-salt-minion-watchdog-for-sysv-systems-rhel6-a.patch * enables-salt-minion-watchdog-on-init.d-script-for-sy.patch- fix format error (bsc#1043111)- fix ownership for whole master cache directory (bsc#1035914)- Bugfix: clean up `change` attribute from interface dict (upstream) Issue: https://github.com/saltstack/salt/issues/41461 PR: 1. https://github.com/saltstack/salt/pull/41487 2. https://github.com/saltstack/salt/pull/41533 Added: * clean-up-change-attribute-from-interface-dict.patch- Disable 3rd party runtime packages to be explicitly recommended. (bsc#1040886)- Bugfix: orchestrate and batches returns false failed information https://github.com/saltstack/salt/issues/40635 Added: * fixed-issue-with-parsing-of-master-minion-returns-wh.patch- speed-up cherrypy by removing sleep call- wrong os_family grains on SUSE - fix unittests (bsc#1038855)- fix setting the language on SUSE systems (bsc#1038855)- Documentation refresh to 2016.11.4- Update to 2016.11.4 See https://docs.saltstack.com/en/develop/topics/releases/2016.11.4.html See https://docs.saltstack.com/en/develop/topics/releases/2016.11.3.html See https://docs.saltstack.com/en/develop/topics/releases/2016.11.2.html See https://docs.saltstack.com/en/develop/topics/releases/2016.11.1.html for full changelog - Use SUSE specific salt-api.service (bsc#1039370) - Bugfix: wrong os_family grains on SUSE (bsc#1038855) - Bugfix: unable to use hostname for minion ID as '127' (upstream) - Fix core grains constants for timezone (bsc#1032931) - Add unit test for a skip false values from preferred IPs upstream patch - Adding "yum-plugin-security" as required for RHEL 6 - Minor fixes on new pkg.list_downloaded - Listing all type of advisory patches for Yum module - Prevents zero length error on Python 2.6 - Fixes zypper test error after backporting - raet protocol is no longer supported (bsc#1020831) - Fix: move SSH data to the new home (bsc#1027722) - Fix: /var/log/salt/minion fails logrotate (bsc#1030009) - Fix: Result of master_tops extension is mutually overwritten (bsc#1030073) - Allows to set 'timeout' and 'gather_job_timeout' via kwargs - Allows to set custom timeouts for 'manage.up' and 'manage.status' - Use salt's ordereddict for comparison (fixes failing tests) - add special salt-minion.service file for RES7 - fix scripts for salt-proxy - define with systemd for fedora and rhel >= 7 (bsc#1027240) - add openscap module - file.get_managed regression fix (upstream issues #39762) - fix translate variable arguments if they contain hidden keywords (bsc#1025896) - fix service handling for openSUSE - added unit test for dockerng.sls_build dryrun - added dryrun to dockerng.sls_build - update dockerng minimal version requirements - fix format error in error parsing - keep fix for migrating salt home directory (bsc#1022562) - Fix salt pkg.latest raises exception if package is not available (bsc#1012999) - Fix timezone: should be always in UTC (bsc#1017078) - Fix timezone handling for rpm installtime (bsc#1017078) - Increasing timeouts for running integrations tests - Add buildargs option to dockerng.build module - Disable custom rosters for Salt SSH via Salt API (bsc#1011800) More: https://github.com/saltstack/salt/pull/38596 - Fix error when missing ssh-option parameter - readd yum notify plugin - all kwargs to dockerng.create to provide all features to sls_build as well - rename patches to get rid of the prefix numbers - Added: * bugfix-unable-to-use-127-as-hostname.patch * fix-grain-for-os_family-on-suse-series.patch * use-correct-grain-constants-for-timezone.patch * search-the-entire-cache_dir-because-storage-paths-ch.patch * add-unit-test-for-skip-false-values-from-preferred_i.patch * add-a-salt-minion-service-control-file.patch * add-options-for-dockerng.patch * add-zypp-notify-plugin.patch * fixing-beacons.list-integration-test-failure.patch * fix-regression-in-file.get_managed-add-unit-tests.patch * fix-salt-summary-to-count-not-responding-minions-cor.patch * special-salt-minion.service-file-for-rhel7.patch * translate-variable-arguments-if-they-contain-hidden-.patch - Renamed: * 0001-tserong-suse.com-We-don-t-have-python-systemd-so-not.patch => tserong-suse.com-we-don-t-have-python-systemd-so-not.patch * 0002-Run-salt-master-as-dedicated-salt-user.patch => run-salt-master-as-dedicated-salt-user.patch * 0003-Check-if-byte-strings-are-properly-encoded-in-UTF-8.patch => check-if-byte-strings-are-properly-encoded-in-utf-8.patch * 0004-do-not-generate-a-date-in-a-comment-to-prevent-rebui.patch => do-not-generate-a-date-in-a-comment-to-prevent-rebui.patch * 0009-Add-YUM-plugin.patch 0027-Add-YUM-plugin.patch => add-yum-plugin.patch * 0012-Run-salt-api-as-user-salt-bsc-990029.patch => run-salt-api-as-user-salt-bsc-990029.patch * 0020-Setting-up-OS-grains-for-SLES-Expanded-Support-SUSE-.patch => setting-up-os-grains-for-sles-expanded-support-suse-.patch * 0022-Change-travis-configuration-file-to-use-salt-toaster.patch => change-travis-configuration-file-to-use-salt-toaster.patch * 0036-Avoid-failures-on-SLES-12-SP2-because-of-new-systemd.patch => avoid-failures-on-sles-12-sp2-because-of-new-systemd.patch * 0042-Salt-ssh-ssh-option-param.patch => add-ssh-option-to-salt-ssh.patch * 0057-Adding-support-for-installing-patches-in-yum-dnf-exe.patch => adding-support-for-installing-patches-in-yum-dnf-exe.patch - Removed: * 0005-Use-SHA256-hash-type-by-default.patch * 0006-Create-salt-proxy-instantiated-service-file.patch * 0007-Add-SUSE-Manager-plugin.patch * 0008-Fix-pkgrepo.managed-gpgkey-argument-bsc-979448.patch * 0009-Rewrite-minion-ID-generator-bsc-967803.patch * 0010-snapper-execution-module.patch * 0011-Fix-module-import-being-Py3-and-P2.6-compatible.patch * 0013-Bugfix-prevent-crash-if-python-dbus-module-is-instal.patch * 0014-Fix-some-unittests.patch * 0015-Check-for-single-quote-before-splitting-on-single-qu.patch * 0016-Unit-test-fixes-for-2015.8.7.patch * 0017-Fix-snapper_test-for-python26.patch * 0018-Integration-tests-fixes-for-2015.8.7.patch * 0019-Generate-Salt-Thin-with-configured-extra-modules.patch * 0021-acl.delfacl-fix-position-of-X-option-to-setfacl.patch * 0023-Adding-dist-upgrade-support-to-zypper-module.patch * 0024-Fix-open-ssh-bsc-1004723-upstream-issue-36966.patch * 0025-Including-resolver-params-for-Zypper-debug-solver.patch * 0026-fix-status-handling-in-sysv-init-scripts.patch * 0028-change-TIMEZONE-on-SUSE-systems-bsc-1008933.patch * 0029-Do-not-include-gpg-pubkey-packages-filtering-by-thei.patch * 0030-Extract-archive-into-existing-directory-add-overwrit.patch * 0031-Port-rsync-state-from-2016.3.patch * 0032-Support-remote-port-forwarding-with-salt-ssh.patch * 0033-Add-master_tops-support-in-salt-ssh.patch * 0034-Fix-pkg.latest_version-when-latest-already-installed.patch * 0035-salt-api-service-must-be-from-type-simple.patch * 0037-salt-minion-service-back-to-type-simple.patch * 0038-Successfully-exit-of-salt-api-child-processes-when-S.patch * 0039-Re-introducing-KillMode-process-for-salt-minion-syst.patch * 0040-Adding-Restart-on-failure-for-salt-minion-systemd-se.patch * 0041-add-try-restart-to-fix-autorestarting-on-SUSE-system.patch * 0043-Fixes-wrong-enabled-opts-for-yumnotify-plugin.patch * 0044-Add-general-sanitisers.patch * 0045-Fix-timezone-handling-for-rpm-installtime-bsc-101707.patch * 0046-Snapper-module-improvements.patch * 0047-Fix-issue-with-cp.push-36136.patch * 0048-Prevents-OSError-exception-in-case-path-doesn-t-exis.patch * 0049-OpenSCAP-module.patch * 0050-Fix-service-state-returning-stacktrace-bsc-1027044.patch * 0051-Allows-to-set-timeout-and-gather_job_timeout-via-kwa.patch * 0052-Don-t-send-passwords-after-shim-delimiter-is-found-3.patch * 0053-fix-race-condition-on-cache-directory-creation.patch * 0054-Merge-output-from-master_tops.patch * 0055-Adding-downloadonly-support-to-yum-dnf-module.patch * 0056-Makes-sure-gather_job_timeout-is-an-integer.patch * 0058-Adds-custom-timeout-and-gather_job_timeout-to-local_.patch * 0059-Add-SHELL-env-var-for-the-salt-api.service.patch * 0060-Fix-logrotate-for-minion-bsc-1030009-21.patch- Bugfix: datetime should be returned always in UTC - Added: * 0063-Bugfix-datetime-should-be-returned-always-in-UTC.patch- Bugfix: scheduled state may cause crash while deserialising data on infinite recursion. (bsc#1036125) - Added: * 0062-Bugfix-deserialising-crashes-in-the-recursive-loop-b.patch- Enable yum to handle errata on RHEL 6: require yum-plugin-security- Minor fixes on new pkg.list_downloaded - Listing all type of advisory patches for Yum module - Prevents zero length error on Python 2.6 - Fixes zypper test error after backporting - Added: * 0061-Search-the-entire-CACHE_DIR-because-storage-paths-ch.patch - Modified: * 0057-Adding-support-for-installing-patches-in-yum-dnf-exe.patch- Refactoring on Zypper and Yum execution and state modules to allow installation of patches/errata. - Added: * 0057-Adding-support-for-installing-patches-in-yum-dnf-exe.patch - Removed: * 0057-Allows-using-downloadonly-in-a-pkg.installed-state.patch- Fix log rotation permission issue (bsc#1030009) - Use pkg/suse/salt-api.service by this package - Removed: * 0059-Set-salt-api-shell-env.patch - Added: * 0059-Add-SHELL-env-var-for-the-salt-api.service.patch * 0060-Fix-logrotate-for-minion-bsc-1030009-21.patch- Patch to set SHELL env variable for the salt-api.service. Needed for salt-ssh ProxyCommand to work properly. - Added: * 0059-Set-salt-api-shell-env.patch- Fixes 'timeout' and 'gather_job_timeout' kwargs parameters for 'local_batch' client - Added: * 0058-Adds-custom-timeout-and-gather_job_timeout-to-local_.patch- Add missing bootstrap script for Salt Cloud (bsc#1032452)- Fix: add missing /var/cache/salt/cloud directory (bsc#1032213)- Added test case for race conditions on cache directory creation - Modified: * 0053-fix-race-condition-on-cache-directory-creation.patch- Adding "pkg.install downloadonly=True" support to yum/dnf execution module - Makes sure "gather_job_timeout" is an Integer - Adding "pkg.downloaded" state and support for installing patches/erratas - Added: * 0055-Adding-downloadonly-support-to-yum-dnf-module.patch * 0056-Makes-sure-gather_job_timeout-is-an-integer.patch * 0057-Allows-using-downloadonly-in-a-pkg.installed-state.patch- Fix: merge master_tops output- Fix: race condition on cache directory creation - Added: * 0053-fix-race-condition-on-cache-directory-creation.patch- Cleanup salt user environment preparation (bsc#1027722)- Don't send passwords after shim delimiter is found (bsc#1019386) - Add: * 0052-Don-t-send-passwords-after-shim-delimiter-is-found-3.patch- Allows to set 'timeout' and 'gather_job_timeout' via kwargs - Allows to set custom timeouts for 'manage.up' and 'manage.status' - Add: * 0051-Allows-to-set-timeout-and-gather_job_timeout-via-kwa.patch- Update systemd module unit tests (Update patch 0050)- define with system for fedora and rhel 7 (bsc#1027240)- Fix service state returning stacktrace (bsc#1027044) - Add: * 0050-Fix-service-state-returning-stacktrace-bsc-1027044.patch- Update OpenSCAP Module patch- OpenSCAP Module - Added: * 0049-OpenSCAP-module.patch- Prevents 'OSError' exception in case certain job cache path doesn't exist (bsc#1023535) - Added: * 0048-Prevents-OSError-exception-in-case-path-doesn-t-exis.patch- Backport: Fix issue with cp.push (#36136) - Add: * 0047-Fix-issue-with-cp.push-36136.patch- Fix salt-minion update on RHEL (bsc#1022841)- Adding new functions to Snapper execution module. - Added: * snapper-module-improvements.patch- Fix invalid chars allowed for data IDs (bsc#1011304) Fix timezone: should be always in UTC (bsc#1017078) Add: * 0044-Add-general-sanitisers.patch * 0045-Fix-timezone-handling-for-rpm-installtime-bsc-101707.patch- Fixes wrong "enabled" opts for yumnotify plugin Add: * 0043-Fixes-wrong-enabled-opts-for-yumnotify-plugin.patch- ssh-option parameter for salt-ssh command. Added: * 0042-Salt-ssh-ssh-option-param.patch- minion should pre-require salt - do not restart salt-minion in the salt package - add try-restart to sys-v init scripts Add: * 0041-add-try-restart-to-fix-autorestarting-on-SUSE-system.patch- Adding "Restart=on-failure" for salt-minion systemd service Add: * 0040-Adding-Restart-on-failure-for-salt-minion-systemd-se.patch- Re-introducing "KillMode=process" for salt-minion systemd service Add: * 0039-Re-introducing-KillMode-process-for-salt-minion-syst.patch- Successfully exit of salt-api child processes when SIGTERM is received Add: * 0038-Successfully-exit-of-salt-api-child-processes-when-S.patch- Add new patches: * 0034-Fix-pkg.latest_version-when-latest-already-installed.patch * 0035-salt-api-service-must-be-from-type-simple.patch * 0036-Avoid-failures-on-SLES-12-SP2-because-of-new-systemd.patch * 0037-salt-minion-service-back-to-type-simple.patch- Update to 2015.8.12 - Fix possible information leak due to revoked keys still being used. (bsc#1012398, CVE-2016-9639) - inherited patches 0001-tserong-suse.com-We-don-t-have-python-systemd-so-not.patch 0002-Run-salt-master-as-dedicated-salt-user.patch 0003-Check-if-byte-strings-are-properly-encoded-in-UTF-8.patch - renamed patches 0026-do-not-generate-a-date-in-a-comment-to-prevent-rebui.patch - > 0004-do-not-generate-a-date-in-a-comment-to-prevent-rebui.patch 0036-Use-SHA256-hash-type-by-default.patch - > 0005-Use-SHA256-hash-type-by-default.patch 0046-Add-SUSE-Manager-plugin.patch - > 0007-Add-SUSE-Manager-plugin.patch 0048-Create-salt-proxy-instantiated-service-file.patch - > 0006-Create-salt-proxy-instantiated-service-file.patch 0053-Fix-pkgrepo.managed-gpgkey-argument-bsc-979448.patch - > 0008-Fix-pkgrepo.managed-gpgkey-argument-bsc-979448.patch 0059-Rewrite-minion-ID-generator-bsc-967803.patch - > 0009-Rewrite-minion-ID-generator-bsc-967803.patch 0061-snapper-execution-module.patch - > 0010-snapper-execution-module.patch 0063-Fix-module-import-being-Py3-and-P2.6-compatible.patch - > 0011-Fix-module-import-being-Py3-and-P2.6-compatible.patch 0064-Run-salt-api-as-user-salt-bsc-990029.patch - > 0012-Run-salt-api-as-user-salt-bsc-990029.patch 0067-Bugfix-prevent-crash-if-python-dbus-module-is-instal.patch - > 0013-Bugfix-prevent-crash-if-python-dbus-module-is-instal.patch 0070-Fix-some-unittests.patch - > 0014-Fix-some-unittests.patch 0071-Check-for-single-quote-before-splitting-on-single-qu.patch - > 0015-Check-for-single-quote-before-splitting-on-single-qu.patch 0072-Unit-test-fixes-for-2015.8.7.patch - > 0016-Unit-test-fixes-for-2015.8.7.patch 0073-Fix-snapper_test-for-python26.patch - > 0017-Fix-snapper_test-for-python26.patch 0074-Integration-tests-fixes-for-2015.8.7.patch - > 0018-Integration-tests-fixes-for-2015.8.7.patch 0075-Generate-Salt-Thin-with-configured-extra-modules.patch - > 0019-Generate-Salt-Thin-with-configured-extra-modules.patch 0076-Setting-up-OS-grains-for-SLES-Expanded-Support-SUSE-.patch - > 0020-Setting-up-OS-grains-for-SLES-Expanded-Support-SUSE-.patch 0077-acl.delfacl-fix-position-of-X-option-to-setfacl.patch - > 0021-acl.delfacl-fix-position-of-X-option-to-setfacl.patch 0078-Change-travis-configuration-file-to-use-salt-toaster.patch - > 0022-Change-travis-configuration-file-to-use-salt-toaster.patch 0079-Adding-dist-upgrade-support-to-zypper-module.patch - > 0023-Adding-dist-upgrade-support-to-zypper-module.patch 0080-Fix-open-ssh-bsc-1004723-upstream-issue-36966.patch - > 0024-Fix-open-ssh-bsc-1004723-upstream-issue-36966.patch 0081-Including-resolver-params-for-Zypper-debug-solver.patch - > 0025-Including-resolver-params-for-Zypper-debug-solver.patch 0082-fix-status-handling-in-sysv-init-scripts.patch - > 0026-fix-status-handling-in-sysv-init-scripts.patch - new patches from upstream 0027-Add-YUM-plugin.patch 0028-change-TIMEZONE-on-SUSE-systems-bsc-1008933.patch (bsc#1008933) 0029-Do-not-include-gpg-pubkey-packages-filtering-by-thei.patch 0030-Extract-archive-into-existing-directory-add-overwrit.patch 0031-Port-rsync-state-from-2016.3.patch 0032-Support-remote-port-forwarding-with-salt-ssh.patch 0033-Add-master_tops-support-in-salt-ssh.patch - upstreamed patches 0004-Fix-pkg.latest-prevent-crash-on-multiple-package-ins.patch 0005-Fix-package-status-filtering-on-latest-version-and-i.patch 0006-add_key-reject_key-do-not-crash-w-Permission-denied-.patch 0007-Force-kill-websocket-s-child-processes-faster-than-d.patch 0008-Fix-types-in-the-output-data-and-return-just-a-list-.patch 0009-The-functions-in-the-state-module-that-return-a-retc.patch 0010-add-handling-for-OEM-products.patch 0011-improve-doc-for-list_pkgs.patch 0012-implement-version_cmp-for-zypper.patch 0013-pylint-changes.patch 0014-Check-if-rpm-python-can-be-imported.patch 0015-call-zypper-with-option-non-interactive-everywhere.patch 0016-write-a-zypper-command-builder-function.patch 0017-Fix-crash-with-scheduler-and-runners-31106.patch 0018-unify-behavior-of-refresh.patch 0019-add-refresh-option-to-more-functions.patch 0020-simplify-checking-the-refresh-paramater.patch 0021-do-not-change-kwargs-in-refresh-while-checking-a-val.patch 0022-fix-argument-handling-for-pkg.download.patch 0023-Initial-Zypper-Unit-Tests-and-bugfixes.patch 0024-proper-checking-if-zypper-exit-codes-and-handling-of.patch 0025-adapt-tests-to-new-zypper_check_result-output.patch 0027-make-suse-check-consistent-with-rh_service.patch 0028-fix-numerical-check-of-osrelease.patch 0029-Make-use-of-checksum-configurable-defaults-to-MD5-SH.patch 0030-Bugfix-on-SLE11-series-base-product-reported-as-addi.patch 0031-Only-use-LONGSIZE-in-rpm.info-if-available.-Otherwis.patch 0032-Add-error-check-when-retcode-is-0-but-stderr-is-pres.patch 0033-fixing-init-system-dectection-on-sles-11-refs-31617.patch 0034-Fix-git_pillar-race-condition.patch 0035-Fix-the-always-false-behavior-on-checking-state.patch 0037-Force-sort-the-RPM-output-to-ensure-latest-version-o.patch 0038-fix-sorting-by-latest-version-when-called-with-an-at.patch 0039-Prevent-metadata-download-when-getting-installed-pro.patch 0040-Check-if-EOL-is-available-in-a-particular-product-bs.patch 0041-Bugfix-salt-key-crashes-if-tries-to-generate-keys-to.patch 0042-align-OS-grains-from-older-SLES-with-current-one-bsc.patch 0043-Prevent-crash-if-pygit2-package-is-requesting-re-com.patch 0044-Unblock-Zypper.-Modify-environment.patch 0045-Bugfix-Restore-boolean-values-from-the-repo-configur.patch 0047-Old-style-proxymodules-need-to-be-setup-earlier-in-m.patch 0049-Prevent-several-minion-processes-on-the-same-machine.patch 0050-checksum-validation-when-zypper-pkg.download.patch 0051-unit-tests-for-rpm.checksum-and-zypper.download.patch 0052-jobs.exit_success-allow-to-check-if-a-job-has-execut.patch 0054-fix-groupadd-module-for-sles11-systems.patch 0055-Backport-31164-and-31364-32474.patch 0056-Move-log-message-from-INFO-to-DEBUG.patch 0057-fix-salt-summary-to-count-not-responding-minions-cor.patch 0058-Getting-the-os-grain-from-CPE_NAME-inside-etc-os-rel.patch 0060-Bugfix-return-boolean-only-for-isbase-and-installed-.patch 0062-Add-realpath-to-lvm.pvdisplay-and-use-it-in-vg_prese.patch 0065-fix-beacon-list-to-include-all-beacons-being-process.patch 0066-Fix-continuous-minion-restart-if-a-dependency-wasn-t.patch 0068-Add-ignore_repo_failure-option-to-suppress-zypper-s-.patch 0069-Remove-zypper-s-raise-exception-if-mod_repo-has-no-a.patch- Splitted non-Linux and other external platform modules to 'salt-other' sub-package.- Switch package group from System/Monitoring to System/Management- fix exist codes of sysv init script (bsc#999852) Add: * 0082-fix-status-handling-in-sysv-init-scripts.patch- Including resolution parameters in the Zypper debug-solver call during a dry-run dist-upgrade. Add: * 0081-Including-resolver-params-for-Zypper-debug-solver.patch- Fix Salt API crash via salt-ssh on empty roster (bsc#1004723) Add: * 0080-Fix-open-ssh-bsc-1004723-upstream-issue-36966.patch- Adding 'dist-upgrade' support to zypper module (FATE#320559) Add: * 0079-Adding-dist-upgrade-support-to-zypper-module.patch- Copy .travis.yml from git commit ea63e793567ba777e47dc766a4f88edfb037a02f Add: * travis.yml - Change travis configuration file to use salt-toaster Add: * travis.yml * 0078-Change-travis-configuration-file-to-use-salt-toaster.patch- acl.delfacl: fix position of -X option to setfacl (bsc#1004260) Add: * 0077-acl.delfacl-fix-position-of-X-option-to-setfacl.patch- fix generated shebang in scripts on SLES-ES 7 (bsc#1004047)- add update-documentation.sh to specfile- Setting up OS grains for SLES-ES (SLES Expanded Support platform) Add: * 0076-Setting-up-OS-grains-for-SLES-Expanded-Support-SUSE-.patch- Move salt home directory to /var/lib/salt (bsc#1002529) - Adjust permissions on home directory - Adjust pre-install script to correctly move existing salt users' home directory salt user cannot write in his own home directory (/srv/salt) because it is owned by user `root`. This prevents salt from correctly save ssh known hosts in ~/.ssh/ and breaks salt-ssh bootstrapping.- Updated html.tar.bz2 documentation tarball. - Generate Salt Thin with configured extra modules (bsc#990439) Add: * 0075-Generate-Salt-Thin-with-configured-extra-modules.patch- Unit and integration tests fixes for 2015.8.7 Add: * 0072-Unit-test-fixes-for-2015.8.7.patch * 0073-Fix-snapper_test-for-python26.patch * 0074-Integration-tests-fixes-for-2015.8.7.patch- Prevent pkg.install failure for expired keys (bsc#996455) Add: * 0071-Check-for-single-quote-before-splitting-on-single-qu.patch- Required D-Bus and generating machine ID- add a macro to check if the docs should be build or the static tarball should be used- Fix a couple of failing unittests * 0070-Fix-some-unittests.patch- Helper script for updating documentation tarball. Added: * update-documentation.sh- Fix python-jinja2 requirements in rhel- Fix pkg.installed refresh repo failure (bsc#993549) Fix salt.states.pkgrepo.management no change failure (bsc#990440) Add: * 0068-Add-ignore_repo_failure-option-to-suppress-zypper-s-.patch * 0069-Remove-zypper-s-raise-exception-if-mod_repo-has-no-a.patch- Prevent snapper module crash on load if no DBus is available in the system (bsc#993039) Add: * 0067-Bugfix-prevent-crash-if-python-dbus-module-is-instal.patch- Prevent continuous restart, if a dependency wasn't installed (bsc#991048) Add: * 0066-Fix-continuous-minion-restart-if-a-dependency-wasn-t.patch- Fix beacon list to include all beacons being process Add: * 0065-fix-beacon-list-to-include-all-beacons-being-process.patch- Run salt-api as user salt like the master (bsc#990029) Add: * 0064-Run-salt-api-as-user-salt-bsc-990029.patch- Revert patch Minion ID generation (bsc#967803) Removes: * 0059-Rewrite-minion-ID-generator-bsc-967803.patch- Fix broken inspector due to accidentally missed commit (bsc#989798) Add: * 0063-Fix-module-import-being-Py3-and-P2.6-compatible.patch- Set always build salt-doc package.- Bugfix: lvm.vg_present does not recognize PV with certain LVM filter settings (bsc#988506) Add: * 0062-Add-realpath-to-lvm.pvdisplay-and-use-it-in-vg_prese.patch- Backport: Snapper module for Salt. Add: * 0061-snapper-execution-module.patch- Bugfix: pkg.list_products on "registerrelease" and "productline" returns boolean.False if empty (bsc#989193, bsc#986019) Add: * 0060-Bugfix-return-boolean-only-for-isbase-and-installed-.patch- Rewrite Minion ID generation (bsc#967803) Add: * 0059-Rewrite-minion-ID-generator-bsc-967803.patch- Bugfix: Fixed behavior for SUSE OS grains (bsc#970669) Bugfix: Salt os_family does not detect SLES for SAP (bsc#983017) Add: * 0058-Getting-the-os-grain-from-CPE_NAME-inside-etc-os-rel.patch- Move log message from INFO to DEBUG (bsc#985661) Add: 0056-Move-log-message-from-INFO-to-DEBUG.patch - fix salt --summary to count not responding minions correctly (bsc#972311) Add: * 0057-fix-salt-summary-to-count-not-responding-minions-cor.patch- Fix memory leak on custom execution module sheduled jobs (bsc#983512) Add: * 0055-Backport-31164-and-31364-32474.patch- fix groupadd module for sles11 systems (bsc#978150) Add: * 0054-fix-groupadd-module-for-sles11-systems.patch- Fix pkgrepo.managed gpgkey argument doesn't work (bsc#979448) Add: * 0053-Fix-pkgrepo.managed-gpgkey-argument-bsc-979448.patch- Package checksum validation for zypper pkg.download Add: * 0050-checksum-validation-when-zypper-pkg.download.patch * 0051-unit-tests-for-rpm.checksum-and-zypper.download.patch - Check if a job has executed and returned successfully Add: * 0052-jobs.exit_success-allow-to-check-if-a-job-has-execut.patch- Remove option -f from startproc (bsc#975733) Add: * 0049-Prevent-several-minion-processes-on-the-same-machine.patch- Changed Zypper's plugin. Added Unit test and related to that data (bsc#980313). Update: * 0046-Add-SUSE-Manager-plugin.patch Delete (not needed anymore): * 0049-Alter-the-event-name.patch- Zypper plugin: alter the generated event name on package set change. Add: * 0049-Alter-the-event-name.patch- Fix file ownership on master keys and cache directories during upgrade (handles upgrading from salt 2014, where the daemon ran as root, to 2015 where it runs as the salt user, bsc#979676).- salt-proxy .service file created (bsc#975306) Add: * 0048-Create-salt-proxy-instantiated-service-file.patch- Prevent salt-proxy test.ping crash (bsc#975303) Add: * 0047-Old-style-proxymodules-need-to-be-setup-earlier-in-m.patch- Fix shared directories ownership issues.- Add Zypper plugin to generate an event, once Zypper is used outside the Salt infrastructure demand (bsc#971372). Add: * 0046-Add-SUSE-Manager-plugin.patch- Restore boolean values from the repo configuration Fix priority attribute (bsc#978833) Add: * 0045-Bugfix-Restore-boolean-values-from-the-repo-configur.patch- Unblock-Zypper. (bsc#976148) Modify-environment. (bsc#971372) Add: * 0044-Unblock-Zypper.-Modify-environment.patch- Prevent crash if pygit2 package is requesting re-compilation. Add: * 0043-Prevent-crash-if-pygit2-package-is-requesting-re-com.patch- align OS grains from older SLES with current one (bsc#975757) Add: * 0042-align-OS-grains-from-older-SLES-with-current-one-bsc.patch- Bugfix: salt-key crashes if tries to generate keys to the directory w/o write access (bsc#969320) Add: * 0041-Bugfix-salt-key-crashes-if-tries-to-generate-keys-to.patch- Check if EOL is available in a particular product (bsc#975093) Add: * 0040-Check-if-EOL-is-available-in-a-particular-product-bs.patch- fix building with docs on SLE11- Prevent metadata download when getting installed products Add: * 0039-Prevent-metadata-download-when-getting-installed-pro.patch- Add statically built docs.- fix sorting by latest package Add: * 0038-fix-sorting-by-latest-version-when-called-with-an-at.patch- ensure pkg.info_installed report latest package version (bsc#972490) Add: * 0037-Force-sort-the-RPM-output-to-ensure-latest-version-o.patch- Use SHA256 by default in master, minion and proxy (bsc#955373) Add: * 0036-Use-SHA256-hash-type-by-default.patch- Fix state structure compilation Add: * 0035-Fix-the-always-false-behavior-on-checking-state.patch - Fix git_pillar race condition Add: * 0034-Fix-git_pillar-race-condition.patch- fix detection of base products in SLE11 * 0030-Bugfix-on-SLE11-series-base-product-reported-as-addi.patch - fix rpm info for SLE11 * 0031-Only-use-LONGSIZE-in-rpm.info-if-available.-Otherwis.patch * 0032-Add-error-check-when-retcode-is-0-but-stderr-is-pres.patch - fix init system detection for SLE11 * 0033-fixing-init-system-dectection-on-sles-11-refs-31617.patch- Re-add corrected patch: 0029-Make-use-of-checksum-configurable-defaults-to-MD5-SH.patch- Make checksum configurable (upstream still wants md5, we suggest sha256). bsc#955373 Add: 0029-Make-use-of-checksum-configurable-defaults-to-MD5-SH.patch- Fix the service state / module on SLE11. Add: * 0027-make-suse-check-consistent-with-rh_service.patch * 0028-fix-numerical-check-of-osrelease.patch- Prevent rebuilds in OBS by not generating a date as a comment in a source file Add: 0026-do-not-generate-a-date-in-a-comment-to-prevent-rebui.patch- Add better checking for zypper exit codes and simplify evaluation of the zypper error messages. Add: 0024-proper-checking-if-zypper-exit-codes-and-handling-of.patch - Adapt unit tests Add: 0025-adapt-tests-to-new-zypper_check_result-output.patch- Add initial pack of Zypper's Unit tests. Use XML output in list_upgrades. Bugfix: upgrade_available crashes when only one package specified Purge is not using "-u" anymore Add: * 0023-Initial-Zypper-Unit-Tests-and-bugfixes.patch- fix argument handling of pkg.download Add: 0022-fix-argument-handling-for-pkg.download.patch- unify behavior of zypper refresh in salt Add: 0018-unify-behavior-of-refresh.patch 0019-add-refresh-option-to-more-functions.patch 0020-simplify-checking-the-refresh-paramater.patch 0021-do-not-change-kwargs-in-refresh-while-checking-a-val.patch- Fix crash with scheduler and runners Add: 0017-Fix-crash-with-scheduler-and-runners-31106.patch- Call zypper always with --non-interactive Add: * 0015-call-zypper-with-option-non-interactive-everywhere.patch * 0016-write-a-zypper-command-builder-function.patch- require rpm-python on SUSE for zypper support- fix state return code Add: 0009-The-functions-in-the-state-module-that-return-a-retc.patch - add handling of OEM products to pkg.list_products Add: 0010-add-handling-for-OEM-products.patch - improve doc for list_pkgs Add: 0011-improve-doc-for-list_pkgs.patch - implement pkg.version_cmp in zypper.py Add: * 0012-implement-version_cmp-for-zypper.patch * 0013-pylint-changes.patch * 0014-Check-if-rpm-python-can-be-imported.patch- Update to 2015.8.7 this is a small update to fix some regressions see https://docs.saltstack.com/en/latest/topics/releases/2015.8.7.html- Booleans should not be strings from XML, add Unix ticks time and format result in a list of maps. Add: * 0008-Fix-types-in-the-output-data-and-return-just-a-list-.patch- Stop salt-api daemon faster (bsc#963322) Add: * 0007-Force-kill-websocket-s-child-processes-faster-than-d.patch- Do not crash on salt-key reject/delete consecutive calls. Add: * 0006-add_key-reject_key-do-not-crash-w-Permission-denied-.patch- Update to 2015.8.5 Security fixes: * CVE-2016-1866: Improper handling of clear messages on the minion remote code execution (boo#965403) See https://docs.saltstack.com/en/latest/topics/releases/2015.8.5.html Dropped patches (all upstream): * 0003-List-products-consistently-across-all-SLES-systems.patch * 0004-Add-missing-return-data-to-scheduled-jobs.patch * 0005-Fix-RPM-issues-with-the-date-time-and-add-package-at.patch * 0006-Bugfix-info_available-does-not-work-correctly-on-SLE.patch Renamed patches: * 0007-Check-if-byte-strings-are-properly-encoded-in-UTF-8.patch - > 0003-Check-if-byte-strings-are-properly-encoded-in-UTF-8.patch * 0008-Fix-pkg.latest-prevent-crash-on-multiple-package-ins.patch - > 0004-Fix-pkg.latest-prevent-crash-on-multiple-package-ins.patch * 0009-Fix-package-status-filtering-on-latest-version-and-i.patch - > 0005-Fix-package-status-filtering-on-latest-version-and-i.patch - Update to 2015.8.4 See https://docs.saltstack.com/en/latest/topics/releases/2015.8.4.html- Fix latest version available comparison and implement epoch support in Zypper module. Add: * 0009-Fix-package-status-filtering-on-latest-version-and-i.patch- Update patch from opensuse to upstream version. Update: * 0008-Fix-pkg.latest-prevent-crash-on-multiple-package-ins.patch- Fix dependencies to Salt subpackages requiring release along the version.- Fix pkg.latest crash. - Fix pkg.latest SLS ID bug, when pkgs empty list is passed, but SLS ID still treated as a package name. Add: * 0008-Fix-pkg.latest-prevent-crash-on-multiple-package-ins.patch- Drop: * -0004-zypper-check-package-header-content-for-valid-utf-8.patch - Rename: * -0004-zypper-check-package-header-content-for-valid-utf-8.patch +0004-Add-missing-return-data-to-scheduled-jobs.patch * -0005-Add-missing-return-data-to-scheduled-jobs.patch +0004-Add-missing-return-data-to-scheduled-jobs.patch * -0006-Fix-RPM-issues-with-the-date-time-and-add-package-at.patch +0005-Fix-RPM-issues-with-the-date-time-and-add-package-at.patch * -0007-Bugfix-info_available-does-not-work-correctly-on-SLE.patch +0006-Bugfix-info_available-does-not-work-correctly-on-SLE.patch - Add: * 0007-Check-if-byte-strings-are-properly-encoded-in-UTF-8.patch- Rename use-forking-daemon.patch to 0001-tserong-suse.com-We-don-t-have-python-systemd-so-not.patch - Rename use-salt-user-for-master.patch to 0002-Run-salt-master-as-dedicated-salt-user.patch - Rename 1efe484309a5c776974e723f3da0f5181f4bdb86.patch to 0003-List-products-consistently-across-all-SLES-systems.patch - Rename zypper-utf-8.patch to 0004-zypper-check-package-header-content-for-valid-utf-8.patch - Rename salt-2015.8-schedule-ret.patch to 0005-Add-missing-return-data-to-scheduled-jobs.patch - Rename salt-2015.8-pkg-zypper-attr-filtering.patch to 0006-Fix-RPM-issues-with-the-date-time-and-add-package-at.patch - Rename salt-2015.8-zypper-info.patch to 0007-Bugfix-info_available-does-not-work-correctly-on-SLE.patch- Fix zypper module info_available on SLE-11 * add salt-2015.8-zypper-info.patch * https://github.com/saltstack/salt/pull/30384 - zypper/pkg: add package attributes filtering * add salt-2015.8-pkg-zypper-attr-filtering.patch * https://github.com/saltstack/salt/pull/30267 - Remove obsoleted patches and fixes: * 0001-Add-rpm.minimal_info-fix-rpm.info.patch * 0002-Reduce-information-returned-from-pkg.info_installed.patch * Remove require on glibc-locale (bsc#959572)- Add missing return data to scheduled jobs * add salt-2015.8-schedule-ret.patch for * https://github.com/saltstack/salt/pull/30246- Update zypper-utf-8.patch for Python 2.6- require glibc-locale (bsc#959572)- Report epoch and architecture of installed packages 0001-Add-rpm.minimal_info-fix-rpm.info.patch - pkg.info_installed exceeds the maximum event size, reduce the information to what's actually needed 0002-Reduce-information-returned-from-pkg.info_installed.patch- Filter out bad UTF-8 strings in package data (bsc#958350) zypper-utf-8.patch- Updated to salt 2015.8.3 bugfix release - remove the following patches because upstream merged them: - 4b9302d79455d6a586b7cad1d7990cb22e7bc62e.patch - os_grain.patch - zypper_pkgrepo.patch - more details at: https://docs.saltstack.com/en/latest/topics/releases/2015.8.3.html- added 1efe484309a5c776974e723f3da0f5181f4bdb86.patch: reimplements pkg.list_products that potentially may be broken in a future releases of SLES.- added 4b9302d79455d6a586b7cad1d7990cb22e7bc62e.patch: fixes a regression introduced in 2015.8.2, which was actually holding back the release. Downgrade is not an option as we need the leap fixes.- it shouldnt be >= 1110 but just > 1110- require pmtools on sle11 to get dmidecode- update use-salt-user-for-master.patch: First step to make the syndic also run as salt user.- Updated to bugfix release 2015.8.2 - os_grain.patch fix the "os" grain on SLES11SP4 - zypper_pkgrepo.patch fix the priority and humanname pkgrepo args for the zypper backend for more details: https://docs.saltstack.com/en/2015.8/topics/releases/2015.8.2.html- update to 2015.8.1 - Add support for ``spm.d/*.conf`` configuration of SPM (:issue:`27010`) - Fix ``proxy`` grains breakage for non-proxy minions (:issue:`27039`) - Fix global key management for git state - Fix passing http auth to ``util.http`` from ``state.file`` (:issue:`21917`) - Fix ``multiprocessing: True`` in windows (on by default`) - Add ``pkg.info`` to pkg modules - Fix name of ``serial`` grain (this was accidentally renamed in 2015.8.0`) - Merge config values from ``master.d``/``minion.d`` conf files (rather than flat update`) - Clean grains cache on grains sync (:issue:`19853`) - Remove streamed response for fileclient to avoid HTTP redirection problems (:issue:`27093`) - Fixed incorrect warning about ``osrelease`` grain (:issue:`27065`) - Fix authentication via Salt-API with tokens (:issue:`27270`) - Fix winrepo downloads from https locations (:issue:`27081`) - Fix potential error with salt-call as non-root user (:issue:`26889`) - Fix global minion provider overrides (:issue:`27209`) - Fix backward compatibility issues for pecl modules - Fix Windows uninstaller to only remove ``./bin``, ``salt*``, ``nssm.exe``, ``uninst.exe`` (:issue:`27383`) - Fix misc issues with mongo returner. - Add sudo option to cloud config files (:issue:`27398`) - Fix regression in RunnerClient argument handling (:issue:`25107`) - Fix ``dockerng.running`` replacing creation hostconfig with runtime hostconfig (:issue:`27265`) - Fix dockerng.running replacing creation hostconfig with runtime hostconfig (:issue:`27265`) - Increased performance on boto asg/elb states due to ``__states__`` integration - Windows minion no longer requires powershell to restart (:issue:`26629`) - Fix x509 module to support recent versions of OpenSSL (:issue:`27326`) - Some issues with proxy minions were corrected. - drop salt-2015.8-backports-susemanager.diff: included in update - guard raet buildrequires with bcond_with raet and comment out the recommends for salt-raet.- remove pygit2 global recommends, it is only needed in the master - remove git-core, pygit2 should pull it as a dependency - add a (currently disabled) %check- Add salt-2015.8-backports-susemanager.diff Returns detailed information about a package- ifdef Recommends to build on RHEL based distros - use _initddir instead of _sysconfdir/init.d as it works on both platforms.- allow to disable docs in preparation for building on other platforms without all dependencies.- python-libnacl, python-ioflo are _not_ required to build the package. They are anyways requires of python-raet, which is also not required to build the package.- merge (build)requires/recommends with requirements/*txt and setup.py- add raet subpackage which will pull all requires for it and provides config snippets to enable it for the minion and master.- add tmpfiles.d file- Remove requires on python-ioflo and python-libnacl they will be pulled by python-raet, which is optional.- python-raet is optional, so make it a Recommends- update backports patch from 2015.8 branch- update use-forking-daemon.patch: the original intention was to get rid of the python systemd dependency. for this we do not have daemonize the whole process. just switching to simple mode is enough.- drop fdupes: 1. it broke python byte code handling 2. the only part of the package which would really benefit from it would be the doc package. but given we only install the files via %doc, we can not use it for that either. - reenable completions on distros newer than sle11 - do not use _datarootdir, use _datadir instead.- package all directories in /var/cache/salt and /etc/salt and have permissions set for non root salt master - update use-salt-user-for-master.patch: - also patch the logrotate file to include the su option- remove duplicated recommends - never require pygit2 and git. the master can run fine without. always use recommends- cleanup dependencies: - remove a lot of unneeded buildrequires - fdupes not present on SLE10 - python-certifi needed on SLE11 - python-zypp not needed any more - python-pygit2 is not a global requirement - convert python-pysqlite to recommends as it is not available on python <=2.7 - sles_version -> suse_version - %exclude the cloud/deploy/*.sh scripts to fix build issue on SLE11- Remove python-PyYAML from the dependencies list, as python-yaml is the same - Build the -completion subpackages in SLE11 as well - Add salt-proxy (by dmacvicar@suse.de) - Create salt user/group only in the -master subpkg- Fix typo in use-forking-daemon.patch, that prevented daemon loading- Fix typo in Requires- Cleanup requirements- New Major release 2015.8.0 for more details: http://docs.saltstack.com/en/latest/topics/releases/2015.8.0.html - Cleaned the spec file with spec-cleaner - Added the use-salt-user-for-master.patch see README.SUSE - Updated the files ownership with salt user - removed m2crypto depency- Removed fish dependency for fish completions.- Added fish completions.- Support SLE11SP{3,4}, where the M2Crypto package is named python-m2crypto- Updated to Bugfix release 2015.5 for more details: https://github.com/saltstack/salt/blob/develop/doc/topics/releases/2015.5.5.rst - Add prereq, for user creation. - Add creation of salt user in preparation of running the salt-master daemon as non-root user salt. https://bugzilla.opensuse.org/show_bug.cgi?id=939831 - Add README.SUSE with explanation and how to.- only require git-core to not pull in git-web and gitk- New Bugfix release 2015.5.3 for more details: http://docs.saltstack.com/en/latest/topics/releases/2015.5.3.html- New Bugfix release 2015.5.2 for more details: http://docs.saltstack.com/en/latest/topics/releases/2015.5.2.html- New Bugfix release 2015.5.1 salt.runners.cloud.action() has changed the fun keyword argument to func. Please update any calls to this function in the cloud runner. for more details: http://docs.saltstack.com/en/latest/topics/releases/2015.5.1.html- Removed python-pssh depency not needed anymore.- Major release 2015.5.0 Lithium - update to 2015.5.0 The 2015.5.0 feature release of Salt is focused on hardening Salt and mostly on improving existing systems. A few major additions are present, primarily the new Beacon system. Most enhancements have been focused around improving existing features and interfaces. As usual the release notes are not exhaustive and primarily include the most notable additions and improvements. Hundreds of bugs have been fixed and many modules have been substantially updated and added. See especially the warning right on the top regarding python_shell=False. For all details see http://docs.saltstack.com/en/latest/topics/releases/2015.5.0.html - RPM Package changes: - add some versions to the buildrequires to match the 2 requirements files from the tarball - Moved the depencencies to main salt package except where they are specific for the package - Changed python-request dependency,only needed on salt-cloud - Added python-tornado dependency for http.py - Fixed zsh_completion in tarball. - Fixed salt-api requirements to require python-cherrypy - Fixed salt-cloud requiments to require salt-master- New Bugfix release 2014.7.5 Changes: + Fixed a key error bug in salt-cloud + Updated man pages to better match documentation + Fixed bug concerning high CPU usage with salt-ssh + Fixed bugs with remounting cvfs and fuse filesystems + Fixed bug with alowing requisite tracking of entire sls files + Fixed bug with aptpkg.mod_repo returning OK even if apt-add-repository fails + Increased frequency of ssh terminal output checking + Fixed malformed locale string in localmod module + Fixed checking of available version of package when accept_keywords were changed + Fixed bug to make git.latest work with empty repositories + Added **kwargs to service.mod_watch which removes warnings about enable and __reqs__ not being supported by the function + Improved state comments to not grow so quickly on failed requisites + Added force argument to service to trigger force_reload + Fixed bug to andle pkgrepo keyids that have been converted to int + Fixed module.portage_config bug with appending accept_keywords + Fixed bug to correctly report disk usage on windows minion + Added the ability to specify key prefix for S3 ext_pillar + Fixed issues with batch mode operating on the incorrect number of minions + Fixed a bug with the proxmox cloud provider stacktracing on disk definition + Fixed a bug with the changes dictionary in the file state + Fixed the TCP keep alive settings to work better with SREQ caching + Fixed many bugs within the iptables state and module + Fixed bug with states by adding fun, state, and unless to the state runtime internal keywords listing + Added ability to eAuth against Active Directory + Fixed some salt-ssh issues when running on Fedora 21 + Fixed grains.get_or_set_hash to work with multiple entries under same key + Added better explanations and more examples of how the Reactor calls functions to docs + Fixed bug to not pass ex_config_drive to libcloud unless it's explicitly enabled + Fixed bug with pip.install on windows + Fixed bug where puppet.run always returns a 0 retcode + Fixed race condition bug with minion scheduling via pillar + Made efficiency improvements and bug fixes to the windows installer + Updated environment variables to fix bug with pygit2 when running salt as non-root user + Fixed cas behavior on data module -- data.cas was not saving changes + Fixed GPG rendering error + Fixed strace error in virt.query + Fixed stacktrace when running chef-solo command + Fixed possible bug wherein uncaught exceptions seem to make zmq3 tip over when threading is involved + Fixed argument passing to the reactor + Fixed glibc caching to prevent bug where salt-minion getaddrinfo in dns_check() never got updated nameservers Known Issues: + In multimaster mode, a minion may become temporarily unresponsive if modules or pillars are refreshed at the same time that one or more masters are down. This can be worked around by setting 'auth_timeout' and 'auth_tries' down to shorter periods.- New Bugfix Release 2014.7.4 - Updated patch use-forking-daemon.patch - fix salt-zsh-completion conflicts + Multi-master minions mode no longer route fileclient operations asymetrically. This fixes the source of many multi-master bugs where the minion would become unrepsonsive from one or more masters. + Fix bug wherein network.iface could produce stack traces. + net.arp will no longer be made available unless arp is installed on the system. + Major performance improvements to Saltnado + Allow KVM module to operate under KVM itself or VMWare Fusion + Various fixes to the Windows installation scripts + Fix issue where the syndic would not correctly propogate loads to the master job cache. + Improve error handling on invalid /etc/network/interfaces file in salt networking modules + Fix bug where a reponse status was not checked for in fileclient.get_url + Enable eauth when running salt in batch mode + Increase timeout in Boto Route53 module + Fix bugs with Salt's 'tar' module option parsing + Fix parsing of NTP servers on Windows + Fix issue with blockdev tuning not reporting changes correctly + Update to the latest Salt bootstrap script + Update Linode salt-cloud driver to use either linode-python or apache-libcloud + Fix for s3.query function to return correct headers + Fix for s3.head returning None for files that exist + Fix the disable function in win_service module so that the service is disabled correctly + Fix race condition between master and minion when making a directory when both daemons are on the same host + Fix an issue where file.recurse would fail at the root of an svn repo when the repo has a mountpoint + Fix an issue where file.recurse would fail at the root of an hgfs repo when the repo has a mountpoint + Fix an issue where file.recurse would fail at the root of an gitfs repo when the repo has a mountpoint + Add status.master capability for Windows. + Various fixes to ssh_known_hosts + Various fixes to states.network bonding for Debian + The debian_ip.get_interfaces module no longer removes nameservers. + Better integration between grains.virtual and systemd-detect-virt and virt-what + Fix traceback in sysctl.present state output + Fix for issue where mount.mounted would fail when superopts were not a part of mount.active (extended=True). Also mount.mounted various fixes for Solaris and FreeBSD. + Fix error where datetimes were not correctly safeguarded before being passed into msgpack. + Fix file.replace regressions. If the pattern is not found, and if dry run is False, and if `backup` is False, and if a pre-existing file exists with extension `.bak`, then that backup file will be overwritten. This backup behavior is a result of how `fileinput` works. Fixing it requires either passing through the file twice (the first time only to search for content and set a flag), or rewriting `file.replace` so it doesn't use `fileinput` + VCS filreserver fixes/optimizations + Catch fileserver configuration errors on master start + Raise errors on invalid gitfs configurations + set_locale when locale file does not exist (Redhat family) + Fix to correctly count active devices when created mdadm array with spares + Fix to correctly target minions in batch mode + Support ssh:// urls using the gitfs dulwhich backend + New fileserver runner + Fix various bugs with argument parsing to the publish module. + Fix disk.usage for Synology OS + Fix issue with tags occurring twice with docker.pulled + Fix incorrect key error in SMTP returner + Fix condition which would remount loopback filesystems on every state run + Remove requsites from listens after they are called in the state system + Make system implementation of service.running aware of legacy service calls + Fix issue where publish.publish would not handle duplicate responses gracefully. + Accept Kali Linux for aptpkg salt execution module + Fix bug where cmd.which could not handle a dirname as an argument + Fix issue in ps.pgrep where exceptions were thrown on Windows. - Known Issues: + In multimaster mode, a minion may become temporarily unresponsive if modules or pillars are refreshed at the same time that one or more masters are down. This can be worked around by setting 'auth_timeout' and 'auth_tries' down to shorter periods.- New Bugfix release 2014.7.2: - fix package bug with fdupes. - keep sle 11 sp3 support. + Fix erroneous warnings for systemd service enabled check (issue 19606) + Fix FreeBSD kernel module loading, listing, and persistence kmod (issue 197151, issue 19682) + Allow case-sensitive npm package names in the npm state. This may break behavior for people expecting the state to lowercase their npm package names for them. The npm module was never affected by mandatory lowercasing. (issue 20329) + Deprecate the activate parameter for pip.install for both the module and the state. If bin_env is given and points to a virtualenv, there is no need to activate that virtualenv in a shell for pip to install to the virtualenv. + Fix a file-locking bug in gitfs (issue 18839)- New Bugfix release 2014.7.1: + Fixed gitfs serving symlinks in file.recurse states (issue 17700) + Fixed holding of multiple packages (YUM) when combined with version pinning (issue 18468) + Fixed use of Jinja templates in masterless mode with non-roots fileserver backend (issue 17963) + Re-enabled pillar and compound matching for mine and publish calls. Note that pillar globbing is still disabled for those modes, for security reasons. (issue 17194) + Fix for tty: True in salt-ssh (issue 16847) - Needed to provide zsh completion because of the tarball missing the zsh completion script. - Removed man salt.1.gz file from salt-master because upstream removed it. - Added man salt.7.gz to salt-master package- Updated to Major Release 2014.7.0 - added python-zipp as depency - added recommend python-pygit2, this is the preferred gitfs backend of saltstack - added zsh-completion package - Removed Patch fix-service-py-version-parsing-sles.patch already fixed in this package - Removed Patch pass-all-systemd-list-units.patch already fixed in this package - Removed Patch disable-service-py-for-suse-family.patch already fixed in this package - Removed Patch allow-systemd-units-no-unit-files.patch already fixed in this package - Removed Patch allow-systemd-parameterized-services.patch already fixed in this package - More information at: http://docs.saltstack.com/en/latest/topics/releases/2014.7.0.html - SALT SSH ENHANCEMENTS: + Support for Fileserver Backends + Support for Saltfile + Ext Pillar + No more sshpass needed + Pure Python Shim + Custom Module Delivery + CP module Support + More Thin Directory Options - Salt State System enhancements: + New Imperative State Keyword "Listen" + New Mod Aggregate Runtime Manipulator + New Requisites: onchanges and onfail + New Global onlyif and unless + Use names to expand and override values - Salt Major Features: + Improved Scheduler Additions + Red Hat 7 Support + Fileserver Backends in Salt-call + Amazon Execution Modules in salt-cloud + LXC Runner Enhancements + Next Gen Docker Management + Peer System Performance Improvements + SDB Encryption at rest for configs + GPG Renderer encrypted pillar at rest + OpenStack Expansions + Queues System external queue systems into Salt events + Multi Master Failover Additions + Chef Execution Module - salt-api Project Merge + Synchronous and Asynchronous Execution of Runner and Wheel Modules + rest_cherrypy Additions + Web Hooks - Fileserver Backend Enhancements: + New gitfs Features + Pygit2 and Dulwich support + Mountpoints support + New hgfs Features + mountpoints support + New svnfs Features: + mountpoints + minionfs Featuressupport + mountpoints - New Salt Modules: + Oracle + Random + Redis + Amazon Simple Queue Service + Block Device Management + CoreOS etcd + Genesis + InfluxDB + Server Density + Twilio Notifications + Varnish + ZNC IRC Bouncer + SMTP - NEW RUNNERS: + Map/Reduce Style + Queue - NEW EXTERNAL PILLARS: + CoreOS etcd - NEW SALT-CLOUD PROVIDERS: + Aliyun ECS Cloud + LXC Containers + Proxmox (OpenVZ containers & KVM) - DEPRECATIONS: + Salt.modules.virtualenv_mod- Updated to 2014.1.13 a bugfix release on 2014.1.12 + fix module run exit code (issue 16420) + salt cloud Check the exit status code of scp before assuming it has failed. (issue 16599)/bin/sh/bin/sh/bin/shh01-armsrv2 1756133371  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJK*MNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~        !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~4.5.33006.0-150500.4.57.23006.0-150500.4.57.23006.0-150500.4.57.2    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! """"""""""""""""""""""##$#%%&&&&&&&&&%%%%%%%%''(('))***))++,,,,,,,,,,,,,,,,,,,,+++++++++++++++++++--......-----//0000000//11221////3344444444444444444444444444444444333333333333333333355666666666666555555555553333333337778888888888888888888888888888888888888877777777777777777777777777777777777733333/99:::99//;;<<<<<<<<;;;;;;;==>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>=============================??@@@??AABBBACCDAAEEFFFFFEEEEGGHHHHHHHHHHHHHHHHHGGGGGGGGGGGGGGGGIIJJJIIKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKMMNNNNNNNNMMMMMMMKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKOOPPOQQRRRRQQQSSTTSQOUUVVVVUUUOWWXXXXXXXXXXXXXXXXXXXWWWWWWWWWWWWWWWWWWYYZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY[[\\[]]^^^^^^^^^^^^^^^^^^^^^^^^^]]]]]]]]]]]]]]]]]]]]]]]]__```__aabbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaaaaaaaaaccdddddddddddddddddddddddddddddddddddddddddcccccccccccccccccccccccccccccccccccccccceeffffffffffffeeeeeeeeeeegghhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhgggggggggggggggggggggggggggggggggggggggggggggiijjjjjjjjjjjjjjjiiiiiiiiiiiiiikkllllllllllkkkkkkkkkmmnmooppomqqrrqssttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssuuvuwwwwwwwuxxuyuzzzzzzzu{{{u||||||||}}~~~~~~~~~~~}}}}}}}}}}saltsalt-apisalt-callsalt-cloudsalt-cpsalt-keysalt-mastersalt-minionsalt-proxysalt-runsalt-sshsalt-supportsalt-syndicspmzyppnotifysalt-callsalt-call-3.6salt-supportsalt-support-3.6spmspm-3.6saltsalt-3006.0-py3.6.egg-infoPKG-INFOSOURCES.txtdependency_links.txtentry_points.txtnot-zip-saferequires.txttop_level.txt__init__.py__pycache____init__.cpython-36.pyc_compat.cpython-36.pyc_syspaths.cpython-36.pyccrypt.cpython-36.pycexceptions.cpython-36.pycfeatures.cpython-36.pycfileclient.cpython-36.pyckey.cpython-36.pycmaster.cpython-36.pycminion.cpython-36.pycpayload.cpython-36.pycrunner.cpython-36.pycscripts.cpython-36.pycstate.cpython-36.pycsyspaths.cpython-36.pyctemplate.cpython-36.pycversion.cpython-36.pyc_compat.py_logging__init__.py__pycache____init__.cpython-36.pychandlers.cpython-36.pycimpl.cpython-36.pycmixins.cpython-36.pychandlers.pyimpl.pymixins.py_syspaths.py_version.txtacl__init__.py__pycache____init__.cpython-36.pycauth__init__.py__pycache____init__.cpython-36.pycauto.cpython-36.pycdjango.cpython-36.pycfile.cpython-36.pyckeystone.cpython-36.pycldap.cpython-36.pycmysql.cpython-36.pycpam.cpython-36.pycpki.cpython-36.pycrest.cpython-36.pycsharedsecret.cpython-36.pycyubico.cpython-36.pycauto.pydjango.pyfile.pykeystone.pyldap.pymysql.pypam.pypki.pyrest.pysharedsecret.pyyubico.pybeacons__init__.py__pycache____init__.cpython-36.pycadb.cpython-36.pycaix_account.cpython-36.pycavahi_announce.cpython-36.pycbonjour_announce.cpython-36.pycbtmp.cpython-36.pyccert_info.cpython-36.pycdiskusage.cpython-36.pycglxinfo.cpython-36.pychaproxy.cpython-36.pycinotify.cpython-36.pycjournald.cpython-36.pycjunos_rre_keys.cpython-36.pycload.cpython-36.pyclog_beacon.cpython-36.pycmemusage.cpython-36.pycnapalm_beacon.cpython-36.pycnetwork_info.cpython-36.pycnetwork_settings.cpython-36.pycpkg.cpython-36.pycproxy_example.cpython-36.pycps.cpython-36.pycsalt_monitor.cpython-36.pycsalt_proxy.cpython-36.pycsensehat.cpython-36.pycservice.cpython-36.pycsh.cpython-36.pycsmartos_imgadm.cpython-36.pycsmartos_vmadm.cpython-36.pycstatus.cpython-36.pycswapusage.cpython-36.pyctelegram_bot_msg.cpython-36.pyctwilio_txt_msg.cpython-36.pycwatchdog.cpython-36.pycwtmp.cpython-36.pycadb.pyaix_account.pyavahi_announce.pybonjour_announce.pybtmp.pycert_info.pydiskusage.pyglxinfo.pyhaproxy.pyinotify.pyjournald.pyjunos_rre_keys.pyload.pylog_beacon.pymemusage.pynapalm_beacon.pynetwork_info.pynetwork_settings.pypkg.pyproxy_example.pyps.pysalt_monitor.pysalt_proxy.pysensehat.pyservice.pysh.pysmartos_imgadm.pysmartos_vmadm.pystatus.pyswapusage.pytelegram_bot_msg.pytwilio_txt_msg.pywatchdog.pywtmp.pycache__init__.py__pycache____init__.cpython-36.pycconsul.cpython-36.pycetcd_cache.cpython-36.pyclocalfs.cpython-36.pycmysql_cache.cpython-36.pycredis_cache.cpython-36.pycconsul.pyetcd_cache.pylocalfs.pymysql_cache.pyredis_cache.pychannel__init__.py__pycache____init__.cpython-36.pycclient.cpython-36.pycserver.cpython-36.pycclient.pyserver.pycli__init__.py__pycache____init__.cpython-36.pycapi.cpython-36.pycbatch.cpython-36.pycbatch_async.cpython-36.pyccall.cpython-36.pyccaller.cpython-36.pyccp.cpython-36.pycdaemons.cpython-36.pyckey.cpython-36.pycrun.cpython-36.pycsalt.cpython-36.pycspm.cpython-36.pycssh.cpython-36.pycapi.pybatch.pybatch_async.pycall.pycaller.pycp.pydaemons.pykey.pyrun.pysalt.pyspm.pyssh.pysupport__init__.py__pycache____init__.cpython-36.pyccollector.cpython-36.pycconsole.cpython-36.pycintfunc.cpython-36.pyclocalrunner.cpython-36.pyccollector.pyconsole.pyintfunc.pylocalrunner.pyprofiles__init__.py__pycache____init__.cpython-36.pycdefault.ymljobs-active.ymljobs-last.ymljobs-trace.ymlnetwork.ymlpostgres.ymlsalt.ymlusers.ymlclient__init__.py__pycache____init__.cpython-36.pycmixins.cpython-36.pycnetapi.cpython-36.pycmixins.pynetapi.pyssh__init__.py__pycache____init__.cpython-36.pycclient.cpython-36.pycshell.cpython-36.pycssh_py_shim.cpython-36.pycstate.cpython-36.pycclient.pyshell.pyssh_py_shim.pystate.pywrapper__init__.py__pycache____init__.cpython-36.pycconfig.cpython-36.pyccp.cpython-36.pycgrains.cpython-36.pycmine.cpython-36.pycpillar.cpython-36.pycpublish.cpython-36.pycsaltcheck.cpython-36.pycstate.cpython-36.pycconfig.pycp.pygrains.pymine.pypillar.pypublish.pysaltcheck.pystate.pycloud__init__.py__pycache____init__.cpython-36.pyccli.cpython-36.pycexceptions.cpython-36.pyclibcloudfuncs.cpython-36.pyccli.pyclouds__init__.py__pycache____init__.cpython-36.pycaliyun.cpython-36.pycazurearm.cpython-36.pycclc.cpython-36.pyccloudstack.cpython-36.pycdigitalocean.cpython-36.pycdimensiondata.cpython-36.pycec2.cpython-36.pycgce.cpython-36.pycgogrid.cpython-36.pychetzner.cpython-36.pycjoyent.cpython-36.pyclibvirt.cpython-36.pyclinode.cpython-36.pyclxc.cpython-36.pycmsazure.cpython-36.pyconeandone.cpython-36.pycopennebula.cpython-36.pycopenstack.cpython-36.pycpacket.cpython-36.pycparallels.cpython-36.pycprofitbricks.cpython-36.pycproxmox.cpython-36.pycpyrax.cpython-36.pycqingcloud.cpython-36.pycsaltify.cpython-36.pycscaleway.cpython-36.pycsoftlayer.cpython-36.pycsoftlayer_hw.cpython-36.pyctencentcloud.cpython-36.pycvagrant.cpython-36.pycvirtualbox.cpython-36.pycvmware.cpython-36.pycvultrpy.cpython-36.pycxen.cpython-36.pycaliyun.pyazurearm.pyclc.pycloudstack.pydigitalocean.pydimensiondata.pyec2.pygce.pygogrid.pyhetzner.pyjoyent.pylibvirt.pylinode.pylxc.pymsazure.pyoneandone.pyopennebula.pyopenstack.pypacket.pyparallels.pyprofitbricks.pyproxmox.pypyrax.pyqingcloud.pysaltify.pyscaleway.pysoftlayer.pysoftlayer_hw.pytencentcloud.pyvagrant.pyvirtualbox.pyvmware.pyvultrpy.pyxen.pydeployArch-git.shArch.shDebian-git.shDebian.shFedora-git.shFedora.shFreeBSD-git.shFreeBSD.shNone.shRHEL5-git.shRHEL5.shRHEL6-git.shRHEL6.shSmartOS.shUbuntu-git.shUbuntu.shbootstrap-salt.shcurl-bootstrap-git.shcurl-bootstrap.shpython-bootstrap.shwget-bootstrap-nocert.shwget-bootstrap.shexceptions.pylibcloudfuncs.pyconfig__init__.py__pycache____init__.cpython-36.pycschemas__init__.py__pycache____init__.cpython-36.pyccommon.cpython-36.pycesxcluster.cpython-36.pycesxdatacenter.cpython-36.pycesxi.cpython-36.pycesxvm.cpython-36.pycminion.cpython-36.pycssh.cpython-36.pycvcenter.cpython-36.pyccommon.pyesxcluster.pyesxdatacenter.pyesxi.pyesxvm.pyminion.pyssh.pyvcenter.pycrypt.pydaemons__init__.py__pycache____init__.cpython-36.pycmasterapi.cpython-36.pycmasterapi.pydefaults__init__.py__pycache____init__.cpython-36.pycevents.cpython-36.pycexitcodes.cpython-36.pycevents.pyexitcodes.pyengines__init__.py__pycache____init__.cpython-36.pycdocker_events.cpython-36.pycfluent.cpython-36.pychttp_logstash.cpython-36.pycircbot.cpython-36.pycjunos_syslog.cpython-36.pyclibvirt_events.cpython-36.pyclogentries.cpython-36.pyclogstash_engine.cpython-36.pycnapalm_syslog.cpython-36.pycreactor.cpython-36.pycredis_sentinel.cpython-36.pycscript.cpython-36.pycslack.cpython-36.pycslack_bolt_engine.cpython-36.pycsqs_events.cpython-36.pycstalekey.cpython-36.pyctest.cpython-36.pycthorium.cpython-36.pycwebhook.cpython-36.pycdocker_events.pyfluent.pyhttp_logstash.pyircbot.pyjunos_syslog.pylibvirt_events.pylogentries.pylogstash_engine.pynapalm_syslog.pyreactor.pyredis_sentinel.pyscript.pyslack.pyslack_bolt_engine.pysqs_events.pystalekey.pytest.pythorium.pywebhook.pyexceptions.pyexecutors__init__.py__pycache____init__.cpython-36.pycdirect_call.cpython-36.pycdocker.cpython-36.pycsplay.cpython-36.pycsudo.cpython-36.pyctransactional_update.cpython-36.pycdirect_call.pydocker.pysplay.pysudo.pytransactional_update.pyext__init__.py__pycache____init__.cpython-36.pycbackports_abc.cpython-36.pycipaddress.cpython-36.pycsaslprep.cpython-36.pycssl_match_hostname.cpython-36.pycwin_inet_pton.cpython-36.pyczipp.cpython-36.pycbackports_abc.pyimportlib_metadata__init__.py__pycache____init__.cpython-36.pyc_compat.cpython-36.pyc_compat.pyipaddress.pysaslprep.pyssl_match_hostname.pytornado__init__.py__pycache____init__.cpython-36.pyc_locale_data.cpython-36.pycauth.cpython-36.pycautoreload.cpython-36.pycconcurrent.cpython-36.pyccurl_httpclient.cpython-36.pycescape.cpython-36.pycgen.cpython-36.pychttp1connection.cpython-36.pychttpclient.cpython-36.pychttpserver.cpython-36.pychttputil.cpython-36.pycioloop.cpython-36.pyciostream.cpython-36.pyclocale.cpython-36.pyclocks.cpython-36.pyclog.cpython-36.pycnetutil.cpython-36.pycoptions.cpython-36.pycprocess.cpython-36.pycqueues.cpython-36.pycrouting.cpython-36.pycsimple_httpclient.cpython-36.pycstack_context.cpython-36.pyctcpclient.cpython-36.pyctcpserver.cpython-36.pyctemplate.cpython-36.pyctesting.cpython-36.pycutil.cpython-36.pycweb.cpython-36.pycwebsocket.cpython-36.pycwsgi.cpython-36.pyc_locale_data.pyauth.pyautoreload.pyconcurrent.pycurl_httpclient.pyescape.pygen.pyhttp1connection.pyhttpclient.pyhttpserver.pyhttputil.pyioloop.pyiostream.pylocale.pylocks.pylog.pynetutil.pyoptions.pyplatform__init__.py__pycache____init__.cpython-36.pycasyncio.cpython-36.pycauto.cpython-36.pyccaresresolver.cpython-36.pyccommon.cpython-36.pycepoll.cpython-36.pycinterface.cpython-36.pyckqueue.cpython-36.pycposix.cpython-36.pycselect.cpython-36.pyctwisted.cpython-36.pycwindows.cpython-36.pycasyncio.pyauto.pycaresresolver.pycommon.pyepoll.pyinterface.pykqueue.pyposix.pyselect.pytwisted.pywindows.pyprocess.pyqueues.pyrouting.pysimple_httpclient.pystack_context.pytcpclient.pytcpserver.pytemplate.pytest__init__.py__main__.py__pycache____init__.cpython-36.pyc__main__.cpython-36.pycasyncio_test.cpython-36.pycauth_test.cpython-36.pycconcurrent_test.cpython-36.pyccurl_httpclient_test.cpython-36.pycescape_test.cpython-36.pycgen_test.cpython-36.pychttp1connection_test.cpython-36.pychttpclient_test.cpython-36.pychttpserver_test.cpython-36.pychttputil_test.cpython-36.pycimport_test.cpython-36.pycioloop_test.cpython-36.pyciostream_test.cpython-36.pyclocale_test.cpython-36.pyclocks_test.cpython-36.pyclog_test.cpython-36.pycnetutil_test.cpython-36.pycoptions_test.cpython-36.pycprocess_test.cpython-36.pycqueues_test.cpython-36.pycresolve_test_helper.cpython-36.pycrouting_test.cpython-36.pycruntests.cpython-36.pycsimple_httpclient_test.cpython-36.pycstack_context_test.cpython-36.pyctcpclient_test.cpython-36.pyctcpserver_test.cpython-36.pyctemplate_test.cpython-36.pyctesting_test.cpython-36.pyctwisted_test.cpython-36.pycutil.cpython-36.pycutil_test.cpython-36.pycweb_test.cpython-36.pycwebsocket_test.cpython-36.pycwindows_test.cpython-36.pycwsgi_test.cpython-36.pycasyncio_test.pyauth_test.pyconcurrent_test.pycurl_httpclient_test.pyescape_test.pygen_test.pyhttp1connection_test.pyhttpclient_test.pyhttpserver_test.pyhttputil_test.pyimport_test.pyioloop_test.pyiostream_test.pylocale_test.pylocks_test.pylog_test.pynetutil_test.pyoptions_test.pyprocess_test.pyqueues_test.pyresolve_test_helper.pyrouting_test.pyruntests.pysimple_httpclient_test.pystack_context_test.pytcpclient_test.pytcpserver_test.pytemplate_test.pytesting_test.pytwisted_test.pyutil.pyutil_test.pyweb_test.pywebsocket_test.pywindows_test.pywsgi_test.pytesting.pyutil.pyweb.pywebsocket.pywsgi.pyvsan__init__.py__pycache____init__.cpython-36.pycvsanapiutils.cpython-36.pycvsanmgmtObjects.cpython-36.pycvsanapiutils.pyvsanmgmtObjects.pywin_inet_pton.pyzipp.pyfeatures.pyfileclient.pyfileserver__init__.py__pycache____init__.cpython-36.pycazurefs.cpython-36.pycgitfs.cpython-36.pychgfs.cpython-36.pycminionfs.cpython-36.pycroots.cpython-36.pycs3fs.cpython-36.pycsvnfs.cpython-36.pycazurefs.pygitfs.pyhgfs.pyminionfs.pyroots.pys3fs.pysvnfs.pygrains__init__.py__pycache____init__.cpython-36.pycchronos.cpython-36.pyccimc.cpython-36.pyccore.cpython-36.pycdisks.cpython-36.pycesxi.cpython-36.pycextra.cpython-36.pycfibre_channel.cpython-36.pycfx2.cpython-36.pyciscsi.cpython-36.pycjunos.cpython-36.pyclvm.cpython-36.pycmarathon.cpython-36.pycmdadm.cpython-36.pycmdata.cpython-36.pycmetadata.cpython-36.pycmetadata_azure.cpython-36.pycmetadata_gce.cpython-36.pycminion_process.cpython-36.pycnapalm.cpython-36.pycnvme.cpython-36.pycnxos.cpython-36.pycopts.cpython-36.pycpanos.cpython-36.pycpending_reboot.cpython-36.pycphilips_hue.cpython-36.pycrest_sample.cpython-36.pycsmartos.cpython-36.pycssh_sample.cpython-36.pyczfs.cpython-36.pycchronos.pycimc.pycore.pydisks.pyesxi.pyextra.pyfibre_channel.pyfx2.pyiscsi.pyjunos.pylvm.pymarathon.pymdadm.pymdata.pymetadata.pymetadata_azure.pymetadata_gce.pyminion_process.pynapalm.pynvme.pynxos.pyopts.pypanos.pypending_reboot.pyphilips_hue.pyrest_sample.pysmartos.pyssh_sample.pyzfs.pykey.pyloader__init__.py__pycache____init__.cpython-36.pyccontext.cpython-36.pyclazy.cpython-36.pyccontext.pylazy.pylog__init__.py__pycache____init__.cpython-36.pycmixins.cpython-36.pycsetup.cpython-36.pychandlers__init__.py__pycache____init__.cpython-36.pycmixins.pysetup.pylog_handlers__init__.py__pycache____init__.cpython-36.pycfluent_mod.cpython-36.pyclog4mongo_mod.cpython-36.pyclogstash_mod.cpython-36.pycsentry_mod.cpython-36.pycfluent_mod.pylog4mongo_mod.pylogstash_mod.pysentry_mod.pymaster.pymatchers__init__.py__pycache____init__.cpython-36.pyccache_match.cpython-36.pyccompound_match.cpython-36.pyccompound_pillar_exact_match.cpython-36.pycconfirm_top.cpython-36.pycdata_match.cpython-36.pycglob_match.cpython-36.pycgrain_match.cpython-36.pycgrain_pcre_match.cpython-36.pycipcidr_match.cpython-36.pyclist_match.cpython-36.pycnodegroup_match.cpython-36.pycpcre_match.cpython-36.pycpillar_exact_match.cpython-36.pycpillar_match.cpython-36.pycpillar_pcre_match.cpython-36.pycrange_match.cpython-36.pyccache_match.pycompound_match.pycompound_pillar_exact_match.pyconfirm_top.pydata_match.pyglob_match.pygrain_match.pygrain_pcre_match.pyipcidr_match.pylist_match.pynodegroup_match.pypcre_match.pypillar_exact_match.pypillar_match.pypillar_pcre_match.pyrange_match.pymetaproxy__init__.py__pycache____init__.cpython-36.pycdeltaproxy.cpython-36.pycproxy.cpython-36.pycdeltaproxy.pyproxy.pyminion.pymodules__init__.py__pycache____init__.cpython-36.pycacme.cpython-36.pycaix_group.cpython-36.pycaix_shadow.cpython-36.pycaixpkg.cpython-36.pycaliases.cpython-36.pycalternatives.cpython-36.pycansiblegate.cpython-36.pycapache.cpython-36.pycapcups.cpython-36.pycapf.cpython-36.pycapkpkg.cpython-36.pycaptly.cpython-36.pycaptpkg.cpython-36.pycarchive.cpython-36.pycarista_pyeapi.cpython-36.pycartifactory.cpython-36.pycat.cpython-36.pycat_solaris.cpython-36.pycaugeas_cfg.cpython-36.pycaws_sqs.cpython-36.pycazurearm_compute.cpython-36.pycazurearm_dns.cpython-36.pycazurearm_network.cpython-36.pycazurearm_resource.cpython-36.pycbamboohr.cpython-36.pycbaredoc.cpython-36.pycbcache.cpython-36.pycbeacons.cpython-36.pycbigip.cpython-36.pycbluez_bluetooth.cpython-36.pycboto3_elasticache.cpython-36.pycboto3_elasticsearch.cpython-36.pycboto3_route53.cpython-36.pycboto3_sns.cpython-36.pycboto_apigateway.cpython-36.pycboto_asg.cpython-36.pycboto_cfn.cpython-36.pycboto_cloudfront.cpython-36.pycboto_cloudtrail.cpython-36.pycboto_cloudwatch.cpython-36.pycboto_cloudwatch_event.cpython-36.pycboto_cognitoidentity.cpython-36.pycboto_datapipeline.cpython-36.pycboto_dynamodb.cpython-36.pycboto_ec2.cpython-36.pycboto_efs.cpython-36.pycboto_elasticache.cpython-36.pycboto_elasticsearch_domain.cpython-36.pycboto_elb.cpython-36.pycboto_elbv2.cpython-36.pycboto_iam.cpython-36.pycboto_iot.cpython-36.pycboto_kinesis.cpython-36.pycboto_kms.cpython-36.pycboto_lambda.cpython-36.pycboto_rds.cpython-36.pycboto_route53.cpython-36.pycboto_s3.cpython-36.pycboto_s3_bucket.cpython-36.pycboto_secgroup.cpython-36.pycboto_sns.cpython-36.pycboto_sqs.cpython-36.pycboto_ssm.cpython-36.pycboto_vpc.cpython-36.pycbower.cpython-36.pycbridge.cpython-36.pycbsd_shadow.cpython-36.pycbtrfs.cpython-36.pyccabal.cpython-36.pyccapirca_acl.cpython-36.pyccassandra_cql.cpython-36.pyccassandra_mod.cpython-36.pyccelery.cpython-36.pycceph.cpython-36.pycchassis.cpython-36.pycchef.cpython-36.pycchocolatey.cpython-36.pycchronos.cpython-36.pycchroot.cpython-36.pyccimc.cpython-36.pycciscoconfparse_mod.cpython-36.pyccisconso.cpython-36.pyccloud.cpython-36.pyccmdmod.cpython-36.pyccomposer.cpython-36.pycconfig.cpython-36.pycconsul.cpython-36.pyccontainer_resource.cpython-36.pyccp.cpython-36.pyccpan.cpython-36.pyccron.cpython-36.pyccryptdev.cpython-36.pyccsf.cpython-36.pyccyg.cpython-36.pycdaemontools.cpython-36.pycdata.cpython-36.pycdatadog_api.cpython-36.pycddns.cpython-36.pycdeb_apache.cpython-36.pycdeb_postgres.cpython-36.pycdebconfmod.cpython-36.pycdebian_ip.cpython-36.pycdebian_service.cpython-36.pycdebuild_pkgbuild.cpython-36.pycdefaults.cpython-36.pycdevinfo.cpython-36.pycdevmap.cpython-36.pycdig.cpython-36.pycdisk.cpython-36.pycdjangomod.cpython-36.pycdnsmasq.cpython-36.pycdnsutil.cpython-36.pycdockercompose.cpython-36.pycdockermod.cpython-36.pycdpkg_lowpkg.cpython-36.pycdrac.cpython-36.pycdracr.cpython-36.pycdrbd.cpython-36.pycdummyproxy_pkg.cpython-36.pycdummyproxy_service.cpython-36.pycebuildpkg.cpython-36.pyceix.cpython-36.pycelasticsearch.cpython-36.pycenviron.cpython-36.pyceselect.cpython-36.pycesxcluster.cpython-36.pycesxdatacenter.cpython-36.pycesxi.cpython-36.pycesxvm.cpython-36.pycetcd_mod.cpython-36.pycethtool.cpython-36.pycevent.cpython-36.pycextfs.cpython-36.pycfile.cpython-36.pycfirewalld.cpython-36.pycfreebsd_sysctl.cpython-36.pycfreebsd_update.cpython-36.pycfreebsdjail.cpython-36.pycfreebsdkmod.cpython-36.pycfreebsdpkg.cpython-36.pycfreebsdports.cpython-36.pycfreebsdservice.cpython-36.pycfreezer.cpython-36.pycgcp_addon.cpython-36.pycgem.cpython-36.pycgenesis.cpython-36.pycgentoo_service.cpython-36.pycgentoolkitmod.cpython-36.pycgit.cpython-36.pycgithub.cpython-36.pycglanceng.cpython-36.pycglassfish.cpython-36.pycglusterfs.cpython-36.pycgnomedesktop.cpython-36.pycgoogle_chat.cpython-36.pycgpg.cpython-36.pycgrafana4.cpython-36.pycgrains.cpython-36.pycgroupadd.cpython-36.pycgrub_legacy.cpython-36.pycguestfs.cpython-36.pychadoop.cpython-36.pychaproxyconn.cpython-36.pychashutil.cpython-36.pycheat.cpython-36.pychelm.cpython-36.pychg.cpython-36.pychighstate_doc.cpython-36.pychosts.cpython-36.pychttp.cpython-36.pycicinga2.cpython-36.pycidem.cpython-36.pycifttt.cpython-36.pycilo.cpython-36.pycincron.cpython-36.pycinfluxdb08mod.cpython-36.pycinfluxdbmod.cpython-36.pycinfoblox.cpython-36.pycini_manage.cpython-36.pycinspector.cpython-36.pycintrospect.cpython-36.pyciosconfig.cpython-36.pycipmi.cpython-36.pycipset.cpython-36.pyciptables.cpython-36.pyciwtools.cpython-36.pycjboss7.cpython-36.pycjboss7_cli.cpython-36.pycjenkinsmod.cpython-36.pycjinja.cpython-36.pycjira_mod.cpython-36.pycjunos.cpython-36.pyck8s.cpython-36.pyckapacitor.cpython-36.pyckerberos.cpython-36.pyckernelpkg_linux_apt.cpython-36.pyckernelpkg_linux_yum.cpython-36.pyckey.cpython-36.pyckeyboard.cpython-36.pyckeystone.cpython-36.pyckeystoneng.cpython-36.pyckeystore.cpython-36.pyckmod.cpython-36.pyckubeadm.cpython-36.pyckubernetesmod.cpython-36.pyclaunchctl_service.cpython-36.pyclayman.cpython-36.pycldap3.cpython-36.pycldapmod.cpython-36.pyclibcloud_compute.cpython-36.pyclibcloud_dns.cpython-36.pyclibcloud_loadbalancer.cpython-36.pyclibcloud_storage.cpython-36.pyclinux_acl.cpython-36.pyclinux_ip.cpython-36.pyclinux_lvm.cpython-36.pyclinux_service.cpython-36.pyclinux_shadow.cpython-36.pyclinux_sysctl.cpython-36.pyclocalemod.cpython-36.pyclocate.cpython-36.pyclogadm.cpython-36.pyclogmod.cpython-36.pyclogrotate.cpython-36.pyclvs.cpython-36.pyclxc.cpython-36.pyclxd.cpython-36.pycmac_assistive.cpython-36.pycmac_brew_pkg.cpython-36.pycmac_desktop.cpython-36.pycmac_group.cpython-36.pycmac_keychain.cpython-36.pycmac_pkgutil.cpython-36.pycmac_portspkg.cpython-36.pycmac_power.cpython-36.pycmac_service.cpython-36.pycmac_shadow.cpython-36.pycmac_softwareupdate.cpython-36.pycmac_sysctl.cpython-36.pycmac_system.cpython-36.pycmac_timezone.cpython-36.pycmac_user.cpython-36.pycmac_xattr.cpython-36.pycmacdefaults.cpython-36.pycmacpackage.cpython-36.pycmakeconf.cpython-36.pycmandrill.cpython-36.pycmarathon.cpython-36.pycmatch.cpython-36.pycmattermost.cpython-36.pycmdadm_raid.cpython-36.pycmdata.cpython-36.pycmemcached.cpython-36.pycmine.cpython-36.pycminion.cpython-36.pycmod_random.cpython-36.pycmodjk.cpython-36.pycmongodb.cpython-36.pycmonit.cpython-36.pycmoosefs.cpython-36.pycmount.cpython-36.pycmssql.cpython-36.pycmsteams.cpython-36.pycmunin.cpython-36.pycmysql.cpython-36.pycnacl.cpython-36.pycnagios.cpython-36.pycnagios_rpc.cpython-36.pycnamecheap_domains.cpython-36.pycnamecheap_domains_dns.cpython-36.pycnamecheap_domains_ns.cpython-36.pycnamecheap_ssl.cpython-36.pycnamecheap_users.cpython-36.pycnapalm_bgp.cpython-36.pycnapalm_formula.cpython-36.pycnapalm_mod.cpython-36.pycnapalm_netacl.cpython-36.pycnapalm_network.cpython-36.pycnapalm_ntp.cpython-36.pycnapalm_probes.cpython-36.pycnapalm_route.cpython-36.pycnapalm_snmp.cpython-36.pycnapalm_users.cpython-36.pycnapalm_yang_mod.cpython-36.pycnetaddress.cpython-36.pycnetbox.cpython-36.pycnetbsd_sysctl.cpython-36.pycnetbsdservice.cpython-36.pycnetmiko_mod.cpython-36.pycnetscaler.cpython-36.pycnetwork.cpython-36.pycneutron.cpython-36.pycneutronng.cpython-36.pycnexus.cpython-36.pycnfs3.cpython-36.pycnftables.cpython-36.pycnginx.cpython-36.pycnilrt_ip.cpython-36.pycnix.cpython-36.pycnova.cpython-36.pycnpm.cpython-36.pycnspawn.cpython-36.pycnxos.cpython-36.pycnxos_api.cpython-36.pycnxos_upgrade.cpython-36.pycomapi.cpython-36.pycopenbsd_sysctl.cpython-36.pycopenbsdpkg.cpython-36.pycopenbsdrcctl_service.cpython-36.pycopenbsdservice.cpython-36.pycopenscap.cpython-36.pycopenstack_config.cpython-36.pycopenstack_mng.cpython-36.pycopenvswitch.cpython-36.pycopkg.cpython-36.pycopsgenie.cpython-36.pycoracle.cpython-36.pycosquery.cpython-36.pycout.cpython-36.pycpacmanpkg.cpython-36.pycpagerduty.cpython-36.pycpagerduty_util.cpython-36.pycpam.cpython-36.pycpanos.cpython-36.pycparallels.cpython-36.pycparted_partition.cpython-36.pycpcs.cpython-36.pycpdbedit.cpython-36.pycpecl.cpython-36.pycpeeringdb.cpython-36.pycpf.cpython-36.pycphilips_hue.cpython-36.pycpillar.cpython-36.pycpip.cpython-36.pycpkg_resource.cpython-36.pycpkgin.cpython-36.pycpkgng.cpython-36.pycpkgutil.cpython-36.pycportage_config.cpython-36.pycpostfix.cpython-36.pycpostgres.cpython-36.pycpoudriere.cpython-36.pycpowerpath.cpython-36.pycproxy.cpython-36.pycps.cpython-36.pycpublish.cpython-36.pycpuppet.cpython-36.pycpurefa.cpython-36.pycpurefb.cpython-36.pycpushbullet.cpython-36.pycpushover_notify.cpython-36.pycpw_group.cpython-36.pycpw_user.cpython-36.pycpyenv.cpython-36.pycqemu_img.cpython-36.pycqemu_nbd.cpython-36.pycquota.cpython-36.pycrabbitmq.cpython-36.pycrallydev.cpython-36.pycrandom_org.cpython-36.pycrbac_solaris.cpython-36.pycrbenv.cpython-36.pycrdp.cpython-36.pycrebootmgr.cpython-36.pycredismod.cpython-36.pycreg.cpython-36.pycrest_pkg.cpython-36.pycrest_sample_utils.cpython-36.pycrest_service.cpython-36.pycrestartcheck.cpython-36.pycrestconf.cpython-36.pycret.cpython-36.pycrh_ip.cpython-36.pycrh_service.cpython-36.pycriak.cpython-36.pycrpm_lowpkg.cpython-36.pycrpmbuild_pkgbuild.cpython-36.pycrsync.cpython-36.pycrunit.cpython-36.pycrvm.cpython-36.pycs3.cpython-36.pycs6.cpython-36.pycsalt_proxy.cpython-36.pycsalt_version.cpython-36.pycsaltcheck.cpython-36.pycsaltcloudmod.cpython-36.pycsaltsupport.cpython-36.pycsaltutil.cpython-36.pycschedule.cpython-36.pycscp_mod.cpython-36.pycscsi.cpython-36.pycsdb.cpython-36.pycseed.cpython-36.pycselinux.cpython-36.pycsensehat.cpython-36.pycsensors.cpython-36.pycserverdensity_device.cpython-36.pycservicenow.cpython-36.pycslack_notify.cpython-36.pycslackware_service.cpython-36.pycslsutil.cpython-36.pycsmartos_imgadm.cpython-36.pycsmartos_nictagadm.cpython-36.pycsmartos_virt.cpython-36.pycsmartos_vmadm.cpython-36.pycsmbios.cpython-36.pycsmf_service.cpython-36.pycsmtp.cpython-36.pycsnapper.cpython-36.pycsolaris_fmadm.cpython-36.pycsolaris_group.cpython-36.pycsolaris_shadow.cpython-36.pycsolaris_system.cpython-36.pycsolaris_user.cpython-36.pycsolarisipspkg.cpython-36.pycsolarispkg.cpython-36.pycsolr.cpython-36.pycsolrcloud.cpython-36.pycsplunk.cpython-36.pycsplunk_search.cpython-36.pycsqlite3.cpython-36.pycssh.cpython-36.pycssh_pkg.cpython-36.pycssh_service.cpython-36.pycstate.cpython-36.pycstatus.cpython-36.pycstatuspage.cpython-36.pycsupervisord.cpython-36.pycsuse_apache.cpython-36.pycsuse_ip.cpython-36.pycsvn.cpython-36.pycswarm.cpython-36.pycswift.cpython-36.pycsysbench.cpython-36.pycsysfs.cpython-36.pycsyslog_ng.cpython-36.pycsysmod.cpython-36.pycsysrc.cpython-36.pycsystem.cpython-36.pycsystem_profiler.cpython-36.pycsystemd_service.cpython-36.pyctelegram.cpython-36.pyctelemetry.cpython-36.pyctemp.cpython-36.pyctest.cpython-36.pyctest_virtual.cpython-36.pyctestinframod.cpython-36.pyctextfsm_mod.cpython-36.pyctimezone.cpython-36.pyctls.cpython-36.pyctomcat.cpython-36.pyctrafficserver.cpython-36.pyctransactional_update.cpython-36.pyctravisci.cpython-36.pyctuned.cpython-36.pyctwilio_notify.cpython-36.pycudev.cpython-36.pycupstart_service.cpython-36.pycuptime.cpython-36.pycuseradd.cpython-36.pycuwsgi.cpython-36.pycvagrant.cpython-36.pycvarnish.cpython-36.pycvault.cpython-36.pycvbox_guest.cpython-36.pycvboxmanage.cpython-36.pycvcenter.cpython-36.pycvictorops.cpython-36.pycvirt.cpython-36.pycvirtualenv_mod.cpython-36.pycvmctl.cpython-36.pycvsphere.cpython-36.pycwebutil.cpython-36.pycwin_auditpol.cpython-36.pycwin_autoruns.cpython-36.pycwin_certutil.cpython-36.pycwin_dacl.cpython-36.pycwin_disk.cpython-36.pycwin_dism.cpython-36.pycwin_dns_client.cpython-36.pycwin_dsc.cpython-36.pycwin_event.cpython-36.pycwin_file.cpython-36.pycwin_firewall.cpython-36.pycwin_groupadd.cpython-36.pycwin_iis.cpython-36.pycwin_ip.cpython-36.pycwin_lgpo.cpython-36.pycwin_lgpo_reg.cpython-36.pycwin_license.cpython-36.pycwin_network.cpython-36.pycwin_ntp.cpython-36.pycwin_path.cpython-36.pycwin_pkg.cpython-36.pycwin_pki.cpython-36.pycwin_powercfg.cpython-36.pycwin_psget.cpython-36.pycwin_servermanager.cpython-36.pycwin_service.cpython-36.pycwin_shadow.cpython-36.pycwin_shortcut.cpython-36.pycwin_smtp_server.cpython-36.pycwin_snmp.cpython-36.pycwin_status.cpython-36.pycwin_system.cpython-36.pycwin_task.cpython-36.pycwin_timezone.cpython-36.pycwin_useradd.cpython-36.pycwin_wua.cpython-36.pycwin_wusa.cpython-36.pycwinrepo.cpython-36.pycwordpress.cpython-36.pycx509.cpython-36.pycx509_v2.cpython-36.pycxapi_virt.cpython-36.pycxbpspkg.cpython-36.pycxfs.cpython-36.pycxml.cpython-36.pycxmpp.cpython-36.pycyaml.cpython-36.pycyumpkg.cpython-36.pyczabbix.cpython-36.pyczcbuildout.cpython-36.pyczenoss.cpython-36.pyczfs.cpython-36.pyczk_concurrency.cpython-36.pycznc.cpython-36.pyczoneadm.cpython-36.pyczonecfg.cpython-36.pyczookeeper.cpython-36.pyczpool.cpython-36.pyczypperpkg.cpython-36.pycacme.pyaix_group.pyaix_shadow.pyaixpkg.pyaliases.pyalternatives.pyansiblegate.pyapache.pyapcups.pyapf.pyapkpkg.pyaptly.pyaptpkg.pyarchive.pyarista_pyeapi.pyartifactory.pyat.pyat_solaris.pyaugeas_cfg.pyaws_sqs.pyazurearm_compute.pyazurearm_dns.pyazurearm_network.pyazurearm_resource.pybamboohr.pybaredoc.pybcache.pybeacons.pybigip.pybluez_bluetooth.pyboto3_elasticache.pyboto3_elasticsearch.pyboto3_route53.pyboto3_sns.pyboto_apigateway.pyboto_asg.pyboto_cfn.pyboto_cloudfront.pyboto_cloudtrail.pyboto_cloudwatch.pyboto_cloudwatch_event.pyboto_cognitoidentity.pyboto_datapipeline.pyboto_dynamodb.pyboto_ec2.pyboto_efs.pyboto_elasticache.pyboto_elasticsearch_domain.pyboto_elb.pyboto_elbv2.pyboto_iam.pyboto_iot.pyboto_kinesis.pyboto_kms.pyboto_lambda.pyboto_rds.pyboto_route53.pyboto_s3.pyboto_s3_bucket.pyboto_secgroup.pyboto_sns.pyboto_sqs.pyboto_ssm.pyboto_vpc.pybower.pybridge.pybsd_shadow.pybtrfs.pycabal.pycapirca_acl.pycassandra_cql.pycassandra_mod.pycelery.pyceph.pychassis.pychef.pychocolatey.pychronos.pychroot.pycimc.pyciscoconfparse_mod.pycisconso.pycloud.pycmdmod.pycomposer.pyconfig.pyconsul.pycontainer_resource.pycp.pycpan.pycron.pycryptdev.pycsf.pycyg.pydaemontools.pydata.pydatadog_api.pyddns.pydeb_apache.pydeb_postgres.pydebconfmod.pydebian_ip.pydebian_service.pydebuild_pkgbuild.pydefaults.pydevinfo.pydevmap.pydig.pydisk.pydjangomod.pydnsmasq.pydnsutil.pydockercompose.pydockermod.pydpkg_lowpkg.pydrac.pydracr.pydrbd.pydummyproxy_pkg.pydummyproxy_service.pyebuildpkg.pyeix.pyelasticsearch.pyenviron.pyeselect.pyesxcluster.pyesxdatacenter.pyesxi.pyesxvm.pyetcd_mod.pyethtool.pyevent.pyextfs.pyfile.pyfirewalld.pyfreebsd_sysctl.pyfreebsd_update.pyfreebsdjail.pyfreebsdkmod.pyfreebsdpkg.pyfreebsdports.pyfreebsdservice.pyfreezer.pygcp_addon.pygem.pygenesis.pygentoo_service.pygentoolkitmod.pygit.pygithub.pyglanceng.pyglassfish.pyglusterfs.pygnomedesktop.pygoogle_chat.pygpg.pygrafana4.pygrains.pygroupadd.pygrub_legacy.pyguestfs.pyhadoop.pyhaproxyconn.pyhashutil.pyheat.pyhelm.pyhg.pyhighstate_doc.pyhosts.pyhttp.pyicinga2.pyidem.pyifttt.pyilo.pyincron.pyinfluxdb08mod.pyinfluxdbmod.pyinfoblox.pyini_manage.pyinspectlib__init__.py__pycache____init__.cpython-36.pyccollector.cpython-36.pycdbhandle.cpython-36.pycentities.cpython-36.pycexceptions.cpython-36.pycfsdb.cpython-36.pyckiwiproc.cpython-36.pycquery.cpython-36.pyccollector.pydbhandle.pyentities.pyexceptions.pyfsdb.pykiwiproc.pyquery.pyinspector.pyintrospect.pyiosconfig.pyipmi.pyipset.pyiptables.pyiwtools.pyjboss7.pyjboss7_cli.pyjenkinsmod.pyjinja.pyjira_mod.pyjunos.pyk8s.pykapacitor.pykerberos.pykernelpkg_linux_apt.pykernelpkg_linux_yum.pykey.pykeyboard.pykeystone.pykeystoneng.pykeystore.pykmod.pykubeadm.pykubernetesmod.pylaunchctl_service.pylayman.pyldap3.pyldapmod.pylibcloud_compute.pylibcloud_dns.pylibcloud_loadbalancer.pylibcloud_storage.pylinux_acl.pylinux_ip.pylinux_lvm.pylinux_service.pylinux_shadow.pylinux_sysctl.pylocalemod.pylocate.pylogadm.pylogmod.pylogrotate.pylvs.pylxc.pylxd.pymac_assistive.pymac_brew_pkg.pymac_desktop.pymac_group.pymac_keychain.pymac_pkgutil.pymac_portspkg.pymac_power.pymac_service.pymac_shadow.pymac_softwareupdate.pymac_sysctl.pymac_system.pymac_timezone.pymac_user.pymac_xattr.pymacdefaults.pymacpackage.pymakeconf.pymandrill.pymarathon.pymatch.pymattermost.pymdadm_raid.pymdata.pymemcached.pymine.pyminion.pymod_random.pymodjk.pymongodb.pymonit.pymoosefs.pymount.pymssql.pymsteams.pymunin.pymysql.pynacl.pynagios.pynagios_rpc.pynamecheap_domains.pynamecheap_domains_dns.pynamecheap_domains_ns.pynamecheap_ssl.pynamecheap_users.pynapalm_bgp.pynapalm_formula.pynapalm_mod.pynapalm_netacl.pynapalm_network.pynapalm_ntp.pynapalm_probes.pynapalm_route.pynapalm_snmp.pynapalm_users.pynapalm_yang_mod.pynetaddress.pynetbox.pynetbsd_sysctl.pynetbsdservice.pynetmiko_mod.pynetscaler.pynetwork.pyneutron.pyneutronng.pynexus.pynfs3.pynftables.pynginx.pynilrt_ip.pynix.pynova.pynpm.pynspawn.pynxos.pynxos_api.pynxos_upgrade.pyomapi.pyopenbsd_sysctl.pyopenbsdpkg.pyopenbsdrcctl_service.pyopenbsdservice.pyopenscap.pyopenstack_config.pyopenstack_mng.pyopenvswitch.pyopkg.pyopsgenie.pyoracle.pyosquery.pyout.pypacmanpkg.pypagerduty.pypagerduty_util.pypam.pypanos.pyparallels.pyparted_partition.pypcs.pypdbedit.pypecl.pypeeringdb.pypf.pyphilips_hue.pypillar.pypip.pypkg_resource.pypkgin.pypkgng.pypkgutil.pyportage_config.pypostfix.pypostgres.pypoudriere.pypowerpath.pyproxy.pyps.pypublish.pypuppet.pypurefa.pypurefb.pypushbullet.pypushover_notify.pypw_group.pypw_user.pypyenv.pyqemu_img.pyqemu_nbd.pyquota.pyrabbitmq.pyrallydev.pyrandom_org.pyrbac_solaris.pyrbenv.pyrdp.pyrebootmgr.pyredismod.pyreg.pyrest_pkg.pyrest_sample_utils.pyrest_service.pyrestartcheck.pyrestconf.pyret.pyrh_ip.pyrh_service.pyriak.pyrpm_lowpkg.pyrpmbuild_pkgbuild.pyrsync.pyrunit.pyrvm.pys3.pys6.pysalt_proxy.pysalt_version.pysaltcheck.pysaltcloudmod.pysaltsupport.pysaltutil.pyschedule.pyscp_mod.pyscsi.pysdb.pyseed.pyselinux.pysensehat.pysensors.pyserverdensity_device.pyservicenow.pyslack_notify.pyslackware_service.pyslsutil.pysmartos_imgadm.pysmartos_nictagadm.pysmartos_virt.pysmartos_vmadm.pysmbios.pysmf_service.pysmtp.pysnapper.pysolaris_fmadm.pysolaris_group.pysolaris_shadow.pysolaris_system.pysolaris_user.pysolarisipspkg.pysolarispkg.pysolr.pysolrcloud.pysplunk.pysplunk_search.pysqlite3.pyssh.pyssh_pkg.pyssh_service.pystate.pystatus.pystatuspage.pysupervisord.pysuse_apache.pysuse_ip.pysvn.pyswarm.pyswift.pysysbench.pysysfs.pysyslog_ng.pysysmod.pysysrc.pysystem.pysystem_profiler.pysystemd_service.pytelegram.pytelemetry.pytemp.pytest.pytest_virtual.pytestinframod.pytextfsm_mod.pytimezone.pytls.pytomcat.pytrafficserver.pytransactional_update.pytravisci.pytuned.pytwilio_notify.pyudev.pyupstart_service.pyuptime.pyuseradd.pyuwsgi.pyvagrant.pyvarnish.pyvault.pyvbox_guest.pyvboxmanage.pyvcenter.pyvictorops.pyvirt.pyvirtualenv_mod.pyvmctl.pyvsphere.pywebutil.pywin_auditpol.pywin_autoruns.pywin_certutil.pywin_dacl.pywin_disk.pywin_dism.pywin_dns_client.pywin_dsc.pywin_event.pywin_file.pywin_firewall.pywin_groupadd.pywin_iis.pywin_ip.pywin_lgpo.pywin_lgpo_reg.pywin_license.pywin_network.pywin_ntp.pywin_path.pywin_pkg.pywin_pki.pywin_powercfg.pywin_psget.pywin_servermanager.pywin_service.pywin_shadow.pywin_shortcut.pywin_smtp_server.pywin_snmp.pywin_status.pywin_system.pywin_task.pywin_timezone.pywin_useradd.pywin_wua.pywin_wusa.pywinrepo.pywordpress.pyx509.pyx509_v2.pyxapi_virt.pyxbpspkg.pyxfs.pyxml.pyxmpp.pyyaml.pyyumpkg.pyzabbix.pyzcbuildout.pyzenoss.pyzfs.pyzk_concurrency.pyznc.pyzoneadm.pyzonecfg.pyzookeeper.pyzpool.pyzypperpkg.pynetapi__init__.py__pycache____init__.cpython-36.pycrest_wsgi.cpython-36.pycrest_cherrypy__init__.py__pycache____init__.cpython-36.pycapp.cpython-36.pycevent_processor.cpython-36.pycwsgi.cpython-36.pycapp.pyevent_processor.pytools__init__.py__pycache____init__.cpython-36.pycwebsockets.cpython-36.pycwebsockets.pywsgi.pyrest_tornado__init__.py__pycache____init__.cpython-36.pycevent_processor.cpython-36.pycsaltnado.cpython-36.pycsaltnado_websockets.cpython-36.pycevent_processor.pysaltnado.pysaltnado_websockets.pyrest_wsgi.pyoutput__init__.py__pycache____init__.cpython-36.pycdson.cpython-36.pychighstate.cpython-36.pycjson_out.cpython-36.pyckey.cpython-36.pycnested.cpython-36.pycnewline_values_only.cpython-36.pycno_out_quiet.cpython-36.pycno_return.cpython-36.pycoverstatestage.cpython-36.pycpony.cpython-36.pycpprint_out.cpython-36.pycprofile.cpython-36.pycprogress.cpython-36.pycraw.cpython-36.pyctable_out.cpython-36.pyctxt.cpython-36.pycvirt_query.cpython-36.pycyaml_out.cpython-36.pycdson.pyhighstate.pyjson_out.pykey.pynested.pynewline_values_only.pyno_out_quiet.pyno_return.pyoverstatestage.pypony.pypprint_out.pyprofile.pyprogress.pyraw.pytable_out.pytxt.pyvirt_query.pyyaml_out.pypayload.pypillar__init__.py__pycache____init__.cpython-36.pycazureblob.cpython-36.pyccmd_json.cpython-36.pyccmd_yaml.cpython-36.pyccmd_yamlex.cpython-36.pyccobbler.cpython-36.pycconfidant.cpython-36.pycconsul_pillar.cpython-36.pyccsvpillar.cpython-36.pycdigicert.cpython-36.pycdjango_orm.cpython-36.pycec2_pillar.cpython-36.pycetcd_pillar.cpython-36.pycextra_minion_data_in_pillar.cpython-36.pycfile_tree.cpython-36.pycforeman.cpython-36.pycgit_pillar.cpython-36.pycgpg.cpython-36.pychg_pillar.cpython-36.pychiera.cpython-36.pychttp_json.cpython-36.pychttp_yaml.cpython-36.pyclibvirt.cpython-36.pycmakostack.cpython-36.pycmongo.cpython-36.pycmysql.cpython-36.pycnacl.cpython-36.pycnetbox.cpython-36.pycneutron.cpython-36.pycnodegroups.cpython-36.pycpepa.cpython-36.pycpillar_ldap.cpython-36.pycpostgres.cpython-36.pycpuppet.cpython-36.pycreclass_adapter.cpython-36.pycredismod.cpython-36.pycrethinkdb_pillar.cpython-36.pycs3.cpython-36.pycsaltclass.cpython-36.pycsql_base.cpython-36.pycsqlcipher.cpython-36.pycsqlite3.cpython-36.pycstack.cpython-36.pycsvn_pillar.cpython-36.pycvarstack_pillar.cpython-36.pycvault.cpython-36.pycvenafi.cpython-36.pycvirtkey.cpython-36.pycvmware_pillar.cpython-36.pycazureblob.pycmd_json.pycmd_yaml.pycmd_yamlex.pycobbler.pyconfidant.pyconsul_pillar.pycsvpillar.pydigicert.pydjango_orm.pyec2_pillar.pyetcd_pillar.pyextra_minion_data_in_pillar.pyfile_tree.pyforeman.pygit_pillar.pygpg.pyhg_pillar.pyhiera.pyhttp_json.pyhttp_yaml.pylibvirt.pymakostack.pymongo.pymysql.pynacl.pynetbox.pyneutron.pynodegroups.pypepa.pypillar_ldap.pypostgres.pypuppet.pyreclass_adapter.pyredismod.pyrethinkdb_pillar.pys3.pysaltclass.pysql_base.pysqlcipher.pysqlite3.pystack.pysvn_pillar.pyvarstack_pillar.pyvault.pyvenafi.pyvirtkey.pyvmware_pillar.pyplatform__init__.py__pycache____init__.cpython-36.pycwin.cpython-36.pycwin.pyproxy__init__.py__pycache____init__.cpython-36.pycarista_pyeapi.cpython-36.pycchronos.cpython-36.pyccimc.cpython-36.pyccisconso.cpython-36.pycdeltaproxy.cpython-36.pycdocker.cpython-36.pycdummy.cpython-36.pycesxcluster.cpython-36.pycesxdatacenter.cpython-36.pycesxi.cpython-36.pycesxvm.cpython-36.pycfx2.cpython-36.pycjunos.cpython-36.pycmarathon.cpython-36.pycnapalm.cpython-36.pycnetmiko_px.cpython-36.pycnxos.cpython-36.pycnxos_api.cpython-36.pycpanos.cpython-36.pycphilips_hue.cpython-36.pycrest_sample.cpython-36.pycrestconf.cpython-36.pycssh_sample.cpython-36.pycvcenter.cpython-36.pycarista_pyeapi.pychronos.pycimc.pycisconso.pydeltaproxy.pydocker.pydummy.pyesxcluster.pyesxdatacenter.pyesxi.pyesxvm.pyfx2.pyjunos.pymarathon.pynapalm.pynetmiko_px.pynxos.pynxos_api.pypanos.pyphilips_hue.pyrest_sample.pyrestconf.pyssh_sample.pyvcenter.pyqueues__init__.py__pycache____init__.cpython-36.pycpgjsonb_queue.cpython-36.pycsqlite_queue.cpython-36.pycpgjsonb_queue.pysqlite_queue.pyrenderers__init__.py__pycache____init__.cpython-36.pycaws_kms.cpython-36.pyccheetah.cpython-36.pycdson.cpython-36.pycgenshi.cpython-36.pycgpg.cpython-36.pychjson.cpython-36.pycjinja.cpython-36.pycjson.cpython-36.pycjson5.cpython-36.pycmako.cpython-36.pycmsgpack.cpython-36.pycnacl.cpython-36.pycpass.cpython-36.pycpy.cpython-36.pycpydsl.cpython-36.pycpyobjects.cpython-36.pycstateconf.cpython-36.pyctomlmod.cpython-36.pycwempy.cpython-36.pycyaml.cpython-36.pycyamlex.cpython-36.pycaws_kms.pycheetah.pydson.pygenshi.pygpg.pyhjson.pyjinja.pyjson.pyjson5.pymako.pymsgpack.pynacl.pypass.pypy.pypydsl.pypyobjects.pystateconf.pytomlmod.pywempy.pyyaml.pyyamlex.pyreturners__init__.py__pycache____init__.cpython-36.pycappoptics_return.cpython-36.pyccarbon_return.cpython-36.pyccassandra_cql_return.cpython-36.pyccassandra_return.cpython-36.pyccouchbase_return.cpython-36.pyccouchdb_return.cpython-36.pycdjango_return.cpython-36.pycelasticsearch_return.cpython-36.pycetcd_return.cpython-36.pychighstate_return.cpython-36.pycinfluxdb_return.cpython-36.pyckafka_return.cpython-36.pyclibrato_return.cpython-36.pyclocal.cpython-36.pyclocal_cache.cpython-36.pycmattermost_returner.cpython-36.pycmemcache_return.cpython-36.pycmongo_future_return.cpython-36.pycmongo_return.cpython-36.pycmulti_returner.cpython-36.pycmysql.cpython-36.pycnagios_nrdp_return.cpython-36.pycodbc.cpython-36.pycpgjsonb.cpython-36.pycpostgres.cpython-36.pycpostgres_local_cache.cpython-36.pycpushover_returner.cpython-36.pycrawfile_json.cpython-36.pycredis_return.cpython-36.pycsentry_return.cpython-36.pycslack_returner.cpython-36.pycslack_webhook_return.cpython-36.pycsms_return.cpython-36.pycsmtp_return.cpython-36.pycsplunk.cpython-36.pycsqlite3_return.cpython-36.pycsyslog_return.cpython-36.pyctelegram_return.cpython-36.pycxmpp_return.cpython-36.pyczabbix_return.cpython-36.pycappoptics_return.pycarbon_return.pycassandra_cql_return.pycassandra_return.pycouchbase_return.pycouchdb_return.pydjango_return.pyelasticsearch_return.pyetcd_return.pyhighstate_return.pyinfluxdb_return.pykafka_return.pylibrato_return.pylocal.pylocal_cache.pymattermost_returner.pymemcache_return.pymongo_future_return.pymongo_return.pymulti_returner.pymysql.pynagios_nrdp_return.pyodbc.pypgjsonb.pypostgres.pypostgres_local_cache.pypushover_returner.pyrawfile_json.pyredis_return.pysentry_return.pyslack_returner.pyslack_webhook_return.pysms_return.pysmtp_return.pysplunk.pysqlite3_return.pysyslog_return.pytelegram_return.pyxmpp_return.pyzabbix_return.pyroster__init__.py__pycache____init__.cpython-36.pycansible.cpython-36.pyccache.cpython-36.pyccloud.cpython-36.pycclustershell.cpython-36.pycdir.cpython-36.pycflat.cpython-36.pycrange.cpython-36.pycscan.cpython-36.pycsshconfig.cpython-36.pycsshknownhosts.cpython-36.pycterraform.cpython-36.pycansible.pycache.pycloud.pyclustershell.pydir.pyflat.pyrange.pyscan.pysshconfig.pysshknownhosts.pyterraform.pyrunner.pyrunners__init__.py__pycache____init__.cpython-36.pycasam.cpython-36.pycauth.cpython-36.pycbgp.cpython-36.pyccache.cpython-36.pyccloud.cpython-36.pycconfig.cpython-36.pycddns.cpython-36.pycdigicertapi.cpython-36.pycdoc.cpython-36.pycdrac.cpython-36.pycerror.cpython-36.pycevent.cpython-36.pycf5.cpython-36.pycfileserver.cpython-36.pycgit_pillar.cpython-36.pychttp.cpython-36.pycjobs.cpython-36.pyclaunchd.cpython-36.pyclxc.cpython-36.pycmanage.cpython-36.pycmattermost.cpython-36.pycmine.cpython-36.pycnacl.cpython-36.pycnet.cpython-36.pycnetwork.cpython-36.pycpagerduty.cpython-36.pycpillar.cpython-36.pycpkg.cpython-36.pycqueue.cpython-36.pycreactor.cpython-36.pycsalt.cpython-36.pycsaltutil.cpython-36.pycsdb.cpython-36.pycsmartos_vmadm.cpython-36.pycspacewalk.cpython-36.pycssh.cpython-36.pycstate.cpython-36.pycsurvey.cpython-36.pyctest.cpython-36.pycthin.cpython-36.pycvault.cpython-36.pycvenafiapi.cpython-36.pycvirt.cpython-36.pycvistara.cpython-36.pycwinrepo.cpython-36.pycasam.pyauth.pybgp.pycache.pycloud.pyconfig.pyddns.pydigicertapi.pydoc.pydrac.pyerror.pyevent.pyf5.pyfileserver.pygit_pillar.pyhttp.pyjobs.pylaunchd.pylxc.pymanage.pymattermost.pymine.pynacl.pynet.pynetwork.pypagerduty.pypillar.pypkg.pyqueue.pyreactor.pysalt.pysaltutil.pysdb.pysmartos_vmadm.pyspacewalk.pyssh.pystate.pysurvey.pytest.pythin.pyvault.pyvenafiapi.pyvirt.pyvistara.pywinrepo.pyscripts.pysdb__init__.py__pycache____init__.cpython-36.pyccache.cpython-36.pycconfidant.cpython-36.pycconsul.cpython-36.pyccouchdb.cpython-36.pycenv.cpython-36.pycetcd_db.cpython-36.pyckeyring_db.cpython-36.pycmemcached.cpython-36.pycredis_sdb.cpython-36.pycrest.cpython-36.pycsqlite3.cpython-36.pyctism.cpython-36.pycvault.cpython-36.pycyaml.cpython-36.pyccache.pyconfidant.pyconsul.pycouchdb.pyenv.pyetcd_db.pykeyring_db.pymemcached.pyredis_sdb.pyrest.pysqlite3.pytism.pyvault.pyyaml.pyserializers__init__.py__pycache____init__.cpython-36.pycconfigparser.cpython-36.pycjson.cpython-36.pyckeyvalue.cpython-36.pycmsgpack.cpython-36.pycplist.cpython-36.pycpython.cpython-36.pyctomlmod.cpython-36.pycyaml.cpython-36.pycyamlex.cpython-36.pycconfigparser.pyjson.pykeyvalue.pymsgpack.pyplist.pypython.pytomlmod.pyyaml.pyyamlex.pyspm__init__.py__pycache____init__.cpython-36.pycpkgdb__init__.py__pycache____init__.cpython-36.pycsqlite3.cpython-36.pycsqlite3.pypkgfiles__init__.py__pycache____init__.cpython-36.pyclocal.cpython-36.pyclocal.pystate.pystates__init__.py__pycache____init__.cpython-36.pycacme.cpython-36.pycalias.cpython-36.pycalternatives.cpython-36.pycansiblegate.cpython-36.pycapache.cpython-36.pycapache_conf.cpython-36.pycapache_module.cpython-36.pycapache_site.cpython-36.pycaptpkg.cpython-36.pycarchive.cpython-36.pycartifactory.cpython-36.pycat.cpython-36.pycaugeas.cpython-36.pycaws_sqs.cpython-36.pycazurearm_compute.cpython-36.pycazurearm_dns.cpython-36.pycazurearm_network.cpython-36.pycazurearm_resource.cpython-36.pycbeacon.cpython-36.pycbigip.cpython-36.pycblockdev.cpython-36.pycboto3_elasticache.cpython-36.pycboto3_elasticsearch.cpython-36.pycboto3_route53.cpython-36.pycboto3_sns.cpython-36.pycboto_apigateway.cpython-36.pycboto_asg.cpython-36.pycboto_cfn.cpython-36.pycboto_cloudfront.cpython-36.pycboto_cloudtrail.cpython-36.pycboto_cloudwatch_alarm.cpython-36.pycboto_cloudwatch_event.cpython-36.pycboto_cognitoidentity.cpython-36.pycboto_datapipeline.cpython-36.pycboto_dynamodb.cpython-36.pycboto_ec2.cpython-36.pycboto_elasticache.cpython-36.pycboto_elasticsearch_domain.cpython-36.pycboto_elb.cpython-36.pycboto_elbv2.cpython-36.pycboto_iam.cpython-36.pycboto_iam_role.cpython-36.pycboto_iot.cpython-36.pycboto_kinesis.cpython-36.pycboto_kms.cpython-36.pycboto_lambda.cpython-36.pycboto_lc.cpython-36.pycboto_rds.cpython-36.pycboto_route53.cpython-36.pycboto_s3.cpython-36.pycboto_s3_bucket.cpython-36.pycboto_secgroup.cpython-36.pycboto_sns.cpython-36.pycboto_sqs.cpython-36.pycboto_vpc.cpython-36.pycbower.cpython-36.pycbtrfs.cpython-36.pyccabal.cpython-36.pycceph.cpython-36.pycchef.cpython-36.pycchocolatey.cpython-36.pycchronos_job.cpython-36.pyccimc.cpython-36.pyccisconso.cpython-36.pyccloud.cpython-36.pyccmd.cpython-36.pyccomposer.cpython-36.pycconsul.cpython-36.pyccron.cpython-36.pyccryptdev.cpython-36.pyccsf.cpython-36.pyccyg.cpython-36.pycddns.cpython-36.pycdebconfmod.cpython-36.pycdellchassis.cpython-36.pycdisk.cpython-36.pycdocker_container.cpython-36.pycdocker_image.cpython-36.pycdocker_network.cpython-36.pycdocker_volume.cpython-36.pycdrac.cpython-36.pycdvs.cpython-36.pycelasticsearch.cpython-36.pycelasticsearch_index.cpython-36.pycelasticsearch_index_template.cpython-36.pycenviron.cpython-36.pyceselect.cpython-36.pycesxcluster.cpython-36.pycesxdatacenter.cpython-36.pycesxi.cpython-36.pycesxvm.cpython-36.pycetcd_mod.cpython-36.pycethtool.cpython-36.pycevent.cpython-36.pycfile.cpython-36.pycfirewall.cpython-36.pycfirewalld.cpython-36.pycgem.cpython-36.pycgit.cpython-36.pycgithub.cpython-36.pycglance_image.cpython-36.pycglassfish.cpython-36.pycglusterfs.cpython-36.pycgnomedesktop.cpython-36.pycgpg.cpython-36.pycgrafana.cpython-36.pycgrafana4_dashboard.cpython-36.pycgrafana4_datasource.cpython-36.pycgrafana4_org.cpython-36.pycgrafana4_user.cpython-36.pycgrafana_dashboard.cpython-36.pycgrafana_datasource.cpython-36.pycgrains.cpython-36.pycgroup.cpython-36.pycheat.cpython-36.pychelm.cpython-36.pychg.cpython-36.pychighstate_doc.cpython-36.pychost.cpython-36.pychttp.cpython-36.pycicinga2.cpython-36.pycidem.cpython-36.pycifttt.cpython-36.pycincron.cpython-36.pycinfluxdb08_database.cpython-36.pycinfluxdb08_user.cpython-36.pycinfluxdb_continuous_query.cpython-36.pycinfluxdb_database.cpython-36.pycinfluxdb_retention_policy.cpython-36.pycinfluxdb_user.cpython-36.pycinfoblox_a.cpython-36.pycinfoblox_cname.cpython-36.pycinfoblox_host_record.cpython-36.pycinfoblox_range.cpython-36.pycini_manage.cpython-36.pycipmi.cpython-36.pycipset.cpython-36.pyciptables.cpython-36.pycjboss7.cpython-36.pycjenkins.cpython-36.pycjunos.cpython-36.pyckapacitor.cpython-36.pyckernelpkg.cpython-36.pyckeyboard.cpython-36.pyckeystone.cpython-36.pyckeystone_domain.cpython-36.pyckeystone_endpoint.cpython-36.pyckeystone_group.cpython-36.pyckeystone_project.cpython-36.pyckeystone_role.cpython-36.pyckeystone_role_grant.cpython-36.pyckeystone_service.cpython-36.pyckeystone_user.cpython-36.pyckeystore.cpython-36.pyckmod.cpython-36.pyckubernetes.cpython-36.pyclayman.cpython-36.pycldap.cpython-36.pyclibcloud_dns.cpython-36.pyclibcloud_loadbalancer.cpython-36.pyclibcloud_storage.cpython-36.pyclinux_acl.cpython-36.pyclocale.cpython-36.pyclogadm.cpython-36.pyclogrotate.cpython-36.pycloop.cpython-36.pyclvm.cpython-36.pyclvs_server.cpython-36.pyclvs_service.cpython-36.pyclxc.cpython-36.pyclxd.cpython-36.pyclxd_container.cpython-36.pyclxd_image.cpython-36.pyclxd_profile.cpython-36.pycmac_assistive.cpython-36.pycmac_keychain.cpython-36.pycmac_xattr.cpython-36.pycmacdefaults.cpython-36.pycmacpackage.cpython-36.pycmakeconf.cpython-36.pycmarathon_app.cpython-36.pycmdadm_raid.cpython-36.pycmemcached.cpython-36.pycmodjk.cpython-36.pycmodjk_worker.cpython-36.pycmodule.cpython-36.pycmongodb_database.cpython-36.pycmongodb_user.cpython-36.pycmonit.cpython-36.pycmount.cpython-36.pycmssql_database.cpython-36.pycmssql_login.cpython-36.pycmssql_role.cpython-36.pycmssql_user.cpython-36.pycmsteams.cpython-36.pycmysql_database.cpython-36.pycmysql_grants.cpython-36.pycmysql_query.cpython-36.pycmysql_user.cpython-36.pycnet_napalm_yang.cpython-36.pycnetacl.cpython-36.pycnetconfig.cpython-36.pycnetntp.cpython-36.pycnetsnmp.cpython-36.pycnetusers.cpython-36.pycnetwork.cpython-36.pycneutron_network.cpython-36.pycneutron_secgroup.cpython-36.pycneutron_secgroup_rule.cpython-36.pycneutron_subnet.cpython-36.pycnexus.cpython-36.pycnfs_export.cpython-36.pycnftables.cpython-36.pycnpm.cpython-36.pycntp.cpython-36.pycnxos.cpython-36.pycnxos_upgrade.cpython-36.pycopenstack_config.cpython-36.pycopenvswitch_bridge.cpython-36.pycopenvswitch_db.cpython-36.pycopenvswitch_port.cpython-36.pycopsgenie.cpython-36.pycpagerduty.cpython-36.pycpagerduty_escalation_policy.cpython-36.pycpagerduty_schedule.cpython-36.pycpagerduty_service.cpython-36.pycpagerduty_user.cpython-36.pycpanos.cpython-36.pycpbm.cpython-36.pycpcs.cpython-36.pycpdbedit.cpython-36.pycpecl.cpython-36.pycpip_state.cpython-36.pycpkg.cpython-36.pycpkgbuild.cpython-36.pycpkgng.cpython-36.pycpkgrepo.cpython-36.pycportage_config.cpython-36.pycports.cpython-36.pycpostgres_cluster.cpython-36.pycpostgres_database.cpython-36.pycpostgres_extension.cpython-36.pycpostgres_group.cpython-36.pycpostgres_initdb.cpython-36.pycpostgres_language.cpython-36.pycpostgres_privileges.cpython-36.pycpostgres_schema.cpython-36.pycpostgres_tablespace.cpython-36.pycpostgres_user.cpython-36.pycpowerpath.cpython-36.pycprobes.cpython-36.pycprocess.cpython-36.pycproxy.cpython-36.pycpushover.cpython-36.pycpyenv.cpython-36.pycpyrax_queues.cpython-36.pycquota.cpython-36.pycrabbitmq_cluster.cpython-36.pycrabbitmq_plugin.cpython-36.pycrabbitmq_policy.cpython-36.pycrabbitmq_upstream.cpython-36.pycrabbitmq_user.cpython-36.pycrabbitmq_vhost.cpython-36.pycrbac_solaris.cpython-36.pycrbenv.cpython-36.pycrdp.cpython-36.pycredismod.cpython-36.pycreg.cpython-36.pycrestconf.cpython-36.pycrsync.cpython-36.pycrvm.cpython-36.pycsalt_proxy.cpython-36.pycsaltmod.cpython-36.pycsaltsupport.cpython-36.pycsaltutil.cpython-36.pycschedule.cpython-36.pycselinux.cpython-36.pycserverdensity_device.cpython-36.pycservice.cpython-36.pycslack.cpython-36.pycsmartos.cpython-36.pycsmtp.cpython-36.pycsnapper.cpython-36.pycsolrcloud.cpython-36.pycsplunk.cpython-36.pycsplunk_search.cpython-36.pycsqlite3.cpython-36.pycssh_auth.cpython-36.pycssh_known_hosts.cpython-36.pycstateconf.cpython-36.pycstatus.cpython-36.pycstatuspage.cpython-36.pycsupervisord.cpython-36.pycsvn.cpython-36.pycsysctl.cpython-36.pycsysfs.cpython-36.pycsyslog_ng.cpython-36.pycsysrc.cpython-36.pyctelemetry_alert.cpython-36.pyctest.cpython-36.pyctestinframod.cpython-36.pyctimezone.cpython-36.pyctls.cpython-36.pyctomcat.cpython-36.pyctrafficserver.cpython-36.pyctuned.cpython-36.pycuptime.cpython-36.pycuser.cpython-36.pycvagrant.cpython-36.pycvault.cpython-36.pycvbox_guest.cpython-36.pycvictorops.cpython-36.pycvirt.cpython-36.pycvirtualenv_mod.cpython-36.pycwebutil.cpython-36.pycwin_certutil.cpython-36.pycwin_dacl.cpython-36.pycwin_dism.cpython-36.pycwin_dns_client.cpython-36.pycwin_firewall.cpython-36.pycwin_iis.cpython-36.pycwin_lgpo.cpython-36.pycwin_lgpo_reg.cpython-36.pycwin_license.cpython-36.pycwin_network.cpython-36.pycwin_path.cpython-36.pycwin_pki.cpython-36.pycwin_powercfg.cpython-36.pycwin_servermanager.cpython-36.pycwin_shortcut.cpython-36.pycwin_smtp_server.cpython-36.pycwin_snmp.cpython-36.pycwin_system.cpython-36.pycwin_wua.cpython-36.pycwin_wusa.cpython-36.pycwinrepo.cpython-36.pycwordpress.cpython-36.pycx509.cpython-36.pycx509_v2.cpython-36.pycxml.cpython-36.pycxmpp.cpython-36.pyczabbix_action.cpython-36.pyczabbix_host.cpython-36.pyczabbix_hostgroup.cpython-36.pyczabbix_mediatype.cpython-36.pyczabbix_template.cpython-36.pyczabbix_user.cpython-36.pyczabbix_usergroup.cpython-36.pyczabbix_usermacro.cpython-36.pyczabbix_valuemap.cpython-36.pyczcbuildout.cpython-36.pyczenoss.cpython-36.pyczfs.cpython-36.pyczk_concurrency.cpython-36.pyczone.cpython-36.pyczookeeper.cpython-36.pyczpool.cpython-36.pycacme.pyalias.pyalternatives.pyansiblegate.pyapache.pyapache_conf.pyapache_module.pyapache_site.pyaptpkg.pyarchive.pyartifactory.pyat.pyaugeas.pyaws_sqs.pyazurearm_compute.pyazurearm_dns.pyazurearm_network.pyazurearm_resource.pybeacon.pybigip.pyblockdev.pyboto3_elasticache.pyboto3_elasticsearch.pyboto3_route53.pyboto3_sns.pyboto_apigateway.pyboto_asg.pyboto_cfn.pyboto_cloudfront.pyboto_cloudtrail.pyboto_cloudwatch_alarm.pyboto_cloudwatch_event.pyboto_cognitoidentity.pyboto_datapipeline.pyboto_dynamodb.pyboto_ec2.pyboto_elasticache.pyboto_elasticsearch_domain.pyboto_elb.pyboto_elbv2.pyboto_iam.pyboto_iam_role.pyboto_iot.pyboto_kinesis.pyboto_kms.pyboto_lambda.pyboto_lc.pyboto_rds.pyboto_route53.pyboto_s3.pyboto_s3_bucket.pyboto_secgroup.pyboto_sns.pyboto_sqs.pyboto_vpc.pybower.pybtrfs.pycabal.pyceph.pychef.pychocolatey.pychronos_job.pycimc.pycisconso.pycloud.pycmd.pycomposer.pyconsul.pycron.pycryptdev.pycsf.pycyg.pyddns.pydebconfmod.pydellchassis.pydisk.pydocker_container.pydocker_image.pydocker_network.pydocker_volume.pydrac.pydvs.pyelasticsearch.pyelasticsearch_index.pyelasticsearch_index_template.pyenviron.pyeselect.pyesxcluster.pyesxdatacenter.pyesxi.pyesxvm.pyetcd_mod.pyethtool.pyevent.pyfile.pyfirewall.pyfirewalld.pygem.pygit.pygithub.pyglance_image.pyglassfish.pyglusterfs.pygnomedesktop.pygpg.pygrafana.pygrafana4_dashboard.pygrafana4_datasource.pygrafana4_org.pygrafana4_user.pygrafana_dashboard.pygrafana_datasource.pygrains.pygroup.pyheat.pyhelm.pyhg.pyhighstate_doc.pyhost.pyhttp.pyicinga2.pyidem.pyifttt.pyincron.pyinfluxdb08_database.pyinfluxdb08_user.pyinfluxdb_continuous_query.pyinfluxdb_database.pyinfluxdb_retention_policy.pyinfluxdb_user.pyinfoblox_a.pyinfoblox_cname.pyinfoblox_host_record.pyinfoblox_range.pyini_manage.pyipmi.pyipset.pyiptables.pyjboss7.pyjenkins.pyjunos.pykapacitor.pykernelpkg.pykeyboard.pykeystone.pykeystone_domain.pykeystone_endpoint.pykeystone_group.pykeystone_project.pykeystone_role.pykeystone_role_grant.pykeystone_service.pykeystone_user.pykeystore.pykmod.pykubernetes.pylayman.pyldap.pylibcloud_dns.pylibcloud_loadbalancer.pylibcloud_storage.pylinux_acl.pylocale.pylogadm.pylogrotate.pyloop.pylvm.pylvs_server.pylvs_service.pylxc.pylxd.pylxd_container.pylxd_image.pylxd_profile.pymac_assistive.pymac_keychain.pymac_xattr.pymacdefaults.pymacpackage.pymakeconf.pymarathon_app.pymdadm_raid.pymemcached.pymodjk.pymodjk_worker.pymodule.pymongodb_database.pymongodb_user.pymonit.pymount.pymssql_database.pymssql_login.pymssql_role.pymssql_user.pymsteams.pymysql_database.pymysql_grants.pymysql_query.pymysql_user.pynet_napalm_yang.pynetacl.pynetconfig.pynetntp.pynetsnmp.pynetusers.pynetwork.pyneutron_network.pyneutron_secgroup.pyneutron_secgroup_rule.pyneutron_subnet.pynexus.pynfs_export.pynftables.pynpm.pyntp.pynxos.pynxos_upgrade.pyopenstack_config.pyopenvswitch_bridge.pyopenvswitch_db.pyopenvswitch_port.pyopsgenie.pypagerduty.pypagerduty_escalation_policy.pypagerduty_schedule.pypagerduty_service.pypagerduty_user.pypanos.pypbm.pypcs.pypdbedit.pypecl.pypip_state.pypkg.pypkgbuild.pypkgng.pypkgrepo.pyportage_config.pyports.pypostgres_cluster.pypostgres_database.pypostgres_extension.pypostgres_group.pypostgres_initdb.pypostgres_language.pypostgres_privileges.pypostgres_schema.pypostgres_tablespace.pypostgres_user.pypowerpath.pyprobes.pyprocess.pyproxy.pypushover.pypyenv.pypyrax_queues.pyquota.pyrabbitmq_cluster.pyrabbitmq_plugin.pyrabbitmq_policy.pyrabbitmq_upstream.pyrabbitmq_user.pyrabbitmq_vhost.pyrbac_solaris.pyrbenv.pyrdp.pyredismod.pyreg.pyrestconf.pyrsync.pyrvm.pysalt_proxy.pysaltmod.pysaltsupport.pysaltutil.pyschedule.pyselinux.pyserverdensity_device.pyservice.pyslack.pysmartos.pysmtp.pysnapper.pysolrcloud.pysplunk.pysplunk_search.pysqlite3.pyssh_auth.pyssh_known_hosts.pystateconf.pystatus.pystatuspage.pysupervisord.pysvn.pysysctl.pysysfs.pysyslog_ng.pysysrc.pytelemetry_alert.pytest.pytestinframod.pytimezone.pytls.pytomcat.pytrafficserver.pytuned.pyuptime.pyuser.pyvagrant.pyvault.pyvbox_guest.pyvictorops.pyvirt.pyvirtualenv_mod.pywebutil.pywin_certutil.pywin_dacl.pywin_dism.pywin_dns_client.pywin_firewall.pywin_iis.pywin_lgpo.pywin_lgpo_reg.pywin_license.pywin_network.pywin_path.pywin_pki.pywin_powercfg.pywin_servermanager.pywin_shortcut.pywin_smtp_server.pywin_snmp.pywin_system.pywin_wua.pywin_wusa.pywinrepo.pywordpress.pyx509.pyx509_v2.pyxml.pyxmpp.pyzabbix_action.pyzabbix_host.pyzabbix_hostgroup.pyzabbix_mediatype.pyzabbix_template.pyzabbix_user.pyzabbix_usergroup.pyzabbix_usermacro.pyzabbix_valuemap.pyzcbuildout.pyzenoss.pyzfs.pyzk_concurrency.pyzone.pyzookeeper.pyzpool.pysyspaths.pytemplate.pytemplates__init__.py__pycache____init__.cpython-36.pycdebian_ipconf.jinjadebian_eth.jinjadebian_ppp_eth.jinjadebian_source.jinjadisplay-network.jinjanetwork.jinjaroute_eth.jinjagitssh-id-wrapperssh-id-wrapper.batlxcsalt_tarballrh_ipconf.jinjanetwork.jinjarh6_route_eth.jinjarh7_eth.jinjarh8_eth.jinjarh9_eth.jinjaroute_eth.jinjasuse_ipifcfg.jinjaifroute.jinjanetwork.jinjavirtlibvirt_chardevs.jinjalibvirt_disks.jinjalibvirt_domain.jinjalibvirt_macros.jinjalibvirt_network.jinjalibvirt_pool.jinjalibvirt_secret.jinjalibvirt_volume.jinjathorium__init__.py__pycache____init__.cpython-36.pyccalc.cpython-36.pyccheck.cpython-36.pycfile.cpython-36.pyckey.cpython-36.pyclocal.cpython-36.pycreg.cpython-36.pycrunner.cpython-36.pycstatus.cpython-36.pyctimer.cpython-36.pycwheel.cpython-36.pyccalc.pycheck.pyfile.pykey.pylocal.pyreg.pyrunner.pystatus.pytimer.pywheel.pytokens__init__.py__pycache____init__.cpython-36.pyclocalfs.cpython-36.pycrediscluster.cpython-36.pyclocalfs.pyrediscluster.pytops__init__.py__pycache____init__.cpython-36.pyccobbler.cpython-36.pycext_nodes.cpython-36.pycmongo.cpython-36.pycreclass_adapter.cpython-36.pycsaltclass.cpython-36.pycvarstack_top.cpython-36.pyccobbler.pyext_nodes.pymongo.pyreclass_adapter.pysaltclass.pyvarstack_top.pytransport__init__.py__pycache____init__.cpython-36.pycbase.cpython-36.pycclient.cpython-36.pycframe.cpython-36.pycipc.cpython-36.pyclocal.cpython-36.pycserver.cpython-36.pyctcp.cpython-36.pyczeromq.cpython-36.pycbase.pyclient.pyframe.pyipc.pylocal.pyserver.pytcp.pyzeromq.pyutils__init__.py__pycache____init__.cpython-36.pycaggregation.cpython-36.pycansible.cpython-36.pycargs.cpython-36.pycasynchronous.cpython-36.pycatomicfile.cpython-36.pycaws.cpython-36.pycazurearm.cpython-36.pycbeacons.cpython-36.pycboto3mod.cpython-36.pycboto_elb_tag.cpython-36.pycbotomod.cpython-36.pyccache.cpython-36.pycchannel.cpython-36.pyccloud.cpython-36.pyccolor.cpython-36.pyccompat.cpython-36.pycconfigcomparer.cpython-36.pycconfigparser.cpython-36.pyccontext.cpython-36.pyccrypt.cpython-36.pycctx.cpython-36.pycdata.cpython-36.pycdateutils.cpython-36.pycdebug.cpython-36.pycdictdiffer.cpython-36.pycdicttrim.cpython-36.pycdictupdate.cpython-36.pycdns.cpython-36.pycdoc.cpython-36.pycentrypoints.cpython-36.pycenvironment.cpython-36.pycerror.cpython-36.pycetcd_util.cpython-36.pycevent.cpython-36.pycextend.cpython-36.pycextmods.cpython-36.pycfilebuffer.cpython-36.pycfiles.cpython-36.pycfind.cpython-36.pycfsutils.cpython-36.pycfunctools.cpython-36.pycgitfs.cpython-36.pycgithub.cpython-36.pycgzip_util.cpython-36.pychashutils.cpython-36.pychttp.cpython-36.pyciam.cpython-36.pycicinga2.cpython-36.pycidem.cpython-36.pycimmutabletypes.cpython-36.pycitertools.cpython-36.pycjid.cpython-36.pycjinja.cpython-36.pycjob.cpython-36.pycjson.cpython-36.pyckickstart.cpython-36.pyckinds.cpython-36.pyclazy.cpython-36.pyclistdiffer.cpython-36.pyclocales.cpython-36.pycmac_utils.cpython-36.pycmako.cpython-36.pycmaster.cpython-36.pycmattermost.cpython-36.pycmemcached.cpython-36.pycmigrations.cpython-36.pycmine.cpython-36.pycminion.cpython-36.pycminions.cpython-36.pycmount.cpython-36.pycmsazure.cpython-36.pycmsgpack.cpython-36.pycnacl.cpython-36.pycnamecheap.cpython-36.pycnapalm.cpython-36.pycnb_popen.cpython-36.pycnetwork.cpython-36.pycnxos.cpython-36.pycnxos_api.cpython-36.pycodict.cpython-36.pycoset.cpython-36.pycpagerduty.cpython-36.pycparsers.cpython-36.pycpath.cpython-36.pycpbm.cpython-36.pycplatform.cpython-36.pycpowershell.cpython-36.pycpreseed.cpython-36.pycprocess.cpython-36.pycprofile.cpython-36.pycproxy.cpython-36.pycpsutil_compat.cpython-36.pycpushover.cpython-36.pycpycrypto.cpython-36.pycpydsl.cpython-36.pycpyobjects.cpython-36.pycreactor.cpython-36.pycreclass.cpython-36.pycroster_matcher.cpython-36.pycrsax931.cpython-36.pycs3.cpython-36.pycsaltclass.cpython-36.pycsanitizers.cpython-36.pycschedule.cpython-36.pycschema.cpython-36.pycsdb.cpython-36.pycslack.cpython-36.pycsmb.cpython-36.pycsmtp.cpython-36.pycssdp.cpython-36.pycssh.cpython-36.pycstate.cpython-36.pycstringio.cpython-36.pycstringutils.cpython-36.pycsystemd.cpython-36.pyctemplates.cpython-36.pyctextformat.cpython-36.pycthin.cpython-36.pyctimed_subprocess.cpython-36.pyctimeout.cpython-36.pyctimeutil.cpython-36.pycurl.cpython-36.pycuser.cpython-36.pycvalue.cpython-36.pycvault.cpython-36.pycverify.cpython-36.pycversions.cpython-36.pycvirt.cpython-36.pycvirtualbox.cpython-36.pycvmware.cpython-36.pycvsan.cpython-36.pycvt.cpython-36.pycvt_helper.cpython-36.pycwin_chcp.cpython-36.pycwin_dacl.cpython-36.pycwin_dotnet.cpython-36.pycwin_functions.cpython-36.pycwin_lgpo_auditpol.cpython-36.pycwin_lgpo_netsh.cpython-36.pycwin_lgpo_reg.cpython-36.pycwin_network.cpython-36.pycwin_osinfo.cpython-36.pycwin_pdh.cpython-36.pycwin_reg.cpython-36.pycwin_runas.cpython-36.pycwin_service.cpython-36.pycwin_system.cpython-36.pycwin_update.cpython-36.pycwinapi.cpython-36.pycx509.cpython-36.pycxdg.cpython-36.pycxmlutil.cpython-36.pycyaml.cpython-36.pycyamldumper.cpython-36.pycyamlencoding.cpython-36.pycyamllint.cpython-36.pycyamlloader.cpython-36.pycyamlloader_old.cpython-36.pycyast.cpython-36.pyczeromq.cpython-36.pyczfs.cpython-36.pycaggregation.pyansible.pyargs.pyasynchronous.pyatomicfile.pyaws.pyazurearm.pybeacons.pyboto3mod.pyboto_elb_tag.pybotomod.pycache.pychannel.pycloud.pycolor.pycompat.pyconfigcomparer.pyconfigparser.pycontext.pycrypt.pyctx.pydata.pydateutils.pydebug.pydecorators__init__.py__pycache____init__.cpython-36.pycjinja.cpython-36.pycpath.cpython-36.pycstate.cpython-36.pycjinja.pypath.pystate.pydictdiffer.pydicttrim.pydictupdate.pydns.pydoc.pydockermod__init__.py__pycache____init__.cpython-36.pyctranslate__init__.py__pycache____init__.cpython-36.pyccontainer.cpython-36.pychelpers.cpython-36.pycnetwork.cpython-36.pyccontainer.pyhelpers.pynetwork.pyentrypoints.pyenvironment.pyerror.pyetcd_util.pyevent.pyextend.pyextmods.pyfilebuffer.pyfiles.pyfind.pyfsutils.pyfunctools.pygitfs.pygithub.pygzip_util.pyhashutils.pyhttp.pyiam.pyicinga2.pyidem.pyimmutabletypes.pyitertools.pyjid.pyjinja.pyjob.pyjson.pykickstart.pykinds.pylazy.pylistdiffer.pylocales.pymac_utils.pymako.pymaster.pymattermost.pymemcached.pymigrations.pymine.pyminion.pyminions.pymount.pymsazure.pymsgpack.pynacl.pynamecheap.pynapalm.pynb_popen.pynetwork.pynxos.pynxos_api.pyodict.pyopenstack__init__.py__pycache____init__.cpython-36.pycneutron.cpython-36.pycnova.cpython-36.pycswift.cpython-36.pycneutron.pynova.pypyrax__init__.py__pycache____init__.cpython-36.pycauthenticate.cpython-36.pycqueues.cpython-36.pycauthenticate.pyqueues.pyswift.pyoset.pypagerduty.pyparsers.pypath.pypbm.pypkg__init__.py__pycache____init__.cpython-36.pycdeb.cpython-36.pycrpm.cpython-36.pycwin.cpython-36.pycdeb.pyrpm.pywin.pyplatform.pypowershell.pypreseed.pyprocess.pyprofile.pyproxy.pypsutil_compat.pypushover.pypycrypto.pypydsl.pypyinstaller__init__.py__pycache____init__.cpython-36.pychook-salt.cpython-36.pychook-salt.pyrthooks__init__.py__pycache____init__.cpython-36.pyc_overrides.cpython-36.pycpyi_rth_salt.utils.vt.cpython-36.pycpyi_rth_subprocess.cpython-36.pyc_overrides.pypyi_rth_salt.utils.vt.pypyi_rth_subprocess.pypyobjects.pyreactor.pyreclass.pyroster_matcher.pyrsax931.pys3.pysaltclass.pysanitizers.pyschedule.pyschema.pysdb.pyslack.pysmb.pysmtp.pyssdp.pyssh.pystate.pystringio.pystringutils.pysystemd.pytemplates.pytextformat.pythin.pytimed_subprocess.pytimeout.pytimeutil.pyurl.pyuser.pyvalidate__init__.py__pycache____init__.cpython-36.pycnet.cpython-36.pycpath.cpython-36.pycuser.cpython-36.pycnet.pypath.pyuser.pyvalue.pyvault.pyverify.pyversions.pyvirt.pyvirtualbox.pyvmware.pyvsan.pyvt.pyvt_helper.pywin_chcp.pywin_dacl.pywin_dotnet.pywin_functions.pywin_lgpo_auditpol.pywin_lgpo_netsh.pywin_lgpo_reg.pywin_network.pywin_osinfo.pywin_pdh.pywin_reg.pywin_runas.pywin_service.pywin_system.pywin_update.pywinapi.pyx509.pyxdg.pyxmlutil.pyyaml.pyyamldumper.pyyamlencoding.pyyamllint.pyyamlloader.pyyamlloader_old.pyyast.pyzeromq.pyzfs.pyversion.pywheel__init__.py__pycache____init__.cpython-36.pycconfig.cpython-36.pycerror.cpython-36.pycfile_roots.cpython-36.pyckey.cpython-36.pycminions.cpython-36.pycpillar_roots.cpython-36.pycconfig.pyerror.pyfile_roots.pykey.pyminions.pypillar_roots.pylibexecsaltsaltsalt-3.6salt-apisalt-api-3.6salt-cloudsalt-cloud-3.6salt-cpsalt-cp-3.6salt-keysalt-key-3.6salt-mastersalt-master-3.6salt-minionsalt-minion-3.6salt-proxysalt-proxy-3.6salt-runsalt-run-3.6salt-sshsalt-ssh-3.6salt-syndicsalt-syndic-3.6zyppnotifyzyppnotify-3.6/etc/alternatives//usr/bin//usr/lib/python3.6/site-packages//usr/lib/python3.6/site-packages/salt-3006.0-py3.6.egg-info//usr/lib/python3.6/site-packages/salt//usr/lib/python3.6/site-packages/salt/__pycache__//usr/lib/python3.6/site-packages/salt/_logging//usr/lib/python3.6/site-packages/salt/_logging/__pycache__//usr/lib/python3.6/site-packages/salt/acl//usr/lib/python3.6/site-packages/salt/acl/__pycache__//usr/lib/python3.6/site-packages/salt/auth//usr/lib/python3.6/site-packages/salt/auth/__pycache__//usr/lib/python3.6/site-packages/salt/beacons//usr/lib/python3.6/site-packages/salt/beacons/__pycache__//usr/lib/python3.6/site-packages/salt/cache//usr/lib/python3.6/site-packages/salt/cache/__pycache__//usr/lib/python3.6/site-packages/salt/channel//usr/lib/python3.6/site-packages/salt/channel/__pycache__//usr/lib/python3.6/site-packages/salt/cli//usr/lib/python3.6/site-packages/salt/cli/__pycache__//usr/lib/python3.6/site-packages/salt/cli/support//usr/lib/python3.6/site-packages/salt/cli/support/__pycache__//usr/lib/python3.6/site-packages/salt/cli/support/profiles//usr/lib/python3.6/site-packages/salt/cli/support/profiles/__pycache__//usr/lib/python3.6/site-packages/salt/client//usr/lib/python3.6/site-packages/salt/client/__pycache__//usr/lib/python3.6/site-packages/salt/client/ssh//usr/lib/python3.6/site-packages/salt/client/ssh/__pycache__//usr/lib/python3.6/site-packages/salt/client/ssh/wrapper//usr/lib/python3.6/site-packages/salt/client/ssh/wrapper/__pycache__//usr/lib/python3.6/site-packages/salt/cloud//usr/lib/python3.6/site-packages/salt/cloud/__pycache__//usr/lib/python3.6/site-packages/salt/cloud/clouds//usr/lib/python3.6/site-packages/salt/cloud/clouds/__pycache__//usr/lib/python3.6/site-packages/salt/cloud/deploy//usr/lib/python3.6/site-packages/salt/config//usr/lib/python3.6/site-packages/salt/config/__pycache__//usr/lib/python3.6/site-packages/salt/config/schemas//usr/lib/python3.6/site-packages/salt/config/schemas/__pycache__//usr/lib/python3.6/site-packages/salt/daemons//usr/lib/python3.6/site-packages/salt/daemons/__pycache__//usr/lib/python3.6/site-packages/salt/defaults//usr/lib/python3.6/site-packages/salt/defaults/__pycache__//usr/lib/python3.6/site-packages/salt/engines//usr/lib/python3.6/site-packages/salt/engines/__pycache__//usr/lib/python3.6/site-packages/salt/executors//usr/lib/python3.6/site-packages/salt/executors/__pycache__//usr/lib/python3.6/site-packages/salt/ext//usr/lib/python3.6/site-packages/salt/ext/__pycache__//usr/lib/python3.6/site-packages/salt/ext/importlib_metadata//usr/lib/python3.6/site-packages/salt/ext/importlib_metadata/__pycache__//usr/lib/python3.6/site-packages/salt/ext/tornado//usr/lib/python3.6/site-packages/salt/ext/tornado/__pycache__//usr/lib/python3.6/site-packages/salt/ext/tornado/platform//usr/lib/python3.6/site-packages/salt/ext/tornado/platform/__pycache__//usr/lib/python3.6/site-packages/salt/ext/tornado/test//usr/lib/python3.6/site-packages/salt/ext/tornado/test/__pycache__//usr/lib/python3.6/site-packages/salt/ext/vsan//usr/lib/python3.6/site-packages/salt/ext/vsan/__pycache__//usr/lib/python3.6/site-packages/salt/fileserver//usr/lib/python3.6/site-packages/salt/fileserver/__pycache__//usr/lib/python3.6/site-packages/salt/grains//usr/lib/python3.6/site-packages/salt/grains/__pycache__//usr/lib/python3.6/site-packages/salt/loader//usr/lib/python3.6/site-packages/salt/loader/__pycache__//usr/lib/python3.6/site-packages/salt/log//usr/lib/python3.6/site-packages/salt/log/__pycache__//usr/lib/python3.6/site-packages/salt/log/handlers//usr/lib/python3.6/site-packages/salt/log/handlers/__pycache__//usr/lib/python3.6/site-packages/salt/log_handlers//usr/lib/python3.6/site-packages/salt/log_handlers/__pycache__//usr/lib/python3.6/site-packages/salt/matchers//usr/lib/python3.6/site-packages/salt/matchers/__pycache__//usr/lib/python3.6/site-packages/salt/metaproxy//usr/lib/python3.6/site-packages/salt/metaproxy/__pycache__//usr/lib/python3.6/site-packages/salt/modules//usr/lib/python3.6/site-packages/salt/modules/__pycache__//usr/lib/python3.6/site-packages/salt/modules/inspectlib//usr/lib/python3.6/site-packages/salt/modules/inspectlib/__pycache__//usr/lib/python3.6/site-packages/salt/netapi//usr/lib/python3.6/site-packages/salt/netapi/__pycache__//usr/lib/python3.6/site-packages/salt/netapi/rest_cherrypy//usr/lib/python3.6/site-packages/salt/netapi/rest_cherrypy/__pycache__//usr/lib/python3.6/site-packages/salt/netapi/rest_cherrypy/tools//usr/lib/python3.6/site-packages/salt/netapi/rest_cherrypy/tools/__pycache__//usr/lib/python3.6/site-packages/salt/netapi/rest_tornado//usr/lib/python3.6/site-packages/salt/netapi/rest_tornado/__pycache__//usr/lib/python3.6/site-packages/salt/output//usr/lib/python3.6/site-packages/salt/output/__pycache__//usr/lib/python3.6/site-packages/salt/pillar//usr/lib/python3.6/site-packages/salt/pillar/__pycache__//usr/lib/python3.6/site-packages/salt/platform//usr/lib/python3.6/site-packages/salt/platform/__pycache__//usr/lib/python3.6/site-packages/salt/proxy//usr/lib/python3.6/site-packages/salt/proxy/__pycache__//usr/lib/python3.6/site-packages/salt/queues//usr/lib/python3.6/site-packages/salt/queues/__pycache__//usr/lib/python3.6/site-packages/salt/renderers//usr/lib/python3.6/site-packages/salt/renderers/__pycache__//usr/lib/python3.6/site-packages/salt/returners//usr/lib/python3.6/site-packages/salt/returners/__pycache__//usr/lib/python3.6/site-packages/salt/roster//usr/lib/python3.6/site-packages/salt/roster/__pycache__//usr/lib/python3.6/site-packages/salt/runners//usr/lib/python3.6/site-packages/salt/runners/__pycache__//usr/lib/python3.6/site-packages/salt/sdb//usr/lib/python3.6/site-packages/salt/sdb/__pycache__//usr/lib/python3.6/site-packages/salt/serializers//usr/lib/python3.6/site-packages/salt/serializers/__pycache__//usr/lib/python3.6/site-packages/salt/spm//usr/lib/python3.6/site-packages/salt/spm/__pycache__//usr/lib/python3.6/site-packages/salt/spm/pkgdb//usr/lib/python3.6/site-packages/salt/spm/pkgdb/__pycache__//usr/lib/python3.6/site-packages/salt/spm/pkgfiles//usr/lib/python3.6/site-packages/salt/spm/pkgfiles/__pycache__//usr/lib/python3.6/site-packages/salt/states//usr/lib/python3.6/site-packages/salt/states/__pycache__//usr/lib/python3.6/site-packages/salt/templates//usr/lib/python3.6/site-packages/salt/templates/__pycache__//usr/lib/python3.6/site-packages/salt/templates/debian_ip//usr/lib/python3.6/site-packages/salt/templates/git//usr/lib/python3.6/site-packages/salt/templates/lxc//usr/lib/python3.6/site-packages/salt/templates/rh_ip//usr/lib/python3.6/site-packages/salt/templates/suse_ip//usr/lib/python3.6/site-packages/salt/templates/virt//usr/lib/python3.6/site-packages/salt/thorium//usr/lib/python3.6/site-packages/salt/thorium/__pycache__//usr/lib/python3.6/site-packages/salt/tokens//usr/lib/python3.6/site-packages/salt/tokens/__pycache__//usr/lib/python3.6/site-packages/salt/tops//usr/lib/python3.6/site-packages/salt/tops/__pycache__//usr/lib/python3.6/site-packages/salt/transport//usr/lib/python3.6/site-packages/salt/transport/__pycache__//usr/lib/python3.6/site-packages/salt/utils//usr/lib/python3.6/site-packages/salt/utils/__pycache__//usr/lib/python3.6/site-packages/salt/utils/decorators//usr/lib/python3.6/site-packages/salt/utils/decorators/__pycache__//usr/lib/python3.6/site-packages/salt/utils/dockermod//usr/lib/python3.6/site-packages/salt/utils/dockermod/__pycache__//usr/lib/python3.6/site-packages/salt/utils/dockermod/translate//usr/lib/python3.6/site-packages/salt/utils/dockermod/translate/__pycache__//usr/lib/python3.6/site-packages/salt/utils/openstack//usr/lib/python3.6/site-packages/salt/utils/openstack/__pycache__//usr/lib/python3.6/site-packages/salt/utils/openstack/pyrax//usr/lib/python3.6/site-packages/salt/utils/openstack/pyrax/__pycache__//usr/lib/python3.6/site-packages/salt/utils/pkg//usr/lib/python3.6/site-packages/salt/utils/pkg/__pycache__//usr/lib/python3.6/site-packages/salt/utils/pyinstaller//usr/lib/python3.6/site-packages/salt/utils/pyinstaller/__pycache__//usr/lib/python3.6/site-packages/salt/utils/pyinstaller/rthooks//usr/lib/python3.6/site-packages/salt/utils/pyinstaller/rthooks/__pycache__//usr/lib/python3.6/site-packages/salt/utils/validate//usr/lib/python3.6/site-packages/salt/utils/validate/__pycache__//usr/lib/python3.6/site-packages/salt/wheel//usr/lib/python3.6/site-packages/salt/wheel/__pycache__//usr//usr/libexec//usr/libexec/salt/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:40279/SUSE_SLE-15-SP5_Update/4de145a659c67f6276876f2b992fcf52-salt.SUSE_SLE-15-SP5_Updatedrpmxz5aarch64-suse-linux             emptyPython script, ASCII text executabledirectoryASCII textUTF-8 Unicode textPython script, UTF-8 Unicode text executablepython 3.6 byte-compiledASCII text, with no line terminatorsPython script, ASCII text executable, with very long linesBourne-Again shell script, ASCII text executablePOSIX shell script, ASCII text executableC++ source, ASCII texta /usr/bin/env sh script, ASCII text executableDOS batch file, ASCII textPython script text executable Python script, ASCII text executable  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  RRRR R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R RRR R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R R RRRRRRRRRRRR-kgY:# force re-generate a new thin.tgz rm -f /var/cache/salt/master/thin/version rm -f /var/cache/salt/minion/thin/version/bin/shmanpython3-jmespathpython3-netaddrpython3-passlibpython3-pyinotifypython3-Makopython3-gnupgpython3-timelibutf-80dd10f0955554bef9c164d50acfabf603e856e3e139c626e77d5d6124d2dcda6?@7zXZ !t/cU]"k%pa  0X=oh~@%*#`? dۃ^S68¿xyOR!(AFq^DviV `k\Jۡ?=*|A~uwL=‹ٰ]uxޫL6"Gna} UMHj\XچLi=<Z+p"@hYOOrsqωd쬔I{2>#t %%1yf"JhMN%4`^bRrWv*BTK6Ya.gL~xlwe:&2dVTEcgn夓Hѕfwlel&ޅ$}q5/*HSY(B0mnNQ ,JzE`$S&T7'|&30b(,' \ꢞȬ.tsZn-3gVsGziYaxkx%^Ms lgNai76M*SJ鋛"IW@E4ҡ(j~; % ^ާ/=c~DŽAy*;ɺK>MȱӃ[V%K| LLr=E=T[4@i+a{Ѹ1[4;RUc9@Mۑ| 3EH5:zL]+x([`߀)m0o8LvY/G)_d+6ꥵ<ih<JJ3K2[|.JfR6hl;4)>ʌífJiwؚ1V^j)n9 D=3;eѝ;vDiEZyPqԹN4 fG1\.d`)I('H-wRˁc$J$MeG"䵒|Lt3lT%GB&P pJ =m&KH=]{8Yq`A/T g(fΛ; %tm٩RPVD{:P;de̒n~z2WP^7u.mN< m`zr}WhkgP%TemaԳSՁY (LbE~V{:rVMsb3q]PevegJ1AU)O"ݱ֭DYY0p֎5GnWAPIf7rTIǐ4ƟT#.?ȿt2Zݽtr`"x^B\xWA,]=o؟1Ti#;+"2.JW{<%y͋HFۤ:U&Zt/7u. hk& !G@C옪Hz6!' )r*1"mEɋt-Qn7u52@:%\kg~7=Z<S9ݴ;ޫi(HLb%\aSEØa1Jv| 04PFܻ[-yF JNSr2O3&Be&q* q,aٸyt0~YcϞ*T*h߳ L{s#ϐ qIU>0|ϗbRUdD'2V`hk.rv@v !lTaܐJҾc^Bf#y//PVfj Cj< )#/StEȠk8UY P~Uz9`bGuEtxy+j楁Yɱ!N>e03Y=70N@~B#V>e=< Pdž)GCŲu}ֻ1ۥ+=EƠ / +ŃW'u 1R,7+G*?:IWox0 nBv5U֎C3"f1"~(B"ﲩ;8IqD`ԇqVZM938mΙMO*N n#4 VKVa4qEbL^X@lixw1[Vs6 Ҝ ^b"]Swm3sjο*2&fnɎ)ԇ QQ^YlJfB8g ோ:-hU]I>]O?^x3?|}At:#Jޜ)i1ZfBu>&!ԃvLX0@ǣ om;l_`ǐ3ڗ#Jp]Gͽ7Lϔߣsokvyrz'X(EwGٜ״xuK"v7+s*hS= HQ.2uehEЀǬKbP;&`6ۯar v!l6WY> 6ѩ~A;8QtB1oc2s8x! ,WYsv\ :ぉ6:j}{;-HnѧܔTB.3DdPE(`} ʜҬ8",fJKzavoX!j7ą9cLF2|ioyZM*H0azA->c6ߛ|K, ;P{m`W/ӛ>2n9p3*>p9n.)c<`!.NZ\GU78j\r]Y:*!uT%$#}rǕrBGO3B ܈E:4Ov}eiu ';9~zj˛$H#Ͳe6_|2+ 7]~ԪfKJqZvZ84Kv5o4[Nm&!T TgODz"ɺs}E3]dE$\āf}v|ңa A #sh~1o-OK&5-j~*/^ ӗ?q( {^N$l-$Som5qzл|WK<o: /kv _.aS5xuD']y :k03_En>?+*r@NJF\5z P jg"6PzUqbMM;iW՟m9*~3݅=l+&r!#fϧN؅:;E{2$ B X@ JmYSa9Ta.n@;R֑ Քtz*#(>2~81I1:9z偂rJHX w_  ~>KOJtluff=C+評}P";dFnG3Ystg%jxDؼD@˟m8Y)3y0Wq[NOh.) ڌ~FRn'N '}itumk|jƈ-K,EZ9Q*IDF y1ue-IMyي3A|>D< P^U;:lB0e< pE<`gG] !aKlt'v @jsXlpD^sm$^ٻ񭱤9mYzĎfv`_F3q,T0JG2kY@ %a9اRKn97q0 ZR %q ˃"Z?E@ZF'ÇB& VJ @'Pr8쯷ޒe1 ׫e=&g { kF@‹(`TeS6 qL:6c:*?E <}**ԄqP-0oMRnPHf+'blHm(V$ǽy|4D. v4M"b CgRA8~NpFAvqM_|]1&[-[%'ÝEs9u]HzWH'S[o!|/"4qHܙk6^? oM]ooT%n<ϐJM H% h~oo4AѠjGЄfҢӧ~{j/Z 'J6΍b|g"UL )9rH5,N)ȍM:[AY3@j-e'P~`fw?@sncZ 1 Pv`-tbɀe{?; ->7Ԏy (DB!=P7m?/Iv(k.;9:@`HwC5*5}T2@EEEغ.B;,pjOS2#TP2ȳUV  Z*4\j5)|,,-_XBBg;2 c}{ kHcdk4>t~u!V`nF,$ `io:f.uG[A*ΑO EK{0QT8.}j%yKW/,5EGX擼:6߃Vj)kڍ2t`B$>.g,L0pϜ&]bl#JvQR;{]'Mnm[=(xy@@ԤM4CS,$@kcJ#8aE=C#?C~roѕ[dpDM ]_9 "Z]l N3!ۿ/ы9靳+!t$:k *f&F1q8&BzӤ_.J ͥ!{Sl&LC}_WTM4:!;/ܳ{w*98p)b騜o GS~OD*c&g#+a3#2mkD,@ $5&1AfMMa$Ap,e1- !dJ$e7D`>҈ǦVKA 25v@N4uL1)+P(}~BOI:JQ弄ǝ"Skc3x<鍇σ,F3iHB Ӝm3tu?Qp/\"3.*y[6|2a ,ng?fq|^LT*uކ rj-8,!cr{ WZ4_lT5EEЮWӺ>bK+84L0Je?7hDPz!6tc].}<1g&HDw-jVKd%' Cyˈ*7v@(lS[6ʊQiR=hi(rI'r0,f65{pk「o9Cp:'}Tz 9_NS5fc*+kHtg̡Yr&ieSVd7NscP*htV_7KӈJ,_x6<0əc:뾄tкaU=Eibsj fV}/(PكTmQԦ5nXﲐ?&X\V ) m*S~Hͨ]guJspPcAQj$QKވ1]݊ӂxaPpyw XȏP-GSbj/= D9)0lŲMu & 5OV ̓e Xq647 0( ܼIO*5Fwc2䄬fnvTTtCIǝɣbd?lx5s3`P9XaOְCwq@APy%Vq/䏪)rikaҊsv*xpBJ%_Tƽk0P&zj2x66۵5g.dE}^;R##,ڨ{pU[W1tշ rͽ!RÚ%HTܯIcPChLD`[њND<'$^~ZOt5XxzW xe::){Tj(>=*@ݏ:KE#V]Txڂ8tlnK6@AQ? Jz[1fL aJQwٖc%raB~.1eSeg/& b`@F(3f߮nI~XA5 ,|p\H5U䋦E·VLpD]BW;jr88Nxq Ywȅo#Ed J5Wzd˗3pY]Sor[,N̆zPHXV67v=<>y 8B+6x)cja38m>Wv:lV6r0b8M; ZzQc C1gw'J(k'ş=D25h _2zC~vBd R1Ü#KRZWj*G9>` Pc@;p> dB{kYO0Ų%@* D:eyO:b6UFR;XV| f7">4ɮ~y&/7G'Rc)_ZEVJӖGjڃVe;NYq[LK_7U_Oz<扖|#orv7҃K(Lz#mW(Er0eNvc*̾0xFO63x-RP9*#qh'3X}8FN1䴜4pk~_8"U>"aPo{#GͲ(q"bӧ{9+3bAP(Onx)JUkz`1K Y?CS]ier顭6EnxTbܲu>=|e{v[cDNuuNoͯ2I4[Rx$DoCzd:26gUB:ڈl5 q2+ k/p];.N}2Ob޳xu 90XUv PqL0~,aY F"wez{n39j-}kX{ Ąq?ktYpL"E ZgN. Rc$>>_*k0XZ.좃-0oVv6 2@3Ѭgp (*[=o*/ա/7Ǐ@1bxRraB˗Ъe g f.rC68Ɩ-*'mHj嗭󃴔>cqqf3cnBl7 ]3NDV[])tӠsmSN{\)x!P"Ɉ^|H XANr: *QL+xش5I1qݳPMzq|\<C80|k#rN8jC=xΝ\O^fgSl*+EBo+L!Bln_\N+Gz0]Tw,lk̡|e#-0sUP/a vkpɶ2yrFkxW|Yǣ Katz{?GڶB SLpG80\ 0\E?%Ņ\G](z^ ^w;9"w n G4Y& =4G&tüo&M@"aVL yatqvB,R~PbacDVS?F μ'.s!.+Q fUWOחM#K\G،N./dqg?Y?Y;49a%t-~8^H3M"5j:|۾2A<h^ )B엩k[G:~\]^3_TJ <Ġ䱪 LK*u`87zD}[ƓS3)ZDJV KԥQuu$M~hI-TR7o,Xt8Wܴ7'3̖e;:a$S_)!TL9)oB1:od yg#f;?_f9,vS^CUQ*:0ZjػSXp:8NuXɧF'VMp Rxx6*$# dUM^Q &*~}b)~=3(0sndѐOA/]ˣ4UQ4Cz3;,ߗV;!L"i:H9hc[/oif넅v+~p%,LTyѸ 6Vq4( $f rh.qfق>lriDe/^AufYSLW6#*ZuAĽQRfy'Ӆf-e|͐+//=0?kAl˃3,BPs\7]Þ N>HT3WuCc|}u['t {t&8LG66 Σh: a =ƉKGYۡ”~ 1XqO᱃XPDÃdT.h%uUϷ{)SEJuQG_Õī 5}pSFI$՜lxܐUUH+W+kl$̿w9eDE}S>7[\}*/CM 6^UZᴡA;LA"ec#oGelijf)}+@򖏈2 ] [9S8abDbf-Gw H|Iۯl\-z%,;EY$<}Іzd7J=TXXIӰg$YD5:&N* 0fTA7mre8['in VP O;ۅ[Tg㜛m+5<0{5B*Ay۪ O|6niǺC#ygbu7d_ 3e­^~i:dUo% "& =k}zI p(ZPQN ܧd߆XΩWt'b†zD4+M4A/ȟq'*֝ bw&@@jeDeDVkjdZ:}k\7n@#@LXlfs Ms6F{Kٸ/2Z5Xlg#Ģ1.,Gh)æ ŃҢl+E*vET ^L/|KSPA+ZX/^K/Jݎ~ ðIhB;\hmMPO3jvb?q\ȉ Au%#ݹxc[Xo5f4Dlو"ъ5b*I_!ϻ ׃G_G {}WߴIYJw{HtNcԟċ)HįGvK&|1=-6C&&**\ȿ&MP *TiޔXtKd jt|]ZF7$fW`@ 扽1̺6_ĸ)n#[".n2z2NC27]OjҊ 8plorz FN4RŤc Gy+fSmv)S͊2pqƆn7jPX-9Z{ek1FUѝڜdzJ?wD18m=p13B8}v%w@fǿ ob3_ gN*1ћˈĠ= b= B:2W4rїSԮm=y[fӚdtBk-$A1ٲ2G$6sP߮CřۃnN +=olnS4$ŗ\&B^RTq):rqoFc|"H0=np|SEK;SzMS] oꯅ H5*Fy$hE |RđנkEu^koyj˄aDJ#/:Ī1Q|61{Rr8}OR,%ռqRNmٞl7> 6]'_-f9љq…ڷLXE%w7]\G=eHj R:ԆRMFO+a&) )n2-T/ `#R|uP ]@fGpOXVA:JU>3JϙZۡNӒǕJBY(fh͂|L6zW|k~K ʬmaB5W"O[t F3ئot O5lv5 r0KvL]L=rLEHM ~} :f JX4@RlADo-btnꓭO]F3ٙ :Ǝ힪~` xmƗ|+I c>'k Ycx;>gǐB΢5F4 A@Ǩqs5!p .tW|fZ@R /~+\#Q'eal6Y/O M9jX Fǹz  Doeج8acYl?]ƫDXrVF<=S-f C 1v.#1$/hq@% RΏmb&{?4˿pi@dLz|aHh6RÉ3`)A×vĮ.pQgdNӳ):M-BʺnPLF+/d7dÿy[2!y$(WtxyAimۈOǐ$;"Dd"-tG@lo|p7t fo/(w[A~!bpJR-"(c+ml qJwa闵zrLr.LI9jٰy츸o6Ʋ)El5/|I]%}Eŵ Ry3?1ĺ+8ɋo쨋.5qbu:W+adϩuZtYI]B|dX\29ͼ֌n Y|* p6Z<5 Ǵ,$7O CG kI !Dt ͷK>.beE~fPf5__Sa0h,ݎBX!Yg1ݪ瀸$ĉ.zԨֻ'dY>FQ΋ZM̬Ld_Cmxy_^%nL PVgU285`Gbjծj#kǰ5{/z_3rn_)pgg6ۉ0M_- {d-יVW/ܖttYApVY>x\Ǣjw0( 蹠[ٙ [4+ίnWW ؜`~ =-A`-ddTD.ܻYpPH>k4o,PvI"g蹮Խ:LF]9y ~KkCi@^süHn!wc4tb2[\҆ZxzbdL&ƏwB/^Q_lHd>¡lk~|'G|J&*i+%~bfd'9 U9rduky;3y&*fG\3_S>=.Ydp*x)fG7aVID7߄"PyO<% x-,&XbHt=`SsS l4ڳP8<[>c)2Y3PYr6W }}IĐ0`-֝"2=%`pEUDsI`졘 81vҖF27=Gu-Sֵo&Felb*u`-| w: srk|>xMqp-nyrly*-UHOR%|DjhS[q6m 1ETDG+t]>2E{9-L).0`<rd/=Αxw ڃR'8JpU?|#GG0Ƥ!t?Avw=7(imFCOh:W[Z[}7xE Ve%ՌE0* IvصdUsHu+ir^ݡѫ\A~x hnR&+b GKAzڜ6VaYh43./-XP!o_v0|vR7LϝI#POKEF)lnzC *,!n3-ӌ>r$&#:Fl/%̍(Qz~b 8d#d@Xܔk}g&,T J?cY5_ ۅ>~8'h% $rf82EG}Car5l{q*'>c"Fe7M5\ sXCklڌ ts#HkZT%Wy]oa%>_ dԽ}8ݕmt8ۜ#;.nAz6!fZ;<ϳiP"nxr2n Ch-K*F$Zej.0 @dT-}k蓖nvӎYd##A3$^ G0PE6f`S%0ɀ΄awdEB |JCԱtL~>Vٽc_ &sq+ܙ`= A!Ft0@ ZL>/qPK}w1ݥWP&]'SVzQx{Veąb>sLeF[\WPMCRSVK:mR<զ/*XuUFUeT\H; "$1jqEK5ԯVDjY&I쩽qB>KxshX4#QQœµa̿RHYu{f0I2*° g3xH"kD~!k0{R7-rû۫W9>Rl KIAB^WG:i~2A~ p0,UKԥ gҪ{AOĴx`{j$t P1h3KERI ECW4oX%4Bk`l̡1fN"` u7~+r@ݵ8UDZ*;e"~5w;#ݎ3N_d̫mjȽTDwht[N'Խt}6.+Q"9;{ai#VZ#K!~*(? dDIan=VQ1m$h4Hq+rCx5(+Fe/Fc)UՔ[wy'BU:J4H`t Օ;'B 7QQVE5ꤧ;ړF5W0DJH~bo97xF50 O%Q]ȐX:CLcE OY"A\8]2!b>3`0 _3kAu0=?9x3S_.?R~ory# O*6vkhyY}xл8D^(>2<>}Z='YV\dNZAXzGRARgWճRqUNYkAoמ{jQ9|8UoLf+ye@FeT$J雚6/OѝWLZIf;WH^َ͉ Z2ƒ},t<[&YF2ō9d<;2zL>5GPe Y ʺ9V [H6zKp !݌ÅYlIwmwVŪR 2ex* p'=c TÄINC8U>bE'U egwVr @\՛N(\[$M3Uv{`P]kWJʇog.q] k4߲ |:qi}=®3Ս۷RnwTEmCEpZV_fMs`)ȡue}ˆB?ŏNTS,Q%YX𨩈:g.>࿒t~`;OP*jEnr+ăbϛ 䣵Gǔ!>}7&g]wu‚ӌPYC@.Q͉m^43͇黵$< 33de.]bmF6j1(?D) zF“4JMRKX@3UBy .훝e(@ֹiA `#O$ިكeC.#зdQpnaJ=tyV6'/ nsvavI\r}YAx6l$\L-@z`{`"y,ˡU?f_m)t< \ԋP;6`0b짃U;6ܲzGP~$Z7NJLi*75e{ W?1?j@IMܖniH(.Bv;7}L"K ]hc9G-;ZX_Wǭ:Pm1 hOՖؔOyo2=箊(ɩ" *dĆ`uaR|kӀ'gY3 ^\ :sZ u'a`XK- zsy IzL-߲8?Nd@ԥIчXY@F{7)5ifroRbI4En @} {hvE RTJUPОinP,0)bx6|L>qR(OS wǏ^dTβ ~qZ`s L)٫_JoM#KP:e/J>DZb% a/Y\u5 eĀsLEU th4KP1:?,1Ɣ)C, ҉-pMG!q Vj۵;+GTi<[b'–%DEc Ba;=*jNS|CpDLGDI./"tAm g}U./[B7bc3\'ҥ\_N^FwIXL@bX},lfyNjl/NuC7N ωܼqboR&,b ҋ,g'lCga6#%賹b'묑9^P6=u_''Ȁ&=د,7:̰{N,hs·SGOE$aـ/B-u~`WoFa'F>!s Qi &ތ@sdbQ-94m?lՍ Anµ# VOy'-邍p }k'5 c"?hh*.!˟zO ([?M'C锴δ[+\`*:wl]ݫcI哞?,tI؝x[yy˄1Mszgh y=6xHĥ&}Jxvgq_ꄾAF=$Hs+ ] :* N*E_TcpT1hɉa7ބjehoR ]źHY:rSwG5KϱT~Q6Qŏ8ޟhAJ\IrZJ'?N-5OhYP øk.')<݀>QLΏ \#Ɯnm>|iyoec"!zz]ƯシLE}oKBlIGvG@9]Io|,5x0`"1iMuȼNbSVz3h- =HFșͶ#Ё%H`DG|\L{itE0qa*.bh}~%eLW3b;ϭ+7Se=U ¾4ڑK-?heF s^Iug{H>m33wćUK>!tBz$P9 Vf+`N9 5LrnkS^͖ʂ*U.;7F# (:xa ێlj(bWMl##R3EOr'> ,|#"ݳI$#O!xx6n7_;ޙ%4Mb{ҳό,;FGx|SǠBt'iUK4-ɡip bյk ׆,P2$%^W'֯ <@u>F|:\Vh>A)W0-$BK䔦m_q1 w1vo\RG #Ԁ{ e 96Sչwm.5͠O"+J%PjtV5 2)ōxe 6g]_u+]SO ?!+1(B$!au-K.~Z5EN5<' rI߹D#,|6^YLޭ2Qcroᬉ̌V,ٛ~Tz֪Ď[QF~ 0ZKޏ$0L~01 hƨޖ^;%끪gfLN~{ (ÙWS1\ݶv>k:p@3:N1m)~/{[Xvk.J~LLL(-VG(^eDׯOVs ,FQraFva[8~g}7!=Mv7ݛ BDik+tQ{-*4eQ=E%?ṅat2 [j-#X-{}na6Qx=Hdj9hHnK(9wkpc|7o9ǺuI7{/^CU}Cq6j6)My=dx9"J5ܴ\tt5}Ȕ| (\ۇn@ K Zt=6H]}2EkӢ:7te3F,o>K2u}}Hg=Ĝ+% Kc0 OWJaq(AP_WHLpZ+3w^f]l2i5v=e nnvVӓy3|pgA"<:WH332I+v%k3TVԸkd\i"Ug,N 4rQΊE2^?0B,(l/ T:%"t% Fs8 |.'G"khï/pQJPo.Wp quD칵 3My<Ph8?jz WT w#tm|m|<y? 5#:-R"q<=k" =f24$bL˾/X<YP7>V-2]JN'=St%NQ骖b w:޸5N5RKj#>Y^6$sS/{b(6ߙg[t^yBPĂF"D:iE\3a?F"aqSd騢xn8Y @z"BBs72\ :rJrr׍oȀuN6>?m9k"Lv*ȱz-)Sl'~3sw [VJſ;PZaUr!2ǜ$-?M@3Ɍp ZzY-}coI3^my[LCK /yc|aQF~[Ò¨2%māOnqM Q9\hgƳqf@֔XkUIUW7nuv!Bc„hs'^ڞghi9D :f4Z93; C7`եٿw6v41 Khm0nG@rT!)ŊAe(NYNwrLΦ3Yo,%٩&r!5 S1i'Z7{(.TZh#?Cc0O?Nv-aP0t Jbq^c<`L t-.!ҏS.RU %Y0#X$w 7} ! `c4|(aeFpuR6~bHW!rQK}xԳ%^"a;8!U"71Q: eKdzŌ^d!#7 9g9B{nE9r| ء?C:;oy{W`֡mꢺ,<<,AzpuvP \O!Zϲm!ރ ~f) xD6RVD?=!"8}>%m³˾[Q)[xv #I#eEĝRgF[>-v7M&I!^ ze#ͤk~B p{ I =#-6꓏4e"$*fKwۧ~bǼBXz}_]HuKuB-AȚlJVE'VPn88x׹u}h 69+zI2A DxoYI(z-lY! j<f k-`D-gd/uhMB,F?ګ8qC3ڪ, `]SEbz)u~RFKIofK;A}Ǘ?<0JOݑ~xuʅx#,sDLԺhVѠvkAyDp!{HV3]H |FZ#0zr19h%ȍ-^p*r" dgQ@$e{kH^ɀsdNx' k71 N:@J}_[5N {He=%G4_0NQ]Ux2pȝ5 薆-W^}ȺH%^Vœ;P[i.H!b!7jXy5i~AHZ-oV"u1 /EiX\D.@\h-,LNjfO6QT΋dǏqN:Ӧo|5nMĄjp#mG@ibbq[z{B{?$]໮ԍp=JRf$CW8A MPr?I dBH 4jFW! \IYt؏ekDsH6c>T$a1 33R麶Һ:SUw© 8\ | ;e-_x,zC&ޫ <2 &LE6Tk1ŧ@J)'H[6U|*<ӏ;[]ܽ,fNţm/&t\ă@,~,&/ц} @f.m+ :3yz K&IK\g7Rq̖4q#?ꔭsEGi8MQ3;j{;5kDhNqRo$ pyq\)9Y8MCJh \'Ȍy_mR䁉"X:j(7Wf"31p#ÖĠn> 쎿1eZWsm g!w7a' K+f).u`)@`!\ at'o ' +D#ALv+M# &fi<;51|3 "hnaaaBP q&c4XIrXMl?tqa?hhLIF*ˆ|8z2R+dzVR[(M}~}4]A,'phb(wMKprۿ =_x&tH Fh!h:-uşAݤ& 5O.A?\A%񰧝@dVgNϦ=Nɣ\:(H]H-cRrtzn e( ڟ^JA-kp~luH:*n:ۂ'ĊiWqBg;۝;Bj O+T~˙7G=c7Gط^o{7g =T𩡱G+z@ Y 5~׈HpJrpd({Zeع%B"Aʥb \Iҭba& s<9ݭ Y@+LKRX癧=KWyJW >Vz 6gH!hHyl=&~wF|Fk)ynεk/Bȍ<҆f^V;jW5A<\lfF?*ҷ{M7JK9i_R4W~^sۻ{ymr^^J;CI%ۘ p?0^ *Ka!ӎ8#=G 7< !ab]JDh5sv_L95qShiȼD%f'78 MyˤP_~E(V/ *J9Xa tO& āS 1=_6UUmsp,2z>]NnI=巎6XFSB,,]hZ1Q h`\' Z`Kf/=~da7拑]Hag ]Umlѳ<^ Z  i׽&{Btq46hivU a:ٹ:.贖xrj%bo%ft(X*laii`k Ct3Ll['(w|j SB_zYuYM|Y w%}KH4FaYIWPK(1yzE-Gm30ta}lI'i⚹g(fIZOmkV˧>!%/ęokڷǡ#4㔯V`a,ݎd|e":+.>1^L/ȑǍȋؕkμ'ވW [Y 4Ff2Ɩ9jEbs&|ٙEs74#~uňo3N:]wY\qIpe KMoIM֜\Zz@V״)czـM-솗 NxÄi}%mJt=ªIȗc7=땣 B@,),eDc2NJN֛ui(M9nF+ Vwө!<]:L\(W*5;Z6S0 2!\[Ԭ_A LڳE#@2{З,w Br켘 Lz%Uouk:?Qˮc,9G0.[L!cg(ÛDzdoY_*X_V2\_;|>Hfk W K7k lŸΠ} Ens{[GV94bH)3`XMMLIb)_㹞:⧖Lނ.YE,bPN8Y50_g2wS>NT}|i/-ާ~?Vp|O@GGe](f] "ߩ(Y'4P"xn: <5\ -VVUx-TFPkTm^*ǭoVe^ Z{扬2Pk_} S}  :j_BJ]ୣ ֩h0/CLJws) h'/*PMf40?Mȗo eh|uX ` Mrf8.ű + ̞HH 7݇Rx "rµ4|m)q[_9FF}=UQP;̪zKgW,T2~sW0Q:oj瘐䥁o-74gF Nmm΁=wXw` mn|kt_܀~;,X1bo&H8uKg&Jj"x`Psxc,b4c쩱@4cο+h\8aDkt%:_ O"gxugŅ+P{ݫpQ8Ȍ㻔~g,Óex/tRio?įe*|`UusR/. !o# LEyg>z.|,e)Y f&Y﫠ji5r:A[qV{1Vo;N-(Mɲ;뱶,q-=-Y2T榍%T0v`B752+eXf:su&ŐYi>LY )7xc9v Ц4;A$Z?Ko92j]݋D g5ql~&ILMPJc"me<L^MW>MJ#X22E'-ƶ oL…3k۬+/,HƴVVvۡa}r Rǟk5gJxެL9W#ZZ.PxhSo] ;Ag9_k>VSo V//HVԡ>8uaXǥňr%iЁFL7UˍMۅ:J?IV@P y55ӸySTT4gIMV$Y3>yrT:]OjQY"'Awj.bأL,UiJL^!5$}16tXsA7|TSo'~5R]rW,S0Ϻ>#Ke+BoG<(_4uCf1  1b;$)WHdzjd扦 sg-8Tמ/BLE\Jq_`5|aFٶKfe~ԧ6I.JЬ` KJpK(iF[1 4$5+$h*8SQ~9jc z=U8푯^nP~M\59ˎj**15ُ{gf'GaîP[[D&ୢL]Ds$eWmRzb/cҒ;wP $&v>P8+bhŚ~y-g6nR6G0zBHbtC&N"8-ep ?}}b]j]l`B'^[r#Fz=k@֏{M ρsmP {Q$c3@S墑Rb1u :%&R4 f2-@qhn^ uS̲Dch#8Xxr"oh`s-fws;Hɂ%;kQ4Fokݟv:BOMQ7ĸ١}(=P_hаCrd\y+1XO?ޜ61)Ig@]͘|ݶ8x[=xK?3 Shzt!Ծ;Zn,8j\(CvJ3pM#@1oD5ތ6]Z}vџ]_.F䃫T] v*L}^FwdDK( G=pB:YV;"tY7%{!P3JYΞZ-Fkqgkgˁx>*2!i8 62Q~asa=ċ%TXc}ds"q N%ȁ qV`dSx0jei܇^x:Y,H)Fl\$rChϓX߭,6 ?Z($ӏ\.5[s<H]hFqs6]oiDDž5)35ua/ ;`pV2{Pkp#vkޑBI[H@Ɗm^̑qS2bmJ'3b`.}Nd|rRHG  FN_S\D4[[PW6r3c|$'reUd|E]1<g Ʉh? &MRv]bgF 'C7XԿ>{紪_4r7sa\O͘O <6rOusy4` 'ob`hb}@X| N^u(x7.`i;_nn ga|e%V 6-``2XvFL/%lE [L14!Ös#,aCxj U/'2Mߦ a m DNa/&;[M d( ,lAШϧuB*3A8Ar>2 /)+oe&rHP[Vu,KPUZ\qOcXɡVfHTc؟sn:kֺa-W9쫋W#qPT~G?!;vnh TSXlM ր{O+l}m?Km~Hp-dP' =1tX3I̭,;!;-t"\,G)-p>[61zF; jP>ꍮ4SOKcI8 &Ϙ"-iS;O3>2S24ٔphrH J^N~,Y 0;Zpn]`zЈǹfec::P]& ^* *ZIc*UTdO{(*'4O+s)E,$QrY#A?;kCVK0u=`` nRtW%t:ZL%.5y(KV% Ĺ8;qE=Aς&-9ܑ|*Coj'Mp-Q 75T $rVN?\l@82Ď G0DIw֨ UY23VU* .SƘ`hkT[B/HV\mi0C3{}~TfCGՑzJeb,"p臏2Jv D]?4avAWM269rsa( A^: ukqd>V\vw>/kscA}淩X"564]}\Q:G xz N8Xmؽ/N#lZ>6P/ ƙ0QLNcu!ώBE|_X\¡a i0FWj!xZ/s))˛z}+VW3%k*kwU}&8g$sAʫjI n1Kϯu;G"qW Zh 'fOH"7Qť0( O\s~cCjtSW\8 -n(vq ò eZ+*u#GyG0 Zw:Ƶh1C$x w@TxZ"jBd s O==gun7T="(/vmx+ol"4Brc(0x.}Zd:HB{1?0̰o 0xv>(!\ӹLü -MɕbRհ:..%< 3aj\J<jP&G`FKL/j lb-M7EhaZG%`+4$ӊ.$x6RжEHvN?,@~YjEqWu2{RS傊2BˉxQzcdy#/)g8n$wt޶xC֧ 8aiq0Rkn޶N.C~V:sؐTdس@S iշ0L31wD)O-Q<쯓$:JrydFd)=1$VO&[ȉ2_`\CRڥogk?,C4F4ϖjw:k Uwӟ U |:f¶x!# L{!5[8| `dp rV;Z:E g"_Ӝlȵ\m($3uyP]9_ސ|쵈AVPnxnHlF>_f0Z@=F)L4~=FlkNB Lg"cgL>!(~mA+~w'ga[v kш%n[@Cr39 s`{V=!HVX7Av2%qZ_>*fdMaՋ?SE4@]rPB܉46{)8/\$K:5cֆ=U߽ / ,gmfbhւf e|*!س*?;MĻlGYKJa'';y!C ]֨k aOzu`A3_Z{+~Rp\)iy R+&@5ՈD,;V8٥A.o\]-$T`b"R+ʁx(u)GGFߘzif|.@GfMǹ/r%ʊ vՊyo$ڳ]'=TL_bLsS86 #³IKJ*lv"=_M҇ӓh$sOux܀*mѐ}! 14r`8Q1EuRbmIxBE7B[ )OM @!\egv&+/h ('nyPc;>Dy%A*cyhxfAy{n}dmFNv vbf^aZG53n. vAG5RƻQbb~ )>#@2يN:Hk!B̙RiD}첞 zӼ0ne}{%XBea` gv-e69k8::iOgz`3nJ/,ϟʳև5p?[훢:IԻ=ܖz`#9Q,1 (@baVwϖ$*7 V>{Aft<3&3C.vO *K.GiR}( ͜HDި৤O Rtؓ֋bHӍ)}QȽBx@+ȍ9pB (AXF]jlҚ;%rΊ 3ɩ7}8%m-nj8jw]3l@MeXѶ| ßCaF}5y+R0sO8Sn=|^]?)>9pm&^mEB'\-TM7$)\K3$ڼMDFzR͠~K']bo\koz0mYU QIqZ!c<ΧJ9Lks\VQh}j\8=h,(}52w @Y5ݬp*Ŏ|QwԔA ~\gTRTvoI5fI0\ }(`[̦v.4*f?YI)uTlRr织>6Z\AA^1Fhm];W-al]rP#˪@q9a*͙yA!e&8{&0-rԬTyc5 ܡ&X${|N-g"-K'!Ļ2hȱ3l5κ }I~FbGcR~X;CY-.5_I8ϑȂV6m8;CJ%a˳Q 6$M)lX)ۨ(i_(NAp$Vuˠ[vdX+Q W$i$3M06H|3$Б/z`oeDtKSaha~\ 'i{y`γzGB|#mo ,BhZz ˼w; *tOTmbTiv:ZD " 1dkg5vP:.+i] ۺ9eE`n`Y4aZoc"P0kt3ACZz;:%ң:5g*ңHRS>śU'ovf 3uū'C!92;WyiWVE!=yiQҴ)p?1z#R#!Kt#Mʚ ıFTa+&}J5pc桝Rb& [깇 @Y@ Y<<a(UV\ȍ܍?0(Vx#IiP gvDWX3w_170`eG'=a*̹rl7NME?/Z),hJkdO]|[-QGw7> ߉5SO`צ_K&-ΛR~V+6< L-|9 +RX8y[!).@r2޹Cu]*gIC(8CZc"AoY>;y F8yÁq)9f ;If~b wK1G!v ν!'yEysȕ5Bam򛐥R>`/vYZŎ[ԅ,I7β8Sxv8b]T/䜟@ uU{ǘ|KՔzA]S$cz?o7GXCȔJ頃yۛWeX?۲ңǓE>(?m'6zwsunV M"N@ s2`Z^e{|lmMi(E=ޛb9t/8\懋7~:=9 exFzJS ʰYK8{OVH7ۚxG+F% y;QL`+7TxV!Ld dRzFE3wL+%7a5"|̮19}(fDoq;n2"C)4|(1m4 K֏r@@RͯAǴJm}a*m `,sⱵBwQ{[SoB҆k04ױ8-h"*fG-%'3mh0Wߞ1zOС}_@_a2B@1}ޭA9POVp>aCN((9>n\mhr ɖiF4G>yɆٸ^0: BMQ\32}neC>+[%= PBByK/Z&xffҫgߣhGF## ZO6{p{z:u2'L8&6#9¦`Kt w`IJ ܛ])5A./GxL`^ڀl0*ܵ7uu7!.E~AO Rֿi{(UqgE|7,2ʛV q8>N2KQaZo㖪0ONHlZ܎c=&!yoG-] ? vY{|2ZW{iQQw(&N",͑ ֫ ʪ!6( +8{Wr'S借JDnPo ,=e u#o $s#u1|0L<ˈR[o<@dތ 1l-X)[଀K,63Goa$Ut[{ق3M/"W?A^U~W?\vp^tĂx>5uE+r$ ̦8m[h}NY !`Ad whܔ֛JZ`BHV6Fm9PK Wʷ2)UJiӅcSu|ylp@&qZYfH(5Xq0ŜQwNL^vk 2|?:weyI:mfs2#CHX/s%f~ |=lch0 "v$T (0J+3_á#` &b j~SE`q;=$_td/vd‘w6,Xa+$\ /xAh Pr?`Ⱥo-2 9*0ؔٱGVȁ$*T3!v<;hm{毊,U.0hRB@4agtz 9­y$E!VוW$1{wj~ _dz~u]!Sp@1O͝<5͔=N!geߜL3C-q& ӓOKƠdb؊&,-kap>t6>gż#Ѽwxjq(d!"THyc ?~T0m?[si{<%h}o=H((^^Gi@P1 4 |ι˴iL.ApUNkyU|"!w3NT f EBW_ج",ˡ10nc`H줲r=幯ƒvh n7уwN3r5=G4R i=ֺ1cZF'nBtATQUzPIc|' =ӇO>HV+< m0#? (k=aTL )UtfAu,ʇ>RGOZ壅ȝn oT}K<ehWƯJ_gEw؁l{J+QɅQk2ZWw@;y3&h14(pUi}AӅ#8xq:'B1qgGB4jeVɕw.3҃ 4W[l^?/ᮃ$$&3+ͧ<:vrEc I|Y/Ț,1J)Wϵm] g!;>pvQŗJ&Q1\|N;[scڄ7LЮPB|N,AnwcNذÍyO d='=l@:J@ Ch]4CI#YE ~R/lpLX,RPa1&R@YĦ΀奶XJ3 "w{xwf/}-y2#rn}7U%6KLlFro黢ײLfò:b6@5##lJ6&0=aW~*K{J0sB%}%Fϱ;PS̒l>0jx*ՆKuL.oIUnmTƹխ9TJW? ^xc,ǫ {)|,F#Ѻ=j56C:?0Ov_X༯]^?&M*U@St )4o?Dޖ&C^B nhS$Y5έs #s.61=> 4jKn@;_wmPW rq ~4%h _EPm{K*F _$%U`[7tC\ @B m!lj.hjθaڭU H,UM*Ǎ(BRIQq!_d4}룁/O.~jҼI`"=`y  6$ʷºS_^2HEy|^oK1&iJ4^47kC'4 9%*W :274Q*8GeޝNa7$̄4A H*|֏k3ۛG8k0Rs(8k5 bxx9s] j ЏGD٩_P6\#Tn!eqUjw<[K7vgLx<'=Z Ӏ*p`7*޲s#H ,4cEtCa۸bQ,I DžߙP*iflD_g/66^EɅp@@Wo5+Ocs?44ina;qQ.$+ev_E!B-$yzpȸ8^5ХAdB ].`>'6ZǮ7d2 r$sY2vU0Ȕ?!@L7`0O,^$'^JeZq䰭l jrf E;b«Mmlɬ;V52VYxZ*#HLY&ݓ]4sD0,N}6WT@рEd$,d܏YN:Z-,ٞ+la{ӌX' P3 !qQS ^c+/L:z&ʛ=Wx>F.Dt֜iB5cK07>⠕tzzovd$jx{D"[,^tYp-h 8 $dz̋Ʋ%􈌉ԻGO,ͪqJ5_Z콖HNa=|u7?Cw]U;V\0 ~έ TX+6Rz<>%U6~jk1bu <;-3;#lcS4&h8/l|##xm{@P&EP'Xm:t"3\ Tz q)ʜ{ȖP-,%aϺ%z)sٜ)( Rn_{1وq]Ci~7 ?h&D[/1ZQQ.z"q΋zfdx ]VZ*s>o%YΝEzh0}k"ID@Um,jer5O >EiF 0G p8S5ǿ56.dMtdQqV.erȏC[9Tsv^[VkT`(lۆ5(!6J7 UMDTQo\Ywc8K=(VMdL&@.09\!oWWu`Ļ]zh`_k &^dB &MQ~t7 'Y.(GmH.lg\O~'0*Q&I=M꿵;܅'Ru~* z8 ,⭔UC`5ʟr &gk'Si7K pA; XB!=Wfegڹso)l${`6Pƹ0da8v,3[mOE yHkAaxeN6 =a׷M\t $y'ˤ.+&V[ȥW\5@B󱇣 W}j9Ѻmn:Yu%“Nv/Ҵ1} zkQ/=Nd-$W }\h#QO-ϒ,"յGj{?GRB+uƺC {ďmgvn* NV71)_GޤjˍԐzs-R}ϕJ4 }8p~BD<#B|?jKJ_rDCD]d_ps<lJJ̊ghH(ln)eukRcog1(HTD7'SDI, |>1cHyOHc oYGb .dgſfoq`%0Hh#dd6KH{R7'6suGJ&VGum"A)ڰI65T5Q_踓R6lrwXN0^4Rhd9z-hާ)pi]cK |!K5y/!k?)\kU1vx/p]p}8{ Z~ r%FdHo+S\4v-}NG&9O-w%^Sx1A3Sd#9cCDI,ȡj7XB]x췰O*NۢhԣK&U4ӱBB~_HS (/Ԏ̱$zDR `mRD7ٖisxXj*BBL"6ɼVJ0vASvfPyu5IB#)uk"S̰h{ ?a%_m*GJݗD>Qe#Jk@0B$~TgTl>` xC#qC\]ry-SՓӮ|!9㲒D/f]ISerUM(7SsOW}L~c 0jt&0WLЫ Ji_t4`QL#nWL3juU09--q/4IO |XxIFP3\xlBDp &-sC2!<$OO¬x8C'" 9XhSTg ShjP|Y-X[إF~,xBSkT^n7FmN\^P K| B; C _7ӈ;[z~uD28(NzbX6+"N9@)ߎsG(#c¨Y/Ҫ/HP Dê7`(l@ 'ck3OI ?Jc3o2NeOƧ^nwp";c Gr4nzFs5|䇶=0>~~j WGxث8@lwZj>q9%\:rS9~?Ed-Q"z~` ?1('>emXs2cײ(8WPӒӴ-^$FX^DOlʜǸZ} "͈O+|R퇧H<λryA}R#.v-%*(cƴB`fzpŤy)~YWW EfY;#Æ'X_ HS ~) 8empgߑӈ05@xTBu'eTy1eSpP &[@6+6P -"X/qZn6ؔB0(*.Ծ/׃4@ C,ـa V%>!ENmSJ$Þݣ]8 !o:\zfrp,oZNN1K󅱧XgK-"J&)BSu"QN?_oQ5zTz}q€as,X܁֕[1#n񐤆v?C/3Mj7YMh nE$V)B#؋ϩ%ÃH-a4zG%mSa sr._*p;bRr;qݱvt(z{5r {R[Y"cAYRZ⯙@Uͺ "IAqx9;`DŽ~8H *?}w8[+ҥQ2 ]Kx3R+ƊU=/۞&`|5l%w ̈Ƭ Uh:u~=^"! ^j爛yoci759`5^,hs9$eĔqUnsDHF,FO˼qX%9: *p}DPN[foϣC޿Ć/m b#.:)onaS2gʦllD~$+!e.f*< вg>]/Eu>1"pT:󑠣t%j*Om͙I￈CE AQF@z.7M:?l:4Xɑ΄6ҋXcՌ۱8{!;ʛl+%%e/Wɟ4jtlėeZaTB}= e5'IX{d+_0 } ( A`uɿ8*3@,!D}i3J!cP*vS bz׳#쪈^ǵ1a @UNEhBNy6ڲhql3 ǜy_q2UdRRg|S3s[G;^!d0Q>?{Zr:OC/"O weLqD3|$՛Mrc9,~y~a2>" U00!=d'eJ[ܴMg8/jmvr}z wuGzryN̗,28NF[^0dE$UK? }bgKVw^NCZ6YFroWnb(^qgl7XXZzl 9amձTpGPE8(볘Z* 3n9X5¦VA6ݥ^',hIGy%i'@f9!*:ehRFպqbx_uֿYZ2zoY,#DJg(8!1GyIsw/FHa#]+6[PkI9sj;yacl@J! >QgO6NHG-!^Zqdk!TϓC;ElBs[pE*'$:Pssh `^'?F"ޡ_1U?F0W#%rgvt="0[0EF.Tx4ގs+nа#!,k+3tMm fY]ﻏ^|iAhxKx&QнUabo7g=:d;fN}e_r_z1vLhML<ʩ0اl R4*wb6Ugd،`5S-:Mf+>ܔH`h寫':&`羖* l3ŭ]Rۋ fetp߇Ey) ^Rym5*~B PN+2[6ԁ;ҭ4YwtVBLחg@"ٍS O at*7B#ڵhx]ٺF*w3Y w7"J0{CHϚ6+vaTubCUqb{}W%j6rC$,>]=ğ`]% p*;B) |FӒnx. ?@k/,:xJ[U[e ed_rS74dg{^ꉰk@E:<&l *Xl寳?SMz=bʱ*7o2[6.spv+&0ǚAS~=AvOfC&fKmp¥t}ÏU.) 0YCE~(uډw -|-ܷ K0?G"5qPb5}Jm3Bp֭u"!kgzg^,$P ɳ9yGk0/~ #Q_&_@\ľ]8w6DK_RPi"dܛP68?PU YU\OGnZ0): 0{y ަ]WI"Ё)È5}w#a4 CA,JW{lƒ 5v!34f>XGJ/fZ>hIiBΏ4YVyny(*͏=h>`Ө~̲N>3 h2xsR|4OC1jK M4*-;FV. cjAJ$RǚMEtt'4E tRRmgO# _ ?#H @AFr93R~\~zPdz7NlckAכ)vsA^jD&oلDl)G ,4dɮ>%=FoaI 6=II85EQ,E:Vc oe>PUKnX,l*jC檱>W;0)v)R/\?Pڃ݁G҂Z.t| #Cn}.m6$i6bF٣Y g_突K.afs%$&\2V,cϝ{ VקdP*}(臥}* Cj=-ʪh ͦ)l'ո+1IqDxEnf0|b]2V#ؗvepyWB:@1oj7_NK]cǍ?oԢ],Zx@y.p\8~“6&F%[ ;h+PjkOk'$h圶ya$P l'¹ti*(ϛvo:`CT|A@/lS,yv{>[U j@j z%ঢ়u~D-C-q=ru]ĉŇʘ?EAm G6""G2hCMЕBsh0[F1k<d.05-^&:)|uw\_Uz8",ɏ /pk 6Ĩ)w&'G˖ORelV7:g"<10cE T/f7ECM3wTx|@UJY7wn%k!47w< S1IY` %81 gcE+A{8*,|B>[F ,5en̚ l<;߇}{v<\/q6,egh 8[ZtN:c?9]9) |D\kHݜ3)-H*Pavr *)&QdAC̬Sv+]#؛ O%sH2*Ef-?BLW]<1,XfRVj OKod2 ޓ+r^Z`k996s5I/F~8DUä6)sQ bP #5 TtuqRAO.A gp4㛲Wx4H ;ē2K'-Q4ȏ4ZwD&Re(zGxJ]rc6+Oe!BQ8bVuk0rzTI6|ʚrRCn'A]0^hK*#Ҟo-Ǹd“JK7WV;z3酚kpW5 aE>j*%B}R-M|3Y:ÿAϘWb֐&ִK`t"h fڛb?A^; *z +i13~T`^APdVkCFL9v?"'"˧N7lw=vH{7/"2lIʟU<_qLC7[y佚;.t).nlS&Y?TY]d%#9'@&<ݠ 9aH7wR+QEI?諝{6+J4KDޜԡ|f!w%sQ,okvUm%1)0ֻ`߅h/&ӧc.7Ui^ Kli *Js ?+F/!š!A6u@4Dfi?蝷]ag[E gr0mC]v*xF-Z]h[|ަ1fzv"7Һ0͈]XDrFIb { Q,W,,{"%ƶn^zyr+}g,r [b|HL$O@RIS T|#.ǢPJnFY)D-gkLg ({$Y,KbR9d[[6JaP\Z;@*&sE[vD(9:.^9Fȣaۣ)kނbK=2Hs.Soj$G˪V/&dB@aC:!%=QFkG[g7#WXkb#=#W S|f_%-XkqMʥ"demO'UVvµu{._5!,Ky r=t%H!I_9XP~B ZiNNv%ly7GؿoJ1Ca<-pK kK$@곬FvitKz܈oªF`p9Y4_ȚeUZGP5:J/ / ^R?t}|\;6,2*U$Bq=DNuCU?ԳN+(RHtJR_UaS:Ich0 "%rfh%wErUhxozl s Y;c,Lb/U?`w#$oџrCȪϴ)х> {S0bԦv1ρ|[σsYi%nnQxgLÀlhb>"HRm^Fel>ܹ8~9+M$_roXj-AJlNgxRa)O.> @3@͌#\ŗQ\OтV'|^iX|D: ' g(1& .@Rj0b`C3xȷ 9K6>C˧}w KMy1 _z)܃Z|F]^o`_ \)J yDZ>L%}봰ήMRiYʅv/<c["2 ޗ`f.;Cy$ؗDbKZ`ͅb^ {H:Ty A`UWgM!BCPغCFPcufi. w*]” |?}ᎀRb5V՟sޝl.u{dac4ÆP=u}@m>(ns&{T4"#&&}|ȍ$Lܬ eߍ~`]`Sr1DӖq:%ees6IhІ)tʾ )!z"v[J"4_fFiuH P4* D㘢l A&w0lف}6ЍHM ⅰZE CG Y^*9cb~vqpښk(]%gȦX1-TżGbGE)`"{|gRRrgO4Vď ޜi9:<܇C:֙0)w ˗@e*Z9i>P8 :4RPI1?]ʎ,W*cIuȪ)NAZחPzdg]91Jo9iYkt@/X}!<*=L̻{-i2YƉnb!Rn6GAO>N2$Z:_[ZQ8jrf6_ܧ|3Otۏ09? k?[5dZCEI0=&BSN L DYwzp1}GfyAao-MU61a>(Mq r4e'Sݼ0[,Gr-ꞡU"y3\ɰ%Ls̻!e3 <ТmgQ: l t^-R{M`и T|[r ϰdȍW_s@\7ds7{J &B?$*{w s $*P4/޼P41/f5hw%gRL 5kRSJQn~gP)["٧,S" e%ENߨɕW[G?c|H"/xUk>ͧg3 5?=2ONn"OP@ S.%>tN'*sKA^;1v^O$&JŘPYDXdߊ`9Ԫč!H->'deSB]@xi+-/dQeb ?2ay`wit~;0u)^w| g 9Xsм_܇]q9O_Bn8j(8_uBG(Ԣfw c,`XUY||)@i8==G^-<{8Ba{ʄ<"h(<-BžB͉-L ʅbF'2wCrZb@泸`— @]94/w֯RS>W~(v5njA~[C)I!oIbH:7Fx%k tA]m8?F(fWg,LwN??zd.24:GOalU>TղGcQiު . ]*BdnaDX삑h)z !/{eZ yt`o%Ɋ̮s˻~:m\B%. R~We/\ByŠt- gTmt@zSLa⾿'H,uhY RJ!*fXX ]Y;O.By<BlH;6s,xi+iyM>興l~"q:Ac m@U+yF@Yp (ZNF,Z<{TF$yׂ^~jwEΦG$ѾT&ySh gv09q[T"EBVe*uԠCUbtѹ3ZLkKmMJ>:3ǻNcvw}ƝkS&VfB;KXr90Ty](83$R>p1nIOfR҉Ām)Zeq".+ߋF&Oc(cئxh ,v֣o{D 'Ayޔ]z|Yah$n"#yܸ:Y&nY[\O\ċɲЋ3nHYrд+?aQFL[ŒKl&ׯZ4,pv$]B`_%iXe/fO$}JFa P/ZQS7!!೹J`Qn ½Qyt!s&mnt}ҖhӗW4o΃}>z\p$awt׊gmKbr F}O,+ Njl@Zj% } Uy}M!ZfRd`/ٵ6C󵻵ctnao&^?i[[A4>ikz8v?(rdqGVclQ Hov:Uׯ( ύ"蓓}xq J"$P%T*<ȟ:O(ݶ% X<B"ƋedDt KsՕ;0_MS8U\t97؆XMX)Jk"[ 5EczM4F^u-uM<]c͸ܡ9A[a)ķ2t!͹dD NE,` >+.C@mn!:UZ.#7N9`: Y.2OXt$G1O5 W,?4yOBs%+ad3IwQZdKަl-hp)F!q.NQs4J03+qyYk"cV/QbbҼwJ ^o콥 V Yut*ٓZFq~UDfL{G7ZZe^_~Q |t6B¢$uJB|k\g-`q瘗K/C9b|H;{ axzoetiG 1I#I|th;?2WQ='oL: S$9[;9ly tpDuiLnuLӼo[cvwBUͽ/02\7;8m^տi|c"_9wh,ADQ3wo;iPUH?} Ğ_]l?䖲]ҐK=UvA{$XhJh_aZ}!l17'-Z6۵ż~K  T/Tap rϒ}yjJɜ ( -~x\{'$[[EӞL>8&짜CǗcԕglDwRG|5" h!#a(pwE 4 %Z,&ͫv s?DqJMɚs:.Zw[FK:X'a b,4߱wca!]i >Mdd.CX5p0V2%9i#[,q@/wy-җw{7:õ[c*MO0L>)QU1@"wuN*V#ŁmB }1%E|!8CMT.rtdHx4}F%7̶h eZ5On-Uk'OEsX*_#]tلG?d.t |.!\ŇP|Kssr;98~:=U,+!$NMpumN.-Њ>'o`)h@qwր~ꭓoD̶} MOXU?ܢqpܣbK@ã4_=CdSrl`[R#Z;*h^u @[cák/&ߜdj+Cu$9&Ab|L&[sC*ܭDmvxe,#KXV7KB8Z ͷg@1K-kp6v'E#rr`/J1beI\gvt$K^ r&龪$4E#.уFEypPT+=~ J Ynf拫Iv-kKx;͈foy^LUL`Gv읂B_Z|9Iaaw`pI q>rtijy}C;B/^a'Ɨ{cMH\F.A^CQsHQ%g4o<(iIK뙟XMk "ai˕]a|k5+p6žjD;ۈwO:n[-[|h-7,J||ƕ?zVtԺZ4]|N@ve ѮޚњyzKս@*k=NPf+SF]:=j)XIiGiX츴GP_Bt(>ԸDVyD(d0)71WpPoC N.-a%Cun0]^s"hgų|OL<3 yfGϞ.v M&K0z"Vӂm%n|T +b:L,ʜ+%D#xJE2Rb\iRke1'(ɮvbZA\^0/Wz;&M>z>U=Xݱ2)cB⃒8Ζ#6-j#djPxD+ߧ' U+AǤl8Ć/Xiqv0NZ u0pߑ4BGT,~&=jd{*V}߿B,UOgf,=s^Be>e-B.&Yr-ˋm jl;ɇO'Gc\@",irM&STsu|Hj`#y6Ao/#q UUoWaW//@K1ZdJw7"o=!PlA4e.u8/cr۫iґj/ku7b{ h=3a*sWPPVLlЕez&y>}Yaa7x]ٟ&zh*Э`%!BdJրw<IIB{^*lFGEaOy!pv]~qNg@A䯕:l`\dPl++W:Nk Q?C̫mRzm/E'JHE)$@δt*SSl. ɠz#SgS87!2@G'v^o(>@11O+!,-ddd88 N͗#]Y. R\xb l`GLU҆7X<=VCz(%f͢InV0lDˢofs)|(%#fTRWc0!kgd0]1PnFlBQaŕ0?~8ֺ}"^_Kˆi>Ř'mD%Kxz!Ԥ5(9Nw<(7/Ψ[)o63yI#O _!f֏7'\9u141P $'^h>Roau֔\Ӕif0a)F0|OjWV4Lӹ{,A[Vm㫧V;x׏ZʄZ lmjLjQ6aa(Y#\tP^-Ǩ1ڏ4~IUC. p|0}=-1U+IyG~oδ!c5UESuV`}OLJ{ǬJ6qUI ˯kK=yx=(\il 89fE96 ^(af sAf DoLe FáE3W=@0%n M^!kwD-)d/W㒣r?ݏkw% D56t+٣c(lU dN;.V)lX/ ;2\"P h<⿘彁`o7#|ւεs07_xYD-c%gj0_JG慫J<ĥJ@bZ6,?>ga)Ѵ}aHUښ?Z]R?\n'2jndwKyj-"grc5OIb)t :^P['o~p9~X4+AB>KܘD qۨyf++v7QSe1!rEhȫnQiv-R.< Gឍ㗧MpC7m|v%nQ*gt_@&NA[6y&:ЄjE 3 n!PuM}_A&fzqp\d3ei(Yz2M3=zn f\-V_|$؞$mѮ#I?Rr>;k A0L晭 w.ȗS#:̢"کŒg)yc:",$<1k^AnnYĂV_XҌ:R O|]2tѰYޥb( Zxl2V:Ed-)ūa lXKTӎtIߪtp(@tsvK!4C!Qa=詟'f<%98F؞FNp5.ھ j- z*><㘃| 2_+D9L{&o,+;ض>`Hѽr(PUsI!CZH);pnart&|$fL\YQKvX+W'|~4cow ,/5b餵nYsM2\ln1ѡ@~]=&sl 9~F2SM aFrBզߞА_,C>mq:kF58 ^#{yuG?"2/#n@kyI7 lqS-Ee2=Ѫw~mrITVNqgnV.Uy*{guJQLW^ٌlnǰf$y:F(}|.X^>o|KX H+PpDQ3F>IiGyxAtJ4l5!ƴ"-MZkw^{-h%9h䏆PY8*+<#0hV8"ٹEnOۧ T(K`˹R1-_Sj(z%hP q7p:M5Sф@,0Y+Ţ$L[ܼXg9n}Zo407n T1qr_h],'dBP.i챔>5ZQӡ@'?m*Yk]jbYDL̰5 [|Es;WQjrkYUh *eq,!d w m>`hv6Ǽ"#6 ڌb"L[zj[el== QBWa B.s,[?m[RQ} Qe{V")Ĕ„̊c^#P$YNzySD5eTU79UL*K~ci]팄zvB' a}+ {ݝ ]S9V & 9?_] N4 }7 MRHN?TF\tݴEFF&y34]?oG9uCz$_]/1[_9>$9)Z ҅%-4Gl>#@ |^+Y&]ԧkK1;P-‚ՙ%%j0p\`_~3jAs-EX0N䣟0Pt>`A>1ȥۛDKkKc?7\ш$3[+1cnmbT"48Oc_l 22c!mև_5>FeJAs>Jm \4a~޿8缢L=~//37*;)(a韛JGV5i .^3K_Y#uc:|QmX!|c,ܐ I9 RnNtT4-YYIcmz+ 1'6@ A {1,7_s[Ĭ?o SaJEay踓dLG7N.LjvZ5 D'$#(x'$tקEjnG!-E I鮽f = oF.X8"0+ op6ŀo18 N l=ڧTE4=A`jZ 9+ ˄aTS t@ő%)7?{C0z 1#ϻ6Jqk:X ' < Zv~ore</O>w ~:#k"בŖP"+ʺ6(H~F;>;j|Q\>av`A1 m:f$DEbѵȘT7r!6Za4YӛHĮ0c20wM~D$*u#͵nVHH܂3 d/ݚ5l>znb>"hJf,oM#Ǭs-#"}49lMsҏD^noe0$đ$MT{QeϝWI a6[s"g2=3=y=ݵȯś~8j_z](gTj`@'->o0u#Ƞw$V˚%L%h/VZr)zTկ1\ǓMr(3$̑WCmQgx?<=SU|=w`'"_\{gAvƼ ѴN}]6v8medG\pL` Wq!XVӊ>Eo+@*bHs$[ף2 qM~ :U^[YlwE!~DiGLk'#C刧UfD!?t0M;{Wԟ&?rJ%ɸ{r'&Erh eGI:2L7tM2 Y!L{,j5 Ka"jX2/ucO"-*>x<2]{cZ`qF۳gK#;!@psLP2DEtH|sOe f-h vOD%z]*7xwdcTe)}i漇ɨQ@a8G q`@LLT"B\46IX]2nw&cJkgD7curY0c4Jԅ4+n-/4& Zށ'~߀ɤICd!~:Dl2PM!JKOhch`qOJ!n'sJ%Wګ&qTYG(ڏ&6O<2}3GqZq) a5H֊w\G@Lf}Y1˪y K3nU@h6>kSFa^Nzбn[ոSΰhl-q[RTc0`2>C>fN?kRI栛+[KztQa ,C[eMFDRvPcHx3] ۸-/ol"!P'^ ߈4'9zygA\z]bKK׈ yc ^z5gOKl}&ԯ&XaCA*]J7ы NWБw@ܟXxI^_V]i!{[ W4uYpfQL2J7s^!n*CTגeCH3)Yk[H/KPX1]bB' }P))<0'l{[ Pt<ito&#Ƹ@rd|vQ%_A62fu6Qu3t"fErvJW,giP(*Uv~e ĎY}9:Q dMٍ$SοC:PZyOz =]DN ,l$Y[((G D]>rbHj!ht+نY4aiZ]%QTYd9Ê$vnj0EARAxCt[g;Я^ݠb ȡ)QF[qS9{xLCr knT VC`[VC1ՠpp6Ub\CxIYp/Z_$~_Cw){ڮg˜X50-~SDr 7MPފ? AahҒiaث.bf$f~lGZ<—_8 ukJ4Zsi9crU4LZA$/΄IDTTu2y*h6$% .,y,ѭ,u?NvsWW)00fh{{bSP0x)Y؁|ҽ ?^(DbZ ԱOc[>m(J%ŊspH+ж2'ʁhE;s[VJ+?#%އR` @k,G멠96I'dUć3;}CCP gJlv)#)_j/?ŃVer&ݦbD$uJDN[!#  s4Dyswǭ@D&L35E0 X7ݞG52ZRsNȋ3 [JFI~T%$ZuxXqaG CT8o[rWKOzpΊ/: J8?#uZ@弆 4ϵSIJJ{mkcc,Fŕ㕭d*_HK`g# vlSs+M?M”qPV.id5~%li .4فb}`$ YX V%`R$?N[dgʾ# :ϗ#Äb@>{ Ŗ iD/ Sp2rNڄTI=ˠ?1r8I G!N<4-\iߵjMo!6m`igi(&BŌhogWIPtE/aHUrz&9. Ȼ|`p*zPk(\X0j|0¶ǫh.%W[.j9 W,N]NMuAnuV ,̏ҽ )Aމ+ѽh3dMh@QՐlBk5€4G9o7g8,LcܧDvH ˣxxsY[C`)qDj$n3h^.Ӥ ڔp( 4GL3x5:H+j{1xZZ%2P'͓=ah[w. >G O 2A=f87 VE1k(k]· c6Fs%e ~ 4WA$hpFYkiz yZqR0*E6n]a^ɘUL) #"(Dž;}F˳(E_%.x=%QۉU_// f99@a6jױfVX? 0 7FF}(uQN9Ri3K1uXmX,&F&Fӓ&е:VT4`C1E ukRƨbO_tƨ00`CXZfERkDމ.Ia@K4!d }Y3^2YSQC޳) _<`HH߶G p*!B%hO?C3-RB|XVt wq 9n~7fʓ/0sdU ۋ187zi(t_C+NSvCM(.yQ q%⮢#l @#1^ p?,Ž,ѽ7P145hgۺ.raf%^6}8'爺vO-2!볡CL fqM޴@`;cu3ʇIU2q`Бbi++#P =ԲsJvT@rg4Dj8ۑt[m7&4$Q Rm:S͍t݇sb</@Hɠ-?|p'C.ۜӚOᚾ 50xˆYżY#x,a ;^8&p@i׺S* 0$ ͿUAGĥ ҷ: Z" >[7.92fb5fo}VgpaX.'5/$΃B?/; `20v(uvHF0}iKFO㩔@c%tl&%?y$_H>(Z{筚Q5!3NZbg@C2|O8bo^ +Q4* @Xqw0!IIv*ETV0P!x0ml 9ӨNhGo E \¯>3ȳ+ ZXf-p?S"s*%wOWzOZiϥ_qlIqpvf캬7:6 k1n"B5߆6NhL{#K 'px;٘}&9>_Z#NkD{ah?H`h[fJmnV FSo%&߮XfcVdas_г`vZT3cB]trCYtƽXc6-uRu5rcł; H}eTw7hs~4F7[VɏΆzEOŽ#+5Ivu\uU=K9W9V+iε~1p!@F+$n`WGK5ex^b7+gԘ2݌.~ȱ~Q6T6lE\^ģNl#Ձ"AUFB Z>:xgj=vyUwk-b*(E0D^d9b[j ג*ul)xӶ)2!Ƶb~)]RܸLc%hMX%dpyp1KN_V m-1K*{Wp˗o7hz)a^MС$O7(D4Yoa'Nr _'iBiʏmC\oAytMمdom/=-ީ|C& 7h?ګ`I*d&Tތ%G_R;1'x-9 HfY &*uG( I9o8fIm,kb9\Bɬ$B n& o:PR4L 3ևF&/9,By"g gh'YLSG}&\D@Tr,ȊvG*ϥMr)CLy%# Xӂ.lx.[̉xh0-qK.-=6S )Br+&sЋ&v~.\Лq|Ȅ\Qb8dZPzBNpRBPuҖbGjrLg[ht{TxPbq"iencᇳy>&O0-.UοU1z]פ}BT+sDFO%eov~$ >fap!yz)ZE@=)jfF;W)5I~żW_`G\DfYbdpЌ %I,+jŽ8OښF^!@@(" ,2f3nt3wSǏ[}%* 0AMvZTFZGs +1O=Vj\gP'T(ڝCd?wGl`Jj{,9tn Qg_HB9F9,Ѱ; U?ptɨ  }X?k ѐ]䧱lS_Sg[)^)ApY :16Fw-`c~l#41Ke@Wo X_ni9+AIY7)5Ţ4NgoɛA݂A'NP w 0#5$Y} &{l<O Τ?]w|_1kf*TdA/rJ0g`?A X#F9g_Q9#'iqe9Y>' {96@hao97(B|*;-6'l*[2 Zw~?$ I%4b7E_E,d&r;DEd/]x+b|:5JKmhi-uiF gicVƭ#!w 7~Ii_cZf`SN_3eS6s6)HlrfѵY:ER误hba\g]q*b_h0Ԋ%yNA-I1p%-L"`<9dԌG;'V,]Yj^@yTކ7.p41)ɉ@.e'>Fp(#g6Xi bśa>ZNj:"ƲK xi%PHKhd};p2'r ]CI 4,ȷ醷cRfV|wm`ڍ? K;:?Xg?So q5cq/L;*3L5fLela-O">r<dOn(OV̑2"j|İN."Zz g+_ |2Nh:+CjgJ]jA|{MI%KfkY1%sw>:ML)bք]I(* Cg8!gΟr٪,,a24hwxILE|h%`Em|_/~mM.5s"!5p"՞䮧F6}&EkIeA^U؞IKs@^s'Vvעŭ1=3i}wV;z* ?멨\w?Wȥ7"ØڧbYѵJacdf1~ٜl7̂ʔ0`[ka1P:o٤216գT!$Hտ=H=>ѿ!bG~m"%1%̗G[wo/s%E Е\{f` H"kw1FE4JJ f ltǴ# L96PݘPabm w5u>: |>k9D4o)LP)F4ʋ~}Z/I24j|Ɉσ1isr8wZ`iJ쬻gqdNuЖ2}$" Q?\jlA*DAíA&LFIuɭ7FHcX#H$.9Nmվxy~~}Fb Fٕܽ~| ' wXRe#߹ƯխƝ ȥfKc|ϖ16SLۗjKTyv`AzUBw6±ecN7YdȽ#f {帩W9){ \t*d Xc͔ljG*wsչսyM'8ϼ4dC?ڋBqRX'1\m5um*5E4muƕ:<1˧ YZdnZI6AU!Z?K[a"m43豆 "qE$ݫy`:"劻Kq.:㩘LZpPP>G?34<7ͧ1塸հnXIDŽp$$DrHebznn 8 战"<8q 㱒ijXcCvRrUZxx]XX &WX ՎQ,_͔NO5[C9/ž_u@tT4._:Wk~hm*g3v䀿Uy0*d`2 = )p%7=(5ΔSvoZl>,Ԩǚm͐B;XzԳ Q]<̈fݗ&C mVtZafڗA{U TG@DtAL ډדJDб:Y!_X҂;ϹKd`bո?!;|vmjVW 0%3Ykzyu `j&#Ix|jdߴlr)~~5Y@-m, @}% 6AsxP}1Gک%DZ%QmeX]XY:C5(YJzinĨ3%^7h>Z u*9pЏcnlF\W1w$ rTCۆ^u`5[PaK^e,maSa>-'ۦ7Lk߷U7 subNW215YzboFG.7gEjtd<[ NIױ'o44}~K";J\^x ~\AO(Sc վ´+/|g{lR0"O_y&IyE9Ӊ -#@VLh׻^O#ax/Q9} GkK" h=pz;ueLX@}Q<:-i_|M6rG_+[79_),qY2;v38L7Lڍ5pz̥;b1(S0JiГhe*^v4&f%F,MFv:PLuBp%'e2 @DJ{p*9P )Ux"P Wm[= ic̐`5r=Xnׅbn֤): e9`)&.CD@0J NYUӷ$x4W׀C AwhZ=wyU cI ;Xz'mR7 >O78J|vb|qV) OiI4M]n}o/[z( .YbJº1Agm#&lA@`""e,w4[i0yt@ڬsn2uG7F!w h V ]ݝ[z'nl܁Q]!׽yM\ʋ= zutMQDy֡Q?X܄ouCC}5h%혒J;GͦV5%K)w~∮:ώGPtA"NיEӻ` (ark*>2A6Wz s/NlDS%A//b5 D8J^) c203 $^!>FN%y NwJ@t[Re ?_צ Fq`m\m>׆~'R4}+xMNc e!;٢M'$aN|^/+~ttn[z5un=~ Y=0.E>%gs(X!AwTI=}Dn8`jQl) ^]*DDž!s_q-B__!P RЯep]J'ڮ Nb^h*wM:>^+kp&l7@FlG~px eR\ZΚ| fB:tˏ.vΝh),.Oܚ ]F4Jk M@5|1XTMl_\7׉ S"%QT5O (w*ۛm6,Gv8Juʉ}Wc} 0 s:!ftBd\!**|fDeuVJݏt]!h@I<3.UƄ@ytq$LIzىνc1KJCoY4"ھC OpG!_oK|[嶸8,#(wHT_$~| NCo Gi4@8ߧ6J^ }9 %?@ދ\2YN,BR[[콈[މQwTZa.^FLF-eZK ^%lcQFS*&zy>$t7(/nt-_I$R[[+>p' ?*ݓ:3L@嚫_ys)} _ؕIܹ]MCאGO$d5j4~tSj Uo0’r-PU@B ޛ6Y3Kiˠ Bn|HEihhm>˙sT_fp*g1£؞Z5_ĘȰw,‘Ȋe7q D߿yM`(Gۢ5Z6sv^m:o|4lw0J;v7ǜ=&]eO&I^ۜhW1A43DyI z$}%ҽ +ezXV4 @ #U'V>#MUڛͬ;@DG@_m3oFpHAZ{r'Lxv _Ɨф(~!L0~ [=*ɝ'I Hl ʝYd҂$nrs卩aU4]x80||1~iuD}nE3c8/.g@2X3.qoUKءss`x%v0k`[G!w/~p:/bn/dy~woD._1GCW]E谏jM[M&;74<3 ztĝsC8Ъӽ%NgZ =bFi ܭ'P/:epFuFh MC]c th B̆ 2 ,a,V"PX5񝴝7;ܝd&aYd+[ʳ#.QyhoBN3Ӕ=IɈG(Biި̤X 2N&8 N?<C;R*i&E 0 (8[Ri @a}yb;\(k, BN"zf#Q}҄)af ahM,akH_ʂZ;2j)v)?VjaY id+$5鴂|ע69^0al.\܃iH4KO;fEnC"exɨM|+rё;=iL*PֱtBZ/xm_S!#*6bV`xG[?#5dj$<*6(qQߏO{ƢIZIb`uWTQz<&FPj)A/6b$~\/"C^ Y0%e&hZCʽM#*z-'zI^%/GZh(lPI)}H8ޡtk#isnH.:CUaABmWd{6e=(@ua3XDŽQ8KRi{>nn% ;P#HnF,1VG3]FPIX]meJP WˎiT%pg༌ lGk c__K?LbO4m6r2 r!oХk^^WVG"|7do#Ƥ ìh-t̰{KP6Ym羴7!Lp(<ȯf<{2$EEh&sQ.1cЂ Re3sT[~Mxlz35MinA1VӵQcS;5ד:@Zだ~PIE#zF{;=b6!搟몕+TnQOcCu|VqF$M td#_YiSOt!(ŸS+ct_M6oÅbo q0]V~_wko yvcio['rr L@~-:hjt ̻1ߚv^KT4LE†OugoO9spm'ֵrlt-u~)oR{DQG fVz76 ~ڛ 8 紤QD@]09C˗'VnF9̚J M<\%}*(WQ#ćf| FtA!F 03;"?'O[Z r4, Gquuh,}*j0!"sseMk%n/VxG0V%GhbӛLFe/PD棊yXvwV ĴVZYt¶Jqš;ܔ"he*B7G>ho0 rKL""L%ֳݵ I8]v> ySуSQct4YO3uF |Y820p J0|՚ ua")hAF X*G ͥnhp5ߋPI(|A';[#`OLE,+hbYIR~r>^ucө&@U1(&bzφ IDSGiD5lϮZtz{>#^go{ \XEWvh7NMk#>y66|neC͊xH8%tH|/6u݋h\W<=Mb )ëΓ܀LE2=r2C l,DaG!#</ucĄ%5&"n+RX(BNb//Ё/m& o<2Q⣥T.0|@>rf A7Og{وb@MJ@ 05B#7v7DH31]xJ &Ȱ}:Q }YsR1&.Ι ,3? NP4)1`nde4l&%H7&Jͭ qey+L͎ABL進"Nia-4rWeL?#ZRɴȵ[ x,[*1| bmhW3VAC9QB\VX ۪FDй '-{^={K!KfP4rTrtwbø}<ǃ=U65 /{UlEqgٚ߂^B[k{.hG"۰%P p*baK=b@|56 @ObBl }8rsVqBg6 #b%j|݉\FnU65f'M w?jK3ُKuqiḰ֥! /s͓[&xZo~2~S-ePi؅B;}o!m KhAOu|>VݱHG U$ fV{=%[fC`)AyGkp \\ZbP}K< ~X#d՗ONwG7#u\P$t/$d?9NATn;ߜ= E{u^*DG}Ӣ|\r/?rh#5at}P ћ|Fn >Ky1N"1|FfY A+jg7}]ytaƘ'Iɴ'mǀbymK(f(14JъHDFUr|QaZ K4}G[l9.$xD ن[]@٢N-> ,69n=V|3fDVL a,DZ }g`[ϓ4Bs;½&K4,MEvPKwGκA$٧!-k-cBN]}+4'4Ǯ[lDUٳ=:ռIm:&as 0Ʀ lP+%g5 %t6-֨cq7K҄\U4}@HdSVwb1mi*vsZQkT[̧P]%?\G@'Lfl:7?3П$W<!mnxPJ_1T'?5$UރSfOJU,B}+bS%4|PH`> {7'}@[ 2ڈ/;,pm:rgolb6$VrKf7>֙͹N^ݼ>PXѥegWee{wCçJD8#pmw&j^!~,Ӌ8EJc8ϋLLz/ Tx0"Sҵ;0+_.YO767Vdt |q6bA )t3Ȅ8XKave\8J/\x.9[,LC+>6Ҹ ~qZJiliRAmr f֨Ȗ+~Et>Jp؝ƶL V=< v-ҺQ&ZOX"}ةecRː3m)C}-o愳*ز'kEYx2t+]&-˨*nmsG<)pEkbjDxReonn&0w孅,1"W,A2ܡqG僘1v!~ 3Zk>90^ нC)fM,YH8GuQdݑK,6 ZzL- ׳ u]is/69[HVflգcCN(:E%\|r2E7r{hv}DAPB{JWOXkY*Zf3"^/D(Hbμ `(|-YcbZ vT<ܑ I <ֿ/IŶ;}0=IYy)$*{jv gp l˥+XTe"̜Ȟfz^Hr VFjuMH]ܔ=rE.y^ LHO1imڂ!޵?ˌ4|9{>(ZU3YZNݙk_ 3d.?+"@U\y*[2t=ɮKNy-8gK۱vvk~_%Z)^giָǸzD0/8eBExnY咞[5oG"*glQpgSRxvo<ѮD̪ A,v 8AQ]3r!0u~ Uۨ*'_]>7Z3T=Қv~H^!ZsFkE!S&5"v!c^|()rvZG*f¯B>anABp2f[~qEFX& i&KZt{h#Ó_oZ꜄*}kR[1h&ik/֨anp7lNwo g\ 9e̕ "e ]gYkr ]„ &yc5@sz(=@Hy'ΠBs.22_'Pk}{pF]/ʂ⭠pԮLM܀Y4 :bykhhoNk̮QNVig>g?Z4ݹD/ڟ .6 `JU(.8ˉLLnP$k(35<:5/ C/^v7L X8Οq̺s]h`Ѕ``lKha8j!؉fF+H~5<[Ub'-(t;"6q2A+ RNubJ34_x| Jc:r*H2OOg4t?cla*Q'o"=\LA1[ "ό6J1F6@R.saF5<+(ʺbSغf) $+.b|L%a ~2y H~kMh{Z~Wgh]MF` ~(:vd jI/ [=˒V31[qz)W) kT: JGeرOB}c;P_ży7ےfHe2J-OE 2"̱I;XJ/?q58 {0.];Y_¤*FqQawR.R-ޘDˢ #Ξ=$3 ]&G&  puYdNh[%դB/d"JڸU4Ēw@$2v^ncYCBa"UA*ȃ.ZIUY { + )Ym"ٜO-f7KBx ?X~Yԥ){vhXZ}Rl(*-r.Iz]%V,^4("] Q?d i1HK#@q:-d<2DZ]}sh2p*_i:߸K$01$Y/žGDƊf"KQ—a[ݎbx9oP#CjbNyHՎf`6!e| (HFJ޵!Qʏe1nqൃgļ޻ ժ&5iE ^,CɫBU _FpLwK??y$nӄcRb)fuN<F7w'anT4ɹL&0(i OɆxH+&T MG:Vհt.Gr6PezڑL4oj4N4 S [i@AwPѺʀ)RsTkĺvo:n ?A{!̀\d21"jpsa{ |snAdnn벭M~*xLMA+WvV3)tr[)=5xrXNbZI"(/Rށ# ߩEҞ(ϳj4ZyC8])-|8+Ho *>.cGT%(F:{_8>jO/(dyۺRB9wDNL03rVJ+-= a5Aif^0 O̠W5ƥO3\jp*Gjm|g4'͂;KS~$8moxu(py3*%V15#+>{uBP`9[o5R_2&VRDEՒ[pEu6< C~>EALUcYz-Pk/+Gj?N- <9z 8 j7apP+ϙ>/RnUsÜ<~ ;i*x]kyilr~zjcw>LQ#\ 6P37熣q, LOK)Hx6 `I~,UK..睦^bF K#"dn4V)/ W^wиnnE)tv u",uC.zUTMq6l Kka$ ~&\@?'g'S:$ 1}j/Wl2%ܶ.M8hʞ -VUD@|=XSfb(!Z 05=;,VuKrRfab]B%:>b ܢ,.*=Vaʯ3^=mn24gڃ}5lU(}&q<ڄDlQMbV^_ReK+"2党@{)0"̶wHC`ֻG8+-&Sc!dF G'emB[9[~6|Țwxdk^%n=at˅Z'y-s \o'o`Oܫ@0>Nş2'R R {r .)MQ_k$9Eao`ޭgʥ(v Xt=' ;F)5 N]2 gF*@ȋ$(\0Epf!zm ۟bJ!(`*!sTZwGycþ rGAIsA̻&z$NBh54m8%,Er 1Υ_>9 :hIr$&*3p2J{ŀMv}­ +N,|Rt9Cm"J̹d p\x &kk_8Ϟ=Hb6KϮ1X, eႌLmC$sd,bEʍ<ݙs|fDTM\l|- 1#@*',O_$FGt* @ iM,jޟPIu~Q`[[o:|tbhNbn80-W|W7bƪY6+=^ԓ)~S$& eHQ(A/Ru(; wdT7^4u[>3]m#0gϠ1rh2݂ͱ )S`Ty}dD<>ngAIG3EBֽWZ}@4]'? 3tG3k-?=HLL7R?MYF/6$Ŕ`U-Yoh2'υcW:[77tZ9"yg?rܐRmkzǗHG‹jI0 #Y:rIvŖB>i`EZ7g7n+ #Wg GE8YhI!`_Q7VgjXnH?`{airVm)Elr9 0 Hu83Cw73ģ&bPuHgzե@czZ^8퍍#~]!󣷒QE t5l##GqiD=;3cYZ[b^7>oi&oJ]f zNU!=ZFD?u%X+,)>/,B4ig%Z!X}%3Ll TkOW<$2 YsqUߩcv9`F۬M0"RTM7%CݫH嬬R4+Kg$laLK!j~("5ny}.*2%H tҺ":JFM.YL=(&`~ZǟGmOV "Si;Lk- 2$j~9. kCXZ6uF MqAqC!Ş ~?eNy;G{CDzϚ'K&?BЮc l bGWzUjf6 Ҳ #})t^`2tz?ِOYsد}H~$N5Sdʣ!5sK*L-D$HPM7󢙞e=` Q|Mï8wXCD<-(dQԼ' FZp+8^nQ!DahpUxIJ9As(R{Y-iWE!)= aOJA@n ׳ Mc"JEd9si;12T'ԊM>7D{j\ !?[ٲU{`3.[Lɗ1S!]Y.7Djn?$;Yc^BD2CvsX,ҢݙR ۖ+^iߚǫؗ9P9H~%nVn:q>tiR;%ݪ%\+n0M˼tll$K<ώC4K)j`q˶i6q ()Cǧn~1VlڠIͫt/VEPʣڲlJ?V`⠆엗(YX0^07 wWm0}m&k|R2g\xiҪ $[,eU?[+^yĖ貕y ³AzfdG+=yvDLԾ7ƪM2BK ҃O9Ӱ_,ĊK@9!(ΆW^]LR/՚P=3pEPZq6 zե 5]R`<> ;e}W=]bF=w?[vpW,h@Ked%h&tn-.S_Fw!+/]4cJ+Xb1Ql*1/ wL `#EghSi 1c f½ա` b ;dq0$rv 4!>U\b~g[CXZ(SYSS9lG'JL& e]$-bT)ut n)mѢF@u*ε# if GJ@c2LY+6csz5 <!FEF},3Qw cUnCbd`Rc?ClZ%-@os~H\qʰ ,1V#Jx ońߙ \w[k"-t _B :q}XfT .;tOwOLC:SMfV3J4V\G$A_D~ 9yDZItKZfqjj9p¡g+^ȋ|άUz׾0Ԯk>r!(q&U At7.`7O ['6+΂*6wr/XhjHBKS#WGWjg4R` $`mH6?*V+nFf*ú.]pֳ6 &#fhx\rJ#}ϕz<r4[Vb4xEPL{,(欑 7Krq*ni 0maO1$m 8c:[ gEէc ?[ 24ɦAXHRt|ݙ08HL%).j"NR֠WW@7Ul]mK@e$RɕdyT8co^Q6cO.t1UN\xʝtm6UPVN;>bnA9gy-3@, KyFYr]]|h=a5UXXp EHCbyF<5H![I BPbgྶ e 7I7Tn'tj){оUks$鍛yyzx ,cTONJbjة*LI,-Y:!T3x<R+OzIm!{/@ ˦_\rwГ Q^,5i 3.B ;6]A\JAAfM9G "ހ$QaT?߱1 (q+l׵5et̃g6f!->倧D|OfE V8k F]J-$׽f 1UXo[FRj>rM5f: 2IK2^&:ؖlX7 ,Nr>Aז9 va!]:7$uAuzt_Ʀ>)LQ-r "]Vf)*D.o+oW"JXOy8t\4-q? rNv$TJ( D^ҨCw>]>+LSvs[:Qx琰<"C}Z$Q{lUUكJO~y%M568t'S#9O#ljȹB33~[''QŒ_3"g'd-ԡT >T2GQ$B8+O lS۸FX8.t/y'N;,&3S (iry}lϺA~W>Ef,Uf}ѾN=b@N*{@KBCK6'xtjTo?h) :DKqn< )ObUQb\KX[Gߓj4uD _"aBA5:8l?",!ph-mtMm̏w3%ѕH:.tsSBބUӰF/QF^edުeYbhSHgpmeZnt-]w Bŭ_2/!4K&̛+=[7JTrS'J#rr v]g$a6{fS*ܩc:n 9~{+zo"(4xo//Ɋq k07Z)լ r} 4#~(|X{f%ÏA͢fSdBWss0@iPYb׮j$ &;^"zzzQҫSh 1DH!9`,CY>/d<&j-h;΢$x+1Yb_ߴW [`> @,RIե%I߳hI8@n\-ԃ+ƷXKErk}'Xz?IYDt7 M R<# {)>}(:o.ּpM*5  傶j@Ьsiq+˓;&-ݜmFTMy yq93cXqz}m3t ֹͲJZzv>FoL^HKYVoVvDb@A MOùsUgS:UL\^'Jۢ0fbk$rМY"[t;` ?7N<9vnHxjonr<>f:¼>hS4mF)M$`c 2Ι?k7G@r{0e o#@G\Pk=y,%kVz`QD1,ėp`Ol6NsI(銝DVfs}T6 ;gaCk2Q@=Nn;F}+.̩O<|C!%26i*Xl6t Nph@;9Rz?'zXo2yu#+jj/cLq ½,6(z] 6PF`7_rtI(&"q$86C/sѢNG2 5&h}~CN:\{EP9x6tŒLŨ*F͕8Y17Zý2-I0{!q1HA ٕ0Z{ڽ(~? >;Oq) (; &^ƕJdž*n&Y%!:(_)b|+]nZزmiÅ9Ԝ?eӽlD-Xx ퟞ4 9ݔiO[ eWN(&A[z(h/+|'8I޲T֎:55`QQ1)GwpF20lkH'cbe[`*}.GQ,gO.`V^ *$c.Cu4Ϝbsbn?+ԌF/Ɣ@"%v=j45fha~sC[\VόKBqVQ?ZIh5 * M"J!BZ(LSH0h$$XrI\մߥ&8??iUȷ4JRͿQIO ԇYDgUzþ[A1eō V _Oi"C{cw*>kP.z`SEwT=lfEĿZzMm$I '5<0~H]=,D(|@]dzOpʵ1p~gXy{/|g:x`LACT@=cvA("kmuEը"J O0r2 T6͐ )FOC#b'tmnw F2|WipR^S_~ҡˀ7n}h&X,qgI!e/|P P2NF9rSBL@$Fg;JW3C{7]0=1b#> c(Wa*0Zik9a oնI^g3f`^<+ ȣӻ~f&D!}%0=+hbػQ#/+ӆC)3-aʯ]zI"_ P?h:j}h×z AɊDIidc¯'! Fc` sFA1zr_D}d#ڴ/EQap,g_')fI?(F3F 9/BPUAApdn 2] č&=(DBH*Nal-~ oN"RU]9˓P^3p4 =PiWzIuxLu,ʳXg~لUA6*22轋h 3Z(齌Y@~xz+ך\xNaBߏu|HC=@ؙpJ:[[$5dF0.HNj Ho6+2b[MDnf)ra"_Q 8P^Kpjx&w_[XBBbdd &$ $HY.N4-bmmYcŃZ]c&5\ zk4~CyUc!2}4q&;&7o*<ٺ E7m`˕yF$GjɈ3ٴFUOv]?KoG E)O3rny¼뺔 ħ64TzG_C:ކxzŘ4hXiVyF/S%r,r{ 0ܑY7 YkF#b]C!Asȉb}8-#9$lsej~e ߬u&*Ύr3O77rAM!DoNj%J}ʮU/J%j!ZΏ"ӫ J ) ˆ}X>YLòNr ޲`H⟘< VU@~a0ke*{VCЉ. :C7}z Nh](C3\Q}h aNPӕ1m"ܭKY}ULX^彯odD2 83dcw1ȣ< XA:~|j`u? pd2ȺRIuvwS>[ip񤊀mGZKgBSQR=H{v $xuu.$c;ܤ|FUNʳ#P1b~OnR֨9.6S@/_hGlz ِg274lTjVows۬5moV6n9 ^2@xB Sj D.;2pnR+Qh 1=@T0W|6\2uv,Ke&lƪ ,W/S`% %y<|LǞO"tF}%`5Ρ[1,ڍTƾJU;-K_pRn\iB)xԇ`Nɇ U&!4 4btV5$5Y~ ·(|IІݵI+/#>fDUC܁sG9XT@\u8ˆ Eg^nc*Bfn BZ80!,;2g3DK_ r_)$w~ $yPHa_h'.k=qZ1`Zo -Y gf< !Zer)zzeoyhF&vJtFaCPͤTAx(dNl)-r0ĐcmC6~NA7sfJ1~;Dڅ$V4س[6p$~vmҔa5d!M*rΆ/?ҼVQRV uF' y8BmD<}k,o1VD]#P>vrHl nHL=Vsp:Vnk.3Oy g<ϼٞV@V s(m8xZ+X!/t>օ<@;Mk:$]{#@𢭅l9iUG";)8-Xeл pNqA 2L6SE",|Ti p1MI*:k/,tzTEMF|ٿ3|(7kvXmS46FH08 RpnߏMdw\okvB:}Tv{ryY]6x\?,a@v7 ̈́ubi뒒6m$ť>blRjlw, #-13 v&6%\p}Eʪ$?c,)F**˴[?З7 NQVbip~ǽӐTÅʫ5"=7b^C`Fr"jw?&PBKG- m]g,0BQH)`Q&c߼kq}Z sLsY()%JirF碖iimCk +pȐ1Lk)T,.R-?r-Qwqo'^A->#i )gba!E!'P9p;"6Kt\qs3xXZ  wh1Wו]z!Nhr0jE4f(ȹjF);;pMٍM\lJt߹<APhM½9~\-+J -Amz/8[?@W{]-z6tdfӡW쓆e].U*5ΐ⿝_6,&ĢCsW%CND{kD78'ylq๋)R}Hrp\,vlOkICzզ%EXAN9X ~Z?wx-|!t3#qy0\UylnPsS tAnaˣ(N7",ZɺAE5@r7۟=;(*!PkKc4IX7op _!%OkVNzY/P- ,ҺP&GmAwQl,|H6"9l u ,gG7E߲24AlMB=3jWÿyes٩rJ$#IQ3,?9'7Ø|0/>-o,H1[3{k1sV7%*$S6p - J .UN)wObV)ޚVCϹG*L1ACȓLUۈʹNS+5}5A aTqA9؂hA%\wdRٺĪ`ק̶HIk9%FB-mG5!̳V%qNy6R2V^f;\UgMvd `~#i` rvT0B<+!$ytѼEuw,,\n2J8 ·lc]Gz 홓oNhSsvrWZhB.e`65 SsnęH/Z3M9a z^Q]Ta >F  rCb6׀{ <CwV'W&~MyBZ4ہRq|fWV;r P7M0stB5F QR'"Rij׏'p9HVU%2e.>5?+/ܯL2#7i HĪbX]V*/!A.iVHI #F;+9ي9K x?7܈(f@Z%r+IFq Y1{9tg'^};jTט9By[۪vT-Z5`s`Lv֦ByV* x0ߏ&P]>Nul"dx]w~v'@yoz]A0"+aO0^$"pG#7e~.=ۇ*@̲iȠe$beqAD.\ݥ4w]єW>$78>!;c5ƶC6|xZYժ?v̀uVx+MQHtOs 6-+9Sdp$q6DBZŒyyWq \_a[erV]`hUАg &riUHzk=`r)W7fL"vlEԒU,Q${6;À7HЌKP u;ynOA`6*s|jaV&?}[.'qr3bb}L fTfµAſW i$ @;+ 4GqB1\J&^8*p$ѸX?nGcaP=ߎtnb#fzC"~!`Q(dzL\Pٸ{nтI'fU7vG{GE$l/{(.tCoؖoc3o+>g"·CCf0 Z,D\2Sت_W\H)n8)LO'm$ġ<#9gcGu7Xro@B,6kwLY㢚Kv\ ZhXdC۳9ۼnAha/ꂋE{Z,;Vx{TO Z=֎k\?\fIPCVCNX-^ro |m u B֩k"z퀆HR'8XeV v?9W m$7&Zۦºi up]uɢu8g+7íBT@n =ʑ`G2NymNG1-J Hc۱MsS@70\ ݲoh g)hni-D{w>X,VNU_ Ie$BWT\nj>ݐSe;<; d )DfK:GWg6eГ;; ށNʏfC>n :u#J#vFgZEL?RqFkl=t=CRaJzZՎx2kـ) 7oPe=-ߣ&ڧiSח/Y_Qvěf:|RB3<'QwOWw3l;mRJ9&#ƗyUi/mCO"Iet ԏ3_/LF[:FPsDa`H25ʀRyī~ lL^ Kw:5U ǭ,16zۆf{fg)Q7㎙,$7 C6!8Zxs)Rm!\gˊpEc}{VJё4z[8ߜ㗨 d0\˦As2%&oJl-M+v})CH+d饾,Tܙ̧< `Ì[ ryCTyDRՁl OgSG HWgXuqĚ1P.?\ZZt@ @ y:",.x 2rhG+ hmeUakr?ypzE5y?TC.7v&9ƈ O)G^Z1Ҥ-h&G6tڛAxvzӽ &}Òʨ'!!1;W?{=. L{%r!>JzrWIR>NFE0yOUxWfoKs-'5G&(&sd> N>l-b./͝xuypu̡};0t")wQdTpY%H0׍JW?Οg GW҃8Cn-lbD(Sѐ3.$WlrSx]Kp>Mҿxq6^n%}֪?_:w5IZYp BK0G,XRKMt#K8gEv0{_~pZYb?h9owu ~JsHohm""x- $)ӹ_ cxI]/$A7)L| nkmM3J~aؿX=r莮t/rIjlC#gN 9E |^nEI.ꇌNH ŅD7F6Mł ;&sg%z,#=d}X3{RCI/ȿABo Zy:Q/kdEmzXZ#lۻ?%-;eI&ġC70Y )I[G{c Ha Y<YX/[ 8fIYĴ? vDD)Rɤ yo^dS⮧T<։J\+tV{ύ^sv$[\'-e0 dXj#;Fwم9RS|2Ff<7I#zk9M 2BgT/N(Dg (n"wI =tr+X35Zi"]S@*&dHɂ /h4ƛoH[a!'//bysevCFYHŠo|#UP%Xh+7YFv-\7rC'Ę0x[N$/G2 s&"=GH A;jءj#zu J[>p^79`W_hz ބڒgFe+i=nn]a#3W "zd `:e&jk@Ƿ|( vN"U1Q* 5\]@dW>>ȇX`G٦evA\v^xܦ9/b;@a'eQ‰4l~s&YZ Sl([w~N((غ@nVL*)zńt 'Ȥ't&^ݬN&!-Ns b;vI08YY_ /@Rrvtmi*4^.21% EP5БF<˙pCOlݻQRAH{< Q*U3ĥ78&Z4x9 G=~:|pg=+-95k _sc=Z+G#xP1\"6E9 Ԭ.ԝ5 1ŸU"Q㚱@pGyV!A |eN sXvCS^6&aSոy6[6&Yww5&~QB* ߯uGe}9g_, ܉Xҝkh;tm\,I@㊨')Q0:[P FN&/sL =iܝJI؜NCJz?TxHǔd" ,U tW|oN@EY26 eOD·bfޣ mٜ2v > Qyvr#pyzEx $YqRb5L CZ_B)/Q %D&(luTm81(d>CǷ ~ϳ}! ;!_jɁ6^h@c"siZP ~&|Uj] b&ErO[v|BD]jKhP8Cc@]*vNh MpeHN-MU}2Rk[L^%Lj8_;fx84HNO"Ha fW'rw Y=F4[ =Ȥ6 a|V^u2[*aCfCmmËk=2%<٣_8l"P2Mpj9lְTɭ NTuYMCL r[µGl@+>B*wH =_OWB @=ÚdD5/PcOo&7ډa܂>+W?%'둬Y5+~ч=Ew?T)kHU1XԷtW@|`/d"NŐ9X]b] Yu#"p _N1Fi1kBH_k9)2jIpl q_쪾Ln '6Mi8ٞW|+*67%5e K9;j磣so{D;^ݙnP;)$:NkwƛBD(%q-{iBive#;zd$KNFy Aԫ9<R: Q&{ T/O4?xgKvf4Y+jIl"e_$y(>tf"ӣXz=\jGqKڗ|!UoqϨsUW]#byJ.BvPM2D&-[ 0Dd@;RQbcnr==}YқX5#u83밷硒J([ 6g]Jpd+D~A*UFU~4sF5**x]a!ܭ 35Y\o&gU )T XppZjj4W)3ϵiЭ?P6XxF59H%W>$,(oGMz,l$?\3T[#HQv%nSt6bS!.6s|6ҪU]NrѽYX{mXȱp@/`7Nu朘qYϘp<^=f'iX7'ԓ46;k]I2.H|Su.@T33/9:X ߎ} fTò3F:'9k &?/Zi(Gu-{#@Dhdd5RuOۈByŴQ!i?~򍧻9h[*ݬ\VT['CZbߜ΅oqVTh%;mQ剂Ёs]1k{@faDŽ8x=@ͥ3\?M>TK#٨gV1G\73B1կN{ NCv4SC+֯-"^Q-g vLU,d ס $d$@.,r)1(md׬9zNpbڒhR `Wee~B_EϾ2cz!!@6XO~jl`A~.gHlv/[rg'T0m1YLz5:Fa^_O=),L9[f1)yXbZŇ__C=(iRCI^̅+JXhn13ף)U(* ,{VI+uf5CŻA-I}튄~J2Fo!GeOZ2oU r .ެoW4 G ov*|-HK򕺶>Y?f%_=+uITI急N lZdzTl_&~'L\^wGӄvߜԳ)\}Zl-3$iZl̏M 4Пk+P^>Tt | ܥ~ 4$ǻE>;?` nr0(7ogkU6 XS_ :x;<.5'lTu)D)|w-.A^[:!APҪ#,?,ܯA`K/E;ۊZ)Z} ڙ|.KˏDQMكn8$SS=j.wxU~QY_D s k zߋpճ S ̟׬$JnJu Y`TfIm%B;86؉>-rKcg+[13AEqCm(`y {c?ܽۓ ,O+%A<x!an~D|'n#lJc08WM]0"cm%nRh^xO9 &xG;_˪9']ͥLB+KvC~ǸnYY)7ぜucfMj 񳮼`h .%!¦aqZ2g+ƭ|Pj35 Xj$զJǺŶRHlffhD`8O/~bZm^qyalbU Tok. HC`wC`ffҁ$ ,)ŕ,ޱ08q_M{;\f3'm3._+j I1cPAng#TJOE, uOJ!@aC\tfxmp8IV?QYDF(j oyG1!POㅓWxO:qLB9e'+[n_k` 5&YNy.7dY+7%٨e,xzԢ+BQZu~ UOy5`?|t&'Lu4rf?O}BNKi8X×r/#UzЀnӾ?X~<֭'NC 8Ui}[ޚ3$}P?J1(o OmʷaP3:Jğݣ5"6[~crue`ø :nqA_} m mtuSY%C}?-Iy20C(HIT>tݜb^R8\ă>;0W֡q- =0IqRzThb: g捠eOQ=uv>K! Ԋ%Fw܅cFQK6W<Oo$i҈::a$CoT yJm  iuKyIo>#9b~ƿ Xe|$ *[R[>Aa_x8#AjRiQ42 K#ukgfdA)L$Q1xWۨwjѥ;eDu!Ζ_>h)goЉ6􊑧lSF\"F0?!(F?sTR={inz2 `' ze{@=w!7ƍu{AgQ6U@%>5".H`uQou 6boIg\g5x&htGubI &,na- T5~TB-瑴696"V}.\VH=`\#zb?`_sd{lxj3f)5Phe5|ʢ/ܠOZJpC[fg0f"ѝH Q!5ME^e:"<$ݟH׃1t E >mD("oe*Rm]2t@h8_ɮ@pVOe0 L $;m''3\u~6֕ VN,&5]OoKhm82 R+n"y}[L9+ nwаp?O-YF~Һ ^gx6>VYv@o/ጕٷZTN[>L֒ }}wk:,ęŸwqwDvRX%5`9ylyAS^0⫱.ƳSu3qD8ubdV@?CIXN'OKoףE*@uZ5U֤}`!w=WzSžq﫴E3u1>YɕZ pcޭPl Vق p.؛QfH4Km$ȼ,,ϸA~Thq2 18=}ۤĤf*מ)vxc~ lXSwgu<l'pܢIR.9 6ưr#bm_5!0r xGߏ囗G_>ELCڹI?98܏_̒0^i "@"^}wB/Gdh: )P# ʐ6pHv2^m^4B)SC0`s`P=JMyڹG N]گID(w?w%U1ÊS3-HI\!gJ"֘I-(͊P)Bg(b=!f) MR<#YrV:T z'bEmMA=2,yYjc uD9:8YIl XY=N85a힟1ƒ¢\CG;7+TfcB:WM &}rrDv ]V/ $e{]O-{㋛8o[(W꽮uJVY={"?iO@ Dh>aԘ T '|5/&>2=:s\.f/ebh%@g $>!RI N7κu I:?6W3Fԏh8Yؼz.Al O :ڠ\ ufIDգwO+t7<4sk KڛFQ:DIbB6d%}S/sd8}4j%a&!Ƿ3˺#{v2}cq!J[dC"]b0~DCпkJt"DvA>]9$j_ {W4 j6I"dS)kozjʵ#$ry~5Q^7֘!!N Y9d`~=MhBOS6zhVQ;3p#WCQ!&o s>Z%B(r(ٚ(& ;D-B÷Y2#K7ƚ]Ӂ1Qn{4'6|m v̞ڍOeϨC3w]ISsj8Z0Fy)O|MKE\kr経@v.}!>ƚDbaP>*-t4*}uV)J_NO=883`޶?6z$?bP.N:JWЂҷQ7cӉ|%C MbA­:Wc̙l- ۉt@{ΊE&iUV"sɏ :&݄و=<u\DT"{X[פZ@jxV/.B ej'euJ7#19~pUeֿU9z5^qP9Ob+<(rOWXN>˭})DXZ Wt?-/Qw;CQ[}csA,x]m ՆrLhMe^?Yeϗ~ ''l/p%aN'#5keL:xIlnhtC,Qyw77\yXڷR*ns̚RRRqOi_'!e0pDnjʄM!67bj b6U`*+{ 97Tk~"RZ~?P,R'!nn N 5a!d{u8x\&@0 X.lޖoޖnkWM&,~ˠۖW8-|EegW1$ܜ@4<膯xQ]|,NZV)s"5W'^\|>s,H)g02''D*DVzVQ]ylءڥyKo&k=-80MSye$)?;ٝHvN23PS"O~q[ve0oA כ$RD 4S=ר4lKƥ";h%ѥTΌ(NX9# eT/!ejkޢ^vkG N BeE}䨓4Vxu3wG>ٓ.h[*8wv4rRdJnHey+Qχ3FDD!9ȦҌ_ 8l_ƗƓW.iƺ}z]Z+ZۣT#lK1MUe[mEJ Jfp #Q gl_umE@_Ri`iy2('+ !BpaoV>N<@S]_¾疱[5*/d:9H,[9wAR)HQl+ZNS`VEAC[j[yݘ?# a2d\2{nAA2xn mpڡآ?JM”Fm@|쵓(GJ 4 ( Ϙ4tlDLUϐk ,zjh0}ͻ sAi_ bcC'@/t SA]|xMx4N6 UЋdIs*Lg"(6kGQ57 CR>Hy2JǕ73KMV&s ՛cT 8NnR-5mv2az׎zz#'v\؀rM V=\ %#=@+tz:Wdc_$\x%&Yy8xr}?CUR )Uri fM^^XC8F^B+.,umu9Lh ~K>Gsمȏ(dq6]]C /4 vx6LWaҍU{xU"k֤o5Y3xdX?-wY͢rj -xD@pG]*\345JFm`ΑN[R̽%ų('c*(Ɂ}(Ne@1(זauQfRYG'J+7H'-CֺIh},_U-ရlS&;|>OQNmbBxCzBCǢQ|Ɓ=4JXpLYrN7'8cCp7HFbTw Ȏz .̶GW?O熹i1Ê:{2U*d F[}뀆#etZBIxQGΔO-[=zlPWB +C=hE@{AصGtMr^To^Hl9$y@DrF;[$.jՂ@9W/"|Yý#+c% _ãƔ8ja$(]8 ndx.k7V.*5}5u` o#&1N (٭.̍iE ?uq%"rZ;eeEfYA8:9!YUvhVQ9%TUT܁~3n_K`KɼXQ*0o?0@||Dj-Qf=5*8FonqN}ot Lןt#nqr.h,<1tEJ )znd/`/s_?@E t8vvWJ\8k9Ff0!G-]u!S|* 7z:n(-zT6~ L|-7->K\&LgJ&Z &`8RbB)Xr5o?!sh~·ٱQŤo}b#~?/+Љ-ݸ<'NqonCPctsqD<t1=-x~d2x[b@ϦkvnϩՅ:VGlI۞4+,+d,lGcqEHEb9{ITӗWeauό@~i3Z/LȶH)q Xҷ+*@sV.p6I*t}V`p vt7-C%Kb&u0#Mόl&'x6MXWH7!VpRtBQv`4.k3qz+e2SN#۳PIQL{Lw:LG=ȝ[y5cZpQi;pdrX (%JY_0 tGo& z 6mڶ"&%ާY'8 ]M[^M*eI0#zSYEI͈ZO\Tw%,8d+v]4.+J:Pg ?CU)fʦӛ$fHnB'Ope*&suX85s gv" [A➹FeΆ MVN(CR5{ +=r\}#tȅScPGt6)I-YˑC``T"BU#u!YvW{]/> HꡐHx\2pJU5\컛I,3g1e~;b3ERB$s\n*ʧߣN*rKӠJQ[{(i 3Ru*ߍ>sEcj;?ӱ'Haa0{.YrU+jVjO'7,c"n:%tlOD5)?ÜA)J\t%3'%gJKʽ|9iD"XFlօ5Fϭ'r)-;ön6nE1h*MpA~՝̡QGE鴠Ӏ-F㐀Y($,V0r F eLq&\Y|Vo_4;^2*c%j p=2>ɠĜBbr yO )n( uq݌`ER_eK̖rtH:f`JXl0tY~Ħ5976ĚfYloYp/ 0D3Zv yyӮJ!o7V647$b]=NbӚlL&-*^$kWGMDH^q05yh]Sq)T~ ,?0h[F4ߞƫ 6w#~;k>$3d6ki@䁜qW[ =2u1i<"U5q7gL@`8?ȅS~FFQeb:qiYp,"zب_GAtWYIjx4"|ka _Ѳfi=o;PZcZRW WAB^%[lXX†Tj${ ސ5/:?cZe4n`tKQaD'm';J` aeAA$u1B:"+c@c)e ]IZIs_bWP{ӋYx40"-?tpQk@uR,\ mq4i$HYbLRNÙwFW͸WͺmoQARG8N=`anxd;i;#.x=OXrڴtrd);.&q6":MOJ]g`#+fEjāh|T١׺ 5w$HjΊ\U)& ͔mR3lcllvQx%n4u(V7J)l`"y|u9dF3צ fo^[>c4ƿ@CڞS#[Q%ʨYx/ܸw/5lhss#S/Xa_VPHM}iL'n#N9Ctht*9#luPUiD rJg'0UIIn*<5J<4V7`^A'4 љ*e:Ga)r$} V{0]РbvNW՜2ke~4>T cnE{PY9S-DͽdɪˉC6r/QRꃄٔ[MFC^%{{e|}ZL E\2.}w) ?GT%=c5Lq絓n*L ob-e.eb}"ćM{+6C4v#aD2C~ Taٶ[oqS^ĴZظuWc8fV':@od}A~4Gwi>KE%"PN7Q)#Mx2Hf!-@g̓rK8S󉵣,f6'Cx8m-eg%[UDYƔ1n-[|(uorD TԚ"9pwGVC(|^T<>3׾27!u҅dcWVx߄ا/ X$[j: 6 ^[/nE!,r-%S6eS֊2[rE$?ߑtƄKꛧd.6P*|e57n$<816Y)Li^5U7]<_?=Ž"c5B+P_QdoG!Aʐ.8}IdP+[|՝q]H'Ǧl1RIOd" bOkpF_mͳPW"%Xo[f0)vJk!9&~2Fd`S7[ GUF/!ٙ8 >uɲad ӯqAWaZhkĎ>5Y㮕3xZ-)2/l7`Ua͵OUw)Ym١1wgaĎt+r1}nkE!-HqJ>a0琴l4G4 *q ZC{ w;EmR KלNq:t:ְHd\aV05ǰdi,##   6*2 ec_ sA4+}݀;5A˗ZQā;(oDң3]U چ6I_$$=,xEy~T w!6?!a#po$p f?\KuO{|& F zxX˙pyhy_nwF8g̖Ӂq5 ?ю2sn@/隐^, zeaf9"¬-ۺӳ$ZYK2P!IO`y]οk 5ZA2B63R6PLE%'#W➯ d][N~&z[8Zn $[:!XE:aDdӔ▃CMENf/F0,\ve8O0WV"591}%7zt{{nybSErLL`mNxfpSr]^kP~J-6ؤts~U  *s`6MWSbgRH @` ղ8<5jdhP;(W d@3EI`R;etPwd ŏl; f2 yEQRɀC:-i)!k_w>INE5*]'~ .'OjBή6?h]}Zw.)d6TJ~Tm\IV7yEd% ۡicK`OU:78sF`YyѿE#!쒂F'3-";K^piKR9Y#k< X2G~ZkãJ!ÅyEUcld2|ќw-3Ae+_˙7Fq"yV="c\iBEHM /XZn;|j1+F@O1Pԛ*$ mŖVʡ:IA6dK[~2L#~Lu!||`E0GܮT:&gV{1aP,J9tR| A#'"[1FOس$8%g2V%â8KiDaiF\vSWN45o|S 7zJ1{>w6>;=Y]⛪bPw"&';Q'w*zho=>" I-hxxȻN@*J,ގ!]Ymlx>9 ^w ٿh#=ލ[!im:tV1dxeD(:&\54RU \1M,Td,&h5 _7q@b aZ;&8{qUIRvfZMi[~=tY~5/Dv8NiyJ& (Ay'G,q1gNb.Q#Ȗ&9e",p#PMCe,m>彺Y}vC-lL^!yNm cv[%|G֏Xa 'c%.%DMdqӾlћyH:lL0{e"ZQwrj.ܜ v1]ĩ@b+#8GZkWF\ԅ67;2P$. Yp j_mj uS6Qjֽ8iW<}d?Oҏ!d w˲NO`hvطn??`||L<e=ᄍ je#jٽʄ<ĝj5W(u!=Z[ʵ2Ue/-S6=E1ЛNC;KE2-?YlӁZ9%Jge b[k:jIiQwшtA?㈱u7I})ڑ{&EaMW4ƫքؒR[ $0M`* l_HNz ~$;mKVX >l d){(y#Ă2/aU@H١WAƃ E] d>IF66kd{醀`ZB䝺8wU~E0vZpPLJ4(;oC| cͦec,A} JRH%?!h jFgv }Jh? ʲd| {u3:;=4imܕ%Pc+$XKQ.cUjٵEa ]՟`xɛ0xy:[ӯ 5!B72b ))=61#컟/fy"u4zk4YN@ZPٝ=y%5/ee crGnll/m 5BW ^\~~)e-41"ZR؟_`HR[%ց*AwBXz%{)`P::>=;Lrg-u0/m%ͼ+hb!Xu{RP#6Ath6yڔIdI< DMޛii& <DbaycA,`dPh!tB9NF}DfnAѰhgN9!K{.kdBGKHrM#_0tW%T[r5sGMEs`)8UXAAkm ۿQt`)&aZAVtȀ zuG[&-qKWeWi7'E+l pPԦo,A~AR$mWѐzƀ8~4Օ1XKαl;$I5D ;MS.'< ? 'g QjS-Dk̫a`|ެmV*q#SR{MCbTv]Hfy!.-Bn5[2Ϗy*nCIZڼ@M(Bǫ|XBRDN1(15_q,AUt&Mu3++h֜єEh'irDOJ *Д%ҬL /8ˆ|V+HH[3M?Z; tBadItVҽ* JG@77Tfxp^ZDtNeR;i#eM (JlX .kSm(q"O3$DgIdd[5ڹrDGcN?qkUp7'R7VC-A2086cù43niy]vw}($IFڰz/JD,ǭ>R.T0>Dʐ؝4ٰƫ"kA摼*T\洲qLiKg qeltrvSEt|pV༓$[p@m y4ywI4ϏZQNsp~~˾.a|]zho#%m!F@M~q, u,:xЈ>Ea iw&|1?gCSVd4] X@53*@p= M^ qwtD7R!-M:fNZn{2=ְ97y1 @5u͙2./, ئޱ+K=AXݷG+s[M D6*tC V+,&ԅ HaBP5q ٹna5?1M&ca!i.~b穾c-vibQ%ym;3ʮْD *KMCטzT| a]7t/?gq|nݐ5| 8f욬 Rʺ:Uf$Do, oFe)_:鴎 PD!qtØåo #'1ޑjPWgf"'O^挪Ue@IaoF=25|Mb'NJ99 NO?V_O&gBr cZlNǘ64ĺ$`F5XsvgEZ0qm% DQuLqWΠ*H6*!:uY8D!Z0]^5CM9qw]SN< p<\gB%21l>FU2I~V~bS02*7{'Y =sSJ*pF0Yxǣ#ϖ4TcQ̾أi\V9>ORXRl;4`shkh$T c3foeԌ }Knv0>E*p?I+4 X.9~(oA\݀"ArT6>^rI /Sd7jrOPw[@7ԓ9?NdU\K@V)0<:}'ֈ՘(k8cK [\ʥ4UĂ51TJ4&|hLSj0c;*8ܧڶ욧L9HZ5U - /g&g_˩jhKgL g\OX-(Bj'z %?#̀g'䠃Ye(x&iDo@TgY/tZ.3? ^l[ WbpnGH|kőn;]eN埖4ϽUkR.ot7⊔eb36Q*#F.]Pq f^˶ >U[c)uVƫ՟@ݫ碥3Ƞ0Y4ND-5A ޱFMa4 m'\jUf%${}W vTi5b_ԊKNvt+8iSfZҠP'*cqm(̍SQ%uh*^]jtsd2tn`Q~>}nfߋf\_|]2ϡ])eE>W!7´P޶bU -K4E2N^Z%GZ[L5b*aE3^Zzl/P11e O.r>gQ$v C2[0gv Yg_[*<$r-Ϧf~Z4! q Kz}57o%ND?H*e]gȖFYq~cǷ[5R +]eS K}3/"Y?(EFѨ^uH<"m$<o;cֱ""`}Wm8]b(Q"V'03h'iXGnOn(C<# i [ / g4G//C%6vZql#!JmǵT8RA ^J4*9Wb8~Ѻ+31XbR':ԦJvuc={ ]`@0CYdu@B44r٦FcZ'~JaUY&.B::Ag>;;/k/+z&wmLɞ"uzYD2`Y:D1nQfTs=􆖅ɏ'fڒ/uI~ ?J{Pռ c06m}oߏ&|J"8v"r>(ZoQM],_ 2w;_hL"!tP['=eDBفcR$5Vjh.zifLL%DOkYA:[A #JlH⃆;C^UNUw݋\1) >6m "4`"[\R;2ϐQ헃'Lx*S!τ <;kZ>.LN y-|4_,/#Z.]4F;c!B7/t0=kiHy(2N@kwIm xfɳ$c3>@ Nܰ-;f6%I%xd^%(i9G&I(r}fv_I:Cu9HY}8 IPЦAL*AԲ:0!a[JT'Ke, X cWX|P@fFB o k2iƇq]懘7;R31 [IB=wxJ|i/24 !(t~]"& JseGP[%06_d?/?<Ip"_A`IH/ ?q]|%!-oWϫHp]QJkgْ[rf`Cu.s[3?%Uq9K?IB5# FO{Tޠ*:MeE N_h"$2wM;uHA5?M ruOΆ7n^5h6u"(q'o5#*W: 3Wz~nj~q q?pa:X2|}ϗP@C!WB&@.E; AN'4o1c\e-͆$_$[CJ@qj?i0 pԤϻ9ʜS?jngR jKs-+DN/qSfSVB`LWh5XovK zЗ~QL7_6y{ɽ /<'u=t;MgjBÔZOZtgFYU1qe^DsnTp_R,W%ޮ'EJ0 " jS{؇e 4{ 0#TBf2Bs3>Zal4frr0 cD^vhH~P6gߋ  Q?`8wX=WuvF( /"ٕm u.ΉN%L~s@3jU? n0z,q3/8?E5 5o;<:VX]Y|EYc붺 T'iMaj-F _sCbq{?x/6~/H$ex} 1oD[G1WnIV̎1K ~/vcTlͬR"(Y_pE0#o/ ?+9)HkX osW%r5$ ;GRbq>I<0`4~RTP5ʛM'=v,;cZnG)D_NVlԴ8g-U BguP,H /{$A%39xr1N/ HB\2 {TĐ&2_)0].KSh8W b2L+HI{xag<' 5߿Ju@7ʙ`5,!^EGGG )H}q :UC_-^m(> ],`R5]ˢ3;p fZ(=nl*n ےLe n$:~kL*6ӄ+?"%ʡH`;>5ªU,r#)U:]`6;YD,AR"NS0?A?X?>2X͘Nٺ!?p9G}RP[=>q810ntBU-k3w7p^6C%}3zIxX"&(a.W G~Cap"Dh5kؗɴMxd n*VvZ}7j=ƞȵYۺ')f;&>?kR}`/tP" Z%W‰*+sj^~+YȮ)0/@F$k_Sq=Af2u.IieP߭쪷TpL|e1nd㟆|1P J1#-xskյ\v;kJ;:^0=>΄=0 FQBjw?BDdBdqȬgWU"X ևg3]A2/Tjq׆I~9dBlݤ;= neB4}}6Rdۆu*ķM" vmh[4`ǰ2@qI t_z4B@HY&Eg>26}VVb`1 RPz}. :~%mk0#ISy@N;" t̎v:)tv3?wDgZ ֗-Z,6 ݸh3Y?u롍BD Br 8zsQ>om(⣐uRI8P$KBr݅1W\w@]G v:1D`z+3u]a ]_uCqZHP`nd T- IʋsMUIjH)FX e'D3V{h:ϽLIw6%+q\1Sw`y-%eɺw k-ٚwTm*t3p(f]U0egIo0]|-'OiluʀVYn*-E1,RGס)eUj]zb|` F2P|;K3d'>[_/]Xv؎wew6UѫTWbel|Q1Ȯ\;ySo5Х: o`EJ+Λ'v{$LЧS("$7ƷJLf-~|M+k ! N-Hj RcOck]pH!9GJKxifƍm+o<X"j鳂ieKOg[D/3zHenIAyIQP n5$&ǔC:;:p@btV`L ?{v¨W4h!N`PQz6;̬gRkkbmeH['\9 Hk ]YvB`<+A8Ћڦh惪N}o,跺4%c pj l.`C0trף 3`WU[8fG},Z7jRɼBV*z)ٻ6PHǽ/ES~!khdy$4Ba6XZ屍y^p`UIn8-/jR_=*{6/u@*"#_E=~1^ߢ+[?-ſ+C+zD ghAjo> XFS9F^VfeA bv>/Θ;>ٓ歞Hwhc\e?7:$N7Z.`̉hn%!5eۿ-b8qbfk'g A龳lZM%&f$w Rkݲv!&77^3vrY7I  +?T 4Mag:!Q%IϖM=Vm:6ZF90[s=zJ*+xʁ)*Ddžm\NOqkY=}>Uꆔ4&;: O'kdⓀH-1lQxyS! #k\d?N_f}pStxPwͦucO&nl4:"F/5+(ʽb40ߊGAf E6B_ h+?ۈ.DQtLĠK`Q!ii^cђD०W[f)GkaeuVЕUow\"AH$<AQ{amˉ5o` vSi\=x_U49# ]:< ĔبNXW/1'2L!V{nWid6>BOB]#!y𽥭o>),L}(> T!yfp)p-_n)x\B-@w2Pܴ{E6t\v5zWcDtaVgA.$Vz*12c%I敆Jׁ o->;=qKo8w qn<-*6Pk:@$mu ڔϪghwiaό؉W̺cͽ{q@-!u=%AdgT)p[xqp_#_p>H-adh~2Өq^RQS2T2{27wy6=^F;l]IIݾX0By%Cn&uVXs# Q4p he]bߖVrT)%EwS֌RYUxS,(-\^g }:A{[UEv6 %/ rX} BTjhwf[Vq$nna❉5E7<Ӗ S ( +BwmE'*?'UlY%ɳ邎PP w|3S@;LGwzkLyh)v3y 4nɡtW}qɏg DX+ӥjFʿPPge mMF-m=Lz'&W*bcoh[w Ԑz5K!l4vJ "Ŷ`g7再Qɖb 1,u/"T5f5kuv'~ԝYEF)d5y vF@y03s*^ TyǤ )&ǃmy N. h ;ف.F-Oes&uFߊh(Ze[(W鳩),74u|h߾ށ$85[o>ǂHCk ol,ݡ2y'G}gq>Rp͊*żhwT+3jQ# n#'O }c<xQL,l9!S_C+^e',) cH^) k4 šV~%=,sĊ-N,aiBhw:kW Oq{t!}6qg4B$rs 2ɀ y.j\lAc/U_b^DZ?/@Ļ͂& ~NW8{ˮ5}ړ#I8V50 0)3K{Zƨ{CޖZ&l%SoQQbQ=[ *3:4!D{rHbFr0{(}`K.wdI;Rhokd5hпtFY}wZUKh`wFme~mj1uؕU6 yN4p=cr":zQ$ RhbM/83Ӈ}Jy?IM@u"glӨe 3{;[~[еhFadU*"+9,rqt@j&GVk=\[Uz?z|~%<ק*j9`~ӆz ]FIb]*OԆ2p1γ)!0L`%fr 8M ¡%~.#Q}(3:]w||x\8lցD=t/yDR!̞ݘ$"~{9=e+ks)r\GrCN6M|.2&8S=z~b3 d- ABS;ln?ɋ:/٦^X=bnb:j!0TrB4I~7u'yipMӛb38PJ@m?u4La{Q磊EDsxڀ @eΟ2]1oWa[c٨>5<?P#1d).u{0(8M%#ޯDϹG)\QGop $/U%04l:"_g7w/cΨ>cI#/PT.Fs' }-MPM: "mŲy+Rڥivξ:MyתٞL+TAPG'8t}s}J'_ٌ&qy`9sg:u?uϗi0ZiS8ݬb׿^'K8c'3d87 0 , *Tjz~v3RDu CJ=:h.#[HLzϳc< *+eͶ񷧻󈶏J[5޷%O`||>E{Lbb;\6˼h]U& !ùK@jӓc: 䁍t5 kV6IP 'Dӎ}qֳv-jMf ; DY' KWL7).__#>3khǏF{m|4j':qRp;&#/0R`m"7uz,\<-a]Oe: :?(/C]a^C=34…eN*R" +ꀀp|(QP ~m|I_ƒaN1$%0п{L.nQ+A4%p1ĸ@VZ h< rSB8;q>s浤lgk"@gXƸelAZ5O"۴U HYIwKFghlP[][ 5$ ?@X.\O(\E5۬q¥TPus3zTN(l$P )GQ9PDd.Ȏ}iE[lM^ b"Nϝa-.J | ov#:|l|0Hì몥M-1hoEc]S|gq٤38ˏ֨'h!,bd0l9ua.A%q(<ѡT :J;}ۜCDRedG8Z2<_ GĄڑIvV4hӺ\=V}7^/RQ;X/Wa(iZ!E:{kÎX$ZlN#Ovw\|:I@")%ة< ƕEDJTMHBR]ٳܸynaRXs#4Ԉ=!f d7m7++ɲGU>;]+V/% 0aSUFI,5Td2/,< XYA2CO-Z<1 yA;UlSY۱WLUPqIiW{?ⴚӛn楋NJѿH ,Lh|[&6v"SW@œBE[)c5&!INmv''Ki>O>`-SM6L;3p&f΁jb9?2˱Td u 73I:S?RE7$Ӂ=X meT{Uk8L'&D4[^R?/dh>J҅tF{O(>EOF_YB-Aζ\F7lGZtiU4eeL%/GɃ ٕQTc8՞^|iN%xuzЀ~O۰]s6=bE; zɴfOϑlu_s6,R2Y)?-i g "|ѶY6nm WOU(9ŅMsjv yCM.?K;gis$55*Lj`:mIAť Mk*e%YՖ>ꗌsJf]{x6WvᙎR"ֵ zGџBEV\\Q4;0R9%7A8^k7p!*  zAieH538A0ud:sl (!W)~jGo??b[I +k#݀4clӵ{A]&x W2nf'6n[Y#C9ʖqoSWyբݬ8Q]x9<6Mk㢾 ȣ_3&䚧 작XPH_r2F ;_WG/ "T7W{q)LCĩM%2م}q jMuR/ii=]CUt.H9;حn)SUr 8Ó!mb}ljU"Hx}%`L{l ]dWhagH˦<?mÜ{7n)%B011w [4:ړ*iru[ws%~}7Eg &79Om#KfJ<&?y/PwV@ .À5kvKׂ:ы"f'͝!zH2r#CÝ9 )&Sdv׶hL, 66>'3 3#:-L~XLtro!4SA;K`v{1mPXĖ-Ĉ BCU u#e끿p8֏_> ~MX?_%~M Aƥ͵Q GdΨ.}u9DCLY`#,-G[@pE#mـƻ1CћBAoLUX13|x^`t7.ynߖHfNN=נr?4rDV!u"N(;;B32Y1cߙpOEޚ po>RPipk6 ѧ9r+a׻/f/e4*$7 J?zR1cO;VYfn :]y$F 2`R܀͵i.ImU2=kzc:Z <3owc2ow [6Y#u'HbgqL8=6fT Z2vXX^ʎ8(|&7<6%+%?e!Q~nKm,Kv*9:ToFQyiRCJg5,#Y٨I\˃"]b*fAY@fU" 1,o+`5{x=)_г:6Mx+) O؈Ԫ?,ng>BAvz(˪eÐwn *Cɀ?9$W: r}-i$?NQS\!U)!S3λ!3ʦ}ǨՍ)c7HU\N§ ^(ISPtTu?"RNw mUsiHDf"zFжRwHs4Fvfup3%4byTD0ݼU}[/X) 'n2Mg' e~.=_%ʺRcABJY]W{ Pvgt,YIg~5J|4h)`(&B@GqHkڪI2ȪN oaN~܈ 4eSKxQ C'EʤQoOR.NʗC__p8_ 5,MOT#_z=3LNN-^O HQYw@I\YZY J62,m` |lxݥA crh)V) OO kյΤlDT0l I7`0E+?78>_Ub a?FD̦=Dc\ J-#y^~qWXϿ@5+-RNf7߳fr0rl. QI[xt=co wEf*ҟJՕ'"."?"@nD%{Uox_7b; =wTr"s;?|m=yP?%uin]4->I N{W)av(nIJ. tdnKꇈ/rqeXu?"d;k8fP7QIɧd"e|8kQLnx's4=#YTxjqajf e=UhtVP|_Řs=y~5 FTݦ0w)Ƕ}?~½dalyk"u IpUەmPL'aIjzMo_|_&(F8aV1~3 xhQ5 ~rbhBDό+誛TZ>d(N=Kia2r1?hWq .ď@–AXA{?7\;f#O$#SN:TG&aY? [/1:4^ -35%IvOy63iBv%dQ~A:і޴3n9T'?8,n²VAv@}ޠ{5Fet3ޟJ@@%D^6Qn>D?D4 4a5W~: l{YjYC*+ع D) 7AwPpچπ^3_@Έ׍ǖT$Bvd sK*\b̕`""gM^$_D$&= uoͷX5:V6ق IGU}=3BI7]nAiÅ{.f39kIvj.O S[e D = Bl\zK׽Y@ZBД "ώhrdsdvV'E>E6*ok.g=[gSwc"g^P~5[_NItkI9&t&K7v~̾Oi:_"%{`U9f`3RfObCRN~_lDUirz1&2#m<#b6SPqSP]B(ȝ1&5Ct(G@7.Y.?)XJC{)Ot :fzyA esL]dqi{gE$Q+pɛ꜐<4:M_ FLW;_t@ 9y?t$7G4&=jM=ϛrlӃY>k KE\.FamK5IWMtk!dF5JڮPSAV3Rxw8r?.3؜=}a*NE@iG3Khg\,A%zdG4as><@JD'򔙾w>]6K܇oZ!cm@i\$J;B9ph`3eL4z/M܋n#(x PIIe{zK>z͋?gXfP<j`:_$$#J{?  ;k`gx0hdzxPrYeعbg;ǵ;nG9}3/2u0MO/ub 1:|\ss8CϔHnPgբxG<{Lsȡ968zhA (_Bա,$IW|nsD0a{,Iܒ:N/zv9x* hM1IpSԂ"W{3E W@գ2Z4[/*ڇqNu_cxqN̊IkǕ _Y]5 vހMhy,4Gحi=7a]> d&Ou&$r?y302,X>tv-N| 2DnŹJxݜ>5ϏB@3+e׋*5iO =#:[)ٝ_i#Tgݞ;C[6r}YЃnV/$)6Mq˶T]{ZQʛ""ϒG}Zl,mRA.Fa wٚk%}ny˦1"A!oٜҬA ^~..V7KXg@&֮|4lj5](նGĐj»]Y%RbpTl6ĂaK3^́2eoxJ ݊؅§KVA>PRNr&9\w kZRzFr2Zʀo*͢V~]TRÍ Gb__tQ~ZKko|kME/k߶%brҕ:|$׌܈QsyYfwقsГ*[ޝv)Id(k dx톋r _(tllG@.,t#s^'8 W . O'5P5h/_! E0O{Hg:Ϟu |?ij: $= eK'K|נ3LЋ'9QE^>+*Ml:U:I vhS"zv%otH3b5ayA5s?Z*td˳uDELAbӹ⑞r97]D K{IVy6o$~E}Soc'cVٰI,wz7YIoG5)}sKil@DM񢿎SS4XNX,ql^dJ̏'5s-`xy!E}2 ށh2.x Zb"эSʻ# O& tFRP:WWU^b@5X9E큈lḰPD0EbM EVkfrax ,Ɋ؛=g9e:װLDYH#x{1o&H'RWl2i1P~/!н {z#x]#!4xV>z]$-y3>6bXr=^!tHd%I ʭ[!)6i nΞ^&O\ ,t#g=~.I m F#Ÿ"Axkֈ7;ǣD ٪(vЍ@(co5;>g&ˆk5%ɣnvZx]h-r-uf6))MghɞIFOi,N Ioc+& nL͑Z_mi9?SX=])_P"_ p-yl`7)d VX}K6%N~rg2KDz tގ Rp.ٞ^cGS$ t\AGsR/-ACJ8`P UitF-Ybć&}.9-H*&~Ձ}@]uԑH+)9?i8qdDT31.rwfg _j]cҖy7t4P:\;x"ǘ&yC| "޼0%Nt[ <_V:#pdžQ>X _',rǃJs {WW-0vF4 Vt,ʘnNf!!~P١QMYܧLww?;{>1FrVciN*J IHo6SZ@x:Vx3ͯ"~Fl Q[K/ 1xd%Bʎ %|( U~l2=de$:H)bRQe$k/0 0u Zgn_VhFrJ8йoXˬL#h ,z14Y,;WLC@4R DơB`Dg;3ZRZ`1_ԖdPLfn6n8/eƻZA/n0Ojr9=Ah[:*BwC9Nޯjٟ̎\Ԭ'!KH,vc(d}?eMDŽv$,"sG6&ݝHY_[#8-EnߘW6Q@/}ߩGsja`A'@\[xVgXi՟|u`0|cf\ 7dlcmCwW?Ǝȼ9fyeM.3f o\vqߘdOl@uY Bäe" a;w)yQlAi2uF2ťhZefAVFVyTd/?7(4pgд\?1E~-|֩aY ؙ%h Ev.;I["Ihu q\<yc48@" ~Ѡ?@5%q8 \۽aQlǠz*VaKߤ\",%iώ@JUşS=_g{&ԉRc4q T+82P^aڭ+ۂ`zLRJ([x)Mcmd`;~8x' 8P. #R%"%ɰ뚵5&\prRgnPKm "iL-2W͉7[V YAeu܅i G(~XrAOiZ]صII`iņ_@iG6#!蓁5E||Y?si6:M*q>kW;!K=a8 wb.ǘҨ?hRQ8RuSMX!׸~-g(_YXQFW=۫Tr { .ACUgc_*ȟYhÆFF%b *bF~:eS+/~2>.`Ҷ4Z찳k N-#QcW+PgYlFNN+IzsP0hy)'Р; L&JD{6]!ex˷#c4"-5 4N'~5P=*YzS0qu#tXo( X"-j<=S2m{9hcڤs)b iBBLQH8%,,%(x\,p&,tc:IS5Ӛݫ>@VvkM~ 7ك Stjg fɰMP5bS9|P&HX6b$D)2yŝb Z_ŵۻBLܳpX0`a|Á$9%3: b_U#8D"h#-oenhm q@](y]nW3_p#9TXQ%݋N\V'%%5x?rd4 ,5fK6wN z.,T0`T5~&~ zFm] ʫ&mqt \`X7r1ɴr nf¢x3ilF:\{'?)L?OhIg&ӐO=-uۙ1&OA}]Lsxu̞6n\ k})3נbvy xJTa{u) 湧TSݒݳ7>ʲv/$ހXTetL!+8WE3eVp>;$^UQ,)>+=~bT y s,Yho8Ω*躱:-KbP4sF 7[q= /UqiUWۤh|ʴj90MX#EdME-VœEY$w@jx;EY=^!58J*kAM9Ὴ7c+BDе w(7Y"a{KItgJK\yd|.[ ̛ZM]Dv򔾃P]{o f>!~1\Dԁfd/VGx2\ψtG&A{7)&*U͗uΉ &&vZ^X;$P׬ Hjp35#έ6؋\xJK]}QʞRE<\uVYY#[.Vcy]xSChsP!,UCQǭ_'k5F: &'m@]:');q̺KZ5|Nv-is44Jos11ăf!#ܜ q-U[_όa8YX)9}zf J1g{OV7QC]Y͡ g _m Y^8&ⲹ-1 v?@_ٕ{ӫ4%GyT>:Qv o=WXzsV3)O;]it9(1Kd'4\$1X W9`V<[0XSxGB[>oFFV1JQ>BBCLf9x\&_q:Z`(>FR)^nh<g@o˔}f4U; I'm]: qi&ۡ srOF">b7 ƣ--T{nt/ ;rͭmYZ%z8^3=KkE&JP߅-ݚ 3"DTح(V cOZKs}=CR1%dە?A:YSZ[v@y$Ǻ@͡"q$ZyCa6-rѧD W.|T*Wۅ%Z-)GN"y Z&1ZϹX}8KeFcjR&N R$~裼0/O9ňa6/ɸjQHגZ7)Y4bLj uuysji9D? }An>gJJz"} 0׮hY( (ޓg$:mv%<ַuJS&Of!#d/?_Ex+/LQ|Pla8_ @q.fJ 4>̫~m4DDB5aa9$G0W"awM0oYt6`Vi 40!]a#r gz { 6*稨fбcR*j&Vhg=k;E_\<"zړW#E Z . XY9l\G;YNf.5$Emk|zѺvOD!x,HENg>rk𚍏--Am{ Eq hpV0h/r+M(xSFfOJ,Q/^v達1R0?<\!7ln';lbcE3_~LJqEN"Zd4 AjyrwA`tJ@ԇNKyMo\KCxAZR67;N5Un [+DY`swІUbgy&*N?.^Uw1Qb@kcj/I&Virc} iPV_TLVuhԧooir<ޮDEH#YHi#g p ԉw c7dD* M\Ϙ, w_8pڦe1-ޏ7 S{_Is'fc?X9}xEp?#/S1_[gl__1Cu "#9C[0eNCgEcv` `ڡ=cWeñ-20ۊݳfpS rX&I\J+N^- c A(Se&7ó`HJUAca&}ߣVLkCox2W^\p%f~!֖7pOz4r6- h-do jB֖_}^k aY0L5Oݕ31+Q( 4i8m8γ:/%\<۪>yD(wv{.ti?ӣ־:qlbE#KxI~!h8D upiSFCG([_mwUh>& /n.|5`ݺk ^f5,oCiy1I~3f v*کgnI V0K' i`ȵkb. }i<y8sbY8øR\l˅cC,,3 `3$j:'OHcޫDfa<8؁IBLbr^?lE5x'dK|It01x%<dߒ|^9\L|9fg ͯ }+Ie$*ɨp† it_< 18rfϠܨuyȠ\^Ja)c 4o{RAM 2!sȇe`#ԳXeTG˧N1/5!լsZKl` ~j8`͌$$ -CI,>#O_`eOiT/iŽ4/l;}U4$HyG9ֹ*^S= <\ EY5we\H~~5m`St8s5C!n3\#ࡲW\HSjɿxӉ@P5Uf{L,5;Vcjk=xR%2Ib(!e"F4Tۿ9 kGC;N.T(ueB1fqQF'v;Tט3ןnGtxeG$P["܍XX6 0 VAœ8/yk0~WqwHly-zehci iN Y n%3#o̜ot!$)S_Mx0v@HGJ_qe\QgGbb^g1sh?6c@S!$뼲ԹVV-O&MGIsGCVgI6ƛoYn\8"ϨLDPB`܁kH|Oe<9Gl~ y0ܳ[3' FWT)RR<=>Mǝv~]b^2BaT@bPc\;VF{0N n ŪJ:G xᕟ]BUkױ&5c `9z߼UĞ#6@>5U3Xg.nY}?y)p9ĠEgxmQ(ݟZ3+b_ <0*^,f0*2uM`I Q@3~|.rH-PD Au+KXx TYniw[:e0SMVignګZN'ުh i:@HD͠DԂ'!"Te9؊3O<0V/RZ} 3J[AQ1$[y\ $SyF6a"AQɑ,&W>Σ444F45WUtDɥ%TTD f*R"`AS [ V1)O~.A+edv.1/n1*5hё G0>2WjBrQ/h46wƪd#QO4&Y65qpGwÜySZV[gz4:H4#DP2u[>ľ3-_stNc7"Lp@Z^:)Z( WViq׍Com^)LKVFZp~US"܂ksd 1H.RVN ^u᩸κM)32Wؠ`-rY_JY.{dLZ[)# E#!0G+;WiØCDb ?G)eL `=IJ/պIE4 c>}0z#@<DphΟTfOixq1q++F>[v‡!nG;?AS6.{ !Ikr)ON13n"Q+ )ew3'?z_2J0D256pjˎATUJ)#OؽGtd@L]}Y`i`+q{x"6;o+{\☰\&<B3msriH'mL¾4w^b%yAD=HܓY$oZxMc-ul.|#}vx.FI4L&̺ę`jd~З; ';_N=. 03I^+; fwre_7o!k=e0KB<妐6Rލ]hb; |H.}Jc8yjC,IBzEYG[nh35FNCrk)Ej&1Ch{w'ټ7fs|2ݨlSpDţ[@9G,03#P =LJdŏjε }O36GOU4GzYp /S[{ŧ{2:{k=NrJȅ\zL C02pwBJ |]WS<\] Y^( #ଘqy\Vi^k(VxBJs7aNW1(Cb hv=-n}w)rh[\LH jfīX!X|GmJ9E>i3Q?J~p. TA2Y2kFAq&v,㻙QIEO.2NV@a(ZU,rժ_gy^W}>綠 ȆC ϥ)njk8m9CS'3G~|!3])Cq<*KFJ:*Ү{ʞ[KêeܩVcT³ 6>șA_q[ ҬW"@(2frٞs9 d0B)6Hp.?R.UDi}N$4[p☒}s$ y Aޒ5!o1ȯX T^Ys/ _OxOǣ‹4 ] 9Cxqf?:Jk}w|Lڛl3SY\rvSؑWD3I:t>ssD 1đK֠ H.W8J'fዠk7cnCAPn<\~Ȉ1@ z{ѓ fO d#퐍` ]vO7BfT VDv*&1 P)>⥧AFPj ͰB AF,%Ƙ,3~b XZ+8rS6.G}S?}V.G ;)hqy9l*+. vc_9F*pW).[<6l!iVlt^;'{JW0@ҽս_TU)ܡ5X&.Kr CCr"; ߒExFu25ݧCѤXi%m0;ȜL>^&s2^fq"Q3EWZIN *DŽRZ!PvֺSB.7 aX)8IHuLs9KѼ/Rpc:^Ps7i2ر"Ǿ8O }XzT 9^ FSi9GU(=͢_=Ɓ-Wcj)m6i,rXx%AQ,؀!qZM:h U$Gqv-*rTB*J:d}d}̻J6n**tYDOTy%(A6uI& `7RWD5eh0RZx ۞ҩK1R ʔ[s+~ws WGn:ko2#+W$]XFh8-yǙ=V5&P%7\(N[o|%z/&\~]zԮ&R4 $ݞZV2l$Z'2jדxv¢ypkwdlS!(mmˀ2SuFDV Թ# z[)nIwNƯí5>C5+;!_3\g*HBRi݁ ~K}E@r`i)16+:W|CA(& ¶%Ƣѯ#q@Hʭn2}1Kܣ( ė. I؆\zCٖc+ h;jc6v/pk@ >ZJawf?.D"`8 ?|q DTt/KLv V%@$IK94]|)}0sFcF :FXtL ?*;:j^OlqXqz9Lar-" ƛ_ATTUF6Q4\[e<|Wm)Ҏ!'ŜR@@mQPҟu7Iq@P ֟QVg9]{Y1c=kQϥ^gIgr=0(No;Ϫ\ve͊aSt܆ ґ;P &>O ܐG5=% 9r+G>o89'røaS"wFvt*N#/?{)Kop;4E}P2Hç'tlec4dGi܊cLX\f1<љ*U?7 @rol_snG8nx'twO> (![" BL)2feq\عrZvfL kd9UF٪c&@  P8*~FlЁ|6XG#0o--VSXLЖjղ*"-%u$ O.)|@ YBȗN>"c#Sz}k\(~ŊX_[AN 'n^Vp~8XO6<3JENdBpX"O M{zKUBdK3Hj2,CE$=ҵԸ#0%|Est-dDTSq$61ﻐ63f`.c *^?.ZF?/e2I6mIuQճJ] O{x9BfdYƿ~J($D5vSC彄Mjʱ-:jJ6|y?yuq[OV6vyY q =.T(;B9? Bg$Gm1t1 CT@PlaLDPɵ3 =nןa=#p'IJ}>W]kz`_{DabgJwF'@uq:Ϝ㷭ݪ+B`捃 "?zeq2j?Z!?#9-YuA=r) ,>{[sU Η朘Cc)YKު_B]+ua Bhk|\IΎg <0{?HvZz8h35tQIg갌E3bD黮5cfESL#6ȩzy|z;-y 0 f 8f{-5/A40gʉ5@e`vpRul fctz!/9B/qYSFݎ˝Z@іI3=Q8 + =re w|4# Jiz1I@tVɔ LIB'/yɄ6|R;WXqd9-O;{X'NGZb#RWolg(.ĻByQ ]rP'_PsTS+ԝoږ]i{k5:״P.}Ģ * ԂݖK0AOq-fP'fT {Є =@Dl9k8%+1g?k՞/eΩ,-d-\Q$'d5FѱNe& gNbM~3L5%dc_#bP"XJr%k0\zkK+,_\A[fhӛ\ɪR/{gz-vV៙pK7,Z%J> 8%3췉j],so6~^ZL _L(*|o#aR=(˴đ"IdH4uˈݵ^/g9t=z}̀Tza{TꤺjHp\ͼSOohbGW-o4}!:+cg"fZ|u zO2vc6ש. ks-ǖD\MĎH;`.?;bC7ė4uʦ* ) \GsQ7ڙAUͣed{8/R(t3k:LRɻߚύSD4O5qr;NKP MτNS?l ܲD}@:QȚq~/sLE|"I3"F}uK[m,;)v~FěB!RKT*_gZo4`gΦw#rRH*p]Ad{1>F@7Y>ap3C_pܴI3-40+4C ,c/jaa=r#q֋q^"v }R=q`9a/kT@g#P-b3Fv/e|c|0n{$#`eWJh Ѳ踚k 8uMiJ bȜ.)rt17ƥ$ߋn!R _L|XcRbm)h1>?\~|g؜A2.'IĨ~*VO`¿d?ݬ ~ErnJv AZzWێ{z׿&l>ChgLގpy}xƁWiO7P4E\Rq ۜ9'5,)u7D.+Iڱŧ#seN^K4IK ^hb?a{Yώ#O3>Ťn%LPqT/a*僵3e+$\MkWmEM\5S{v6]VO;|:zZ~qaDxusy8ޮr¤4`\+yI/-iXK]f [ȏ{rIAjBw]I"h+))n]ͻ=l'?Rswjc/>EAv zըd噁ʬ;41u$rUEKz[/F-])P -k iNPu;uBc;Vsgl @S<@G y&z|t[us$8Qξ'qbtX i#KEF<^Y\ꎖV/a m%Kd jtwD,IOXv'.vzEU9Zڧ816kgJ5ѝGSf Ƨ|Eq;oӟ =U%ڶ=8蠖k4{g5zQW|#ZO.rOJϼLiMU%zvas{LSosC+O?ɝz ch߫DД1g5^|[O6`n-69̽ڷ~4Hd$G@LH@05 Z+V#&RfÔ0 n|kqWeb =YO.ڴ.xyumϲ6фb$A7vSN,~~6du 瑇ƹ9vѵGbTc$h, &TSfHHu{nDʕeh@Hf?!5$ SMӷQXW)xq{F(/Eʗ-IXɫ/*U;ݛbz}l:Mj|7@.ap| urdӽrC9 vrb\`IB1@ڪ;_4v.D*I@h?=yIk Zc566ݷ r:vX"7ۀuG1ؐ(#gIGfo$we:QXjqQs4I$TK-`qܶf"{j2%#,c 5Fc {Hם 5=6OTK -sZΗYp<}V§ dQ Ps u?O׵vtZ+.5L0 dEa8.!An\ޢW1,K~/a(G3'AvI_&gCE2lȵԘ)6[;Ν([-0sZ% ](U!>Q5w/h9˦إ%7݅$ c )n6nHS* @{xtm{{9#o( (zZ/s2 ݰ* I^1&M_p@xxe$T6#d04CWoVࣅ5pYyf4&ZjO.&*i YOQ7@0;Ο04HkgcK^׶hAA~kF,-&XgGw~)P}j6xo`HTO8N.'8au h n>V&ꒅubcQ 'a@ܺ*P@?p$9vU`ʙޣ@ m6C!ȹicueV`laAqM#8PJj}̕213[3XR(^UZT_< @%"!@FM &d9Rks)XAX5 K7w(Z~|QV3 `B6'm=ure$vWB?Ѐ)f2%+6rp5U& (DMK0yZt"z k=X'/98Psط|攚t]oWMue5 sj2v4pH|R_Wje?Sõ5| :LnJZ!+rD&RCj`+g1<ՙ-7S:$`a#IM廉 ±%9X&d =eUd =Te~*q`ŮRRHٶ7%^Y>:è1 XH)9|:Ә2 `=o;4O5y9CfS>]+A/ /:<8 '^2a x)[E5U4$9Te30,HԔj\_ +nIR/Mc bVȄ1zؤRܷKYmmI@IdԤ!DK2ӝ䖎7y<³snn:CCcgrYuWUm- 'LO$l(]nQ3{LNTUl`U'x  bS6%>ܵ 8}C%~^oF:C7do(=be0\Ɂ bA.$Uw>*z ȍ~oz=8 wj0`7pN`j 'V{:бs{ WG8R3MRJ|l+t"4K4oOM}5zI)JB}e\1<}~vJ9ES{n,dFu/*FNI7[]jT{adD#FXH!HBoY2 S?j{N,ƋϘ=W(Y:ybīP]H%Hk[ up8[7@:g "zp/׀, = .K&px9;JڥIx+B~/EJיo))RXu˲ę29aSƚj]mN񞫖j#ty&񖋸5 sz}KΠ>,B,k.H)-1@#iDؙeݧu~d5w0^cNVJM̑Z9atPSJ}ufp'+(r׹$ ƛ=ZWdl-Sy *(CGȍӻXDɟ뿻nJ ;3K4]+ګLlNBpCs\o"_Չp|{B'Ɓ³퓛62GVНa,@Yp QkDIT/f#N-<5{⾦kFr̶Y31T}8h/2۵k V~uENxB{iҨ`Qƕ Q$JĨ_!ȊF`oz7 ^Jյm"Lڃ <+![eOg_j+a14;X2pRa.5R283 oXy c~& ubA4Z A%5%8mbX7?W2>:֭&CbMT7qHFr<9c\]e Tϙo }MQTZ}fiL0Y$> KZI@~^ a`/Kb"vA)W`sZby/F1!Q X/GlS dEPY)H`͛XuClS'ٮlOF^홋_/0ӽf%|IiM 7ib~p;Pn $cnmL vq`x+qVaԹ)x`Ptr1ί|pJ,i*p b-U$\"5&}D^:g:{z1 qD2-m[y;VEh5KJ;@ܤF'ȁҋ\3gɡs>2!QH|jҔ` TYOۿf W_/L2=uqsùy_y*G0h;wQ)X?8W^B$HAX*!=ك.$2"`AY'Í1Ola92Ț#v6HU."g"I~4* Uĵ>OhC/~J 5S03ֺվ29.L|DR=@YޖqzD5R_c-R-Q. ( 3L8ɷj Ўf]e~KMeD7L0*k1BvG$Q(C>5?pjlg ,8?Ao .d腶%#+f2 c +q"+έ N;x$Iou맖ך->/c癴+ "GEqh%}-FjgW"{vU<eOHicsnпE ؎qik@4ꏔ4x ;8=:#A_,03(,_VvI<^ jvAAZ\LW<@Mp {e՗ZQ"(۽j*:N,|'?.F`@#982KObI]"aZ ;"Ʒ=z1,XhRQfP2E2_9ߑ$-?ׂYlv|4 &ݵ*}"\7GP+"(GkSiru#,!O֏4?TF(_SЅ(~Sjs]޻@e" ].^܇b^T1yg+3fo>{o8WT/ts8əayE\{ˠYSG{ua?XAPDZsT\U`rg6|pp"R[]/hjkg|[3w!/Rޢ* (o{O,x@[/!Kk]b,FAUH5yX0|f%)Uc҄V?v!{h`$*m5eG̏{Hn\|Wzu/"Zqe ;C"A9*amc,KC-CH)H,00Vr^RﭽoT(>lH:'523‚YX,5 ¹(SwGxjv=tzG0iW4-p^sA%3u+Oԡu zwنhww,]rM88 C>fLo~RU1k.deɅ6o6Q1{u@(Ք{Vt.Bϒ!5;G%+EȊlX͒u kM #6} 3q9`wE?\xhkra1ը[3bu4k5>ルrbio#\ f۔B@v L}c8KM`=Ld<col05ڬ,[G\~7z?p)gb +^ 3l9-FnIc1OJG_֎ә/vY,dLƜqA&eIf tNXݷB\|E*9YWvK 97$ȸIތ|UV{_MlZɮҴĪ2t](2#kJ"glxώU쳉_X4Ak_vf c:I驤vq /*AZҠuwh0;>|x@s~ya')*LS>8;K)K<FyvXQXR_?~2EZ:FwrhSMXND$-ݎ,(a*Tr2y} ܬ #PXy07T")] ISZ) :(3 Ht5[b*9|*&_CʴХ1>&<{ X[93'L|c quM̧X,9QՊ{ rR=Tv_y8<3۫*;KXs̔#cV'oYfa&@3QMYI8Euܒstv6qsz[ľ+A_ Vn Sry(a4A Dw0=։ASHOm֛m:X+& (aqUe&qGfSh(KC ޏ3BB5ӵy}_Gs!46y)՛w("^L/x,0*(i)UYӱ<n-,w"wzv, C^o(=OA_w0{z^#IXʐQI[ISaW(:!RCnJ+c@?RZhL]vx\nG?h@g,t?]*)gcФx<@}cEtrx:?;~EM ZFzܘ0SI}#r'oNn<%$̲%Xr+T52HV7KK9%n$d u\O)lxԴ{'k'wcXwn[LF$veet1{ӃڇgT.=kvv?R8<@h~`GM^AߕF@ N\d'M lV8'3sPqLd@( :CB)" Jΰe#o0v}6D?8k *Ϩכ+z=݆s "T;fAD hFUͮ!L8ݽ:~+Z .ҸL0%Aµ%.@8&ܹkuExzx8QP|y^1to~;w>P׽5~'e g+Sx1Eބl=8E hԼAw26KsSѳ4a$f␺ێO }0fc5RG`qXk#QB_+օNxeRozEU7uyJ2d&Wpm졷REb](9îV|A53h ]M`kr}R#jqv4d=Ng9+9[QyfѸ-ƅJ*MO_Z׏^f z1 #qW8}=lpbaÐTre.f2EPv!ѧȄpqm. T^w zI󩶤3⫵꒓l3/qdy~29y+ x+luR 3zM - cˊH8LS,f:ס.YzI`Fqe)znTo]'Fg̭9pÁIF7AC4E$jУ^h} lZ]z.ߘR8'4 ҝ[nG3nVCd gܔfƛ(d6~H͹BujߤuhkeQ sebqtpi_"< )5>Vs@6p ~KVybXmC6yqqU]9 $fh,YB8f)7eR9`"޳e~!9CߣG˥׉Ψu來;]0ҍJ&kNaܘT_|U籒9[ i4xYm ȥ4Lǔ?;U QWcȧ9]d"#,[F뫞b3KTgdp O{iS(PhBwv /_iHo.&l9%cDL'f*! }kj FFN}\0DPjƳ-P@z"K?dDZ/gd &n)8/~^Nܾ Li$C"u@{t-ۤxK.WUITZΩܹ|bA^.ý>(EպeokqޗR+\؈:N1(o]Nge}Z55PŶC Ig] (xL2KXd%O.~uk  S M-t2*+ tņ>B;pX!qV[*JS]rUa:)rI|IQÄ\YeR7~鷯K;+)S 4@A<(uŮץ=؇m#VEϔ+h"Áfaz afbaS)o]usl0w+Cu=w ߺGnaK]́bF]'ŚR{FH_"Hg gjB>E.D[^2W+V/F9B!OD5jM|?J%,vUap(Ő[Rt;Jsѵֽ֎lTNsP 4;o"NJğ39="!G~",sS-ms^U`ok-nd6H ~1[9*nCtǝx.fMA&VQ׷Xl'T~)U(8{IVr 6e$>1]- ,7p1bV\ab9XFfu}"VR隻}8{]m|`Ʀ!~,lt:V" J:mAxdUo ^ua-F'J?:t:GC4ANwl/BJwǧIQ՛H>RY!NA 1ܩJ?qK]J&;F6b? {ӸMPG~®9Ax(چ)˚ʿٻLN('(q 7%0#G_Βzjj>+Y \Y?kp}%'DZ\$8As;<'߉r>"Vn!?V?7?V1⟣{H) SU*j}fOubG! 6#)Hb 9_+FM1Ýi2? $6|xIH`>pĸSnPÌU̕|=PY~JԶ#țlA _9͞5?ں3E^k߇3Ukݾ%wKC `s~CọDR Z@-ȗ)NEFCm{\`dWu҄,ܒ,b0|j0xܹt+%&r+횟sb<:jp}zd; ]C0<2< W.k͠"| y#?JxyX_c/m?;msu ~sm}|$ne]u kHfyLh;Ck|1"NǪW^H(-uk$^ hX 0EeDf⃌3k^P`S[|WdF3vD 6wmE@pt e_Cs]-Ji51<zZϙJKM\`+Nˁ_9uVp0ƴU ^BFw_gޚK(8[4cAmztcr^BH,|]8Ow~)p!O [,GUٖZ0LKu]M\y&w!Tν-D*s^ ͯ|մJf{^*BW8BS(-(pL"Tt6 oC27?eu6׼y&+(FqH . uxmgN,ؿq.LJӸLf( @-@( uR3%v(5cs~ﳉ6;oJݚ_ʻ5ȗH(epk]OWu +8Q]F4#߉,?>_UnujͦO¹0m>~wbc fiwڕ\qO'@&=H` 2qQF ە_{dtԦ۩s+R uմu6t(ٹl]LHѲG1{'C .gI0ќGڅ4 d^o`Wny_&r^B0 H=: Յ+lϪ9xC=6-`ǽcy eth!ѐpsxg$fSz1I8HH(.x 4J*=b6fL ]H9gQKywx3c4]3H3ŵeG f2lNwC|/S,ѷ ?Dޗ: |RR+peYp5AvͻQ#YjIF"DL>K m6B1T6ҹ聕EQM?Kw֭`AZA]8]Fd35q/N!BhpSF׽- Q6"օ2h_;Ujt}x[Z'o'Ha S4ReGxZAaJfIj BaFrEk$H`k?q. Z@0"a m6l-͢Ir(T pR %۵oFﬖG{ZU[u?-dÞ y=G~`R4=B^/D'4zUu'$ ^MsٸqşU,_Z,lC)[-2_g[j}< |"75d[]T= y<dE!A&2ߙ7XKN,L8:b``P;lL_I~K1wʃ {-Ç3\mQ Nj1OxeΧp *hЉy=_S {r& Y-5Cd=auOhʺ>+9\ȗ/L`j%JRSяdk#[8,h S *z9|؋;[eS㠞٧.ӣ/O[:w `Q$q[*"_&2}_pB9]O2+I Q6(".k 8&p|G- G !TP{0l0Y wϔ\E qEJ8}ҮZr\%`cQ|\jm6gJ5,R =;~&uIJ Q;,@;skl RoA]wEaIwV0[UxjߞT=NhTe;Laư% F/'B?< QQ>hih>MV[;w? ^&A?YGJ߉d1+Lna8Eq]lNĉ{Σղ ͒)z">|[V$?VK( #aoI'6l6HdbS5lA_נŭ oM)fvyj$~ >-I)l6T:?3~s-Nksnj z*=4f!+'gmlF`w\7r6v0iaz(dsM`:9kʇ̊3??[ :4#=7%g9A:yA[9P {ݩ+ǔ- śe@8G;et c'!6Buʑ&j]ӣNRS8`Vi'YENW *Uxfs7$72nFSSG˲k`9B"7 |8/%wPXsWt]aDzQGۧ o歳sΈjZ#{e.=cYidȤ}%{M33>j~?~.D8dcx_5*PIPwVDOIhFL?|?D)KoQZj)iuhZQH@$6-SC}+d*p=磕KS]-o]DZ۩!L7^;r2|Vvoa]BuqЦk۔gHlZ"lҷs /Y?g=ZX/T_3 "0bʩko4/u2 +_MB@@T7+tQ ¶1S $DuN7\$Lj+IE&H) IHW/g)cvO], !Ĕlnt9Sa~ÖU}A5j.07cvCs^ B43zB٬8?e[g(Nz AwS,d瓵#zܜ8 \-5q`к#hWF&-cL-@϶ܒ&%ֱLëag58dX5wY *dRlIawH`eQѣMw=`fB; $%n!?碘ѮGLXV^F7x|k:M,( Ğ+{zS.LB0W\]MA'+Zrghّ2EwԋCDΘ҇D'`i<ژ2$Hu_v 5,GO@rP}~3*)vd="WT]j >+ &#y~$YLI }ێDs?w;{S"wHM@>餮5kOdt}{!ih+gu;nS 3M/:n;]!ֱOtj~`gcN(†ـoSx3ޏ\}/D.Lc*gvuu98zx@uiz6iPOɡPe:rx`Ɏl;N4_eOAL(cojXP+Ȇl Cת5m\Q%AJBt-gpH'ёAlӼsf[ 7'eJ%,V4Y@l>d4@O]0 vTR!b`$l3݃NǍZaYa4٢u[1ogv$r63&嘈)$虚TY{&c|c2 n*m;균]L՜ΞlGG^Ā s8p櫶 q;25x0q .%pE}^QO8X-Rk<`SfVzJ_HMC/ G5[5Ɔ4̣m?v]U*s 1%"]gk\Jc껟<>)l}aP`i&"9we]IGU՚Va@ +À֋:<|X^ZSNk~,b;M\q$ *F++]PNc/\Vh˯̰sN 9:,YEO}A8UF~Vvt5S ^r&Jմ֎VL-^k Sfo-l~,Qc/iSdbqJX:"qްh;86SO~'=]k\ir"s'^i+7JCZk )ꔋ'c4P/GvOMPcO,poS:^Z"۱6E@+)[Rz {ن%vVe ti~kig}T:)WJȡ`+BqQ KfsIU>itos;dGh粘~ĄTxF-]8{ׄOʍrCcs(7_K)+i:N`%Uke-3ׯ1eP1};m'5m4~_iD#NxqznO&րug{Nu?t&|L>s{P &FcjO[9QN8[#$;tT.tKgBB*J| 9yMٗO }E|@ߒkoZV+x^ RZ.QD-$2 @ T_C5K2:|~Bw=:(1QwWɎ5 MQ4ᰏ\o]N7&njHbc:UjL1?JefыfOOSKh"Fj @t_ NMl;%yhwbnƭW3ǒEZ kɮthR?@QL^6VR!ܲoyGD)tfBKN^hsrp]ߦRdcKkWLSV;@٢',~VV2xLt5GSݛGᘆI*~Kֶ` &gnJGy|]l _c=鞈#*4+ga '%*mW !UHfʍ]M[?O @Qp|a6]*RAa,yz##>FfC s޴fG%852~yz[y}ͺxz*m ܗ5Rb+TcZS"O د^|~7;+m 0A%2ҘJIrGujb_`zKĀ`W텣4^p|%ѓ^xǪT>3#_(BRI3.g8, 钲mf&1!¸ͥ/e`nXYA.V&d]S߷aČH)L;s:a<)y5jFi q3s2Sݘڌt:#EPlKf+CN̊^D,/߷6{p纭\?Ԗ {9+])^vU$ŒFNQ/?BwGIY45Lq*ߊs2rhgS`*wE6dgCI8TկV.~Q\ORGg/U>eDlIeZt@LuIi& 9cca&Eg$̊rq.,-[>2-lDdjlciJO~GQ뛹 Y8&SV=%j4[Jwv4PNwlBUXmWBLM=|8ݗ_K(Or#wK,[]yirԋ`{]?bܿ .Uߞ/B;9O2o9V3}Flk =YȢ5 $^=*nߊC}Z%L6O"dg '< DlmV iG? rq(;'JxMcuN0gE~;ST:z\^cO[\WM{taU8Q:)%mژG*Y.N}g~;؊Ti 28=%.c6Ob E 1<V-30y̤7P&AW.)݉O1X0KF;㴈=p^C7o˙1 +(zNV>Θ{h[Qx邏EzgGpiwt|/O!F-8qe# +ܒ+.]cpcHZ-梎$thDgqk'^s7IK{ExT a8[t嫬 i 73yؚpSn7G(R7p"!\MY3. uP:g!oå\DdQ{Di~)3RA(_-`Kszc7X<ژ!RyJmKU P6X-/;è|zR EcA@Q؆x49-qyH!q-&bPz3c<Оsڼ5+<ž9zj7Zc,ݒ%EckI[z o, :dWkwMIQ&R^cQWvbT [0v3[8&B6-lx--G4 # ׶@SqÉQcV'T߂,ۖƼJ]~ Ik}Icހgr\l(˘ ꐀ¸h/R]@g5~:ÇZ:XR UWj{#T )\:| tˇU#' 3K:o9W3~ %ڼ- \gz.VtM2vӇhniUv4etwtϢ* h|`zIGj4Z|=E]j:'O)*iH2)uC/R9!8G#uTgzxЂ0xM) qPsi Id{2*vXD|Kks{#{ӝ1Q{'LFğ*jmϗFtTŽ c\jt{5_oG}-eWHmߥK~Ad'K 9')@[" lU,C>aD2dq謨2tЁ*zR7XsO߅v|4?VbFoP⃏2n\!ɝ^B0t<ŢdJv#py(镕)xroe`8iw % J_ _{QvqA/r8rRўԀ7o7373+U }-BSP}uGgΥdV"0z`AO1~9wsЫ]Y>\>t"jK'oys[ۨyYkX(2ܹ\ qUq U+'Eq򂲚*o&~.x0Lg0t\ 0]]+7D}UHܻ:;}YzR!,k mIKv2:t~둬UXjn࡛E[]$BW RypYÍA?zC zL^]Ǭlew {,LuuAhҭnR2nQ~Ҟ䙀nP*$<1+ }K؛LF,O%&Z G:;.ơ䴀4FoꆥrV3jh6:j1=9;ϻ5aŇ2ax#l3WKmU'i4lJԹ,BaD-\ּg4nОNrsl=}}˫Xʪwt alp#)[ޑWx~E#`}/V2"7M42\_/WjLQV^RzkW8#>,xzjd8HW Sd"5?y(`EW1]^=K?se$Z; ۟7@R!Qݢ'& x[۹(~A~C6-T-EjGVy--e1|((y֫vo1Dz~cs-D]8%0|dL2o2z4U+xHJ:RYHqlgLF[kҧ /cߡRX5L|ՙ>MlBZCĞCY^sX6 7l/=ä!rV (]S襶\:;Ƴcv {V@oZ׃ɼ}ڂ6# %],0o.=ȸ9/j6Kx{3UYN!ca0>oW*wIW&;IM3(,l<=#K^$f*,BYrI/>i|`w6]AKn+QU<JB^mDH-=ɏjXc!9Ctq⇨ҦO_,#nN*(lFYLnʎ`~uCbM迈 ?\بM_S( -a̠^<} ʪ?lb+漠U6(2yŞhFjwκ9xZą&۰;1Vu&"=^f&UMQ㞛 ;9`Qá $7;Voފ$(os,\\[َ9u6Qݓz@ŕViïּkr\$QIJV=Vr\KNTv%.{RG=\ZH'tX29?yj=КH),N🧙zMxG;ɚEe79;3l&Ϥ.[^y$cSC)k_fYP)ЕL8)Ș֋V;Tx KGC `%k<1ni`4ݾrt$P_ قS=jn6*ykt-~"!@ms{i8gcwFe0`U1L~~_K% $TIU?1B=pف +RQ7c5p0S_mz)_1>*zC_ qySلW rN_`ab]'xoC~6)E5t[cR7Nwb?KOHm= y%ДMP.WlZ@8` rOµ2AHđ[K 6ƪ)ޙ_$v~vǰȓ1 ѰdEm}L{:xGPtYq( j4dA۱8H=㽜?,!$e^ױM X ([ 1ŽQ?H\iw0 Q׭Vk+0!lAPz^8 aɵ0LZ6Lö @1JiBz4KN!NaciE:6Gu2unQ F]$)vD{9~zldqR& z|V*!XDFLC]9-٘s'qdy[MN ,jV8f(/#t ~wT|rVcIL4WP&x `j bj; O)󝓲c*UH?o@@(gTxG4mͭ3+0N/zXo)f'9̵t նKOMm."^^4'N';PGSxՐmdgC4߯-ygxoF؂Wk p&À[g`ma!i=)OfN>Z)”ʋ|qz_] ,[ƧmwQK53|9CV/m,K\wV+VeufҒ*IdaIm>AAֹ+mi)jz'm!qBt KR}*d G%zàvT+ۣg,NOሢV/gw[0Ιz#xRo&+$p?|G&:di qJ$&7&e)u8D [hfx}_EҰj)#=nRXSL!X׊}YR*: X&˶Y]FPɠun̯a}C7( b~XfIh20WIuߚbv_`997Z$51 ~XcCpUA L/A$|H(x]1)ȵl`Q_`Wd3QLv0_"j#C@G V~X&%:L?MwSXv/"^Nh$V Cκ`_q3tM*ZHn%=}i,mIJ*(hc[)\œxY#L~oZeԔU× 7(Z鎅4d@