From 06461884a0e92ab2c6ad96f5d5e415a31a6fe2d2 Mon Sep 17 00:00:00 2001 From: Aswathy Date: Thu, 6 Jan 2022 14:06:18 +0000 Subject: [PATCH] GitBook: [#83] Draft Changes for version 3.5 --- .../assets/Adding_EntityId_as_tag.png | Bin 0 -> 22149 bytes .../FaultInjection_Dynatrace_Events.png | Bin 0 -> 140918 bytes .../Fault_injection_events_Dynatrace_UI.png | Bin 0 -> 153561 bytes docs/.gitbook/assets/Url_Entity_Page.png | Bin 0 -> 15162 bytes docs/README.md | 2 +- docs/SUMMARY.md | 2 +- docs/mangle-administration/README.md | 21 ++- docs/mangle-administration/admin-settings.md | 36 +++-- .../supported-deployment-models/README.md | 43 ++++-- .../advanced-cassandra-configuration.md | 18 +-- docs/sre-developers-and-users/README.md | 23 ++- .../adding-endpoints.md | 10 +- .../injecting-faults/README.md | 2 +- .../injecting-faults/application-faults.md | 38 ++--- .../injecting-faults/custom-faults.md | 120 ++++++++-------- .../fault-events-in-dynatrace.md | 17 +++ .../injecting-faults/infrastructure-faults.md | 133 +++++++++++------- .../requests-and-reports.md | 2 +- .../resiliency-score.md | 4 +- .../troubleshooting-guide/deployment-stage.md | 17 ++- .../fault-injection-stage.md | 62 ++++++++ 21 files changed, 350 insertions(+), 200 deletions(-) create mode 100644 docs/.gitbook/assets/Adding_EntityId_as_tag.png create mode 100644 docs/.gitbook/assets/FaultInjection_Dynatrace_Events.png create mode 100644 docs/.gitbook/assets/Fault_injection_events_Dynatrace_UI.png create mode 100644 docs/.gitbook/assets/Url_Entity_Page.png create mode 100644 docs/sre-developers-and-users/injecting-faults/fault-events-in-dynatrace.md diff --git a/docs/.gitbook/assets/Adding_EntityId_as_tag.png b/docs/.gitbook/assets/Adding_EntityId_as_tag.png new file mode 100644 index 0000000000000000000000000000000000000000..4e2102a7fe3b2612140aed99ee2eafea6697dc23 GIT binary patch literal 22149 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 E0NP`+X#fBK literal 0 HcmV?d00001 diff --git a/docs/.gitbook/assets/FaultInjection_Dynatrace_Events.png b/docs/.gitbook/assets/FaultInjection_Dynatrace_Events.png new file mode 100644 index 0000000000000000000000000000000000000000..65bdc7fe9c4a9e3e7096c70f66f9acfbf072cf3e GIT binary patch literal 140918 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

BpCOj#8(C9~CDFw}L>p$&p;yW0(9{Id@2oL=d* z;>H07xaNI>10mooBFsNtgQbaw$Lt_{Tt(tRo@kM-YM9IjGJ{n~zm!HH;us~FIry9v z$838*!af>YkVTr*5xiYC1t($Hiif;zBy#3;SzX0c8LDR<)k8By`atZC z@hr!};vRsvuQAATB{BuWRxvUG z%@4?KNaJ_hmX5Y}Pd9IQma(QzDw&4RnjB*te_npe^nZ)c>Y(=5B7kL~l@klB3JcE^ zdL6F6EC3aQm8OR1H_AbA{wLa`k*jrtQec1W?_h-8%;Ir0i8rYKVrC?V*Q)%F@dS6` z^qQl~X70o8VEO}ooQ$7ePXPHXB~jR8?w$T9Ld8)oXme6 zu%NjQ#j=L)U~%Pc}6#!%>pyDlzy`RQX$HORp!y`UuYzJlfLC zG;MEJR&}E4=!0=ETg@rHn}#4={Oc^RQx3a43OAZSnK~QIOKD!FnQMBp7R`H(tBZ9O z9GgikKsV;a@xb{=gBId;=@SH~n)KW!hr$OqFT8yGK1I`Kd;sTaC0w|>bPNPRq= zm5cL;v5(ue$zWoPc~o>QbgnclhFi~O<<8<43d~^vf+P<5M9sNW!LAkUGrSZ1w{#GK zj&CUjhS&8se3&cG7$tEdjKA0AU2kVpYu3Nol%jFbkr1O>Fgam@z7>;itapbsmOBc0 zK5@!kO+{edn8#=NXK2J9t_Pl#hrZCCcUme)w*3K$rLI*2;R>l#y) zVOiu)4>v{%BHi7+;b zQ@jMki=|qK+${oqtj6O7u~z*J!KelssJ% z)M-bx^s^c!h{=^4ZDpL$tSsZBtrU1%qvYkLme((pp}1AsNtO$~sroLp>MTi0$1Z!` zLb7`u+B9;PQc~IaF3hft5`qVOwLHFWltUUshQ_8D)6TV-JbrXqn^`=F{@Dfd5BDYAZk4% z%v6UDfFSr#c^fuFZ<%YJyD57Y$ob^tomPM8IvjNsUZptkz2-p`aJEgbO zi%n1zWHFxBLLX6Op^IB4A@e6$V~e9-x-K6yRT(;;Iq7bJV_07uT7F&nV}QMBNZ>mH zX$rxnIDMkA@mWSqyv`Vz#+3!oaQ;JgB_Il6oUq5goSdKfI#hrTA~S5Vuss$Pw%U{m zg*6`68l-X-Cf9snxCl$mPtw0S*ARWlmT#avs3$7CI5cw@5iWBXDLU@Y^gi=aNSlU* zc!c@b5Zb%aZWka!@y<&m)9Hmvl6le*(1UhG4P$EE@n=Hg8NNLw8*t`g%hCKg-rY71 zt~523_TZp{QJ1rdnmLG5{?2)F zhR8V9P00Av=Mz;mBi3IWx*CJS^o~N3)i;`+Tr+QT59iEEX53(DAs|? zXDT&V6@eqb$+m{a^+Diq)C-1`sJ@`aI|e4NaD>eaPX2R?iStFDK?F;sPRF`Grympu0=)EU#chtMO@n2^;VmUe$G;aUd)5r2Ga7LPy4^&?^;!o%2E10@gaptz5G0i*l*nBRWVu5aNY2 zLcTL&AKTSW4s!#`_)gXrG`UQsf1Ws_In%);)oII4r~Q1>ba#j51CLMC*Cl_{Qppmx zel#>CRa;fZe-$=B5$E7Uhkw~J)asia&sRnIdv?rR0w_D0t2Jx0#SND|=l?ot9>R#27cYBHtq^`J;@unfKE z%UXEauot@9E8-Nxq$9l7ikJXjoYWk>LwoOJaw<`*m$<0J=Ga4OVRVSuwm>H=+t~e` zSl`{ELJQIHu@q*qFWwQk#dR*!l-U|<_@z~X>2LWg#DtjL+VM{gA zOKBpQ^-Nu1e{G9#$TT1uS07IkK0L@Z|u-pLM)rQqOblDUjFW z=hhKo!d_nQC#P)AbnQfK+RlIW$CTJ5lpPZ0#&SZAc0Gr+mg;|BctPrg5mUvf9Qy++fe>kDpE;h#e*qfG{Zf zLw?md_x`u%ZFE3p)AR%iy^MT;vy@3dPW7dKQJ<2N__T=#3wpnG#aIu2+!1#qNY^szE~ zKy@@dk+7SAB0E2~0H#GhSDiRu{mV-NE?MPHH%jv6Ujf=rSIP7q=o$$4(XjFV=7$n8 zK=z0+(aldk3+LZo29n?KOM4y5K{Zz4aUK5|5{MJ3Z(<@mF7AG0_kUfdU!ef-{ye5p z+4)@~c5tP-e*~L9ec^wMftdY2hT%sv^ULW4hQmD>vHTy`or4CJkeb^58!2-}E`4}V z$jooa_M8bgOR1X@bTl-(AC*9q`#-r2#smkUcaYf6i3%Umdz2GmwSgdVlLhl6J7xma z4ZlR3>)DTxk1qc5ALIQiI2MJ+El^;#3DjtQ#myD>L66g4p3Ps+rGo6Uz2~nde*JM7 zwC?8TGYQqpKUs;6Te$w;&n=YcAS%OqRj+SN3Xd4&^)x=JlsX(`q@np4BQaF`h74=2 zZis(|{!$Qsk$D4MGHuQpi)Ez&+JSH1`RU&Wclu*o^aD_&ZrT8w*iHAN7KroH<`Nj8 zTgpEDcwOMnN!-BdFJh}yu%aFn?kIG`Ly$AV9%Kjiu53+ z)nfSJ-k4x|1TjIq7Xu`%pAHg;k(ckQ{j@}4&r}+d3eO&g&mTT9>-X+GNjXJtNizBD zDZMg&Jz2h}Bc%;RzmEIU&CSi%_Y&cJK5XRzZtR03l#&GB3X!~`qOpF2lpitRi8p`l zpwz%_91ZwSva+&1lYwrN8eKiTX zXPs~JRQ1ttR##CdTyC!Nu&tlVe-~tK1C#XiT=^@-l zntxyTwj2*nDp1LDE>ANC5w(d)R%80_)812U%ny%7ih@5plp`c|ryA3FYGI+}USneM zlyBu3C|2d=J!62cY>H)n_^=G>+n~V&OFx(-cofAyL(53`e*J3V`N9TV6f@3u9Oc{gC>X82ZVWrFBnzY zR8zhW;l;prYc6MT;FBl?es%c^*<`1gStVlzQw?O8P7#1}m??8v+YoXCyz>ME1c2q- zz(dA*HxXr`$yW{NzNe_j$?H(7tG*kF5;S)((@Ct3iUQ1dH6@B*I)Fo1VX2?5x?&m3 zCnu*Ju$2Kar_$0Lz(qV-tPhvTu7m9|0lFS~dO%@KDo^x$oi45$+*#Gv(*puD2--O? zNi71MHz-LGa2{c8C#PC%4H_=lYUMO9<|*(|P1H1(^`zG}7jZ2_71PEv-s_}@?4;b> zkoNZ>%@kG^J%-b@Q3oN#6jV>XDxUCtC>`Nzt(X+h$K(W!}v(8>3M7Jx`qcXDDI-C8>h z2*C#j(^c|LZd`ZpRHDf%DzLV+#jSC*y?k|be0=q(4>0Iy@zJ0pDcxZf z6c{)qB3xxZ3o7Hhpi-UkIg%)jkc5!ogz`DTx#%0YKCy*o)3<9qH|SEoe%ZUVHg&7iNGB&% zL(ZE+l&68iZC+^3si&npHSr=tD+5V2aGg)g8=)~;V{~<$t;@ZJ90I~i>86d z?zgnk{%$2V!D>WOicAcS3vhDI1I9Av3omLZJ_qB{X(P z&Q~rk*3BcA`a&c!!s6Jx&ybANUPp6^voH)duj9^+Q!V1-2aD54s`!h|)2$Ni>SCZ< z02REhZi88G{Z_-$+=>7{Kfg$k2(=m$QB~B+7UFc%bF1lcvwjQe>PB+7511A=Cn~YA zGhMgF;qmdo-mQ2y@x7;JL>c)GKQ;SlEtqd1$^r8x>K&nQ=DTWINV5|UHBeT*4-fk}{p#FPcbvKZ`x zYYH)|aPI7<`L$|X#|;V9AD(wn2X;lp$!p+SyAtNJX(%2r=h!+iHd3*bkdK%g$e-&X zIJ4ySMYBqK)ooehEl7u_Y}GGq!!vY6^*Oos4Q_SW2O|4J7*5{}jnop%V#S38RvJ+5 zMnw^_sn?;dy}0pih_OrEm#XOLdO|+cpiNiWO&b*w9E(^}3;S?6ACC0n`E$aByinx& z#Ur`TY-F3|uvjt%ND{AYo$H2KVB6f0ZX zHYtBa3Mzj0j{v_2uv*SuoP&Nsnzx;!{ab~8;@aBUP-yD(VlSVcA4O84LYhGN<+tYO z=)0}<@Mb?iv2h#!E9htN{y1HMoE}o08V%~z(bfg!9b;P0gLTlN)NFihrsh>ge$p)- zZt@7H>%76EoMwh;X$nwIPR{N3W54IAg$68H2WKc^+V@JAKs6S0A%Ok~_nYflFj#Gk zVxjK4;APMnhB5u1Hd zODQS+g8U{XW~st1RzP$4eA}`&wcS`<3>?k!%lsY?Mq=(AB&)1^=ia%p9%VZ|xF8>? zpfICZ;_Bj(!Vhzr4#d5es>54Vm8w|`hy_7Ifvtow1_Lp=sp%4&M(^{pkDrE+vikbd zMD|-e)}zoyFS65@DTMb9d4OmbmGTP+)YjCHD*j&nk%C`?|9(rfgaqW%PeBhxhLH_7 zwK0FM&yDuTz2JI$I(J|0SfNHZ$2wmt1IDO*T+I>shSy~yILGVh5JS=h@GrKEi4we3 zYrLz~H*`R?!NbY=)#~Zn(5ju4wTM+QaIyG;NvB>T;^WBC9=~6B%GHu zsv&7-qwWh!WCYoF{~x}-GA!!uTiXOBEkH>nrIBu=RX`p@x&)-8yFqCj0Rai=P&%cV z0i;D5q;m-APRVznKIi<;IoI`mm2qZ%d-h&?tvl9|i+JAqAg{0^K7+jf#m>({lc>cO z%TBXim}R$L+>NgH9}(d9^Y;gpfL%w+<44-TrUoxy+~y&tV|7}937WcddlbAcJf|99Qh46MfiTC}Wl`t)jN5!1 z<=RQEphS@1yIQE@jZP1;BDGR2kg1zXFCYQVaXLLHz?kJfH}KPP?wcmza;`s~R!5~A zS%+<^e$0{)cF&ePo(mo3i6y013M3d7o!gPxDXTA;aB)q2ti_XJeM8P8E=@B=c*F6* zTT9;-P`v!;ent@d+98*A$C0wQh9Os8d%2a?b+$J;*nUD@sXCT@W9Oe0qGP|}OuDq{ z`y@R_HM|Bd!qtU$F7LjQ+a1~1sl2}>uZ==gnXfFfbHGi=2#;t5A#djCHwjO* z*%X)v@t;uFmRX=Pb)(oix`lR4qjzwTXDM^{=trYXuO?h`kCu0!;Oppkno42d;-bEP zJ8ks@JM%e1@vdLuBO1ySNj#PJO-)Uj7eVQg>b|{b?R?{;IXx3p&whRw@7%2_8d!9r zx4hn9BB9lcKzM~oUo|Vr$;uq6Zm~U1?D8f>8lji(q)fi;x?5Ll^Vj#VXxlO z#EdX6u1Vf6P?PTd^n9nW@1Uh7;8{+4%)H9eIXv0pb@a%F0@a5K8dhOp;o(lgJJhV1 zCMNyd+#`<5yf!mev;~dGNI^c6Zd7@?hbZ z>n<-ZKLj8w)<@Pl6MS^(>ET4EA8TXCG8ln0y}O%%tE>$1<;5LNT_@kw(TbZSsO8mQ zDdpsUpdQd~sh18Ot#%jS;v#5WgIU!-7J6gL%nD125P?BK!GYa$tm*QJ)egt}!?i%; z(-|2pw}pb_F+-@R%2f%{BcPli0~ePECB;=dJj1h#Ru=>zE`@LygN>`?6YQ+4tQ;JI zLqepnb7GGfK+Z)o4G~~aY3$Qnz0%bn5%mSg>wN>l0|MsFePpgy_Jic2{;ol41VQC7 z5v$fFWZz|$6n+=esb!mDPPZKU>sE?{ z=`(c%Hui&u^|nbzzsdUt6a$GuBQ_EN+tP~Qh$Sp;IpG~*=4T-myDya zTeIKWt{(UPGK}U{RZHY3q_@=5D%}-g9jr52xOw_930KX|ROo#TPf_H0Y_I1vhSNFe z?~cztOvL{ppP&$W&eRzvXp-Zj9$g zrA@DDdl^$xd;1dIrMuxR-x(RErl#N+fC_KP$iuH9JslH)8}jZ-GW)@V)0@wqKcjVu z&lp75*~T|FY>bVKGqSVmFT7q*8yYgcwvqq7^~bahU)VVAL2A&RIsx4 zcu$X)LD%JGLK_>KXU`P7F?1=|F0)oX3B3;oSs-vXBdwJ1Q0;fK-9Vbc4Vc+G+N7Oq zFTPimTSZ3F?4ifQ&d#x6SD;^s=^?}`K~7E%l?rm>7AVo$>N=JPX((NUw`8@8DSioh zkRGdZo*2tm6LtN-4zh(*($=;}Dpgb;K}$pgC;BaN@D8UtkfC*_`Sp#LWm4h=-48g^ zUfeO$1nFk%{OhaubYH#oOr6SMCcLIJn@af<6yucsOR!L;9v&xr$*=hdC!eW2sP(?`tvqX? zs;Y9cs>RQk_%1NZ8dl+;%hYKzv$JSEJ!hygK|iK{#hd(s1G#)DR0AYGgk~O8Z>?3Q?JWnD}l_sYx*6d}M9*!U9d=cwG*SwRm}M&4#S) zXi$YX$?%q&UZE>3zAFn3lRLnS;^WCSjX!nd)pBOt6QgbF`! zb;B^JT_XS1&GW}9_q+z$sUXtgN43i2gcFmI%FzuEKN?7#}bsEx~56bGU2NfnIAeZl91dg zje}f1uyV+j3bdGmEweV7-@?MetcXrwki90z;-UI2m%zAmDL^9SY+WbtNO@l)OrF{F zfRwf~j?X*&b*mmURsykMmFr$zeZBSdTVX_+0flOqn3(7bugd4PKqk?8Vafb4fEDxY zY$G$X>*)H!-4y|cHD=Dh@v!-|T50jmhGj;?Md1_pk+`L4cf zmG0>Vb%?;Tv$JrssTP)$*gH9ugBTgx$Hym$M{sjyB-ff0d_73Rq>FD^etMmp3V}@p z+4e;H#*Ldimg7h8q41XN8l}Aae3FvVYl9VAP_=Aay$ZRA*)XaiDd}r{y*}g*<%Shn z)oxQWEuh{vlODXAm!NuX>0~BdM3PL{=2KqYMV2=97kR5F(`#&FkWwqdAVGXQyrzifkF=oyC5vYHYZ(Ue z3o_NOsJEZ|2NG2zryWctK#QWUtf+8?=giE!8vh8g{B7cmwXa_viiy?1Dc@ZkLt0K$ z!>#V`;{%(YOvFPF7S48Uw8Fa&atja$p2^*|i3`>2c<|v@Q|dZ|DZITx<2WViK?W{H z0gZZ@&-vFn5di_?+N_VXA$4;Qq5f1_y1Tv53pul^i_5CN-|+B|ue1aypTlze-uU5u zxV-SuJQY)9La6S3shy^{xR|&~zLu%JQPhVxvxcY}w`p0+--8YVspYV>yU|3j)s-xM zxVP3!V*^W@nVAXqjfaN^Nc`O0-Bo!R8JFsOvCC=o?r7e(u8503L7ddb>Tl#KPD*+q zIw2?0*@Dnr2CafY)*m#ljoX>eda410uw8u@m#GhA=C5Gg!{!g3PoSlyCWS$Q&CPS& zsnURv%~Qd|M{-ybetwr1FU}o5a^IW+pO6O|w^y~6oLrEY9IWFb<0N z@{p}7Ev?|?@bmL4xU9LUsi_GV(1i;ZI^y_jSBANk@8vndt>9z~s&(15#YKku_j&CX zZ{>xR7bFO|5}rmzMRh*WZg6*x*U|zBcylmW{b$0%OxJIhp*%2n^9R)YXufH)J+A=c zrMGFjz1uoFDQ@5X*3lvCyg37g1;Dag^1#zD&#GN%N6*Q5t2K!c>PS9DXVEB5T3U?b zR*)E*)JztX?jGRe1UxMooje@dNCMHyppA(MJt2wnQT!^9J})FT!$Lpav090VC@Jav zwN<{|(AbC;qcW4jk17fbyc+SuU{q52k@nfHZ6(cfDIW)43+QeMTxa2SM5Eud8iUL| zFAGB1pug>0M`Kfyu*>!p6;*k8`5c@5b#!YKYx<{8;Ff?rGMs-cIN)o4TztIcXnFVE zOh|nPv=d^&W;z3FUVeiP6}7dZc9h!_Oz}g$Sa@>HLmtZ*!c*sHgqL| zwFoCV!$jF%0wTl+POQNOV8|Q)YUJVpvLS`;-Zt z!Imjy!_Ya4v5nSQ;i-ElRN4dW>P&rn!nqHwX!z5n^)?no>8e?wFLfQS1O^!XVGwSr zf15E#t)M>B2^B~GML$6V^ZWD8piqu~v7BV+>Ok_x@u7C6uK{fyXCkl(e^qBc&-62A zkh<4dYnVUEq_*?_BEmA-%iArj(}M;yfBxm-U)1~OJ?FySCKk~69Ppt2d?RR>^#?qv z4kz+HGs2#|t2a+1YVwT~fJ(;J(XRNq+Q9LgwfKWC$WCF&bmnrKSBDpN>%GQn0 z;oJXy(9OSJnvlWy-;%iqZM@3MkH_g|)>=xj^DbG*d+TNt-HZf^40{vmD*z5c!sG*j|T zXYO5K6-YtA`KjBO_Blg^*u4*8nGLtbP(*clV`F0rcNWBZ?v2JLBq(S1)#a$M$z(pC zDwxJNX*53;e}Uza7|pwsS5U&b_aynB%;(Vo23G6VM4kc3$@k2#dN=aXVXv8A*qc3Z zx|x^sMP(pKLXVfMtgy1c;H#ai^T8UUY;&RqVC<(@owrQUZwlz(oZs+n_bO1^ z2_Lz>OIoyDwj+=;aksyR0=G8D$e+%Oc|QHhO<(_n66#Wn^5jIX%iFGxBrFAzwR&or ze4{G5i031n2#a5Uo*ZCnxO(!3?p_Iccfwt|>xE0qf>X50BDOEnzD@sbTLP494r+e| zf3MlpxnpQ(Sm$Yg7l`Ax{TVJVqE+RvGHk!(usp1!p^+VXEXEMQ0F(e+x6oXY_by1+ zbZk1k8L7%U!+DT>FOq1;lRj-lZ%)~M@Lp9RqNpRI}E4uwj2}F zdBDlJJ+?QYQ)1XYyt9;>lUq17IXU@l{yw=uA5bd;Ichc5)1j%-aPh2;mEjAV*7{Ra zZ;iV;Va0M=R^K5dJ(#R*QA`K@V&M?f3F%vNDmj{gO8q$+WdI?1d0ki*Ir#u+nR>OJ zBv=a^&I#x!YPbS?OU0pxoCwi=|U5Rzi1oqAqz0B;XF#wd#o;yLU?c=z^74w4oiR!kd#lqeM>@ zrV5LCzc;nDd3kxC6WwswM#qsd=6wESy?w&5KyQY_it`)s%vO~ zgHBjU)YiWOHW&aHAd|mbe9y^|XH}2j^D}xT?wa*MRy=#{%C95^cLB|9{&T`*JK%n@ z-XR(~Ry3KSW3YV4krShMdaX*s&H-4A0{`22sRG#Zq~L{1n((bq#XttdtF)t>FDZ5% zH(qFOZwHTq3JL{2bm)27Ez-16TPgmGIaw!o_JL+|q!IZO*K-Eb(@wnioHH$rzt(}P zW~k7Vs5Ec|8?g|0c)+%akFvg~vA(lazy7thHW`Z1*oa5eu6rxU#U(_eRat(1=Sf3g zY;7$S71iF_MA=wzW>zKfv=8hGLF{E_T90b8k4S%Maeb;Zm4P2G2r+u;V6PvG~x{%!r+w~s|euopSl*#QWIq*6Yf&l|Jx^?6sMdvmbkgzMUTp?;l0 z-NUKDjcL_qgSKBA4h~$H{N6kXq!* z?@`O+MVKMj`%9DGCN1Ae*KQoGPlr6PtF*&I}7UtU19oI9*b}%KssLGrTb@)S}{pe|t{)rbAl@8T9qw^)6g-i5NsVy| zePR^U?i{Y8gX0BMa@B6SEde4-Udn3rXw>ORJ8${jp_U0L(t{AR>SIx_!!~NOxN5p7R35?fdl1%=F9^9>@GK zy<`FoFBGFU?=s;KQE`?6QJup$q+IU6q?%jt@ort*z#=gEjaI)$Z-k#oy z<%rYLEL|H792ZR30Wg5uax5z$^yA0C^KK?43sEgHX3KeFNZ2*DOS|UVKMUVk%o#!{ zz~kkm2{nb)#uQK~;BM27Lrv1Z_|=7p4?KQhz3R9{FKvCu`n(XUGcblY*!Vg%)>H{m zY}opNySolhX#l(ex%%Gn7~;6Lx2&XunT5rJ-#HWyUtiWMtaY~XF~^3St}c3$fDt@c zcHxE?f=(>A6(-jcc%5&^Uu&k2$7M|M4|>xDFbt375IZ;>G&W_!to{^Ei_gyA60HYSbqF4_3z#)aleKVf`rq|#QOuH*2M7BaL zH4P*ZVDLqSg^!;;1-q2Qbj@~ACmy*l>h$XydEsNbxjZf7>{##)1+A}dH;hJPtE8T< z^*zVTrvB;70=ZJ@x|f$5zXJFT4#`8n-o67m)SZ?*^h54=3ft`F3L6V1Bs9hdJThU@ znB$lpQ^^j##}ho;@0SJ3Ah?y?`ez-78jRJ zwHUs9nG_zhy1x|`)oav|Gg5&5`sQMDFvXb*+*l|1pQLnh5)!1*+PHw@+7s$9B5KyN z6p0p$&dA;6vzo>qO#koJ(fzp^P$a`rCT6P?vbdm|S5`)bM|9q!Uc|i){n{uKm4}JJ z&B=Y{=tj_^5HBO=Xjli!VtFj{v}&|ZGbse$sxno>1~PEmgNsE_)Da(FP|fb2!po%D z(3t6^F$6{NxwtsHJ)_A>k7Q*VCNHJl8vFE7qyenTg_ZA7gCir-%?*=7N-)i;zu#h{ zx+){%8=JFQwch1~oT#V)G?jG09JqQrWwaxib%M$KFm-i#*`tGvHtaUNyo-R2(tV7k z7mP>w`1;rE)ne`==2vfaYjl9tYs3c97bVmFOP4PvyCW%XcsVppOo*^Eyz-9dgVWHB zm3(!qS|4-xEjY|L-<4mQT(nv_urKa0&WH9bg!Kb+omE4I1<|Ds1Pv zq$j=@v{vGhctLtgaS#DU@xx95fmA_3q3)2x2-N<;FI*fP0IqV?kh`P5wg7=z=C*7K zUtC&?dPHqgK^pIbl#3Z-=TprB?(|EOR!}sqDfGNd~aTs+9JFTDV6%Y`JV%DGq;oHQPmxa_n z|6FtFY@w&0N2ZRzKi=-K9Iqs3eJE?T%n?Q;QlsU%3z@&&(}H)qOU|Er(4p5!SAh6x zyFosGrU!9)n254-bfggQIO>QOm}l%bNFe&UvQnUrNiNB=PzXEg_PGEFN*o3+i}72A zx?^CLB_WC3-**yx3&DZk0<2md``rbW50}oJJKcUPA^Kc8kyQgsHyO_vaOeQKd!3pb z%XzVRW?Ej@+Sc~w>ePp?8_gHd(N|g!-l_+yN`BRGoheChL-t625qm8n?!`NwGXIe62D(Er)l5B08nZDN8hFY|w~-Yy+E!<>kwlW)p?e3o|tH zY25kr_wRpQ_fY0JUYI!(&Gi<30wRLKeKWAL57dUwsc$$tyXI@v2r~+hkTh7l$oNNF zq1$h+tGio-?X|m%?306+3q2Px@l*0c7T_9kdN%k2A_0@P8eVYlZ4n8G*$SK3SRhEU zUEbe_j3jL9p<^91!r{Xst7i;peeL4QW^NJldqsGs}^sb=_*gHir7b&w!C##$%-;H4!@)0>-}L>`vHK+h1zO zzR+l@%De@e#eN4Dw;Y=JNWzYs7JYC%Y7V^HnupzeUoX5WAtpK;^v4I@T17!2Iqnyi z%|_cA@zjSpwb;;)fkih-Y9q)8^y6%u9!#nuN}&HvfUSb6snbhp27Z_0rl3#`ok0JZ z^9gtJmLPSV-=2KqGl%fchQt{gzxl+;#aZh&&j0cju$IJ9T%Hu!`{C^a+(*qf&GQb=Pd!UBXGuQW4;CH#J%0$cU;2l9gs8OSP@t_u@ zR1autfJ^s4bcLU{Gb~*jd~?EoFuzOp6tc_$Hk<(n#_pftE zyk1pqZ5#0|UnyU=7t#jPH zJ6VM<91t8t7WM@05?`eoP+S>e;bR%Q6;qhPwtKD=5f}5;erE+gj~MuMXzO5H*8MDb zwt4<`NC5WRuHDj-5;6e~(xB24WG7L8;Q`{w!u(=Rj|f6G*0~IE$GvNFC!B~xKp+|X z2|k0fD^Ijx?5&lWR+-0f>B@*oo_3YVmZ7F5)Wz10?UnYtT)n-$*wDS<=`>Tbre

QfP`lqS`JGxomDJf{j(c8RBd*p&7i_z;n}FbmzlO#*k#sax&eFT$KWmSNM}Ec5 zQ5!@4$;Q4>!Q2%A+R#VZ_RQjg7ZR$iIJbQ+TJYWlo7z3jN#nQBzi%U7*VPw;(0sqQ zok`s_d910XJO~3fwOiaDf5d$Fxq=!WJHN}&*ceoTeoaj(#IAa}X6q5kYFAAzVokNXR&@)V2+psG*2DKa*zX~sfC>v zf4q%gghZ}TX4o=fqzajn!?a!Nt(2`YM{sMh(qngd2vX)5qFZ(#z;lF-7uK~wAdykc zF3QHnL<1U%+*@U4WF7DrIPT8{X&EoqMgY+2gGH7)=2~OG>TsKl26#eIIFP5|_;Xn; zM@dbs!eB|+45rP1tnoS%mvcACojahHv=(&4BNG?{cSK55?d=*ivZg1x<=q^gHX zAcRzi;nMpGXJ^nE0wb=f1p)o2DXl+OXYJ=thyGe!P$2?CIK;=-s*>|aPNrUb`jex* zEpmSG`x)u+?FwNcDrs5)#>hT@{_^MHV{m$3jtZ$ffNog(z+`JK+bNoyZ!3 zb2d^6FElo+4tHKKO01}?==)vx9G~4~GqaQEdMw`yhvDI|rUv>q6W;^4<0CBr4~>h5 zm({lj4zyp1qoydF$Wzf=U)EYTfiI})L1lBb-x`MftKR1d?$!=$8SQOr6Cz`^rxAukTI z&gJLAR~xBx7a%V#DVN+9Y4TpjRxeP% z5@&At-z3#<`gyaThLuq{ulP&pc!}#CzzA^ZNEv!)x3W2dAbzCMJT@Yz9o8*3CxK z<>Eq2R#JW9v5b1}Xv`S{1Uq!$1C0SxAL#7O=9lb+syQ*gd_`7Ps)d)CBb(Ks5urv` zz7lAV#>Rq5*oge3rHBEGh>a~|Q3f`_%-q}@_*3?}kSmjx-XltVeP@_h9rQ8n)sdBh z#rfT5{YB9T~erLc7*0tH&}QT(gd5sk9^Ks+(w{N=@dLEo{q*<5HL4!ir=|Bv5VqGe5C zFx3!9j=XKiLSl4gK?C0JZ#$7>u$ldCihK5N7yo_-D2?VhpjXB4U&~SRU*1p{4tU#N z-Y^h&L(bNS!zJViviuEnN>ycwG#KdF{Q1=)@a41IrAw%@9s?L35r6w#%#5pUvZo|4 zkVhCjF<>GD0;P}%Y2$AYw0ZTjRO;EwfnojYwZlOb&PWP>Uic?V_4g~8{T5X+>9~3; zpMJ%L?kRd)ia={BhampzNq)bb>Xx=8`=6OLDfpV(f01C2*PMNpYK}87=zgBVOM)2}sl`*qg_E-mG1Omfsv3Oro$_j^Fp${F&#AbeI!h{k+{ z>tfi!J^IzfD2Pq(@pyvY=_#5|W94||>h8Q<9giEXoa!$fuDz#=$wsE}b+P>3^0_p9 zW zM76)c2@Bh`wuGuQ7M9}E*z_T!gz2P}}(r(?IX5>pgg7CFcxrxb58r^&|s z5B7N5m)z>9`B-vzy72MQR*ACml9^fQ+DH_ARzk@jN4Cjx2N7ZGrG%=FN?h}v=@BaX zV-<&O+Pr>y+5Nd&(TGaijDkyg+l6iF?Pi1#od1v?6cy*E9&MVmo<1&-ejp;lUcSkaQ zpZL?s>5vKM)8id(ZU+H}gG&>eHIApRj{{MDX$}?aHOU+EAB$kFe93U}9hud^G7)y> zRFjuE9>z|+!DKQ~teu&;&3G^7dKo0Z=7KHrlwg2RCTVgk9R{%Ag`wRNU8R6)dbt%{3;C$Hp7(}~mNv4;7KO3%qHrEI{Bg6SFi zbB2oDU0=FLA!LI?uLd`{m@e7(b1TR4T_@h*S)`rX*4@*AC0W-Cq!EB zp{bVV9;a^sy|lq^YAT2o?1zYQY=8a9*>3p*qE$N4==j)tyr^|Tmt|CR;=i>22 ze!X0g%6{#-XNpN(6v>%W@ZlC}u$%Wov13OJSF;#Lz)zl{EPh%>y7WBqcFD&Y(sqWs zE760|Im>X$)E1c4$HGc?*MD#>TN#V#>Dpow^UGSk51!%Sl>B7iLrwiTQYFCU&M14j z+G6G^g#-l=*=Q3w)Grwwwu^^z==<=J`zV|`yU+)pns3?l!>KJYT?`gT5Lk1j$*wHT z_*_z4C9YbPf+W&1M~_jclA9{+;a>^q6Xed*QsJkhX1$ZL2s@9@5g$n=z;-g=P@A|s z8R=k`r-|$rnj|Ja_S)-n6xpBbYEhJAHXmeC9xXLmyUc3In+GOXiv{L{M(8wenYf$uf1I;P(-|l5in` zog2&)gL8d6%7KUY3A`2K{oL$AscD{fOLC5YFx7Bed(1+g8}(?V)ZBBfYOlb;UguPH z^I65-e0Rajt>X^pZ4f88#H?`>>umx4;H^jz>yE1e-eet_x%FumR{iIrEMX{49aU7W zy6=jSa$mXThI)ww8F}TC(K5aE7#S7!jRx@>H_DcW1LX)fx#)m}9=`U{D#o-JV*(2lMQi6+a`wgP{k0z!C zEDvGhBH+mUHLxn802Z)-We?~4V(XVo!Zlre1Nav$JD1+vNy&nnNyT!)0l(Z~w7VPB z$?wWEpob+t(i`+ah$nD~WmTW=T;ieZUz$Lx^6 z1?JOdEt}`-qo;Z!Jl#iKEXEBR_*9g{nHA<;^(%;YebKk%00#@zmXul$B1QCJiQ z5sTin&pNzCSuWl|D+|~}jFqlCH?7wnm?55YPHJeW=9J}iO|J1feS6hQi>e%HA~3EO z%F~)~pI_f~KO|+TXq+WTdLT{p8e;|`YVA!rM+*L8yCL>b7BdSudS>M0O3`Wgad(kX z_aj2?vQH5z{I1%ygoa;+le-$Ii}4o-DC?Wf<8lpuu1}Zu+#E8>;{ec|pQYw5E#qOd z_r;h!gs_TYD`TF>6>J<_aZ^9v0kgr^guLsb<;Q$Q%;vryinT$Xmd8(zjT zYjh9K_4lR5{}AayMH$;2>6tH0G`u{TKw67D?x-2)9zngw_h(nw)O%lXE!n~6FZGTLut)|!NeOC2ZPmY8-&NZ06`ifH+=%W9A2Yl%3I|5|R80cu+Cd%LIT zrp-=&JcJ4fe{y+-`+}4;g?z#_FTCTmtezL6n|xis*N#4Kk;5Ipy?+04PH<_xDL6Aa&On6kP5!vX`QHTJ4o@Nnk)wAuXnako)T|N!={r&eg0#md% zHv3HDMupfuRgm38lq`3~*LOEr=wE}r**U>uh(|Iy6%J&P))h7ezZUzHraWZxd-3dF z{WHrETjD5KR@+2dm~p9D;;=NPWT`If*}9R??6TLzC6~Uv??HEu778gbUX&wUj$Ptz zpy@M#zl+uwcv0fKC54n5=kd0EwUqeu3*`7ik-D4Ddit$bzZ|~pGsR2b4NSu^{|Wm| z@jC-K_2(q|!560fFpDH;rE}bQ?gIil?}GKO%N8f+pOTYnfH=QS^m^#8AUOeiQq@93 zIa%f4U1ICaAKe^AzOvG%0me~X%MzcBAY#`kU0lg!BU`xQzHk9>9PTR>( z;W+6WD?cL$mK>)~7$2;8Aj_4iU$1@nQ^|hP2PUs+1oE8h{(R_JImXT%tex{{)Nyo! z6yxYuP&+fbv&5_6G%^9P8(|4isHE&5i@meWcv?L(jUadMw!1WDZTG!wb!gh2qdWz< zcezEzPzm>7f(Yf#y*Av(oo7Z)7Sht@u)8jiED*dR@)32ZQgh=86T=Xk)m3r-%|#NR zbKN$7&Fu!yk!p>x!6na4$xNno^lclbKAja{{U{uTlDVC)N=y9%cO*zYuf#+0L#nBT zO&nXcIzBz`P?1qVAYeN`^BCs_NCaMJqFoPJ{Af&bb9N~N5}s>rw$03XhlmLOoOfD8 z6^)gy@S=F5``nKc^VNO3zrnKaWt# z`OD;WB&hh{!d<50dCjoQU10auR9|+x{<%(*qZ< zazlG~WOvp5L#)3Fe@wo-$mx;G{6$pdfJL#*&Q5z~uC&0>M$czs(zhf0UBxNCs;-k; zPnI78BQWF6aXa^OY$8PrE$2yDihk+p_{z^Ex=YnX4E$7pM~IGuX{gk!%|9qM9L9gX zyJMu(_flm*&zr7OfK{i2L6C+Z>Qlz{yAl$fguV5z+#C$qUBOj{pg+1dFfw>aT5=(_ z+BsjUqNgHl_E5p3h9s<9F#AV!3VPy(&FR`$`6*GNZCR=#x_YY-jJqqcf9k>TqJo*v z4iBdm=W0ymI&v7sc&1alUF#ME52k{sh9^*un3%o{eVJX%6#zyxn2(pgyfOtdQTyI^ zOJfF;HQpDNmQ@C=7#brHOZ{3E*PoB~aSY5z!iI|QP5%^c;~*99xc4n9FFpdLxxJe? zzvvttTc)?OSfBp1X0lgGIhI?0kHNK}kE3QHR8zCEyW{Ep*N&XCh!py8(z}2Q;MQMQ zMZ>e-M=LP|S7%?p?%D0gMefDfBHz*ZqHDA4m)7Uuth&KyI>$Zj<1Q;%)ea^wQ!&GO~$*Ni@S6X+N^HFtWQ0XsHioY#-$UF zDC|LT!P@T$+6ws&lF4k?o@#9eaFL;xd^R55ruU_$9yS|$TY@8kXwWNctH2458eERE zSMF~n>zw7`MoYSH9{qxCM2dS@t>2u>V_88!=H0ZYY`6TqWa()|`Ak0#hOcx|i&*&n zueSsuu6tT&#l(*(SM^**rf_f7#aJEF?nc(z|%?QpEZzaJ+g zPiON(QR^3_Y_Xf+)_ei7onPydKZ{ZQbUb8eQ|*cB%IZpNroji6w%GsB$)+ z745eiDW7?6X&)^vZ#orzGL$7B?ccJzT2bS6*d0P{FlM2XvEJBl)}ZyTcKd~HiwwjW zDo;DldWuuZ5O8|T6+_O@gjTS7Me*}z?wIkc=bEtJsK0#TZjB>;FLsPNRA+yf=x21H z+PhoLo7Xc*!w^6WSQ<8u@|%Yl4iBL?i4Go7xnPOfJ2^~r+Z~b#C&H15 zk&@c@0M)HK4jX)4WWJjBn`;i@gGz!WA7>;Fg;*hE?2$Jz>y#WgEQ_0wb{=odGQQOq zft*SeWjS6vQZ1C3F(dj6tJFJ{x~)zJ-PR~0wwZF8Kt$R?kgY-?WSeGSruj(Q(7h9( zi*{z#supCRQWUwYVYRtF>OA>SRI$i|64A&$2lxBb<|gcsaod?kPfVO!GnSz&HmkjH6ABpsmN0;YNF#U|AJIeB@ZGYrW}1p6{4nMImWUyUr9h#^lFTs z=k&F#!p@0)vvRJ^DVqQfvUIg8Fg(^_`HGyZlt89ufO96qpybL068tdF*^bl*HG>v+ zaj|bbOe*6hM5nfz9i5oXC-b`fxw{FGm#?_Xenidd|Eq6jS|M>DxS44%OW|2*cR22T zo!(@A>}Nj@siWZD!se`n$BDB&ZhBliluz;hsA~2P*-tiH-R`ky7PPBeK0*JcxPQn< zcgaDn!CcuoE?P_BxqAm=%XtTPZ~A6rzIsr*A1$rgZ=qNwMVO0bO|>EDRkz#Tt|q8a zXgM2hdMyB)^$u5fe_ua}QCq3X{jqOjutk(gjuufwf`SO=GSr+dBqKg`DWjEsr~|2G zH*Y&$>U&p_RR(iUaqh7RaWkfW%Dos1F)VDLYmkl8Z8@jjKhe!bX!|_*b#Xkqy*&z% zVDl-3?G|h)Jid~h+mSE!A4JVuE-H{&$}JID*+8v1cgu6iYFm|+mmEWgf>=pZR!UG( zY+g{LQRN|or*D6nv=)yX>}x$guwI_a&X-UpuvQZyqO2_*&h`pg^-uoePfP7ltv8#S zVSLY-&uQxAGi!Q0Jgj)`{(r!L|N&#&Ipa8zuyiy{Xv+aXqX)Mz>_rb?`CkRJ>|$V-11u?jXQlswMoU(W1FQ9eNy? z^)WCa<>u24FHMLwkNx@{v4mf@eL8);erLsXH$|q(_Vi7vQHMH+lJ@W7Xsts9ld4ng zQs1P7iAU;a^@yHX9P=2!4?cU``SLj)Zp*}9VPlAK;i3}?LuZvesQuj5Msq2`4#tpk z_S0!>9nI=PTqR59W@8ugbWc@s)Vzaqc5D19)DvnlJO1|cip~aXtOWd4e9^NQj&?%zgEyR zzM*NM{RImbHR4Q6+4EL60v@=&G37LOGf+O+9jV!GPfZmjwGzZ6q4(DSwai{ihbn91BBzENq zU9s2LTdw6$uXN*+l1q5Q<8uqg7ZdISL9#BB;?Nj! z?^`zq5i7b05TavI@s+Z&<_Uw-LVaH4!3$D)_+ep%{ycScD)|$4VLk`LPso1%vCIuF^dgglZHzo^9W!g$~G%xb2kQP*1N8J>?lhK} zTC^%%C>Cf{u*F@re-s|&EZF8Ke{@@2(nG8L>X5-k(k))ESyZ>oSue|m1a4e~{6(H{ z@Pm}~0W;!$kA)BqEDONpJNS82nfgamhnsTC^1n#G+tm?KI3$h=PHE(DL#K8n=s%E^ zNN$m=hoCs`de{MFTX3EQ)CrChO#phq2&dz$Aih#2O(vgL0Auapa|)JRY}fyi)?Mhk z??U9x)k3Fz^f<+k)Q3p>QV`2ut|T%BHJ_d4x$adKQZ>!@uFRnm_=dHGRAs{e*P1MHZDolVHYKdU@X*&8)n9+5xeI!bP5iSpkF zk085|c;79~wqLV9oA5WIMM;K`|I4IQ{rW@2d;*)%Un=Ie*^iQv42*xjS(u-{ns$&;ZZw(09Qe^XPZ5FFA8PVik?1#*Q>Yf(83=%{^gf6`>NmwkpmG5;ai zYzRY9_hY4+zNllAj*}j>X&nV>>^0|UG4+!$#@WcQ?&YnM%bL!cl9D%Gre?lu##Q>gP0+5MJ6nAp zb`!9|{p*>V3<80idnRWuw!%$C;)*9U5iJeg-YY^vx$*JLWMpUW(6PI^n(*dLa$&c1 z1Qy-Qzn?4jRKAnm@gsCoy!)SThK;Eu0A2m)Ql2x++VD99&dY^|OmEje4p6l2(8r~u z?D?}52s5q(uv`KD9AAwhfZB}Ibjl z?x`GfE;K-&nsZ&l zKKt_*P%^$d>%|GoFmyI*gi+y!8R^B1sj`+hPq`Cp5O5a$=lh`U;H&rLafNG53wCVN z-v1GUQ#f4a@kQ4seN?YurqTF+d^yY4E>HAz(hd?O3})Y}^8^~-3z9WPEj}-;xLI-h zD$b*L5L}DI|Gg3j7|G3+6wUuEcBdXnE0AP_KK z9QTSz{I=;o$#D`{Pw(J!G3T_<%cZHhS4hojh%BgOznW30ViNw}>+_}ShhmJ3Qr7$a zmRFfBGSy$yzl+OZ%VhSCnt#N36(hT>j2y^#i`mDJV2AiWKLS&+c16?YClR9@^oc(P zXP&;?vA!*fjcqjC$e^S;@^b9kj}j>*u`(Cg&#{sSAb9`h(lZrLiI%wLW|{qSc$0%A zCD1iDyyq&px%$HueZ>w+CG~ule=@I{$D+pA`I08-%gX=H+KM3-qqnnF?7tQJ?<+(d zh!NB*`VuOqsjetwXN5hL%iy{?7EWFgE;vgF^6EcZG6xw2|;?w{Y5!7O#RpTdExP<+=X$pN~)d9v5o5#t`5bPuM8&aW*D$=sbtD zZ-+6zN54KjTjG{|-QE2zy#M>%`-$V3Pk5*>%=L@4&UHpM+6|9@uoLBCMx>a z18bi4v$D@l{CKk_!=&5(T$SeH4U&H+GJHXEr=+Ch@ZjKT`xnR)qLk-8e$5{Kn4iA_ zBE5=owu^6*laF?H!|7ng$IL9L?0X?iziT^P4}1{)7FvHL(%K0H zDzaQpH*j5aGygGQDOBXphOA0pe@xFp#@PaRd3^Z-{vF^*lEL!W*J^orInTlzKm+Hg zWw1bjefv1Y+-o>pQGw@&k1B042eKgWVP>H0BYYm_FNHa&7E}tdMJyv^@)Bdl;pIK? z4g&D(_I7q6Vqz`t*%M{G$}ll8 zf#Kui=TG&z4&WWXBy9=}moi^8)=M=rVyHb+mR9<~{!apXT9WC&=`7o3Ird`f$k_N~O_d zSC^9#63Cxf(zCOh1I0M>)nnI3InVlql3yuf_H2F$`{(qxaYJ1Lj21&fV!oy`S}VZF z&CtXIJvFPNZBPaj%+XQx40k4WV@h7j#_@4y;78WzK=X=yVNQnD6xLUb*dRyUg~jS_ z5#7{M^Liy_CqtpYS29%(kM&G)L9t9By|lru>f?)q{WOF^`b*)`yM{uUr%7>41!>OC zO>0{Jctkh(n6=W`ZSL=9r=@jE9!+8I-0oWSi8h1WLZGwnyy+UL)!^plejF7PBtOx4 zLHo?o6Bid36|E0uQhLVEPswjD4;QlfRN%%&rX-(hGBge=#!Tfct&3gXEq3v&?N+HL%KfkIIp(Srn$ z%fPV;FYgowVGhsDf;s2q1Q%ER&Oa0^xYTl3@Ta$Vt#45 zVacOZHE@kU60@zXEttiCQK_D;Zv3^U92{=rnMFl5kUd3#%REc-=cAHIMG z&VO;|_F&*)`8)^H(jAsF1OuvqCEM~c8^6<>%Q7by7Zw&4_*O38_lGUp7Z(|Tdix8c zPIAf8*Dx_Dcue1|9_@k(WNi$MwisY(u$YIGL@*8k!&q%f0n0MSq2_wpN1R||a{xvy zpuRJ;vcN92yPM93D()QW16E^!_I&#%g8?uT0nfV?yV;v8`ZW$0UICC1<@uF-b8mBV zcYCBlPx{q|6m^z?)rQs>OH1pcYgd7%2Ue)xLPGj`dMx-^O+jpWFaUzk;tGD2B+xtB zs;j>SvNE<=#bd^;t-bmztymCbgNalde@H-p+1$zyIB9^k?wQ!LqpGS;@{Dzy`{h33 z3Raw11In8l&`+>{=^0pG|9uo%hrPS?O^sja1Qxoo!+13W0!FeGx6+XxD*dFTG*Y^q zf96f@FZSa~Yh)@V?tE|=h$6fJx51Oxnc1z`79gsD6DBy64RdRNn=FoSO1}DvLYu)>Pz!M`D z+A?3-S@iV3|8e^ZpADDE(D%SV>d=-7Cr5C&RY#%xv2SJh7JIw9yQ`?Ec?#IFva)_! z9srfISz>JlXr?{=$!{wt93CH=j1^{D*2mR)g2#^Eau6g1l;g*seP|JGPB`ke6!2(SDQ7pIux@j^Bwu)d8wILpj<&&Fs!pkqI{NtHJ)077f{$WflGZ;o z`N4xr{I4wSw6(SE?7`)0xyp(L{iAAgv;-1g6J<#V?^oJP2&fyFvVkS?9AxY2gNeyg zK8L*wzsyxg{1iNz2?UMEK9GIcEyssS5)(1WZa8iH>71;Ebqz8pFtI|SHETtg(x)5z zLqkKg`9N4KtGZ-)c9JX}syZ@gIG&5yqQ1FRQxBJb##p}bL?t*+L>ql8m-lA0SsSm= znr&_awTjWOTR}}t&BhmC$EWvaRF4G(-BYK>4Ge8=e$!fq1&mG7oVI=$HCFt({opCE#lC!loec<8n46ZT{GLd zBfw<$)cF}$Dx_tvgOvE@O>8rVMhXL-8Gwpc(CG^ z_W|kn4jNuqk?j!puJVqT>x)Yc=ZR0Uhx=|*%b!0FtOplQ4nbA9g5K{-2jXrsNNCU( z$S;he-0T6I1O3G!0OMaoAt{d;G*g8nbo--tk?!EL%HZbZbSzLS(p8SJ!Z1 z5C+~$TCv)oD2t3K9G!ryBe%u8oy@NrGMJ!{X zD#yja@m^1l@~Qnj|9_&{PNs-oi0USNEB})N$+}#IgSYPA4hZ_5YjW<4Fj=n-pD+=! z!9G?2?WA5%Sdbg`&hoiGE;Mq`zF?5ZOJH(JdI&7biM0J3Moc$S{!yyvbR>=Jwe6Qe z8aUQ>hz;OMmkgwQcd)HtCcLQCXq&K0UEyFIxbFa$J*<91Lql_OcET!3qSJO@rh^DK zE;%eboaEN6PsYaJO7e;ZbWpW5wp1Vm14rPnU^oj3-0;aY4HhD`u%F=XKH9mrYkE`j z=2_nu_k-5%F}v@#^W4PPj6>GGUe-L+%hLI-QhJPqwCK-h=$3Z0&peDyj6Epq=$5o^ zrOC70$5q~VJeHZPyp$n=;bO+Gp6MpN00G>Sx!*xpwlXEFpy0kHCNJL$`dtulse47W z#}5dE!fvxhb zfsAjRoghPd$5&i4C0h*ATqXkp!>dZq)qCB>I`5tl)q%6xS1_JP*K}|wEA#XOJ(?mH z*L-{IKs~panKF^uAm}u$t-1C}AbC-#33&1vmR1Dc9|(g5ihxqK)meLb8jhAS&z zD=;=X3KZ|1PzUmm`lKX-fo$wp)jPD6cq?I@sjNVY-G=_=bH2Z1iDG*0QSVl=z*N`% zL8Ofst?l5)agMK2cKvBnWwD##REuubif`|t7j^#b1B+KkB*Bs6!l$V?t9{&edY#!d z3=czFp!S07bk~3WfjYt}kFu6<wL2%QGD@B@A&KS1tBABRg}<)731Bjd34yun*Z# z&eJ7Xt5?_6oa)IlonBN4JKK3Y8dCs&aiA2YQ{0cOdxH$Lm<_sZHF&LNgnRGT@>uIk z327^B3H$4eGzqWgvC7y6>9w;PGuNsNdX}_y3l0%=)a*QM?>4z9_gFV%Ys~n9yvB)=-(npYGV~jKqx)GRN@stTOPN}RsgR29KYB`}q z=HME?eiLrjSUB9odYRd-MBX{$Ej^aLjbuM6FeNJ5e7S?q_zY3Ye0?Np_j!jK$fT=x zcQE-_5x)d4db$`uskqu0X%Vz;+xYXh@F?0}MId-0;vepYo3GCE#hkqe-+V3kzU)YU z?1{h^XjY%a+TYY0v+d*T*q_DS zFq9wrAfFmzA=>9B@zm$yT|iXg#k;uBOqlpUUO3m_@XflJI$~%9!88_Ze87W*goI>) zR7zS}Pe;ej-X2+Q$v{K%GF5(WXXonGtJf{8(%UWvhPtz+gqf#=HQq}n=pdQ5_LIis zkf^to`kHDx^YK2%SBb;^^gE?=vHJ=vxv%}?68F-PmitZd;8OnIm=7&&@EdS%!92~$7!QVdxeZH zvBORdr;Dj+RSA`5 z)UHrAw%%KL&piisCr9}&tJY=2aCNN zW#2`x#)RK13%qC1-~$T^zgl(jTbh|fcL6E!`6;%oWv<_xjkHQvdDKO#+M&SlV=qlE z7%z>^c4cuFhaq{bP-5Ir9@oI7c)NsDtQR04egC}yj;7qW*N~JAH_LxiC;;p&zNYzJ zRaFJj=bIC8WOwgc01Xo4vzD*~L3aY@FIXPewzXyc{8_u6vfbF%5i zHPo46-29{uzj0J#x{G=GI}wZMj%=S3d+gF?%G_r4?Xe&|Qc?;*Io|v7bYv7gk`J-D z1O(duCr}v{CKOlfdK>Ug|n~Wj8V?-cH>rwb*FUnmT%Art01UWmwJb;(7-~1Kn0eDUCWzk3 z2K68twW`9$V1KsWb*rMc^S8Y6@l0D%6Ol_r){l>tOIpER-%)m!4E-D(>%JSU~zQ~|$r906KdNWIo?w$>YKk=m->Xa(;vw2bvKa4DWoA_o~ zL3(Q=FlV?S34@G|(kfMKe#4@R`mS77Us~hd>qmJ+KJ^!k`nPg$Nu{Hq`Azcb%^R@x zA@F($zukh)QV2kKx%Y@Wz;Pa8?$uvg1tRC1Up4M751{6Azpw;4dUQIG-oL-Lyj=T7 z6<{{T;G6!i+1+Px#U{Wz5~17zNcUqxu({~t6wrzOnPEQ!g*|OAX()iDWS-UU%hTc* z_DK~q(WJ>e;tahJf977xQ=*sZE)JN8r%-*`&&|#P_5!i!#|H=CjyXFw$HmR9q^JnS zIJ^7%%m2PZ@Pm8yY_z8*54^~@7j+=V1LUq_!^3H1=ZqVs&;X5(kAw3s9xg6;Q(9&@E3;W&6EuA{ur>x+ zAG7oG+RB+~lbo!8(!(>L*_E(vN@|^{AS3>#A2;0~VTn8T1C4dMv{K6O{Kg{$hVSQW zZmGQ{)PB{juXOP1Ug0+uUY#CvNn1yKW7E31e57>=NpE=jc;YKG@l3V){Uy8-(~M4;w8P}3&lb%e4MEX4kS zi!2Jv@MsJ}pd&Ke^{yjAAV;AlQ?%yFQZEjh^7dGc*vOJr*L1Hl4X>X?(9tEs!9JCE zL5GoNR8v(2Yd3&t-1lQ(9Zl~oNZ9|QU~lgr<8ex5$jZXf4h8OTJ!GRhn412Ag$2^h z^7xvruFc{KC$OdGdPG9{-OvC0eC5{n#mHKI+M4Ygm2Ml{>#b{qtV_ z)-9TOoI99TU*DmbkFscQ(!4%~+rHkT!S7^$iGWmorq@Xm<)EZqps&zZ8d_$9b~zVd zq@9B|2|p2#I_O|`H+N^FoT7uRpnL`M|G7C`eSZ5B+j-5O{?A2`c+7i`wz|)ckIrW^ z2RRw%l<=>5ErQfZu|QWL`}r?~MEdB+z1tPdhZK(M!k30uhSNSwkl`X_4S(-5Awn~g z@EOi|hy&bxHT!H1)4QCmiNs7M?ph=o6r~OP!Zqqvs_X1Nn%1q09_DOBb2UA9oRyi3 zn~vJbt$je`K1`$_twt~_hvHytVt0I+aH4dkue@K)`o+)BW5{Y{@}rN|Ox5pe`?uM* zv{>8u|BVpC3TG9L|cL9d$wibeB+7>i*zg=K0cHh8rs5<$ZCFs&}UYb&n0M$!_;u8Tu+42bcB&>{Kq{XL7RNc^fW)W%ZZW|Q!k?JtwYdU`wh>`#T29? z2=?{+5ZdD{-$_u4=$S`O$_2ls-%ZRkALVh?Ee9ZuUJ}!icBYnVTcmfWwLUsQt!1W5~u#f*Kz<2z`J;=PeDoP`0#M^DHj(Z0Rh--gOHe0K;S+E zG*D7bjE$Xw>iW;0cd{F|0f&L>RwVMy-`BOf2h5i*U&f~txL551u9k51gHqV^7eqo4 zM~3~bu&sV-d%R}^02fH%L9J>r-!U>cytlh+X3ccZ+h%=SW)1)&J3Bk5R`&4lz%pwF zjK`nZpM+5>Jj46x58m#2M4`_mXG9VnGc%j@s`5Jyc6S4)13kDP&jo<8UDeG_L-XF* zIR*(<0Uy3)09YZ;l&;<2A30HJq^1AnC~2LZ1dGJ(Y5t(YOro~t>6?-xu^`kAQ*03f zq4k#j5WF>=UA~vw_419=BdNs5;g&zvo@WySZD|7$bJh(XnDqzVwPOXMb!J89zBHE! zZ(0jA>2)0_9efQIAQsz8X-*dIIyD|kdJ(|$<3uB_?MO9DT~YiyXPP}{#?3XwG)bYz zZ7bH3276n7cB@y1`pS#_NgvpDxMNcLw~fatBxTrBWmjyw=Lh78@J{qeaGnW$H$B(>DU-|p`Wea^1js(0U>m((qHS!ri^#Aao8EYJ+-Q;8E!>vTH z>oYUk1bDR%{}&H0FTZ`z_wQQZzaA6QzS+RAxV4k&mkB-1UApfWP3JTg2EkHgPLOiP;RsDyrZm5r8@o?b_}6=RW0e(Mp0H>>F9}3x9Z7r$Q_u{_ z;L8GEpS#z3s}Wc4mUv#dxbrG^8^z`2?^Vu0`?Enk!Z&>Tqpq%pbXO9Lm)zWbS6_9; zrVDj<7lG+OvKoK@!Rbn{S$OKay}gaYBR$1l28D+5@$h0{VS=54xzku9B=;1?$N$se z+20T5eKK8LdL7Z?U>8m_^&T{dVD=LhUSemYLE*_zz>`#P`tgTPd23r+L4N*d-mhQw z2j8q=f<#wY3Fi6S{QQ#4_|hGGHfz1$x@u_+n{9AxtfDNLj)!9>DTfW?!F#YLIK74s z&?!g|R@t_?M@P-qrV{fa&}b1Pi~iaBnOP<+L;z9Uk%wLxRVAt<<&gJ=WPV#ZIVl0N zg@=ocu765|B7X|%uI6>ty@pZ^*CWAv^rbpCEVVu+b5R@qz0_bo0|JA-CmyU_C7iqB z)|TrmnxaCb1h@I$93;@5i)-uZ@aL=D7X0CuZ0GjL#VRjNtj)U+aVE~o`*NSbiLY0% z{E;!)TrYY>t}<`p-M9_Cy#C$Y)wdk&A1QIwlt)Yr6vU`Ptj`BqMu+W9i>T~OiA*dB z7tS?K)n(5HLv8o2wRu`HJrNBm{bUFScAjKc-hq`60?ovQ++pA!VU^iswjO3JTkDBS z34bc@U(wj;Q_a&D5Sp8t`|H;)0E+!zBI%{=Vfu0XI__)et)--lKYX}l^ybyYi(KMQ zzG?gzJ9kk*UQ27Mp`pIHl@%upLN){G>S<~5Gc&h{Z$Fap&GmN6APnx{5clG^8 zI1Qfud~>RlBD%+Tg%|ys$h4GjV3lm(kIC>c#g!&wh3prSO4iaMd7{A^)~D;-R?KOJ zWc_K$XuM43zLOfW0?s@m24g$?WaHmW}RG;h#r|g1mOWTEhf()A@Ck3K&p# z1~n~X+0C9m{kcDz8-JrOPf>V$kA1J=r1vFxAOWDKppu78y!Uj9E>6@frdnU3XdM!%GUC8N` zHjN|u`?M=83$xQIy{E52QVgCG4jicjaXiKzYU~buyAvOqm|nmjj;`(qEr9;Ph|udu zB_S|9R%A?4B|g;1z=>X*Zp1T}72h?F>veJ9V}YW!c%lH2n~TRWA~u$#fsY@KIO}X4 zHa+g%=l5B&j(H@D(@5nc7qT$>O~*?*AeU2I-N*9R_G6gjNDaG8fdF+EFkkLD3wU^n39UG=@D>@b!_H#gEldI}Shf$>Kb zb@dr~sGi!I+A`C!vcPPIo}QSJGC8!!WCCVw<<6%ON&h@I-54E>Dip-!DS+hEva+(* z$vvax&o;$~$bWM9JR|?TBfbvK*|5qiHRR-6Q?9p`bjXOK!?RJ;tqTkE(fX0&SCkcN zQdx0EULq|uiAd}YORE-eeafFFVDR>#TjS5)Xk`64S<7^p9!KF2$fY?H7`Q@C5u@Rf zew}LV{JDE{lnjAm?!XTOE~XX3N!h(JxW@DQ^X)U=otXHW(D!pY@)2nAdn2T&<2G}g zyo)Q*Y|5=a^i@yw{aMN!fs_^S24<*EeX(qP0j?)5v_V!e}LYY5{z z>-Wf-T;If6yW9Q|`Bd_5Knoc$kKXa`bP@QKV_~?RI=1l08pn|~Q(W`b9@|!~&7XVD zjaaOA%x?!vn`N?*uhx0yzMPWEwLD-~nG&L5FLnKvcs$A_9vWXZ__{v{tAqf}682yX~(3=o1*vM5~ zH)QHS!Zz_F#1cae&-bloXNHZRd^wvMwtpLXG%s!~LcNbUz}RmtR&crE?Y7h}W5XqQcWWr{B1(Ji5g%8OE2aTx~;XONw&>CQT@r&n|X ziBU-W6?xsSDU}=A2x0LhF`-;Bg~)}SH2qo>MHKr+MIqLeLdv0Z5RS`z!QC8}N+};9 zSS_;~!G7b+nej5msSJNlCeB=SH-C5A85`%uVqKB2j9}T*AD^*e3esZTj%qfC=AOdM zt%i2y$;oiOPM@{De2zEZ{Nkds(ey6=ds@Fbv58MjZGuq}+=3+~;eiy%AMEXc^=@-a zOnK-yIN#{wJSZZHtYpFYTK-(VocA8~h}mNN4bFyiM0jIX9f8bqUcpPzkH++iWzse^bL5<50x_ARQvrQ~Mjbj4h%wA73VRd4Q% zV-mZed)AZE@Ci`i_>@~BvK$JT#-$9;UE98G=w*86$Du1sX7hw{D$SI(Jwp5NcZkP- zZWx~XnmBxxFDpnpM~wYBujS50I`PLl$*f6jKzB1-+I9tjA&k!Mc{diKhbwS*0W;9H zH{ooqB?*3OEN2w{lB}+OTIJvqOkwfmjuC=z>SiN_=Mfe@M>(O0y|mlCLN+o^k(9Q# z-%$|wrlUXg6im;@5E78>`7OQk+j9;jKGx<>Q#!pXz8$+7+Q=%H^keBtHaY2`@TtLq zopvOp;Gx8iySELGI?>3V*1Oj; z#eKANMcVWVMcPx2umzkVCIU_|=)>PWV@qR0{FOv1(Nh<7D5 zQb7?&U~H_oCO}f z|2Ya?If|?(&A1B!6ren4G=qt!!jom+n-Hda_Av+o!ax-auj{EeDx+Tp}@nA zLCWR*<^CmIdGFICJ0AnGN(yhc&-`WwLw#0(X$AHbu?uIn=og368p(&w#P9NE&~pow z_GRB;=(6j~}19 zEPg)-3&^J@ZrtBB@E{c2#k#x2KYVY~qcXwT6FR=DHcXCuK~I>5 zgYZA6b`Z;8Svjqcv0-c*EL;0|hYCB`JASbJ$X~AZnwrlga~)5H@26Afuf4M?56V7D zRai3$3h#(rlYg3@e}6F15z>cE%q6ok9EzBP%l6f%QREjb+xr<27}LOOiV2nk9 z-RE~B9Q5@9yH!5V=YAbk+~9Mx@zVU1$8Vx^jY!}ynslp-!{l>jti}W?!c(ezI5=~A z+2IELTka%jlJ1IAGG(g=+&|<3c=Lb8qN7n7{tGho`%Hq%{^aia^e23Rn^itluuTh5 zk_LiXiIMymoa_|i6yAI8yU~tqY0iqLEu*-x+c}|M-K|0iMXHnU+upA7KH(*J6d3zu zinAR=kn_|NvqLvR?hPx?&6f;L{cfWH@_W5yAgcI zvsXP;$S6GQ*ewhV5bOt>Y+Pz3|FqqG7rO2#eDnuv|1fo=fA7irj?wn8lX$H$wA^WH z@5x!Xo4_rqe6_`%oS&~qlogF>@KSz0r1X0EZPWbiVprh+YEc(2SFCRp$LSAIF3u&~ zkIp&AJ^1C<-^B+tBpB#fzwgF+XRkofT03EXz2d7 z;%>i{+W3<&?ZIzLi z=k5By2$Ha$3&07P3UB;VkCt|}@_grP>rAsX*L#-sI@IxE;jA0g6Fx)UO|!6~b+-Pn zq^;cKfOe92V$*?_Sk*L?Dql~~6~+5}n$0UY(>tUj`b?2+tLj9Az^J=2Ui-!AogoT= z4XRG)K}X`~k2erOfh*%_8_V)5n;Lcba(wAqOK;_+))_ve_zMOtQKs*$yX_hibo1d@dBSw|^QPnp>^xzdlghP;)X_u#%Pv=+FfGNpHj&6V zEhr#@dl=!CXsKDN?BB5#+RadaC@=~vYU{5#@Z^_!v$wj&*Kx*tmQZGlBO}~8g>@$p zysbezKSujZKBl9q`VwDJj-MA*Ja{P)+nug$!UQ}CkyH@k{mE&6} zw-C?mo~Dcvjr{N{Rk3Q-^29G+cy5PN_OYQlAlkL9IZxwu*LECz|6Z6zV#t=rx!!e5 zCx*Wb{M!Jc2wD2x`OkaE|7>*wZC%}@tV-wi?`NK1QUb2gsWl%E>YciqKAVnJ9!ISw z|8b=F+`q!|amuLbKw6T`sX|ij>tMaecq2X3;33VD6@J%BNdc5wW*`WNS-o;?N$ko| zP*+8n^T(D2%H@Y+-aFA1q`LE;(i?VC(L_&jj>C8LmCk=}wN?u3{d0@LXL-->rtZtg z{3q`Ob>#E|4`w>FR|z>5CQ@4|N20x`gfqFEb1HbO@)$!E>nh!{LV}l+gH7hou8M|o zRKH!1u9y^|#5P#+Ovd0PIL@Wnm5EnbDf3%oMGgIAoXa|nbQvhr3WJ{9zenDKAC;Bk{ry~EK6)opa#-o_)B=wh!IXx(y;Q)hUFPsd zq^bzH%G7|X%LdSms}_)=U!8mg9NPv-vP zC;4h5Bgs)`z0%i>Ftso4$3!Q`fyX^TTnRg?Z_nRv8I$RhU|KU^6dq&XNhabljg8zB zKHh9;817dkm~I)q=lViU5<36gASu$V+SNya0Ph*(|EQS2KZzUNSbKZbhQWrcGwxu6 za%tUB2gfDLM&8Nz@9MZ75DK$kZ||Fwl(8^|09p#nk-EBMl7b&c+un5lX9SqX7IE7r zVP;EIpV}`qP6cYotE;MZdo|Gc{jv12{`VHeyUTO6?y&JSos_6qCf_a(`MEN3jy{1V znTDa*C7w|4(PC626~(t#V>*(DKu7=*s>X~vJ5zc(&37iLrHU(T3yp9%wN$%rw7!k5 z*EoORO{V}A1}(0=F{X9&lQhTf@>oIhs|wCgEz3e__TZafmNS9K{1lS<_Bsa|FV7#{ z+RcSt>rD9&K5_D_eLceFiswFkGH&-|(UIB)-#&OgKaZIF zV6y)edNd=ldwo3~#J|1ur`w8~(H4T}z`ndZ$%eJQkBP& zQ!`>@_zi?j94Pj_Yf(GBI>ianlrCz^Ho9uHx;=vQrjwUe>lJiNs+hnf##?@rpys9V zF|d+h;Y*SA&(J|Om9IJ{zRRS!Yk(HH1(dGUx z)H-=7S@S4e2~u2v{|g+}SpovY)U=bMQ(kWF+}s?`GNda~|BT1LxPq*(uZwH?$S1&7 z&CsL*4Cec{h!6Hw)!N0{`(eZQwzhuy^a)raf4+SyE-nTN&uzQO&iQYC{{H)pXV17; zvMMT~EmWAQ@BeL{`Mk;>GjOkv_UDQQd$>Qn^u9F-d8&`^s@CbLr6K99uG)`-E&M6G z&#J>(q`nb}YG={V-$VuRHFKH8;;#KG0bOuXwC*C@GLBlg{a;bF$8XX>>>Ln?DYfu+BG zb&ibiJ$m#Am?p3%1O;8Rv@k+}L;jEIO?RPHF;P)#OG|Kceap_n6UGjJ5k#><>V<6} z0F!`h0$2qshEdspfq~GPd_-x;-&Tz0>c-ZdfcZ{JW;BJ%JVL!#$9N4OQGRS6h?SX{ zn>9<&)zLA-xClHg4Ul+4tkGMBSo_2Phm(fSvd8Q9t#$(U+{vf=s#t_L(~pOqH3oZN5|@s_Z?DW73|i| z2ns2yz4fVo$eo&pRAeMQa<_khY00>MXIM>H?ph?3eUO8T3MYNId|XApU9DI_vB&F_ z8v7tD!NFaEhZo@JgO^CtVN*|#iUE<-$AqQaYkp~eNH{!rka z-Hn?!<1sy42NotLA;+mCKi|#h!Fzy{)^s5X74ziu6jkZ?+9uur{Hkx<@Djd+FfsWV z$qfmr0E%X0WJKNPhb{dlh=YyO&tVgT(n~n7Hb1R&xPAOAHJwRM2PRCo)IUL7)IOA! z#%Mqm37fjPxf$^B&o5q(2LToiZ!9Y2`AZ}_J9~Q+f6Jn}oZ9l@q8*s;dpEz4LT29b z_*=~jko-F^tjgbiD|jM*-^+M z6ZH|IES4Y6QF`);cI)*n5#-0(V`)ek&dgzLN4hNO$%zvD?1ax>u&fx^MS~pdo?U&& zOEf^q$+V=qKWT)BG4lS#?=qimV8;JL?&DyKFCa0p=?z+Su7mT6jI{~9E2FKdQ#=bTqQ`5IZc3vg^qUQG~eZKLo(cye`Jg_d^0blr2>+M}W12LROQQul;UcjtX zi*f>Wg)zBLcJX{i_GLEv5AlyxP)gMFZXKNtYn)%-p?$}2sNFnowAA3f_W`imrMQX( z?u}Va-h4y`A4lrq=6wP;FIwD`#iQTjNbVL1OzTwFV2AVBEvz<#-Xap27eD-EMd8S5 zr9<3=eG5P=VzQmqVmeCpO?ZRI$!@gdLmyCL#oFJ5Cnt*F9J5q zm&Qg&_Vl@i-<$2!)NXBRned5a>w9FVn3cv%VnIQ$I$Wo)skXemA;4KmLSyC;8^dB_ zjyCMCXbp{%uIn+EjKjWFU(_UVbq&-Am}$?idLMi~)wE}}SUT_Ym|L9{jPLOb!t*nL z=W)q)#jm+w>h%>AXYQ}Uc2lHZ%HIA!L>Xb-9Ch?+33r1bgX_ft&CnWZ5p4w9F4th4t;~7Zz|d=>8t>;ddl(;$shPs>wpYt`CL0O zkTDkT3d)CxHLvvkNHWfgJR$2Lj zzOMCI4JMz%vEKdrL9r1LY3b>A1BlYX#!5x3zOKZ;48L9K+2w~-|6=r%{^idP_=kfe zEh1g?8(8Uk(Z}hZc-J1uZ(3Bp8EdUPC1tbhs?==zwXPzOoe?=e4`-9uQ{L7LW9Y1= zujQjned|wn_g2xPL-|+?Ot~qSQ`&q&vFjZZ$wy zhZIe~7bO_~xw9-!dh))1YS_c3Y-;wKxtZXUS)=Rck^;tGcE)77eKKCM!rJbX7=HXl z3J2EoI0u{yoPDB`#YeaZ2{*2fCeOEF6!ZJ?taqI2`vD>C<2#2K76!|&mtr@EV>`!* zE}+xw8*~$cw?4Zy$tZJfE5Olc-rIyVv=(LyTvtY`<*Y_MQLfx_4RX*NtUFm zOT>bFX1+2g2LZtO9JlR2q{G6I$&!%Ms+!9o4GfR(@LVQ;%t8|z6oQOrn3?M5AoCI%_k8@ z``@1pPC)=u*?-aH}$j_y&puX~zrJXesE0+Ga zp}vMaSipLt|M)EJ^e?1(v5~HK;;}>v#dVGwJfDJsVRV!{FGI4MhJ}R%2><%)MYZr4 z89pg|Sm!J-E!`Qp{lMM%Frl24=KXW#(VGDR-|LcL=2@hY@a1vy3YWMtU%PMR249EJ zQ%Zf)k;le1!I&=zz4)4_MBdAYhKl4J6%@aFJV+*2m|C5w!turSNae_hBq~uZqj4%C zh(b4@I6r?UK-JOvad(mK!|#ppFmk)4_MR<@LU$3XtoE_7V0azfK!PEGt8|tKAuEsg zPGYQx7?vKJcl3L+3I-pwT>2k9u8r}&msLi+D{)%xRy)8=bL&9fQ)}|U zpnyk(WlGmoBAhRqagH9NV2N>S*n3lF*S|myXZ^^jVo;|x!<$0a1x@Z&16(`Yv(HP} z7?UDK%c8Fw$qzJDLu(%V2|o=jqxzRe=y_#*0*zo|dQxV!4AB_U8XD^=%34+ znwl@vrncX$2M}q5!KhAv2+BeTlz@}szMwNX3CUAFzVx;OdMH>wZ`0tWpuUua#@3Ay z1`mg#){f@=dOU+WhW93u?YKVAWhrF@ORTM}KIt{rmruZ5-4;h)9iAI-8Yb|%(p*+x zpmV&#PwI3X13mJt2io2gH44s=&{(X2&xKnJeF)J-Y}@4TwM_=!4^JykuUy|lRQWU6E~LLvd(m9n)fg*`$y)?kGb>qqB57>M*cpl z+zjo%S+8(e;|;A407R{s#^vPlB0DR!%PHJ(`l|eSZO5eVjxxRl5V=C-{_lr$2cvTa z$eIw3d;aND*x(>!E#ui6jqBA`iXvH%!#i};h~s}ixDDI}I0`|50!oO=N&%yKvCX(f z@d>`&^}1e1kNr1iaq=#a)K;%b@*|V<6nnF^oSqbRtP>J6lF9Mwk84O=Gq=su!aZGC zzrus@go#Xm!kbzo9T__x9?>P(PeIzp7Oing>3m!chrQqNCUs}zr)Sj~%{!B0rxI54 zQ>8AUM@GfRyZl5>2i9q*SNZ9b8Z|UA1q@n8d*|*CfN)h5$e6cO;83tcB;@jy4ndqO z7D-jEXTug$W7hX%mrP-A;^namYJXY&7pn~mzU~ljc9y~si9AP9+L;1F>{pYy9H1Bc z_eAsI=0$UJjpC+z{9hh2X%T*d%*jc$)aaTKHR6|#Qtg`o#k!L-r;kFE1agd#9tCcf zbcI;MzZqLoW!-?s^xDJK1-w(9#cZW0VD* z2ZAQ-An&Dh*u?M4iQ?O;OPwr9RfU?&Nz!b`B$Z1w#3=t1mq8vKQ;THEqZSgm^C@2& zPc74rftzdiF!d}-L%G(QEbUXf$W+|SDAh&7fRk8Rw#6b@*JvHRe)f zZXCMxcA~t`<~9i(S;9uyp=5W;eXDufxb|0csZD59&xrw5H8bH~?uEic^Wm#?$Mj zZOQY_>y%Cdd|R>TtVtU?3Lp1qAN7Ug^#RoKpE9>3_fTf+a3deS6CVTh##LoQ%Hh%8 z$`iKM0VAKLHf)m2$m7#alvaAPa2AT8M$)yj8C~P?XY@~P5^9)(Qq9s(a8rwp1Ag+)6VlwLP72o08?>^U| zeFx`BnG;*)tVKZwN~J?fwx^~&`I4q`@T0NVx|fIPYhz<9pI`rS8!F%x@PEyLTP|** z@tcur_c%bXFr&1xZPhUx{W-_R0$Ut9s7wFb9Eg|L;csA4FZ999&EBBi5f^W%$8(-p zfNtgH>=7js<0-oCk;wcXs@TYG{N;(VM-Q2HamZJ|8Ct%vfL~xPm@jS-(RLU zK3Di(AJZXL=g`pNJHW;!@grMJ;dXOs>bxczIX!MivNF} z2!AnB1(*E%{JhMxRHfd|?Ta?T69z5-x&HmakrvkB|Cq#_*uek)e}6|bHv5+O0&Hhb zvj2P$d*i>D3pwbwsq&!h15Wysn61q}pd0~t_G~c0>ZxaS&T)W=L%GX&39cY@RisNen`jMs4g&u@I~;TACd-U3%T(-RzZs;gfZ75)n>7P$gi44{MwWh`BL zI|T*BaIZ9&kub5d=VoQCT_^}L;a#+}v1zCts58{e=RMrvNAA0^^OgDHnz;RTmVj$m;cYt3gEVu-d=fYYilqX0dY!bsFIeJ z7D&tV^pd&M{_QYEUVt*F!qpWhzOv?9gM(pQyK?l*%$!f2IP5Ol!kBe?l->k^Nh29t}*uB zi}gJByyv`XhI4JS*#E33DF- z&%3NtbtT5R|EN;#!CYRzbV@HaI|$#D!FFnCxqJxXS`Y$4w#(PS!T5o}G5lScoFv4= z#6-X;A$G_#0DHM-fFZ#&o$()6$`>RWLV)of#>7ZVNdv(mm<^%gd3t*K(13JCL{#vI zhzuh3pLXptQ33=<`WOp%++ zxVR{Jk|Q?ej~YY}mqS8MzPYlp0_A0L(sl3K)!Ns)4{rs}Vd=brfi)V#NULyNLQ6sd z;f(enph01mIJ;!ZBFJqkeaQij#YQBjH(7L1>Xgw=F)$r4u=78Z7Qht~4h zOAs|b)YK%oIKjyvq?DGDawTQBiZsrE-R|v=xvjfZurk=ljlWcm!8F#; zAgHG9&ofBh@HV`e^cFa_c-7TYS2HsysyJ|Y1k^-CMbk6}-{}9nEZb(&*48eLjv#RK zq^t~pb=kxM1H|@nSkm?{UVu$UUVIx3Jtw0IElnORH7TjnLkSDnq>=3RBukJtnDm?# zs#o5>d#7N6sj02)oW#=w?w>Y2+>`Py6k5T9b99t&7K^Fp+Ze-1090cNlNhITM^~XI zbFl(7VI0){9RGbbZFTv+VolLKu@D$s@r^C-Gcz0C?;ul9I&OV0gc#k-r$j z33hiEU?M~twsdslo{Y6gO-boNV&Z0F!y(al!2FL2D`a$J!~u4``uSX6CYbfW-kMP7 zcI#IVQC$6NC@n3cWvKtm%!91h^|}o?mj8lUz*@qX2Bms^M<3rKA~xdmPcOcnfb(u< zO58B)oz(L7r8fErdQB1O#{fC_{F(g(DHMiZJl_!S1@vKI;qGqzrY0vpI6Q9gUhRjy zn;=97-{Kgh7%ziDuQbOqow=!*>IeD;8p!vRJWgLHlK2gd_C=VQi$X@q&RpFKq}N%> zac~fxWln^*$^3&ZK%u%F8%#8kz?lCZ0n49C^ z;x28Oxe|tUnS|)PfbF<|A5$$N#>p(WEmezopQ!e5>1Ha}+u7Zco?{Tf**QJ@#m1zG zI0x=k5MV$5Q0MIYoJ@=W^o~(RLRc0;r-XI<+X94j&#N~Tg z2TJz`DcDWAN&TdxkjioN5gFS;i`m)tSt?E5U1CZ@fCOjFU|Ps!b(dpCa&q^_Ra?4* z4{;IQ-^}j*D(v7hAA@7aMf8VvIv}9N|8|L;=0Dd7Hd4x(onuu*skMs|jy%yX{G5}Q zG0Mtd!~(~@fCU6iK`;hPWgSJsLqon7E0|YyCTa-)qOr3tmO;0Wl>Ek#++N5WW?D)L zN~7Z9B}PY@$W#p5q3ucbeLXUAH;=QLqEAHBnA~GV&70JuurW30kAo^$A3#9=L|IuD zhZGN&=@;WG+JP2M_BO_wfexSSQHz+ESW3mSzOMrXj&OCobM9TTx%6C7@RmXf;~X4l zZ#VtL`SBD;s?|!wcFbGS*0bm0*PSsPrYP@ev)=e0cSkcYFq(R^-EDj7aNlu*%QREU z>aL+!>_VI6J2ngWwwKp)mOlB2_#SQFLi2&N!U_y?GJdzj!sG9D7Y`5Nlkfs!xU%sJ zY?apN1332K&7nd*duZY)tP%~_WZ}i#f&v=mY}aTHKptJYsG93<1z>)Ng$z2 zwO@;^l4!3wO-&`;*HY>3(gduYd-PeyAgwLMoibC+HZ_;Mhff$*j=E&JsEUv~YO1PC z;+8JV7MNwCQ7;{IHt9Iw#@Tz)?|ok*IurbRV2}i4krIGL z0HR41^)#+p=3e+&8N9r-RCA93iW-^6VtkjUZhM7Mi$x0-F0Q?;ZJ{u+la&?oXEL-7 z-=W2>$*i25xZ}R$@az89Z4rg#wQBz`Kb%qNvwDYfbwCHP0HLbeG!EAHG**C$FLvn8jyVP|)DQr1u;M?CCfg#7m$FArTkT}Q3R zUhKke!#{sccLqxne3Z7asI!M9mpXcSVveqp+>|Q%^CjSfZpW<;A&BTz)OM@;))DsP z`@Ec-ykl)aegW*7HSVu+bga?U*B?mu%DhcUDOez@;S~VADZjVKLHp}gd#-1L7~*ju zh(2Ej2Fyg+I5;9JsvK_Jb3a&l1T#P#m4~G7GkvWuQh79}re=0_fGghWqXl0Z*5jAY zpWmb7`T6+bxyDL}pe&{>_4CzLoPaFsTWoA>3&k4I9+rjiu5tzj1~K}>E9zx$-}XWd zn-PD)a0~#+#c!&l^%hvSGjMXa+ttXh4|{8eio3tu76)griTEm#Fv;lKm!?cJRAq?u&PuWoepv`=@9>bFSYZ=#(i=K1di7pIUNBm8GyT*>;sOV_(9W$zJUt4>C z%-LMwPWJP=#=G_U>MS<#;km^g&9T@bU4!|L}gfSH&Lf!i zOz*<;{)kCR=7PFqY1jG3%OQT0VmD(&NXEI}`Dr@is!`hK4Nj52zN7RCRR1ODij^ z?^759Ka)zs$RQ?n1@~A+Ff}PD1`ZBkLduUHhFDyN{ncis!*Ke*3TrDfJBCgQ4{qco zDG4#0ig#Ym6w%S%f?tBI6g6wP%yby+8%xpnuDf^{=;P*4ETO`it=)n}-R`dgN+l zef^Ejf{My_&us%a5c#ghBB|*rTzud&GV5b=Zd6oJvB+m)WSm~U? zvZT?He#0sM=%(98;+hs*(^J#CySg9-5e~V4s3*#=$BIwHy>{o{N8>0EQ>^5D`cn*u zyE(&@z$Qh={ENA72$sG~2`QWD=|EaR8fCbVBvNLE`|CI=@#4>+-Ex_J>H_-vk&w1$ z@bsyy(TN(}L7*|%fp4?1J95IFYEco<9SRDEW}03Y2luVvsRk;WC7fN{;sx7QATpQy zp2v1Hc0I*F5NpO{D`F>LVPzbX8L^oTZ6lC>H;c!2`J>?98t}<#Z$~e zYsi$0nX`@W{qYkjI{HICKJGlOQ)n6ZQy@hQ)GC0<0?Y8>pHJTYHN z<+MmMz>$z)=@T1rhiN%S+;1qBQx8(L)Ov=^%w8q@4#K(Y#V)?z-R{xdPqh4ep)hJ= zO^d{1F`Y$4L195PU^I`};&kC1=hAc5rNDd$q8COXFiaY|lCG)Wk|N=W$|iz~w1xxmT88maMmu5_bxzUi4dm5v^C0HuDz zR*u}jE&G0-ht&jM?5u2o%n?y)tamy6xLhC~PV4&)Ge0Rc^)0oBql?q)1d@mr#Fomk zvcaLD-L@cfFpXC#M`J#ulydt0qZvk7kyri3OQ}41A+4=5Fa&1{hzIN}908~2>FH_O z1FfV^$%#;hB-(pi?LR|V!ccIb8VF3rKTKsJhllMy&4m(*>Gpgfehm6RxWOPQZE+$W z(W%dLmG{Tdk;^2nzJKioGG;NR_T1#;Bpfnjb1N&1ch)ao#u;Tp+qGRivbR7+m=pbw zhv#(}2pekeFj8&~ZAZ1<%CS|lQksJiD#HMR2-~YWK7Qb(vj<=yuT+OcLk>&MumI7l z#~&mzeFuAc61-BFRyc|7Yx~i%l0mb@w^;@1xC}tdv=+<$1%fn|V!C)DqU%aaF+X=r zUV&Y0mVp(_hdcd=uKK+LHa0AAy?f6qC2M71dGd`K5QgZ^c zNZpCDNx+u+VIGne7A&t{Rr*v}>0g{r%}5zjMNBFdV|V|M&ty;F6TznD_Dh$}@t5wB=`Y>%Zr6maKib20rb3@bxa{SzsrdkHgVd-eJUsS& zms_zgD9e09>=W7NzOmvLd&-spb_A$mXu+ny*ccuV9lhbr@ zu{ZoNed0bkS10!63t~V(rcI?{<~IP^DX5rP`T2!~qpIaO!m=>R*8R^@a&n$5yNeY) zFM9LzX?skMWdBfK8@rOyW2ecBP89S9v8L`aD3l?gA(99zeIAj^!6Hio@)Tt?K?p}7 z9W!%N`f$1EYxmSUWIsBF)C5Rt?FuwZ=*7Grjol?dpmD_@$6EL}LH36aQ!qnv3b3l$xOLQ1t;!#b^83)Vl~wIWi~_?R z7Z=B?tiYj;pcQ!+{S7KkyfX2jg-bN~O*L|X^kcx>>c6(-n4Y{DDkLM6*1G=X&xjh| zzCmaBqNBLq#SFnTzzmH!?89r;iRZm%O}ni~(p~ml>(gIS=^0~rpB8fAX+0=d-`(w= zP1}ORv#Qon%vlLcZzqc&AWoF8^_>s`l%*QF)^#FIZk-@D`eaB(_(Z=M800aRE74y7 zQ5&HgCMhPBzs{8H!EEt8F;v3$f0=N)#N=R6s9Udk7xvNN;keKD=-oZlg8cm6=azF5 zoaeQ<6|?6p5|Iv3rxOMmB) zV@Evo`RmeQ3#%f7FM}cj*0x!)!u&B?!byT&TTsd(IL@igS(kWS`M^xXfnzqQx?jtTc7$n)Uq;VXiwj z-bXQwmFEyk&=o}j`8tp}<^Gt?(ZfR!1fcBfF}lPo{~@pdzBMs10q}(d@|1=4j7CS$ z%Vf5mlA`?AmnE<+keWa;+ZhC1ufgO+(wo-qZnScS*hHN2e^fBGfsc!p<}=gMPS>u^ zpZyn*#udc1_^->O1?4}WF|A|o|M;^Ttot7q-2cBG z+_|*;pC^jKsa39qBSdogxEK2XLc-)Bk*V&JO(G7e3pVF{2oPgov9`8;lyTcUWBN^1D75s9Np;$*qF<*w*HzoV>hj+7qPW ziSOURG+fYpjs4}zm+PxP+Io|h20&SV`0%xNdU~|a+V7OeRe*;l5Y_Y=(0F7&ME-pC zJV`Lbmked%t8@Q=_8+ozLqjriFE5di0T?>lO1a75+S=LzVTj9DXsTh%;b3E1cRM;C zyOU&VqvZVjc@bQd#5LAkYHonS!#d$J(J>?x$ViMUop_lOkf<=JC8`nK4bZTxu#y{0 zBrz|A>1zmxiCzEB3w|2&z5I6Z*N#|N3WiQG&uvnJ^{M{B!Omm=D!N0Bw>Q_9*k}rA*3`2vTqJU6^YWmFTP7ed?cL6Yh#V1+xRz61Wj8i7 zvvYiTZl9fy*3i_%wz*4r6#h<)B)w#2w2IrrIyL8Ny%*A~1@g#dE97G{Mg7ERxbOxh zatbJsZkdVLR-ZY`2uC-2J=j;2+`93Rs z{r#q@v)ge<9lVVm)n!c-W~AigrUdYR@E|u9$Bc*osO&L z^15fVFR-6?_wHSI&ieX#f5!i0jm8x^(AuLqBtiE2f}Z=U`ADR*dyXA+^z<7lh0Dh+ zKIg<@G)|}HE{*MUs8-}BPx3pp5zmIbFVCj;mlyHzgQTVZEmWSI{MJ?j)QAf~r+I`2 zVVyr4<-+ZU_VW%-PIu~N@AzE_^70~=1_kGc`J91PShW+bju0t)B1!|WQD7mD3Xo`y zwh%9P+Dy&fzs1PN2w4tSe=7XicFxh!Dn&JTtFO<0iC^zm_+1_vT?dYCqzn%Znp=Sa z3}Ax_!{)$^EI}_(r{bsQH+{&0)DZ>9 zDeTiI`EtF8{-B%TwbUb8oZL$o%|>48=#Y+2K^#C%&TT)&@3Y-&*O$Mqr5?{9%9zyG zg@vKBqlX2D8>{;GG($cRI43M`n^+}HyrfVayqw{E=;nqKht$X;rODCxsrJZ-043-6 zHqO!hAv|1y2Eyg^O-D|{XP;f!g@nk-1^M_w6xOMCBz?ZIUo|UV+92B3rRV&89CQ{M zI#>6Sw;N9WGy=oL#K!m_n_ml+VBn7Rfb|gSwLd~+RT*UO1_lK^$r3#5?2;v6U(z6* zE8cw|bt$iys%mdYRZQnuRb59?-6sNArLir8=^jvq(fbkA)e5JpQ%1;0$TKk;-#aIg z2$Pvu$N1lov3xbGci;a^?b|v%X#ah4cO%b@+$6G!J37pSZg2WTVD*)hQ-Fz?!O+l< zj-tNT=a>)d#DRh)(^6ik=xELtbw5d+`Ug^Qa#pVoTdtLZ#IFyq8GG88^pKM*MYB(K z>gL>jLw8Px#^byM(;P$zn$ERk2^B?c(((Voo~?IT#kxCiaw1@HdiG}v5{Dz4qG?U{@mDYOW?|PtWKeT+M1qoE!FHzAM4g#n6AP0XOhpd$V z6#8~{)?IwTMGIX3-)la7>Zoi47%WUCFmOTYW&N5!U@wAop1q_bqOQA^dt-enTv;^{ zHrNi9CggZ)S69B9OLTFuv15ehY&0~j!^3gy^>3EM)llh8U7jtALb)9$zw`0?Vpd&k zt(KPNlHK@#*p*RDr+t7&tLAXFFnZ}iI-$j_MA(-i1Z8(Hrmu@X_n{72#Gvq0k_l^? zu)77UB4FIFttY+0^jJl*&JjP5*B7QR_UT%DczWzl|`hC=>7>Vgu1osBJL?jm5e$+hJ7h0m=nZj*f64C zXlUr)?^g5>U?@z&HyMQA2JcVdiuvHv5!TS3^J51G_sn^pMjO<0y!(}`r^(IF2UXkn zTVYYj<#~z`%IJaj6~*LN1pKEWl&WgF5y_BGMrr_d!13!zi;%Zio0|Hb z^J71z9Njzewz7+9*OeqRvm%tZZ55<1z?!4_Ik7|q^We!q-S7E4n=mJd}P?ZHus zkAqcIo#ZV`t`6x#WJ5r7Y++#mpfAVbx`@zu`GZ)!41yBGFyFFBWtPEOBh zP2hkJipk$TD0m8t@Y#!(*TaXYnHb@lC+qmHtrD-02wWi1(a-0Ya*nV$F;EjR0I}x@ zMT^rPR(qW0UxFn8A*!T?O&Uy@mesO6yy2GT@B7o zi3vc(RHTQ5aRitJQkRu#y5&Y^CzG!>iIyTL)!&9-K2LocWwRFI0!}5(59Or|5Hkc! z9XIJDwogPcGyOjT4!)z#?%zUuqPV3_isD_-{F$x>geDPnw`g8DaMfGc zDBiERl?k^JWg@}m4KVKjr`hXogF%LkjjgDlz|6vuhhr}~@RjZQsn76f{KcO&yWX;Rwb4&B{A<``pwh?+S-|T` zgyOa@#+yKQjnSh?_HC?}7w6P|7k}2(1oUALpPjsJpX|l11Kl7kSL)XmztgUXiKERw zTk^3~Ap7*J1ak9F>T-fM6CRpb2=KJ&4hG?rqvWJwbT?P96beWwRNR%F%5c z<0_yVx;ne1(ok5&l1GdI<$nTK7h2bJp1OJ496s_Fbc3E}1!ktc!X9It6GywvURD-c z>dzw@M0~Iw1|8|?>1LhmJR~OEC}ZK7+|(_YQ7` zzQ3E1+A63U_h86#1xZFuR`7HEy7(fJ-Djs&sQuVZk%XQB<$!e>c*~=$b_^ogQmDit z8dEVn$qFR8&WpI>qC=OLMcQ z0goAJX<0%(XJbW*4+4?W@RiEzDk?q$q)#J4aJiL0j}y?%jcJkB+-&eL!vEA~cXf4T z|kuTYYcz>6LT4y_-98jWXKkNtgYRhj*aBa z13r3YY?Mi3dvh%mDS=6Vq4URR)nNtGt&PU|!p{C#p@*Dty7Z%8zx#~y-mGu2Vq9HS zB$P!2tY7GPU!^awI#9bHRiF6@2YZwIe*5>1pa?TPLB>i7;!>yt^^Aj&rzSBV%bzv` z_lB9wTwyh76?!AyeJTIVsd6LBgcrZBFL+yW{WsPqByo_c`Z3 zh*#G(ic4NcI{d+Z&~7g3dy&ek`0)8eK0@MvCk$IXKLl!liRCi*RQvKfT^2sK&|eDk z4n3>d=7MF26I%~J<2FuaSA2pIs&;yM{@(4~-G@U4^%6$RnT{rckk7{!AKt5wjJBGP z(+!SCuJ6lCDingQIElr|$(8ZS|BS|e(KDZJPc6+T+Kr*BLOYw?_3a0oWN!@t3_x2| zdeMFqo`}0Xa|Rk`GFdD2O<0(`o*uaueonl(_XyljO@0*07vc(pw&?xf>qDV#jp{P# zS`59j%&CsB57$`bXE5Q7Q$Ao35y^bQYy;QsRCt?&%t}#tIqor`8?TsH_E$Vs*(o5C z-8UW9AVjp$e~1>1<1=Ysr*?p+FE0;`S5GW8$u`m?VzVGH2y-o_%mPPB`MFV+Ls{?N zl@lkByk$d^^Kg1OU%$UTO0VWiAa=(i05vT&txc~=-%Mlt{5DmqU1bcl-_^|2lr|Tl z08ZfqWJ^M9Yzc!Vo?+Oxh+>x!S;I;PX1qcS&rn?z8-W&FeR@uS?<#fKi0$D^Ni4^= z`dy#hk4_lP5^_dU@0qT$Gl-W$m(zrC6jMp%(J6>ABHdRvpK77&!c?*6O`H&m_@!@{ zDdbguY}*bLpAMNK2j8|u7=FK;FQRKI3yqrqUAR^C@#A9^mC&u%xIRTJsZ=f`R3`%o z^uQG}$2S553jN=!wQb#0+KWt71K&^ zbaS)Jk<`QBGRxDFlS4CuQk;{TDN|>^yUW1iqcp?&m?OBMrNz(FGd)WqxKZZZUs<2TqfJxk>mV>ByZU-# zWnXl8_<+-b!AptYZ*+?#bSH`k*gZ5A-|O-3l7wN>z5tzpdfut>GLn)cC>i*J`tt4( zD;lffg`~BS?C;O>$f-ri{PmM(Vro(yotW%ZgeG$>(laC9Sst^xuS>g`rS3{bgK$?dkt_owSqpQA-F zn9@3MB5rKewjH@GdGKr)ubxhBdYNXGY3F4ZO}XdfK~Ez*A?jE?jJt20%&DoI;PL{f`AAhWyn4DaCgb?XyRR!y=t>a@1DY%ZP@bTMR zf!bobx#@p0-#D)M4-Qrpdy!)~RcP5BFfbIBR+U!2-`W^2iKiAZ6NAMedyhc`1rnEf zb`Fm2h_Z?bCdxGy3|gAexw+3x`I$C+yi-w4@hTo7+O=Yh17E*B$No<4k;iarjLkrm z^yfps@?0?ZpH5?1$0R#`Y?wS^+5gsxVnU?4e{=SJ{K#H@1bL!%KGM<(R?IS#RKA;o zWVou^x0Y^sncQKi200!fVRc(tSR7QdsLC#Yif9)B7r&X4F5=4<18$%p%DQ-tJvX<7~1(>ibhjV(& zM!%Wf4wxNHuPS9hankH4&r9E&?yR<4-w7zXxBBNzCEo#3bCbO}EO6)^+|(<^N;I`K z4aC`VuGw7O@qxqJL?Z|7vw%pvI;oSX`W^jSv3L__(g`Ua@DfN!w6*71|2R`$Ub+Ok zq2&4CQ^&pfHZd_@?@`^9pI=+P8@OhpvHenq@NaeE%ex!$hBV#Lko0+FgHyaj6WU$pYV3tvu-h;|kDzsT#Kzna zz{h*j$lxn<0Ke|Xsy%3LDoxN*-(>k*U-^Kb?>oVa&gZZarhL=4q;UlW^z`{|m%UM3 zOaX9HN6N~`0ajt~Or4JHnSZPf3!Bc0Owq}YV>Y&lxIGs)SiQ-m6dmbXb$pb3fz3qF2? z2+SETFE5tEkCU^rY@t`1z*qrMmed4S^tYJk=)KM95CLB3ne45t`xfQdhmgG|ZD4~& zv*#NmE`nIB{>1Z;<5ShE4G zR@CoXk~^?s@b;qt?@RKrB5IES-teBaZwVyy^vLv_lao3a*lj~?0X%`ilBNdV=X29r zF5r^G=Ln`n48~`-4dFP*-$KPgY4})Gg+H$jy)LR8%2v>+arr}KB|J0^R-vt(tstE- z3kZ#^HFpQNOv>i@^DeAAs0({cDw)RIbke?(h?G@#76(E1yq=7|A&*rnX9z+Z=&ej# z%1G|04GmvkJ-i?CGm4XQZVK$nK7v&PoV>8u?#lw65@7 z8#+#}0w)P|#Md;ncg#e|HpzDReX1+)a7q-%aYUAJQ z?q}OGP~FUTx$?4P3?>)zGjs7D`*ljxZ zXOo9B$kbtR4A6YFH&jJ0PRzm&$I*!i7br7#Kwjk_4aVnvCaXjwa1m};Z{YsL1->Yg zE=m5*g@R5DaP~K8Zr%kq&8xZpRTXE%wNSTNsN1L7n%KCw>W0OTYT-q?NLv(=hPZ}rRe(A9w% zO71l@&p9HmU}MNLaRo%nAlhH6t5p=0mZTG~lafr>8`H#igJQpoJe-3Nn-!y)ho3vo zaZm?EMn;%oEB^k8vz*0RYb!!zehP@GbNo(G$%m!P{2_yw45V^Z2;uE+A)S?bdj;e?gOMuAiqZyb5@-YcK7Y5#JcByu z|33N}_ehP~=&+Ft-@_y8O;`Q&{d&;r#p6x-{Q4nk#Z*^Q{3LsZIhAeVbxzK3A^r3} zfewXt;OTJO=M2kv?_sM!FnN&Bi!CIRNT&!{4m90+bB?SwhIj)i@Wlc>7kAzg^7@Zt zi@FW%%BE5>%1V~DIoeD^L&Ihtp9v%#@_tEUm;9gDwXAfUgT*5vXiyH^mg;^^ z^S<#T%Ls3phQ(;jNqzl8p*3Q@2f<`Lo>^3)jjzu6%W1m1HBD>SI$$-MhX2<@v;>VB zdOB%9Szvnd9ZBQB*Ch*zCBajOYe$VeEZudrQbAf^El-!2xnBcV!Acgr9fO1twa{+ zs5C;^(8w$<(F>t6hKHdmL&=jWpnY`jFAL%#-4Rbh3vXZu@MEml%Q{`m5I7m5)S*|!6Y9TsqLVR1fd zT3=WZ;1cj}F#PODPse)jYSPAnxQl0_u@^hCt0q;l4ENPWGUF3{HgaPRr z7Qe=M)wbH`_M2)VWLMzbsu%ReUkq*nX0j=8@5!u#T5ekrm}5LDS1O8UsmKwwj)eAJJ$-%XhuA(s#2Y@OGgzi{QPy@jX$- zq_j(*1cnXjjcrZyV`Wm)rOIuOU?g$?ItA9cF3^&trKQ(iBL~rQ>L^N@EP^U3VP|lr z+QBOtYq`l`V{EI8jnWI>Ka*P65os3fNf1(&pj)gdo{CP6nBCCe;KgZ*5%Z%UKw(S; zzz-yVT!SVUrbThR^KkR^0RHe82MfEbUVq29&f~_Sexb8Jy$Rq9Xg+(z`fI2SnN~0L z0WNa8G<_+mxH*Qy!EfJ_#hx5LMto8FJIE!dCqDp%A=y(W^x7OuODuWP;iuDnq~I|T zrBFyM=$VAtbzt&l6m>bo!LZqN2W;)$A9MHA-v-7x!iafi1ON4HYK!9CAD@p0JCL6i ztbn~VrQ}JPRi^~4_{9-HOpd4|<{&HT>-o(GLS21hN(rwyA6<5TFy<=ni zq5Y30r=9d)hre>7o48oyy1OCpK%}x}@aw=`%DV&=&cx%vEe}ORaGYIT9ZiUtS!U5| z5TfMN;D(4MHyV+VAMZQ7ODiLyU&m>cxw9PY>@J)+o{6E-NF?NLMAzO_@16qMFlorB&VeO{Oosa^wY;}Wtw}1gn*S% z0k#C<>YJ)_NnwptM6IExZe-0YK9IBqWFR2@ILYx6D(Aq@?n&aQEH1FFy z^6l7?UwJ|WoLF3gpd)T>Sz0^#ISfBK^gi$#l}>2dV0pB%Ka)j zL^32aj607l5s;28po(-FH1QKi$`v0!wj$dChn=T<9=8@3=-;pc_o)5%$6^6 zY_|N$cemr(&ss<8>gs-BEG}T)zU>DHehE^igh-AQVtK{02JrKAuBAfug2~^nu<@r& zNdf-jB3vqBlHvkpyWc@N@`=XIA!l8VPmZlIt&scmHgc ztkp0Vz?%6O#-YJ4Z)NFnq7!&yW%P2Nn{W~4a)ru#AX1LY7cnLzq{>M(uB4MicafF7 zbg@r}Y-AY2XL**`{=o_l6|1UCCmzLKj;^65^j93hX6TVW0wGNbb~4fG=>*@~Akqrl zf%H;B-Dfm71L%jLdf_f8xw`5KQ@@j**%6RmR5h{n)AQd$M?+hud?XWD8;|BfDphOM5{0tgWvvobXl$s zoU8++dWo{I926hvNi$p;x}YJ{<3;$l(-}+@`KZ_D`e%F=7STX?j#7)|9}NGk(Qqz= zyhr7w!b1F^d{|Lq8}jIn)wPq*33Ch83ARsEGYYX6`(zP9Bg9_y=P^8&u|aB-RP$#g zw0Lp!rXuKSgt_%Yx&L|!Ux;EEX988>wKIKt`t;bN~AuG2S2?rQlho2Q7b}v8CtZ=-ufzvC8MO ze|50M7V`wf_|fb4HjgpnOx{H$H6zgC_d$xz&Gl+2>Ed$Km&jxUiE|vz$GhJ_Dh|xz zWv`-|+9)`$rc)s5gq@8I=8<_=J9cq;cypP(=o9t&%O>m#iIt_L)&PyglH3AaHZCj( zkrII$wExY0!iD%{5onR&7R?R{k~T3}jJf;J_v+O0pCc3CRs>RtK!@2HJ4)k)n|)5z zAO0L2StZ^Wc3ngF_Z@-4gRLJ7hp$hR+$%i3-ZH%G?G5MOK!zNm9?URQtKYX#|2gwC zbV5RBoe=~*v6Sb>E!TD?CZn^nLVSEg@a9ufx8!=L6H>j2k9XLeZ!q#bm2DD!Q)Z)HMK{YtM_;C+GJp$rE@NfVF`1kl27Ia>nZB>A8 z@iqp=f~JCs3TQ8m66ocr#JsI6EvMdkjHcW)D`D5Kd$Fb9cL44XmO0q`^XH&t((R+% zBz-RNN)!eBUF&%J;lnCh#)y~v0WDf!sF3D~A)4+uX<5ZzTQcbE z2?G-OXpyZ|Hr*sAO|~)N6iCy4GG8gu{l^fEPVg^*iX-0s+SiPm=q6LHn|L!(ND#XD zDdC?lbpQUHK!QI0{@~`L|1)J;dS#XKf7WM72%-H~eiIBXvj6*-7Oc|n@ir%o+7h~p zTkO-X!`gS7(wMK#`hMIF_zSiOz$jejLLL|8J6>upkcEP60NS9=ksrTFqqh&VMrS@ z?ySzg{s5pJq?Y3U$%t+R$=JpR{b3Oim(c*obGdmiw{A)1Ny1jkfPfZxUM__1{kS~8 z(ZJY@+Jbi(GJaNvv&4rjP1RqAoUuA(q<7vVzK^s@kfVZ@)(e2M141&J0@|m)pCdU{MRu`!2s=&e2nUe|h!_ z7MFqzZ>4W&2p0oKhQFIW{+b!bD)m6`v?3Ihu_}VOmY3L+;dQqI}S4i5V)zi`4x-X@9zV!V%ygCXz!@WbBCPe?Giwq z{I!p+(f*eljw|RO_X!k&H&Vuk4#f5S;g*Y=h6`pi&GE6ZX!{@AyBh(Oh&uZ){6UZc zEYJZ$=H%=YN{}?$qR0r@iJhwI2&}+axTtJ{SL@@!0SM2rMuwp4rwvXj;R|2y8!rLh z)*?)MKJktEYinQw+1c4T-2ZdA|0@R+Vfe+c1G+AeX*g3z@lHV{CtXw>pH$~vOTIV(MKwz#mcjrDUP5)vjo zRbIcBzk!MhuVTJ%l#!RuNKf0j_=P`m=f#aMs5G1vb~WkE&88wvtWx8tYHJ_UU7_|n zy1It`=wV_I5E5*wlU;cZotsu>Qf5<44TBysB+3p-!3z%S35>_A3G&M;Zgdk9H4hrc ze{2QlN^qG=u$rjkbRHemfLRT+m`eGe&@|r6GI%D{(e83qazoA#N09+o3a3H@qAq(! z3trsa-KC0&K^0W!Za{1`Sbjh<>~=spekz_S9O zvv>99ARH$S#h$Jpzp}CRuj@{;WNrm`LxQO(D7Lq^AGG*n@V$mezi`VcA<(knJz^Gw zQw-!KPH}0&X?93RMutATjW(6d%~|`9K#-pZ#~Te5UHj?NsxerYbK^x~ve*O@1@Ks_ z>CY8UVRe;Ns;Op)5wSpsu05Oi?C|igrQoxAcWzNpgP(){zw$`o^sf?#;@^9DK4sK$ ze&uCGkhqwDU(Z~4MxQ{UP=BSZJrVF)qXcw*b-sCMyFTO70{k2*4w^!MDhN2QZB4=8 z0OqK%1ZNwYEs(~vC7J|*1mOz8xNZV7@MA=P+XIenr1zp-Duk*othAjdZyzXphxW0L zA49sj04W#PJNz~LbEV~x;uABBC1IHYGc)!NAAo36)eV&}5F97W`%@&lW@zi?Qhw|3&-Y!X!uKR!+4)8tXqd$K@N&cPx zK#IFpd{C=X8Ku3WgLe7>N4^SDxXf8=Y#<_098yaIJ-l24Gfx3 zb}2oL3(bKPZ|xqfO~rl8^FWpww=Lu z@M-~>UWJKy>zk}$s-xy5C^^A>&i%Kp>!r`7_u}l^X0Tp={5baYYfJ+OK)fziZq{MJ zxYO))tS~yoWn3N>8usU_fUxl0ZzjG{&E9lW29-jAfq{6h8~jJ<|87lHKt@Ia3bL^b zC^I+>8aLH-Q2_!xDr*d zRN_?ROTaJ4aux6awSt*~f|L+NG&H8Ct80hrU~GIG`7|ssN6dK*u6mrd z@82medB5Yidy2d|JNjlbMS2dcLaKmzJjH6Jn3pTaV>Wo9pqN%bNUKrPTdke0D677X z@kGg+^>Z~%);K4 z8UJ@Wf?$%L-_FjCjEw9plJ%2|zjtfZo*KklOjAi^3%U)>&E3WJI6C3Jk8KC{Kd^D~ za^>Ox`QsuNXPwn zm(r}o?YH51vZVu1TWWs8UFimdI{cfHTRx)Zy(yO>8!lZ%?l zDgs*tk@7o3fE0{w204ZvM)kM2CWJ_^MN3ani@2)-Oh!T-*+hffgwKfS5&G0gm|u*F zm}&^MYoSKfNQ0NRkP`ZR_l+?E%U=)zg6|=T8I6B->j`llx;+>&k&%#$ub6vgW==tH zU4tCd?75TvK11KkjK1)w^!*mB1q<0&g)R;ZyYba9)|i?~)uljR_CD+dcm^W~!GFJh zcwA9lJ_MJAE6qyM%xPUrYG+{~1F!QTgjq~OI!)(GrYB%?Po{D>+u zD`l3*E3BOaIIfS+K)X=)`^Q({s|)Sz?IE+^rOnGJS;NNz{UGB#xQ*dIjE;(a?YgN6 zWEBsPql`>U;{wR?2xz7zCJCvj3R4qZ-BvA-?<2&xmO?N8c5GzY9fE2hJ_jypFo7PD za5yw~^kP4S)MRUd0@F!m0y46h@$sNYe%)=*3(}8KGcM&3zvJo}v{qKW)yR6EQ@&4k zW~Tk!My!k{AR4)`8%-V^c2+v1W`uFU(2(24G(kgZY*6z|Utci}R+XdHe)_~6l%D-< zn*0W7hcJmyR`qeXuRg*H)0TSkYF3Bt+$$+G_Da2R`e`xfO$H#^-}Mmmyf}eD(29$J zA$SwS7Yb2r<6frfW5v2$2>&Z||2Dw@{tn)SyzmkC)N9x#Xf+3tg&*nKQWDLco?bIp z(6PX7&sM)$dklCjBpf%^OEWS~&LWuSr>EW5<^`=>p{bN9t*peW#q_AHtBVT{2eak@ zppX9PQfzR0;@?iz*VL@JS+29awRJzdD5dTg(9_(HCX0)EhU**~AbA5HcT99F9Znfh ztf-JsV`49Mnf}NG6jRvR3@iZdx3=aOWhEXS-oBzHaGOHPH@rW!NGdjVX2?BM)YMaq z)^IzJ@VyiXK?dCgfW#ll%e$d16A-e88!{27aIj`GNb0@)(|vvnUL>fYGIMz9(_U6O zsqVP<0Ccza%`P>`Ph(uGsV$E^y;N91W#@KNpdurSK&wPCSXq6gHF=6nGWg*4%h1yt zF)w~v?tQQYfSx2;!IBHi*o~iEFNMgRo!vmJC+2$L4w}#-)6+fL!-04(vvZ9C;7=)M z*h`1%qou74Bbtz)pxV^o=^+^8uL2M|iNA>l!Y~Kupcab72+VZqdhe(~u(DBM$W70m zeqvC&7V!>JqAI<+2NbMXApsv|W(`sdcxjCFfXF80J%mW^0IJ%UCYoPBzUfw$A%Vl& z1o84`i=UB|G__J&Z32n9&hj)4tJE)eC%lv2ys1(mt^ZO)7J3=e^lbhnD)2w~UzGoP zOAtZYi^1ANlI^{;(g)14+bg&C%N)O9eJmfy65)l0n2O8erb^7#OAfO9&69xNOz zCaSZ&QE6#Vm_8G)0xum)CHgL=NyHr??$XR-X80#H6}Eg4-}-y-DS)!dbW7gw0vU<; zK?2ErWfz3dOeDiE!9T`XR`WhCMUg@`3^~~UA8T(N)%CV@5349DASEp#sYrJtNFyE6 z-Q696N_Uq?Hwq#pNQiW&q=0ltx8%FfbI(2ZKF>SG?;Y=tKh8MEBj4Dcz1LoAt~ux8 z4yn14z!t@R!5c*Z`s1fhO)Lx?9Hj0JzAOZ*Yd)8)D}FRc;WCnG-@x2o@qK=-A9O%b zy?8t*wT@mD^=N;Rl~tjvYhT#dI0yM^3?UXF4@naM#jHevv7mvGY}E@d08N2Tn=%!)ECs8ypo%f(}!oM)9RSi77T-6H8hgdvL8PN zM~E$td+O?0!r9-|)YLYpcCPvP`-AxT*Y5sqW_4<6>g!C9)SQ0pdGR8kzcwJ;*igE0F zP+eE2C8RZ)nTLmkwKs{zN62R@0Fb*5=rtU8VGKC|j+6NAE9@gq!lSB6WeM|61?7DxX$zOr~2;>9?P;@u=w6a>4)SisE zYn3gqc$a{CIl>(vp%#W12UI0zV08%poy#>R_-wK2%PU^J%UbLHvM4>k^VW)>DgOI@rTU2R4|>?=&*y`RZ={bxr8V{BiDJVOnYT}BcdhS5`Y!nR z_&w>DRCN*ZseO%*1Lom(iHLd}0#?&1D{;Ry^pziiz=@4bNm*NFvkRlbOwUaIIh2Z1 z)sEC4!P!nA7OHi=cwsAkJE`WyoCq*ZX#1GBLH+FW{iOeH<`f4j5(J;{O})= z(7$AqS4szfjNvQA$;FlO#2#_DyV;Q}Qz2LSX#t7R2c}ziF`F&jZ){u!)ho4XT%K~x zcQ-U#EwZxEyY>tC%~?`ObvCLDTo0>SQh zeO?^A8+gH*N#Mt?Oe&WC#p{aZ>#HyMjGKO-_v!?G+f*GtZVaYKJUWKSa?nRpB~Kx}MmIi7n6yRANW zgxa;R*=| z5t;!s2!x#ht>61iH8cpRfQ2I|g^$r4v>f6#q+Fz<)^@=~9egc73O|nDKoKkHaDTt~ zgJ~urVk^l zm5Vh6FF+V|GK=s(VBISwR0eoR9loEyGwH#D2mTELTR%d91p3Z-V2mXvH`iZOL?_oQ zB!nLo?C8^M6iKeW;9y`N#xxDWf$TJ$r#jA5$@z121sf;px2Y-A!%UnkxuI7?GEy=? z;0@OER;OCE=2&G?Pyh$PSzMLTNJ>dZf|m!oqMZR!j0WDcWFpGW>?8*;7B7Xu5axCD|kx7jx@mev9ycyBokBf^-_7=tCD~Upm0EY}^ zu#RJ$(87d2l(aF135f5EHur(CS2i~G?M8jJf`f0FjlQPlRV#5q{QK{Vi>)m!7xYw% zJ+Jx*;a%7HpaJ`gzXwCIOhjAk+r)^!(ef+lr3(VAT7-ee{JNebON&eRSREv9qe9|y zBBD(NmLTRT0nzmy%Xj(v)OsI%H5ivl$4j7}ZQ zud9D$FG_>xZ!MuTO0uc*q|Ek z^ABs?AXH>b8y4M4M-(5Q4r9|bpG#e%W1|CerrRm+YNru~^ryC$omA|W?yQp0(yl`X z2?h;-{CVR9UpGOFyP>ZyqWSCu>ZOy>=A4`-saw-5{{!xa9>%Co0}0tY6gXf7yrqj* z&bFcsQhPraei3*2?d*RW#QOg`5%_Ji{8!%i|KpEKTH7SRe80K=-*0mB-^%>|OK$=x zi<*TAzbN#69CE$xOx1f8%jZ|*$ih5rZO}hl{=f!GZbR-tkRs{r@${2AZzVz! zCUZk`PN3;eHcXZRDgA649zOo1Qn~-s_L-fQf_D&PE0Dr%?E&{k&95Mssk+`)>NR0x zbL*T@gKc70h&2# zI4vhd^Hf6vINQ(XD*y?ZzW|JlAP;`V#>&p;ey|4JqONF$TaX~ZPar7J(Onw^zr2Lb z#P;s4J5c5}en`IpQr*2z;c{|vAV`a8#pvqp#%{py__Vre_7ObpgmgV+KNS}K1pf&| zgQM}G@N3rZp>zg=9J!TCQ*csJJzHD3H?;_TauBa&Wo6-Bd<905Wo2c=x6k!}+M6^K zH*u{6SZvyGW&CUH8eq^AFkkKI>5o_+#s7NC{b8r2MZ|W;js=R%I?ofOWJ6HNfh=?8 z-HZVv$O%BE4EKl;(2)-}?Wb&Apo||MAJeS2ZEWi58f_wnd1e5#6V!kSCw=|7+i@2@ zCRob?Mhaz@2msG15@FNI$_f}s{rcrPj=POo)a|birK?K< zT}E>9>$o?14Gayl3krhX!7V}sw{(=4`D{HB++{|_#^6jKo^Hrb7j~zL!%Kj?Ll$}3 zFH9^e6U;cFqsEo74PH4snv6D2#0iOrQj(LgW&{28WKnDTZln-t5?jKQHys^fD@@CQ zYY16*f~d&Ina)Ysc;$H4q)6DL80BFWTkUqP=}mD;KcYT7U%4lmdClLJBa9ref7|w= zULA^z|G)s+K~8QEUvyhfpN||)H#TrSZiD47ceVj3(5zMs3>kw?_4Lqpl;>!-Q0CE- zlagk$eyo{TT9!jBEh%+Z*XUYlsS+Veb|C!hD=Z8}0eD^{OA$(fYZNdnJ;6&05Z z(zz^;f1N0#=s`uF1L5|`6M?A9UU8Y2loW7k1V@s$!yoX$bTi5+gxos7LzvOf-lf;n z5N308a^l~+cj2@{UK-H*^6uQs$}g{r)1|YUXq4|PB`%w@(4HlpAr{hti~xo^Ldy;$ z93Y+b?UYkeg3)Q{`1rp-@L^?(zfA|x!shC>2sDG_<>j}Y!rU`3AqEJXoV*D}qd0-u z#g+n`?+#09YkA4YUK^RxvawxmGj_z>(zLWI@i8-KXlT&UfQl4gV7XwBb;D{M@s;t5 z!nF*y1duTUL=_yKIV(0yfXy{nSKWGCFn2u@ef&{;6i1FjQfw?M1R<{XH?CjryDw;j z<vl> zUPBbu_=LzuNG?{(DbdHmg6D(>t!Mrq}hC#RM5R4YOj;eBsDmecNQqZ-4AcgzY6Xnhw zDRFUdNP#B_fai~E56B>gVq?P*%>b-`iptEz1@D2rfk9JeXJJN$fRGkU`~mV#R8$m< zPXj70(D=9R3(xyHfwQ28rzdz(o6UO16r^q{!|1B? zhlhud-WA+S939ImE7|Gj!qiZ%788s_uewAGVS*__>326bH+kg5ev}&#K8*7BU6+Nk zcM+mH#^t6c|MTW{tr z<&WkXiwuOcSeRMlQPyGR53(j8WPPfgUxCL}_@NI`^#ljL35#f#e^2E13U6#`3 z?mYqm8*(@^AZh`DU_++{s2xGh3{$p<2*6espl=^PKY6)q*IHyEWNbJL+Lmr^Tnr2h zl#~Gn@byjOoVWfeCwQp{D*#xvz;NLvLk`f*LT5+DVA~)9<0^qedoI!ng`KY58 z=nMGB8St>`UYrq(+&awv{F$4SX?CpC8195m6|}XKuy^g5J3ZTa*`xnE%(ose*(*EXJ^k@L&W1koDzR3Hs1{X6hSXuyZ}#E z!u%pDD;QlxD41b*pFam31sc58JG-0&kXV71$O~Gk`?vuW z!8M?Q^o2IuH%=jr_Z;bx8rb*n=BzCD_~mJq=9X>+0(-wzfWO8615F1@Jx)uE0J; zi~gC;tv$H3`9SuZ-WGi2hRK7}*c?D${k##yLF3vNFCJ zB%iPmGNeBCiGVBb8L)~2gns8t)&#Jd#FjYhVUiZe;vv02x|to|XM+eX%S!>@k5h1c z1tQ-@+e2P9A2aW~ITa{$H7p#4qhLJn>_yJa4G!)EzHAQRb;1!_`M)a=sI z$mnQ5W)16(0BvhoVwC%<_Ec25%ZmjFblE%e9x&P&1LyvF6_mk?h% zJT+%$n9;SlvLcRSNGYiq`^=X+EC`Q@ESvj`GW>U`Rf&w@icwGX9&A!QOifG}*chvT z^CBtSPb8j__pS#@o91Q5YTNtK=7w{v!>lJ5e64y9*& zuWIEWT9vDfMk)y>l~uz3e%!Qc+?V*SuS||A9*1b4QLbq`>M&fl(X zpgxL!|7E}Fz7SiHEm9Q@E|i9_FWwL;+^6&&p+xe!6_fb(4J{27qzCKE%YCfEv}dga zFHJ&aY$e2f1)gqJW8IIihvWR{VpCMpV?k;slYfX3Q<#2MjiZS)lFk9O$izo)R>}M8 zgqh#h81i_WE1okyJ? zI6cw|wuDK|OSo+Vp<;Xz-#6GKSSVrQ*<;c}38R(Ee{t^`Kd>KMU+NsFH&hs>O?Zsh zEYLUQg~dey%+V_h%(7t8gRhc`u#a(0c!FKAE5zoGhFS(9wX z{=543C%mwX#EpH%%E<{T;wQYkv~MYYXIg>9sQ*~@BkSOQ5h)2N{|DlBShe8M_<*I7riATI+f(fI(i2 zqad$$2c1Cqp*H%O998Tp%$m7$cZ4jC8p&5rx%?muP8bwumd=WSQh4|7O#~Mu%!2hh zRD2dY$h|wF-VB~+p0{8wHzQ;Uh=@0FrfJPK`5yiI?IY&AAp%uzIqTkXDGV5b?mf6o zUAmW!!4DAg@Q|CglAwqHeGj!6G`Bo{CV+`49QXd{N2p<8v&G=tku7gp$`=$DhvRF~Y>}~I72NAc}bi&LLsH968AshIFOK-QkL#e8) zytKGc6io%(&)NVr2vT76fhsKxyf*L&$~QG-SzeycqFz~>jf#D%DXSvZ8DYc5XjWog zRb2({#G~V5Bq(p*jB;w%xXi4qaB{IdoKH+h2#^u;7I|T!osFm0M}s-Q^jI%Cs{y#( zksoi1;i2Pk0QKnVfy&i_G-@?Lgph#s_>$lqq-;AgwL6+fY2>`5M5!8s7?N5O!}Igt zjf8|Hc*Jq8qGiN|cR%4V?y_|P2WBB)TPP@EmY}johL9z@NXH`of%uaq;79n;5 zsU%eSpJHR0no-cudfVF2FDvIdN5H7Kc-;&v^`m2A_6Q6N8w4s1o7LfZvfUoY1{xur zzLC+xb$-!uS2qBw7}?kk&~E7<+`fZ+va*y4wO%vXl`R#JwnAU$2(J=-1-#oJUy1Pm z&1d;NcAfr!n73~y2L=SJV4@L#DPY+Z7!uUc)+H$+BkBkD4NUn4iYpPP8`f&d;i44G zX|T{pe*GE&cP+xgO3`)on5CYW4~Q^p!|xx_(E$vM0{qjR&ktT~9c*LleAowG%cXph zxls6mdz9n>pQ{}>_yYd~7^$+_PGZ${o=ZL167g2wKfO#Q^~pl>v(PtJfBt-7dEN(a zws*Dxq3O~`vZPedpI}=$B5R&s$&>%p3oJdlP80Wc^KDH0r>S3B=ri>qtzj14NlOhfApjU|iJ8`Ek888Z2na zz842B+-ArF|1m7m>z{3RbD)v23v<%JVo_-&@hqXcg$8Cb;b=wc{B>>tVK^4#x zxI)4LLHg$UU?iVu}?v38}s z%@-hVDwn&uf0-hqU%G&?mX`q*eh7swwSH4n=Xxe4CeqS9!1uEhxEw=H%=cYDjg*u$ zjqtlbAtbe{M@{k+n z*5>A&FNDJlo_>IIF5%ZPEA8MUAGk-t{0rP#Pl-1mNQUlYS{^W1fdbUO2>yRkB!MM? zft8ic%F4J|XCN|!@(L@5EXRAjBs=>?iUp7ixPU5@A~FNbHMmINFr&LmP#0DoAAijt zZ36)qJ>{2ojLzM(w1*qh#<$8|S6ENio&c|*S}-)i%TCxl#vnKc;~2c%5;dC1W^#UUtZwG$Mn(czOri?vcBf#vbWst%y){8 zju(KEB^wf`p9Mt%AwGDi!I68F(L@f|G}4&tIPfJdeKFs@eOonLcE}D=*D0?p?-F9f zJ9?E}+&ICvNuEntu1~rjGN6T#aJ!#CbJF(dh$1;m+KmYUk4Od#DDwbm$$|kb!19qx zh*L$?$dju57$rTK$_sr}d$+w?)JWk0Dk>^2fY#Bz&cLgbJOqa8T?GXeaU|+jSPq>! zoOkh214)&91t`N88SNhCRaYmqOG(IBTUq6>$~Rq0r;}*u?L~`aTA|^O!>e?r-AFG3 z<29t|I{TY~h8(v53KADC1Amm@x241HK%4?}g^?tZjlZYTfs^p1TJ4i9Ok8QiMg;s1 z@G{^nz2&r%W;_T>D-ZN5E;`r^l@FB`(Zyx zFvePOZz5j-Ks_!hRE2VTn_IW<2uoK3O_=|oi2LToHxlyD9%HZRVm`ObgIJTa}QES4G48-hH8C?y3L zbbzJ%Zfs9}0v`$c~edo4(3_Q(N7#>vwO#_#6TKioDLBV0Zx?O-bqb*yxz+$uZMr^223+sxBH*#>WXA;2FW80JOYc5G6j; zUheTrf7T@}EdUtCYrvE>H2AZwf#P(ZHwciN^*P}NEeqMgLtLc7vU+iH0E{MoTt9#E zH|MEWctNrQQYgJ%MSLQn7K^W68}ZewtTv(_$pDO4CJgRk)YQQ(Fh#BmNF42II<_!- zX!YGI5fE|#i_mBB?AkSk5GXV~4ja)fjyJe5p>3}vFE3CJ=O-=na(JAacREQ{dFUNM z9g!l9+Ky@?Y=y|N{Nmyf$0q()f&#Mi$g){$H~zu(c^RK`>B$RNhE2fsGXVCswX0fi zTbGbgP%O;NGlPNN?c;NOhGH%x=yG5o)(r^PHivK=t6F~HNbm2-Xp|pM4dtKA#&eua&znAr}fge#&EG#WG-UfZx*iC5v1NSdOUvKp0 z6CzgE#aV)>h8 z$t~dMfsXgyt}wWUxC-zg06zfi1ArI?V+^5%u(0$I&jz;iUt#Ja*h$0bl4(l6;wG2? z+9=2UC6cNJJeLgd1)yAnbFaM zwD$II7fW8kJ|@O?di7L|$7O4%`_5~jP?c+wlXdp~FZ)=1`*XnrXC>`QOAcF>dZh}1 ziR7cI&cWPepY*_(|3Izk`oRbiVlHq1Ww|v(yu7^d0PTGZ$e}h0x@O!Aq@n<}f5Hij zSbE@fY^t<7jD18jk6wTlcqTi4&{M3k4B1=iYw?X26tdn zt&8paXvs}9B0#Uc)XF^$3JnSqafimsTH_=yFF8CqZ9BRASApGGfC6OdQLqe zxv_%Eri-T01LNXV6@cFcgK)G;Uj@ubBLB7cb%P`$#~rKS9w$T&<1M?ZwSL^FW#~Wq5&bg zE03EgD8z)xz=|Q4hZg3*`TF=}AnkeYU^u$CxEL4+DML{*g(JrlOs5y%T+2FEBZlCcP3GLWZ!a^_l1RttBI617M=t9%Cb zjmQgN0QPW?%eB5HxR;2krhtTC*n(JCI85O~ z!lowY@!DS99X&=*RVT*vLTCG~&+^ibqU{C{d7PdKS#&mk!|wFhTaK&@N4o*OPAZpU zxbQFw-3<+I>}RmkKS;&z9?};B*}s}uhEM0j4buOh_aBLn(Q^d2Y+deB8t+|EWUk>y zVA0zAh3J}Yo$apC^XIWI=5M&&#$Bi`f4|=Gt&owC5%P&zhhKK~63A<)!^r;A2NNO@ zd4(fIPi4~w!AJ0hu9k|5PU6MsrdKK2hZ%kj7@-agn6Hl7UVMf-Q#CW;R3DDtgPS55 z)*&>im*_RTT_J=+zsOTU0*(oW>)4(pnIFPa-$#SNV*RZEnp>FX_NKu2)Da9tC${5y5j$leJ;a^WDy zH|wU^5_kM`2uf(pZhOi+EVs>{OS!={X`$|in?RTj>bot)$nP|ikwFR}81GX86Tjwu zDLF2^lY_(1@VCV2I;mWk&kDdmmyx*XV|UgaW|+;xm!nG1bOn5Y$rzXeh!UQH?|5FF ziLB0GWhlo}urL5i0(mtxDpCax=;z8Kmh@}6y8gNsiU|mPUn4{ub#89S+2QpGU?jAG zSc*oc1I~yjOVZ7l8gpF?Ld;hKc`iWeq~YP=e$+ZT6jOaWFi<0{9k2{=hkqLtiLVPy zFfa|1t`9-=ocioc51sumlA+*8jn6OMwg}UM--WU9qi8YbQ52;;(kD|Z{h45DzLAn5 z5Q?#gi^V`zMoi`8?5r<9gHEoku8w^Bb~;z^E24JLVl6Aih?0zQ%9p$n>hp)rI;a-W z@$#6PK@t8_L}ZjrZx9;E>>_j@A%L%Behv)04c+dyni>p520F(KSGq2zkAZ>l^72|1 zH}q6?dq|rJ5|1G`ySTVXOG^RHJ-@U>b|trhA*=SELQhn&dEwJ|dLp(uCQFzo=;9-L zjq>^w?G%x83Yb~}v2b{`v0Gq}`m|N=R6=kuy3fx;KRntluc0@iCh%v4;50^V0^%qUE{(~| zA7m`g{X|9pMq;3hq<2xH&KS$}z;9P0p(~d6waD&QM=Y>@G3Yvo1gwM&7eLe6q>l=% ztH~<+n@GIueBl;)#jhWwa@bzG4P_!e0Z-h9Nsty~8tJNe<@t%K;2Z9nFF?j_Jw*c? z^b=U=Jb5iGRKfFluk*X*%K_D>b>P z1K%b?{cv$`)3?ExJDy(Kh?p`cy(G19HE}v&RK+ZC_)5p-+Ui&71W(xcG)OPOcogqb zX>jMaLS;~Lg1$KN?P`3nRyLQWgQFwkrP(1MP|N<+r<#DoLJE~kd@INDj2_Ce^S#|( z)0Gt!I~A8tz#O}gRJp6?2!a~n_3E}5I`AqU?FH^5kQ)H-gF5X5I*_`@%mIt0KB^)w zDZ4?^D|2^VK&Qjq#Vx~94mv@)Yh7g6ed5oa1%W{+Ue@tQZf=gr^|R^n4?0JXJY|dl z4TN!ZYD(+j#=%?ecVV`nf8G9;;6BFY1noSFSV#ZG=8-GHip{Gtf{4DCBk&}97FHBm zgu|hI2@(I6_n8jbGSYs=yyq`Iw11$)m)2k!ydI)>H;TZ#haikBgcQ2K;o3YG&|QMs z>t;UzK0a8J)Tr=?L4VTO2h=+NHYSSd_3JU%`F$El#O!2bR<7{&$^Touf$J%FB07Zw+u zqFUqO%QXW7XD60Ar_#zYsK!P@6vB=Unyxvia2ev|^h4x9;Y&<-lnY#?cdFt?fYz|Q zT>f(;{SyEj79p47x)i>PF9Vk-?3O%LnAr=5vFYgx@P&|7@Izd%vNFZ!vbUe7c--F5 zA6fE2@MAg&9u02!=;(OTn>Vl-N)1U~!=t2Sxf0C>uKH$UFkn(2JPCz(l6W1DS!&|d z7!F{IkV92@Nf&Bt)Q5T1meDwUh}9oId8K~U_)->mJy9I|)v=D-!A#Y{xSJmTrpeH? zV(DknPL9t0d5vXrcQJolNaocpS`sh6gpu1z(1ua7v3FMXm#ePcE2rhx23woTu5NIO zW}b)cGR9ks=g@A06Y-sw2M^ioHWI24F;H#r&@eNo(PVnVdU~W{v?TFqGr8!kH(_qz zSQRHGlz*ELZ716T!~v5wl#oFFwxVWo@^aBRK90568-pLwfzHV6ZXZ>2-ix%B0nDFw z`aEs~N-Jp9HQ`-C+OwiyN^tMQpbihW<@EwF!Zl(<`)X(i)3W$2Fi0&=x3uJ_?Rq~N zZ2Ar@dy(s3uNV_@VOS5eyYKq>k`>r+FquQ=`7IIOL*e_pw$8cn10R_XC6IP!fBXPL z^>#7S2=zF;``}s`6ILn(W! zb4V8rbamy_)Sl%!Z%m$m9x|`Z;D*1C!%tpZqkllU5toqe6(Y7Chr-1(FAlGxV|3c_ zR^<7+y+rj$@i7})Pnx|HXSKgl*nE8Iir;=@FcF`vth&FI1${( zff>?Kn48Ev{DeGT5QuMMDtl==+wa`Gmyw@y>y=c*vel{AekjtimG{~G$&F1ueuU?Z z6W10=KD9La-al`iD}To{Ojn77HtZf-V%^MENlD2T6J zsB6$rzqzxrCLFQ$fY(&x(@@TXA3uoCleev0;9Li}a|va|Zfa;H(~rkf=w1YyA$M;P(O7ubhdFP#)pFG8 z^qN25`SSf+o}Gz9Sy3I4*CZwQc8jq2jL%R2NR)sG$+$2nhT?-x#)~F}HAJGhg@h7! z9-=vN#Jp=$7cHUp@?LG1V9_+im!K^{wBz&9bIyLID)N}t-js(-g=8Y#mo*xZzjOj&%FM=J*ss^>@JqH1a}{Kovx(M%s_^6a=58)jC0;ZonBRgfPkmi!sZfmA(9r} zN7j-{*8eb%)$f7X%YMW0MqmzF)c4&A)_pE&{OI`1>G`+8>gq_@HoSEc$~|PiL`zP4l!uCF}t0`s+Nb zb7Aw$*9=8{rALCVcQdi9^-eF)^RC6|TZa-gVb&mdA$v})Z~yQ$adpt(z!Z^5e`>Zd zEs9p*?10yZ>4n_wdo|GSYl%@4-RR94V`b+<2bQ3c&|!eBzc2<@3e?Ifgxp>0ot@L0 zL03U0bQq=XOsGM}z=)ij>0q@N*S%e|wd3;mRbi#F)|VMObg$-5lq~H#m^7{R$Y^or z=5E!}g*fk=z76P(@-Vz-!l8So=E75NB&e+0E{}Zg$977s zyVqXk11V`~y=s%1#%n`ud5TWRUKD4CT0AYtQkxZcY>kM>_lk#4r`z|-N0~ZPYB054 z4Yy@)sQw6_m6ALO^p&6v%dILy)cWjjkH&T3tFl${+wFp`==ki5mcsLAi~UqHzB!Yn zJa}7F$i>YPafSI;txei^dK;)K*=b!D*t~sn&KeXLEJG%>N}uXzV!Ky zfY64`+425ac6Nyh&2DmliL1GcmX_Dcc4VM0jA2CM!r!AJen>AQBs6a)sRbi8^Su8o zR_E^*$+*^GytBhD!EpJC8L#x=1%-reG|l_M-_!{E{VLe9FQVhwrF{SV2jTz0ORDMb z3=9t+j3fVk!?v*BZzy;5uTTBIz6bj6m$l>k{Ye%1|NP>@|N4tDBl8R0|DQgO-tTWk z*ZTWgA(^bVcZO^0{QfhiKi?E7;P;oS`mZl{FRn)N*8bEy4FGHKBf%IGHzp)G$c%ec zmC@DqJv22nOfWGb-{chp4Z1H1$#4n|8qz(cY3Fq{O%^}>)YuDI8T`nj7{+^9P*O1c z`8`^Vw{y=J6D4y30@|=`p2?77a?~12@5Pkfk+^(50dbd4WD!$R3+Yz;;wKT&!4-IR zNE{_|d=rvdG=DxfJfUWMn|8cVk?3}VjR#D|@NMRq;D7(UxXo9uz5D`Ehz%OSmJ<~) zrD#vpNLcA|VKw~PgAM=Q3mjjDhGJUh0!1>xJ?J}_N&sW-fB%auz!?P=5g5G?pdc~_ zf7IKN@9O(mg{y{^Bhn)uVAnd|%=Gv3OTJ1AtUjBq9}QrJ!eV4(swA@W%3O*kZ8kE> zOh?H)bwKTrJvD}Xk<*J^Eoxfi|0Ck95w$T=w|TT`OoW}6bRW`wgzPNEA#&DoQ~XuiDe{L|-_ zJ4-T{tPMwsZbnbdSr)W3-)`mOeD275=zMz%CDUD#&8Qsl`>T)*9EW9QgC%9r_eIre#@nTAmu zI<5adpXKO%x^lsESxwE!IalE5n?!U~ze}jWO2<#PHdEU09~v@S+$zYa6d9tg7P1$5 zKGY?k7HcEV%|~2!(AnQqfL0~;?81y+$;D7{rvDkW&W;}bpVOXJ{)nE>?PYs#EraW0 z0ff@=n^Mmv<_p|;3zp;0KGtZ5QE=!eSt|ASx-Q&EMbR~jQ>{RfA1p>3)aD>CoEv4GA&*)4NCl1P;|W9Q-LnEU_z0?mlLXPt-(T5ZR*Y97qv+gft0G;^e-J|FqH zm0cEeWr*r1Sh7uWj}3+E=RKV$xgXNU{S`9xc4pNiwSuIGbIw*12QXC?!lwzNZu08s z_-VVVHoWUAzCItQ#YxyJC^19Zb7CM~8Bnyil$U>t(Y54qAHRR#x#4_UN_nrUs_Pml zDf2`6qUQPR(eH%v&W^XHSFLwGj;fHJmBe>=C(pEM#j(F%X7`(qKeN+$Xx%z;CI|a( zIcfH)#2CY0FL&3`s)&Su{&raE9Vyi8tQ1vAp*_sMUUY2(3tNjbv4f|4ZRJySy+oPx zjyruZ+k2C5WUH#hYoP_Mrv|bziqz{k-x@8PI{u0bCU3tdCZ8SN;jP!6+>_a?tefCo zlb}M;4lsHA=XLYQv(JOwC_ICQS$n_F$@7iHpO>UOmT+Emtjx=pyeC&r5TU8yYO>mF zgmuPWNwc|R97=ib&jM!b+fXy@Zm#lPq*bqMK4;B1Ej@X^xrcgF{*^X2DQR@gLwdfm z{CwDGaBT@^(-+j9X_z7{Jwn;)HG7j3+p2$h+AN_bUwkLuxHiL6UTWd9rA=DOO8m*^ zCKl^`flmEDySC%=y_rNlPmIqV#nmf^1%or4sacKj=@F#N_b@QJ_5VD-;wj(xm^lz|Ft%h^>uFp&c}jB7qo{f ztoQw1^evve=I(YmZe^vts5G{Dwv+W#Xj=ELH>i_dkgV^Tqn~T?IX|~wXo-*%M@@IY zdd^-%bP$m9VgJFpmfUnmMX8`-cw3i!2E|_|WoLO+Xiw%RZ$00G&!@Iho$+LmkMo^c z6)p-V4{tgTAYZgkF4nK0FnEw;+>q4L2yU0y785^PU+P%*m`*O&6_^|^aFD`2aSpS& z#VR~BdB0;f&|^y8IX|nw+8Q_4wGda0=+AMGtNV^3dSU5VxosNHS2N*Z$dfcMc<9)0 zaVoz3+G(0Ek}g)Zu&cieU$B3ZAQhPj+``vdbiDrt^kEi`}pJDn03^ z?%*N)xcDHCv{LWSV^ia{wA$#I?@ImVUZ*^{cUVYpk(IMA;v&-1N{8%+_3Lc-C0{a{ z_Idx?oK(jft-c-iHZUQ}`TeP^P&x)SY9{9mOJ3ry4=Qcbyc^%57A?p@Ybm2YSrF~k z6a73ok*F{>@)*@^{+!NKt){iiHj*)zKiT^j^TmUawoBeds4L*B1Edg_7m1wKvi-`*no-KT>l69*D4GG3 zp}()Du`6@p>o(!16I=^keBI@zYx(jU&qbqMk+r1{0;4_c?0CKI+_dlV&s@a_Urv@s zW|~%HseSxz!vZ(=L`YlF@sQotqjZIya1w3%rwC3tT(w-y>b+h5T5&sthzslAEG~4T z<+;@oQ2*NSf6{Z1KiyZ-C;lo=V?Uh78B9<3r{gVyH_)AD!f zJb04<;V)VIzP%>ew$Ph)tT4@EzZ@9X^ZhIQ}~t& zrAME{@dH1*=KXa^VPIgx!oxBBNW_qd+%(`^HaSk}mP2cV?kr*;9>1IlYW?qM`8Rn# zx~okju*?e;^Yl~a#C8oj#wzaL%-rdIl#f)L@Ob&mkPWYT=iG#Aes%G^mYp|S61H1+ zz_DDkJbuJI9Aq4%|Gwp2*)x|N=j`l*?R5EzC_M3GaxQv*jrXb5+xWz5?{t#!+R>Ce zom_h>SHFzOn!f*bn#$}r_g(K^u#CF!gh9XO0;1H!y>Cv=0gv>BcOF0Z>63%jWzy=ao(TpKy?6e|( z3jh6AYOl#W9(?6!^C?(Y+iI`(fY^6-o|T%_trta2)uYCCQhG z>aV`EvMoxeOKkpUcCOKBw-XiNrma}ZNEv<*&^r+uMYpXRy`!aHWGIt6I%J`hkgXF| zTdFxW@mP94+pE`*vS@7m;!}!J88=x$iGKp7aa@ss>A#BpX8o$>tf+$HpPkM z0TO4GuUAece}8J&aWCA}j}e}_R-uIn3j3aa^A^JI6it)mF332Weqm&_M6)mw+EKyQ z{K?gRA}dJni`9er+g)ZRsl4}Rdp^(<&}aS?H2&-Dakz8b@Fu)zu)l>QeDqu7`JkvGkeWLdL8FMFZq82zEs zA}8_}_1cNN??hUIt;X=AqUib=4L`pN8org8@i2>M1EaRT+-bcmLpMU>pmW|##9DHB zJ$jWQb#yv5O#9G*%EfvhHeMowVFc>{R0SUK_fGf37kiairML$Ve)u z{o?Ak!nwIQ=m{iZt3p|;*$ky4o9es)A|MNQ*+Y! zH4HPx)`1XyE2+-P=jFBw&6(}{xPVy3SCau*EQGJ85e-zGk4vpnS*WKGDWp+-3G5ne z*F%&y*2JbQOqiaBAf*1Yn&9B4!Erx7byZazJ3l)?c*$QE6(5sSchWc|y|CY!FV)>a zQEw5HmoQ5HZT~Dn!s%#`G4ed?woyp#adUCX>juRmrC&6f9$yKVFo!x^yG&Y&+ zVZ#*8q&}}>A=7de3dFS;*HoULv61DIG=6K3(FZ$tW_#L_>YhDht<91k+`uqDeUc`haG5;mKS>a%YH7+od;g%6Yu9fRug#LrTz zhsx7n$sFr&ek#9Wv{bM^zRP~DddI%U@fBZL`E!rE5poid@;XY5L`rD6^{65nccsmi zZq8G99h*BR3KxzrW_wPh)OpG;{z{s$NqA-oSFxFF-M-|n7nZA~PT7X?Qr)S%!^M(R z}rsHlghj0;~SKvwYvBUyK*%D8(rbUiI(Ry_p?1 zwVM=iyvwz~r<8rZ^J2ArO6q*+dxuwj{AuU-kk@Bpt(5H3T<(1JMl*}E`UOSq0!wR& ziw8%EONIT6`Fiq`1gfnT0Z5c|`>PoHCgFSP1VrBPZ|_IAb2Srq3H*$;(UM!NCvtfw zdb;&=wVsAE;A70?>U?`Wl)B_0rq{`yn)U2+)0eIm&!(1&|NQ7GVp@77Dmgc_6H*e_ z--=!Q)DVm=y+c;=sIe+8x3Q#p=98&z+^hB0940UGS}Doi^EKNVHjaCmhT&;93r|ZY zlJruxyD;tWLjwF?m#j-|8w$F_2+){C;LnMqBl~4Q1>u-|oMPU?@jWy`^`4d4OTkSc$$U@XBa# zI^VSgwFjT2+b5BZR}Alk-z+XjZHXR-m}?%u?rK{qE5OZ8T#u^q3nNwR8DIaS`n_i- zUT-6meE;L1T~YhdpD7wor&$d{vp_%JIAil0f+5u9$?v`p+E{%u@+0*dTP0;EhU06m zUvJptC70{(D~2E3LgwSu;!7u5#_7gDq_=APXY_%pAegKvTMIv?)onqgXZqe(gKAxY ziQ$Je%xfC#f}(tQQeOIb#%k)%Uolbd6(j7p6#t+P`;7MAH)xnQzN3WD7oXj-8M}%c>wSjkP8K4GIAeDY{rqOfj=mt)RcJjgX};D`6E>Kkxg?w?yeX1hEqE27LPmD>_-ENn%Ghy`U(v%04kVqM zyndIeGJ`ByDsVBTaN|vhcCe7Zsd~+Ql4 z;m;vWCx*DBa#rJ6?k zhF$L>V8w(v^6Yc-$hk#risE3thOe?TIkQAt?B5Y6x$yn_^;UXV8r+BUVVQYc4@Yr5 zI$z9CCJ(*PD(1nTlhO(b?%QkRozEQ z8v)0{@hTgr`Hpj|)@nkBSSMwl((0)Z?6h<7G#1s3RF0+ii8dn7V>fOHO8*Ul&TB|& zt-(^?mC7kQBxpYCE42P*o1;y1(AIzbq-+_oY0dkcQ>zpY_bn|~CYX&=qTT<_bvSXO zaZdncl7+*iSRaz*Rl7$~kmEH#T6epHd^7F;DecPRq3+tgB}s%3Q^;MSEHNXDWVw^A zW+YjXtTT~{kg=5_k}|{G5k{ntZIrCZz78>n+fFEhEJ?QPyq9|Kp6B^I?|-j9aenig zbIx_HbFTAUEPQLjd#_AE>k(`H{yr&HNuR7@v47(Bu{%5m<^*>KU#o@_-!n|vdBvyt z@_s6{ACnPwieIM$f^TbIJH2`M<%UkQN{>wV+I!6I-?hH24)_6k#f1CRP3p-)rB_c! zyAA8w2GQejaPlX)BK-LOS}p!tQ#JnLyq2+cb%l48ex}OrUH(6BZYksoTNJKx-xD3V zth45CK0%j9J9Dt@2Ft2{B%K)@KW91EbKqO(`{^o# zv;sAAdYW%!{ifOFC|g-eQS2s{&%@{UrT6^~@8-y}*4DS1j=-S7+vWX4>TJV_Z!J96+}Zvef%6)P5JI_RtRTa#KTVZy$j zh0G|4)pLu*j`#H{czHb9ITc_NKeql&=Bf$Tzh*p4w5@wJA&GZ6XF~r?aOqlw{t8`$Y zHSJc5_&#x}?G-_^PRARzks0eA;f@=-GLrkp; zc#@ptd;?QT&k&(pZEW{FN-Yms;J9g9Y}L5fv7&uX5PQ1VP49N3b^m+!MThe43_2UH z=JT~Xo0XkAPQ?w>5)S4bl#!G_8y)YU*Y5m!C_>P!4gt(iN!{8FCb zweY~i_y6%M4>TIx)zRSrWC>g3*y8HqR393N{Oe-$o(Lf!L`bS1ee}yhL)YEoG76mO z6rJRPWOoL6kOny>~jYw)@)jx@O*b><4Z%QkM?X3>+J!)uZa0fcn zc_}q@@D~9ES=SNgS4}L@qxjD;`!@*%WLjl%nHROleZptZq$}K1R>xeGJw-qDDAV$CKWz>3{;I8}_Dta@I^^kw0RHS3KLxv=H)>m-FAiD@Q+)-~Aj1In z>nA+FeqUXW*^?2>xwuiecP-ZEn}&R;7n-fB^n%d1}B z`~$r%A4KuXN3F0FsR-ys>WmilB@p$*AEoz1YIf^qRQ=r8#S!c2x({hMK$3kd@tFgW zZA$=b>K{^&F(cO#Cm|ZpP?D<~wtx2Xa&v1v&p8Q+uH^w-mDWw~-MTvYKmTh82_;o{ zL@_)qIT-66e) zKs41>DD+NvW~Z6dIySUBKmu_r?fn`a+jnjdYxTXtRxPN}J=jDrDi#GFzUehd0%@lm7xGM`o4nPd^8>t7Ff-c=T?epPQCFhe?%KnzVy+vY$` z%bF30P4ILSV@Q1x<%;?8HrR@`Ax}60xBn(RW7Ntw_e9&kU}fHuT^NB8Z9hMkjdVZl8AV1yOc;o-3VR((0+m5&Q@1E?oazM z=0?bNGfNe*vrK+-cq`Y7K;931kpSwmE6pdSeP?Jw-Xw{4=5MIfl_dtbz^Mm>3NJf3 z=%<_qSB~{hfjk58LOZs(Dv9k30>`Sw=Hh9vFaz_To{i{*w5njSyYH^Hr2sSoe;R|K zgFC|DoyGpJFm8N3%d3^IxgT0I(x$hJus zoi6tq|62lU5K%u2nu>mNv4ggotveuyVx~szs?4mcoL{N?%pRH`GTt+0UVH;MHo?oQ zpouJtm6x|EBN>I1(s*g%K;zA;fQ!ChX%iC@kmEpH+UKhwwzB*BO!&&mtvsgQ%hLm; zbLwk9B4sX+7*)++MzmIc`1vQMn!-JX)t|qQypi{tZ`JGe<8mUzWXCY`&w?NBXC`?m zsqyLQIzE%agoH|!ZDFD(lvPw5=a4LVax1&_+1Y>!w#zlbWqmj+L(WI{sLzb{Ie^sQt z+mGZ-vcqF4Y7w;vF2`M@dq9;)K)3#(GLg;8SZhx=UUIqaaNXixb6PoE{}A$MCEGe^ zTDCZv2XGo-@va_a_Vg%QmEfdz z-twn<{|Mx;N$g{?^P_;Ba;r#88M8_1G!Oc*Jl|#rR#aK2UiR3?=x6{e#m#@GE_>z6 zi{y^s2t5O(w?QH!Ya6?~bWo=Dp100@56Y^wOga&Ne|AN%?tf+tG-wNpiN#g7&Z_!l zxKIa@AmE0|AtS8`w>A94Ui{oviDHdGt|U~KuD01f?OG3@0#CeI;N+^fUf8D)G4%kB zM(8C}4BFwPdC;;Uq#K2p8vAufj;K>veu#Tk{Y4&=TC*&afJ8RZFk5slg<_W&z_CBY z75>%mxrWu!k6ok4U~bVW5e>dawiw39kKj8S6B%#L5gX^0?+<~uG$74sHGN+epKJOJ ze3=8DnO#6|%yDUAeCe%)Yv4GfeCkds4Q#%uV_&c-xY*&l-5Zgi!!-Z+Efdw0K@dep z6i{BVNM@#a0~xi}T~DtLMhq+*z_keGNN}pkK_t1UWMBYE$ez=MOD%Qc*%BC50Ip4J zEOglj10;P2Rt-umzMFw^7*)w^6+rM&BK%gT3W(+Tmkklm$28iT(;hQ(LczxWlyEgr zD3*HjuR97dvS@)HG*+G5W&?~ugAg3G+m(ZFR9ze+%9kO-g;)iLzJG*BeaaF^ef?TT zQ!cL4)l_}(ws^5tuM!i-lQuo{WbYL)X2{sQvA$-?RI?b(3()UL@;-6YC0 z94-*EEPBGz#LR5SLW~oZHIKPbgI85gKFxj5tTQcZixAooT%C3zvoL!rY)^o`hGJQ6 zExrxg#U^|k(>CGvs3EO` zBUzf11B23=AX-#ZL_%jDgBBCOGP2FNGyMK>Lc#&A@m3$;$|BZ)Ol~G1!Mo#0R1|<} zhnQ2+DQS2dxk2@y@5QGjFVJtSiXS8p`Q@mZ>gu5(NrTxt#eEO>oGj@4Sux#SrxK;< zyTr?S*W0_>o4?Njn#8WGuAZR3luI$_8@wFSJ*sMkSGFV-f z6`V56hH;fEf+2+XL!N20lVqc9YR8&lynp$2G6jAI@B#00j>e5m2coF{{y7 zNzRNU!`vaR8n2h+HsG52Y*yDS?uo8 zfeo6-1`vlR)XxEBRO$o-F<3}(#`biEJol+=XXDQes^_TX8}+{Q)@iS(s8ZCCkbsL# zU_FP7ajOxj)wf0_)oQck<^;0y;J$?}AD8S)li$#pW(kAu4J7h^=js7?8+9&e(YZ z1EsgC>q-gh#HAT~8gMnLKWAmvG{X=eipDGnsL=^;QY(zs5)Ds4DOa=w4YQGjZm=k* zs61qM=!a^ ztCX>x-(`*784=BLN*sTFy;V=FbaCKztvZYAR9MV%{Ib~2yChnhnw zCEo7FTbF^Fnr-{`8f&Q4#6CR!CR9@u^q@gmD+4=;XrgvWJ7wD z`fX}BC^_B(X0FM{$psv@ABdy_tQ7#;!uhAfZ5zBCHf}@%`b&!y*Bs$<{Zf@BC;w|6 z%{5ng)KPE$ePAzsqbLNuyMEU; zyiCCZgDi49;Kxb2t#tU-(|m)}Ss72IxF@!OTwe>BXEXtg z+K#-ZXKd?WeevR6?%-_Zlzj7t06x{?ygbmG3F@jXO69=o=MhzHZ)pK6_@n)BG&olD z6{eqx1Bk!^q4(QBDRF~_7hzGU81&m*hsl(XgQ!N-Loyn(FX4^wf!$C$3p)cgRvH^i z__(mGC=6XmB({M7N$-gc{CG!h4>ln=0+^$inGa}{gJ$n(srE=0Pk8xQECKX*tB%;cR+jA~(6|r& zviJEm*lqUO4TU`RH+5ttpe&f)*^*ySfqAd&v5x_68W2yTb?P72}Y z0bm})oP~T~Gy~F+iUGS#FAsEOw%8*IbR)B?$Hc#CuJoqCwx%IbFyY*eBvH|Q+`%Y9 z_RhYfJ1sjLndjwi^*sEnFn#?(S``@JcE~?BEl(0Mi5X7w<5f(`@lP!(7C!dVBz5guX)#}D%nL{3<(i=Y3Drim@jgk0(ZS!Y|@=0lsla@F15Habb4RO4z4!N50 z>=MeLUuaL8pJ%@bR>{K<aI-cG@xvcg8$QuwVvgejMoqXM@d~+FCMCwRnWlK##ss_B zs^=l<@Y10^_A>QN%yB3$T+g!|U(s7{69s7dJ*W$Pm;O|$2*eu=g;fqYqk zHizRv#!Bu|!p}-5&EecKDa)^&iB}7(Y_J_yPNI|^C+*z5M_W?9{&}Os@&kRFrr5uO zqtC?0IIyruVJ4OmWuFeHWDgGxr6-9Kp_ANEO#{C=$q4H~FhwnV{n<%{veg6u=%lOk zq43kzh%$5e6so;cr?vfS*^NsmpJh2qMMXug zp{}Y&MMVptqB`;VG%e*xgqoKL6&3YE2Njja8Y(KBkKG|42PYsE)twJER#ulZ1n#sy ze{N;fj^XD$>+Y@h_HBfo6|}SQ#4DO}x#x1jJ6Zry)YJ+}T<7kxTn(sgZ9M%&csZo& zFmU#MQ+H^rkV2`uo4??oV@N(bz%?hEk>|vsqEc#t+2g0*8XG^+*zzYPUU@mpri4_# z*!x6@aQ%WT+c!LwHIMSJTBGCrkksH6Rwbm8`@@^P=USPRkUEz>`p8^jbre3maW7{M zz*iN<}2Bk zo2*)H$)y)xVQhLD8~ygk5_EG}M=H@1pp&tx zgEK{{l&&dA-xZPjgU$a{@}G|WtL8Hgpt}mhnNrbH;Xl*z@5+BK{NEM-U}^LpmLihk zQh(?9x1zsQ{WS&|U3UixyXU`zs6grG|Ml$O^m4+#B>Xpt|7$w`cuJX1g|l+Pf9Zz8 zSs$wgW-2NrDh*ZTr#{pxHH=Z`FCn;AviMDb904e8e8zm+9EAB_?&H7_JlRpQj~lcUSus z7{Y^|mOm?cs*yWW+so}Bt!g!Jc|1ouRMfpYFw1ssN?SVH(DPQR(xgdXy*a2j`h4Zt z?F&j&)F=PzhkCpc{wb_Qljp%?=ozhXH-B#zSG}knWqsibRR)pobAxUTss6665@!Te zQ_9^t(!inijKuc(6KC8#_TK2-du7Cj+bg>KMuZA{Z-{Sw(k@}vP^Je#kVQd9&Hemx_gh!Go{*9DW9T3ZtSq&H3`be8k95he+jn$T)y87KfFO zk`c-y68W6k%W?7!$CHgbjHk^C`9%84?{|euS<(M~Am2`3K%EKw*bk}`n-j+7;L|$l zI~=gw<%*OZd|F9)%xZD#zj6QdEL-R0r1ny(&XUP3?ykhZQAN_ zD3d86$o+bIUc(odaPxPKa9(&wY2{j6sw5cl?YZx9ZNs0EOdXOxoW4vM##cG_Ct23@ zT#tU=NQ_KyK+Ah34*SB^mX?ksR6gA~@%(2GSqy{)2l=nau05}&9o<{0G|$baXY1A0 zydrp8j0vLI@0D*ZEw(pNr!5%H8)GTyJeo4{-Oi^@Q1*O#5Dge%ms3$&c3Kj$XA+_p1k3D&c% zY+K{PTG1&P>CBX=uR@8#F5D8sw&mGLNxP>oUZvA)c;mL!zTZ#*4eK9lLliP4_?yJX zK%+-)7kaTj!YZI5iy_AMWekOH*D07UW6l!I#AV=~FeaYYU$)!*p)Ti(^gpWyEe?MD z`jnqhkl*`yT(rb6(syEWe(;O?4e2_)h=|k%+3$f2*Hh2@MqN3XgFOKdlZnIpnVv+o zvyOz02q}0>sn}3^nlKM(quy$8$d=(MGeXdQtC>g4b_w+Y7j%C;;y`P}Q7O}Vp7!EZ zRLALT0O-vQM3_r_-^O{dW>u6BJsWH;2{%+$fL0aGU{cf=VK_cTj1d=n%*(*4TB_8h zhng3E%OgYz+0$6zXeRz8L@M3zVY)0fBA&g%dUowAh8Y(*O5meM4G6HuPX(o~nCTo= z3UL28WG|TmKnfTm6BHp|g>tO7I*UWqZtI+oJ7JO-_Yf{fcXrZfaz4c(K0Clkfj57d zb!-Rw0 zuMahF(2bagV~_YpN%ftAaHE0}IlpmZy#~!Q#weFCIeDjom9dP;1o?nx;G}9>ggD&P zg2jOUh8A``hDjlvF%IbF51(^)g!Q=`5029n7-gibl#!Ee`kh8p|4+^rS_szXkYCcO!rK<*oLV*b1k? z&re-^j~wTuy$=kewb_=Q@e1`z+}S;3>d)!%)t>2kc-3~AP`A|}Z1>I^CX4(kXO_V!iJ*aFDNQ6TzuH19gOb?F# z$juk`HeOZ;B2-Z>FtJ51E5QoZ=_R5YNDOsex1grHE!K4H2gyyBNARfHI=Zp_`FZL2 z*Ns~I)c3&Zkb@w`qi_gt`M}zSX!D=Vf$H@Y*n~yY;h4-0jQNj4*Pw-o}3yb=-7GLW!0(XJBeS1KpC! z9pRpZ=Bk~HojlN@31Q)*GA`FviFayfuE?nwPYlbUIpR%0^Mj6RiL+?qb=bM0>5QuN z6}>)GfHJP0{5GK4$}p3I^a8c0p#5HpPW}`)P*;#Ug~0x?2gC!aEiX1v_XC#{n*BTy z_2>`solS(5>4)+Sb$``U?;a#2^iy??VNT5qT2^*C!!&DNYJNWQ9V_Qv>i{>fambNO zqc{7?+4|}Xp66SNj;!{O#=N~Wn5wF6jzGS?O9sB#fey?*Al~ZvqCWSD^QeCZt0z*u2UUC*FPuW~;>b5I z{d)Vl%uS-WkAAW0Po<4qv_t%C#37K&0E^D^?(lZDFxIIhsZ@?<9qV|@k5#N^ULhn@ ze!Zy;KW@Zu>;(uf4wrvi>2G{jQ7DUzO=odkbe+#zt03#vf}R0a^qJJ3l2BWF-Nz<+ zg_&btraL@YH((JN$om41Mb;MSY>8_pSeoA^qDO}kZXKdG-dkeM?97gHFm@&?3VJRF zDeebU2Bd%>W&^o3bUWo$n<}N8%`4vUIGTg)jyKN4?2oj0L6#*JLHnylptlW{JjwVJ zS0fAZns7C7N`LkX!|rV8`h2>5YzcZ*W?%k&^Fs8l-Czt+7|i|ptZMbv3lYFp$Ly-3 zRyEy(E3s+nDaBR-LrTaTBU6(TIEOj*F03qinPyDujK=LZ}wNZeK{Pm{0arnB|Nt2=Py5LS~ZE; z)(Fl&`+yGsfOP+O*-I@^(HL2Qg^qGZm-BM17PMAj33=hPIix@n5$3vp49~(RckX8V zR@wOhTOdNWAe9yMhfbzC-e*EVT3$=h$5IZtZ!1j2#ad~kD9(o~UWoZ-OE)pYjL=>g zEL4O?sTC|qKJ%*+^e}YsP(+z#Hi4021P8R8;Ka>5N6Gic!;mBn#;PQwJ>qHAr1svv z^G|LE`1JR3MObpB@1(C)gMpB1Ke3}!Z!QEoYpEOY0?x7M{l;|ua4lSM!5g|^>d?C` zf8gO}os?Z`nRabBOls3Lqu)F;AH$YWs}vR=1GdO3FSmb80iN(BnkOm`g<}d5=|5cZ zt6!ua^Jyd6kKLE@)yC4|i#!$m(_au7F7va3aQtj*$C{mm9q0S8>Nsl=YhYW^uK$iK z@9+WF{EO-Liq$L0NNv7TY{YJCo_csXyaOYw?Y>np2ev>!s`vF zJ}%I!^pSDxMEpL>J>dH*{*E8cCD&j8cSpcp5fwp}#jzo}0&$`}0tu`Q6LCJU0xqHL zLy`LkPfdk7brV!=AK-P(QkBS%P@kyngYrki&^)Jj5JVu6Ny4UOBqmAL_IPdb5!}m9 zj&3YsATwsS@Ov28Owq-`;+ym3HC_Gj`Thnj+Oj1Sa%}hc0U>m2!#GEkUqmzId0|fK z8hE8Mun%RXTv`h98{(bvdV%>GsrU1sMbByDCX)c4sL$u4Tw|3K&j^+jmm|NCkS_^8 z5ner|9%ZF2NRE3`G)5K^6AKo2;FWPWPG9_YFsk;XsKoYM97|4%sN~A#K4x`H`nq($ z(|3&Typ$6_73eBoG7)6(xLR!87TR|SY`~3SkDYgld1%58bNx(H<~>1O**W9O8YP%f z`vU;67T3>qi)=m)A}+sE(kOe<0E-h_ijUV9ZxlO*Pi{J}7z%&p8f8GM*^u3d$F^gZ zTX=c4><`_QNF6bSq8ELWDtMG{j^3gX&VMonUE@X<04<6hI&?TA=^uxEbQAonv$-QR zC&io*Ehx|Gcu-;FyPw7@YC1m~$G9;d>a%U&jI}cEP~t7$WO-Hg=<9uvHvCPjC*aj&b7OeS7*StmE%wl}YHo<0gr>Mfk$ikwoFm|BN zDx-oA_)h(}fD1_KtzWCy%bVz*o;?=vs7nlK)aoQIUok@m=kOgb#cXYG*!jD(-f`$C!gj4tN z`Cpio#Uz(}mr;BEak0qctJ@2z$5NiXqoVr>}OwY-( z)w*Nm?=LSNz>3h87?y;e&8Dw+_z{ zl%4(_C4mT-7Q&kI0~3;%?-cH+1%d@%pi-q8++yARj+>p{KTC8`>0IRM zvT8FQuT{@ekh5yDu_+ZN(;}C}tnY8-G=B3GQ$ffqf0AUZVpjBkc`lKwcltKH6#Tyy zk|v=mVFz&xF^oO&8rbFP9?&bc{`vSG@}tGaF2-3);fgheKb-PD?|Gdof@&xF>4_F+ zn%$k`F9qW@v{o@@H7x)f4L`6?b<)IvvF&YjI9W*40n59V>oI$nW$c=i?oo|4H*AEz0en!FCe!_>3hAh39piG;=~GQuo)&Y&Cm{vL zKvSe#C zbaYnFv+2vg^^h08i(`16v31-49V6vMUo>$$z?9?MdiFj-f{bs>YF=?q;@3S-*2a@b z!qugwCw#X?4Em5757@Fmu>z(I`mGC@1ZIb6sO61>)or*}g#=UZk6Y*i5d?T zohRKO^=oJW8)q@LU1CffCE2CV91R7yvGTihzv4lMV9te}mXsW2J?_3k!8W_QRiQak zJrCGe)Ncr0-Wy9q*h0RQmdfarI=nG3M)8UG7g%=~RZsUZ_K~Ob$4NEf@S7@pTp*(y z&zEs>g0dYG_4^K`W>A+v-?dz^95;+!ndbPa@5ZSH2ZDA<9aNUQLw@*($=?U&ov1(a z{gjMGBC+8^DfD(d$D!kpwuRufgs0Qc$tD`?QuJ!_&!4aPQS89+?J2?V;P>xJ4`!l< zxN@NAsWmHe$15LiXy8P6+2px-Z>()j*NUP*k3$Sk#cDsG z)@)<$_&r}|ikMfsc^;2Rpd_@Cj%wC-XV^c>@rS*!ubQ^+qc$eLPn!@utuDX+?h;~j zf*;Z2jW`a^u?RxO`ZY!*iaFUN5KXNKzR-Xv^CbhJuGTxu0nT7)%M;v$YoefFI{fva zt%v?oq3czOU$z+lnyLUYRlTWJ5^l=}b01fP6RBfo6I5AW79cB-uc(ziUskAIT6A+s zia*|3hi>%d>*Y9IJV;C!a-^Ww(VmTPt(nE=`s2tK;`?Q4XmFtXi`T3xb)bVU#Vbj` zdC!_{L}sA;{@m?E%#S=3XL-1R3+_urxbmBV+4mZi3D0sMZ8a_=BQ`aV53Q!Bxxb5b z68xvld~FbDCfYYUcNLd7S(a@<@{2MX M#+OP`RAa&;8_*~#*LHh~A^kS|h0${bX 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 literal 0 HcmV?d00001 diff --git a/docs/README.md b/docs/README.md index 321216ba..db0b642d 100644 --- a/docs/README.md +++ b/docs/README.md @@ -2,7 +2,7 @@ ## Mangle Documentation -The Mangle Documentation provides information about how to install, configure, and uses Mangle™. +The Mangle Documentation provides information about how to install, configure, and uses Mangle. To navigate to the appropriate documentation, start with the [Mangle GitHub IO Page](https://vmware.github.io/mangle/). diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md index fc6dc4dc..ffe0660f 100644 --- a/docs/SUMMARY.md +++ b/docs/SUMMARY.md @@ -17,6 +17,7 @@ * [Database Faults](sre-developers-and-users/injecting-faults/database-faults.md) * [Redis Faults](sre-developers-and-users/injecting-faults/redis-faults.md) * [Custom Faults](sre-developers-and-users/injecting-faults/custom-faults.md) + * [Fault Events in Dynatrace](sre-developers-and-users/injecting-faults/fault-events-in-dynatrace.md) * [Resiliency Score](sre-developers-and-users/resiliency-score.md) * [Requests and Reports](sre-developers-and-users/requests-and-reports.md) * [Mangle Troubleshooting Guide](troubleshooting-guide/README.md) @@ -26,4 +27,3 @@ * [Fault Injection Stage](troubleshooting-guide/fault-injection-stage.md) * [Mangle Developers' Guide](building-the-mangle-codebase.md) * [Contributing to Mangle](contributing-to-mangle.md) - diff --git a/docs/mangle-administration/README.md b/docs/mangle-administration/README.md index b8587829..4e4fca3e 100644 --- a/docs/mangle-administration/README.md +++ b/docs/mangle-administration/README.md @@ -2,22 +2,21 @@ _Mangle Deployment and Administration Guide_ provides information about how to install and configure Mangle as an administrative user. -**Product version: 3.0.0** +**Product version: 3.5.0** #### Intended Audience -This information is intended for Mangle administrators who would be setting up Mangle, adding users, adding metric providers for monitoring faults, setting log levels and creating support bundles. Knowledge of [container technology](https://en.wikipedia.org/wiki/Operating-system-level_virtualization) and [Docker](https://docs.docker.com/) will be useful. +This information is intended for Mangle administrators who would be setting up Mangle, adding users, adding metric providers for monitoring faults, setting log levels and creating support bundles. Knowledge of [container technology](https://en.wikipedia.org/wiki/Operating-system-level\_virtualization) and [Docker](https://docs.docker.com) will be useful. -| Sub Content | Description | -| :--- | :--- | -| [Supported Deployment Models](supported-deployment-models/) | Provides information about deploying Mangle either as an OVA or as containers; as a single instance or as a cluster for high availability | -| [Admin Settings](admin-settings.md) | Provides information about add additional authentication sources, users, roles, setting log levels and adding metric providers for monitoring | +| Sub Content | Description | +| ----------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | +| [Supported Deployment Models](supported-deployment-models/) | Provides information about deploying Mangle either as an OVA or as containers; as a single instance or as a cluster for high availability | +| [Admin Settings](admin-settings.md) | Provides information about add additional authentication sources, users, roles, setting log levels and adding metric providers for monitoring | -Copyright \(c\) 2019 VMware, Inc. All rights reserved. [Copyright and trademark information](http://pubs.vmware.com/copyright-trademark.html). Any feedback you provide to VMware is subject to the terms at [www.vmware.com/community\_terms.html](http://www.vmware.com/community_terms.html). +Copyright (c) 2019 VMware, Inc. All rights reserved. [Copyright and trademark information](http://pubs.vmware.com/copyright-trademark.html). Any feedback you provide to VMware is subject to the terms at [www.vmware.com/community\_terms.html](http://www.vmware.com/community\_terms.html). -**VMware, Inc.** -3401 Hillview Ave. +**VMware, Inc.**\ +3401 Hillview Ave.\ Palo Alto, CA 94304 -[www.vmware.com](http://www.vmware.com/) - +[www.vmware.com](http://www.vmware.com) diff --git a/docs/mangle-administration/admin-settings.md b/docs/mangle-administration/admin-settings.md index 8992d6d0..32b7167f 100644 --- a/docs/mangle-administration/admin-settings.md +++ b/docs/mangle-administration/admin-settings.md @@ -18,7 +18,7 @@ Mangle supports using Active Directory as an additional authentication source.&# {% hint style="info" %} **Relevant API List** -**For access to Swagger documentation, please traverse to link **![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/auth-provider-controller_ +**For access to Swagger documentation, please traverse to link** ![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/auth-provider-controller_ {% endhint %} #### Adding/Importing Users @@ -37,7 +37,7 @@ Mangle supports adding new local user or importing users from Active Directory s {% hint style="info" %} **Relevant API List** -**For access to Swagger documentation, please traverse to link **![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/user-management-controller_ +**For access to Swagger documentation, please traverse to link** ![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/user-management-controller_ {% endhint %} #### Default and Custom Roles @@ -64,7 +64,7 @@ Mangle supports creation of custom roles from the default privileges that are av {% hint style="info" %} **Relevant API List** -**For access to Swagger documentation, please traverse to link **![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/role-controller_ +**For access to Swagger documentation, please traverse to link** ![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/role-controller_ {% endhint %} ## Configuration @@ -86,12 +86,12 @@ Mangle supports modifying log levels for the application. ![](../.gitbook/assets/new\_logo.png) Clicking on ![](../.gitbook/assets/application\_log.png) will open up the log on the UI and will be auto refreshed periodically. -![](../.gitbook/assets/new\_logo.png) Clicking on ![](../.gitbook/assets/download\_bundle.png) will allow you to download and save the support bundle from the mangle server to a local file directory. It pulls and aggregates the logs from multiple nodes into a single zip file in case of a clustered Mangle setup. +![](../.gitbook/assets/new\_logo.png) Clicking on ![](../.gitbook/assets/download\_bundle.png) will allow you to download and save the support bundle from the mangle server to a local file directory. In case of a clustered Mangle setup, the action should be repeated for each node in the cluster to get the support bundle from all nodes. {% hint style="info" %} **Relevant API List** -**For access to Swagger documentation, please traverse to link **![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/operation-handler_ +**For access to Swagger documentation, please traverse to link** ![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/operation-handler_ {% endhint %} ### ![](../.gitbook/assets/new\_logo.png) Cluster Config @@ -108,7 +108,7 @@ The page displays the cluster name, the validation token, members, quorum and de {% hint style="info" %} **Relevant API List** -**For access to Swagger documentation, please traverse to link **![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/cluster-config-controller_ +**For access to Swagger documentation, please traverse to link** ![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/cluster-config-controller_ {% endhint %} ### Fault Plugins @@ -128,7 +128,7 @@ This section enables you to load custom faults that are already available on the {% hint style="info" %} **Relevant API List** -**For access to Swagger documentation, please traverse to link **![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/plugin-controller_ +**For access to Swagger documentation, please traverse to link** ![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/plugin-controller_ {% endhint %} ### ![](../.gitbook/assets/new\_logo.png) Resiliency Score Metric Configuration @@ -158,36 +158,46 @@ The configuration required to enable resiliency score calculations has to be don _Only one configuration for the resiliency score calculation can be created._ -_This feature is still under evaluation and is supported only **VMware Wavefront**. If you need Mangle to provide support for other monitoring systems, please raise a feature request under _[_Mangle Github_](https://github.com/vmware/mangle/issues)_._ +_This feature is still under evaluation and is supported only **VMware Wavefront**. If you need Mangle to provide support for other monitoring systems, please raise a feature request under_ [_Mangle Github_](https://github.com/vmware/mangle/issues)_._ {% endhint %} {% hint style="info" %} **Relevant API List** -**For access to Swagger documentation, please traverse to link **![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/resiliency-score-controller_ +**For access to Swagger documentation, please traverse to link** ![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/resiliency-score-controller_ {% endhint %} ## Integrations ### Metric Providers -Mangle supports addition of either Wavefront or Datadog as metric providers. This enables the information about fault injection and remediation to be published to these tools as events thus making it easier to monitor them. +Mangle supports addition of Wavefront, Datadog or Dynatrace as metric providers. This enables the information about fault injection and remediation to be published to these tools as events thus making it easier to monitor them. **Steps to follow:** 1. Login as an admin user to Mangle. 2. Navigate to ![](../.gitbook/assets/settings.png) -----> Integrations -----> Metric Providers . 3. Click on ![](../.gitbook/assets/monitoringtoolbutton.png). -4. Choose Wavefront or Datadog, provide credentials and click on **Submit**. +4. Choose Wavefront, Datadog or Dynatrace, provide credentials and click on **Submit**. 5. A success message is displayed and the table for Monitoring tools will be updated with the new entry. 6. Click on ![](<../.gitbook/assets/supportedactionsbutton (3) (3).png>) against a table entry to see the supported operations. On adding a metric provider, Mangle will send events automatically to the enabled provider for every fault injected and remediated. If the requirement is to monitor Mangle as an application by looking at its metrics, then click on the ![](../.gitbook/assets/send\_metrics.png) button to enable sending of Mangle application metrics to the corresponding metric provider. {% hint style="info" %} +**Notes about the Dynatrace Integration:** + +Device ID: The name of the custom device that will appear in the user interface of Dynatrace. The custom device will be created at Dynatrace only on enabling to "Send Metric" option at Mangle. Application metrics of Mangle will be visible under the specified device ID at Dynatrace on enabling "Send Metric" option at Mangle. + +Dynatrace expects same dimensions for the metrics reported by an application. Hence, if you have multiple Mangle instance deployments then , please include the same "key" under "tags" option (values can be different) while configuring the Mangle metric provider. + + +{% endhint %} + +{% hint style="warning" %} **Relevant API List** -**For access to Swagger documentation, please traverse to link **![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#_/_operation-handler_ +**For access to Swagger documentation, please traverse to link** ![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#_/_operation-handler_ {% endhint %} ### __![](../.gitbook/assets/new\_logo.png) Notifier @@ -211,5 +221,5 @@ After this configuration, you will be able to select an appropriate notifier at {% hint style="info" %} **Relevant API List** -**For access to Swagger documentation, please traverse to link **![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/notifier-controller_ +**For access to Swagger documentation, please traverse to link** ![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/notifier-controller_ {% endhint %} diff --git a/docs/mangle-administration/supported-deployment-models/README.md b/docs/mangle-administration/supported-deployment-models/README.md index 051e6029..25f5c0d0 100644 --- a/docs/mangle-administration/supported-deployment-models/README.md +++ b/docs/mangle-administration/supported-deployment-models/README.md @@ -2,7 +2,7 @@ ## Single Node Deployments -For a quick POC we recommend deploying a single node instance of Mangle on VMware vSphere using the OVA file available for download [here](https://repo.vmware.com/mangle/v3.0.0/Mangle-3.0.0.0\_OVF10.ova). +For a quick POC we recommend deploying a single node instance of Mangle on VMware vSphere using the OVA file available for download [here](https://repo.vmware.com/mangle/v3.5.0/Mangle-3.5.0.0-19106891\_OVF10.ova). ### System Requirements @@ -19,7 +19,7 @@ Login to your vSphere environment and perform the following steps in vCenter: 1. Start the Import Process * From the Actions pull-down menu for a datacenter, choose **Deploy OVF Template**. ![Create/Register VM](../../.gitbook/assets/ova3.x\_step1\_deployovf.png) - * Locate and select the downloaded OVA file (as the screenshot shows), or alternatively, for vCenter instances with connectivity to the internet, enter the OVA's URL to deploy from the web directly. + * Locate and select the downloaded OVA file (as the screenshot shows), or alternatively, for vCenter instances with connectivity to the internet, enter the OVA's [URL](https://repo.vmware.com/mangle/v3.5.0/Mangle-3.5.0.0-18963379\_OVF10.ova) to deploy from the web directly. * Choose **Next**. 2. Specify the Name and Location of Virtual Machine * Enter a name for the virtual machine, and select the target location for it. ![OVA file](../../.gitbook/assets/ova3.x\_step2\_nameandfolder.png) @@ -61,6 +61,7 @@ Login to your vSphere environment and perform the following steps in vCenter: * Password: `admin` 15. Export the VM as a Template (Optional) 16. Consider converting this imported VM into a template (from the Actions menu, choose **Export** ) so that you have a master Mangle instance that can be combined with vSphere Guest Customization to enable rapid provisioning of Mangle instances. +17. Mangle container logs are mounted to location `/var/opt/mangle-tomcat-dir/logs` on the virtual machine. Now you can move on to the [Mangle Users Guide](../../sre-developers-and-users/). @@ -68,20 +69,28 @@ Now you can move on to the [Mangle Users Guide](../../sre-developers-and-users/) #### Prerequisites -Before creating the Mangle container a Cassandra DB container should be made available on a Docker host. You can choose to deploy the DB and the Application container on the same Docker host or on different Docker hosts. However, we recommend that you use a separate Docker host for each of these. You can setup a Docker host by following the instructions [here](https://docs.docker.com/install/). +Before creating the Mangle container, a Cassandra DB container should be made available on a Docker host. You can choose to deploy the DB and the Application container on the same Docker host or on different Docker hosts. However, we recommend that you use a separate Docker host for each of these. You can setup a Docker host by following the instructions [here](https://docs.docker.com/install/). To deploy Cassandra, you can either use the authentication enabled image tested and verified with Mangle available on the Mangle Docker repo or use the default public Cassandra image hosted on Dockerhub. +#### Create directories for mounting the Mangle container logs on the Docker host by, running the command below: + +`mkdir -p /var/opt/mangle-tomcat-dir/logs` + +#### Grant permission on the Host Dir for container volume mounting by, running the command below: + +`chown 1000:1000 /var/opt/mangle-tomcat-dir/logs` + **If you chose to use the Cassandra image from Mangle Docker Repo:** ``` -docker run --name mangle-cassandradb -v /cassandra/storage/:/var/lib/cassandra -p 9042:9042 -d -e CASSANDRA_CLUSTER_NAME="manglecassandracluster" -e CASSANDRA_DC="DC1" -e CASSANDRA_RACK="rack1" -e CASSANDRA_ENDPOINT_SNITCH="GossipingPropertyFileSnitch" mangleuser/mangle_cassandradb: +docker run --name mangle-cassandradb -v /cassandra/storage/:/var/lib/cassandra -p :9042:9042 -d -e CASSANDRA_CLUSTER_NAME="manglecassandracluster" -e CASSANDRA_DC="DC1" -e CASSANDRA_RACK="rack1" -e CASSANDRA_ENDPOINT_SNITCH="GossipingPropertyFileSnitch" mangleuser/mangle_cassandradb: ``` **If you chose to use the Cassandra image from** [**Dockerhub**](https://hub.docker.com/\_/cassandra/)**:** ``` -docker run --name mangle-cassandradb -v /cassandra/storage/:/var/lib/cassandra -p 9042:9042 -d -e CASSANDRA_CLUSTER_NAME="manglecassandracluster" -e CASSANDRA_DC="DC1" -e CASSANDRA_RACK="rack1" -e CASSANDRA_ENDPOINT_SNITCH="GossipingPropertyFileSnitch" cassandra:3.11 +docker run --name mangle-cassandradb -v /cassandra/storage/:/var/lib/cassandra -p :9042:9042 -d -e CASSANDRA_CLUSTER_NAME="manglecassandracluster" -e CASSANDRA_DC="DC1" -e CASSANDRA_RACK="rack1" -e CASSANDRA_ENDPOINT_SNITCH="GossipingPropertyFileSnitch" cassandra:3.11 ``` {% hint style="info" %} @@ -93,13 +102,13 @@ To enable authentication or clustering on Cassandra refer to the [Cassandra Adva To deploy the Mangle container using a Cassandra DB deployed using the image from Mangle Docker repo or with DB authentication and ssl enabled, run the docker command below on the docker host after substituting the values in angle braces <> with actual values. ``` -docker run --name mangle -d -e DB_OPTIONS="-DcassandraContactPoints= -DcassandraSslEnabled=true -DcassandraUsername=cassandra -DcassandraPassword=cassandra" -e CLUSTER_OPTIONS="-DclusterValidationToken=mangle -DpublicAddress=" -p 8080:8080 -p 8443:8443 mangleuser/mangle: +docker run --name mangle --log-opt max-size=10m --log-opt max-file=1 -v /var/opt/mangle-tomcat-dir/logs:/home/mangle/var/opt/mangle-tomcat/logs -d -e DB_OPTIONS="-DcassandraContactPoints= -DcassandraSslEnabled=true -DcassandraUsername=cassandra -DcassandraPassword=cassandra" -e CLUSTER_OPTIONS="-DclusterValidationToken=mangle -DpublicAddress=" -p :8080:8080 -p :8443:8443 mangleuser/mangle: ``` To deploy the Mangle container using a Cassandra DB deployed using the image from Dockerhub or with DB authentication and ssl disabled, run the docker command below on the docker host after substituting the values in angle braces <> with actual values. ``` -docker run --name mangle -d -e DB_OPTIONS="-DcassandraContactPoints= -DcassandraSslEnabled=false" -e CLUSTER_OPTIONS="-DclusterValidationToken=mangle -DpublicAddress=" -p 8080:8080 -p 8443:8443 mangleuser/mangle: +docker run --name mangle --log-opt max-size=10m --log-opt max-file=1 -v /var/opt/mangle-tomcat-dir/logs:/home/mangle/var/opt/mangle-tomcat/logs -d -e DB_OPTIONS="-DcassandraContactPoints= -DcassandraSslEnabled=false" -e CLUSTER_OPTIONS="-DclusterValidationToken=mangle -DpublicAddress=" -p :8080:8080 -p :8443:8443 mangleuser/mangle: ``` {% hint style="info" %} @@ -142,16 +151,24 @@ Although the docker run commands above lists only a few DB\_OPTIONS and CLUSTER\ Mangle vCenter Adapter is a fault injection adapter for injecting vCenter specific faults. All the vCenter operations from the Mangle application will be carried out through this adapter. +_**Create directories for mounting the Mangle-vCenter container logs on the Docker host by running the command below:**_ + +`mkdir -p /var/opt/mangle-vc-adapter-tomcat/logs` + +_**Grant permission on the Host Dir for container volume mounting by, running the command below:**_ + +`chown 1000:1000 /var/opt/mangle-vc-adapter-tomcat/logs` + To deploy the vCenter adapter container using the default credentials run the docker command below on the docker host. Here the port 8443 is the external facing port on which the container will be available. Please ensure that the 8443 port is not used by any other application before running the command below. Else, change the command to use a free port and then run it. ``` -docker run --name mangle-vc-adapter -v /var/opt/mangle-vc-adapter-tomcat/logs:/var/opt/mangle-vc-adapter-tomcat/logs -d -p 8080:8080 -p 8443:8443 mangleuser/mangle_vcenter_adapter: +docker run --name mangle-vc-adapter --log-opt max-size=10m --log-opt max-file=1 -v /var/opt/mangle-vc-adapter-tomcat/logs:/var/opt/mangle-vc-adapter-tomcat/logs -d -p :8080:8080 -p :8443:8443 mangleuser/mangle_vcenter_adapter: ``` To deploy the vCenter adapter container using custom credentials run the docker command below on the docker host. Substitute the new password in angular brackets with a password of your choice. Here the port 8443 is the external facing port on which the container will be available. Please ensure that the 8443 port is not used by any other application before running the command below. Else, change the command to use a free port and then run it. ``` -docker run --name mangle-vc-adapter -v /var/opt/mangle-vc-adapter-tomcat/logs:/var/opt/mangle-vc-adapter-tomcat/logs -d -p 8080:8080 -p 8443:8443 -e JAVA_OPTS="-DcustomAdminCred=" mangleuser/mangle_vcenter_adapter: +docker run --name mangle-vc-adapter --log-opt max-size=10m --log-opt max-file=1 -v /var/opt/mangle-vc-adapter-tomcat/logs:/var/opt/mangle-vc-adapter-tomcat/logs -d -p :8080:8080 -p :8443:8443 -e JAVA_OPTS="-DcustomAdminCred=" mangleuser/mangle_vcenter_adapter: ``` {% hint style="info" %} @@ -241,17 +258,17 @@ Deploy the Mangle cluster by bringing up the mangle container in each docker hos **For the first node in the cluster:** ``` -docker run --name mangle -d -v /var/opt/mangle-tomcat/logs:/var/opt/mangle-tomcat/logs -e DB_OPTIONS="-DcassandraContactPoints=" -e CLUSTER_OPTIONS="-DclusterName= -DclusterValidationToken= -DpublicAddress= -DdeploymentMode=CLUSTER" -p 8080:8080 -p 443:8443 -p 5701:5701 mangleuser/mangle: +docker run --name mangle --log-opt max-size=10m --log-opt max-file=1 -d -v /var/opt/mangle-tomcat/logs:/var/opt/mangle-tomcat/logs -e DB_OPTIONS="-DcassandraContactPoints=" -e CLUSTER_OPTIONS="-DclusterName= -DclusterValidationToken= -DpublicAddress= -DdeploymentMode=CLUSTER" -p :8080:8080 -p :443:8443 -p :5701:5701 mangleuser/mangle: ``` **For the subsequent nodes in the cluster:** ``` -docker run --name mangle -d -v /var/opt/mangle-tomcat/logs:/var/opt/mangle-tomcat/logs -e DB_OPTIONS="-DcassandraContactPoints=" -e CLUSTER_OPTIONS="-DclusterName= -DclusterValidationToken= -DpublicAddress= -DclusterMembers= -DdeploymentMode=CLUSTER" -p 8080:8080 -p 443:8443 -p 5701:5701 mangleuser/mangle: +docker run --name mangle --log-opt max-size=10m --log-opt max-file=1 -d -v /var/opt/mangle-tomcat/logs:/var/opt/mangle-tomcat/logs -e DB_OPTIONS="-DcassandraContactPoints=" -e CLUSTER_OPTIONS="-DclusterName= -DclusterValidationToken= -DpublicAddress= -DclusterMembers= -DdeploymentMode=CLUSTER" -p :8080:8080 -p :443:8443 -p :5701:5701 mangleuser/mangle: ``` ``` -docker run --name mangle -d -v /var/opt/mangle-tomcat/logs:/var/opt/mangle-tomcat/logs -e DB_OPTIONS="-DcassandraContactPoints=" -e CLUSTER_OPTIONS="-DclusterName= -DclusterValidationToken= -DpublicAddress= -DclusterMembers= -DdeploymentMode=CLUSTER" -p 8080:8080 -p 443:8443 -p 5701:5701 mangleuser/mangle: +docker run --name mangle --log-opt max-size=10m --log-opt max-file=1 -d -v /var/opt/mangle-tomcat/logs:/var/opt/mangle-tomcat/logs -e DB_OPTIONS="-DcassandraContactPoints=" -e CLUSTER_OPTIONS="-DclusterName= -DclusterValidationToken= -DpublicAddress= -DclusterMembers= -DdeploymentMode=CLUSTER" -p :8080:8080 -p :443:8443 -p :5701:5701 mangleuser/mangle: ``` ## Deployment Mode and Quorum @@ -320,7 +337,7 @@ Active members list of the active quorum will be maintained in DB under the tabl #### **(Applicable if you have deployed Mangle on a Docker Host/ OVA vm)** * You can make use of the upgrade script for upgrading the MangleWEB container running. -* The upgrade script is available on the public Mangle Git hub repository at location: [mangle/mangle-support/](https://github.com/vmware/mangle/tree/master/mangle-support)`sh UpgradeMangle.sh --MANGLE_ADMIN_USERNAME= --MANGLE_ADMINPASSWORD= --MANGLE_BUILD_NUMBER= --MANGLE_CONTAINER_NAME= --MANGLE_APP_PORT=443 --MANGLE_DOCKER_ARTIFACTORY= ` +* The upgrade script is available on the public Mangle Git hub repository at location: [mangle/mangle-support/](https://github.com/vmware/mangle/tree/master/mangle-support)`sh UpgradeMangle.sh --LOG_MAX_SIZE= --LOG_MAX_FILE= --MANGLE_ADMIN_USERNAME= --MANGLE_ADMINPASSWORD= --MANGLE_BUILD_NUMBER= --MANGLE_CONTAINER_NAME= --MANGLE_APP_PORT=443 --MANGLE_DOCKER_ARTIFACTORY= --NIC_NAME=` * The script will prompt you to check if you have taken the DB snapshot using the link below: For reference to take DB snapshot: [https://docs.datastax.com/en/cassandra/3.0/cassandra/operations/opsBackupTakesSnapshot.html](https://docs.datastax.com/en/cassandra/3.0/cassandra/operations/opsBackupTakesSnapshot.html) * The upgrade script is tested out for Single Node upgrade. * The existing data in Cassandra will be intact while upgrading from Mangle version 2.0 to 3.0. There will be no changes to the existing DB tables. The db migration scripts takes care of adding new tables to the existing schema. diff --git a/docs/mangle-administration/supported-deployment-models/advanced-cassandra-configuration.md b/docs/mangle-administration/supported-deployment-models/advanced-cassandra-configuration.md index 46fd1bf1..607e984b 100644 --- a/docs/mangle-administration/supported-deployment-models/advanced-cassandra-configuration.md +++ b/docs/mangle-administration/supported-deployment-models/advanced-cassandra-configuration.md @@ -8,13 +8,13 @@ Open **/etc/cassandra/cassandra.yaml** and modify **authenticator**: from **Allo To execute the init-query.cql file on db startup, need to modify the **docker-entrypoint.sh** file, add the below content right before **exec "$@"** -`for f in docker-entrypoint-initdb.d/*; do `\ -`case "$f" in `\ -`*.sh) echo "$0: running $f"; . "$f" ;; `\ -`*.cql) echo "$0: running $f" && until cqlsh --ssl -u cassandra -p cassandra -f "$f"; do >&2 echo "Cassandra is unavailable - sleeping"; sleep 2; done & ;; `\ -`*) echo "$0: ignoring $f" ;; `\ -`esac `\ -`echo `\ +`for f in docker-entrypoint-initdb.d/*; do` \ +`case "$f" in` \ +`*.sh) echo "$0: running $f"; . "$f" ;;` \ +`*.cql) echo "$0: running $f" && until cqlsh --ssl -u cassandra -p cassandra -f "$f"; do >&2 echo "Cassandra is unavailable - sleeping"; sleep 2; done & ;;` \ +`*) echo "$0: ignoring $f" ;;` \ +`esac` \ +`echo` \ `done` Here, **cqlsh --ssl -u cassandra -p cassandra** used to run \*.cql file (if ssl is not enabled then remove --ssl option) @@ -116,11 +116,11 @@ To download the Cassandra client as DevCenter from [DevCenter](https://academy.d Create seed Node : ``` -docker run --name mangle-cassandradb -v /cassandra/storage/:/var/lib/cassandra -p 9042:9042 -p 7000:7000 -p 7001:7001 -d -e CASSANDRA_BROADCAST_ADDRESS= -e CASSANDRA_SEEDS= -e CASSANDRA_CLUSTER_NAME="manglecassandracluster" -e CASSANDRA_DC="DC1" -e CASSANDRA_RACK="rack1" -e CASSANDRA_ENDPOINT_SNITCH="GossipingPropertyFileSnitch" mangleuser/mangle_cassandradb:1.0 +docker run --name mangle-cassandradb -v /cassandra/storage/:/var/lib/cassandra -p :9042:9042 -p :7000:7000 -p :7001:7001 -d -e CASSANDRA_BROADCAST_ADDRESS= -e CASSANDRA_SEEDS= -e CASSANDRA_CLUSTER_NAME="manglecassandracluster" -e CASSANDRA_DC="DC1" -e CASSANDRA_RACK="rack1" -e CASSANDRA_ENDPOINT_SNITCH="GossipingPropertyFileSnitch" mangleuser/mangle_cassandradb:1.0 ``` Join the Other Node to Seed Node : ``` -docker run --name mangle-cassandradb -v /cassandra/storage/:/var/lib/cassandra -p 9042:9042 -p 7000:7000 -p 7001:7001 -d -e CASSANDRA_BROADCAST_ADDRESS= -e CASSANDRA_SEEDS= -e CASSANDRA_CLUSTER_NAME="manglecassandracluster" -e CASSANDRA_DC="DC1" -e CASSANDRA_RACK="rack1" -e CASSANDRA_ENDPOINT_SNITCH="GossipingPropertyFileSnitch" mangleuser/mangle_cassandradb:1.0 +docker run --name mangle-cassandradb -v /cassandra/storage/:/var/lib/cassandra -p :9042:9042 -p :7000:7000 -p :7001:7001 -d -e CASSANDRA_BROADCAST_ADDRESS= -e CASSANDRA_SEEDS= -e CASSANDRA_CLUSTER_NAME="manglecassandracluster" -e CASSANDRA_DC="DC1" -e CASSANDRA_RACK="rack1" -e CASSANDRA_ENDPOINT_SNITCH="GossipingPropertyFileSnitch" mangleuser/mangle_cassandradb:1.0 ``` diff --git a/docs/sre-developers-and-users/README.md b/docs/sre-developers-and-users/README.md index f0876604..aa8ffa43 100644 --- a/docs/sre-developers-and-users/README.md +++ b/docs/sre-developers-and-users/README.md @@ -2,24 +2,23 @@ _Mangle Users Guide_ provides information about how to add endpoints, run faults, generate resiliency score and view reports. -**Product version: 3.0.0** +**Product version: 3.5.0** #### Intended Audience This information is intended for SRE, Developers and Chaos engineers who would like to run chaos experiments against infrastructure or applications to assess the resilience of their applications when subjected to unexpected failures. -| Sub Content | Description | -| :--- | :--- | -| [Adding Endpoints](adding-endpoints.md) | Provides information about adding the targets for fault injection | -| [Injecting Faults](injecting-faults/) | Provides information about the types of faults that can be injected to a specific endpoint | -| [Resiliency Score](resiliency-score.md) | Provides information about how to generate resiliency score metrics and send it to a monitoring system automatically using Mangle | -| [Requests and Reports](requests-and-reports.md) | Provides information about the progress and status of the injections | +| Sub Content | Description | +| ----------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | +| [Adding Endpoints](adding-endpoints.md) | Provides information about adding the targets for fault injection | +| [Injecting Faults](injecting-faults/) | Provides information about the types of faults that can be injected to a specific endpoint | +| [Resiliency Score](resiliency-score.md) | Provides information about how to generate resiliency score metrics and send it to a monitoring system automatically using Mangle | +| [Requests and Reports](requests-and-reports.md) | Provides information about the progress and status of the injections | -Copyright \(c\) 2019 VMware, Inc. All rights reserved. [Copyright and trademark information](http://pubs.vmware.com/copyright-trademark.html). Any feedback you provide to VMware is subject to the terms at [www.vmware.com/community\_terms.html](http://www.vmware.com/community_terms.html). +Copyright (c) 2019 VMware, Inc. All rights reserved. [Copyright and trademark information](http://pubs.vmware.com/copyright-trademark.html). Any feedback you provide to VMware is subject to the terms at [www.vmware.com/community\_terms.html](http://www.vmware.com/community\_terms.html). -**VMware, Inc.** -3401 Hillview Ave. +**VMware, Inc.**\ +3401 Hillview Ave.\ Palo Alto, CA 94304 -[www.vmware.com](http://www.vmware.com/) - +[www.vmware.com](http://www.vmware.com) diff --git a/docs/sre-developers-and-users/adding-endpoints.md b/docs/sre-developers-and-users/adding-endpoints.md index 05e892aa..a70cc09a 100644 --- a/docs/sre-developers-and-users/adding-endpoints.md +++ b/docs/sre-developers-and-users/adding-endpoints.md @@ -95,7 +95,7 @@ Mangle supports any remote machine with ssh enabled as endpoints or targets for | ----------------------------------------------- | ---------------- | | CentOS | 7, 7.7, 7.8, 8.2 | | Debian | 7.8, 8, 9 | -| Photon OS | 1, 2, 3 | +| Photon OS | 2, 3 | | RHEL | 7.5, 8.2, 8.3 | | Suse | 12, 15 | | Ubuntu | 14, 16, 18 | @@ -124,7 +124,7 @@ Mangle supports AWS as endpoint or target for injection. It needs the Region, cr 6. A success message is displayed and the table for Endpoints will be updated with the new entry. 7. Edit, Delete, Enable and Disable actions are available for all added Endpoints. -### ![](https://firebasestorage.googleapis.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LcVKiIEQZ\_SDz8uqA0g%2F-MQqcKvmHtHATdUwd-sp%2F-MQr2ZghrRK5S4-Fm9\_T%2FNew\_Logo.png?alt=media\&token=afa1ae80-f950-4996-8f2c-7d87f3d520d3) Azure +### ![](https://firebasestorage.googleapis.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LcVKiIEQZ\_SDz8uqA0g%2F-MQqcKvmHtHATdUwd-sp%2F-MQr2ZghrRK5S4-Fm9\_T%2FNew\_Logo.png?alt=media\&token=afa1ae80-f950-4996-8f2c-7d87f3d520d3) Azure ‌Mangle supports Azure as endpoint or target for injection. It needs the Subscription ID, Tenant ID, credentials (Client application ID and Client application secret key) and tags to connect to Azure and run the supported faults. ‌ @@ -138,7 +138,7 @@ Mangle supports AWS as endpoint or target for injection. It needs the Region, cr 6. A success message is displayed and the table for Endpoints will be updated with the new entry. 7. Edit, Delete, Enable and Disable actions are available for all added Endpoints. -### ![](https://firebasestorage.googleapis.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LcVKiIEQZ\_SDz8uqA0g%2F-MQqcKvmHtHATdUwd-sp%2F-MQr2ZghrRK5S4-Fm9\_T%2FNew\_Logo.png?alt=media\&token=afa1ae80-f950-4996-8f2c-7d87f3d520d3) Redis Proxy +### ![](https://firebasestorage.googleapis.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LcVKiIEQZ\_SDz8uqA0g%2F-MQqcKvmHtHATdUwd-sp%2F-MQr2ZghrRK5S4-Fm9\_T%2FNew\_Logo.png?alt=media\&token=afa1ae80-f950-4996-8f2c-7d87f3d520d3) Redis Proxy ‌With version 3.0, Mangle provides the ability to run faults against Redis by integrating with [RedFI (Redis Fault Injection Proxy)](https://openfip.github.io/redfi/) which is a separate open source project. To try out the Redis faults, it is mandatory that you have a Redis proxy up and running in your environment. To deploy the RedisFI proxy please refer to the instructions specified [here](https://github.com/openfip/redfi#usage). After the proxy is deployed and running, proceed to the steps below to add it as an endpoint in Mangle. @@ -152,7 +152,7 @@ Mangle supports AWS as endpoint or target for injection. It needs the Region, cr 6. A success message is displayed and the table for Endpoints will be updated with the new entry. 7. Edit, Delete, Enable and Disable actions are available for all added Endpoints. -### ![](https://firebasestorage.googleapis.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LcVKiIEQZ\_SDz8uqA0g%2F-MQqcKvmHtHATdUwd-sp%2F-MQr2ZghrRK5S4-Fm9\_T%2FNew\_Logo.png?alt=media\&token=afa1ae80-f950-4996-8f2c-7d87f3d520d3) Databases +### ![](https://firebasestorage.googleapis.com/v0/b/gitbook-28427.appspot.com/o/assets%2F-LcVKiIEQZ\_SDz8uqA0g%2F-MQqcKvmHtHATdUwd-sp%2F-MQr2ZghrRK5S4-Fm9\_T%2FNew\_Logo.png?alt=media\&token=afa1ae80-f950-4996-8f2c-7d87f3d520d3) Databases ‌With version 3.0, Mangle provides the ability to run faults against databases. The databases supported are Cassandra, Mongo and Postgres. The database endpoint has one key difference since they can reside on a virtual machine/instance as a service, on Docker as containers or on K8s as pods. Hence, when defining database endpoints in Mangle, you also need to specify the parent endpoint which could be a remote machine, Docker or a K8s cluster. @@ -171,7 +171,7 @@ Mangle supports AWS as endpoint or target for injection. It needs the Region, cr {% hint style="info" %} **For access to Swagger documentation:** -Please traverse to link _\*\*_![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access [https://\/mangle-services/swagger-ui.html#_/_endpoint-controller_ +Please traverse to link _\*\*_![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access [https://\/mangle-services/swagger-ui.html#_/_endpoint-controller_ ![](../.gitbook/assets/endpointcontroller.png) {% endhint %} diff --git a/docs/sre-developers-and-users/injecting-faults/README.md b/docs/sre-developers-and-users/injecting-faults/README.md index 038d7bbe..0944652e 100644 --- a/docs/sre-developers-and-users/injecting-faults/README.md +++ b/docs/sre-developers-and-users/injecting-faults/README.md @@ -7,6 +7,6 @@ Mangle supports two broad category of faults: 1. Infrastructure Faults 2. Application Faults -**Infrastructure Faults** are a set of faults that target IAAS components where developers host and run their applications. For eg: this might be a virtual machine or an AWS EC2 instance where the application runs as a service or a Docker host where the application containers are hosted or a K8s cluster where the pods host the application. These components are usually shared with multiple applications running on the same infrastructure and are referred to as **endpoints **in Mangle. So faults against these components will impact multiple applications unless they have different levels of fault tolerance. +**Infrastructure Faults** are a set of faults that target IAAS components where developers host and run their applications. For eg: this might be a virtual machine or an AWS EC2 instance where the application runs as a service or a Docker host where the application containers are hosted or a K8s cluster where the pods host the application. These components are usually shared with multiple applications running on the same infrastructure and are referred to as **endpoints** in Mangle. So faults against these components will impact multiple applications unless they have different levels of fault tolerance. **Application Faults** are a set of faults that target specific applications running within a given infrastructure component or endpoint. For eg: this could be a specific tomcat application running within a virtual machine or an AWS EC2 instance or JAVA applications running within containers on a Docker host or K8s pods. Faults against applications typically will impact just that application and ideally should not bring down any other applications running on the same infrastructure or is dependent on the affected service. If it does, your system is prone to cascading failures and should be examined in great detail to improve fault tolerance levels. diff --git a/docs/sre-developers-and-users/injecting-faults/application-faults.md b/docs/sre-developers-and-users/injecting-faults/application-faults.md index 02bfa065..6a276452 100644 --- a/docs/sre-developers-and-users/injecting-faults/application-faults.md +++ b/docs/sre-developers-and-users/injecting-faults/application-faults.md @@ -174,17 +174,17 @@ Java Method Latency Fault helps you simulate a condition where calls to a specif 6. Provide "Class Name" as PluginController if the class of interest is defined as `public class PluginController {...}`. 7. Provide "Method Name" as getPlugins if the method to be tested is defined as follows: - `public ResponseEntity> getPlugins( ` + `public ResponseEntity> getPlugins(` - `@RequestParam(value = "pluginId", required = false) String pluginId, @RequestParam(value = "extensionType", required = false) ExtensionType extensionType) { ` + `@RequestParam(value = "pluginId", required = false) String pluginId, @RequestParam(value = "extensionType", required = false) ExtensionType extensionType) {` - `log.info("PluginController getPlugins() Start............."); ` + `log.info("PluginController getPlugins() Start.............");` - `if (StringUtils.hasLength(pluginId)) { ` + `if (StringUtils.hasLength(pluginId)) {` - `return new ResponseEntity<>(pluginService.getExtensions(pluginId, extensionType), HttpStatus.OK); ` + `return new ResponseEntity<>(pluginService.getExtensions(pluginId, extensionType), HttpStatus.OK);` - `} ` + `}` `return new ResponseEntity<>(pluginService.getExtensions(), HttpStatus.OK);` @@ -299,17 +299,17 @@ Java Method Exception Fault helps you simulate a condition where calls to a spec 6. Provide "Class Name" as PluginController if the class of interest is defined as `public class PluginController {...}`. 7. Provide "Method Name" as getPlugins if the method to be tested is defined as follows: - `public ResponseEntity> getPlugins( ` + `public ResponseEntity> getPlugins(` - `@RequestParam(value = "pluginId", required = false) String pluginId, @RequestParam(value = "extensionType", required = false) ExtensionType extensionType) { ` + `@RequestParam(value = "pluginId", required = false) String pluginId, @RequestParam(value = "extensionType", required = false) ExtensionType extensionType) {` - `log.info("PluginController getPlugins() Start............."); ` + `log.info("PluginController getPlugins() Start.............");` - `if (StringUtils.hasLength(pluginId)) { ` + `if (StringUtils.hasLength(pluginId)) {` - `return new ResponseEntity<>(pluginService.getExtensions(pluginId, extensionType), HttpStatus.OK); ` + `return new ResponseEntity<>(pluginService.getExtensions(pluginId, extensionType), HttpStatus.OK);` - `} ` + `}` `return new ResponseEntity<>(pluginService.getExtensions(), HttpStatus.OK);` @@ -353,17 +353,17 @@ Kill JVM Fault helps you simulate a condition where JVM crashes with specific ex 6. Provide "Class Name" as PluginController if the class of interest is defined as `public class PluginController {...}`. 7. Provide "Method Name" as getPlugins if the method to be tested is defined as follows: - `public ResponseEntity> getPlugins( ` + `public ResponseEntity> getPlugins(` - `@RequestParam(value = "pluginId", required = false) String pluginId, @RequestParam(value = "extensionType", required = false) ExtensionType extensionType) { ` + `@RequestParam(value = "pluginId", required = false) String pluginId, @RequestParam(value = "extensionType", required = false) ExtensionType extensionType) {` - `log.info("PluginController getPlugins() Start............."); ` + `log.info("PluginController getPlugins() Start.............");` - `if (StringUtils.hasLength(pluginId)) { ` + `if (StringUtils.hasLength(pluginId)) {` - `return new ResponseEntity<>(pluginService.getExtensions(pluginId, extensionType), HttpStatus.OK); ` + `return new ResponseEntity<>(pluginService.getExtensions(pluginId, extensionType), HttpStatus.OK);` - `} ` + `}` `return new ResponseEntity<>(pluginService.getExtensions(), HttpStatus.OK);` @@ -389,7 +389,7 @@ Kill JVM Fault helps you simulate a condition where JVM crashes with specific ex {% hint style="info" %} **For access to relevant API Swagger documentation:** -Please traverse to link** **![](../../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#_/_fault-injection-controller_ +Please traverse to link **** ![](../../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#_/_fault-injection-controller_ ![](broken-reference) ![](../../.gitbook/assets/faultinjectioncontroller.png) {% endhint %} diff --git a/docs/sre-developers-and-users/injecting-faults/custom-faults.md b/docs/sre-developers-and-users/injecting-faults/custom-faults.md index 163e0cf5..67852bfc 100644 --- a/docs/sre-developers-and-users/injecting-faults/custom-faults.md +++ b/docs/sre-developers-and-users/injecting-faults/custom-faults.md @@ -13,13 +13,13 @@ 4. Update fields present in _**plugin.properties**_ file available at location src/main/resources - `plugin.id=mangle-plugin-skeleton ` + `plugin.id=mangle-plugin-skeleton` - `plugin.class=com.vmware.mangle.plugin.ManglePlugin ` + `plugin.class=com.vmware.mangle.plugin.ManglePlugin` - `plugin.version=2.0.0 ` + `plugin.version=2.0.0` - `plugin.provider=VMware Inc. ` + `plugin.provider=VMware Inc.` `plugin.dependencies=,` @@ -36,8 +36,8 @@ 8. The user should develop three types of classes as pf4j extensions for implementing the custom fault. 1. Model-Extension: Model extension is the data object for the task corresponding to Custom Fault. It should also extend the `PluginFaultSpec`, the base class for all the mangle fault inputs from user. - 2. Task-Extension: Task extension is the logical implementation of the Fault. It must implement the `AbstractTaskHelper `interface defined by mangle-task -framework. ‘mangle-task-framework' also provide `AbstractRemoteCommandExecutionTaskHelper `extensive implemented version of `AbstractTaskHelper`. By using the `AbstractRemoteCommandExecutionTaskHelper`, the developer of plugin is required to only provide the Injection and Remediation Commands and should not be concerned with rest of the task management. - 3. Fault-Extension: Fault extension hold the transformation logic to convert the User inputs of the Fault to the Model-Extension corresponding to its Task-Extension. This help user of custom fault to provide a very simple input and the task to have elaborated data class supporting wider management options. The Fault-Extension should extend `AbstractCustomFault `of mangle. + 2. Task-Extension: Task extension is the logical implementation of the Fault. It must implement the `AbstractTaskHelper` interface defined by mangle-task -framework. ‘mangle-task-framework' also provide `AbstractRemoteCommandExecutionTaskHelper` extensive implemented version of `AbstractTaskHelper`. By using the `AbstractRemoteCommandExecutionTaskHelper`, the developer of plugin is required to only provide the Injection and Remediation Commands and should not be concerned with rest of the task management. + 3. Fault-Extension: Fault extension hold the transformation logic to convert the User inputs of the Fault to the Model-Extension corresponding to its Task-Extension. This help user of custom fault to provide a very simple input and the task to have elaborated data class supporting wider management options. The Fault-Extension should extend `AbstractCustomFault` of mangle. More details provided for each of the above extensions in their own sections. @@ -50,43 +50,43 @@ \ `{` - ` "pluginId": "mangle-plugin-skeleton",` + `"pluginId": "mangle-plugin-skeleton",` - ` "faults": [` + `"faults": [` - ` {` + `{` - ` "faultParameters": {` + `"faultParameters": {` - ` "field1": "field1",` + `"field1": "field1",` - ` "field2": "field2"` + `"field2": "field2"` - ` },` + `},` - ` "extensionDetails": {` + `"extensionDetails": {` - ` "modelExtensionName": "com.vmware.mangle.plugin.model.faults.specs.HelloMangleFaultSpec",` + `"modelExtensionName": "com.vmware.mangle.plugin.model.faults.specs.HelloMangleFaultSpec",` - ` "taskExtensionName": "com.vmware.mangle.plugin.tasks.impl.HelloManglePluginTaskHelper",` + `"taskExtensionName": "com.vmware.mangle.plugin.tasks.impl.HelloManglePluginTaskHelper",` - ` "faultExtensionName": "com.vmware.mangle.plugin.helpers.faults.HelloMangleFault"` + `"faultExtensionName": "com.vmware.mangle.plugin.helpers.faults.HelloMangleFault"` - ` },` + `},` - ` "faultName": "mangle-plugin-skeleton-HelloMangleFault",` + `"faultName": "mangle-plugin-skeleton-HelloMangleFault",` - ` "supportedEndpoints": [` + `"supportedEndpoints": [` - ` "MACHINE"` + `"MACHINE"` - ` ],` + `],` - ` "pluginId": "mangle-plugin-skeleton"` + `"pluginId": "mangle-plugin-skeleton"` - ` }` + `}` - ` ]` + `]` `}` @@ -101,40 +101,40 @@ 1. Find all the registered Custom faults at - `GET `[`https://localhost:8443/mangle-services/rest/api/v1/plugins/plugin-details?pluginId=mangle-plugin-skeleton`](https://localhost:8443/mangle-services/rest/api/v1/plugins/plugin-details?pluginId=mangle-plugin-skeleton) + `GET` [`https://localhost:8443/mangle-services/rest/api/v1/plugins/plugin-details?pluginId=mangle-plugin-skeleton`](https://localhost:8443/mangle-services/rest/api/v1/plugins/plugin-details?pluginId=mangle-plugin-skeleton) 2. Find the sample request data for any registered custom Fault at - `GET `[`https://localhost:8443/mangle-services/rest/api/v1/plugins/request-json?faultName=`](https://localhost:8443/mangle-services/rest/api/v1/plugins/request-json?faultName=)` mangle-plugin-skeleton-HelloMangleFault&pluginId=mangle-plugin-skeleton ` + `GET` [`https://localhost:8443/mangle-services/rest/api/v1/plugins/request-json?faultName=`](https://localhost:8443/mangle-services/rest/api/v1/plugins/request-json?faultName=) `mangle-plugin-skeleton-HelloMangleFault&pluginId=mangle-plugin-skeleton` 3. Invoke Custom fault by providing the request as per the sample received in last step at - `POST `[`https://localhost:8443/mangle-services/rest/api/v1/plugins/custom-fault`](https://localhost:8443/mangle-services/rest/api/v1/plugins/custom-fault)` ` + `POST` [`https://localhost:8443/mangle-services/rest/api/v1/plugins/custom-fault`](https://localhost:8443/mangle-services/rest/api/v1/plugins/custom-fault) `` Sample Request: \ `{` - ` "faultName": "mangle-plugin-skeleton-HelloMangleFault",` + `"faultName": "mangle-plugin-skeleton-HelloMangleFault",` - ` "endpointName": "testEndpoint",` + `"endpointName": "testEndpoint",` - ` "faultParameters": {` + `"faultParameters": {` - ` "field1": "Hi",` + `"field1": "Hi",` - ` "field2": "Mangle"` + `"field2": "Mangle"` - ` },` + `},` - ` "pluginId": "mangle-plugin-skeleton"` + `"pluginId": "mangle-plugin-skeleton"` `}` -13. Model-Extension: An example is available as `HelloMangleFaultSpec `at package com.vmware.mangle.plugin.model.faults.specs of mangle-plugin-skeleton. Plugin developer is expected to provide only the parameters he is expecting from the user of his fault while executing in his environment. The plugin developer can conveniently Ignore the fields that are inherited from the base class `CommandExecutionFaultSpec` which are designed for the Management of Faults as Asynchronous tasks in Mangle. +13. Model-Extension: An example is available as `HelloMangleFaultSpec` at package com.vmware.mangle.plugin.model.faults.specs of mangle-plugin-skeleton. Plugin developer is expected to provide only the parameters he is expecting from the user of his fault while executing in his environment. The plugin developer can conveniently Ignore the fields that are inherited from the base class `CommandExecutionFaultSpec` which are designed for the Management of Faults as Asynchronous tasks in Mangle. -14. Task-Extension: An example is available as `HelloManglePluginTaskHelper` at package com.vmware.mangle.test.plugin.helpers of mangle-plugin-skeleton. This task Helper is an implementation of `AbstractRemoteCommandExecutionTaskHelper`. The implementation of `AbstractRemoteCommandExecutionTaskHelper `is only expected to provide the implementation for below methods: +14. Task-Extension: An example is available as `HelloManglePluginTaskHelper` at package com.vmware.mangle.test.plugin.helpers of mangle-plugin-skeleton. This task Helper is an implementation of `AbstractRemoteCommandExecutionTaskHelper`. The implementation of `AbstractRemoteCommandExecutionTaskHelper` is only expected to provide the implementation for below methods: @@ -144,35 +144,35 @@ - **`public Task init(T taskData, String injectedTaskId) throws MangleException; `** + **`public Task init(T taskData, String injectedTaskId) throws MangleException;`** Should provide the Implementation to initialize the Task Helper for executing the Fault, if the existing Task id also provided. This method will be used for executing the Remediation on a Task if the Remediation is available. This initialization is not used for task rerun or the Re-trigger. - **`public void executeTask(Task task) throws MangleException; `** + **`public void executeTask(Task task) throws MangleException;`** Provide the Implementation for execution steps required in addition to Implementation available in `AbstractRemoteCommandExecutionTaskHelper`. Plugin developer can use this interface to invoke his own implementation of Helpers for supporting his Fault across multiple endpoints supported in mangle. - **`protected ICommandExecutor getExecutor(Task task) throws MangleException; `** + **`protected ICommandExecutor getExecutor(Task task) throws MangleException;`** - Provide the Implementation for defining the Executor required for the Fault Execution. Mangle provide a default implementation of a executor for each Supported Endpoint. The Plugin user is free to use his own executor as long as he is implementing the resource as per the interface `ICommandExecutor `available at package com.vmware.mangle.utils; + Provide the Implementation for defining the Executor required for the Fault Execution. Mangle provide a default implementation of a executor for each Supported Endpoint. The Plugin user is free to use his own executor as long as he is implementing the resource as per the interface `ICommandExecutor` available at package com.vmware.mangle.utils; - **`protected void checkTaskSpecificPrerequisites(Task task) throws MangleException; `** + **`protected void checkTaskSpecificPrerequisites(Task task) throws MangleException;`** Provide the Implementation if the Fault being developed expect the test machine to be satisfying a condition for the execution. This step is separated from the Fault execution as Mangle wants to make sure the Fault execution or Remediation will not leave the user environment in a irrecoverable state due to execution of them in a non-perquisite satisfying machine. - **`protected void prepareEndpoint(Task task, List listOfFaultInjectionScripts) throws MangleException; `**Provide the Implementation if the Fault execution needs certain changes to the Test Machine before execution. Examples are Copying a binary file required to execute a fault. This step is optional for user as the predefined implementation already copies the files returned by `listFaultInjectionScripts() `to the remote machine. + **`protected void prepareEndpoint(Task task, List listOfFaultInjectionScripts) throws MangleException;`** Provide the Implementation if the Fault execution needs certain changes to the Test Machine before execution. Examples are Copying a binary file required to execute a fault. This step is optional for user as the predefined implementation already copies the files returned by `listFaultInjectionScripts()` to the remote machine. - **`public String getDescription(Task task); `** + **`public String getDescription(Task task);`** Provide Implementation to generate description for Fault based on user inputs to help him to identify the task in future through the description. A generic implementation is already available at TaskDescriptionUtils.getDescription(task). @@ -189,7 +189,7 @@ 16. Mangle does not support the inclusion of Custom Endpoints through Plugin. The requirement of addition of endpoint can be gone through the Mange contributions flow as defined in Mangle repository. -17. Task-Extension Deep Dive: An example is available as `HelloManglePluginTaskHelper `at package com.vmware.mangle.plugin.tasks.impl of mangle-plugin-skeleton. This task Helper is an implementation of `AbstractRemoteCommandExecutionTaskHelper`. The implementation of `AbstractRemoteCommandExecutionTaskHelper `is only expected to provide the implementation for below methods: +17. Task-Extension Deep Dive: An example is available as `HelloManglePluginTaskHelper` at package com.vmware.mangle.plugin.tasks.impl of mangle-plugin-skeleton. This task Helper is an implementation of `AbstractRemoteCommandExecutionTaskHelper`. The implementation of `AbstractRemoteCommandExecutionTaskHelper` is only expected to provide the implementation for below methods: @@ -205,13 +205,13 @@ - **`public void executeTask(Task task) throws MangleException; `** + **`public void executeTask(Task task) throws MangleException;`** Provide the Implementation for execution steps required in addition to Implementation available in `AbstractRemoteCommandExecutionTaskHelper`. Plugin developer can use this interface to invoke his own implementation of Helpers for supporting his Fault across multiple endpoints supported in mangle. - **`protected ICommandExecutor getExecutor(Task task) throws MangleException; `** + **`protected ICommandExecutor getExecutor(Task task) throws MangleException;`** Provide the Implementation for defining the Executor required for the Fault Execution. Mangle provide a default implementation of a executor for each Supported Endpoint. The Plugin user should use appropriate executor as per the endpoint provided as the target. Below is the Mapping of Executors to their Endpoint Types. @@ -227,29 +227,29 @@ - **`protected void checkTaskSpecificPrerequisites(Task task) throws MangleException; `** + **`protected void checkTaskSpecificPrerequisites(Task task) throws MangleException;`** Provide the Implementation if the Fault being developed expect the test machine to be satisfying a condition for the execution. This step is separated from the Fault execution as Mangle wants to make sure the Fault execution or Remediation will not leave the user environment in a irrecoverable state due to execution of them in a non-perquisite satisfying machine. - **`protected void prepareEndpoint(Task task, List listOfFaultInjectionScripts) throws MangleException; `**Provide the Implementation if the Fault execution needs certain changes to the Test Machine before execution. Examples are Copying a binary file required to execute a fault. This step is optional for user as the predefined implementation already copies the files returned by `listFaultInjectionScripts()` to the remote machine. + **`protected void prepareEndpoint(Task task, List listOfFaultInjectionScripts) throws MangleException;`** Provide the Implementation if the Fault execution needs certain changes to the Test Machine before execution. Examples are Copying a binary file required to execute a fault. This step is optional for user as the predefined implementation already copies the files returned by `listFaultInjectionScripts()` to the remote machine. - **`public String getDescription(Task task); `** + **`public String getDescription(Task task);`** Provide Implementation to generate description for Fault based on user inputs to help him to identify the task in future through the description. A generic implementation is already available at `TaskDescriptionUtils.getDescription(task)`. - **`public List listFaultInjectionScripts(Task task); `** + **`public List listFaultInjectionScripts(Task task);`** Provide an implementation that return details of the support scrips to be copied to test machine required for executing the fault getting implemented. The support files can be any file required to be placed in the target in order to execute the developed fault. All the out of the box executors is capable of copying files to the corresponding targeted endpoint and the process completes automatically by default implementation of the `AbstractRemoteCommandExecutionTaskHelper`, provide that the names of the files are returned through `listFaultInjectionScripts()` implementation. - **`private List getInjectionCommandInfoList(T faultSpec) {} `** + **`private List getInjectionCommandInfoList(T faultSpec) {}`** Provide the commands to be executed for the Fault to be Injected. The commands should be provided as List. The fields and descriptions for the CommandInfo Fields. @@ -264,30 +264,30 @@ - `public class CommandOutputProcessingInfo ` + `public class CommandOutputProcessingInfo` Fields are 1. `private String regExpression;` Regular Expression Pattern to be used to collect an crucial information from current command’s execution to make it available throughout the Fault execution. - 2. `private String extractedPropertyName; ` + 2. `private String extractedPropertyName;` Name should be given to the collected information using the pattern given as regExpression - **Types of Variables and Their Usage: ** + **Types of Variables and Their Usage:** The information provided by the user or collected during the runtime of Fault are made available to command executor as below types of Variables. - 1. `TaskTroubleShootingInfo `of the Task holds the extracted information from the command execution Output. - 2. args field of `CommandExecutionFaultSpec `available as `taskData `in Task holds the data received from the user as args. - 3. `$FI_ADD_INFO_FieldName` can be used to refer to variables from `TaskTroubleShootingInfo ` + 1. `TaskTroubleShootingInfo` of the Task holds the extracted information from the command execution Output. + 2. args field of `CommandExecutionFaultSpec` available as `taskData` in Task holds the data received from the user as args. + 3. `$FI_ADD_INFO_FieldName` can be used to refer to variables from `TaskTroubleShootingInfo` 4. `$FI_ARG_Fieldname` can be used to refer to variables from args. 5. `$FI_STACK` can be used to refer to the output of the previous command. - 9. `private List getRemediationCommandInfoList(T faultSpec) {} ` + 9. `private List getRemediationCommandInfoList(T faultSpec) {}` - Provide the commands to for remediating the fault already Injected. The semantics of `CommandInfo `is same as it described in the previous section. The args and `TaskTroubleShootingInfo `collected during the injection will be available during the execution of remediation as well. Hence the dependency data from injection task can be passed to remediation by using the References in the commands. + Provide the commands to for remediating the fault already Injected. The semantics of `CommandInfo` is same as it described in the previous section. The args and `TaskTroubleShootingInfo` collected during the injection will be available during the execution of remediation as well. Hence the dependency data from injection task can be passed to remediation by using the References in the commands. diff --git a/docs/sre-developers-and-users/injecting-faults/fault-events-in-dynatrace.md b/docs/sre-developers-and-users/injecting-faults/fault-events-in-dynatrace.md new file mode 100644 index 00000000..f9823809 --- /dev/null +++ b/docs/sre-developers-and-users/injecting-faults/fault-events-in-dynatrace.md @@ -0,0 +1,17 @@ +# Fault Events in Dynatrace + +If Dynatrace is your preferred metric provider and you are interested in publishing the fault events from Mangle to Dyntrace then while setting tags during fault injection, provide the entity ID of the endpoint / service being impacted by the fault as the tag value. Please refer to the screenshot below for an example of how to add these tags. + +![Adding entity ids as Tags for Dynatrace integration](../../.gitbook/assets/Adding\_EntityId\_as\_tag.png) + +Sending of fault injection event to Dynatrace will fail if entity ID specified in the tag is invalid. Fault injection events will appear in Dynatrace UI under the specified entity (endpoint /service being impacted) on providing the valid entity ID as value in the Tags section. Please refer the screenshot for the fault injection events. + +![Fault Injection E](../../.gitbook/assets/FaultInjection\_Dynatrace\_Events.png) + +{% hint style="info" %} +Entity ID of a service / entity can be retrieved from Dynatrace UI using the URL. Please navigate to entity page in Dynatrace and you will be able to find the entity ID in the URL. + + +{% endhint %} + +![Entity ID in Dynatrace entity page URL](../../.gitbook/assets/Url\_Entity\_Page.png) diff --git a/docs/sre-developers-and-users/injecting-faults/infrastructure-faults.md b/docs/sre-developers-and-users/injecting-faults/infrastructure-faults.md index 4b9a634b..e6a38e21 100644 --- a/docs/sre-developers-and-users/injecting-faults/infrastructure-faults.md +++ b/docs/sre-developers-and-users/injecting-faults/infrastructure-faults.md @@ -50,7 +50,7 @@ CPU fault enables spiking cpu usage values for a selected endpoint by a percenta 5. Provide "Injection Home Dir" only if you would like Mangle to push the script files needed to simulate the fault to a specific location on the endpoint. Else the default temp location will be used. 6. Provide a "Timeout" value in milliseconds. For eg: if you need the CPU load of 80% to be sustained for a duration of 1 hour then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. 7. Schedule options are required only if the fault needs to be re-executed at regular intervals against an endpoint. -8. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. +8. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. If you are using Dynatrace as your preferred metric provider, please refer to the additional instructions provided [here](fault-events-in-dynatrace.md) on setting entity IDs and tags for the integration to work as expected. 9. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. 10. Click on Run Fault. 11. The user will be re-directed to the Processed Requests section under Requests & Reports tab. @@ -76,7 +76,7 @@ Memory fault enables spiking memory usage values for a selected endpoint by a pe 5. Provide "Injection Home Dir" only if you would like Mangle to push the script files needed to simulate the fault to a specific location on the endpoint. Else the default temp location will be used. 6. Provide a "Timeout" value in milliseconds. For eg: if you need the Memory load of 80% to be sustained for a duration of 1 hour then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. 7. Schedule options are required only if the fault needs to be re-executed at regular intervals against an endpoint. -8. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. +8. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. If you are using Dynatrace as your preferred metric provider, please refer to the additional instructions provided [here](fault-events-in-dynatrace.md) on setting entity IDs and tags for the integration to work as expected. 9. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. 10. Click on Run Fault. 11. The user will be re-directed to the Processed Requests section under Requests & Reports tab. @@ -102,7 +102,7 @@ Disk IO fault enables spiking disk IO operation for a selected endpoint by an IO 5. Provide "Injection Home Dir" only if you would like Mangle to push the script files needed to simulate the fault to a specific location on the endpoint. Else the default temp location will be used. 6. Provide a "Timeout" value in milliseconds. For eg: if you need the IO load of 8192000 to be sustained for a duration of 1 hour then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. 7. Schedule options are required only if the fault needs to be re-executed at regular intervals against an endpoint. -8. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. +8. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. If you are using Dynatrace as your preferred metric provider, please refer to the additional instructions provided [here](fault-events-in-dynatrace.md) on setting entity IDs and tags for the integration to work as expected. 9. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. 10. Click on Run Fault. 11. The user will be re-directed to the Processed Requests section under Requests & Reports tab. @@ -129,7 +129,7 @@ Kill Process fault enables abrupt termination of any process that is running on 6. Provide a "Remediation Command". For eg: To start the sshd process that was killed on an Ubuntu 17 Server, specify the remediation command as _"sudo service ssh start" ._ 7. Provide "Injection Home Dir" only if you would like Mangle to push the script files needed to simulate the fault to a specific location on the endpoint. Else the default temp location will be used. 8. Schedule options are required only if the fault needs to be re-executed at regular intervals against an endpoint. -9. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. +9. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. If you are using Dynatrace as your preferred metric provider, please refer to the additional instructions provided [here](fault-events-in-dynatrace.md) on setting entity IDs and tags for the integration to work as expected. 10. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. 11. Click on Run Fault. 12. The user will be re-directed to the Processed Requests section under Requests & Reports tab. @@ -155,7 +155,7 @@ Stop service fault enables graceful shutdown of any process that is running on t 5. Provide "Injection Home Dir" only if you would like Mangle to push the script files needed to simulate the fault to a specific location on the endpoint. Else the default temp location will be used. 6. Provide a "Timeout" value in milliseconds. For eg: if you need the Service to be stopped for a duration of 1 hour, then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. 7. Schedule options are required only if the fault needs to be re-executed at regular intervals against an endpoint. -8. Tags are key value pairs that will be sent to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. +8. Tags are key value pairs that will be sent to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. If you are using Dynatrace as your preferred metric provider, please refer to the additional instructions provided [here](fault-events-in-dynatrace.md) on setting entity IDs and tags for the integration to work as expected. 9. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. 10. Click on Run Fault. 11. The user will be re-directed to the Processed Requests section under Requests & Reports tab. @@ -180,7 +180,7 @@ File Handler Leak fault enables you to simulate conditions where a program reque 4. Provide "Injection Home Dir" only if you would like Mangle to push the script files needed to simulate the fault to a specific location on the endpoint. Else the default temp location will be used. 5. Provide a "Timeout" value in milliseconds. For eg: if you need the out of file handles error to be sustained for a duration of 1 hour then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. 6. Schedule options are required only if the fault needs to be re-executed at regular intervals against an endpoint. -7. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. +7. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. If you are using Dynatrace as your preferred metric provider, please refer to the additional instructions provided [here](fault-events-in-dynatrace.md) on setting entity IDs and tags for the integration to work as expected. 8. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. 9. Click on Run Fault. 10. The user will be re-directed to the Processed Requests section under Requests & Reports tab. @@ -209,7 +209,7 @@ Disk Space Fault enables you to simulate out of disk or low disk space condition 6. Provide "Injection Home Dir" only if you would like Mangle to push the script files needed to simulate the fault to a specific location on the endpoint. Else the default temp location will be used. 7. Provide a "Timeout" value in milliseconds. For eg: if you need the low disk or out of disk condition to be sustained for a duration of 1 hour then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. 8. Schedule options are required only if the fault needs to be re-executed at regular intervals against an endpoint. -9. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. +9. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. If you are using Dynatrace as your preferred metric provider, please refer to the additional instructions provided [here](fault-events-in-dynatrace.md) on setting entity IDs and tags for the integration to work as expected. 10. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. 11. Click on Run Fault. 12. The user will be re-directed to the Processed Requests section under Requests & Reports tab. @@ -276,7 +276,7 @@ Clock Skew Fault simulates conditions where the endpoint time is distorted and d 6. Set the skew time by specifying the seconds, minutes, hours and days or a combination of these options. 7. Provide a "Timeout" value in milliseconds. For eg: if you need the clock skew condition to be sustained for a duration of 1 hour then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. 8. Schedule options are required only if the fault needs to be re-executed at regular intervals against an endpoint. -9. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. +9. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. If you are using Dynatrace as your preferred metric provider, please refer to the additional instructions provided [here](fault-events-in-dynatrace.md) on setting entity IDs and tags for the integration to work as expected. 10. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. 11. Click on Run Fault. 12. The user will be re-directed to the Processed Requests section under Requests & Reports tab. @@ -291,27 +291,29 @@ Clock Skew Fault simulates conditions where the endpoint time is distorted and d ![](../../.gitbook/assets/wavefrontevents.png) -## ![](../../.gitbook/assets/new\_logo.png) Network Partition Fault +## Network Faults -Network Partition Fault simulates conditions where endpoints lose connectivity due to a network split primarily due to failures in underlying network devices. This induces cases where clustered setups lose nodes with impact to high availability, data consistency and end up in split brain scenario in the worst cases. +Network Faults enables you to simulate unfavorable conditions such as packet delay, packet duplication, packet loss and packet corruption. With the help of a timeout field the duration for the fault run can be specified after which Mangle triggers the automatic remediation procedure. + +### Packet Delay **Steps to follow:** 1. Login as a user with read and write privileges to Mangle. -2. Navigate to Fault Execution tab ---> Infrastructure Faults ---> Network Partition. Only remote machine and remote machine clusters are supported for this fault. +2. Navigate to Fault Execution tab ---> Infrastructure Faults ---> Network ---> Packet Delay. 3. Select an Endpoint. -4. Provide a host IP or a list of host IPs to which the endpoint should lose network connectivity due to network partition. -5. If the single host IP provided is identical to the Endpoint host, it throws error at the injection of fault. Because, the Endpoint host and the host IP provided must be different.\ - But if user provides host IPs list and if a host IP is identical to the one in Endpoint host/ Endpoint group hosts, the fault injection proceeds by selecting the Endpoint -Host IP pair of the remaining list. +4. Provide a "Nic Name". For eg: For a remote machine endpoint Nic name could be eth0, eth1 etc depending on what adapter you would want to target for the fault. +5. Provide a "Latency" value in milliseconds. For eg: 1000 to simulate a packet delay of 1 second on a particular network interface of an Endpoint. 6. Provide "Injection Home Dir" only if you would like Mangle to push the script files needed to simulate the fault to a specific location on the endpoint. Else the default temp location will be used. -7. Provide a "Timeout" value in milliseconds. For eg: if you need the partitioning to be sustained for a duration of 1 hour then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. -8. Schedule options are required only if the fault needs to be re-executed at regular intervals against an endpoint. -9. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. -10. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. -11. Click on Run Fault. -12. The user will be re-directed to the Processed Requests section under Requests & Reports tab. -13. If Mangle was able to successfully trigger the fault, the status of the task will change to "INJECTED". The fault will continue to run at the endpoint until the timeout expires or a remediation request is triggered. The option to trigger a remediation request at anytime can be found on clicking the ![](../../.gitbook/assets/actions\_button.png) button against the task in the Processed Requests table. The task will be updated to "COMPLETED" once the task is auto remediated or manually remediated before the fault timeout. -14. For monitoring purposes, log into either Wavefront or Datadog once it is configured as an active Metric provider in Mangle and refer to the Events section. Events similar to the screenshots provided below will be available on the monitoring tool for tracking purposes. +7. Provide a "Jitter" value in milliseconds only if you would like Mangle to generate a variable fault that would change between two thresholds ie: Latency +/- Jitter. For eg: If you want the fault of 1 minute to vary between 30 sec and 90 sec then you provide a Latency value of 60000ms and a Jitter value of 30000ms. +8. Provide a "Timeout" value in milliseconds. For eg: if you need the packet delay to be sustained for a duration of 1 hour then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. +9. Schedule options are required only if the fault needs to be re-executed at regular intervals against an endpoint. +10. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. +11. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. +12. Click on Run Fault. +13. The user will be re-directed to the Processed Requests section under Requests & Reports tab. +14. If Mangle was able to successfully trigger the fault, the status of the task will change to "INJECTED". The fault will continue to run at the endpoint until the timeout expires or a remediation request is triggered. The option to trigger a remediation request at anytime can be found on clicking the ![](../../.gitbook/assets/actions\_button.png) button against the task in the Processed Requests table. The task will be updated to "COMPLETED" once the task is auto remediated or manually remediated before the fault timeout. +15. For monitoring purposes, log into either Wavefront or Datadog once it is configured as an active Metric provider in Mangle and refer to the Events section. Events similar to the screenshots provided below will be available on the monitoring tool for tracking purposes. @@ -319,23 +321,19 @@ Network Partition Fault simulates conditions where endpoints lose connectivity d - ![](../../.gitbook/assets/wavefrontevents.png) - -## Network Faults - -Network Faults enables you to simulate unfavorable conditions such as packet delay, packet duplication, packet loss and packet corruption. With the help of a timeout field the duration for the fault run can be specified after which Mangle triggers the automatic remediation procedure. + ![](../../.gitbook/assets/wavefrontevents.png) -### Packet Delay +### Packet Duplication **Steps to follow:** 1. Login as a user with read and write privileges to Mangle. -2. Navigate to Fault Execution tab ---> Infrastructure Faults ---> Network ---> Packet Delay. +2. Navigate to Fault Execution tab ---> Infrastructure Faults ---> Network ---> Packet Duplicate. 3. Select an Endpoint. 4. Provide a "Nic Name". For eg: For a remote machine endpoint Nic name could be eth0, eth1 etc depending on what adapter you would want to target for the fault. -5. Provide a "Latency" value in milliseconds. For eg: 1000 to simulate a packet delay of 1 second on a particular network interface of an Endpoint. +5. Provide a "Percentage" value to specify what percentage of the packets should be duplicated. For eg: 10 to simulate a packet duplication of 10 percentage on a particular network interface of an Endpoint. 6. Provide "Injection Home Dir" only if you would like Mangle to push the script files needed to simulate the fault to a specific location on the endpoint. Else the default temp location will be used. -7. Provide a "Timeout" value in milliseconds. For eg: if you need the packet delay to be sustained for a duration of 1 hour then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. +7. Provide a "Timeout" value in milliseconds. For eg: if you need the packet duplication to be sustained for a duration of 1 hour then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. 8. Schedule options are required only if the fault needs to be re-executed at regular intervals against an endpoint. 9. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. 10. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. @@ -350,19 +348,19 @@ Network Faults enables you to simulate unfavorable conditions such as packet del - ![](../../.gitbook/assets/wavefrontevents.png) + ![](../../.gitbook/assets/wavefrontevents.png) -### Packet Duplication +### Packet Loss **Steps to follow:** 1. Login as a user with read and write privileges to Mangle. -2. Navigate to Fault Execution tab ---> Infrastructure Faults ---> Network ---> Packet Duplicate. +2. Navigate to Fault Execution tab ---> Infrastructure Faults ---> Network ---> Packet Loss. 3. Select an Endpoint. 4. Provide a "Nic Name". For eg: For a remote machine endpoint Nic name could be eth0, eth1 etc depending on what adapter you would want to target for the fault. -5. Provide a "Percentage" value to specify what percentage of the packets should be duplicated. For eg: 10 to simulate a packet duplication of 10 percentage on a particular network interface of an Endpoint. +5. Provide a "Percentage" value to specify what percentage of the packets should be dropped. For eg: 10 to simulate a packet drop of 10 percentage on a particular network interface of an Endpoint. 6. Provide "Injection Home Dir" only if you would like Mangle to push the script files needed to simulate the fault to a specific location on the endpoint. Else the default temp location will be used. -7. Provide a "Timeout" value in milliseconds. For eg: if you need the packet duplication to be sustained for a duration of 1 hour then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. +7. Provide a "Timeout" value in milliseconds. For eg: if you need the packet drop to be sustained for a duration of 1 hour then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. 8. Schedule options are required only if the fault needs to be re-executed at regular intervals against an endpoint. 9. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. 10. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. @@ -379,17 +377,17 @@ Network Faults enables you to simulate unfavorable conditions such as packet del ![](../../.gitbook/assets/wavefrontevents.png) -### Packet Loss +### Packet Corruption **Steps to follow:** 1. Login as a user with read and write privileges to Mangle. -2. Navigate to Fault Execution tab ---> Infrastructure Faults ---> Network ---> Packet Loss. +2. Navigate to Fault Execution tab ---> Infrastructure Faults ---> Network ---> Packet Corruption. 3. Select an Endpoint. 4. Provide a "Nic Name". For eg: For a remote machine endpoint Nic name could be eth0, eth1 etc depending on what adapter you would want to target for the fault. -5. Provide a "Percentage" value to specify what percentage of the packets should be dropped. For eg: 10 to simulate a packet drop of 10 percentage on a particular network interface of an Endpoint. +5. Provide a "Percentage" value to specify what percentage of the packets should be corrupted. For eg: 10 to simulate a packet corruption of 10 percentage on a particular network interface of an Endpoint. 6. Provide "Injection Home Dir" only if you would like Mangle to push the script files needed to simulate the fault to a specific location on the endpoint. Else the default temp location will be used. -7. Provide a "Timeout" value in milliseconds. For eg: if you need the packet drop to be sustained for a duration of 1 hour then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. +7. Provide a "Timeout" value in milliseconds. For eg: if you need the packet corruption to be sustained for a duration of 1 hour then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. 8. Schedule options are required only if the fault needs to be re-executed at regular intervals against an endpoint. 9. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. 10. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. @@ -406,17 +404,20 @@ Network Faults enables you to simulate unfavorable conditions such as packet del ![](../../.gitbook/assets/wavefrontevents.png) -### Packet Corruption +### Network Partition Fault + +Network Partition Fault simulates conditions where endpoints lose connectivity due to a network split primarily due to failures in underlying network devices. This induces cases where clustered setups lose nodes with impact to high availability, data consistency and end up in split brain scenario in the worst cases. **Steps to follow:** 1. Login as a user with read and write privileges to Mangle. -2. Navigate to Fault Execution tab ---> Infrastructure Faults ---> Network ---> Packet Corruption. +2. Navigate to Fault Execution tab ---> Infrastructure Faults ---> Network Partition. Only remote machine and remote machine clusters are supported for this fault. 3. Select an Endpoint. -4. Provide a "Nic Name". For eg: For a remote machine endpoint Nic name could be eth0, eth1 etc depending on what adapter you would want to target for the fault. -5. Provide a "Percentage" value to specify what percentage of the packets should be corrupted. For eg: 10 to simulate a packet corruption of 10 percentage on a particular network interface of an Endpoint. +4. Provide a host IP or a list of host IPs to which the endpoint should lose network connectivity due to network partition. +5. If the single host IP provided is identical to the Endpoint host, it throws error at the injection of fault. Because, the Endpoint host and the host IP provided must be different.\ + But if user provides host IPs list and if a host IP is identical to the one in Endpoint host/ Endpoint group hosts, the fault injection proceeds by selecting the Endpoint -Host IP pair of the remaining list. 6. Provide "Injection Home Dir" only if you would like Mangle to push the script files needed to simulate the fault to a specific location on the endpoint. Else the default temp location will be used. -7. Provide a "Timeout" value in milliseconds. For eg: if you need the packet corruption to be sustained for a duration of 1 hour then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. +7. Provide a "Timeout" value in milliseconds. For eg: if you need the partitioning to be sustained for a duration of 1 hour then you should provide the timeout value as 3600000 (1 hour = 3600000 ms). After this duration, Mangle will ensure remediation of the fault without any manual intervention. 8. Schedule options are required only if the fault needs to be re-executed at regular intervals against an endpoint. 9. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. 10. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. @@ -476,13 +477,41 @@ Kubernetes (K8s) Delete Resource faults enable you to abruptly delete pods or no 10. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. 11. Click on Run Fault. 12. The user will be re-directed to the Processed Requests section under Requests & Reports tab. -13. If Mangle was able to successfully trigger the fault, the status of the task will change to "INJECTED". The fault will continue to run at the endpoint until the timeout expires or a remediation request is triggered. The option to trigger a remediation request at anytime can be found on clicking the ![](../../.gitbook/assets/actions\_button.png) button against the task in the Processed Requests table. The task will be updated to "COMPLETED" once the task is auto remediated or manually remediated before the fault timeout. +13. If Mangle was able to successfully trigger the fault, the status of the task will change to "IN\_PROGRESS". The fault will continue to run at the endpoint and the task will be updated to "COMPLETED" once the fault is done. 14. For monitoring purposes, log into either Wavefront or Datadog once it is configured as an active Metric provider in Mangle and refer to the Events section. Events similar to the screenshots provided below will be available on the monitoring tool for tracking purposes. ![](../../.gitbook/assets/datadogevents.png) + ![](../../.gitbook/assets/wavefrontevents.png) + + + +## ![](../../.gitbook/assets/new\_logo.png)Kubernetes Drain Node + +Kubernetes (K8s) Drain Node faults enable you to evict all the pods from a node. Unlike other infrastructure faults like CPU, Memory and Disk IO this fault is specific to the K8s endpoint and does not have a timeout field because the fault completes very quickly. In most cases, K8s will automatically replace the deleted resource. This fault allows you see how the applications hosted on these pods behave in case the pods are evicted from one node and move to another node. + +**Steps to follow:** + +1. Login as a user with read and write privileges to Mangle. +2. Navigate to Fault Execution tab ---> Infrastructure Faults ---> K8S ---> Drain Node. +3. Select an Endpoint (Only K8S endpoints are listed). +4. Select a Node identifier: Node Name or Node Labels. +5. If you choose Node Name to identify a node, select from the drop down menu. +6. If you choose Node Labels provide a key value pair for eg: app=mangle. Since multiple resources can have the same label, you also need to specify if you are interested in a Random Injection. If "Random Injection" is set to true, Mangle will randomly choose one resource in a list of resources identified using the label, for introducing the fault. If "Random Injection" is set to false, it will introduce fault into all resources identified using the resource label. +7. Schedule options are not available for this fault. +8. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. +9. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. +10. Click on Run Fault. +11. The user will be re-directed to the Processed Requests section under Requests & Reports tab. +12. If Mangle was able to successfully trigger the fault, the status of the task will change to "IN\_PROGRESS". The fault will continue to run at the endpoint and the task will be updated to "COMPLETED" once the fault is done. mediated or manually remediated before the fault timeout. +13. For monitoring purposes, log into either Wavefront or Datadog once it is configured as an active Metric provider in Mangle and refer to the Events section. Events similar to the screenshots provided below will be available on the monitoring tool for tracking purposes. + + ![](../../.gitbook/assets/datadogevents.png) + + + ![](../../.gitbook/assets/wavefrontevents.png) ## Kubernetes Resource Not Ready @@ -504,7 +533,7 @@ Kubernetes (K8s) Resource Not Ready faults enable you to abruptly put pods or no 11. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. 12. Click on Run Fault. 13. The user will be re-directed to the Processed Requests section under Requests & Reports tab. -14. If Mangle was able to successfully trigger the fault, the status of the task will change to "INJECTED". The fault will continue to run at the endpoint until the timeout expires or a remediation request is triggered. The option to trigger a remediation request at anytime can be found on clicking the ![](../../.gitbook/assets/actions\_button.png) button against the task in the Processed Requests table. +14. If Mangle was able to successfully trigger the fault, the status of the task will change to "IN\_PROGRESS". The fault will continue to run at the endpoint and the task will be updated to "COMPLETED" once the fault is done. 15. For monitoring purposes, log into either Wavefront or Datadog once it is configured as an active Metric provider in Mangle and refer to the Events section. Events similar to the screenshots provided below will be available on the monitoring tool for tracking purposes. ![](../../.gitbook/assets/datadogevents.png) @@ -530,7 +559,7 @@ Kubernetes (K8s) Service Not Available faults enable you to abruptly make a serv 9. Supported notifiers include Slack channels that are configured under Mangle Admin settings ---> Integrations ---> Notifiers. This will enable Mangle to automatically publish status of fault injections to the appropriate Slack channels for monitoring purposes. They are optional and you can choose to exclude this while running faults. 10. Click on Run Fault. 11. The user will be re-directed to the Processed Requests section under Requests & Reports tab. -12. If Mangle was able to successfully trigger the fault, the status of the task will change to "INJECTED". The fault will continue to run at the endpoint until the timeout expires or a remediation request is triggered. The option to trigger a remediation request at anytime can be found on clicking the ![](../../.gitbook/assets/actions\_button.png) button against the task in the Processed Requests table. The task will be updated to "COMPLETED" once the task is auto remediated or manually remediated before the fault timeout. +12. If Mangle was able to successfully trigger the fault, the status of the task will change to "IN\_PROGRESS". The fault will continue to run at the endpoint and the task will be updated to "COMPLETED" once the fault is done. 13. For monitoring purposes, log into either Wavefront or Datadog once it is configured as an active Metric provider in Mangle and refer to the Events section. Events similar to the screenshots provided below will be available on the monitoring tool for tracking purposes. ![](../../.gitbook/assets/datadogevents.png) @@ -737,7 +766,7 @@ AWS RDS Faults enables you to stop, reboot, failover and induce connection loss 1. Login as a user with read and write privileges to Mangle. 2. Navigate to Fault Execution tab ---> Infrastructure Faults ---> AWS ---> RDS. 3. Select an Endpoint (Only AWS end points are listed). -4. Select one of the faults to run against the RDS instance: STOP\_INSTANCES, REBOOT\_INSTANCES, FAILOVER\_INSTANCES_ _or_ _CONNECTION\_LOSS. +4. Select one of the faults to run against the RDS instance: STOP\_INSTANCES, REBOOT\_INSTANCES, FAILOVER\_INSTANCES __ or __ CONNECTION\_LOSS. 5. Provide the appropriate DB identifiers. 6. If "Random Injection" is set to true, Mangle will randomly choose one of the DB instances that is identified using the DB identifier. If "Random Injection" is set to false, it will introduce fault into all the instances. 7. Schedule options are not available for this fault. @@ -765,7 +794,7 @@ Azure Virtual Machine State Change fault enables you to abruptly delete, stop or 1. Login as a user with read and write privileges to Mangle. 2. Navigate to Fault Execution tab ---> Infrastructure Faults ---> Azure ---> Virtual Machine---> State. 3. Select an Endpoint (Only Azure accounts are listed). -4. Select one of the faults: Delete\_VMs, Stop\_VMs_, _Restart\_VMs. +4. Select one of the faults: Delete\_VMs, Stop\_VMs_,_ Restart\_VMs. 5. Provide the Azure tag (key value pair to uniquely identify the instance(s). Since multiple instances can have the same tag, you also need to specify if you are interested in a Random Injection. If "Random Injection" is set to true, Mangle will randomly choose one instance from a list of instances identified using the tag, for introducing the fault. If "Random Injection" is set to false, it will introduce the fault into all the instances identified using the tag. 6. Schedule options are not available for this fault. 7. Tags are key value pairs that will be send to the active monitoring tool under Mangle Admin settings ---> Integrations ---> Metric Providers at the time of publishing events for fault injection and remediation. They are optional and you can choose to exclude this while running faults. @@ -831,12 +860,14 @@ Azure Virtual Machine Storage fault enables you to detach all or one random volu ![](../../.gitbook/assets/wavefrontevents.png) +## Additional things to note about the Dynatrace Itegration + ## Relevant API Reference {% hint style="info" %} **For access to relevant API Swagger documentation:** -Please traverse to link** **![](../../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#_/_fault-injection-controller_ +Please traverse to link **** ![](../../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#_/_fault-injection-controller_ ![](broken-reference) ![](../../.gitbook/assets/faultinjectioncontroller.png) {% endhint %} diff --git a/docs/sre-developers-and-users/requests-and-reports.md b/docs/sre-developers-and-users/requests-and-reports.md index 30a811c3..535b69be 100644 --- a/docs/sre-developers-and-users/requests-and-reports.md +++ b/docs/sre-developers-and-users/requests-and-reports.md @@ -68,7 +68,7 @@ Click on the Logs link to open up a browser window displaying the current Mangle {% hint style="info" %} **For access to relevant API Swagger documentation:** -Please traverse to link** **![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#_/_scheduler-controller_ +Please traverse to link **** ![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#_/_scheduler-controller_ ![](broken-reference) ![](../.gitbook/assets/schedulercontroller.png) {% endhint %} diff --git a/docs/sre-developers-and-users/resiliency-score.md b/docs/sre-developers-and-users/resiliency-score.md index 6768e19d..f1ce2ac3 100644 --- a/docs/sre-developers-and-users/resiliency-score.md +++ b/docs/sre-developers-and-users/resiliency-score.md @@ -53,11 +53,11 @@ Before you can use this feature, please ensure that the configuration is in plac 7. A task of type RESILIENCY\_SCORE will be created and the status will change to "Completed" as soon the score is generated and send to the monitoring system. {% hint style="info" %} -**PLEASE NOTE: **_This feature is still under evaluation and is supported only **VMware Wavefront**. If you need Mangle to provide support for other monitoring systems, please raise a feature request under _[_Mangle Github_](https://github.com/vmware/mangle/issues)_._ +**PLEASE NOTE:** _This feature is still under evaluation and is supported only **VMware Wavefront**. If you need Mangle to provide support for other monitoring systems, please raise a feature request under_ [_Mangle Github_](https://github.com/vmware/mangle/issues)_._ {% endhint %} {% hint style="info" %} **Relevant API List** -**For access to Swagger documentation, please traverse to link **![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/resiliency-score-controller_ +**For access to Swagger documentation, please traverse to link** ![](../.gitbook/assets/help.png) -----> API Documentation from the Mangle UI or access _https://\/mangle-services/swagger-ui.html#/resiliency-score-controller_ {% endhint %} diff --git a/docs/troubleshooting-guide/deployment-stage.md b/docs/troubleshooting-guide/deployment-stage.md index 24b9794d..97aa044e 100644 --- a/docs/troubleshooting-guide/deployment-stage.md +++ b/docs/troubleshooting-guide/deployment-stage.md @@ -12,9 +12,24 @@ We have not experienced many failures during Deployment. If any issues occur, pr Provide the following information to support if encountering Deployment Stage failures: -* Hash \(MD5, SHA-1, or SHA-256\) of the OVA/container images you deployed +* Hash (MD5, SHA-1, or SHA-256) of the OVA/container images you deployed * Deployment method: * Deployment environment * Verify that the targeted datastore has enough space * Provide details about the targeted vCenter compute, storage, and networking +## **Known Issues** + +#### Mangle fails to start with error "org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean..." and generates huge number of lines in the log file for Mangle web container + +_**Workaround:**_ + +* Stop both WEB and DB container for Mangle. +* Start DB container. +* Once DB is up start WEB container. + +_**To free up the space if the log partition will full:**_ + +* If the log partition shows 100% utilization, navigate to location /var/lib/docker/containers/_\/_. +* Confirm if a log file of format _\_-json.log exists and is of large size. +* If yes, remove the log file of the format _\_-json.log. diff --git a/docs/troubleshooting-guide/fault-injection-stage.md b/docs/troubleshooting-guide/fault-injection-stage.md index 0a578dd3..c9e829cb 100644 --- a/docs/troubleshooting-guide/fault-injection-stage.md +++ b/docs/troubleshooting-guide/fault-injection-stage.md @@ -1,2 +1,64 @@ # Fault Injection Stage +There are some known issues and troubleshooting steps to follow when you run into issues while running faults. + +## **Common Error Codes and Next Steps** + +### FI0101, ErrorMessage : Infra agent files are missing at the endpoint! More details available in mangle log. + +1. Usually the fault is run against an unsupported endpoint eg: Photon v1.0 +2. There is unusually high latency while connecting to the endpoint while running a fault. +3. Ensure that the ssh service is running and the credentials are correct. + +### **When faults such as** Spring service exception and latency, JAVA method exception and latency, kill JVM don't run as expected: + +1. ssh into the target machine and execute these commands:\ + `sh /tmp/mangle-java-agent-3.5.0/bin/bmsubmit.sh -l` +2. If the provided classname/methodname is not valid, we still get the btm rule created. But it fails to compile and transform. To confirm this, run the command:\ + `sh /tmp/mangle-java-agent-3.5.0/bin/bmsubmit.sh -l` +3. If the rule description contains "NO COMPILE" and with errors, the provided joint points didn't execute. In this case, check the methodname/classname values again and retry the fault +4. If the rule description contains "NO RULES INSTALLED", then the rules were not installed. In this case, please re-run the fault. + +## **Known Issues** + +#### Application memory fault injection does not run for applications using JDK version 9.0 and above + +The Byteman agent connects to Java process. Out of memory exceptions are never thrown and the memory usage at target application remains as it is. There are no known workarounds for this and is currently a known limitation for Mangle. + +#### CONNECTION\_LOSS AWS fault on RDS not supported for DB Cluster + +The current implementation of AWS fault CONNECTION\_LOSS for RDS works only when the RDS database is an instance and not a cluster. Executing the fault on a cluster throws this error. + +``` +ErrorCode : FI0015, ErrorMessage : Execution of Command: CONNECTION_LOSS: --dbIdentifiers mangle3-5validation-instance-1 failed. errorCode: 1 output: The specified DB Instance is a member of a cluster. Modify database endpoint port number for the DB Cluster using the ModifyDbCluster API (Service: AmazonRDS; Status Code: 400; Error Code: InvalidParameterCombination; Request ID: 1d662ceb-dfa6-45bb-a634-e9a090104b21). +``` + +There are no known workarounds for this and is currently a known limitation for Mangle. + +#### Spring cron expression to schedule fault injection job on an hourly basis doesn't run as expected if there is a missing wildcard character + +Expressions such as the one below for running a fault at "second :00, at minute :18, every hour starting at 11am of every day" + +``` +0 18 11/1 * * ? +``` + +should be replaced with "at second :00 of minute :35 of every hour" as below + +``` +0 35 * ? * * --> +``` + +#### Test connection for Database endpoints succeed but faults executed against the endpoint fail with a connection error. + +When we add a database endpoint and click on test connection, then it will not test the DB credentials but only the parent endpoint (which could be a remote machine, K8s or Docker endpoint). So, errors in DB credentials are not detected as part of testing the connection. This can be further confirmed by looking at the logs. Typically the logs will capture errors such as below. In such cases, please validate the DB credentials and try the fault again. + +``` +2021-10-12 08:05:07.127 [SystemResourceFaultTaskHelper2-1634025149363] ERROR com.vmware.mangle.task.framework.helpers.CommandInfoExecutionHelper.executeRetriableCommand (85) - Command Execution Attempt: 2 Failed. Reason:Exception:Prerequisite failed:Provided db connection properties are not valid!2021-10-12 08:05:07.128 [SystemResourceFaultTaskHelper2-1634025149363] INFO com.vmware.mangle.utils.CommonUtils.delayInSeconds (71) - Sleeping for 2 seconds +2021-10-12 08:05:09.128 [SystemResourceFaultTaskHelper2-1634025149363] INFO com.vmware.mangle.utils.clients.ssh.SSHUtils.runCommandReturningResult (156) - Running Command ... +2021-10-12 08:05:10.261 [SystemResourceFaultTaskHelper2-1634025149363] ERROR com.vmware.mangle.task.framework.helpers.CommandInfoExecutionHelper.verifyExpectedFailures (137) - Execution of Command: cd /tmp//infra_agent;./infra_submit --operation inject --faultname dbConnectionLeakFault_cassandra --dbName CASSANDRA --userName ****** --password ****** --port 9042 --sslEnabled false --timeout 60000 --faultId dbConnectionLeakFault_cassandra failed. errorCode: 1 output: Exception:Prerequisite failed:Provided db connection properties are not valid! +``` + +#### Mangle unable to inject the fault with an error **FAIL 1 sudo: sorry, you must have a tty to run sudo** + + Please ensure that /etc/sudoers file has been updated to have the following entry "`Defaults !requiretty`**".**