salt-doc-3002.2-50.1.9.1 >  A a͢p9|cqRwرIoN9z5捉?aÏ]C!|?7ņ]j 9ZjF}T1J yD{ PؐZK9@_NIU] :`Λ%  H\ve`J-SBIUѣ:3fdecd8df9afc1033789573f920597e2ff618880247db4fc4e18a5ca7742267b240a575c578bbed91048a4eba90ade3c3b04d853؉a͢p9|6 jV5^ddCS23O&*[fyAbTs[P6Z1YBU;d7Is^[ AGG=T}R?̓z| E856% ~ \2{.M |[-;tCu2 Iy2%r< e-ũ9J8Qǵ+q@ʦٱ zW(>p; kd? kTd   V  #6LR\1> 1 \1 z1 1 W1 g 111;;1xxxy4(yW8y`|9P|:E|FG1H1I0d1X?Y?\?1]|1^ b Hc d !pe !uf !xl !zu !1v ^P:z j k k k kPCsalt-doc3002.250.1.9.1Documentation for salt, a parallel remote execution systemThis contains the documentation of salt, it is an offline version of http://docs.saltstack.com.a̵sheep67L`SUSE Linux Enterprise 15SUSE LLC Apache-2.0https://www.suse.com/Documentation/HTMLhttp://saltstack.org/linuxx86_64:v8PPa8TFM+Zb[jZ^VV[zb[`xf{zlrvftob~]utr^~}ofUaXdd p n;|' Jwvvv~w:"O5WQ~}l}f~flpmj ?qieuiei 7  oicgcg_gg_sggskcccgo{_i;Y^crnoczr^~rwliskvwwvvovxvwvwjn~kjx}wrf~l}c{jnvno^gfccff~~zvsofzrr~gjgbrrfzvljj{brinwzcn,vrnvww^jgckcnw~N~gjvln~ukjcrvbvvvflnkrzozznnizbb~xz{xrxuuu{vrvwoj{fi~jrjrjjjjfn~~{rs{zfvjcfbdp{jxcwnr`zbksasf_xbjrvzzf^rnoouvrjvvjvwjbrmbw{bj~fjkb^]uv}gcfrvr0rnffnrc^xjnbljvDfznknvzgxvbnkgoLrjrrzu{fkrs{vvosvlnxrv~~ossg{ccfi~obbss{jZ'bqcvr^jvtzns^w^zr:wrrznv{zz~wnzqvfonffcki{d~nrZwloifzcznUf]uwt_t[cigw^j`r{wz9i{x{{owjsnrnzo}fr'1or\ro.Anffbcbwwicjjog~bgjl_~~gfrdnfgcr{ncjrgwb{cngflxfrr9nj]bhbnjfWbkZkvzuwv~`fjuukn~Zjnxkgrorrrrrlrunri~srrggftcrudwfzrblq_bz~bc]nnr{bcs}blw^|fkov]ojfttZ{bc}Rgjxzbfrvicovrrrb{jcwjft^z~^]{ou{xo{rx{vfff~urr}~zlwlnczr^^axuvg]^obv^sfnfvlncsfff^r^f^rnsrnngob}jnrvj{~^jvgbr_vgkbnw{w`oxrliu~r}}lnoc_bmususzkgiwk~, `( &H :I#R: wgdtga}}gzo fn^ozfbvZk~[->SN<DLbVhc]nXdB<01$ + ",x- &  T* I):e$ >"3 $CO'c {  h/)0T{9 , !MV:If g7#7'%   | 5%a !  G3 c!X? UB ORpt"xt(c`=cQc ccc c ccPcZ UvF et b ` !*-74_.( 0U|: 1 V z~UPQ` 3` M$3j@7Mc!}(UW3:5p<"F-h<|=BEV@zϔG&zU-AH$?`Z r%[;oZ5hk3"V(VZ}5c" S - x i' $r )%*6 i/+zDv x FE {s)J#y ;")tT2z2!" FEGa, 'T37 Y- g8|D!v}q&V=lLRJd ۚ5Ov8$!FP[$jP~Oo@[BIB DC 4@4@   .Z l7%JE *_>;W*Dde MQvNS;c]x:'*_PaZZ_~+ nXxD?8T`/l#<L0[P(kpJRXb:iWUUYLa_pnx`dif_aApN_d/X_ig``9_T_Yf?i]aa pa`qkSR`<a`b:c`YbTbddJ%bJh) W"ȨpoYI7qj \4Beif}7cs{@a#uzHU]Wme9ZU~2l/[\_a`emqn[`Y`^5DhYHV@V<^FSOiRDTT\F[aWZ\[YTR|_Xvmdw[WUW[]Y]XZW]@W4YZ#WMXXWpWXP]_Z \YR|R[AX XVjfSuZCgwySadn tk`Db3|5mV\e`|{Emz  M !r`c\v!sa)8"q~ c#p_grggXg%fZU"]=Xk6j~uz0aܚYacrk2nk"jaOak|thH[wOz"}^yTf*l^^-TbeOroh'LLXNL[mkKjIX,`d`tMc\xp(;ymsOrPx_ SmmOR_^q3mJnuie|V_U Pg܀znQ[SVvZRUnIX\5|"R;bU(~ X1fdPyoHo(QT:"^`#H]oYeWbuVok][sZh7[cIH.aWXc!r`[Qŧ[Dm qZy*gaUtYxT_il5W pS]R^AmhYumNe2[@D+qEwTo\WZWr|N.wiwyAXYX8vc|eXW^quwaPZ]WG Y d6jb0qZ|0MF`EsYagKo<e4olZRhfkWW]dFs=TW]{kvzFc}>_PidVVd2xg?w=i9YWjTaߎM}#nlQb~aP#g^QgRt2{eQlq8}dqZke]=aji+_T#eg}CTw_oZRkG%T6TSjTKLNdq55PV*R[WTNP4ZpL[zpR`tN'^YN0#c5Sq\PdSitz fz ajlbkfl>w Xgnh_wtUfv@<.OvDyhVooe2UaJf\V\jWa@[%aV:\{xSVVlYl}sYc cckGj0tRfww*ri"penbqqhhtGfComWlpNciovv%fvXq*ugQ}f5c_AWr<q_}!/au <h_)}R|(s"(i9TNc\Jtl__`as_a_la`i_dik_``(uol?•you[|lpnks"ylx\zs[nMuz`ymu[mp[ _nVS$PVT\^ukkNpc7drbqFZono"}`fOoIj2lmcooJ~Hexu5lBjl2wgie`?c`][b2` a(]K]hf"]]n_XCVVXUWS1UV-p|  eVx#"$|S 6\p+_~Xa~uq jtjKL$z"$n>Y I/0rd: | 1je ñ M3<#"5L "J^vTR>rl:";QL{\e9"*2S%f=  H+2I zp(k yQ  [ (Z7)>vfUIJo L9U=*"x!.Ga>VLgYx!skK gR<ss(> x9 :/ " MLzE   b~X}Vz2l^? !/ 8qis  e YaTi_nP`0/L' FWLAff$. > h C=`(#1Z,/2.A8:5b3d^$(&/0Qr  p6h ?<V'xKheZBKejKzc@YURn2P\TZUYf+VQRSMY \+TTXd6Z;X>U*YPXN"X<1,$o`>i2ЃR<LLqC3Lԉv5~JyKnLUz|uQzOdSLmPIUPOagVMV^oK|g)?> #qBwrn h% ~[gyZ N4dZ}^VImg:Br4rO̓(4R9x9mUV^d\dK::eTNn`Redb4SHwO<_gI_Uyzۍ`ZbxaXEF1VSYfUUF?0[^P007000000$0ݸG ˛v Zޢ@jANSOxl;$n7PEqQpT|JA*+>M$r~oE=Uc36&!A&}oT}N.5%W߮ap?d6}R[0#X8((еA`{x!TjͮM@wFFCb?\EW<;<VKL@Bcjqly[fdTmNShbNnlLeAOW"D17WTdRS=sͣ]f[;irxeL?t =>kpcqwGk]PpKjTFyd gNXVoHVaAA큤A큤A큤AAA큤AA큤AA큤A큤A큤AA큤A큤AA큤AA큤AA큤AA큤AA큤A큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤A큤A큤AA큤AA큤AA큤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큤AA큤A큤A큤AAA큤AA큤AA큤A큤A큤AA큤A큤AA큤AA큤AA큤AA큤AA큤A큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤A큤A큤AA큤AA큤AA큤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̖_g|_gm_gm_h_h_h_h_h_h_h_h_h_g,_h_h_h_g+_f:_f;_h_h_h_h_h_h_h_h_h_h_h_h_f;_f<_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_f<_f>_h_h_h_h_h_h_f>_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_f?_h_f?_fC_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_fE_h_h_fD_fD_h_h_h_h_h_h_h_h_h_h_fE_fH_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_fH_fH_e3_h_h_h_h_e3_h_fI_fH_h_h_h_h_h_h_h_h_h_h_h_h_fI_fJ_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_fK_h_h_h_h_h_h_h_f_f_e3_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_e3_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_eS_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_e3_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_f_f_h_h_h_h_f_f_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_f_f_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_f_f_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_f_f_h_h_h_f_f_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_f_f_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_f_f_h_h_h_h_h_h_h_h_h_h_f_f_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_f_f_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_f_f_h_h_h_h_h_h_h_h_h_g&_h_g$_e2_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_ei_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_g&_g&_h_h_h_h_h_h_h_h_h_h_h_g&_g&_h_h_h_g+_g+_h_h_h_h_h_h_h_h_g+_g+_h_h_h_h_h_h_h_g,_h_gl_h_g,_h_h_g,_h_g,_h_g2_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_g._h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_g0_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_g2_h_g4_h_h_h_g3_h_h_h_h_h_h_h_g3_h_h_g3_h_h_h_h_h_g4_h_h_h_h_h_h_h_h_g4_h_h_h_h_h_g4_h_h_g4_h_g5_h_h_h_g5_h_h_g5_h_g5_h_h_g5_h_h_g6_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_g6_h_g6_h_h_h_g7_h_g7_h_g7_h_g7_h_h_g7_h_g7_h_h_g7_h_g7_h_g8_h_h_h_h_h_g8_h_gf_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_e2_gf_h_h_h_h_h_gf_h_h_h_h_h_h_h_h_h_h_h_gf_h_gf_h_gf_h_gf_h_h_gg_h_h_h_h_h_h_h_gg_h_h_h_gg_h_gh_h_h_h_h_h_h_h_h_h_gh_h_gh_h_h_gh_h_h_h_gh_h_h_h_h_gl_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_gl_h_gl_h_gl_h_h_h_gl_h_h_h_gl_h_gm_gm_gm_h_gm_h_h_h_h_h_h__gm_h_h_5`__gm_h_h_h_h_gm_gm_h_h_h_h_h_h_h_h_h_h_h_h_gm_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_h_y:__gm_h_h_h_gm_h_5`__h_5`__h_h_h_gm_h_h_h_h_h_h__gm_h_h_h_h_5`___f:_f:_gm_f:_gq_gm_g+_f:_f;_f:_f:_f:_f:_f:_f:_f:_f:_f;_f;_f;_f;_f;_f<_f;_f;_f;_f;_f;_f;_f;_f;_f;_f;_f;_f;_f;_f;_f;_f;_f;_f<_f<_f<_f<_f<_f<_f<_f<_f<_f<_f<_f<_f<_f<_f<_f<_f>_f<_f<_f=_f=_f=_f>_f>_f>_f>_f>_f>_f>_f>_f>_f>_f>_f>_f>_f>_f>_f>_f>_f>_f?_f?_f?_fC_f?_f?_f?_f?_f?_f?_f?_f?_f@_f@_f@_f@_f@_f@_f@_f@_fA_fA_fA_fA_fA_fA_fA_fA_fA_fB_fC_fC_fC_fC_fC_fC_fC_fC_fE_fC_fC_fD_fD_fC_fC_fD_fD_fD_fD_fE_fE_fE_fE_fE_fH_fE_fF_fF_fF_fF_fF_fG_fG_fG_fG_fG_fG_fG_fG_fG_fG_fH_fH_fH_fH_fH_fH_fH_fH_fH_fH_fH_fH_fI_fH_fH_fH_fH_fH_fH_fH_fH_fH_fI_fI_fI_fI_fI_fJ_fI_fI_fI_fI_fI_fI_fI_fI_fI_fI_fI_fI_fI_fI_fI_fJ_fJ_fJ_fJ_fJ_fJ_fJ_fJ_fJ_fJ_fJ_fJ_fJ_fJ_fK_fK_fK_fK_fK_fK_fK_fK_f_f_fM_fM_fM_fM_fM_fN_fN_fN_fN_fN_fN_fN_fO_fO_fO_fO_fO_fP_fP_fP_fP_fQ_fQ_fR_fR_fR_fR_fR_fR_fS_fS_fS_fS_fT_fT_fT_fT_fT_fU_fV_fV_fV_fV_fW_fW_fW_fW_fW_fW_fX_fX_fX_fX_fX_fY_fY_fY_fY_f[_f[_f[_f[_f[_f[_f\_f\_f\_f\_f\_f\_f]_f]_f]_f]_f^_f^_f^_f^_f^_f^_f`_f`_f`_f`_fb_fb_fb_fc_fc_fc_fc_fc_fc_fc_fd_fd_fd_fd_fd_fd_fd_fd_fe_fe_fe_ff_fg_fg_fg_fg_fg_fg_fh_fh_fh_fh_fi_fi_fi_fi_fi_fi_fi_fj_fj_fj_fj_fj_fj_fl_fl_fl_fl_fm_fm_fm_fm_fm_fn_fn_fn_fn_fn_fo_fo_fo_fo_fo_fo_fp_fp_fp_fp_fp_fr_fr_fs_fs_fs_fs_fs_fs_ft_ft_ft_ft_ft_ft_fu_fu_fu_fu_fu_fv_fv_fv_fv_fv_fv_fw_fw_fw_fw_fy_fy_fy_fz_fw_fz_fz_fz_fz_fz_f{_f{_f{_f{_f{_f{_f|_f|_f|_f|_f|_f|_f|_f}_f}_f}_f}_f}_f}_f}_f~_f~_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_g&_f_g$_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g _g _g _g _g _g _g _g _g _g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g_g _g _g _g _g _g _g _g!_g!_g!_g!_g!_g!_g"_g"_g"_g"_g"_g"_g"_g"_g#_g#_g#_g#_g#_g#_g#_g$_g$_g$_g$_g$_g$_g$_g$_g$_g$_g$_g%_g%_g%_g%_g%_g%_g%_g%_g%_g%_g%_g%_g&_g&_g&_g&_g&_g&_g&_g&_g&_g&_g&_g&_g&_g&_g&_g&_g&_g&_g&_g&_g+_g+_g'_g'_g'_g'_g'_g'_g+_g+_g+_g+_g+_g+_g+_g+_g+_g+_g+_gm_gp_g,_g,_gl_g,_g,_g,_g,_g,_g,_g,_g,_g2_g,_g,_g,_g-_g-_g-_g-_g-_g-_g-_g-_g-_g._g._g._g._g._g._g._g._g._g._g/_g/_g/_g/_g/_g/_g/_g/_g/_g/_g0_g0_g0_g0_g0_g0_g0_g0_g0_g0_g0_g0_g0_g0_g0_g0_g0_g1_g1_g1_g1_g1_g1_g1_g1_g1_g1_g2_g2_g2_g4_g2_g2_g2_g3_g2_g2_g2_g2_g3_g3_g3_g3_g3_g3_g3_g3_g3_g3_g3_g3_g4_g3_g3_g3_g4_g4_g4_g4_g4_g4_g4_g4_g4_g4_g4_g4_g4_g4_g4_g4_g5_g5_g5_g5_g5_g5_g5_g5_g5_g5_g5_g5_g5_g5_g5_g6_g5_g5_g5_g5_g5_g5_g5_g6_g6_g6_g6_g6_g6_g6_g6_g6_g6_g6_g6_g6_g6_g7_g7_g7_g7_g7_g7_g7_g7_g7_g7_g7_g7_g7_g7_g7_g7_g7_g7_g8_g7_g8_g8_g8_g8_g8_g8_gf_g8_g8_g8_g8_g9_g9_g9_g9_g9_g9_g9_g=_g=_g=_g=_g>_g>_g>_g>_g>_g>_g>_g>_g>_g?_g?_g?_g?_g?_g?_g@_g@_g@_g@_g@_g@_g@_g@_g@_gA_gA_gA_gA_gA_gA_gA_gB_gB_gB_gB_gB_gB_gB_gB_gB_gC_gC_gC_gC_gC_gC_gC_gD_gD_gD_gD_gD_gD_gE_gE_gE_gE_gE_gE_gF_gF_gF_gG_gG_gG_gG_gH_gH_gH_gH_gH_gI_gI_gI_gI_gJ_gO_gO_gO_gP_gP_gP_gQ_gQ_gQ_gQ_gQ_gR_gR_gS_gS_gS_gS_gT_gT_gT_gT_gU_gU_gV_gV_gV_gV_gV_gV_gW_gX_gX_gY_gY_gY_gY_gZ_gZ_gZ_g[_g`_ga_ga_gb_gc_gc_gc_gc_gc_gc_gc_gd_gd_gd_gd_gd_gd_gd_ge_ge_gd_ge_ge_ge_ge_ge_gf_ge_ge_gf_gf_gf_gf_gf_gf_gf_gf_gf_gf_gf_gf_gf_gf_gf_gf_gf_gf_gf_gf_gf_gf_gf_gf_gg_gf_gf_gg_gg_gg_gg_gg_gg_gg_gg_gg_gg_gg_gh_gg_gg_gg_gg_gg_gg_gh_gh_gh_gh_gh_gh_gh_gh_gh_gh_gh_gh_gh_gh_gh_gh_gh_gl_gh_gh_gi_gi_gi_gi_gi_gi_gi_gi_gi_gi_gi_gj_gj_gj_gj_gj_gj_gj_gj_gj_gj_gk_gk_gk_gk_gk_gk_gk_gk_gk_gk_gl_gl_gl_gl_gl_gl_gl_gl_gl_gl_gl_gl_gl_gl_gl_gl_gl_gle23971c8d741228efab87ccd9f50509b66488967bcab5b1be5c073af3f436be4551a61a07ab92280ac3df45e9e9d3970ce53bae224fee46c277aa47d778c1fccd665d6affd9cd9845ea596c64969eb526144d58d72b504bc8236485e4f9597293388e8965e2caff40482f5658c6de5fd4930ad611a95711f2175ce65d06f6afeb5d6fa5cf9656a14aafec774f5140ff953ccff6c66ff752d3b3daad12bd3dd333ee18d55ac3c23b5506989975d0d50c87d7b1cd652c9852af6f8cfb34977920402c661ad789f6084298861a3d2516b76f0302c99cf2445aebc59f71da7e32529c558d7afd728be05e67c82f6fed19dd7d7c057b9c54d9f685afdd2034b05b5b0708214a830b28f472533347ddadbf2f562550e2eb222006a6a4be565d1ed1e870b5b20c9b4d74a35cf5e3750fe05d3757cfe771d0adc20cc2abeec4315350ed5350c23356d750a383a48f42a18f3b611251b93240a93f2667916fbe923c2774ac5aa276902f7741182777fc817edf1ddb1254e31f122435948521bfe51fbc9aaacf1e9dda658f1d870af4b277a1943721f78ee01215e3ee6cded9938b01139f569e8bf53e883dd356408a282a81e9bd30effdf76b3af9390cf705c014f438069ea9a3fdbe84719274e60f6337a951e12c5ba9328e151959bff10e175bfc0c21f51dc340d419946295f1aa2c09155f07b4b8b91a3403f28c58a1c1b7332eaa17d4d6174e237c1c50bb946113264993868a5ce8e4a5a95a0e0899b916c909551ddfdc78717c7c2250444564e542beb5f46524d988f74c1dfb5706978d8a86334c5af9b11da992251f424ac46b117a93213e7c88b6a3f23f57ae68c4afdeed5b6e72d6b5705638481c77d7cfc71d18b2aac4044412e593457ff35a328ebfa0ab0f544f0f8dab566138eeb3de64cbe46429b8733bd274d30567438f5bf6afb2b9525100601126ca97aeb442bd5506dd3125bac769813d15db40d07506fe19bf336c4f041fdb6398ce444d75a5c61e060d0f7e734eb497ff25825cba41ae4a1fe85004b23393190fcafb19807d341ad6367b8936090ac43c5e841f8f9c6608b6e2be091723dda41440aa2b4bb0d85bf34ad10948b10609d44d7c2f25589dd0ec5ccf9fe8f7cf48fecaccded2ceee87691fd9d7d615d2ad29a939cd0abc43714e54d05920b3783d5b5a6625625bd7da7fba1f3a15f3f10f8309546c2fb915dcfb6996ddd35ee69f7afd7ced78397a6f7d072d32e28dc095bee0ab36f0c5edeeb291d83e88e1985c28ec9946ba1bb915d55ac2ff45f83fdde8f4384997567373cff7f163a752d6172a99f1050af78951f0a1acbd5b3977562836c8c83b7b9f87ae36f1c200887269298b6c883482025b417770097f87ee0ec0a78710c3b61eb5ad0500a91d05ef0fd3d1bafa34d3caaf58497a7a5aae1a2cd887f1d3c685fddb24cb611fb5186e5715c482baaf39ee7e42d13af19564b34759458883e56141d2836dbb7b255e4113a33351bdbc5eb01f3f85799ab37de203117e762dc046695e63d8a7e4a198490c0156ce32e9f9243af22290d0b86408866a600cda87ed11749147bb0c3ea58c9025fae755242a209db3c99d2a1316d7cda523998056565fbfbd3f8df1cd7c57bc9c32d98cf43de555e8f1d856d729e617309564ecd20768b657918deadf0956c286bbfd4f1c17fb492734b299cbc8aa005cb9e3b3a1bff953bb2739c5d51d9ff95585ff9cc48b87f93a643aaac64bfa4b8a9a16b96af2740c325d262c749d041ec9f169db05d90d3385918ffe47964cdff7ae5ed1d342eae77969e6811168a5396727d67a6deb40dacccbf295490c4a30df4461771741ed532c29824698211620ba516cac34584db9e0862bdd7f8627124309a77231cdf5cd5dafd7095ece309d360b349e3d0752985c2c851716e431b1f63f2a9caffce24001abf71473a0e29a17dd0e8a5c9d84e744e32e4befdb6611bd5b5279246ddaa686bf03de11ff350c3129a00c974dfaff2572317d952cc07c589c81ea4bb6b31efd4d5772e2ab1c262be382677fc4d5fa420dd7e08f93e4801a3330a4a6c993fb5abc275c5b7d3089b470abe0227c353b85602eb4f0eaa59d0e2f600f5677e38e9f4ff7acc296eb7b211fc1054de5006f0e8d215b7bdb65006c2f4cc91632b4fd63941e2b69fc9aca7dae81a68433bc86a2e175aa2c438d64d53b7b9c913ddcb1f5a74bf3a98b57caefc5ef0536afff08073912e3f7ccb495b815e07571849a508067c3310d404caa290641bb6da4b32a601206b57fb093a32dc2ec38470fe3e0fd6512b86683e4cf04d2b8dc21d0e00a1cc4513cd1853f5965e4b8cdc6f5890cd193d40150a12672323b0699a3352b87947056952d1520370ed958c67a96b83e3febe2c35ea26a9f60fc2b89432dc5218b344a5ebe38b77d1257772bf3454ef3c962affd6b76abf0a6411996752e0065826b848918ab432f9112ee623febae735229844fa113f12e49b77b719becbab98b0aed0b1bd80ff347bf6b58c46e3dc883cc69f0799753e00e8b185e34bb057976e355735f5a8e4c4e86eed49e1c0f2e2a58ccb639d94057e41a0479e85bf9c25017734e5237c600d190900fb878bd265c8f5fc2a727a0f9ae4e2f12bb9561803ee649c97ee1b1d87243712bb2eac748410de9d53e9c9853aefa04e8b22aa0b93544e1b2f40e0b2e2f0b1432cd0075d0591c880a5a33d71c4cfd0db6d81ac57bdd69f0fd50beeb1bfcbc979e394f43283c1e155381efd6d65ea5b525cb80b62c5625e5e3de4d173d259f1a0e4fea7086477b01f9c408c117541ecff45681d5a54d160ad45e29c552191cf1f5d517d0bf1f00b997ea8cc3647f19058895331962062a38f9c3451e436454ea18c5c3350b2395f593a7d11f50d78e4a8dc5634bfdcb5a51d8f94e8f4d3a6a6a38fdb5f277e101c76dd4dd30ab6f3398a9ad4f74c9fc0db1f583e0c8ea3dec9e68c0fc58a1a9393633326e71e98c54e55de3ef87cb4ba4bbfdcdd9d31f88f8aa9cca1c8a515ee30c0b2f1e3dbb716a6fa551f92131987e81ddf50f674e6cee0f9e4978e041c60a263b4386b5db83261d3e0ebb5f2d9706de319cdd247a33b17e7bd90d7b5b3c105ff07335825cc3ec3c4b4dbe2ede5f133e0e5bea22f218a333965dedc6f7591d5767d28d927b712f42f1f4c78eee10ad1456328f052c3f0d7ce68e601b196dde009c54a1d5d7002393d83653653c353caac83fc885a64fe019ef21a489118df859d6821c5f4bd83dde5779673667bf0f0f4a194a14a0fe61e45e9423aa61346c8085a5a6daa2eff5597b4d01a486334411176f5b36e18774d7a4e5b564978ece16ee3040156054f6eac815eac599739410fb9e93d7b1b15d62436bc308c87636e992aa1956223597057e4ce33a921618e139ca706d46bc4037fc06309d48f9f64d32e053808154afb391ba02a4a976cdcdb86716f268d69281022762597353dc5266843c27176d621c2b9e1790acccc68d5066ddfc57db35537bb5129e3119dd2d08250c5b92fb1c7babc690d32c58145146267f69e9f458cee320f2dd384b22f2ecc97e4c0a205e505fdfac37410a9597239f9f7e569cf772b802668c2bd1562b890368b5e94cea1962c182a01805b5e0128a0bfcba1d2a70239dc55413d39fa5d2b482dacdc57917773d023268256322cc8fd6d1f6213b14c498c03786541e30e03bd594001fd8df34d55ceab8ee1670ef5569f556375d0c18dc99531ce6946e0f404ce14b33120fe44ad39780a034a8886800d2cd8a58919cd73af0733b7b11aa2e10956b44728c8642cc63d787614f9e5fde67a4bbeeb9b13480ac40d47936c13143a4d96c3cd0316e008d5be338bb7e9d484a8298cebd10a8ffb234f19ae823fa877d2f84324827809d9525b9a2e236749145d4f911fb0b4308f3d45ab3867e744cc4d42067e6fa81437f97b634419c5cb59143d7a2c3e768fd8a4a8f96011cc21178017f05227b0a7c13b9d57d6912e67830350d6f1f9fe6699140f7e1df57dafdba30fef3c0f0ecf63b91d22a10bb74cd9460730e85df6c1099bae96737fed77eae407fb19f725f44f33f331d6d92a051225b323ef08792e5fe1a23fb498c15ebd9c84fcc6a331921b2035d6fc5e2e3e66c3a93e1c6dcf06d0409a1666e3186f7647a0653e17db51e9f769eb8081b44a46a76c7bf3870e766ad53395b20e4a772c22cf5efa8fe2745402934668e9b7699c6c372aadacc90774c6d3961fe65fe5a7a940cf738fa6a8c6746da065255a368cd41e33b05bdd3b50a1b7bc234ddbf7f6c80c2d250ecefa6e935ead43ee9e0f2bc4f957a4dd923d6b2a289b2ba1c81cea74aceb6d73dc17541ffd5c21af62816d55b50ee66725123e3ea56affbd249c85283ddaeb58a1320e6b0de4313a83ee97d95f3ce9b02f12d875db5adda6d0a3c63ac2409237224adc2c85c2b65c49b91a11323da8433e8a5f64198b59cb694162c3c75c32a039be0a3b1865ef38431cbccae5dd0eac5e80afee7e67658f18ecf46425bef35f1952254f55bd4dc6648f1733a5701ffb344601a2f469a9b0ae01c551e230dadef81c9ffe98b1b3df3f3f8a2cfde45a017cf1191644c9b5dd7336eda3bf00883876560c00b70cb9b668aaa7e2049f59c0dcbdbcf71592ad42afbaaebdf46d418945813503af871cd99f942f63ec1cf78fb706fc9cdbaabd33a8e1d277705900ed76647251849d93bc705120bd8eabf6ab59165beae23eea56e642c2debeb73d1c8bc6ece3ac09e4ed644b4d8ac8280bb9b6c805ded973cd6825135863b0051f122cd15b3724579ea2bf547b991b5372e1314c19cfe7ba39af4c79278db597142cab3dbdb32a6d934576c42c552a6115faa7e42dc3688f7cd5b9aeb9724f0d9a5ad72df17fc6f35a43c5735710c545177e862b456bd290758b6892d2bc87a345b02c5862a59a114ac1bbc93d84a1de21ab97a0d0726c98a0dab7651d72481c9a66ad26c3d1caad57d2b0fb9d95778d0bedb17da51b25e9814acbab815ab1a42d7b0a980190e4614f08cf5deafc7cfe66169cde30fcd7959d71207722541715b616c48994940f8bc1c8256df9a0fc6bffaef50357354f35892409d9e091ed1f538a1f39c3531b782bd3938f9d5c15a2943a111abc6a6815fa6562f1e6e301ecce372f8f4dd103d12fbf86fddcf32f9b0f27bd34f418ba0d1a67beda267a523ea8253ca04ef32dd240ce9d04943058a71543bd845afcfeb515fbb4b69f9616e676e8bf8e596091a92a1b6aa8e40c6e64e92bc4710538f58494d8c2409fca1673bf2bdc1c7a0bf1386fc1b9203729d3a6ac4d729e89858332f9a678c9bc94272a20475e5d4a08702b9c955a56e2fdf0b2ea966b273e95b35174e8a12d99c0e465f9886cf67350f9e34569d91ce63bf5e3e578832f3cc6ec28bebea7741120e5a5872650235332bbfc4124efe82a81f524c0217df357bca4778cb363eb9dfc77f9d3fc35fc88bbe0dd86b8625297bba5985192c8bedecd38d411f70a75b50f7033d1fe8ecd1f9dd5646bb7a447d0c6ee1bba54b94926fb676b2a8fe4128c306215356fefb4180aa3958c208ffbf1a8a1c4d2be2431aa61353c394505d8ee989989093ed514a60f5b794dc20379f3579716ac637981a56fa21b012711c65b803fce57208b89f7efa2fb93700f58e3d08e4b5fd3b471ad491373da89f5d8e2dc77a4d32c2a0ecc5a626c403bdb04b1960f15df7eb8be5f6b4b8254ed34ca37a6b447244ffefb9776bfa618733ce07b7ffefd6332717026eb997d45b7f7da3d24d6086c6bd920aaed7d0f33ac9ac2cd80dbe88f52e82041f32bd72bba1bcd65099f02188400b9fdae43e60fde0f5da861cefecec0138a834e3094854d145d8ba94b258405870f18ee904de51bbd0b8becd4b01ea0fd30e93747073318450beadd9e7af6d4df83dff5d0a19c936b5d407f8e35301ef64986bf19a8bb871a496439a7241ee18eab7d9a6830e4033bc918231805fa8e68ebf275a54ab2e7650cf5063382b03332d6628d605444eb2476869018f5e427d5881a5f201f3e835a3c6dc2834589f6091d7a1da4388c743125dc1e4d52283ef626acefaa07afc9f00346e071e9a2c7b4b79d5954b17a9d251ee05ba2f89b1373424393bc67a78b60e9a890bbf3f7ca6729c3add45b60c62da737b3d9b4c170bde07403cbfc37359d369c4ce31e0d888d3956e75b2ff064369ff3203de1fbc319b138f4826af258900ec87bf21e31e760f81ca232b39cf9887bd1998b3b182f5fba699ad0b4896216d4b66cc4dfa61246dc23f0023680494bd1d7e7042287a8ff34cd5f132ea51ac4356dc2a99e32d362ad2a5d0a909b7ccd03bb7c4ef2cf54067c37cd68e4d50e2bee451339c9c09a24178a3bbb1e24142ce5c09be44c7dab259620827eac2000b68dc17a9492e0e10e4f4715d51a3dbcce2def988bb473570c0e208dacbdf27d453b9f5c7ae153f1e79edbee9f17ae262106c023a3bd92a72433b5970d66ca0926bb244e1b6ccce04a6fa69ff3d937df2e3fbc842ac5764d3bab7ebf309eeec48f360dd91804a07bf7024b1edf8c3e1811afdbdf71d2cd1fae58dc43c8ace0aa30ad4275d967b746ef0a4d942baeed425727478e03316a62a651d1ff6e581662ba694e5a4c66610fc0435697a3a91b79db6e973deca90a3e917e50237657a8cdb856e0c24046ff0d7d9a7964abcda3af7d7a26e75ef8600ed6b3679715178a5f05bd786e18de8f5f7a2ad0341e0f837f0954450ed678c26b8631e69bca920f149f3969688448228f0b46684edde5635650774ba3712ea718fe5bc96231db6e7d09027d717078b4e2ebebfb76bab1e3303546066c465a8db6ec4d1ef688714d0968bf405c0687a84a82bc284721415c27018119b0a8e27f187ba91f2e104c0b4d8a7eb7d3f0d58dc028ba52fcf42372318e7e310f548d3ed82216117d811ca11f25f631b765d56f69bc3bc62c9e9d26bc902ac736cc639ce9379f8aeb57b22dd7753b2213f4d90359ec4a3dcdcfab3314bf02c3ad1a9fb655f5df1d41a98a2b0fc8d1f034e2964f99f45358ba1c141c046630f81a6a1aef771818ee118b35c69d450e28de3d68febfe5dd149399aae9f71838b08a620a8861d3746c61b20d988d5f0d2913cf829e06ec221ff982252049d05712bd189e21214e51a7f8496f6d91341022cbb42153aeec4a9c511f840abdf17dfa7e1b750f47e6de422f7d82cadfe767b52f51ffce61f9f425b6aa4e8cfe1b2a7be6c81e362bec8f50d2719118a7b0f28b3135c9e7d3253ada719466d778b3832eca411616bc2040b64d7b21b7cec4f0dfaeb91a301c87e87d50ccebff27fb2a25fc9daa4e023655d5fab1963c23dfbe154169ea08e24c1443de1e938f7473c8cc82dafd34080013327ba0c841124086bc4c5b53567781a6f4e41083961aa68af8a54835b0c7a264ecbd58138ba7ac14ca7f3c720aa389855a8459ed51ce36865be8bc1ad167f7cdaf3378100b1bb039f23ef39f106bf4ac638d2861c7026589efcc90729353132ea24fb11cccf6843337722d63446ea15f53b2155b204c6b43e5ae7115613da12f605c4156d80102eeb92e872fecc03e92aba6a7ec1a0bcff8d60ac57ceb5aa5e27c3b8327ec92b3b7be75b041f8c5f1b01cac2f90a7ea347951060dddf78a6f9a982efacd1c781b7f8b8991c81db2b00b34b1694cb555b58f276d93802a67ef02fe3e570b28a30647e213a661a2a699fe5066b4b10a13ff811015aaf702127e30c8ecec566ec8cc049bdbeb0731d59586be4005778783f9b2f5f134dd1a0a79cecbffb9b075022f50e1fbfde2d573b2d1c3ef4d88a5e385879af973df097942d3abefd0e6f5bb5db56eb933af06ba88a2f000f6717532bd163a82c71d7340240246be7ddb4b2724b769503d76b10a244040704cbb5b95b41c5f2f9f537ad2aa2266520ed9fae5a092a31b92555ba9e884b3551850161f4ca4ff1aec2904d1ed415e75923d3109ab4a1670fefeab2cc676e56749e2b5aeba667e855449e5ca8573f1b6ca5424fa5d09b9e87c36155d1fa455aceea935c6f082f3148e5e805a96ae7575fa43303ffba4b75692f81da7685b39e5f89bfa37ef123dd3f1b450e36019bd0a2a90a74da8be671367dada713236e982d46d2f3b7245347b4553d92f4ce96129d4a55b4e24423bb05e72ac7a5099b117190028be77341b53924b7bff791d33217a4e9b2efa70b8548558e9f4e88e2c2916615e1f8931e0dc97e7bd83c04f96fe8154fb9b83cf5a0e5dc7f842ea063cfbe874668371ce4206431a49102912741a9d1b7abd4f216a40c961f46595303eb3c96dc670d57f77a99f896c1013966a1bc14120848839471271e3af9b2fa684faad3b5bbbcc5e27083c4ca8a951ed634cf80f85c6ef74f031d7b24333f38f5c68bbc08b1fd7e7441eb8bdc9613b2ab258a52960f78df884c6d9d59a78c407b44c2727584e140510a0ada2df704bfab4fd785b9e20afabd9f4d84f9a0299da08eb24b42bf09066a456fc72456f4b2a5d0d59e862b1faace3a172b09aeba84cf472770a0f97d346793f099b04446be0a5440a4fdfbaecfb3660fa48fe7df24203c8b52e6139e7e5843b91f04fc3bbfcf3644a13ba224386515e94d1c880ab1efcc07fed92e9d563e829dacc6227737881db4c423a52fedfe35b546af235eca1b44ca7f9079ba9fc0298fc7fcfbee9e4b215faa2cc41ebd254ab50ab151994373c6c06bef96d71ee68639efdb9c94ee25574fa65356a7f2605cf7bf47be73852758c76f98fd2a7cecbc5f476e669ed5b63d19f1529c84cffc5c7557c59fcda90a7ca51a88ce62eb6fa7dc11f6e611e53634288283872fe0141029a734e3930083910a61a127e5b59ed70412131169e15b10b1e797dd637ef6175cb1fa7c66c95ae0a283de2152618ebe6ebfc93773191b988a15586c5c31be4d293303bbddfbf6b3fa417fafc013a0ad4e719e757af7fe92fe6e57f4d77dfd812e8a374e8df612bbba6b6a46ddb68d1fd65d5ceb2886c6044b6dc1229b63c56e86894aa17d3041fa190f07c9f626b9d0c7a151cfe04d57d1e0f30fb6929af273894d0011409d1697bbb2124edc3b87a1ac966af9228727fe8de9598e6941c317dcb65fd57fe35e64ea2ca14f0e90c82b6d1e16a2275d871a3dbe1ecf2684867bff2ed48fe878aa7d9f5b99f31f456b909d2f31bf3328576abefba264a4937d3541b16e0cfc71e933ecbf6ab04cf2347a2de2b01cf3843f1a776e640f0c616820689b8eef4482e26acf8ef6ff9f38d5090e6a87bc84f2342ec96b529861c4c2e109d5a7e87793d4f2bde097639b2f478eb59af412cdf417b5bc0021a35294db1b38fc98c1508a1a27bddfa9c6017655d8428741202407417dc541136faed34e832b367727679132e688cbd5fa26d484d238dfc7a7ffab8657a2956fa1e322bf259c08e6d989de6d9c3b0f3b67d124afb7331cd5aa482c7049782b2011b3efcbb8f2b6e4069c944c6cfdb8161945691ef9196b51cf55d583c0a8a1fc60d73ecac2925efa15ce791bfbc486e8e5b80491ab93f1b9a711eb9f859f3194b88a26ad824cffd41e6c42ade3d74e67eaadad80c54c6f652917291c7542c40b5eac5c64254f4a9a86fdea150767c0ad3f86aee9a0461a72f2d538e850a06001395f59fc7f15b3d8c75de784ae6cf50beb8fbe3060c238eeb5152d2729cdcd23e456ed9749592fbdcf87f84cb63f5432e464215825b17fbe6179266de53bf72e203ee959134c82fc467d3d4544d4590c146f28f334d8f43a836284bf34a3dd388d97c4e9e3ced09d8e9e47905f0e0944474a3ccbc97fd69c3cd7b9817836898d419547039af07e050b9530b3ed9cff7530ef238d27771601d7a900cc4c8c291ed7c5c6d8e9620168481f6e2b6ab7458fffa13c93c9258714fab62ff1964cde3e4f2a74bb210c9fed713c61625d25a37ece463824095088004de8a08597f0557c79739e65c86f6813895d532b2dd6fc6b031e5c71be81f2543e4cbeefcfddd1e5faec41b1a8e945fdbd270d7f9bc3539d219c4409bf7d16f941b143bab9e828f8e913735166785b62b4e680d553d6c3ce59bb0da17ca4af71a728ec52c8d81ea2b086060bb5e9ba09f7af55ba475c4b8147b257f5643afaae69c54456aaa6057f397bd36e56780d1a421ba15e0f8c2e735ce420614b44710a7cc8d27aabb5702e964eef8c69faa1cbbabd48521114db73c0e803f366b0d57506427751ae73704b705e4fe96fbce5592fa6cd7e64cf05a96c1635b5ebd8d43cc5f953d9744fda022fb2326d0a61dc67f62397d735b06ffd80b724c227a3332863a4831d8e3290e3a24238c513fb7d333a5ce26eb7788c8010df9962efb51a99d74128592983dff5a6984191701d1fa87e60d80bacfdbad5f6fd0e3eec081eb96e677b6839faf928beeed3355d8599e79470f5026ac239d12aa9dca9e063f6dbf6bdd6d73dfa78c63786bb690f6751f8a4838d104297fe198a197f09e6854b33777b91de9f78bc4498ee4cf2f83a008ef361fdafa1acf4f16807cb39f8081c97e11aa4803ecb808a686d760ef2f6874595a21c6aee0ebe7b9cefaad296a963d73a4ec21b8dd58cbbebe68503f581e407b0a6cafc7cf6108c71e555384767dd1d598ad634cbeb80fcf5c636d13f7b5ff8e1e5096065e0834b06ed12a31ba8e5a27e4bbd72140f927c90cd91607442d1a5438304d8acae707708ecc2d403858e304864d4a864e9874c593f8c66551c5a88a49bf6d71b519b6813be5740c80178176e07d2737bb23231446b6bd7d1dcdb70ed320da1ac270e882e375d4c4b5a9a1d97c91a353c7b7480fff5fc07ad0690ad1be1d37174bbe8633e13f9ae01d456eb7b1a79f16c97abfc7f507af7bba57b465c573bf0f772a7d3dbed54781d525b712e9db698069a5a38c266cc9f127ee1d98b701feeff3a452dbbe44b44940e4a8b36878bdc992741e7afa67492e92d12dfa9782c107d36af2fc4e48cb2b765d0be09fa67d56e2846b2075253e088170b26cf4e093709f4490f633806bc174b70358750ecc74c020abb6a626217affe205cf57a69e70178e2e2174a555bc2e1d46ee8f922998d13eb554c5ffadffa7f122c2c1e2f4979ff5b9429b45d9f43663380940ca36f099364fe1c1e60e83c247419d3977cddf150520a981a255a15fef8c2467bd91417b6f7cc34c1abe163917c2c2e83f69a942f25b13c5d86ae0fa331a91225e2c6401a7756b4f1c76512c3dbdfe18889b4e0f61080129a1003c1a28f31ed161e40e2e4b04fd81ebc67390a14c1f5aba20eccc3f653ee5691d7e3d79b1f36d920a5d96775673c67abfc6027977756c3881b31eb28227d5ff3bb42e8c01e70d58bfda06d7ebaad17f2d251fc3e25ba67383ac803fdbff56c490e31fc7e0b3b0a73947c5a6ffee8a7ac7ec7b46352264bd0dd290a8d5f402b4791a50121cfdf358743e6a4cb55ba65f5cfd8ea8ccbbaaaf53744bb9dbc751960679ad1b49db96bb40e01f497f024c9a8d652b26e77f56477a88576a566c400cebe55c20cc13c6099465599f148d883ab95ba9096f5cf28fd44e491778692bcd8e1cedcdfc7ffb4094317015815f202bca296a7cd7713f5366ad18078e8e83cc39efd1d4bda9b7b2627ae49f1c3170e5382a6d830634b668a704ce278a9140e420700291fde3c2f3184f382d00b17c78a31e562ca2c5753e4b1445979f5ce0fe3c5e96d2845b843c907830d6e4a0522be4271c5f049f5e916f2be952586231bf48a3779d107f33505a132a1a2ebc77618a0285804c2c3405b7e9ec51c5a5fb1710670641521a1e363f13923f68a224ec3d5df07b9033ff608fed40821ba434bba2bfb76a6ba5c47f45a99ffe66d0a78853093748dc0e5c98e75dfcdcfa26a70b07665698ebe9e97a7dfc76727f641d4af96eea3d2d6dce83fe5a7e890f2173e07c799bab26c2c71b984fa684238fdd8541de83bfc9a3b6e4446e9ea4720ca60fab31a542506885e483bde70ed9abb43cdca5a34c794cc1b5975ade9f0c917bf8ac007e6055c50c26a5e509693c4ec30d36b5783d98a64d4ecf65573997e84d29b681b26dc01e95f9de12fef8c4df36babe172af9f76d9336a1a419108f3c228df6ffe202dc1be82831bf851bd170fe0da3455beb5e5c2d45a42349681910e9618477759b8219b73f09bc6f2911648a05fb7beef2af97906fc576a7f2424e8a3177950a7ac92feef67ca1e7bbb32675cc70ac98e6cbcb83a48ef853171397f99893c8c2a581ae8feabb98cea4e5abf52da746a0174a06093797b658e4daedf178e4716fec8e9a94dae0194fc0be995c46bf5385377294b6dacdb49bb7298817849e1a31fbc724913693b9eca92c0873990bfd7de18a0855dc67a3d3bf4d0d2a179d75af7301b4206cac033dba94564a69affe9b3c2feb7398a1f166d18bd58b3022aa7499d49482a942fd83ef170eec44e1314aeb6dbdbbcdd4ec1a8361abca2dd8139e8e195eb950b741d11070832a53cd1cc088f3c6c92675535f7786b169f597280fefeea58a4dc4c0efe5a206369883bb425998486584e1aab7ce7b6bd6ad7e59d1e7dde893ad6be298d02203104db01f1ff73a1a2fc79d11c4d5eeaff2205de13cc6996ddfbeef696bc1ecc38a54b479190d73ca821f043ebe82b6feac2b484ec1fc1138bc17dc86fa79d07ca5f0fd151511c7d785eec777ad1055caabbded37600ca98d9f51ecc5b280429b94eda123bea7b0266827fe71827701d3a56312e6d3e90df9250a99f74aebe577fdd9ffaea697b8accc7f0e82e81127300dacd248cfd1a27c66991890eeaa50509c5b5b7261e64ca6a019165c56070732c710082223ef39a5de9a9067c6f1f12e77f5908559a443611b7f994e3cfae44c2fff79e5e5335c85032d1f46e39a5ab40f48c8d0589ad8faab154691b05b0d887ed2541d9cdde8c62c63b510e48e17fefc95786f6ee3c3535a33da9a8543dd3d549d89a9766bb6270db599f38191889a45c26e4e5a5bc6e704f1769e531e43714a818998521a0428ce0b22fa0d2e0e7bb4abc83fef3fd57dafc38d76b0a22463a98879750ee56d9a90ea7e55314db4ebc7c17b51140722d187582c841006e62309dc287b6fb2063466ee02b271d3cc4b3d10e912ce580fc802ddaad5be65c7cd5d1dbc78b720d70b69525f50b04739f98a60565e70a532d2d2ae30b57f6909ea50472997e2adf1b0e69f6aa8d6e002ed1ef7fdea0ff76b6339dd1a9b26a223e4a7be913ed9248bd035177c43181b01d4e9edfad22a7cacc1512c268090af7e87ade50d42572db96015787add33c436a8393292c1ad6e5404a84190488ad031e0a047a0725a4d9698e11d6a18befc1be7633f3ffdbe70ef9470f1825eb04d6b32759b4795b8b73848196ead37bffaa8cf7ed017bbc6fa00e2499f64d81f0e956fd8ef1ceb2068a30e03e3167cde020aa67a8bb2c06c75d83589c7bc09249d22f27a9418b4a2a3ceffb4a9679365b9d1000b58c44a1394c75db997ca47520b3d2edcbdd355535641d37626cd3deee0754cbdba8f003972b3ace72034add5f120c1f61f0b76d0a901bbf5e2f9f7b4dae5952e97b48671c106507732f4f9788569edacfba68aeeab7bfa7f7eb6f7e0a3f18883c3fa802e45c1beb6d0a3ccedadcc199a658e0c6ae22ebf4fdf649c97d11af13ffa5dee11b96dd012199c8d779fde8bded915129acf87b7dc6a179e6c6a40dde746452aae91185802403b28c9acc022c785f51a071bd1eb01578a55e7ea9292f3935d18b916e0a7971a4421951ff4c80fab682369326955acc697c3b3c1ad92bcf1a28bc4c8e2562cb1d9da0233f78e4e57ba3a62df978a812e7be96a80a443ef4b70561ca936283f0bf507a228c31026f026ae69c97437bef54cbbc6a7b2c13d47555ce88abf6632bdfc99dbf47fc908279b0a54ba086b820db936424bc1b2e376f6bba971f4f4d7b06bffc8c7786eff34950a5fcd9345d5be4e1a02deacd50a143a9f3cd307aaae3a9d2e3b5b95280cb71712e9f5502d2cf75ae41676f764c97b33d294ff4baec854285cf23f80eca25976b540bce1616e3bdd8feb55943d696ad3566acdb1f75d17e38ec94c66c2ac643e29e09f2238ed7579f6ab3b0842863964dc0ba9ac6ed960b1eef6c21814382c501b25ffb411d16d8a40e46dfbb9e098d002d10b1e1bd90015637f545ec18d4748cedf00795f6854df7a184147b7a0a8ebb4644961fc2ac1cd8313d824a8a7ebc9609c64b718b0438642fe6fc7b1c880b56cca4d3e603939f3e30bca03618745cac51c4abc0ad02da31b906249734240c9379cef0918009370a362ed16c984e7f66c290cb4b31a87cb8b61906e8a4f1ccb285e929f025e24c98a8582242b3143a4a4129e6f9c5e254395c6a8e449764456a9f52bd1baf2bb2a3e008c572fad684ec6db90fc12806c6b2a384ce23ce4b793420df6f6fa925889dcdbef36cdb1f13a908e9c36284bde0df9d26534c97893fb4a40e30b7d7631d7462bba47627d119e5728a9a795ab74dbaacdd89d9b1489f2998a89eadf79e012c777c5bff2108581ed3ec1d9e4884b00838c6c2171eaaa452020b4bf809de0b775aa0ee6475cfb5546110a63a184844ebe028e7a45830f089d2809d269ed9a15ceefd466e92c61c61501d18c601471a6acaf22139407bbd4298243e0de3b973bc0bd353552a9588e78b09c48dc4b33fe2beb6c8c5b9441bf8f23653f7732e2b42a0aec5aaf822ef8482be3e08408064838986bb092298c309e90999a9dcdc2226d2fcad28a5e69e112f0a980f4acb752916edf855033633d943a81b1017129a44a742d8246f86436277bacf4245aab32fda418a2094457ad880d886438bf18af9a0e67af19c05ff0a87b034d513026a6c500e265ef0004ae3a9e3fd120cad62beb7f5fb8c5d4ffc8976d144ce52d263c5c0925eaa7752e3a99ac38cca797dcd90f81ac98ef94cb27790bb85a09c3b8e5d0b2f5d0ab8afdcdb77b24b1b18fe013f4b5ce42f089002711821af64344e0261c5d02516342d5c9dc1de87527e14ae9029da9aab4b79d28dd21c0293d67f606de62d112946a11b6df53a6224ab80863b2b5c0aedcf7fba14c6be148b4fc8dbab4bf76330fcccfbed87787fc61e6714fba21a73b06c1c181315de410cf404d1f5cbc2292338b67296e72906159f1048ab3e68618f27958826ff156c26e91521103dfc69244cf653ce76d3deac93ab43716d8c9834f014916b81bb17585a0726cdbef0b7de8bce8535d64bc2a52e5b50d5dd83e0f5ab2cde88e82a7740d4fddea998ac597715cb0c6ecc5d39f1143f3ab6d19d31feaf51f8450e8df0f44714721d4662ee8906600691e60489a9132d7f4f942809fc572e00dbb0f5f3020dbed0176aa6076b090e0f3feb71dcf5a4d3ae121df16df14b23c4e9c6353d134141756891635d4786f225499c04b7c599ee23f24c696508fb05ae5a978e1937d18d75bab31e0feff26df8183226c23478774af7ff62f34cbb307ddd28865ed6f80540032130b949ae08d98cca8106dcf507892a61117c1e49027183932be91f09e1477b40b100b04d07ae7c0bf6d6430374f87d12cbb60d287e090430780de8aad202e3cb8d248125153686eae346efac8584943cd93d7f6433a3ffe45aa920ecfb80ef53c4e1829f9ccbb974982b9e69e0780acba905d132afde08d682176a4ae68367692d1d213334d51e694a166c161a6e3457dc3b97cb353bad06d73fb625834609068f372c0d242398c80f1a1fa3ade77db3ede0c3a55c29e237ca0ee1882852a784f09088b19cd02baeaa86a76434c4e681e1ce193fb5725001fbbdee579fa9d1bc21c3e8a8d348c51a8e99a00c66a1489ffa71684788c1a36613f2791734f93e6bd1efb408cd3a8a33426efee036631157869c3e67f63165cd18537c871972a152a69f8d9621bddedda75f7ee7e19412360bb8c7b16c671f3f1878e4f217f1722e0b18677d85e63f887b287d50f6c5291ad88241de8edac7df2f29450ecc2766ef2cceba98a82788c9a82118f49de6d15ba331670804b4123d6edb52ae095e3800ffef4f7a84ce2ab31d21fcff4099b72bb2b798cbb37243e1a12a6b6c1f7f902a2b6bea8f5c8a71544b0d52718a7c7b1f935ca6dfa4c84d688f5405872ed75a3912e686f9cd857e7a94b4d37093bfdc85b2b9d2fbce0f50b33607c6d0a1c37dcc510cbeb93d012315faf7a79ed24033b291286e030e23916a532747aea89e8c44e8493747840519bc747ab0398d73c021382d8d27d44eab47fdbc631627da8b62008353b3285d64fbff39dca996e31828548da5f3d9562c17ac589dc4701864ecd20a1ec5f7656fec195ba862019432e24cadc23d4e5489ee54d6533a2a317e9a1aaa9f852b3b316dcd4f66b072539ff73cbaea6a7f2480532d512d60044831ad5e72b147d89e906f8b873b6bd585ccbc6b67f6c77ba7c4179c8f04e9660356570923079468a0f8b907921621d1799902f086010ed6b5c093645f63a523d10faf25439af081f41e96a059afccfdd6295cf4afdedfbf8186dee420c1ac88bffd01589fd43c934aff256285e192f5c91223f31c93776567b556787138c0ff567f29e712f1e433c8666e142d6e8cc936a4024fd39784b19d273052800041a899a287866671bc7da887b9cd03068a5240718b08613651d9f5039c6bd83c5893ab3a332b3d5b9d1aa41b168a3fa8a4ee1ca9311fc6113e62078c5afb6a8c27d80bde2a534020d482c7dc89bf8965967d9ede8b3112b9ec5e896d2261b2d77dbc99b17e6213499531aa4eb72769d13a66f0fa24f4171b4291eb47a65bd114181550d0fc70d6fe59fa44776656a169fde657c41a715291785ba7d00e8763241301c638e53e2f79207260396d416fdaf2e2ecc8cb3d71015ab5946ab8bd0ae86cfb77a774f3ccef17ce2f23461219ab61de5c14ae695d78cca4b5750d96f91fdf4328a7f51a2219c99ba61559555f4309fbada30d41575f5003ae6d0d03256455ad7f2b9015aa6d1ffe4ae696342fd0d32942fadbabfca3329f4100d89ebd68463dc81cfc87fe5edf64fbc7822240cefcc8e296de9128bbfd84a676ac3cf7a815e5183e7f3104ff740ef9a369e5416648ff49491e50a20b9d9a72059c39e8375d89c03004907805cf142afb18b5e690ba33b70e3d1433cd824fe3ef2bdfc307b370e23b5c55ce151be8710705cafd7702a24b027ca5ee3469c547eba0e48d37e1ea97552fde9dcaf68658d7884a62aa3344a8558136ec330306cbcb08bf9bf2c8b89e2a5dfb784482b4dc8a60ccc44b0fa532504affe583188c5f1cdc156a087fce0e9bededa00283f408d89d29217351e134106cd16f550c399342293a48b959bde70b3fc211351b3d93caa308706fa9afbb809cbc09e862e8ce75f8f20c1d28d81fdccb3461ea01abddc66834eb422c4ea69cb141874126ef29c0fd588c15a72b637530776bee37f40c2c1018c1b1b4b8bd5ea51a75a2cf8912f76b278bef13789de404f38fc38a392623ffcdb1828fc7382203f36f682e5eaf9a197807828a87428cad3816d2a2ca1c91e0b3f5f07feb7ea97e2ab29394168dbd1cda6af72c1526de23ba4fa8fe7bce1d44f78c8c21759794a7820ca65d4243493e8479ad2a1469786f426096d54ff1e87d54971342e19a05b9390415867fb290ea33988d38fe7dd1d670bf3844efa43a2ffddb8c1a0dfddc4b1acf2ed9b0671e3fffe5d05ba311eae2c100378ea1ea0341c517dc4647611a9a1b72d0176e2a0515b2bdce7f81b575e93947f2e4769e453bf3ad69ee686c1bd2bf14eb9e656289a4fcd174a976c39882ba92c6cb47f154656db72bf9f4198cbd2b11fe6e055f75f92da0665511e67023b10e6cc8e8616ba992b24688a16c0bda5e493367f91d81ea434f44ebf2ca55a4f9e1aa75ae04ae385650eada8b04e289d72b89814e66e138ea498419b5dc669cd3279fbb4eab83fe785399c78d6e7d35be1c7557748e99dfe223e83f52923fba3cec79e88c3fca08f2fe09795d16140fc054118e23d6e5ac16dd940e9f5822a6246ef32eef1ddb1ed5c10a37829bf73a3dc344759e5e873f0d8cb7550c3b0c7dee2f007722f5eb786c27f26f7dfe21cab82a86b949186081625e5c18a1fdfa74dd21f0b99aed8249b9ba135c946c3ab23d22e8ef4075b42d6745a9fb631a9aed9b6aa8136d669251056c5096a3f5ffde9122d5a750b3644300cb3c9e2d75e29b18322733840540f86e78e8d50b24dc64f42f06615d9bd97ed76c03b9aa5fe22f82a6f7bed9ade32a91311bc3db018e216da9d28ceb7b0d0f7e4bda3bbd28a28d266d26464483b5a60ea4fe22b71db196a9d38e0c88ca96156ffd3de5933066061b4d134a40650cf0a880755cd476e1e7b8a5845741997e74388d7bfab4235646bd5f4bd22a1ed20370d7e0e5c6f4ffc6f245a7d11c5c44851269e46a861896ab303146b6144797175340aa16217c3d413e6dda054cf1944e210d49ed6c97c8864565e829f75f01396e63b36cc8188fbc8a2605ca4ddc0938826f5ba0b89ec88c1ba55316e1f00a73911935221c8b86b21eafbaf1863f4c5cbfbad4ede38f0c19608ab35104c08948cb48e7dc8aedb71bf5a7719323d93da162bb03e72446026add249e121e04b146ebbc7108c9db4b7cdce0022b52f15f34c2bd260c6c7fcc75281062060e711f5b03eb4107ddd22a97751ffdf33680bcb59618a94f0a20b164fd283ce47c06218d452ba83dba8d9b5b66511b8a20a84b55ad20dbf09a0b9128a1e4ac58ae71f66d8c570292f7be370c096fbe18b40b6ad326e3fb72593431bccb17163d23e1c831e675a2f632ee5078dc198c60fed7c9a6522635e64de949d39c18c17fb268f8618b275a592235ffdcd3b366c4c8e93a138010c38b035e5eca428a778bd1d5fabf378e90f64f06497dfdb22fce80bead184653ba5add25e6f9ee5fbd5252cdba74a0f2eab422c955efa535cc44844375cb807608c8860a8cffa94a9d986623edf7097e223f647aa004de92395227aae1867a558ec7242d43956300b0f5acd9f9f2ec0ca6e165bc12b395c77030c0d9c7fffedd654405887492246b212da466527200218db000efe7fb4a1e84abfc52b004b8012d5e18b4612d59c86f516916fae3297be937b5203db0fef04151fd6bcd69089789f8f602610d1c2e024b5aa861deeb3f8319397edfecc13af2da8e6b35c369c7fd27a998a6a65ccc2f8bf8d960ac35779540da6b6ec8d2dba8046dd9263a1f4eb39a40ed85fd25ad3d86ebd2476766f9d46867af3123830845c8ba722112c52a62f639170402aff09dbdcec5926b80a3c2d64608c06346ddcff5faca8eb3907744fbb920e27f701593a557160655e855ff11ae98fdfedeb9bee8ad91792202454a48e050b5b91ed3a1b82d75051f1544d1324007f04a381a63dab7a9426e3d6a932ff0eab290444d92e5282538f1525a6a6251eb016381de834211e64faaf3a7cc03322210135f4c3c6bbd7fd35e3d10beb26209881bd836cd1a7df58ccce1801e27fc7094d5075b5cce43cec16be03a48ea4d37600ba3effc3acd47cf349fda6e5d81c8a979b943e514045d26362539e81ca327d17c0d962c4d9159544c47e31dbd28f12e692f71568a510a4faa65c6597b4127e529cbb15d74eb683e5728d12e346f29d60a3f40237ea95b370675a3e75d7ebbf5c7032e954f4db4a0a83caf32076ba36cb2a8133283d773be1d257f780de253565fbbf8008dee739137908f56e75920dc9a3f4b8b3c214fb9e070eed7bf5754b372df560c3a273a14a2c49eda465227d28ab8e5c1b22538270c659de6498693c1c48586e77bdcbe7c9ad68894731ee7ee26379714b8a60113aa66488427e9d19ec706bedf22682f74f385ae22f5c1670558de378638c56eeda5157499b8cd0fb597966add4d4ad16d22d406e508cdf42074c123ed0c5c3607ba85df42e8c22afc8f7e2f5d6809a05f02188281dab28d67353d0242b04436dc54376d8dd0650d1078e63f0dd23c5ba96fb8d5f68755b8427f0f86a101b4746bc4dd1dd9876ce198b38eae2d85e53311f30b89a89609801f04dec1cbafbc616d123a59a1989505fadb122642c4c58bdad0ce0336348aec0ff3774330a45123e0bb08e4c348ed5438714afa95981ddf2c5c04dec626662621ea239db0370e0fce8f7c529c5f6c896006f60e6764576889db533035c548900a1fcb938947407a4bc39f15b6969a041fffedbafd4e78762406a040472a1d5990be495f16aabf069b584aa217bdbecffc3759a419d6c440b9f8a79874d45282d418cfd0f92db28fca7ac60aeb512099c70d4a40967f5eba1cc808bfc8233ff872516b28088050dcebca7766a32068ee76d2b134ad6f142c09e83f6e67468fc84829902b08bcd733e26c4645e433bf998a60629fd63d4bb133b2ccbff786823199f6497c8cfe5667abe10e99d41dc773376db7bba750e0cf456fa8df1f5654002578da5005f186aa1cb40b9d1c2953030b9cd8dc8401713d586529a573964fea4c435c5463768682cff4ccc266224b892568962cf7a77bae635b14a02f3731803ee29b8dc7cc4f5bee1eb19544e6206569f45f71d073704b1b874319993940399def04fbcacf4babd8bd3d2e4a9fc73546dced48394404654d165b703cfa908fd88549c91936ee62be2745cca9745da49296b5db0e9725a8fd7158aba2b1f66c5ddeab7e37095973f135d198dab5c2ea9c9bc293761989924e301138f2e40980d04a07fb3d704ebf32163998ee7ee3b14b68a7dfcdb595f1c26678ce3ac939a49d97972d144ade687cdc295880f6adf72e5060bb12acf8d7575c5994af0fcaad7b8bf6df82e24fda77c09142cb3a9b11842ac0a6c14091d482c4ea7c535f35c141217be6754e715cdb090724580c4a6a6d32dbb29e7a038f5c368cc0532f296b91b3e01b38606bbf4d1f726032bbe48bc2c31855c2b2ab902cfb3580ef607c9d5086548beb61982aa6668021617c1091f2ee6ef490ae28be6656240ce93033b83cf028f174a2f61b6b6d991c6971ccff41d759d0cccf0aa397ee4cf35f1f30754107d9c3b2fdb761862dd1caa24e5607dd4f36aaceb0fe4bc86078207fb8de0edf626be45dbabaf0e9a733a11021f930962fc81146bafef57404612513107c6cea19de8203f3f2385b7dffd2d37c1ac58bf1c670b45321fb4c1ccdb9fca0298fa13b029c8b8b385d66913c93c17d966d3f92a8660e100cb64b35292e037312515001bac3be4624f2795bf6f21ffed9a06bb374e659a505b216a275d93155806a6bac6eb22829fb3b96a37c4d3126fb018658656472f297d872ae9d8091a0dd24ced70d9afe9d1307c57ff35407d95e4cab15c5c1dfb5612fd541ddfc2175d207997ca54ef238661243da45db621eedf3d1156ee7bd81152a138fbfee6ecaf3fe18d87bcf1e5639e2e8f137ca667d073b6744b86a118a6591f3905892fad067c07189d378b46af6dfdb8b49e0f35e2936536e3b0f843c55d0755f4b2a8a4e74b68e5cabdf526286f1f36b731dcd246ce3a184845422c930306344ae7bdef534bd7399e6499f355acaa864ed84c764103b9bb9987a39a3c8dd30b7d2457bdd811c60bfae55a0ada01b18d6df61d53974f86b90fa37ed6383b798bb9a887cf79d60524f000ff96557ea19c8fc1e0f854daa975f83dc4d38a5d394649bab99f71b95498820fdfc4318491fbc0b34827314dfca5b9125a5f1ff9abadae993594945b248d70f67aaa1be5807ddc9d7050786a485ac99ea795b3da4f8658fc77f65b57ece60592b7d6ae4d320dadaea8477bf86687e2aa0badce3424af53ebd11003e255ef4613534187e694039c8e69af98dba83f5416fdeda1234a2fb01bd1f0add93f54f845f74eaf7fefd8d8ce64913238330cea2047dc6ff2cc98aaaf7b0fe1911e4df3bfbb8bb201b4521b276b7dfad0ab6a132f6d840cc76861681b6730a507c1438d514f317242c93bde05204c66a7cef669a2f61699190ef2d9c81eb52503da7cf8b550a5c2e545d91123b4a7769fa8d12a1ca3687fb8c4ccedd0bd778cb7b6e5592589aefaba0d238a185059b8d3e06c063c6343e92fd40c994b0f995b77b194f64daaccf669302ea8855825faacc405ca7b7013c83780194a3c675cf089304b137a5aabf02ecd7d771dd7e73f635195add11ff734d60ee0ebad8cc62f539a7522402f644b596a5620c074c56b1092f90eb11e6d797106edd2fc2d5b1158255e098fcc688d49f09a02759dfdc14e9d59bcd450553628f7537e48d3f0c481419ea9ab77173dc4b88615e53946782fd8781ba39362d10ee711d3cc750c38435a5f20030f8258ae36df3bd6020d0e8b5e7f1b88b39d240bf4d7e12fea5ad0597cac4ce975b77821250d916d10df70cf74e7abc0201a07505735e7aabcd8cff4a7338d20c5bf268d662212d7a7e2c52c9cfbbb3e8bdb12c84bb3ae69442277ed151b7c3f164921059ef54c7d6bcd9d6ec9e572c56ad6dd90d5fe078136ac8b6a869757d320a1d107c284c15ea6b4423fb29b34849e26ff9b3cdedef6c276326d1061777ca102b794d1bccbfbd85df79ad7aaf92104556e5f24aad3f0a14b752f13e3137264edad94bf87a39059d2649977c671894a6ea37c0ed6088c947baf081a42d07b4a8330b10dc9ffc83be2e3728d3bb455956d137c0258ef738298d33f2575b8cc89286007d1629a7fbe4637601ea1f572ab8c1e21c570925a1ad5359e20a4f5bd1c638c77abc07032f35984bddf5e5f113e8c4c971b3a77401345626eda11e7abaf1b746aed23f6d77d275b00d34a94351944928c7fd250ee71bff0795fea1ef62722f03e6906d6bf0aecbef3953fd524e9f3f9db77d10cd3dd222ac3f507b74272c126de70c7095fa6a686ba84bd403980a669f993e1ae4e7d8d8709f1409603b113a5bbb1515791fdb0932c02f09a92e8ae7e5c69359296ef6a0464ede5438caaa7af1e8a4a362015d1c89f34108428d25dfe9c49b04671b401eb761fd2eeef11c7d1c7f46415abb284c6dbcaed816a7adff856ee371d3a6221312e48496dac3696d7c8beb57bd7903eedbd732957565f6b88e4479ac1953f7aba750af7c6a31ee5889b1e15ae8f34fc5e18b39d4c3355df5c1c5a70a39887689a721fb5b42317184037d1d23d609900b607ed74d2a1ed44c4051576243890d4effc344e22fb187156b4ae9ad8e1c60d09e916e7f00778d014fdf8866c366e3c93d208a2c5d6fe1dec391f618fc584b17f02caed4a45f93f07a9288c3a59020e66661d31c744594ed083a843f942c949a5d1d7d42fd3ec3389cf2e642d5b0e7d16e9bb6164895f4919d14f29d3bc71fbb84545881e6554bb77a22ecbdf9478c43a866b45110f1bf53b4e2cd39462db403b9c16e9b43ccb912aaef7444837845fcc27b8843ceaef744522fcdd70efca0e07331968bd9d33deae21343860b62b06090c9be5ae7b73d2fe489ea683dbf4d867fbe9e14673548c92523550b0ad930d45f6df44d125e77ccea914b34f7a5370be20efd48721d9c3a66a886633713e5ebede98e664bffe7a48a288f402ee969aae1421147646077b5414d26e3d4e9283124aef4c2d9c46ae76be466fa5eeed9f12b7cdd7c91d7dc8f13fb458a6f751d8d77618a9198aafdc933fcd3745de3f929bc2d701ae43e0594221f70d572847520e588d96b2accead4ed5f6b19eebc3437580a591e841e0ac28ce536278e31975fdedb8aef2139dbd1f00bd1c45dafe7c6e76fa694bf7377f8ac7adccbe74bdb2a81ecf53b9f194302e2ef96e8ce752ad184ddad615d4a205d68e218400102736a746c17539762eb65e86980545cbee9c5d323a386548f075cc833bbfe8932fa433e22f009fb382f264d1877e1e6b8f904b64b90efab06651ca032cc204a45b3f81e1cd172904f9296185c394d50abc0f3ab2ef6b5294a6a337a8d113fb51ee33c5a4e75bd5354e611d3c1f3246a258a8f0038d7029f1d384a240442459311564bf08d4aa9e9ff57bee56858b235f06af4ea3fa15687add5e0cca8cfa5a1a6839f2f89f6bc4e5630ae43094bd506d6dcb25f671285307c31317648458be3d65ead6a54eae1ac53a02d16b5d7628f3c8f0f9d32bd83de8e8d4d0ffd640e9c822d5080a23df92d34e01006ec41dbfe998a5de0ea82bc49bbc97d547ece5c2b99919815d5da94c91f7e6ebd42ebf9ec363767a806c2f1e191f0f7bfed925a1be493164113c29a19aabaaaa19e7ca2da5ac7a62c5b3eabc54e27bd6480b8b9e0b24524d69a0df7f4ff22983c5fc30dfd4b746b6f728a4f725118a0441ae9631b8c9393a69cabc1e9bcfcc40a0fc8b585d433b43ddfcb187c2f49e80aa9f6e3e5bf76b418f78d0d7e12bbe37ea420cf8d7ec4dc52f18d57f1099aa0157d729418703717bcbc9a4f065fc42c2381632f5a09ab2e5a53e8051bd53b453f4bd4898907f4995c3deb60d6968cc34a25ea5da60b2e418e9438b602a27b323e4d08e9d5ae296a48ec8b6e3d4508f7dfe59309d06476da8008dd8e86414ccf2ded7c5e28a0a83725a4f859321539072e85b76babc487ae3b4bb0f7cb3a811fe620911d5fafb5ade9ffb040d06940d6c134adf9e13b0a2ddd8a469d38731093c446ee1478f71c8ca11bc8e6262bf323e2796c8d01b535a8f9cc08603dda9e20146fdec2b4d7fa823ea5320cb3bc08f5a2e123eb96e19c7c41b4cc08f71fe3659f1597ccb751abab97217634332de38fda9a00968753bdcd097c77fd3efe9b9d3916429a64332a95396380f2f1898ffc41919d3cba251b793f91f3fcda03667338d45218895827ceb2c4849b1a17fc8716484e72645d2a8deb8667d7fd6c8a4d1c43333b3d7224f98f1a9fca4287758291dd5edadac9116c6ca8bd6d287001db2d83e8acf5f9d94a80ee4c3107cec2fff235e1468a780e40e2088b218e18816f6a76d87aca70311a3bb2aaf6eb6ee71335bd857d5156c463ddae712c49ab6e5fc6f16211102e6f040a151ed8777adfdc2c438f5b421ef067ef7fe7871a38163a2ed15b2ebbfea90ad93d8dd2d36da19a884678245e8924613cb1e5de8a10daec71bec434e64bbba6a028faa92ebda8e1215549b2b3da790d3c1a52ca9e2e1a1c9668abf3197ee224bbe74cd11ab12e9dc7f664a933ede24874c99c48c29aeacae3eb71168b6bcd8e9ae948a59bf2d51cbc60229ec6d00998878ef0fb5f09e3d8527a7d68f009d233f1778f951f12f712b7bca7d54b49464c0080a397dffd6794b10230e87b23770b9b616d7ffc97ed17b4f7ff0c982b31dc2bc93e5681eda0185fc023a4380f95dc43a1a1275a622c48dcba0209f9243c03163b32001ea7bb8c340d0ffb3addf7451d030fc98e4b5a93d32aea7b5933a2e75c7ae5a186737e888615b114fd92bf1f1b1b2d188fd103174d25860f053d66bbcf07aceb9e42d044687607efdb6ff9a5e402c7988fb4f1bf2e4dcffac97fd5c4931664ecc65baab67920c742d7827c2bc68dd455c213c8bcd0f7365b5b88e21f9127fa78989e406f5face0b9257e553a2d8f0089b627009840b6a98832d4ffc9ea6834fff60cd8c27df3307cdd0fc822df69981e20874cbcd2d42fe7ae22fef8295f949937748b8ec48b2e8d1cdc6f03b67b553d3995f0e53e18ea88550f240eaf09282cc431398cd6a15abc978a479968ad3fd5145c970b9b4b7d702987f2c4754e791f0ae5c8df74ef388993183fcd7f2478549df3b934a3708c41534b27cd4403bc1f35321487d6149a8ebf21749f992c44aca882b7984758a66104e2156c4083ce0d3248d58839749e6c1f730195c6a92a0dac4c47767156873d8941f43bb9c1acfed28de361df8f3e9d31ed61dafb60226c7fa84c30d72de6d6e641ca43184b9a5b7b5f7778721ffe90e58c526036e3aff2ba355b93b9d34d1ac055dc7b1ec18a4d41de6d8102d65c3213a5ea29c2119f16c0fefc9db8a4682ba0affee0a89297dc6848bb55ec9c9bf57717f422b9ae15c2a0098d913dff3c1b717530b400dba04641aa79ca1e2c199835404c4daea4119e23a12e7ad68fc319e9c1687f4746aafccc2b74ac4003d4cd1f0ea6618d66d09fddaba404333fdf520a998624f1a7e577427a87f53d8ad10e393e79a0602f6b1a7ba6af73ce05eb73a43607bfce71e381f43aec3c16a271a7d462ad91530ee5b61708bb58428f501897f67153f33d2d3da75478b671285ef94469e18abae7946778f73d05b79486e585ff03c05fade6dc212e2fc91a3c3194a7550b6630fc70eaaa3a08b5b1b7e31ba9cb0298a0f407a88db0fca79da6f22f89f62421bf36cac714ae202d4d8a4487c4f78087059d8f20a1ef8ba81cdb2fbf21274bdb2c402ebd9080af03f51024dd6a9e8f27d0539dd3cd36cca811c528a451f8056727eb4cb62855e866cbf969adc31ff46f06a033a35bc4d8fcbb841a0c3c35e9a7eb79721cbf0ae16f27e8e649783a6527f3f5053b9e8e5e9ef5c530976de58bd1a096179b73ce3a128ad70d725ae0ac2726fe8a2a2c0cde99f5dcb1099da27828b1cad9acc55cb6d95711a6e177fc7b5bfa07aed5b96ae0582f41dab05add2a9857919fc0aa02cbe5273c85512416496c22351b9f38d4bd7a8e4b6f0a72b1ea981b037c5556e9d88a5a1c3f33bba9d11e921225b3f791642f5e98214c64a6ba02ad67fce848159494c3631b4c1a41d6df01af6cdc70121fce14aee545cd850eef5b988f991d8b1f50d1cede8c5f9ef67b5edbf6311e22ab8c2d328078caec21703c2982da9e337e04c26da386beefbcb36188ad3950f0983ac9ae895730b4de5e49206f1b9eefa99f2fa699471b804f4dc2284a415a73f174d4c0022e284813471f7d0966eea797e8ac6408781ed6987bae485826cbb87328f1fd2a9f3b7b3c05a982c53fcf06b3e2a00a2e09eef6f670350b97e169b05c69a83eb4d4abc6a1b4098a163a84fd2581cffd3610ba80bee906d134291d26d1465dddd228dd649dc48b56c6e0129e9b41ceb9d5fb275fa438e176c5998f1af16a546925b735f1862cb034dd40cc98c7f45f9dc00c4f24c50842234800b669ee798b6e4e2af22626ec008d64da22aebcff149016134572718b2757cf1b251ff69d9f2cd4c77137aa57a91806134d942b258d733a271f95dc1977b31dad4dda7eec0cfbeebe5fe8a96ed3b9581fb2e22d6de45683b2119cad2402612772a81b42555c7e98c65d6da9ebe2ecc92bff8cca9016cbab11f017d2327535ac1b7b6b3f89032419af33dd2cc6ee9f9cc27f967964fb3ebbb37ef0df72c0fde81333ba12b86ee73cddd8cfa871a418fcb63b838a308a91eca702657e37b84562b5ed1dcc2792983ddc7109963c849fd22b462c262dfd0f6a6093531ec19337a8ef738d7c87a5d7068d4cc5afa3b977d8d27a315e26d8d9b7fdfcd515e7e187632f1d3e73ded8695daced7ea2c1f6a8f895742a0a9a2f78d94bbd81809a3e7a33fcecbda1d4f91d2c0b31d8b06b69c2deaebbbffb0ecff0ccebf48baa69d345828b467b9261a4b87e25af538ce101f05e6bc45ba8162f3ea0ab88fdaf68a035f059e671752dedcd7c3d77fa4828f48959f9b289a9a46939a9d239a0a6ab0aab94343ec5c583e1074d8838dbdb34acbdb6a88175aaeb238a5c6c06a7ac07f9de144c5694605f5dba69f0ecb0e21d0424244d105f1f2ac9b349f66f86a5e8519f35a037cb81798a2b7aaa381d416f7684dc99ef6fde226541dfd943f066feff0db7bb3333855518c8c027fcd22e52f1dcd991c45c208570aefb36a3f1a3937c50bf1a3ccc6082c3087119daca1736ed08c4ecf1f7cfe9ca4960675e801e7a35359a409d9cf07dbae1e0dee01f51ed0549c14d16c5d251eef24cd836c5f735bd0e0511e8da36b3e3f2a3ef87c2cdf6d261fab39f65fdb168be8eaae636d75a8f49991d05755e67edc61f266f3240cc120c7c81a3933829075a22e621ef5c76e9d7b398e05b0cd303890a3ee8efb9dcc92b02b07d683c1ac79cff039ad86eb09f1c9bb0e581a4b0dd2576bca17a7fa4006adb78fcd368187fe4fcefbc3e1eefc5e733698457ad3e1f2ca2fc236494494f824f36bcc2d7b5dc5d79c941bf25d9b559d9e4869f70423d1f88d3fcab8177362acf55acdae443d13f7f2aa72e64c488aa4f688d2c8c85a8900d60fdaff404a7bf6ab6a0d5186e1cb82a0d6acfe3b693a342ed5f0aec8f5f8e71708b3c6653ec80dedea1775001df135d134566cddd5051d111ea7ea8d7e7e0981e89fffe792f669cbb16d1a8d69add65bcef07c6cb0957c7b8f9bfe10d543c740c66cd6d7756a29bdd421a495b1c4a59013271c7e40df5a94a60619638bb2dde977f03e3f9527677b565fde409f442d39e3313cb3758e3d9ff2f2940aaf83087e6ede87898416af13639bb795003356fbbef381a3f70836b38d494fec41c7095d60dda1a77aa2d0b795ea74ae2df110f9fe6004139db9de3f85f266c3a56fe143b391a975b0f475985bd3e7e380aa730566257b31ca0a0052752fb1a14d7cb98ecbaf6817bc5b657d54aa2859b856cdaadf6c9f9d1874ed0179ac5acdf949574d4ae48dff802275720749c1c2b7e2ee215bd0f8412d7dbcb4c3fb85ec18d65ac3024f2540cd33d21e224a9f2a074da1917ee5cac1abb7a494c312bd774436656b00354eac7c5450e97e3f7774d826afe2fb44f9018ecc856bd10bd399b2ab61c3e15649b840d0e46dbef7f861505fb3648898a4c61067766f1f95d5b2358937227ca1851783a00b5db09c78447414c760fc4654449936d8113051ecac91fddaf391a9bbcfff3cfdee55560597be9441cc4e8ac02c767c5e5b698647422649fd1e9c20143ae2fe9bcc0d45fc53f21a1e0073819a513b027871a8156fd9189f00bb27b8bff2617a039826a043c0c707fcece731c3d22f3b4d87e96b0af5f3011e612e4ae43c640b1d73843da6aa0d658812d29c1459054e05f1649e8fb165cb5a23c878f756f537ad35abd02554b977d1b6d683a72cfe165da3affc4b2cae60c63aaf27a19cd0eb70db0ba5aa79406414bf5c5ac2780e70f6cbd63a25f3d2bceb50a44bced7ee1c32a0abb5669a05b537aed344587752092066253ba9c540ff2d2128854aff57a7b5c37c76463fb8edd85b45473e0638194bcfc48178e4b70853bc0e0bfb7e4479190024c59e967d6b1628b075a0f3f21d3f1432f5e878b2f684bf38e476e1025064d2011618344c1fe83d2ebd8ef01da102423d55db3d45381a24fbb1f8d091f593d74af92edfc4c0321440d56d45690cb607ac77e088235c44b02dd4dc1e6095e56ad75ea4ebeedb5278bc34002dedcbad550757f072c7fa30806713f6cec9237cac5771e3fbccba37e958167bb59fabfbdb1dc70e7fa69447e50a5e6245bf3918c740ff9fd14a5607d82cc17d493bf9349f132d4bb8f7147378f5cece7276df94a1895e1751d4e5452acb197e7e7541c634d09bbbf9a53347ef9f2ea095b66c4c4ba9629e4a8d45eaaa26e27eec4b21c366f48db364e01a1ac33b5826ebd80209e2236faee279b961ff1124720c0837b12d32406735c499940d36902d5905a18f68d848f93dee2bead6e11553ec93692482c84c2ba973b37cbbead2de7d831a8a4386c80a5bf8a6ce60692a8d9754b1d17494574210199086e64e353a1f9973663b65cb522c49c53e0b4020439dd6ee5b6c63e42b619a3ce5a062cfba599d3a5272afbf3507326178f9ef7d795a5ba164017751fae2dcc1e62a06dfcd0ed96382d7708e897d44390923cb972c92870303aa2640753d121841575e1ac79a5d0bac2c05da051f847d52813a86dcd7fd0473e6c37d2688de831dd505b06eb365075e4a1019acca8cbca790f4e88710342a4b6e0f0b99d5d4469d025938f39f35f8070887d18a3f53b9be8208232089fd364626bd620e046019f02b22ceeb5fbe50e0d53079e5454c2292453ec1e095ba0a7c8d94a733370451fbc9cf92de2724c95e94aea97bbeb53b3a7fe04b13a8e457ce1aefd1538017916c27c76fe54e61ec69d5804840e328ca431dd7a3cd2afb712bd3622c7e435d6d11e402af578cf944c2407413b88e2a1febd96b248487f6643c84bb2d8890e5a2df5e18d3816d35f99688652969439ba595a93a9c8dc0dbfbc56b98aceb9cf9afcd4b9c2e694d1e487ccd9963e3e239606740009d54ba32d912a204a922a9670eeee30b8ef085adbe25a2b9228ffff26da209fc35f88885599bd4ca8b3f30421ab7bdddf84b8000c0b805490353e670b421a819c26986234f59d46b17ea48ae21e9d02d8dd766eab50555cb7ab9c94aa56099b8557848c2ff59f606cbe1cf56586814170c545a35b5bcc7723000e30fd95702dad3a59a6a0f6cd1d35ddfee0b20dc089f84b70c0868a68965ea647f2b6a715e40c06fcd95a93adcba0ed8ea28872dd3518282df039a2681c0780797aa501212a2e3e6b42b2be47c7073f64550db1b2caa5f1577acc9305895337409adbd5b4cbb60ae479f9aed5d5d3a0a9db5dac5ee987a19e3dce28e135e85cd3b0cedc69086b489ede088434b95f8d7813e66f5aaa3aa64181f6b12bbeff6e7d4b3c21f5125562b1e2283bad4d2bec98387cd7c89b859814a175a22a4ec855170ac974f023abed811f77c23716277a9740497d10e022bc28591efba7d2a76088884dbf65d0e522730f0cf68f673da962acfff26c5c64ac7fe6b7fef2b19db52f639b491ef006035f5bc1a7cc3dc76b12f0571a01b99b3d011bf8122f68e02ff645c497e9e494b8c36b7d5abaed84ca67e5a2b06d7eda2dfb9ca2752a785cc8f27cc92716c85df89051abad76bb64d41733e3676ec27f829886eab5794fc45b33f2407143afc8cc9468168d9c8a85d795d252bb8d6499ab6fbcef8636be4a35d9cdef78e9c65709c7e8c6db0729bb1fc93c8778d160727ac6229b91440af19de8baee1d46701df56d1d37b0c7b6b510e6f53bd2d87b8ee0d2a545b776c661e1620ccb05551b1529a2a6c0cd09779754226d4755dc6a1d3d73b3ec2c02ce148f661421f1dd5044e11c5f397d93dc981b2cc59eca22ebdbc9280db54f3091175822d2a96002ed8db8552c8ea655367873c632cb56506352b24b036dd81879f85e3c38e4c8039ffc2267115e9bb1273be31d81212e144e6ae7543ccda4f5f76dc08e1f0777286e9577a4f8f0bffa464173a527b5bd357c7abe1d2756726a6914072c6537d51d2752afaa46f29a578be233cbb56a013da996814b890277b19ebd75f1fc56e77bf22d7203b15332ea1d5c0078c0c10837b859fdb7da0e3c7a410a6972d57037da5dbd188d827364922c5cf8b9a15407b71e177102afa3cc489f8cf384fc7bae3e65f1abaa16b5e6a621b5e0f2cccb25816b3b702aec74fc5396f7425a3bf66fae18764ac16369c6411b7dbfd4c4a1024c8a8df0f0302fead6ef76dfd9a0a90f36fc0742c09951364766b4e3406da09f34687b979cb5af0a0294eb9e1bb5188c62a5ab87661760c82e1cb5393267a444cbacfc73369901f8835e03e4db35912b9b0a707bd73fb9298948fbb629b720886d51eea5b9654e654416e902bf99bf06bbf32a8a54e7fef6d8329ef7d258b7a35402fb1f7b14f858a962634a4e64ce608c4654ef5805a176c35de9b6fe89b043f17fe9b18e56ccd0e60534a6ef7bf29d04143924d2abb151c68d06cefd2f403ef1f71989e33aad7748e3ef65c5d2cd0a9093f35f15f836aac343bd6e16c73eb6008651922befe25b54b2eaa49c538c1587ec33f022c130ced23162a4e57284cd933e7f893033ec2c69347172c84cee74dc112d5c91b5acba1a3f00d445f83993f45e70b6eda4a598c953bd6b4b96995977a984284cc78e1a74ff089a8c494d90d7f8205c5d9cf6b295fc56db2f6d0db45f5e323b132471543d0826bd57a629a4e5fad2384a7aec2bf507208a7b5160c0c37816a163ef2d6828772ce9aa08c61ae133f9e66bac965ba94c60c7f1b97ed06e8db58e78906a9b8fa08e48fa85c419088474256e9292f143333d075d47b9566d2a4c3fa2c1008f0dbd13c15a9170258a787c42e8622f76ad2f05e62acbe6d1473c0424e3b7614babf8168c4206fee3719d52b2d0e93b77aeaaaae34c068bf7b9c75a3b6ee72cec106c19cb69775636fa5673a411236cb7a2f1fc527f793f72cdaddbb43bdb5016ffe13f162897fbb0e450b96e62a5be8a150f9baf5218318cf60d5f54c64b20fb3fb55ad7ab9080602cccf5691b2f4ef4ec71586e329146d41cec5742e27f6d4029a3af16e6c7d8b382970ffd1781db24002e23c1620153779e7cab5b788f4dc40b8c89313269a9736b55152a2de7f8921e7aa9170a452322773594d48f38e334a8fe7a9a4aa766c9dfdc93471f2f58545245d8d71e3462f1024462caf386159a03a199adb48a2ac9010fe70f5fe347df561161c853f6d9d409a75c11da8f2eb41382fe28ff84436e7e14d6bc3bff52a70b4461093f519f3741ce9d60686747fd90e6130ed22a01186d0d65533e63d3d0bebead780f084caaca6b58977d5e730f06244884825a30a5669381342f24e1cc41de20bd54112b5239cea8b19c9a2b3b9901fcffe791eb2feb9d8ff95e91f8f45974cc42ecf82fc0776ea76509459572cabe4984152c0513119c7f7079fb64d013933d6550b9a9b5916f71d15e1f18fcd853e388407698c3fc748d258600537ea68517b91dcc3f8044a9139c8fdeebf12c490af0514b35b7ca2897b1630ad0a3d3064695d732560f65c973bfc1f71606f7ed19efba8af1c4069634e641d40aa8558459c286e85a81eeb53f901c08e95f8bdc5ad1cdfb38703b96e03144e9ceb077ad05d37fcf91b6b092e20fcb3eb7526ec1ce7a0b373528c7e6a4a6e32567fd77fd5746fcb23d098521fbe68b8384574d95d809fb6e3de483c84f0a2e398b1e64bdd4f2922a89918ca1fe0b32571a3d099248ce1d6257638fb130c9ba4febd62300d8b43a095d8e38e55990c547c69feaaa797d05c5ff2e37a6c7b31a43097b3baf6155cbcda640f31ce2a0d997279cdd42013485641d18eaa6668a2cd9bb280b85d0db8b6c5f1d463eea28ebb57ae6ee14e726c3177e577243a153eec24a73d4d793c80594d923260aa2664af71536a26477612af6f2b9c722588d16958e9f105803b0fe38b0ea381a9322691f558c0265f6b83a4987ed889e718975ef53cb707f74c41ea4f5846aebd389e95f041cf37aa2d020297551a6e54bb1854ffc95bfaca2aedffb673f98d0d66096f7e554799ec18d74013dc8ac4a80e166e96902364456d0f4ee2185ba88215c4c023b8713538c1399973030c1e41b8c399a684060b591ee123ec6381ee6134750dd743323861d95b42ecd7511bdb79e5321ef8fbc0badaf54a9335405ef995273f5477863874aab28dfc331c5dafb072236645a632d28421fd3f242883c8b71d36a920a64e7e81b96c0fc772d97d66735c75edd18db8a41ff75d52e124fc768c155b562da069c5a442131d8062824015e71d1a88f1477a021a17b8da551a9adbe042d847a6f05b14e63cd3a45283fb527708470b9c8890d58a64fd21c44756563522337833a5a320a5dff9ca16fdb494e4031429e0b05c79e3c19f38de84810c09eb0c64e2af072a621c1308d41c5cd7dfa536b08344b264486c624cbf2670bebcaba7c3a9c8d20f6774fcbf641a0247757d269a152191fdf35ef628a021b9123f87c8b04757646b2bfa1c5f198139e43f8bdd404ebce3d437b655c4741d262e6ee9cdeb7fedb6259d8e90634b0d43d4a97ee16d34142b5d3b10d2c9c5cb0437c76dd77582f0a92712683bfdea7076540bc26ee0add3b070a904f5477be191bc210ce959feaa92778544eaf76ea8e7959b9e9d6eab201e1eb56aa46ea25e983b5078cac40cbc0d5936e60eb0571b2b764e00ceda5fcd0310daefb92ddf8398f2e6547a64e27137f5cc8b98cf7f707a659d44cd71db0ec5dcc3f5b6887d911184a598b19435f4aca810948d1d98f09580aa4a429f50cc9c35d215b6d9f6af51039158eec3c0856e305adbca859913ea4ff1fbabef792b3a5cd6e01ea27865d742bc6f768949bfd89ab4b73c6fab1f3ddc2064d3907957430e818d1c9afaa098648b18e2d92a18e4f73afe133fe52f96b55dd1d4e240c1ae5a0301a78864d71b475245d26e3996d418da1a7c0cf666438383db4d5695f708ba2ce55ae03284d18a0677d9435b3798edc6ca8609dede3de0d16818972c7fa324c967a4fd6499d53b3e0bea4f1942e75009afb2458c4b41b0b72a5dc87219e1e4abd035d593a245b44104e616c791853128a015eb4e3e352c5f7c1ac5af699d3cfede239626eda73e98d749c64bf7d7559738a7ef8cee57b9adada381eab0e9806b137a472c7b5fee6dd2645e7b0f6fa3e24dada7077056bf76407b13bdbd9911d18cb8f5f5a0f106945bb9347b4b9bdc36624ade48bc1c76f477d29021a252cf51e6de522298c7f63ac59c20a66d6f36cc51404a943d0f4843db35621494fa9427f37b81afcd8287c575ae05ec666ee6d27d02b958bca8c480d2feea690e575be75f86b712b96d5ee369fa8b8a1308a91b38c3fa14a9442e9382b61189ed1ad4ffbc8f475923e5531969e22e9e8ee0eeb7e85c88e903c4ec140865f4ae22e2f9d43a655a5b5c73b64585733d68373fa0b9d1418d904534626ae3ffd56c965939a9e9824503770e65e2b46c350269fe70c01daa1e817dd0934f8fb64bedbf91f8e63bddf5a0d2ddbb4331d2ff2611f0e13566dcb09c24ee45b96c4a58c18588b964d59253ff73dfe144d69834d68ad28e338ddb752150c05d39e3eb54fdb6d14c38b3f47e5588137961a795de0e0a73116a9efe4825c7737c3a4a57dec8be62846cef7a17d79334a499ff11512fe146ad2304940fa444d3a745fbe1d7fed0692ab39d9d2977f7dee85449ce71b3fb1b5f0ef66f00ce03d30a337dfb09b8d22a5e1c406bf3518067b1382e4679d3efea12c65e801e24ec652c7fc01a86805482da3751cb155c14ff73ee888cca982df28a1eafcbd988ccc88253184dda9080754c5a0a12c3317e51e35430b7be3000714fde62d11a83c9c2fb286b1e15d09ce7d1b68f5727a6afff95d63531e2452fece9bb0e3cc4d4c28e827e31290f8f0bc6906933e124ed4a16d9e9a8bb29b387b4f69e763eb18cf301f08dbfe4c9d3e07d2f00ecb4fb5bdac53e18b027eb92bf62d10a433a42143af8724129373782aae17ad2aa31fe2af6efe5a6cfb30939cf88cfe0911bcb602964d8469729748a0e400aab5783dae39d1eeccb5b98bc58365e983c7f1746360c7c968d74051f2e538282a19a863b7f964271bd0a0b022037550811cbd213421d77eeb62df18b933d547f3267848573b3cef9593aeb6d34603edb36e80f74cbbc66cbefa0c915394019e68f74f51143d6f213a5de9c7310c6b526ff086b8d2f12ad5dfff1a4015d8dcd3b73239c3e20324fe65f05059073723b6fb9000a5718624dcab56b9d73bc620bd651cf75ec8bc251958bab8e9f574b810c75cd018435c45888409511ba96cad6d06ef5863d434468634b6e9a9da9bc954a04af5496529622dd6f71b8d42c7ae1abfab7136bd760e7330da33da634e9efe613d763ba97565c785f97ad4ec158846a28417eef27178014ea7916ac72ab66f12cfd5c829aff6a8bbfc1849a9e54ad121dd23b1a4b2ae27f8dbee49a18ea67c1d5cdac33da080d7d2d645de2a2e4577dfd8a75343f52464c2010ddc409ac7e8d27195bf9a646088237c8ec646f25b8a9a120b8665d80ca8547d12be06f7235248f7a4d3919a6747a97a6d2012e9eb5618a9539a43a0e96c7ea52d8609ff80243d2e59c20dfed0526b97d58fff1bcde01ce66fcc02f60bb98655c223ed1b08adaa6eb4dacab1c9bb724b4d62b3085e0e1fbfa0fe67bf61efb1ad23ec0facacaaa98b1c61c980a1e4242a7cd8878906334543f207f04ca9ff769fd7a1c1c56be90456da531785e9d09ebf7b78b8d4bab886705e38b8143e881167aa3226bc2bb104f3eef206a6654025dc69cfb3238e35bff7839e9f9e3d2c683ad79f7874412067f76767c8b2499903f5d557bd38c1026fc5dadf215e576800ad3af3b2eaba115d1cb0007f34db8399af475261d13751b9dd0c94a1d3a7300ea12b823bf3fdc2084a31f6039dbdc75d4c12082a11d01a0f5a38916286983377e60079099882089b8c90dda499779e31cf9b7026258b0e776476ad1a05eb453c838dc552b6d9dd3e78ec3f0c05ed4ca5e24196a7b32b3ca8655b8b80705d69cda23deea589acd1dfe3117d36cdd9b7f9632b8274210565807875e273f206e6db7605b13f5122d905ee0c68637e55ff303aef78acf7b0d2ca0136796c7e28b038787be848d6869ab476545246b5747b35e5c2cef30b8ca94c79667249c0150627897fbd4bd1770e041fd0466e3aec326f0f9dd30820656af30023d289c24849fdac97382eb877a6bc953508a067356b00c0e345867b81b5549fb842f5eb645cfd15ad8c8a6e3e61df8b33aa3d8b80205365ee53ac30795ecdf8b903a41f20ec289853b92d37da273130e4b27f1b1ac2a42feb1b9a4dc7eefdaa3904c50ebc806bf0cce10798935c52de5eb625ce85acdfcb874b28c942c137f4017d4501feb89d18b11c14ba5a1ebb771d2930f55297eedf2d936e996de35272ab38010df4d9f2d1d67888e16b4282d0e3955618ecffb043b0acbd4d10d802ac789bb9275c31aad83617594582300890069ec1754f53d03bd51ba57032688f5e57d775d1362ed5e8ff1d7cefa383f901c1389f1af16158d28ef441a328cdb15222c1560a54111ea67b3756f3bab1a8dc20d6f703b351bb752563dc77574e1a26eddf65ac93b739a169d8f8a1f3b3e6314eb0ae9248a91161467915abbf6889ae4fe143222913a1bcd5555c9bd69d32e04aa7f07084c308aca3494e7a3e3bc2ea2ee935602fd406bba373765d3ee2b64e99a1b24901a85e8383a8a50194f59cb13e47c24aef704ee8decbeb15731198eaa966344ab7cd21a22aa57766c6142005f59e6fb7e7914ccccf4575c26cd75c1bb2c96772d33f87852e47cd4a18781d1ebfaa2e533558cda470ae32a0bca158b841004cf5477eecec8fe0ce11683bed373c9e182adc12d8825c026e15af5863e10f34bd5693fb0d5a252dbd2f14ba1ea3291a297a04ac5c396d34a1f43df4ddc929f01cf3fbdf697590c0ec80fbf0694d42845e5f1114eaa5d1f3d822330262f6125867308e2101d667db95baa218aebe22c18490be2ff36b3ca9458db5d6a429cf49b2ceb30f4d370841eb921250cee904d8b612f4de2205f2515458625a7d2888af5fa0eace8b2a90faca0695370f248c8ca7679053797388a5f74c4c0c8bf60a741e9a7f8a8392ec7d044408356432aa39b0229a31301e08bebb3939277d348832c9b1ec7d0819482f0a8944a0841a10ffe90186d019012ee34d59006e8694e911ad3eb7a5c201e2c429d8568902a7b33be676c5ea59780f42d5c7b771c1d85122ab6f98a4e8c29ba2a5785b128b21fcfa1daa45e4d04a23fbc63497a97306d098ef676e98c84249d1cde64a7270a8afbfcce3b12a48471e72ea2b8cf6f70c3ea024baeca4b22119a1067888b7e18ff9a1f9f2e4b289b8e52bf42b7f65de47c30ee4040695e738604447b3c935ebd8ecf74d36e9481dedc8cb11549611cbc25353e00009ac7ea30953b06ef72a5949057e0ec55e98f8724cb708b7166c20476a0926a985af0ac37146452ed90a3218bcfa7697bd420fcbe392d598ad7a15a33c1e46f52ee0dc936bb5ef9eaf7c5690cff7b3a09cdf5007d4a2bdbc3f3017b6d4917307327906086060c6cbbfa1f119a852d702d00b624ba3497e9c38cf7f600eeba0fb8c4b5b64129700d436400d4fb26d82426288159b663a4d4316ecf3c28b5acb0400d727f4130377f938933b5d13b537f17492e3960844a43db6b6e233022012f0c3a0ee40024be990765e5c05558ea5acea6922b9b5cc61e0fffc8db7888dfbc6e0abbcfeb224048b0c700581071b6449d2d17aafe13a24f974fe5747c151d24fc0459609db56c6430e7c9913d69d81779d3161d47402a337c9db8e601739b42a082ce63c6a8a3a21e905604e55ab3c2d7ada1581b1e1ad25c86d688fe2d3b26bf8bc44f1935bf97a68cd928d3d4cd627d9c3400bc5ed7777ea04cca2296d722a5a8180203ee4fe93cae4f107c101ee931ef7cd7dcab2bc69171f65d0eb310d9ef7218daca13eba0183af411ae9359709c3612328e229770824e0dbb1bdb2e5c8daee5dfa51f999fc9cfd82ac15d67bc4e94e2cb35d3b358fe92c2bbf437c4afd60407ef7514b8bc8adc067817173af8b45b466b194fcc36903e7505b6d4b0c8e6538e505ee07b40efa8747996755de6d3db9aa7410f958043407429cea191d296ed6ee3b85de7026b52af475a127c5b007bdc35e63ea638d6d8c9e000d037f8b693bc4a25eb89506008ac322c456e6ab0cda71695d20982d37fb17fd7908775a91b3e1794477dc3777ce66d71dfc9d251cce2a54303e84ce474450f07624ba5aeb2634f0c2e7d2ec7918f7bcab8d8c3b0a86c1ee51978f4792b14901a301f03c27d4c212905a1669626bb376a6aee6ffc1abfd454f25bfcfc746babdaa1e5dd12bdfddbb4c35ace8ee3ddcb5197cd2f6748cb7c08bf695fa516f9ebec8151ef33dd0f9fb729c964659025c157584041aaf1f79473b9267c0c42230eb33bab94ba4251e72fc600c0505b7dfa46a8258fd833e8b43147a77a59aaeab9ea1b9a3723bc9e92a1eab4d0d488cccc210fe56a0de712e6dde0c577e5399138c08077dce4e9fa8d1ba0615c766481840df2b9862bd4a7b83cd24b8fb2db8e5df6e2272ca129576ebdd3fd0e5be35dbc163a2348df5f0676df7bd49a26f658e4de8ffb6f4a8718572a99af39763dd297fc2f85eff6b1eee6915b74508e2bde2c1a2100ab769fa985388628ec49b26a9dbc4fba5731c43d8a72b8f6f96955de2c641dc25b7479e56d9afc374193f869a3fb881be8a2059608d4c55ec0cdb684c02e24fd49b3df6ae3928ec6d98a49e541ced3dbd39675bedb0e994f784ec86b44422a9b3a1b86a74055533065f46985d5ca34ba47080cbc787239a7e2d45d8bada0e12bd5a304ec0eef2b2eb957237b66a0c8a8cafd2c70b89803f6841909b2868f172ae7533bb59b37881553fedfc37e206fd20937a7bcf7438e7a89822b00ff6897eb3e356f77ada50217f244316a665c728a606515c38ff17a93296f8903a63a23b6f98346366664ab0d4a0736f8780ce13983daa6cde64969b1d7747a69f519eff4abef0dcd4da68cd0c32311a29119e208c2813a52aeab3b395a55b2894384f81b93bf78ef9afe922118352344e6c965963bd2e1de64c695eb8ccf7374f11b891c12a711cefcbb62620042c9b07dedbe5d9b7cda94a6ccdbf231452b07c11350173ecc65c1fbea4fde38fd0be3857bc6e7621b0302449fb7456449ac75e7bef1c45883fba45b84107b4b8f036afae4cd0c70ff1600d9098e7cafb279b2670d5a182a73d7cc966994f59a8f89ede30aaacfd23816a7796860ab63b5ce2c5cde9248e22974546a238e84a4588cfb20fc516d7715bfe390ceb8fd4911eebb8fa67621e78f21a08126f8c2310a60e7b0b6d6af9679ef4ea0ae69905bee9840c46e1cc985a5c12ca933e89ea6586987d27e7d6cb48c58ef6edf24ab867de0ca8adc76db31ea73fee5bd63bbe2a8d96ae71d66ca0614d3869136474689be3f3454bf8a5e258127d30dcddcd98e361a76c9d3e88ec6b2c752821c4f8db10255ad8eb7036a20965ac893d2fcf8568fbe1b6a997753008b112379f8a1f22d3fa7f37927ad06d9503806fc7c08651c92e5ec48bba5da8dfe566a095fbe4c502c4586b7f193b9c6e236a207f9e5de77b757bda7237b2a45ba8402e0614e2b9d7108e4f662f7710a0e9349028b839d26d94d00120ca4e4cbb558ce37ed2bea7575898b6291d0164c768d2d5c034abe777fc7fd3ecf7ac766148f0cc1b66c4761a0904c82a3b1ff8304e2d4e71b344378246c967eadc78fef295a0e633f2c09c9fc2457fe3ec4629f354585e1319435919874525b509545d73e3196592d35542b77889d5e4b8824c5a2dd24ce9c655fd4f76f1692c136043153fd4265fe8e0278a40cdd21738a5427985d2e1c9e3d3944cc17a442c097d8fd00284c5a1e92c95f44387b9e30c98e279d5323ec2c4b457f7f936910cefe765f55ce05353232c06237f3754a460d407b2eed62ba0048ab2a849ce15fd771d088a10490d834b9ef526b7163bb06efc36c3942a3e9bb3c3dc1f917b48fe190437933d989d3e2869f1431cff3f37ad58e3806bf646dc03d9318f38fec33e480e60eff078f894866f5e298afce112615196c435974b4e499776aabe82645ff621c6d3deb7354fed15ce02a45b79096a3340c1e5547470c5a05ec6102f5cdad2c42be959b06bc7e4fb1395b6973a2f9cc18814360789bedbf40695949f0f043502c9eedbb6383b284ac6c4c9d254f3f8665945c3c2830a618d505cd4c6e8b8762440255f72a5f3d67b59f08bf4663f02a5f5e1cfab9e93f5ae012e49527a9de38b1ec05b60d3909d7520d872b428b465b84743a0ca5e06d22f9787e85b265e610893b3163257e87a4344385b957c2ecea5a17a3aa051052e38760c9edb293766aa66b9b34956e6e3dc94162fd1d73dd973240b64857b193892e2a7c2d1ddcc22a071fa94831dbfe5f0bdf9f5a60f2ca65eedf88c7afaef370fb79d04e1d259cce544b94eb6ed91d6819945fd2ef4bb06b3edcc92e857eb25d188ec5f54585020c48cc39354ef67a5f848e1786d4e454117b44c4c7d0d88a4bcd3594a3770567d91608dfef7b3e4241054f89283bcd9fc7458d9121f8589c6a5e6cfac2da6245d4d8f6d5ae8beb259e4f547ef93c47b70679d0cbff1d31ded521422263fcab947008d6b7c1798af65a180f73c9445d4850464a4569a4c6d822c1ed3e230d757ba0b62ac6b39ca6fe35a4b26720e64c3b8b779f64cd84c7a1a2963b0ddde7c15c61b08f02138c2370c931fbf0ed0fd6e5201fc1b6196be6dba4b18e4e222820f13efc77060ed69e2555819d89348367795de4dcbbf7e7490a4da9273ec82ce0042a39ade8764f87cf5c5b3f2644e10f32c1d322e98a1194b084fa89ba5d99aa1369cd89f723575c34f4394f17ca586e196eec611fd1ad95b54c291631fefbd7b6330d60e4cc865cf793468003f118618cd63c1a90fe00417affb1d7edde13ec8755c7f4dade76e9143e877528e7e567eefe39d6cf3dffa4fe2098e77fabec023ea1bafa897b673aa63ee129d539d55e872f40ce6ff77a11114f45ede352845b82429b9da16d79d6b3566cabb9090bdee8cecb2af62efe6d5d030e00b1f88151847bc3a6e5d31f4ce20df509c4507413c5332ca0272cfb09d6556d9a8dea7437335a7aeda3d72328d25f063c486259a98257208b3cc794ed86a640c3c495b27c5cba5c5d4098d4c14e1a8037e081ee63dca926fcbb6d7b85f18a35a5a30ac83102b57a74c07362584babd297ec4708a4a0d91b8763b9ab8a642b1f0a19283b6826ccaacc248e70b487b2a5678050e4b7da70dce727b71a21b59151c174a30f5f5562dc278469a7a7d61d01b42bdcbf61f0381c2ab6bb79617e04bbc3252b7936b90a067398bf378e081e1c32cbff5735316cf72f42c41698e67eba132447b611b29ae31fc4c1618b4ae76f39d348ece0781baf6dcf0d04a6c684acf72b0150324082d8a5c5048fe02c80e5dfcfc8e03e260bc7d3d88c40a21fc2198b2577bc5cb9f36db43b4afb78d4e5179762d20b8f41cd7d7bec7c650b3f558fb2dc893867011fa919f166822a4ae81fcb307ce53acc9ef65a322d9da44dc0cf6df9f81cf7baef8752360ebb507833051269ea3a88ca8717f1bc510b52c08326b1a5d94956a1b3aa762a49a4c32fd861b266b7d8cd1305765f4b8b743009ce998aad36f8f0b933376ab1a5927a38537da7b76e4fb7f7b49dfb004bbd0ace861cd6c20ddba4a822d0f451a350c31c1bbfdc3cba4ed05dbe45ef11da77464dbc019e40cfae8b2a7f64118e896c6748de10a2db27e45b5552dd90eea397acb6e3fa6cf506e488a4371730ac7159514fb9a37901bdb235e026d02409812aa2a5c46d6a9ac0308c627338c5d4e4d280d0d85c3804d71a254bc1a50314e74bb34ffbd0a2735e6132c82533d8311d541cc54654ecd739487ca64c9038fe8b56dd3b62fdc6ed9e4479a4174b78ad8c26330e023c1e758cf34d17e98a44c8e866632459fa8cc7d5719639401c1735413d7db743dd2d7e561fba6f9266b999f276dccc63ee838fd0041b7479c3941c32b3afd8db159ce2c1d5db712a5b55bc632e5ad7d59fec5a10cf2a31ef7cb3eca88e9306bc22ff5c60e8abffc76cfcc1305cda7667ea24e45fec71a74c3116743d57747ec958bb54e13688bbb9c8b951a0eaf2d67057ccf02225d7cd985b6a54ee87b60ab7d3cd84cbc10021efb31921b21bf9090229b5725efcc4cbb32ff8f9e69d18a58513f38d101374e1b201b29966821c7fca9b7dc1f2bd3937035e99ac7615d9408f7d30ac0c7565bfc98d8783fd879c73592af36a6a819cdaddbefa4dc3320552dcba5b194c4f5a030d9e1c9fe9f5f27ea12637e94bc0fcfe9a166e59368abf69f733459ef1440c246ff54c6731669fd2eae103879b1c062a8ef1632df15e5cf5d372cd5ea32db166c301904bf9f2576af7c1fff774003d57aba76aec7942e458abef270805b1938517a8eda9fdbac1fe40c0c1375fc87be0bbcbd2f7a5209b1caf808ed403a8e7277217f35ae20ac71de883c1613973bcc12724a885e29aec1c3d40c802d8e9d8f9a594ce9a9bf56ea6fb998916f909302806426629ef94a4a6c9f0e92d6185f1ba6dd2df754aeb8086d125e7b9d535244a43dc86e81fb9d99d05dd2ce5d6d9fa80afec81ca0439f4ade31853ce69d567a1fb489132ef4720f8fe1c0aa17a7dd6549b1d9bb3067c97b8ba5cac01239d9242f45c9289c3cae33286e3fdda38d32789dbc73008d9d7692347dbfa804a0a7810fb76fe93f39d524248df3dfacf798e1b30309736e058caac41e5b8711e8273203aa6c82b34d71a6462beb9b0d7e37e10e9d76fa88976333cd035072dd00c0b06c16d07349950a5d42f420783e9cd8baa862874b5debc81bffaeac46501f190f02bb469352ced0e48d0475adbdc489d09f32f4d3efb41f10aa106ccc66810fb7b83d3be583814e5a0720da83cce3b1b6a437dd02bd024a56daa9f429d5154aefe6188e8fcf417e3df816dc4d2774538a8eca25a3e8bba9a9fb719b389a3765d95ae94d3b85d9338cc62ed30e4ceacabf6ddb1c6c8170673c99afa2169c7a3aa856d91a6823b088173ee121c15633617bc8fe7dfde1941696de79da28fcc0621a385c84d1d02d087f5364e721d3b1879bea8e6516a1268e2cec2d12082b402a6f60345970a765507e26442c0007897159a16ec0cbda282fffe0f288e87efa94dcd804481599c7c028db4c7b9d749486bc6e89ca7b79306155800012c3f2705a7a70048c76d875f2f249a615dcee04056b410902d55f2a5c6bd9849f24cb07d528d1a7b34996974b877905cf732132069253d4118b1a7829bc836a94bd61a5c3f58be127108a8c0c639c04c0619b6f78f6bc9fdc1616b1ddab26c91ec6d40f37ab149d073e3eaa3d308c6d189230285545c9f98320748b844ecd0400fbf9d84954d2f14e9b29859fdaf469368f3097f86c0976e481a443a18b2931113202b1604634a5802968dc1fc6121f9b132d61d000919a11335f3c109372f649e03615e52d58b060d89bfda8dc46b32ce647060be39edc7f66678cb763817ef4c0134cb0a233576fc04d82913f60174561ef6edeae632710b969d97953e136e8b99debda649d056d63ce48a140c91d95bbb01489477c0b36650894d54a0f364cf8c713ae1fcf4b0541347938121a27bb48790888b62a06dc25a67feff6d379dd288e873a499455c6193322f348d614b713ba0af1700d412473898a490385b1735e3d4a9182f6c9066cafa6ac0bb38601c4b49c9f3dbbc648326795dc4d60b28b9100168dac85c63e9f8514a06c5f8646d3d73086e59da5f2feb59cf08f2189f015774342d51685b3fb7243026342c697b4e5c64f4ee805f1c5586204fba066b432331df511169c2d64017c79b281bd1bd040fc20392366b29f9237a76faecf44b769766f722409b6ce0d7b02e4b3c2c61772a50407c209dc551c51e76105dd3c9250fb5dbd8fc8159c32e1a304f175421b934dc8d448d3fdf1cbec0a45b0bc8feefe08b05f9aaa1fe659d24806f3af95c1674db467be65874b4fabf15bd08444eec5479a555430b308a2732fc1e51a4fe3a1283afde620e49a48964783f2bde9661e0f206f945133c54c2e3b07f7123ba57e00f79d78522b62a3c522d110a79a50d366ccce3c0f7e761c4092e55b6b56c68e21c5d3733cae6338c9cd46d492084c7c1e4a6795b6cc9b823f5049c0c7cbb9af66cde356b1b44996cba28ab7f50b89e2ce97758b62724c3e600c831e2c3cff760e01175d1690468831845d6ab3880751f78f4bbe47ec77b841f8dce0d401d19ac2646b3f0dd7c695f8973236dd0ca11316b1c92addde086eb59bafe3247ca7bc0bb629338b71dd7256926e1e105cc71a232908373de5446b18c2e5693458c5a28bc4703669bd7d7d9ca334e2c171c532ac94a64ef2b8e209dfb5e48ae12371ca0ba16829483f5564bf01c8fe752dadd5105e272491d6ad1f46fb303ff696ad99dbdc81706cf920d2f573b85d9ce596efa329d222c537060aee1bcc3e32172b7333d14369f64817289fde9763374d40271c41aee45d8a32cd123a9c8a902aff58677b36d48a90bb4ce94617b11164022e6d15518094e2f4241180cb50d1a62251fb87026527d1307b05076edafae26e199a5c4fcd6a4e93aac607a17eee655b2ab1178e8141a3e36bbabdc89a28b2cf3083c06bbcc77b7dabd981e846918b3b2f40bd259a0b1988017d6a9a816ac3838b4d59c19f7833ab5067c9122208898e3380db9c9fd2cb6eca2ed40312020c796eda8ba871aa4c8e469c90e4b02eb6004f20fd44a5372335d7c9cb7c64f057d3346d8fb9bfdc7848b1967b51c483b5dceb248171d85edb2666220bf6a1e2f6ce55a171b8c17b277b9b25a5f50e499f64fc201a60cfaca655363092904bb1f14c80081aaf52eaa576282f9006a62a60da92f5df4706b00f23aa2da131affdeace6997c3c66a1ccca4b2e10bc7d6f49877c36b850f2f94356ea61d7daa9a4d46728434536e518684a354b84efa13e60b451529d21d352542d43ab69d75c8effce548ae54ad2da77795b17787b6205f2328967c8d7cba53e94cbbfecb4acc3af1a4b0f2c3aa2142e7e446a9e993229b2694dd67b37305ead706c82fd58a5a1772f07a61513fd8c1342eb4fdf912b4edee9c3ed02027b1e39e158d1f1a88e4e6bb0fea8e4eb4a95d7759684205674da226906d3d7c549a0a60a71853464c7e784431e097029fd1fd43973d55b5e030b7fc1a455e16aa2d09e58264f34e9666ecf33b753c6269d5579e9322b2006aada9f724840bdb120dac7f3ce41b4536b498f91cbef69173f79b6ea91c5ba0b6bca4a8bc3eafdc2a04fac3b6d31e570d0b04b1af9dd2a1009361844820b2c5e4e164b6219ad811c303919573d4a42c5226d5ddb6d605207c4059f3801f913698220be7f2fa4ef24bb750721563721a42081f3cbdae5e619d2b930823db0464789eadd0e121c27899190fd7e7c85981d3f623996e4d50bebaa9cfb96dc2e0676693f3278be36128fd93c725f43d257387fdc7ab15d7dbf2aa96ddb99634dd5ed1202d4ec9442e91fc15be1c6356e8124a03d38baf87ffdb5b57d09a94052a3fe2e14cfc17c8b40d7efec2d0323d07d2db164da8baa09719e24f96bf2c0b0c2bdc6250d3bfcca2f73d8ba4b40cd5335057636b687ea857ea3246ebe16c95d72c45c4379d6d5d24dbd9272d14dd8216c520fd574640271bcdb834e7f7734baabca486ede0bcde50520d8706de1eb3e8489d8a53fd8216d080b163a25f66803f565659dad0cc3c4612fbe6d999ce7cccb8a46a7f313c08be39a8e99a3f709004f36d1ae87fabf7b1cf6abd8be2aad84a4f8e88f66450597b5e10c3544ad2efa21f2bab5b055fa1f4cde7e3cd803d777817ab28568eeb38a38c3084ae6fc66091d9ad0b0a8132c9be6f19f3580150d4395ff6e0d25a3d34dae6eae3c91300117e967269cbcdae1ac0acae81ee982277c6aa9c0a40dcf75a91f0291270baf50b86f4c5d8ffef7c0959d7d121dc2928d24d80ae5c2a6acc3e9cb0f55b94215b752d3918fc61ba166748aa68ff37cc142156b4ad4cd09d099b4c7c60b65dcff9a3bffbfd98cbe25e246af24da0353831d3b127e2657a3b97698244ccc055be9d6dfb1be36a48786d97c1ba7d4e1e754d00cb8c05ebc8e2b07eefeecb4c49ecd39eeb16ac90b0c83177bdeb7921b7ecbd34fa05012dfccb685acc0e7547b82e7f173865b8a3499c141c6b0592b0d2562b44d6e83376d08c29951855080b99f74c8cd63d2bdd27dc9dfbdf7aef54906c8c2443d17dec280bb91077e84912e5c960aa08a9cae53ad3fe8b0710f9544a2b9957982ab387016a9eaf4026102cef394ab008b303d3a4f6cfd5078b9ce7e94e2677cb9ecd9e5b8c207fb0eeb86f17020c82d18e23b2f863f94387089a2205738933165473f9d74da24bc2baeac69f0e28619df4f5b234579981fe7edcf16bf5152de913647c7d1822f17cc0b7ebd3c0c494ad89f84bfea6396565773c7da70d8dbda4f1ba76b9b48dbd4f592192407582caf1a6cef3a3744fe3b3c28f752078524c45abb65e21b310453a5964dd90472a1437cd90bf5b9e4c9ee0e3dee05abc7caac598666e3c0110881154169de3e3ac6eef831315178c111459ebba070f0b89f0feb3fcff4f76b8453aedc031a9860f38ba0ea07f69b51600f2a4c595fbf46462daef983e66f2d798b4ba5d1defe466642c6cba88321e91a9c26c44aa724f25f3c3aef3c01b32f8eb41706d891c28ef8092bf85d446212923910d0909bc599d294c06d0848562fae8450cd8ab2e3b136571261c5dbedc929297d1f9ce28f3daf89b8cb8e7fb2471b1e5b9b945a8be3a6c314e3dd44c1a953b20351231b36fa30c67e47dbfd7178be1578fbc7b0f1c5957c67416567649adc75484f2b431de32035a1a76801497b5123f6615d183f90651d5bfb5d90db5d35e56d1f5e461b1d038b270829b1ebfadb4916c8b37d5768bb6a7767e412ce6a94523dd7cc8dfd5c94eb40fa8e3288da7215819d538c0d4a76af58c046ed50efbdc7b55c17b4482319f545460fe72439e7e78b1de9e194adf8e82a0d1cdc68f61132adfde9897c877b18f793b239a08f1dc652b856e25106ab57fd0d87e6ce87281b277f0e83379250c6a6160c1dbb4ef589a6126b5f66be20ee071365fa3683cc0cc7f66e242e35ecb01ffc59a79505f9c1a8138ef5a96d7475cb76568e9ebddeaa9b9227cf97c37dc6627701a284481eac5638a29603caf3dab92aaf6648a750d8fac14c38114c91f904eb518b102a03098a3206a1248d5b9d9c647e957783879e485dd42807fa9dad153590027d4ac22d345455555fbc13dc240afd635416ded93904264f42713ee375e804e3386537c976cfb2fca29534bce5e1ba9f7739781970e6490837b9ccf95f14b95d71b095ea3bd7222d4350f188b731022c3e865350de06d96e5e75bc2d4ff01d42a1ffa32b3180826d526e9fce54c09c4b8cfc3c7d26766133ba5d877c5f1c7c8a5759e8f164038c7fffdc19ca999a7901dd474a8803f637c2c64a93819604b42e672203a131675cacfe8a718446a706c9a7d0775671b8311042d525b743d0ee8ff75f5a10dee3049ff2bfa9b6c5072d79967828777aac32d36e0c28eefe70ecf175cbca2bd8842abc44b3cd986d6c915565df30f445a717ee02add06764abbef236ce1dab84d2fae706ab0864957edf58d833c776d8372e6c8bb8cb74e62ef1bfb4f36815a0d0e3146ababfd18f710f13d672bc12b1b108c43bbfa64a803f0e33a05b580856f9f5f3b700f233437fdbda3b13e3f26f1494b72f96fdab4b4c09b83de16820bd45eb64ead5b9a7773b77c4c70b9ae65cd5c1366b2587c0a2d72ec1a017fc8ee7c7ada04eec224d62e9c0735eb36e6a5829452a2fa7fa99882f67a0954aa35ce9e94a2418ffafe53e396ab0b60daadb05818bab4346750d51fd888300aeae93ce20d3400ee232b6bdf4d326fe758c840c6715728e391a2c9d5ef02f6fcb8fe8210794049e1b147be0ec69ec1e5077bc93742c323a66e741dd97828b700284d5628e81956c31bd82715feab2ef611dfac0e61a32ca69f1607b40ba4c15d2117cb48a883afc9bf02dadcab956f7085372de74021b1e92c277a2d264bfef6d1e138e3209f18869ff3a825c8aaaa120d88359eecc64729ce1cbe5e87917d4bf9c3b94199d33c2f8c6a164b81e6a0265ea8c3bc6fd5b1b67cdfb7300988c6e33f765059fe00d69cb8067d87320a195b230d760496d3d0b6a37efb91c6999e4a16ea82bf89006613973ca9bbd5b1e3ea20d49464d44bace37d1490d1cc03521a3fd21c0212c0cc8af2adcac57c590db215aa44fa504862e4d8d2ec3c1826998cbfed8ebc863e3019205e85fc4aa62544b034fa4c98e03e77d899b081e7bc085f44cdc79c17104e90472fe748d1dc4eeb23d082f22cf0e547de46d5b3bd9c7fa5240089b6c15c7fea5ddac05c62cba706b17c3734eebeef1a189ae0c420f549e58c0a1979399edf4dc711717b7e7b6adaf1755b1977fcdc2d3bd29c3173df212ba7f3f286b16dd2b9817d00afeda6a87af9a84c35f942d4bb227e4d6db815916a488e3ccef3d97e1e8a6e6aa60e192948974da80c3cbbbffd1a547ba9976e90a927329f8f1f4fa90d7c54dc488ecf4947a3547c7428af6c24c05967d3224c85daf3fe037b7ad1bf46b96db1c8af71be2cff68665fefe00c0aec74f15b47a3bd348245761f28c5db1571203bc15da9b8d34c73747bb3eca9a58d09b693108094f4513b579ac2e2cc51874a5f5b7650c400d81c673890ee456b2a9cdcf990f3ec238c778a8aa9a8e3c9b14db2ec965029580660da7f9638f7ece558cf31011b8abe00c626fe7ed0463b4e66b0e73e3bd456c8fbe1c987fee8f47966f619951e7fa38242972303c344b539cf0aa7dea77a72d5e74a81a574ccbc312dae52079f4e9c572d1c3f12725b527552bfb4f3740c8c6349f1b008cd2c7ddc6e94369b4f975d2eecf75cb69595ce492f0449c3d6ace43fa55707e32d90b33a634b395bc85f2c6e02b6ed461d831fc7e7cc62cdc7bb675e48b7ccb7088c42589f5e92c967968fbe16593db3716c293fa7e8b7e760bcf6509eb033e2d74fc2ab511295802b1e344f153a96debdfd4bd4792617ee3f23e7985c31adc06e2a1276c507cb68b88c0d70be514b8e09f1d9043479993f50ec23e38ab9d0ec7fa7efa89d2cb121d761c2d015c0aa55cd4e8bc02969c575772df72f72ee76cdd4c64aef91eca6fab8da8104c3d099669f792c589f96ddeb6f89f45b4e9bc598904b8aa3d22cd91a2aa1f02e64a846d9608211f56f2cccfc38f9743789ea125a5db67c79b8745fcd0043639584c59b3c6d4396c9ee3fb80a30a8721dc7639258b9661c2e4ce4e7404a6ba2494fc70e050a3f562b86722d4de0009d68d3522fd516b1d4e513f2081d8e837c63ab4a3455731a70d76e11df66fa84b86f9245f85446139fc6bc645257080d2e89ffa33383839310911202a9cc051221a329fe12ec398b4e594f50cb68db565252b67eda904f3bd5381e56a5a157b7b8b145de38210fc74c7325ef167be9b731599c44193e11819401c0959799c7ecb3a285856b88ba64b4c25839140b223aff8ba66e1bf768b8897edb9c1139c9ec923da9231802885bae84476206b044497fcd6970a46b42a5f6e7fc597c495aa05bdc50dd2d96372c1545ecc438b5c3becabc45509dee19a2a8d23081707af1b071c5b9259b3c705b7fe98fff7fa3908de7ad9e3fe18f76b6e60aa002cc4bcc259f1e76836a4dcd4fea0fd08f719429fe8380a0a8d0ae9e34c85d5d61f6d3c78b509e1d91bb82a3a91c5c1550df90195a95beb1527d284b8b450e3f7b5dd4da5bf650234bd7f2afb0e2dbc7fb082d21ef98126bc48cea7c6bd014ca1a09d122af407d414fcfac309b9e81ec4f3f2a841155d3dc2f0625c54f637e80e36f5803a96bfcb409ebe346304597b13edac41b2375c686079e5d7850acc7e45c533aaca5dc53afe6d11f593c141cf24733df11c84cc14523a86bdddeb244ab1bf54ab13dd22db9cd96f9b0adee28fa7f98139b62e9e6ce3bab3ec985e9132503edc9d18c383f523b012dd0962a0dded5a6977ab69df8770391d5a833505d4c73a023f7b8b8e28a1214f0ff51aa1a483bc35e83a080a1b387621e8a5d66220a93e72a5d66884e1f75c986b3b1d7031440de20014964f7750edc6cb61ef692103877b175c09d61d4ae675ea01635f05f4aa46749072c1fff239a37b62eeaca6df6a042840539b488dc896cd464a8775cc8e7932fd047b48e4ce1ca7d898e89049c737b238c88c5d7066fcd15178c26bf71a44522e1496ca26b7cfff7e769cb6078ee48fad4df00d9931ad950a6115eeffd6ea047ee15c4e70a5a6a3f3393a569887c3378aeb57cf54317eecadd252a08b75245b860fd9eaaadcd98ce1a54084afeba1021d646102ec12b7c88cfddc379b8f62089c01e7480fd00751ff52ec2ccb1f1bad3017b43c144c4d4365b969e2599180dae35138eb608a719fb2969a067e7581325e5041b8e3fe4d78645c2d68e94a95a34491d776ad876cdeabfe9f12513d0a61f2a059224728102e98dbf226a2715d90eba9ff74be0f8560cdfaedfbb81f4651e149d4a56f38a4bdcafa342bd808fb807a572f6d57e6ffa25b2ad013da934e9af076c7ba86662e19302ae40764459725293765919fa032118b405339ab04c9285d506a6ecef9ececca9274b50ac625b0ddcca5e8d8a296324fa45b7da2eafceddfb9f90a587cb06edc8e01c20b1250c7cb5d9e218761c2e1fb16acc5e9374e0590bb6ec9fc18c84b80f679393555df6248bd03b9d88a67aad674b34596f5520140526f33feefee01f2bddffc8febc46edaded2c5395ee68d37dcbdc0d2251056f138906a06f6cd4a61e8c1c62cdc330e38bf37c0d14f4f1f637e5b8b791d36cfc818eef656f3575026743bb3b406a4cf8bea6118e5328438ede7bc0ce30fbc2bcb09d303eb1d13aa7e9b7d9b005b447b746e38edd55587fe61125de4d4ce1bf518dc806998e9ed007926db5a9a5194d489f60af9df9f1c54474dc3bd6ce112d925fe67f20f34dc8ac40f12f197c6ec5e760f47699a5b9dad14e34b67ade91503ae1b9ba276ad98be6d7dbe2e3d0cdaf3ec4545227fd3b8cc8cc458b8e7c1c971c9b145bf2b7bbc799c821e2d66ac34d766f760590bcf4a50ecbfeae645caa2aeca4cde0f77dcb65b8cb175b772d86b1405c9410cdb365817108467000796b11b81eecbcbb91e7ea41801d5648ff3c763eb79048c9266dcebbdcc266119e2fd7fdbd471f612c90f28212f37416abda78e27bfaec48662c0ff186caa37552fcc61f9d3ee2c7e8934e303b2eff7d19a9140bbbf2640ce87d72d8f3bb5e61d6d6b97068b48f083ebf2f2f2942b65895ecad33a8cd4001ea97da0c64c2992877b121f981773ec27209f2fd4ca95e7a0736f7a372e59fb87bfb9864f9fa927b9059ea603d022f8081b0d19288026e0efa174bc39345d3dd42a55b6ce5fbe9bd4f5a25db55bd825d641517f175bee602869a0861a72295a76880d6b046d4bc947e3e7353d6b05034c5721cfc819860a0767bc42959dc0475b14f60a8402f07ccd48b3f8c26e615974360ce7535ff63362c8cc1c9f272c7de88b4ca4177257ca0895e20f58ecc8919ebe5bfc09e2c653ba677f56a2e4d8509be084f58cdfc74eca3e64a80511bd13b85e913b79d5a4b369823f87d459955a92853839869d2127b8f1f9283b84fa3c7489c397aaea8daab4401a0c79ff6a03970b698a64cc6160c60e9b2beeac52d7145cf318ffdca56bc42aed1c451f3002e66d2afc4dec861247ad97dffcc1c7b8416f7d8d6c8b1e7e36744633f1a4ce3c6d0268d5439212d41a50984c8ea03ee2873edf88cc096075469e75cfc44c9b9b732727ad56523bd2f086df730fcde829a86160782a2ff0e1c6e207ee076e6356928a98214bc7c97a5a84d347e8845afa1507f932752f8bd7455ca158d59d846b9730f1eee8f46f07855172856b861b318f2b09090d98e4a8d8527fe975be2616c8cf6a96540b6861ebd4b81b476a251a33c61eb0b9476e97f3422c7859f98ddb50daca084d921392270a34275ce609bcd347d08058d6730978c2a467e4ecd90c10b67263b9b03c671edf8c263fd5c89d4dc0ac2e232bd3e21c78f362f77874568e6a24805b9e159225022e8b5b5843373170b5ccc8a6a086a48d6729a119d20e76630734799940458fbf68647265d58af41e270d38bdf2f25e3f5b95dc8a683c4aca0541c06c7150940a47e05667fa15086b41fd41217bb25d1d8834da484fc873bf1444f4d3b26fe79154453667634245a8a7cbf4377295d7555226b90043d65d641311f96d84a61fc69d3740249727662de819d5f3cce9b7d14e0c97cf5a2b231eca1d3899faa3a71aed68fc354671bea48e2ef05f3b05db61bf5b399025b71dff5fa91cf61aa9e9a5401e9043a9fe60f4f92af8a6e88d4c58cfcb5f8fe6ed3b73b1ddb528971ce296b5874c7e0986af358251d187b32be525686cdfb6db97e50e5d2d2b918679c787088263af0e15a1ff6f5b8a6ef6997fc604ea098619c84eab2b51a000b63461a1a54fa3109db0d2739abb163caac1cd6d26d026dd341443b9fcf1960a2a846756053afa3cfecbe4fd0da3ee29a0b6d06ed66c109f27a25ba0c2bce343245f8fdfa992e4a74d1a7295dc9c9408c44035c69f2da09a4638b5668ba790ec4662c8458c54643d11401222aaf0fdcf560be57f72bb338c8126285b227514237e45fbbb445b54a5d851fbca37f105ccd8d2314c90009a9764fa578c6f9821545eb356bfc79592a4380584160ac1964be27f5e98f6d026dda7848f730dd3d7bc92e8527279b2e129636c0a04d36716157a9acc5f397dbfc8e412ab53fceaf7e08d3769fb2890ca637789ccd798a042a211eea40c8d07ffdf6ea60835c1c1762fcc81ff9780fe091f416f4a9a513f9b72fa144e3f254dbc85b83401f19072b4213865d9de3df17130e49d9fe8d930f3cd15b1de508e4290bc22780a60df62f85db7296d7e25aad42c73bad03b8e073c3d0ea6439c296451afcda8ef8f3a3ff8f28b99ae1c9b9fad511dcb7f5ee50476b8a47ce442f9508783ff602bd45ae5b4ef0cd137d93b9fe2546bcadb9734eb248219ec00c754666ccfc68e03427446da70d96c0a5a9a2f99723f07b9bc712bf6b4c432a2fa1ae05567b5f130aaa17ee718b9dfb55b6a94ea60fb30b796ba50bf0623d54a17faa473cdef21455c3a4798d779bf18abff479f534bc8e784e76175e608fd841c77a7cf80384e8e6aa4badd52918c8325a4c03b72483786c5bc76ce70a9e916afba455a8e478d0c52e0bfefa3904e8e0aaaf2924b7e868348b0f53bc47f630fcc91694d452feb0756418cc7e63fb970b151ed9d5ab30427f085e642ac53b7db1298410e9d00437e9d454e02992c45f6357704b2505017eb635192bc02f0181663cc2602b07c23f2c9e5416edd8b9eac0f29eadcde0259329e3c8ddd1980d02c6372998e07d0c491b5d4e1fafd5a61c9a91f0b13d8cfc67cf51142065b9f02c8b1042ef8ca28f04f6f20a2a783bfe9564e40a92a5a4f9af9d381c1b8753ce60216421d8e0ea813756f4bd7aff450f2b9a3a2c13371250844fff4989b431a543bf7af6a077ebb25ccf6abce0e7a665bc51a2ed33bdf6fce93e37033e2162acf0dbcd12610cce3c99bdc1da75a4e093e79d3378cc42b29eb122e48f49fdabd2ccfd03edbfc94b32f246f1b8eb90342145159aca0352323cf4cabb2a0965fdfd47d06f2a49e1baf05f361af0aeb6166adf60d30896a5016d208d2589a75874858873a6c0b5c914a898666aa0e78a67086b5f884a525bb64bc60b5811e43b00228f61cb01698867acbc7d56c8d8ec59918a9247c17cb8755b24d4db7ad8857cd60cebad4b7642255c4531527befe26bd9adf9856cb35435a1a5b21a31b69b11f3ea82bd0bd1a5eb84cd9c60a7cf3e27abb8cf5c50a9276d090a144cb6383ab0dc097471d455cef83cc96a9d6abe5bbd635c8ec1542fe7a526a97699e07dd492fadf65138831129bc95ac984cd3d3385070549e1931cc9359cce89f5701d74be526db6e4f8d48504cd6ea6056efee0f8c712a7744efa38414c3513acf3869014645a1f7b88fff12803c582cf0033f9ad66653ca1d6838b2295f7c7b59eacc4debf0ceea07421cd85c39fec745ab3ee7e2d9a977324d7be4b131dba062b405dbce9a94970f85528849e96f7ddaab6c9fe8ae2109fcb38ad240f8517199b2c2ec7f7b5b150a3dc36c774ccecfd30621ffe2a9cd6951c03baf9ff2833de5e6dd9b486113d6938918ebd1d8a4cd5415dc1f1b4c50b31ac6f857ba9a1e84c84b6b8acd5d514fe6e60ec5be97f22309507af0aa112e56357eedf806f2c601354d496d6af33f8f067e728a92e86575d2eb5646dbdd27f7cb9a9f14f7d6ddde17b6ed2c96f3b8365fcf04c3d8db38696b6542645a2a049b3459a105f59c3bd80fb0e405aac5bc89c00f3386631cb8d3f361c9d35c0ffca95a59cc0e44c222734cfae8bcc8edaa78d81450ba9047408d916cbc7975d985571faec79b14d5433b00a22bded1f1a6b5f338842a311387cfbee80120997bf980a23f2dca86129549da724c5f7de5e13f02293e0f86849a795c8b047b7319e479eb5cdf2d30e6e42d302fd6a94e54e7dae8b301c3230acbaa5d9b3f5b2b39243ee62a2b7255801fed3e3f5854e72cc5e137f262ea085104e371da190b2c0512666a232b69e085707014ebb53ca082f4e09280ed9828ab059445e93240cb170e816e52ac710a8ff8200c9f0274b95243d06a87eca10a678d000ff6dd8d6079335228b7a6a83e37f2427c9bf0d3c54ef342258ecac494749513b25145324023af7e1d8e2e95a9a05f257150a7ec1851d991198de94caae2f297b38903c5110bb2612ade4b1d4bb1b489ca276b6d0285a77b99c43f17c22155392936d6324645d63cf84e4d37ed56bd5369e5c11c109c0f4a30a4e392286242005554136e67ea76f6c0ed86ce955877cae0e816d4ee5193f97a8056c51df7f53702750a1b0309e4d64aafa1791b293f75a435018d58a4d711b4c6862ed3feb86184d14ac04f678e7c7af04bc7955d5ac15be962ebffdf5e325ddef7136dfddfe4d28d6d70c868711053107151fa2bb2647a00349adf4780dd7458eeaabf43ea13c1d7eff8010a784af10302ac81c95789178e75c7bebad6747a1a7720ab3de97b5cf3ff12da8077ad28d82af8e3ba66b93e5674592e82055774240e1159b15561e31af09f67f62512c4452f09324c1ffb442e53aa1a4e6b72f0332c9f831eeaa5ca5ffb36176deadf1f84819a1b078a9c01fe3081902f6b94599ad55ce956dea2778b245c0da36819d48777738ed283a8342affa88eaa10b27ed4ec6bdbd08c3b93c9029293562db8449beeaec6bb1b3d0f7b850dde060a6cd83b0771d292d17feb69037adaf01cda0fb0496fa1287209e8875aff15b22201fc8d33a46e55b62ccf3656455391bed0113086dcae9d78ede798df1b688ad4917474fcfd17730fd19fcc0377008db3eff2d59c4ddd21110f948d4845f6bae13fb373fdf6b18739a609f69c36a8ab449f1d68835a012683f4a75a9b46f70e7a5c8c44b0a690b7b32d04542bdeda69f620dd556d2eabdad9444e12dfcab47a0e5c203e9fb0c5dcde02587f74216e90538dbd012019fd9a256ab22bfcb0e67dcc5f9c5cb56a13d78f0da75a2f398771de4ae7470ac87f960a25d02d2dd0843373db8b4f43d3866d7f51eeddf4dc4d9766ccbe15a0a3edfa5ae918ea858e93bfa66422ab10528d78bb0557728279267634d34fb91e50d9a889c300dae7bea29bdf998219c93f8266114514d5f826abfc1404ffe538232e2c61ed32017a15adc736dc3250515097d7bcb341d34d48a81df4ffad755e8a0381b87fe1ee9c224bd747ce50da007763fb70d260e0af068d1443e50a2a632e841f593e1856804dbda00387cb17d4199fc01c2663f249ee5afcd032a14c905fa2660d9f3c26b84afa734fadd8fc3b11bb21df2b17b4fddd7b3275679483cc4171f01a37bc17e182cf5c1176cfb3ab17af266cf4459beec18a2f9bcac175ebbdbd2a78da3ead5680bfb933de9474568d9acbb6054ccf188a4b9e5279f833bfc818f594a32bfdf9d5d672e5048594f2d8ca80ea5dd8ef6497be9ecf8524ad385caf545b5ddfeafc657d829c491bb751b9b33cfe452c06d9506caf7216b09b2ff3793c03bce503105a699ce00cda9304997674cc9be664af08769e23461bc0448760e86f8fb9ca5b60b0986d0a19de347c5a0198ab96f582b401c4a39392679878fa98aa827bad7ed562a7b01bea9188572f36933cf170b1c4d4ed555c35a4b8f4c45ee9a323b0a25e887279a9d729afe0e81a1a25e4e720157afa4843d97c817d0ef2f877c35bb54739837af7bf2f06e08b3e04301454716c203d9e55010a7b7c88c1d9575a7e9bee1aa40527b4688fe20409e1dde8e8a5403753975f39b22cf0df539dac62541530b77832e87a656bbbc6bc8ae46b4c6c6b8033cca928a070da40a8ff7a412bf66604c34d07d4ac44569d6e2aa41b60731078415d22d878d9410e80038dc47dda2b6c05a27cefa016c91fbad1dbf87ef02762118ecdaa6832a701e2b15d137cbbf6a0febb1897aa3358f7971a54f6c1776db827a16ab75131f651f5c5958be40b152e22a1641932a3e9f4c3e1a49ae001653318df47147fd9b857750e130219fbe26db97c3a0dd413c6264de51903a7e5ac0a434a094c283de416b24763e0d72b9522a73acf633ef739e684efeaab170c6731750fcc65c7f1726fd84e7b2c45afc0baa405de67d7b7562208a55038e91e06a2e45522ec05f854b7c0706dcf9b2ec65f73beb894cac0d18017117d23fda9f0a5681ba0548277ece0b87da71ea12ce666261bbd0234fbce59d0f639c6abbaad1db87d61dd9770017714178d9bcae2b4ea07c484ed5d02dbd5dee2aca298dd3bfcfca2cc7d058f21ec9227c8749b48f31ca6acb3cb3b518c04752b1151a1aa49160e79c9b3428440970faa1e89a450fd19dc2790bddc3e307c430c91ddc650514a2dc14a1cc98b7ac27c8925c41ab1a19e58d475fafdcf010d647922ec85b7157071e2fd93ab0286d33fa5d1907595f68576b6f5346d3107568f93d837b8cb239f6b6f51405eebf7a7777983f18201ef8906be91295690b0ececb29bedd3a05941d1b0d5be286a27f04b9bdf97e6b285107a30b0c26595cfc6dff1a052004e045895a621fd6a081e935fc3694def2502addeae634ecd33abb048ed6c6be540f0cd67bb520eced796109ebacdc7cd2b68f6aa15e981f07a2e64a0cfcbb201b031bddbb4d6b8cecb45ab3e7a5bc1330800264c70e5b40c6ecb55dd4a8c741af7c08d58a86d77604423b4c32787217d7129e947b69b3edc6e0c3dcbb2eda438527431075ce109c0cdf1cbc47bc56bbf50c2dcf60bf102a32d68b0839062bd2a1eefd0d86204c373d3e387b269427fb017fcece8d905ab1c737bffbabc65821225602e1bcd15baa9f3586e68b9d69672c7936045748e490f1c52fa9fde239a9f405b104c6898ec64899a075c5e75ff3f6284d2633f95547c902524f2fbe0ad91f3d7d6c5300b52b4a9bf4af0ae97efdc00b1b0672c3c5d01f4a6c799258e21c1b3e940bc6b14c59b6e0152ce2397b1e4b98acd5c95f606cd2f8d47b35aa78253ad763127e1d71cad6835f1a58dadb67604b16f696b7f4dde00402ddcf98c987c10b3cc796cca8257835238f76d4ab62f95e82c957dc674b8efc6567a5669ca2ff77c3d33885c93bf118f0ee62bfda133f669b208f327efc89eea143f2cb58118779f51b57947e0340c4f00228c033d1f17e09fae47468eec7f86a4d2a670a7fc3595d4e27415d01ebbf49a5791d4d6a789edfda46d4b370a0c27a3d56e22bf474991185388f2d3e240a11bbb932ba41b7645f176ef9e44d11f22e2e324ff0159ce9d4d59a73549c0be9bc38a06700c01015cca4638a2b5e62630d48f810647136eb9325792aeb8af6abbc17bde8fde478315b785ee8e4ef4582d14a5324bdfb1113aba901253dea3713eb2cd42ae91014eb8e7556129a03d3457ec9ef5825353aab7b8e8ab577631c86478fa8099f2dbf2b17908fa983cab19bd64871f5bd8d422ce424469699245c29afb39454500bb6151dde5b888d7d3b98f82c936df759471ff669176c5a01c58987e44a85a13757fd0dd15bd10103ffbea21d0b5738373500f3954ed860c569be98d904933e64a1df45477bdc508b2bb2e5ae2f11de0b90a7019ed0719f3f89a7503d280fa5a67c85d4f92fbc9d64c76075443c68688bae1b783cf5f0e96d546abe8443c53075a469a264920e353e778d043585bdf2e7cff770c147e128686141bdb4355600c6bb706d91ae6e72701fc1a2fd1dc505f9394720cea6899b8be13e80fb6051a1e698490be920f8a8d4ec16e95e8f2c54845f1fd56bff74cca41e55a4092c1f9f211224c2a841934691cb9afb7212526163c8f3987d056272855ce4bfde900aca1cc9fc15b94f3499d772b25113fd179a177e3a1ebb5dda191bd0340381f16ed62c29bce08b3aadf857941b12a7d5c6882b360a5f0d80b8e74923347e04c0ab54b1e8ff6689b87f112f9aa73593a5d4cd80fdb3458576bb75e6667604449154464560adbfe4de57d43d9f82e60a07952709835b68910967515320de60a58224c2cdb31b5ea57009fe4e27abcba0fb94591fcbd6ef1409ccd054636d26988e2d161fa2b4145c0eeb8251b9498d1a107fccd7c3e6d1d83b5a66450f0b510d077eab6bcbf71c5c44b36410d2a85ab89081ea985c3a4eece5b7022a3daaefa004560e97740d1d61103121437e8f593966c1079c4fb11f4ab0561e9de526146e8d1e588d2e689f86c4f065e03f73f10b270f26a70b05de3e93e9371c6d2aec7143e832520569bf8aafb62fe8cefc4e60c03d2a35353817f510a9329b28813d10a72b5ba5236bfda3a604447966ed54597ff306c6064b294035d119775189862c980a5e328a654580564b870d7c366ecc032d934af4a2976499fe3dd4a8a32a729e640a66006c79e178f695b9fe7b445f05816ec2dd4c43cbd2001e34b0c44e5d95035c1294e931d9bcf1a13fcba993c8102909268874fefe73e9619e6dc7e51aff08395d0a350a8ff0bb0c80496cb568ee8cc7e28e006fca832887cf8ca029a7506e1559fbfa155786cbac0d6402408ce6e9e4af15b3765c6dae5760cca828ce1ae7011d0fc8f4b47f03a40d2771888e590c5a67d6e0926b30aaddaffab45ec4eda6b3615c91963e994c83cd88887228b496088da9f1bd1f178ff0d8403fe0b7849a57622f7ae2d15dff6d74074c796e9fb95bc09d20040f2feab3ef399e587c18247d0a61decefebf94f2df2aa34e357c1950bb0654f9a28a25b8391b30589bd78deaebf669b071df515dd63561dbe0c085d8fd5205eac15f85deb512f1cb2bdfc283add8a4115ce5a59e454bc6d8dce9cb0b53305c79192bbe2341eeabb5e16bde1148fe2b689d73fa1dd260cc396b54c947db20a76f8eccbccd156ab14f81ea613282e31f50a687de6a6fb326b446e28cef7e6787ba10263c5aeb840a57af75783a4ad39a34101fbeaf175b4979a1857656c9fe16adb330412b24528069a72a24512f1905c986b6d517a863a1751b8d296b32c05c9f8b21eb160419ee107f6f84da3dde31588d6befff63f8fc317c0bd8682019fd787db21a0cf6c63fc637d131b7a7532d26ef27db287b7563b7706284a64d0778663f10eb44f6f2a29e4d1a19feee2a110fd604a48ce824d9be6f49324acc6a5af5ab51f26d03c2ec357fb8a6fcaf5d0f147bb0defb2eee6a076a9511dfea506f4e26bc0d08d4d8324e7b5713d2ac05ecf575cca853530ba53ffb2b4b1efaa4617f1f27b3e7e71912e0efd4737375af83c10bdbfb764ce9f9fe05a730f29c2a880a9f156a306b1c350036df9b323f1465c79eb2da0eef34310ba07af72de42beacb630602b8823cc317a41b118a6bbd500fd41dc9f74974230fd0ab2ce10b6cce031af55748990a704f7e9c9b97f478656fbc1c9d7f11a83e49632e67cfdfda37fb68e7b54f371d097722dda0e0ae5f96811ed0eb38d35777d00b46274dcf722d13e1e5eb1b33ef07b52cc9b23fe95ca2275206e5a53c6f0285e02278ecef38331a0dcaee17ee32f545807ded3cb149194546365f7bde26715e9a89bc0acac4bdc9927b3d5b1830f7a23fd56849a4e8a991991f81a6e8d7c8ab37b901b8eea9b7cda44147e35e60c71dfde42022a1ce4611b8e62f8af7239c58c908b5528acc80552c0a88250b80c37e3fa6cd707f5367c6399bef0548053675cb0fe02041237b1f2f2da0e1836b2dacd96b71432a3caa1440e42686457098dfdf41ddc1101dce3027b76d98c4b4dfad58723707d318a720c2b361c408fb60ccf11cdbaa136928e2ecc5ef7ade660f6539938c4b7f609d85455b5bf333003f02c390f79de9c9e950fde73505a68f41f89b2b39bc1928f9f68a29881581cfd9d045cde8c6dfc8c1385537a6e211e1d28ef220b92d6028f40689c32fb9aafd94b39864d2a5729792f5f5f5bca1da94ef89f1d9accad7800efa56db2286b1ed495d9fafb7a6e45e15aed382a8c5cfce175db52ca3a54852d794458f7ad61265ea139fcf781c46c0e1a8842be28906f8eec7626a72cc57595beb0e01115cd17459b72bb2349bef178aa731ab0d013238563b7861d4c8c27fe7b6a0652eb89bbb933c8ae291cde9f793f00981d1627d5867719e91b3d4fa5b40c3953d89a70411f10aacc463352d2b691e477791c0076dd3d79022b8a6e79c9289abf1d210b95ce6bcbb6a231ae4bf2c08e2161a554707304a8b1538d9a32133763d22eeba8726ff9813d76c357b61eeb46e754de1c01b001afcb799e4628e942f5f943af708180f6a2556c666cd3a42d2217562982a7f0a396471a443f4055314be7d14d0e6a5dca82c6afa773372153aa850276069ceaa06307217e870b734e6738c5b4655d5713a550f6555020f44d301bed5223dfab40292079f345bb7ebc1a9e84992fdef483d0833e482f617ec11d65c454ecaf574fd3f13be243ba995fd2dfe47e4682272e53d8d4323a77c9e7f567cc4820c4824c5ff9347de778eba4c270e35d6036240af1b17635271034faa24dd40c7d6b5585d24838f45d98105f3aa5c2bffb2e56cfe2b7e3b9546245656bf86b091157a96c7ef188f0720e49166bcc4c44040f1584caab5044aba48eb5ac67c1d10f090d782e989398807c51620812eaa8bc9125330894b2f76cd8f3e39d8ed9d6803a254e59ec5235000b7d78c6833cf64cb0049ef42f47f1700be4fed22610c3d9befbc4c1606bf282ad0ce0e3a3ac73a49b9e94e41dfd4a5daec5f30ceb849fd64e540413fdcb9613e99ef5522c34b585260276a17841ac830555e5950f869f90150f11bcd260f3ad3206a8862114731f23d31f769e1f9756963ce53b194c042d6e3d95c0153cf00e4c03760d134b99082c7fa77e086dd926ec3af74d21b205eac60a25852004bc3ed5a567c40918dd36610d8be2f5977bfc5911704a25ac13d08282b9032bdc9120f34d491dfc5a2ae126224034f18131b55a20c4a6cc28452983b0b456cea713e2a18675b522547f676ed1df88ea9bede938db94de1783fcee6855a79408eea1deb550e682025c23fcc71d2ffc2985c8c4988deb59cafcdc3ba4a276a538570abb0f097e9012e5e70367dff2a07598dcc14046e2de6a37bbd8a8d60e58af55552a4b155c55992de8ef1aeb8d3a17d345fcc49c1fe21ee45a46d33f0e5871369e44a90f3870ecada9d05dd02c8a204021d90b10f5b269635666c8ca1b80ceb2d449a3d9f0cf44955c97102ebf26a7dcab574470a8661cdfac7cf206c546cac7de0c0d12313e5b1311992f8c1e3b14d3c18f5da0d22c5e1e12cc5b44be080977c215295eaa1dcd280d509663d2c3f490d573fb292f809c4c0a698750445703280d4e9fd22e4ce6d39ca210fd588361cef80db2d0845ebcef788f3e9372063b9e698f65217aa52647dfa092a423a1dbaabebe75b3a5917c96f3add209f0ca66cc41d8b6bdd43488b58488687a746b834c7822d76ce90e9ac4b1a69dbb67ceb53026e7675a0eab0746d3cf139c59332de0ebf443b2e4dda386a65afb404b17058be6ce7b292a522690da023dd51a35a915055fbaf9b4c6c0cbf2f0e617a4db20115bc0f887c63a3f0d0daedc0931376aa758c8c8fd0977419550ed2c8098d67cfcf9caf37a8b9e7cf49bd7cf4bb95ef6eb7215e9bc024f81f3138f211e1a5cf8dbed766b5adce7546a2ff1e728d7963eaee100055990d745b8d5a41c7a2da05313ebe81b477967e128ef1d2a70435ae30dcaec355b30dc9fdcaa82c2b95b3da059813d01ad2a6a9dce0f9552a6757b4fb9d83fd8f7a4ec58c02ab894cdd32217352fea0adfce7c23ea78460f899cfec5dfc48cdd9b862ddc5fb3932ed53f902d88e4808dea4d40e4ca2d9ae1c95c5046625a4def3b02f184fb61eb3efee8e8ce8a143bda79593691a99e5487ab40f88ee3e6f7ed32f8933508cf0b0185f9743b454754f5296fa31388d0d98e2687a625a68f04c35dfa9c4a4de0c0775cd13f8d3058f5c3341074b9184e607a784ef4c46acd306569b963982c32b5e490865d288ac2b820b11e652bce0a911045913d284f861c6e7a8ea3c3af6d08dae7e509186728106cfa44968b614a325b7f1a1b046931161c869addbece61464b96362d3ac3f242d14a6017277766f5dc65dc5faa6545d2a902f11b5239fce2eb67b2705cce2d7b27e99cd89f6cefa30f33194a3bfb8cbaed3b4b80f7450e34885a237ceb9253e7441b36b9cb45e4af8c23db7b3aa28d5de40d69a89375144a3f0a667bf12796bda269bf63b66594d810470655ae055e59cc464e3d29bbed488d1becc8ed51861441cd96e1767bb06e73790047f90c9c4f9780ffe3b39b2fa31054250985fb53fca6ecf05a489d00fe158c4abc9f477762723e05af0703e8af7090cf98f3cd6f36ea906d5d4fdd41e7d6701528c5b532c6d677576690d36c5c47d692b327ceeeb32308d4bbbd79878802a3f31067ec66111fa0bb0b98eb83c5ea4e7692756cd3fce8697066b44a6b7854162f7ed919ddee24767f20fde13b0f8fae0f5bf7aabe0f02a31ae49f7e3b25c6d34f4e8d356ca1ac16c5877be1f5cce4dc52ff13cc3a434efc5698000a79a900b895234f3a78b23f4fbc42d0fc5d6f91929c2b2de0d011792c4a0a2c60504938d6408e64dcea2fe6e2a69f240c91055f8ac6ae36276e50514e5ba8ed79e6392f97b03704c8a6807ac463bad18e806ba48abf3ea261333b8cf8c82bfb3a3a1e442cbb6885d146f9cef17ecc3f22608dbc8c2638489398bbc4b0a58d80e525cbd3def4f09cfa4da09942c981a553771ef26a1c89be4c56058299cf4814fa2808383473b61f02818a8cb5541e64f63de5f7ed365d9a946d0f2a497295ca117bc303ef210e2f44f997c2f9eafd91a14bad452bb846f3bd516bda204cab5f310e3ea4b1e6d88813ffc7589a3537db22998a58482c8e82bd318be388283fa5dcee651aa2a4352ceb832f3e025b6b1fec5648fe61ddc8d57047b229588f67d041f0a013136fe8a2665c638c0df634ea7b23f878a7545135d0b339e8a1a74c255fe9088570484c9cc84e9c8858c2efc155fa1f303ef61b315fad38c4a1cc014adebf26e8f220fefeb944a18be8168d9b6fb9bc08b3ad63ead83462dedb18adf0b6d2cdac4be7c67f4a11806b83d025ef1804a76df130305cf4d4c9d8dfb40a0dc887ab51134c9114ad8f6f846ea2a4baa698ff4ab447a291489fdf52898b385e3e865f7e7cd18422b96c2a8890c34bc960cd550683b58950b702618924aad1016d722a4a4110dc4f77d77c9d9ffe735788dffb3dd151a1ebfac6c4995eb71639dfb66fe271f6ab9bf8d2e6e612ec47d2ab82c421ad9da2af2b58eb45969c052da5c9b69bf62cf2e7e759961371d444b71bc18250eab076627224c4bdfc6eae6285237a5a91eda7c9a1bf17d21d25596f0d539e905af600482423bbc79fa379f19812bb533fa3ca681cb7d6e9fd0c27344b496bcf8e97ddc6be8eac5a55d4bbc08e51498c7852368b211b78ed122c8f3e640f28427642cfb83106032d251ca52d436ba282c3c461242f5ceb652f30f0709eb7db4c07529077540afdc6532d237aaf1cf652231b8b0270424a0a7fc3d02ea5f4fcca28a2ad72cda5e189eabe8feca393cb75e76b28e829d44ba5052979cf66b15a52dc15163c45da040ad9df77e2636e9cdb55746a6c8f75b39c9e5122db8abd942679791574812d03bf69df1974a48dc39de02a54be02664642ed96d3e47b7ea64952c0ddf8334aa08e702286a44021c4d4da5117d528d30b90faad6e0495bb59701e429f5b1d4bd1d2528cc25c59676775fb1d985690d1103066fbeba3367ec5912829400a2d1bd22df57b71c82b0368a8eca4fbc92fb578978f270bab28bc6b6fd6e50e54dfb5a75c7e85a32850b8371c76aabada6dd386cd152d0a15a188a883fe5ec23faee5a3e3ba9c954e5e903b948f69d3726bec18d9c3938e6a38cecbc256ae3e9cbb9d4009071723ee534b696f8e32c7abd188cd129c739a7ba0ff5083f0019a730baff394f757d8cbc3d84ca9d17f5126d7f3a5f174252cbaf4c26f9cc6b5600f0830bdd609824a45ee120fc6a4b890da53bf103f99e100c65906fda712094eb7ee3fdf326ee1d195a2b67aa3e0e65913ce78389e8d40773433be10f4704ef519111c27ad46f3842e2747f21e275a07167c8d852f5b806b07835d20447c5a9c01412f41377f2f0720953033e53b0c8dbfb9d23dc49506e6bc4effc2945acb07eb7b60972404c02ca52d584f62841c4ec51e5eba8d07179d1868e1c024a7961ba8d752160b111cbdfd05ceb88a82409795074d78a13d71262d3cc55a092b98bfebb48ef0dceef927261a0b11711bd5876707c88ec74a98616c2d523c739f5d15bbc2f84b530d5f11de2de3191bec1ff46e3b18483c4dcaa5f58117284c071111d335c008131262f9a092210740891ce174de88371bfec85f980da851c341c2f508c71b1dce4495db69e6927f47521e38f68975d6b2cca2abcc9059decdb1b1f8665bcba9592b707e025b6cbc1d15b12ee314f4ab8cc35bc004afb78992c669f671baf3e33e9bf8fb87e7e793b96830753ac6530707a26b6d7a157457f862f31c9ef7540605317e315c5607782d062892c9005d5278a2a384c739cd1b4c44b84669ffefefc0b2fd0909fcfd6a07b923a71bd3dd9a8c8b7763ad1845e2be16b150383c5698686c714aad900aeb4c1ad0d1cd1a3c96cac5c3b25fdb6fd3bacdc767e12ca32dd96a775dc372493f99877e504840c150ad86cc7f43f1b68404b72f32444e5776e3b2d41c26a6a16d91844acfee71bb98ccc0b60a74af17f25a5b9139a3b350b67103f98f7ca8ab3e12c7bff7af840c4053f9d978ba65b96f35ad1fccef82057d456263c864b6f3970df1c1fadfe30398ab29dd1d65462b1ff0edf93a212a8e58991a8ac506d4273abb708d589f560ef361a4749349922fa5b8f59f6c4c42e44e0374dd63d8c0d819db14d1a0262b459f2c1899d5ac2c57e10ece1e11d892f7df15299dbada504cf7732d7666c6c1ae5034fe6c05b88b4431387eaa62cddd7b6c3387effce7d8aae9062d09eaf8088adec39dd2abdda0e098c46e8ed317d8e5bd6d8f45d78a4e31db065b747b516362ad359a94ce6f74dd2d61121251e527dc7d08e028a76bec70ee098dce50c0db369940ce98f495915238bb7100868d5962e02382d65cf646a2e644eee44345d8af3ab3ac3c5a81ea05fb107a460720bae7b460f3545d51138217ce9a61591e3d5d675d47f48cc8a0dd8237e97054837120519f57ba827bf753d86bf8562f8b146a04b323ab1a045ec0cc13e995f292491a28d4f9ba99c89c5dbe70f580ab0f05221643cd48091ae3e069c7dcd2f707f00010f55ffc1b9a5dd05ef70fb6e2645297d91e0cabeaf010c7c54de560c04947c4607463c9eb90374ea17b4cfa515825a9ab8718ffa835596608dd12d37ff1492985245c1a609519b8c49ca193bf276c71262e1dd157a1450491d695a3cb9f38109a6f9b892db2c5a20e8114c924f64c7f18f59ab8d223cccf1e5efc8eb02e5e7bd6be523674bcd1ed0573641b7d4612d3a45a800d2b95f0b81fcbd1ecd9ae1c03ac6f7576445451c4cd746e5b57951150d64d8c2986e08b4b2c2ce1303033d1d3c309047f3c6129d500db5d6bf6dbfa3422151cea2a26e28772f33734c2b29481e7a3a1e05bb1a542593f8de4d6b8fa05b16a8f79c0589f93e90e710928e9ac71c80655d3c8b11408cc3c725f654c5231fb74f2d72c22a909db41e980f2255ff59e696fad7935fa896751845b3c6d0e3a907286b21ec0924319a6a5866a39bb8fb14b3f7026bea61a5e79efd9e3ae88ec94af0c06f9c2e05c18c4d1b1b056ea9324e94fbd4a5a95fbebb58adc23f12023333004f7c683830cfe2c4092f97e44aeaa2257ae768488b9a8a5a8bad5cb8abf67584a7b7774a86c5408e8aee91ee83931e0805ecb808eb41795ce35d12446e5cbb6cf571caf163912aa461f50238f6ac9ac1d44b24bffb1442fbef5cca2e751454a569ac646834a11798ce93858237c9d26c50512c9b7c08bc753428000a5727c850bbf77621778792decd297a98be99fd910f7101a4000e92f90a52e02e63b77057bdec4c88a3088944b6546c5fc5a78e8ef519b63e4439cb3c169eaac855ec8fb5b01a21af585c848379066e4f0a93f74deb01370a047ba795c62790047991dc26691c81c426db676d9253a984c4510dd851207670f897fcea866f624a1c53337dc85be50a7f1783cd048ce334b22d529fdd16407fedac9ccc4d7be3f32fa550a4c636fe2b44723f22a4841b9c6bf42965ead046b28cc95eafce10c4c3cadd99b79690be60104e8828c8cfaba74320027caccb170097ce1b7011a08c9065fb0fa8171a913f4bf7541e320181966726b9307aedcbeac218a59235402df20f24709907221dc6061d60ffbce17f7deee973ef6a29b8496ff2caa06fa8defa6101f5624a9d746a64039450e4c62a788bf7d0091ca79c4c4fda7960ffb89d2e3cfbb316e72cb45aca62a8b48332a1b45e518950e6ed8260342f23e77901a4dbf74e056d3fc0da152fb0617a5594427b58ba84a24daa7aeabd4a56af99204f897b8cd421931d61d1bfd237f549e8630c6a19fe9cb7c1323bb79ab2539c6ec0ce08fa97ac031771e418f206f58b325141e30c58f423264c5a7c6d31a033836bcb4dcdec2557dd423c68ebcebb255a8d307ee09ba1d04b1a55d86025b6c0b7fe9ad2e444ae8d1060f8170563f346871c129b752ae0ecb2aa55c4e19c7c918443546509d0d45c64c1b71931913c7559584370e1a99212f75307d87ac5705c766a3d8f28e79354f7a0beeaf48cbcd2324252ac6c5a375ba4967dd85bfddc4e26932fdf39681af8bb4af1fbaecdca392c10047e75d9c54474f9c207c2e5faa65274d69b4f9ff8d39e5f0cc30f7f908aad255559344d8e15a05d13adb69936ffe86fdb68ceb00bf9526688128b88c82c2df8fd7e02bbb1ed8fcf0e05881ea0f0445975d0b898291705352626303d6961d5c48a1b143a72e5fb7d29c3812fa74d0e1dddb0ee5fa95963356651386132dc1002e4f180d40e8ae793d67f11bb9cdb68da9a0da8b36934e0b26d27998845758016f52eed3cb92f7537e107a8eddde76fba65ebfe699ba9f4aae50e746a119e3a851c1a4bf5516559ad5a430ceb6e9fde52e07de54596ddd0444f27fb29413eeb0f531cee34f4437619e557d9dfc1420b9938fc1caf654b56d674100324c14411453413a1915bc31f93921f7896394f525724d751ce56fcfb963277ee7c1882b937ae60af85a1661d4403a6a19367bde3d0fa24bd51a5bdbe68f592f97e9eb1c1477111f515e3c6417a3665229854e9e6076db68b5355a7a37d9a625633e9fb24fcee6346ed779b50e1344e644a034089891f9ec085dea820cfd8281d14d70fb43a07ea9e21071244f0a552a69f8f1489850509d82324760dd1faf4a7ef0ca62f5ef1566711ff1ab8362ea45bb1d7bcb8bdc5cd541bed2422836de671f33018c4885ab1ad67617c4c7a69be28125a71d20e2cdd1b15899f0945e0b264e84de553a1bf5543054610f9d73f6ce34b49a80db2e4c448b283368100720a4c8e0b5fce76eb4766dd7998e14459b5c9adca1332773d545f984900f88310f113f7e3d39866e016c169b7865bd02af0e9a6d8dbd22b931502f52ffd183ec7ecd5835eddb8580906847c0dea6b73b1dae50e61fefa9055f0f433fbf4dcfbea28064623a529c464a2b92949a01b8fafcc93b616df11e9cdba7e2562da6e00e9847c82c68144c21c4cee4111d9c4fddd0ca83f90cc85986c7223b3db2942eea31f42006762ce042dc4474b7bec2837425f8f574445572bcc65b788e44616350cd7274ac9f1fa5c634a44760d18a923657d5901838a5b18bcc3c4fbf01fcb428c282768bda8558eeac7d6447ef7240c91d0bddeb287caad1fd4abd3a5e118ff2b7a37d6d541d0c913fff9ae34d1030cdad44daf9d68e0dbf9dc22025db87a7b5cb8c5d526f1d591924b894978355248c3bdd5b857b9d1e1e35708150912403d9ddb3705d0d4573749348e6116913d48264b1cb395da967f9068b1f510deaed659ce542ba45c88f9195c905088ac453a0c10b076a321d2b63a53fee7a20ce7df73e13156171418d3e35c5978af946170a180ee6c3ce08112b8f2d08e78dffa7a532d96bd313761da05ede5ae6f9db0f6e0edcba96a99bd7e95493f50cd59852f7ee8d9b576fe3b83bb4de7436629226be90e564489d485ddfa6df57c2900bfb409ee29a8b37a59c33bef71f160fb87f60ae67500b6b5db4be8e7044663f7727683e4060af4db6e103787bda2fbe3744e12810fa0c5bb6ad90e319acb03d96e71049cdbd3b1ec226ab7270018014d2d65d0a13ff23f6fd46cb3564d1b2fe7bc898c2b7c86ab3702e37c90dc40c40af7645ebd56b286e1acf9727195c0b496808b03e21aa942a1a6449b975dde7a299a1814dc2aba9563f361ccbe163fc71babbfec15b217d00bebf3cd264c13ccb93c72f026dcdd3811886b80827bd275189167e90925c8ef5896e9ea4b2b4fd8e6e329d0b6d13357afa82fc34d06b86cccb12a933f129e16f490c79ce7e47a11d40a7f1ffad873889436bfb983ff3c2d554f799b4b2133a6b6fdcb46b4018a1ffeee558fd981ca07066ef03f14b84dbd425522d927e46a76a33833c1439d980afc8126fb45d97f6c4a9b2402389e3b2e13b5a6003800f0a907ca9a50632f4afa355e8be3dc2befee5c99c8b60d8b8c7939f5b417c71f0d09739664bb3f1c9feb7d23e29852dc7ff861d1f2f0430321ac0003a080727de98e65aa1576921f0d16f704b7413421e72f1454aa5072acab675b0e504ba1d434de50d75cd6d2684f5c9dd73c7bb196ceb0378edb1a53eb7353e9f19f67481dcf569d82d13bbd8f8bc578089ee3087f8c249cb3b30842656ccd6bd052b92c2506623c4e2c2527616cd695cee0091998d33f7d68a7de5ee6288ba7554d0f9f57675dcdde27d3685585b8062092deedd635b506217398ec63f0187ffceef902aca72474dc673fac0f3c91aeac71a7749396df33e0d506df5d9cc0a364883e499869515b8cc939c5f16bea61acb5dad6a5c8e4914603f8f2a59851b2bc4de2276e443b6d934cc62824b8caf3de4b90cd76b0290fd53cd865df35c15ec1e51052d71fda628935ce5b6b00839477701b87cc967e39b95591e05da5b62f088292e6fe42fa76b92dcecdf57107850a8af99190f6bac99f3f2bb54a079d43b90333bfd1f25f38d89da379288fe60137b750152adc25222f308148ed28fa39d0f87d0729fa266c86070bb0dda8b2af28da95c74a6ad9d37ef5f22dbedf654c028cef89c67ed3ed4f63659274027905e5a0d2aae375ec06dc42adec3bfbc046896624f87fedefa8215fd7152caac15770a1582aa8e390b8a51d7cad13f0b1f23ddd9acee482ff11cb4e9926765a61e20267bb8d73910c7d3323e1d3a58de80e18ebb1bb136465dac0e5a9d1e8ed3a9b6fd2f83b55d761aedd6e57d51e77606477c92ea3bfbbdd35f94f91cdf2837c0f502ece34745ea0b37cb64df20c64a6521477fec56e834c7828b797dfe38d8df9264644cb816dcf86bddcd946c8bcaf5c6d89b5aef2ba93c27e000bed3471df8a0b9fc981f73d738ce7ef10c531ba4010513b5c37750a396f448cff52c769a24312bb7655243f0dc425fdd166b41e5e850f7c8dcd292ab957a38401117c69006168463d7a070b2b1a45f3d631736084bd80ef748dee0857e083e42119d93766d0314934e506eeb1dd12a13cf4b166c962fccc75604413fa5c4e136b16b897c8e80288c4ddbf96523922922cd59a2e8dbe547c4b50b79274a616d9bbf64920cf6b4e0a7b3391507040edb31cf5c5587ac841b12de5b13d62068a0f4ba7361b7a3db9c4725958942a511c36845232d4e4c3c12fd18b4cb9c4f7a2b2a1de8fb80e8126abd02391282d4142ef22707c5c7d12d48ef154094b205a8cde9ecf4dd946aa86faab38ca16b122239de1141451a4c2fa140a82dfddf626c4f0008e54820132bcc1bb468a100a0cf7173159bc9d6d3e7dec7a08842b16400f3feefae72d7b3d8ef2f194fa6f1ba55276b4234e5e3d3edd3d1a5b974797658fa84940bff760a2f80737fdfc66ae847868f0b02406867a3d2fbfda4f74eb9594b9eac67427c4a9cf1ed94fc9617ddef6caa61364955096aef8031051ab98b69fea7188474ca13d5fe549de62afa8a7eebdc1e61aa64e4a92872d272050d9f1aa385459056eac633a8b13d5439070db86da5448305e6ba2871bcedf0899d07a67fde44ca828e2643781222d894df7e924f1bd5e2e7a353bea53ccea1992934d3e8bc4285940e97c6321146f427a3c153085d9313b219f899acf58280e6e97806ebb8a7d5fd8f03d25e012a5a4f030f6ed8403f3249ff3c9506b54f885222371e303478fdaa7e1b8a582710cc7558e2a64d1e6393afee4eebdb49e25e96a12adabb97730860122e84872f085b392af54670924519e665a4511fbffeffa8766bd6967e0ee606a74a2d920db06ce28d0cbf357669cbb78bace9e5b2a4a1af65794cdb5bc75e2df030528b687fe6efe332f0f657bc9356c0ab323ecf887658b938f990d95425dd5fd7b8da52a08aa9b336d5255b1f1135921cc891ee892f0653f69cea824c2b6118eba95147a74fcc8ddc3d26e96076dae40402aa0704c7494a6cf6e0881cbb4915f70f79fd10e01c2168a01492aad1307e60a347f02fd70670f55ce268f9db46505e5a6f34d02af2fe3eed2442adf83211d850017161a98b8d92aee5abf013baa17d25591a050d0185ef9e5dc277a9e9791a6c3f7518d455fba616f65c5ab3f0ec7c85d88b56a035cf821fd6a08269f669fa912828eb18451bd28f4c5600b8d84e6b0622ed3dc141455ee907fa68cf96c0a36b094606926a6ac02bccf6e3a771043b8902c4a884e4f6da749053c7a6fe6ded500ddbc547af1796a3f55395fc352d8460b8f42c6c8e5f78d0633b98be74501a843ed157ecb3f9be1a09afd3b513c702750784a35666b57108a66e16f3bc2c434f06816e73515c00c065b5cb524873bef54a220a543de4732834f11e9958b71a7be60c42cd57a13c2ba37d1bd0d6c0182ec487f55f516d5fa19802e629120caa341f36a2b1edcff7a4e38f11d55d5b939463fb0fa03a6c2a27ccbcc048870f23dd975591e7449869888ecc3350cb73961de276b4795845b125f34ded9dfbc5011ae1c1c1d0b854a0c6d9f93a5a2889fd6af30afdb28557d6973192941bbe33fd8833c254de27b59a2167fcc4c72773e73a708aa46e243b630b19a335dd2732cbe3f1ac9c9332232c839357e69157bf58617be8f68df0f2003f8c9fe5442b7310ab7edbee2273d6de7712f652002dff2d0b125db929a1c46103537d17b22ad39e1708e4a4a7c0e8d2bbe13bda32d359e76c8c4f92e6d8f6246210ab9a56241eafbb5253698931c7a78f5287757a25d2d646c08a919e19c09efd45f7456bf1dc7b2bf7b56d694d9532ed9acd5c7545c797fb447f292266d9292c287fc67d6d22998a70083960579e93ffe81d5e86bb18ab4ba4a084e180f74c7d23244ef56a721a58d9bd6bd61ed594f39631eb104b4d9f6867dbe2dcca2602ab4c0de23e9015e3c5f5bcefc341be6e59dbe3364887407a19b877b1de333005126dfd60abfb99b4dc1380b57deedef1cf0cb1d121edde0fa90435e4275c7f4d0d1b9088ccd9371939f788fa50d8f5f7ba096430472ac54feffff19b8a8565c4522fdf91a75f735c792aa09b41f956aaf7f3ed14ee56de2335c2fef2a62148bbe6f170bff7cff41f648fb0863d05f4a425ee86df30df2079f19da7f67d75741fc4a305303f21369d85934362d3b1ebf6efd63cade7eaa8d6fbc3956fc6f70f05e33e46d8e7fea313e0c27dd53a0baf37dd1e0d0e2d3e70a287cee090d221eef7cf675cd184076394e3faf7bffa05aeecf26770b343c38bc11ec1c0cfb0973fbdd03d8b7167ae4e3cc18b417e9a7eecc999415c88da845e92bf7e38e62e5f0f5317f57abc9afb61be99cc624ff4d5a6f7ad68de8d13aa6377d026f90036700839bd778e6251715043484e53e8796e2bf970826a2169d496705f96e1676a8e09deadee7b63620e30ce7971c1071d918379650e7dc778191ec09eddcb2a37f3b5149e53873cb1a910ebf67f80accb8874ea098791084e9b67a6b5eb5f9a50e0bc8c578a59de1cd5a25112947ee3dbd1b53406d9a754f45af5c161d54cfcc1ba2fc90f35c547cbe1f959949b60db42ba04a6f42ffbe8780f8b0a30f0137628797c3d7d886368b4e906166c085223200cdb7e46f1eea7cd4c6f9a08c437de6fd88d316d869eec0f02bd5c00cd693466ac971ea9edb9d02d316b86d490170ef18c8087d44e79c1907e5050762fd9f0b750d68acc62eeecf4ba3f7e912d2d9660a1741784f7c8f8adbcaed2f08f884a284b27b9be0d2c743a3749607817418c18be4c14a0fbd987bfd5228ebbd11dcb6bbab729d591b32d3500c7146ab37e903430ce702fc249be5c0cc37f8e05ba3d151c4ef67ea6dafa1360ed1f809952efaae72b867c4ec2c93a772e2d4663a5bb63df5566adb09a4a516212da0f20a80c018f40a29c9a85350cfb805662179f721a1db8cae1c9c41f47df06c74c23be5791d33b457c67223744b544c2a60943733d8150c7083d38de6f28f8260333f5456a7728753636fd0adf53b34274534dc3c4d87b382bd4369d5f1d609d5edb2624145b7812b3f03d79781cf1540f0cb636c34972c66fc3977c8b844cb837ed7167245eb7a8b9962acdff2f6c36fff6e35c0dc9f5855f96ccf451e358fa11db2d6806a40eb7fff270c4bb448aa5568b6375fe61138fb54dd32a22b903731784e65c6de96e47ac7d2de36a2d3eac90486ea160e87c30a37d5697bf05ae727244e3d75efd04902b9797d14765d920536d6d6bb7e700628ad74159cd4ba36e19a4a06bc39f55fd69bff2fdfe7903002acc88b8bb2f815eaa4376aae133c033247037132082da2e57807f579fc506d7c80870a8f5cf7cc9c0c5bd1353f13ff27f64caab6a95319880fd819d2ed8aab113ab2632f0ae16758f8ec9d41378ed4df4c2cc3398f16b71fef9662cb65b903522c5affab9620a18d690c5c37154f0c9c15c5d1dff2b8ed331efe3795a2d7045bb67e67a9bcaacbd7cd5f9187611ece0009cdf5b422906ea10c3245d818fd0559c7e039c8449ff99d045511212cb91d882f2999a597507b17851bfb1139ee28cad526205b8f27c4bb76fb74619ace5f3abde7444e0c7880df24c207c65718b81d91f1d586d5ea96de9cbfb140735739c31c06232d2391acfb5753a4753209dfd65ffcfcde804f0bfb5ba6f1f68a2f3cc38f5fcf64eb7118954e2b56a6099a11bbc0871cc0beb25c1f2cbd3b74260c35032cce924e231333f8cc4f8aaf995fdd6583b86ef55f7ef0e4e3bd619c25589ad85167a92650fb18f326c7f80bf60903835f010bfbe43360bd0e92cc01eb2f45b4226cc14a41ee495430aa7cc7ceca701d9901d6ee1ab858e5cf63fc039786694107a35f5520e1222f42535cd65f136f2855654901afd0bf23a7e7428910cb724f1c011daf0d0dad50a2c2d9ce35ba4b6f5c5a98a819b6b5257d93b077c2e76782f92b9844e1e963d57985d5eb2227012ffeeb69e5aa801b5f075f37aa6ce5835cd36b1add3107603880d5fd37c261a3cbea5dd5c8ef666867eac8a9f3d3d6a0c32c3672a5db1376b3329b064b402e36eea3b0f7b320f158c2585ed4a9ec11b377f0a5cf75974803c31fe16d7b1357954382e159cf54cb5e7d4a53abe5787afd5a29d8baae75c011b2a146618a6f3c8eddaafc2ec07a9a0d3efceaa679cebb4680db9f5225f719e036de8fc858660d0808e7b4e3326056210bd7cdebb72bc0001c0ea289e70989dedcea3a256cb5f07f4668151e90dddfe958e9cfb23b8ec858b7ca42a65be4304a0ea80557b779d047d9cccbfa0bdc02343f85dc5246a126e5ff31fc05c5f1d6fdd0536494a0fea1aa21963ee1edfb5155186d067777e7f5d6aad09114aea597c2a129cc3cac6f110e2eb885cf03a7f35ad67dde2a1252993dcb2f922ae41cc56fc3a720836fca6094a93e960f2725d5c5a0fcfc7f149be13629896aa1b43bdccfffa20c05b90048244e2dc7519f25e5ebada335ad235855ee7f7cad1291e3097d48341f424156576aa3f93314bc8709d7614da0bc1b85f53533fdcaad09bc1e478061e727241495753541951bf4a6c78327534c7417b0ee5cbb975ef3ec6a0814cd23586083600a00fe3c5a7bd73cec3e18cdc0d6d0fa88809bc4931ccdb04acd1d50cd97e941af164990ee9b7cc822052416d807884ad684764b34e3e43fffd008a6f9bd7f08a0b9d80ac44b9d0b493ca845d367d99f3c657804e02a9406b814894b992e5915edbe78fedfcf5ffafbffc0747b581040fc6bcd5f461fa4f89f669f394ca69c8a8786ad4e76c96b0ff65824830e3e154d61fc5a98c2a7ceecdf65acab4adf686753dae4a620621cef466a3f85f2220c52f3a613c14a1432c5420d5a96052bbb768d376fe8a0d7870055957c20a215d8f34fd976162dc3d92e5dcff3ac119b6e43ce5d7af6ce944be74eab1cdf7e25d1a41f3275492239dc4ac4afc6a2309dfa71b97133dbffa176a762539cdc95d3a0ddd4d9506b46a808ce22b71c1e0bef8422423337ac31c88a3488c4e3a1b2d18ef61482f7416cfc1c05ecc926f6626e59c8477acc40ff37843e0a7b81635d445bbcedf065459ec81a9ada819b90e03415fc70ce2ecda6142901c32991c877aa21a0546c66dbe8226c97fa5a5226f0944c7683bf61e2100205b9176de9477f82c98bc567fa2d7d579a21cf892a47048337bb91d4deb0578d05cdb339fa3ab04e93fc4d20a189d1225fbe2311f194fa21b34d7a027fa351a9dfcc77fa7c977812b4b61d6f50a7afd16d989a398fc8e47f774ab6a810e5ece5962a34a497d5c9f0097d3be0a94cb23216dd014d95de143ab72adaeb2124d86d5f1c2d771616aecf940384e26ee5bef9b70d76ebe18f55efaf403c438e6e282a71c84582f927620b78028f05bfacba45da8eb62215b6d942196831e848cc7aa37c73604ccb962b08cbec5a76aea63d5ca6f043a87e5acc3499f19ece1253107b88b3d53f9b093c9965a4b8bdbd9c3b0bc3b796a8f6232918d19bc3e31320e91e0509cfe3987f2bfefb9a925783c87013a67699d0d1260a59d1272dba7907a7357070a2fb3b3c648b1e1eeda995178a21b402a355517c9f11e6388c132828acc31928c5c585459cacc8e96aa2d21e18a7ce70ebab4889bf8ce96711b1f92b61396e3bd9de85617e06ca23f1bd3b913ebb1eaeb31c9adfd64a4406bcf8c8b0455492ef1dd855b801bbd3b5129df7b3a5d5876e419e6ab3001d18005154a5fe93b8c7bb89acb6c40c1b550fb54b5cc5c0eddf3c3d7a659d4b2dd704dba249d2f598012c96b40f65ee225fa0b6f30afe46e1aa56f67e373d195f5de3b79eb94dacd70ed9bc78ef4bec473c36cb2eecb9216d90a888dfcc88e4449c0a0529c671b78953a702efa37d07350fa4856d4ad80d810606c10b1380338d2b8be609f11d44191ba11e793a7116f5e43a155826f0f0e564a44b36b53cc7076fab19f75f041c4d390ec4478dc95728c6848a1bd47eb5c085e145c8f29296fffea582e389147089186fd89c9dd3e2a8831055119aceb2ac0d31239dd59d133603b311e909dac16e937ffdef0c5a62342a978c68f91279b8c4722661bb4422e34644d2b8e211cc33f7823964e9e05049c822d6438ce6f2f3fd7b36d1d912cfc59c743b037813f6dc3a2c6ca0931a59ad57640c5801d26b0fe51fe1b6aac04baf14bd6e921223d853c272ef98988a64a6b28598dabde35db208676099e47f5c60dbca8b61c61a03556917727d2e113cc456ebcc3a8f2f0bf9f57966fb1499f02d92171fdb6fb93efe53acdcf54de451aff6c14aa5412cb8f5848c19acce80b2ac9b8a766c99182ad0e8fbfc8f2ab6f12caead24b56d5874fdf23e1e2cd5b4c00eca28aedc0a75ea20f7f0840655f98af2ff4f04bc57bf3dafa25bfa89ea2d960b9cee95aab53dc6a9b083a7985a76a224c009dbb3a1521ad2301cb101fcd4d3a30e2585e6a0680c2e820449f4b24eeef69a6593c90d321997fd9379e4afb9b2fdda3e7270b4d06b3c7702ea19593b8b085883b5fefc815d17db2210cd0d10c639fa6a92799cfdf6a4258c87af707ab1251ff1c9d0b6f9010e88eb6902a915002ec4e207d486e5e8abb9b8bbb3e7dada3f820062c62807d272bce4888d048e1017bf459544868b1ebfc5d21b61525b644030268125b476cf39f6efc722b05d4b88f6b7655a07ec62e5e23c9480796cef50f67c25111291aded9ef4f29b622c75fcfb1fbc02fae6f54f6b93ba283b48fd8f023dadceafe833fc8d3676a74aea3cd42139443f18f4dcf7f62d30f428b226ee8bf7e31b7e10a1495de1601777569badbf0dcf43ff6c2bbb48a961c628ec50e2477f96940ed44ef37c1948873486bae17d2dc9e8d8541dbf0b453d60a7555c73626abc8478d8299799cd38e28a29ee01b7faef5523da50be430df3db224a9961cd86550756addf2dc73af8f32bf2e6d582725ebf785a15a6031ea15bb64a2691762b4e4fd7ce47a15f66f46ae1b977439206eb791fa22b0646b06f956500e72cf8de6f8d61d3ed10e375075f5290bb6780420fbcb0e26c4a178dc396ee16386171fbe1ad1c0a307341cf1e145d990e05290ba74fc83e07a51da7f5bdc78f3bb53b9d1e482d836638676904e21db2df66816644dfbeadbe23221a1ed88bf427f6c740255ec1c6262ce510866e090d4919c90061907b5e871ddc2cf9a3d38466a2ff4ea11062b13056757195e849c75fece1b75aacf51c23cda9bea9973fb1a9e5e643386ad0df5e2ec25f184d78921de3d7ef83cbee77f0f8643d859d57353e3855099545bd22bfb728b1dccc39aeaeb4aa11b8d4287f96f343cf3efb5449ff71af6d55eff37e7a785ba42886346f02b2ee1202e4146e081aed0d6dc76fee7db908d16a49855a3baf68287ab0086fd7cf0c115ecce65bf3b698b2d10739611586f2dfbe0ca8d1a6b8376dfbe6f56ef0d1e35900d348d11b1c519f74c895771a5e01319490301b3f079770a5b983e876fc988b05e33a35c79d23f20ae236c4c04d14c9007a99d00415c03c6143c9a89133ba98aa49629be852a4767969a19c0f854113ad89d96d1ba2938bc3f3c2ec912b28a776f79ff76dad6c16301edb7a5be677b62e7290143e6f2407d4ef231bb999c9440c0dff915ddb878c0fbc278b4ea7e1fc0caacc7f3034231ee7db159a79266d0f5448d98be90fbe9f9a657170662ec0b47b531de755e03eb1f44884813be1025cda7b766b32a4e4a2cc2dd13a6378c00b3accdfb4350cc5fea3912f15f7bdb30738f6de23a1f9495785648abebf3bb825a884a1cfbc5da9724c0fa8efa11d224dfaa80280c6ea4068a96de2d81078c80461a0098d8b98ab745055c0a7a8d0df44e77e6121a622b9411b0e02fd1aed2e1b6fbc866ebf1db79e3b2ada2f3c13db72d0b88b1c9de5d09b5460411d179213572b4f75d4a4cd9ae511b5557767cd247c2fc8759a76968536b5c37a9e1fadef6d6b45406fed20e0cbdd6bdca194fa9e07aab2b694eba30346222c17bf856a262d3924cac5bc1c57b9ebb9f90f5fd87c69832d4c75b2f9f52d1f5589c2dca16fe4f0c3478e964bb210b30918f00e40e81338b1badfbd2cb999cfc72a478a98af0be72344da5dbb838c43adebd8af317ae240cca58e1d749887c7570bb2fb7ef6277baaf970c34172d014473b6cc1711e75a0db6c9cc7b357382d3f193e5be9db3850558e07c9e1fb75862beffcdbdc7547c9458c7bbef8f99f8dde2530af640591567c8fb517189ed080c756c65c422b1a43e373bd61f72d9d1e119250a3e680ecd6f2c77ff8f1564e437113b82885b5b107f2af9b9f80780277438b9d55f5f3cf1be4cf5228ea17ec4d42badc735f0952db6dd2bbae2c3d85d38137db440d85652c90df1c4f7abc848ac0864bb91dccd484be85691daa7f0ad66b1082dae8eff656d29c986e9276a012b89735ea10977a918dfc95bb541a5637a0ee51a31f257230a5486ca3906aefe0692c0a06e031c5b9cfde0aeeaa0ee8e92242a955211d24b6f160adca44c584b0399aa59f8c8bf9af6b59cf14ef25da457ca2c6d458b246b6462327dcfdb17c5af1cea39fc909faa5a5871ed5dc6c01ea940520726653f2edbb2cc025ca4d4c0b99d79b8b0e5391f65fe6062b5223d79a3f9440f70c83556c9259fa18add0ee1701efe85641f8afc4f46656315b550429cfc6d255e3ca37e329b7f9d765c913d0fb5f89498660e394185df45dceced086cf74a241204fd0a419c96fc4e9b1ff90a96d7e804a2a40db93eebce0958ca821b4db4e98c3c2b22adfcc018e08a2bb595158f16ba4438de52824ace64a778d732ee3e4620259984b262b455814cf9d430d1932645ceaf197a9b8eae2ccb1f33cb0ab4368d779d949e80df452b1d3979f725064951c8d9cdf94ab3721c2e98c5ede97553f501e9b007116afb42c46fc47d08851fcc0242fb144c5c0c6adade1fa1fb3ee3ded8cc5f4d5c3ab0332a55b724cec5f257c0296898f11a93d189ce8b085ecf370edeef5e514cda45750c056ec5c3051510e07bbc59e5e52e8884a373027ca88d2b64f6f1940fd4af8e3810488f9e09c4049bcfb8ee516d1750c29bf703724f4d570760dc9d10fdf2178e603a60f512e5fa86f86f0687d2f4fa297e2af6c8681bf87c718b8da7ffb670f4b4e621809fafc380899f31d17076f54ba50d2703486c2351784819425682d2dfb4473316ae04ece07d2e1d921cbd171391d85c744e358376e8341d414b06304c2cfd346360494643c8ed9d1c01574f887fc6a648943e49d086380049c236a38db2afd7e94e7260247dfc71341c1a8c506d2a87390908d81b7a5fadf2b83f332f3868424538978da500b0ed0230453e919d37ba407a430cd0b11f6922809a394abd03f9e664a99275dc74dc31145ddea8dafe45754c4b4a8b37dd1192bf4ed574692ac5f128fae4a25abd299e68b17adcf5f1ba8ebf899ea0e3cdb147b2330ed886b9217a9850f248708b01e8e62bb29d401fab654d9a5eac1b5091fa62697ef195b00440417bca28e9a703a689dbc0e046d2e8ad5d3f9a5c83edcdf58b7a2961239f3f93bdf7abe612a7579a0216af72b309fde487a209879c70c1b5211bb12620ce4646100279c5b8ccaf2cc91ac2c04bd2e16e5311de3aa82468d08dbebc0234e918b2f89aa05c820b9b2f4e981126f8987461088d37904ab774ac1886180e3bed1f95db63f10eefbba71e1812962a427121b05d54da686d0ca7a2a42a81fbd1b2fe088ce401e2317dba4d4dd3e3cafa28bac4bbf8cb0139b557ccfc2b84121c58c273b9312d165d65cd611d06253b4d95d9ba314e3dc9cd4fbc3eb33c6caca3ae927a3dea5aeb98d4b51a2a5b917c166d943d0c28066262282a987c1c86ef02294da751d9cc91a731da57db081bbcf57443bc91acbdbc40d6e85ef1cbbd8e7b8c2ffcc8b7bf8428b347cdff8a22482d81f5fbee7692f6087d62118feeb8234c7c2e4d8ff5493e877030817c2736e71d09e18529e0cc10da310887aae8e9e99bdc03fe9c0e8716f3f22a0f208fdbc7ebef24ddab7d10dedd3616fc962f2319d41f8a9aaf3873656b98bd465f63113bcc32a8a3ba952a7908d90e1b37426bd851b217486f126042de04eb551a61a07ab92280ac3df45e9e9d3970ce53bae224fee46c277aa47d778c1fcc5d62e6c90005bfb71f6abb440f9e4753681cb23bbd5e60477ab6f442d2f0e69ca7ce7077b70850898b0fff588ca5fb4b612d2168c626c9a402aa5ca19a2ee48b225aa88b6ab02c06222ec9468d62e15fa188e39cdb9431d1f55401ad380753ed15b869b02c6fbaa8c6c26445a2dd2d9bad80fd27b1409f8179e5dd89dc89d90a7fd9273f20fdb1229c224341271a119020a5eee74ccf6b4605730917c864caf2a7950026a4845295d73325d2f39124c09868d40139dfb800da2096a5bef3b2a869334f27e19de964fc9146c002265cd5b2ddf683be39cebc7b1ed1401e6be12a988b8e522131ecb9d188639ea4f8c18e6b29cede64693ba0a8c297a7f26b7830d665d6affd9cd9845ea596c64969eb526144d58d72b504bc8236485e4f959729b6a01e3979fa09af2849b478a506a55a083b6d21a42b7c10cd521cc60c8970b55c4bc9a16aebf38c4b950f59b8e501ca36495328cb9eb622218bce9064a35e3ef495f34e4f177cf0115af995bbbfeb3fcabc88502876e76fc51a4ab439bc84315d234508037dc13a419ef6ce48f3fc73dbb477f1a162c052b872182b494e626ebd18efd3efd70fec8ad09611a20cdbf99440b2c1d40085c29be036f891d65358fc969dc1c6ff531abcf368089dcbaf5775133b0626ff56b52301a059fc0f9e1e0620647c7e8e7ff7097b3919ed985e28c5f7145e82184bdbe68f79658e63f0c0bde4ba0587e9f92b3ff7059661edab51187e1c02bc07a61f1929d53887e3f5ef13eb175eccc792e4130048a80b13e6f11cfcb203d0361b6435b8f3030ad080e118369e096d502c3191bf0ee4a75589efdad3c5ed517a5e88b067dc30ca28f1dd5b0d55504b262e13867a01016c49a502a5217a1126977ed5227286fa81a874b35a293aaf862adcd1c0a81c98f17d848c5b2d628c1982d30ff1204bcf5d05e420903972c65c9d02b4cc18a28d6b7298bd49e8e9631524389ec7b5883e8c7ca086b3c414806e659b347c31f9205558d257b959cb5a465ba7c83943a3a8ca6aa59f5427138d42e612a6be63f8fc1eb7173c0141db146bafc9d22378a53947797032dd01f7fa84276b09f0e1684863f302fb8355c598f9e991d3ba104d396665604189b4a139ec4b53b73d80fe6eccecc9897d911a75446fceec0042817be31d5446ddeb33f76e91a82421fc652fb9dbcd6e9e613281822e5c2a9895a7a4d32964d7dedbe718e8387ff17339140c693e1839243cac63db52aa3a7296ee50507ae8cbe0799883f6a9e0467dfcd73f5d175590ceb9534e5b1f6d86112f0721cc3489c4b792b738f81587a33d98bee9e34e0ebb17a66f1418be196eec20fe9b8f4c907620377754a9750b4365138ea167308fef6b0683e9db347658aa528bb32b2907482e209aefa053ed97f06b29a35e3795b64ed353838cdf1d4d9e84256f462e153c0c3007d31a2036e863e700ccbf67db6933929d1cf48c1a398c3ac762112cae918be741d75b330b0edb27d2f9d583c283bba6d64d81331c33f1732d15c4c06aa99e4eef682b9df3a8b0521ade6e9daf2442cc33592a5d582d52379e64aff67122a2c4b00f113831c6d4653a40dca2f7533301bc529ee3429d286926813af4a3d7d0424dbe2e02325e50d58ca236aa081caaffa1a146693299fc81720ea6a4f94b8d221fd611d21d414a8ca9abf09698f197c4a9f41585c1d24532a9f56af386a29216dae1b403ca6aa098a31c3e9589448095609fdfa1ffa816aff670e0529e7fa3f3a953cb5f392ed0d965b1482ced707df2838e84fc5771a1df13e692a8bd0d1fa03d20d276d63fa1509fd2344541c80d2813ab1d48c754bdc1ee43980e988f57834f6ab1bd46c1ebbf910f999ea7c3a15c56c14db577add32e263c75400195a80f0a232d9eceaf2bb4af1cbed7cac81d053f638b9414321c5a43c4de9942457d17ac2254241e459e8e643b49469c8b2c1a35e28db4df688d5de3a57393800543b7a01c1603ccc74b415a38150e3d6593e6a3234ea3d5513fa94b87bf5774b8bcc616636d8683495b4d4b62a1d33e690f7ddfffe28fe274c99e6f1b21dacb7e416a3b2c3bf16d64f6b5b6d0f7b079df2267614dd6847fc2f3271b4409233c37f7f6a5894f1d19ddad6fa392b2ece2c5e578cbf7da4ea805b6885eb6985b6e3d886c13ff69c9f85d94e55e9c52ff87aac41ec50e2e1e75ebbb1b224631ab037083a8807ef669fa70d0d9375347f5552897f76c6ae8e2e6f97ef592595462d8d1feaf755879310d36020d439547364ef6118e04c840682f1d47af19c041a67f5b7b7a86c597ae4b68b34681ba872921f0265bd757d8a1f456ea2e376c234479623388e8965e2caff40482f5658c6de5fd4930ad611a95711f2175ce65d06f6afe47e7fc50db3699f1ca41ce9a2ffa202c00c5d1d5180c55f62ba859b1bd6cc008b5d6fa5cf9656a14aafec774f5140ff953ccff6c66ff752d3b3daad12bd3dd3354115199b96a130cba02147c47c0deb43dcc9b9f08b5162bba8642b34980ac63e1e20949d3042f5b4bea5e82f21bdba79b66837c019ba077a5b3e128e4ee83793ee18d55ac3c23b5506989975d0d50c87d7b1cd652c9852af6f8cfb349779204001e442c46122f1c672694bca1a8e30c9f2e548ecbdf8a8d35a0aa862388f700c67b5260b50a0f434e9b26585479ce67ab2184adc7b31c26d665642d3512835f02c661ad789f6084298861a3d2516b76f0302c99cf2445aebc59f71da7e3252973e283f32945b2f534d492b8fa4e399c6037095e6fa3765a28bdf068ca3f63214dfa4b423ccda379dd01f71529f38eaa9e9df1dee81642d4461ae5906057568581cd4893b49113c44a725774d7944fa6cf6d23a184d44b28c7541d56769f592c2c2354d85162ffff1c7b2523c3c228be3669fd2c0f3f7e22a0fa87b03313d8070124c0c286790840288b6a77c687e3bf6eb2004f5070ab6be834d44916dc2b458ab6d38993ec9ae145b6c71a9baa9a9f1afbde52ad0a2d42d31121453efc4c378fca1c2442e9e9f840e8417a54b589637ae4fda32bf39aae3dabb44170733f00a6001c8610fd9f77c0d97c5c7668b90bf7ac007a8b9e8583cd5d1e7fc1429c86c558d7afd728be05e67c82f6fed19dd7d7c057b9c54d9f685afdd2034b05b5b0708214a830b28f472533347ddadbf2f562550e2eb222006a6a4be565d1ed1e870b5b20c9b4d74a35cf5e3750fe05d3757cfe771d0adc20cc2abeec4315350ed5f808f0aa32fbe90fb9c9c846917faff3fdd4e236c284b76c02dd33753dc9017742d8fad13bc28fc726775196ec9ab953febf9bde175c5845128361c953fa17f4bbd5119f5b332638f1903cb5998acfc36982ba60648d1231c25dcb58af9f42ebe509fc8f2ac8f1e875484a5981b70d9c834d5308aca9cb8765d66e5c5911775282924af020d0e2a2277b75500a8e1af3637adf1ca438a012e4e1f8f0bf78f1ac5bc179651ecee49dc8e678d809e79f8bde71277cd764d42e994830fac0c56521ceae9d497e01675a578d3208316474b8292e587c97cb68b6ae98da1524943054abbd516df0be06deb6ff88cde64a1f996aa03a0b6d936c235a5fd48a4994ced8452d0e0cbf708aaa3124a3e6bf71d310e19dafd8f76b06b19a4fa5bfa10b3917fc21fec9ae2c46315609eb017a50b3121c2ee4782cbf7c83e57af678cc077f0b89623891a1e12681c5e08609d4ba36b5bab88f5535d71d3a1462646b28226b76bd766b3bc7cab60f324148b02a94326b82393244a1c253adf4b639734a475eddba3dc7d2185bfbd37183f898c1da0295a007ed6b4c222cdf051a971c88f50ba8bd0bb2ebcbc48d5d88083d75c8bc6534b2aebe8571171a35803340798f1f94a86df26ff8082927b65af0f378d6856e3fd81a2b8b3ba36569c6587ead84a32f346e7f14f3d431b5dec194a7335bebff4333973757f81a6d0bcd5373845c5d9080ac0fcd72606c1466be4b6f7e514e427126915d3ddb103d760831eb0c6f5330e7ddd59774cb7fd15f9edc7377c55a97ba3ee5abbb5cfc6125785f3dd92f0e79e38264d7e5f8347a1b0208026fe1592c82e8a8c7866ce39bdee00f257d9197a86bd74f2916a46dd04fa802cd0b48ec2e0bd1e1275d953d7ed21f1f9996485251bfad584fe1d0a004c14d4300961dc0de9a8183faa9e2849c68aefcc4cb6f3077c054dc92871fee4cd4b69c028af8d0e74a086175560e411390ce283eb888c473e89f79ff87561c9e8b1fa71a346244cb94240b60c6e72959b0d453c23be41ea34a3a69268848cda571efd00eccbce9bba0d7edb257924bd7a2b748c8c786aa0e3386c5e10ef08ac4d202666ce1116f9d68a327f3feb2c0246dde75b8634529c06938c5ed7ceeeee105bec7111970a9ca05cdf6371ede6ede2b220072e9e1df62e6e7f25ffbb1d90bd38b2e8a86d3f33e0418f372766f3d16013aa9621650ceb47c9c50a4dbe7d3700a2bea400cf62e16175233e1bcced1b62c35564168b9adc555f8d0cc8ad40d26da97001d2beefc0dcca04a5535324bf6939d5c6090d4354f48ea938ff3d9bf1416c2729ed10b7853f823cd76fba1de1494acddb195a7d65969987e352e839cb1aa154216b32ee626ee63a44c3fb0c695b0dc78c59f6b028b9521a1cb43f3caf3386675d56eb53417bb46481c82843d618627be5c1003347a5cdd15711dbac5dbc7fa592cab4cbd933ea7553293bd66214a620e694224d9eec2e5743dac1a9273574a9ed09cd75fbc7fb7ac54ded9ad4489f8cbf871cd844e9377200ddd1c42ebec49aabeecd24a5aea721479a980ce77d3754ded07742c5b9f887ee0c610ece58f5dce57edfeac2db75ac2adcf70083b62479e5ed38dcd792c243498ce1a2b6644502a342fab6bf3163875efbb7fe058e73f5fa7e7427c34abc2be8b6ffb6c47da9325711b4fbe14ca1ddc4123c32a91d360a8cf600c087ba81b12a38b6ab0f6572171108cfe7ced049aa3b3b29acb30d9e642133cedddd319a9982bc64c5939b90208856ec35c07c2bf2181530a70429307a10cb1bbf02a0acf2f3dd2663ef43be5b9f0806f51e5f21996e50ffe7e63da684104f8861575b5b6ae87ee440ae3b9cc3903356a41e6a7f57556a18d1c7b49abcdcee875ae104e43b7081412daf90b01e014e7702fd0be87d72059cee00092ba477200004121cba09eb7aadb9e90acaf73e5fa93cbb5679b1f6a6642eb30c9dab7afc9a6b3629fb7bb5ea1f090ba70749f17766143e53badc2121282452740be09688d2276f0bc7906fc053f00270b66317813e5713b55ea53f2adf234346af0bca055556aca10c3e9f47dceaa400668f85b139c4cd6591a0171c967ecedaf7aa7e7321ef1740fb2c9a6eae4cf79590a89e2942628c9a0d26621d809eca46dfbbac620dd8b8e3f5a5eb2f9874d0a5ed5c65c27d74041b71f1754538067ccb9ff8a049c63da3699c70a4f94cb9a6434fd7a0a94a89be62f412380e841084c6c3f071801a3a011985de185db3cf49fda8a31d50b8c9c8bd3b77a8558673aacc26a9ebddccf61f0ccb3586dc2d476150fc6096c5f2c65120240febb27e44d63027283f9c0bcc3ba22c6516e5206c7ce45fd9697ceb5a6a60577938e59b8fd48b205a84084b181d20dfa73f5abace9d16d2907e05aa162626ee04ae31838672b17731bc12840e47032656a90a3dd122987b672a09dca42886c42e2b71cafcf80f17c4d0f66f4d03c4bc578338c4edfcf3e4546f267a9342f3d1673d64be4d4270602759599bdcfab8b7d4303b458659bbd06a61b9ac5c2990d1e4dba4c9a989c95bbfb7ac0aec975fd9076f620ce379f5d1adfe77c9e79528a5da7310a244ddea30c510a04aa8abf40babc8104af00a0cf70f174a95d038e100aeed918849bbd6a0ece85f72949cb72fb8c7f5e096996f7d1e4ba8c6aa2e17e1853819194419f282b8006365918a251075e385dcbc01e47c5eab019ed204095656a7c2e216c284c7468601cfa9764a6f785d5042fa2aac4723bd8c304c04de62871490b50227b0539beac9078f25294b52a02bb42cfe04a0cdb68be04659f1051905a5d3863c541ef33f64ccc50c1474a5425b831a3e3859c9e94d12ee2c86ab09050960543facd70aca4f69ab93c68013d8cea5197686aef70b516ffc0c57a9d8c574c2adf052f1bb5cc3420d3f97ef3eb973c40d309a9c0218069e4bfbeb069b5e080f65d4cae475dfca1c0e66d7d64796a393e98f2052717ed27fd4466f75f5c9cb1ed09dd1cac44db3800145a18c6264b4f19531389b78ce024b87407a59b0c7fb0dd9339926956d321056b7348c9207e3d152e93fd8648e26a0eff1e75ac6b55b41c38407af39c82d49e0430002890b27d39425e59cb4bb968eef4053a05b06508b18f78ec3ff47fc2a9ca2608900a63667b16741dc2e310483e1702b06aba490a093f0897170144cb483d4e931c153d70984ee82a0b54cf42c25dabb4a3363b288b1f34991f2cc96f071c5ec37c9098a08605c4990d1b32c930c12e9e10a04249e094c01f77628924b48cd989f7180838cfbdc8dc60d664fcc180d2ad1472b77318f7e27a9f389139be3aed914f5a5a296d10c1197d27b180bea463d0616406c82aa92920e549a6de23b1270d0216bbe455974ddf322970a228a5935c80484448df0f16087e02bfcf458afd2ac88580518315e12c35aaf2a9bb384aff03124648a37eddf66c35d7ef6815ff6f8dd0e1fab3e0650fa8f81698a09b1c8d74346a600c77e2d6bad8e6af0905214732bb522b9c76953cbb033f8e9971770b099b02ed08464f545262caad71a7fb01d54ecffce6819fc17f9566d22adb65331955aaff9bcaddb6da798d825318df58b030fb84aeb9012b3303c3c4e2477b29fc9c4b3920d7f598ae94dd8577d04af706fb0ce7719889249602e3268f7191caa00333055397e5634d87a09535356eca746871a5a9f3ae81c459444ec85072c5f06cd1131e06a638b30670d20b7a33d14c12a7cb535c568ed495cd8535ab34ed0e09f4f4678fd538e5a8cbd33ed86c9a70951a3f5642070fd63c132a4782b320994b7d64c7e1b460c71529f0ddec82571ec01becf62212bfa3035d1676dc04cab67fd9c4c4b02d66fdbaf7a971850a8985a5ff6623336b979353dcdc4a5c4952d900dead846472c4a763f1d523c17b5a4da8241c775bc3ec6aaa8c62bf9a3c2255b8fe7387e6ad4a4d04d945bca33d24fa441a77e98de49e8f0d7d35e9a2c2553675dffd85aa59953b32fee1fd31b42b8016c0ffb4f462b05cbdcf20d4e25c0f6f4f5b79e0074fdd59fb17693ddde42246c8af2df1feb3c2ea84ee5d609c617d5f6c7f8e31fc77af814988e944930f0698475b809c47ca0b583d9208f8e8cb3f9dae3e815627eb4c2ef1d14551257ec97d3e1445b778dd055b89d0872247ec52fab2bf904fb45baae466951c2b7a4a1e65237414770c453a5ab00a4d6bd41858d5a16ac77aa06ec29d8b5ed9c06671236a0546d383e83765685e9ad9c4c754d94ca55cdb0616946f4967a28116f79588ea7058ff6ec4a387c08d8f495bfd0499f1e876cb7b5d21b0372593a80bf757457d2500163e9b8fb60a5ea767c8a4b030cda19c91426a67246350c80ba93efd768d2911ee5945336194dc1e506664b2970dcf655cad9337b9062ab3eb9320316d3ec0107f9073bd40d3f2f67ee592129575cdadcdd4bf2dcf112b07c0858ac648fecd78e8a1ef7f60f08904dc22941563c9c7e772d297c49ed77fa10f0fbdff3005e6fc2eb3c5895bbf96a71f602004555550d980870c38bbbcef131dee33e15a6bb9ccd38d508d5875f0a7120f7ffd71945af4bfec320af4a437dcfa56c164e49e6374b6837e5082e1123237e6801c7c26d8b484a25018606bca8d777a0c3155574cb34c9f5d9bc81b7d7c08b3545435abbe45fc43b01d5785e1fb4af64757f9e8c2901a5556d33d881543d219d76b6d1da188d6ca6dd00e9fcd29debaf9c94a52d63b8bd760f4f3b2548e10595789c6db5810b92398fc97fbe5ea7b8e4a0e8fa582d79740d3b433148be2e9946b9f50813161f8136c607c67db4ede01f36423da3b39a82ef148dbde5c118a0eb7240f64f27e458812994682ec353e847ae2465c985f6717a9f7d4c4f2a71a72619386c715946a7861f4081eda3a71f30f2238ecff8524d0807e937361069c97c13c5b43bba1b6faaa2f3548f89775fd492bc331d2072c5817ba4de64528a398407f59c6e89e68afa3b6fd3c2289093dcc870cbad16b7a1cb5409126cfc93ebc18dab347d761d3d446f8ab45aea27752c437af71f9b67b1c8ba1a6bec7d7fb08e430ed6c54fb35e0be4212e5515349e9a4c2a285a6b5cab3eca1322df3a55ff5781d7976b495e7d46d731a2a47d5e4ca7ce77f8ba4f8329758465c57cf50d425fb071ce459db0ec85ca80d7fc48e3d5b02f8695ee7f5c6c6db09833413c3b1b6b8de0864d91d211cfc52199195c5ffe324786275ab692797a79f8bf59e4b87805e0b6f64adb501815a21a0536a2d09d5f748f191735f92b317b6cc387dd5bf0361d34294d1855f298bc467614569a826bcc8846e630c6558f4d2c793c987e51bb884728dfdd0da01eb6b7bcc86cd5d858c39aa410ef76eece43b6190813a47d417592650faa83991a7bdd4f935881408621911b63828ea3974d7bb9d79ccdfa4f81e8d41e4f56f4a2d95dcdb7c00b309e4fa86ca8c43d74c2edefa5162803dd81f231837dead727fda59b6267e51da3ac38f785d4fc856bc7c79c6d8cf24fbb43f163d07845ab4096b55170b6d7350814ce23d50bcf379eb4c74663bd75da2ae05720832a296a270fcaf6c4d8220daf45663358b3175fb785f36295c37e356278194e27513adc7053ed32d23b8adc84a35e613226beb550d6b56cbbd00c1f9995372681c7d565920e6d3aa2b29257220e8fe9b3737bb16d25b5ff58494054b69c8c4e7553d6405ae434d0f2ce784671086df7517a5bd2dc482df379892017b929add27361cd93e07534b102b3fc3081ee60b1e96a5c4b112e2fe5305d5d5e99a518c20b3bf47346b98ccaf91225e3a59c7ff89ca320efbbe6854027def7d2943d06d0b928f016b975c13c7b30a85cc7aeebdbcaa461e2dc832593c59e3426d02324ac147438a9376e21c9c0f51b73879e643bbbf3dcca977b56a3e66c3f0a2bfc32796dd3eabf996f32c414142bce6e162c1506b2fcb882092376923ac0726b120d9b8be64669e8be4d9c3a9e52ab133a3565b0bd1e09d1a692d340dd63cf89633b52ab7d4168f1cf0387c196c57d77f14c3ce64ed59596c11e168c52bae6d667796b4fceec950ec24732bf98ad5de85b356fe4d9764c6f67d4b25928e4bde077e3f3732d39f8f24c3809a0e12e2cca3eaeea27223da7e03e208d305b25a70ddb9fa170a5e01d0cf1b548f442eb7b09918518f74d82967abe715f9cafd82a7aace24a3e9c27e5f1ba6d0d81ae37d2047d04f85daa0d447cf593c6c39841b6b36708f3352b84639890a9bc4ad4d8121e6a13f92508d542a13d45a61064c97ac5078196586ad2a0e1e8c0a0383f169b557033639388328dd853e7ba1dd73437a105fb3faeddae998829d6e27fed820253036891453384425809772348550387dbfa789a0ac2300cdc8e8292759a3cadf685b6433d703d6ecc65b2d1c42935424ded27131e5edb262164df196f129b8a79ed7ab69da9010a53b80e12551160126d78fea2f84045afac299172af5b22ceec7464c8d695175fb1170c326bae7746f089a45b36a6450597d1f47f826fd40b27c440fb29f3010eaa6cd19eda6805d3f74a454fa0dd80cd3c2d1eac893898fbf4fead46bd5e2d906b3eeb2b3343efdafb7d276fdaeec549d03a675e41fd780dc4420fa7a277d8ba7042fcdf4c88f92932e9ab2264cb2ef6dfed7262a516c51698d87939c885e85837af38b3b81d471d425282db137d19b9ef82292cf51327b59d6500a31df456300fd20e8b76fe3aa62235b47288031be45c6745ea673de6383721b42fc42e37f4822f5880bd8d389639da5fe80e000ae51b43ef98afafa486b84a3da4a907b9dc9f97d05ffb06455d185dcce7a9ec07135d888cfd6c65209104f797c3e94b884db9b1b5cb2b1d557bf47c4ad000bfff21ca92d89ac3cc118b37ac7583bf9e72eee9682ea9d2e8ffadb3b4281ff4f171040d8645bce7eb835178285d82dd805035438736b939b9a5dc1605fcb93908ba6b66522ae271e989b3a3a1a50683b5c8650749858a0e0989c90c7289d60e83f76c205951b67b9ffd5ee492c4f93bea0cd18e418d87378b4016be21bd2aa616c3341bd13efc0b9f41e5068879dcd3cbac2d5f9e2ad9e0f535fef0780cb6f6e5dbac73615a65d10b54b03b05465308927328aaff30674d2884035568d78e3997cce5f6d5400cd15b57b3de9274aedcfacfd8100c955c927dc9759d14983b2ff867c109f7b90498f35bd67a608c7d12ab9a4286d92e816822c548489e07e5bf0e495615502725fc81ae78428444ae8b20935d07a8d3908b7fde2e8dc9ae3a6b7d20c0f3fae7ccf96f6ded81c9f7858cfbc807949c6afc3c63ce46738ade9f3f46c9c636621b64e7e1c50dba33aca105556a4182675a2bfe85c54a300a6b903af5f2ce2f4e5ea36219b4a04af8d1bbb6b5b31ce3a5764fe3cf2bb4d539703635dec6bdb1ca5faedbebd1385814e4bd233f6d4dbe954256f5826d523229d2be5534ade73d599fbf3526fe775060ce376fb6cc86795dfe94e337f14a4bd1fb719ddf222a06e1a97710b1c09e61ad072cd8910fa926009c5cc5e10b7a04ca655969b0e0e617b980e7ec86610dc7c8db5c0e99264e241df73a00bc8409b23e9e41d5ef0da39603b9431beed59ee4861adc72e02b0d62cdee71d8de81861d40bcf3e0b29b735e38358b9a33f9e026e1c404e01dd2c2c18f98760cb3ae2fff922e7a3b48689843fd041d2548e781cf2fdfbea1ce7bb58ee31683fcb80312a34547057b84419ce1e41c86bc4f02c4f8e65f62a99802e2c83b81b23c9f13a23b54961a1647ceff0b3c9988f80d473ef7fe3e5536ef8aa45f2631ec5a7f9b70b4bb42db2b0c74bdb25e0571831cf7f1d0954192d296c8b239a2db3f9ff9c9f153a431eb45ebb6fd3a27b4a28cf250cfd7f8ded701abeab111857a241685488d14f636dad73bf8de1692b07fa2ba621833899d18a99e48bd491f1f79c080a1aed60bfb58b9dd855fbc58e0cae0bef5d37cfa3a1753b192baa734be1e6e93f530685cb21201f0cd4bb6b4ec1549c0ecd65d5fb02116385bac4475e082c986dbb4f27c9b7deb0bf85a8c212a34f555bce42d8c840ae9d0ccdfcaf86c8e45ab2299fce1e19170d08276057f4a84b57ea828ed6374c786ee5957925c06f41e248b402a89fac07eed3a088c0483fe2786d91d85ae32476f11402c52cb3d873d318a0b5f6a8568c18c348041db6a560b3142cf962a313c973f3f55d9736a671596067cd15bdf102422f1f8b350b53015698d3582880a3182c892e7aba76058347f5e5f61a5749e44f86a4da64846aaa0a25445ecb91085220a1efe082afe86eef9918ba353589a1c73d911206bae25305d199f63beb82b05be806ea8ae1b5d11b969bdbcd4e9014fa45d62ca6421c35c2ac57154328302525d794b479902f6f6bbb63e1d5d1bab2bb3ce21b8478b3ff87d84be446d690fc19eeef2303394038c069ffe1b0e277e0999d9b1bd5132c60905362af7019b4594f2ee0dffd419fabd2f2118fbcd9e282ca9964f7b70d59532ac0ab9078c3ddbc2d7b7f4cb1a0a61258878b65f473e067157b3787c7e91294789d3024e9cf0591ce73f4e7c838972689eeabe8173f36f0864ecd2f5b641935c845953b353879ffe05ff242ce07fd1ba32a57f2f43887ff70b857b61d5d7522917a85615910c3d597a7faee0f7f4905bc49b5d100412f9ec249d844f4953e4612bb04d6ba1796085c06d3f535395f004c67e716258d2901a71ebad2bcbf4d20f2244c826cb92a083105fd3134837ce1cbcea041fc533cd2998b963b16b8834a7f6efd79172ca9950f83baa32ae4ccd958cf36e472424a9b3178e67872b12fe14d0e6cc2658a6d031fabcaa96118afb34637f74aa401ade7efde7a3779729c1f575a56196b78d698e7cd07f6dc35ab9c6e488396da60a6c36082c1c96acb218790c9573924a8abf7c93726e482344d5a63bb64c47e8c90b4cfb4c4672cfe2acb030b2491c2c5eaeae1a6e99576b15d98a331341c59ec0219620a601d713fbcb85af0172373691cbbdec11c1364bbe8fe34a84e81f2d8e083e5f5fd28167e0faefe7128eed7aaf2920d3e8e84536cf7d99272f92d23fc18e0fa5324565212ca877c00760184795da25f8e98c39227be1dbcf14cc1dbb129bd350df107670682b85f98574cc6e39d4eb7e8ebda1a1a307cfa2ec6429fde623c92f4ec5f74cd80bb5c4426ff33d0c0b4e0c4dff6b49b97fcc38303aa7f22ecdcffc6db670931caec4f315ba1df3f4570297ab4ce547faf27ebf9287e7113a93fc26f630e5b9380960be810aeec98cf1cf1990eabc3805d98d9aa4d909ce6c54332aacf1a7e08010ce496a7a0ad9fb3507e9eb3abd1dbd468a0eae17c97d87c7d448c0e0f03df3f9a0dbabf00b1e5bc9697a9be25b101783974f9442e3e1e75163e3e57d2cbb7c4086c78e2d8295bde50b6a1e034cedb4a6f47a59fbf3abaecd0e1ae809927b00fb91d43e9f722d7510b8f3e840630a94079dadc2cce3328e8e5ee64c022d504ca2f627c44e9973aae44f3063d7b987622e2358c24a125210386f7a335107ddcbc10adee9e570f49f6aeba71c1a473ad6ad2637780969751d8c1f4669423c18127f9b2e13100ab2af6a1e9ee3eddbdcd59f6bdb55d5b74e9edd626efee24835e75c95179f074207f760efbe22ccd53f07e05512aa0a0ed1bdc08eab1295cae1302b58da6fc8975b906f126cb2a35feb66f664c97ba6be766d4eb12bcccede273700210b926f401af60fc9714c086fd5b263c4af2cda8a94669fa75827bcebc80ff7c66356c3a715eeb1fe3585b70ecabc07ff8710a5ea27b4ebd62494a2e153884a5f6e9c2d7e4fd30a80058e1e2d481fa5bf3f1d3121536fd181b577f47c95a643e6cd0cb467316a0f67f284b0d3b8900c2ad79f484de0738ee0b2b2317162def1cadf3c88d38a7f131db319bd1ea7d7ae9120c35739abf0e28e5b19501735d94b6971eafd00c57ccf3946de92c9f30555b8ca132f13e9c52a123a22907d9a91a20c6fe6e2fb618285d470091b0bc3554b1174f3ecf9a6ccf2eec7de34706def9dd6dad2da9ad6333c145c1d35b68686abaf9aaced2df687296af1b1e7a4d163f2ae73248c955da66f9710003b32509ec136f95933f1a4fb7580779dea3a64c7770ba95540ba6380291c0b8c311f12ff73823ee13e654577ca0689b73ecc78d363e2efa1df0e445ac964f19719123b04d5813c491408f54089bd367be99b1be37614a2dd8d85c0cb05c05f7432ec4c67929c0ad986363bdb373067142f1700a738a3b5b0553d45bd450e53811d624e0d68540053859e49d44b5b9ad64f6ca6bac6cdbdcde5e8ad7390771ac83d183a972c40953d9125b892086a7c75a83a20f1e8de5123c15688ae917cd4e7388c978acc82b3216a780fc058264c8c7843513e79e5ed51d862535b096deefb66a479f6186fdebf3bfcd522a9952b84281056f615fe4a05fe0ee9d842ce46a9a30c7a3bbbac604a11c8e124dcb69dcef2a400ccabd510f083285c5edd0fd3b780929b2149970d42e156346db9e0d60b44645803a5890791fe1eca44960f858cf8695481f18e7445144998ea404e6f11a7ea9208564112ab830b0f7fe73b8859cee82fbf25c49de2058a43c824653bcc0040caa629db49331f48b1f47cbda48f6a87db51699fa458df435b838ff6a6661b651075c493a37f06b64b60ff229375a82e09711b3024d4b84335442f4314fdc01345000c6a937dc31590d1bfcdb5d83575eee8591215ab595ca9a6eafdfe2390f5f11ec9f1a445c3037a39dfb3eafd501390f36cd43dc937fafd12458a8d1e661fe3b44720b820d6113b156cb36cf71e965022aaa1357563521be015988ecbd88861faaa7a9e20f7325c1ce1baa343ab5b125362d5da5a36cc704b362eacd924a312ab3fc698cb41fbbc41f15dd07c00d7b336e6a0f87048a73ccb3b6b3d3809b46aaf7c7a190088358ea25ffd45da4aa815e2a5777a61788b506d9985a573742e1504faeb29382a5423af130784bafe31a58e32496ca3fda29c0e60b319095ac7a032433909aae1969d9f3ee17b4d0123b08d839634a6a97a4b3abc18696182c1a8a64af7f000c70b5b5fef7c1d23ec5331978736c081d10018c98b15be8f20b9eff84c9a1782a7a9278a499302b4828cb40df434391f9894345877f371fcf35f6e0e7a4b9a19b00f2b45c727bb8c5ab90173d793f1e9f9bc1f8f51d27cc10b8315168101c0a1b1d24296c3c8775290d2582ad7f564d7f8229525be92a40f0b5ee7e2cc289b4d3444ebbc58b5b1ecc37efb81922f83466ade2b951cf2d28217c6fda6dac7fbd95cd8064fdfc83acb3818b1f15a76c5315b7df11434cbbd672dd4b94341687d0324264187271bb32942e308725339f738ebdc745837f22f92ad6c8e965f94426893e2173f4e51f8682e49d514d9ba707df248ae6b663f6137a18c53ca74cd96960312ee74359fd9b5bab156e1fde9761f5f8765635c7fdf4d00994201fe692a114bbc8e3c857abc6499f7d61e07e74dd40971997141ab0a7b594b0dbbfba840706a8da1b1656e5cce4a4429a46938d69dd6607d0b2b1077eff68ff8245eb08875966b6bae2f159e9c1f73a6a573547b2f3c1ce00b98c11db9a8c3ebdbe9373d20b68837ac31315209748ca0932c5f8074f0b79274bb071e9ec886575e032b9b9fe235db1e98b5c8ff36c5a625d730cc3a73aa9b7094f65f74b1f26e828d0aa2f8788e46f961aecaba93391d751d33bb47f47bd55f4e2989bf502c398cfaad4421e87ef3034dc115cd3014cfa4c8b5d682ec3e95bbff38b96c3f2f059a8cec407654ce4aea40b70c0422ff99545599e59541540f654e8b49d6800c05f558de976986720d0ee2a8cde6920c502e8348e17bdaea5503c03b19170fce44f1f75e8f142907fd30a56d05e41308e06e96b500b1db0459f9d89e3103570ad39b3a00d41d531c3f78e943163642fd1de38c33f696b5ea46bec667d6d225462badb274c99ca5aefdd0e2cf29093ebc7866e278c82df99d814f33fa154727042b9afb700f26b0558e8294548acb4dc8a15b2f324a572b7fc2863f84063f598a3a41cc681958bbaa00f4f0144de10a5387bc6cb888b4a2a6d3d3e81efcaf258d729a1b697cf1fdada365b4eaab772163869335f91543be5b050cffaf77af5448829b269f4bab19fa031a365158d08da6d8716f136bdfc9facad33479a8b199767c316a75e3bd48ad2485ac2eeb13037d0c456e038bf3fd0cf7784a6f964de292cf6b4e61b41b2fcfa0a7c78a23b3e11ab06455b05642c1cf05cf7a7866d9e2fd8e9b38409b0dfb1642e08e81339651009ef9169425041a6cce1e01800d8c780d4fadb00bdd7471d8e94a656446ee4e6510783996920151d90e7347af24bde09c0f997abad3b5e1f6f4c1b55c1e95e231c8fce17786d71a3dc7d80632d7298887ed7536888bc7abf3b5071ad5ab5a42b0906d297480985b26c7301dcc4a6a5a4190f654aad24394cd3d5e91ce702978a5412e03b2a9f3aab88f0cfbb1150b61b6cea30c648932603db07a4c014018dd2ca12bb56dc9320c4ab64a3d3a636b5ec2272956963252c7f7c92d9e9b85555fbeb3465ec9ab0bc4d14a1f8e393714b23d21a703b2a7ab75c6d274bbad7a990cf09e7618be955f968d95546e0f2831c8ae0b35a1e01f0ad160b04797b26be0023d1c49c81c399fa58672fffe0b1f9412196447b8d99f648388249ce3773db7eaf26dfe2cdd790a04fbe3dddb4bc0cc7c86474bd0b55972db2b220b66f4fcba6500735cfed3e9e4333315c73aa83b829175f6242aad82fa87c13930ffddeb02747e42114f4f66f81e9055866dec0bd1dafc137a3ea6746b3b962eee3e14199b0acf5ee127925697d99cc3875d108225adb6522e5798ed41a1e710e45fbfb1a1990bc1496d7bb3c659682af9343926eb4d07ea1a15fc64c0ab3cf89eb2fa9efafb7e9676ad896f7ca1985702a2b5e4b5dc3d972fa8ddafa41fa391092938c713d30f927a07355041dd8a94c2f76aafec45892d7f79be5af8b5e617ff7c80782b25ac7345774dbf2a52de9bee3bd1e5cf2022279002825f965f8187e9406675d2148966c3d07a3ec12593346b52a047dd8150fdc007d9df4cdaf4573ac85c849328d3451d8ed4e4e783b6bff6618a016dc0d5587e248f887c580a2d856f437d823e53916e9472e475a7442e81aceea5439744be475fcfb9aef44697165919f7c8999d5cdb8c8945002657f6b8f7cb25de715f42c8ad44e04115443c40c1c979a5111419f1b875dfe24f1e6ddde41e954e46c0ed3c34dbd1818553d362da7165e3c33338b9555309cf0a53b85e200a55c7deb8bcf3cbecbfba5393947b779604b28b55d10dbdbda17813e8ee9d3473847b5df4c42087584a89efe6d23111fd05f1ccdc8f79976ef2027c2834cc33addc98427f56ec9362aecf8ff1eb527971179b6ca5a4122eb1c8f765611707bbe65d474b6315e94e1710e11588a6f1dacf194964200cf708086b8c3fcf251995ccf3961b60a94f80f9d960c1ce49f88bc1f6e076cbc31ee6f0c7a9e41ed92262eb9e6fa91b8211549a7089152030ac76893b60ed9dcedced6fdcf520457ba9425d459c7a0c8adf97c5ffdb59905052eb954fcd40c14cda79e131667f72f37541a86eff406e3ccb150fc616870c54d8e0c6b1fd1b80dbd7039f0012bc5247270b8278d5d0d06ce815cf8bb6fd9a56a0eb46040902e20e4bac20536b40a652ae2140373a1933f9a5246c858046f894a4b2bd7cbffc7ce24655e0ef4c09f11250d955c2cc628a8d6c272766a0064e02673f7993e2d5afc7c0c8da7cde67d7bbbd498453e2725ff77b85093a4beb63430835c8d6e4b1cad8cf7aeb1560af71197c05b9d5dc5447a60d34841fec1aadfeebb703cb4ff0b30867766da77688f97f2d1588deed09331b90c5e2feb27b1d8154578b8d7c9954875ca7ba57c49ca9c3010fabb0be9f422b5917090f7ec34e4c2ca47204664c40bc63626f454b87cebea5ab89ee6a69709a080784987a741705c597ac47361e55236fe0c0186d4b8653700e6fa151ea5a0b47be6ca9d9d981c318723207a66fdb5ab631d1bd92a6ca889cc5c41c384e48df5cf2b808aa69aac691ca500a7d0a87f5774122fd9460ca7b47ac4586cb8fccb277c2653a05e5750b51d511757d70bd10b66e039a212d69dc363d6a66ebd679467be3daa1eae409ce5c0391ee1d1d92cf24e17459ec1dce1d2dce0b92e61cea12fa80929d10a82eb52c7a5a9a05c157b58fa047d4fcd9af4b2d590c646aee001d44a0613718e5a90deb828c8b5b4aef7e8cd282fbe09f4fba9ffc427a08140c65a89f3faa68221a839c82c79eeac3293a92112a817ebc2abc9419a402bea3a6c6785c819eab601fb385ccf4ecb220efa0e1f2288a4ad06d70df56ab77ac9c7e8018f5a38f087f1302755846a3d332ef4187b0f2078319c9a422988eb6f92f63262ba06eaef92e5f0424c26a681e48614bd764cfee633351b2295eb5a182c5f56c6adbcc28d8d9488c2a585085e0b69f49084fbc97b86aa1f467222b704f697f5486fc7c0bc7d706428a1201a8f72819628c0b46b6c10e3af8dc901556f5acf3607227d644cbd3c25787129be8c7d463fa6686d7975f311abbb9946cb3b71df78a2a812b4a24ae3c5834d7a1c30f6a00edb23f3ae2a916dc1821b75c840dcfc048c99237765ce72c03aca707dda6115c16ae6359734d6873a26ecaa06ad232b9f25772397dc26ad7da9adc160545f72bf114bf8619c1c8c29e30372ff648ab7c78b0c3e5fb6b6115731d930d51891de664f763bec143c69d711be7979227e42ace11060c4223993028df3dac3d7e78c3dbaee97d9062a93b007888fe5903b89de41415476844aea3a4bfdb044f8be008ecdd20825a74647723e47775d620f631bd3702d7a745be52b3b1410ab43007d9b245edf4a314aa3e6eb43b829aaf21c8c2649cfd82d6994c93178daf242ff1c90d698fb97ccbcd60937fda302b18088da7126cee69ea638f6eeec1ccad1cbce8f3be05ab1d58eaa17f2be1cb50d385c2e9822dccf18297214d69f48f401f2d90d76d74fb43e869303578e5dade6cb3de9676d3b23be11b7c28d37c82daac4c6b59f4d95b2812116d5bf757c0552e6ff51f80200ace4174d80190de792f7406bbc693068bab0006f038ba6ad78a5466d6b7499c1c8dac42b21cf23ce3beb5357e44cb3f6818ef5dd9a86e271bef2943092ff2076a9e6e9f00ef0bc508098e7c64f5fe40a69d00464abe38b770e8a3ed4330202551294b11b090d0bdfbd5af2ad4b731b14f3b81cd832d19dac22d25cbe17556d891d459f6d3decb73bdce26c0fb90cd7d1191a17f53dfcc12f22cf69439baa621fa8c30507ec4bd9957ed014b0b146182c2e208ea2f34d393422ac38b5214d034d296bae9984414b9a945d7a1604000e2680e5a78ea33dd2531f5f90955132b8484f6e9668f65672169dda65b1c49676964e3c0c21422a80ecf20cf68d08d212dec87ea4a10c1b27cedcbd36d718a4619eaada83cf16995c23a82475ca9b205c04a74aec90561b95909317599869eb20193b471cf9ba8105941d52768782c9ff07178bbb2d3ff1bac1222c6cc0fdb5d32b7421006e7b5b06501b78cb565e82d49a1e47062d7a185f4aff8789c4877a2feac564d29c0c5d2080abdf55f8c35ee0d677206b017ba42f49909342088b5f0b15b207ee843fb434ebb63908865c3138bc4293b4652e36fce076058da15b2cf62f9c1a6746f6c8e2c6310ab188410779b2d3a376e7524a0196b764efa57cd54af5f472b266f75b703a56b5f6534e4c82db2e44759c2b3dfc3392bb2b67e4e044f2a6fe296e7c28f158c6262feca5d1751b1354ad49922d40ca36adc02f188a7b511a424baa3016814ccef9e443f4689d8453a9a2cf36335390e04bb3aebe3c586a86c8c772032212df8605b52e773885dccaaae3a72999fccf0f0cf281edafffea5969465c6136005296f612d8991dfa2f812836e51c622f5c6d43f9eda255377c0c53d51b10c82cdc546dfed663c6080531c08ac30a2e4f1f2136f01c1e775718a950e18c798e7cb859a690f655ac2325bb514be6b284b5aaf0ac663c732202ef68db680ae3035913a8f3ad10522b68b87156d973297b25160cd3962fea7afe0f7d37b0a30bc3ee277ecf262ddb56facbed1d2675885e9c6a224ec143e25c9d64a3060a934f75ff73bac3a345dbcf95707c3f39a8d57c72fa577f25fc7fac64a02ace5a4392dfac610c4491bd51a81d20ec6e3ee734e804edee9d7bced48b339c49e7a3006fb9b178ad8bc34e06783477445758283f579f6fb9a5b61c58eca7d5cf963ac5c2d403d0fc4e2a968aa024c2f303ff7bac7027613ccde64b86bb8258d5eeaf97194eab404ac96f19780b406aceb3c3124ce363b0ca9447fe9925f7e5b508611c6d0a73c7dfe6f611c6c5e71d75ff8e3c518ccb5bf8edb7ef1a313d5d09367f26382f97978e6be64274640feba5f20e2208808c06ecb9da50445c6689d71b99a3d83c97974612a393e4f4cc611029dba936af3b6a2fd375c88f1261633d077684502a3f71fa3cd963f5e3402c141b84eea68577ba46f002fb361c317e0a20a1a8eb7c62a5a3cc465320395595da0689d891268ff8b252865eb340e48f483e9700ce5d00cdb3fa9cbf96aa8d5fc855e376c692cefca8cff30cf589d7af976e00d0097c0d99fd216cee843ee53b5cec0ca2f8b9f50a01e3266f506a0ef789e965efe05e822d16c3da9a918ab4de61c45bdbd0e916be3fb2ca89fe3d87a0c7cdc8f3ab6e9b5bf8c7e1c7c87caaa357ecb1b8c158dbd586dada89ad6dd54438f2a0a1acb330303765376943406e1bb7eb93442ea7207096e6608bdb888eb54248d7d1e21871ffa116e7f5ae0e27e50a28f7c7c1022923f4b9cfcc3a82aa1b21331b72fe55fa39fb7f319bf357de18fa641818abe2aaffbf40386c6881776974ea22c647c61078cae05e9ca606402552befe31761af6ead7c44224618a582cfb1e8a5df357035471f129edb11b464f2936d190a355b521904add1f83ad8389b7935d74b95deca4667c5474e2e2f444462d5ab4d18bc468ff7d5bc8335bb42f4d06294086bf029076bc1f900a555f80b23e740795381c48c33139241a1362c913737a94865e05de2612b6b31d0ef04c712ee19c0a3a1ac26022eaa1aeded3dc704385677780b943cb587d04f3ee2ec3f740a8d0daf7a0168e31db21ed23ffc400771d0795a4646ee9dcf09e56114dd0850ab96239c5eb7aa7d8719286f5fcebfa57020425090cb99860f2f97d8a5339a2430b16ffca46b571c4c81f07eb0506d24dfec660ee7475765b2a2fc23f19e803b3c0c678a5a5e09a681e620e8bfece59b2c22ac0c8b01615c98dbda2fc0b55431b0a049a9b88a7746293b1325e5a0dd269109dde3029331b60a6023751abed348dc7002719ab5cd8b59d9af82db6ccd63089f20da0748858e00419489eb6442c4fd4cb744a05670fc344cfea075eba34d2227dffc1fe76f691e001da286443562828e90dd3e0bd16cb73623176b3f012a7ad64cfeef45cc0768e417f547cd46fe0055f07cc3c4b198ff0d51cc8fae3139bcf1ced7d3c1d60fe926e486466862dd35e71315f72be0135612d7009f21181467b832c6ca57214f444b7e146bf7a0cd035ca9f00401a69186bfa7fe4ddff315e21cabe36103a835995024a94a4cad0d0973f5292346067b93928e0ce99647345dc86c024f76aabe901b9f9d691dbda47230427a386d8301490332ea45b8e486f2b559701a97138f1d87916df312ce56003ad6ee47dbfb1f1a2fb45099e8dbf336526fb8247877b264fb7906a02faf20b491dbf8635918ab826f0159ff829328316d26237a588b106ac7daf51699920474c1836f6415f4f4d5c451cee90db1022b01dd05b12c355148e4f26a75d5879a6e49b667b2e01b86ab93a94fba940ffd75946f2695eccffd98c069bd504aec0a300ce82e02d7514b2ce9e9a0b66754e8c3a3d5df72609b904758c613a2071dd5fe81e1a2e76c12695df8d543cd2b2c0545c453898f58a3e7233b8bd6f3bb509cc44cf4c57df0e23d20926603b71a0379a8de9e4055e74137ebc1e7d31f768cb00ef53dbe5c0bb7ca5fc323653594d29b1e98c2a2cec795d386f15d417c286ae97ea62be75761f82d4b4f0e9f8e1f65dd66518655e020f049a8cc02675c63bec1a96e05f578c5dcbfba2e88791fce5838e73bf629d340ce82dac13d18f56558e35cac73273b889b2d0df7a8edf86f25822ab59d5f028cfe7da5482ecb8d0513743a588b0998906af79aae6296ca82bc98be5378920a9cb2283ee787243a45d5371a6852383ff1a2c12fb43f27aa287a79cff61a5270a5d6fe867d27210fd4f7d62083150d596158417b70263a017ef1292a6d08b3235bcec28e25311a0b99958f91e0c68f42092f398b35fe06af59be61990349a3efa7a413c31de450407c4984de27af849e2b6a115151a53dbddad1ca0d3660ddc8ef3d9396a9818d02825c30dea23bef60ebdd0e9261d65bd59143b9debb4da5b4c226681f52485a3d9d3fbad6854c2ee843d0aeb37af979fdfb050db95ee2f84593d3ca2efe987b2f308d0b9468180e72339c6933ec5c3611d53607cf13fe0a05f7bdebd02f7456891947d97cfc201840481ee48ae48bc29b5a7694dbe920552dee224884f11e30b28d421929b8eab72fb542d20376cb1ded1d25a8dea188305831bfaf868a0c6904121444f43bd64e25e5b19d76d089bebfd5a527f66f916f0661c383a8b57a05cd0dfb3ea3dc6c0726f5bc7a8e4b9af302b5fde44614bef78b74002e262e98004182150cf12bba04b60057e2928456c25210ec16231733add0c1eecaf4dd33ecaa298a5389116bd79436d2d69c94641b9616a91c70202c7e707e016ab57ffcb172624c7ed3681ff40119e57240ba369a8e6e19f47fad4416e6c189324b9bd5d40920964d76ecdbb42fb9b38419e135434812f8220c1f10c0a649cd059a61067fe5d2006bb1d04439ce113825dbaafc70d3763739da79a8d201c1d3cf7bd4a3d3081adb2dab87040d57df69a2e71139ee67131455b6677bcb9ae5dbf277c59f4abf9757f6cb29e45c525f97f4ed6f4b4b815bbd6e2a6bbeef8cc51f9493145329f5c85729742e7d5eb28753f7ccb57734e5563e55fc9977aa29c3aee421efc007036fac0b1ff78815aae433c754e5ac7c6a67c0e893f926de83f45744f5b537899d515077d172b58af83cd02f6e785b126ce72d335914162ed3f5767146dcb01dc1589028dfe394e0fa6ba212e6a114442b5b586ce5ca118464249dc289a286b0508e477a2b4c9278958cc47e0786ec0d6e6103177ffaa5b5dda0ec7153dacf8c1c3e14ccc59700376e8a82c5814b2670b6b744bdf2393cbd07d9ca1dc2b3390f33aaedba0f9d6dc30b16e6bf928bec7d6776786b6bee3b61d124ad73990fe5f9b89241759cc828762fe8fe7f0ada31f2f41aa62cf948b3cb82a17d5edfd81100f3dc2fe941683027465820aef8edaef3d465511fffc0d372a200a6419555bbdabc88960defe9fd7e2df458eb7ee000edf2e51a2023828b9b6281c75dc4c67fdddfd5ee3fda037d203b36cd5b1e4b54a18d81d2fe54104d9455188dafc319e2ac0710181b43981ee1df3aac612242f1933b6ce2f73d343e0746e4c6ee2fa2083f16781ac8629e68db87b0357a8600984668f346af95367cb101bf521107480c0f90084a88a404b5e8221b641e1aaf8e019481b13a91a8a05986f73a28cf678e29569e074e6d82df6023f712a9821b1db92f7fe79aed85e8cccca22d44f6a677b70ed1a579adffba2d7bfecd5efb3c9514297e1566fd3180138e6d08ebc9068f85d524571c96355e53c8a7835057ec55bfc94d993f5935db57ceb7faad0d947a3a50765315e20fa4044c6451c4b167b963e720b9103d003dd46dda71e97c38a52bd23fa12809f5af78032e59cb7b585bf20b19ad981e7ed6b845d55fbecc9332b55e22b7713a523ded7133015a70e7855598448cdff044f94c17c5ecfcd283ab6b7f6cbeca8c9225148ef7796f27dacc4a9d25447e119cc098d77d01533b64de71f28c610d1a948c0e4f238903c59684e7f3cf31064a8c36c44a169b462c0bca821c69a6546b96d406b24e9a71f4f1f9f90830d2630ff9579ca1e3fc3813777c94a16b5235f4c4590f1b79a402e051fac05727fe0b1eef76128593ee72af188936701350336b0539965bf18960fbe1bb400eafe54ff2a3143abeda865069a6844b10d26c6aa7da79b73215cc3d0f6d6ca3d3919ea3d0aa16385f110d7c96e0073d62bf4a805d48ab16c6139d558d2e2576596c5f0f1bbdfa3a3caecc151d7446edb0369cb2505164a4b39296e0248d392004a1061e8f8dc632ded770b512ce663b3b16e8947d8102bbfcb7396b4d526b26044fbab1fa066ba63dc6c028811b5533b1c4697ebf16ba77120db74dfff89898d0cf48cdd7f35206ab7c733c70dcc5f082851d7baff8dab26c398cc67d498d83762871b68d1f44201b097f218706d2497cc895c5da1b1f5621949771e17031707a06667de2beecb7b8e6433abb3341e024e8baaab1e6ce145eebb33be29aaf014a6e3e7e96098f8c3d61d31f70d049bf2f5d88ac269d7e9facfc18901beb3218c58b9fd06313d00586f30dcaa06d7507dc6559735732a71d712356f191de3bdd1294cbdf5227653e7e5e76dc111f03006190b82a2cdd972aee184c67e32eda338536fbd7896b6e79a4679bc81647e0e7648b3aedf7c13841b3a4e747583715c91431ead59b228088458cf55b72888bfa8a521162b9243d95a2f5037b6876fda9f7ff72579fb0e08a7dabd04c5b44824bc091210905a92cdce634445f61c78cb6d6a8e6d67dc7f65e19653d3297761c755779ae186ac53a457367456c25894b7bff47bc5f16e3061942d0f52d03fde0a6d0b0acaf76cb0897a7cc34cedc586c6d2ada767ed6fccdafe8222cee7943d85a4e2c86f0b4ee823183a96ea25cefd3d0d42d9884b1b7d77f45cf8c174246445662cf50cbf2b0e8c416e2d15d41417af9b9ebb845b1e17d0140c60975aea3e17da86a5a1475ae2d2b3b30e18a7f1e6afe1c93614a98941b07ec741804e6c4d2d1beefbea74799321534399c18aa18d92a3ac16f59ddf37fb9a2b90fe7aadc3b38f2eabd0276b089e5ce5bf1f19eec0649ff4b7e05abaaaab8b356be295f52ae251b4291533fac79bd04e5a82aecc3878d66dcd968657f0efdb25cc8851b78e1b1314307a05d6ee9baf449ac9ddf6122b71b3a468c23fb28a9f0a1670b511c3c7ad7bc8e4457a2ea8fa92670a103ddb7f3ff640fdf825d4a040e6e072e367716c9b439b94a68a06df5a7f93d3a56ffe27487dc7a946e9ea5080253d69ab0557f520a04cb0809278c5f2d80d1f724a4ff6cc9a342c3045c71b9bb4fea2325abae9ca0c3b31a159070a945e5f9e7b4b045e865f8a41e750241d5e007c90581df9c19a1213e88f4de8c5a01e4151f03d061b14e3335223ac7e3b0e041e6290dc94243bc502fa0e685c207ac07c75da95e2d20b0410f23b7105895e8943455c007968796357d2ba7cddc86f892c1778e7b8556a1cde8978ff4082846c20b2c808881d8849f7a9ab26b5cfd81be8c0c4bf69b4b16ebbb32c19c28821da69878f646ecf13f142b73803b4b5138327c84da99866ec36d7db9c230e5e7ac706c6903d8a18210c41f16a19e0ee6df0e675fa69cd63428a58a7d1e29aa3b123863dc228cd1a85b3a501fa39d60d109daa47015509c584d5ff796be93c8fc0980fcc8bf3013a696c670cf5d0e73503f1526ba201f437ff2340c4e383b4e3c367004a1f6c3c1548ed8dfbc3350998d88a8e8544ae1cd53b61a75436382fc44063481472722a1960d8557a003396aa56c72a6962bdcc8c83a590733640ccbd167b1064f413c1331478cbe01fe6b5371ca941634cb56d89f96a73d52bc9d28d2bba813ebde7cb799772ffb9e4252b371edfc5751d9ed9aa21de83a54abbc2bbbfb171c88785b84f05337422fb0d6c7f686f9cba7c455e0248021d85fb61f844707d3d64a7fb26f4de643f58a63641f299171a8294fd3b35ac6b70436ecff5fbc0f6f17d8761bb5b7bed7b18a19c426854d19b394fcfbe3004120ca816650adb74e479406caf1f1e0d7da6c208b9a746e4e28da0b9898fda2473907b8dd9706823692bfaab68b9f976fab249d3486a3ade2308cd5c552b0ac7054c15f80eb69ee804e7e52702f2cb498e5c6f7293d43a29c368cb511496ab7db04dca380faf3ea93316f6d02f53fa969f399a4dd13c882ff1fc9b47b26253070398e11f79360b118715e021c35d8b909ab00d7634ec0d1bd7f25919a17c4b8e99cda3aed2ba53710a792839f8b5022420e0ef415d560436fd009d896056a15803b337f42c273fac90009c96748eb359959260cbb31d808044372a050ae90845b42b8a8f1f434d98e5c206b740f8aa82db4f2095a287f00c998296fbcc52562fed4a617464fd3b351b16296537bd99d17458b31119210262de138c4e02becb9c03c51f6e2963119f77cf5506b489ddb941f66c31d8c5f14146a96f8746aea598b19178f9506d905aaf45ea1b3203627b915516651aa97d9d5ff584a391b6422c4a14baa6d96d4d678ddd57b5111f6cc51a78cfde8b66cc9a9460eaa402e4316314a5e3afbcad42a94b59d32b18480108f3d0186e01b7c3f4aa9095097680d3576013a69124f3540afd2a323298c5d5b80f285b6b08d81224d01e33d81173c12c78403932081d6350d437a7dc866c12acb65108141dee4cc2e195cec6b0b493d2546d126db5981af2fd75ec64201514896a3fb8c6fe79a7c77a0d005a57244e82a26e745641e53e14d96d3e66fa2da27aab00de81176d1fbd3eaf64d6759a7c9e9b3b550b97c282ddbc645edafdd8e8e9a55d0a6e3c781007d8e6a427c2fc66347be95c17753f3ed8d5c43d3978e595f289522e0868cb2c4f333a9ef2459944f2d52ad14ccc5df926d1ddb8ea8233d3a03fd844e3150130a21711787a6a0d51fee2eb3881eaba8d2030edd6858421db2b80974a252a15e1250550842467133aac807fb180442adbbc2c67e99a85d58024b33b2ea30fca9ada8ad9b4cf15061b40286ec7c4a7dbff00f76a7fc4be5a8475f934aab30f5cd5a24e954ec73b602b4e0e8590608a42c9bcfc7868f207cb83bdbac2675fad764901555c28f7384af3e159307a96abc01e726fec488ff00e618eb4e65a9b3d99bbd087124b5c327aa04d1bef1403ab76521e7a6d8b066fde31f08e768ff55b523fc0bfc34991aac41af0ae656c1042f038e738cceb5ac6f1b34a953cd00c8da359df0e1a368e80af32bf5b29d6b3f91f2c359dd8da3282d00afc0cfce7b2ca9ebc8c070ceb6fbcd5ca40ba652a173a484f3b3a29a4458b13c1e6a0c455ddf6ddcb1943bb4341649e5d5852fe11f4aff1139d5e4076df5211fe99e16086dbae0184ec5a1f46e3178aac34fcf694c2a00294f8c5755fa239587a0d5715f1de533f3b79cd227e940b30c4cc2170f3e65e289da4b569a2b7edfa3161fcae026fc013cccbf5b7e0cbee16bf42aa31fe4a8db2581a93537d0a78de93bb3c6efa14c76d0b6eaf47370295fb16424e7f9dc9ed78541bf0fb9909c660c4b9afa93bbcbcc8a3d599a93921c714557890a7a4843703d2d154b13c47eb14d48c6dee7d57ed7b0d801089b0e1e6c4bdfbf7a28866ce84b3ce2a217771e201f73552b4a73eb923a0fa74b07290f29196b11f4b2114a378dd2daa01bf78efe565e71ef7c276f27a85e4a9374452f51dc19dcd083117f883d089b547fd5e67262e84afb5f435b3b61763ad0edc051b9800798c6491a52abd9013d85537912bed087345165e983ddc79b9ddb6a516f7b1b7faa0c0df12287e0f911ad0f87c542b4a56e539239f1a1791c67d023f9a7815336db0d5f0be0c35842f92236288f31043cc90d86db9fa6f3943c38f44434c2ec0d6eb3e922b6a846af56cbd5b6785f85c2abf0c598972345fd746271c0a477e4da6a292a6997235634627bce5c6d6c1f12ac6411b593b136b4c25f2c94ecf54f28496b786363b82b102aff6b38e0c9619bcc0df36b25c1f7e5cb06d01fb9bf2d8d11392db6d69197b3f7e12f621d993879e70aa5fb8cf1aab9f6a92e98fe188da056a1781e09be13b851ed009a55e72b6a4acccf14922636812472790f38cea9f152586e5343b380a680b82dc2eb09038249f1a246311f211be4c98ddae7dc6a8fed7ad28269ba0b75e8404b41bfe28bb9272cadd1258ba4ecfd531a58480c131c87d18b7a061bb3699d9cdd69a61b1c2544cb8e2be23463c39298c5f1b455de8544775e9ca8273695d2020aee722d7519b04568761b1946c377a791c3a399dad8592d63314c5a0b5c09e825993ed902f823e2ddd17c66ff1f9e1cdcaa3fd520c6d8c964d0d87cbe486621202f827b756944afc24cef0b1695f198d7b2832db892490afac603000e7e7326088e3438e820e74e0da7e2f11f4171f15277f1e6ba3bc01efee881cd8873af0796d952dbb15da0b949fb2283076c53b637aa4fa66d0282ca5bb86d5774e57640f9ef11461b6800ff27b1bc59061f8dfdd35cc9c4ef9e744342f1fad6f7bd51780c47cfe0a9a8cb1a60e800ed8edb13a7abf1418082c5468e0781c8bc369f514559ff52f3e8401fa26057ba6f87e487a1fd6005db9fc172eab6b37eeb2e287a90cde8df2a58b962054b2d6d4deabaf34b00d8400bcb391bac95099a453a7a4609ac8f8b64c8b74cbf6a468f9d8e76a788b69302fd4e0bc7d34e77b2bb9e4d3673d73f7e01280579c6e8613683b2ebbb05884129d2c2fa97a87158f74ddc8fd2a21c050fbf26e1b1ff240b56f6dcc042c63d8f005ebda3c7184b5f68704ad5b02cfc751bb9875778f0c1e59caa7308f40469a8c63e756e39dd4299ede5c11d3cba2e21e08aab5fb431576de784cb2d41dfc67075ffd32ae8d0422b17e03667c5865c0d9d6b2b7d5bf0c3a4b3928dd695288b8e7b0413c26bdd8d0f4caef1c4fa568a2dad755a8ad2666f631ed562cd8df2fd3c623e29017d816ee9440feed359a94b4bfab3d14fa4af39b4ac7406e125d235c48f5967c127108c4a915be811361c1ccc3226afa660048e82396fba79975083ed9e8a405f716368088fad66ba27bfa6e33ae996e623bbbaaa75057b1d2c047bf37207ced8667b73f10161d0bce48dc028a5b7840c8d5dd1fa018131dc1a659999db7abb565a441229296b9078a3cf4f3fc83d5c61a37dff3d86b2d620dcdfe2e3ec496c630bbec754e88a639ba4b3f74ba3be156454e4cbe16222ecba6a465211eef8c929ce5545163f8db12d21ba8c490c2dc5436b6e59eb623e1fad80c5404c744aeb9a3365d47a93053224bdcbe7d6f10d553a44bed1b7afd0473c4ab3db0878bd685a60848e53e719555a5a959103daf19e6c7aabc0cd50d4a52ecbaa099743076ca5ab9d5689415cb951aea5cd3094873f3a7552f8c2c1cb6b92b4704bae34604402ec1edbcf139532d8eac1fdb4460957c98f3324e013bac26b0a0ccc4cf7538a2ea65029dc5285dc26131773c0195c24d2d756407858116dc5253a931bbdc921169a2f2d3df305c3adb4780047a35206ebfc58810a5b7c2f235dc0dbbd3711c9d6c77fc1863d2abc54ab1835ab080613c3ce5ab67ff3d576ee168f26a2cc878cc27d14f32b55039db36d18107da3472c8af88b12fa62af798e7b9d00fa9825d09872548c8c69af42e2407db1a4305fd10d8ce49bf24729afb2ab7f07bc118b4a8534d838895289727505daefc54cbfca30673d75c029e3fb4f23217f45568a45979b6c9206c751822faf06e3225897f69ceec2a79f73424f424fdc2a1d9fb83d234e3efb04e54cc4dbc7bd813d4c4c7e249f364e0c94743657a2b6b4c9ec00541a4732f0c9aa7bd4c599ac888ab9c549b660be101b10556d647e833ec91f93fa5fc5f417325d6103a2909b5c5e5b4473dab8d9c42fd1af98c8ec3b252580bd1b237d6997437349db9c90981154bd4b37e1139e77c97a37da6660829933254ea72b86fde841ebe4ef06db1c26f6289dc8cd21d1d2dbe6392e1e8be14cd940f8624450a08052cb7f6232d7fba4c519e46d4c84dcc6919d5a43de64b7de6cc630b1045175e3de2e4f3ef8afd9967b0db7eeb64785f31563e5762b78e5590d76f6431fe71ca15d61ac26059d8914688b39e1e720a5765116d54ad420ed59665ff720f312df592c825b818da2edbd3e0cf7d57963af370ab2a57972656ca874cfe01cba6780ca25b3584993b1fcdffd91bb8114872bd29c6a88a98b1e0548ccaf928d3eac3dc29756e8f33d19322828119e3735a50f28e2cdad5b1bbfe0b55f9e52d44c145fc04faa671353bb39e1b4fcc77258969ec4dca464b4c32ed7e572f9a4950c6a76d2e396a64df298229b1f4af9c4a9627d26b85b877b0966dee783f121d6c172ddb3adeab83ccdc199dc433ca9b0ad401eabfc82d92dac6633896a8f586943329c370c21adbd21ecde50fbbdfdd1de397305a95703279d83a930de28c3689b99b63cc0a4fd18e5e5cf5c690b6c79502a7cbf901c1d76adbac69c3e7c4d02b2d49fcd4583a4a13cb3a17c9ff3bc8a92d9274fc4e60756ea1c1d600431150910fabede7223983ced6090204fb007abdc562d7b5a4a052f58dcc5c48c7ecb9eda49364d17131e1aecdac41442a3bd52698e5f16384af5be6fd27ca0dacc7084be33d3e72ee9d817a087bb542de02fa8b9ecae89a423cdccbcfdaa67a627fa2f2e2fb881803ec88f4157f154ae85afe888b83bd81e3bc6285d3736a652a21847f32f3f9a17c2c3a393c9da70daa91efadf450a963beeb00b4db96e965aa936b6d1463fec038e4890a0a32628caaa8951388bbc9aea82056193a8ab397824f61401aa8769c3feaf02286982e33ad55ec79ef6f21b025ed95ce7d1813274728531c81dde109f48d69c93ccad50cf83b0d3e45613f1c7a1e76801eb2d1eafa0734777404607a228d15d1ba13bc3e9a2ddc3fc1a2b1045c95efb07535b196a6b9f0956000ed5582d3ea70f81ecd9cd4368925b3e95b596c76c5612f34adba78c953e8430d0483119ff7b3fba1cdc17b5723b5b758ab886f36ad9417a708e66b74582bdf02956a07a7b8af7bcdb20ed2931befb151dcf6ffce22a65cfe25215926203335d6ebe7952f9f70e8d2cf5005e9e7f01134059692004e52b37ee0623e637aa22fad3712cce79d8284dda5a4b9a12969c2a8a6efd13074a068da89e1247774fed32a54f47a4c4ced334f5aa2536450f64a0c80b30685143534730649dd2bb1b2f3f9435f68ce29df2a3d6ff2b5043b419a30e1dfef5f09f4a5d9fb3fe02662f7c9fcd635669cc403c924b4bef4ec908208a0feb980ece1890ad2c4990b8897467cdd47906c0a0ac5ae94aca5b671eb9fde3fc58b5ffc173c03cb99aa47adfdcd76e09453f179fd7581463bdf2caaf5deeaf5b11945ed374fa4d43fc752fb7a36db348beeed14065da56a522f21f0c6cd1c4973047d82feec459eaf75ca068cab25adb98861bfaca99f9320e7a59eb3bde20e72a4f77158a1b291ca25eb080a47bbb81f49217d7cd8e70f6f3736ff71b437226f5243193a614a24663a744d9bb8488c31b0d3df1bcfc1f49e1f6d0a76fca5e9cf213c238809f2f5da2763742798e84d6c789479d78b707c4e367931328358c6c2439768f2a16e5e11d87d6b46b6ad5277f62c028f1c417984185cbb2580ea7d979d758199fd9e5cf048100f0cf1facaf26c278e4a078b1d87d0a15852a5ad097c90539cf6e448884d070bd0a1a9db3a0da2446b5646294326f81e630c7725ba3fbbd9aa5c9dbae8500fa8e77e5817b9238cc22a333cc696f848f9d3521a2a2445ae1a1f729fe0df1f09a48dd5c30d887d3af48d1c1d5258413b60f91f4f8a7d450f890616e9d141c0dd9f2cea20c1d3a884a915d4a5a43c4699486188963644e8aed87cce33784317940e3881388f6a2713ab1e19e93d7097eed5454044cc78d8904a187bb68f5e0b31d1e2d869bda0beedf7fac045fa66d1a8c6eea05deb081dcc6a0d9937cfd957dcb0ce7b9942b42e707032ccec72470d74ecc20ee19c1bde575f411f28a61551405c5e53a1da236edd039e9030bf684fce3e8c3976cef0e4a46f8c0d21a4a3ca1b2ec984369c9910cea726e6f53932591778b9239f829726d920f9bc7edf24b630dea184f19cf4543e0a00fec283c09fb0f3f62d29c50dd70edfd4716eb52e5969169e272de5a3894525bac1bfe6f49e78a13fd5f043b831099b62f4d468e3291d9f6f9229a19f5b6b25be8e8a76fc89c7b1c8de418b2bf6a56641ec74fc862110b600bfff480831e2b3f6886ce2a744942cda3d4a14aaf954f21e61de4bdbf6633cae86e2103b7423db4dcdd92ad90c3315b9b88f7c894e428534368690190ca39c5689a826d8b544d065b7572457c3aae99c00f7b597a7981200a87861831ab56a0d4b9d8407348b794c7dce904f94dac917fb57b090428ee1883027d3799ede2fa4a8cf939187f89842e50895335a1e26e76ea456058375dff823ed6ce4bf96d9c6fbf5303a3f1b64509528b51b0e4b378487180ff18eb56207c8abd0c8a77fea71deaed679496c0488d03fa82fd30dc80ecbb51b0fb66ed1d922dfcb4ae26335e2d8ae557d42247d0d5660106a40decc0022787c96de72c03f6c36dacc68d1295f9e9b3cd9ef6ecab1c9ee3ee913947124a9fdfde7829e29e04db58da353368e0af15d7500f4f476d113a088bc746a9eae4af2127f79cca0f6d021dd27dd6ddd9edac650e8fda4f910ffc4ce0634fb11d9130fd511c77359e983881c87fd0cad5a86da849051dc6883e9acb2b792ab43afd29147241d7de2c071cf85c9903ada9d1457f74f35d9d3877454beaa0ceb49104bc93c13307870c9896d5497b16f43dd7e0b9dac5228844f7bc993fd9a53f0a68a064400a631f2bb09cac2e648f02ad9632b3a86cf46a641adb9e03827e465f4701da64c12ea85d4caaf7d71a1a4ba0e4e78d8a9f9173d5a71681de65d96344e7d55cf22deef992adf37f0c9f03214896c374334573529e81f16a2abaab0230be32db49b498f54ef06e969b594772f04e5a9a77a00e292c8c6cb0a011f25985b493b38d1e82726ccba682ae3f6458c294a962c14810fcd167be12f8a925cfc668da275cac01ac49234e5840587c0672dfb1ed84671e076ae5c14b64f1168e7c6db13aaa5ceb8fd811c7df51d22d6bf6d05e02fafc2e0c120f75decbe596ea93b0a6b3c63243a683d0d9bfdfbc317fca4e1a0c23ae3dc306bbecc8d62f07158f6af073b0e88abe2dfa50b4148e59b5b563376b4bb1ff6b3327f29cd8a2051a36f83ee5303892a2da1865489a5cd67f3bd62a4610a79e8d98b92bbbfca8e6695d0136f05c3c830a10eaa58446c323259a4dbfcaffd12711a02afc9e91fb7903eb2c87c51c1a1157d6aefdda16cead58be5a7050f9c422b9b4ffb9235c730926802965392d94ac2736240e40b9cb31387b39aba303f12a479e03b347e3ba667f4735a965367e0ac8efe6dec56296da25dd2f3aba163c7c7dc70b8c5121a24b07f4969764c6a6eb2d6f660815c83809646e0ccd0560c675b580accc463674e516e9a73e2666b9083896c58fb131381dbfb9a33c16ae36ecd2eb738d4402db911138f1c824d7a37fe20992778d27a2cce726da188ecad6aefd213fb7bc4b1b9c78b12bcd6a8775295dfb46e40e5d398b6b8c7b530dbb33ecf224e3a115804c7c012a3f9815ddec1a69a95db060c36585bca06b2c0e8f8c1907f6c0abe09e1d62a57f7791fac9c90a10bf163f421c74fb2e92bed7b89dc9a44823a888b192887d3ad436aae90eec3cb4127d085587a614ed1a5b32050bb586beb1d95657828985b4cc49799c77761c2e0db38792fee343fd665b1384be9416a4c0902041cb9867a7536072d119528e628095ea6a25a29fbf312fdfd201b1dd11da3e220f72d2f42485b8e31fc99db0e570b7dda8ca2d5ce73c7a4b3ea9ef7c92c651fb29313cf4369daa9e110286e6329f868972513178414ffb48555bc6cfe0a8ebbdb3685c9e90cd71983e923fb1a5136d347e2f4fd3e3c3480e17a14b1a4b22fdbc47909e625199e8c07b33772826db40c90993d6fd79ee77cf5f006285cc72ae0761537fb0eafc41a677fea91e6a178830dd1128172473af065a8b45ae3e2affa594a99cc437e4a92a1dd01115c7c1094118027f16c66af71d10e209a012cf20f76843cd0464f485f3a38c26c7811c2b5d67a3c935e06c376e33624030ea5aaa17bc92196daef18a42b3ed52ffc5e002e609a8a07c4f993115474e97bccfa9d9b177fdf37dcb92d108ac9326820bc7b1cd2cc5396cc02210e98b8a26a843aedfbea15695c4fd356dcea3a7c440430ed00b4dec46e97da13835e134e1c6c62aae9ae805eaced41d8ad2a1770d256a8db5884f99c09cf51963523a8dde6fce538968a75f16006acd4cd6266cb54337f589ed589ccbf43eec67a765a7a938b9759fafebce7d6a0a22afdf1f97fd472c0c93daa573fddd8b7e7682d81c41e47a78569f12a0389a7aa53c79dcffd88566f5f02ec644a4f174009df49fdce87661d5f8224965fbea3e6106ac21906e64c8b8ded40ca220163b0c4d3fa9643eacefe63e53a7ba34c7b69031aefa10ce3dddaf9d020b71d5005669f2c2ad02ec1157fcae506dd42fed24e21e1631f2b7f4365173349290c5c1bf2f99d34be73a85dcc03f720a668ab602f20b5f9682f87d8fb94b3310f3886611903ba776d3dd1c13c0cf8c2ccbd0c5a2ce972cc1353cbbd1bb625cdd3bd07c0081e9f6f55fa4aa481cfca34b41f3812799c33c09dd5b83228e39bfdd28a1ccb7f3b6543701637db581f916c1ebbdbdfad741296a7e49674b5707b9b13a89ac120b35563a87c39be77c821040ca385663b7e20802da1ef7d1d7bb3d4e532d9264a0053ae98656f324b8745aab3dd640d38f8b0421c06fc88eee52a462831ee24fa2fad15b213cfba9e04bf159694a0d07267df7d4f0cea98e3097f97af8059b77cfdde1729012a65ca25e362439e9c9602572b21482cf639f55b711ef3df3d8327c9b6e46ba8ff400557a9f1d2d865115b2979ab84d2c649c7ce7103c26e6d870c26297f157fa4c6fc25f4b191729db88ed9a2231691da696d6489c48c8001a2ac9b5530e81df0833743243d7d6bbece7a4921b487116834d71e6ba90a38d919e2e63a0ab4245836db473d75268edd2e7799f4d1825b663d5f527d328ff27aef401e982b2aa8ba481d9d221ab6718b3d0cf8374a7aa322d80c8f218fe8f8e52c2b562c1406d357b89def024efaca3619480871839e7dd5ba3c1813b02cdde7792ab46e2b9a4222ed3e9e5ca08ef2959d2857280ee6ab2fe2e5e16f25a616a54235ef63531b006c58a80177f98e9e536f514314a2b5e146957ad5f6d0142c44189457d781c1fc90d6130cdda4688b2fba5e3b64cf529ea9f9e8d55876eaec538fec8622ea5c8c11d5cb8f20e55c8744044ffd64f06eb9eb0dc8997867c365ff1a06ab01c9623358836c3a5dda31bd26a39119d22585f1693fbb93ae8dd9ca4aec7047c5aea42ed652579f91f6383956c920151814fc8d06af43b4d1cd0d19a6bf05be66803ff21641621d0167e28cc83d25e03e58bf34e16aa8c9527f8bdcbc126623348f022dc6bc3f280aa47e97278c6b50cea9f5a9e68107dfb7cf3d41ed37af9b68af0b57617ddfd95ffb8392e25d9186400af1e92ce0f791c0039e2ccfbd03fa57a623d9f2c78928e487240241de32d289b8e0bf8ae1d9c175438faa52880b335faf5a5ffc733b7f1c3e3574f88fbb50a23b70306820f539fbb950f65b14cad33837b72ed00e9e1496e8d54cf77e4e9533e8283bf68b6a1e18e7f36cd06f32a8a72369b49a64de276c95f3730533b01c27b78203c6e640645d09ffdd768f3157c496d1a98860622da33c3b4a0927f548c38f5113460f0f94c66ca6f1e6eec69618cdbcad182c6787ed4b0404719c087acdf8bd2c751c56d99df49a5a87130e814f081ca4f8c4c0eb98848a9bd2ea429e6e0f0e19870116febaba0039a4a1a0f9f31697cfe85e82d961a783de13101e1862cbb89cc40ce5b95aba59cf8b08497a73b2dbde7e5e3097c60363b793937970f5f4ce035df1a76936b6ae903f24048f83ed4a8aa2bc5c452f42740d4b1f0e9d30edb96540b077cbd364276c00d9c4b0f65f0acd710bdb2366d7043d3bc84c7f57d8129313da5047cadaf2bd153d75b084625a15da679c38b2dddc08a0b97821caf196986f12ec9a2475afa47f9619eb9f57bf923ca48d109136244cfdaab7f485f60516c8ebc2950316c5cedc085f0509e689312234c252c9d27e5e9fdc7ea39b02554513cf6e2f416ebca258fc7f16d889e4a35b115ece39a36364c2cf85b2f5d4796af3c53f38b2851eb3a74c406f8ae377f510d47a723fc48eb2275c3d6e8991d955803153376f2fd1ba77467a0da0b554f48655e33e0e2e847e1774607470661e122f76da3426a2462dfc52025988793917387c74b5d51b308244ed8bfa6a266588e50958661c4a7e28a70585bf83f1dcd644131c6c547b05fddff073c17c0419811f7dfc4eba963d296ec2ac8eed070a96b761029aae6861bc22d9bcbf5bfa26a2d7d73225a33b760c67adfe97ee531b97ed0ba5c10d486b0e068309b2a9bdfb816548143c0113e8625abd6f770f13c4a8dd33e90bd0ec3a61edfd9f5ad60998702ba7453555f364b559e7aeb27f3b1dfd24f4a3e0414f704643d8b9496c51be42ac073d4ea94f5a1630a0def2a4b5c9634f359ca828855e10e659063694bb8d7dbb9843ce7ad596dd492b910a65acfb57a3823d2c503eefcada443a861914bcaa0074f494bf9116d5f227b5594ffd11fad66058530e495210d7ecf668ff0e38fd0d67b3f8bc5f18722f48d03c7179cb6fe346943e2fb352c074985dc2908c1c56da789c88fb2de72be6f581f18fdcbb75c81a9d03b5e4653600d9041233dfd17db5b65c064c125332d675f1be7dedb9a461e0deab9c43a961ecf5549a2d6d96c6aeae6ca3bdec3a556d60ca0f44bef927a7ddad7d1293aeb28c4b404b4d091e74610a789d16d653b3478ba231e2a74254135f5dbf19bfd807e2fa2bf756a4c73e0d3f51358c2fc910e326b4bb97504e4b91a445646083d12f3d9eb56f47fe598b3ac170d1001c62292fce41aa110bdd7b758de565e158102fe63042d7eff25e2087d6909c0329289b55ae6c9a6c9dcbab38f698c7fb7ff1e9f05c3b6ee7d9a11a3c1f51e8e83aae3785bca0263b9f84ba23af439a61c9ffb5ead64b3ee04e8e4e7e0fd4f0bdc3f84d61e84d844bb3c6c4ba834784c8849800d3a87b259c4c5cce63e43173e7e9b588d02c5b3babe2a5d8151bfc7d6e2c0e12d2600d43e0489ebf39a6a909789391165d25b25265104943915b26ccad1d7fd05c1770e442e2ebadf1e27f15bb4ba86dc2e87e2195f8a5c1f21dc8038dafb1e22d4a9fab24e0b5ebace0ad3b5b3b3499ac989554a7f6aeaeddef838d1be596e79c98886fa4381bea690eccde4e83d34eedcd7d693ecfa7c84ba359239fb08b35a2497b0d6f7bcf2b7d07599489d20d225f46da10a6e6b7dd4b8040cb8d3bfaf3658dbc1146b2c11f1984278090b900ecb439d1a087d24e6f95ccae2a42f5840652952f56cf0276c4e29a025f44679e66c02160d0d4bdf0f5d314f0021f490ca1959baec027e35f03a2b43e9404db982a182b023f02e75de4fc962428014c21fa84c76b587b3ef1b4a206763f0f99792e476867e121b9cdb542242bd4f357ead134419dc870956bb7998817cd9fb56e15d8a156516eab50ea29403350a3a3e7c412462a3b3e5cf49e2aa95f08f8ab211f72f0396fca36f63b2a4d813dca356932a565453bc24935494b3c634fe864d4be11b318c75f6be1ca0a4733aeaf3cbfb3aabacbc7457e5366369a6c79aa8eacb7d05649c5d189ac4c3ffd8d0fd1a2439f2d7827e94be90522d3632a90bec3cc68b9b96f2fe8476cb6eead44f5910918dcfbf97dcfb77bda53690e63cb9881d0ef47d1c01a1fdbdbc42126981bf9b57659089b78d6648bbcc49758b9e5eec1696c6d1a6282ba8875d53bcc78a4206a2b9b78215361986c3592ad19de17dce9a9c44631a4d32e6614b0c8969e2fb1db9e3eac162a7b8ac5b7b953595a3167e41b56066fe511d31dbdba4bf5abc6d95e8a08a6b45087304f8300453d510b31e50cd849cd1f337cf8afd20cf9c03de3cfc9e71621467d37ac5a6524116b4718cb1816baf868205c82159e1c96de7224d08ed3142954a306f36075fec76edea047f47dfd73fc23e4d6e8f892bc4073f211a57a59f3cb5dba81802e50e8d928ee35619c0244817854fb6af0f3d73b85925d9de8185f721e72b54e6111a9f94cd0dffb1eb3ba148ae3afbbc5b274906866af4e9ef8d6c35a9f1872b07e255fb8e37c88bc89d11fe5c555d3c8ae924896e4e53802ce23c14ecf3db001d326bc505c5cdc03174a937da27eb0c6ff330c2d5c33135227dc234413b6532ee7a94d77eca9de38b889cabf33e13e0cced2c84272a2bbe4567cf114a8af4d8870f1d29a2aeae0636538432c18b20c24219a1160f8430efa96ba534c52fc41e144a0104ef274580514a820ce1e05bddbe730c3f4e763a38ee7132e075ca2fca41180b844c1b9fbe702b1417b088095c064bce72775a91b653d00e071d236a4c518a5512cbc79a78eddf1ab2e118b4a8247956d914af753591e5a807e8d3e19b4007c8147b4f697918b30b522b7b6d1a0eec30f77ee60563511c336f6d3b14221f929d88cb055b20c71e5cb7ba94e62cb4bb1b555ea2a971490cfe597f8976a76dbcb3fa166941a52ccfcea03b7c86fd57040a5bf92d8d83f36a1fcee3819ca465374e2803895d7226006e4ce514860ae31e5399ba18cb3072d4e3a1681b2537975408c2edb41214f0756ff7eb6940c52cc058c24dcb1474f2cb440a1fe22957b2864e10d38b8540f02246b016cd4ab6113e7b12219a790a436491ad57edc3c4c9e257fc3485b0812fa111231bb2fee658291b71f09a36e4ee0e2e227559177511dec26e3386ec75e047e86cb322bfc41bc900f6204c49499a522ec37c8a86ebecce835492b9bfb8b24a50dede99099c777c5e4dd8e76323f4cf685e1623aa1fb6a003aa30a7fa6e05f7414f4d4cf3d72cb75872be1febf7fd812a69a158f7127cbc4157b24bd9a79dbeba5420c1eb8807421e566ca4c15b7c1dcfed80df6bf6c88956fccf1b929260b655e6e21ae5ce9a8f1491e1fbb619fbb49a4cc2244c12269cae7819f80a33edadc96c52014561cc0705d4e67d0243327b68547d1ffbeaf1ee240da3bdf1d767017b979cfb0a8de4267303a589628d90dda2fe2ed4e7a17047d7a2b414084df5602282a071ac4f01d36b3c0c4a21fecde6b96ab1a5978337e96e7060dbcfd1a071d212d38398f3796e8fddf22fa2e9c8213e1b7d6ae99931f86838132a4b65c01e9eb0a2037ab56ee995c335a23dd9cb83182e57a48e4542aea0231b5bc586b48645132231eff5c14183b220fc55449c5bf80fb1fa02cfb032e2fbfcc02a1a5a4224b3014cf0ac0ebd343c1865192b24e3c6dd711e602e7d296805e8e3d8c358e9dd1b37f9d2084446d041dba070d90edd27dacdfe788db27ee6b019dd5b48637c26c287d03af3292511653eae957dd028ee592875180fddbef002a57363cc61fe39daf2572fc8dd0ff279060fa7be49c6b48e2c370c0f93740a6a8b6d941a393a37272feba1aa5e4dc6990f22f6f902c351625f093848a772c68ab2929f6c5af6a4ab64bec757e01049d2730e9590ce18d53f0b6245b8a40e833e587843694f19332fa6d7fa41851e2d1de70d382c27801e144cf9065e1932aaedf66b4cb6dc6d0bdbf669316d71ad9420e7e25c25c21329280ecc78f1529477ca4570ebfa19f28a71d9875a7de19bb657749d039d1db02581d08d95d4b1c39d0dd4485f8862cb3a4832211723a0f3ea284d7c64101371a8a5dae0dff454c2fb086a7dbcd558ee44dab284a8ca209a9e6f0a4da2059de653a2866b7868d598b1d9ea961609655b816bd862993d07b514828592d649773ff7d514bd084e2c9dbf722faa134972542e32d0fb8e9b296f44feec60f98feeb6339224055fd37a1224c7a525ba91bce102ff65c841f35d3b23ce2a12e9d6edd0a1eb43e173e5c9d4e6f61752f96a280d66081354e774b8528ca9ca31fc1c100058f9aeedbd11bb82a0cf855d48d40a7c1a642ad42a65f4cebfcef6a9a8835352dda52f4f64c7797611fc73b586fbad3345e1852685e7a30d513525cf721eafdbdb2a3133fa9cae617c42f3b14e710d9d30d8c8d362453cb5c52074b12b24af3ae8daf13f8ef54cefef295357161deec4ca724a31b08b9ec707733f4415e2b12a78480896b63d802f4138d975f5eda07a9a31bfa702aa23b237518c94c06c428779865a5706ff39f1e27db20dcbf99046ce3d1bc4a8405065541af1e82c4fd38bf9ecce28b9ebbf3d30242b7949873f7c8503f51e6dba075609ee045a6b35e793cb706c983baed87c1f1d3fe7223383ff3cfd381237c6683ce1e6a04420da24efe117dba1cc13ecd0db609d34bb156eb15360f5bc8bda19f6f5085bcef1aada9e33b6f500b56e1cd892c190d5a1a9d179a9ddcb56ee0e7afe46d424bc3ca14e7965c4086829e9a080d0f7c698b6b28f27c0362979c2f79dc1c107cd44c7c334e9936d8a45e501c3867f2aa9667a82f0c07e21c692bf0b04518a0f76fcbb9ad0264e20cce05a5eb4d6c85e586a4451136f2c5271dac883eb59d2820155425f3f43457fabb68d8ba50bf6458feda1a6527e9ae0fb306b7236bb8c22b7c6b724d6bfb0f60758fcc4b4d225c25fa1de7abdf97ab590c2df1e21d8c04e5df0992a833f954c895c86108c584eea52d503a00d4c109bce5b57da107b1494290ced330b9c308d5f8193d7784f7ccb83946d553f0b826c1ec4dbbcfb568083b482f151af5587e8a8a8bb19c60890d78711ecf271f52662407fc72133a83d17c1f45c53046fa0b981687cecc7023e6af370e138c49dc7700b61f325b817ee14064624721cfc1dd9844efb9d05cd842e327cdd31b5563e0c918ebebdb3f240fcecb3b936b1846f962ebb16227996e30917af00d2d5e8d91785a40bacd02f9ff8511835dcb52b2ae74ff45b095c4a6ad8de9ffe3cf64b9c004c802fda4eaf00310f41dcdd27ea463def2b78c97f26118e30bbde2fe486f31f23c88fb9c66edcda3cb281902a706598488b400c1babef1fc67a4b6fe4e17157f90d543306e9d05e6e809d4e8ec69f1451172e0b0a874652c9db2894b821f440f2b3787cf6c26fc00e8156f5d605aca164a49cadf9139e9550fae0c0376d6f4afbb690ec3f79beed09b5cb92c1aec8300fe837a7cc5fc4d275324a86989ed7d0d20c4572e198a7d4eb00ba31a43b42c7ed87c7a829ccc8a4e5217bee628fbc5faf748e52a598f66853f3cf0195e2ad8c08ebff8bdc7ea73a06f4efb59a623f7fac9497f2ce4b2d358ffc8f8c0aecc12ecaadb7d370ccbc41e56dad934c77c617039db34cf35df8c5fed9305fa8816f895c916c40241c24ca10f0c19353c30129bc00632b7bf4efd34433c27cafca516e49b901af13c78d0440f8f0ec424a07befc2bf2cc8b67a1a4b3dfcd41119c1ac98cfb982037a9237ddc9c783c09c09021979355e3ea4aa87cefcabd642dc50102bc2daf41f0437184422457b316677faba451d2582df241a1046ce26435372e9f88fecc040fc5371da48c98c71ec455270ca7ece4da5a7b990e6fbade0a58f7c585242816dd3e2bd493df81a33ee2dcd48f1c6c190695e77c301977c7e56af0e58183e4a7421d38cd26160276f85403d6ff4da9b7f052c353d74be8138662efbc5531a59c8153e5b2ceda5e38267900ea9bb9ce9762dd98c59ff83135126950ab59bb7123c32b25748981557f4b92f9c82b2fea45828237dd7b7a53df6194f48ddcedcc56a493318abbf74a11b6d20d6cdf8e8922ac7e35bdcfeb10af59e06dfa3a02c6e46b695f92c3abaf6cdad289693ace15d74db8d479cc46ea3ef60c35f7d7654348985c444027d80724ad6db84aafea57f16b86a3beae2990fc8811aa1ab3debf851855d4d89a396b54b54d789929a84909bbfe50c5de40f2635c5ceaccbd95a064d0e15aeb6f76d3bab6fa11e4eab4e2820a1ebae72e99530f4a3cfbfa748863b1297c50089fc2fb8df648e707f0d4174d823f5d2ea590c0a5a82712d4af423e44052dc18fbd88d1f47f8b783f49040fd7fbee88eb70feab55721307fe5da1e6813a020feb14cca9c0dd06f2c02171c865a63f59878590e4c2c5dc7551caa38974a91f2aceba3f3b36efe2e7206193c0b8ef2f575c7bbcf9b3520cac0ed9f06036729825b2b4008b6b2a25bddeaf6a1a1f0a35385464abfa1311a9e1281161e143f2906e3d7149090f853d7d46a4230ac15f7dd7dc05bff1c1f899ecf5be69cf8b71c8960df4150146d3c0dd0eeb6ad39ce561bbfa823a99c376a8bc93f963521f9dbb97ab3b746150a987771dea66aa73eec565d3d779e7a9521f092589275fdb9e3f404f757031a98d098342c9d729d38eae575ebc2acc3c46dcd81ce9b0191c87c7bb0e94708bf90867f779c7a2808827030a89a1a65ae96bbb7c9dbc3d561d5f103e3bc7123332614a7c6498f303eec92e8ec69b4c3890ec856a1d18e57efddedad6f6bce9d865d1e58ba65d7a11d57de8eb1fd824f0e8f9d4a751a3c7f0e20e6715537d58738dde99a57688a886e605bcc8963af224b780727854ec06741051143b5e826ac978389458b1b357bd36cb50a046a10ae750db987f319f0a89d895be3c605c025b2a221c5397e4e5c2a77b10a877cdba8a6be1b50cd19c259ab513c099bdf80cf0e415291041bc829cbe03738c6de11397f70e83eb345534271c1e5e4a3efd435daacea39a50d666747e9de04b2c456c70c8d15fe9773b8c4d2345a458d6ba72a5796d50fa57bc8d34d9e19c1c88916d9291e0411a6017c7bda58d3ff5377ba32a10d77d70f4992ac16d0e85ed15998dc98895bdbc95e7ced0439f7b7414bd603d19309f2d93e309632bca3dd38ecef41ba1d8c4abb73e6d8c025fb912a75a17a34d4a7cf1e22f7dba60d7dc40e195f3af51323212263cc83ed002fda30ce8779596bd2cfd6b01630aabe54ebd6b40a04110b9357470a749ae0318f6b963815632e3ec6f945864fcf9ca6b1f615e600018d693203288303e8956a638a91b09c9bede4cbb2789b43436f29d63bac6cc351e28ec01a930417a1ab972a38671a87d69e161f1de88b83945845343a39bb3e933ad66de62d4a1ab083969551c844b9c74832d4297f774e4cb5a0da79815877a766992bd314bf30e1acd2a6359af400b5e2b3a9040c70db0d7530c46f6088479eb0df3563b96513633637d7f7f310e3fc11211d04e6e702e1128f6c913f17f321181c046408af0cadd5b055dc4bae40ad6c4e04031192b52f9503f07de106e8e467224555c4c33a7787d2900b96333956a7f12c5d18f664c4d9a075f487f7372021602bbd65dace1797fd28b97d42ffeecdba5edc73ccba6ff3a5c8a0d916d6e90b3cd8ca586957309c059f4cab0a7fbdd4ebf1b7e4951aed318e047e3de1f9204ce06e1dd85d5011f68736e6d51bcb78afe77a03f2e4976b8f48ac1db535ee794d79e171b3d0ee818ef75951363b2af8268d85afe2aed9322e54b24b1f4a7aeb620c7161784695c0e53941b020282f2fbee6dc346f8aa46b91148072190cfc12ce46852f8db34df6e8c358b006130e5e0cfc57588315aefa70d4f38ddddfc611dd4c1d0a856e7b725396578d479dfc560c7c801573787f42f5b21470fce282961ffce72547c1a146d66b631f5a7ac4bd051af2be0a4b7eb2658d2dc768f4dd83fc0dad4e0a52d8933478fb54ff9fcc968d84db302132221410a3277166a290895e47b465ab25ffafe58061258aa434cb41987c197c0606d2e480ff74dabf4bb9ecbddf716983dc60154b5c2b295c5f9c0a7b3016db71eab1c5babc556350eb9322b0317e62105f45e8ca5aec845bd7230b4d0642a6fce35e11b11d72c953c502bfd1c9eb7d74b929238d7fc22ce91eacaee675327ade82528103298ebb95490453cbcadbf53aa43a0e9f3725fb8d86efcf30dbf5d5e8a1675152adfac3825ded4d3175b3fb16e6edc2cb1e6c73cea1a1052424390d0576856ee8192f6d87482304884dbaaee04844235535262e07144adc9191cbb953f643c1cc457ed69dd14ba4f1bd88bdf603327ded594d8b8153772b9409897cab684ca497aa460bbdf881181371671c8f2e63093702423336ace0ca5c482611c801b6064a01ebc0bb1ec16035dfc74f9400a2b0ead4c4fcbd40f619f784abafe596403ed3725ac9122ff65764cd49327c964c77863ce3ddb74f9b576edbfcc7aebd057f3e34d13c990ed6ffd5b84d960007f73f2c28359b38afa6379eb320e7848c863baa89b28b1c95f2cab6a9f9ee232b883ef60117c5243928f99d55185c4dd670e85c8a5972181f65b68c267f73b029aca46dffabf141ced9ad54fdbed5a5895bba574ac8bd96e7995f448db88ef8010e845b5f4a6f0f0926d37c23759662785d466c8ee0243ac3d15884b5d9f8b7f9dfbd1c21a9e33c115747d27b9832a39f9fbfdaf51cbfa4fa81fdab2a82a48bae56c4f850678b0b63da30c3e6fb3bc58395e136d2780ee0764eea5ef2dd0ff870d245ef8a774b44d38d635b57717595989c82e2c10fa673b265452ae8165ccaf1ace6a76208dec6c1fa5359de10a90ffca3a3fa0145e882375be688d667147e8e41f822e31ad7cdf5041b3f33c336649370f5608f809fe4cbd5c306f13936361f51342dc39d6467211ae31068cd5401862fb7c586ab80b51505723c7489ec0514bfea26e8eddab8d26f1b2cc9970e7a35c9ea16f07a583f6b8de729b44a70c01196b02de5fda73a100dcdb6bb2cfedfc485a47dd7781b30c21aaf115acb106bcb3565ea01c9328b6f221dd3c9b0a0a24f7d7a11726017979eae25b6252b909d422b4337667a8362a1bca55b55d69d283b31e2ed37600ab0867f8a4969f3bbcca20d534984b2c4a8fc2579d305f640814f159fadee8d1097d09fb0f46b13bd5e170cb6c510726f02a4f19a527fb3cba52e8ea6ec8fb255c7432d0a109ebcd3bc0bf894db3072f4e390f300d89f5e377a67f3aa763487d403e976dbe5de2efdd184ce385864e37e67084f8ef16424c2c2954d8e9658e3289da58c7180cbbcb048bb2d00b8973b805e82c09c279f3216253440baf37a47ff0931e3617589060a3d5597f95c26b47ae2849552ce8b7dfe56780f786147c05960313367370ab4961aacf65f75b9b2051cb9300a86ad239faa17918b8f342b13df6df42dd141fa43b006f9db4fea9ea4fff38720cfaa0ce87531c5c13ff92f9ba078e2f916147c0e0a7c5051c7e5965cba7708205b12968fbf1e2dfd10b5e5b726da7604e59a829792aef4938ece715fae5dc09ed058fa91cd03cc4e329e0ef982afdf4b52de7e160f671752a61ddfed871c639c9855644fbd1f90192fac8b5f4c1ab667dd67670bad0031d8edfb6226b046f46029649b8cceeeb045ed53281fe273f0e3be47c5c3471331f62d368308f4de2c0e5bf3c2f49aee8ed0040fbfad18fba986659bfb7bbadda3c0d07b2dc03e08bb11d626404b6e355bee6f7b871bc66a2bd32221c6266ace9b8e2ddb6778accea7f1d11144a24d7bda689d30b10eac975854476823cdfef88558aee03eba84c43833bd692aa7a93c63456f95241c7190ea2983d409719df81459da76a43daf6f9dbe80848deb7f539e0409c097a5a41f91b91901e6e755dfd5d9a1cce47fa2b8e53554dc44514dec4185fcad1ebbcc1a13f2d4bb435cf89767ea5789634feb0ad545ace95e1e35cea1c1d5315ec2062df5a2bf7099cfa1993b33686ebaa015a50b7ebff2ad6619d1c56eda6d85cf6c411f7e8f0031d35ac438b6e2c03a9bf6a721ca59aa191c112816af892798596ed654dd34b0a9a2fb1bd742a52722c4dddad079f1f0d090b2cbb0da6ad7c4d67ef7fc7afee2bc4e382b9cdcc5b0e441218ce64e85f4d7628159d62aff41e1fd7593c7d475df7ad8c66cb8f4340ea720b3123c60313103841350c19fb0b1f04ea1eaf7b07942e1d598eda04d4e4eec221262dbd89602749a072dd5b7ae27349a0818f3cfbb439f2888ae8cc10c7823b6333c216adf6eb48843bbcd754fc925297c28fa165da85c3faaf52f9463760090f09b470a2fdda13a467431573c681bd08c33c6bb4bc7bae5d4a37d2b552e9721f3eefeb378203d116a8c7cfd25eedb014bafd4165ccd9ad5adcea5bda32a17a121d2f3401b26acc6e0bd0343290e11975f2e12b77ab1bad305ebcf9bf270e5dc331196350f5ebeed64d19b34761fe0dc9ddc140bc052f4cb0b523caaec68b2c01148e48a8f9c74703ef2dcc8c1e9acb196fa6db69ae2325db09b32f351bc2d4758a6e66873f7494130f8e4d77fcb11c7a58bc9a2c6e932dd8fa1e31b8f6bc616d00d741e0efb1476089b8c1b2dd4c1020552802d603d3616633bf9378a0a5ddc8fd5f86bdf2f82335a81c17fa74f36c7d26e1b7d8f5edf57ef62511ff0616695223e90429be4e45338c6ffc410dabc7276402516ec069180b1ee40f3ed80c1f02f7d78f4ee00c2c6b95db0b84875db9f567d895d86c6c20ff38c1096ab97f09a888fd448ec3fb37d13aef4db263f9f68a367fceaae70b4d00a834058587f44d806e45997d681f1b25db3da531b004d05c1d27336df49bf59a12a123a64b9ea236483fdd6e71015aca8076f43de4c1bbd07ecdd46938f2f742f02ab27d6027507585706b9d47d46e0f67e7fa2023e7fd490e165377ff506080448aba5c08347f95b39853f8e372a52c6f5ac1efa07310779ddcb320dafe2c7f62e7a957d22e6c883ea79f2419d954cb56159889b78428e9842ebbebca90405f7ac22fb9af571a5bb69c0acbad78a3e3494b44d1ac9a9d18a03d678df2d536f4afecc9b11771712a6bdac5683430af3e4ba662cd6771e20521da4104fa8edd23c349e364ff1c1ecc259555f3f76cf1fd5cb8288d5b86bf44a2aa650d273745c9958edfd9419d8b7dd18146be409c9b0b65e96b2cdd71a8e546d86a2e3815839c35aa9afb88922ab8c2db40ec449e4a08dc7efd2ae7722293603e13c3b0dcf0459bb4147023ee96818b4846bc63ec54df377c30982a9712aa24560b9f576fc17b6980879dd18faa02775605725f85b85c5a1b80695829483fc139167633f9f79573ab8c993783670deb8366652a243e0020d36f3a9f0deb72ad4c55866eadeca3a9c0c04612b36993483d91fa565e3453be9921efcb586f1a972ebf4712014377abbedb13a5be7a4f96cb9d09354e9b9518f42b0463629f742ec704a7a6585651269f1c4ce6ca027296617005f3c1d27c824b6ebffcab511cd4bab88f5f68cd8854746d8431c3e179e8492324e09c3f49a1febb5de1b2ee8b956e5ec7743b701406b664f4104306369de1f6c44df6021e496da08388628b23a9fdcda47b6528886376d3ab5368a0646eb1a3b8380eefb9d41379fe44b139337939e7b4890b0f330eec88194e03f0c226eefb9fe9668ecb5c0126d93d86c593a1715343fe0c36639270197a086c629d7f4778b55cf17e5bbc31a67f78b17ece408ebbc40922d0a08c12da82b81dd094eea2d012b46ec6dd539bf13cf8b615e466686b2fb4edbcc4ca9ab6d0fa5f91cb50c01c5a3427c2a07e02609017a91f45a8e752e3791326a4ef044d22c9ba203e51dab26418a38a36d1a38b074539779df369a45735574f60915b479394076aefd900dfab5ce8bf776edb9761620b508ed12fedc5e83dc4253a4d2e33c3d66665468252f72b8e7cd0d278238cf820ad61f858ab69ba8fb0df17cfb214c2b40c54fc974389ec9ad124f2ff40962e2312ede7afa0c3b221dece7cece87cc731d47905b1c81d8ffa9f290c3acd66228b01cb1b43600ef0aa6c6ccae4442f22ca4c62c50ccd29e71aa19cd404d57eb4835179081f0db65ab7360c21b21fba8f9998a9654d60592a71979e705dcb1423562131e7b85d17b6d00337a5b0a6a5366e84ff22451ac0477bbfe69a9e33463a55cb96c522643843e83a9f1cf33fcecffbc7c63d1b9c7971fa52c3cd00c5c8f73e31ddd1e6fa1d988441c1fdde173c73465addcdd05c0cb839bf80230accdbff1a9759b12036d6b5a8a228d788ac157ec3d64a1c1b4c746aeaf9ba3b6651a837d58bc8ed057a696a7fee6bd6d1970ff1fe59979a243f257ceab65fed4ce119979bdc54f49fb961a93757246a4d7c657128695186e3868865143b2297062f780552bebc7193faff9f529425bd80890e8241ade5bc25aa44a0ec079ac90aa46abcab714583c3208e2ef231de0e62fa001b6ca424aecbb8e1fc369c3c0faeeac456f73f030689baa4d2acf004436dbe720ac0ceb64799fd025bfc6f5fcced428801b5119fbfbc1e65648b1d7e48d2bc7f0862beae66079664de10ceb7b8d58305f5faa05c666ec5741e14639d03b5b04b9bda43138bf020cc5dbaa4030e4ddce925ca0e14aa07272870ac2e63e161cc8dca7eea9bfaf96b1655b7f7b8d3c6c15c387f08fa25578b1b07c5fea35dfacced67e02e47b6855e6e8c6e5f6c7c6bdb045545c4942f0c634c02c68da84854920f56d9fa06d7d2d6c0b362f32089c24ea9138688bb0c271287ad1d4b39f34a32fd49f948d58369f753d133132c30e6c29edc04b4fde241e3652cb431942a45b624451b70adecf6c5603a6965e4ba2a71785b4e8965c673b452efde28aec0703670f50301107452030fae9d19e140389c848bb36d2600e1abbcf77f0c3b94d286c23b19f9929c27a16c325073ad0cbdd355f85d85e078f3c48cb525ba32fd4183a682aa9a80b85f3bc9cd76ebc14c6463d0fc4d96ccdac6c51daddaa6d0ec45c368439c76576a8fb88e786eabd66eef211ffa74e98dc7f0ad85e35aa203d3f5ed8671ba27273f720fa1b12ae5db33b10e5836eea2d07388f6e8b6d89abec184b6998bd9930f19c55f3c077e912ce6827e8ac9e3d61b3b5f27ca0f3f46dc49deae0cc2b73db68f1686d932d2807055e752c575061f49909e570c26f641685e59675f67180385ea37e535019e88786a8048a97ce1c1ce18a5ca463dc864156c016615dcc2ffd194a93a99bed27ddb7bcba256e06638870a7c12c3ef8c48326faa45b602bcf74233c2ea56b35a888e9aa5a0f2f3c6a843e062afeec369fbc512e431b7dd57197faa67bca44ef72523684b5a42170dc02dc59a6206f460a2abc639341507c254e5df3de59fad8d2ae8af80f8737d2639a394603cf7712c5a7aed03af9520d84458793817a6512b43152e5ef49eff5d9af7af267b6b2630cfdd5535995f79ec5064bfa2568608b85557121b413359707d98a5255822dcbf4d2903cdbd1f88959feb88010c519512a009d7ac21b2f7b18df52f090330b312c8067ce591133478fae0ecca0aa257a87e615ae6293fba945c5fb045938b123c5c8dff0f68080b25e6ff26d94e78c6af086a41af62c17c9b29ca5cb41434f0248446ab9b584f01b07f8d577269e7866933b7829dc25efe9dd51c069bd7f79f9e5031772b23ca52fe334b070b836372ec032f3819fab786c6ec678c0e36feb101e800e905853089a83ee1780c99cad7006d9c14b5190567732f4ed6ea8dcb9be0a0039e874c48bfffa3ebc864354ecb531e8e1c0380f881eeb0a0c61092f73d885c9bab105cf4f33d83b80805e9d3dab4c417b71c39f140b3a7879c0af245734879233adc233d800b3e40a1c92d2fdb9816b160327c310728a81490b708c068a8e5f9354e750ce5b81b62fb84dc18e4bfa8942d808239308ee2dc6a7160c3a80c5c551025927622995b86bbc063c408d512bd5cd660564f20695a9c1d87a1a2c1a139550e9530d790cd55dca916ecc081e623f6c6549389e4121bd6838723856c1dc34620dad815dc97a4844d8b29b0a298611f6bbda54d0d885a8c7358f8597955b7b39386e29a1bb6cf804510a4b9c7a419ba72d0fd8f26955b0aad537e68309a50ce759dab0db3dda87997e866ea1830c9efa9050f1ecdd4f9b6155bb5b42318831200bc3fc670c77580ee8d6ea934fc5ff9a519b80918c41c15804f80e490ecd52c84765e79301c63caa32592317dab1adc07faefeb622314a10ec7cbb6a227d1dda6f3f9c0971ff77e394b07342ab2a549c8e80c095806c0256ffa14b8e63f3f06dfb4f4460c2de642f6b5fff54f3d565430eeb10f871c5d205df1d437fe8ea062d21dd2048c30e31ffcbda4947fb115c82ed1b39482060b8983c4baf708fc5192053a59fedb8cd5636187828b837a6358029328bf980d81657b0f56dd734cd6cae28259d9f6e3dc164b78f074c205a82027281420f4e43aa2e23c6e36719b289264b2bbdec7ab341628ec41223b3cbaa41d1f41e9663d1a04c558ea17dd48b0d34ff11f619cba3285a8b0f98267e97959a0fcb0c8246c5097c2d4d38d13b283b2b7d79caaf59a1835b0d3f6080f7b4ab0a5efa4c8112bd19562f1fbf60037ca3e4cac3b5c695aef782c0286d53708778245b9695fe1646f054909bc32fd98f55c512f8c881ab69e0b3e0c9bdb6b4a8ab50a664517cedafd18c8b464a8c2f2e11375911c879fe587f0d3b64143867859ac46db239e1baa72301161754223217a721537066d12f159b96e33d4158ae3ef1ca91bb199478f8a67eb6492e524c04ddfc31c39c3242316df6fd57f5a8e1b78e6ab0a63aba854c0b7ff8c646addbac3cb21e8a728a3a7facc9aa841b15eb0f9b56786cbadc86084d775c5baa5c1225c391a02382d31efa1e5b056b408d0368127f62983ae20dbe4e3689ee5b54e224f669834aa88df00dc19e82674359d4fb8c4bfc10d9d091538e6c2ec0b7334f20c74bad60d2abd868012453edb577b3603267bc6e2dba6a5b5a4b39f5a94fa4cf10d7343fc76ea173223f47b36b0dc93e3f8367bb7773985ad592d46768eed5ac0f0a55d035737f0a3158c02f6d1abc094e9e2a9cb7db3206fc19179634525c93b135ef826a69fadef33cadf9793b883c5364abe638cdec996e7676621043c1089011e48ffc71bf6405a410361cc55f8c49214d47880c1d69aee4592443e19d8a3c741642684373d4ef70794e86ed3201931e6073492d91bcbfbd4986f51a0640f916542119f62ff46eb7e63c0fb6a3e2242e1bbdabeec5637f35589810bed0e84699b6f9032dfbaa2acd6d42da29bb8ce09c8dad13c87db10f7587ba2d974aa19fecc857fe739013dd9d04597544771ba4f20712433d6a85e407e2f7a9faa21ad9f32b57100cb39748a32c5fce26bf784d41a80d4417357619f1ef0b28c9957b529e4d29b5e7bca97fe4ebb3cbe9622228d6cf48a214049c3baa6dc2ad08d44b7b143880fbb7ebe09bf4b19f1f85a346842cda998388c87ba47e60a038765cbbf5a60402eb2ced61f09244030e5aa3af318045e12569aa421453e4b79dd65ca2450b9e60079f9d5d6c03442fa362236ca6dcdb32df5ecacf7b4454faad853724fcec04fd87086d25f4b6509f432d27cb75dafeb126a598bc25f307cebcf23d6c97e55dfec30189ecb3d395033e9a3e681c1ca1762c27f9a4f6ee640feefee9e7790fe5c265d416caa72aa8933bd09009a1dea37daad7eb4e4a445b5f7d6c14ea1f12f850b0b48cb3bc52b6f39d8b8518352901ffcf9a5169f843ca237eecb36b3a24e28b4a05dbd1bf7d048cb5ebd27cf8128a572a70705ab817fc3909d46fdeb9c2e96fd4ed17f96054b8f07b0c1d6c0f3f5d77e1b1eaec64aeb1f35313c178509dc62125523f6e87b241fd4ef8effd633cdf4cbd14032801ad39f2babe1dd69b2f70ff3328043926d0b66947faa0f12524bc078a57238a536473a4d26523da96972899faed911debea5e6abe16a8d78cc62dfd083b6c2feda40b16c4db2e56285b3f4fb25fce8c2c478bc5c908c31c800ccdb9cecc8b4da5578c30520d2cdc138b3918eafd3b2f8f2665fa54c13e08585dfad16e7bd46f20fb0bea8970ded9ab054d96e7ba48fdeab5536f1880c815dae7c17b8e6218ae669919c3d2518400679245f94da5acebfbda40b51e325f48377a972558ca5789b939fa42926954daa25940430c14f5c7bc564dd75bcec66f216e6bb095c3411abd0545f26e589a1b19fdea7d9d596724d2d227218e0f21c4526def697845e06a8f0bc8af67ca0022683f2004fe9837b51638f9ca68104b5132507c91749ae9f53658c8a587e533381b4efcbb023a36eff00b2c16f168444661f1c100a756165f4c16d7608db77d28aa9b568501c9e5b3e690b80220f86544e5122cbc43cde8feb9ba88fa1196cf6b0286cd5a95097c4b9d21bb5af942618ee85dcbf76f30691752ddf36a17ed15654bed62d16fe9577b535412021db33e813433c030f4efefcf1a4b722fba5bb1dceafd9032b8e6580ae596f8880d96b93885a2792ba1cabced86c7ac2da84aba1138a5b5004f62fe97e633f8cf9cf155568304e8a3ab414bf77d51cd756645dcb22835d8663c5874bb68d0ff3a31db0f3c46d5e1fb6893c8cc33986adafab64b30c6f5ce367e64d7738e610f31fc771899297719681e2df010626cd1bd814e727adad544ef6933a140e379dc9837944e8f77133433561d8d3017aa375d376bf89d58bf28573fcdfd413e06586d27a45c0ac0b259dfcadc905451d962367975a07b3b6c733549ac6415ac321de93c3a0cc068542efc109dfda7cf7ce26a29627b2d176190ee73958c4df1f558f43702de937cf798bf195d648593dffcbc2287ef8046d187acdc33564d96ae89ca064e553c2a2049d55b25bc7fbb0042ada5a1df78e5a45eacd936b5e0d15ca2483f65a8d516af39f7cd122d4c78919b312fd502da14a908956e4292f639974a4629288b86585de0da24f7b74c184025ce03a67748f27408fbaa6643c0e5bbd52fd7d35070d8c3609b556bed09f9210e246563e7359f994d5b64cf06da6f2da361baea1439a3e39e8e97f891c17a9c79d0299ebcb4e5a33a18f63570db64f5f469f79726c4aea9c3e8095465d9229f09e0a1cab941a06dfc7e83999fdd717f0ec434802ac4b363729e22aceb509d2d8094bd70967a3d9f5f9b7b0bf972a605bb7192afba3c34be34d83efd01599eea4801ddf3b4fba4bdc6a6881ea1f58c0677d843d6f82b56da852f4eecc03f73cca8f8a039a6da44fb3759dfe89038d3cc25f042afe4598a2646ff50b70ec19be2fc4a5b744d69ca84551d5036622716e02f23957b7cae954d9a8e462874e9ce2e4273cd282565530d99f295054abbe4a2f09a8ca0c9f9f338e2e94367a58a33f75cd943847edb37db26faf1ae7113fd3ee1433cf2f152a76ccfc7c3c2b7c078f22b8ca1263f31a357ebffeda6fb423411e02a160d6a5192b2b4ee7c388c6c0b5ad9f1253e2a2e3af85125635fb451c43a5a0774c819ff08fee4d1213ac22800192358dcf61ba1f23f53a3119a07bd1161143e02a966b886b6583b18a67d12d2d73db2c704a5698059fa31aa5ffb48d21a1bd76b09f63151afb83c06eabeb2a338f3fadfb19fd10ade8926bdd993b051443ddf1baaec5aa8b1340af2071067d92272db3053e6efb40f74d829bd5cc3f15be97a41a80d7767ca4e40c498c619d4f4ad0b7d80467f7c2cea8e66758087b51c47738a516f2364944e4978bc732b1fc882336045b197b24c529344d12c054630202730d730d0dfb9f97401cd464590c7d1df783c5229abefc96851bce23e6bb508bdcf833d3db5e7e926bee6f22477c6bd46ae942aa517ea2f80efee7812b86ada09041310526387d662d8b74cf7f1cdc2f96b8ffeda389e55b3c26e63e9179448ee3dd34fd9778ed882a883b6f87379606c398ebd7bcfc608fa1bd628197143d858dfd58036e0cbfa4c7ed7d97a9525565989bc8d766deaec0094e62c1b62a615364a05c3a50bd650e36e1031a306b381d8e3c09131647f647c145bfef39e99d466b785590494964ba9d31c94f2d782cadd2edd4b7290a3b91f8055ad2b92fc22827e472ba2af8dee9b0d1542a868ee73d45321f5f3795e661a20e118a48910eba37d71d3c3f083138a378a5afa11b0e7fc1579dac4d5a0c6675beb98e839ea15d87f3562e5ab50f6de63f0b65af7d0e987f1141eb086cf0058a7669b6ebb160abc71b85dc517d563a1294c96b40894670d5308735999d9c5139fd1a3f59bf1446285eba8b4f589a83f3c75c7d7a2b3ed7b032528b96f6bc4b1df60111dc4ad7b80b517f94d81b1ef75c03db9d7cf0f21fca1aa55291f8012de8eb858d6315f01f160e5ec053064f750493adf5736616a2d204991ba8a95f6a42ccbd6569cad76911769cf61c07811275dba577a1d69adc9126cab018bc35f86833460f30afbbbd2e42e692f9c4e03f4af26ef838ffccf148053cdf3cf9af77289ab63b25a6ffcbf0aeef16e861b0554e76eae0fc563599a99d3e840dff6469c5a7cbd68afa0934b02187344e2b8b83f794c9f79e55b2654aa6c95b66ea07ba60bbb41c1d666251841ed35669ccf25556e3b04c9acc587c14c3aaec84f6912b7048b5e0543b38769cabacc3be15474db77044a5f045635725c6ee8db20b04ad391a75a4c064474a61b484062d0befd71f708c2900c59dd77603e31c3941c8ae022332045b9befe51b24327616cda214d3d9874177503305fbc95abb1195e4e09c5644b8e7abec215259961e4f583a262297a71f0939ab1647a2da24bb8160672757831f9acc033f409adbc6d565cf4e26b3a497d85c1c4bbdbab11dba40df9bbf42675432d8ae95ab4cc90a6eeaf3acdf6dabf764547d3ad60a9a85832928e2bd9623b5c99ccd6f893bc1f0fdcaf980d3d05fa4c5f6241c68bf4a1764f841cd63edd760f75c7dca12b29573bf8c6c05ea9b878f029ea4eed878d355c5a7b24f691bace8d96248acbb1207cb97c496d257a18b25d2b02f8b61e782f4b212799450a03437ef090066746717bcde5dc573aa255a4cc77b78cfe744bbba8fb51e0211f80a5b5286b0ec0b43a25cb1a8607f4f272b87eddef64083e6fe15e821744293dcf9f05816c98c5e2f0e22569a9436b9343ec9b588d992b777f151ba2b83b60ae69346bf878affaeed0c090e7a46296d89eeb8d20e7d2719c9578a0481d943cf720c286e135d0322d9ca9ddbd053c00802fb21d7b5143f302994ac505199db38b5dc575b8e4e48aaf12944500e5b59a7f20d43b2ce2396a4aa923992453a07656cf9983e00a73bd0191a3b16bb079361f7a645ed3d7ba69b1db2a42967303acc21392f16823f7f0fa8db88f19615ffe54e72ac59b5422a284a260014411a337b1c1c0629f15977907feb02945a980fe975968995efa105cf6a77933bbd08c61a1ae90d7b3011e0bea9f60da1e334f7d6a9a946425c9b49e47dbb7f7c3f90e0a6b819ba4569b6fddb2d3bdd3d327ef42a020586b453b875b82ed5a1bf6808d81744fd7ce341f05443512d56da7a1d4ee04590530b4690a7416bce7f24d65c7cb52f34e3a7ac2995511a6d6793f8637e961475130b05f5bcc10cd3b1a75b30517513b72f7ec08f925dea193e52caba5ea9eaa6032b991ed808662cedcdb4fba450180fbe4d86a747d93cc5edddcea8b41c9f7f9a46078360a1d6e8ac509aab1868f1496045e98e59994ecdb8d413b4885115a08770d8318c6defb329867dcbf90a18ca82d7224bc859080e1a4225aa4079eb343fdf9c26cb2a26aebc68e2b551b5ff592a19dfd170849fffaa1d37cd094402cb22bfcd733630fbd18aec85dfa94f3ecdc50fd7c248ca6b28a208ba012445e7783c6b3d02e5602b54744525d442124a45a85d6ce0ce7c7e3c9945834b458fb7ad513492e72baa57d0b48a17e5061dbf869cd164159023b94c8e149ee1fde5855965cc2b62239e8868f7d2230c210aa8ce27ead11f0ea057f390b8f7732fdac94a55b677afc62f955a424e773d056019a3af2ecdddf3a80b6b9e6f9a469d79dc0c795d4e1fcbb40884843dadd6d35aaaf0b97e6c7dc17de9522087d3ffd5239d60af2dad1dd35490a6e68072dc33fd5aa5a9cdb02e8f03dd15ecb49d2ebe096075f338873e47c5c9aeefb57522d48ee61b1bf29c4b61abaa4f26377a5c83efff502ba19ea56f05df2d2c60f03ea1494f4848a0621c4b9c3116434e78dc5fcb7d9cc4653678ae46c014d03d52b70a149cd6ba974e2ba162cb0630e0be0a9a1379a6e3e24e74e2ade0a4ce8fa3b15ee1216664b90c8d3d4cb2e82e18c0a5e9707b9a10d872360e5f343a60bf8506922d1f17424d9b383e63b18272c046ff49d8c005426f5780aee251576c7365025dc5930e192f512bb5289a5ef255981340d2b27f98a439386a955c1664da80a64469b46f0ab0d2455c7d2a238507748feb373baab614f985fe2e6d0c7e31670dec7d00208e1fd15ae5c414417a60b16db46d1e00f9a2d61ec6fdc97eed40ab2aea532b1a4e9cb67e83e3d6ed5268c6a2627c3d2d9a157a9559f09e3cb8f330dd1c7c043fe65bf86d5776e77395f5834bc08536c83f105ff9a229fcd518728e066e275df7d25a7ddb52762aeb4d49ed4d229efee2256efe183b309129d8b660526ff7650928d7470ae908e7bfe918639b353ae06c093e94734529fe32133292d418152672d33383f93095d333f9ba1a3359b77ed1f33ec83d221abd8da1937e4ca51339cb0f31e38c9c0d7e5f3d1275ab6edcbf8522b07d1bd5fb0ee42d9b96dfc126fc2346d5a5f60259d3d37a9295df84f384f84d89272022b68d24c52b87a5c82b83ebe01c5213b612a9a3c8dbbb005fdf68f6f1bafe8b0c3bc4465a9e10dbd22aa07f79d563b21052c42572150cac88b565fc6dd58e843d8b7ded17641f116dea22b8b58967e6039a63fd940540d1baf092aeaf3fc20a781b3f5bd070a79645817c06858099ebcabd8be7c50c182e477608a43775e962de1a3dee6ae79aa0bb8a45898cfb57044522073fe4eb021a28c92dca531fde8c09255b57b305084127fd2711e1ed84244c4412c29a3abc8c67be34dc6a4fc7572cd9b61af83e8c2176900f0d04e8e9434c29e147cd744617d52156500d59cf10a026ebbcbcea7f5353d83adcc92c639a5e1ec274b28c28496caf0bdc1504a80247b5cddd13de573e9116a92aa175b7b39ccd58bfe21d88df43d7dbf5e74414ca22a13d6a8626b4e23f82ccafb5fc635b8e84cd07ba8e11347efbe69ec27593a52945b97d35525db604069d3a11e68bd8306d716b568b59eb3d28bfba858ae58953c9d1929206b0567b1e2f595b4c849768596dbfa7205d62cac91f994fcb66720c06460620a315a45efdadd317d532f4bcfcbc76e6dae6dea5c22f0180173b2e439c56de2c2a2140e4930636cd9e1bd4c2f9ca8d12eb356cd7b1efeb164f73ccf4520acc84edcb5e7f0471a775938eb9e374e4a856340ee964e75991f70f12021933aff070b45ab5c29dae93d812679e754d8a25af891eab6012baf00133db7c9b0bacbf632753454e9e41f28258c3179e2f12f8cbd2af521fe5d75b774c9e6b883bb15457deebe7d713e75bb78c3bcbc8f42bd4bf194c60fc833e50f88affd7921ab4b904dcfaf0e092e5e52769b916affe84097e992835fa3fe09b759a331a7e59bf22b5ebfc5df19e494439c2c60dce94b4368daadfcc2ff09898efe788d4d76a19c9f1e7b95ccc816713b96dad32a85105674adf34d6bbc30278b76dd1d23ad8670b93d2c91acd8c5b4e8db053f7963d82a4c8cbfc107cfa933e851e264f3b0683f66cc4340c5405edde8f8ef73ded73de2114f16d20debc93ba755b9452701d96dfd12be25cd28ae099844d0cd3b729ceddd7e150ffba28a8d06cc0dfc71841f752f624e3fe8e2a4f25c4a95cb81a1a3c4bc40de62eeb2ceabbb0099af88ed6d2fdf330b14327bd6f4d8b62a2cebda98cd0197b023a3f391d13441da4e2f2fa39a985357110a783d80c012d43f796220050dda615d7b10e62199699cb5b54a83ec2901bac56d82ebab7eb6cb65add6b8b0dc90e452d7af3b76a9352f0be096cd4c86e4f59f90e399df216ed4212a2056b03e239a5d91a22e0a36bfc9d4020c7bf4fd2e2e4958b043027742ad40d5e51aad35dad0ab55b65c5dcc7c4632dc19c680a49a65b87b43251bafca496859b52a2aea4089f388eaec4e2cd21f21e79bc3c37fcbf8368108ae6bbc81f61fe707e066fee280c36ea1b580d3216cfb746cc3989b2f23e2135382a66c4f188a5626eca18e67c929695863e28d1d87cd863531d7f94810b29431061ba3441f5bcc5fce3b34d4920ea8fb5826f56d80fb1a2b0de5b9aee0d2fe2e54c66c3ed4111e72eb451b0b51ca7ad832831c90e9b95c403f7654dd17ae1db22ebc27aa43b8ba58f46f355181ca25a7bcf2a22273fdfa962b1807fb3aaf9822a434efb45a119594f652f7145c6aa0383f9242e75775718fae990f60ac822eba54c10742161f9cd7596fdbd2e71ee90cf7d0a3454de027d0c39128d2df894522b3d67366bd06a66f8d6e7eeaedf370f89e9c9ef0ea2ab1c16369639b548cb6f4c2720d611d17a7efccd683fa1a2f1e4091e3d27ddc1efed6702c51f8f4d185eca5748b272fc70072cd7b5820e810a4acebf25827c89f660021ea0de0ccc34b870d386a97f7cee86dec8ccc8674d5edb6c75b4b061be5d146a3a1baf9309ae65058b3afec3952d1c5dc5efb556402017a97a5b9e2091ea6bbec1d0a9cc6c671dfb47ac2ecbe6f41a6b410139a2f23a272363eead6ade844317fbe4c03c9bbcc721d5e6380add1701ba2d8d4503d141341d18a3cd3c3f0c6c87c40bb7b291e80da3ac14d1c6b2b89d7d0609c3ed29e6151936cfa2c9e1eee66bd041b6f5f66034b230ea9d17ff4e2797d944a191e0e00845d2193c922e3de4cb397e03129f45d07977020e59a65b994eb185c2b96437a9b90a8ecacc806a9ee409e6765240f30304db071f4605523a9912e8d1267de44875cc77a322a5c7a3d380fa5d48869970c021454fd2453291c2becdf11111f4386b484f8a827eec093b2f2c864ef2f5575e24f2eb4cbb9801873bdcca5a2b28c1980bb8eb21c64e98e578533edde229dbc490afe4f7fba83fd436310a68dccbbf9393e10f5d7fd5c949c4e7f768f8e0439032888b5835c47345a314dd95fc7121422e33872b97a521be281e9bbe74b00ab55f878320da501a65af15b4bd0a9d1663077bd03eefcdfdfda2908d9485a838e8b21df93a533c2d2b60bbf2142bc5e0eff0a870e66ea6d9e45f2b0b3f8696ad5be7cb7a6bb76e815348f6c8c4014b751d518f670c0db7d2326f7b086580dd3ee24e0b3819a1b0f3c649be8b706a1bf6ae0bdeb2356a0cad7f1153e09bb0c49b2cad928c2c91f891d808b8362ab16768760d25fb7696d8fccc0fd5788a197b6990773284f8a608e46a87b99935db8aadedb3bc02d3710869f3a2f4623d98db8231f3adf0a0a9448497037315b7c1626d4482b2b60669812d78612e979166d17879f06d2df1990aad6e3ba1a652d26aa52e4c497c009ecda1a45dc4b359abec6e7012d6c508ece3254ac893ca0189e5df6d93468e5ab67bf671a8822a23d714f75d33e4c903a7e22025252829f23efc6c03ff04dbb2b8687ddc21a0785d1513a1ac29dea0afc4bcd6df7ff4871502b1e27147983bb1545240fd91c88c6f50f6b1738cf2b45f406ecf85942ecdfd5eb90f26db9fb2bc9ce6b68414663574304adf2300c441bd0d2ba033f46fcba8600f08ffdfd4d5f69d14b21f61c748582bc14b77dbf485897e848a642a966a75946dbb059aeee7be50a69ed52663bff0bcd5306e6cbbf7521ae09108460980ed8758e48394d6544b403b5e7b400b9278a9388e90c749ee0db774930d093f0faeae292bce9b10316616cb5f8a4ea47289f64838989b2867fdd7160764c6a479189b0aca08b90549f8ebfb059f5a65908650a7e185d7899fe56aa6ecd8e18959e96949278e410af58506aa980747ce5cd066541f9353c036de48543c5999bfe5ccb9daffc1c1def333b65e04afe6b4e0795ea2e89a77c00aa7c056353b05a5d104043433540bf805e651ca50e682bdff8eccb4927e672f1a8204f526cd615133798711dc230b6ca5ecb40c89e911aae72b0f597ed28994a7c6957018b52563674b82abdc1297dd2226003a4c60d989de2ace8440ef7e338e8002d39cb2b14ca628eb084335a98b5a54569331f93a50feab1675b008de6fc57d3ce2da0b941976d3b22665c42d32f9c21b7e3ca568a11af23d19106c9b130ef30970fe00459ed9e2148d24253c8cacf79b725a4891fc3b6b6d19063e95f93db3c36eb6821bc89ab6ee2c1c41588934848b97f5d08b2c6d8c1f8f9217e3861fb9efee348e6569d92b51f52b7b9b5621ba15fedd8b6b21f039d76b9dcbf48d5968b66d9d7b38bb12278226e91d1795bfeb7066eb474e5886c4c2be4c78367d36eb3db6a346df4eb55b2d71e639f32672b7f7a62d1fab07bee25ba29f8e4454beb333debd99c9f427c59f61535d95682f6e07a0bd089bbc2a5241afe2468ce9231c5cd2209c67b91d35497bda4eaa0428b61f341ea4d93b0af70512dee11873833c477344b8fda3fe1e1cb5d3ac9b6217b20e86907a06e7238d064321c60bc13b7e0f60bca84ce39cbb5a60c197098b2acbd28bcb4b671a28a51aee20a3b05dc1c663670dc40f1fa19672d3b68cd395fd98033d156d2730d5327d4a640fb2adad16eaaad6f473b57907d452e532b615d3f7b506f0790e46229388535a1121a1221c7c611d7da445ccc5f2d4410d37e29651833000a2b7c6cc08e68d3da10c23a2ea42b00eea5102ced6a693e641f74d26325a0b98ac8d3837c0c2680e339e90b95063e3b349432b5315b4ab7d329e6a4a1435ce9bd50898f1ff2f1c8934bcecbba998ba86187ed2319ba40e103e1283f99d91e8b937fcc3860baf84a5d840e81e726bfb838d4ee50b172a165cc2cb0676d70560bb3f8a0cf76b62bd41e50e27b255cb7df2b526a2656c4c27842a81e965981714ae41acc3e17de34260e53feddeedb84836cc44aaabe461e8e13539cbf96991e0e20376dd218fdd215917de8ff6aa7e91d19ff5b27d5ec0c8b1aaadee034994fa6e7c8208cd29afadde5d2a07f3bd869bbf94bec72cc47605639c6601dbfad8d1062f3e58068731903a4b83f59a55d68419d9de2bf497681ce6f8629eac2f6ef2f43c756a635035fa42d9269c50ce80b9f9e3677f6d8611107809f2910471699d53e254f60a3e3d074566347f8c3a5dfbf3e5245041881ad50f20c06448ea6c1a65b98d9c8d3c2e384aaf4b14c6a924875e49542faa6145e256275d51ec95f4174b63df1c566c75b9b2dc9d89bee63cfeed9e6193313c344e97abe93d04f6ae1d3299d8a8015a0264b759c1de31dac206d8847ef919bbebe4b1e20b46c8edf2b4e79a58c22245ff69bb6a5d0e4fc37eccbd1dcd1cb5202fe64948142eb7f99f39e3651ee8a23c799a865d2624e72a10c5b2d83f616439a7c268275b9fa14697c24393b5297bbb3350f29a7be95a29ce2c98d2cf8f6384f2c9dd6204cf0d5b1228adcf7be014bb8dd160bfc1bd137ec5ce66c7e40b3814e8946e6ccd7a1128c581e22c225fdb913d6bf29f70d6034183bb4fd16adb987a6ca6488a9b758bc9ef899ce6edf943a89fe370f3c3478a8483eda05abebf3ef0129f4e6580a13d0ef3e4a15958c68ad92d08772167a6e0d343e1c7a91554d23b31008ebce670c7074a6f9059ed470b295922c759a78b6873c1a8f0662d5898840760753fe9f6da9f5c65ec516d4cdcb051ce5a3a6539cee725ddc33b7908b54590175c4a41e0d077dbcaa1f32f005c08036c56da570da404b87912ff5ac594591c1116b9cf8c1ccecced50b575170ee7cf3db62d60bede0ab0ed52d5b2e8d7f8ceb699cfe86121a148674b53901af64612e1b4c1c60f3f06cfd162666f51e65d0c1420464bc0a07af8795ffc2b71ae19689378855c6bad1a7ad4eb36b9ebb8a014c16c2cbcce2364549861871ae5ec709342046209451ff9895021a47879866b0b889631fa5368371b4b68d00cca2e43951fa45e53318b3a3e460a9e9f45ce77fbe8bfc33333694a4436efa8296fb1d2f10796bea1b29d3b9e8b7c1972bda27bbf8d70ca39a8f21325115e0cdb559b0cb0775c1ed969133e0811acf664b9a10dd97f302d51d755e6cd86035b789c52219927ef32b62e3155b0ae9e696710ca66c26ed6ea48d8e36cb70b2481b6f950651ab9fd9def196b01ad459a859a76908aec18a6c7abaf8d0c631ce5a8006cf19db50cabc9b18f41e4b48c087032ec96db57e5714cbfe34e377b4a7e3eee0edddb1af13727e51b0007a2b900a81d5e3e0a411dcdab85875d51791822a186a3aec99cb380e23ddac0050d8124feb40d36bfe5165de070d5ae8d399affcc13afb0e243b3a90999186d490637de6f46776df0548d38f9c10c8d1733724916a794916797d9414d34e68cda0590c5afb92b932ce6c0f03206d40f9717b76ea08fbe491fdf6ccf791f492f6520ef6bdd648425d5058ffc70c07bc7eb84397ffd48fdc4b46770d6ff95567c8ca6351396e1e2a4f14522e53d3307fe084afbd29b1b0fa2388e385c94181c73a5ae72bc35faa69e3c7b3871771c0c7e80cb0084c925b723c88e2e3a8df4c73274810ee29fcabe7f10d5125851fdeeeb297f6c8bc73c320cf667e80b3fee1262b2b4fa3d89c6b1f2adb57651295d5c1c36a4173ee8ebd24abc100b446e15cf03d9f3d0b4de4d36fe286bf8892898a6985873357025bfc7d8489dfe35413af245fa44597b4c5be44c181ad891ed06daa8de62943a538d9b9ff51f80e40a1911fcb02c4b38bd4b64f9704c46b7459f2af62d39153c0157dbf6c1b9eab40c3e7613339e273d5dcbbb9e93e53cefe50966be93f309373b8fdfc2869193ab77d4d00b752b1a35fc3d0b5da42e2a3b96aa2b85e69c3e719af7a05a5beac988ffdb2d9de354f14abf36762d65e045e4dd058ecdea4675e9e78699c456386a739c1296c8302be02fb418852175da809184c065e1ddbe168e3a2f63ffbdc56b05a15232b98d4b6f6ad5bf7901a8417f196109680f3bc482ddc58b72285850bebc2889a62230884c428e7a9cc727a5df7723fd21ad327c92e5a6c6bd964c5ee27353e3d1feb2a778c1251c2932751eb85285cf6641aa4532f6811dad03a930a84fcec6acbc72c6952cf175748a6c681a837a132300739afd73f5ca83edb0fa7f5604286819317cb8ba1bfdcc074ece31cc3313be01b68b2b3949de2629c10a310a7607aa852b2894d889bebc20dc77ecfb43a12ae440f3f8886aaa0133e9f0a629a357a35643995888029d724bb8c287aaad4c172dcae91b1b3823e53ecb1fae500a527bcf2bad7eb9d216964c31f8a7a411f4bff1b4a6d20432d5a5f9dd6a96bf2131db7324f8c00504016182f5b00007255ee1088090a763594d6af7ba1b574eaeb7704900702aeb03480cf4f87068dbfcbc222a1e44dd5372ce1832ab291f1dcecff92f1547ec35895cd5db5a692677f6484285a9a56d0ab0fb1764d37be1545dcc9eb1aa907b9ab141d9ae576300ec16378f142816d4472f19ce1819fe20439c434dd2d6abe4617ce1009bca2bf644b38d6d498afe0fe7390996d1ad89ed72d1ef09bbc85b687b1057f813fc4e517e487366095001dfef7d3298ad9225e305e28785b155045152a744324fe2b6790e8a8ae08a15d114a7fde3a2f6a8ae3079c815ddc6f50accd7a3dfa29fba9d98cd09a0fed797eae17ae774f74345d78b365d6887ab40b8d2367ea22357f6d33de713eb55bdaaa81d323cde568f362497f0494311b7108ef170e568c9016b025d48891fbafb32ba5a5dcff792f5f7f7300f8cc6026780e7dd4ab2c2995c07064336f8003ff0b781272561075f6ce0a318d6773b7e8bdd5fc24c06c8a7b5187e75c414119674bc0b6258b4c86c2815145cb91813137f288264184707f575f1d5805615bc5c2ecce6d0aeb528de8f7ed49c8eac6f92188fc7039f2bf3a8bcd8ef2c6669129f516f11e4a52738920df5bb819994e658e9145461bc5516175eaf2c295ea8628a02d738d3b06e04ac0b4c97c873f306706b9e874daec6c1ad72bd8c079e35f079f6178c8d0a39f8013934199567f2660439c80d8594ca7a6f8690ad6cc870ddee5665b8a8fb2f947428049eaa3dc62d5ceba33cb414ad75db06dbad9a3802dc473307babaf5af827d96b278f42db070dff629f9ac08a8943719cdc165190fac6d79469e52b021612562b241fd3d5277af7fc99b343d6bd22ec9440d7f83bc37c888be5582dd5da067d59a2d338ee6d0ad92cc823014f98d44e9f386a3d332d315c6ca71037a9f91e0aaa852b9fab416caeed9114e11275f13bd1b0b48bc3651f32e9ad607cf3f79a105661c875f2efe76ddc60aad9694ff02f07b95af070b9e7e5bba221a9c13f9fed0eb1306dbb63c82ffe771048a170e599f0249cbbd53d41de00f4ac35e82a3b7ad7db4dfb1c81d76f883f643547044ad10303b8445c1e57fed1069a1c03f81bb5ca19ab05b7bfe938b83de1efd2b771286e498cd9fdf70718512fe01bee02dac63f0629bc62731fe2b80818dc644b0e7787703eacc74acdb9c9cf322bf1f6b8b2e9b626f9bb6f46046e7f772291956932ba62723e489ad27e46132b6014e88c79ef13f9370935635ed1acc700fb08bc581d7fcd2970f56cc1ca30da145a76e55d95b04fdd2d18c620bd3df7922ad2efd250673243e618ea00318eeba4f049e2c3f890a33bf7092b26b56ff9dfacb2a01d3fee0792ed7b10f8ae1180bfffa1d06b0f825a17fce6a92c4cc0f9f7815b410e9bfa6f70ba31545f79ef72c0ea027af0a31dc7a9b40a248d179633e533668e5b8fa30cda4adc661032e1d0af1bf92d04ca01689b540a29953a9217f4c3df48899059f376a7efd7e6d45ebf3de00c1a254db0bb936d0d3ca7bc3c0db62554c16db27beef1e40b2fd3369f4f7548900f73701c4f4aa7e06f24cace571298b42ab0f33633196c56dc9a35ca765d3ee7b1e2a6c25dc92141ce7a45d49ceb9c26d57a22e51a5adbc8357ede2117c8001198ec8084e3c28401ea3909a64cc14ecdf8c3497e2a69292b04d22990f3ea44961c6a986b7cfb9995da0b17f67a87da5a1c38c60819f371ff4f7fc3131d972b3647969ecdd7050db6873b1da695289a27f9279dcab916caa49cd01787edf5a6189e75645268243d62e635b5a661b78ada7148335c09f4fbcbaba86c8624fa236270945b83486b42d6beec36e5671df4b5ad2b57cc5ea72c5abd3a34128fb64a33ed127597d2597783d65475813913f3ee2326c6bee389e9dac9b955be5bea7ea496a6cfc668b09616d51b0679956203b3db8c43226a21f5699c294dc81fbeb61e89164cd0f7bb79d6391b1a9c718090034e1538e9a1e116133d8322bac6dd84a7b3fbd29a8c26c51f83ecf1d163ec8316da7c039b1011b4c5d21f07bc3268d26fc46dfbc193a34d725c87af293b243170efad6fdbbdf777dd18036b021c1e337748c0741e6b43294f9e9e4a079da19f1bfa10a6b1e7d47bfe234996dfe2fe82395f4181f70c7ad5a1f686e53d73fcd30aa802b92a6cceb0cd3f8bb5d357c530073089cdca84bc24fa8825e1f28f2b07c03df6750132a216fd126357e73e2331ec449f7047937c54ce7bb36dc60aeee02d12f6ce52a44d30874c5ccacd0f2ea9358e4b1c775b79568d840ab1b47c4d575bf786699fb54d3c8b2f2642128aad48bda51ae47126bfc70b097a0b2f6e02ce60758fe5193fa603e79dfe476686cefb995bd2891eb81bb07c4f07e767f5f7f67d00766d85e494ce4a290f16617f57fa94ab0a4df1d473ce8704bbb2475fc56503a1789b967c747fd88f3cd8b6dd472e3867090b823418fdeb70819da6228d33c2a8a2445be0c08b8a2de28e2d67951310bfa603a45633d3c26ab155a28e2dde3f3121711d850e432e24ca497631ba38a1712bf62ffa45395dfc534c6d1988f197112d523cbfe0742a50747c0be2ff9fd2015d469ea8465858df2321e6f7a8f113bc7d30eaaa3b66d24afa99fc17329f57571ff435cdc5b9e98fe9dc80f2be6d88ca5ce094b53734c9f272b1b80df51787d81e4b009bae3dfa1bcdc7a3009e25d8d3d1c9fb39a852d802456cd374d1e0e26b456310e2c867e3c29b3cb01c52270d34a8157173078f37cbff7fdc4aa6a1d4abdebe6bba2c8db83514102994a1d5d2c6398f981137bd1c171defdd981ab3ad25b330f86279079c129e6bac076d3099326c6e8412a113a34573d606912c78a52a21b185b03c8ab8f8ccacf6dff31e7c7779de45aaaf20a415771ca96cf1f7b780cd743a93a4644a09b355360c522ce87dd642fc199d6bf53e3a034d6d014fd019d1aba3fa9f351d5ac44c5dcd915c57b50b761ea9bd8b437de5a7b60d2ff814550ab2f8c8d9e5aba158047eb71facda9428fde92642c9f670aba64e9d2605593f1141febd7e1bafcaecf78602780f2828d4e0f1f26e36d48d94ba430bf5c468dd731a068a3ac9c384f3b8f834c7775c2259f5a9f9d1f4c3a5856834504531d2410da0f77d750a8839358d3d2c70b7b06530170f22c8021552c4e7ddb759f1943a39acc376dbfed0cfdc448ec1f5b7d3491b1592a269f5ddeca9d47bbabe5fcb3f98fac6ead23b8a9a6b2d24d8f91bd26152e89af16fe0c0236a52940801f14324e905ab431faef2786308bf95eea2ec2baf8cb046a8b27e0622f83053e7e07e1348f2cedf688105b03e8c8bc7931c7d8ff2d00a5e87077fbe3348a435445cf633f9d301202b3e263409952fdeb06bf6d3e18376f042e8eade41135cd31fe58221b87ad791dd5e299fecafab9e0e3a4a2611ddf500f4bd2aaad594f5a8dd17e090b9b2440af7fa9782f7b521ee670243c6dd7c0eadb67f4fc8a267cf56aceedf756fef3c3e9769e388041bdca4cd9dc174456aa4d2a56836849a51b523f8e79eb89c612e8f296eed21515f0de1c337bd7c856527258626b222c473f3f34ad724ce156b8f35e73cb9cfe393f9d6bc6c7cdfd384fbd5927eb107b9bcc5035e63a8958bc3edf611df74d78cf7afeccbb172784bf02a095a378d87551637bfd1b575f991ba179140b23236bef984a8d1eece0542e666043d542de5fd34e2ad37259f91f4346547a2c45076ea4657718e69ce29ab2cd4022d0359262ae4c448f54163755b708c239283b08d9b04f13d5282a69d6816724ad1322905d2b5c154960d408a99a3d08ab298bdc27ab333ef136ebe42b971dad1c03dcd58baa1171ac73d1c5e9f7253bb7390421540d6e2e2c96c53a9d580a0b70102bdf5b7629b042bdc722e591376441a57292803d45d487c199816b808bc04939b8a27fc904f4142acd1a661fba9c2442e314e256c770b8667e1097553b2dba38ec54b03937c18033cd98c66bc0cbab1941252e3b2af1b0c0a271a69a78fe2ac564e036286df096cdf36171eae3321675e9343d1353035ca6fabacc33724d1b47e06d91c15e09ab3ee0de7698843def8171e804f53db21fa3860e57933f3a3d6d7d44f9c75d7f0d31f9effec7c7783d84ff7324a2c8444bcb24e87fe4468188dc5b22c8b4d00bab80513471ae2684425c2a0985d92c8f7326ca0ca07fe99e698f4c2d094138fabe9dd6caea108737db44a47cfd5d12a4aeac540f99c6a2cc4264f2018927eee023bd1ebfff2c223cfd6fe93d4ea49eeb43a7ad76b8194291bcdba507193cdf82b9534b150cb1bf3cbe860a94dee99d26a9323b27ae98bf3dc042ac213712c2ea0a806d3cec4d1e0ba1465aec86716d031c4c235566705e0bfc29af20a710794d21de158f5b72c7c4b727526d85a173554ca56f511d506791ecc7b52f01930db2149640ebf3093bf9e47047e3398ba2fc1dd08cba57a35eb3dc81716fb3e04e800c6cd2d26c8b9e1d9b931312bbead1409f05cf6e0bb83685eb0842a97a25d872b06828af1d9ff5f367ecb54c601fee1fd9c16b4c030043e80ccfa6db84cacaabfc6b44e05b2036683b0b6d873493a9f7ec97aeb71b4f3756c9e007c29a06d2f50042bc0dd81cf6d614761c333cda125f32e81fd497158b044c78ff9a461edb3f0a1aea85d2dd7b5e27a4b1bbd57b21c125a9dcaf946e5f9079a35df2053898d6933ab4ea050946e220c3cddaade42c719c5cf42c59e0cd8f1c39c1b8bf038256c00e0802aacbf97e450187bb50cdb1467153e0ec190a44dc0c08c67d9f50901149c85796cb43afb19a6f70c3f3726e24468a66fc6599925c7e7db090627d800d7c59d637ddc4f248a4fbd541640c5d602edf14134a04cb2edeb0734e40d2b64ce487bc32b067332b701db29a2c17bc4fa3058ae00250420b6e649ae893d6a5396c86d7c351da3cf25d6498eee72fd57e728814b860ddb8dd9284110c3f81ffe231fc81cf19d3670c40541e4f1522ea8676822600958302b6e734d72e930ac739cb46d62adbd46d8f80e619c7f77cfe550391270de4b06faadba5c3f1f8510328edac80166d9902f90d5d5b02a5be753ecca6f095b4ab36de8d57e260cbf00573823b1dc73bc5b5cf9bdfdc9e07fba857f950a15c4e956a06f9e5d218e6acada9bdbb221b59a825e433d3e92bcec28ae34db935303567932a9a3e76c2a5ca9b23ae0c8b4d051ac268054f5acb58d7665c8cae5cde0a20cf173c5c091e24835cc5ecbc1c390fd681941dab2038d5c411739130e4743b377ec3f1ea222e198d9678149e9caa20f853cbcfa10d0818e488e0dfcfe0e5a635c6d32e8713140e9613be49d134924d128f806d791e872f32c972882e97f5e7eb51ce19f4afeee74d5d17d730c7ca4aaa79d495ad7f273ba2f9378db81a35a9dc38b7c9862482bdd8b862615a0ce81ca4ca9e13cf56a4e6ebad295aa62b98c419321036f0aaa21edec12420581f8d256aea85c70e3232b62f8d33a3def0b397c87e8b2342b6986cdc52257be3f1a095a5acee83e5eac124bc3f1ff95918d8926b3ea65d0c44370b0c922e9e96d93b73051c85e6964b6e3f341e830c8f86cfa2b7d615fdbd43cc4099d44bc46eadda6854f5ddb3d2b5fd0666ebaf1850e948bbf5f32dfbbdca4b95983da0ed058dd3596ad5d9e517604ac1aac80c7fc0b3c0f0d821a8a3e8889dc9f28cf1920b61a63358d2c53408e17b7a1f66c94ff26a8b86aadce3566ccbb549ef28932b09474ab7fe9fd9b51c7d0bae1c2978a7d6abb28d03ebada435950dd9cbe38e19d70c3d34b86b43d1355843aa81f3dfb157c1b6a1f716b88a278ad372609f9ba2bfb7a670c12917482123ee654c4c6290c696f3c57c58b2032c25498a8562f39ebbde749367c99039944cd8e5775cacea1cd5a8b27348a9ba6192441aad9671f2fc2390a99548b15ce0142ff8a7127adca7b78a05bd94fc2808eca07b6e357d32dd5a07ef3e8d9bd6873e1e43b8342794c091fb7793511bedd9b36243b84357bd02ec07b5b94126c925a166c21fa378cc03aa6d099a81646e763df8af8629f47fa9ecd187465f00289a59ad0ea7f771a99ffce92e2bb2a6b199384d9dadbf24e8d376c61f5dcfe4eaa1c963eb0208687a7d8ab0004baac5a997de51c526039d89e02d36dc5e1e3e357945bb3c5fa9a8b1a7bd283211c9ce55d028dd6956084e7e790f5782cc7f1587fe73f98f1387a7f7e9c48a7869ce5e3a1422cab275f7c9bc99831247b2e7ca9f0e84be85ac35a5037e99cc0c8de4661d875bc0da45debea79e95f0151b8d9b83120190a86b620aea22634eae5c83fc6b974c22ccd2d33a94d2606b61c04115a8f8b06a277e6c5d62ad8df66cdccaf39bc2c6e77fbce32e5d7815fcdca523f8cc3323685cf994e9b351cad607ecc01b335e269d7d0e5ba7bbcd5421404fbfdabf4715942178c5c9b6c35be1f326d72d72a5151adf1106773b605c485b1cd90c856700adb927662a029e3a8db845fd475aa19534bde052bffadcdffd7c83a07a253a37055ad673ec64b999288654fc2f128bf09848127c3aee9c96625ac8d7d3f01ac4a76d67d0f1cbea818192cdb7de077d4ff3a44dbf21a9d1bfc1af73c975db96c8f5d82b10c95ff775262e459441373fc67fcda13d3732706aadd10d073fc08c1539600d61f0c6a3b3ed377b09391fac55e3d40a9414c7de6a0119f7768362d994dfff8172b7ea30e743760e0a280de429b77caeab5815bd0f558ea388d657fb66f86efa30c8d33e6c9ec21d386a3ea57b2d81ef7e354627208afa5844f5b4e73175bafbe72450dae37b4c40a9cc998f865afe503bc85436fc5bcfd8c524d8fc32a6faa848523cc15bf95f469783b00d2bbdf266a67ba28f23168f84709165e6704c7451c0537db1a48d02a8c9dce1ac613822a29cf7b0327668615b308ea4d7a56a1df59f97f980befb5e2a17586c58dc5597f9dbdb05a4234254ed25a36da05524eee76b45aac92847e1d6a0ce977b243ed8d306401797a659d229f0855956b6829cb2ae77ac738f4b743d6d351506d7bfe1cddab81327897a2a137dbd9b7595eec9ef758918c2e11aab2d97257f34e828f128fc048e4107beaf346309a950b8fa6c768cb16bd838cb3200e37844117a88a2abf79d248aab91b5f3a3f9c9885e88ce2176e1bd6c0121661a4cb184a708237cf67c6325440dcbc2868870cd54c113e6b070d7472e2f4532b4af652fbd38cf8eee2415ee27789d4a4ced18c4814e8f0548a37b18ec83008e19fb1d59fe41d125a734f3aa9c55eafdb35f2154168bb8df88f00acf1da1fddb355cb4ce936b1ad34c7f1a7a3e681010adb345642447a4d20762c824833fba87e4bc76045bf4250e0f80fdf5b1d8b7c0c9cee01f38d059c89675302dbc5b24c92321cc13e0747c0b610d2a06e61cf38ea05cc340ec24d0e2a4d427fe94d075eb775380b5fec362b23a64ca6c9a7dcfb6dc0933d1b86f26e9331ba502f05ed6aa0c2cc566e66e431df8f19b65d3c6b79f6732c506c51b04a3451b5a125f4aadeb1f5181d16715ba49f975354ac6250ea321c55a84fa9963d7926ed30c1a84f758734e22ffd13f64bc1380b4b8cf175aa34a99faa9002c57c6c7fe2c050fb392d1ede6400a28a653242db1535354e1b8ce61bafaeb3d6af0d0f45f5b814c8c0aba0efe34e86fee2b656d604a0879c4b2b2e46eefc76554fc389ca92d24949635888c8031a7a60455a0e44124a841224a1aa01bef63ef3f10a6e27b5af62349795e0679aa98672e85183f17b5bfcd86c660e8719ea716ef31a2cb0045311ca2dfc4202fee9fe012d7d9174e0fc96f3609d7e707d652c8f906a1c989a3fa75232b7a8e04b6fbb3cbbc1a1e8ac237abbe434bdc9be2955a5d9f50cf3c6f5fb43bd7daeff1b680208d22186bac279e4aab6309eb2b30ef68b0cb714cff01d93c54438afba8bd1bc8e43648e92ffa02a5830ed942949d49372a86bd3ba4a5109cacd649daba4aab1755bc17a3fdd248978b69b6eefde7615c9b7e380647a5d2d46c87895620555f611ee7bf04a935f5a1ce354a612c3852caf2a606e017f95d820c333347a556304ffda65e5b8f9c7d19d3e7a1f69a6a082da8c348d85236a4db643f1472849a9d2cf0ecdcb8d9cc5409ae7e5e8228cac73f72905fbc0bbd83d8feb8261a08dc7f8a2410ab886a784f1467776df814bf4e1d7c16151e1e84d08d6b09aa96c0467841ed79671f94da884d290ac1635a7f5c91d5f9e12b102edb014519c034773e557ee3e478f95dc21d6c24799c96a03138a17c762121c2220440ee7b211600f051089df72aa603f3e705653a3be0b7709ecc66dd0cf4873e3525f4ec0ebf70fe6ddd005ea0fd1162b4ea639d868f2ee12c6306d8816c4f6e7167b9560565bb2ddc41b0735134e3aa297271284070eaa87edd4e4cdb3988e70aee26188539a638a4ae8bb8e5b81093b8c78cbae2c1525c104d9aecbe24a527bf1f103dc9787924b2d47bc7d13d4384800f988981a8e908777d7c9734ae7e157d001e921cdbbaa24efdbd558cce39548d4df02188265b18fcf941ef24e56851a9978e3e37d89b91708ec074d5257ffbc201c2d24fb69469256a5d8b107a0b1e091ff596737ac9bc8ac600120fe975ca6acfea478ee42d4d6cd58219b494f6997a5e7a1d5ee7e1864cc5ec6329fee6ec58f2b0d702d84df162f0b427f8ee6b2d6ccff70b7add33118335964c1bcc23a1b6b68e70588f15908822474a73e04e8d410a50f2a19dc56a4c64398581cee9370b3c3bdc6c11bf1837de59461b09965753f28b4460940fc13bf2737b5791e332c31ef212931f190ad1cca66bc34772b1a9fabb85069930d1a3e64280cdf21d3af739a0a749757183a32477ec8d27a5aff9d6399c0261ed0afce2aac0e8adb5a70af45051c86e0cd3b786701fc0aee6d913e057a4e9cd3b7cdf4898933ef80ed7599871533b8f164e497cc3c6632b85f698ce965cbbdd22e448db726ae2f15fd71d0b4c94aa1d12e11ba0391699618644c0ead878429813f0c0d71db6d67d5167783bfe22879bc34b8a10b42d4de16b43dffaf3a01241694602532232213425ea4448717e3995e7b4e1256541482f1f42a8eefa9ebeff41cc421740a7c5160fe4fd398b5bf1efb9fc74bf13352f6e528524dd85423dd62d3c695df4069da079e5bc1fe9a775d5c9232d3cad31d03b46858ef4db5c38a6953145b01c43219a7bb2c1bd56c012c1221ff2f9e653f5eba6ac5e4da2963e35081ee95afeb8f982d95016a864ff86791156f525656427110bb00b027aa6dce07f9442b5b186e7724b3bececd8a121f34136dc2a09a5a6979767b09dcc70d9cdfdf3bf57dc39f8b7ba2a50ca4166008ad01be580d1f7baed512490c13b0dcb184a9cf382cb604139605056a6651b665cc6380de2dc1163fd3aa3071ce63a814e71ee9ed2061481f85fb5ba72b1db2a5a587229e4865de16a31b0605f1dca0895b1cfe6981117b7a443ec422553d56c889a4ffaf7f18d825b60865e197041368ef152d119cc4676938d4c3837273a66b9e9a8d6395b5540b23e21361be96df07cc5d4ae7cd4563e157c535dcbb3c0ec7ac9885ea5d643b1a93032b65e218bc87838546bff9687dee64a786027e5301447f51aa821555d6701e9db9f92b494ffb3b46d603d5ec177ecc937690c024cf68cb5cab32901410351b1b27cfa3600364dfc1849d6c2bdc2a4737946901c4e7c80fd3efdbf14a39263def999b6307328f25ac8b82d7058056c9fa174cf31e7f818c2d6779b0e7b4e1d4fd53c714f10c67ea4ba6517f4802d5fe66d84633583b8554dc443d232e27f4c65d57b13e3a523789b964024273ef035d192f7717cc7501aca9e2830c2ee6fb776f7d5b229dfeb3345e2f812c1705330f84f8719c690ea5d5ba6307f7b5b53431a15f445827acf1fa21fd9ecc764db352a396337429443d142d6d50bca5a0de49d5c78a1e9edac7a1598f67e9029a1d679af13bbca92e950634b2ac1ba1e877d84b2ecf2eac781b2f8c1e8c79138fc485c197960f50f5252470aef9cafb73cc19e6924b2e2824b96ba3a87c642f2a1ab87a43ef960f1648b5333ed323e2aa3f08944ba6ff94f0a92ec1fbe0725f4a33f6cb2a19f1a6cd28e0d0a7e5027e3145a7ec8ae0ae514714bc7bce9c82f067cfacc588f7f90ea5ca5a5867cfa4889e071142c543eae22c0f6142d501a6a1b52ac90e4c09da82033c1326a8ed1ff12cca777ed10a39edda39946d6900ed17b75ff1394b5455297dfe915590a080a777016c94d324c56ab59012d55dea226d13cf976fb1eebd785db310af5025240acff7c22eca31ce8be416ccfe573aa5a1282985b86a08df8551cc5f6d381f4f591dbc7c38c002bf34cda0f46d2847b2756b858e4df9c12e027454d37bcda42b63622bf132f50e824dc2778ba5783fe616310740dfdc6f4be809f886c30cd217626a2695743aabe20dd09de848bbb46f0ffc51a77f72959e543ab3d0ef33f81fba200c434010a251db0ba7b7e4495c1e2aab7fa555fe1ff284a7288d3272d67e33c78bf4e220de01409cdcc4dc91268880d1eb3d9c50c9dff7f4376a564e5c4f9316dca9252b356eaa6473d027d7060d774bff79abc88b0624e5f83ae845a9083ddd82be2279a40fa4ccaf1a519cfc8a826cee2ed43b82e8f865ff7986ce5584cf45da8cb72d831d083128c4ef7695232c9eb199dbbe43ef229c4c041d160d34681648f67df8fbc2e42dd3a09de549aaaa4755aa4bc32d6c44b458d38ed3e87de48513f9ae7e6c9a7f8dde92feca14df55587bb2c2027f01901d858337fcacb4126957986cb0f89ecc3ad52a5a0f575fe4aa253bf68e3162a1012155dac482934757cd1d8566b306348bbe4ec46343471305ae7d01c45e00b56946e5f36a6ac4bdf9603c454e3008f5fce1271a257e477d5e9d5ff51b5d63a6e6eb02af34b1d5400a53dcff8bc8c39af13631e79cd0678146c26247664a543c3764181fc746983f7e12c7a6f165cbe886e2bd09bc1f820ab3e6648acccfa8b6eb9fa90eb41a38f2ab9a729a9a34dafb3a8eed958c3e30e0e53f1053faa33bc3b489171f37d9a427d5ac40e41323433d643b9a18cfab0caccefa1fe6f9d49216a7036ad6965f258b05e88aceba2c22a7d5c9275d9288ac9c4e561126b94ca09264f83316b47e27b825aca219554c69c9daca52d139e70ac8d7414845721a50c2211773c428bb847a4bcdebc8ccf4da9c2000ba74e930eed921456a2360dec1b0284698b68a019a238969401bceaf833b919cabea9d782c74ac9cfae7db8eeb60bff66ce76b97560946ef24f05c759cd0fad9c0dae12500059c8cb0e7d3eafa94793bda32bab1a76139c72ca24bb26eb540e308c410123bb68797a9011b71edd74d1803583c106ca1056e45adf6b5115e05fb50ebe2131faeaf3ff29bc417f651a4bd3042772c5dd4812a87eb86ecbed82c3fe95828bfb0fb2f53288c61ef543603683c8132118cd3a0274c3b6df54b3956b71b82ca67f0078c68cac5e7600c1ddd55d7d1c9b2cb51ef4a2ca4f1ad973756b9b5b45838b093b4d9c3fc5d75337093cf0b2e172315f8d260e2560e23dd0e8dc4858f7f9131536c2514f99398b71933313f7b07e07e18bbc867a7ebe411fce67e5a638f2ed0ec9b9241ce6633bd406581fc6026309175e75d21eabd3d4d7af2f77c5f4ae05c7e9f5e094652c36c9b51365556b85f11c5fccd226af1da3eac74cacce1d01690b2f11f4174b494113071f1fa7ea4d82f6e94d95b5fc8f87393819d3d273c998ba50387af867b438061a6574950f596463b8ada2badaba2315a649f2c75695f769c231dc5df74ebf84d984cb9267dcbd598d847aa04aec8fb6f9708698bdf15e79b7b1fa60f8fd46c1763085f647107717d43b2146c16157a1d8e2474470f435ad1dbc4853333db992cd0d2b4ff316aa5a6d3c4b1b570c1f8353d8ab036dde16a2d693b3ca41b62f1b10c2ddd4d9a9ec297d9f3453e2c5a11bb3747a1e69f19a6c4c30cf2b68d049a5dc5a092497275aa9c4966a5c74a2a18b008d501b629aecae257e62e115504c054c1fb4a6f6203dfe5f943e2cc06ee06d7d55a397249cfd784a56c51c11c424638c58dc9d48cc764cdada3ceee8a0e81d2fb74809f123707a643d5b4c22c63232194a6fa6fb3c67b91382a262917c8d534017790f439a88198b9396bed1db56efe70936c35789ffe1d00bfcafce0786237e8ff6f221d425531bcc80d0eb9256b711ec2137fc0eec0e5c836892195845ad06c63d00d4495dd3a8ed490075aacbd4c7c78c4129ef5a5a734d869ae7fa142310fdb1f96d6e57e2421eca92e3f60296f746f3fdd1eaa01f7c1a90f20ecb42e71a81cce9a1f644583b96cee5744eec87aadb0ba05d4626e209ac36b73f4869e17d2224e9c0c82a147b1f23138ef70593d3630a2ba1d75ee0f4f31fa4f564dc2bac49f6ae196f4967ff58f4bd149ce914fdbbb7e716db8b40084fb5edd7a6cfa94a0a6b4e2f09e80fa4d2ae189035a2726ec51757b8c2d298e4937c78ee430912296cf2e05457e1f4b92f5ffbf995b286330f2e59901e7d01cbba15b4791e4d6693404bf0a98ae0953e19b3feef22b22e1e78b09f753f5acde7c12d26b6c2d533bd08381740099681f6c7f2d730f59c516be49ca67a2d694a08af3dc9f561aa17d661b87709f1c32adc66e3abf0982bf99b3b8a2664672d0a5ae59eb488f8a221d920459176a836603f7610b079be6f9e9514830f6a0585229f5f75ec932503aaefb27b8d0037a22350b08c29c894f7df3d33fb022657f7f28ee6cc498c9ef84b15e82864dc0d29c49e35f08a0f30f20c78ba5d4a600c2243539d113de16bf8d9546ec0374da8f1230dfdb4acce5fbe02f5fe534e2f00a46eb68063a2c8fd23b92982112c4e6f96bcfba106ba3b96f8ccfd1095dae9296f260e519e1a254ca3ff5f4c60c8613793140a84dc1a650987353c687fdd1c5106c619b034a5cbb50323f968f1d96a2d9b1f5b09b4f9b7a41aa58cb6c147f1d533f17cdfb3f7d513dbd5034a20858b3364afca63562f39aa2b7c9601586dd57aaa51adab1054ac848f0fd0a0786b19c8cefdd4ef468d7efbd89fd147dfab56b09fa74d5a102dde5e5dd16835292dd6311bc64bd469221c552699f051f94b34df296b048b87c9ed21f835f5e14f5cef6a8955815b54fdb82b279d0d54c5884ac7c3f3141258ee22f1c298d76c8f96ed579586c25903ccdf1da9a6f64049fc7c32d3c1aa37d2cf998788a5197685b447b1db45856809e6b6fe48d49e0e1807bcab7e32263cc72c7aac31239069378c3af4a6248e6d035b89a885c26cdc45f752df4754a3c4493304ddb8ff5d3440da92f62ae6a97e1669b7c09265f2adaea620a4aebd68602886593bea3405f6c6fa691083e08be65f8cc24a21dd5519d69fc01e4317767c0b3fc3faaba16a1a01d93df21152d8fe1725de78c5ac9402b0f446c746740f28601bc2bb7280a600621d25d97db404a5c329035d2118bb76883e723ad013cb62115ada993ea69ddedf50231d5c55ec45c3c3dfc76b9301464068b6c7ac871592c53d31ea25cede1c027b1ecaf5780bdfa0bbf2b78130bbe47e58c8ea6fbc5a56c30d457cbe33114c73be161008569d1c42d792e87c859829bf64b6de4aef717512458a3be974f9969f6962c1e8c77f3ca3569b6d3023c326f2a1cd79aa5f8e37336138af28952c6285df5fa7d54a49b0d45e4b0abbcebe40569633e8b850098cc6eac5c2fb5c9465522ae999387fd8aa3ac4bacf2a8dd493548825cd09dc033ca33c8cd67ffdd0951ae3b06b0c2652c7d4b8761050055bbc559ed617ec5db678f79d4ebd47d46b3894cbd624ee2ebab8494724e947c0fcf738e3743defd6795aa456c9fc4784e2f147068d23e4ade1a57c12dcff4bd9b5acd9fc22a8f9ca9375ae7a61326b70e9d13da5e75200b58e42964caa1ef669a8fb8b03da227fbd9f29daf967f80fabeabca4fffa66b18d1cac40864ddd60f8488d0db2174aa2b17f609777bee65ddcb7ad0d7ff8f60c9ec6bb27389eb0dd975641c9ef42147649f403bb19c3676dd55249eea0b93fe01b09ae43364a7a7cf985dde6bf594e53c6d286530b84319550b5fd4345a02dc27b438aaba35fa3571d7c35ef1735819eac0f5b94b59486fed810fe437ebbd021215bbf343537e2b6668c12939ea9c90a1cab4dbe209d52a17616809d173b846ba9e082c6ad4e03e5fade2d71340f5dbe0298971dfa300608f5acf64b8d0db8328be484844cff35d409dae36004126c297f6dc771598c04f71ec09b5760eaba905ac6891e1bc8cdc2a72467f93b05b7073093affc56714afc50da36233e8346a9785a3d108621a5898fd63f6204eeb7973472e087581e21494fc2c6ce3e2c14172e27fa23d68e963ed06fd20c92d2a7c319c218bb286f0659e7c7883c0f6a5b9371872eb369ccb02312cbc6df2e7696313a1457a144dd6db983b017d1d46c5629172abb7db7b3dd0d581409dbb1c01e6d96a0f9893ea079e1dcc16327c6bc8d617df62d1279e4d69bf0e777d66a101641a18757ede5508aa215fd2e3d8d4d39b66e9a2036182a7ef7adfd551592e4b6145e86658cf987b48b0f4f7564ab5895373861dd0896bbf6bcccbb94553b126500ee49e33351b59557758927c4339287962fdec8cbf4db3a8683a286db38e66ebccec920bc05629b3624718b58308a5e5ad5099229f6863863775f7c54b41c16243bcac435675d495863dbb56e4d956845519e288989a547ef441a36a6c33626fb2c0bbb2f2e2d0adf138d4d36157f6df602dd2ab484060212cf33e8085eebc88456ea3bb098c9072350c89f6f756b2bf137cf70c48bff80b92c892d88670ebbebdf1c6deb0b87c104212e914b4e7c98daae0239fad57993ff836689fefe8681a549c84a951ae7a1608518f251e9c2d87efab7fd1baa0c3da88721289e42fd53f66c99df9c9aae402a857dfb81ee13f44d7e306313c03066713c95cabc44d1385d6c6af22c4bb6dee1af15c4764835a4525fc755739b4a8f8a246c8aa07de996bb4a9cbe74e739a3876c3faff5d3d6ee421ced3574f3fc56391151769a1342884033112b6d947723a43b88ccd49e18c62a3c8c824ab161792c214f68e099ecc68e3393d051a081c0cdb0d5e5e85e6a36c7d6254eb358063051f44dc3c75f8f3679159d2067be8c00e92aa2f9888f3ad900cb0b0d0e7a49a1beccacdf22d70319270ec0ffa88a022fdd33cac550b969c61197423872e54e510e7c1b567d505e5a2aff48f1be4ccd7b9e906944ef993073ee89efa2c2c7e0a80089387d10b595faf43a179cb9a33776aaeb7ea6d8bfe0562d32941218269e16ea3f128e7b6ea46e66b927ce94621fb645c7aed739dfa4d1b32319156892686e326118938ae4f9bc7f654916ca763cf246aafba132ab105d795f3cd1d13cb92fef191b455d23eaa6c2ca11ce2a9adc904fa16db17db6ebebd25fc1737657a836770b1be301a74be40184f4dbf6cda93005391c876c7811faa0ddf9d431c95e029ff73a685152273a641d3d6136e33c902376eac8c915dc762dc2a2bfbc81817d6a99d0265f651985076986fb9b917234465b9ad22ef64fc92058550bf029203b0ddc771199464265a41ac16c426e4e843bdf0f20d15fcedc35d0cfafd89c0f7ce0bf9e2cb4c1be7d9a5845188896e2f853c6bf73f6459b7bd132b50455b5b1016620aa3beeb1ba8b62f8cb54ed9cba236f2d75c2727c7902ceb6bb29f5606c402bda4f80cb5559464484db880735b6610d7c114d13263e7b203f4df2dba539a28eb216ec24c636bc4399014514127bae6bf8b1c94252bd13630057d76a6007a7a7dede45732947f1142463d0e984bc11597a80d5fcb345bec8863a0e75a6d041b6758ceacaba9b5d5f3a381b0a400d97bda558e5c91673b1436ac91fa8a013b0a7a551f1b7b900072da74fc60f8c525c0f364665c25e27e9477ad8d5dc863b9f4aa110fcb1e4ee4bacd6d4c6470760062e62d4f23eafa7ad468a439cf8c3fe130c7a280e61f39c5c2ccacb196f72f7d1421e9a1d83640b777c22ff118c295092e027945c7e57741c964fb4331c9dac9c36f4db30ce28d59c66ebac0910d4428a575d922ec71ca35f3d784b32b265492ff0078ae7998e96d3841162df5b8895b5f5838cf77997504e0274aaac4a163c333c78188ac68f317b844e6a323cb504e59fb6d27fa2efc63b00183f9d676636d336a563339363eacd56dffb8c4553a7b89a5c4f3066d604df0cf6130f4940fff4e54c984afff0a5ca8e1388cb37472892cb88ed41a3b67023d3c3cf7443a6575214c216750708f0065b8fb3be63a9f80e38ffddb35c3ddf66ab773e8614e4437e0e7d81d12fbac387a6e41c28fb9fcf469d88d9b62b1aca6358df74f12e4f0791ecd69783a9fef04cb64b5c8a8cfd56022d61627a6ff7eff757deadde83082416276885c11ce4f904e5745946f593ee54c7776de70a2aa270e10239a5069eaeca0d852cd38837c34e1a11292d12e52513fc3a82b22b6255887cfae4e22b18456d433f2203775969d66ca64759af69760734c238da2ef83a50bf68c1b730b25a55cadf2f5264bdb6f4423f1378881a6dd9179029f5bb42d9fda4c83fb531aaab07a161a863a0c8f9d4668cc741ddd1aecbce82f4b9fb3c26da828b1a65fea6946057304baa03278930756d3390e2f62690ff6167dba4f90e726cd439f3959aebbf87d9720d37dc154a2515a0f95c860a00d1cb505fbb8369828fc56d674392448ba19727888949c08ef5a93a48fb96dd56027d09bc89121542d7c01f522220f0e1b774ea7850befead07c2571183dfd78f0ac0989dde4bb386d201d0e3ca92bbe5e88c61e7203e35a8eb8a40b5b27550cf5a4744df3ff55cb7d759c158b74aea16de1d91ae481c7c60854fc813355dbc69f594d7c954242621a4b5e9d74724e0d97decff4eb80d4ab9839d40d70935572632b8fa1dfa4e8af9788d95b9afc4dccbbb7b8e377f8bbaed55b98a72fa5bb0ad1542a3664c3ffff22b488db30129bdcb13328763d3dd1512512a5f94151843a5f66a6112ca8b8c1e912f9f61c01e8ce9bf7320ae98bbd71f22ac5d60c5225aecc2d907238f82d649b9eb53bec6604b89e5d90a5bd3936c94ff155ce47166a0f8f72a01e40768170c4a695f3d2af0c203afcc0530f5480e33f24d89c1023ff1161f878387b92403e11d93053ecc0153c960130e4aacb7af1ceddae9ddbc0e234a6185fcabe3e59b0ef1bc9a73360259cae91a85a79f98ae4892b0dbc314b622db2c228e8543ae9027828d4e0706ab22d80fcfec92cd7785cba9c93db20b2878c0fad25b6a590437f21142faa8f57cf976eb858666e499df55ca67070b0ab0738b9446c0957d115df827d57b35488fdeeec97165a73c4706fa50e95c3f0d52228e6ed0bb96a851b478c8e832dd4ddbb363e3f8f22ce8dcce1a078ba9a13fb22a8160580f38ebabd123202c88c4f4df61f5f720981cf9e5cc30841a66cd264d81a81d76125f5bce363cad5e6da5834771b0d7957f75100fc25e3b9105ac73a656a3ae7d2c08a18d462aee66f3b2163be4e0fe21b057610626d16a8f1c3261234c895ac44d0649755ee7768e11edde900f88eb99e1653ce7bfabce69fa5dbdd38e7281cca46e8aca74850d3b4ea11561222bae86ae579f04400abc03a3398df34e856c0a0e10dd92c77e56239802c656c93592e2393e9add00651790676714628da22aa1f7e10b5b71245fabe38c6982a8acecccd4bc794d0705ad8bb8a1f181e9ee7edb6b5f0e2e7f11b82d6d789406782eace479f0d165b9db9809e5c37fdca5eaddf4afe392944e492d92f70f7731537cccb8111a3377792ebe5b0df1baa1af461c542434dc8e59ec164dcc500fe5b9fdecb76f825875f3fbf2410668a36dc608aad27480010f58188f6fcef4807bd1fde579f42d0448edcb1beb4c87817a6c9ca1b9f4b1901e70e61828e1e0d72bbd4c42476a72f31677f82981c780246511ede334f12f1c498c04c79c663745ff7bd8c40d90e793c82348f6ccad0ec45c423d4f192fa0f1bfcd9046acb65afe53752e60fc046a5c5ccd4230d652a6f9019fe173dc576ecf6ebbfdee5860c39a668a7a084ca971a765af48a341a2dac1f9ad73145ae0efd9e3bad51ebac3d1129710d59a1bb735168418bb3030e5c677a7b42e8e0223019c469fc2de1bc3210b3b24abc5c5e2b9e6f1bfdeba20b092ed73e0f96756301dce94418a404f005aa5f4fb78acf9e8c023be309af003e9fb3828008131b012c1d551fa9133a9a45fa8444307094af1e4024a24c2c2fca12315c11fd9012a37158c53bc6cf6fcf2ae3558b6690b5f146fa35637345529efd6ea1c0974c944e9be900c8482022f5ed4a74c52f4774c02c775eb8c3fa0a39b0efda9b0659d4680aedfa647670386a3ee1ad038e5dbc59d8dddecf981357facf45deb98c14bdf5b82a3c66cc848b14e0c41b9128328ed1eb2f9b148aaa6e593241cf922d8892f13a471adc5113f3c683c4cd1456a12fbbe4408bcb4fff16a433179f1e7716ba317a0cc6d2ab6dcfc203e6c0a40db388c1f8fc9522c2afed45a89e3e27ff64cdc31f439c5dcd52450fba1cefc74db9f27bb94c1d3c8330a19003f0573407bb13a47f0f75420c690603ea438248377725df301a850a61eb391ad0a58b715a0a047742d5aa70f7e69ce11cec276676293627b273dd623e55421179f01faf69a5112f73c82d0df888c0a2fb1efe62cc5c7a8fcc1df79d2d68e28846528fcd2b6d801831cfb4677c1a194cb5fd3c322b9cccdcfc17344ce6dd840137e2c7244163d9e76adfc90e34fc8e7ae65f32f5be6003d6615e41d2a2543cf5b92c09ef5d9f9541f61b85324441dbfa0c7149ebbcbd19ac91bac72c5b28d23c75e20c3be022cea0234f4086de8b166a15cc02c7c0e1d4ded0b16a2b015f762e9f5cbd11166e6d18534f5abd68f1d32bb63ed24b89e502461ed82ecb7935d90ba972410c11378ed489b84e26023c7b057d94eafad0e4250aeafa978845e9453145ce4529a2cc4c6e7b66a7c74ea4f887884eba3388ec375e19caf582eb935f7a8e0a0888b103719f1bd281c6c54dc39f932189b6df38dcf4bd9645af723bc5818078dbe17cb4f36def0328e1a26104827de9d2b3692c4340b84aac8ff3b1fe86e93c9b31824e82d2ff439ec865a85ef782bc36c4a881e2d8897495e92f5a76c6ef4b947152d7d641ee8d707cca255926fe09561fa483b20c77b68f050fa0ffde35f68427e7f1827f0966e46b23b6e45efb587acaab4cda816c17ea6343e451dda672be30daf506fa4cd9de6819fa6109c5e8709c64be093e1159e25e7d9266d4c49c1057685254900f7b04f455f09aab8a0154019114e06cab281baab3400eae9e3430f05ba97773c411b53a07ada5442da74cf54c07c468bd2f78019b00ddc14324f9f76cc2402280d41b20b86e80383441031d90254990b72fe1ee294ffcb1caf1397b9570d1c6889d16c953257bfd97928812fd88178441162ad58b55151782071a5b0727b6bcf7058289a645011b384684f16a720297d1e2fecac8a812f9a01770a24d357edf7e25e2e3c5a88b17c9683963dc6ad073414948b6e9816eaf1d5274e76efb197d05acce68a812b8628579078f2ec754f4316a2f6090a096728915c0ed9383390ac94504702b3a9a516c35c7a54a859dc6021594cb1342f4103a6fb924caf7fed013aba1cf3b20e49240bddae29ea03094a46a79c748685b5383c988a810cc26784a5626d60b6060855c6387e67c45e1a24a221d1d1367518d19a55a7809cfdd270320cfab5e25c41c65d378a1ac12b4b7721f9c89300c2af7a435f17c6398f91451d61fb5cd740fb4df5099d47e6df81aaff7e60f5290965db748135aa99a567fe524faae35575f8e4da7d4bd6cff2feb2865014ae4e95788f19cc056a0cff91f6288baab6b27db87dea32c4313095102727fb6492d3e63d5d99c3c68f5b46676cd6f55304307939a7491b4fe803b4c4af30a8d715f120eee48cee38cbea66623f3fc179ea5085ffa79a3280d4ad70f57e935a75c76e73a569764bee30796eea2b3bfcefcae538e57c9341e2643925bbbf50c33d36e3eeb5569c4e581a7a912db0099143b6780f26c7b39eeafc96c7f6259b12787abd7837a3dd5049b89230343551455403a4af3e8a4599e0c966bf47f97f419dccd4d8dedecd64d8ba6204dbd1776d0a1cad4b2809ea4261eb6d37de7fff3ae5b4221c5e3d38c2fd36f67f50fad9438f07f320e2a3b9f9597b366df6a7b65e473d1752e440343ba9a960275008c91b2ee35c588b3947a7c234da1be5ea402fc98686d33d8ae9f55713971ef35648a8a0bff06eb1a298c2bdcebfe7182c0a290e4b88cd376e23de3033d3a9ef23629fabadd61150491e7ecb26d65910c895caa16618a9fc23def601a544ae780b28bfef91c0d9a47252dcc32dd2232cef292dd46fbc7474275791bf97947b32440d458a6a632fb4e2fb90cca406be0127d36baad46354672cd1bfc3d977dbedf75ef1371340cd8578db2cb149f9d0576bb58571c8567777cfec322a02171d7e7b0b32537e16b33a53aa080c105ef83a9a0afde499f041b0f11f86ef2f50897a81a290ea92d36234f3baf50dadedfc41a37561fe4d4cb2131ab9853a7f2025459ab97f03a8f23ed8666c2cc2a3af436cd15cb75f9112935be850eda621a09543e075e1f93126a5402babdc1d0a997ac19f72ad0fc79098f980e3787c3f3d436f86c6f99dd588f194e92912f646709a7b8371170788693f2f023844c82f5dab41220d8b703a4e5ff0009178cc262886e32c03d63199c5bcd9573fbf7c65b840ebb4f8e0ec583205f3692e7abaa918f82b12f0006301c55288a58943f3df52b2e401ecd45b99d32dc6dc16c9c6fb41b6da36f0fdbd9e88c082f99fa4f00a46f8558526980820ddcfb3ab6eccf438d4d9685dc091303e74108833b94a5b2963bdea4a5ab4b8dd48f6b46fefb3e28cc4605d1c98fd9ba65067096061f16180b5122d29a5a28be9dd4402e411bec25be842de0d7rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootsalt-3002.2-50.1.9.1.src.rpmsalt-docsalt-doc(x86-64)    rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)salt3.0.4-14.6.0-14.0-15.2-13002.24.14.1` @`!@`q`~@`u`H`<@`&m___@_@_I@_I@__@__t@_d@_3_A@^W@^^(@^@^k@^^^}^|@^p^oj@^`^`^_@^_@^\@^C^8 @^1s^[^^r]q]+]@]]]7@]N@]߶]{@]{@])]]]@]]]4@]]?]@]@]@]p]o@]nU]i]R@]M`@]@1@]@1@]>]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?@pablo.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- 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)sheep67 1627901109  !"#$%&'()*+,-./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 { | } ~        !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./013002.2-50.1.9.13002.2-50.1.9.1     !!!!!!!!!!!!!!!!!!!"#################################################"$%%%%%%%%%%%%%%%%%%%%%%%&'''())))))))))))))))))))))(*+++++++++++++++++++++++++++++++++++++++++*,----------.//////////////////////////////////////////////.01111111111111112333333333445555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555444444444444444444446777777777778999:;;;;;;;:<=======>??@??A?B?CCCCCCCCCCCCCCCCCCCDCCCCCCCCCCCCCCCCEEEEEEEEEEEECCCCCCCCCCCC?F?GGGGHHHHHHGGIGGJGGGGGKKKKKGGGGLLLGG?MM?N?OOO?PP?Q?R??S??TTTTTTTTTTTTTTT?U?VVV?W?X?Y?ZZ?[?\\?]?^?_____?`?aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbaaacccccccccca?d?e?f?gg?hhhhhhh?iii?j?kkkkkkkkk?l?mm?nnn?oooo?pppppppppppppppppppppppppppppppppppp??q?r?sss?ttt?uvvvvwwwwwwvvvvvvxxxxxyzzzzzzzzzzzzv{{{{{{{{{{{{{{{{{{{vvv|||vvvvvvvvvvvvvvvvvvvvvvv}~}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}salt-dochtml404.html_imagescloud-settings-inheritance.pngexternal-job-cache.pngmaster-job-cache.pngnapalm_logo.pngproxy_minions.pngrest_status_screen.pngspm-overview.pngspm-package-contents.pngspm-package-extraction.png_sourcescontents.rst.txtfaq.rst.txtglossary.rst.txtrefauthallindex.rst.txtsalt.auth.auto.rst.txtsalt.auth.django.rst.txtsalt.auth.file.rst.txtsalt.auth.keystone.rst.txtsalt.auth.ldap.rst.txtsalt.auth.mysql.rst.txtsalt.auth.pam.rst.txtsalt.auth.pki.rst.txtsalt.auth.rest.rst.txtsalt.auth.sharedsecret.rst.txtsalt.auth.yubico.rst.txtbeaconsallindex.rst.txtsalt.beacons.adb.rst.txtsalt.beacons.aix_account.rst.txtsalt.beacons.avahi_announce.rst.txtsalt.beacons.bonjour_announce.rst.txtsalt.beacons.btmp.rst.txtsalt.beacons.cert_info.rst.txtsalt.beacons.diskusage.rst.txtsalt.beacons.glxinfo.rst.txtsalt.beacons.haproxy.rst.txtsalt.beacons.inotify.rst.txtsalt.beacons.journald.rst.txtsalt.beacons.load.rst.txtsalt.beacons.log_beacon.rst.txtsalt.beacons.memusage.rst.txtsalt.beacons.napalm_beacon.rst.txtsalt.beacons.network_info.rst.txtsalt.beacons.network_settings.rst.txtsalt.beacons.pkg.rst.txtsalt.beacons.proxy_example.rst.txtsalt.beacons.ps.rst.txtsalt.beacons.salt_proxy.rst.txtsalt.beacons.sensehat.rst.txtsalt.beacons.service.rst.txtsalt.beacons.sh.rst.txtsalt.beacons.smartos_imgadm.rst.txtsalt.beacons.smartos_vmadm.rst.txtsalt.beacons.status.rst.txtsalt.beacons.telegram_bot_msg.rst.txtsalt.beacons.twilio_txt_msg.rst.txtsalt.beacons.watchdog.rst.txtsalt.beacons.wtmp.rst.txtcacheallindex.rst.txtsalt.cache.consul.rst.txtsalt.cache.etcd_cache.rst.txtsalt.cache.localfs.rst.txtsalt.cache.mysql_cache.rst.txtsalt.cache.redis_cache.rst.txtcliindex.rst.txtsalt-api.rst.txtsalt-call.rst.txtsalt-cloud.rst.txtsalt-cp.rst.txtsalt-extend.rst.txtsalt-key.rst.txtsalt-master.rst.txtsalt-minion.rst.txtsalt-proxy.rst.txtsalt-run.rst.txtsalt-ssh.rst.txtsalt-syndic.rst.txtsalt-unity.rst.txtsalt.rst.txtspm.rst.txtclientsindex.rst.txtcloudsallindex.rst.txtsalt.cloud.clouds.aliyun.rst.txtsalt.cloud.clouds.azurearm.rst.txtsalt.cloud.clouds.clc.rst.txtsalt.cloud.clouds.cloudstack.rst.txtsalt.cloud.clouds.digitalocean.rst.txtsalt.cloud.clouds.dimensiondata.rst.txtsalt.cloud.clouds.ec2.rst.txtsalt.cloud.clouds.gce.rst.txtsalt.cloud.clouds.gogrid.rst.txtsalt.cloud.clouds.joyent.rst.txtsalt.cloud.clouds.libvirt.rst.txtsalt.cloud.clouds.linode.rst.txtsalt.cloud.clouds.lxc.rst.txtsalt.cloud.clouds.msazure.rst.txtsalt.cloud.clouds.oneandone.rst.txtsalt.cloud.clouds.opennebula.rst.txtsalt.cloud.clouds.openstack.rst.txtsalt.cloud.clouds.packet.rst.txtsalt.cloud.clouds.parallels.rst.txtsalt.cloud.clouds.profitbricks.rst.txtsalt.cloud.clouds.proxmox.rst.txtsalt.cloud.clouds.pyrax.rst.txtsalt.cloud.clouds.qingcloud.rst.txtsalt.cloud.clouds.saltify.rst.txtsalt.cloud.clouds.scaleway.rst.txtsalt.cloud.clouds.softlayer.rst.txtsalt.cloud.clouds.softlayer_hw.rst.txtsalt.cloud.clouds.tencentcloud.rst.txtsalt.cloud.clouds.vagrant.rst.txtsalt.cloud.clouds.virtualbox.rst.txtsalt.cloud.clouds.vmware.rst.txtsalt.cloud.clouds.vultrpy.rst.txtsalt.cloud.clouds.xen.rst.txtconfigurationexamples.rst.txtindex.rst.txtlogginghandlersindex.rst.txtsalt.log.handlers.fluent_mod.rst.txtsalt.log.handlers.log4mongo_mod.rst.txtsalt.log.handlers.logstash_mod.rst.txtsalt.log.handlers.sentry_mod.rst.txtindex.rst.txtmaster.rst.txtminion.rst.txtnonroot.rst.txtproxy.rst.txtenginesallindex.rst.txtsalt.engines.docker_events.rst.txtsalt.engines.fluent.rst.txtsalt.engines.http_logstash.rst.txtsalt.engines.ircbot.rst.txtsalt.engines.junos_syslog.rst.txtsalt.engines.libvirt_events.rst.txtsalt.engines.logentries.rst.txtsalt.engines.logstash_engine.rst.txtsalt.engines.napalm_syslog.rst.txtsalt.engines.reactor.rst.txtsalt.engines.redis_sentinel.rst.txtsalt.engines.script.rst.txtsalt.engines.slack.rst.txtsalt.engines.sqs_events.rst.txtsalt.engines.stalekey.rst.txtsalt.engines.test.rst.txtsalt.engines.thorium.rst.txtsalt.engines.webhook.rst.txtexecutorsallindex.rst.txtsalt.executors.direct_call.rst.txtsalt.executors.docker.rst.txtsalt.executors.splay.rst.txtsalt.executors.sudo.rst.txtsalt.executors.transactional_update.rst.txtindex.rst.txtfile_serverallindex.rst.txtsalt.fileserver.azurefs.rst.txtsalt.fileserver.gitfs.rst.txtsalt.fileserver.hgfs.rst.txtsalt.fileserver.minionfs.rst.txtsalt.fileserver.roots.rst.txtsalt.fileserver.s3fs.rst.txtsalt.fileserver.svnfs.rst.txtbackends.rst.txtenvironments.rst.txtfile_roots.rst.txtindex.rst.txtgrainsallindex.rst.txtsalt.grains.chronos.rst.txtsalt.grains.cimc.rst.txtsalt.grains.core.rst.txtsalt.grains.disks.rst.txtsalt.grains.esxi.rst.txtsalt.grains.extra.rst.txtsalt.grains.fibre_channel.rst.txtsalt.grains.fx2.rst.txtsalt.grains.iscsi.rst.txtsalt.grains.junos.rst.txtsalt.grains.lvm.rst.txtsalt.grains.marathon.rst.txtsalt.grains.mdadm.rst.txtsalt.grains.mdata.rst.txtsalt.grains.metadata.rst.txtsalt.grains.minion_process.rst.txtsalt.grains.napalm.rst.txtsalt.grains.nvme.rst.txtsalt.grains.nxos.rst.txtsalt.grains.opts.rst.txtsalt.grains.panos.rst.txtsalt.grains.pending_reboot.rst.txtsalt.grains.philips_hue.rst.txtsalt.grains.rest_sample.rst.txtsalt.grains.smartos.rst.txtsalt.grains.ssh_sample.rst.txtsalt.grains.zfs.rst.txtindex.rst.txtinternalsaggregation.rst.txtexceptions.rst.txtfileserver-and-client.rst.txtindex.rst.txtopts.rst.txtsalt.exceptions.rst.txtunicode.rst.txtmodulesallindex.rst.txtsalt.modules.acme.rst.txtsalt.modules.aix_group.rst.txtsalt.modules.aix_shadow.rst.txtsalt.modules.aixpkg.rst.txtsalt.modules.aliases.rst.txtsalt.modules.alternatives.rst.txtsalt.modules.ansiblegate.rst.txtsalt.modules.apache.rst.txtsalt.modules.apcups.rst.txtsalt.modules.apf.rst.txtsalt.modules.apkpkg.rst.txtsalt.modules.aptly.rst.txtsalt.modules.aptpkg.rst.txtsalt.modules.archive.rst.txtsalt.modules.arista_pyeapi.rst.txtsalt.modules.artifactory.rst.txtsalt.modules.at.rst.txtsalt.modules.at_solaris.rst.txtsalt.modules.augeas_cfg.rst.txtsalt.modules.aws_sqs.rst.txtsalt.modules.azurearm_compute.rst.txtsalt.modules.azurearm_dns.rst.txtsalt.modules.azurearm_network.rst.txtsalt.modules.azurearm_resource.rst.txtsalt.modules.bamboohr.rst.txtsalt.modules.baredoc.rst.txtsalt.modules.bcache.rst.txtsalt.modules.beacons.rst.txtsalt.modules.bigip.rst.txtsalt.modules.bluez_bluetooth.rst.txtsalt.modules.boto3_elasticache.rst.txtsalt.modules.boto3_elasticsearch.rst.txtsalt.modules.boto3_route53.rst.txtsalt.modules.boto3_sns.rst.txtsalt.modules.boto_apigateway.rst.txtsalt.modules.boto_asg.rst.txtsalt.modules.boto_cfn.rst.txtsalt.modules.boto_cloudfront.rst.txtsalt.modules.boto_cloudtrail.rst.txtsalt.modules.boto_cloudwatch.rst.txtsalt.modules.boto_cloudwatch_event.rst.txtsalt.modules.boto_cognitoidentity.rst.txtsalt.modules.boto_datapipeline.rst.txtsalt.modules.boto_dynamodb.rst.txtsalt.modules.boto_ec2.rst.txtsalt.modules.boto_efs.rst.txtsalt.modules.boto_elasticache.rst.txtsalt.modules.boto_elasticsearch_domain.rst.txtsalt.modules.boto_elb.rst.txtsalt.modules.boto_elbv2.rst.txtsalt.modules.boto_iam.rst.txtsalt.modules.boto_iot.rst.txtsalt.modules.boto_kinesis.rst.txtsalt.modules.boto_kms.rst.txtsalt.modules.boto_lambda.rst.txtsalt.modules.boto_rds.rst.txtsalt.modules.boto_route53.rst.txtsalt.modules.boto_s3.rst.txtsalt.modules.boto_s3_bucket.rst.txtsalt.modules.boto_secgroup.rst.txtsalt.modules.boto_sns.rst.txtsalt.modules.boto_sqs.rst.txtsalt.modules.boto_ssm.rst.txtsalt.modules.boto_vpc.rst.txtsalt.modules.bower.rst.txtsalt.modules.bridge.rst.txtsalt.modules.bsd_shadow.rst.txtsalt.modules.btrfs.rst.txtsalt.modules.cabal.rst.txtsalt.modules.capirca_acl.rst.txtsalt.modules.cassandra_cql.rst.txtsalt.modules.cassandra_mod.rst.txtsalt.modules.celery.rst.txtsalt.modules.ceph.rst.txtsalt.modules.chassis.rst.txtsalt.modules.chef.rst.txtsalt.modules.chocolatey.rst.txtsalt.modules.chronos.rst.txtsalt.modules.chroot.rst.txtsalt.modules.cimc.rst.txtsalt.modules.ciscoconfparse_mod.rst.txtsalt.modules.cisconso.rst.txtsalt.modules.cloud.rst.txtsalt.modules.cmdmod.rst.txtsalt.modules.composer.rst.txtsalt.modules.config.rst.txtsalt.modules.consul.rst.txtsalt.modules.container_resource.rst.txtsalt.modules.cp.rst.txtsalt.modules.cpan.rst.txtsalt.modules.cron.rst.txtsalt.modules.cryptdev.rst.txtsalt.modules.csf.rst.txtsalt.modules.cyg.rst.txtsalt.modules.daemontools.rst.txtsalt.modules.data.rst.txtsalt.modules.datadog_api.rst.txtsalt.modules.ddns.rst.txtsalt.modules.deb_apache.rst.txtsalt.modules.deb_postgres.rst.txtsalt.modules.debconfmod.rst.txtsalt.modules.debian_ip.rst.txtsalt.modules.debian_service.rst.txtsalt.modules.debuild_pkgbuild.rst.txtsalt.modules.defaults.rst.txtsalt.modules.devinfo.rst.txtsalt.modules.devmap.rst.txtsalt.modules.dig.rst.txtsalt.modules.disk.rst.txtsalt.modules.djangomod.rst.txtsalt.modules.dnsmasq.rst.txtsalt.modules.dnsutil.rst.txtsalt.modules.dockercompose.rst.txtsalt.modules.dockermod.rst.txtsalt.modules.dpkg_lowpkg.rst.txtsalt.modules.drac.rst.txtsalt.modules.dracr.rst.txtsalt.modules.drbd.rst.txtsalt.modules.dummyproxy_pkg.rst.txtsalt.modules.dummyproxy_service.rst.txtsalt.modules.ebuildpkg.rst.txtsalt.modules.eix.rst.txtsalt.modules.elasticsearch.rst.txtsalt.modules.environ.rst.txtsalt.modules.eselect.rst.txtsalt.modules.esxcluster.rst.txtsalt.modules.esxdatacenter.rst.txtsalt.modules.esxi.rst.txtsalt.modules.esxvm.rst.txtsalt.modules.etcd_mod.rst.txtsalt.modules.ethtool.rst.txtsalt.modules.event.rst.txtsalt.modules.extfs.rst.txtsalt.modules.file.rst.txtsalt.modules.firewalld.rst.txtsalt.modules.freebsd_sysctl.rst.txtsalt.modules.freebsd_update.rst.txtsalt.modules.freebsdjail.rst.txtsalt.modules.freebsdkmod.rst.txtsalt.modules.freebsdpkg.rst.txtsalt.modules.freebsdports.rst.txtsalt.modules.freebsdservice.rst.txtsalt.modules.freezer.rst.txtsalt.modules.gcp_addon.rst.txtsalt.modules.gem.rst.txtsalt.modules.genesis.rst.txtsalt.modules.gentoo_service.rst.txtsalt.modules.gentoolkitmod.rst.txtsalt.modules.git.rst.txtsalt.modules.github.rst.txtsalt.modules.glance.rst.txtsalt.modules.glanceng.rst.txtsalt.modules.glassfish.rst.txtsalt.modules.glusterfs.rst.txtsalt.modules.gnomedesktop.rst.txtsalt.modules.google_chat.rst.txtsalt.modules.gpg.rst.txtsalt.modules.grafana4.rst.txtsalt.modules.grains.rst.txtsalt.modules.group.rst.txtsalt.modules.groupadd.rst.txtsalt.modules.grub_legacy.rst.txtsalt.modules.guestfs.rst.txtsalt.modules.hadoop.rst.txtsalt.modules.haproxyconn.rst.txtsalt.modules.hashutil.rst.txtsalt.modules.heat.rst.txtsalt.modules.helm.rst.txtsalt.modules.hg.rst.txtsalt.modules.highstate_doc.rst.txtsalt.modules.hosts.rst.txtsalt.modules.http.rst.txtsalt.modules.icinga2.rst.txtsalt.modules.idem.rst.txtsalt.modules.ifttt.rst.txtsalt.modules.ilo.rst.txtsalt.modules.incron.rst.txtsalt.modules.influxdb08mod.rst.txtsalt.modules.influxdbmod.rst.txtsalt.modules.infoblox.rst.txtsalt.modules.ini_manage.rst.txtsalt.modules.inspectlib.collector.rst.txtsalt.modules.inspectlib.dbhandle.rst.txtsalt.modules.inspectlib.entities.rst.txtsalt.modules.inspectlib.exceptions.rst.txtsalt.modules.inspectlib.fsdb.rst.txtsalt.modules.inspectlib.kiwiproc.rst.txtsalt.modules.inspectlib.query.rst.txtsalt.modules.inspectlib.rst.txtsalt.modules.inspector.rst.txtsalt.modules.introspect.rst.txtsalt.modules.iosconfig.rst.txtsalt.modules.ipmi.rst.txtsalt.modules.ipset.rst.txtsalt.modules.iptables.rst.txtsalt.modules.iwtools.rst.txtsalt.modules.jboss7.rst.txtsalt.modules.jboss7_cli.rst.txtsalt.modules.jenkinsmod.rst.txtsalt.modules.jinja.rst.txtsalt.modules.jira_mod.rst.txtsalt.modules.junos.rst.txtsalt.modules.k8s.rst.txtsalt.modules.kapacitor.rst.txtsalt.modules.kerberos.rst.txtsalt.modules.kernelpkg.rst.txtsalt.modules.kernelpkg_linux_apt.rst.txtsalt.modules.kernelpkg_linux_yum.rst.txtsalt.modules.key.rst.txtsalt.modules.keyboard.rst.txtsalt.modules.keystone.rst.txtsalt.modules.keystoneng.rst.txtsalt.modules.keystore.rst.txtsalt.modules.kmod.rst.txtsalt.modules.kubeadm.rst.txtsalt.modules.kubernetesmod.rst.txtsalt.modules.launchctl_service.rst.txtsalt.modules.layman.rst.txtsalt.modules.ldap3.rst.txtsalt.modules.ldapmod.rst.txtsalt.modules.libcloud_compute.rst.txtsalt.modules.libcloud_dns.rst.txtsalt.modules.libcloud_loadbalancer.rst.txtsalt.modules.libcloud_storage.rst.txtsalt.modules.linux_acl.rst.txtsalt.modules.linux_ip.rst.txtsalt.modules.linux_lvm.rst.txtsalt.modules.linux_service.rst.txtsalt.modules.linux_shadow.rst.txtsalt.modules.linux_sysctl.rst.txtsalt.modules.localemod.rst.txtsalt.modules.locate.rst.txtsalt.modules.logadm.rst.txtsalt.modules.logmod.rst.txtsalt.modules.logrotate.rst.txtsalt.modules.lvs.rst.txtsalt.modules.lxc.rst.txtsalt.modules.lxd.rst.txtsalt.modules.mac_assistive.rst.txtsalt.modules.mac_brew_pkg.rst.txtsalt.modules.mac_desktop.rst.txtsalt.modules.mac_group.rst.txtsalt.modules.mac_keychain.rst.txtsalt.modules.mac_pkgutil.rst.txtsalt.modules.mac_portspkg.rst.txtsalt.modules.mac_power.rst.txtsalt.modules.mac_service.rst.txtsalt.modules.mac_shadow.rst.txtsalt.modules.mac_softwareupdate.rst.txtsalt.modules.mac_sysctl.rst.txtsalt.modules.mac_system.rst.txtsalt.modules.mac_timezone.rst.txtsalt.modules.mac_user.rst.txtsalt.modules.mac_xattr.rst.txtsalt.modules.macdefaults.rst.txtsalt.modules.macpackage.rst.txtsalt.modules.makeconf.rst.txtsalt.modules.mandrill.rst.txtsalt.modules.marathon.rst.txtsalt.modules.match.rst.txtsalt.modules.mattermost.rst.txtsalt.modules.mdadm_raid.rst.txtsalt.modules.mdata.rst.txtsalt.modules.memcached.rst.txtsalt.modules.mine.rst.txtsalt.modules.minion.rst.txtsalt.modules.mod_random.rst.txtsalt.modules.modjk.rst.txtsalt.modules.mongodb.rst.txtsalt.modules.monit.rst.txtsalt.modules.moosefs.rst.txtsalt.modules.mount.rst.txtsalt.modules.mssql.rst.txtsalt.modules.msteams.rst.txtsalt.modules.munin.rst.txtsalt.modules.mysql.rst.txtsalt.modules.nacl.rst.txtsalt.modules.nagios.rst.txtsalt.modules.nagios_rpc.rst.txtsalt.modules.namecheap_domains.rst.txtsalt.modules.namecheap_domains_dns.rst.txtsalt.modules.namecheap_domains_ns.rst.txtsalt.modules.namecheap_ssl.rst.txtsalt.modules.namecheap_users.rst.txtsalt.modules.napalm_bgp.rst.txtsalt.modules.napalm_formula.rst.txtsalt.modules.napalm_mod.rst.txtsalt.modules.napalm_netacl.rst.txtsalt.modules.napalm_network.rst.txtsalt.modules.napalm_ntp.rst.txtsalt.modules.napalm_probes.rst.txtsalt.modules.napalm_route.rst.txtsalt.modules.napalm_snmp.rst.txtsalt.modules.napalm_users.rst.txtsalt.modules.napalm_yang_mod.rst.txtsalt.modules.netaddress.rst.txtsalt.modules.netbox.rst.txtsalt.modules.netbsd_sysctl.rst.txtsalt.modules.netbsdservice.rst.txtsalt.modules.netmiko_mod.rst.txtsalt.modules.netscaler.rst.txtsalt.modules.network.rst.txtsalt.modules.neutron.rst.txtsalt.modules.neutronng.rst.txtsalt.modules.nexus.rst.txtsalt.modules.nfs3.rst.txtsalt.modules.nftables.rst.txtsalt.modules.nginx.rst.txtsalt.modules.nilrt_ip.rst.txtsalt.modules.nix.rst.txtsalt.modules.nova.rst.txtsalt.modules.npm.rst.txtsalt.modules.nspawn.rst.txtsalt.modules.nxos.rst.txtsalt.modules.nxos_api.rst.txtsalt.modules.nxos_upgrade.rst.txtsalt.modules.omapi.rst.txtsalt.modules.openbsd_sysctl.rst.txtsalt.modules.openbsdpkg.rst.txtsalt.modules.openbsdrcctl_service.rst.txtsalt.modules.openbsdservice.rst.txtsalt.modules.openscap.rst.txtsalt.modules.openstack_config.rst.txtsalt.modules.openstack_mng.rst.txtsalt.modules.openvswitch.rst.txtsalt.modules.opkg.rst.txtsalt.modules.opsgenie.rst.txtsalt.modules.oracle.rst.txtsalt.modules.osquery.rst.txtsalt.modules.out.rst.txtsalt.modules.pacmanpkg.rst.txtsalt.modules.pagerduty.rst.txtsalt.modules.pagerduty_util.rst.txtsalt.modules.pam.rst.txtsalt.modules.panos.rst.txtsalt.modules.parallels.rst.txtsalt.modules.parted_partition.rst.txtsalt.modules.pcs.rst.txtsalt.modules.pdbedit.rst.txtsalt.modules.pecl.rst.txtsalt.modules.peeringdb.rst.txtsalt.modules.pf.rst.txtsalt.modules.philips_hue.rst.txtsalt.modules.pillar.rst.txtsalt.modules.pip.rst.txtsalt.modules.pkg.rst.txtsalt.modules.pkg_resource.rst.txtsalt.modules.pkgin.rst.txtsalt.modules.pkgng.rst.txtsalt.modules.pkgutil.rst.txtsalt.modules.portage_config.rst.txtsalt.modules.postfix.rst.txtsalt.modules.postgres.rst.txtsalt.modules.poudriere.rst.txtsalt.modules.powerpath.rst.txtsalt.modules.proxy.rst.txtsalt.modules.ps.rst.txtsalt.modules.publish.rst.txtsalt.modules.puppet.rst.txtsalt.modules.purefa.rst.txtsalt.modules.purefb.rst.txtsalt.modules.pushbullet.rst.txtsalt.modules.pushover_notify.rst.txtsalt.modules.pw_group.rst.txtsalt.modules.pw_user.rst.txtsalt.modules.pyenv.rst.txtsalt.modules.qemu_img.rst.txtsalt.modules.qemu_nbd.rst.txtsalt.modules.quota.rst.txtsalt.modules.rabbitmq.rst.txtsalt.modules.rallydev.rst.txtsalt.modules.random_org.rst.txtsalt.modules.rbac_solaris.rst.txtsalt.modules.rbenv.rst.txtsalt.modules.rdp.rst.txtsalt.modules.rebootmgr.rst.txtsalt.modules.redismod.rst.txtsalt.modules.reg.rst.txtsalt.modules.rest_pkg.rst.txtsalt.modules.rest_sample_utils.rst.txtsalt.modules.rest_service.rst.txtsalt.modules.restartcheck.rst.txtsalt.modules.ret.rst.txtsalt.modules.rh_ip.rst.txtsalt.modules.rh_service.rst.txtsalt.modules.riak.rst.txtsalt.modules.rpm_lowpkg.rst.txtsalt.modules.rpmbuild_pkgbuild.rst.txtsalt.modules.rsync.rst.txtsalt.modules.runit.rst.txtsalt.modules.rvm.rst.txtsalt.modules.s3.rst.txtsalt.modules.s6.rst.txtsalt.modules.salt_proxy.rst.txtsalt.modules.salt_version.rst.txtsalt.modules.saltcheck.rst.txtsalt.modules.saltcloudmod.rst.txtsalt.modules.saltsupport.rst.txtsalt.modules.saltutil.rst.txtsalt.modules.schedule.rst.txtsalt.modules.scp_mod.rst.txtsalt.modules.scsi.rst.txtsalt.modules.sdb.rst.txtsalt.modules.seed.rst.txtsalt.modules.selinux.rst.txtsalt.modules.sensehat.rst.txtsalt.modules.sensors.rst.txtsalt.modules.serverdensity_device.rst.txtsalt.modules.service.rst.txtsalt.modules.servicenow.rst.txtsalt.modules.shadow.rst.txtsalt.modules.slack_notify.rst.txtsalt.modules.slackware_service.rst.txtsalt.modules.slsutil.rst.txtsalt.modules.smartos_imgadm.rst.txtsalt.modules.smartos_nictagadm.rst.txtsalt.modules.smartos_virt.rst.txtsalt.modules.smartos_vmadm.rst.txtsalt.modules.smbios.rst.txtsalt.modules.smf_service.rst.txtsalt.modules.smtp.rst.txtsalt.modules.snapper.rst.txtsalt.modules.solaris_fmadm.rst.txtsalt.modules.solaris_group.rst.txtsalt.modules.solaris_shadow.rst.txtsalt.modules.solaris_system.rst.txtsalt.modules.solaris_user.rst.txtsalt.modules.solarisipspkg.rst.txtsalt.modules.solarispkg.rst.txtsalt.modules.solr.rst.txtsalt.modules.solrcloud.rst.txtsalt.modules.splunk.rst.txtsalt.modules.splunk_search.rst.txtsalt.modules.sqlite3.rst.txtsalt.modules.ssh.rst.txtsalt.modules.ssh_pkg.rst.txtsalt.modules.ssh_service.rst.txtsalt.modules.state.rst.txtsalt.modules.status.rst.txtsalt.modules.statuspage.rst.txtsalt.modules.supervisord.rst.txtsalt.modules.suse_apache.rst.txtsalt.modules.svn.rst.txtsalt.modules.swarm.rst.txtsalt.modules.swift.rst.txtsalt.modules.sysbench.rst.txtsalt.modules.sysctl.rst.txtsalt.modules.sysfs.rst.txtsalt.modules.syslog_ng.rst.txtsalt.modules.sysmod.rst.txtsalt.modules.sysrc.rst.txtsalt.modules.system.rst.txtsalt.modules.system_profiler.rst.txtsalt.modules.systemd_service.rst.txtsalt.modules.telegram.rst.txtsalt.modules.telemetry.rst.txtsalt.modules.temp.rst.txtsalt.modules.test.rst.txtsalt.modules.test_virtual.rst.txtsalt.modules.testinframod.rst.txtsalt.modules.textfsm_mod.rst.txtsalt.modules.timezone.rst.txtsalt.modules.tls.rst.txtsalt.modules.tomcat.rst.txtsalt.modules.trafficserver.rst.txtsalt.modules.transactional_update.rst.txtsalt.modules.travisci.rst.txtsalt.modules.tuned.rst.txtsalt.modules.twilio_notify.rst.txtsalt.modules.udev.rst.txtsalt.modules.upstart_service.rst.txtsalt.modules.uptime.rst.txtsalt.modules.user.rst.txtsalt.modules.useradd.rst.txtsalt.modules.uwsgi.rst.txtsalt.modules.vagrant.rst.txtsalt.modules.varnish.rst.txtsalt.modules.vault.rst.txtsalt.modules.vbox_guest.rst.txtsalt.modules.vboxmanage.rst.txtsalt.modules.vcenter.rst.txtsalt.modules.victorops.rst.txtsalt.modules.virt.rst.txtsalt.modules.virtualenv_mod.rst.txtsalt.modules.vmctl.rst.txtsalt.modules.vsphere.rst.txtsalt.modules.webutil.rst.txtsalt.modules.win_auditpol.rst.txtsalt.modules.win_autoruns.rst.txtsalt.modules.win_certutil.rst.txtsalt.modules.win_dacl.rst.txtsalt.modules.win_disk.rst.txtsalt.modules.win_dism.rst.txtsalt.modules.win_dns_client.rst.txtsalt.modules.win_dsc.rst.txtsalt.modules.win_file.rst.txtsalt.modules.win_firewall.rst.txtsalt.modules.win_groupadd.rst.txtsalt.modules.win_iis.rst.txtsalt.modules.win_ip.rst.txtsalt.modules.win_lgpo.rst.txtsalt.modules.win_license.rst.txtsalt.modules.win_network.rst.txtsalt.modules.win_ntp.rst.txtsalt.modules.win_path.rst.txtsalt.modules.win_pkg.rst.txtsalt.modules.win_pki.rst.txtsalt.modules.win_powercfg.rst.txtsalt.modules.win_psget.rst.txtsalt.modules.win_servermanager.rst.txtsalt.modules.win_service.rst.txtsalt.modules.win_shadow.rst.txtsalt.modules.win_smtp_server.rst.txtsalt.modules.win_snmp.rst.txtsalt.modules.win_status.rst.txtsalt.modules.win_system.rst.txtsalt.modules.win_task.rst.txtsalt.modules.win_timezone.rst.txtsalt.modules.win_useradd.rst.txtsalt.modules.win_wua.rst.txtsalt.modules.win_wusa.rst.txtsalt.modules.winrepo.rst.txtsalt.modules.wordpress.rst.txtsalt.modules.x509.rst.txtsalt.modules.xapi_virt.rst.txtsalt.modules.xbpspkg.rst.txtsalt.modules.xfs.rst.txtsalt.modules.xml.rst.txtsalt.modules.xmpp.rst.txtsalt.modules.yumpkg.rst.txtsalt.modules.zabbix.rst.txtsalt.modules.zcbuildout.rst.txtsalt.modules.zenoss.rst.txtsalt.modules.zfs.rst.txtsalt.modules.zk_concurrency.rst.txtsalt.modules.znc.rst.txtsalt.modules.zoneadm.rst.txtsalt.modules.zonecfg.rst.txtsalt.modules.zookeeper.rst.txtsalt.modules.zpool.rst.txtsalt.modules.zypperpkg.rst.txtindex.rst.txtnetapiallindex.rst.txtsalt.netapi.rest_cherrypy.rst.txtsalt.netapi.rest_tornado.rst.txtsalt.netapi.rest_wsgi.rst.txtoutputallindex.rst.txtsalt.output.dson.rst.txtsalt.output.highstate.rst.txtsalt.output.json_out.rst.txtsalt.output.key.rst.txtsalt.output.nested.rst.txtsalt.output.newline_values_only.rst.txtsalt.output.no_out_quiet.rst.txtsalt.output.no_return.rst.txtsalt.output.overstatestage.rst.txtsalt.output.pony.rst.txtsalt.output.pprint_out.rst.txtsalt.output.profile.rst.txtsalt.output.progress.rst.txtsalt.output.raw.rst.txtsalt.output.table_out.rst.txtsalt.output.txt.rst.txtsalt.output.virt_query.rst.txtsalt.output.yaml_out.rst.txtpeer.rst.txtpillarallindex.rst.txtsalt.pillar.azureblob.rst.txtsalt.pillar.cmd_json.rst.txtsalt.pillar.cmd_yaml.rst.txtsalt.pillar.cmd_yamlex.rst.txtsalt.pillar.cobbler.rst.txtsalt.pillar.confidant.rst.txtsalt.pillar.consul_pillar.rst.txtsalt.pillar.csvpillar.rst.txtsalt.pillar.digicert.rst.txtsalt.pillar.django_orm.rst.txtsalt.pillar.ec2_pillar.rst.txtsalt.pillar.etcd_pillar.rst.txtsalt.pillar.extra_minion_data_in_pillar.rst.txtsalt.pillar.file_tree.rst.txtsalt.pillar.foreman.rst.txtsalt.pillar.git_pillar.rst.txtsalt.pillar.gpg.rst.txtsalt.pillar.hg_pillar.rst.txtsalt.pillar.hiera.rst.txtsalt.pillar.http_json.rst.txtsalt.pillar.http_yaml.rst.txtsalt.pillar.libvirt.rst.txtsalt.pillar.makostack.rst.txtsalt.pillar.mongo.rst.txtsalt.pillar.mysql.rst.txtsalt.pillar.nacl.rst.txtsalt.pillar.netbox.rst.txtsalt.pillar.neutron.rst.txtsalt.pillar.nodegroups.rst.txtsalt.pillar.pepa.rst.txtsalt.pillar.pillar_ldap.rst.txtsalt.pillar.postgres.rst.txtsalt.pillar.puppet.rst.txtsalt.pillar.reclass_adapter.rst.txtsalt.pillar.redismod.rst.txtsalt.pillar.rethinkdb_pillar.rst.txtsalt.pillar.s3.rst.txtsalt.pillar.saltclass.rst.txtsalt.pillar.sql_base.rst.txtsalt.pillar.sqlcipher.rst.txtsalt.pillar.sqlite3.rst.txtsalt.pillar.stack.rst.txtsalt.pillar.svn_pillar.rst.txtsalt.pillar.varstack_pillar.rst.txtsalt.pillar.vault.rst.txtsalt.pillar.venafi.rst.txtsalt.pillar.virtkey.rst.txtsalt.pillar.vmware_pillar.rst.txtindex.rst.txtproxyallindex.rst.txtsalt.proxy.arista_pyeapi.rst.txtsalt.proxy.chronos.rst.txtsalt.proxy.cimc.rst.txtsalt.proxy.cisconso.rst.txtsalt.proxy.docker.rst.txtsalt.proxy.dummy.rst.txtsalt.proxy.esxcluster.rst.txtsalt.proxy.esxdatacenter.rst.txtsalt.proxy.esxi.rst.txtsalt.proxy.esxvm.rst.txtsalt.proxy.fx2.rst.txtsalt.proxy.junos.rst.txtsalt.proxy.marathon.rst.txtsalt.proxy.napalm.rst.txtsalt.proxy.netmiko_px.rst.txtsalt.proxy.nxos.rst.txtsalt.proxy.nxos_api.rst.txtsalt.proxy.panos.rst.txtsalt.proxy.philips_hue.rst.txtsalt.proxy.rest_sample.rst.txtsalt.proxy.ssh_sample.rst.txtsalt.proxy.vcenter.rst.txtpublisheracl.rst.txtpython-api.rst.txtqueuesallindex.rst.txtsalt.queues.pgjsonb_queue.rst.txtsalt.queues.sqlite_queue.rst.txtrenderersallindex.rst.txtsalt.renderers.aws_kms.rst.txtsalt.renderers.cheetah.rst.txtsalt.renderers.dson.rst.txtsalt.renderers.genshi.rst.txtsalt.renderers.gpg.rst.txtsalt.renderers.hjson.rst.txtsalt.renderers.jinja.rst.txtsalt.renderers.json.rst.txtsalt.renderers.json5.rst.txtsalt.renderers.mako.rst.txtsalt.renderers.msgpack.rst.txtsalt.renderers.nacl.rst.txtsalt.renderers.pass.rst.txtsalt.renderers.py.rst.txtsalt.renderers.pydsl.rst.txtsalt.renderers.pyobjects.rst.txtsalt.renderers.stateconf.rst.txtsalt.renderers.toml.rst.txtsalt.renderers.wempy.rst.txtsalt.renderers.yaml.rst.txtsalt.renderers.yamlex.rst.txtindex.rst.txtreturnersallindex.rst.txtsalt.returners.appoptics_return.rst.txtsalt.returners.carbon_return.rst.txtsalt.returners.cassandra_cql_return.rst.txtsalt.returners.cassandra_return.rst.txtsalt.returners.couchbase_return.rst.txtsalt.returners.couchdb_return.rst.txtsalt.returners.django_return.rst.txtsalt.returners.elasticsearch_return.rst.txtsalt.returners.etcd_return.rst.txtsalt.returners.highstate_return.rst.txtsalt.returners.influxdb_return.rst.txtsalt.returners.kafka_return.rst.txtsalt.returners.librato_return.rst.txtsalt.returners.local.rst.txtsalt.returners.local_cache.rst.txtsalt.returners.mattermost_returner.rst.txtsalt.returners.memcache_return.rst.txtsalt.returners.mongo_future_return.rst.txtsalt.returners.mongo_return.rst.txtsalt.returners.multi_returner.rst.txtsalt.returners.mysql.rst.txtsalt.returners.nagios_nrdp_return.rst.txtsalt.returners.odbc.rst.txtsalt.returners.pgjsonb.rst.txtsalt.returners.postgres.rst.txtsalt.returners.postgres_local_cache.rst.txtsalt.returners.pushover_returner.rst.txtsalt.returners.rawfile_json.rst.txtsalt.returners.redis_return.rst.txtsalt.returners.sentry_return.rst.txtsalt.returners.slack_returner.rst.txtsalt.returners.slack_webhook_return.rst.txtsalt.returners.sms_return.rst.txtsalt.returners.smtp_return.rst.txtsalt.returners.splunk.rst.txtsalt.returners.sqlite3_return.rst.txtsalt.returners.syslog_return.rst.txtsalt.returners.telegram_return.rst.txtsalt.returners.xmpp_return.rst.txtsalt.returners.zabbix_return.rst.txtindex.rst.txtrosterallindex.rst.txtsalt.roster.ansible.rst.txtsalt.roster.cache.rst.txtsalt.roster.cloud.rst.txtsalt.roster.clustershell.rst.txtsalt.roster.flat.rst.txtsalt.roster.range.rst.txtsalt.roster.scan.rst.txtsalt.roster.sshconfig.rst.txtsalt.roster.terraform.rst.txtrunnersallindex.rst.txtsalt.runners.asam.rst.txtsalt.runners.auth.rst.txtsalt.runners.bgp.rst.txtsalt.runners.cache.rst.txtsalt.runners.cloud.rst.txtsalt.runners.config.rst.txtsalt.runners.ddns.rst.txtsalt.runners.digicertapi.rst.txtsalt.runners.doc.rst.txtsalt.runners.drac.rst.txtsalt.runners.error.rst.txtsalt.runners.event.rst.txtsalt.runners.f5.rst.txtsalt.runners.fileserver.rst.txtsalt.runners.git_pillar.rst.txtsalt.runners.http.rst.txtsalt.runners.jobs.rst.txtsalt.runners.launchd.rst.txtsalt.runners.lxc.rst.txtsalt.runners.manage.rst.txtsalt.runners.mattermost.rst.txtsalt.runners.mine.rst.txtsalt.runners.nacl.rst.txtsalt.runners.net.rst.txtsalt.runners.network.rst.txtsalt.runners.pagerduty.rst.txtsalt.runners.pillar.rst.txtsalt.runners.pkg.rst.txtsalt.runners.queue.rst.txtsalt.runners.reactor.rst.txtsalt.runners.salt.rst.txtsalt.runners.saltutil.rst.txtsalt.runners.sdb.rst.txtsalt.runners.smartos_vmadm.rst.txtsalt.runners.spacewalk.rst.txtsalt.runners.ssh.rst.txtsalt.runners.state.rst.txtsalt.runners.survey.rst.txtsalt.runners.test.rst.txtsalt.runners.thin.rst.txtsalt.runners.vault.rst.txtsalt.runners.venafiapi.rst.txtsalt.runners.virt.rst.txtsalt.runners.vistara.rst.txtsalt.runners.winrepo.rst.txtindex.rst.txtsdballindex.rst.txtsalt.sdb.cache.rst.txtsalt.sdb.confidant.rst.txtsalt.sdb.consul.rst.txtsalt.sdb.couchdb.rst.txtsalt.sdb.env.rst.txtsalt.sdb.etcd_db.rst.txtsalt.sdb.keyring_db.rst.txtsalt.sdb.memcached.rst.txtsalt.sdb.redis_sdb.rst.txtsalt.sdb.rest.rst.txtsalt.sdb.sqlite3.rst.txtsalt.sdb.tism.rst.txtsalt.sdb.vault.rst.txtsalt.sdb.yaml.rst.txtserializersallindex.rst.txtsalt.serializers.configparser.rst.txtsalt.serializers.json.rst.txtsalt.serializers.msgpack.rst.txtsalt.serializers.plist.rst.txtsalt.serializers.python.rst.txtsalt.serializers.toml.rst.txtsalt.serializers.yaml.rst.txtsalt.serializers.yamlex.rst.txtstatesaggregate.rst.txtallindex.rst.txtsalt.states.acme.rst.txtsalt.states.alias.rst.txtsalt.states.alternatives.rst.txtsalt.states.ansiblegate.rst.txtsalt.states.apache.rst.txtsalt.states.apache_conf.rst.txtsalt.states.apache_module.rst.txtsalt.states.apache_site.rst.txtsalt.states.aptpkg.rst.txtsalt.states.archive.rst.txtsalt.states.artifactory.rst.txtsalt.states.at.rst.txtsalt.states.augeas.rst.txtsalt.states.aws_sqs.rst.txtsalt.states.azurearm_compute.rst.txtsalt.states.azurearm_dns.rst.txtsalt.states.azurearm_network.rst.txtsalt.states.azurearm_resource.rst.txtsalt.states.beacon.rst.txtsalt.states.bigip.rst.txtsalt.states.blockdev.rst.txtsalt.states.boto3_elasticache.rst.txtsalt.states.boto3_elasticsearch.rst.txtsalt.states.boto3_route53.rst.txtsalt.states.boto3_sns.rst.txtsalt.states.boto_apigateway.rst.txtsalt.states.boto_asg.rst.txtsalt.states.boto_cfn.rst.txtsalt.states.boto_cloudfront.rst.txtsalt.states.boto_cloudtrail.rst.txtsalt.states.boto_cloudwatch_alarm.rst.txtsalt.states.boto_cloudwatch_event.rst.txtsalt.states.boto_cognitoidentity.rst.txtsalt.states.boto_datapipeline.rst.txtsalt.states.boto_dynamodb.rst.txtsalt.states.boto_ec2.rst.txtsalt.states.boto_elasticache.rst.txtsalt.states.boto_elasticsearch_domain.rst.txtsalt.states.boto_elb.rst.txtsalt.states.boto_elbv2.rst.txtsalt.states.boto_iam.rst.txtsalt.states.boto_iam_role.rst.txtsalt.states.boto_iot.rst.txtsalt.states.boto_kinesis.rst.txtsalt.states.boto_kms.rst.txtsalt.states.boto_lambda.rst.txtsalt.states.boto_lc.rst.txtsalt.states.boto_rds.rst.txtsalt.states.boto_route53.rst.txtsalt.states.boto_s3.rst.txtsalt.states.boto_s3_bucket.rst.txtsalt.states.boto_secgroup.rst.txtsalt.states.boto_sns.rst.txtsalt.states.boto_sqs.rst.txtsalt.states.boto_vpc.rst.txtsalt.states.bower.rst.txtsalt.states.btrfs.rst.txtsalt.states.cabal.rst.txtsalt.states.ceph.rst.txtsalt.states.chef.rst.txtsalt.states.chocolatey.rst.txtsalt.states.chronos_job.rst.txtsalt.states.cimc.rst.txtsalt.states.cisconso.rst.txtsalt.states.cloud.rst.txtsalt.states.cmd.rst.txtsalt.states.composer.rst.txtsalt.states.cron.rst.txtsalt.states.cryptdev.rst.txtsalt.states.csf.rst.txtsalt.states.cyg.rst.txtsalt.states.ddns.rst.txtsalt.states.debconfmod.rst.txtsalt.states.dellchassis.rst.txtsalt.states.disk.rst.txtsalt.states.docker_container.rst.txtsalt.states.docker_image.rst.txtsalt.states.docker_network.rst.txtsalt.states.docker_volume.rst.txtsalt.states.drac.rst.txtsalt.states.dvs.rst.txtsalt.states.elasticsearch.rst.txtsalt.states.elasticsearch_index.rst.txtsalt.states.elasticsearch_index_template.rst.txtsalt.states.environ.rst.txtsalt.states.eselect.rst.txtsalt.states.esxcluster.rst.txtsalt.states.esxdatacenter.rst.txtsalt.states.esxi.rst.txtsalt.states.esxvm.rst.txtsalt.states.etcd_mod.rst.txtsalt.states.ethtool.rst.txtsalt.states.event.rst.txtsalt.states.file.rst.txtsalt.states.firewall.rst.txtsalt.states.firewalld.rst.txtsalt.states.gem.rst.txtsalt.states.git.rst.txtsalt.states.github.rst.txtsalt.states.glance.rst.txtsalt.states.glance_image.rst.txtsalt.states.glassfish.rst.txtsalt.states.glusterfs.rst.txtsalt.states.gnomedesktop.rst.txtsalt.states.gpg.rst.txtsalt.states.grafana.rst.txtsalt.states.grafana4_dashboard.rst.txtsalt.states.grafana4_datasource.rst.txtsalt.states.grafana4_org.rst.txtsalt.states.grafana4_user.rst.txtsalt.states.grafana_dashboard.rst.txtsalt.states.grafana_datasource.rst.txtsalt.states.grains.rst.txtsalt.states.group.rst.txtsalt.states.heat.rst.txtsalt.states.helm.rst.txtsalt.states.hg.rst.txtsalt.states.highstate_doc.rst.txtsalt.states.host.rst.txtsalt.states.http.rst.txtsalt.states.icinga2.rst.txtsalt.states.idem.rst.txtsalt.states.ifttt.rst.txtsalt.states.incron.rst.txtsalt.states.influxdb08_database.rst.txtsalt.states.influxdb08_user.rst.txtsalt.states.influxdb_continuous_query.rst.txtsalt.states.influxdb_database.rst.txtsalt.states.influxdb_retention_policy.rst.txtsalt.states.influxdb_user.rst.txtsalt.states.infoblox_a.rst.txtsalt.states.infoblox_cname.rst.txtsalt.states.infoblox_host_record.rst.txtsalt.states.infoblox_range.rst.txtsalt.states.ini_manage.rst.txtsalt.states.ipmi.rst.txtsalt.states.ipset.rst.txtsalt.states.iptables.rst.txtsalt.states.jboss7.rst.txtsalt.states.jenkins.rst.txtsalt.states.junos.rst.txtsalt.states.kapacitor.rst.txtsalt.states.kernelpkg.rst.txtsalt.states.keyboard.rst.txtsalt.states.keystone.rst.txtsalt.states.keystone_domain.rst.txtsalt.states.keystone_endpoint.rst.txtsalt.states.keystone_group.rst.txtsalt.states.keystone_project.rst.txtsalt.states.keystone_role.rst.txtsalt.states.keystone_role_grant.rst.txtsalt.states.keystone_service.rst.txtsalt.states.keystone_user.rst.txtsalt.states.keystore.rst.txtsalt.states.kmod.rst.txtsalt.states.kubernetes.rst.txtsalt.states.layman.rst.txtsalt.states.ldap.rst.txtsalt.states.libcloud_dns.rst.txtsalt.states.libcloud_loadbalancer.rst.txtsalt.states.libcloud_storage.rst.txtsalt.states.linux_acl.rst.txtsalt.states.locale.rst.txtsalt.states.logadm.rst.txtsalt.states.logrotate.rst.txtsalt.states.loop.rst.txtsalt.states.lvm.rst.txtsalt.states.lvs_server.rst.txtsalt.states.lvs_service.rst.txtsalt.states.lxc.rst.txtsalt.states.lxd.rst.txtsalt.states.lxd_container.rst.txtsalt.states.lxd_image.rst.txtsalt.states.lxd_profile.rst.txtsalt.states.mac_assistive.rst.txtsalt.states.mac_keychain.rst.txtsalt.states.mac_xattr.rst.txtsalt.states.macdefaults.rst.txtsalt.states.macpackage.rst.txtsalt.states.makeconf.rst.txtsalt.states.marathon_app.rst.txtsalt.states.mdadm_raid.rst.txtsalt.states.memcached.rst.txtsalt.states.modjk.rst.txtsalt.states.modjk_worker.rst.txtsalt.states.module.rst.txtsalt.states.mongodb_database.rst.txtsalt.states.mongodb_user.rst.txtsalt.states.monit.rst.txtsalt.states.mount.rst.txtsalt.states.mssql_database.rst.txtsalt.states.mssql_login.rst.txtsalt.states.mssql_role.rst.txtsalt.states.mssql_user.rst.txtsalt.states.msteams.rst.txtsalt.states.mysql_database.rst.txtsalt.states.mysql_grants.rst.txtsalt.states.mysql_query.rst.txtsalt.states.mysql_user.rst.txtsalt.states.net_napalm_yang.rst.txtsalt.states.netacl.rst.txtsalt.states.netconfig.rst.txtsalt.states.netntp.rst.txtsalt.states.netsnmp.rst.txtsalt.states.netusers.rst.txtsalt.states.network.rst.txtsalt.states.neutron_network.rst.txtsalt.states.neutron_secgroup.rst.txtsalt.states.neutron_secgroup_rule.rst.txtsalt.states.neutron_subnet.rst.txtsalt.states.nexus.rst.txtsalt.states.nfs_export.rst.txtsalt.states.nftables.rst.txtsalt.states.npm.rst.txtsalt.states.ntp.rst.txtsalt.states.nxos.rst.txtsalt.states.nxos_upgrade.rst.txtsalt.states.openstack_config.rst.txtsalt.states.openvswitch_bridge.rst.txtsalt.states.openvswitch_port.rst.txtsalt.states.opsgenie.rst.txtsalt.states.pagerduty.rst.txtsalt.states.pagerduty_escalation_policy.rst.txtsalt.states.pagerduty_schedule.rst.txtsalt.states.pagerduty_service.rst.txtsalt.states.pagerduty_user.rst.txtsalt.states.panos.rst.txtsalt.states.pbm.rst.txtsalt.states.pcs.rst.txtsalt.states.pdbedit.rst.txtsalt.states.pecl.rst.txtsalt.states.pip_state.rst.txtsalt.states.pkg.rst.txtsalt.states.pkgbuild.rst.txtsalt.states.pkgng.rst.txtsalt.states.pkgrepo.rst.txtsalt.states.portage_config.rst.txtsalt.states.ports.rst.txtsalt.states.postgres_cluster.rst.txtsalt.states.postgres_database.rst.txtsalt.states.postgres_extension.rst.txtsalt.states.postgres_group.rst.txtsalt.states.postgres_initdb.rst.txtsalt.states.postgres_language.rst.txtsalt.states.postgres_privileges.rst.txtsalt.states.postgres_schema.rst.txtsalt.states.postgres_tablespace.rst.txtsalt.states.postgres_user.rst.txtsalt.states.powerpath.rst.txtsalt.states.probes.rst.txtsalt.states.process.rst.txtsalt.states.proxy.rst.txtsalt.states.pushover.rst.txtsalt.states.pyenv.rst.txtsalt.states.pyrax_queues.rst.txtsalt.states.quota.rst.txtsalt.states.rabbitmq_cluster.rst.txtsalt.states.rabbitmq_plugin.rst.txtsalt.states.rabbitmq_policy.rst.txtsalt.states.rabbitmq_upstream.rst.txtsalt.states.rabbitmq_user.rst.txtsalt.states.rabbitmq_vhost.rst.txtsalt.states.rbac_solaris.rst.txtsalt.states.rbenv.rst.txtsalt.states.rdp.rst.txtsalt.states.redismod.rst.txtsalt.states.reg.rst.txtsalt.states.rsync.rst.txtsalt.states.rvm.rst.txtsalt.states.salt_proxy.rst.txtsalt.states.saltmod.rst.txtsalt.states.saltsupport.rst.txtsalt.states.saltutil.rst.txtsalt.states.schedule.rst.txtsalt.states.selinux.rst.txtsalt.states.serverdensity_device.rst.txtsalt.states.service.rst.txtsalt.states.slack.rst.txtsalt.states.smartos.rst.txtsalt.states.smtp.rst.txtsalt.states.snapper.rst.txtsalt.states.solrcloud.rst.txtsalt.states.splunk.rst.txtsalt.states.splunk_search.rst.txtsalt.states.sqlite3.rst.txtsalt.states.ssh_auth.rst.txtsalt.states.ssh_known_hosts.rst.txtsalt.states.stateconf.rst.txtsalt.states.status.rst.txtsalt.states.statuspage.rst.txtsalt.states.supervisord.rst.txtsalt.states.svn.rst.txtsalt.states.sysctl.rst.txtsalt.states.syslog_ng.rst.txtsalt.states.sysrc.rst.txtsalt.states.telemetry_alert.rst.txtsalt.states.test.rst.txtsalt.states.testinframod.rst.txtsalt.states.timezone.rst.txtsalt.states.tls.rst.txtsalt.states.tomcat.rst.txtsalt.states.trafficserver.rst.txtsalt.states.tuned.rst.txtsalt.states.uptime.rst.txtsalt.states.user.rst.txtsalt.states.vagrant.rst.txtsalt.states.vault.rst.txtsalt.states.vbox_guest.rst.txtsalt.states.victorops.rst.txtsalt.states.virt.rst.txtsalt.states.virtualenv_mod.rst.txtsalt.states.webutil.rst.txtsalt.states.win_certutil.rst.txtsalt.states.win_dacl.rst.txtsalt.states.win_dism.rst.txtsalt.states.win_dns_client.rst.txtsalt.states.win_firewall.rst.txtsalt.states.win_iis.rst.txtsalt.states.win_lgpo.rst.txtsalt.states.win_license.rst.txtsalt.states.win_network.rst.txtsalt.states.win_path.rst.txtsalt.states.win_pki.rst.txtsalt.states.win_powercfg.rst.txtsalt.states.win_servermanager.rst.txtsalt.states.win_smtp_server.rst.txtsalt.states.win_snmp.rst.txtsalt.states.win_system.rst.txtsalt.states.win_wua.rst.txtsalt.states.win_wusa.rst.txtsalt.states.winrepo.rst.txtsalt.states.wordpress.rst.txtsalt.states.x509.rst.txtsalt.states.xml.rst.txtsalt.states.xmpp.rst.txtsalt.states.zabbix_action.rst.txtsalt.states.zabbix_host.rst.txtsalt.states.zabbix_hostgroup.rst.txtsalt.states.zabbix_mediatype.rst.txtsalt.states.zabbix_template.rst.txtsalt.states.zabbix_user.rst.txtsalt.states.zabbix_usergroup.rst.txtsalt.states.zabbix_usermacro.rst.txtsalt.states.zabbix_valuemap.rst.txtsalt.states.zcbuildout.rst.txtsalt.states.zenoss.rst.txtsalt.states.zfs.rst.txtsalt.states.zk_concurrency.rst.txtsalt.states.zone.rst.txtsalt.states.zookeeper.rst.txtsalt.states.zpool.rst.txtaltering_states.rst.txtbackup_mode.rst.txtcompiler_ordering.rst.txtextend.rst.txtfailhard.rst.txtglobal_state_arguments.rst.txthighstate.rst.txtinclude.rst.txtindex.rst.txtlayers.rst.txtmaster_side.rst.txtordering.rst.txtparallel.rst.txtproviders.rst.txtrequisites.rst.txtstartup.rst.txttesting.rst.txttop.rst.txtvars.rst.txtwriting.rst.txtthoriumallindex.rst.txtsalt.thorium.calc.rst.txtsalt.thorium.check.rst.txtsalt.thorium.file.rst.txtsalt.thorium.key.rst.txtsalt.thorium.local.rst.txtsalt.thorium.reg.rst.txtsalt.thorium.runner.rst.txtsalt.thorium.status.rst.txtsalt.thorium.timer.rst.txtsalt.thorium.wheel.rst.txttokensallindex.rst.txtsalt.tokens.localfs.rst.txtsalt.tokens.rediscluster.rst.txttopsallindex.rst.txtsalt.tops.cobbler.rst.txtsalt.tops.ext_nodes.rst.txtsalt.tops.mongo.rst.txtsalt.tops.reclass_adapter.rst.txtsalt.tops.saltclass.rst.txtsalt.tops.varstack_top.rst.txtindex.rst.txtwheelallindex.rst.txtsalt.wheel.config.rst.txtsalt.wheel.error.rst.txtsalt.wheel.file_roots.rst.txtsalt.wheel.key.rst.txtsalt.wheel.minions.rst.txtsalt.wheel.pillar_roots.rst.txtsecurityindex.rst.txttopicsapi.rst.txtbeaconsindex.rst.txtbest_practices.rst.txtblackoutindex.rst.txtcacheindex.rst.txtcloudaction.rst.txtaliyun.rst.txtaws.rst.txtazure.rst.txtazurearm.rst.txtbasic.rst.txtcloud.rst.txtcloudstack.rst.txtconfig.rst.txtdeploy.rst.txtdigitalocean.rst.txtdimensiondata.rst.txtfeatures.rst.txtfunction.rst.txtgce.rst.txtgogrid.rst.txthpcloud.rst.txtindex.rst.txtinstallindex.rst.txtjoyent.rst.txtlibvirt.rst.txtlinode.rst.txtlxc.rst.txtmap.rst.txtmisc.rst.txtoneandone.rst.txtopennebula.rst.txtopenstack.rst.txtparallels.rst.txtprofiles.rst.txtprofitbricks.rst.txtproxmox.rst.txtqs.rst.txtreactor.rst.txtreleases0.6.0.rst.txt0.7.0.rst.txt0.8.0.rst.txt0.8.1.rst.txt0.8.2.rst.txt0.8.3.rst.txt0.8.4.rst.txt0.8.5.rst.txt0.8.6.rst.txt0.8.7.rst.txt0.8.9.rst.txtindex.rst.txtsalt.rst.txtsaltify.rst.txtscaleway.rst.txtsoftlayer.rst.txttencentcloud.rst.txttroubleshooting.rst.txtvagrant.rst.txtvexxhost.rst.txtvirtualbox.rst.txtvmware.rst.txtwindows.rst.txtxen.rst.txtconfigurationindex.rst.txtdevelopmentarchitecture.rst.txtchangelog.rst.txtcontributing.rst.txtconventionsdocumentation.rst.txtformulas.rst.txtindex.rst.txtpackaging.rst.txtrelease.rst.txtstyle.rst.txtdeprecations.rst.txtextendindex.rst.txtfaq-py2-deprecation.rst.txtgitindex.rst.txthacking.rst.txtindex.rst.txtlabels.rst.txtlogging.rst.txtmodulesconfiguration.rst.txtdeveloping.rst.txtexternal_pillars.rst.txtindex.rst.txtssh_wrapper.rst.txtpackage_providers.rst.txtpull_requests.rst.txtreporting_bugs.rst.txttestsindex.rst.txtintegration.rst.txtunit.rst.txttopology.rst.txttutorial.rst.txteauthaccess_control.rst.txtindex.rst.txtenginesindex.rst.txteventevents.rst.txtindex.rst.txtmaster_events.rst.txtexecutionindex.rst.txtremote_execution.rst.txtext_processesindex.rst.txtgrainsindex.rst.txthardening.rst.txthighavailabilityindex.rst.txtindex.rst.txtinstallationarch.rst.txtdebian.rst.txteos.rst.txtfedora.rst.txtfreebsd.rst.txtgentoo.rst.txtindex.rst.txtnxos.rst.txtopenbsd.rst.txtosx.rst.txtrhel.rst.txtsolaris.rst.txtsuse.rst.txtubuntu.rst.txtwindows.rst.txtjinjaindex.rst.txtjobsexternal_cache.rst.txtindex.rst.txtjob_cache.rst.txtmaster_topsindex.rst.txtmatchersindex.rst.txtmineindex.rst.txtnetapiindex.rst.txtwriting.rst.txtnetwork_automationindex.rst.txtorchestrateindex.rst.txtorchestrate_runner.rst.txtpillarindex.rst.txtprojectsindex.rst.txtproxyminionbeacon.rst.txtdemo.rst.txtindex.rst.txtssh.rst.txtstate.rst.txtreactorindex.rst.txtreleases0.10.0.rst.txt0.10.1.rst.txt0.10.2.rst.txt0.10.3.rst.txt0.10.4.rst.txt0.10.5.rst.txt0.11.0.rst.txt0.11.1.rst.txt0.12.0.rst.txt0.12.1.rst.txt0.13.0.rst.txt0.13.1.rst.txt0.13.2.rst.txt0.13.3.rst.txt0.14.0.rst.txt0.14.1.rst.txt0.15.0.rst.txt0.15.1.rst.txt0.15.2.rst.txt0.15.3.rst.txt0.16.0.rst.txt0.16.1.rst.txt0.16.2.rst.txt0.16.3.rst.txt0.16.4.rst.txt0.17.0.rst.txt0.17.1.rst.txt0.17.2.rst.txt0.17.3.rst.txt0.17.4.rst.txt0.17.5.rst.txt0.6.0.rst.txt0.7.0.rst.txt0.8.0.rst.txt0.8.7.rst.txt0.8.8.rst.txt0.8.9.rst.txt0.9.0.rst.txt0.9.1.rst.txt0.9.2.rst.txt0.9.3.rst.txt0.9.4.rst.txt0.9.5.rst.txt0.9.6.rst.txt0.9.7.rst.txt0.9.8.rst.txt0.9.9.rst.txt2014.1.0.rst.txt2014.1.1.rst.txt2014.1.10.rst.txt2014.1.11.rst.txt2014.1.12.rst.txt2014.1.13.rst.txt2014.1.2.rst.txt2014.1.3.rst.txt2014.1.4.rst.txt2014.1.5.rst.txt2014.1.6.rst.txt2014.1.7.rst.txt2014.1.8.rst.txt2014.1.9.rst.txt2014.7.0.rst.txt2014.7.1.rst.txt2014.7.2.rst.txt2014.7.3.rst.txt2014.7.4.rst.txt2014.7.5.rst.txt2014.7.6.rst.txt2014.7.7.rst.txt2014.7.8.rst.txt2014.7.9.rst.txt2015.5.0.rst.txt2015.5.1.rst.txt2015.5.10.rst.txt2015.5.11.rst.txt2015.5.2.rst.txt2015.5.3.rst.txt2015.5.4.rst.txt2015.5.5.rst.txt2015.5.6.rst.txt2015.5.7.rst.txt2015.5.8.rst.txt2015.5.9.rst.txt2015.8.0.rst.txt2015.8.1.rst.txt2015.8.10.rst.txt2015.8.11.rst.txt2015.8.12.rst.txt2015.8.13.rst.txt2015.8.2.rst.txt2015.8.3.rst.txt2015.8.4.rst.txt2015.8.5.rst.txt2015.8.7.rst.txt2015.8.8.2.rst.txt2015.8.8.rst.txt2015.8.9.rst.txt2016.11.0.rst.txt2016.11.1.rst.txt2016.11.10.rst.txt2016.11.2.rst.txt2016.11.3.rst.txt2016.11.4.rst.txt2016.11.5.rst.txt2016.11.6.rst.txt2016.11.7.rst.txt2016.11.8.rst.txt2016.11.9.rst.txt2016.3.0.rst.txt2016.3.1.rst.txt2016.3.2.rst.txt2016.3.3.rst.txt2016.3.4.rst.txt2016.3.5.rst.txt2016.3.6.rst.txt2016.3.7.rst.txt2016.3.8.rst.txt2016.3.9.rst.txt2017.7.0.rst.txt2017.7.1.rst.txt2017.7.2.rst.txt2017.7.3.rst.txt2017.7.4.rst.txt2017.7.5.rst.txt2017.7.6.rst.txt2017.7.7.rst.txt2017.7.8.rst.txt2017.7.9.rst.txt2018.3.0.rst.txt2018.3.1.rst.txt2018.3.2.rst.txt2018.3.3.rst.txt2018.3.4.rst.txt2018.3.5.rst.txt2019.2.0.rst.txt2019.2.1.rst.txt2019.2.2.rst.txt2019.2.3.rst.txt2019.2.4.rst.txt2019.2.5.rst.txt2019.2.6.rst.txt2019.2.7.rst.txt3000.1.rst.txt3000.2.rst.txt3000.3.rst.txt3000.4.rst.txt3000.5.rst.txt3000.rst.txt3001.1.rst.txt3001.2.rst.txt3001.3.rst.txt3001.rst.txt3002.1.rst.txt3002.2.rst.txt3002.rst.txt3003.rst.txtfluorine.rst.txtincludes2015.8.0.pull_list.rst.txtgit-2015.8.0.rst.txtproxy-2015.8.0.rst.txtindex.rst.txtreleasecandidate.rst.txtsaltapi0.5.0.rst.txt0.6.0.rst.txt0.7.0.rst.txt0.7.5.rst.txt0.8.0.rst.txt0.8.2.rst.txt0.8.3.rst.txt0.8.4.rst.txt2016.3.6.rst.txtindex.rst.txtversion_numbers.rst.txtreturn_codesindex.rst.txtsdbindex.rst.txtslotsindex.rst.txtsolarisindex.rst.txtsolaris-specific-behavior.rst.txtspmconfig.rst.txtdev.rst.txtindex.rst.txtmaster.rst.txtpackaging.rst.txtrepo.rst.txtspm_formula.rst.txtsshindex.rst.txtroster.rst.txtssh_ext_alternatives.rst.txtstatesindex.rst.txttargetingbatch.rst.txtcompound.rst.txtglobbing.rst.txtgrains.rst.txtindex.rst.txtipcidr.rst.txtnodegroups.rst.txtpillar.rst.txtrange.rst.txtthoriumindex.rst.txttopologyindex.rst.txtsyndic.rst.txttransportsindex.rst.txttcp.rst.txtzeromq.rst.txttroubleshootingindex.rst.txtmaster.rst.txtminion.rst.txtyaml_idiosyncrasies.rst.txttutorialsautoaccept_grains.rst.txtcloud_controller.rst.txtcron.rst.txtdocker_sls.rst.txtesky.rst.txtesxi_proxy_minion.rst.txtfirewall.rst.txtgitfs.rst.txthalite.rst.txthttp.rst.txtindex.rst.txtintro_scale.rst.txtjinja_to_execution_module.rst.txtlibcloud.rst.txtlxc.rst.txtminionfs.rst.txtmodules.rst.txtmultimaster.rst.txtmultimaster_pki.rst.txtpackaging_modules.rst.txtpillar.rst.txtpreseed_key.rst.txtquickstart.rst.txtrooted.rst.txtsalt_bootstrap.rst.txtstandalone_minion.rst.txtstarting_states.rst.txtstates_pt1.rst.txtstates_pt2.rst.txtstates_pt3.rst.txtstates_pt4.rst.txtstates_pt5.rst.txtsyslog_ng-state-usage.rst.txtwalkthrough.rst.txtwalkthrough_macosx.rst.txtwriting_tests.rst.txtusing_salt.rst.txtutilsindex.rst.txtvenafiindex.rst.txtvirtdisk.rst.txtindex.rst.txtnic.rst.txtwindowsindex.rst.txtwindows-package-manager.rst.txtwindows-specific-behavior.rst.txtyamlindex.rst.txt_staticbasic.cssclassic.csscloud-settings-inheritance.pngcssclose.pngcore.min.cssloading.gifnext.pngprev.pngwebhelp.min_v1.4.5.cssdoctools.jsdocumentation_options.jsexternal-job-cache.pngfavicon.icofile.pngfontsglyphicons-halflings-regular.eotglyphicons-halflings-regular.svgglyphicons-halflings-regular.ttfglyphicons-halflings-regular.wofflatov111KWMyx7m-L0fkQGwYhWwun-_kf6ByYO6CLYdB4HQE-Y.woff222JRxvfANxSmnAhzbFH8PlKPGs1ZzpMvnHX-7fPOuAc.woff22HG_tEPiQ4Z6795cGfdivIX0hVgzZQUfRDuZrPvH3D8.woff28qcEw_nrk_5HEcCpYdJu8BTbgVql8nDJpwnrE27mub0.woff2AcvTq8Q0lyKKNxRlL28Rn4X0hVgzZQUfRDuZrPvH3D8.woff2HkF_qI1x_noxlxhrhMQYEIX0hVgzZQUfRDuZrPvH3D8.woff2IY9HZVvI1cMoAHxvl0w9LVKPGs1ZzpMvnHX-7fPOuAc.woff2MDadn8DQ_3oT6kvnUq_2rxTbgVql8nDJpwnrE27mub0.woff2MgNNr5y1C_tIEuLEmicLm1KPGs1ZzpMvnHX-7fPOuAc.woff2XNVd6tsqi9wmKNvnh5HNEIX0hVgzZQUfRDuZrPvH3D8.woff2cT2GN3KRBUX69GVJ2b2hxn-_kf6ByYO6CLYdB4HQE-Y.woff2rZPI2gHXi8zxUjnybc2ZQFKPGs1ZzpMvnHX-7fPOuAc.woff2imagesDOCBANNER.pngSaltStack_white.svgbanner-saltconf.pngbanner-support.pngemail.pngenterprise_ad.jpgepub_icon.svgfooter-support.pnggithub.pnglinkedin.pngmeetup.pngmessenger-generic.pngpdf_icon.svgreddit.pngsaltstack.svgsaltstack_logo.svgstackoverflow.pngtwitter.pngyoutube-variation.pngjquery-3.5.1.jsjquery.jsjscore.min.jsrespond.min.jswebhelp.min_v1.4.4.jslanguage_data.jsmaster-job-cache.pngminus.pngnapalm_logo.pngplus.pngproxy_minions.drawio.xmlproxy_minions.pngproxy_minions.svgpygments.cssrest_status_screen.pngsalt-logo-full.svgsalt-logo.pdfsalt-logo.pngsalt-logo.svgsalt-oss-logo.pngsearchtools.jssidebar.jssnapshot_manager.pngspm-overview.pngspm-package-contents.pngspm-package-extraction.pngunderscore-1.3.1.jsunderscore.jscontents.htmlfaq.htmlgenindex.htmlglossary.htmlobjects.invpy-modindex.htmlrefauthallindex.htmlsalt.auth.auto.htmlsalt.auth.django.htmlsalt.auth.file.htmlsalt.auth.keystone.htmlsalt.auth.ldap.htmlsalt.auth.mysql.htmlsalt.auth.pam.htmlsalt.auth.pki.htmlsalt.auth.rest.htmlsalt.auth.sharedsecret.htmlsalt.auth.yubico.htmlbeaconsallindex.htmlsalt.beacons.adb.htmlsalt.beacons.aix_account.htmlsalt.beacons.avahi_announce.htmlsalt.beacons.bonjour_announce.htmlsalt.beacons.btmp.htmlsalt.beacons.cert_info.htmlsalt.beacons.diskusage.htmlsalt.beacons.glxinfo.htmlsalt.beacons.haproxy.htmlsalt.beacons.inotify.htmlsalt.beacons.journald.htmlsalt.beacons.load.htmlsalt.beacons.log_beacon.htmlsalt.beacons.memusage.htmlsalt.beacons.napalm_beacon.htmlsalt.beacons.network_info.htmlsalt.beacons.network_settings.htmlsalt.beacons.pkg.htmlsalt.beacons.proxy_example.htmlsalt.beacons.ps.htmlsalt.beacons.salt_proxy.htmlsalt.beacons.sensehat.htmlsalt.beacons.service.htmlsalt.beacons.sh.htmlsalt.beacons.smartos_imgadm.htmlsalt.beacons.smartos_vmadm.htmlsalt.beacons.status.htmlsalt.beacons.telegram_bot_msg.htmlsalt.beacons.twilio_txt_msg.htmlsalt.beacons.watchdog.htmlsalt.beacons.wtmp.htmlcacheallindex.htmlsalt.cache.consul.htmlsalt.cache.etcd_cache.htmlsalt.cache.localfs.htmlsalt.cache.mysql_cache.htmlsalt.cache.redis_cache.htmlcliindex.htmlsalt-api.htmlsalt-call.htmlsalt-cloud.htmlsalt-cp.htmlsalt-extend.htmlsalt-key.htmlsalt-master.htmlsalt-minion.htmlsalt-proxy.htmlsalt-run.htmlsalt-ssh.htmlsalt-syndic.htmlsalt-unity.htmlsalt.htmlspm.htmlclientsindex.htmlcloudsallindex.htmlsalt.cloud.clouds.aliyun.htmlsalt.cloud.clouds.azurearm.htmlsalt.cloud.clouds.clc.htmlsalt.cloud.clouds.cloudstack.htmlsalt.cloud.clouds.digitalocean.htmlsalt.cloud.clouds.dimensiondata.htmlsalt.cloud.clouds.ec2.htmlsalt.cloud.clouds.gce.htmlsalt.cloud.clouds.gogrid.htmlsalt.cloud.clouds.joyent.htmlsalt.cloud.clouds.libvirt.htmlsalt.cloud.clouds.linode.htmlsalt.cloud.clouds.lxc.htmlsalt.cloud.clouds.msazure.htmlsalt.cloud.clouds.oneandone.htmlsalt.cloud.clouds.opennebula.htmlsalt.cloud.clouds.openstack.htmlsalt.cloud.clouds.packet.htmlsalt.cloud.clouds.parallels.htmlsalt.cloud.clouds.profitbricks.htmlsalt.cloud.clouds.proxmox.htmlsalt.cloud.clouds.pyrax.htmlsalt.cloud.clouds.qingcloud.htmlsalt.cloud.clouds.saltify.htmlsalt.cloud.clouds.scaleway.htmlsalt.cloud.clouds.softlayer.htmlsalt.cloud.clouds.softlayer_hw.htmlsalt.cloud.clouds.tencentcloud.htmlsalt.cloud.clouds.vagrant.htmlsalt.cloud.clouds.virtualbox.htmlsalt.cloud.clouds.vmware.htmlsalt.cloud.clouds.vultrpy.htmlsalt.cloud.clouds.xen.htmlconfigurationexamples.htmlindex.htmllogginghandlersindex.htmlsalt.log.handlers.fluent_mod.htmlsalt.log.handlers.log4mongo_mod.htmlsalt.log.handlers.logstash_mod.htmlsalt.log.handlers.sentry_mod.htmlindex.htmlmaster.htmlminion.htmlnonroot.htmlproxy.htmlenginesallindex.htmlsalt.engines.docker_events.htmlsalt.engines.fluent.htmlsalt.engines.http_logstash.htmlsalt.engines.ircbot.htmlsalt.engines.junos_syslog.htmlsalt.engines.libvirt_events.htmlsalt.engines.logentries.htmlsalt.engines.logstash_engine.htmlsalt.engines.napalm_syslog.htmlsalt.engines.reactor.htmlsalt.engines.redis_sentinel.htmlsalt.engines.script.htmlsalt.engines.slack.htmlsalt.engines.sqs_events.htmlsalt.engines.stalekey.htmlsalt.engines.test.htmlsalt.engines.thorium.htmlsalt.engines.webhook.htmlexecutorsallindex.htmlsalt.executors.direct_call.htmlsalt.executors.docker.htmlsalt.executors.splay.htmlsalt.executors.sudo.htmlsalt.executors.transactional_update.htmlindex.htmlfile_serverallindex.htmlsalt.fileserver.azurefs.htmlsalt.fileserver.gitfs.htmlsalt.fileserver.hgfs.htmlsalt.fileserver.minionfs.htmlsalt.fileserver.roots.htmlsalt.fileserver.s3fs.htmlsalt.fileserver.svnfs.htmlbackends.htmlenvironments.htmlfile_roots.htmlindex.htmlgrainsallindex.htmlsalt.grains.chronos.htmlsalt.grains.cimc.htmlsalt.grains.core.htmlsalt.grains.disks.htmlsalt.grains.esxi.htmlsalt.grains.extra.htmlsalt.grains.fibre_channel.htmlsalt.grains.fx2.htmlsalt.grains.iscsi.htmlsalt.grains.junos.htmlsalt.grains.lvm.htmlsalt.grains.marathon.htmlsalt.grains.mdadm.htmlsalt.grains.mdata.htmlsalt.grains.metadata.htmlsalt.grains.minion_process.htmlsalt.grains.napalm.htmlsalt.grains.nvme.htmlsalt.grains.nxos.htmlsalt.grains.opts.htmlsalt.grains.panos.htmlsalt.grains.pending_reboot.htmlsalt.grains.philips_hue.htmlsalt.grains.rest_sample.htmlsalt.grains.smartos.htmlsalt.grains.ssh_sample.htmlsalt.grains.zfs.htmlindex.htmlinternalsaggregation.htmlexceptions.htmlfileserver-and-client.htmlindex.htmlopts.htmlsalt.exceptions.htmlunicode.htmlmodulesallindex.htmlsalt.modules.acme.htmlsalt.modules.aix_group.htmlsalt.modules.aix_shadow.htmlsalt.modules.aixpkg.htmlsalt.modules.aliases.htmlsalt.modules.alternatives.htmlsalt.modules.ansiblegate.htmlsalt.modules.apache.htmlsalt.modules.apcups.htmlsalt.modules.apf.htmlsalt.modules.apkpkg.htmlsalt.modules.aptly.htmlsalt.modules.aptpkg.htmlsalt.modules.archive.htmlsalt.modules.arista_pyeapi.htmlsalt.modules.artifactory.htmlsalt.modules.at.htmlsalt.modules.at_solaris.htmlsalt.modules.augeas_cfg.htmlsalt.modules.aws_sqs.htmlsalt.modules.azurearm_compute.htmlsalt.modules.azurearm_dns.htmlsalt.modules.azurearm_network.htmlsalt.modules.azurearm_resource.htmlsalt.modules.bamboohr.htmlsalt.modules.baredoc.htmlsalt.modules.bcache.htmlsalt.modules.beacons.htmlsalt.modules.bigip.htmlsalt.modules.bluez_bluetooth.htmlsalt.modules.boto3_elasticache.htmlsalt.modules.boto3_elasticsearch.htmlsalt.modules.boto3_route53.htmlsalt.modules.boto3_sns.htmlsalt.modules.boto_apigateway.htmlsalt.modules.boto_asg.htmlsalt.modules.boto_cfn.htmlsalt.modules.boto_cloudfront.htmlsalt.modules.boto_cloudtrail.htmlsalt.modules.boto_cloudwatch.htmlsalt.modules.boto_cloudwatch_event.htmlsalt.modules.boto_cognitoidentity.htmlsalt.modules.boto_datapipeline.htmlsalt.modules.boto_dynamodb.htmlsalt.modules.boto_ec2.htmlsalt.modules.boto_efs.htmlsalt.modules.boto_elasticache.htmlsalt.modules.boto_elasticsearch_domain.htmlsalt.modules.boto_elb.htmlsalt.modules.boto_elbv2.htmlsalt.modules.boto_iam.htmlsalt.modules.boto_iot.htmlsalt.modules.boto_kinesis.htmlsalt.modules.boto_kms.htmlsalt.modules.boto_lambda.htmlsalt.modules.boto_rds.htmlsalt.modules.boto_route53.htmlsalt.modules.boto_s3.htmlsalt.modules.boto_s3_bucket.htmlsalt.modules.boto_secgroup.htmlsalt.modules.boto_sns.htmlsalt.modules.boto_sqs.htmlsalt.modules.boto_ssm.htmlsalt.modules.boto_vpc.htmlsalt.modules.bower.htmlsalt.modules.bridge.htmlsalt.modules.bsd_shadow.htmlsalt.modules.btrfs.htmlsalt.modules.cabal.htmlsalt.modules.capirca_acl.htmlsalt.modules.cassandra_cql.htmlsalt.modules.cassandra_mod.htmlsalt.modules.celery.htmlsalt.modules.ceph.htmlsalt.modules.chassis.htmlsalt.modules.chef.htmlsalt.modules.chocolatey.htmlsalt.modules.chronos.htmlsalt.modules.chroot.htmlsalt.modules.cimc.htmlsalt.modules.ciscoconfparse_mod.htmlsalt.modules.cisconso.htmlsalt.modules.cloud.htmlsalt.modules.cmdmod.htmlsalt.modules.composer.htmlsalt.modules.config.htmlsalt.modules.consul.htmlsalt.modules.container_resource.htmlsalt.modules.cp.htmlsalt.modules.cpan.htmlsalt.modules.cron.htmlsalt.modules.cryptdev.htmlsalt.modules.csf.htmlsalt.modules.cyg.htmlsalt.modules.daemontools.htmlsalt.modules.data.htmlsalt.modules.datadog_api.htmlsalt.modules.ddns.htmlsalt.modules.deb_apache.htmlsalt.modules.deb_postgres.htmlsalt.modules.debconfmod.htmlsalt.modules.debian_ip.htmlsalt.modules.debian_service.htmlsalt.modules.debuild_pkgbuild.htmlsalt.modules.defaults.htmlsalt.modules.devinfo.htmlsalt.modules.devmap.htmlsalt.modules.dig.htmlsalt.modules.disk.htmlsalt.modules.djangomod.htmlsalt.modules.dnsmasq.htmlsalt.modules.dnsutil.htmlsalt.modules.dockercompose.htmlsalt.modules.dockermod.htmlsalt.modules.dpkg_lowpkg.htmlsalt.modules.drac.htmlsalt.modules.dracr.htmlsalt.modules.drbd.htmlsalt.modules.dummyproxy_pkg.htmlsalt.modules.dummyproxy_service.htmlsalt.modules.ebuildpkg.htmlsalt.modules.eix.htmlsalt.modules.elasticsearch.htmlsalt.modules.environ.htmlsalt.modules.eselect.htmlsalt.modules.esxcluster.htmlsalt.modules.esxdatacenter.htmlsalt.modules.esxi.htmlsalt.modules.esxvm.htmlsalt.modules.etcd_mod.htmlsalt.modules.ethtool.htmlsalt.modules.event.htmlsalt.modules.extfs.htmlsalt.modules.file.htmlsalt.modules.firewalld.htmlsalt.modules.freebsd_sysctl.htmlsalt.modules.freebsd_update.htmlsalt.modules.freebsdjail.htmlsalt.modules.freebsdkmod.htmlsalt.modules.freebsdpkg.htmlsalt.modules.freebsdports.htmlsalt.modules.freebsdservice.htmlsalt.modules.freezer.htmlsalt.modules.gcp_addon.htmlsalt.modules.gem.htmlsalt.modules.genesis.htmlsalt.modules.gentoo_service.htmlsalt.modules.gentoolkitmod.htmlsalt.modules.git.htmlsalt.modules.github.htmlsalt.modules.glance.htmlsalt.modules.glanceng.htmlsalt.modules.glassfish.htmlsalt.modules.glusterfs.htmlsalt.modules.gnomedesktop.htmlsalt.modules.google_chat.htmlsalt.modules.gpg.htmlsalt.modules.grafana4.htmlsalt.modules.grains.htmlsalt.modules.group.htmlsalt.modules.groupadd.htmlsalt.modules.grub_legacy.htmlsalt.modules.guestfs.htmlsalt.modules.hadoop.htmlsalt.modules.haproxyconn.htmlsalt.modules.hashutil.htmlsalt.modules.heat.htmlsalt.modules.helm.htmlsalt.modules.hg.htmlsalt.modules.highstate_doc.htmlsalt.modules.hosts.htmlsalt.modules.http.htmlsalt.modules.icinga2.htmlsalt.modules.idem.htmlsalt.modules.ifttt.htmlsalt.modules.ilo.htmlsalt.modules.incron.htmlsalt.modules.influxdb08mod.htmlsalt.modules.influxdbmod.htmlsalt.modules.infoblox.htmlsalt.modules.ini_manage.htmlsalt.modules.inspectlib.collector.htmlsalt.modules.inspectlib.dbhandle.htmlsalt.modules.inspectlib.entities.htmlsalt.modules.inspectlib.exceptions.htmlsalt.modules.inspectlib.fsdb.htmlsalt.modules.inspectlib.htmlsalt.modules.inspectlib.kiwiproc.htmlsalt.modules.inspectlib.query.htmlsalt.modules.inspector.htmlsalt.modules.introspect.htmlsalt.modules.iosconfig.htmlsalt.modules.ipmi.htmlsalt.modules.ipset.htmlsalt.modules.iptables.htmlsalt.modules.iwtools.htmlsalt.modules.jboss7.htmlsalt.modules.jboss7_cli.htmlsalt.modules.jenkinsmod.htmlsalt.modules.jinja.htmlsalt.modules.jira_mod.htmlsalt.modules.junos.htmlsalt.modules.k8s.htmlsalt.modules.kapacitor.htmlsalt.modules.kerberos.htmlsalt.modules.kernelpkg.htmlsalt.modules.kernelpkg_linux_apt.htmlsalt.modules.kernelpkg_linux_yum.htmlsalt.modules.key.htmlsalt.modules.keyboard.htmlsalt.modules.keystone.htmlsalt.modules.keystoneng.htmlsalt.modules.keystore.htmlsalt.modules.kmod.htmlsalt.modules.kubeadm.htmlsalt.modules.kubernetesmod.htmlsalt.modules.launchctl_service.htmlsalt.modules.layman.htmlsalt.modules.ldap3.htmlsalt.modules.ldapmod.htmlsalt.modules.libcloud_compute.htmlsalt.modules.libcloud_dns.htmlsalt.modules.libcloud_loadbalancer.htmlsalt.modules.libcloud_storage.htmlsalt.modules.linux_acl.htmlsalt.modules.linux_ip.htmlsalt.modules.linux_lvm.htmlsalt.modules.linux_service.htmlsalt.modules.linux_shadow.htmlsalt.modules.linux_sysctl.htmlsalt.modules.localemod.htmlsalt.modules.locate.htmlsalt.modules.logadm.htmlsalt.modules.logmod.htmlsalt.modules.logrotate.htmlsalt.modules.lvs.htmlsalt.modules.lxc.htmlsalt.modules.lxd.htmlsalt.modules.mac_assistive.htmlsalt.modules.mac_brew_pkg.htmlsalt.modules.mac_desktop.htmlsalt.modules.mac_group.htmlsalt.modules.mac_keychain.htmlsalt.modules.mac_pkgutil.htmlsalt.modules.mac_portspkg.htmlsalt.modules.mac_power.htmlsalt.modules.mac_service.htmlsalt.modules.mac_shadow.htmlsalt.modules.mac_softwareupdate.htmlsalt.modules.mac_sysctl.htmlsalt.modules.mac_system.htmlsalt.modules.mac_timezone.htmlsalt.modules.mac_user.htmlsalt.modules.mac_xattr.htmlsalt.modules.macdefaults.htmlsalt.modules.macpackage.htmlsalt.modules.makeconf.htmlsalt.modules.mandrill.htmlsalt.modules.marathon.htmlsalt.modules.match.htmlsalt.modules.mattermost.htmlsalt.modules.mdadm_raid.htmlsalt.modules.mdata.htmlsalt.modules.memcached.htmlsalt.modules.mine.htmlsalt.modules.minion.htmlsalt.modules.mod_random.htmlsalt.modules.modjk.htmlsalt.modules.mongodb.htmlsalt.modules.monit.htmlsalt.modules.moosefs.htmlsalt.modules.mount.htmlsalt.modules.mssql.htmlsalt.modules.msteams.htmlsalt.modules.munin.htmlsalt.modules.mysql.htmlsalt.modules.nacl.htmlsalt.modules.nagios.htmlsalt.modules.nagios_rpc.htmlsalt.modules.namecheap_domains.htmlsalt.modules.namecheap_domains_dns.htmlsalt.modules.namecheap_domains_ns.htmlsalt.modules.namecheap_ssl.htmlsalt.modules.namecheap_users.htmlsalt.modules.napalm_bgp.htmlsalt.modules.napalm_formula.htmlsalt.modules.napalm_mod.htmlsalt.modules.napalm_netacl.htmlsalt.modules.napalm_network.htmlsalt.modules.napalm_ntp.htmlsalt.modules.napalm_probes.htmlsalt.modules.napalm_route.htmlsalt.modules.napalm_snmp.htmlsalt.modules.napalm_users.htmlsalt.modules.napalm_yang_mod.htmlsalt.modules.netaddress.htmlsalt.modules.netbox.htmlsalt.modules.netbsd_sysctl.htmlsalt.modules.netbsdservice.htmlsalt.modules.netmiko_mod.htmlsalt.modules.netscaler.htmlsalt.modules.network.htmlsalt.modules.neutron.htmlsalt.modules.neutronng.htmlsalt.modules.nexus.htmlsalt.modules.nfs3.htmlsalt.modules.nftables.htmlsalt.modules.nginx.htmlsalt.modules.nilrt_ip.htmlsalt.modules.nix.htmlsalt.modules.nova.htmlsalt.modules.npm.htmlsalt.modules.nspawn.htmlsalt.modules.nxos.htmlsalt.modules.nxos_api.htmlsalt.modules.nxos_upgrade.htmlsalt.modules.omapi.htmlsalt.modules.openbsd_sysctl.htmlsalt.modules.openbsdpkg.htmlsalt.modules.openbsdrcctl_service.htmlsalt.modules.openbsdservice.htmlsalt.modules.openscap.htmlsalt.modules.openstack_config.htmlsalt.modules.openstack_mng.htmlsalt.modules.openvswitch.htmlsalt.modules.opkg.htmlsalt.modules.opsgenie.htmlsalt.modules.oracle.htmlsalt.modules.osquery.htmlsalt.modules.out.htmlsalt.modules.pacmanpkg.htmlsalt.modules.pagerduty.htmlsalt.modules.pagerduty_util.htmlsalt.modules.pam.htmlsalt.modules.panos.htmlsalt.modules.parallels.htmlsalt.modules.parted_partition.htmlsalt.modules.pcs.htmlsalt.modules.pdbedit.htmlsalt.modules.pecl.htmlsalt.modules.peeringdb.htmlsalt.modules.pf.htmlsalt.modules.philips_hue.htmlsalt.modules.pillar.htmlsalt.modules.pip.htmlsalt.modules.pkg.htmlsalt.modules.pkg_resource.htmlsalt.modules.pkgin.htmlsalt.modules.pkgng.htmlsalt.modules.pkgutil.htmlsalt.modules.portage_config.htmlsalt.modules.postfix.htmlsalt.modules.postgres.htmlsalt.modules.poudriere.htmlsalt.modules.powerpath.htmlsalt.modules.proxy.htmlsalt.modules.ps.htmlsalt.modules.publish.htmlsalt.modules.puppet.htmlsalt.modules.purefa.htmlsalt.modules.purefb.htmlsalt.modules.pushbullet.htmlsalt.modules.pushover_notify.htmlsalt.modules.pw_group.htmlsalt.modules.pw_user.htmlsalt.modules.pyenv.htmlsalt.modules.qemu_img.htmlsalt.modules.qemu_nbd.htmlsalt.modules.quota.htmlsalt.modules.rabbitmq.htmlsalt.modules.rallydev.htmlsalt.modules.random_org.htmlsalt.modules.rbac_solaris.htmlsalt.modules.rbenv.htmlsalt.modules.rdp.htmlsalt.modules.rebootmgr.htmlsalt.modules.redismod.htmlsalt.modules.reg.htmlsalt.modules.rest_pkg.htmlsalt.modules.rest_sample_utils.htmlsalt.modules.rest_service.htmlsalt.modules.restartcheck.htmlsalt.modules.ret.htmlsalt.modules.rh_ip.htmlsalt.modules.rh_service.htmlsalt.modules.riak.htmlsalt.modules.rpm_lowpkg.htmlsalt.modules.rpmbuild_pkgbuild.htmlsalt.modules.rsync.htmlsalt.modules.runit.htmlsalt.modules.rvm.htmlsalt.modules.s3.htmlsalt.modules.s6.htmlsalt.modules.salt_proxy.htmlsalt.modules.salt_version.htmlsalt.modules.saltcheck.htmlsalt.modules.saltcloudmod.htmlsalt.modules.saltsupport.htmlsalt.modules.saltutil.htmlsalt.modules.schedule.htmlsalt.modules.scp_mod.htmlsalt.modules.scsi.htmlsalt.modules.sdb.htmlsalt.modules.seed.htmlsalt.modules.selinux.htmlsalt.modules.sensehat.htmlsalt.modules.sensors.htmlsalt.modules.serverdensity_device.htmlsalt.modules.service.htmlsalt.modules.servicenow.htmlsalt.modules.shadow.htmlsalt.modules.slack_notify.htmlsalt.modules.slackware_service.htmlsalt.modules.slsutil.htmlsalt.modules.smartos_imgadm.htmlsalt.modules.smartos_nictagadm.htmlsalt.modules.smartos_virt.htmlsalt.modules.smartos_vmadm.htmlsalt.modules.smbios.htmlsalt.modules.smf_service.htmlsalt.modules.smtp.htmlsalt.modules.snapper.htmlsalt.modules.solaris_fmadm.htmlsalt.modules.solaris_group.htmlsalt.modules.solaris_shadow.htmlsalt.modules.solaris_system.htmlsalt.modules.solaris_user.htmlsalt.modules.solarisipspkg.htmlsalt.modules.solarispkg.htmlsalt.modules.solr.htmlsalt.modules.solrcloud.htmlsalt.modules.splunk.htmlsalt.modules.splunk_search.htmlsalt.modules.sqlite3.htmlsalt.modules.ssh.htmlsalt.modules.ssh_pkg.htmlsalt.modules.ssh_service.htmlsalt.modules.state.htmlsalt.modules.status.htmlsalt.modules.statuspage.htmlsalt.modules.supervisord.htmlsalt.modules.suse_apache.htmlsalt.modules.svn.htmlsalt.modules.swarm.htmlsalt.modules.swift.htmlsalt.modules.sysbench.htmlsalt.modules.sysctl.htmlsalt.modules.sysfs.htmlsalt.modules.syslog_ng.htmlsalt.modules.sysmod.htmlsalt.modules.sysrc.htmlsalt.modules.system.htmlsalt.modules.system_profiler.htmlsalt.modules.systemd_service.htmlsalt.modules.telegram.htmlsalt.modules.telemetry.htmlsalt.modules.temp.htmlsalt.modules.test.htmlsalt.modules.test_virtual.htmlsalt.modules.testinframod.htmlsalt.modules.textfsm_mod.htmlsalt.modules.timezone.htmlsalt.modules.tls.htmlsalt.modules.tomcat.htmlsalt.modules.trafficserver.htmlsalt.modules.transactional_update.htmlsalt.modules.travisci.htmlsalt.modules.tuned.htmlsalt.modules.twilio_notify.htmlsalt.modules.udev.htmlsalt.modules.upstart_service.htmlsalt.modules.uptime.htmlsalt.modules.user.htmlsalt.modules.useradd.htmlsalt.modules.uwsgi.htmlsalt.modules.vagrant.htmlsalt.modules.varnish.htmlsalt.modules.vault.htmlsalt.modules.vbox_guest.htmlsalt.modules.vboxmanage.htmlsalt.modules.vcenter.htmlsalt.modules.victorops.htmlsalt.modules.virt.htmlsalt.modules.virtualenv_mod.htmlsalt.modules.vmctl.htmlsalt.modules.vsphere.htmlsalt.modules.webutil.htmlsalt.modules.win_auditpol.htmlsalt.modules.win_autoruns.htmlsalt.modules.win_certutil.htmlsalt.modules.win_dacl.htmlsalt.modules.win_disk.htmlsalt.modules.win_dism.htmlsalt.modules.win_dns_client.htmlsalt.modules.win_dsc.htmlsalt.modules.win_file.htmlsalt.modules.win_firewall.htmlsalt.modules.win_groupadd.htmlsalt.modules.win_iis.htmlsalt.modules.win_ip.htmlsalt.modules.win_lgpo.htmlsalt.modules.win_license.htmlsalt.modules.win_network.htmlsalt.modules.win_ntp.htmlsalt.modules.win_path.htmlsalt.modules.win_pkg.htmlsalt.modules.win_pki.htmlsalt.modules.win_powercfg.htmlsalt.modules.win_psget.htmlsalt.modules.win_servermanager.htmlsalt.modules.win_service.htmlsalt.modules.win_shadow.htmlsalt.modules.win_smtp_server.htmlsalt.modules.win_snmp.htmlsalt.modules.win_status.htmlsalt.modules.win_system.htmlsalt.modules.win_task.htmlsalt.modules.win_timezone.htmlsalt.modules.win_useradd.htmlsalt.modules.win_wua.htmlsalt.modules.win_wusa.htmlsalt.modules.winrepo.htmlsalt.modules.wordpress.htmlsalt.modules.x509.htmlsalt.modules.xapi_virt.htmlsalt.modules.xbpspkg.htmlsalt.modules.xfs.htmlsalt.modules.xml.htmlsalt.modules.xmpp.htmlsalt.modules.yumpkg.htmlsalt.modules.zabbix.htmlsalt.modules.zcbuildout.htmlsalt.modules.zenoss.htmlsalt.modules.zfs.htmlsalt.modules.zk_concurrency.htmlsalt.modules.znc.htmlsalt.modules.zoneadm.htmlsalt.modules.zonecfg.htmlsalt.modules.zookeeper.htmlsalt.modules.zpool.htmlsalt.modules.zypperpkg.htmlindex.htmlnetapiallindex.htmlsalt.netapi.rest_cherrypy.htmlsalt.netapi.rest_tornado.htmlsalt.netapi.rest_wsgi.htmloutputallindex.htmlsalt.output.dson.htmlsalt.output.highstate.htmlsalt.output.json_out.htmlsalt.output.key.htmlsalt.output.nested.htmlsalt.output.newline_values_only.htmlsalt.output.no_out_quiet.htmlsalt.output.no_return.htmlsalt.output.overstatestage.htmlsalt.output.pony.htmlsalt.output.pprint_out.htmlsalt.output.profile.htmlsalt.output.progress.htmlsalt.output.raw.htmlsalt.output.table_out.htmlsalt.output.txt.htmlsalt.output.virt_query.htmlsalt.output.yaml_out.htmlpeer.htmlpillarallindex.htmlsalt.pillar.azureblob.htmlsalt.pillar.cmd_json.htmlsalt.pillar.cmd_yaml.htmlsalt.pillar.cmd_yamlex.htmlsalt.pillar.cobbler.htmlsalt.pillar.confidant.htmlsalt.pillar.consul_pillar.htmlsalt.pillar.csvpillar.htmlsalt.pillar.digicert.htmlsalt.pillar.django_orm.htmlsalt.pillar.ec2_pillar.htmlsalt.pillar.etcd_pillar.htmlsalt.pillar.extra_minion_data_in_pillar.htmlsalt.pillar.file_tree.htmlsalt.pillar.foreman.htmlsalt.pillar.git_pillar.htmlsalt.pillar.gpg.htmlsalt.pillar.hg_pillar.htmlsalt.pillar.hiera.htmlsalt.pillar.http_json.htmlsalt.pillar.http_yaml.htmlsalt.pillar.libvirt.htmlsalt.pillar.makostack.htmlsalt.pillar.mongo.htmlsalt.pillar.mysql.htmlsalt.pillar.nacl.htmlsalt.pillar.netbox.htmlsalt.pillar.neutron.htmlsalt.pillar.nodegroups.htmlsalt.pillar.pepa.htmlsalt.pillar.pillar_ldap.htmlsalt.pillar.postgres.htmlsalt.pillar.puppet.htmlsalt.pillar.reclass_adapter.htmlsalt.pillar.redismod.htmlsalt.pillar.rethinkdb_pillar.htmlsalt.pillar.s3.htmlsalt.pillar.saltclass.htmlsalt.pillar.sql_base.htmlsalt.pillar.sqlcipher.htmlsalt.pillar.sqlite3.htmlsalt.pillar.stack.htmlsalt.pillar.svn_pillar.htmlsalt.pillar.varstack_pillar.htmlsalt.pillar.vault.htmlsalt.pillar.venafi.htmlsalt.pillar.virtkey.htmlsalt.pillar.vmware_pillar.htmlindex.htmlproxyallindex.htmlsalt.proxy.arista_pyeapi.htmlsalt.proxy.chronos.htmlsalt.proxy.cimc.htmlsalt.proxy.cisconso.htmlsalt.proxy.docker.htmlsalt.proxy.dummy.htmlsalt.proxy.esxcluster.htmlsalt.proxy.esxdatacenter.htmlsalt.proxy.esxi.htmlsalt.proxy.esxvm.htmlsalt.proxy.fx2.htmlsalt.proxy.junos.htmlsalt.proxy.marathon.htmlsalt.proxy.napalm.htmlsalt.proxy.netmiko_px.htmlsalt.proxy.nxos.htmlsalt.proxy.nxos_api.htmlsalt.proxy.panos.htmlsalt.proxy.philips_hue.htmlsalt.proxy.rest_sample.htmlsalt.proxy.ssh_sample.htmlsalt.proxy.vcenter.htmlpublisheracl.htmlpython-api.htmlqueuesallindex.htmlsalt.queues.pgjsonb_queue.htmlsalt.queues.sqlite_queue.htmlrenderersallindex.htmlsalt.renderers.aws_kms.htmlsalt.renderers.cheetah.htmlsalt.renderers.dson.htmlsalt.renderers.genshi.htmlsalt.renderers.gpg.htmlsalt.renderers.hjson.htmlsalt.renderers.jinja.htmlsalt.renderers.json.htmlsalt.renderers.json5.htmlsalt.renderers.mako.htmlsalt.renderers.msgpack.htmlsalt.renderers.nacl.htmlsalt.renderers.pass.htmlsalt.renderers.py.htmlsalt.renderers.pydsl.htmlsalt.renderers.pyobjects.htmlsalt.renderers.stateconf.htmlsalt.renderers.toml.htmlsalt.renderers.wempy.htmlsalt.renderers.yaml.htmlsalt.renderers.yamlex.htmlindex.htmlreturnersallindex.htmlsalt.returners.appoptics_return.htmlsalt.returners.carbon_return.htmlsalt.returners.cassandra_cql_return.htmlsalt.returners.cassandra_return.htmlsalt.returners.couchbase_return.htmlsalt.returners.couchdb_return.htmlsalt.returners.django_return.htmlsalt.returners.elasticsearch_return.htmlsalt.returners.etcd_return.htmlsalt.returners.highstate_return.htmlsalt.returners.influxdb_return.htmlsalt.returners.kafka_return.htmlsalt.returners.librato_return.htmlsalt.returners.local.htmlsalt.returners.local_cache.htmlsalt.returners.mattermost_returner.htmlsalt.returners.memcache_return.htmlsalt.returners.mongo_future_return.htmlsalt.returners.mongo_return.htmlsalt.returners.multi_returner.htmlsalt.returners.mysql.htmlsalt.returners.nagios_nrdp_return.htmlsalt.returners.odbc.htmlsalt.returners.pgjsonb.htmlsalt.returners.postgres.htmlsalt.returners.postgres_local_cache.htmlsalt.returners.pushover_returner.htmlsalt.returners.rawfile_json.htmlsalt.returners.redis_return.htmlsalt.returners.sentry_return.htmlsalt.returners.slack_returner.htmlsalt.returners.slack_webhook_return.htmlsalt.returners.sms_return.htmlsalt.returners.smtp_return.htmlsalt.returners.splunk.htmlsalt.returners.sqlite3_return.htmlsalt.returners.syslog_return.htmlsalt.returners.telegram_return.htmlsalt.returners.xmpp_return.htmlsalt.returners.zabbix_return.htmlindex.htmlrosterallindex.htmlsalt.roster.ansible.htmlsalt.roster.cache.htmlsalt.roster.cloud.htmlsalt.roster.clustershell.htmlsalt.roster.flat.htmlsalt.roster.range.htmlsalt.roster.scan.htmlsalt.roster.sshconfig.htmlsalt.roster.terraform.htmlrunnersallindex.htmlsalt.runners.asam.htmlsalt.runners.auth.htmlsalt.runners.bgp.htmlsalt.runners.cache.htmlsalt.runners.cloud.htmlsalt.runners.config.htmlsalt.runners.ddns.htmlsalt.runners.digicertapi.htmlsalt.runners.doc.htmlsalt.runners.drac.htmlsalt.runners.error.htmlsalt.runners.event.htmlsalt.runners.f5.htmlsalt.runners.fileserver.htmlsalt.runners.git_pillar.htmlsalt.runners.http.htmlsalt.runners.jobs.htmlsalt.runners.launchd.htmlsalt.runners.lxc.htmlsalt.runners.manage.htmlsalt.runners.mattermost.htmlsalt.runners.mine.htmlsalt.runners.nacl.htmlsalt.runners.net.htmlsalt.runners.network.htmlsalt.runners.pagerduty.htmlsalt.runners.pillar.htmlsalt.runners.pkg.htmlsalt.runners.queue.htmlsalt.runners.reactor.htmlsalt.runners.salt.htmlsalt.runners.saltutil.htmlsalt.runners.sdb.htmlsalt.runners.smartos_vmadm.htmlsalt.runners.spacewalk.htmlsalt.runners.ssh.htmlsalt.runners.state.htmlsalt.runners.survey.htmlsalt.runners.test.htmlsalt.runners.thin.htmlsalt.runners.vault.htmlsalt.runners.venafiapi.htmlsalt.runners.virt.htmlsalt.runners.vistara.htmlsalt.runners.winrepo.htmlindex.htmlsdballindex.htmlsalt.sdb.cache.htmlsalt.sdb.confidant.htmlsalt.sdb.consul.htmlsalt.sdb.couchdb.htmlsalt.sdb.env.htmlsalt.sdb.etcd_db.htmlsalt.sdb.keyring_db.htmlsalt.sdb.memcached.htmlsalt.sdb.redis_sdb.htmlsalt.sdb.rest.htmlsalt.sdb.sqlite3.htmlsalt.sdb.tism.htmlsalt.sdb.vault.htmlsalt.sdb.yaml.htmlserializersallindex.htmlsalt.serializers.configparser.htmlsalt.serializers.json.htmlsalt.serializers.msgpack.htmlsalt.serializers.plist.htmlsalt.serializers.python.htmlsalt.serializers.toml.htmlsalt.serializers.yaml.htmlsalt.serializers.yamlex.htmlstatesaggregate.htmlallindex.htmlsalt.states.acme.htmlsalt.states.alias.htmlsalt.states.alternatives.htmlsalt.states.ansiblegate.htmlsalt.states.apache.htmlsalt.states.apache_conf.htmlsalt.states.apache_module.htmlsalt.states.apache_site.htmlsalt.states.aptpkg.htmlsalt.states.archive.htmlsalt.states.artifactory.htmlsalt.states.at.htmlsalt.states.augeas.htmlsalt.states.aws_sqs.htmlsalt.states.azurearm_compute.htmlsalt.states.azurearm_dns.htmlsalt.states.azurearm_network.htmlsalt.states.azurearm_resource.htmlsalt.states.beacon.htmlsalt.states.bigip.htmlsalt.states.blockdev.htmlsalt.states.boto3_elasticache.htmlsalt.states.boto3_elasticsearch.htmlsalt.states.boto3_route53.htmlsalt.states.boto3_sns.htmlsalt.states.boto_apigateway.htmlsalt.states.boto_asg.htmlsalt.states.boto_cfn.htmlsalt.states.boto_cloudfront.htmlsalt.states.boto_cloudtrail.htmlsalt.states.boto_cloudwatch_alarm.htmlsalt.states.boto_cloudwatch_event.htmlsalt.states.boto_cognitoidentity.htmlsalt.states.boto_datapipeline.htmlsalt.states.boto_dynamodb.htmlsalt.states.boto_ec2.htmlsalt.states.boto_elasticache.htmlsalt.states.boto_elasticsearch_domain.htmlsalt.states.boto_elb.htmlsalt.states.boto_elbv2.htmlsalt.states.boto_iam.htmlsalt.states.boto_iam_role.htmlsalt.states.boto_iot.htmlsalt.states.boto_kinesis.htmlsalt.states.boto_kms.htmlsalt.states.boto_lambda.htmlsalt.states.boto_lc.htmlsalt.states.boto_rds.htmlsalt.states.boto_route53.htmlsalt.states.boto_s3.htmlsalt.states.boto_s3_bucket.htmlsalt.states.boto_secgroup.htmlsalt.states.boto_sns.htmlsalt.states.boto_sqs.htmlsalt.states.boto_vpc.htmlsalt.states.bower.htmlsalt.states.btrfs.htmlsalt.states.cabal.htmlsalt.states.ceph.htmlsalt.states.chef.htmlsalt.states.chocolatey.htmlsalt.states.chronos_job.htmlsalt.states.cimc.htmlsalt.states.cisconso.htmlsalt.states.cloud.htmlsalt.states.cmd.htmlsalt.states.composer.htmlsalt.states.cron.htmlsalt.states.cryptdev.htmlsalt.states.csf.htmlsalt.states.cyg.htmlsalt.states.ddns.htmlsalt.states.debconfmod.htmlsalt.states.dellchassis.htmlsalt.states.disk.htmlsalt.states.docker_container.htmlsalt.states.docker_image.htmlsalt.states.docker_network.htmlsalt.states.docker_volume.htmlsalt.states.drac.htmlsalt.states.dvs.htmlsalt.states.elasticsearch.htmlsalt.states.elasticsearch_index.htmlsalt.states.elasticsearch_index_template.htmlsalt.states.environ.htmlsalt.states.eselect.htmlsalt.states.esxcluster.htmlsalt.states.esxdatacenter.htmlsalt.states.esxi.htmlsalt.states.esxvm.htmlsalt.states.etcd_mod.htmlsalt.states.ethtool.htmlsalt.states.event.htmlsalt.states.file.htmlsalt.states.firewall.htmlsalt.states.firewalld.htmlsalt.states.gem.htmlsalt.states.git.htmlsalt.states.github.htmlsalt.states.glance.htmlsalt.states.glance_image.htmlsalt.states.glassfish.htmlsalt.states.glusterfs.htmlsalt.states.gnomedesktop.htmlsalt.states.gpg.htmlsalt.states.grafana.htmlsalt.states.grafana4_dashboard.htmlsalt.states.grafana4_datasource.htmlsalt.states.grafana4_org.htmlsalt.states.grafana4_user.htmlsalt.states.grafana_dashboard.htmlsalt.states.grafana_datasource.htmlsalt.states.grains.htmlsalt.states.group.htmlsalt.states.heat.htmlsalt.states.helm.htmlsalt.states.hg.htmlsalt.states.highstate_doc.htmlsalt.states.host.htmlsalt.states.http.htmlsalt.states.icinga2.htmlsalt.states.idem.htmlsalt.states.ifttt.htmlsalt.states.incron.htmlsalt.states.influxdb08_database.htmlsalt.states.influxdb08_user.htmlsalt.states.influxdb_continuous_query.htmlsalt.states.influxdb_database.htmlsalt.states.influxdb_retention_policy.htmlsalt.states.influxdb_user.htmlsalt.states.infoblox_a.htmlsalt.states.infoblox_cname.htmlsalt.states.infoblox_host_record.htmlsalt.states.infoblox_range.htmlsalt.states.ini_manage.htmlsalt.states.ipmi.htmlsalt.states.ipset.htmlsalt.states.iptables.htmlsalt.states.jboss7.htmlsalt.states.jenkins.htmlsalt.states.junos.htmlsalt.states.kapacitor.htmlsalt.states.kernelpkg.htmlsalt.states.keyboard.htmlsalt.states.keystone.htmlsalt.states.keystone_domain.htmlsalt.states.keystone_endpoint.htmlsalt.states.keystone_group.htmlsalt.states.keystone_project.htmlsalt.states.keystone_role.htmlsalt.states.keystone_role_grant.htmlsalt.states.keystone_service.htmlsalt.states.keystone_user.htmlsalt.states.keystore.htmlsalt.states.kmod.htmlsalt.states.kubernetes.htmlsalt.states.layman.htmlsalt.states.ldap.htmlsalt.states.libcloud_dns.htmlsalt.states.libcloud_loadbalancer.htmlsalt.states.libcloud_storage.htmlsalt.states.linux_acl.htmlsalt.states.locale.htmlsalt.states.logadm.htmlsalt.states.logrotate.htmlsalt.states.loop.htmlsalt.states.lvm.htmlsalt.states.lvs_server.htmlsalt.states.lvs_service.htmlsalt.states.lxc.htmlsalt.states.lxd.htmlsalt.states.lxd_container.htmlsalt.states.lxd_image.htmlsalt.states.lxd_profile.htmlsalt.states.mac_assistive.htmlsalt.states.mac_keychain.htmlsalt.states.mac_xattr.htmlsalt.states.macdefaults.htmlsalt.states.macpackage.htmlsalt.states.makeconf.htmlsalt.states.marathon_app.htmlsalt.states.mdadm_raid.htmlsalt.states.memcached.htmlsalt.states.modjk.htmlsalt.states.modjk_worker.htmlsalt.states.module.htmlsalt.states.mongodb_database.htmlsalt.states.mongodb_user.htmlsalt.states.monit.htmlsalt.states.mount.htmlsalt.states.mssql_database.htmlsalt.states.mssql_login.htmlsalt.states.mssql_role.htmlsalt.states.mssql_user.htmlsalt.states.msteams.htmlsalt.states.mysql_database.htmlsalt.states.mysql_grants.htmlsalt.states.mysql_query.htmlsalt.states.mysql_user.htmlsalt.states.net_napalm_yang.htmlsalt.states.netacl.htmlsalt.states.netconfig.htmlsalt.states.netntp.htmlsalt.states.netsnmp.htmlsalt.states.netusers.htmlsalt.states.network.htmlsalt.states.neutron_network.htmlsalt.states.neutron_secgroup.htmlsalt.states.neutron_secgroup_rule.htmlsalt.states.neutron_subnet.htmlsalt.states.nexus.htmlsalt.states.nfs_export.htmlsalt.states.nftables.htmlsalt.states.npm.htmlsalt.states.ntp.htmlsalt.states.nxos.htmlsalt.states.nxos_upgrade.htmlsalt.states.openstack_config.htmlsalt.states.openvswitch_bridge.htmlsalt.states.openvswitch_port.htmlsalt.states.opsgenie.htmlsalt.states.pagerduty.htmlsalt.states.pagerduty_escalation_policy.htmlsalt.states.pagerduty_schedule.htmlsalt.states.pagerduty_service.htmlsalt.states.pagerduty_user.htmlsalt.states.panos.htmlsalt.states.pbm.htmlsalt.states.pcs.htmlsalt.states.pdbedit.htmlsalt.states.pecl.htmlsalt.states.pip_state.htmlsalt.states.pkg.htmlsalt.states.pkgbuild.htmlsalt.states.pkgng.htmlsalt.states.pkgrepo.htmlsalt.states.portage_config.htmlsalt.states.ports.htmlsalt.states.postgres_cluster.htmlsalt.states.postgres_database.htmlsalt.states.postgres_extension.htmlsalt.states.postgres_group.htmlsalt.states.postgres_initdb.htmlsalt.states.postgres_language.htmlsalt.states.postgres_privileges.htmlsalt.states.postgres_schema.htmlsalt.states.postgres_tablespace.htmlsalt.states.postgres_user.htmlsalt.states.powerpath.htmlsalt.states.probes.htmlsalt.states.process.htmlsalt.states.proxy.htmlsalt.states.pushover.htmlsalt.states.pyenv.htmlsalt.states.pyrax_queues.htmlsalt.states.quota.htmlsalt.states.rabbitmq_cluster.htmlsalt.states.rabbitmq_plugin.htmlsalt.states.rabbitmq_policy.htmlsalt.states.rabbitmq_upstream.htmlsalt.states.rabbitmq_user.htmlsalt.states.rabbitmq_vhost.htmlsalt.states.rbac_solaris.htmlsalt.states.rbenv.htmlsalt.states.rdp.htmlsalt.states.redismod.htmlsalt.states.reg.htmlsalt.states.rsync.htmlsalt.states.rvm.htmlsalt.states.salt_proxy.htmlsalt.states.saltmod.htmlsalt.states.saltsupport.htmlsalt.states.saltutil.htmlsalt.states.schedule.htmlsalt.states.selinux.htmlsalt.states.serverdensity_device.htmlsalt.states.service.htmlsalt.states.slack.htmlsalt.states.smartos.htmlsalt.states.smtp.htmlsalt.states.snapper.htmlsalt.states.solrcloud.htmlsalt.states.splunk.htmlsalt.states.splunk_search.htmlsalt.states.sqlite3.htmlsalt.states.ssh_auth.htmlsalt.states.ssh_known_hosts.htmlsalt.states.stateconf.htmlsalt.states.status.htmlsalt.states.statuspage.htmlsalt.states.supervisord.htmlsalt.states.svn.htmlsalt.states.sysctl.htmlsalt.states.syslog_ng.htmlsalt.states.sysrc.htmlsalt.states.telemetry_alert.htmlsalt.states.test.htmlsalt.states.testinframod.htmlsalt.states.timezone.htmlsalt.states.tls.htmlsalt.states.tomcat.htmlsalt.states.trafficserver.htmlsalt.states.tuned.htmlsalt.states.uptime.htmlsalt.states.user.htmlsalt.states.vagrant.htmlsalt.states.vault.htmlsalt.states.vbox_guest.htmlsalt.states.victorops.htmlsalt.states.virt.htmlsalt.states.virtualenv_mod.htmlsalt.states.webutil.htmlsalt.states.win_certutil.htmlsalt.states.win_dacl.htmlsalt.states.win_dism.htmlsalt.states.win_dns_client.htmlsalt.states.win_firewall.htmlsalt.states.win_iis.htmlsalt.states.win_lgpo.htmlsalt.states.win_license.htmlsalt.states.win_network.htmlsalt.states.win_path.htmlsalt.states.win_pki.htmlsalt.states.win_powercfg.htmlsalt.states.win_servermanager.htmlsalt.states.win_smtp_server.htmlsalt.states.win_snmp.htmlsalt.states.win_system.htmlsalt.states.win_wua.htmlsalt.states.win_wusa.htmlsalt.states.winrepo.htmlsalt.states.wordpress.htmlsalt.states.x509.htmlsalt.states.xml.htmlsalt.states.xmpp.htmlsalt.states.zabbix_action.htmlsalt.states.zabbix_host.htmlsalt.states.zabbix_hostgroup.htmlsalt.states.zabbix_mediatype.htmlsalt.states.zabbix_template.htmlsalt.states.zabbix_user.htmlsalt.states.zabbix_usergroup.htmlsalt.states.zabbix_usermacro.htmlsalt.states.zabbix_valuemap.htmlsalt.states.zcbuildout.htmlsalt.states.zenoss.htmlsalt.states.zfs.htmlsalt.states.zk_concurrency.htmlsalt.states.zone.htmlsalt.states.zookeeper.htmlsalt.states.zpool.htmlaltering_states.htmlbackup_mode.htmlcompiler_ordering.htmlextend.htmlfailhard.htmlglobal_state_arguments.htmlhighstate.htmlinclude.htmlindex.htmllayers.htmlmaster_side.htmlordering.htmlparallel.htmlproviders.htmlrequisites.htmlstartup.htmltesting.htmltop.htmlvars.htmlwriting.htmlthoriumallindex.htmlsalt.thorium.calc.htmlsalt.thorium.check.htmlsalt.thorium.file.htmlsalt.thorium.key.htmlsalt.thorium.local.htmlsalt.thorium.reg.htmlsalt.thorium.runner.htmlsalt.thorium.status.htmlsalt.thorium.timer.htmlsalt.thorium.wheel.htmltokensallindex.htmlsalt.tokens.localfs.htmlsalt.tokens.rediscluster.htmltopsallindex.htmlsalt.tops.cobbler.htmlsalt.tops.ext_nodes.htmlsalt.tops.mongo.htmlsalt.tops.reclass_adapter.htmlsalt.tops.saltclass.htmlsalt.tops.varstack_top.htmlindex.htmlwheelallindex.htmlsalt.wheel.config.htmlsalt.wheel.error.htmlsalt.wheel.file_roots.htmlsalt.wheel.key.htmlsalt.wheel.minions.htmlsalt.wheel.pillar_roots.htmlsearch.htmlsearchindex.jssecurityindex.htmltopicsapi.htmlbeaconsindex.htmlbest_practices.htmlblackoutindex.htmlcacheindex.htmlcloudaction.htmlaliyun.htmlaws.htmlazure.htmlazurearm.htmlbasic.htmlcloud.htmlcloudstack.htmlconfig.htmldeploy.htmldigitalocean.htmldimensiondata.htmlfeatures.htmlfunction.htmlgce.htmlgogrid.htmlhpcloud.htmlindex.htmlinstallindex.htmljoyent.htmllibvirt.htmllinode.htmllxc.htmlmap.htmlmisc.htmloneandone.htmlopennebula.htmlopenstack.htmlparallels.htmlprofiles.htmlprofitbricks.htmlproxmox.htmlqs.htmlreactor.htmlreleases0.6.0.html0.7.0.html0.8.0.html0.8.1.html0.8.2.html0.8.3.html0.8.4.html0.8.5.html0.8.6.html0.8.7.html0.8.9.htmlindex.htmlsalt.htmlsaltify.htmlscaleway.htmlsoftlayer.htmltencentcloud.htmltroubleshooting.htmlvagrant.htmlvexxhost.htmlvirtualbox.htmlvmware.htmlwindows.htmlxen.htmlconfigurationindex.htmldevelopmentarchitecture.htmlchangelog.htmlcontributing.htmlconventionsdocumentation.htmlformulas.htmlindex.htmlpackaging.htmlrelease.htmlstyle.htmldeprecations.htmlextendindex.htmlfaq-py2-deprecation.htmlgitindex.htmlhacking.htmlindex.htmllabels.htmllogging.htmlmodulesconfiguration.htmldeveloping.htmlexternal_pillars.htmlindex.htmlssh_wrapper.htmlpackage_providers.htmlpull_requests.htmlreporting_bugs.htmltestsindex.htmlintegration.htmlunit.htmltopology.htmltutorial.htmleauthaccess_control.htmlindex.htmlenginesindex.htmleventevents.htmlindex.htmlmaster_events.htmlexecutionindex.htmlremote_execution.htmlext_processesindex.htmlgrainsindex.htmlhardening.htmlhighavailabilityindex.htmlindex.htmlinstallationarch.htmldebian.htmleos.htmlfedora.htmlfreebsd.htmlgentoo.htmlindex.htmlnxos.htmlopenbsd.htmlosx.htmlrhel.htmlsolaris.htmlsuse.htmlubuntu.htmlwindows.htmljinjaindex.htmljobsexternal_cache.htmlindex.htmljob_cache.htmlmaster_topsindex.htmlmatchersindex.htmlmineindex.htmlnetapiindex.htmlwriting.htmlnetwork_automationindex.htmlorchestrateindex.htmlorchestrate_runner.htmlpillarindex.htmlprojectsindex.htmlproxyminionbeacon.htmldemo.htmlindex.htmlssh.htmlstate.htmlreactorindex.htmlreleases0.10.0.html0.10.1.html0.10.2.html0.10.3.html0.10.4.html0.10.5.html0.11.0.html0.11.1.html0.12.0.html0.12.1.html0.13.0.html0.13.1.html0.13.2.html0.13.3.html0.14.0.html0.14.1.html0.15.0.html0.15.1.html0.15.2.html0.15.3.html0.16.0.html0.16.1.html0.16.2.html0.16.3.html0.16.4.html0.17.0.html0.17.1.html0.17.2.html0.17.3.html0.17.4.html0.17.5.html0.6.0.html0.7.0.html0.8.0.html0.8.7.html0.8.8.html0.8.9.html0.9.0.html0.9.1.html0.9.2.html0.9.3.html0.9.4.html0.9.5.html0.9.6.html0.9.7.html0.9.8.html0.9.9.html2014.1.0.html2014.1.1.html2014.1.10.html2014.1.11.html2014.1.12.html2014.1.13.html2014.1.2.html2014.1.3.html2014.1.4.html2014.1.5.html2014.1.6.html2014.1.7.html2014.1.8.html2014.1.9.html2014.7.0.html2014.7.1.html2014.7.2.html2014.7.3.html2014.7.4.html2014.7.5.html2014.7.6.html2014.7.7.html2014.7.8.html2014.7.9.html2015.5.0.html2015.5.1.html2015.5.10.html2015.5.11.html2015.5.2.html2015.5.3.html2015.5.4.html2015.5.5.html2015.5.6.html2015.5.7.html2015.5.8.html2015.5.9.html2015.8.0.html2015.8.1.html2015.8.10.html2015.8.11.html2015.8.12.html2015.8.13.html2015.8.2.html2015.8.3.html2015.8.4.html2015.8.5.html2015.8.7.html2015.8.8.2.html2015.8.8.html2015.8.9.html2016.11.0.html2016.11.1.html2016.11.10.html2016.11.2.html2016.11.3.html2016.11.4.html2016.11.5.html2016.11.6.html2016.11.7.html2016.11.8.html2016.11.9.html2016.3.0.html2016.3.1.html2016.3.2.html2016.3.3.html2016.3.4.html2016.3.5.html2016.3.6.html2016.3.7.html2016.3.8.html2016.3.9.html2017.7.0.html2017.7.1.html2017.7.2.html2017.7.3.html2017.7.4.html2017.7.5.html2017.7.6.html2017.7.7.html2017.7.8.html2017.7.9.html2018.3.0.html2018.3.1.html2018.3.2.html2018.3.3.html2018.3.4.html2018.3.5.html2019.2.0.html2019.2.1.html2019.2.2.html2019.2.3.html2019.2.4.html2019.2.5.html2019.2.6.html2019.2.7.html3000.1.html3000.2.html3000.3.html3000.4.html3000.5.html3000.html3001.1.html3001.2.html3001.3.html3001.html3002.1.html3002.2.html3002.html3003.htmlfluorine.htmlincludes2015.8.0.pull_list.htmlgit-2015.8.0.htmlproxy-2015.8.0.htmlindex.htmlreleasecandidate.htmlsaltapi0.5.0.html0.6.0.html0.7.0.html0.7.5.html0.8.0.html0.8.2.html0.8.3.html0.8.4.html2016.3.6.htmlindex.htmlversion_numbers.htmlreturn_codesindex.htmlsdbindex.htmlslotsindex.htmlsolarisindex.htmlsolaris-specific-behavior.htmlspmconfig.htmldev.htmlindex.htmlmaster.htmlpackaging.htmlrepo.htmlspm_formula.htmlsshindex.htmlroster.htmlssh_ext_alternatives.htmlstatesindex.htmltargetingbatch.htmlcompound.htmlglobbing.htmlgrains.htmlindex.htmlipcidr.htmlnodegroups.htmlpillar.htmlrange.htmlthoriumindex.htmltopologyindex.htmlsyndic.htmltransportsindex.htmltcp.htmlzeromq.htmltroubleshootingindex.htmlmaster.htmlminion.htmlyaml_idiosyncrasies.htmltutorialsautoaccept_grains.htmlcloud_controller.htmlcron.htmldocker_sls.htmlesky.htmlesxi_proxy_minion.htmlfirewall.htmlgitfs.htmlhalite.htmlhttp.htmlindex.htmlintro_scale.htmljinja_to_execution_module.htmllibcloud.htmllxc.htmlminionfs.htmlmodules.htmlmultimaster.htmlmultimaster_pki.htmlpackaging_modules.htmlpillar.htmlpreseed_key.htmlquickstart.htmlrooted.htmlsalt_bootstrap.htmlstandalone_minion.htmlstarting_states.htmlstates_pt1.htmlstates_pt2.htmlstates_pt3.htmlstates_pt4.htmlstates_pt5.htmlsyslog_ng-state-usage.htmlwalkthrough.htmlwalkthrough_macosx.htmlwriting_tests.htmlusing_salt.htmlutilsindex.htmlvenafiindex.htmlvirtdisk.htmlindex.htmlnic.htmlwindowsindex.htmlwindows-package-manager.htmlwindows-specific-behavior.htmlyamlindex.html/usr/share/doc/packages//usr/share/doc/packages/salt-doc//usr/share/doc/packages/salt-doc/html//usr/share/doc/packages/salt-doc/html/_images//usr/share/doc/packages/salt-doc/html/_sources//usr/share/doc/packages/salt-doc/html/_sources/ref//usr/share/doc/packages/salt-doc/html/_sources/ref/auth//usr/share/doc/packages/salt-doc/html/_sources/ref/auth/all//usr/share/doc/packages/salt-doc/html/_sources/ref/beacons//usr/share/doc/packages/salt-doc/html/_sources/ref/beacons/all//usr/share/doc/packages/salt-doc/html/_sources/ref/cache//usr/share/doc/packages/salt-doc/html/_sources/ref/cache/all//usr/share/doc/packages/salt-doc/html/_sources/ref/cli//usr/share/doc/packages/salt-doc/html/_sources/ref/clients//usr/share/doc/packages/salt-doc/html/_sources/ref/clouds//usr/share/doc/packages/salt-doc/html/_sources/ref/clouds/all//usr/share/doc/packages/salt-doc/html/_sources/ref/configuration//usr/share/doc/packages/salt-doc/html/_sources/ref/configuration/logging//usr/share/doc/packages/salt-doc/html/_sources/ref/configuration/logging/handlers//usr/share/doc/packages/salt-doc/html/_sources/ref/engines//usr/share/doc/packages/salt-doc/html/_sources/ref/engines/all//usr/share/doc/packages/salt-doc/html/_sources/ref/executors//usr/share/doc/packages/salt-doc/html/_sources/ref/executors/all//usr/share/doc/packages/salt-doc/html/_sources/ref/file_server//usr/share/doc/packages/salt-doc/html/_sources/ref/file_server/all//usr/share/doc/packages/salt-doc/html/_sources/ref/grains//usr/share/doc/packages/salt-doc/html/_sources/ref/grains/all//usr/share/doc/packages/salt-doc/html/_sources/ref/internals//usr/share/doc/packages/salt-doc/html/_sources/ref/modules//usr/share/doc/packages/salt-doc/html/_sources/ref/modules/all//usr/share/doc/packages/salt-doc/html/_sources/ref/netapi//usr/share/doc/packages/salt-doc/html/_sources/ref/netapi/all//usr/share/doc/packages/salt-doc/html/_sources/ref/output//usr/share/doc/packages/salt-doc/html/_sources/ref/output/all//usr/share/doc/packages/salt-doc/html/_sources/ref/pillar//usr/share/doc/packages/salt-doc/html/_sources/ref/pillar/all//usr/share/doc/packages/salt-doc/html/_sources/ref/proxy//usr/share/doc/packages/salt-doc/html/_sources/ref/proxy/all//usr/share/doc/packages/salt-doc/html/_sources/ref/queues//usr/share/doc/packages/salt-doc/html/_sources/ref/queues/all//usr/share/doc/packages/salt-doc/html/_sources/ref/renderers//usr/share/doc/packages/salt-doc/html/_sources/ref/renderers/all//usr/share/doc/packages/salt-doc/html/_sources/ref/returners//usr/share/doc/packages/salt-doc/html/_sources/ref/returners/all//usr/share/doc/packages/salt-doc/html/_sources/ref/roster//usr/share/doc/packages/salt-doc/html/_sources/ref/roster/all//usr/share/doc/packages/salt-doc/html/_sources/ref/runners//usr/share/doc/packages/salt-doc/html/_sources/ref/runners/all//usr/share/doc/packages/salt-doc/html/_sources/ref/sdb//usr/share/doc/packages/salt-doc/html/_sources/ref/sdb/all//usr/share/doc/packages/salt-doc/html/_sources/ref/serializers//usr/share/doc/packages/salt-doc/html/_sources/ref/serializers/all//usr/share/doc/packages/salt-doc/html/_sources/ref/states//usr/share/doc/packages/salt-doc/html/_sources/ref/states/all//usr/share/doc/packages/salt-doc/html/_sources/ref/thorium//usr/share/doc/packages/salt-doc/html/_sources/ref/thorium/all//usr/share/doc/packages/salt-doc/html/_sources/ref/tokens//usr/share/doc/packages/salt-doc/html/_sources/ref/tokens/all//usr/share/doc/packages/salt-doc/html/_sources/ref/tops//usr/share/doc/packages/salt-doc/html/_sources/ref/tops/all//usr/share/doc/packages/salt-doc/html/_sources/ref/wheel//usr/share/doc/packages/salt-doc/html/_sources/ref/wheel/all//usr/share/doc/packages/salt-doc/html/_sources/security//usr/share/doc/packages/salt-doc/html/_sources/topics//usr/share/doc/packages/salt-doc/html/_sources/topics/beacons//usr/share/doc/packages/salt-doc/html/_sources/topics/blackout//usr/share/doc/packages/salt-doc/html/_sources/topics/cache//usr/share/doc/packages/salt-doc/html/_sources/topics/cloud//usr/share/doc/packages/salt-doc/html/_sources/topics/cloud/install//usr/share/doc/packages/salt-doc/html/_sources/topics/cloud/releases//usr/share/doc/packages/salt-doc/html/_sources/topics/configuration//usr/share/doc/packages/salt-doc/html/_sources/topics/development//usr/share/doc/packages/salt-doc/html/_sources/topics/development/conventions//usr/share/doc/packages/salt-doc/html/_sources/topics/development/extend//usr/share/doc/packages/salt-doc/html/_sources/topics/development/git//usr/share/doc/packages/salt-doc/html/_sources/topics/development/modules//usr/share/doc/packages/salt-doc/html/_sources/topics/development/tests//usr/share/doc/packages/salt-doc/html/_sources/topics/eauth//usr/share/doc/packages/salt-doc/html/_sources/topics/engines//usr/share/doc/packages/salt-doc/html/_sources/topics/event//usr/share/doc/packages/salt-doc/html/_sources/topics/execution//usr/share/doc/packages/salt-doc/html/_sources/topics/ext_processes//usr/share/doc/packages/salt-doc/html/_sources/topics/grains//usr/share/doc/packages/salt-doc/html/_sources/topics/highavailability//usr/share/doc/packages/salt-doc/html/_sources/topics/installation//usr/share/doc/packages/salt-doc/html/_sources/topics/jinja//usr/share/doc/packages/salt-doc/html/_sources/topics/jobs//usr/share/doc/packages/salt-doc/html/_sources/topics/master_tops//usr/share/doc/packages/salt-doc/html/_sources/topics/matchers//usr/share/doc/packages/salt-doc/html/_sources/topics/mine//usr/share/doc/packages/salt-doc/html/_sources/topics/netapi//usr/share/doc/packages/salt-doc/html/_sources/topics/network_automation//usr/share/doc/packages/salt-doc/html/_sources/topics/orchestrate//usr/share/doc/packages/salt-doc/html/_sources/topics/pillar//usr/share/doc/packages/salt-doc/html/_sources/topics/projects//usr/share/doc/packages/salt-doc/html/_sources/topics/proxyminion//usr/share/doc/packages/salt-doc/html/_sources/topics/reactor//usr/share/doc/packages/salt-doc/html/_sources/topics/releases//usr/share/doc/packages/salt-doc/html/_sources/topics/releases/includes//usr/share/doc/packages/salt-doc/html/_sources/topics/releases/saltapi//usr/share/doc/packages/salt-doc/html/_sources/topics/return_codes//usr/share/doc/packages/salt-doc/html/_sources/topics/sdb//usr/share/doc/packages/salt-doc/html/_sources/topics/slots//usr/share/doc/packages/salt-doc/html/_sources/topics/solaris//usr/share/doc/packages/salt-doc/html/_sources/topics/spm//usr/share/doc/packages/salt-doc/html/_sources/topics/ssh//usr/share/doc/packages/salt-doc/html/_sources/topics/states//usr/share/doc/packages/salt-doc/html/_sources/topics/targeting//usr/share/doc/packages/salt-doc/html/_sources/topics/thorium//usr/share/doc/packages/salt-doc/html/_sources/topics/topology//usr/share/doc/packages/salt-doc/html/_sources/topics/transports//usr/share/doc/packages/salt-doc/html/_sources/topics/troubleshooting//usr/share/doc/packages/salt-doc/html/_sources/topics/tutorials//usr/share/doc/packages/salt-doc/html/_sources/topics/utils//usr/share/doc/packages/salt-doc/html/_sources/topics/venafi//usr/share/doc/packages/salt-doc/html/_sources/topics/virt//usr/share/doc/packages/salt-doc/html/_sources/topics/windows//usr/share/doc/packages/salt-doc/html/_sources/topics/yaml//usr/share/doc/packages/salt-doc/html/_static//usr/share/doc/packages/salt-doc/html/_static/css//usr/share/doc/packages/salt-doc/html/_static/fonts//usr/share/doc/packages/salt-doc/html/_static/fonts/lato//usr/share/doc/packages/salt-doc/html/_static/fonts/lato/v11//usr/share/doc/packages/salt-doc/html/_static/images//usr/share/doc/packages/salt-doc/html/_static/js//usr/share/doc/packages/salt-doc/html/ref//usr/share/doc/packages/salt-doc/html/ref/auth//usr/share/doc/packages/salt-doc/html/ref/auth/all//usr/share/doc/packages/salt-doc/html/ref/beacons//usr/share/doc/packages/salt-doc/html/ref/beacons/all//usr/share/doc/packages/salt-doc/html/ref/cache//usr/share/doc/packages/salt-doc/html/ref/cache/all//usr/share/doc/packages/salt-doc/html/ref/cli//usr/share/doc/packages/salt-doc/html/ref/clients//usr/share/doc/packages/salt-doc/html/ref/clouds//usr/share/doc/packages/salt-doc/html/ref/clouds/all//usr/share/doc/packages/salt-doc/html/ref/configuration//usr/share/doc/packages/salt-doc/html/ref/configuration/logging//usr/share/doc/packages/salt-doc/html/ref/configuration/logging/handlers//usr/share/doc/packages/salt-doc/html/ref/engines//usr/share/doc/packages/salt-doc/html/ref/engines/all//usr/share/doc/packages/salt-doc/html/ref/executors//usr/share/doc/packages/salt-doc/html/ref/executors/all//usr/share/doc/packages/salt-doc/html/ref/file_server//usr/share/doc/packages/salt-doc/html/ref/file_server/all//usr/share/doc/packages/salt-doc/html/ref/grains//usr/share/doc/packages/salt-doc/html/ref/grains/all//usr/share/doc/packages/salt-doc/html/ref/internals//usr/share/doc/packages/salt-doc/html/ref/modules//usr/share/doc/packages/salt-doc/html/ref/modules/all//usr/share/doc/packages/salt-doc/html/ref/netapi//usr/share/doc/packages/salt-doc/html/ref/netapi/all//usr/share/doc/packages/salt-doc/html/ref/output//usr/share/doc/packages/salt-doc/html/ref/output/all//usr/share/doc/packages/salt-doc/html/ref/pillar//usr/share/doc/packages/salt-doc/html/ref/pillar/all//usr/share/doc/packages/salt-doc/html/ref/proxy//usr/share/doc/packages/salt-doc/html/ref/proxy/all//usr/share/doc/packages/salt-doc/html/ref/queues//usr/share/doc/packages/salt-doc/html/ref/queues/all//usr/share/doc/packages/salt-doc/html/ref/renderers//usr/share/doc/packages/salt-doc/html/ref/renderers/all//usr/share/doc/packages/salt-doc/html/ref/returners//usr/share/doc/packages/salt-doc/html/ref/returners/all//usr/share/doc/packages/salt-doc/html/ref/roster//usr/share/doc/packages/salt-doc/html/ref/roster/all//usr/share/doc/packages/salt-doc/html/ref/runners//usr/share/doc/packages/salt-doc/html/ref/runners/all//usr/share/doc/packages/salt-doc/html/ref/sdb//usr/share/doc/packages/salt-doc/html/ref/sdb/all//usr/share/doc/packages/salt-doc/html/ref/serializers//usr/share/doc/packages/salt-doc/html/ref/serializers/all//usr/share/doc/packages/salt-doc/html/ref/states//usr/share/doc/packages/salt-doc/html/ref/states/all//usr/share/doc/packages/salt-doc/html/ref/thorium//usr/share/doc/packages/salt-doc/html/ref/thorium/all//usr/share/doc/packages/salt-doc/html/ref/tokens//usr/share/doc/packages/salt-doc/html/ref/tokens/all//usr/share/doc/packages/salt-doc/html/ref/tops//usr/share/doc/packages/salt-doc/html/ref/tops/all//usr/share/doc/packages/salt-doc/html/ref/wheel//usr/share/doc/packages/salt-doc/html/ref/wheel/all//usr/share/doc/packages/salt-doc/html/security//usr/share/doc/packages/salt-doc/html/topics//usr/share/doc/packages/salt-doc/html/topics/beacons//usr/share/doc/packages/salt-doc/html/topics/blackout//usr/share/doc/packages/salt-doc/html/topics/cache//usr/share/doc/packages/salt-doc/html/topics/cloud//usr/share/doc/packages/salt-doc/html/topics/cloud/install//usr/share/doc/packages/salt-doc/html/topics/cloud/releases//usr/share/doc/packages/salt-doc/html/topics/configuration//usr/share/doc/packages/salt-doc/html/topics/development//usr/share/doc/packages/salt-doc/html/topics/development/conventions//usr/share/doc/packages/salt-doc/html/topics/development/extend//usr/share/doc/packages/salt-doc/html/topics/development/git//usr/share/doc/packages/salt-doc/html/topics/development/modules//usr/share/doc/packages/salt-doc/html/topics/development/tests//usr/share/doc/packages/salt-doc/html/topics/eauth//usr/share/doc/packages/salt-doc/html/topics/engines//usr/share/doc/packages/salt-doc/html/topics/event//usr/share/doc/packages/salt-doc/html/topics/execution//usr/share/doc/packages/salt-doc/html/topics/ext_processes//usr/share/doc/packages/salt-doc/html/topics/grains//usr/share/doc/packages/salt-doc/html/topics/highavailability//usr/share/doc/packages/salt-doc/html/topics/installation//usr/share/doc/packages/salt-doc/html/topics/jinja//usr/share/doc/packages/salt-doc/html/topics/jobs//usr/share/doc/packages/salt-doc/html/topics/master_tops//usr/share/doc/packages/salt-doc/html/topics/matchers//usr/share/doc/packages/salt-doc/html/topics/mine//usr/share/doc/packages/salt-doc/html/topics/netapi//usr/share/doc/packages/salt-doc/html/topics/network_automation//usr/share/doc/packages/salt-doc/html/topics/orchestrate//usr/share/doc/packages/salt-doc/html/topics/pillar//usr/share/doc/packages/salt-doc/html/topics/projects//usr/share/doc/packages/salt-doc/html/topics/proxyminion//usr/share/doc/packages/salt-doc/html/topics/reactor//usr/share/doc/packages/salt-doc/html/topics/releases//usr/share/doc/packages/salt-doc/html/topics/releases/includes//usr/share/doc/packages/salt-doc/html/topics/releases/saltapi//usr/share/doc/packages/salt-doc/html/topics/return_codes//usr/share/doc/packages/salt-doc/html/topics/sdb//usr/share/doc/packages/salt-doc/html/topics/slots//usr/share/doc/packages/salt-doc/html/topics/solaris//usr/share/doc/packages/salt-doc/html/topics/spm//usr/share/doc/packages/salt-doc/html/topics/ssh//usr/share/doc/packages/salt-doc/html/topics/states//usr/share/doc/packages/salt-doc/html/topics/targeting//usr/share/doc/packages/salt-doc/html/topics/thorium//usr/share/doc/packages/salt-doc/html/topics/topology//usr/share/doc/packages/salt-doc/html/topics/transports//usr/share/doc/packages/salt-doc/html/topics/troubleshooting//usr/share/doc/packages/salt-doc/html/topics/tutorials//usr/share/doc/packages/salt-doc/html/topics/utils//usr/share/doc/packages/salt-doc/html/topics/venafi//usr/share/doc/packages/salt-doc/html/topics/virt//usr/share/doc/packages/salt-doc/html/topics/windows//usr/share/doc/packages/salt-doc/html/topics/yaml/-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:20088/SUSE_SLE-15-SP3_Update/bdff91da0587b55981ec0a2fdca49413-salt.SUSE_SLE-15-SP3_Updatecpioxz5x86_64-suse-linux                                                    !"#$%&'()*+,--./0........  112 34 5 667666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666668666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666686666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666696666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666directoryHTML document, ASCII text, with very long linesPNG image data, 601 x 308, 8-bit/color RGBA, non-interlacedPNG image data, 523 x 265, 8-bit/color RGBA, non-interlacedPNG image data, 216 x 272, 8-bit/color RGBA, non-interlacedPNG image data, 784 x 747, 8-bit/color RGBA, non-interlacedPNG image data, 1013 x 358, 8-bit/color RGBA, non-interlacedPNG image data, 623 x 655, 8-bit/color RGBA, non-interlacedPNG image data, 1138 x 538, 8-bit/color RGBA, non-interlacedPNG image data, 1219 x 601, 8-bit/color RGBA, non-interlacedASCII textASCII text, with CRLF line terminatorsPython script, ASCII text executableUTF-8 Unicode (with BOM) textassembler source, ASCII textASCII text, with very long linesUTF-8 Unicode textC++ source, ASCII textC++ source, UTF-8 Unicode text, with very long linesRuby script, ASCII textPython script, UTF-8 Unicode text executableUTF-8 Unicode text, with very long linesPython script, ASCII text executable, with very long linesHTML document, UTF-8 Unicode textPNG image data, 27 x 27, 8-bit colormap, non-interlacedGIF image data, version 89a, 32 x 32PNG image data, 50 x 45, 8-bit/color RGBA, non-interlacedPNG image data, 16 x 16, 8-bit/color RGBA, non-interlacedSVG Scalable Vector Graphics imageTrueType Font data, 17 tables, 1st "FFTM", 15 names, Macintosh, type 19 string, www.glyphicons.comWeb Open Font Format, TrueType, length 23320, version 1.0Web Open Font Format (Version 2), TrueType, length 16896, version 1.6816Web Open Font Format (Version 2), TrueType, length 18908, version 1.6816Web Open Font Format (Version 2), TrueType, length 17036, version 1.6816Web Open Font Format (Version 2), TrueType, length 2768, version 1.6816Web Open Font Format (Version 2), TrueType, length 2884, version 1.6816Web Open Font Format (Version 2), TrueType, length 17168, version 1.6816Web Open Font Format (Version 2), TrueType, length 3380, version 1.6816Web Open Font Format (Version 2), TrueType, length 16436, version 1.6816Web Open Font Format (Version 2), TrueType, length 16392, version 1.6816Web Open Font Format (Version 2), TrueType, length 2840, version 1.6816Web Open Font Format (Version 2), TrueType, length 2836, version 1.6816Web Open Font Format (Version 2), TrueType, length 2808, version 1.6816PNG image data, 330 x 330, 8-bit/color RGBA, non-interlacedPNG image data, 600 x 124, 8-bit colormap, non-interlacedPNG image data, 500 x 500, 8-bit/color RGBA, non-interlacedJPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, Exif Standard: [TIFF image data, little-endian, direntries=1, software=Picasa], baseline, precision 8, 1500x776, frames 3PNG image data, 600 x 389, 8-bit colormap, non-interlacedPNG image data, 11 x 11, 8-bit grayscale, non-interlacedXML 1.0 document, ASCII text, with very long linesPNG image data, 2000 x 295, 8-bit/color RGBA, non-interlacedPNG image data, 2000 x 696, 8-bit colormap, non-interlacedPNG image data, 1917 x 918, 8-bit/color RGBA, non-interlacedHTML document, UTF-8 Unicode text, with very long linesHTML document, ASCII textHTML document, UTF-8 Unicode text, with very long lines, with overstrikingASCII text, with very long lines, with no line terminators`Ruqʛutf-8a1c3fd1f6e841a305300921e176636fb94e9ce8cdbbb7459512d229bd30b7307?P7zXZ !t//] crt:bLL Hc@j_1ѳ̜bOɇ5>9A-x0?1+/'2aHb[|DM}-%6ެڴONگl8^$` ,Z1.:JqlLݸ~:i{יb>zx$x\eŭyKZlY+߂ U1ٔdžȀ; 7t aLR{` J"ܘrqv+yf d=Ghv0,D_(s`IFռR 3MPv b(xN|S@gn\)o X<->lryÚlS牜ָd./FKah$,OX+;#8 8\6 1DՓڞĢ\}Q46ZgTyI[2 K}VVs iBo]OG=DEjr"هޱR λ,aʛ y1v!y< #}@=xĠBP%U?XM df5bqvW$Ձ&̧YM&C@5WЃt\m3 v֡6fp$h9׫E͡=ik/9&V :fXv4`LNL.4޿@ݣ MAz2ZZEN'-o*~_NfvlKV3Bf( W#A MsH_Wl7Kg7NVN5>w8T-xDf]>!k*ߖ"El\V +"n \C4EL˚HS'|;܂7_xTFk:Am~?Zܙ5;EUԤ[4{`pK 2RY HvF; Vn tNRyCE?CIih :y|=3JcTZcvc_H9m39K"՗ADPfR^UfHgjd73 ((rn LT+-{D)#))RsФD:JC|23rI.METOisfGk>=XekzQ=gI W\nH_̞L-?$Qc'$(Df^ ~2lZMn9jSz|fm`ŷ87Z"d;@7]UKڷ!'&Po 3X OGkg7P^qT%#J )GD?.}OYbo@k7w!Een\?&;ĝV``<,'RzO65 +32Q3DNJvI;4%_XԹ$u<{PDiykOY{Wk[ظn:QNJ:!UYJ^Y9 9(2qa pIZ@kτpvoJXԃD<\ݚ.¤u BcmW.hV/`wɥ67SV VXAXNrB ^!UXK+k}#Ho4%wG}X=֍ AcŲE!;uȖ35S"5w0_ה v3kYnm~VPJ6C ^A LķF3Km Vׁ8U޸^GGR?UcƐuFG''xldsEevBxC@x_), ŧ{5oо13%C($_׌zTOad9ZukS+r\]r+6TFׇ18(?X:ܿAuַƞxr^]eu?ļ#ix"#8=`inTuo)ͦ8G@®Yk"NplbBTؼ*S.#ZR0xC«~!Tgrtٱ2`а3D1*-MtKf:TKQ.j{=o.tV,d l޵byFT%qTg[0P(h:(?t3 0|,t'x/C-Xlu'K'aHK^? aR6r<ș֌Z䄿&si"Fҋϲw.[WLJx,{A0jSYzW[y$R9$#$m8Rn|K<-j =")~cBPIx" ꙩFXp̽3IA' /zy /~JW$!M ST\Y= [:=lK @WI1>yƜeӯgg`mDR&Nq=0̫.8q3IA)Wؠq.Ԉ Vp}sL3.#%O8JpYjDׅtU[Cɉ0?OǟɕyoRev0 񾂒2eDXFӅPb**m%RNvVkS%)&Fvec(cO3RS,f0GoI 3콐H-ePvL&>aX@u;|Z!Ŗw7p^ @^S] wjCr3x`5oB簾뮵q 9pӳ԰mkcyqrr$~&ݻ VfmD<0 ,a\9 H.PLA%) UK/1ɥZYl?jmwag6wÌNHVoGפi0/\P C? GzSul>dϫ'3@a8톄nkAʨ "lv=̋'vovM uPa0?1H,ϵF4|XHS(t!7hV@mQ!fGA U&u?S ~:y2a>:تCV[B AX,akA~G =U8H^L;&7 ?l-pǙQ/Hh>.͑;@ZpLk>BS>> qrlٍ:1%\_l#vG t0e$9Q*'v\7"윞q8E+GdQK4>OA}kTix of.ځF D0:|<<Q67 m3.CPsmCW㌙0d ]>ʅ8xsk,(\NcQQݟwR@U.efS{. Gu)i,?6Z\&=B.H K aJK⚱:5Y-ZmM_Y\D'L8RyI /SJ}hx\hZ+_+p䆎qn@~Lm CFdr^3:KznkhtdwZ:77!Lj@>X"͚ 1 zj9T_@F8|\:0`^]P`Tf}Ve=rP[ P0[>~[Uk1Iє̽#@o+LxMY O)߫^Y|X\e0(VtUBү"-Li6EnyHЕF0`(azu<$`1dP5pfBIR˨v#Si\3aC\ʀцHujf/Fiβ[<ڛp7 o =[&53QAʯ e3P݈6F,yoi.su6{xD˻+_\Kr(=zfLlJ{8K#3T R{?xh#H(\{oGj?+Hr M%=J[..(Մ]d O"&ݝ)oz@҉MBٸfVfƒ/,Q::u?SX`xf7DՏtEixtI޵Јs߅w7ǠrC HFѲcAՙ!F8czPD1ٸAONўeE1a?@zRNC`p:Z$Lřm gQ9OD1sۮaq702%97 (RO^0c?km|P](Nކt{spjʹ9˹uOы dӧn/@kŧܯM9/߅/mL S{9 3xJҹV oHVk{,՟-Nj^KExR޽ lhv6p. hؕ䇾?:ϙK&SiRG,*!?~a%rd +̿}(LvM cbQ\ǟv|?!l1C?ywayԥ VHTa~uu`YlyL*?; ȇY( F=<­iЅORh4*؃, {yMH6݄@^[+inW$V2o5z8劽7S&X2 ;K&ذZj}N;J:7{ KLJ7Bm}/RApw$"uEvrydnC4+~)HC<_G䮸U(&0L07>1q'/ӥ5"mraqex#i Rm3H#dqumƪT0r$hrS]R7Z.=/%3$<SD أܨK>$Js #`NE{WʮD'mmYXkzG QL)euGǑ6H@-!/ARBBb5$?O9HaP<@ ߿[dsd4Twf8fg_:A9 : 7"Z)x4"/LXQl 7%Rh>E)z2|[ɳ$ iI<>iQU컚qS|fu fL~fjpAǽ 0'e*574IMمBAjR MG:f uQ5fs+lC1jI!u]-g1 S=</ecN/Bq6[$X]\Pgmk(xsirV`1+,%/\Y,L;tLn3ّOt(g,p¡Ȭ ^F\+i#%n'3?ijfSԐ߭l|cD z*ڃ@]ʟO䔘rE.X!@1 PWI 7SK6Cs,JBǷK8˳c;#HkOB9DѿOC$;HµDXhyDs6t&%:нKnlƀ?׉2T΁jye%I0E'E_wu?jjݙuE<أ&0Ψ{Ew~N?*\ :-OV:8.Qs¡Fv)q 8#^So#|j]ի@wZ)bhK(\$~^.OThwֲ8jϭJ UH!M8TgP,Zw/) ^7@h:4SJ-$a5Z Ƙ#lwKRԾęb\x]ux)'(=ۅV$,imrt[¥'ti>%m ;7l))|ٴ!%}^cYD/Ai5e6~x2S!B*f}j,[$DuqA Bkɝ#BW!5πBw7 +b *ɹ9\XTI#RcvU8]yvY"\>',#btWD,e0MQ'P-͠[Z"žՂUw[,'$Kt7*VNrdaN7 kUfu6c_/vv}7,I߇{?ňLc8{yv/8OH8‡Xh3.'PC!|Ɓ6Yĉu2͡t%-6IT) US→Oǀ6!XMqz6jp}ɉͩmqTBm_)+>\ܡs)D_du!VJj =!sy<YDl1JYwwXȟf@Y<4/G̲vCf{i #lFC:`]d=hqF}aćpa}RW׭B{;1QGTbՊ(v0).%$XLk Ŷctc_qَy5&UE~`t@t{zdl7Cu֜t,gu-0Ɇ_b(`A= Gf݁N+ISIa*6lN&ueljC8;C1W@&mS &WLW `8yCy{-M/Ow⡲Eu%ϩĈ ,JҏG\裒sT9 L|c0n~qle O0pT3O\ݸEJβa96'½׊d=ߖDw2"-o&kVTPqo\u*k[DGh9/*xH/d(exyUEehD%!Cd=*h~91X͟$0`MS/`/}"W8yVٔX^J5l3OXKbCLrsHm7mv͏LK $~Ѩ*C% IoP}yJߙb!F>K"9=IDBP˽MEM%0nʫd65Я*D݀'V]N@yH:c;lp7{=V31bz^ ;U+pvsUA:W {$ґwr7`^ݎͶJ$M;65_Cز;Ѡ1E 瘁aAHɻlX!67X|Ih1HC&fqpٹbDQ9zhM|a[TJB;t)= IryְZD0#)$aoI>@Gk(-m~?<&4Оi'Z.T/Ҋ*MP(hs~1?;KUx6 ~MW"utRyY\#M_NutŸ},*;rCE3&x'r^ `E7CB/ 酅K+ ɺß8c^a[\UWhBO*o0rJwt`Bph<7VVCaTfBG,$7=k4ʞKY43UP)$*Hh{G~I?'~Ub :ŅׅywOp&As9^WJ؋=N40՘50ndf/3w2}1o*r+MUbèU˛_5H\Q"^ c"s+l#֚_aT/4 ڡ^%~0^n:F3c>j FH+5R rmO8?WCN kD_T8\wsGK<2+`?W͵i^lpi=:R m ]P- @[୒18fXғd CZ.Һpn*5GwU3JXA1I}IѠ XJY>96C0E%>?uG#j!&ҶY;ވ$giQ{;CMh[DLKD>Ǩ.3G/QeJ}N$3P{{QV`R'I *r_jd9Z2 d&ءIkx ~:pM]Z 6>\-FJgzR-g^=,QҖPjgfăa+BԨc0[<  kѺ wl]߽;5$7\$`! (?ݸ`"vճ޿8cHwPF5lTC!>h҈"V>g&8,I6S^/z:r՚Rp1(!]. A:OϬzީ2knn=hT;>A㓦 .1:^_b+!{gXp,8&MaD`6D~x|6lnL ՝Ruq.ll0 ΦE{Be[GU[')Z70w੹}䫅CgJ5V^.S'KZ䑤>}ttO.+]}3GmJV^8(E 1/KW!V׌D =>:QI{D!T=#sy-Xю] ~w{`Nat~vB NQ!Dw^4D{r.Wd9b]z=ybuD *Ձz ɔoAwX,ձϒHrjQV'wɎZE=ֶmD@ œڟZm/w-[Q^R辢Ym8 ;2 Ȭ)]EBqGXJPG%Ai;`=|W0% ٵn(&@0-z*U#e@@y+tBz1%=c6v}fU3c#uTЮ/)[+irL#bT vyk?"25֟p{cU-s{vi@]`#VɫYJ=kEmBZ}f8beJvGȪɰiENБC!(v$|S:p.a@*C|*\ORب$mB|Z B -^e2`40ڸt.R^})4b(&ib,NE< Pđ'4qӷ c5d9J/xE5Xez먩Bsx^~&,nbXw-r &xj/x}ai?p:ï{wVYTRA;|x*+OzZJ?uϞA Cj/j{ m8\0i ^z|/عmZ 7EC!qr*i?1܌$Uh/mx妌ӢΡ' @e!KAlT~;ܲ#v,@'J@ޖh\ҿTcPQ9?!E',{MxNcZurũ\ Ug# {K1F f/ChzJ+KVUSOHDh" M/ 3dP8 v?rQFws"fEwM&Q"'L.iN  >R"Ȯ9%0"%Fۤ/k{̓kgRs6YaIK ^W/dХ97ʑg\R9a3A@pDR~#-Om1y:G6?J;yV ^8߭;A}0cq[ ks !;[$՛Wb&hQjě9W{5d?A1FXg@zUu\C:fL2i!f!q dy1kDSʀG 2&݂x;(˹thBMnwIG/޶J!4 0Q!nԐ_+{T*gL3׏oGG Ks_"l*۠&emtql1`Q1TڲaPyٶtkRb3ޮ1nqIp]pH$z Axy>aHiyP^`(@nGWCذ|4_jDe/I-.}̧'$ ɀ$shlo:+ 'AzI!ضO()G}iP7םJK8j8q/K _Kl9Dh&#ax(y32=T? utn6yI59xW=%wb#w8$Ls-CzYVj/FtPStS(&0?q3ּV>$ծ.=GqUV9jmӲGq)Ϻf j, ~u)otLOyJ^ s{V8bd^g2; +</1~%$+f-&rocBM7֭ h&Et#k@IH09d~GrPINUf  DZ!&99kC,2+ŀo/q6yL`QEm95Id]xj~6 b45r8r5(ʡ;+ޖ9gkO}BT(ϧeL} Ύj s|=֗ǩU6/,}pW>ԢO& .0X;x@ ID:[ @7\q9zNv1u͂ z^ $ثYND& Dr:hl2_D߀:{dc~0EaK^yJU@b6$e+db,!0v5%P{-T9\p5 05GZ42bQH(>۴ҭ)mT$xng\D~sZaW ч=>Um28Gi'*oc)ƥGI[lvGIU7?ĥŷ nykO OMSE5|uΛ<8X */T'uR,3!ݮpj"](à :~yD>0ͻjC(ܰ mRmN bڹx.h.sn ih}H/)l\%JlM*LS3f8>ǿ@ΧH(62vAOVhύkz5jCBnؚ ֑nNhA?{qRĂLy X!wUHH(t&bYD;."8'YP }6;/ @98J{pWm;0۩Tfbo}oa([N+ ꋕ;9Ӑ,;To~mlUߓoN B* t`; {/^v0FxZCQVw%}#uH!߿4[_Nm/ǿ_U0@H"w X`!Q\(WSlQ&Y5_t{1t}lBIIv>+{kl-dLGDb#5MK:70=w (\% DɃp/`haÌG\gmbgN"kgx?Iة=JCO9; eoJ H7EDӋ:fz7ը 0tab™ h_"Ը+,w+&l]!V$xws?9# bkFnJ#Sfudyh,mڑtzUzh؇1VV[)E@̬Wr&_| FE^~I,.ڠz ϓʥU4\IFi !ҷvҿP  /ؐ/wP xw$+1(F wA6IJy16#uq }7c ϳ6}04+|<kܠJ Wf{]—ŞnɊIUI61yX)8/) 40<@y#٣\E `ZQ:*I >S[$=Mf_  פV㦥i#l6a{ڬrQhE5߄-cjCH smbbgJک4qxɡO.dYOgF z hUE 0˹W5oC˾b .[sqPE"P9;yWv-7zX&*ƪe[F .V$}?)n(I#qB`uI4;ޭ5"+3PP[/Iܼ?/ya2\z)O)PF&!ȷ+[fxw1 0l ʲ t$sX/<\`^k{sp˲GZZl'}dN9rp p1mʖj3S]xד*oAB8 r]Xz#T4{iv,94-cNzd{_{7T1u/SW:V" l4Z}$ ҏd#/Juϟw<9'7!M^nOq= X'u4MmkM:' oE,RrI> W]~ *_m^x0wKkC* \l,Jio>w  HK&aIR%L˰0.hI ~0,-4@< }(6&jcK2׎Eu3MK|j~GkxPznT%'D]Y# N@Uה**PA֦!kNʅ)~ÿN[k+=u~ >NshE*2?mg[ A.g[P<*gy.NVXhqpu<)1+,`æ 7(fjr(D'[h$ ]I\mm A-Ћ l n yd1Sf=lP#B@as`X DF >ܠzk3E75xmq>@/qޜc'pС8bQ2~*݀+1.1=$}ֵerwUVp} X+\7ŬD@C'6|Jj)32%'Y @a;\rƧp|$!Z*Q]?sLM6M 9(yXykQJe\:~%ѓ_&5Kl`E 7N}ؒf0TQ\].ՠ\T{$K7B"ӳYHg$ZjYg'Qc%xxEfN#t68᎚-QTb[+ht$ hFEwT('hwd35(}B(HlN2 (K yKOH[%V ȡ/5r3KR$#9nYQp)ힶ^1O ǥn\ v:!t\0ZYDzf޵ģ1hSCgR 5eyK!,QXB|w5XF 7c=w:e:;]cی[fS>)M71%W8:c@jjaJI](i b,֚m!H=SR3^W'ҬX tpm#M1lwx:/s,-߈|yr +pT}`TԯՁq={.>V l$R?hJa7ի5f^ܑo=IcWwRB@D;d+U8"CoCcutGP L4#I`Z7쎛S⮫71x`b+bb#0F:;&ik]0ɀ!م1 `y; Z~c`.E m]v樤ØbovRO?^ >i2~U[j [ۣx7 RiX1ܗؓ@ 4~y`!O#M0Ѝ?גRtckwb˸%v ]Z\la? cʼn# *Ust+9 Ӌ(YF?%5SQxbH|WdZQܢcdRګ.[RV$TA!C6GJt9`G+}7K%Kw@R&v29 xK~fش%~!/FUQa| ^ߧ,A4B(^ > r2ҞӠ$#>74YX?/{HYylz! {OchWIhGoѮ`) FcPpߝhO9BK7eEwHz%/ul_ܭzi3O椱0*mtHA,O (WGPY(b9G̀b:"J(%M)j1F ˩m4 0fasb'L ERIͿ%c V?NuYY @U3\lŵE䗐+\c Vqw6Y3]VRf]Y[\:7x? R'<|yw[9ϩX{`8,z!bh+C- ګ =CоXG\>F$q#H~nR$dheI%ny&< T~vu7ljEyp*Z} pZ,v-XMtjѕnoN*yt}؞ о#} S//(ey˯aOÄL)(spF,wW>uN>#TCHVYӱxxB8Au`1:-t}@%:!aJ̐}«^`eB.$^@dk'D+՚RaTzm!K.;\3,L1NٝkdVMVZ J ](/ΰC 3)R$٠R 2r] "?R81cxrQ﬐& _Bkm@w T|lGL56xC.V^LbMytv$+ fWz,%-V 9RdO$T~HDZ"Us68ʸ$X}} }_4U7;~\J*%J{0$tvp^P\  Zޜ)%k^9$l hi;L&Z[wi\{= `V\S2FOrE,{g 9jde?5zdK̒X-.rc uR7b:ygB.\c}Jy}gdќ*[,,{ >d.z-'hf)y.x$ oa}YY)P;A {:brQ>N}^c}35 ɅړiwNpKi5eis]+ `JYN x{B˱DfS7$Td—P?h{xRQ<̒rqkt%*>SFe"%x/f 2os>O1J>WPj.qt oJgV*8*R{bX&RciWrIx;4h ԓ%3f\W`fdś``FY_ahh0ٚķL)>a8Bʩ>`LD8CLgsy&1 a{XX]ID<@B;VtTFF0 _S]4LӅ)CC2]4/*}m'} [[&VL)Q+.کeA߸Fhu1Dp+>YC'h/GYoV?xW #kҚ4sX‰I6sУ(vʿ=kʠ۪V9 6|zZ;c `Xl{}:.(_5Sa+sK(?]݈|:k+e:ƓkvpbWšS9VTnK⒧`:,~k$wGD7`JMA 87xV,Ls.miTd0,YMX1 ]԰6Z21կd\hm*4Q,*c09%JهsrV!RY2@*Öi&ž4u@O%x'39!dxdGc(Qe9?$J f.~к̐lBipT`f 6^ty%*HVGKtuLHM77;8ǁ޴xv%@>-j*c 0\49 /NRenT1zuJmk Lni nгG0D0zWp8/Yx@h꾅 -aSM7 %etZaSǓ&c`8,6XN9뽨ɂs9!5z/o@V;n+0\`̵e5ϾI>br^ieəѕ`K QtG$e4-ڙ@|+Xf')i=Ml ѡ\$.2jӃ =ؙ{q~)haγg[az+Nm̭HPUU-+6ͦ~L*A_3)rϵQ݀ 0]p[Bn>c|6G3Qb\Ml.җ {pF0o݈,'dYeǝ7M 8wAc(Y@:W11/@!>@J7 vҁC!+LWf= ,9栾<, gebg15VQuz)\;8mZZ?zK?͜ DgeI#QsVdש5ٯ$H1gܳrIG:'jeH&r&5A ցhV4lVRrMn!eipFArQX=,d#iaOa$79dp蝚a]>y- NiA]g GG~:[6 f@8ku0sot^Wݢ˙2h1lY ̮90\0gRHu"waRe `[uL? hFU&<.Mytd #I+K5>|#p6?ʟ.\特I[K6SE8$:0ͳ w<ÎP+a75A=4 R ת8|;L>kvfŶPhzP$&dzWW Q 5L? c%&2[ۖ]p5 %Z?n=YkJCԅcht9Xr5_`UKMRT;~tk)wF0!AcP \.a6['ޞw-Y3 ^6z CwW I[<䎈Ђcty_^WG(2Kp)6W_E-Wg g"@E_Ғ~[w1crgjQ&5W{9/0/FeIzA_]iYygr^j$ZC =) a& *_i mCQذtk; /R]tnjc@2눋vR'u-&ÃޢiUы( s!>)C#ݨpCWv~l1EgMⷴv IP0P!U &E֘ צ[n>$7hɶƁG "勒%DFgt~LoCUX0͡($o-5$ɵPJ3`i D丹k$?z!2L 2ٞuX_pRe\!3cу/Ara9PeH:f'Zͷ"bpA'~϶`=QЂ <2Ʉ|k4Q}؃K2j) T5* &h>L^{#t ONF耗&TԿ( nF aUt'BOA-E>|(GdnWR%4H3?;N{"/nς<4LP5/m ๒# ❑1Dqf0^i5OKg}mSTx'l"vMAv]Z\Zwlz&v.L}e(,4ce$*PoBb8puDo,J#lVJ(Fbg&B3s؄Qд,YY|=\&!?A۾t*VQi)Vq9{PX]FwHnDvfŃR -ύ cx*&A1]ުT`AHHHP`{T%,h @ $Y@!]ekO.V3Ec>3 (P 5$i[Sl - `gyST`HEP7k/;*vޅf_|o:Lؒa6~t//Zx;uyZPNuLR@ɔ*K$tM1zp$es/r@\`Q?^I)*NDNoC % N-䂒C1k: tKA $ IŤOkS[3j[N+DhB .ɸhwΣHsζ`/kˏkZMI3mJ[vBRD9`UMi/~WVnU;CR(Y5lʍUZ8K,郶 ^ys{kw0iO07-. nl~fKH`IX^n>H0? ypF{\K[)hNҒP!~F$>gº@EdƬ[KMԀ$ɒsxP9xu9ҏzlZٚ1I?MX>0$6qGg3ARLy8X+!> HX6+jPСT3_&!hdr>MGn(3S%d!b%Ԭ4.vzY}֝|Dѧg:Ϭ%U_0Ei3\ "-5W L(^hiqoVJ㇌9D;P3 eJ4H(K۸`?~5#U~"O Ԋ?$?[C*_-6e0ůyRa2'lK\H/,z9Q$;zG:6A:ရp\`M3>Jp2\T!4XɌ`C=C> .)ƺ 8n#x/16c?>\8eWpТ:0TЏ3j=v"al`\PJ[ŇxsKp;DφVM~y?`r@ 0ox\`:^{PQϳkP`OjVU(^z}#Twېa+ f=MN,v"5N%S1LU3_D1nd335EA{U+U;O=[ >.Ldp={bɩ@T0/i#3Wwr`a<#XL<ʇc}W!T',=aH}i,~PkBM^L5X{[̦;9<$g_P5`6? j_O;ZhOY1Plg z}u)(6@z R-`%JHP@s~8v6-FMZ{Yej9P'9b'P%R>d(FvJZ1q9TQL,D U"|k } JEN橮'11~ Xh:NVaǬY#SU\5Uy!NˢDWjvOs[VBșg9ԃ|:@>js Lg4x;4z$E%FҌsLsR*Zt6K' ;BiCU&,A|hOC zy";lS S^@"zViuݺ6%ql-`я>q9Hꂸ0\/HuK'V ="&g~QpDBAv40+UAU?QͪNlLL z:򻷯cKU*0x ԩg# х3=^ATRlɞqOH V-!jΦf=,Z9i?ytM˪p`v :XnA&!ΓFNBǽE(fpaIml>5/NSK"=_̑kЇ2z]JdtbJ@k^vB~LbhL4S! S?G\̬ؑn&*>y-`ȥabtKᮞy`A+ h$YC9٬,+ܐB WM*]Oѹ曩 m7_\ I9zS*?&[qҝ!v%_=ݒ;.T)*8a4]Wy77j^S ]a dX+c,Y~W 6fO\^KKcGu,T5l g`*>KY2ykmp\mRQNHTho'x԰o'B{_ DL'>>g0_c.ey H_˿:Ӄk T{c v/'WiI#CM*V|i$!6 ] +mfSsĨgFlSVA'aߍ]q`R){DP~ 5ݰڇWr7R٧ߣ#͹}0h_ ib^ݦrH|ƟF.qʑfp?5qk{VL {7\ev'{+2ZϾdXBLYpi.ta\.Vg^{&ˎng8 U$OlOa x%9%ٔOc[Ee;[Q@l,?!WÂ$nҬ4lyN-TfG#Jf_g@VZ7yPsXh*S!@gȤM>7"r#v$(;?]UY05@GN {QJC7a3koMMC\*㔩RlGĜ3~a̩ߦY̏ (F|h[^.j}ǩ)tBlcDqڱ.4k4~>Q42B'KQ~&_ F*;j^Mþ{o'c?R%%uRA11VSkZ{8SsF"OdڳA@ QNP=%GF*'j~7Ś~ &]"%:Rv댮XT[g'/S/9;zgCzh(̈]ʝC}a=#j)3Ex1xVU@~l_b}8ŒRXԘx.݊Jk#W',$#鄄 1SѳT4N࿒%mz+|/. ~x =RkW15 ЫLmڼW/PJL^d @&Nq=4Z ׿[ZN `]s& z6|8Ί_Ka?`cN"0HUwn 5=bsxә +bt:=_ɨ+E /AXI#}z .ҮPõ*#K! >1[)Xye8c?cԜ^ (Ow@nr[q@Y;H&؈5?^;D,tQwқcݓT/}Kn oCjm: +)l3*mdoefZc<#G@B֗HEwk۪ ~ryAd8P&\_8j&3 ]fi8ڏh [5J`Py?4S䥯gȥ@"r·O߼+'3Q@1N 2`^m##q?l `f\A GiMkbt q gZH&AO/R`4?Ӣ؞–&8i}_ 6Аv'Owv"t;WimeJW=6WSjs O 1.XT"R7Me~=ݍωP P鸇r@,%~[k,%ͳ_՚tewVh:>+}&ޤQ7k@!zz;KKV0f V;AyqVDM=}znTY(؛Y.0뎍 jYG8 @Z|1ݣ7pB@>Ş'HgCYLa*q)4ꅘPј)gNe2 !uKY<#hBe6V]q)@J;2SƤl$&u"X~ 2 Lˊ,pzR=s9<0CkܭwS#7%d mfpAl'@dlIv""RQy7=ݙ;l&_2~u'OΚ뭚TnWIίӃ!o8՞0rXh;[/Cɦ*YEU~{#!+!&"bk4$oGX.癃FmE*!n&ǟêL`܋0f¢ƼZ/:z9.REXUZ2 rf. 8~R#hI_qQ=g#}?5"Z?8ycu3ys'Qnd+~>yA5> t:kjzZu#_IN{GpG}6Kdns?>GJڴnL8O"RQKf 7mP7NC92`FejiVi-Hl^h=DoZ.6V==vA~ei!-¤;P딹K1aKGOVE*75wY(/ʼn>ڢX>UGHh^E:ǂSIz"tTfC=3|19{rΖ:Yzw%w5_;rRpEZUe-_k#LF'GGGB M3ch 4sH~;R EuD8X[2/MmCil;g5q05028crOGT\(cGbyPF`&= P0;MH3DR OIn`, sðl>IqOw0_PSAp{|AReNPruq<VDuָzGhTR 챈 Lin=1Mi:iԜ@T\]ppߎb*=Ѻ-Š"ҩrͱmW4C΍AhVMìy7=^:y鲭B)W_>1]k64S*WZ4 a7.k6٘}2 */k7! -q[?_d&;l}k]x2QְFq (Jer#B& 6IwpKmmV+'ʟfh63|hgSB>Xwn db?L:cdʎWgf7RO3Dz_Yק3qoH{\%0Oj)u4p-bvm=2UkR WPU_[dy4͕Mo}Z:%qE&FpK\ ;}H:׭Iӑܿ7}xu$&ReD%F#3l7@r/\ ٌ-Uhԟ 4:֗KGIt` I.l*LabO;YZR)5pr%0/V2Zd&j\vn,۞-&aY 57ѡ"Z6fAKt2 Ӗ)f88D$y4)ոZ?Ey[g"m#Zpвu|m) >?!fExbG_,~+Q簥F9cȉ(8 /uJū/N[5FkgEu~<3m|пqf1C~xQ$ 9&(tzJ?_";K}n䵉VB[V{ N_gGUZmzeK{x=&i!?[lE_Ctc2ę5'`C0Ꝯ:lC:`%\r1mQ)e&rz$'Amk2ll#* pOwδLtU^9)q2醾(]mIk*s%t4Aq2c_sGZXsމM)ކ)B~ނ("j>-oZrIݞJ5f瀐DݒAƺUyyדiˁ Z[ 3XdOEsgTTP5k@H%$E֣%|F#zTk4 bPvD^1q ?C @/$$p˂R-/v1&I]7s?nv}FǑWKq)JQ>v! )]:uu+J*|/´b^} -/!+u)}q)a erCxy)E >DumDMD4TTfPy9A< 4AFk~VdQ8c&-%n_u>WBv8*wi<ջ.?6qHQڕOGΪC8!Aq(:Y͛#L,y L=sg4$ARM#rz䕥"[v%"2j;T*HK#^9-J'$i+ZSVUۈ'N<E½i*A܏w;HHn!)yԳ/Qjd){rpTש7׹ 2+WzHD [H{2߇GϚ7GqyC_&@Z "jc7 cXZy^8[Κ(\TdQrFt-7@QܣEH  %$.^OhGxS#ew^_GIEZ&ȾSsO˅IOϺ#>x h 5 &`6bz/;^2JSCM2Bhk0u