From 4b3fdb97a3fdbbfce8ad20b06159326700ec90e5 Mon Sep 17 00:00:00 2001 From: David Schirrmeister Date: Wed, 9 Apr 2025 15:46:28 +0200 Subject: [PATCH] update --- Writerside/images/image_609.png | Bin 0 -> 13690 bytes Writerside/images/image_610.png | Bin 0 -> 62404 bytes .../04/Rechnernetze/00_RNIntroduction.md | 3 +- .../01_ImplementingForMaintainability.md | 72 +++++++++++++++++- 4 files changed, 71 insertions(+), 4 deletions(-) create mode 100644 Writerside/images/image_609.png create mode 100644 Writerside/images/image_610.png diff --git a/Writerside/images/image_609.png b/Writerside/images/image_609.png new file mode 100644 index 0000000000000000000000000000000000000000..c5e5191015ecfa23296089ff99c60fea7a81a941 GIT binary patch literal 13690 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 H=7IkY^oS*D literal 0 HcmV?d00001 diff --git a/Writerside/images/image_610.png b/Writerside/images/image_610.png new file mode 100644 index 0000000000000000000000000000000000000000..05246f318bdb57d6c1d4b18a0facb327a2b9d378 GIT binary patch literal 62404 zcmYhib8w{H7d1MFjftIfY+Dm{%!$>pHL=xkhZAEa*2K2$WMbPkZ{FX%_p9%ZuIhTK z`<&-!uf5h@CtOKE3K;<(;nSy2$Utdvl~12OyMBDk;b1}Q?$XO~v%vh9GL&(W+^Yp+HxlX^dv&0~1yb)BPM-_Hb}P`}YA{TAt34tg*25efJL zjqt5?Q7KICzi(@70^C&^^MWE0@;)`&x2S%S9xg-(vUGiqUSs2>=i4qz`@V>p#K-gu zf5k0L8IOoxW>3;^py&RA@0ya7)V)X~^3`enHZGqK*Qal5c)bsp-M2}f7=oVl&|Kz`># z9v&o{C$zd`iE3Yl{=ECJ8MgZTTlo7s%=8nMVP+gF@B+0tdZW@}2P^57tJ~)DEvheg zevA|99uPpIMh<|fvsiS&TRT@r9@S*zK+5aPr0;3%#8A&go;U~&Kq zXo9(1#LkyiWyU!!F)g}U25VDIZGL3?2Jl#2Xuc~uF|yi&N=1czwJR+*Bo6eD4}z6Y zys19r)Li6|={DsB@F&S$H4^=r41STJvx-egqZ}TJ2js3w+r}a#%s9oSWQ6Bb(|JVQ z{)ljm<3L7|QzCtuaren=6$;v=Mavw%$of0xX&Uz;15$A?j#a*QoMeP zl;}Vu<_J7&lC5ktiSc=ckg@RrG4O!GjAH5vzRDhAyy|Y}6dVFSYOiZgTAIrQ9OcD- z<^UL6I(Xjj7NL>1`#KI6AFHDQ`J*e}dnpTK#gx1hB~(suvbF3)X}2(@``GCcYw{Qz z|28AHay=_l37nnnGDrQv(_LwGJZt4-($=?4;WXLD8oBbQXhtqe-TQ$kW%8{fZxL zJ>OPo94drD$b*8TVGjtq(nK*A@rHPhmnrJO`X#^kRO>@HD@@ZD=GhC9;9|m(J1lP- zzrlAaqMdG@2X^$WFL%-^U9gdcXEMjP1rgjKFfWg>Enh3)E%m+^LoLT3iQJzkT)Vm<5BFxkAwM1nCU!i)wb^A65>58IcnJKCG0R zR(;&1hw?oo@MbqBqco>tf6T^Y`EMB!ba?VG&SQZhi(DVBZnaaa>1ChabZw@%h!_Tw z8M#e*G>b(B>!iP~+hyR}W ziF!ytA*i~W8V{vKf{fB;t#55+N6|kaw>Du7+ER7w-AF8&`7Y2hk|QiShz>QzN~&C~ z3rPqcf;QR59%|&d9EA!)&bE-%iT^$G3i?onWf%mggTJ6zP{3&Os?+5 zMyBUq8fsL2H3ZyeN!w$Wf5^7ZA>e43CApi(4pe;BQ}c3>u45G7iMN(5lR?kh>p(s? zVR|gscnf+HHIo=w(Am?(yXpoibpWm+g?V|7(Tg&mpVDljl9Z)AmZ5?YWKQ(bknBb( z*DEUx+I7VEJj5=GhGd|GkL~HZgse^hbiac|#RJAf=w}8cv;gRDJ#0bdeggI|gU7kh zo3<;BvS3;1C~!9o6qFR)G`*;dcKHc~fkXQOpfuwJ#QW7f?T<40v!yuvR~mR7w5u*L zYVnS(O0R|h(if;j=J?#23k;8mgs{x*ephz69`nv)_fbt;K``+`J-azWKG~MfKuq>8 z6HS^{b#o&QU@(9W<9Tn)Yx5X~E}9V-cfSO`ZRWR41k{U4SK@HF0U4cTf+vSqj}4jj{Xq&6S1om-BT6WHS> z6I0aX(s@$@kC;<+bKbd|64l_sF`*>5Aorf_Bo4w1<={0)-`#0wZw-wlE(ITEtH!Ck z7d(jToAHqOgyX*%eo{fVag2kq3p}U0&UODKT$Z1%U0V@lF~&XBJnW0i{Q+x&elZN& z$=y~TFa)sxxNd%q^R_yF2N>uE~#`~E|*w60>F$~9h2L@6)D^I1AxyUjDwy9=mP z-p!MVq0b=b3>I!Y7-qwxHzzneyu=@4iRMZ}_mU|<8e_q3^%xO4q>T6GrTBBXBdAF3 z8u)IWKHEEPOvvsT>$tU0An&!q3zl|06F`!c_2R|MF(1C-xw|>yl}v+)H=S~4jS~Gr zF;tx`pie2Cbgzqfnzt`k@e3v~Pg<<|?z+KIG728Zql4Q$)6KtUqp&LZX4JwB2jU*9F8N7A5@_FUOX*B={$z)`%90RA`7NHr;|tGi^b)zdT{UnO>g-|v^XZH z(0q`DZTmzDS}Sgnymv%4=Z|?miBMq$9q2x!y}hb6dB!`QcF2FXIBc~Puj*Rcpabo4 zOLLHxHD)T^>=DWMLc2c&FJ{iJ2wz}g@pCjhj+Jo;s}YUlYka~2ug`wk=Xb^Pj6X=8 zMK{ww$`=+knpk1v?X!D<+Y%EHsNN?$V^oyLu1$)<9iO9zINAU>P zcyYnDFM0DojC_p}V%T_+@Dx_hu`B6}rQWPmy)eu`2fQp&qZvf=!JW>oZMI+xs$o=w z@b79iPGXCN;(oa1^9tEA2z!M_^2GkQBSqEB zWKoaA(bZw*HFwv(!q-1|it_;1wH~2KTt~BB=NF%<34k$E^Yy(r#rTDygN0hplB{g6 zLXWHT=vL$JiMq(n-*9-&g_nCa48W*oWJO^--_06zO#Wz8H0i z8q%v>R|Kn~5V0lg18J6Q$)rzo-3&W;C?=;CX>lH<;cmWZNjX^5-h2nP9$gk(nk-u$ zGr)SaNvx))bnLyyYSEP|b@YDUeCmuIsz^ApNS;2cC2XeH_`hbfZM%EjRIs z>>4&=V>y0uI#KX_N?q?dYPOI6!LhzF&a(W(((sZfhP(LB_|`ccTw{&P^xuxk%zF*u zCnYYSGtlJ;9zySlZri%xb&)(%-2TKQMpk3qE|n zqA-VVK@LOzrYYq38X1G8b6BD@&})x4jq5=xK2ywo9}Taiix@HgoQ_ab}s0A zljsMG$WeIaq?zivwbL43c{4?YT=NLJ)Tdt>kJVQbdRE@p0YOKOW?U%S=M15Mw6wVU zh2JYd>7-V~9aj5vNIz3svrP60(B^VB4WAhpDu(xS$`jbLDRQ#C&w}HsQb!55kjOsg2QJHFX@T;ZkIv{AZl$QS8K4}<}AkPDDvgkFjH@^_h!;tC>@ zw{0hJCDSVX-Z<^t7I6KABd54;xmF#>jpJROfy{byQ`=|wABB0eSoqzGqvx@>Zg=rW z$IkY_FMI_W^8EkfH#F{of6!X~$8=2p57XhGaP2or1>NVh+Wz+wr3=qo_^O1_Ceg#r z08EwrpmeiZ`wyPSgzwO8!_-vB%C^Y^$5_5WU(8;23&fAc`&?)-nxNS98` z4u|g@tC(+@_H)L^S)kCTt70E1$a`Um7%5fOaz1a`dT0&3cXDHRx61xVkd&^E-{5)f za*xh@W@iO$T+bu|Z=JkTmb8DU-_JUdqhD!VF0IQ%{BuD~W9*+_dxy{e<+fYHP~q#T zh)j$)2!vipxnG1E-Eam*`iOhWAj9fxk=u_bsmq5It z*5@6Y3@gXBnh|-Mg-T2u#tJU}>^QwoBeHi_L1Rn%SaW$ql+i#@ zM`){~?94n_Ix9odUH{n16mxQpJAOuX#rW#GCWEhb-#@a|&`katBhR~O%v}mKJe8(} zmI<_vtWwfl{Dm3Plb}QmC&0qr`D)$W2^_G|P&UW3+)8#JKr z%?^TWDd10Wc*u_7x%=1sQ5*c>Jzg2)Ld0#+uYb5u09eG-(sws1|8`@;BE=UOvL(R- z?9Pal9y9ucJPw3Uq0x@tV@X|px|io4Ybj{|ARf{cS6WQNI&WSHcJ(sN?=>tDhF)UopuCpP5rKUya!ng`@ zli6Jmd)Zf5MK}<|hNt}Q$wLr1XeoW)QK;gJV{6`)U4joqTY45beBUiN20##h<$}X(X(D~{l(PoK>O45cjCIP#d~Q0}xo!4oJgY9=R2S!z z9KQN5O7~!yZWBCsK+f?lqwYq)`iNvR$q#oNu3};K2BUnbNhYY1tE%jJFL~3MzIGAU zGAQrReT-->ITMPE#M2J6|FGiF5yIH*Uar%EOjXD{EW{$-o$CL=NmQU9+sS~eguS*< zWCcz#SID8d7tRMA#G2TP$Z(lF$VdEYPW9C1^pFhmLy%yz?L$_m^m}(S+DRMd!-!{h zyh?mTq_|71*@pv>&}ThI(i(h37UYVI1$fWDg}ssTAga%3%8s-jh#asGtcHidB4i21 zb(Hgo;i{6gS5E99s^Ne;;ybWSkb4OU%}CV=3xbVCBgCg@JEo9Q2)~+%O-y6#!T683 zRehkq`%~z9K!bf{qSoLLJ-8;l0SQZ@j|%ZiE!w^55FZ9Kt1=cll@M}B->(v$4i-YD z^0n%$#@?SsHsjobWag387K19&=@>Mk1V;e<7&Y1ioMy)Hu{pjWs zI>7Kfl}+_)cR5|U*4D3aajK;7cR4AX#lVb7Dpw4yY}kQ-?XkD1?S^XCMDdBLt1FcF z{y>+aks&m8)XZD{9V(u&`ZfztwxBtaWHfOke+YAdH#CAicWZqwF{8Bi{&=iGo`3>G2m0K8ot5PmPUdl^v-6H}Ir2 zJJ|Igwo2FCIAd{oSU=GXd-(>1R2z+;!l)>?x3_url(b1|pg@|OviSJu?EAtgj|U`+ zab&VJ%kZIlW#vbr%V(zUut}bx3D!i%*^8TxVRzXt^66i9Qd+~R%?nxZD0F|I-I8vL z;VTEz(e+2xnyC@|!P`Q*1i*-agY4DUyC)&pYCG)PNQ0dlwNcwMDJ3ID2WB$`f=;jB zYxJ1Y7WPLonZtadXbhAY)i2fq<^vb-(l#RHE8>Vt(-z#$`N)SfjuWi~-Hv2`_?uw&4SGaF3MxUTadXujWd2 zl7|!+$EJcOvYFAu3x!zV^Z!IH94a&D!Zfs&Di++AQafSf9#J0((McgVxQN($uvAf4 zrnod{VwzMi&>FV=?N1Kmlc+C{O)h7V`70~^#`hYtY~UM`vf#)U8`<9RY6j-Tp$nB1 z3zB7t?LzsJlb~jl`pAh`@Nw&+X$BfN!AID2R1NJ-;vw>~m9jq>obn`g+&rU}de3N);ClFP^4g%36a4KwVSy9BdfUxo0-{b^n%2A9eZX)i(edIV zPetBC)%U0TRK`01$+?M1sA%M&IM$cmM7d&H5)5LBC!BB}FXYX$L+T3isI>W-wk2cn zD>X4623ATP{A}B0l&$8PWF(>?HK37udHB0C@`hHmX_olOO}mz4BB_<{b&@rbu6^UZ zk_*XDmNj8n@;&Rz79G+Llb`V!yAGLw#+{rPm_|^%?3=hD-~mox!p>`RbIY#tl+Ao3 z)tv_-HUfx*(brA>SpD~gZ67_gD_A>2ug%EJE>iXfii&qsUUzc#+S%%pl+$KRZ&KD@ zgcvlfCJB|YC@8}06sDf900rXh9AX>}ysvwKlsKmk$$%bc`2yDI;~ftsQke=q9u+Vq zZfL!;LqZnc2pmS<=u;}ucl*qpKI5~jw`zHSWSt{um4RN?{cW_{$UDnqf(0fTUQ8Zf zV>Y<3z%%4)9TUf;*1-CaJKlE2#DuDG}B;pK5Svj|N{-tqLCLYIV>}J`>;%x!I8&b0* zQsq+?WJD~aI_COcKKgI_d;W5)i)`wxK2nvn51IGqS?DXdnlr+=>6GGjL(ueBI z_GjT-szjd8`MRn1KNBjPcgHR^57OD`>iS~qvMewx^ZHJkjB2&wn?ZbwtT&q_U&2I4 z+;-I8t2g~Hj!GiX(31RHUfx#`8k=GN$UHZvu@O${g#r1fd!66m6JXu?-)a;(ChH{u z)V*YF8@u+Tk@re5tn{z+OhAzx1uX7>YOGr-@76q$Aw@Prq4h0$IR}a&=tE{voJ`=OuFg!_^ zYQ$m3`*yG>{aF7Ntr&|%aexB`F)2N@;>%iO2-%1TTaW*}@Auz9v_h{N&h9&JQPtIK zCTq0l;0vgqUEO>opG0{~&auoVJeXnl&H%PTM^C*#C?G<8#EK3WuLgI#-c)3I4> zBZ%Br=rbp24UHR#$*Fy#R)arh7i1^696EI3Qc`t8rQMvr>{?$7kr$z&>l>~4U5OSx zWGOv7C;_|`)H3VQg#XS&$Ar%Q_vaME=9~K5pXzE14M>@I19~J{assO2NYBIe^Qt3% zA)JKiFKHb1{lFLgYG&vVi9x2a#9pDYW1Pu{MjFG3?GSM)`}i(Txx=^1*k*T*f?5O)s!M3o%HtO?A~jXHhc?H|(* z$akjRKCV~>HRLl7%OE(oKYPk$u)-qljdka^w8SMEFowTo+YbB@uYV;wf!KB$yxkF( zc_$cIdqM?;M)$2Wv9o|)2;HAnx|^GfFGGc2;GJFWdX5Wlu;uVW9NG7cZ^AYgj7);! zTcW}BJluHJdy2i4;m$0+qi|)5)(C#6{6F8G)*lWcNq#rjlSrZ-f!`lTq!xZo!kH@& zOErA%skEE=X|rPL|C*j`c+{Uj2RgrD1xKYre#!1_rZabRw_lfsAvuV45U*}zys^t5 zI#t@e@z`*?1WYC2xu3848BX5Rg+apm&;Hf0IIVEVrSn0L+(2@_8-ukBRHKlc2aFnN zyq;<;Q)4XeiLw|@L7`Yjb?{-iAnYdu^`*k?@u~+DiJQ#VdaM2Nn|V6peJR- zlpUnw&NUE7Dr))fI#X>Z`n`O$5sTQ|HH0{BQ-jW0LsA4x`9>>XH_Q15?>Eq2>=!_z zMan6H_QWtqgn_ce=o11I9{&{=KL{qJY_jpf1^Qs~by=?vA<+{g$V(GL?#67}fW!|G zr^5kHAGgV!zg)L1$}y-}?7j$@?o1G+#S+a+RFs^r_6b)9qA#N2gyiY{#P|Jj`aY9$4@Yi zwhHl^6whX++gpSWHaGgoF+_FW*5PzX{pDgTnFr)cM7+m;x!=)>*i!k$#JpfLuo&JZ zL-0?74V!0_PTzTyT$jcPxjVbBmHrEP4ct|$6U z=xv#V6$D{oT3YB?`v=i*rg!Ppd$V*VPjp9mg)oAsD#RuK`8gbK zp}eTZUP61hAsxL?Hlt*b&QKRlq(E}9nUEvxolRXTRwO%Ltb+YFZzcD3GK8BL8_-x8Vk<1YgNsdZa0l@0JD~VAgC){PrN~w}Sp&FGvyAChwP+ zuu>vhsh6{NwbA{QS(vq@dSWIvIt<1u<|u<@~~Dy=l;k^y$R$v)}7T zwh_UPfZ0ZtvNUeIY@eIYLf=joU8Yff-K*cu&8_tDzEv*y zPZ6tt8PO=~oiyr+OI=P;|L0GQ@k|Fi@x^hI0l78efh~Ky3^#qPKdQK$>+2-pTBC$2 zt20pxA#N7FjN)18OSf$XfV;jH#@#v{v)G0GZP!@p=GV#3I4ePMndykk_QE@fE5C@J zh1-cEmMv2oiMApgeSABU^#-;I{64|BykI{ww#A{HhMspkAT29sQd~p`y}gXLR3gjt zbwx)`mK=*4ZCp8Mx^XR`rbR3lAGw5*7#THUo%^lA4!I#X==%w_pRp18PH8Q$)?qfs zXhzLeYiF#sfAaILpwB_1H*%3d^J)nw+IiLP6{>v=P07uT**WnpBU*%64V~y2OCLYD zxTRjOBnn3pRy3j!PA2y9kpL`tKS4t@*TkddC0d`yvkeV#AUk>D?(VR;W$liPxy?CH zC>n%l+3I0RG4uyFt2jKHS(N?xBvedOV!Ezm-h#Sl@eZ(%Ze#mfAK`BTRCj;$psQM7 zy2Q;1+bx!HxQ(5SEPqD|BgU*!HR4vGZ^A{%^=7_!A5^3UlBsHhX+>DoE9u5YhHQHp zp3SLB0~PxQQL>Gut5*jro^4ACnGrs4G?lfBC}Sl+Q-77_=+?T^tC2R;)Z%P(wk(KW zE89)<$~55Ba4B~WWpW*p5SG^aM+wHA=aRdFXhLy>9Q>}&(!L+^0<}D}RG^D9CVn;^ zj&$~Z(>r#VW|OwW2`?ksa}V1n-Wok2U}aGGQ#wzStIR=GHdA18!@ z%WFdzcums1y7UnMQOFu<;Uc9_JJ)K;ue6QZpmD1mP=`k%9j{`E3r4lW{*@*f4mD?n zjnRcp%|Rc`m3F9=5(-r%~NX?5dD^bdO^`vv951YAkvd*HIo#&;IWD zKJ45=Mp59Z*vim&X9RDJAqj3IKm1z?j}@-jr~%5V3;krSlwza!x6Z?9+R>~AIKFgl z<3A~kxM>DbkH)zws(K;LFrK(VW^8liGhKVp)~vpB2*H4T&Ug7XnExb8=R(}4r+$^> z5ZaiMn_gI_nU9)REtH$H)!C0(7}YcP^Ql~OleNY>533R-j1>H>{}flXOcOeCZpM## ztcg`D?)kT**AfPjy+5i|%4Yzd4C0~74XUh*L3di=vQ*J4YY}o&yT-+k5xOd7^NK{zNc}Y)wJUTi$w1H|UEfx(S+L}+CTkVN?{ZGy{?C9wQY$EFF>S58* zViw{IPO@qfG5fh7Ou$w=yOP?idqzmIE~&s+Wf*SWu0~E{5!w_mwR>=mjFkyHZp*Eo zAu0F)DtG{pEB*2oFJZujfd8zg;iu?61cZx}6A5@|%PYty<84rj)uyzQlBA$4#Qn$V zhK`39lCr~ana+$Zo{_ID;!C;~!0*=ESfuhpRaLbQi59iW(J?GcR_fn2QqESlcW|%- zId7?m*>4l9V$h2g-bdbG%6V_PK*2?Yy*U+5Q)F@0`YRcm;(KlA2kmd*<9)+}Ya4*>Y=lPKR2@2JTUC2>$%E)ZB|OvP#8c;f1ex)s#B%XaUd7M!wfWR3xv*^p zd2>;aw=nTOF}$m`?TDNcSUWMJvyhkgeR7GW#_c4hIz@I2 zjwB8mFIR#=Z|BqN4w##l;(tBzN=L>3Z+vV!hox2z#YpzQIN|Enb0uMdEtDXQkIGSx zEVb)tW+8w>VXD~m;LK6ha}*HhzUiovAE(b-CoP?kh^(|;$oNI_d*K{U!;@-Fa5F%_ zw@`#~*=uTAVNUc9J(&7{Qzaml?K5~_TskHmuuQs4f3)8=(AzYkQ9eRcJ&I>O&UwCh zi$q=ZcZIdZp$nhZQ=*Gy_|?hWJT@i3fnNx^>LjJ`b-~(9aD`}OHT~#rW?LBKfPk(X zK3zF=oUe9%9n46R+TxwcH1~HI90VJ+1IuI~l6tQI450{gxBSLSue2_$J3X_vjIjaAvG{E4=Po05#h5un^b89)osEfT*andO@D>Rsengav6Drq-Fy~Mc{cXC zCEt$8hvHgkfSt`WNiHXi#fflxw~3?qTX|1!V7B1T8wU8S4Fv5@=113P{9^O~P~oxu zAahA<-Z+D zhGmhUtu2UpbD+O)s4BNTG9g9O;WhAe3&~=+{wv#T4<4FuW+7hppTY{;Mt#bv3cZfc zK`^MI+CS`SoSDCjA^;NQbORan-O26A(*%ET`K=N|-5%t>P zOvIlyY8~XN>3x^KzxlE2TZ7i?j>7=ONwY+>LZ)|7z2$$;4nC}T(9L(J+`)c^jo)s! z)^#_5))@RlWBO=h%l$Flu@9~GA#i~)@teO2535uwqq666;Xa`CEnS~^f^+zeOJA|= zfg)5<##H+8Hs7BG`1|N`1GG~^!-K(y&X412Y52fNjSo0#Pe{oYKY<#E+#XCt!Xm_r z-(nqyX@o(?{T4uKbkcb6_c2@;GH@(@a?Ew`aXPPg!(TUJ;4UhAiV+oxCZ*fFFz8B4 zD((6|A>ndkX2nHsr=pX9KfH^iP1TQr6Nsp?Uv1c$rcNGe$XAAN{odF8x;XXg=B~Xq z6@K6&LGZ{}_ZNRgsbEqV8oFaFn%-|X`(iG+5(USWQBy0|21hlb*(~{~vVqOJJjD2#`SVC+i~l-Urfk@Oa|y+>BJ-Baqz(w!xxoWz=D^MV3hL`-!W_@hD{S1Q=6chsiLD`^xZ`LC!+ga?Ltw5?WuG&uJ%3C94x5KqxMjzwy7FV&b@`iG3hWCS41An;} zaF;KFp2t@muEG;N+1BR&8ku+?+bPs9cwNxgNhlVb9A6-idHt%m~wGnqm)s zrO@q%8UFKb+E%nPCX~jr38&r@CN8Kwja4O0TEfz;FS<=XiJzpRH%Bz-a^TYn$GtZIA%qS$hQ9)qI3nWNS=BSB{0UtU^ ztre^)bq5s&qCK1b=c?lo+#0G)7J4vA!^YO0x|hbG%glDZB#$~aknLs?Pgo;a!fESE zUVeUNR1f>8q1Qhx&&!*};!}n0Kd^F^`UtUciPB25MAYb0N*CLUH@ZM~4m4;=tZ53< z(M)0{;a<_4yf_DkpUKTTtx06aNfJ4fylk~S$6DBRYfVa?V|}tr{#VxWx=6d;(l{{s6Xw!VC-yGyBu0=5VKUQ~2>EKA<*V$CgMTJBXs z$_{xV1{XCJ4YxZ6ByN_D%d*b2Tj)4S~EkJD|2Yop z3yZoKn6z8ZS)K$|-YZ(sS)!i z@_N)omqp0m5^;X(ra1TD;uV#}4cVU5^;rj~$!iSt;U}P0rCuGq%h{gf4a2O-IIV$+ zcq-_*I1u`Iwm_uu{cL0D@%3QV84U$Dt2<3%#&PfkEc1Gao_#AusL73$U2hi}4TGbc zf*6XP)VcM8~|@hdXK_<5rgrOk1x8r3dqs>_R{zIz&(pT)eJ z^ySh|r;ED@7boUiydhxQVZ0l|xgRy)41EMFa2+52-A0!OhQ#L|I;^6;WLSmZ)7@bx zQ7A;re9sUmwF#X}ROnznpCZXdI51ZV1++T%6%H95W1+A8c?Na5WBb%NDYv4$|`s{E*D z;i%)tX%^6XrAcybTokzPp|`m0-NgOG=zyx^L|V=Ejd;q*>8-C%~sD!zONEqYTmcOSsrw)Y$FsNW8D=T71(Nq z8OS~bz}E=cBzxBXX392oEaPAY9jrS4^|yxk$l5F>7p5we>mN-qTh0m?aakPDRM_x| zg1k^aELG>)-fyPIV0OKtM>Nypq4HSma+!7@qf76%xlPcAr*}WCcRaJu7G_jrD-&Ty zd};gGzGWk#g2lV$X`}6Y;P>w{>IZ$n5XJXbG8>8!ZPL5NZp5*^gYk8v8>(xn*T3bo z15tlgD{p&E7l_yWJNyAeQ_1Yv#T@*(fIe)VJdBlmbNek`3r5jb@dk~~E zq+V3YD48Ae?jJ`F;b>Zu@xy|V(+f}R=5tTC6Dj4=+r-m}f~r7#*d}?CvUAX8cgEF@ zbV_0{2r&96tZvMzOVg^nClPmF^}5!c3lphtHTWEEAiO-+*t5EflaJ!hz-Id_guNp@bfOKtej>l!x5YRPuaN|hZC;=vNJ#2yMfUnGj}d0S zJij}TRm#1*3qfr3!~9%uBd5&)t}+ODICF3@bBMMb${q`VJ3p5cs#}dOMDkNdLH9;j z`T-tde4_h<5^4eus1Qby7d22t$2%JKlQpZ=9Y)l_97@oS%qUaF;X?eYJRqnp{Ph^c2R*|B zb+OAeaN*tGIN7HPv_y)e^P74J4eTGwB2H!YyIPd5fwszEp+)J%i;$^h4P$~8i448U z$yr5T0lREej>Z1T-TPlVw{GAT)_*)qzITt&^FY{;G=8QAAM#Ho_iC~Oe! zM4uan{U?N!cNBWv=aTm)O6qpbp(BH46J~1uzl9o*09ei-Xfm%q#lzH>T=MoXOtglp zYito^8|J>dbrnbXjXq2;s5fgaapC=G4Ts0Mk0?D^PU`rsCyogYX#b{kgUgDE!=#n7 zexE(8BO7!JLAL9(4rl8}qh})BW!jKZ#Kb zrDa2xCyl6Q&SwA}05{{l&2d9e^T`q`8b#*!Gjy%(GNu_ygHqy7ILc{z=$bOSF6(OO z{rdB#0YW=&4@r$^u0KBOtc`owq{b&py}td7Fy<(SImYksjabCUL74;&CxJC!$SB1^ z)?y6v@@;>#KQ2`GqFQ0OkD=!xo|#m=;aGj{#cfN7Dg9g*1t|tG(;Y6G1svfE$gr>j zE!*cG-dzA~QKI(4n4g$E{x^`u#hmfToNeF&EGaLe?Dj)U7|LDO9`Z4Z-xP+;g6}8M z%f%whwUTpA*)pvvLRpQ&?j?2^&(44>6wN9dS_NJhPFjB6VN}m%>nev!wi6*wlvK*P zqIMnF>ko1L0CS4wnJyL|D~vJSjlBH^z1xm&YvXW)rldJEBFE%p?Qcxw&KKax`-9Op z2+>kNeqgXoYfe5a5z$G=ZK(!m)%B}xixosna&NHI1B&~2Mzhj_Rzd&H3S)_ewlzpq z>fY#7fx=SP%BsZB-UB8wnW2YC3~^yGMa(>z>}7?h(&{f$&h;7DTfH#XUxOf1>xS;> zJGL7|T@gD=#w&JErFCif!M4+hpj~+U(>o~zErQn#7icp_LbFOAmHWF&n)`-ZwQ809 zu_wa}dt#N_`SB0U7AszCW`nO3r3A<&;mF3A1Ya`$(N`WP5^cSnRBd;%=KT^72TFeX z@mK$AN1n>J9kb4dL7`EDMl=F9Vo7%=-vqwm@uI>O7}>c)io$9H4Mw?2n?n@_y&Cv( zQD6}bb60*%zh<=wJT{{N^me4eU`1o-%MNLocKf&IXvSEbH>X`D{cr#8x|OcE-W&^m z0v4x^jsFvVP%cj{5;iZAJZ+QOaMLA#2&(xISDsxqizcuUzlEg@SaW>b;$xIPId@Bs zE`b#u;^M%-5!PCGSnQL$NN>5%=ZbLE8Y6w`tiwtw)>oWvFZeP0=h2jg^N6JAsbWzI zLUde!9eHXg#kz(`3e&46Y%-%sSebQL|o}MOBuD5DkGLsw7a*LWaJG8G-`j6zO z-+_=LW~jc6aXs57?>|S+mjm1NaNk#Ls=Ik)J1(jPOK<2p#thZp8(Nnt;d*9Tv$MkE z!|uMQq4y;tlR^W0zOswVh&I_zxf37njylL8w<)hYA<5oTKv|SE(gt%%@ShZPl2HFC zeH5*Eq<(e?=}%$Zu7u$-MDJj^LKs6eTTxB^!~cr>pLmYt{MO2OLbQs8mjD1p14jK+ znfy2Q2>1S4ub0B89=i*geiCR?CvfKwy<}e3`SY>99oROCy5E~+#Hd*H3T`Y7a*+#= z*bMZ&JnuOweMUpg%NxypAUzN0Rg7Z!>3;$6*62d6)%i72XWnWre~(8VBO5e{Mx@u) zP6*R4tQDo0EHcX#d)vB;~fMe4(W_km!b7t9{9Ne26(o=Q!0^!9hn@qE55@$ulXp$u^arp^2WIQc$Yk zuDDI#g-PhS2rqlb5z=+Yo)oY4&s0@EInUkj-LWZEnqBy1-hW$)jJ5v#he+cnt%ldB z6Cs^-y89&|_Zh-!`>P=)@N-?^*xj|zsemi-{HQ&35p@qy+lO6o=X#43!g$Z9gzkJ@ zkj%W?Vth}0bGWSN+ok`!a=pRiGNL-Ia^aA0Y;zxEn7giGVr}+jfWB>9{#GNAt6sXOFlm@98RyHw==*i ztp)(x`rNQ^N_0xId^?!_xbjp7noakR9yW&xaMGapg>d)_J6S_E=e7+i@HJ2zl~{mm zgkn>AQD51E{pzm zVT2&2+Bwpp`=RyQCw_{4QPomOt3E<2y5*65aog0dIUO7ri3l5x!^FXQ6&o>g^s|yG_uPG>2K4TUzh^t(R@!*#AdXdx( zoNn#S3lgC^f}Wjf&jd?DoE0Tqa`@k##tkN&55yVt+P{N#@ri=XgFJ!`AwIn)! zRIHI>VW`eHrw^`SEFD2wLxV;C;vF?wNBEzv`Rr6V8I!r52r!5Vh0~@k(1+2g#WL^u zD`v5Yso8vJnQP3ZUNLFX7V%GK~YAm$4l zrD6X0R*v;{S%F#!n!rmr*AI4ke}ta1TMR}yT{3*R@+m^g^8O*iF~^t{z?8}VM`xma z!TAay0yn^fM>#VKG|h1A9;4HVH$A)mKi zYuNB_QxSd3$;}G*Ne;d{j~v(IGoJP)5;srIEu+C~Mx@G>O)fv+b@(=__g%er z?GaHfweFKK_)hfLp1*6D|Id`yJo(*i0-y1j83jOUrMEJ`$8mNAA;{BBa{tYElPDo% zspTI}vn{3P{XuxvD|j6a^^-LaoaO!uWV7X_84h6(z#NySu5RRXuwN6Rsu-18Mfg^= zSX5EbmBr~iS!b>B^Kc3_J&I6S{r%J0d>M;fFX>Or+fl7L#35)mBR4D9rMpywo*;rr zeSr$v(!1On1;A6SZM5IZv+?K*e@I3znj8TqT&B238*EI7n38JfZvp1d*HlQ71LK)f z#)BqPzGH$=6|nzFu~pl#GE^dr%LH#3)olZEl#7!+Tm?22ZogL^n`L7Kj`PM51s%_I zy2io;NoiEZad}FA&jCdYgOO+n`78j-gVx$AZUA5cTodLsm{i!aVODLE_h`eSl)vQC z3(ZTG-0)?@)8~c84x8zAHoM?Vy4##51Yd|NIdezQY8QwPO^dttaWS-KTrbpg@#x7? zB!je=@b3M{QE0hD5I{Sli}C3=ML13 zc+Kzx{^XqJO07n$IJkz9f#A)9FU!_UxKpdq38+up{6VTKQw%0SewriZ7CEf4sFpuu~MM86Wm>jyGwC*w*=SXQrz9$p}0E) zD6YX>ZvMY}@3$n+zMI{BXLo1LIWsM6$4Ej(uqfsg%m6=V(33lWGs;Q$F;D4(_Eo}C z{oAK@-i)c&^eX$Y5qPsUyiG>ZdXS7g8bb>4z@txLF?mhX+dJGZHeb4sNUz`a-k6La z^79fUDD+0z^H+Rmy46G|WR>@?WeQA6L-=Qv(fBi`z;d7iI`bm>^ihOej^EiwjDxXW zeSx#k{L8^uaor5Q*Vh=#YMse^he2&dkB=|st%rednJWfOhb|h#S|I{&HzN32ZCjB&7~YS=Zs(&6 zA;XOi2W%EN?c{a+Kdj04pKDQN`^&G#XpA$QK3ZR*{e#cgQEy>b)*C#}I%PI`X)&8T zRNZd)=2{Bm*KAz8;~c&H`5``w_ia2zI^TSkJ>hg$?LHw8;V^1e#tjcbEApN4sc85% zzFq>INK-G#{RKlbfA;z<~LfU6@T zDLtB$ePMhMI+74Mp3Pd9WZZvgCrv@{Jv;7^A9nu5SwkT&NK`dLRF>FJkKFg=ciwaJ zi(4n1zYmx_qSj)K8+`~Lqcf3+B4+OoI^G8UE|*n1?y^J@@O}IO`PJ-b&)^xA5*AFZ z`h72(v{6X%RRMfk+iOnxjEZNwYqVa^pHkqZgLM}3omN_+s7g!ZZBwuQkncab;YndK<7&)oUNcGw?tk4E=m;XPy6st*Q0j%SD{=`G zaM@JjvhLA?Ah$O6tvCBzU%{^9{UrAi`2}0-fJZqUkkQTi z^8_&8oE+AZInynJu$Uo7k^&&|!HeFo!>aVtX2v-b;^2KXi+NT3Em3LBR#Em@iUZz}a8ff5c;zzer$^aT$X%T^Saa2ao0y zG^;0tUA(ky&fW&qn7#0fr7?d%?U(&$Yl_`il^UbR=ar-0C8W{5jAa-%eeiHPgwNv8 zN<1sIJ+vKL!Z$(sssHuvR(iALhFHcnKdNo8a^8Kc26I0T8Q zA1?BiTU&tz<|D`XJy@sP+#?S^qmyk6WixZ|8NffqQ{Ee)wJ|kjr7C~@(A8)s5d3HA zy9eJ>6~PFZg(w%$P$%2L#G=`K%qT|Pyl=*f@tt*?Y=E-#UXWnq~PPK0Gs z)f$OPpDJ$Qo<-jtxCP@o>&lu`oOWb`cYnI3q;h8bKG(DuoK?+9agsw@FQdHmLAsu< zbAx^fdx?OPaZtc|dVnvR_ImWB`CwIJRY>WoPOa_z*yF`@lIS0pYa}|*pZDiqC*^Gx zhVRl>w!4Wc_OE?^8IR( zLf=rYF(Vz_Ky0+WL3$kf$AKk@U=Rg+71}QvsdE%Liy1ta>Dw)N)zB>Giy|3UpG%`x zB2q9?lWh3CqF`jWbXSUrT-+%c~jRj`jAa~$l}JArypyIgRXgO>KBr^z1_!z9qK5wUEM~OqH`Noc~P<-(_2;FM8nM@_! zoHKojhwIz{Fn3W`xiLAoSE0-XmM*B>be7DsK}iyyRZ>zwi9ZOY*)Mze)xI-l-BLa5 z&ckQq3z_)4B=67J{zPWqTaI3k91Z@QuUNSaY)1B2*@s^4q0^Lmif`( zYfdS(LZeku*tak|F0!sYQ4#yw^51NZj@at4EH_&XL-kblV_fit z2hzIy$2T{q35avT^_j~Ol;(uIS>}9+ANTGZauR!uy%D`h64A_7apPG{JWkR(Qii8e zE+SOen$u`gBHNTPG+Awa(_~gjH@dy`^c^ghCEvdkgT+FgxN3|)x5`fqba>rV^K^bT zPC66S6XRnb)r+oiTKFpVjKMiZ5ER`3GTwS_IS{b?l3P2vY3_ry(Rhs9fy>csT}`sl zNa}wu^Y)dj8!ofc4)v*+Hu!aJWUTD^NPlLre1xjEt(*Wcd^hH*Cb4!)P(k z2{tvjW44LZ@cdwSN|RaQx(Ya3`oRBsUl)oQaKA*jRaVv6N6cK=hlDvuCd2rt z-z!&rks+na5k6@=Gq6!t{OeC%>V%h8m=8_q>=HbE#`-R~W7}cgf{y>i@;i%|{`UJd zrebr_=EB9EjS1uppACX^G=`qr11;whewfhfhRJZ}Yov~gECt1ZIes}|RMo0;@AZR> znBUXpv8~7!_Ogn>nd)`{F3?o_5GA2qD*Px>VsIKIo+~B}JeRJCJOZ&C%As*b+P%ZUH~lRTmM$u5pR;(sj(WXT|wI<@A;Ni+gQr6W+(YMktUHnD&6K__>#B} z&vIE0r@Z}@p@~T#Hh6HmJczVrbBMv@cA{@6J-C!x)z(_zc>m@)vIKh)Q_m{qmrSgS zfF5|Bw~~ZnL4u^H` zUu*B#!Q|{Scf~hk&s)lxGGTMt=ir@t4R^!{&BZ>_xYRV{H!!72#C~QfF}xqMQ%NzN z@lRb01x`F2?7HFRG4d9duGZG~wu_mY07B4pzD6?&ysp+{jKZhx*-@h9-G2`P?%>2= ze4P$UBx*N-!&R>X{T-nbN9@~SSQ{ovSOUXucC!VYYI+ikTa4x{+~^s? zPE-MMrfy8BT`Lqm831(-_e z`Z2{|d(r&j1+_~@7W?sOlxWUp#qu0~8YNW(OlFx08k@0lDY?kd%uI{fiq&FlNFC*E zG{9l_mGGoL#pA=kU+0;bUgBwe%(W8lXYDVOv}dkZur$DKV9Kd7K>fFQ3|;S`G`*rJ zvMP!KWO4{~q45?uYBHXbW>{J#xXvq9M`3eF*xTpXq3BVfWnydV2rcFh*Tuw!1h|Wl zVRfZvnXYeT90 zTTs|UBbY#-i*j{z?eV)=KChDb_RYJnjO=ye`_Pt)qir^fSD_};5!zYx2Didai}MH| zA41JgKa9BuTtuO~Wys{|-J24uAR2upjXQ#_}&U)oF= z^NNmEhGj1JA^nH4ZiBZRoR1;!N)BP;6CEhUe)qUD@!Ok@eMsDl7DyISzX)s}5&mp` z_+1qiIELWF&EX(4C$HurZL6TmR(&F|K)68_HBzF ztW*GVjnemmH`@F#ef4a)JRZ?(??Px9-bWbAE%;Q@(AX@UA=T@3FfHa?+_$cG?b&yH4md(8J+`8ic9`G887l|Gs%g-#rl;Z{K{xSL=JK0u$Pjwqo8ENz{D;6}9e~C(>|;S85T~k)lH?+}LchG-K?5H$j=|Tnu{k;wB5m zVoGN1q6pjdhaT<-L!7E(?fR(Ox@FU**MyW}AG%NenTi(Sas2%%im?7^$QtW+AIJ%%+q#IHd5FKVtN#qNmkkF_xIrmpYUWBrH! z)e4}AITBO(XyCw#%K6Cj0{w+*%{%1PGCR9I+qLYmu(h@OChOQnA8@+0;IY?LM?ZFU zUr>_GBX+s?1DREMr_e2SZF(j4i#t>zb#mgupz^+oMgjLn%x+il32tMABm7!%fhK5d z01rVThkb;>!dA=kH&UmD*wH3;(+s_RV31S{tQhYzVh4~@=_7V6+Jn#z4CZhJ#c zRyY%GBW*R9SWCUXtW&6Y38r$!i|W&Vd*v^r*9yCz8N9^t9-A&PHXqAi2W0zRqoC>F zP{F{6TUIn8ZW5V21(C9ajm>^j(w%RhKim6nqLVqeOulo1^_GixJ#PYD`+zLfxW)^s zyVZ5*s;=9->f(HZp^!@H_a!knubxhFqa4r|PlW?4t&e2R!onz0{!_rXVoV;ii`ZEP)Coq-q&on*rBsOoh!5Z>?zHAyaH@i zJron3yvy6l7H9Xf{c;J}i7X#(^OBaJU3qDG7LRFZ{JPq2&26E3)=MQJ*g-D)KJ4?g z^U0+biu55vRJ07mzaM;jDmGMe*Tb%E76tT+gc5M)_A>Y9JpWo}e&^3s(DzkoAY_|C z8rPe?;atl_iTK%IJN<+2epAG9<-noi>6hK-XRWYImlIu|g_=AbFb}z7rFC>zI7i=X z-w=I3U37ZGzmpvkdamGs89~Wpbk@$=j#xT!gJPzY(>wiS(zBkGLy>QQ1>bd0QAK+7%>t0cTb!+^}f(zwF&1gBjWLf~MO`no4p zn|V?7fI1c7*;@&T^?9v$Bzgmh!B4f$1^MGD0X?^%l^fDLI9-0u%zKW3d}5U{b<$bT ztFiOJ9A`Mu`oeQ%*u@dcCl*gIOfOT+|9a}O>azz3wHR!)$pvM*tA@3mi%wci^v4}> zx+jL-S{9{OzLl9-^A|4t5>dTtx%*xB*1U)QB-^z91op&C|8thzm2+&{st|@Wvbs2J z9OC&e$1;t{DkI?q$ZWI%JnD;z4Ix%AbG|8X85cKWnVA-yL*DUm(x{d0| zoYLcvZVcVzsHA^+Kf=xNqJEB{v1-xEspTC1n#jqW>g8fMp=l$>K6X~CQ5~YVP{tv%#yynuZL+*a%Y(TDqZ=Yh>t)9SzhrsZrN?!1 zO3UaJ65jC@b2}(`ZaxYWzsk^mB4p8uN%!<@b4#SUZG%?keK>ABo||@7?K&kT`O|!7SDLt3rOJJ`T5HQ=g!F1hSL9M%Qpn-n>e=+1 z>8h${qbPKtOV>sJVzyQ+&htFlkJe;&zA5rH9JdWRq5L;cH~NI%l#|lr9b65)kMOxl z858&$TDmszvYv0-cSF?=*i4ci6aYR+Q`H0uUOPNi`$dx(MF%aYr(Zl@LoJpSgR4IS z>8J@YVSL;|5(SO_SNzqDIyn;YNMxn4z=EuXC89=6J2pz|)}-{DLW)(O8-%>U_O!~d z(3m_mg3SNxa&Z6EU&QU6q~Tk_c$58Ky|oRdH{A`(gT*#08J2Eo6Vc%fK(#KrdPRb% zuEVLEWJEN4Lv#ca86KeH-BKJzzg5SP7@ZBjdZko7D1mDua9r`ES8O!Y2kBsNJFHG- ze)W62K-SF!g&#$ce?Y4i*k|nCK;-0RjPr*4wyJ9uqN|z4WgD!;@usN2H?7DwG`5hT zbb4LX^(?0g3ML2)n`%bMkzP?U0Cxnepk+=_zD}%BvY{ zRJOiAT36D%1dUfa@{9CdWPu9L+EgK{^Z7!$>~}?fJtreD|W zs6>p!P}jJp{GgCgt}8)HeLH@!Rr)a1cVy0ci9rvU(TDoTi%}~a?zZ0H+qoC=H9!8{ z5~1aC9HCX#lReq66a_8bJkya{T-G!3xxQt37OGZ*mPjiL3bdV^_f9-qJc@E4S45>G zgHzA1p%M+p<%eY&?pmH^roMNB+!huSvd>0ehb%lIReF8x_^&=K_Q z&WmrgJo8)Hh8!}A^4ukx!uP`42(5%h1@pUtvo9&oW9sbZ$jh-huoGMm7w^>LTzE;)!^!oDn z|6rv;h-yV5Q5A6I2pZRm%=fgQyi^oLfynp|g6F7FpMyIKQ{u#C8fD9ff_QTCZUW7t z-~>ON801hV1{Xy)^5}7;*NDetX(aiT&9i)|NO81Fc3bXal;vi^M|LJd-P8sNARNqY zGS?}AapN-j#J<0++W8uZ4K9sqxgP{mIU#$VwGSlil;Ekbmo$}pdowg-{oT~mZMmLz zc>wSDH@P&v3opwv{pS`@R7@2mM7|m69i{hz)b3Z;oxb>UOH>m}v)?O$&>9+s@b4 z5J^Vwxq(tb4l510@fEa%=MtgT(}g3g-*y=Vwe+v%H!JXdbFyw32x$85JI3AWFEikl=y1H&zrPrJmu%3uz zP7EU&f7vf8T-)dQm2B>4juVp>|Dkah1a@t*X&Bj+bwQr})yzrN*5-Ozw|hdh;u6c7 zNL!@PA=YIlYk;GTKK)s>y`+JqMJ*%78RO6;FHHR0L3FF5Lq>6$U*p2_E&Fzs(~QDY zW{GuVw(Vz+PaD^ZtCm*EzG2ax*iUhM=`MHlO~qbQ#Jl;GGcQfgn$X*n@*DS)ySary z5o%Qpd%;)zMz#&AmY)}mbWvr=OL3>CeDykwi|z|pr7*)ba#Kug-TqFunr=t+@vDhM zBd5XC0ZXpD$VHsg}D?T0p1B}BZ34<{LSS^Jv zQ?TScJVA3M#@Q?#1W4*cH8H3dto^p_ho7o+qxQQNj+O{4ujjTsi_Pfyu4aJYy4fYO z`&~+N%@EIadHVU%x5W2_KV~mrOQvsCJXpm!%c{Vxk~x$;yAz_VTFyJTK6tWg4Kl+#+@?P2s0f>nV1}=6Dud zICx$oxN{k&>Q$FF)a?6`N8v4ObAw#{-LR1{8@+~z5$DQfF*&?~x(x9L6nRS<&9 zRIQuHJ7VV58Bgn|sH_l}qc9UaKax1DH(gW`2`@-vt1ly|usO=p6LBFT_!Va5X4}f| zQ&wZS;3JG{CO1n|)m|YcvqTdWop?!Kfx}%~#!05Z&Mi8v>oyT$ja!Us#^(2YK=#4;MHVh02|wl) zSdju$niNplsQ=yS*(KtC8Ic++H$}wQRg{=l4XP|<%y?y_-1bT!0)lLsmp_k6uyrD3r~rM??i-IKfwM09yHhb+b?z6aV86x zU8jVnH5_<7mU#>21q0AMM8{I@Hv99bWEPjWKkhe;xd@)LRXQ4FW3ebT9M8=sB{~ju z!y&0mb;@Vn=n3CtN|%#NdC2_0sA(eQPzK38Xrlb%)gFOH!1QAi_e$~6cV^QL`186|UB~+h=h{`zU+ zeFJM=3%XSze3K4q=f7koXc$?1HE#8D59k+Gm2r5;xbG=X-VbB>d^$snTXRgJ;Su_0WW|S0HfgujVVYUnN0M&q zj};tay_(s~gRInJ-9JTmRsG)J)D!@R`t2%g!_;D9jXNZKoDg|J&+9S1+79>Im!~ME zL8J1hOS9bV`)p3pcm$^Z%UEpjDU zq3tKs-NO^XqD8`S51t|oL1@^WL)d5&-X*AH2DcmHt{#Fe24 zulEPOQZtteN`|@LWV+Zfvz>Nl*FJmEdG-Q?I^QS1If<9JE#>h>g+raQ=$|sxUwON( zbjo61L#!Z^SBxNACcAEelFr?W34z5_(yx2+?n7vYX z7npo*0Hy3yO5rzl1t)T*JE_@)418W4J=G{fg7d-~eB>u2`)W@Mp*0pF=*`P1V?bEK zx3WUA+i`}Pw)@|k;W$7&(hEmnk_j@x&dFyj!R4^bH>_>MxYyYIO3JU!P&qAsY?^jMyz(Mj*c;ys`BEaztoq$J81Qexgw%}J-eb5^M zD`E4g@_S8P^m^CvyS6f14;{7P>I*PB)9H#!vR@ONYabSnY})Q{(XLt7aI1`df)-m% z*FLi=^SFG~j5Tim;j$p$pz++VZTWDAz)JR{X9O~-(~MYCm+qoH;);&X^wWydo#U?A zeyew&A&^e~q!XwR2U>6O>QYrSx!Zs3rBH)#aMQ1zz3Q}jcjywG#?A8?5919CJuu6h zOh~vI|Jz+XUS%1pi>Ua*ZB@P;kGY&T9mtQC7wmzGbFxQ>5w6kYP^PNf&vm{kC-uuT z-ATio-_p5Q=7d3~xq0t@hmn8vv|f|e_x(|^?v*B}q08hl4(X>)g{RzY6-j8T$H`S| z#W(4V%k)>)h7yy(Q^OR)=lf z=NqG0OhZBp@TQ6z7=X!dG-CZk0&13WI=PqP03h^C*Kc<~Y$eimlw3stBlBbcBO3w7HvnnV%$PBD?*)!bW(45^uMKPUEQW;6?% zr*w-3!NW|&e(Rss0K3G=-@Ryj0&6OhxDMTpB;~+p&72=|Bq%lZpNLlu{~qA5f;KN! ze44s(;|&8jrk-s_8^=CsZ|WMk{qN0%mjy0OM{QN32KU?xAdE`!{~dBHC+a8t45+Ff z(`gfR+%1*6#X{{4rt6<{QTcGODI#2?g-wf5>A!Tb7dHHKRB@g~z`FnIq#0a$B?*Ap zb#F+7)o1mLrLgqvU#rU6?Yt&QM2{l_N!S+;;dc*s(A7$hJH0cDDt!%9sLOg>&&>qt z+eSyzR93*qr3}=oJagzCYsKOJFaGx$r-Kh5N&7ztNE%$AANs!x6kXHX|A6Gdp)OF! z9r9N7b9_Q@%AcE;4pcnY**)Hz+dq-!*y!fuyv9hs8Zk7Xbu;4HXk`DFg3i413%WC` zQS*HctQBmauqS+d{~I!F^P&B>qP=3DgZ?uyd!+&Ud7LL0FMJZMw9&9HYi27cyU>50 zs@1}Ck-Jf&`D>sw%GGG@4l;=XiJ&z#g;Gtz?l-g3)`KigjmqIPpM?!lI(}uthkXT< zZxz^j+I9TH@)l2!J4B*>-*6O@&O9h$4PD4u`->|hycfV5`od}O-gmgxO_hLR?@`3C9yjW@OOn}e3VuY}doam~Uw5a`8;xZ@*) z1_b7*p@w4YKCKFigcEU45e5Fx?{%l@_9BZJfye|!W&p|xLJ_>79zpUzlfN1+#~g}z z;vuPT(6)or?DunIGCZ1R9xaG5a}Fvh88a-7jIDRZ2Ap9PaC~}_Sx(9GvYM*88^!eZ5e&LZ-fq%;mmGY43}^BiSFZm$^_qlxFl1NP z@~m7B$?PaIdg3<7h?y^p%6dJT*?3NVH~5Xxdc|}V(Fa+Ak&5pr*DLuw#>`Sp!inA| z6&)X_x~UGc(If{%W-O3uFddSAz>QjQCnQ0~}C;zGk~~ z@*xzTWA#biGa{*cA%8f|^lgYv_yZ0z9!S`;6vzK_Fp+ySge& z_;}djNwK@Kf)XK+zt?hxqQZYDjD!DI&Tq`Es?};$8?7g+`*VY~t7Pvu(j%k!6;bW% zD?G~Yc6I^dlZMK-yL22&-V9(}ONkG>G3qN-Z}vgh3t#hEJ-CBg$)^?kHG%*!01))Un0ELc!r*ORt-pcrd{i`ctdpO}+Eq*<&t1L`vew#b) z0Qs7^Q~%@Y*?ZMjiQUwV9cq?9>SDZ_%bapR!QGX|h(^lX!{7G?kO*s)7)bQifI{lc zJMj=R%vl>P5I2n6u$(UkQf5iY1jL;c5e|+GFmS0UXHBS z!mGSZ$)Et0e_t4yqA+Jj23QUNazZdetQ(+a7#~1byn2-bnN} zbkFlns8eieruhi}T0HIBkVxP5rX4aEqucA(8qKfe#`Ycau_gOsrGz1mD_n-dRC`+0 z>oxZ%5`bA4`_kNSH8#mK8_(1|N`g%hY?pPOqDi3B{6x}iy{>~6&dv@OH@OVL=RO~E z*fxmx<^%9=896pgA}?Z*e~;@|t3-UMss%>2fJ9jUT-@xVzUiYL=J-Z`BQNEVvy398 zGo<#*nN5yu9yn9I!PRS9LV(>J)``533-An0yq|Sui1I+P*g=FTv&XQWZ{k-Vj@3 z=4}COCm}Wx;K(2LX=dZ$HHiHb7uZ(lLPkGJUlw57c=@sas|&kLpq=m&b$j2{*4`?P zyu$>CJ!Os0D1tj@^ni-7$=|!~016x6w>K`mgd)*pD2uI5@bA6C7^N?0WQYLUKX$Pg zHqm_^UtgEMDd017l9KSB0$!VSw986iH;sH>{Nt)6!WVbO#JhN8v6 z*wUp!cvmQ0edYq$?P+Ln9QGcUAP;Z8D|ZYZw+#ppoltcz$K81U41UmQ&Gy3tPr7`_ zkTg>6mPpof6b4_gcZoO}_XnZDP~>8e>EJ4-e~RNO0<6FfAHvPbi)YXvO-Pi94D7%#^m3e#yDRKO2kaG6H2(y~A*41p1O~ z(#+;o1oX28Eiuc^?MG*N*?8QZ-nm;OzlR3;Gx3}D+oEkt8n^#K-KkQ5k}Yf+{Cy;h z-*21Mb3k@yya`E`e=+U`x}8}`&`bcm!`3|*P5KP!F=`U_3`FuHsAwE>1}ZQ={}2jTsh3 z7pDjI4OL_y=Ap0jv(1v)yCSpxGr51bsdbUic3KgT$Mp$xyy(c_IMQZF7Z7R1|FqwZ zAl`5uF!c3{WnGKBACX<8XC#4U9Dknlk$YarEDOBZOwM=@di`(rZReX)PFXQfM1?Wi zd_6$CVPg?eN)GeCw|&l=^7g<(!PF;mCof|l2XKc%c8*#k>d!#gdr5gu7$)&G6PqG% z6b$IyI^g5|vSCgKALTzGV@_5GQu4QGOc@m4&dU=Cbw>*Rm?0hnLSzQ^Pk1pixzpnZ z{+iuS!EpX%v|o)iB470H4GjdqW*wPmW2UrOb-lyNKg7}z0cG)S9&QfkhA$0sQq~P% z!A&aOZI3}|P%|TgB$18fn4!H^#uNU~0M1?dGQrOCTrUE<1aqPM3$qJxP`YQ8tTqS( zJQOkAtny0ij?6r;05C*Eb`O4d0yCds0TJZB(+_bWU_C*e9noK846l-$L(*C=zPTDz zxpzL3_65h~%C}%h3ICkCqA>>F;upOO64qo^1n^v|R5CZpKfyT5WU^xnYTNL zZADV46|!u^)9I{Rc_sWVlbR8^nCbmZT3FhOI0K9mv#wdu8aPs$7{&1M-qv+-mZ0(mPBL;)9-ytHv zc$`4$z%j;)rH;Y2bf8G$vgLz6G%SG^F=Vb; z*<22V=ne+g=keb$7YQJafNfEHN*}Mvo1Zj`Q#so<=4SuU1Ic}m2^qs4kVleiJ1P2Q ze0yL-y3)o0oRDPsyPUoY63M)S;vs{FJ?wKmY5{yH;rGruXge`fu3+#Zg`NT!tn@k9 znZ{_}u9r6$jm&X{!etbJ`ohMyYoLByKGSn`DpdsEJ6;;LFM`)Co)(L- zioZn5Y&|-ijBeOFU4jWOwRyq#Yq-h3PLWjq;6sM2J&;4NmCfphc!Lv2N6@z}(2M=h zzHG!Rk=i7lqlkmO|9QCGK<)S(_r&n!V$~x*I5>%mHjbzB_gvL~5GIFR7eFIO;Pd4R zZ90>yAWz=-_qZua>RiKhz2NNq!S-iV)8Sh#SRaSf zlm%qPW)j*NiSv~a9L|Id01a{sw^ylG_3ZK0*>DBMVkHQ=H%a1b>oO1TJ~1HeAQ=zF z`LY?bv-11^M70|Bg6|ahwL^3BT>Az08z7lv#76zemi@eaqF(_i^#^EkbfV!+a;at$ zS_YNlb$ym-RCgM~tP^vrB%HyLkIv-nzh-*c#3V>5!j-5t@`d=r5`<}=5&xNd>gVjX z@K6YT+QY?6=lRM{h}+g5|1KddA4EN5LMaZuyQ24*wVw$<%gftlH|+hynnvhjSj)KB zNdIp*8pH=#b4$u)*%>mX%&u3ctSLpbTgd9L`kVHQHRAXe{r%n(&!MsG-q4T64V-=d z;hCtg;iOpiZ*0!3Hn{kB!pNN-Zi1_(81P7;!=fuVE`3cks2^kn{6Ob~AgdE#xNCx)&1 z)6se{;p91xou+q>4$&3wPWC=EdMe>FvQs63xL+-pD-YSyTwaLw#+R-;BR; z5RlJ;KgMKKBeadW&!cey&b57mZbBp7k+SA?B?0!?cUyAq0y0?#JCMUEe=w?NS8^QO z;$cd^h)2`Vc87aZ8|MKRK8`pN$E()@Zk`FHa3=N!$XYUnC$|r$@E^hJz=w@0Xi|c zkv}dO3LOgui02vUsjqOqo1xGhk!rb5<}v6OWo5JnEw4?08kvZxc0|Wdu(d+TzH%T6Dks;u1f@t{*=q5a2)X}=%jnq z+sx!JAXnWd!EF!usNE_~){AAiB+cSL{;kM6O)69GB4*l2Ke$(cK20vimAMfWK)D`< zo_4)Fyp|KgJik^&!o2%oObWye{vBpBnR4c@-eRj%#KZYkA$E1{1%MKfxj6zK5RX#^ z$0L}&s)Y1X%7N?iK;WU(&J7FOHQyDY^sEpnMCy{pxL++x$njCsrV@(|GOOAKd~8Y9RClJx)s_$ zR8Kdz_9(hO8eN=>g2fH6pJ5oyNH+`ugncYFvi}d&U?{~eC9VOM@p@Oi&20j@8k^S} z!VBos=v)nZ?<%Dow{lDWj9>%P^_PUtd<1U_y2~GScRnzDP}8nn4nn8tyn9uSMM}c0 z{V@U0VVHOv_x#DAB(u&WE{s8~@Oi0LKf?VjDCT;ktm@D}Y1ay(+gxl}><9xz^cI9g zv^wv+;h5`${(|!~>1JwQ$$3MNH5HAP!hzu@8(OKJSHoL19^pB?LZCGs}MdA}_ zEmcT+XnGEQqq9@(E)B;Nc+_C*xGdF;IP;nei6{lrik!rLw)%yQZM>gGQ8FQsb zhmOt2AzOW$I!+q&Ui>iVj=yR3&vL__d);riKvVPY+M|8FW=j?StT=5O?v`YG8Iip zjf={NmBt23VZ#`ju9^R~Ncmky&YWTJa~XdlK4#lT(?EL(2IkDyQ#TAj>^F5F_$y7^T2u=fK`U zjCxa1DefoBm2+YI#?liAL-*EK%)1O83FEu*J|@t;e_&V16by(-9LKh%xlKAXbt77B z#h#L0i?@}^$h13Q+tEs%@Htg;xdsyBRHEf0T^LbL9iKy2HZ0>s?rR)IEBFzAzK1yy zG<4=o^A1DE)qR*hBXyhCK7!)DupnF0n`^U`#w-Kxv~WP~$rT#rD1@hvrO zsn2~u*MiA2FDPB-OCkEM$v3OvGuP6+3cF8LgS^@$5f-0A@vG7{L1ytzR*>#tIvbg1!-TJkwDDu3(z^Qd$%N6y zzRok33IU8`EjvT5(e}AHS?5@T!zND|aCJmTQDk@CLHC|@?B?Uu2+qNWtIoraBiiR; zycS}@IEZbsnU%BRv~GZ=ePSMs=U;7Ie%Z@-4fG^$1%O4#s)NN5Nr3T{_?Y#EQ*GjJ zA^TFK@n);_<3(g@jb0Rk!6Y9^>M54H7tXu=zY;|YbD>k<67$Y?re_8m*nHIpSz21E z!FnQiBF=-G>9M#z1R@@wjIx3M~G?_Ku9FVD6^omQ!%RE@0YWKUvCa+gm zgzX!b4hm7@abmIqzh<*c-9F=7XI{aG+-iO`^40oXmZG6=7I~iW@2+_)uLcP=Hj_eO z5n*ZU`Bn%UVjUzwtY~+vL zx?Ya`1z{r{d1mB8&LYFWR*(UAy-C$Q764q8L5PKSdj7<$)qk^Lu&fH-C+zu1$+<)A*^y-#o{k*S&&0 zn=A_lp$$JhUxgaHYZ^-h7Bm1r7sYYHyRt)IcIk$HXQ}239C~W4BIvfD%%N|^a@pgL z=e7a%O^WdgQ zKry+SX*`onLk{w+krzY_t1_oI>mU07({VK_7Zh5brX5CmS(QvSe+R5|3>41h>bl*W z&i%ZbFD@!>*oEAM1v>LBo=Xi_!)iZaj5{y#&Cjtqmn2DmiuLmDRIBN=7IppVAWvfo zHUhrNoDk2Z!YatGOD5s@qmF#sLi#b3vm$fCt{k|4fKvT!5*NVd0!fjRCWu2a&kdSl z*%xT>U|v)Mzp=uymm93`o;sFk)GgpjZ zr=5q#W?7x(S6TBVznQE7D)O7mb#h_r>UNHx9kT9)`r|_IB$$+z!gWUtWn3`2|A0|K zg?QjI7T2J3Q2dwpGAu4pi394{SVm!)(-qgI!vs>5`*T+hq%0OPg37!D34WB8Kkk3m z-VFxg-#wx_c-aY_xQ~|KJ5+A{Qf8Q;g7*I zfSXPpKN!7Tp*NK{%ocj)3i0W_Eq0CAJ(K^=deQ>c)qTRlE2<>rT###8oNLs5y78#P zQ@QJa+yWhK56&`)&#D!15gX^%8?w}T;au>S-o113lM)qDX_WPOo(pP)4m9#;#TI?B zN7ipeOuXR2e)089KD_VtClvKh?Slu-0@*L7H zI=m85iAJkr7D3d~2(bGjElQ9`ZSv7usGVEu6=OCokvi5*+oc(K6+FlFJ%lMldgrcd z9*@?$+6aA?G${}t4;$11I6gVe0@&F+E;urIQu4KZ-vo}hY~yl;;a#kv%w5*%L6}*- zg8J8}3tKaGiJ3L3CCg8r2oP%))m(=cUHi|ML@=%P(h_UEld|aIHnbIvAnL7$W6L;1 z;VsZGOjYYghkvD#^X|nt3+0j1x_-|cS-xcrz2Bl{mD!=QWx7TB*HOAEqQAeowo3?O zWh`>9qj`AYW5O+K#2|Xb6{e6e=Ss__;dqG)-(Rb5tlV=#Y~1gEc5Ql3 zFA_6Bkh(8dsOag^#|_38RQw_%is5hO`#7TCz_dQsh!DzF2*ec&lXdJQ^9a?zaEoi9iuJ~Df1W@uDR5$6{ zUf01Y=&7*|`5K3vKlOi<^#67=7IZx)?0o;nZ;gv?FZB-QaVInIc!{%g)%1wwr}2r( zs?r;Gf7TCk%N8t*1&W?-Fh|w`*YJwd*$FN0c4#+VyFc=IrrA}h1$-6;=a+t$+~N9| z;9@ILg%bHyO; z;ikfaUvG5wlmYr*G1I<=fatKU+;<=rFzs}_M#L#z*Y>l3i+M1K(5|vrRAkC9req z0h3lSPRers1RL1$>W|@uN@Yr)g;=@Y@IhO#r+mmT)7%RRX$wPbF)(^*!|x-52PLyY zYmU0~;_??ZPPV$?+S1)^Mz)RGF$oHAP1PmaLsaQ1>g#fMHMzza3yCdvZEE`8zOiMg zm>&v5b;?aOp)&DtEmj2hRB&MsBd|>G0$QTr;r9!r(=--el)?^hB}r z|{Ye(r9uOd}VM$eDJtQU z`zzbV$32yhVY}I0{uP4N?qcmmt70afFgllM)_q$=wIvdtMv83iWMFbugZi7Nt4jO5 z@Ab*53KFNOr+m0?amVRb7yFx#SJ;rUg4<|ga|P8fSGzm26IaA^oa(?tY^s>iWX93TG=7O_^TwtZNOsDsT(ii3jQFpfVKto%uGMoS3tV zDTO)Ed*}RWQn_f{C%YA`f*5+-vdNGaxcjq3|E$hN*BAZj2jB9$tGU~QjL9F4#!1Ep za%$BWY!&r2^fX!E!egt^#j21WWTP%q~3JiOPW~FWxf{dfIs!BsLjmPtn zqrBB`F>LX>aK}E~@jPmyol(DRyFFd5RAxFDaltPn$p2=w=XNgO^5s zarI1YKF!zFLpC20E?G(W7aq@@g4h)A!aPyQ1`EZkB5}FdMShwFH<#e^s;7n>j+(1e z5NdV-if{4mV6m$6dcF6Z>XF91kc0Y&DHXFu)Iqk*T2`WKUESU-{uwiuX%@d8hliGN z)|$c3g4e$MZ%@ZNqf>Jh)1^88YC8SK)&O_ zoUfBS!baD6DX7c{6E!)soF7Z{uDxEPi&5@up7P!wf3XqMahu%*MEcw&#%9tk)-+X@ zyN!rsE@zY#9}ASAg)z)ysKmjcX0v!WQ2TW+=2A#9r+ti!0<_bT%*M3Jg2G};mm7A2 zLc&~Hmg{#4_nb>ni3QCz-ITo^aMNGipYN`A62EaBtkCH@K35=~0nQGSTU_ILoKK6A zHuhx!rJ^aM*RpMBZ>O_H6xGJm_l3eq*L*v z8$Fk|98G2Dv>T6+Z}W5mZdbBO996MGMgwBw$BaYrpGxoV?=tyg=w4X>DrW=D@-wfC z;ZL(B{G5of;Z{$Z-Rb`5c#dBxDjz!CxP>o*$@Xo zg_Q{RhYo@EJ@q~mjxsdLOxl}{mkY~z?vdvg*P$a3i3{4_?`imN>5~|sX|;xBO~#c zKjP!>^{jN3O6#o@SLjaeAj|j(soO@i|E1>H)aG@Ms4Up@q8 zG=)W9j`RK4mq6j})jTii4s*l*s=D75;yRy8Q<&2&BHs4Zq38SE&mmpi3UMmH_T%l} z1eEpKoa3{zv!CN4=HuD0NBL_s;KZqIm0gtsH$N`1Vlwb@Q?faha5Le)b?@mERz)bS zDZCSWMbA+b@K${PyqoOSB32(5_V30w(Uw5kCbdL9^_|C)Yia(74T5W=ACuzfG&xe! zxa9M^xTx+3n6OO$neDK`n)lO9LVPeSK^v!8Yf>qX?QCFukosZ_t|3!BdwsE4itw{> zTh(U&C}>^0;H%u=#z*|OCi~9sRhsy;SgzuBGSbWU<^G=2<1FuyTeJf zFuW58HgbKS!R&zd;m&YazT<|VUi21G(Vv3hTLGYuEu3i@yK#oKoPo~D(KU9>Mbp1+*bSE(A&_Z8#}`e98-X9%%lL>936M^#E1meb-5sZnpCc#5!kry5?Ovx~>BR_Q#8ty2z?|DN?){}{pTgi)m4#XZ&|;NdLte{7;7_@mDiD@bki_E?iTb?Wq~O!M`Pr0UDZe6puY zU~PHm;mMiE7U}0<1EA`M^v!(pG)bi z!pp*U&l70v_$JviLCd^!=BA&<&kEwm7X`C`Il8`-JAoM8{kJ`C?msKpYDmVJZ@AFgscuD!NCqlcMZ+3oIKE1YR=T&0Y z)2;mQ_sS{}uW&fzL%|GrjYqZ)G}3NybH0<&2htHml#C^Ojv-`DmSL z5=d%0spxGq7oN$X?xyOe{AFSCaUp zkoA=^L7zqMc5FW{*DMjy;x*#DV0ll13v~RTi3&XuszEcG)AQL&X|{1w_u=R?(~uT- zI58q?33OU6R1%&=0t^CXW#~-ahsIf$Q)4Qk!5b+YvM>G^qJFT_M$t%wMX;zuW-g|* z%-SrQ%7b_)U&(!z2nVLg@C?S#*VYP|rP9Us1Qz>r4j6mk{X$-2rGil!@tufV}7S47td~+ zoM%;$Q+$t*bk19>1>n3KehAfbo`d|`{l|M=`$c6@H`qJq{pTcl=~YbzdxwVKo5}P82>YbN8#PRP4mQiM<`16^dYX5^*vMeIsS^QU8fd)xp zovz|x((-DZ57*2puSeqYUPtg-V*|(F+yOt21lU7_6|F1RBy<8-k+gE{qNMzflm4C7 z>59jy)hl@>;{+sjOyxZBc-75nNaf^%Ks&0k5 z473k@<2cO(vt-&2=QsJbc5U{J`v<~X%fz?_Z;uX=jx&k3t7$)_w?qA<3M!q6@a@zK zLAA)`w>LOi3yrS3`M>M|TUTRnxt{J@HTZqL`BpKR2lA#b@jF)e#6d*N1zN@uFnCb2;_A3iFi^z6kOcjj^8jkG?oKscr1O^`-VSQ zc%r3RV$1S5YgG=a^q#dC@xYGy<9Mv!q~aF+(Z@&{*P0rONIPEdyk{ z>VPxB*|+JYdB9C(ULV}ad02MifPkMS(t_7HW8o>Y(!&Gc@laU0^?0nFjEu~z_0AO4 zpp3NqT;8MRo&8JJyZ1&+qzuDS>q-WfN;6nX56hfcV^2yDQvHCmJJJ_DB`tkldw0#p z7|<`@&XCzqE2v?rF7xcfO#=NcWj3g;KC$j7ygR|X4adix(8?%Eq@rmw{cCKN-mzVa zWg=<9ZzKVFKaxGA;UC!aorg-sv1N{`6+P{5_bGZtf9aKPyU2Dc{RrkBTa7OaHlt5= z%F*pXRi(TK+X%1HVVlvE30J<1{fC3gH!}HT#}bdt^t-KB^@M*pzOhny+mCNn`&FTt zD0w%_xIo|@?xPCF?tZ3Xw&#Vq>;P)At*d(3owQ!6ZPfSf4swi=nSXxbReKwCOHQhj z1`6tE+zAjU2P~UN_~!a;8fehh$68$_3B6tU`Bj(FJ1*QrE!~~MWhR?*QCT_VVX8Pa zd>G~?s7y3RW)?4!b{DRZcHIPeeKYG#9&z$ABA%UYdTXfL{s${e^5MB;!7vcqA$W z)6pBHckshire-y;_ha(rmO1Q>i?aHUs)oOX5z)Id8qNQ9D0{Hg|K>ew9hT>%=FsD@(nOyRBCzbqOO&qnB^g73NX= zx@EH)&dN|3!L!5<3k&Ngygz_Dh8w;w{MIYE83J!hUTx)zY-7u6IWG0EM^)Af3xWe& zcuu0KFTHRJv(pBX8JtTaN8`@!z;uC^rI+KG&TLPYS5?SO*ba4z)M?@~MXd@*w^GFm z?^y{wo~Btr;A8!(q}(DX>&!*tZWtSn!@vedaY+=7uYkiRh}}X}N3Hz<(0INs%DCyH z<=58QCSuO~Gc^TRe$<{_rc=z}dEAI;nj-J%J6g9iET=4bXExoZ;2tmon^SbnK zA8g_OltpT}UQsBci(Q^-;H%OJ3sZJyL3%RyuuAtaz|8FN6EX)(hBwu(K)*R*5Ih{7 z(IjUaz7nz8PG7l~S6)*XA&PtlvFUR>pDK8|kH`&?XSuYh(F_brC;t6hPETgbXAMvE z{cz(?o0!}h#`WJN9?!V(l`Yrn5e~n(pdM z+2ETD!Ij&0dakCVYx%ydFO6-)=W;t8SRJi0%1p0UJqEM$xL-Fk+38ktBc)g#22iZV zrZjVbk9@u`>tR92ULCb_(D^OlC)Z745RS@)R3=+d$T@PulI?rRr2gbZ$#bgA;Lo`|j|09B*q< zs2G$dt|xgsA9JqWalhFg@$8>YsCloGvx$soyl-yEXnw6;F?ar*)TKfr)4dQIZAw+4 z*gTGobbm1yxsc(K7pU9IDYMq0{`Usg+Djpe!*;#Iu08f&1z=+Rl%Z1bUhXI9dbb8b z6z<9)N6~o&$Pd)w&{=o?^;l}#mr=V;1Wv&_U&Xwj&Zr;OjF`4|;C&0L+B(!>z+8NC zsc2r;>)%jBepthNG}A%4KyuQbs^pXAd*I+0-1YSnK? z}=JpF$}<|UagpzK%R`#E3sR7(gt=}yl*FdmobtLV3=YyX zQaJ>X=jSzA4pN`-sv1l14i*vH{&c?8os81Sn_q|KDA?CqG=PFs1rZFKkJp!uvz-jT z7{MkXUfFY}#Qs9a`d&;Xd^wPBAu(i`b2S!!P8IA}^UvMGbLi*oG5c~BYb2a6-M(ap zz47)y`CkUoAC?UO5QB}SL@aVsn4M6M`{ck7;J>wZc`goq?$-cGT_-yGHh#m5w8i|t zpS+SiyqditTw&gh*?(b{Wbp#0v`UyVUvw&+jbHcRtn_Dx$S$+6%dsj0$PUgAm)1OQ zf^ABW!j_-(RGmB6!@JBn7Fh+jR9%i2=N9LqsN(f>GizAy4>wgDH`Uxfc@#SROxAnZ z{|S*wB=n08-cU^`oUUml#w^9m+fP;b@OW1gFs%1oxwtQJ!&+u~DH4eElzcZgKU`4> zVQTKmaOZ*aO`pmoeoaYc9q1UWOo`-Mv1|mgFiRV0G3EcKLr#O)%@bBkj33Y$$+HYUPAi}9yZ9Ms{ zq`fNspsSlXGA%#%XRut&ediSN*jo@%!7`xtcjiV)#{RA`evAd59aMpU#tmnwK@}XL zs9vevnB2g4m*)jR_QYETd_z8`vBkfD&p~f=!da+k7$NmpU1b38YgK;b`Vx>by*LhAIgjT4!*2h=b$ zqL;aq;5}B2`iFFqMZqusr)w(i{ZC=V3~!$s`1^N~tCkYu|Baiy8wpYB+D78ND02?| zkFpXZgeaj!41N~u z|1K^2oI`3?#uvUSl1JQTFNP)MnI3Qr6mG!e^5zd%wZLUS2?X9kB;u3sc}7-(@C;_B zBkiYQMJl;SqyluxqG7SkVccF|i+u$MUv$tK8T{d7e0ctbh>%v~FPzVAa^Q{q^^I>_ z*u*%Mz{J%BuX2F#XtiU1bv+{b0756`&o_gA%4cB~>b0ZkE^1~8yu>sWn$mHZmO()U zIq!)L_V+haTBHN(_sIJ`T7@!;f#6ce?j0MCOX5EZC!=iNOBMeGU_=GXuNPi1|wy z*SKEv9?@;9ERT)X3WQ8IGK$g`f&|ViGZ^3%ZGJJdg8M zPDwS+G4f&1(qtI3ijyNv3B#|h5TwmqHQsD2sroJ>fnQciR_5#?PM2$7Z=kgL^dm}+ z1PL{BCf!AvV?)ntOgenhcrTtGHUs4^4hgr>#a{rcZ$~O0$sK^)0K`12)oqng8Q0f8 z*p#1(0{I!^s2EVSSFEo^TW{pwp;3Bce%y6?o|*5TF}9cvA3h`8=!|Xqdv+5cTyGrR zTH$lA8Xm)$oOw^{d7-Y_oN!XFU5NO2F!%2Jxc{END2$%EP9~ghe?XsWQf8-j41i#r z^=AWCP8kqk;$i1&Xv5{AWGo^bh3om1eb@NVz}FW)MZ$jG$tJ%bNT*A>{)VN5*=m=X zf4|?<3$o38W%)s_3Y!8!-h~$F7p+E7jD#+O4^FF-xh7d3b5rq;TeiV587kNu4xw+U z7G#gt9H}O2BP%x~VPOwuw&23XlV)0=K|pL8Pro7eKDXL)4Ds2u&p(>-CELZi{S*1j zBpWf}&Y5%R>?X&C<(oCEVma-mNxNFRX)7m-uII&hi!v(L*}HetBw|TgCf^X5sU%+G z*OccgmsMYs66FB_%PrcMzgCv$yHLASUx^tPZ_{qRvT~2PZ`BfDe>LYf2@`VNJM9Wz z#^)gS@y|8f;3qauw7L{F>9eEB4VsC!kQ`hwGLOD;7U?gtnd%53;PCF?0LnLaZ+E&o z&sj{=2T%UO5ZTVbph1&OtyC$&H`*g`B>8R%F(nrG={}JF$PDBg9Aak62U$_Si4Pfu zEDw#jNag6Q*{8Gf4i#lv@)^Km<+Ag9o}QtDOZN=;MK=4Tb{rWWrE2RAGzCGRu-R$! z6UoUd-NYq>TFCS^Ws42Etox}7$!M7`2zXr+a0VDvZr4Ma`W-W06|xBIc-dep{64lr z2hg;4XIq^N?oK$@7Xf>&beM%%&3JifY;N(RhayoPtOzMB-q|iSu09E#_wYXNQZKLRqUpI{WL(K!RO=K3xGyi2d zdXQ?oRkRgn(&WMY>L0t= z;T+R+jBiH+>1`Jl$El8!>|m5(s37h|_kHfrB)ajkg@~qCylr7~=Wr!{ONp>~q_bFO z9IA>YiYV@b%zU|LZ&3*%r$a^#Fz`1c=>vqv5hwXaQIKsOJ@(UtMJkSi)UFE~>|W1m zsnDIDWt+`vRb%7;!3|&Z*AC?PL2mR{cJIKLXS!$IXgi%`e7|U-Cq^D+UDp^6LBk#? zn`rOs>f@4x0R`w>HpL8qB~LDN!Uq5ce6*K>+(znhfZd-IbV+UFLjn}v%PrO>m2*lPO{z^n^oE0%LL1aKgr)K`;RSAKH&SIYl_boL^JYy8Lh`b$8f2El9Sfa!^q z?fM^MDc^KfGAuiaBBR-yBX4>QVBO~X>u)LoP5}`b`7RbAMgc1egshrUW`wl?A=#` zzg%(M#2hNLfiiA;EjBtI#$- zbTfJH)X;VV+>V!rUA2pER3%RRbE%0p0j@mz(ONflG&#aMF~Y~rb*P~oyw7*n1>n*+ zDxXsA!%iF=%Idm?Q5dkuN_*mq-^F1h%s=pP4b*Bmf*P}@SuAO7PVY$ zzuW-^3sKiB^3l-m7*^s$bh#y_w?-ey)@FDzOQ7+vXrIlEZ|D!NJA#V)GtcD**R$Da z0wSKy2dB**l|if%U^F%iu#@iw^*z%uVEIAl^o?&|3Mhr8c&kkD8LoKp=O1vy$4>h%|eu_++l|Nj!siqNl-ZWHl+-u0J_HK4;aroD~nssuNzP<%UFQq`jilyTGI| z>eO!MITO2M@q)eDSeK(cXX~%!o_+6iAY>V4Uy#D@obSeP-a!t#8Lg7ZrW#3EuA3JZ5_#&SL0=fiAX0ZUTeH05hB>DTSAr2m~_T3_^e0s0-;x>Vz@WV zTvJLH_X1gQ-D>`oW9^3}4^39&uFnj}*3%ph8K1kL|5sa-mF;$-c^Y6_*+%G+k_FkB zwu8nv1H^wMbP9@Ku4U6L$lZ|sW4@*8LdXu zRnpZjpYa|46X%JI7et0q^kyo(V_+g6@z)LKzPUIm@gjsdi&jGIZe4eX01>cW;q$0K|S!j`Wfwy+^9EQ4LpVP_p*T*6Z$00+eAX4CosDK*}6E)c<|KtF|Z zc>FIsFi44L8~Zr6m1G(pCacaU$WHubL%7GLh<(cgT-gwRXTStLVt$d zzddk5d}(*)#;VV*&nYoZ5L*vkZY!KLQXLV5jpeIi$^UX3%VC7p%o&Wv&8*uon-Zne zt6(w^erD2h#MUr5whDhY0L;9k%8~0xT=q5VE*&fRKA@nB#vC-IKw<1Ivzw!WmHzuX z`|8lyB@zBNUQ*AGUW$}Y5z?4Vxemfj+eKJg+?RyZ*j6BP0ZP>EIXvm0p)S)E9>NRL z5t&2j@rl|8vg50w{Ktgcm~q0s(bxm=F-rBsm=$UE(ZSo=Me$P7C(;Kv<>eF6IOAW1Vq^I@TvK%qV}>MSjG(J#Tba74`fd{n1B+z@8)0kK+FS?tmgXu z9FoM0?BI-!nvq@vB@9^Ydi$u(DNd6HtF=G){4Bll+TOrb)cne^RkD1M)vEfkFfe*( zF3@Y~t@;ZjeSv6z(c$(2E#$qIu0kJ|-Bt0;!zX@idQp9eiSUwp-M&Ll4PudogQAi* z_K$_zmxK2}69)+M;1C0gt;C#dt9Iit*6yZgo&XB+!*Lw?xpPvju}k&*yweKS@g$H2 z#LlJ!5KVCPT&X)yy~(06;(|9^)zPL`|B|GpUwip4Rl)}eG zP&?F7EbbykO*UoDD^H$1xdoyRXy%UUph?Mnid|AgIoEl}zqy*gB!#qpD1M zBaKaP=1e_O%k6w0u3d_z9O0Zcfw9YIzub@}h3>OVywytE!4s1JHE>_dq)=(i39=aD z0pF)x#-iO&KbxDLHGo&Ee4kda)aijvPiAMC-*<^M?lXU3N<}H9t4!(MF!+RX3?ovl z5?wUc-fisLjnff=i$yZp4RhQ{DKZUrFNye6|1KvqkE)pK^q^9rspeb`~(hWl_^bJ+; z5RvG;O`zNIKb1 zSmrj}7oO%ljxtRp2BQm5$qOqB;n}=#sn&x2lPcaB*(S;x4|+^x9Az-IbCxTkBSVz! zN~ZTv?IxFwHlWWoX&>F4Y;R-aql<4~_lq#EbM1$!IiI%j_Oew1qH%<;szRT!&3@v; zd`&wPmcYjr7IzTA0QGuQl~v6d?4E*sBbF#XHk7Tpu@`gaI=0yO)b*D^r>P>^NLF zp4>YaDHe=yRnzb2BcJh8l9#M*NiZA=B=YLX%E z3wquwLmNqPVXwC}5*YVt)C%FPx^fjuRSQzhh&Mb0~;#1;6mBODz6kmHN*Ds&cs)lF-#+eUUzfeNJn7G-QMFbf*FL!3kA{*0{cM zBv8-$4##$;C)st=!WSqNk-Eq7&(;#Lr?R6*ykP8@s!(zwDwV*KD~<)vWBH4%ov+7; zdn!zUx(wI%N$3`@MoDa7s_&C;iT@_zn(97Y2^}MKeG!(u#d@1~+~<5w{&-=1E^7K~ zVPp0uvC3aymlwTK=8^!M;2{1CokVdw{k9#XiMK0u7&^}3{U`iuZMVYOi!Q8vX{g=} zP^1ANPJnhbfd;z)@7n0~NzvxVn~>L`KkBU}mwVi$Q+ z$W{(1B)PuI(Nd4h-+TNtq*D6&5uqyinYmV?=1FJ{`?x7q0(em4VSV_@|lr;I?KST@^C!Wb_ornYZ0A^&L2yva}S>i|6gyH$k9R2$4Rk3YB*tr)4 zaAcpc&WXDyaB6^u7CFRr&fzApiyG zXPs9nWe|^&fX~o2nx+AWOC3ujx}ix7KTjNFQE2u z1QHXgDF$uO&=FnPLi`btdle0Q3&$}H1chf4`XDUC2d92m|coB8ec^9D<9!Ly2B!fE#W)hHL{yhf#NSp0-l9LUojbE;qiMVUBzG!_IG#kUKe!f zYx%e(8~AAvh&%&!f==Li0~&?ij-1w`G@Ia2D!@=m0(i2~A)E-}{lg(rn7oMzpCi`- zU$HGu(P`myUsEmr`Ci43%B-#%MygO>EE(9%d{$(#RQ@Bvvx!oRSqnW9JBmZ;`ongF zo}EgTP2LkFd z*Z7q*3Pz-VQt179>KuSAq{DIHnj!8~^h$Yz_QP2!gO9q_)M9+DY8KdnSEC^HZ{R}M zIP3=-}bg0t#Z0%lKQCU=WkG zT_Om#>!wmiMRmMCTl(Bt@sz*QBKb!UcPGHo(HfM5*q5E&+PwEG0z2ZZSlk%R>XhFtKFdwr6s-@d^Jt&!dH0bqmWLCa4ljG6DkyZLsy8phMyRboS& zLS!hB2S^SHzY*OKt$dM!CphOpu#x~f($Qh@j!(4h*%yM3if$0$Q<=4v8vX0d-cav%(B zH(VJgpV;!qAYF9dhRmx~%GEb>jGSoR?Dg@>D~j&}vG-w%!|_JwuzMk`$niO?3EHW8 z^cfsy&Xs2tNh|<&SjKmm2C4~XYV6gxEbi6y(sMYupNcGhhQqTLis8&ea&nEabL8{x ze*GXZXaA6>?+=Su3*%8jeaK_2r3kZifiL`(5!hqgV<7wX_kE@&=ReG>b>SGi2EhdFKSar^bD_o#_LaJ z^!;n7o)icsEPZSCDiAs_FZ=J;Cmc!#V?eC05Yn(?Uzlw7PF9{k%(X&z2-Y96ABzI+ zq%i&QVYiIxD;dG$7sHLay_^p&+6YNeA$<;ZmQyXEzmVd!Q+@4E{>>4+oM;tX#1=XZ zHBY90fkN3vNhAMLg9F(2w1Tq&21)MzC2hb(3jNq+DgdI9GX10v9yG^U;>L;f6%^z- zcNAkW_W6~E1;zn5S8NruH8>VlcON?CWPt2OE3hL4Zv2*z;exTc5!qF;ZxM|<$Yy{Gj3(XGyf5oy^lPQ)kD7r zQ3Ya+Ba{9Rc=_EE{#Iln_5Pj7J(RK7;(6*sJ96=3&}KaF`%j#X#()GN(tN2I#g1$+ zz&IG+r}tj3DMDn6Z}_*6p^Cr*?Ar-C_nK2@6o&Bb+>x@uSBwwev%^iN)nad62FRvH z6Vj0bR#RiE`C(-#R1hZ~;M(7fiw?Ed!$i&i-%V}Af+xTiy^M14g_ZFo*Lr<3ofQxH zg9NXZ5E)iWqJPp;gcp(k= zLB?DBGoP*%^)p7aXiY5j>bLR*GLk$t>0|L7y6ap}c=QXv9V(uSD+uHYgCML5L+>$} zPWDx~FE55d%G*@}#UBx-S~vA@v|gkprJ4ptQT1Ey%^pQA2~5=`ky(=)ilt$6+`3r! zlc{!+FeY8!B73^VyZpd6yPMA{Fg>Tsts04nE)RbeJ~2V%e+pm`t8<(NHN^YlZ3eKA z8I}PJRiTGx9wT3cQ06KAX*h zC4Gjvz)|k-0_i*fB4Q+PD$+lhgn3}}-{KdOdM^bG2i{49NNhwl0B(*xLSMz6%!t3u zpg-sBAU>Qm>xik?FLZnl{w2B|{KxNV=|XQb;v34xW}R88bvnA__z_7nGrvwmy~0S= zHG(KjJ((5eh*_PNThT%AHpxijD@lu2xCj+xM@OCT&3sO;vf?^+aO`m3ih&L^JjDn^ zwa`k9MNyGSD@krLsw=hZq3jr%z>X1HAW?!9lkG|VX{0jf6F??)zJ9NQhL1!T79diV z9`DH7-0FAHNa*%MyziVJu2Er+N|*&8CZ*!_<0JT>e{`IF(KR6#G?8RFEVtn`LUq1O zAGqDt6j$@E8GD7Bt{L-;zAgQgLF7(okyZYT#n(=`Iv&yg`NdK_LGQ2mvAA)q+*7Pr z|MT-sUM@=T0o<3u-b>cL@He->2=L}Y^+2%t+aza3GVRPM8Tt>!S#%+yyF9IHpmG~# zLaaoK)(FvqENGc7_0JE}iy-%zU(#@&T7^%8t3`kBwE*1Uwe1_xIf~zZl8Vd%)URWN z6q<{T%|sO7zlP7)WUeco<2zOhMHUbWnb5?+AK|@oVrOd% zR#@uD-SKV*;qw7}&+sr(q`96?$H84uZ4~IEX(HC2f|*57x5Y^Cf^p7kf2*4*C~WzX-H?pdjbPm@b$b^JnCcP|HGJMS+HnF2 zo2Z0k1&gA(k0c!a9gw~tq;_qvhk*_j5x~B-OGHOXg@y|B`Vo=F=j8gBKoafG8*qZv zd|`b}i&`LbGMEV!u=^|}C8zTJ=I)T^sc%h8^AdQyC3O1deqdDYap3C71O-%?@VuVZ zT70A@9TL?e0upkChhBv`n$utHc`IlV&zHENX(v0UK8Ct-dInAV?7m?6@gcN6au#%0 zsU)2IBbk{9O_FwG!VJfb{7I3E1F;#baG0^j^bp>f@66dsVp=5UlJb^V8zqv)WT>En zAwy`F+S&IxM)!_I=YJ!iba+1WsYJp<_M?nm_M;+WhMzwa>E%Sd+9Idr)~YOZ)bgf` z_*w-8Pn6A*hIm4#U?ZbCS}%M%fl*u{{u`=_}bo{+#TzSEvO^a>4(GgrQhp=Wq-q&vqiV{O!2p4wNE0a@Mzh`%g}Xi_iL5o zjzcOO_E-(~LFDMhbiXY&FfjBPvJ&#}&i)WxSBTfpM(H5-4n+ulJP5v*sgJqT#{RO% zjiG?~=QO!amjYWF^71U%AP9*7H*#+;SCbUzOmW=`vP2Xw-i_Ljh)T-)-_(%GkMzTl z|5_&&Bo>AATp=A5SrlP_yWMHQe?`Gmsp?4NxHu3~~|+3KQC*kg%}`i=bhwfO3owEhq>x(?HT@ zl7x3ehh?IEy+gUy@BSd(nLv-pB4+HeWq=R<6c}kCH9qcw8C07{^(PB2ThI;_OW-hL zr+C<|pVtZvDzJ$hS%O(lEefu8m4SOB^+1YgRD%r(Gsp zcM-mX5DZry^gB(qx3A+~x{foxER`@X+2gO{!8EJ)l!KwP4)*9ACF?1>26TV@{f=3QZ;TqIy7>)P%RfIzVXQ*$wre=hr7gvzc?;ecM^w!CELgA9# z{vg(j@ywVgT$9Y&!DSh~y%Y;*>ii!1Z|;)qR46hgw>i~}r9)9HaM=ZTy$-!JGrvuc z(f;FSsLvkEWbnluq|wxFW(U0}1?C|xG>}gUQ~a8V+TwA=j|SdxjF~~ll^_0o8q2WW z7gAtkf&ZB5vWN1q4I5UjfiyWY1Ns2LmpUp)F9p^JYbxxYkiGyOUq(V4-0CXSDI)r( z2_WkXx#%fOY=zcMkc3tOd%UH%W7N&d`rB}opQUP|>XU7_edf_rZrqkOllH;A^%;3#t;x(Z5?P0P}D7C-U13AUmaH z7|R2vot7yQNkq>xjF>aY6y5B}e71%3v@Ck!G|%Jf0<$*SbvsNxk2Jf`CCcZYl;e4^ z^T`62!Xio1S_N=h;Q8ch$$kE;9Qbv><>7Os)nu{AC59FW!u<6jOyEsk5*DfeB6$h1 zSMUWw;1*>-7@oFy@0!1y!9gu}^DcLdy-XmoxkIw;zkkBHOfkQ+j?Ts4 zh~JvJPB~1%hr5#S1#e$J%1^rEQMyuNv}(YggfXPKizQ+v_3wpTjv%||RY){)kmI76 z6EFO7x^8-uQiY(xo~ei7dBIzNRp-_r(|sQc&#+We99;x8_Q~|Q;2!c>R3biSxf6tK zkxk1G%V>CJ#aIxmbQK?@%x5H4<)(boHyy4USC>at7rEJ(ub0Mm$(vrs7m{2 zL-d(S1y!yNaqcrrrgbK^Fn!i@A9XQlppGtyB&aOWkNV_S((70O96$V!pHQw8z8_9_ zFs5w?x~4T;pflyF-u?9B<+TR-DgCn;IVW8d&C_4k>YAg|$AM$-)bjJK8Z8;$zbK&+ z%)b2=^LAm6^HCe^Stsoihosei@;@Uacp>V)F!&P2>+nWdRa~}4+?e$QUb2wmvU$ad zsO>*EVXXHGO77cOqmoztAny{&UmSVy%%78rt@z`mP!gFP24;?5|J^9mG|#)Qm0WXv zgGQ!#D?q8PvDRA8{_9qeR8S}%BqR7lyn>0u^wPypo|JW*e4(k*F&+ST#{o*|F)>*y zppL>3Fe&63gkK{YLW0-VuP;Xxy0m059Rf4$=aggQ5pW&sunJ`-z!+S3h)OE66I2cH zN#xlNvPq{)J*|rV3MZe+Om1H!)e%Gt&3%oe#E6Rj>w97Xqf(l!a-P(vNR$jeJQN<1q3?2^h~8S&<|P$Tzk-J6H`^m2Z_Cl4==`!0HdV5HdubP3Nq zl)_&BvXQdUF!O`GVa22(A$`I*(9HRU(L;J9nE}Q>&~HTOocA@?Do^i6vBO+^(R<~~ z4N@7q5X!MHklZTn3_Q(h?i2qckJOmB)tBDV>-wid$))qR*iyrxT88p7a_&m3ZK{4bf)O@;Mk&;c6!(p4IBY?RT5;Zb;7B z`@GKe%@XCXMWhU$Km;vC5bm4KkG6#3uq0MmmmacibH;jkBi3v&+rZ1^_ud-}Uy%G; z0toyHFiD1a$MNus()84?2gJ`jjNgNBLNHP~7Y^&~7>gp~F{ zoNctWK~J%4;4%8W+v(6xI_$*e{i}=@SHw|*j0TrD9l_cc4hG5wf$``R&gOM*Zvq@J zn?)a4@Ez$&xWg0mFF#F;tX9^ISZrU%*}VLQ%yK#s%)2CE(G)3}Zi}M5!(rq9(U7`l z1LaU!!~9JjU7+@+@8^cw^nQQG$g?eJoUGzvyXoq#jaL<}6Dx@wV2qFqh9wpv>_@g% z1F>J?l}G>R#nNYU6cXs+X~UF+c!W!!65}sm(cpiIjo$XOI?|woe3I2JcanFjb^Rk; z6QoHWDCkP*X#>L<0)G>Kc!rR5lHLcYl%+Djbm=yt;-&dt{UWMoo#U#OJ~3UQdC>W9 zptZ^np6x_TO)~k6xT(l6gS=@#7=#G040tw`#TfZWq%xZRsu<%H1O?3y;C<8r< zc-mvb*TUc9! zv(iQzgTkgg%0mKK`U1%}^TKSH;z!F!plXr;PaP}Z{m)Ab2=G=+G@)c7fZXj7M#A#Vff!32xSQB zAv0XYk7%ga5PjKD6_XZrwiqE|G#Rm}0ehKD)jIA0jXEU?A2&P4Ij`|`Jc)BQZ*NFdLZzw8fN*BajiiV6gZ#|;23v4(st2p5#-@PRP^A;>fJ~F z1Y*LA&YM;nJuGW(E+#1u5#)D8G|x^YcK_#>&Xm{-zcguwe0h4tuOK@s9%4&)Ot~hq zQ#Mw3DH zq}wiLoSpE+V_)a>^BUyJDtgtrHz;@bbhY7BFo=+o@=nm*92YNSL?R~qOGSqe7f&KI zljZ~jceu<7P>kb_F0YA!fJ83T=SxSNLqTNZBM`$S|F&#rvILj3!yZ>Zxuw_3!+o{I z^S)QHY}xQPrd`$q&QPz8R7Y2x-cN7e!mB+f2@)92HSsj9WMva=vbMOtaHDT@A9e@h zKRO`cGqN9_Izo4d%9nz?XGHwIK!YJ5rgI{KnzJ9Pye1q38ME1Z1_V9&eg)ihx=f$) zDVOOD7FUa;J$zaR;8quY=Kl=``wt`oi&$8Xf5Co(9gm%NMt~E%>MFAV*r?9z7j@t% z!_5MF?=C#=BU4dE#rmd*g+QIz3R&8W=z-jAPzXhfdEEos9s{?;#^;s%^M5EzkYQ<8&;iY z%J-s~?<;>Tf#5frol#*wC%1Z>>`C%lmuJBpNArxp_MdnnG=v?ik20RUnE;d7V&avwymx`zLs;P1bvAf2;Q(dm9?o=}#|;C$&%kv4BMGHOxY z`Y&BWcnaqHyNmY#Q2N4P^j_62uC&C~ITMbB9D(~fK2!aDDA$#mY~0oE|NNB5#Hq2d zPcTm7LMUz^?V%?}`=4^7)NK})LoReC?W-;BnD*M%L;Rm1MI{a%XR!y!>+J^LleI!C zR0uEs-I)4P+RZz60ZPda0FY$jiqmX3Y)AZcafvorSnhH-Z0kbymfPOMKA%O$W#L~+ zxyNO-xo|_TQVRsWrTOQK8Yfy)&`CxscAcayy<8&NX^)M$$UG5W_JEdMTc3;+R+Q(> z=KrJ_Lmll0vvR*ylJL4_%<>3q-+&=tmf6i7|J<`^LGH*~QqRo=`?Zr#o!)boGMj6`~#gSaXLlqtF0+~Lh z88^A;-uk~@O#b@y&D`82Juq7+DA6}u31oC=}O52fJqg=ZVj z%7Z#}4W&Mlz2jo;+5$+fCw6z@_wU6U1V5&yYMbO_eZZ=5V07cZRK4K4KBvsL_T5s}ck+0=P z(}-JKPhTI1DPi}?X6jz(HlM;TiIN4U0-M89tGp27x7YG{XP-Iro9UlLuSf$kLqQ6c zd(RRvpV|^^)_%D~718W!-30y+1>TWsb!4_c&822>c1waOBrS6Xn0Nq`pnK4ADqovH zcHq-D;(xzj8%iFiswwGG5WOGrhg(}1wsWKEPKnabkNU~te?uWS|5K{QuuJ44W@9DCQVjDK2u!ve%0VdN#}d`0tT^k?t~}a5=h@8MQhxfXC&IzGkRtNt+%0C#Q5`rME*8!zbsfLI zppZe+>@pc^OgZ~-Xj;GnP@WV4{xxT2JKPQ7Y{&Z`vEEP&OTN|vD z8doC6NYT^ONvean1WLr_p}t{u7xn+}hn9{LRotOkgaN3S7-P?t1`Fj&o5^KEN^wtH zWwA?7ZRdQ|(SB|Gcb~2cOi|q$QkrTbO=r|3)6>C~nJ?dAObfXeIR(x^oFiygKjVkF z>_Bg`6I1g2{dP_s7f%Y-e*WLXJG5T^n!2Zwu;XXpR)jayL~uJfnPYZoq5S<-EEpYG zoj%8y8&CK%BxS(SrmunANjW*I$XUXFYhzjT%&PL$K6t7#*xCWPoFvRJE@Zpkldre? zp#zRJfMrbnI5tx@w{e%dk8E;LiiA77NjAMfAWV@9-(2!dP%rLnSHUxPUxGN(aSxfF zplbI$5;v38`BJmj(kpzTPAf%wyCS90Y5u`XK5$a84H}27p9cJhC>Hh0EH`H%W|o3t zJ#6pw3YjB@nKzwQEXCZzof*-Z9MUz1nB+wG7~e6QjNS44QDcEVzRqx zjTX5K8?F@pd)ffRAqIX6D2EE7v_xNSZ=Jk7moUM&f$yDnT+Ol)N$!c0#yenbHtS@_ z89joOAr`MyDF{{AWTX^bYqs>l#YA?_#a{Rxf0fJGB#Ye*?_<@VuS(ifLtI)d5?=~o zT3hQh?LBI+oioH6pF}iR7i=NzL^${+xprktc666y#N`mxNQ_HQrPlE!;umH9IgR>n zgi584n!SO!z3YB%-;v&EAitiGyrbTzc*ea^bZ6>@dx0>OB5m#kPL!F|e+0T}9cvmy zKR6_6>zc(4!nYeeZsOvSbRj|`B!Ui34nanQ9p}A6cWfT;ditZKSR;Pq9E>#gE5)|# z{vKaIWUDI-+IbjLue#f3c9$_DG*#H5nEm#XZdC>FzXigZi~0w$yqGui69W1h~$T38$49lJWj6p9i9<>c#ryuATHe+VZW27 zf-5RuCO5ksdo(BSe(V8v+r5vnNHfcu;y5yT1KpGkc6?ZFTE^{feuS zK%nyXCAqA_oS}#Hf4VMgD0r(sgzCaJw31|Ih2_BD7gT@Q|f&3to1*IhiWO z-E6IVscF`jnE0aJTrRiN@srs(dj6kfMM=Ti-R3JH@9Z3ZqO6vPySsttY=2Ndz)P+S|ApkAA)i_QRx zExYvug-GJd?%Ts+BP1{xi^LkgJfZJ*XVGp}b5R;Y91f)=*6~K_>JUCp3*Eah>hLY1 zzfo@Ii)`??JO1a@Y{Pzoi8sFWRZqR5x@lfrZG`LcCA<0cmAxm!-ZwNFG1G_*i2|0k z1FV2NzcvcY5&Y8Lzg(yr)Z$W`|2&t3M4#Zmoxd-{y4CDz?fBQ+%@m%D)5bQQzE3sF zt?5;)3*4s=>>_G{M zq|=OZCF?iN$ZMF|FqF*+WxCZm+{f& z815hS-seH7c3{q+=xV=K?FcW{y8_K`{H`ea=B-K#|4zq}Cj(-a!w4x>sDJx$>ScFB z&iCWJBrYcY*;tdt#`i6kC|;mSs0fe`MmD%aO;@9$*o~EKYY8PKB^T7qwHw7ub&40* zu}F2w9QWh*3Qt8zqxafcTyuAF{X-DHNVrVfkWs3oOSf2xOZ$Fh1UPRGe|xu@nvSn% z;5iKaZsQ21J6N>S1s_U6m?CnaHdC}BZ(g`pl5`eND{mq?elD`39!B2m#)?&xwU{cu zdtKur^?THel44bRcksooNddvWL^G;VWuL%>?qZA3~PKVNYcNAoOJ;%b}jiNjT6 zGwM4DMQ4@VV6K`#LsOUsbHg6#Bo_oSd@z@W)KF>;Q>-W&!%yAo=x%qm>pe*H@yryV zrf5=gQ_4b3NYR=Ei$;z&?f72RXkPjK`)gv+VXQk;)RL>+E@GLhx3D=7B>>cvQbz{_MLLVV zCr=i3)n^x>rkogv-jOUB&gkQ`tOV-GiOsjjLN(AA#CTiu&oZjqAid(wF#y5 zy@o+0M0O{V%2T*m3q5AGMNK;-wev#$H*&5~vz_|j2fY@DO&q;c@~o6_$s>?|a&qzy z{~#@@c;56>{oK*KP~1KySxal3D-w%B_-RLn+$C~?v4d}vGCP2f;dhk>WS@Q3VW(L| z;o`|q%c<2k`PDDAj=cjWkIfUXa{bg?>oU*mmm*u#ze4 zo89`iY7|B5J2c$n2D;(1Es?0dRKP)|wV4YA9Mml`Q4w|vii;vW@SVS>wi5^=52cI!2QuD~RZ5nH?h;(rOF zUd5urn+R3SevI=KgWstw|LRILUQQq(1A{q|$Ve1?L-&KJrc~Y~BH^BMk0a0bE64i= zn)&qj-*?7E@I({)h7XZ5u8T=)u(9FhBg9PN;^#FWyt~3)$Xw9ar|~Jvn|cx$|K<3` zb8c2t1Bt{ecXYf3fsB0o>K9t{l&Bn-l?6%0*Tm@#c=%VXAS{C&By%-vZ?DYN1g0O- z62;T}ELkXO*>ckOv9}|}y1tgR*o>-*8DLjIF4i3qLwGn0FZuNdD8=L^vZv@dr)GuJ z_OCO0L_=nNy4H6$<5&e~ccn$2T*7+7($!9#A%@tEl9Bcj!pON>7FcoigxxwBEJyzpa7VRCl0Nf@0F2ex zF2)PdA8rahm!OnjNCSJO>*TXjty#1~4JUKqtRO(DD>i zF#yWh<4uh6r!qiZ{jxU7$<`i`l}nEA|HzgpgaO*S#6`R-gMke$0iy(ArrIB>(t~aS zjSe#er8t~bF$Vo+VHa$Sz$~BB3^62=kDVXbP*hb(#0!TKtp)or+!UlZc&_{&7cS;a zXgoKH$h2k&@ggNPB^3(}8;HCksqR{`VmzVdO8x^_$0c#ZN$I3skhbP*C)+T`GX6|- zKe_M(thK(buCqur&sPGHyP-RAU#qELu0)t%eKJzI*KdS4Ge9z9)@nr`(!QTU{QG`( z=ZD%U!L?+y=4C$tR#`zg+AjH!0&-J>&}S3!(F)QRXozLahY-BZv^F{F(78*Y^aX#& zdPvA?W<%q5)Gzn7^dBU($=*siZ`G!0NVVg`bgenKBS6EnLSXxlm6?Ec|MBTJl@7V3 zveIB*`x{$#T5O8)aq*`_;3w@rh;@ku*NphNU~O8GHvilq7Ra8y#{&?pDgl3Qm3>=B z#`C=^XfMlI*oGIq{lD&!g^^UV3bVEIE(#);Wx}|}(o?`wo&9*vQ%Ne>CSylGndt6T zFVcjgh6lE8C?lO$?nn~)2YvTex1(0+vcadSWjni6=&)!;(bQYa^)-7PJ);v|i zk=8BeLy!87-yk_wRObLM55k!A7Tg)(!u<1Uu>18sMJypC2%4o&dFnqBoTbvmNq<)Gz6uc!{t)~(c1PoqU|Y;$ZIbYhgHn{_=k0&* z*C2CF3DUdGq1*aQ9tcl0Ln7?a438b@T{U4A9&!vW&=n|G^f`;5eFrMC@i9z}1q8hE zT=@M&{0pgyCc&~XJ$h=}oJJnD&ClaJv@1m+e_-sSAE(E{LGnu&HYdq}X5_ONTrYYt zW=A99JJb}N*7??G4L)*6%HrrN;LC%U-c{fQ9%*op)V!UMypT-Y$c)TAuDl7z_!yVm zK^f>pYyo~5gRvhM$OgKRE;(c;BgA)HLsh9~J# z^S1U6c^~5pE;$~ei+lNm1Ley7=8*$~(&PLexh2}1B7>(Dlx>St<2K&CvkxJq8{8-! z>*x3uy|H0K*bot)osy4z%Z?+iEx1te1z}fAndscE)`mVO!K=DsYOW`L9|S<#xYw}* z!^a8^-^%@HTOxw-E5as%ZU!8a+W}=?jB)cJoaX`iUik2UYA-(m+q}n72H~3werjPo z#>>F7{!RGXT3K#hex5&n)v-N)BSZm*1YhRc0eEufOB*xbGkUgxD5(9{D!2AEb)(oPMIM=d)`@& z3FEgaQ3gd8ItL1t-MXHEz71J^pl%#4n5!r2Q94b}Bhm>%kaquBlFMA$mtD=gXtO1K zmYC#eEXY;Ed3_!rgcofQ|C|eBH$-o9Xx+!xT5TIcEr5gO%5`t%NiAbl2{_{7)!R=a zBsz)=|7d;Xi>f8ahGKfGuRG)El`)p zq9aAC9*o?8`EI@pb;pqo?jF#OAIn`9id}u>@D}O}sr`QRMr=76Kf-aH6H_`ZW}eZu zv~vCWrclKVeZFaveSCA==zAhNWc7#1*y+$XMjEX)eo`1 zjqv|a^iSgxFb_q;GDVW1fVUy^B^Q(5o&i@G9?xvmlpi&N=I(&;3LQ4Rf0$7MuS)w# zd3Nj7+dh1MRm8)3D+@OAp@!Zyz?n4FIC9;~_{b6U5M)Wv!}L0N=#v!o}ng@Y}RGaddI_w^`BXw&-v_D{f>lP<`>7LwEJb zRNK6U7(*xN5F4diC{GV<|42#E$Gv;6(1rBp*G`fCF&oO6lD$5yj~kl&q;)Rprx&_w z<9ZCQ^8P#1^Z%EG{J%3=6Jz%UIPXe$-L9W7bzNkV?&^zb?CWB<-?iGW7zl#fZY7U4 zdPb2QNvY9&b(}W`m+U)tTkNy&`XTzA-a9s?UB$+y%iMtC^b0=@o|zUZ^{KN0n*|P} zqlc#&EN9&tWz_AwPy0^yZ>&%^bW2%Tu9u-!Tw;YbJ=NSMZL1odr)YTJ9i z<^p`#`WV0fjR24n^1M46IBmzFaS{gtz&&c3x7rupN3E2aL|Fb0*(NK&P8R{3MoQjC z`wvsypCj~M3*zx|w;o<~C(roj--dVZQHw2Y=i6P~`4VL}oA za*I)bf`Nx;i(D8kW^R}Hi6)|P&Xfpdr#nUe(AJ&(n{Lz;;BL}eiSS56|64jJZnSD| z#iwMCNjTa$HJy)OZYD+0bx$Iq(3-ws zHG$pG;0q0#b|MkNk*6#KSft9uej)cNg_;1AFgr1mM|vD; zW64BOQF5M~o}Rxj2JBJq)=3cAo05>WH*rqqQC{f#6`Yow`hJa0^!3X5zR1e%?jk(6 zkK2tTC9BLCZXIT)jdv}MPuwSa`Vt$mC%NxG;*V%LR$0Irc z(VFYfa7{R%IGwiMbC{_bIm6l9b+QT=^Q#Nip^xzGp3*BnYt&~kW~%RX`bwOv_5BAa zJ}#q6H>{Ot*?`3)7p(~Y;?Ka4y0c9Xfi+t+P7ad_cbAZGv`H4Yzg)~!g=h0?Yz2^7 zek{N`F;=(FI5#=`9UAK^A@1o=>Sz{sCJ zuGZmw8@IDuNkBfD3X$yq_Sd-da?W3@_D-FFnkN)_AMT6<*gGzdlaO6y&2<29qT~U< zvm?#&Ok<9jCPr6*1K9y~hvVaFS0BF=kXAM<>YU~kFAu0!roj=VB}T6;)6<|i>BKC@ zN81f{sgZ*GsNci*A|I@1lhEmUr78<)T<=ATHc~S5_h%~9onqB9cSkP5@pA;$^)sM1;YW08F z8!nfq*pRQCAuUft`5w43TR^Y(700htOw!^V$6~ci78$X9UZV>)MxcKHjo@y^^kx|}n11T&4`&YDIOTfpu5r0F@ zvA8Ie2qtLSC5!zvZ+v}5ck7>udn)hFlwg`0wy9^d;Qx?;T0-oBEFe^?Ar67F;Pmg@ zMBl(`knBljlo9@VZY$F}a6qs%_wKjPF^(F`WUEl6y?!qhwWU&je_tQdzV1c<xQ=coR}UE^D|+? zm+>-AjuCoG6E;c;4383dd4Y02?J$MzWr>ZC+MmIa51DRYLp7so<=TAN@hHf#t_7dm zD=^>R%dp3hqUK{rKv&XZFZhlL2?DhFl(d<6Y~K)@{N;O5XV( zesF4EBD3W}PgSK9A-#X+V!2LQA+u}1w2_*eTtRxL-mO7@u+*ptvSSE{MUOv`@waSd z=Xl`>c&a~UFhG^)Nu=JsDa3rvqSdq{vm>PBpwn+(2$BlHOcx->bq{JOCjA-lmuP^= zfPoD(jxW_Vj|Y1xZhlNr{ym`3B%jfy?HVoWX&S=qURv~V%J-tT=J4E+!9!YNmwI8E z@8qz6vj)GqqQX`?H(Z)N@@r6TPB%L_0RnFi)Pr%N_(M1as>9in_L=z!i$@%OYDIC? zN%xmT>AUrM#kuiwz%~?)qs>B@6eCx0Obbqbj=fq3eBBv5a4r?nXrPxvo(@Uz;I_^7 z!S)OVehZzIkH6Kz<{*EgErs0p_!GjyxY=OuLEf^-7Y@ARs;Z?SISYD|`ubf%&=)Y8 z5iY|zVB?tcJa!VXLn7qz=ehc*-eu;b+w-ZGX8zV3E(X6=n@XF4sdCx=DzAh&-hV*$ zxBFWHqgXb}+nZU1%Ld)Rz5Hsw1xuZK&T|R3Lw4W&tWY6upFCEgjxvVf5;(#|<;Akz z!-UnS4uzgh#_liESTJiPlb!merkArmS1}}-Z@n{X@?W$yV_|gUK08FDX8j78(-ZsZ zX^tVYf5uq$anBGQ0s?VxgHnAjmkmg>=GaiP`*d$3=Psikj)^&$MpBu_;%KB9;5VcK z^KlU(%+BCRL&r7|Hm~fzdaxLNeod%#D;X(^$BelXh7Vxcdwh#{cNBpQ<5!;dk55n8 zn7x^dG^`J-l0stOo}y-KWRQI{(M8r}VWNfZ<_wh%{@y^y`^!VCQR&N);$`6=b+Q1YR#o4j#15l0 zEMSAS3|D$%d20#qFxN$YmZv;B&D0(Ko=L|#`0@4Jm>EcU<^?#yL?YNihF1HB2xGcL z1;xS;nn<;A-hvpWYx5@LvnQ|9s2;J3IKQx)Osy_9Q3YKa#Z929?=9FS zI*av%T*sHF2#@SUAFai|v$kNj24@eIY?#OI5z3nsu?dsAl_En)=*=3MxmzQf=^Ee; z>y~i=vU8Tlt))Etevp(J$Z4O%Pbs?`HhRm%P=Q$w>S44O~4iZ$!Rg6pJTYid%vUFbYEQlMEq&5=mDN)u541E|p zN;whqz8K3L(>mlg17kn2CqcW+_3(*AOF<-9hQA=2IJYJG(6uDj6fX2oC;M-TLn}Sz zpAnIY=xLC|)feCKTU*NyA1VT(k1jx1f%5c|M9;Bm)~~n8ghco&EjPLc49Q3UB73qt zH$pbJnOW1}sN2HP$&ONj1>pMagPt#dDRvq6!4cx&E*-w(=fqPWwGg%$266&BcH=@W z@h*2WGi=v_82l%=(1Y8&t&)Z(sc&v~%X7oFnMk?`pYmS>N2h=v8R54!Mv?cP3$S35 z66JJgz)f0ih3nQkq@rJqo-6nr--;$tcb?v%R_=CF;?c(mxb-k?*8cOIq1kBDcw+fO zj2)lU$7k}tb251c*w8!C*=J9sZ*CkOfdYGk7Y5J}t@h`Gu2W>gnOiLd;cv?D%dxiB zF{3=0wzqN1Fp-;7_(g5v3#)=qV?moK5ccjK$`042@A>#zm#U^pgVQy>hl|5wn?lb`^bfbDX>558i5IKc2ChxG` z-FOQjxLyWi?Nu=BKKVr5t}8iv*6QMTw5a=`3`!Xd^B8}1eU&WZtEJ`=ddfDGD#3Qv zH`vWg=8)Y1#5|<*1)cDq#&72*>27aKKHK5g2ju(D-4ROna&T#sgJaH$ zv2y$PI%>&i@C~>dVwZbldHn+ZtFqz0q}czX?BU{F_sFhfGv^%bNgD+=prv*kQPIcD z;SpNU3!5K)`p4&Tua!#S0B!R_>LhH{3wqOaW$8l;KnVpwI}y-~VJK?8Dt~zSfZ$%c zY%%lGvcP?BChk(^_SOP0kpWHgeohvw@E2*I$T9)XnEMte(9$l+d*E>>nWG%nUqo?x zUy^ZuzwdJ*Wej4?N=e%DBb30^UUwHO-5Nf66JOKo?rTe-1d^1nr0V3>{ZNI%)3MKS z%=|gP9pxVbPa<+w;CAfhNto@G+A+T(MJlD=Z%l&=Ah_L>z zg0)O!W{;Xj$<%bVhlzxohjaySkzc35v-3L-A%|g`*V|bVxW+}s}@Am>W~rEvbfGxSm^7jq&_Uy8cvSOyo0mwTtt;THCTBqP%wpuJ@8y^i_VLF32fb8iqqH zsQzQ=3o`g?dGFo&xV!M_cnbJ?lG@KGb|CAC@;a=sbtZ;VDH!|M}>e=rmY; VK7#HB^#J%$R?v{IkbM{QKLCAMG!g&+ literal 0 HcmV?d00001 diff --git a/Writerside/topics/04/Rechnernetze/00_RNIntroduction.md b/Writerside/topics/04/Rechnernetze/00_RNIntroduction.md index 671f651..4618fa1 100644 --- a/Writerside/topics/04/Rechnernetze/00_RNIntroduction.md +++ b/Writerside/topics/04/Rechnernetze/00_RNIntroduction.md @@ -235,7 +235,8 @@ ## Klassifikation von Netzwerken ### Nach Entfernung / Distanz ![image_607.png](image_607.png) -![image_608.png](image_608.png) +> Schadet nicht je ein Beispiel zu kennen, evtl. Klausur +> ![image_608.png](image_608.png) ### Leitungs- / Paketvermittelt - Leitungsvermittelt diff --git a/Writerside/topics/04/Software Engineering/01_ImplementingForMaintainability.md b/Writerside/topics/04/Software Engineering/01_ImplementingForMaintainability.md index e05eb0b..99674d6 100644 --- a/Writerside/topics/04/Software Engineering/01_ImplementingForMaintainability.md +++ b/Writerside/topics/04/Software Engineering/01_ImplementingForMaintainability.md @@ -282,7 +282,7 @@ - Gleiche Tests, aber Store wird mit test-doubles ersetzt - "fake dependency" = "Mock" -- AAA Sequenz +- AAA Sequenz {id="aaa-sequenz"} - Arrange: - Store nicht modifizieren, stattdessen festlegen, wie er auf `hasEnoughInventory()` reagieren soll - Act @@ -306,5 +306,71 @@ - Alternative: Give-When-Then Pattern - Einziger Unterschied: besser lesbar für nicht-Programmierer -- **Zu vermeidende Dinge:** - - \ No newline at end of file +##### Zu vermeidende Dinge + - Manchmal benutzt ein Test **mehrere AAA Steps** + - bspw: ![image_609.png](image_609.png) + - ist kein Unit-Test mehr, sondern ein [Integration-Test](#unit-testing-vs-integration-testing) + - **if-statements** + - wird schwerer lesbar + - sollte eine simple Sequenz ohne branches sein + +##### Größe der [AAA](#aaa-sequenz) Sections +- **arrange** + - meistens am größten + - falls deutlich größer als act und assert zusammen + - extrahieren in neue Methode oder separate [Factory-Klasse](DesignPatterns.md#factory-method-virtual-constructor) +- **act** + - sollte nicht mehr als eine Zeile sein +- **assert** + - kann mehrere Asserts beinhalten + - eine unit kann ja auch mehrere Dinge verändern, die überprüft werden müssen + - zu viele asserts implizieren schlechten Production-Code + - _fehlende Abstraktion bspw._ +- **teardown-Phase** (_alles wieder auf den alten Stand bringen_) + - die meisten unit-Tests brauchen keine + - ist meistens durch ein anderes Modell gelöst + - bspw. Mocks oder so + +#### Good Practices - Naming Tests +- aussagekräftige Namen +- häufig aber schlecht: + - [MethodeDieGetestetWird]_[Szenario]_[ErwartetesErgebnis] +- Name in plain Englisch besser lesbar +- Beispiel + - _Sum_TwoNumbers_ReturnsSum()_ :( + - _Sum_of_two_numbers()_ :) + +**Guideline** +- Keiner starken Benennungspolicy folgen +- Benenne die Tests als würdest du es einem nicht-Programmierer-Deppen erklären, der aber die Anwendung kennt +- Separiere Wörter, sodass sie lesbar sind + - bspw. durch `-`, `_`, `testTest` + +#### Good Practices - Parameterized Tests +**Motivation:** +- Ein Test ist meistens nicht genug um eine Verhaltens-Unit zu beschreiben + - hat div. Komponenten +- Beispiel: + - Online-Store mit Lieferfunktion + - constraint: frühstes Lieferdatum ist übermorgen + - ``` + public void Delivery_with_a_past_date_is_invalid() + public void Delivery_for_today_is_invalid() + public void Delivery_for_tomorrow_is_invalid() + public void The_soonest_delivery_date_is_two_days_from_now() + ``` + - das viel zu viel + - wenn man das mal auf größere Probleme anwendet wirds nicht besser + +**Parametrisierte Tests:** {id="parametrized-tests"} +- gruppieren Tests +- meiste xUnit Frameworks haben Funktion dafür +- Beispiel in .NET: + - ![image_610.png](image_610.png) +- Also: + - weniger Test-Code + - Aber: + - schwerer herauszufinden, welche Fakten die Methode repräsentiert + - je mehr Parameter, desto schwieriger + +