From bc33b07c11bedf3e7725d454f4ed26ae82a0918c Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Wed, 23 Apr 2025 12:14:28 +0200 Subject: [PATCH 01/34] Add files via upload --- docs/01_Python_Introduction.pdf | Bin 5113493 -> 5245165 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/01_Python_Introduction.pdf b/docs/01_Python_Introduction.pdf index 26ac32f75b308ca4e765e43e3b8b75f9e0e2feff..7d1f1ade19ab542470d3a05506f076de40e7087d 100644 GIT binary patch delta 179474 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 GDXG;vdJMtX6P(qv`L| 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%0A&lr4+i z@C7uu8#Dm5`S)w^-!D?*NPAVF)G(@ynOkN65R26RHRU09b}UqGAV+0h01Tc@-evJ; z7q}USr>ZZ6e0q?bIjhWCUA*p}f2wrSlXPf^0R@e2n%5$te8l3mn=weWD$ zRFC&%q=0+?;3WFC7J4ncDH`_ip1do(8@sW%RDI5lJJ)S^+i=8Ln~9rP$`Sbed5S(V zk!W$^b$mJiv+O!psu68J5PvTTKXx99SFLE7J1=uEXkd*uLjjzg)-Iq~i%i&~%(|F> z+9x`6Hk;$w`4t6z=5G`@(3e%OIq+!0Ou!iZPY24!A2BWAcDM5$K|Au@M$tU=h;WZ~5X#ApyYIFnN9VRJ zVlgz>=Q}CudtF}O^$T~RP6t#nhDOY{X8shswgdyOqb1BjQ98t10_+fPzzzZb+# zo&0f1IhqNJ>YP4(+)e7m7{D}O1CyQOPLbxqNsF~&@SS&ZQKcjRNkgD`UT3GCJ_mhZ&9Iy7>fW^1QPfn{JxOdeA4=HqCCNugU85sH*mFCyYjrKwTmuOX$1IHg|3&9{+w_hG89^dxs*` z|9)=VA-Qo}Dt=_h6KoJm^^zpeMtocez*KDbd#%W$!x9&s(t7wLg(a|gGz*(IOC)H{q1}7&eIxF1v1g`;(cL! z55f4z`N!DC8r|~n9~Soy2%yip@!ND$<)S3D@Rxd1jh=hxWy?`eFIuPnEFi@TLq|^5 zpp_5U9FMD&&rytDxfFqw;4-pjIba8OSO< zh`9QkZsulI^10`=G?Pp;7?y^t)$XF_rNfzr2kmYTWS@E>n5LMX!H-x_%oo0zyvpr5 zCTN9n`W z@79%`+8?mJQ?h>L8MB)nv)_pU(zLc<+WZ86%0y5ItM{Qq@-4nlx`JPLQ+x?X%^{_maZlJ&SL!P z|GwY#UYG7Lv$H!pan4isbKg72CKtr&y5Qc-P6tu-6WMPMx~dnZWD~p|NRsVv{>{}d zVIzdybnU*(&ar}CN`$R5i7Otid_%TCvy2`WbP~7_cbCPA-D%i zj`!|P6;#mE7ggN&15TCBb#=RrsPZQZboV6))|xt~rmIX>QNib=t`)XI7Yt9W0ZHrQ z*$dvMdOa1Kwn8j;rUD`I@l}Bh5Sw6RQ$e^w-UdTm z=L0Y2ohPXUhS-u(q9C)z`&`sV_LJ(b$p>04TvxhOn6*uhUcFQk4ndPvo1|>Ft!;PS#V8gsg>vBnv|l z8(Lz5+$qDPWfJ?mW!gu2x-6Ut!gketlr(AM%R||a1i;+PmuLB!(ORJci$fZ0G3d&S z@z7DXz;3Y_ptLxb2MZ zTEcFNd*%)u8cf2DKfK75?nSr~RkQrsDB<>@KuHN-P;a1cCN>VXu?ltEeNzFlVgE;< z8yjB{)&M}#XaNuuAbV!dmezKCko7kMM5m)z#Gx+;c;Sk8AobtoEz;&?Ii9Qjf$!x_ z;h|ffZICC!L`-9h*hK+wX`EvveJe59t>9HE2nHSjg?R*4b+dgJA{z$DtZvg+D|U^v zGH;#I=TYxeFl6jRG3)D8sYzCAAYC}(b_(d}fOH{egyONbGZmji&wb)x&E=^j@{wtO zUFF(YC1(AeVUF_qv5_Z?RHJ-|?0oX1u-&Le#i|$ryZ)kBknhE&c-h_=GubS?GkpF@ zsFtD4Rv{|ax?Tq2>8;RlnVEMvd)2GCiKJTIs2Dz5Dz@Rbbf$`BRSH>+dAZNL z@-0p)(4yxYtqmsayzfO4Nn{4lr{?v%^4`OYZ9Zp`CH)74pCpPz<)<#Oy>lU~{hWMB%o|l@6 z-|?$PyE{Ri&&R{*=e_BAWH6bnK0~Usj|!w4+|!eqUYVWtDpHA79c_82ydcNkbgg{4 z;fCS{KCeFn{>`DXRorrzm}Ux%0+JX@CCDr$N}0bQ6E=TQl8fu>J1@3 zkJ407+mGJ>4RhpkB^1V7_)CbTI9SWdJ%DsQQ_$qWU`(`gFI?6QYOG4`M1P?4&t$m#@<)(bV3?ghvD!#zoueR?zdI~2!1g=NZ+rXPQAB-1V&!jU4q;g zGpq`7S3lgS@K1gB-nac>Z6+xE7V!i06{Lv*KCem&D>G=-1Pt=crjZ*lILYI znZB_q>TVhz`)woAa7cMvjy-B}`NW{BiTuluXIoz*(r9Ml6R{igYeQjODqR;_g-<8x z8E$GA?_I0(sJuKi^Rm2%J+ZDUTN@utFh)ts)H7yxKzgSs8nM|1MHGhOk_7+WnoPO? zO^pVdt!Z!mYJ7S9v++gYPvc8&XVnQ;tn1y);zjxPE!(<#F8gbCX6bHiAl`7QtQXfl z-J$YMX_B|)5lOc76oSfi*>t6r+}zoiYDImW3&ijrUU*BH<;kh1$*q|$^FN_(@saMU zXrHjFR}s~avE_p_UYhB?R1@K8kEGTE0X)WA&@~+CpZs|8?bA{jm7TYn1w^Xs*O9Qex#aAaF@T~#kWLNG4!|qnHi01Y`bQtD)OO)?6CYNu~1e!{%5RK*ZRlxsZoRkL-df`S8CCs{-r7Id zu+iVGwa-DXo02?Z)?)Q!pWrqzNIv6Fg$Gq3qUsI>KRmm2OmoCh`7N%da6S3-G5K0H zzIp1P5ehSg*(;Y}P<2UbO;dGFQoiRWCu`}L&#@Sw7pK&4jq#?R9OAO45caWc{@n99 zm-RgNXfk@2c(+_o2i%CmR`FQ)8pLv0I9)W<^X04VI26K$tNPz86&}4(fzJ)D8%TYG zp1+prdo~uSAF6ci#TeX_O|a?NIuniMF}}&{i03;<+6h@GNap0Kknr%ZoAb<}k-}Qx zB)C3LC+tGQEptEFrVPqE*dki)M#)}W4sp)2!CJtjg$y|Y;m%hP2+@#L6w zx0J@Xv|xiFL^QC=FEM>FDp27&lFVL-#y8@cUjUq!8+Zj;ocpx1_A}L9G*VI3jy0(rr#jlyU+Q%?Xg{H>iAI=@dd}9uKnr$hTPscN!T6f1bLwM%3YXq?vMqmyZTHu^&{!Ro0vlbLs@@zYACdX zlACs!53wMJ5Y7>Kqpw@Pg;x$RVVu9St{I9Zv&U80ABQ z@!l==?AMm%Esf=&(MUdsspaVjiM&y)yeBZ3a_X{sTip0hjw%keCci5VXa)67$320 z$KKX_c3<^d62CU_=R+D`cR%2|{i6?^Hfv@fKC;o;L^gB+m!C2^O#f0$43RvL`QwRf zU|ki}O?K_S1?cbrB_w`>r|pX6fU4d8MZd^v`HYi?JF;CB0ee@gy6*~&473vXj0Nff zPVP*vw0p3VDck&boIa$#*R?U};J0BJoyK{ncYB6C#+XAyRK<0HyCsA`-8Ux{}eF_wUcVSSxXb9QA)*btg&~6L!ywP zmBi|uA%U821NuLO9vV+NL)`dkfH#N?v&AqF6a5|)k@rSLsJZSW#vj`{Hno+wW_lks zY&>&z^w5|KCjihXhhVxsaNSt#cA2kAf_tDYFY_L`c86oWflAdIU&uvH!=cENf91*2 zwc;3nwQ*KL01k=PO-Q2?EnsR-=^u?bPU}Mh<$DQQuXKMj41t(LgPtNr&r~Nk#>P1% zJh>$x@Y-M5LYo`Eb)R%4SejP_E#P5+Q4dhJZ%NtS6k9lX^CoWI@%vj@V^h)Ij&isn zLW}tmU9drCAOU+1d^KpU@9zPF^=S1t;Y!m19AJ5t`*Rs&Xgi7*ipz_juKeT#nT6Lk zgJA=|$(r1d^^kw&^+*jfMUs-?J3cFCw%IqwQ3E%&US5*-vgSX|Q;WQg{7SF6r~0NR zB7G`N1O&{9K>$8(ujr-fu+sDqdG*>xP_69H?dq1)z;UxDr)*o(vSk-lnt<>3Id-di zSdG*7L`=J);%Nwzi=`f?@BO@LC37mI?m^ml<0JryTy`hh(vYniP>P1V?Oq&fa+Htj zP9|#ltvfFt>#O6*KX0(Xz#N}vr>IVl+EUg&Sf_5?^cy#4IZ zDDrrAB%riQ$gQyW^wYDKBRR?wbHFVYgI3m|j{{MtB-KFsc|D%}Ec_|8-MShDcEZl0 zA269#{Y4ojSG6x1t8+AO5u>+9zmzxM3LBvdpwkZ}qSwC(mm`%D9;!V}d(!orZeH3$ z`NE`qmzBgl)za7>FvX_@HjJ^t+^r2*7y6Ae1Qs_th#S@vPoLAhVsWcSs5S$MF%I{4 zgak~^ZmYkK316jy9Xf%M44EhUV(FZm*O^-f_wlFMD?l9}u!1EY8#{ITZ4tzu6nBqN zkv$F58EZx@C2+GgrR(I7&J*1D9P#AO|rK~vl*)$pfBMvE;(>O z>>evbwU5Xe@9}Om4(b#~_N~#ykrFYBGZDRo#)>-**_QvSl^YsnEea}8QR-n@{}6VU^0ytF9q zG$^zwO5%s|Pw1{7FVr5;oqTktcxXLvVdd>CQCSlOLFEtBUb3ST{--`KAv zt2iaHWXmJ}19n#l(UvKeJPG~V}I@zrn|UR;4J2QA4BJ0U8J*;5a96~zGodLkQ5}EUA!>6UB}&2 zo>=eE2jr&Ke!!kpu`I}(D04P4oo~9RI(Z!$1As>B(35_?Bp^%P;dqTMH|vhHJexJ% z4_M6zOHV)gOVoqU?(Yh^ceRN>6{o1Pa-ZHM+jTgkm-X9zaM*&t)n(BeKVSq{hpVUZ z9bY-wcLp!v#8^T0K`@{k^R$3w;6(A;_I9b40>Q`90BF(4(RK z$-X!!JjGM3%J!TS?1VQhnD!U&%=}HM zW3~Zud6APExEDf(RiWdd_smL-92c1GoSt+RN*zjsVm4xu>XOL%-`p<_Qe`8b!Wn|C z_gim+7ROa0AhL6WFt_c;-t=Fwwjf5=<#Eb-95eYXWDm5yZMcIO&=0gK{E8w#B?Of% zyTPe%D?7PH1x>yF0TVVuYK#?9X^FI*3%$Q~i2>NaNRMu0%^{N^g{Zome6tK>luY>> zca>u-hnEGrNku3Cqpx$F8Ak^`(;oV0h|$G=>N9@u0tpCwJyC^N@#`y7b;{74lX9*x zMBi@BQ{FVE-}3BGv}aOHy>@KVkcs}wsHf~oRdPcnn4H|BSpdQl!K3$_S&1yzDA9)k z)BSWMwRUzeAX;RZPZ_abVhlYIrR4XsOgB-g!@kFZKz|^7T+4r8G-z6t>uFw|Lu{Nu zE$6{=GkL5_T^tnPSpTkjVjy){c<+msYW_{o67pCb_1KMR9Mw^Dfe<3<){yAdfC=ZE z&DOXAI{&w`*z=_2CUC?;*@r8KPSr-dvhILbXyhmOT#~TXQ{qDjy4&V~}pCb^C&2Y{-U^)p_Rcy2f)kkKQ6;k_OoxdRY$%*xr2i zK5Ss%OfZ1naZtbruL5mn`n21x^Vvdgk<>nFxDO1o4r+Df0v#_Nd%zpnkOOPa4Ke@y zdkb>M&lssa=5&&@z#;~H_^fI!bb{w45w~C-fP$m9>5U-it!OhQ{I}Kku@HYrZhJPOPD)Z zg5s6e89H*u1yp!~dFAEEcqU$H(!q+0QEw;lFO|H}X3~d4dM*X_aeCVtdM9T_e9m=h zTwP@P7k#p_8c*c6lm-~L6Bkpa!5QL*xvA;@h^BB32!K|kQL&_C%@Ets(_LIA;>H{P zHvsL_%}PxktIC>-jDS-&fU={j*A+gb?Zw;h&o7HE)+Vs2Vb@?Her_;BSNE!WgqWiEK_!}>bi*eW=J4ECtI;UwKSxE^)sC&9_816rNFhm{)KC&PG) z$Ck4N*8KnmQS9HpU$i_dBSC+NZQAD?{`2RG%2dt{x_>HczxXFZ6Ef*wuP~5AbEW|+ zYj6D*z?A(TB%Y{bR7kL@yl}jMK4k@fY%S7JMgQlEwl!d9H@}?c=~X9|m@W_;2KNnI z=HI>^Zb|T1gDP!|SyjH@-awme0^B^gxnFxgzjuA&b5RscSaX`fF_|>R&ruX@2ykx8H{WAAUTN=JYIq+Ud;y z3`HW8!MvqB0c2sI3Lmj@g_E`cCQ=-Y#ozvGjFdGh@_BXZ2LUyM6ImIVLx5fKcewd; z`Re2uDxhYVHp!8oAAMmQNv!rCUhQKMl3m2Q4@ojKslMRA$J z%25KwP5Y&7hixeNg0>!3P}4e{q4*!L&7rMfDx<^Z==@ z6Bn#ICyr=Dh5Y`NE(5N=R(K~V7A0zL-7gm(I}c{M0BV6B4Cn0jO)*R_4JyU98Ts}~soKIR83oog!|S_jxMwG6|T?|cLyE5(DR10GrQZ4f2c?HU}9 ze#H&Ei>*Afqn&SeCTn(ZfKXT6|C9h@uoFSBX!6PmAAm^lb!b zK(7roE>6rqaKYCh7$<^3haYu+2 zmwz%5VJ2bb1d0ykqvw;37f%R-fzmP=(9Ossg8{yx*oZ&&vmFlMXE2FIm80N@qT5viV?$UgtpO%NcRN85_nH(eEJxA6m^l%mjW4Xk)BoCsC0G~;hWz_A zy#XdlCal@Om`s2dqW4x^jx_kXF5n&x*5<|?JXl8#UYDaJD2j-V-G}!S z<5t+zHPV6G5Ns;}=%v9Upv+l~Q?vMLo|>*abIu-!uPFa#?zk++Bnm6mzkNp_IPzb_ z$Nv(~Wby?v0R#1< z16*&qp-ymq1l_7>XX7+rJfdBe>DlR7@V#ttJ#sx}xl|x)F_sg13TYNUl`Lz3UBm6~#gg@NH=S|~u%8-p z3Z;6v&)K$fR%|_EJ#Zn>I>lyDCrEtxM)*C2HrC6RqZwM`lkL8KvkSNGT3lyP5<0rLOXFCuf}ses?L zKtRi#A@x|YD>aZ6-0ojU?!S!Ri!}m3Wd1rXjMYL9HQvZdd-FwCPP|@>AH{!_CCIq5 zLR!HuE!GC|MgOwIJftuSpl+n|H2OWS+P{n|K#!;0B|C5Vl=p1|Ock}-i%(Ci1kPEn zCjd3p#7TEoTa(C2R@xyL78xwr`7Z#J?s2-KFV1Ue`=3t_lW$1e?UuZLI{2A?`%iRw z*FI8dz$Aljs}y$U%i!9<=>?C4WYcRm?lkgF(ZPBMxQYHIOM7H9^-kYtmdosvqi47< z+Lga`#KlY&Y{6flZ_i0gOpki=iIWZ@?T94Fo=qk>rKA^ClRf({G!{32wra50joItU z`74VFr-{O%1N=13`ruhU>59^cl7ovjS}9qD#`(|z)dR9{u3=rvQ40V(1Hm5+LsrHm zR2cf^S1kZ(v3y&4IJ-ZK7fdu9S5%d@N7%HjJfpfr4kayxfAQfQRoadEenNH_k$|{a zcC@4PhF!Kyt;0d*PUjZ+(M}w=o%UpA_EOhV!J@<45zf9V-jnooTgLCt7Gs;|&o!Q% zdS^Ad<<$-jq5N|pM**Z2cA=ju>IX@<@9iM)XkdXFR1cEu|8^8c_GoDdBY<{r^meSi zb@Zd*DRZ^iilMk)tjXYT^bU+@A|?9xS9LO| zS)xSB%akgVFcls}A!ZPtbagBKlxe{$?o8OhznEDQQr7lUhzT;7w4Dh?E5gp7;e8>x z3u4^AM`+Ij^l_?ANwHrWc?Uwc>5Bj95(4)S{|sToV}rg6LlU`;+Azs~Pd&OqEzbej zwcgsOH1B{f9sXa$*T38_2pm~)C?Ge@w$$Em_Mb<`{gRXfatfTJQ$CrH=W|0~>W<)l z;Mw@S7TIxZYC3JoZ`sY(fE*l9oTUS*nd%p2K@2* z(b|MpLQANG4QKy*3Y;(1x!9~2Cv7K#(MRH1)D*KS1o}PNgswV%79nJBQSdeby9?1> zmOb5aB$iLQLxr>8AwWrDT8ssdG>EC&5y!cd46{{Qm0djP-j~CDh3pcLxWxm+30vv7 zxJ*!z2jCio2y{E;n6{7Y2$Xtt@9NR#Ubdj76-3|3p7!DA$=2^7voa8cb7zv>#EDpB z>M2S%0u%YTJjz#A@6;i(riJp*5$kWXn zQI5dl6~wA-Q14QJYW(Q991ESH?EV>d;sYZ7>gCzg!{e3shkguz$6cGKfj;~PjMNmM zjO3pIzI_A_vO$uZ^<3dyfKJGG?ISjub?d|XGA3WwZ^Y$7Vq&;UaY@WT5PgYF%%JeW zcnMNMkJJBCGP&cQBY^b%O745fgs`-bE#$)?-gx2Ax|-s-X7REmCi*1ufx0^rJ={kM6`YfU;fyX8=PLNX>#xA6Dr z?gJ7p`Dd~?&4Am%79z^_$6LvB8;?)|nH|3)M^x}_Qr?md8$2$!fT|jBr9}Tq7a0T5 z5C2_#YQ0Li4LDiSD6U71YzA}Gqn3Y9IA`~%OB}y8v z6kc{B^*uR$;zN=gU;WYpF~K0orme8orUK_gf=&|Svyb-l=w~zAPd`skd!ET|DNX5- z^z@Lw@2sV$v?R9xeCHa*L1>#Ryain$zG`ZorJUg!_u2UKjMWhL$C)ALeO|`bIG#o5 zxvm(afsPO1J!|(fRp|TX5ri>rVe-9NSmaCAmi6BIZaQs(vTh!kXg(tC7I^{-nvvKF zhZ-5lvQ9g_I#Z5EbZqapsoe29Xy<0F`)dg-Sc5ms&zy1epoxqu2Q$!%dTGj=5Yuko z&L3WPA1<{7-g1K{AlD+G2BDAl;9#lae}o)x6NYEms;unF8?-4D0-d_T`En8j`!;Iem&bMe_%%{6NBxRW9EevKkEfb|e@1HIwnF z&rMUusY6dZRA$2^c5&Ez zmqjcSkwMQl8a;qMBHwor3`84k41T>qZ6iVsRb=?SD`-u!z@2XO#6^KC63(5V50fN_vh=9Th)uEREW zk76`vXJ*n~cI8EF`+j-hy4Z%8=jv+pp)$AZLND|(nOc-!Cc7}hn+6n7E_NRl;wV{n zqMZses%W4;8(>SgaPlt~5Y%ZLCfvY%agyC`0_fHVf^Uzk3$RH5R!FRmlMV*_u=Cvb z3wA^R@z0Qw4yf25-l05M-0JVO62RF`1czSS(YB9so74ZwVn5bFSOXL!GL%TeyiJBRXfNur_?rE$$544(Glc)UJM>IqhD!t%eF z&m%i%Eu<4^*-J66!bk_(cy3^pE|YsX4Q<;0}O>u8~H+?@@1Rj%56rPoBEH9l@Ni~|(1~3VD4IQ^p4~I_< z=nKtuFp~|cZz+Zfwq)#RpT@Y|_>OB475nn&rTbDK5!&)?&9!LnrK^vqaX8SxkxNOM zAHwU{IqU>5G=rKmezO2hz^OZ3X2x1ey>%UVojhntJ4A8}<4sJ*)^&7Fvbwz>&%WL@N{)1SYOq>>P$n0K)tGopWd8a!jq{x;OX+1*t}4^Mjb{nuMrGX(Fg9;4>MdQO`ELDPas>)|Pt%Y$x1E)&DyqmbN*q2T$F4?7 z%$e^cz0zHe7&N6oM_Iilc^0QFLqAZVaa|E>n@|e5CAn6(1XyifGcH zNutgi&e{FO4BIs33+a;K#+o3VLIoQtLOUN2wPVtqXBJ>lCD9ifVRp}}jpxCf&-!x~ zAg#%&Z`Ksiw2zj^dCc+<4BP>p^Yo9JU@iq_*RX-(`IK>&5+F74XsA^}a|^%;vtL)d zhr*1>WKO;N5aacbA-xzoJpQ$xf8~aJ;*<-JW{|#60ZlgT`xaO4V(kuyD!G(am7YzI zY+IH;5lNh7p^&9QPmi(#lsssZ!_+~uqVVyUr6f3LT%!dIMIXU5FE;MK&vlsBy)g`8C1_4T>L5Wj#ttJk)*!nQJf~dp6)=VWk_)9* z*X`Xn;K09-;zC(rUJ*v*ortbC+rPU~nHv2#vz)WS(g%WQ0rF1KP1n<@lYG2*4{dhc z&tzAt!HjJF9sljU?_I(*CXY*gGO@FYDB3fBqIkw3)O_b6QCc!l(G%7<21W0H*QL5D z9Ix;qzH$J)-y=KuSKI?)^-a-vU#HW)+;|2L4|sY_2~QOn{z*eazw^=Xe2(l|sjgfi zCZgQWnci~QCw1wjea`&OQvY6NFzINLX7-9Jjkt=!ZH_4^3YJ@n zg6G3BbJjjCGTX*xlBhtC>}R_5@AeTSu&6~ld82&pM>8k{=LI)3(V-#+FVI6oqQRL2 z>zV{Y%{lKl?WFEz`m1RE4|&X6G4MvqrU zIzd$@81|?+?;)j3PJMp0M1wI-Ud8f=g#qxNGg?yOYM??rfbUL>+%cKNEFH+JY-BO} zaQu{4@h#f~Fj<_u%AZ>S%NlTv9#7NuA}zd#eLA`0_!X(p@#=FAc=nAJ{HCb23fBrK zJ^3K#3@-)aGI6a>{q;WHX?BWR-WR+eGAboyj@SxLrPYASF_Uj4y*D-~ zdBViMMW*)9j`m}U=Oh~f%5J0Lygs&(yRa$0WedH|#Z+*=lH6aVCtUPKr~BWbgM5jr zF3<9$xYE&Wt;7k9r+g4E2Y0F60~<}n-mJtXn(CgZun)4WoeIz1p#K&d>vDJ&>iJSO zL3FO|vvwj3q51J$zA-S%oV>j$N>W`cc9zgYoBl%F`tcA43a*Sx_WekGm^K|?%UYK3ityF-W!>R_MdrwKuP%IP(==`RBrx3<%|L__r^&c2;etfJ&Sd+@#9`7m>! za#E=?uUJ6x5(~+dhspa!yGia_D=%d4md%tc-+W`*KAJd{t8SE+H;(pqZa7Y$^PSg< zyYR{eaLYli1rU>Gl;d|`q=CR1%lt2jhBwjh^G5<}#Xw>SI?`B*jg0l7xC@dM)Uk&E z4gKkIFEom1MxMF>)dM9YZsWqe$sIDFW-zZ6APY#vtGB7w3#v-115iR-K8_7;sk+C$ zF|eaCUhf7Ey*Yp>Z-8kiDr~jd?O>lB?$KeYi$c|(X#C~qYYG#A2;FaQ7jCzcn7z5*tKpsSyY*&?Ad3oH{l1c7U@;1H`&eETf zNvwyx39g-=lS~+AymnTf9m{lx9)Ejf{pxe2^n`xi$3tK33ToN~Wj|lBFB(VB2UrnK$6W7^#_iqNJ>l zs0VGbXu7ymxMYzC*r6AbTDx-9`P%r@IT>6|7qO@Hyf+k=3>|WQA5qb*@-WNqbO)h3 zAf!M%E}MltfrvXXN~d);ma)iJ@7@U;>gG|A07(8qI0ZIIYgIEE z)pz_}@$;mL&{=D%DxDRrXXiY*3KgALXl=gnuR7lWqylDoUvJbw_vm{+1O^*Wq`3h7 z#jJt{r;6W4PPj2hr0RYKQe*T2Zd_2~=$sEu;QFMF<3{G#2kb4btPNSo6z#Sl43@x1Njy|J~bepr#nt^GD7(>UzaCDysEjU zkjTeoj4bPZO2!msEZ9_9aIc|?wAT~i{C1T06G7m%UemV8J~i6G5rFy8pT(U!hfJE^ zDRKk=)_D1B>!w3e*OyDSTpbTi^WQx9#w1%e1SJ`7k->Na-sXP2Z)}6vUgy`oa$a>_ zD|u7Q?WK;oFkJ2v7uvIRm9G(s#HL<%y&3TXcF#oE2qh)VX6$ozHK~COSs$rtdyn($ z+_y0fR*`Ur>!hdSqoNcY*_l@!6is{x7t|~{=$Do1V#}%yg*j{>%PmLo_|2bcrsk;g zr#<4(&XIXJoshLp+Wjr)6{YU|v?e?Qip+%(A1Rr>rHRIIE_9sA9fcT2$cE;I>{BTR zmx(0m{%cmG<@0@)8*lAfm$2^jn$co8udSr**^N<>%AQ_*6naSiMH_B9w}Lp7XU@cR zAo`h}_{XXod$l6{^9iq8q6jK8D}J{C4t@8MTL4@}yUICn+tn!yl};a}!?)Koe+rPj zVIGgpL*jAigTrRmKS_OgbZtf%05M+wd1R6J)VKLlFkwiDfh&U+C45O4JUVVX4(5n2VdWOfVFNIDDf{e^dJwQ znVInq(`o7|UuM{6?MJu&g3MtA0`B0Km;LT zrhsWjumCsck>6n@awiTjQ-8mW^~>tVUcl7tT8q7r8*yy$zWa#_zpHef8-8s-i68p@ zx&B+^BaJi8Rdm=p1+K~boDe84~$L~4)#}%)4e4o$>)2A<9RGcbQ?^K*ZHY#^hh&IN$$>&&`O!v1y`(yIWdQCg{Mi(H**9E734yyr(=i z$qsOPIVZgLx*GlpDsR}_-pV%%8WA!hb9IY5PPy5rOSrLV_p$1BX(^ynQ=NIV*4*&& z#hM1pq}M4y!K4E8@yx4EnI|Qbve!80(2M2gZI|%a+0wR(29gDxS1m-YY}f3yW-)j@ z*f3sVI(AuHXgATQ~;nuL$o_o zv;&{=@-VNtc8MA;_eZH$t@bzz51>_nb3{FJgVLcD*Z+a|QqFvoTH*5rt`T}=GrQYy z`nXkh2yd9@8;>MN-k4o#HQtn_tEcg`$zDhv4fMTfprS~jiz{|+GyhshNq6KVbjjhs znt5{)Qj+>yM-voE;-K=XZkOquVO6EMz&?21iyTU1`%1F83*&PQ4eqpYPV*VWTq|o1 zb3Ik&pYoD^5-vd+c`49+T^sp;oEDM^}c4Guab+dmPi+=+}D}T8hikJo`9l zB-f@RfMkqO{6wd!KAKI5QgS#wrluw%>Opf>!>6y*)jcP>7YDAz!%{16&B`Epyg97W zhbpU{(|WGC*xg#*&sv!Y*hB=mXC}$)c|ja!caru->Ol6LcRN&E1KnlA@$Q}fZQnBk zIq0QZLRN9pi8Ix{wY=(y9-&>uxzZ=Jf*U{52a`0y*bdqO%bJeq<2k_6CP(7V3}j5{YRA6|6uURTSJgw>O|3>N%= z&CJ{FeFp=>$WNj7T*|fN?xoYA<>wn!#JKi3-7yDvOCZ_anM?*f0P$#2cJ*@6p=hX^ z<5=!>HF+RGU*c|X;LA7swT<1aQXW7| zUiwl?XB5BE1LH5lFq_D1Q5L~6*!xYLdtB>HGL_!AOP#7f#xv8tltGUDzO5xm#4__1 z4sH@pfoU~6?$n3zyyte(vku=)IAjI3u#4&1ZENq}ux<^RZ1o>pBdU^)GmLXPV;<|w z4|!+!FqtWOo?WppJ{QQ4?{rLj+q&WbYhyy-W?@qCg6Iq){5hx(%10%w@Eg0leoU{7OxMnLq+*_*N+ zXqc;j7x9XonXPi2!(7ybJ8$hvWQQIkWr?j%xg%>Yb=yr|6xjAGVfbFUO$;<^o)!WU z-j93LCl*Er_;MN^_zE*Ob}}?dubaLE*2Qk0+oXM$sumFGQe!b$u7V#svFeaqxYlw0 zci)O5b0+P@GP4(qAB4kSX;%ac6T8^lt=Klej;0ukobg9DOj1uYHh?yOp8JJ_71+gG z6|JwLtww>jznkpy@tTFQ^F=M8)1ak>!?QlpuO=8`i1NoOm3Xun!bJG*mA_jz<6}n; zn0o53YHa4c?;dWv9it{h6BYoKzJBB&$5#09RVEtim+3EY&4ts$mv3%<$9%kGKN?2_ z4JnxEbr6%Unwi?t)<&giz4s{kmQ5T%ZPrzFx9}Er*}csxXotm7lwacE+vM}0Kqh;5$AAD!`4*jItF=FE^t zl&5W%?n2$Mc{t=@&CT=!W&wmrlB|bi@ImUD6XdoF{Q+;2^~Z&OZMlz+S%_bSsspB1 z%>ur4rIef8UgJD*hhK=wK6rLEnHr?={mI=x5vgBx8Qe4Gc`5RhqC*<#J7|_yvjsy+ zhC*-Y2eiC3+@*>X3GS*|=qobuH^GoJ1)fGLUqafLufO_)!U{Ah&vf}*%HgZGtCISx z%D^niyJeX+vqm2%+c-+6qJ@I!qs<36wAPcUU$Yr>H*$r3SZ^KyR z)r6{blLCl$=a^GrUIjQ24#OBgRl(pR$^6r&(*EO9LH~BDHnjY`iM5W;+d`hN@&t_T zXsNPv&zZVl?^fkt-BL52jfGyIM^wa~k_zmNzqfOY8$ToLbbwfxsJ9s{wVYYC17@_%FMiODVfmV-$EZp%w4mmf1%_!WPC%>o}51N zEJd0-$g_trs~Ka%x^+VBw@QONsVDR>YhqK;@Xh4_r#l!a@mpD-xyX#fd~+7kwl)SR z-kA04Sf0ffGv6`ia-`|T!ZBiVj_|e7qsUe=^C+@a*16&G&viM3iL3abA|(*gi-L9x z$LEZ^!8LlWpaz~5i$jCVEUm2@k`tf^!y^7oL=GYDX^44sZ8g0fWRBang+o@K_Z&La z>2DXkdNns=9(6jT{y@|6{Rnd4_4=1nBjOPvjc&=*9$5LY(v8JaVuSsUE6SOIgnqyb z6RK%VGfnL*S3PRCVj~9Aw&5IdkdGT>2ZjFV(PZ>c`^URMQV$1*>=TXW)B zISR_2Fus|s#>udk6F$rwISQ^uu-~TO|Mo38$Fwvv56Yop_W?I&|td8o!c~5X!X@ zB(m+JTk~_Ag|@6Z4JpoNa(tj>$Fd_%7&Wd+1ZtPG$DET4UrMsUJXg-Pl40%9L=}KO z&kEuPAKpSy{IdFHTa0kZ?*{8LtdjE4fmNes2KT znaic<(0o^S%Byaxh_kB~RgnN3e>=ETKl)7DiEPJtwfM5v-<$V2SI@3rDZRncpcrCZ zkF>COJnN-g>FCXiO;5LsbJJjVtgMc{eMZy3VF=(q{U2cloH9~Rpj_};fV&@_k`rsn z+V%a+@j4p{ztoHT%H3iM3L@cx6=><8yPe;*`_ctCl}gJhyzUu0NN+T`QhyoEcXW(K zzBI1LX^m5kGObupkGtHds(Aa3{r$AO1Ehi9)%TXCZ&KeHioJ+}0C9txTe-jg--w}bgg zH-3X^0NDR;i6vQJ9FH@Kju$?_djloOe)qQ#~U%{hQGuMaL;?tnBBz$>|3ow z_|8cwTCyL%ex?~8`$2ponVP?I(}f*77{xf*|#R;o-?n0W{xT!n1NJ zhYK$Bs|W6ZwaX_G_>3e4dS0L_?1q=5_>&IYVY^fyIYyzyNF;Nt_wweR2=D}V5S3of zvj?Gr!mH&ajh@Xf?KkOH7kemeT|}vbIxi}064Svc>FusEwB;D*PsF}IpA~^0j*?n8 zyV9`otoBiTq`;GOBRrB)Z)MQVD%NQR3SJ)*SL_b(LHe{N5Ev8LaV;m=R|bvZp|f%%ju+IJcwWs)_b(h%LEE9Aku0(4NA1~Q7WtdWqNQ`QYtDbRBx zMV-8;e;=Om-2eK)J*|RvZyPM#`8r;=V zux*+#H8E{l9jSR*+`4jJsFQXV6VgH4HA=#y_LmXXWq*%*Cs8clv`Bpv{-;g5+PDSn~dWRhCA5zIllocqbji zzL;`PK%@|%gtJ8CxKh9WzqfP{7xq%#L!vu2vNy?_NGX74<^f+uF4P}NF6f@<-f$fX zTDcd2-?PC4?oPmJU_F~jgG(6mUEdnS@L)d` zh2BIxuKuRhRShlpVm_tjd)*nc+c{obxI0!1@A#F4vHzKc*=4VC#g2mNa|mK{zWQ?q zaU2&_*<9Qn^%Y)60jbR43!Rg5#mFWv*TO7s#)W73t{hGL6n$9&-`HQdA~Lw~-~B4( z;5SxDpFen|f@r7&3>jpr%p29A#$AvVJAd%UvlOwyi#CYK2SBY+G@05JdyHj|T35Di zCdAud!D+^faAT`@g?C7(_CvxHVrc`>jCl>Ztp9&YX10GNPYf&Mld#H8tWJBEaP&$! z*k9fO1ZZOOzu`@{+^1GOhSO7?6xj}?x7I^j3+T>&#aJuyokA$+47kbK1TNwWEweP* zuK|jmfDlaAg=$jI6HbfL98?n_kBec^q`+}!1S*<0Jf7VdbbJ;c7JKyC~x~Y z%8z#1$ATH-F}23gpr_xc-sf2cK#UF0`aK@|M!FkTJGRJ-WlL59wj^o z|H=7hG{Ujc_;SJ;-!@AwPwvtg{Aq=GN*mAxFSTGyRWe3C8ZX@!-L_YTil>GYj0c=^ z?Xo_e4wiE;#W+|KPJI|0s*n5#O;UuNCn;oJb*ZynB%0PRspC);STk1F`6U1SQg~nK zTM3E2-uquz4TNA@MipVdg8L6hPJiWD9*8cBU&=4JJ{bTEqIfVYsH=ixerh z>I1tO(@8p=S~A7syh?s#IYO{Pi1dlR!N^SK*os>4G^+l>$N-DFqwmP+VD84=D~vGx zVx1eAu0KJa(9ddU;IAYBMh@f+0OKD>9Kf!|Na~a7rNcDQygll=`7kNH?AHl$ROxA; z4dDN=ep5#McLPh7nKKu=+xXJ{mg8d}1W6_&`=vlf4sjA2u28zNROys4#PeD6a>+L8 z?SAfg@%w4lXoAZl@HjgGftvNh+T@jssPe($%|w_G@THhYGhPu%x?{jT=kVQ|F-v+M1SpI&zJ z5zp|Pv9v6hX|@ZvUCSQgb)SK-b*XU$VCPoNk55V#j)%l71PWi*H2yevQtcVp-;69Z z>TbRs+Br+>`4r9V#(@1r_&RVq*)Q<~Eqx@dbpCp@wMW4evs0+7DmMxf7MR zIP9%B@Ze>!LRvha3P8N-HG9G%7*&j?UhGNB5~GJi@zY9A_cAgGruf$ZpV#=t8dp0Y z5&+j?MSfl-t1f8`xhm|fX1I6?rkkLyGGGTpsRx1O^%>%zENGSu)o7I6mv1`RX?Nqz zTk2OSCmS!yQW|*{ppOHjwvOvZzp1KPdO3!Ij8>Wa@YaC|`u7Fsmo#j+QqKE%0Hfl3#y-h+Jd&&oH%Z_oNj1ZFm-G~czM zG5eTja^ryUQJo#MWLlChGidXC^HCVDC5!U~O&l8P++r_G$U||Ei;2+H`J%xF%w$s2 zv`q0d)tm%TI|BOxF~CEPDh6=}wkh#{?XRN%wDJhr!|^Z82oN@w5nBs-ChySOY)t1T zP0kQNSmuQ)ZyMu8JYD;Z^#Ovc^+#z;z z&hA`rB?#KAJIzjfqNH;OOM63<0pI7cwxO8K$}qiBBDAgiLS8e^|Es(Q?CfgDu8Htc zZUH7F&2w;KPfpYvUWqi3UnfIni~@@bu&RxqT)8 zt#7qm9vW+YyDNMiY^e9c(Ga#~yBZk|($OLyNMc%a-sepO@XZcjKHW=ndT6#{jqz#o z-HGdx)o#SQv;Dq2XvW-1<6Lr!D90&I9cS{n-q=)lwwrD&BOo`H2GNa%eCKIz<{vxf z&gfjz>M-JjYT7q|CUF1~DYue`{0PH+=thJ3CA^WBdH_D?R&cRvI3 zU6ngscFGzxZ+(@OZ@*F(-zf1+Y$HNz%8b0Wp#hKY;>t4bjoeYk$zSt$>LC&QB(Hg7@ef-W;PLaNB^VsLx~tl8_ddKQBC~$y*Y`dW)w>SoAryK)JX!WjdfRuQf4qZz z?_MGbnpWDgHS2m^(@gV_&Z*HAzN&K=87{_!6DlUj753U7Xn-K?Gvd3g_6YZZx125I z1d?s>DStT_I!?X3esXcM_|fh~9642a&0uOOm1K6dRrKKlBe0e% zktA9ZPGuOoHS#r!bD#E2MH|mEYmBwDpqD(L8F}LR;)TU6cva)m>-=G=-{wl5k0vhs zAe(ESVyaF;@J8ihf)e;+!9?j*A-O~;d#qA6Z7vZUbRXu-Xw`-2Kg*c@E+Ew;@r?y^ z-+Qa!6P+rFwZ5Q3V5jUNU#>b0XaAz)_`|HkCKvfM z=9NgcB1Qx&43xDpXD?a0L9-BIAUE8 zj4uoJZ`WV3qJ;*dCp_KCtaSjO13jM{<^n$;H)gahY8uFHh31!}P0nTH{{r*qV8HNQ zN%hQUek$Vr5|4vdpq&7P#|hzwf`c@HbpQkAP>_xnlLz1hKu|sgaK{K8055PA(8>pb z#JEbBhDKusA?Gt3U^w0U&k`0hL$ec}_NkQRL^q^1i5kSh`BhZV=mNeI0IlKKfvV;~ zOj-hHIc*)7h)-5lu8sS{3d>3Hu#}^>G#@_c+<-@N(Y>gBp<>$TSyUp=s;J25g zv2D#vNK&mM(GM}7n<7EFG`IM(k<{>Ehb*c%vyM2qbT3&Qr+aj#1^fJ=Ahl>EB`9XG z3p9tg&TZCD^Z#W}iIE1d6iZ^FHVf0kHjuvOWL8R1O_Kv%FtLzb7QW+S?41O{N3%87u26~<1w|mo<(Fun_$7l!bXp7V9W+@FL?Ts1X-8WWpowVWML(@$2-@=9Kqbe42x z=W_gJ86rDhRDh{B*(7VVAwfIr>dN75j`@9i?KU`qZj|0gA}!uI!`*~CP7jV0ap6p5 zZ3B3Q<>t9K-8NKJFt5ox8;Zb^XVph!F*8ctXc{0yw^61}i@j30Yxm{za#EE!?d#}U zz3Eg?^tSC(u|N?aKM!~BFzbyWQv7PEhtf9zqn8_uu{JnnE`H64)ImWPWNuIF$R^%V z#a34dgyTFIT#6AF>c49lwf)flrT|)wPT5zxLk_&+(yZ&!{PC{hod#Lyz|Hd9Zns@~ z_shqbNtt60+w1qb_=nDTq0N(VbnSv$zL?JikBlCa#52$x_7tngw@Ofre()?|$96tf zYPjUTuxNywnl}@>%O-&<>xqY~d@4chZlv~b&qm|+)j+i*a9RdvD0g*h7Co~gdWSj~ z&%gBuWk!}kZS?^AbCqE?HPZZr^%jWC6xBKZ*iIiG9BhR*K7vFn^aovZ$kEeLF4N+M zeOo*w!|t>@3}K)&i!$QxsK%xrigvfmi{p~8=Ww=C&!G&$B^K4yVe$kP2>Jui-~22F zhV=l;wm)itEfCG5LxM%oPWkJDGY@W9KcQOmkx(5eevCT2;t6Dj??hy24G-0z8(x%k zRqsM}qzD}~nMjOQS2%H)ptdH%j{vGS!X2|cqU6Vx1vG*g~Qjyy00>@Tas=~q4866S%&H7*~Pnmj&&u|V|d-u4+mnwn^l zk=ia%pbIokuRdI|T> zBO$M;fX^FH!s7`hA(m0LB3vPfL;j2;iMyK^m{4#ozLOfrq_Co){?V)c>}Azev1Fdy zOvlU5#-XFQR5JWi1QZpO#q2{C@=EoJ1(i1HUw<9MB@{l9TB4LixWd35{`-qHRNQby z({VI3vNJIH*_D2>MIa)j!XcpzAkP&Nobu7i|95dRW!$AaH$R}prHJm~qlAC%${)*? zg(kf0n87vv5$vPj@BeZ(NMYJqa{8981=i{Kd-q%4dgy={$YmVl@1Gb5$Tm6DZnDtF zu=ZLa%WZOf$VW+B3Jm{J?$v@4X8?NoaIstJSAOHCa_{Be%G|#swj5^bN63`qgv4^j zT@k>)3)ypkpNpZqIK+^-KBkN9qA^#M(zQKdQ{0199?S7Zv(z0Tv<5 z2G^E3tJkS#MT5QXlFdu&PiLH+HXTBZ+&JP8iwDDtn{1^R1&H67O~tQt2vguWzJ>)#v#AWFN(PeymC z==LM;O-82vjbi!xK}T<_;PVQJA!Thu#r?YHmq(#v$UN&P0(K0;!lV!_?|)|p{)eDE zj6WO5l;L6tpTl%=$jN`AR0t{QcVzC4x&+h^92IF_;vnEESWkjOW7w?|5x_t3znbhz z4R{yX=iw4ic9eziy(CTj^V!idabp8SO!UGwaF(NZ*%B8f7)UsK8lplN zp7G0NjoyIqkeCoy8R=6>mK^=Wj3OM{OQkXv3vh+$E&+9Mh8c+0C`)xrB6V>Cgzp+U zoc2C~VTPk>Q0hY_HTYIoVm@ckzP*U{W|cH#Rt|-V$NbDvikz_y##$eoBxB=0VYg z0gz?m(SCBDJn?%mn0;sfxJ)Cz09+oFwjVMRpm$I}yt*KD1qj+|_&TTp(D<&cBnn=z*m6_A zP6h&=4Uk&gmz8VFHGe?w!|`?{uR86?_FSID19Oe?bVAiiUBf;`$hG!B;CEP!l4O82 zhFr*}JFi+k8>(&HY^kqAE0BHsJIqGq2kN{)vNHE#xQ)QW8ydmarW;Wb(T!s8e#IwsA2+Jk_(Q0U82rC7wp<;OU zv=sbEOGzi@l1SCuE2Mo1cY+^jye)p3^%$l%Dc76!n35HpFz#sqSm{Iej}=9fVAE@0 zGqvjQI5g~D^>`5_lS(uWT&3r|iFP7fu=`}$S5&7}(S5FQiQ&WYe5GKd^K4Q8{DYp% zN}B0I7N_|)VaOH@!l7q5&I@kZWHk0fg*xp>QDi!JxF^lNO<0=EAvqhwPEU%cqMhpB zW`CU|zRs7hDMhi@*Cbt_tLD)cp;CyAa7~=`;RzOBU)TuwpjjM;<|rs8sI7NgfH8;_ zg#r+pf`xo^b!)3Byj<)YN#0JF?2&&O;%y#%5w7T_?hRik1m;Z|_m{}|kEZ1V?W2`U z#Sc%3wG@)Z;n$_^St4Peas0Jy&Pq`6pUuwy5(#<0o@(8AN`cIXpbn4K`cE^7$=_E# zkFTHo?RIKqOlRY=W;a~LeFaAJw*zIBY{LF~i=Y}06!lV*xcQjO;JuSzIE?x;WARYic z)k8y*${*k>(UK6Nv`^p`aMGxqbtyc8fDhPt=$RqZL4qQrFuxR8R#F&X{r!pk0S&$^ zXUZ`?IuZ|$GSDZ&}H0b@8+Q%R?g!CV{+o1gw^scZP(M>5bw4Tf;0`P$S zG6ZD75Kxzsh3N_7xT&(c+Vv7j*?kaqFBp}{|KE2)e|4!0LZi&-Bq`ubPr89`^;s<= zMSJ)R)JhQiA>O_$d;R&tFF#S2H^Qj083KzC4Hd%O)I#B5k71_9i~osH`Ck_%&)Fb? zfmF!hcC>jM3DL)hR8t{g3BTM)mtA#cf=LieyNa~JVc9huoy{$oSQDkuS-y+}&XoTO z?cIv8%R^5i0l~JIdv$Nw_PWbGFEzHm4mR)TJg=pT!qU&DnB#P`M%M;Meg_#^CG{^T zr9!uL9~X4%CZ;+jt+nVHpDtQYpWd11=kbta0)k(kh|3Ol+&dH*@Px^SKG$`&Ha`LV zsv^Ksq&xlZX#YBsQs1H`(6hsjOA*5UTu}&xkw=Swxb^GE2c5(h=`%w;a}{C-mea=X z-CP%aShVV-bFwumAN}jFZG}er?jS$bIZ0g$o(5O){Yp`&bE=9y2Ks+a55-o6vwHDz zHSS`r>rA#bheN+&`W4{ahV`#817qyN7Yo$WRNXQ59K>E!+tFg2EY_|)F2Vzi9VLgH;DfhgGHN@z zWS|`xHDK3?d3PO=@;IFk9+N|)O{Vn560kCZ@&XqNi%=mbw1*VW5!X<=*630;&JVCt z02z}@0L*+0FG&g_kCY5q(bxz9nQltSX;TrP)h<`mW&uX8qnEcj*I<>UlB z^x$`Z)MlNI*-4(0=|e(#xmt-2P=T1pb3kj&%nF99u*=PW(Ymh`KGx;nHPQU$t*4jR zQwB5$ZO?i7Qs?KZx1XBB z$LdWayLFwf)!^^)ZNGrOSFsVV>!{$rfMYo-LDxeo<3m+ftEUjv$4V48qgxLIv#1A} z+{JEaO-r0Sc5%=V9A0l0Zm4cENq>X0ca>0qrjEM1$v`>MV@Y6uWMTt`n~OHED~w(9 zsBXXmw#JY)Tg*6n7y!00iU3z*TG4x>O?gLuZ(v6^#sOR%#oJm%XJeMn&PL;6e0XjZ zp$bP8X>#?_uSgfnk2;Rh0pyOr{2yKPx=s456R?HcSFC_&@EoFBx`LV8Uu|-3I_)|1bZC4O@i`UNY{$7;S^?GW(Cxv`PRd zHs(Ku0+-Z^a5RW0u_GzTU$fA1`Ji}h`N#I!ID<&1b-N?A-`lOz@!7(H|K_@uX26}0 z5j`C5p>E?fJ!14BV)|3J;_mRJN2NImhw#}CBRQJ2)q$=My+Z4887*;)Rzju8>(S@U z3=z7P4|^3DGT?*jFL|0P*kfrWZcU`hFX@z4%J7eEr5&kQek6#hp1f9YT!usJUlIg0 z%Iy~1{OU0lyJ#e?D4)oxw;kRJZ-MtLA$Rqc-IMR|fy}z#=vuQtDymp-t|>Cz38lyO zq@>$vM~^`_wa!~o$L|!LfTx2xrHL zR8b|XW5+ZjbP$;_+G_`wBM6Gp5={)36m!0ZBv6hmu(Gp$T?`h>v)-O3EH5rB~> z%H9IkFA8}NTvlr2gAv8t?R1=k?9UJS0EsUO`2givARGcq6tK$pEVtuvxsdsJM{eVf zh5yTI($7z9z`$$fC6e!Q)JKiV$VY!@8icrA3MJOH$Wctub<@&4E zn7^cALrYAz#j=DjzK}!X3i*yW;vS<_@gZKVQsQbQ7R76CarBllB;q|Nvo$^pq<14u zCv@&l#JxKV@4B*Tu`HY=(`Us|>E)^EUL!Nq zNZ$5}ZFU0PIE-VlgB;c_rC~i;t(hf)u7vC532AYVR*R- z+03u|q^@#3`1w!j`ihEY3zT31EBwHr@N8{PicEN@xo9WL z8>SD~cV*4t2WS@FlpD>bzicwR^T)OrU}0h14Sbq+F_~P)?f~E%Ey18z_i{2phL-2A z(|(C^d_Urw@0;g;Ni=!@CWWBzhMMgX5Eg<4d0BCz-JN4pz`q%UkK* z`_37qc~jY|*>GDNcM}9uHA;C%oUWshA5(cFT(8fIk$m5aFwm%j58%Y@qxEd5Ri`Y) zelkwq#oBT3 zAb~>Ter1`(-aQdTUv>}SlhGlXLrkiW%$OIi!_R1lN(}s@aMjgnk4mRpxib3agF6@; zS3{Z$$uI^G`I+L=zC8sL3z(j=uJ%ewOrk{nFLGDM@=Z4e4J&TW%*Ok>miFByrtRej zC4Q}umE{plp(@u^*gI6tNW+mbwOsS@J(OGgR`q+#y|A&6IiogTndR}1OBFP;ULUCA z#@Q>ElO4UrWgCX_Zva>TMq@O=szFZ@Bta z+H9k+{8*_#Xw+T>U+lL$3)7-(#4bYUqX1As%R5@%9J?pnWEx`T(HdxqKfT@P_wNso~!iq??5?EpJYzY_N| zbNEYWMD}(Z1}PdB-1Mg6Q;LeeWP*Rc;wgBbNP2oFNblWx>MwO2X(N#P+8PaSF^d^W zR=MBhLyXK~jP<#FPtdsP71nj$?~!VN5XSkr&Z0W|4BhQHAPi#N&Xa?}3nbrJT%74l zv7$#FSweFN$+wH(EeOa29T}T_8(O>g7<%C$ZkFl83O$zn9VSi_`8B^~HEZ_14+;)n$45XfyRB0hQXPF?UY7d$B-{S%-kuDs#$b z7>Q_JlqB59<-!>D@;5cEfFq}g5e>pDzszAW{T#ty0j}LU*^g)w`jY5$jzCS_RO=|C-nQ z{i=OiLE8sZ6|j?AaytHNNc?l(R0{WdT6c+*ytwtL1~Gr0m;c57V5A@_uVa(swBp01 zp%Pw0C$RCaBZ`h7MZyf(^O7ewb>qHBCxWhvgzyaqTt?o|m)UNK*@r99Tm>Djs*@dG zbBzej$!#JE4(8t{JDUZDEVQzl?1LF)BE##X|24UhC7q;1Tn8a99gW-e%cB`Rmk>J= z=xLY^9^B-yUHdH9JE`S=P3=gvoke9Y(;!9i95-O2$X|B+#E`8wf4a2@`-@b&i0G=X z`jr>BcQGt#J5^o2hY)tayf<^Stut?O?{~;2)1Zu$&Z_65JW!jD->u+U7(d&;+9IuC z5A6?Cm*R?wS%l;WdzK3pFH2~3z054N*-CW1xc=Fe=H@YVd!&Y8LPy|tkGjPsF>#}b zUh9#thTG2^v1OGpKRs?0@078$4D*3)9p*+bnI+W-uCtL(CiQ;!GLJS}Xr{7k)Bvsv zt$?L}KL>|NG9x99$9kDjOlWj?X}{@;E`)skOpQ5{N;}*Sp->XvwIUhd^>q0Q^W<>+ zZ@wkUT>Q#0rR`UgZ5`}r2Uu9ji{w0mUn;=vQ};b#*2w4jYB%_zl>e>{wKSJ~)@SrB z^TAUTooAuJ)kYLeSWjv*_1kCQ_K3;?>=M4%pH%A!<5?^ zAxD!e0j+YRXsCN!W`U+0_;~fshP)r8DEU6@jH z-09z8_rLRR`Ki~sMLWTiOz;}r`@F*ZCQ5}clHy$p3)6mtg(Jw7 zIMjdvzlTQbtJtRilK=k)JozijN14}PlLh&|2C^>05y&-aM;nwnrXsEu@)CzmB7qj+ z+ev?)B=wN#*QxVmBtVOX_u!NjE%=&RiNyaQXCVAaG;v{rk(>?da#uk{3sVQ5_dh6A z+@4N=f;E*{6=a?Nd0_YqtdCps$FQ`J35iZ>=w$N283dDk;@aTA|NWS1NZ}X;ecfyj zT?ClUYXl(h^RM7sl#d*k2BTf`y=V0&++PNRfFk^%x-&>f{2j^ptHl!>6zROY8E)bK z_hvY06IUgibbp@wkYsx1bXaW97}WkZzt_D@hI2(|Nj~vn6 zsGZ+cv6BOwI0DP)lkt}{x=cxQ=4daK_EqkPocAE@=Ugzfvuio;D<{`2d+2snYP1!; zrK-5uo#RoNc6%@|Y8Sl=zk;S@M9{yqjx*VhZ>s){qn4vow%d+zbyl@e`0HLMvOo2X zislz4Y2&W@GYF^s-CU%0795_JW8>h=>qZNd_wkuRLUU@hNrZ#C*@j{b&-PQAHsvfM z#vS@$)P>2Q5R2L_{aoeI&aKI7YWT0F{PS)We_YoU@yZB8j-zsvJ=G;c;h$7)#XN{b zj#yq7D(2}R^E6O+ziHsyV^s@1*&tMULU>JwoO+|EH!DDFv?~=EezjzW&~_*LGww3u zwCMMsWADvmdC^uuuE(skZzEmb)f-so$zcH>D8oVJ5#&CEAon@0*se8+0Qj~8LuC#RGP=;z-+s|7b%P;k&O0C`EVB$#Et48QdD4s57^$L9&sIF!h&;lNYd(c9p7 zehJzZ6uWjH7@RgsTVe;&itoOqmB3U3^R#q^a}8n1+J2dafKePE0$96$xYqyi42KOx zgZs@=Bl>lw{Cu?T!<=ipc{MNXD;UeGqK5_d8B0aGYcy?gIj&g{;O+DoMnEZwA_tv1=5)@D7U!&2 zulNtiD@~DDbGqDdx~($!jwbn_G?0ABH1&}`D!T6(S&c?IME*$JsngB~p``8AsirC? zU1oO0l+7S&$=TFOq4oU}oH^u*gBA0VV^2wLgQ5`J(P+j=|M+8Q_&m3o*Pc#zK_4Mr zRX{k}-HC_zEk8=Dhh8`y9u{Xgwo#{6ncWmE!#8Y_bvE2yx2l=3Wa`r$(P&)ao9EIL z3)9}@)34?sg%}xC@@FaE@TFo&+gTqI1!&5b7*v!C^FNOKXu{M~`FstX6}#yvnHl@+ zK{a22UR;htR$J6Umtvut1ns?8V!E-5Z5xi+(|8(FBdU$cGUuSWx3%vi@9b@=gs3dx zQPMP-&7Ks@ zb&D8BpB;2-4H&<_G7p|Uae<2mwk-0%=46IHD|%}ZqJ;V98wsLHa5>&GvHDNb4 zEJdD&Ja0MNm5hhI5I*OO1eVx?&sGmWEurLsrF+YTf1+gGi5{1n)P^+%ke&rZF9Lby z=~d&4v<3NJHvi(rlb`kMGz7MJV^J@3)c0b#R??Vu-3V#c1zk6&y^$)r?A^{h@;&5R znEwn=fvCD`Exrt1d{hm{5*AI8`(0Yckrg{8O6c7mUoD3b-0 zsMKriPtS;cX_*wjK>HeZ831C0!dkW8U4t#hDw~?^MRpEbpK2S*CI@gkpmF!U&_4wU zV6Cne@~jbirjY|u#TB*qZOS;D>9NLKU=E$ig37k49kZ8WxyxV|BH^QVH#r%pqx&2` zJ;noeXAt{KTG+X~Icvn6wfk+@$axlm6)$^(<^AQkw?&PWbbC(X>~#-NN&AKzM6eip)Bsy+Ztn3jC#*s zrv{Z#HU9X9Pz(5KHUyN5+i}R-%RE@~YZS6|J^J(C!Nx z0di*fg$r6A)YiQR{lMXd0Gq|@#Gznz-B1cFc-?zSb%Z?nV?^Z#qe%ijoa)@m zB!~?gw=~z-Qg6hUzhWq7S$=i5zV2{yA1NzGg6JNkExqFp~uoZQdEH@OLwVCg{-oj`FS7W za-0m$D2(%CpG|%hDQvNR$g4U|Q^k@@!+GuAbHuuqR`?q(oP;cKdGU1$A&qFi=FDgs z?XIixP1pcCzP(sSCCCsbBV~;I%~UQjqKa@jWkRbJu8h+}i5?zNq&jMs+4{WX^`WQe z%dc7A%Ah-~)NH+9oABUk=HHa!EI!&1JdswMIjBr!lUVXUD3E>5^7UZZ45`O_w>6H6==B~t#SwqpSbeWu(C6uL93 zhu*9oo+|P5H->xx%rlSiT!jz|!S>ArvnTcZbl)M`1Hr{7B7&@E?p(U7vckRJ4I1WC ztlRm@-!$v4h#g79uRq^kh0mAw?mmd=a$I{x=!p|_sDr9J$n`%6h9n7<>9uo|* z*;%=}y9)3|Q2bq~-Sa4=sf64vZyBw|MA6B#O%rPOlTUU(dZ8DK7Ea?oK8rU5$U8Z} zQA7kiG{WSM1)1Pq^6b=@?joRP^{RRKUczIqDiYJ=YM(07<^fgW%c|{qt2~=xo548) zB>?g!$c7kpOif(v2){J6-oXj)!WA4?L-v8H=oBXgE1LtO#CA4Gw;9jKv8G0v+f$yg zGsop3bJle%Ei0Z|a4HgcXH4gg)}`os99QR2@oTBCgSOLhK!I)7OXzP9@=t4OU6LF< zrC;cZf5R2=_je*B_t`FON8exQYzTgtqk@*TssK#F7nsPdP8~%0RX-nZ=5CDGm}MI@ zh#}J^K${V5EfX$NI{~dcL-@{*7qmYJ)N$&dHpwh#kh%MJ7}_{=4)n&aATR_@SBd;_ z0x-7htQhPL1lC$z7KsWKkHzJqvQG6Zf)gU&C1W60`M=^O!b9jnw(yVTYTuV0M-nvw~~% zG*&L?W;-uwu$uz|mhx|JBBiKEq)0SmRi)EidtU}g)>&uB73kI_f{&%;wPV79O&5Vj`jyakh_)BP}zNV@AHs!r= zSO%2|gnqm~^fhtoT9}kSWjBDABkYVVFi5j}eRVEA0~MU4I&f2Xl&7l)*!o(7{y>Xz znb5u2sauQUEWx(t&ItW+j1CyM1{j?bBtk<)lVk_q5-KnK6HErxNc~5tC}7B665nM` z-ZqHaPR^wFe$=2t`B0lydf=3+C+F#lkDyRT$JSe}cMTjpLHfbO{Ag>E8B-w6^DR~oskD+uZy`Ma200aroGaJdzaTN8q;#Wa>4NUN5Fo5Hp z7_q6@qNG2CeG$a8lJ;y&<<`v5R`2TcFw}G(uxiVWHr2j=4+5Z1v{rZJ1@6R!X;e#H z+^li;C(l5*TB*405CW^I$_l@R__{kxq+spOdAdxioFdE<)NmObQ*6guJ4s~O-aN38 z%3s){33Z%)H2QSrloRY-oEAfZsJ4K8F_Ek2U#<*r5HygPwuF!Z_O(_p5KPnN`)t&E zW|1mnF{w{-SxmyOXc4Teu#xU&5z?R3f#f8tHqq@P%6P4godcJfHXPxRT$;L=(z@tK zADx$8v;I4DkQu^{qXi;|noC;cRhToT(qxh?bnpl6c`{s;h$Dl8ZvimdA)Wc=%KDpr zD{^e|XIBaJ{|F2;d!8(SC)Ks(hbPghnGC?DQAsY_*MLXd{Co}L6UTbXtGRtT{U1i( z$3Mj%%(XduzsC8p1pKNtG1?ZZ1;Th=9UxG*6ykZy&>RQe5&0r)vyV4*qQI$7z<0Vt zlPR;f@G6v|V@VUAz8USuUKu@qrdtsmE2q;z=O5kaG}Rw}WE0-Oux#;-=$^?zw56`e zm-?RK(mGvo!J!+@$eg=b!J3THRQ@;>*^>hD>==0&1@7sH+`OrOH9I>(z z>m+%~`$IE{U<&8&xBcV1{aGe!y1E@@~8{-nFmZ?R^@EpqPWF+lbktjz1so3 zq}X#=wskcMu^QL&QY#IilKH@)f_EV%%M+V%3qH)gy)d#zT4tqguYv5VWPV0y-#e{O zHKHWO!bqj3Cxm>L&uCs)Tn$MT1ds0(ClSZmc{4R&hle0H1=2`vu*W8!jdO|ncQ|6p zm*`>5zYMG|Kk1F5UhK3O8(R_0m;n-(M~LW>UVe*pI|`w=y|)+>`rd|D_fJ+=8Jy|2iiNs|hy&k|MP1=7`KyjLm9#>@(28D!aef`EI2 z?UxE|YKl^VjaPM9&a)-i{h}pCZl%gnsKAW8dm>`dfk%SFMlDLKoHGHZIwwgvmQp`N zOK^>84$$%_b>ao(go+fb(R-0m+Uy8mfr_v3fb{f_QiB`6!g2zAC@xEp34ivqJL=-9 zKQcazbKb;di(@TNWsNZKWsVcs@aE+4OCkL#=6_Kon029KYE_J>(97JZm)m+S*Lm1)aHxvbL&1~0mup@eZPn~ zyAluUj??uH7ii3d42}z~xfDHeuD^GwKQr2;_2qUw>p8!-h($j`J$AI!wIk!*lHxXB zKAapk+jCG(ZlJ1^HA$1TpuZf{R&V^wue7=cq=evQ3NRR`%;)mV8^i?@Exn)2<4qI1 zOJ9=X^Gb&jn7$J9)0hO9-~LxW1{h%=0}`z|e$kAxU#3yUeX<0`$|+?(yokO?(MpWx zodb|Zbl34kW8}pvj!zsT7g&HD_611JP33=w$&jKQF#Q=AqjB0RSTe)ddg@>sFl{C} zUf^Z5r)^kTLKbNQ(YbSe;O9>z2&!2yHIkwU-8IlZ*;DApYFKHGD7$t-k|WxH64ccs zr3)Y`b2gm=60(6g%G?CW8-}mqQQmQml+=BWhTL^-*|tK7>jEII^XLkVypzdzH|=-I zEy+z3blcQiiso!_Crk+G8m7M1!0qrj?5^k+`ko&u?#(68qKcVON={1)QnUN6vbp?% zfsS}dO5fK^4x<;$Q3v{{iXW`#)ZL;V`n+X#-^cErDKo}Ar)kkL#cm-I(;s}%E?YMl zwvP>QR~-x_Lq8($GSaF2@<3(jD42 zo+8_T8c?&!3YwmDP}DU{iwu??bqXz~Et zY^xI*?Ve)#ah~P{2+fCuouStiKZq-qHai5S^4Kh!XZHDZM81K#>Wmr`zuJGPstfBD zc%UPdC$J|*o{;7 znnEDeZYThdpiYXGu9g)k?An;E38kRXZc=V|>ZQ)inanC!*3~8Gi7VF$npPi}L3p;Q zw~Xz~QqMMFe_#^*^@kVo#V zPYyYmYKRPadAD{qH$O`C>!~I56*FHAM1QQ+aYkIU9s8&|@B~z8gw=c7Gk`q-ZYei? zRn3dlXp3O%6)O>#UeL+-5_Mn4uz|bFcV0I3aYnC!i=Ffmp72!mm{|^pXsSoMx7n^0 z=L8CXXl&cp&_`!;ydk!P?QNUnL+<6#r)gS-9>PJcb}u202NekmL6BzF7h0|1`j!)| zRPKGZAE|R9{R1LaJ|do;(?tfD3CGtv+B4+on~2)XZdBRPyU&llo-=rY6?xi0lYU&v zpuc-mlCHMA@mzDd=25%ST=tP(CRUc8BvS*4A)vW$&UEFu%S z;St|EZ7}^otZ#_;nQdkDiR9w+Z}+N-`L5rtR+N&=fjJfkRPb6aLoN&%S|OX~!h1X& zG_)y_!^rIkTI9|CXX23>22-nkV$utv{0IuqY{_q<5|7Wjl~w`tToUi3MRo6a(oqpJ z2mKx=*D-)~2e`oZgM81GB?HA&?A*fuh?;6W^(N7Y-e^?sJDHe_UH~XXQNSXOFT_eE zH^Jj+Ml)k#><#4_tFg>Uc6i%<<(NC!0}o88%6Yh#6PV4>YC+9V3he2L=F0Ou`xpuv zTw#r6GKtLQN@|W}2RzW$f6j)+XP{4dVAAdoFaK9(b|0!-?lsV?SnUn zVm;||^Q}5a=IZ zNPfrnff-rY->QARJDn6(#u>xM{k7wmMZous8fIih={toJyTuf%TbvZO^2BT3Qr?^s z3EKY-TM!O?O3&{dz@pCY^#%j*Nq7a);G0Os!lOH3ds`RRC$&x}j(D)oEvrzbce!4W zO)Ws>MUE{_ku5pyDxH-_u>!)^8Z`@A<&B9o)N!VidN*$B^G8QX&kv6WowJ+-FuD=D zd+NNdbl9I(>fTPNBw+2qC*fmgD0oL3z6TGmZJE)fAf$W!QwLndZ@gA2hhjiy*c>PjPa2yAk+QLohY zS!Lo>*uMP*Y(nD%zninWh~!W(C)?dqcid{fa{6W|<)|KL>p6*eB>49Il*ejaTADb2AH%c~h`ODA07(l{{(p=aY%38u$BOIfzPN%7UYv?TN@2 zj20+R$|{zoWkMD{Z$`X16wK-J!H@wMIM6Pejh8qGx0aC=dv*wQ04GhAKA4jbGXC(D zpR#gYhSO)Nkb?nSugA?5(Oj;(_9ej>0~o7nWhE~z-YtYbY2SZ}g1$2Oi<5^HoXf+b zrDz}Pn@w#bXqXy&dfUp{Tc28G1wdW$OKdLQ<}S7ciWLn{=`1cve#nnC2c@I`|DWDu z{x8{?_~0uhJw{lh;iY3ODH{Lf%MG-!L}?jJI6A+0;@%wgUvK~XB?LD9CBci)-ZOx( zk=9)H7}2+MGR7H%H|s8I+7(ns*u2uAXO!uYqzJrUB%fME5_VAZAW+l&WL>+IzBiRa z0~M{kVwyfSWGUzzJ@)idIiET~h=g%O^XR9xwGB6WOh+lf+0Wfk?xnPvHA2W}_NyO6 z;X_cp2!~vU`L*lHb_bZ+Z8!|`i0eE;^gyJ!Jax#(0a%kJH2SZn>P!BiBli*Kx^a=I)I z9Z{M^C4U^vyIP`Aos#ZIq_p0y<5I{*Z&_OGGS1HYsw{u8yr;F(R+i_@_2khj+0%S< zkmHLoGl9G0~5@#C#4$1Zd7?+6pb7RDEw;W!5QRVOLKTM^N0(cf^6OFVlWND~eIQT+2DL4Q8@OMIIg z02esI@?u~gMBs}TVteu3!ByD1W3T3*wcd%kWQdH2;m6#nVio*3o1&~qyqNi7Xc@Jw zfYwT0qGfZbzOH5H=$pcy!FXV=Dgv`34tVdwXessPaYMAg3f~T zixn{i9MY4tcSE~+i%W1UpN*^=1_kbPl`MQn6*4uYNsrtRFG4lm*t^=^$;Z_Qwc5D~ zF3elB)9QdU&zE<`;92ghk2AB`wkwNWAqb+3Jdil7zCklyr?(^AX2mV>#iSwiO!kGD zzXXeDihu*j#p0gA{aSNiDYygjbp=J2E{`}-@*YPdDkd~jHbogA%wvJix^AkmH1M02 z+T9b+cC{7bI=%tNwDySrNoXwAhND6#rh#^8=eHQVB&pr?Zw|D}2`!K~}oK;=YFx0VM>K?nauSVE}1`0qF*jmhRjj0)m7zBHcYA z-Aadam$Y;@0)88P&N&ih{9cYR)$Fzgxj-g7hi-s@iLzy3cjOxM8l)@(`rW)J79 zZsr@wDjov{9?~6Aa7idI>r}A&#O|BkZPT8C!w)QJ22iujZjG-$u{gZIg1w;|sO$ly zXj~$y=yGKo;PDwF-*N)LoJ#AI9Xo!T7_H>)yvW0T0gAxjLoi*>X`A&UzB4P}s}Lg9 zi|`74|8iNo4vy;{4v$M2)aCs7{SBzSJ5^Vg#!N>;fnbk9KyDAj89BbOt6f@~Qi3SI zh$=IbIqb<9e7JV+0?Y!g!{=ZMzx~<&0_A{>uP#7=My5{OKRRDEQr_BG9pQx2rD5or z-}r*7MU9tWwY&F*Ki?2zdiiz>Xf9n;cdov~CfsU3S6e^&gG=%>7iyG!HRE6UFcflW zee-bs4X{o%f3`jZ`u5tjz>ab4ejZ!@&|yN^2od9Om*HhQ-5@28rv+m4aNgbU%vy1Z z#s^@{NVVQ~puXrjB`@l>NJj@_v;J-E#Fd!Qq@<3XWtGOD{&7A~?n%S6tH>4}IG*E1 zUXqN%+Yj<-7@FRkJM2$$+>?TmOFgdph(O7I>xl!(^*64_7rU;w7JF?3?M>C^SRKDT+=sq-$rr|stX zPb9tf#8lXzA-S8M2tF*#B|PkzE2nW@EcW~y#gC@A;R@^f*zIh*Kb?cC ziyg0%Z~}^#r$W{wc=O1jfy=S+K{N)lSr6#r`2FuXiMF)bCdNUU#CLMI3Iy9lKy3`< zVs9z9H4Yf06Kaah+kU{m2ZD`Kr7pcR6E!Cu!d=CBKn9CVAamV`J)_MA(@i{gw#I3C?HLxd! z##*yj^>^6`R^&-O!BoWYlP*|03=ai1!SwktSikLWs)QbDhBdD^jDfy-8^0hakQa>e zh9y2B*JA5^#X(YH7Gqolk=EnlwPX6>|g>(B|XN@XA2OhS}oxp#ttDGhRYlXl(h<)@v z&)Gi_5fm76Zl{HR_;dh%*ciYG?+8%1+-lR{^ZeoOmG|u6b00oaFE%L|QgN`Zn2QqGHOV~LLF{__5ulXVmN+mR%0vU;^G_$k z;awH=t)pxK80+JnjKQyVUJXfJSbh8AxDpm^?bv|wHI2xY*P6+B#{k924tF|+ab9KJ z$9l8^5hC_*>@|4IMW-u#?>8WF9kC>eJkaI|Z4aDP_&T`#$}xO0^di*`a-PJz5@vD6 zPWbj7e!!lgTC3CjHsi%Ox+lO;)aU#1;*=Z~zIX>RX$UQY`xHCgABMW8CP^;+F_^N$ z9&k&8Dy##_NT=rM3NP=gkK_k??^!#FzBdV49O_$)>m|m``;n?r8ufK%91MaGG9>+VvspptQLz6F?fkif&QR7PA+M@sJOO~oD-ODKDccUm zwDNi~M=B3jPjMI+_Y?MdXJN-?fc17&4FQS_>0cAg!dbsHf^W6)l%!V z5DJHL&7pD6xVS6h9rlbAQ4{+yE6^5&;?9A%;7vPNa%f`R05Gs}_Dhqi%Xl@hFpILV zCCD`TnJtj9elO5~zpc=?!IuLmK9OL~je?)@q`Nr^5y1{D|1dloI7+_{|Hm4QHpe@B z5q3dZ5qbGD@*?zd1w`6$?9q;FGu9_A37D{VPTrg7rl20rJGfKtR-nhl#u}XkbMZnl zl=Rjc{RrPD9L{Lf6Kd@QGPbUYet1G0Y2`NGV)2kcgp)4u7du;@>XY=asj7#VjhZ6G z5t$lOB%UCk=TFlas+R>;KDg;lF{UmYGiF8(Txbq27#V?93n&mHPz8w8bKd!-&hFhS za#QJ`eVjQxmP4H8d_>}j4a=7F=-SAh$&|=r^P%Le7gAb=>+Wn*6KIdG@1FqmLaod#ns)>k3#WD zZSVPdvPR0%ajgEnOhaU`uEE074n-p`Pa;95w`5J-1srtwrE7c1)#x5F-d#~q^zmAj zOIcvy`v<}Vf2umHpEKPQvbN{w7L+*<*E)k3ldLIOOJm#jEddawtrHM(B2I9^#y+6& zIePeVjv=rE^AqC34b?gHin^32>+z}TYP!j!CuNS0yn)9-!n268FEMj*6sEBuEY)Sg za-dV)kIOTJ|MZN$MM9EVNsQGZn0|F>z66#U9yanX1olcVW4%RM(tQD6kUbwn9~|qv zdKRo)w{O~4`q7T==-F4y4sO@Aq-~~joETsc?ErR-1g?#Eaf^&yX0)Hp=vSF!a=?y_Uh{|iFSYvikol?g*Kc(N?&N%`PBbxo~0Bs0ROMq}$sJLH7~&&&YXP_oD? zVt5AO$xWaqlpM2TpX_3g_U1*C2m&bfMj!BZR{aH03IQv{nTXUI0ibIR^iDKry_gt` zJDTsrxgZ5E?X5{L`+tOaX}8FK74ws$2oSo6{)gbhWrWAJ{V5W?N8V>v7lOhJ83+is z|IgCwcLhw845DWgNJo1Ti#n3O0rnI8T{l04ffvm@iWe0M$u6Do z?=JFNQI%4_c7Xq>%Kfc)dPhM{Qd&dPW;sUlF3|Ng_wJaIgE$WPe@o<9n7gsspUR0F z2Z$49m^7#tT4f?6l>V_d96TeguemS%;j<+(Ns_EFv1e*AwAo^##dmWb3g#HSAh9G< zy&RzobtQaDWz9y?h~x84OTMd1r0KGwT0snFU~D{eRxlAGDTuWNS1zyG5V^Czore%GoK-CWVf)B z3!nRdm5yTKXHFo;sb~Eo?yQW|#j?$_!VE|=;g>aPIcq)Ys<9@gx?~XxcG); ze3(bRk{W#?D*o7sYlZZohM^+ogK0%i>R4e)pkv98G~57BjmLvReqI{cn&!P0DgMWW zicHT<7)1_rJLAO-%3|ptB)ak1_z{`;#WR}77IEgYf(Tzi%hBu&52BiiT{chPbtO)v zB{L~mgRJFE+z-MrcZ##FF$!e&I7cuG=TIcflYLTezM=C8YCHo|7_YXC^_vVVJeJKd z6Q9Lw##csLff_5ShmF1AMdHj04I^<+M;{)>PAFSOc?5vm@BiStP|ZPY%m26aA$p>> z>Vf)dL)8uGuwKd7^bd2@o{R;YS4VoM@3LC6radf=p3QbMy22Kp9*BLnpny-q^=*eZzhuuv&h4NnS;Xj?Ip0x~K4K?C6q3EnREfIRXJB+pE`g)1; zpxR`*o^!HW#nm&b8Y?^n-MmoLwc}<&wLD_C-#H26j{4vV$tO8wd4LLOH0k2(S>uEV zO8$rA5&9oVYireXQ5UXaCs_z@sqrg)E8aeamZwbFOO_#moerrjjgy*r0!NG)$GB~( z$$}$;!v|}TyDm?w_xFM(tCYHTm2ZqF;i}q648eCI?E)`$iF^-L=QnnghAOOmC`Rc_ zocq2-rxpV(6-6EG%YeRY@BK)8(g+trIx$Lc0hpw~Iv_FxI&d>{qd|nB{s`->7pYQ^ zZpSMc4!Tj#Uy!#CyQLdzj@T&!K{8A0e6S5lX(J*d`lA2b7`QOs^|`Ls%nA5fmwI(7 zD)JC*)ca@>0a}*UR_NA^X6Bq>sCxCYdPoSOWeNJMO310 zl=~%ftP2Y08e=Y!t##rx*NR?X1QC+%{#0gvl)~VnSyUO3C7gX;RoD5C)}K=J>b8j4 zG;z}?dj$PK2(A`Dosk^?)~OIGSA8CV5Ff7nfE)SMgrA4Nx=elDq8KjFEdr)5eBsx3 zC)~u*XnjVW%7N|=-u_FB-0lf#PNQ@3zaSYT1utGd{pl=9B8`4j0wdC?ObdfrXc@gr zu=}=lIWEHf;sYIJ%hzTW$WQh$Nu9Q=baC|6=i{z{J`_0_+6I7(3LuDME!HZ%$I=Nc+gNq0t=^9@>SU5RQ3U7JiqRiOOTicEkE|qlPp9f*m^F z5H-KyjW>z5QH8~MN55;5HdygDG<0{JoH}ms zoD?9U8%)7P6m0|oL@~fYwFREo<+b&;BIAw3L*V2q>=@6GJnz3(Q%uM^Ph1_$xyZpv z14~j?irZHj&jPT3SGoMKF(p!!77z+5-Fnz(S^RzGQ>!db!PRCa`yH*|ib^A|LW%6>?)HKH{g{m4YAro3Z)Fr| zb^hN4Jo77ypX!}gX9+hyVaon)T&O+f7=D?oh#++dw+xA#es00%Gi*Hl_cLK2D`GXBiF6tCz>eEBU`(M=d{Xa z5ZcBUu|5vNwK|ZWC{HGi_wX#YJo5A&m!)RarAZ2Fql#4n%{F=kbE5B0!Jpe`i^jZH zVKNAgklZjXkx>{ZkgJUY#m&^g%3jYk$4LhKMfgis5zaNRsay9`!-I z48Lfpnj!e^TxG7!lz2(I!@i`*zZeH9?+YfP@X|<8bl$`|M^Mgmy4f zSL;^NZc(2v)JooZVYOl|ggsXo{S!!S?jPHjM_DmF2ya1Y)g`;R)6mgqxS(GE;Lgu3 zuSP&>&p?pfVUyE2c)8I|f@iM z#(H)7^4+4{RZJt}bqAOy>4UiPg3}UV#}$}jjkdmBCWF3PL+|wC9GVG%m831;qz`ud z0_26vZ4EVH0bR$y);N5_z{wzdU-w3~91O(~*Gwqu)3Pq%SoLV?#B|5V@eR$(un^PX z3IXR{OHAOYr_x~_y3v+6u^8WZ$M_ld#tr#oJBCKRaa7u=>UN^f`Z4|o9|1PVEFpd)n7U8 zbz}`hpPGU7%z9bSJXKi5@M&HP&Rr@{)5rYr8rTQ{#U+8++7<@f4I{_r-&}{@OlPkV zlMSMC7;2s4+(;=tx@p9}(Ci*Ni3BsnD^f$i))3fb;H>_S^~L3be^i0QDU1yjufQ}- z6msY0e1FqRMD7hf(B*G(Vz(wv-u{;y2J9P45Vl3D1Som5&P%_WO}D+iBWE0@`NYPH zum@ceG-Nx%Ge7kZk5ZD&vuZR3L<0xKwK870EJHuadb7+p4ZUMtAPEm<_`Cz9uOUV! z!`D%%iJ@33v+C3{{pK%0e)M$w{Ye3#8>X~gcmmWws$Gu}1yx->1@28!6Y}9GqB23~ z4l4e51yE{=d6!P({?4%qKylys%Z~y&r@F@4pp{Q#FvAj48P5K^nt^2<{j2ZDxP7P;DQ%-xfbIEk8*vy_i|EPh=|%N z-QSwx_IgcMTa`W{%$vfbQ1Q^7z*mC`l)~d#`jVyI&x3J`A7*VTEB(rfy z%Xy)$9UtLDEW*8ZShTQkFy62^PfENy?s!LC^liyU*A2bMpxv91>>2sw6hD$po1}7- z7k5hTMk@6B*OU+`LM&vgdMH@3T`ccIlyb8PAB?{CqhKEW(-TJcKfD-{TO&Y4aa>XH z6JfAF=U)b!LA9&DsWF)AzXg{l!a75bMI`b>BeIZt@f~@_;Q6BA?vZc3X^YRXS7xU% zICz5uAKy{%@e!-sJMMlVpJ|aJzTSGTnEP%)tXf?5vqj=kZ8jY2VW6_!Mgh{b>}Ky7 zu%{EdN9@g!G;Th2#S#17G`oTvw643Yog7EvVbJj<p>*q8X%!!)Y2EuBb(LhZMwG?1*0Rj}v6H|Do6+7qc~N&^ z?dfBr1G60IR2 zO`uBjFaO5h`t$k2p{B~gv^w9o0RZTgxg12@P|XpK6H-Rq`d^YPYj2YPm@Lk-27@4! z3(fqAzl+^&Ntl1sY|CI~?N-h9gz$Ihhz!mI4vpZf3Ra&pz^cWAzb&Sb!N)jYE&|-^ zyfw(cGswC~I>H27kwBR{|Eh>Czg0F@e4wC*n52eJEqm2vroGVTS?Uhni;`) zxc>Kj04L>!*P_IDDSMQV>ps{EaYOwT!HXzt@L7BbLO0DS)G4hZ&*HbeICsvE5%Hxq zx#hLd-qXs&Viid$WlqQ!1Q&>Z93QHv z8s{*X@o=q?rj3mR$J!uG{I2y1f*9ypE&_*f1iWcqj{Y;Obw+xd=Hpv=$`JDlLiG-I zxd5bH-bF-=>>>QR;Ri_P`;oJwSiQYj}^& zrtte?3gZ^0=WRF0pMXVMcb=QqHsC6S@``oM$4P%wRTqASN&%ZAnIh ztQ`R%?}PXlrn}Eb9*B;{U#gG5>8xv;oqHgcQM!labnHFclF?`mlvoXP-aL!#@vB^3 zZXt9hDpS_Av{a#x{jK@%x}2Qt(>29_Gh5X?ijI%g2R%1WYo6N(p@k%)8+H1pDmnmo z6>dWfHUJhiUeArQ`Iv6n8j!Tg1d7m1wHM`;SM{GDi*B4O`XZm#KTODL&)F)VmBpPQ zY`NctBSW~}eIVR|Lj>$3YDR?Jh4uIebxOOid?BPor8qepX!GG4Q8;M4u8b~xQp4B2 zo_#3oIo^DbCHc83iZ_FPXNc%YMIp+j{FVVmffYYVX_n~8$X=@XW1z#2wZnlX&B4%U z-FDbQ1N&muNYd#T5#!9pZDXSUd1T@FfJkA3EAh&W`pHfOtDQ9g>zRpo);u5=0sO3a?*~};maar&6NepyZzmA{@|0Jib}|C;uo|(duKJrF4+;* zrIyN84;@+CS=Isu&+asdlxBUs5gfgubk><_n9&rBo*U@#>C8ySDO^X04TIDz6Xg)! z5#gz)k-!IfRsZwQYM%qc7CwhZ`f_^wF9Wgg#mTdy=~ODBxeJ-PZ{>{N((t`?nwSn~ zvCQX8trM3-KaLgdg*UMno`0a|=_VO~ix3VBP@Tbs8xH+2FDVzQLZ^Yi?B*!@vuIoJ z6X9&n+95)|_%4mm{WTVm+S@00QlHrud~Yf)2P%R(`bl-2F$m=F2wai<82>6Yz_!L= zTZS^4{QxO!#mn$trG~!+<3a!bgYmKTd9>ygFWAW@xV|55SZnm;|7v(aF>vkK{W}`J z*jf(jzu~NUn-<5W=6}KnJ!W$^@3di?P#LL&!lRZs>%9V^#3^8gvfiY_HrrQ^$Tw*& z&TO^kn~=T`9)){Gwo-;DyE~#}Tg?PU*$gRUiD`>UfUK)yLc$Q6WgHxRDY|!B<)*OX zK^$OB4a)Jh>EZCQS%OB84CPmh@15YaH9R{jZEZt$Bp|o^{9D@sgmtC);TDSif%Hv! zv!k}sz?m#^-2jERYTbc|UEan)Woa_JFXpKG9`h`N*J&!mgDm+)zMkc7qMnHnsyetxd=omjr~B3x{&Fsfw2lA01CYmgbA%we zbS;kS@3h_ww-z_~pqV>L_cOI}X!@I8>ReIG=dt6TQ?y*)XiU1b1wi(PXhOeZa;ax% z$j4!eVcxRt>ivA}sKu|Pv7;KimyxTLI!PNMoE5G^I;?uQ`WL%I zrC-6bWbzfFMk-CvUi#FmDzQrKO2tS=1ycXS>!bc=cX%z4Gh2d7b+$q=>i^}7U9RP9 z)DWm)r;kLcN1UteN|n^CLGi*mzE12$R9fN^a-`nfQbd+|Mj%~J{I#o3BW`M_e5+kA znr3KGE$x}weN%gxhm5d5-7LXZA<;Z z?ni+T~VUb*b~j%8Ghv2FVp@-3i#R@KPoar zNtsX-Xf?75RY+>dA=*0c)#RVE-O>arHvjah;QzB%1+>k#Vkl6Q8bw06ZMgTmZMbLs zqon%ZP8Gs7kaaW`8Hzin8&^4+5Emzl4S+Er$mCoZO>c6dQ+}mdeE*Z=fZVCobKZ~r>}n!Om8`fB zr$-bgN~ zI6l1+5QnU`A&y_7Q2AiA2=trVw8;C*BI6&uDF#`3&EZ!RP29sT%B)+hKP&!hu^j;Q z4Fv{i`#d+Yr1O`DuuI&Mfpg_3FxTM=ze1;6)`$5w5iq^c%`V8{JWBWZ@EFZ# ztatC=Gg07rYuF+kC%p2$(9zR+FWoHx67@Z$Q2#YOc3dCKXaO?g)sn-1A)Vv10-`q0V&j1xP+YOg_ffepP?7aSv< z+cC=iGe%Iz@AB%R7=t@0=+wo`SfNf5{)vGb2=^-So^i8uFmXJc0Q-kzZcm%!CtvLz zo;$15fzXFpTVv{4QDbDR>}WzCV(pG9jI z%ILAGOF{ChTA4B)M88jSdmM%&XUcy$$U0{fiCD58^cDo`L*n~G+H7nnvp5$v9N*@_ zhIhw#%o~cQ>4?+*A|l-ld^{=7w!Deii2^Vk_yTY*YK^~P8Z;ltYl$ZgKR6?Dh90iH z6%o#Nw^ohrRQ8V=y+TCBb>>4)PRzDQus~VIfCA*u3ex9wKktifOY4s3C}!goNTPBtodGk< z0LGPYrb4-hqKD8SiLW?J0dh1D_zQx~4rN_;DbcwT(Lvk9G;7o|7a__z?}rH?N5d=( zB@_pNYDmNJeyo3wYCrxJ)oyJUEFYyui!6J_4dhC@A2%Z{M{5E*Yov+EKFL5h#6$B9 zxa7AThHdS_egLdnQNs-}^5^sv2}RR}_ia}A4vRmE`0*R9ky}rIw5z8Y!zIuXK5MM? zH=h)0jDWfCeHU;N8ZmC4mYl@7kad#AOWXPK;TPLQuWuiNVx+`-P7ve9O%q zjq|<$bRdTc-}eXJKm3*nzDI*o;w2Woull6SCHm6CF4+~vawFOJuoqr2 zViW(p|GNOS!P|HK;zZwZ_roLKIOkMWDv$8zMGXs?UM+YbW?MQRS2df2cFwlHvXD8+V)_wd#hP z>^n6^p1vUYh{N;P4tU*sD4KS80&M7Wonue{D`LMO=h(20I!d&w$MCyb&C^c{q1}f` zqCr%R4*gC$;uPUp25kGY6wHH+Be~T2LF;LhF7+gHnSNrh310A2u{WP zpfv~WxRcZB#W{{Pz9yL*OS0ap$Fkp=pBPvdTw#>QO&!kx&*hNTqjMKQ&{p7(!KZno zlazV(GUMtwLs$<8<3hn**d*!tb9q^ybYukSeu!o=v7~bf1QX!nYi}FK3(sE+clgLq zz213>hE9KX+h=Qi0NWi)V!xlFe-up0mnQtMyQzG-%z>eM-YO;JJ)EeoC*l}5s~ia; z>4chqvVF>{w@Dn=o{WbGA#g#6L3xe70&=k(z#H-O!-VU18QPYas!UZOCf{ZFO`4cc zWd4zz23xSx+~*fV-8(fSt}FQ}rzrYfQ%#+L)F-})Ke6#=Fg7lQ-4M_L$CO|y1*!9V zBG(<>+S*EjDx_6|#q&1gdQra?yqVf2_#@wK29OTNv7C8rX8BTOGYB=N-CT`;H%q1I zFYH-kOol+HV)YGqd7WfWlT_oA^e+Q7g(Q59Ug=i%P28V>b;MMS`n&0ts;LfoZeiPD z{NvH-UniX|#y_1^n5pWe9ttNSO7>`ujB8}jlg)}|zdx2wS&q0s@L{_e9g4D;Iw9javHm@u<>&}lz1Y}Nky)>lEm1|$92wg_7K7m(Py=Y6nfIrjdd2H*$GE()% zTPIP)a{6Pb;&A6qQZ-?Ge%j$L2+q}Ad>u`^9TYPwrfRNfI5gXQ?qRxeJlo4P96Opw zB_6E=z6pnVd1!gAlA~a0?n<$}Fa?-%23D5GIK0OX=~=Rm8DGOlrWDwSMm4C+4P);i zO05hyYXnb9?n&h9a(|XeP{{F%%<|uv92eodh<<}^t0+D6ArDE+VB%*ZnqE~abJ&`_ zK)dOaCP8BIkZFfL%PFo$p6s2S>xs*0ODIuqy+tvq_!d0axO!Dfx`Sz@+nlg2SgQlH1S z1wHL5W!XJ?NpAN#=kVl2ssD{;$+So+ntOB5>Y>Y)#>p#Rm+h*OFU8{1)uOCQ_`{!V z1{6m9j??cm70#L!NLj7;Fd+}C6)BfIs{p;7axr}p@MJ*MlZrS}wkYV6hy)UIMn}Z& zLGjf}RG<*?6O`j3Y!>wNyPChD>ZO4lwM4WV8D*c#Jn=gGYo8C69(s5a37~x*;G2=V zG@?efYw!@B4_=aKctL@trEBbrSeRS-{d%}E5?z_K7B0fqnAa7c`B{*&z-(*49+-$M zIq<LERrRlGG|9Ncj&{5@n98*uFAhf2VXdp&Yo3Y^bu=_9RMqfiQh z+3#*uddWEBf1s+!Z_UI0P3-|FY1T_uuWJ40wx;W`thGXIJCs=YdfEI4mAw3Q2bt6< zIjk1#RL4RswW5ihV`;|gu`qQ**S@pVKH@hHR?L80Ib9XikJ?7DoyH@nrsSpiz(3to zwp)(N>K|Ye0}dFoSH5vWr1Vah?^5;h^*LHNoGch??qvi?8*d4DSzH2d7s)Fb=m9ai`}{$us7kqUW27thgA2tVe}_1U=}uysFAw)Y%=m6WpJ z%{y~2iXWwOsEukxGM)7hD0`3X$eLg+MVt0M;>(1z`?G1;#Af&9&~N2Kd%IP2;yXVc z6e?O15_LX*nLHOo5eFej#uQ3zj>><)E019tP>q1r8fVYxSV?MUQX9*>__AUTyF3Z! zf~-Vb6n|7)ms(^JmdB`f_InROPcM1OuT}a2J)b%R8ilh*M_abe0t|U~ZNnu(H*-{@ za#<($Dr!|0(Cr6A)UPxXr3>|RyJMaFr|ZC|mDM#cZ+X1NMqy>Pzf+K~R2ZK~brtR~nxsQ3*#9HDgZZv-foqJR zs8`~h#Uy*GB=dM5fJvQd^b^$>0nO}mmQ5@e*@aQWGlY4n8tskfPG1gTH?O97K*p6aD-AQ_-(!f!`>>ED^`4qAADDeTJr`c(we{CZ8)TzFxP$I zyBNtxskeNL(9L{@R_c^Ww67GoC>J?t%x2%ZRuhu|TVTyfIKVIyB^d_Fc~4{@ z-+n=O!#5R8Ep(id0uRPGaJL6`34?D$q+Rhc(~$toY1^Kz{yHp05ZJFyn}u7K+B?Mddx(dohlICR*JtrotUOo>pKlynG1+!Is3o)tH;`wk-+ z#6#&4883Ggpv7l6>|iFU?>zDx*PXU;s8kvmuk%nZ>si6QPC+v^G?CcrjrNqoOTudnXHqvr|&Qy zOQ5Mt9@m65e^gV7o4p^7U=_Ql@GpqM(N<(*=l(vLv(9Ml_x|ZF$`5z+D7Ha8Tc8sU z-xOaM{%jI+Yn0Xi;oH*_vUhwA_Z|S_{3z3;SSSv9(zFKHd^snPkbav)N`SE)&BL9z54lwdsCoHEOH$-Pubu2x$ElPF#^9F z+%O5;ZixO8RlcG9cD7I^8VCJvBi$T;5(dyz=*CN^lNud9#Z{B`?4pO<;QRLhC5eh-BHlyP5eGoY-K0@aF zX+LTQTYnuaKbt$dxN|09{6H!0!h~lqC>Rv}c)# znK>%rI6ARv*3Uur;5_V#TeHQATl4n^XpkR8N^*8qx{mTRevkit3cnw}7aCHhXY>GF zxrbE5<&~`d+h_d!F{n%K$}HgF+pV7O5lK-x``vv`aRKHqDGq^Iy0hruueD1yHZ=Ud*6!fwzN)?JpdOpjngpqpM#=e` zeKP=l995*H1*t*umtMg4&>}4I6RUshLQE;9?S`Sjgp7-hZlAN3_Mk+Rv9&rushVW0 zx9`aAFrm1!MKH$M5Be z?+&2nXpgatwRSACT)n7W8^ojZzPDet8&n;ax|X^$GC0q9ho(qRV&GY5uiDtcFNmgl zG>*JR!j90Q0IP-5Y=9=34L)`EDSbmEUo?|Jp*1V~;VCKmp1>sFMCLQslp1GtzQv4Z z!uFYoSPYa|k#tsv!I@IsEDd38PWrgdR#S^pPuJ)4L=IPMiHVEVzD36i(n2fq5ovr~ zvP5696o>VY4-te)s9Gb#Z0~1+R8IPYm8}yKx6vswv!cz)#mg|GNe|p}1@Dl=_@JH) z7FV;I{DR0)jk^H7Z-kfVP$t!?$3MrvD0wfeVXI}Th!^q@Jt}RFY(&{fK^p!5a>rUr za@!JH@AD3AXh=EnX;F_d1DA>%-UP%+KhpY9k2q#r*OnXxNB2^esYRp`lZOHtYgjd5 zw;;E|^t*?Lhg=f}1;@XqKDEZU)v0&f}u8F#%8Yu65*L=YseQr8w?E zly(tkaPr#_$7Cjcf-MbRfF${k(*H&P{nObH6dwvPNw>{RB4AojiyaXczYir<1F4Y^ zsg_J*)ld18%4n{HIanby_blZt@1oSH@|>D86{S= z{nj8-KsAsrMI0olg+i>UY%}B3I3%7XAXTE^-y09tS_uWQt$t`k$iHpR(UF3ni~@Pb zx1k399idS3*z~o8j1BZh|9ApjXhfv4-vOS$1tJCRNg@&Pf`BazsOrBQ+G&|=GozF_ zBoe5}F$tt)lv|TP)K;OtC#K7-XWl>mqi7S>g(_#r{GSZlRqt6TIe>Im2q))ntSyy! zY;8aD@gIdWs7Cwuw1xx;BQXk>==y!Cm`FK<5pp>YB>z9}5@;ofNmgA?2d9Gn{KoI! zMl}QTy|3xf1@eae7T$p=!`rzW^`+4Wsui|)-q61f^Y24aE4SVO|Fjm;1|SmfZxalt z>0U6}Av!6bT~2znu7cD_oR>igIOuUrUW$ff5kreiZGMog`LQwx62ciOZJ>9T(L7Pc zKd>dRXULgw1=Qf)U8>#qf)+zq?%+t*{Txna_W9-47hWUS!7u=qHQ6~oGh7dIumK(m zF517n7B8ttjVrFI4Xk_&ea*eHRH&F&xDq(t{jEPqhfqC|UPWNTwv7Ne>u`2O?N{BU$1`pGpHoTmp&9qTx3Qd~2o&1i zKe+0dxwcZZI&VG15mE28PK@8p3_8S_+n)<}+F8@md+=pEQ>iMOdPCg>tLukkD3Vwu z-dV*c7MD>&pqRgNC3S!2K(NT>sH*$-^X)0)F zQ3xdKv-1QxdDriVS><-nPa|`M_QpcKdif8GSNyn7Wsb6HkXvpdle(z(GQn<3FYd#= zV?$(bmdMV!C;gXM+7&oqclm7xnxs_@68uKK2qkM^qtgp{-z4Pr56@6P;pSNQcdys_tHR2`cm`V`c|`61?BM=km9AD zz5t?Bo2^CzD$Qmh;tC)e;*XX#G))TaL+gpsu`pEGB>yoXFs1+3r!3)90}48TA!j)n z3u%>;78q7WeW`l4KrS~*92ZX|t_W52ZaU_w!*J45!2QNW@Rm{P2gYL_%|gcJH%GoM zf(o`hkYMMudAt6PA7D-MDe%uRrjRFf@V)9a`QKkvx3dq|k;#VvpJpL``RmiGO`F(P z>37|3AFj_ap3NK;03aFDkNWrHtlzuJ1&OAA?KS-OFMhn`o&KNqvGIFPoBFpq4Y=Lu z#@FndpS~^(16KN}qew)Su!i{*kw@UkIxoa7#6kvje|8?_U~R#%;8^1Kv7RF-Jbajn z27#!4NyoG&fMmuhqp^crSf5K6+RfrvWjS}y5Q=89@?jF8Xsv(U2FSUqfREqkw$X^i=hNMMuW;IzEopxKSvx? zm!ee}gR$A&5tVxlNiP$6-1{6I^n1yScpmszQYsq>bTcFysg`6^=39y9#W%urIwAm9 z{Nz-O!q+lxy<{<}NVT9|^tq1KKbj)QbcreBZ96`AaDUe?#P+pSwBS6i1J#cg5VNaE!HW65> z)T{pJZA@9pk}_Pi$K{EgnGesmq3s0(M7Pl0%Ne>)=qb#Hi&!OSjQohyhT|IiIPKC1 zV>gFt(MtqXf66`ceixMS$f2Fz!AP(Om$64{Oj=LwxkJ0C7R#uuxJZ(*%{By@+dli* z*DB7wY$=^sr7O2$swhT|R62w^iFao%nPb87JAV03*T%c7u}^A3O&fQ*-%J++AB|pM zu|zgTd^l;h)zXzWzlpQqc_PO3gF~5h;A1^?`IH#$Jl33Q8$G<2v?FW(PQ%Djk%vB&B&v6hkE| zknT(?R`N|NRv=;MC{~KyKER&lQ=74vxkdQefC%5)m++1Lyxm~)f8EfdAICS%H;5{1 z>8e(5={kriVJSK4PiHw}fy`O4P_a|7z=V{p>X(C@5(*J#9z{|>17W`c*~nmMpP({8 zMOLjWj%){F3GYU|C38v&ww2KdWsP6U9>VwAeBxHz`_a^?Q-LWraaw~XuL|RPepg~< z=rF@`B6OPK&Xyr*U3%{JChgBGy5sHj=EI@PDh8K)07mZ&)z2rrlVlnhu}>cki^ZxK zEV*h3V&Z&dv1Zupf$$9dSv^aUBAJw;N9xpV+vnqpF z6>*Yr;-!j3u#D)((Z(|SA{6xGD3DcPN=FAHkc7br5Fg{Wgo0^$3z=tN244jNIl46LWTu(YQEW&pGX3sX*nm&|&t{PI3x*mHG-2?re}}0Z z42Q~Oz`Z_92EY90kK%-sAk&OWgu=zmldyOIrAkn)ps`A*RA$9R;!QAiz@kdPM!RF5 zprOKwn;>vVcQ2vX8Hpxg!GskK+8S{I;Pc8aS@jZPj_EjVw^AkydeW#?->Igd#Y$jN zW~EB#4SW)vK=hmy2Yh|HGZNc3uh``u7oH$V*CX0L?lk|>5OAmDu9od zi%U%GKBkkiqp7jYeN6Y{ow=`$sop2~;GAYDbXqt<>;pY~0QY~~|EE~}N z*5ZGs{DF8h1;?%f=#6swuVJS%k`lN&kp28QzOku^f%Vtb(ZDnxNBVd$+MAhDYDKNc5zR^aJ2TZU57vGkZiWHpB{ZXneTvUc(#MzZ{VXuxg42o|gw5Zq ze8gR{6e4#ycNI$rv6%BtC`L^;~Ig9`_GOOQ42TkwH8d5zLw%BFg6Wlj7R zR{rDoqUy@?9$lhO`1Hag~uO5YKAkEpd#+|54JhY!3V_rccOJP_+tEg(cvfo>8&_UBPuyLEo zu(sb}PB3;xA_nZgwZRQjfw`WLQqk7!k1SM?60dUJ*lJoaBBds=W0<$8s zt~9z;gt}?484b(}n1O^Li@Uw06uCbXb-Dj@Ew8(iMd@%t&r~ZW_ z@-6V$S2xhkJDA{b|I8&-vdLFpDf@l1polK@!bArghj37VDU~T*y;V8+U{!IFI?#LF zRez=wI|Etg-I~(kA;F>j>g>P91U$Qv2EGh;n!u~|6)8#{kDfUz4mh>lsuY}Tx6MsI zm1JIldSHG+4}4byKb0{r+L#+YNTvq+A*kkFuJ-o!g5^FbOb<3OeqZO+H>nhA`e-Z6 zD<#SswFHMFAC=PpL*|vmojL@;;Z;kqIjK_W*qdI}t|Nwf;5dF51;DqIMk1UbnaW78 zhE^f@#oClYjl5}<@QaTp5-VJ=!4b~i-6I08{U}M1t5f~`5ImHPFacK@rERL@_nu~3 z{X`8U@GTH=!N7eCbc+Nw)J+Qoj;MBN5?#;37Y`H7m{&UQc=ROjQ*#(u%>2A8{rUe8 z_trsiwcnO-fItYI-~?;j-8~T8JvamiF2VialAyue-3jiJ1h*tef(M7-5FF;=_s*@F zJ9Y1T-^|p^{Luvk-F?p4&)#dTz4p_mtix$Nd)x`4AMOd_i=*lo_pt*(Wt$WmVQK?etQ_(*8F?23C!cktOcua-6VagW^dF zzbMC2W&V)w&7fXZ%3HwMcCkrwhO}#KfSiDMvx;NGRvN*Yw<4LqT^LwxPH|6?)=$`^R!NKG$_*Qd*hkU~L#%(kSgt)IH8P`&xoJiU-^rqo zB~FSL+doYPN!BjOqj>V7-krh&jJU-)7IpZTC`~)YXT+aS?BgkZG-=yAL9hQJ-P#vq zqr?*TsWlDJT-nO8`an9HJ9=o{GTcLeNFe|6`j7Lhn4Miba-9u!j3>gZ##O(x(2Mce zP7NyU4oduoSru%K=IIqis&Z{6bZ^d~FkU@)hoX@OiCzWAv+*Fo0&|k{EQ+T#>&kD=_}gSF?aR zHYh1FgwFEI{SRqoq(hXUQXcW#)_{PY8SPn4Hdh0YkGr`GuU zc-(z2FWrs1$3TaCe}rm67Yc{MW@@c?q7|t)Tio5{ACRArJI)+f z?rirL%JnGmpZ*QNhP4Z+(vDShewcIrVE3Cq2yc_!7s96F1U>pS6SX-NrPIyvZ18(A z{=}#{DFC~^El_uT_0s@M601a9nkzwhmh<2KtU`?sd!$5c@7JbVT_oUW_kio=wW685 zau9}SZep?iTxb}SfUH%5&+7K3iO9#AC!H#-6$VijV!Mbl4)ub7FKRa#LmQ@kb`A! zbx)!tiU=!T0<<>rLw5^L8Si2gt!}WZJ5Fg~t3-q6@qB~dnYPbOKt%FSME=CCd9yzK zav(TyX;2hvbY~#AW~7V*vNu{8c3-tbpMwkU2g;%{XXgPn#ovLV#FQtIgNX{$deN1% zx;9T$Js`HWIwDndk*kUB1HSL#^!8;o8-Pj{LiJ+_5rViOhd*-1qX>b04_USvsfXyI zJ`kVYPVv#UFTEXHQWG(rBS68hJ?jvE!2UKW?#;LwBzUoaNG_qP6`+jpTfx(`ok3U) zyN|R#`+N(|jl9-E_PDcdm3Z3+*f!R_u1>RC<*otecy&71n?IzbFHu}1L0ly6U00*< zElxo!!aq1SpQ-inKt;^4xvs$@Ecmyhxy_ME!)4ZaBDU}4O6Lr`TgeJk>~9Zf1M8`?uEqj-;seOqii0q)8aM0$dD2zx+I;q1857Rva;DfQ1-y>&jR-LZ zcmf*Sxca~@axcxALwlllR&jaPrFB^rB=p#aLfI2HHYWU#qB4BV21GAs$G+qgU}slq z@r^QK@Ocd`yJ&(qDUu^ulQyoK>d>AwJt0OGTs zh$>s*iD{9`+*pK(F=10=bBZOUL0F}Ag6T) z{zzJ&M|*d82*qyFhapyEY&jzYLa-8n$d?C2vDsP0`Y%F@*^=XkC(L(W56Z10xdezbEvk#C(u3B(_RvYa2%#H!L>sD{Ls|}RbMDVQ&h4`@KUi^Br zZyJMh93iwG!FFYje9`diL;|+#*#@-p#L5P`#D-;O+6~d4SVUGpf&niTh#>dXxh4k_ zjd=iny;S|8K%ZY;@+)8uqk8!IR@(J()dC<7rMEi!-j`6XDOOkaegu`zUJ;pc>R7$x zZgbD8MOJHCI;6I&{3$@#>?~>LHV3!e)m&CB9O?&(f48t$LiqUY_zSq28j9u-{%$S#$ss3m&aBkwaZ*R;`P`^ zE153V0xB?q5pQ}|Xc$k>_O-wg=I)&}E3qzbapn5Cki7J0zKpdBN#9f)FdA(QGl8qr zK6(4qm&Dy;eFu7>^rNgen&!qp-8&Rf<9w&NuglZg++)2g3^Hl5>5G7m*2C@mG@kTM&RC1%V%-&$#0){zip2X9du1mmMv9r*cIjPdH@$0!YvXR*E2n*x zF(}F_1m4`5Vi)OoTA_#)+VK??WVajK1I~l@?SuH)olgH!TDe4Sbjt>QGZT%;_!A3% zf6>evwE00-w3qkTxc>4to1*tEt&bnwu_AGIZ=hNGj}rcPl+IZK$77*_U^|wBG@J1f zy@o%C$k_S+^9kG~dhfn^mMy4&G{nw)@^}+&-c!MuH$-S$y~?nmZutb~c$z*KQ6Zz( z7b3Ce1?3qcBvcIw*>Lako`3*s`Lf)KI~OzqF8|b*1 z+Qu57IL!)z@v`@1&&M(R(*hyy{GGQwXz{mBcTT{{1Hl>V23#3;i%-qo28&!A7jln{9It(($xCv_7_(@Z}b@yI$!F>+kOu1Q!9nPyL{nrQ^folnY|X zn(FtxWnm7~?c*Rmhzh~}O)MjpD4ra*05!F-AD(+{?PvXmwIG(3aT6ro<;+T=cPD>` zzfk^Vvq3=w&haldknak+hBL+#A&^g4_~l{S&TGBWqm}Yf_+tyfXJ96qQVp*(-Yohy zZ&sVYcQ*KjbYtmkqde{*Zh}7!qfwiytq%(QuYdhrtPc23bL;<4)S!P~+Mue~{Hkz8 zZ_jpTgp@hQBdQWT%M1uaXPC*AVdKiVNg+qhQ}?V!oeBl9%KAY&Vkywf&fa=hdYHev zks@h#rcsKJe_J}}1p}3}NIB`(F1h*aUuJva`7nmu6x$qvsM>>D?s^VANR`Jzm}O9w z49o#hvzjI&tN1~e9D#Sbf17nIS{m~U79w<61)8I&DiE~8pN%Xd*5U*Yy=F(?A&wvT zuMR)RV!-l0X8{l}$~0+#wz0`653u{;B$&jg56~VbXqTOBgMv~00}95yi;)S)t3@yF zm5@|3WabX9fZc%uCYWnj+r>XQLJO;izSCrPIh{<+FwxftMV@zs)wg% zsa<@2DR;wOlf%+SyX>s2vZsSXzt~uF9_WPz*jTh5%C-OHdF|Zy^+|Y$mLp7snVByJ zUrjdDDec`G=#Z4epr8^6%unwPVKzlKh%iIkg9#~ZY$kC1MvBOoz}UKs)ln=tg9aNH zXsD{+f)0lKzUs`{k0|R5-}Q`5=%_Wd>*Uj7y`kl6F}v4@RLWK)Z|;)%^teuwfL_HO zC-d`Lk5h;wZSX_pdz-REX z^)2^zMOk@KO$iLK&0m6^~+Bfqxj z4bQz;anh>x8@Gi8=+D)5_C-v@|EkpZw`l&GSkVr;I_6vbbz*p2eZUyf?so+&v29?D z9@FRp^*RN_VP!k$QW1lfro4>$M^>Ol`1%b`3}G$t@VJwF3VeZLVSehNB~q}&FZG|!X6|;FkrT3yE_AiqS%?7F^O&fJ2SA* z1w+_!@#ZUcgl1*doOE%&s~iyl#R2EM8FeC{9K7d1YYU+Q{js*$0Pc+eaRVB@4ZnO) z+T1u|-x@Aw1PfxdOC^fg5~e|7U9N| z*i+*Jdlh8uov`1Pq67pwT~ue#uQ2NU1x~0?{rTwEX`>&mQGM8;m($L8ckzLql^hf9 zpmQA@h%MhUOl5mVjFDD=_=hLdi@Vn0Fu9={&I<77){$hWk~AF_H9t{$J4l&4c|1$AbP}T=ai)9?<{G z;Dhsk{;#d{KNn3(meOy4j$&?a_RkD0nfR6)HJMh8@p&?v1|xH_Lk$Jy6LwAxa_~qN zddW+htWQOOkt|byikYmp%7}@`&QH$HpFB}RL5Rr9M$XHYEE*=^@|=^CoQ+%!yol?+ z{^U+J)?{QzJ}iV+NS@XN14H)s6?htW4&G#wV=8j!S_n%m{1+E>KmxMovnz33)7<%= z)^hZxeeQ1KJ4A2PC4Xk7UyeJF;z%_)y79CU8YzlpX7_zDLqi#S{CYYO9`O$@U%7Ed zNqK*KYvA@MK~8v{-H-D>F$^6-^xjyW5WKGewY(SYZtg*GRh5+Xf=>$@5)I?Up*V#B z6_GeD#NP2yZG^wj{KNF4TJa}qY-)5LKTh`7rP)nSu4hKn%onWnI9V%mJ!1}tBB~63 zZo+1)8gD6TGqcd-*%e>&sT8+3K8z@65yf5X7_m%)H&!mv!|R1pteXsj zB>P8%Vy@OYF%hPNNBw)(42ZI0XmQ}4G8~5FLeP5;xRt+HE%yZtDC3Rh1pXKVIGB-6 zr)U+pQk0RwjW|)Km@-CU9ABBKD80jB1=Bi7cw5go@M5bgBBBShFcX-v@ZNCAz|&v% zt`{BFN*QIxk@$({ zI{_%QQE&M}>f_GB({f|0KYvu6*0~ug|?ayRwKzr*V?iW3eeMed=mA{V(On z;>?tWBlfY86yrioeZLP@M~8)d57}?~C#vYl&u_VLlSwrmvMvmcB&_$83OuO6g9bck z!GjJw=$m>^87%bRIscpKbCM~TH9Nlnv*hJtMkjbqzGQe)MwWjD$%^klp7A7`98$3) zA5v1-JY?-NM0Rp^FiL($MM3z49elA7c*IY@aVGzL$;hrws@9&vm)TZm#P57rK&U&o&!-IBR zLS5|_+vUR__IljU8|_jLT<^w{@d-Y35hz3M+Vb-6y#H<-|NfiL%gdUzxp&vL7b7tc z-?h|E;?$cEKV(QG|K8KVuDs*GM81+Kuk3x^3Rg+N(5l2@hmD@I6|1ZK!a*%_{1rZQ z+FvTl^PKMLQr*V>fQ@{woQtdoJ$HY~wKhN`NhyAal=J8E--%?MQK%=po?!C4Na~RG z{o20CtNCjpLhKdS+YaqnrlY;GRwBKdc(odGVn zPAu-rZZ8kdqf?jjjpX!lm)4(EJ|egK>!YGo_EX=>$s#I>X?d&f|L*LSmy0^gbak|Q zhzaDn(;ed!a4IS*&vE>vR33s(*3_fd+QaX^PgOd3o!?#E#%MS7ZeMCrh4f@XcOAaQ zzxN#aXdhn@oTrRYFLoiw&bZIsl93wRzisn&Wz5?5!Tg&knEg)J>-qjTweRHFRaZ0V zEydkYm!oTlJ{_xWA2QFh-qOarnpt)>}H!WYLpSe8}U!nb^8rlizw6)jGP z$31RtDG3h4cE<}Pj=hIBr66`1$gWofYhA+eEXbOU?YLo|8AWMz5jl-JKGjdY{_!PR z@sTs%PPQ&QrvB$NHwMPn8f6v^NR+2il5f4yk*rV|^W#2ANtfYqv8%vQUz-klpDIl4 z5r$3+s}J!tS)eHAzZYxGSi+Vh?4f~UaeOK%oTnN<@Qg#u#P*j2(PP{tTS($1ev(o! z?Lzd>8*^%0H5qNL7vhQad$zgC8xFPw?F5oRM&B+{+>EBfktt7Gz5j~xCk%&d=#sk> zR8niw5S6?=LVly*<_HHzf2#bKm^;`w_j&A4P@<|EKCePl+`JeH= z3I|tOI{lw*1YUJa+ra8s&jFfI1<6+4w-eD9UL2OfbWPe)-6C*h;f!1&`M-FJgkE5V zwklmq7bQpOFfzjlC%5S^f~h_}GInW1Z?G*|eLnAamDyDq+pC{^bh>SCf>K|yFWJ6j zu9raXc@<)vCFW50){HYgJjY@5O)gtfUH}d*l0Nx}>PSKyU7cg9WWZs0-m3wnw@Apv zcvrG<2n$~Y&R87;)b)8=C^?EW5sLAwRHlq`XMsSKWHd z3?8^vapgZVK*lg{pZ4IZwM6TXt(?Y9>XJs z5M^P}BsOm*)Q*rpni+iysWl%b$VaT1SCkc^NCmLP&yJh0s}m@6ur&s3b2qeAL=ZmJ zG%$~2KnX$3lcO2lcr5Y!JY59iMHCSW0p*Z!CXtyVb|LBPYLDi~$B8&a&N8zjI;NeM z25jM)L+0jNy>DXl2syXak1SKPrGj;aWI~i+NF^E^(>6VNx&94skaS-28%JuQ1kJo2 zG3vThU3iT{CagTIvM{285Xn7~5W4klF&!Vb_GeocuU_Qys@4}4w(jIISAI1?;%Vk! zh*QmfPMGg3U}9~&RC@JkjVbq;gDmUFw*eCi681vHrjWwt^rk%@e>+c5b;O7lNa+Qt z2>K^kykTVLLDQ#4rGOsmOGS-vg;G^1;<}`+1+b_yZE@s3Hn5SMWC+3@(Mio!w-;vQ ztd*M~_s@^FCh^F}HkCtNETKNOTV|GRvv|wM-JupLP^nH$PUG=eeoBsOlp>;@Q0Ni< zuP5eg_2#R7!an+hOq0`Di8@;0^r%^%)%xN+OguQOmj?+VX)~eHh>AdqtPi?y0Yn8C zD&DkNW>a`Vs`I@BaW{{!5n&0M5vzOSw&X*ba5VWyDUq6j(nWC69bXdX(<%_}-lVpAeP^YR=K8b?STdO1L(0Gy$U&AqS zN*lX|!h}Us8Y&?39^5g4DwgKnfX|rvU-sYGlADJxL|Jcd z_~QIK)dKqVFI*YvQ*Sa72flok!da6_Ldg7WWrpDDZ?bO=Mc>0o$|sb-oIaZU!idcm zVe4Dn4YuJlE2s`iTjoRx!kpWEO!oAxzLNf9;%Z!Ovu}@#68^pm#9W+i_s5i;#dyMB z=~(Y_7?%Dn<711(>BPA$|7*_GGcz={w4!4O3*gkeE&Qp@lOL%TFK=9kTd)iE_&e^3zuF<0a4IK6 zJa^H`K{7|QW@{EZ`k|Wh+Q~pd0&U^jGrn1__pzx$bsTC3-^cJ?5`3aU4_21?h-82< z_q#BO-qjgA)Q1zUa?Pz(w2F|xZBtSheEnq`Ik<703n3z@cO(MUa=N8k6AQm}OC1%l zrsYDitZ^82g4z=#|19#?dW-yezedr|u5_L9qG{8`QX>8h4w<884F|jmDQ9u6vpy|M z+B%Ueu(mG;&ux0HMML#9hh&t@M<5l8T-&fa0?NWr8wBOJ;#pL)!x_r zCTU1+wAP0_U$jgTPG!w1fkU#6}{!WgSYmt#hUc z0(BKKJHyD&Y=V)z`h`)`xqdl)^2p=Csc#!*KsJToO3km$3KlRY-p3>99y!5PdRXP) z@}kvCp-&J=h}ozk*3)?UPvf9kPSN!IArwLU)FS)gMeKHSeSUl7%WZ|rKSbDO_;mIC zJ#ZM!YH&CcN{5X}?-=0>e4NG}Q|woKGN^N{+C#>KguY*ClT2L!xW z?`?wrL;uW2efshjwF>_qC*J8x6g)JcaB}|$`rwzntgA=AR!Kn;&vpO)uuUbV6Tjb*}J>6Vct+{jtZMwT}fdYX8(> zoik`q`Alb^U1u(JOQ9+i^@RYfQx<%awd<4u+ma&Uhm3fp9P(1dM^F3X6s6z`?R%CR zn{rH59O8yyl^U4xY_XBP!)}t}G3-R<1@At-Fwl8y))I!>E{5WdOM*h6TaL?G&$IQ$ zoNpfz3eD-AIagPVBP!CG;5gdoM)2>UiY&qzyk6kB(o&p!`*YbW-N;O7kjJ%GxNH zC#wmUf@3WH=R*{NEHgVan|4Rk=kjai)Ym-Fp#jHRj%SYxyegH(^46u{QdB7y=-7XF z6^xAyeo`N6EkD-uDZ0y(Tawk&D8k5>H`SqHbc#i7`OFpAMqvq0f*L_$VMM`ulyt^o6_&<{Sx+H%)x#tsKM(EEZ?_b2C$Fu3 zLO4QdyvG45C(s*-i9n0jTNkus2t5Js@ltPQhG5^`Gd;jBq|J&>D zjh2wJeRgPn?W>Ej-CQ2`#z(mj|2C2(+L68-b+o(4HUCgTeL@>)wtb8WZi>y`J9zvr zFDE(O5o|~8G(N(~x&4hWIdcS# zG&yGk4h^yjzn=`uM>X&EheJThAUWtbHw;B16uDRqQb^_S^zc|4jNd#N7iCo|kZEyR z_wn_$nJUw4bKCPe+d)J^;<5Y1MNXb$ztDP9tCT6==jWHmpvjPjYvQep;F9j7VWlBX6oq-X?-SIFh7-4idu81or zDERo?d@okc7WV$THi&(9J?GGMd(=->ZP?*u-|Il**aJ4;IxMu}l92fR{qqyy2}Xr( zgZ0jj(uFqn^Ye37^&*8%pG%R;HEc`NJEv3W7i`Ae{sCNY8RD39NIQnW`SX4|vQwQ|0(aNBxR=<3}uNho|?lX0R^DqrR@8+aG!6eP#cSfq(o^RoNhn^eH z?*H~7!VYxE*iM^c!ft!VKSw%#$pu_&);9#&J z%9&kR3u)Tclx06EI@++&R%ds*@?>*dIoP}=5)Q%b5y@W1`J#Nb2-NZ61L_Wo^TtTY z1Uw?j#l=MexGJahA>^*FQ7@XTr^*!5dG>xaprW8yPgkUNbwN=?+(XH%M(rL)frzLZ zU@l}cUEwl^M#yoq>7(JdNVcQkPK} z1_@g+jba*?&%CvNdz%K)*P=5 zf+H<8*vv#=(^l!XJSQVNKiyV0?D1}O-Uvm^1Xx*t% z@l7S^$bO(!OMG1$O~*G08i)uFf8FY`-4pc0)YNo^Xp2&|s^<;6wrzvOcvc7s?(bSF zZHONUt$jho$s^V}ybmPzBq1h=01g>h40es$@y|!ChhRTLeqJ8ddykZx%ac{TNT10j z%v26@@uU>Vfp}VF8if=wA$ep4mH6paaTv+a^7^_Y7S8i;Q5RdFa$`t^VXkJ~4-5uX6 zHcZ&>dhXwNL^ELaJj+E7;1qbjwGEPQJX>@owITrTV5v*gVX+;o6j72@x4%fN$>QRo ziAnCo2`JuQAH*u)hupyGgQRhCcjgp0o(q_7adwz*o+L(IYH=<$h5DmkVMnvfKoK<3 z(ZmFEBdMHVpL|sBq)93$p^w6WX_poTN zc4R^xu{nnEZ`g*x+M*M3JQm@2`xKo(jJis zE++scW?PJ7wKqmmeSLia_Cs=frdFj3U~y3Jm@LuaI<|8VpPB-QAR-}A^uGZ)%2U`IR?A&6X;EY*^m~w$;*>i444jjVf`FKc*Hynq7SeO#yJ9H|1uxFW;h}xRQ1Lo*5dzu~H9(gbz-U#wQ>hz?#2g75r+BW-(K`vxR7B$48}{muN(Y^`3S zZKvZ3d;tP_4=cvc{+Q&@;NTKXiU7_2Xp%jn=LkqY$Ojm7>ehZW*kp@BEQhGQwxem> zlJ9ZY8#}p-#jstXG7JsDUqIn5{N0<2=T6<<-#08#$z{^1EAYV~(P@M3{aiOQ*-fQT zvaPzs%9erVz<|)v0YT!?T-{%+#*~!MiHeGvMkK)@2n=KiUxRW45NW@D#wHI4xKgia z!nKqm7%{!Xd;cS~yxN@tpc+I%4zm)C(r- z1B1$TJ~lQL*;B9EE7zg0nyvIU_dPZDxfaNIv*<7tBosx$7eRpa$?lr(V`6CQW!vcG zOGdwc|0EMfae2JH$~=}~Z_zD=0*7B=)U`O@0&p$=%zD9V&&5-~9jm|mH=WDM31~X+^L-$Pgy`t#qKd@BBiSwhvLmarJ$?E# z2nk)TlDgYR31sC4oPwa+AIIL1ubc_*At{J?AdSLn z-ManJyL0z`e(JZCPnibk_uXapDJEvjGfF8Tp9>YcKKK3k?TK6olqc)4hRyc!ZQ%%( z8ni5{ZXy{RKBtq?pZT(~vXJ>_1G08kSJf+C*8*M!ywd>cAIP|M$=uvrz$a1R;RNh& zE&zzX9fz_y!0L^r^Qvcufvr9uSRttRRYqNY_jk8o-6)y1iv=urR)}*5R=c?oc*wyC z?7+b(RGAHaoL-8aYOtH*p`nqgk!}5!#%-hK{^M77TM(w`jbmRZy7dPEuT#q;CY^7m zh0Xi95@8~KH?MCE-&{&X!K-oXVZ1|LqId*pSM%eI%13bIpoMdDZ~$$b33LF!{E{Lmds+Nx!?J5FaAt*CO{E%XQPsF(2fYWRzfPN*osB&e)l0$A zOhIkKf4xF*FUpIAoZPU z#*N&7LSQu#F=dz#lf!!UEVr>7NcvA88Qj| z(|(P`)5Zum<)Q-Up8od5#g2gru6Z8OK}z&}|+^zX9lx zg72{&2?iUq4;I>*4CWdg`l;|EOQYLrYaKc-r8*;bjt>vJXB+M2-fojW8gcqjq6#Uc zXw!?O!V1r#3|B|Q*vhq61Al(9n6q%eV=4gE0*YJ3LiFpGFF$iuL@$V`93z&KPbQfJ_JLfKI?h&d1jbx(R?DuN;Zm zp1ek&HqncC3D{P8YN}EXYBFeZd%S>($21FS1#CBDHE4AKNeFUZ{X}alyocj(INk96 z;`M37p%uVqZ6k?2PjBzA;9z0_7nzgKgRiiuU-mHT);k{ird}9kNC6fKLFxC zcz^53C9`xmZ;pY?8wfIerCB2}FS?A&Yd;?z5doU;AyA^A*~Z1i4dGd=G3iqVs|>g- zFKK&*z-O+}4gns%Osn#JvgboRy6EWSXaWJaiHl zRqs~67IKcxsHcM7o%8KTcy#o1DVK*E;2c1$@0{?XLW0A>a;JY-V@cLR_jjNR<-GOAaZ%#&PtNv%^ThigK5Gh+lbc>eA~BA0A++bbjGqJh31fQGs*bOT5i z^U+A5)5&6GvK2#J;!hPipEkM!5P-S@`_v>t%oA3}S~?%lQa*`EHScjpOm{J8#z+KQ zkWo>C1h;S}Xq7|Imm$Ps&yGLmfo))!~4WTP=0dSpj z_%dZ7mF1rY__$_r)vVIzf6+O!us|}7_efzQ znZCWaIDCDGmp({kkeiTz+aH+&t;H`80IGCmJ)VB85W8-Vz@VT@x;!Bh;kq+1a#-Fn zO+7Y}!;`-JFKsT{@JFhb$t(tP`*PzzklA!HiimUq_M%_IH%C(e-C$1)&ZrDwA930XHZ+1Z8>vkEwpiz5b$t4`q>UCB|+(4b?c4Il&-ZDyGJwIEf z$+%u2F@pA@uWDjWYZ@&Xf+;dbeG`TLRsgf@ATadtYn(cr+e;u(J~@Rr>`(wcw|*x+ zJeJDYpSFyM-SKWUbRs;}=RTj6_8bFX{D;3hrSqNwZuF9TO9LidOhe zGz2lIG~^(Y+a`(I?qzbniZ}50z;%!0%5vaoDe*CAR}mk7 z^Cap;qvIPK2#LlfA-M%+GXT9V&}*BRn4IPVF@Svz8UfUt37%;F50$jl$yB>k~JM0LFt_om+;7Yp!FirqBmG`lx&?UuO#S;QTV7zHz3suGEyi@CogTbnL9$S-Ol{Zg zUp*UA$p)1G=(HKgRB|h<)HEiEvpl%NZ#?5j;?6*#HklpDV(^;q1Bai(2-=_LZ=uqV z&lL{=jx&wW4d`M)<~7x2#2$d3u2&ntUOGdtLkT58X%ZWK=yplD?dSQVFJHIi0^3#w z|4chyHNGvB9X9~G8)LK}hspcLB&j6<w> za&@@lpg7yFZUZ)vYTM+ZcNuWQuJc7+FgPR>#aRK14Bc$*dx;cR&0(#O5ogzLNI~W} z6?_tXqbC-0YeiHwau&zTpk>v<$NVn0i%n-6R7b4@+9zb;V1|Y){gIq9Xk{I6$ak?V zx=|da*O7+CddEEOR!aU1%`V#?@3tP3m6L{CoXr?<+XW3<&r~rFz%-;mTb+pV(5hb9 zDAlsxs*99L1xSat7-xVs^691Nk56G?VcdmY&XYAJ5-XOt3^0l}vH1gtsDy%U6~Brr z4Lh!Y`mJ~I1yXelnp_0~mm*GP4=R~B=HSH{Kx}3qmxnk8Vx)qak+g$z?ED4EBb1=& zdv+BV2$Klq>-#N2B#wORC`eC8PsC>IPb~lUV9AJ}1K6ZiKkKLqg2pGS!(wCYH#Tz! zRc3gS(SKCxX=CZ8XgMJ;dIvVIg5Ipo(|za1VB-_DIS31H-etKP&T}Wgum!Nq@1JWJ zafx)Q;wiJZq;o(<+|mYzgrru7=`$H1t@OqOQV2M2L?%kj0Vchr)}HOUdx!Km5l7h< zbv;)rqU`a(%d?%B!FEK;`Q}FVWA1iVW5X%5CUftAXQzy@&7f!(F@0tmg+Xntt-Z%d zv+ujc(|KdwKF2BYL5e+jbgaoLtYtj+3w#JM0X+^_X40>z>hUrAwY32T==?60jiMWVXlf$94|9~@CTLp$9VNn2 zHyr(my;7Et&g=^3WWu~;cNIj*`fm5KQ%#0ese; z1Li>0Z^V4LFBe8|2wP@KrKqe{qR6ua^Mvp1A2(01kC(dy_nK^qW#TplBn;a_m<*yEYDq-e)*f7n+&C+Set?z{u>&oZdJqaKUi0$dP{m8s8m{B)1x2 zM?7bFUGu1?=x6khwGM0r#=yWZ*#6Ag_Ir_{IRCmB(#gbj`e$G5Dt*-^#1K`#or&C_ z?wW)hW)VrE>!%nPc)yLTADPO0!8uzX?z(sZN%C5}R9`(dw(@-&XCk_@@|DFICm!xa>LGJI_88@phHzf^C(c96q=|j|p;;d-x zNHCNk*?IEKE$RjD^u1aS+t$V7yEOb&JkZ?acM?>syt#D?=J+x9DP2@O-27Bs<*uFpHF=;>@uar5QOAU~(!^Duxl?J_apCq8bfPser=BS+uksfqU`&%13iPO} zCq+>6ln;AF0ly&qK}R+f5akS*A5>k1y-p`uP(LixnSapt2jY$H6ej&7qR8O0I>%Ll zE;2fL;tU2b_vM=vQZYhZfPL2oxrQ=r$( zi}aL3L_pwbn6*ox&S?UP?(ta^)*FD2v6YDlcEnFrTqx*Jt7&6pj~Q6Hwp^dnE?%cYQn<8La|~x(#bIdyKx6Ol;qY#r;_8}9-2_I z|ADnrg=K55soFTI8AqN%$nOmX;_oQA2`tKGz)_1BH7j{c}*Tk5- zPSaJi7=qHYni}A7(h5su%`g40egjn7W}U58D}3MXg{(}Mts&^JC?pR{Z)$3)(WD%m zZ1+5Ip@FDv{o^f%_S{2%PSrnJ5;PmYTJe783r_UiGA(dsjD!_S(cA|}GM*3hQ{@W( zxGZ@*kfg*8j6l!2&WGIwPWyyO>ix$ewph?95Q6L4U}CV?t{j)0o&EMNWwbD%W)cs1 zG}dPZ41I#m9D~5Xz#lC8K<@*$VZvp=r(xOR`TgGBJEPv}W>yj>Rq2ofbYUia3HIf8 z+$O@n#avWJUNT?&^bQon4m>b2zFG|;LUhU~^R2FoEG+h06FsGO0&lS9Lw-RB>a{>e zPmuK%Hil@_8u?u!meQahpOgS&Pp8Zp_Cg1)(ah>f;%Bq$!ag0@Z5;2bQu34Lj+a45 z!BxH9FlqUN#6jvwoEwIdP;ToVSZdCuZ{B2>JQ89Si;p7aSF2IJa|c=igDM$xOl1pv zW76Ms)(7LIMNo+O3rO=eA+KYppefN2jj)OSH({nPQrW3((6 z{V*9Tr!acmqAAYKYmo|53$%(&Z8NQy#M->5vd5L8zH#_ar1-%OBp-oP-( zq%#4+uEjb#Qf~_wl5f3WEFBu9YSYOmC$XH)D({jS-z`t26waTouC7icMWiHulEqdG z>cEIeMnFI?XXbTW7CYnCsWXeagvXoK*U9muVO3EJw`vAj995J=*efAL{F4VC#aTPE z`R>%GVn_5k6}m;xQk-^FiLrPf6_4T0%Y zZGV1yjtIO&Wa`N9@SMt{`d$hWuMVX&boS2Wn|G@Mg1Dxsy@9^BMfkr+z}N=oc6)V| zvRFt*&THnsF!mNuRYl$RDBUF?4HDAbAV_z2H%NmZ4RQf#M4C&dbV-+hbeFU!-Q5ko z?f3m({N8x~F&@J;Jj&&A&bj;Sz1Ey_%}q;)BAw=`junC%KrZb4t;gERAh4`RVN1)? zsJ=j$^y>3B-3OlZW(a@_yR9#8wnm`nW4*?JY$2!u1GZ>e=p&m>zeFVhiTwBwt$S^~ z%LM>A*lil=(`EE$Uw&bkH`))zQ#sD|E5(99AU<#ZktF*L=Q|VZQuhjp>PP4Bcc&nS zAEsPt_q%bY(`KQp!6zWFwnGUnE}gLb;S6y5*GBMH2N0c53zpW^K5Dj90mv$yY1rd!R1{XnA&@E$8hMZh)u5q!T2!4?;LZPG%$9ZVtc z{zrn#&I!FrCWmPx@y*_}Y%?7LgPgJOp#mh-LnzWn1(GGSRbT94i*y2}F?pN)S9Yyh zXfCBHzY7!0oqVKmNwnYpGKw^2>;zSsv>M&N(V?|e@9{EV-+ny;N0_AWSN0mk+e5IfD9x{^z-*43FU8+Xl zjRc`4lr805`@SJHt$@6^Jd>eN8Y7F<9HOMfJBcypB?jl|6NMaEMLftn6z7H-FD9XY zp=+;lFKM-nU@RNd7}NJGPT+` zSt9(0g7TEJkaoPLL1njH|6wD}MJtTJw6k%kJOc^s!Hv7Iv*CES(3K=V7c01yqX zv-|Ed8jv|zf>)VGnmXk-33fbG4p8w6kL5V#Yfv6d=T+r2qa-PT3;GMHZnM>TyXj0%lZkg` z6z4h%%?*J6e-mN^__G)d?RnuY2~cu`%JkX|7UZTf1PLl2L0HL&h)@VqbuaXP#eNCT zpt+<~2kWJe$ToO>zkhcdB(#h<*CVT*HfsO*-RFbPC8};(1!G=4jEeR#BcL8QmXI*1 zPEyUQhy_i%aa$NR66-r2g$}1RIxo)8HFRs0*ap?jr&mEqOW)#d3>-Y6>~C0G{BQnv zxmg3UViw|z2-duGp^XDTYf2bvgHf)>;saQwD_%EMD&csqrZ8t7WG(Z0keh2&=&4US z)}NQC7lb$$a$~5(u~CKx?WhOzjRU-r@v$t8cH(B3@3S>fFbs_bK0iNqw?$ZInzt3t zNCUnR!A+GXK03hJoJ1V8KGb{`;O>KXj%?nnX)L+4)X}0!tCT!vpq>YX^Ovh(S-}jK zy{Urm>bd}B*<>11eVN#1#=21qW zh1k(^v=V0PWgX0Py$?US_+1*Iu-CBo%=6W%T$&X`e{75y^}>Il98 z0emR_ZPKwzPvocy7Vzd1)JCnAQ(P1^#29D;ORo7q9;hitIPs^NiqeKw4cUxadCa>J z7Uh|~1^8KE$kP#0uqk5s*KU6?2g1my(GW(xZ@I$D=r7rfb{956cCl)&bFtGyUmqLq zJfbg3tIeJdIY<6IY^|1O^F~$N42JCEG)u}QzI6AAel8^iT??NTY8`7s-(B^_AWx_g|sM zER=kkaUN_l!rhWY*HWZ_T~o4s%c9BcrHi}}S@@x*(o|t@XNMk{CY=#s*T>^!A{@)K za4Egmg%(yIox9d}HnCd(UGnLyt|?>ZT)D35PRMTnJ)mqLJyvfE5n3<3WM^k@v8*y_ z|E1w<4?ek2ZZ0+QeF!=UuRVh|##78Hey+_-Q*VF25NnJ3-cRYOQSi|$)M0c>sDxzd z=TB>g4kI+X=85l#15PgSeVT7x4IEEc`d|X$_sr+DIv}vYbMCq;Su$RxVx8i7Nreq> zUll3C2Si^ukc0L0{6lyecQVD{i!o_{M1_zC;Qkf-v@{Oc43^713PF?QV~μc_^Z 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 From 3ebab5c826ae242854d2ceeb1d2181475b433eaa Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Wed, 7 May 2025 15:57:27 +0200 Subject: [PATCH 02/34] Create 03_variables.py --- scripts/03_variables.py | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 scripts/03_variables.py diff --git a/scripts/03_variables.py b/scripts/03_variables.py new file mode 100644 index 0000000..f6e9a09 --- /dev/null +++ b/scripts/03_variables.py @@ -0,0 +1,8 @@ +#=================================================================== +# PRINT() +# --------------------------------------- +# The `print()` built-in Python function is used to display text +# on the screen. It’s your main way to *communicate* with users +# and check what your code is doing. +# You’ll use it in almost every Python program! +#=================================================================== From d6686a8e63511e91a703853633190a5c7330bbea Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Wed, 7 May 2025 17:53:23 +0200 Subject: [PATCH 03/34] Update 02_print.py --- scripts/02_print.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/scripts/02_print.py b/scripts/02_print.py index 131d411..fd8456d 100644 --- a/scripts/02_print.py +++ b/scripts/02_print.py @@ -54,8 +54,9 @@ # \t - Tab print("Message1\tMessage2") -# ----------------------------------------------- -# CHALLENGE TIME +# --------------------------------------- +# Python Challenge +# --------------------------------------- # Recreate the following using ONLY ONE print() function: # Your learning Path: # -Python Basics From 1bd5f54ac36f54d0335e9ea2830a34afe4a5c4a2 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Wed, 7 May 2025 17:54:07 +0200 Subject: [PATCH 04/34] Update 03_variables.py --- scripts/03_variables.py | 59 +++++++++++++++++++++++++++++++++++------ 1 file changed, 51 insertions(+), 8 deletions(-) diff --git a/scripts/03_variables.py b/scripts/03_variables.py index f6e9a09..3169d2c 100644 --- a/scripts/03_variables.py +++ b/scripts/03_variables.py @@ -1,8 +1,51 @@ -#=================================================================== -# PRINT() -# --------------------------------------- -# The `print()` built-in Python function is used to display text -# on the screen. It’s your main way to *communicate* with users -# and check what your code is doing. -# You’ll use it in almost every Python program! -#=================================================================== +# ================================================================================ +# VARIABLES +# ---------------------------------------- +# Variables act as named containers for storing data in Python. +# You give a variable a value using the assignment operator `=`, then +# you can reuse that name throughout your code. We’ll also use +# the `print()` function to display both literals and variables. +# ================================================================================ + +# --------------------------------------- +# Without Variables +# --------------------------------------- +# Here we print fixed text directly using print(). +print("My name is Baraa") +print("Baraa is learning Python") +print("Baraa wants to become Python expert") + + +# --------------------------------------- +# Single Variable +# --------------------------------------- +# Store your name in a variable and reuse it in print(). +name = "Baraa" +print("My name is", name) +print(name, "is learning Python") +print(name, "wants to become Python expert") + + +# --------------------------------------- +# Multiple Variables +# --------------------------------------- +# Now we’ll keep both your name and the language in variables. +name = "Baraa" +language = "python" +print("My name is", name) +print(name, "is learning", language) +print(name, "wants to become", language, "expert") + +# --------------------------------------- +# Python Challenge +# --------------------------------------- +# Print the following three lines: +# info@datawithbaraa.com +# support@datawithbaraa.com +# www.datawithbaraa.com +# Use a variable for the base domain to make it dynamic! + +domain = "datawithbaraa.com" +print("info@" + domain) +print("support@" + domain) +print("www." + domain) From 995702c604f4e34e39d3a8a9bf964aa4722da144 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Wed, 11 Jun 2025 17:00:06 +0200 Subject: [PATCH 05/34] Create 04_data_types.py --- scripts/04_data_types.py | 1 + 1 file changed, 1 insertion(+) create mode 100644 scripts/04_data_types.py diff --git a/scripts/04_data_types.py b/scripts/04_data_types.py new file mode 100644 index 0000000..0601a09 --- /dev/null +++ b/scripts/04_data_types.py @@ -0,0 +1 @@ +tbd From 2c71758d602ebf14e3a40e297a8485fc6d4b7242 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Wed, 11 Jun 2025 17:00:21 +0200 Subject: [PATCH 06/34] Create 05_string_functions --- scripts/05_string_functions | 1 + 1 file changed, 1 insertion(+) create mode 100644 scripts/05_string_functions diff --git a/scripts/05_string_functions b/scripts/05_string_functions new file mode 100644 index 0000000..0601a09 --- /dev/null +++ b/scripts/05_string_functions @@ -0,0 +1 @@ +tbd From fe8d865a481b6dfb4508a12d7010b7de749e8b05 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 08:42:27 +0200 Subject: [PATCH 07/34] Create 04_input.py --- scripts/04_input.py | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 scripts/04_input.py diff --git a/scripts/04_input.py b/scripts/04_input.py new file mode 100644 index 0000000..d60699c --- /dev/null +++ b/scripts/04_input.py @@ -0,0 +1,3 @@ +name = input("Enter Your Name:") +country = "Germany" +print(name, "comes from", country) From 4afc23a6532f9a405de8c99af77e4e1f6d6fd509 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 08:47:56 +0200 Subject: [PATCH 08/34] Update 05_data_types.py --- scripts/04_data_types.py | 35 ++++++++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/scripts/04_data_types.py b/scripts/04_data_types.py index 0601a09..0b1abee 100644 --- a/scripts/04_data_types.py +++ b/scripts/04_data_types.py @@ -1 +1,34 @@ -tbd +# Data Types +a = 10 # int +b = 3.15 # float +c = "Hello" # str +d = 'Hi' # str +e = "1234" # str (looks like a number, but it's a string) +f = True # bool +g = False # bool +h = None # NoneType +i = "" # str - blank (empty string) +j = " " # str - contains one empty space + + +text = "hi" +number = 10 + +print(type(text)) +print(type(number)) + + +text = "hi" +number = 10 + +print(text.upper()) # Converts text to uppercase -> "HI" +print(number.bit_length()) # Returns number of bits to represent 10 -> 4 +print(text.bit_length()) # ❌ Error! Strings don't have bit_length() + + +Create 5 variables – each with a different data type: +- Your age +- Your height (with decimals) +- Your name +- Are you a student? +- Something with no value yet From 1eaa93969dfd83dd0541dab7fc1e7a374e7d4c40 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 08:48:45 +0200 Subject: [PATCH 09/34] Create 05_data_types --- scripts/05_data_types | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 scripts/05_data_types diff --git a/scripts/05_data_types b/scripts/05_data_types new file mode 100644 index 0000000..0b1abee --- /dev/null +++ b/scripts/05_data_types @@ -0,0 +1,34 @@ +# Data Types +a = 10 # int +b = 3.15 # float +c = "Hello" # str +d = 'Hi' # str +e = "1234" # str (looks like a number, but it's a string) +f = True # bool +g = False # bool +h = None # NoneType +i = "" # str - blank (empty string) +j = " " # str - contains one empty space + + +text = "hi" +number = 10 + +print(type(text)) +print(type(number)) + + +text = "hi" +number = 10 + +print(text.upper()) # Converts text to uppercase -> "HI" +print(number.bit_length()) # Returns number of bits to represent 10 -> 4 +print(text.bit_length()) # ❌ Error! Strings don't have bit_length() + + +Create 5 variables – each with a different data type: +- Your age +- Your height (with decimals) +- Your name +- Are you a student? +- Something with no value yet From 014e4cb1a3cdcd9c3083bef64fffb9da835aa6f0 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 08:48:56 +0200 Subject: [PATCH 10/34] Delete scripts/04_data_types.py --- scripts/04_data_types.py | 34 ---------------------------------- 1 file changed, 34 deletions(-) delete mode 100644 scripts/04_data_types.py diff --git a/scripts/04_data_types.py b/scripts/04_data_types.py deleted file mode 100644 index 0b1abee..0000000 --- a/scripts/04_data_types.py +++ /dev/null @@ -1,34 +0,0 @@ -# Data Types -a = 10 # int -b = 3.15 # float -c = "Hello" # str -d = 'Hi' # str -e = "1234" # str (looks like a number, but it's a string) -f = True # bool -g = False # bool -h = None # NoneType -i = "" # str - blank (empty string) -j = " " # str - contains one empty space - - -text = "hi" -number = 10 - -print(type(text)) -print(type(number)) - - -text = "hi" -number = 10 - -print(text.upper()) # Converts text to uppercase -> "HI" -print(number.bit_length()) # Returns number of bits to represent 10 -> 4 -print(text.bit_length()) # ❌ Error! Strings don't have bit_length() - - -Create 5 variables – each with a different data type: -- Your age -- Your height (with decimals) -- Your name -- Are you a student? -- Something with no value yet From deb24e009d91238520b1bddcafbcac4d6f3b075a Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 08:51:49 +0200 Subject: [PATCH 11/34] Create 06_string_functions.py --- scripts/06_string_functions.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 scripts/06_string_functions.py diff --git a/scripts/06_string_functions.py b/scripts/06_string_functions.py new file mode 100644 index 0000000..346e533 --- /dev/null +++ b/scripts/06_string_functions.py @@ -0,0 +1,13 @@ +# Types +name = "Baraa" +print(type(name)) + +age = 24 +print(type(age)) +print("Your Age is:" + str(age)) + +age = age + 5 # age becomes 29 (int) +age = str(age) # age is now "29" (str) +print(type(age)) # will print + +age = age + 5 # ❌ ERROR! Cannot add int to str From 522bff12d360fb463954a8b789ec50172e5b4034 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 08:52:01 +0200 Subject: [PATCH 12/34] Delete scripts/05_data_types --- scripts/05_data_types | 34 ---------------------------------- 1 file changed, 34 deletions(-) delete mode 100644 scripts/05_data_types diff --git a/scripts/05_data_types b/scripts/05_data_types deleted file mode 100644 index 0b1abee..0000000 --- a/scripts/05_data_types +++ /dev/null @@ -1,34 +0,0 @@ -# Data Types -a = 10 # int -b = 3.15 # float -c = "Hello" # str -d = 'Hi' # str -e = "1234" # str (looks like a number, but it's a string) -f = True # bool -g = False # bool -h = None # NoneType -i = "" # str - blank (empty string) -j = " " # str - contains one empty space - - -text = "hi" -number = 10 - -print(type(text)) -print(type(number)) - - -text = "hi" -number = 10 - -print(text.upper()) # Converts text to uppercase -> "HI" -print(number.bit_length()) # Returns number of bits to represent 10 -> 4 -print(text.bit_length()) # ❌ Error! Strings don't have bit_length() - - -Create 5 variables – each with a different data type: -- Your age -- Your height (with decimals) -- Your name -- Are you a student? -- Something with no value yet From f892cb60bee957e16af33c4b4fe9232ce2d213d3 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 08:52:18 +0200 Subject: [PATCH 13/34] Create 05_data_types.py --- scripts/05_data_types.py | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 scripts/05_data_types.py diff --git a/scripts/05_data_types.py b/scripts/05_data_types.py new file mode 100644 index 0000000..0b1abee --- /dev/null +++ b/scripts/05_data_types.py @@ -0,0 +1,34 @@ +# Data Types +a = 10 # int +b = 3.15 # float +c = "Hello" # str +d = 'Hi' # str +e = "1234" # str (looks like a number, but it's a string) +f = True # bool +g = False # bool +h = None # NoneType +i = "" # str - blank (empty string) +j = " " # str - contains one empty space + + +text = "hi" +number = 10 + +print(type(text)) +print(type(number)) + + +text = "hi" +number = 10 + +print(text.upper()) # Converts text to uppercase -> "HI" +print(number.bit_length()) # Returns number of bits to represent 10 -> 4 +print(text.bit_length()) # ❌ Error! Strings don't have bit_length() + + +Create 5 variables – each with a different data type: +- Your age +- Your height (with decimals) +- Your name +- Are you a student? +- Something with no value yet From b585ce9197db16430175588f90edbc593eed1c78 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 08:52:25 +0200 Subject: [PATCH 14/34] Delete scripts/05_string_functions --- scripts/05_string_functions | 1 - 1 file changed, 1 deletion(-) delete mode 100644 scripts/05_string_functions diff --git a/scripts/05_string_functions b/scripts/05_string_functions deleted file mode 100644 index 0601a09..0000000 --- a/scripts/05_string_functions +++ /dev/null @@ -1 +0,0 @@ -tbd From 0989acd22ec797f936079b74c9e1ce067d2f5522 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 09:26:08 +0200 Subject: [PATCH 15/34] Update 06_string_functions.py --- scripts/06_string_functions.py | 178 +++++++++++++++++++++++++++++++++ 1 file changed, 178 insertions(+) diff --git a/scripts/06_string_functions.py b/scripts/06_string_functions.py index 346e533..23a1a15 100644 --- a/scripts/06_string_functions.py +++ b/scripts/06_string_functions.py @@ -11,3 +11,181 @@ print(type(age)) # will print age = age + 5 # ❌ ERROR! Cannot add int to str + + +# Math +password = "123a58478as" +print(len(password)) + +if len(password) < 8: + print("Your Password is too short!") + + +# Math +text = """ +Python is easy to learn. +Python is powerful$. +Many people love python. +""" + +print(text.count("Python")) +print(text.count("python")) +print(text.count("$")) + +# Transformations + +# Transformations +price = "1234,56" +print(price.replace(",", ".")) + +phone = "176-1234-56" +print(phone.replace("-", "/")) +print(phone.replace("-", "")) + +Convert the messy phone number into a clean number format with only digits +"+49 (176) 123-4567" +00491761234567 + + + +# Transformations +first_name = "Michael" +last_name = "Scott" +last_name = first_name + "-" + last_name +print(last_name) + +# Transformations +folder = "C:/Users/Baraa/" +file = "report.csv" +full_file_path = folder + file +print(full_file_path) + + +name = "Sam" +age = 34 +is_student = False + +# Method 1: Using string concatenation + str() +print("My name is " + name + ", I am " + str(age) + " years old, and student status is " + str(is_student) + ".") + +# Method 2: Using an f-string (cleaner and recommended) +print(f"My name is {name}, I am {age} years old, and student status is {is_student}.") + +print(f"2 + 3 = {2 + 3}") # Evaluates the expression: Output → 2 + 3 = 5 +print(f"{{This is me}}") # Prints literal curly braces: Output → {This is me} + +# Transformations +stamp = "2026-09-20 14:30" +print(stamp.split(" ")) + +# Transformations +csv_file = "1234,Max,USA,1970-10-05,M" +print(csv_file.split(", ")) + +# Transformations +print("ha" * 3) +print("======================") + +print("=" * 30) + + +# Indexes & Slicing +text = "Python" + +# Extract the first character +print(text[0]) # P +print(text[-6]) # P + +# Extract the last character +print(text[5]) # n +print(text[-1]) # n + +# Extract 'h' +print(text[3]) # h + +# Indexes & Slicing +date = "2026-09-20" + +# Extract the Year +print(date[0:4]) # 2026 +print(date[:4]) # 2026 + +# Extract the Month +print(date[5:7]) # 09 + +# Extract the Day +print(date[8:]) # 20 +print(date[-2:]) # 20 + + +# Whitespace Cleanup +text = " Engineering".lstrip() +print(text) + +text = "Engineering ".rstrip() +print(text) + +text = " Engineering ".strip() +print(text) + +text = "Data Engineering".strip() +print(text) + +text = "###Abc###".strip("#") +print(text) + +# Case Conversions +text = "python PROGRAMMING" +print(text.lower()) # Converts all to lowercase +print(text.upper()) # Converts all to uppercase + +# Case Conversions +search = "Email ".lower().strip() +data = " emAil".lower().strip() + +print(search == data) + + +Turn the messy string into a single clean summary with name, role, and age +"968-Maria, ( D@ta Engineer );; 27y" +Clean the string! +name: maria | role: data engineer | age: 27 + +# Search +phone = "+48-176-12345" +print(phone.startswith("+49")) + +email = "baraa@outlook.com" +print(email.endswith("gmail.com")) + +file = "data_backup.csv" +print(file.endswith(".csv")) + +# Search +phone = "+48-176-12345" +print(phone.startswith("+49")) # False + +email = "baraa@outlook.com" +print(email.endswith("gmail.com")) # False + +print("@" in email) # True + +url = "https://api.company.com/v1/data" +print("/api" in url) # True + + +# Search +phone1 = "+48-176-12345" +phone2 = "48-654-16548" +phone3 = "0048-654-16548" + +print(phone1[phone1.find("-") + 1:]) # 176-12345 +print(phone2[phone2.find("-") + 1:]) # 654-16548 +print(phone3[phone3.find("-") + 1:]) # 654-16548 + +print(phone1.find("-")) # 3 + + + + + From a62758bcd2da9181df8db98ce23a7ea0ed41efb8 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 09:53:38 +0200 Subject: [PATCH 16/34] Create 07_number_functions.py --- scripts/07_number_functions.py | 113 +++++++++++++++++++++++++++++++++ 1 file changed, 113 insertions(+) create mode 100644 scripts/07_number_functions.py diff --git a/scripts/07_number_functions.py b/scripts/07_number_functions.py new file mode 100644 index 0000000..5e1269b --- /dev/null +++ b/scripts/07_number_functions.py @@ -0,0 +1,113 @@ +x = 5 +y = 5.7 +z = 2 + 3j + +print(type(x)) # +print(type(y)) # +print(type(z)) # + + +x = "24" +print(type(x)) # + +x = int(x) +print(type(x)) # + +print(x * 3) # 72 + + +x = 3.14 +print(int(x)) + + +x = 3 +print(float(x)) + + +x = 3 # real part +y = 4 # imaginary part +print(complex(x, y)) + + +print(2 + 3) # ➜ 5 (Addition) +print(5 - 3) # ➜ 2 (Subtraction) +print(4 * 2) # ➜ 8 (Multiplication) +print(7 / 2) # ➜ 3.5 (True division → returns float) +print(7 // 2) # ➜ 3 (Floor division → drops the decimal) +print(9 % 2) # ➜ 1 (Modulus → remainder) +print(2 ** 3) # ➜ 8 (Exponentiation → 2 to the power of 3) + + +x = 2 # Step 1: Initialize x with value 2 + +x += 3 # Step 2: x = x + 3 → x becomes 5 +print(x) # ➜ 5 + +x -= 1 # Step 3: x = x - 1 → x becomes 4 +print(x) # ➜ 4 + +x *= 2 # Step 4: x = x * 2 → x becomes 8 +print(x) # ➜ 8 + + +print(abs(2 - 10)) + + + + +import math + +# Rounding Numbers +price = 35.54879865 + +# Built-in round(): round to nearest whole number +print(round(price)) # ➜ 36 + +# Round to 2 decimal places +print(round(price, 2)) # ➜ 35.55 + +# Round to 1 decimal place +print(round(price, 1)) # ➜ 35.5 + +# Round down to nearest whole number +print(math.floor(price)) # ➜ 35 + +# Round up to nearest whole number +print(math.ceil(price)) # ➜ 36 + +# Truncate the decimal part (drop it without rounding) +print(math.trunc(price)) # ➜ 35 + +# Convert to int (same as truncation) +print(int(price)) # ➜ 35 + + + +import random + +# Generate a random float between 0 and 1 (uncomment to try) +print(random.random()) # ➜ 0.7321 (example) + +# Simulate a dice roll: random integer between 1 and 6 (inclusive) +print(random.randint(1, 6)) # ➜ 4 (varies every time) + + + +x = 7.0 +print(x.is_integer()) # ➜ True → 7.0 is a float, but it represents an integer + +y = 7.1 +print(y.is_integer()) # ➜ False → 7.1 is not a whole number + + + +x = 70.4 + +print(isinstance(x, int)) # ➜ False → x is not an integer +print(isinstance(x, float)) # ➜ True → x is a float + + + + +🚀 Python Challenge +Generate a random integer between 1 and 100, and check if the result is an even number. From e9c39ab050d9cb148ef213ba5894d201be69126c Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 09:59:43 +0200 Subject: [PATCH 17/34] Create 08_boolean_functions.py --- scripts/08_boolean_functions.py | 36 +++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 scripts/08_boolean_functions.py diff --git a/scripts/08_boolean_functions.py b/scripts/08_boolean_functions.py new file mode 100644 index 0000000..8af7754 --- /dev/null +++ b/scripts/08_boolean_functions.py @@ -0,0 +1,36 @@ +print(True) # ➜ True +print(False) # ➜ False +print(type(True)) # ➜ + + +print(bool(123)) # ➜ True (non-zero number) +print(bool("Hi")) # ➜ True (non-empty string) + +print(bool(())) # ➜ False (empty tuple) +print(bool(0)) # ➜ False (zero) +print(bool("")) # ➜ False (empty string) +print(bool(None)) # ➜ False (None is always False) + + + +email = "" +phone = "017-1234" +username = "baraa123" + +# Allows registration if any field is filled +# (at least one non-empty value → True) +print(any([email, phone, username])) # ➜ True + +# Allows registration only if all fields are filled +# (every value must be non-empty → True) +print(all([email, phone, username])) # ➜ False + + + +# Check if values are of a certain type +print(isinstance(123, int)) # ➜ True +print(isinstance(True, str)) # ➜ False + +# Check how strings start or end +print("Hello".endswith("o")) # ➜ False +print("Hello".startswith("o")) # ➜ False From 3b4093b9e246f16d69f90df17ab331108ab9774c Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 10:03:16 +0200 Subject: [PATCH 18/34] Create 09_comparison_operators.py --- scripts/09_comparison_operators.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 scripts/09_comparison_operators.py diff --git a/scripts/09_comparison_operators.py b/scripts/09_comparison_operators.py new file mode 100644 index 0000000..be5413e --- /dev/null +++ b/scripts/09_comparison_operators.py @@ -0,0 +1,17 @@ +# ✅ Comparison Operators in Python +print(10 == 10) # True — equal to +print(10 != 10) # False — not equal to +print(7 > 3) # True — greater than +print(7 >= 3) # True — greater than or equal to +print(3 < 7) # True — less than +print(7 <= 7) # True — less than or equal to + + +# Case-sensitive comparison +print("a" == "A") # False — lowercase is NOT equal to uppercase +# Case-insensitive comparison +print("a".lower() == "A".lower()) # True + + +# Alphabetical comparison using strings +print("a" < "b") # True — because "a" comes before "b" in ASCII order From a0c99b0884c6819ec55ea29b51595776546a8765 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 10:12:04 +0200 Subject: [PATCH 19/34] Update 09_comparison_operators.py --- scripts/09_comparison_operators.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/scripts/09_comparison_operators.py b/scripts/09_comparison_operators.py index be5413e..6178a1b 100644 --- a/scripts/09_comparison_operators.py +++ b/scripts/09_comparison_operators.py @@ -15,3 +15,27 @@ # Alphabetical comparison using strings print("a" < "b") # True — because "a" comes before "b" in ASCII order + + +# WRONG: This will cause a syntax error! +# print("a" = "A") # You cannot use = inside a comparison like this. + +# CORRECT: +print("a" == "A") # False, because string comparison is case-sensitive + +# Assignment example: +x = "a" # This assigns the value "a" to variable x +print(x == "a") # True + + + +# Is age between 18 and 30? +age = 18 +print(18 <= age <= 30) # True + + +# Is age between 18 and 30? +age = 35 +print(18 <= age <= 30) # False + + From b0a0d4a8a55e8c0bb3b56fdbffbd71d43f6859ce Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 10:15:23 +0200 Subject: [PATCH 20/34] Create 10_logical_operators.py --- scripts/10_logical_operators.py | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 scripts/10_logical_operators.py diff --git a/scripts/10_logical_operators.py b/scripts/10_logical_operators.py new file mode 100644 index 0000000..0bde7cc --- /dev/null +++ b/scripts/10_logical_operators.py @@ -0,0 +1,10 @@ + + + + + +# Checks if the system is under pressure +cpu_usage = 70 +memory_usage = 90 + +print(cpu_usage > 90 or memory_usage > 90) # False: both values are not above 90 From 8dfb0123d467aa7bddb02de78b5c60c65717bba0 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 10:22:58 +0200 Subject: [PATCH 21/34] Update 10_logical_operators.py --- scripts/10_logical_operators.py | 51 +++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/scripts/10_logical_operators.py b/scripts/10_logical_operators.py index 0bde7cc..ed7265d 100644 --- a/scripts/10_logical_operators.py +++ b/scripts/10_logical_operators.py @@ -1,4 +1,11 @@ +# Logical Operations + +print(3 > 1 and 5 < 1) # False: First is True, second is False +print(3 > 1 and 5 > 1) # True: Both are True + +print(3 > 1 or 5 < 1) # True: First is True, second is False +print(3 > 1 or 5 > 1) # True: Both are True @@ -8,3 +15,47 @@ memory_usage = 90 print(cpu_usage > 90 or memory_usage > 90) # False: both values are not above 90 + + + +# Checking user credentials before login +email = True +password = False + +print(email and password) # False: both conditions must be True to pass + + + +# Using 'not' to reverse boolean values and check for falsy values + +print(not 3 > 2) # False: 3 > 2 is True, not True becomes False +print(not True) # False +print(not False) # True +print(not not False) # False: not False is True, not True is False + +name = "" +print(not name) # True: empty string is falsy, not falsy is True +print(not 10) # False: 10 is truthy, not True is False + + + +# Allow access only if the user is logged in +# or they are a guest +# but they must not be banned + +is_logged_in = True +is_guest = False +is_banned = True + +# Using parentheses to group access logic correctly +print(is_logged_in or is_guest and not is_banned) +print((is_logged_in or is_guest) and not is_banned) + + + +Python Challenges +1. Check if a user's name is not empty and the age is greater than or equal to 18 +2. Check if the password is at least 8 characters long and does not contain spaces +3. Check if a user’s email is not empty, contains '@', and ends with '.com' +4. Check if a username is a string, is not None, and is longer than 5 characters +5. Check if the user is either an admin or a moderator, and either they’re not banned or they’ve verified their email From 682fe25af91ce2df8b7486199931b2956876c628 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 10:27:49 +0200 Subject: [PATCH 22/34] Update 10_logical_operators.py --- scripts/10_logical_operators.py | 44 +++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/scripts/10_logical_operators.py b/scripts/10_logical_operators.py index ed7265d..c9de8ef 100644 --- a/scripts/10_logical_operators.py +++ b/scripts/10_logical_operators.py @@ -59,3 +59,47 @@ 3. Check if a user’s email is not empty, contains '@', and ends with '.com' 4. Check if a username is a string, is not None, and is longer than 5 characters 5. Check if the user is either an admin or a moderator, and either they’re not banned or they’ve verified their email + + + +# IS IN +print("f" not in "python") +print(3 not in [1, 2, 3]) + +# Security check: ensure the domain is not banned +domain = "spam.com" +banned_domains = ["spam.com", "fake.org", "bot.net"] +print(domain not in banned_domains) + + +x = ['a', 'b', 'c'] +y = ['a', 'b', 'c'] + +print(x == y) # True: same content +print(x is y) # False: different objects + +x = 10 +y = 10 + +print(x == y) # True: same value +print(x is y) # True: same object (small integers are interned in Python) + + +x = ['a', 'b', 'c'] +y = x + +print(x == y) # True: values are the same +print(x is y) # True: both variables point to the same object in memory + + +# Make sure the email exists, and it’s not empty. + +email = "b@gmail.com" +print(email != "") + +email = None +print(email is not None and email != "") + + + + From dba5a1bc6540023e0374400caeab990194f609c8 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 10:50:04 +0200 Subject: [PATCH 23/34] Create 11_conditional_statements.py --- scripts/11_conditional_statements.py | 47 ++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 scripts/11_conditional_statements.py diff --git a/scripts/11_conditional_statements.py b/scripts/11_conditional_statements.py new file mode 100644 index 0000000..71a28fc --- /dev/null +++ b/scripts/11_conditional_statements.py @@ -0,0 +1,47 @@ +score = 100 +if score >= 90: + print("A") + +score = 50 +if score >= 90: + print("A") +else: + print("F") + + +score = 50 +if score >= 90: + print("A") +elif score >= 80: + print("B") +else: + print("F") + +score = 50 +if score >= 90: + print("A") +elif score >= 80: + print("B") +elif score >= 70: + print("C") +elif score >= 60: + print("D") +else: + print("F") + +score = 50 +submitted_project = True +if score >= 90: + if submitted_project: + print("A+") + else: + print("A") +elif score >= 80: + print("B") +elif score >= 70: + print("C") +elif score >= 60: + print("D") +else: + print("F") + From 35a815d3e7a263741d0e40add00dcae9ac01b11c Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 11:17:03 +0200 Subject: [PATCH 24/34] Update 11_conditional_statements.py --- scripts/11_conditional_statements.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/scripts/11_conditional_statements.py b/scripts/11_conditional_statements.py index 71a28fc..25edf14 100644 --- a/scripts/11_conditional_statements.py +++ b/scripts/11_conditional_statements.py @@ -45,3 +45,19 @@ else: print("F") + +score = 50 +submitted_project = True +if score >= 90 and submitted_project: + print("A+") +elif score >= 90: + print("A") +elif score >= 80: + print("B") +elif score >= 70: + print("C") +elif score >= 60 or submitted_project: + print("D") +else: + print("F") + From 75400706971e4a311a3617d7fd949dd2963586b6 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 11:22:33 +0200 Subject: [PATCH 25/34] Update 11_conditional_statements.py --- scripts/11_conditional_statements.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/scripts/11_conditional_statements.py b/scripts/11_conditional_statements.py index 25edf14..5b6a251 100644 --- a/scripts/11_conditional_statements.py +++ b/scripts/11_conditional_statements.py @@ -61,3 +61,18 @@ else: print("F") + + +score = 50 +submitted_project = True + +if score >= 90: + print("High Score") +else: + print("Low Score") + +if submitted_project0: + print("Project is submitted") +else: + print("Project is not submitted") + From 1e061f5b182f89b8c0b6648fe013640551f0c737 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 13:12:16 +0200 Subject: [PATCH 26/34] Update 04_input.py --- scripts/04_input.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/scripts/04_input.py b/scripts/04_input.py index d60699c..a80f363 100644 --- a/scripts/04_input.py +++ b/scripts/04_input.py @@ -1,3 +1,16 @@ +# ================================================================================ +# VARIABLES & USER INPUT +# ---------------------------------------- +# This section shows how to accept user input using the `input()` function. +# We then combine it with a predefined variable to display a complete sentence. +# ================================================================================ + + +# Dynamic Value: Ask the user to enter their name and store it in a variable. name = input("Enter Your Name:") + +# Hardcoded value country = "Germany" + +# Combine both variables print(name, "comes from", country) From 75d76b20e99a635d31befdcd29ac4dcac0af35f6 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 13:14:00 +0200 Subject: [PATCH 27/34] Update 05_data_types.py --- scripts/05_data_types.py | 69 +++++++++++++++++++++++++--------------- 1 file changed, 44 insertions(+), 25 deletions(-) diff --git a/scripts/05_data_types.py b/scripts/05_data_types.py index 0b1abee..8eb571b 100644 --- a/scripts/05_data_types.py +++ b/scripts/05_data_types.py @@ -1,34 +1,53 @@ -# Data Types +# ================================================================================ +# DATA TYPES +# ---------------------------------------- +# Python has multiple built-in data types to represent different kinds of values. +# Common types include integers, floats, strings, booleans, and NoneType. +# ================================================================================ + +# --------------------------------------- +# Examples of Different Data Types +# --------------------------------------- a = 10 # int b = 3.15 # float -c = "Hello" # str -d = 'Hi' # str +c = "Hello" # str (double quotes) +d = 'Hi' # str (single quotes) e = "1234" # str (looks like a number, but it's a string) f = True # bool g = False # bool h = None # NoneType -i = "" # str - blank (empty string) -j = " " # str - contains one empty space +i = "" # str - empty string +j = " " # str - contains a single space - -text = "hi" +# --------------------------------------- +# Using type() to Check Data Types +# --------------------------------------- +text = "hi" number = 10 -print(type(text)) -print(type(number)) - - -text = "hi" -number = 10 - -print(text.upper()) # Converts text to uppercase -> "HI" -print(number.bit_length()) # Returns number of bits to represent 10 -> 4 -print(text.bit_length()) # ❌ Error! Strings don't have bit_length() - - -Create 5 variables – each with a different data type: -- Your age -- Your height (with decimals) -- Your name -- Are you a student? -- Something with no value yet +print(type(text)) # ➜ +print(type(number)) # ➜ + +# --------------------------------------- +# Exploring Methods for Each Data Type +# --------------------------------------- +# Some methods are specific to certain types. +print(text.upper()) # "HI" (string method) +print(number.bit_length()) # 4 (integer method) +# print(text.bit_length()) # Error: str has no bit_length() + +# --------------------------------------- +# Python Challenge +# --------------------------------------- +# Create 5 variables, each with a different data type: +# - Your age +# - Your height (with decimals) +# - Your name +# - Are you a student? +# - Something with no value yet + +age = 30 # int +height = 1.75 # float +name = "Maria" # str +is_student = False # bool +has_kids = None # NoneType From 0ffc5701e1163e404bacf8075723394411a25245 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 13:26:58 +0200 Subject: [PATCH 28/34] Update 06_string_functions.py --- scripts/06_string_functions.py | 213 +++++++++++++++++---------------- 1 file changed, 111 insertions(+), 102 deletions(-) diff --git a/scripts/06_string_functions.py b/scripts/06_string_functions.py index 23a1a15..f16bdc0 100644 --- a/scripts/06_string_functions.py +++ b/scripts/06_string_functions.py @@ -1,180 +1,195 @@ -# Types +# ================================================================================ +# STRING FUNCTIONS & OPERATIONS +# ---------------------------------------- +# Strings are one of the most used data types in Python. +# This section covers type conversion, transformations, formatting, +# indexing, slicing, cleanup, and search operations on strings. +# ================================================================================ + +# --------------------------------------- +# Type Conversion: Numbers to Strings +# --------------------------------------- name = "Baraa" -print(type(name)) +print(type(name)) # age = 24 -print(type(age)) -print("Your Age is:" + str(age)) +print(type(age)) # +print("Your Age is: " + str(age)) # Must convert int to str for concatenation -age = age + 5 # age becomes 29 (int) -age = str(age) # age is now "29" (str) -print(type(age)) # will print +age = age + 5 # 29 (int) +age = str(age) # Convert to string +print(type(age)) # -age = age + 5 # ❌ ERROR! Cannot add int to str +# age = age + 5 # Error: Cannot add int to str - -# Math +# --------------------------------------- +# String Length +# --------------------------------------- password = "123a58478as" -print(len(password)) +print(len(password)) # 11 if len(password) < 8: print("Your Password is too short!") - -# Math +# --------------------------------------- +# Counting Substrings +# --------------------------------------- text = """ Python is easy to learn. Python is powerful$. Many people love python. """ -print(text.count("Python")) -print(text.count("python")) -print(text.count("$")) - -# Transformations +print(text.count("Python")) # 2 (case-sensitive) +print(text.count("python")) # 1 +print(text.count("$")) # 1 -# Transformations +# --------------------------------------- +# Replacing Characters +# --------------------------------------- price = "1234,56" -print(price.replace(",", ".")) +print(price.replace(",", ".")) # 1234.56 phone = "176-1234-56" -print(phone.replace("-", "/")) -print(phone.replace("-", "")) +print(phone.replace("-", "/")) # 176/1234/56 +print(phone.replace("-", "")) # 176123456 -Convert the messy phone number into a clean number format with only digits -"+49 (176) 123-4567" -00491761234567 +# --------------------------------------- +# Phone Number Cleanup Challenge +# --------------------------------------- +# Convert the messy phone number into a clean number format with only digits: +# Input: "+49 (176) 123-4567" +# Output: "00491761234567" +raw_number = "+49 (176) 123-4567" +clean_number = raw_number.replace("+49", "0049").replace("(", "").replace(")", "").replace("-", "").replace(" ", "") +print(clean_number) # 00491761234567 -# Transformations + +# --------------------------------------- +# Combining Strings +# --------------------------------------- first_name = "Michael" last_name = "Scott" -last_name = first_name + "-" + last_name -print(last_name) +full_name = first_name + "-" + last_name +print(full_name) # Michael-Scott -# Transformations folder = "C:/Users/Baraa/" file = "report.csv" full_file_path = folder + file -print(full_file_path) +print(full_file_path) # C:/Users/Baraa/report.csv +# --------------------------------------- +# String Formatting +# --------------------------------------- name = "Sam" age = 34 is_student = False -# Method 1: Using string concatenation + str() +# Method 1: String Concatenation print("My name is " + name + ", I am " + str(age) + " years old, and student status is " + str(is_student) + ".") -# Method 2: Using an f-string (cleaner and recommended) +# Method 2: f-Strings (Recommended) print(f"My name is {name}, I am {age} years old, and student status is {is_student}.") -print(f"2 + 3 = {2 + 3}") # Evaluates the expression: Output → 2 + 3 = 5 -print(f"{{This is me}}") # Prints literal curly braces: Output → {This is me} +# f-String Expression and Escape Example +print(f"2 + 3 = {2 + 3}") # ➜ 2 + 3 = 5 +print(f"{{This is me}}") # ➜ {This is me} -# Transformations +# --------------------------------------- +# Splitting Strings +# --------------------------------------- stamp = "2026-09-20 14:30" -print(stamp.split(" ")) +print(stamp.split(" ")) # ['2026-09-20', '14:30'] -# Transformations csv_file = "1234,Max,USA,1970-10-05,M" -print(csv_file.split(", ")) - -# Transformations -print("ha" * 3) -print("======================") - -print("=" * 30) +print(csv_file.split(",")) # ['1234', 'Max', 'USA', '1970-10-05', 'M'] +# --------------------------------------- +# Repeating Strings +# --------------------------------------- +print("ha" * 3) # hahaha +print("=" * 30) # ============================== -# Indexes & Slicing +# --------------------------------------- +# Indexing and Slicing +# --------------------------------------- text = "Python" -# Extract the first character -print(text[0]) # P -print(text[-6]) # P +print(text[0]) # P (first character) +print(text[-6]) # P (same as above) +print(text[5]) # n (last character) +print(text[-1]) # n +print(text[3]) # h -# Extract the last character -print(text[5]) # n -print(text[-1]) # n - -# Extract 'h' -print(text[3]) # h - -# Indexes & Slicing date = "2026-09-20" - -# Extract the Year -print(date[0:4]) # 2026 -print(date[:4]) # 2026 - -# Extract the Month -print(date[5:7]) # 09 - -# Extract the Day -print(date[8:]) # 20 -print(date[-2:]) # 20 +print(date[0:4]) # 2026 (year) +print(date[:4]) # 2026 +print(date[5:7]) # 09 (month) +print(date[8:]) # 20 (day) +print(date[-2:]) # 20 +# --------------------------------------- # Whitespace Cleanup +# --------------------------------------- text = " Engineering".lstrip() -print(text) +print(text) # "Engineering" text = "Engineering ".rstrip() -print(text) +print(text) # "Engineering" text = " Engineering ".strip() -print(text) +print(text) # "Engineering" text = "Data Engineering".strip() -print(text) +print(text) # "Data Engineering" text = "###Abc###".strip("#") -print(text) +print(text) # "Abc" + -# Case Conversions +# --------------------------------------- +# Case Conversion +# --------------------------------------- text = "python PROGRAMMING" -print(text.lower()) # Converts all to lowercase -print(text.upper()) # Converts all to uppercase +print(text.lower()) # python programming +print(text.upper()) # PYTHON PROGRAMMING -# Case Conversions search = "Email ".lower().strip() data = " emAil".lower().strip() +print(search == data) # True -print(search == data) +# --------------------------------------- +# String Cleanup Challenge +# --------------------------------------- +# Input: "968-Maria, ( D@ta Engineer );; 27y" +# Goal: name: maria | role: data engineer | age: 27 -Turn the messy string into a single clean summary with name, role, and age -"968-Maria, ( D@ta Engineer );; 27y" -Clean the string! -name: maria | role: data engineer | age: 27 -# Search +# --------------------------------------- +# Search Functions +# --------------------------------------- phone = "+48-176-12345" -print(phone.startswith("+49")) +print(phone.startswith("+49")) # False email = "baraa@outlook.com" -print(email.endswith("gmail.com")) +print(email.endswith("gmail.com")) # False file = "data_backup.csv" -print(file.endswith(".csv")) +print(file.endswith(".csv")) # True -# Search -phone = "+48-176-12345" -print(phone.startswith("+49")) # False - -email = "baraa@outlook.com" -print(email.endswith("gmail.com")) # False - -print("@" in email) # True +print("@" in email) # True url = "https://api.company.com/v1/data" -print("/api" in url) # True - +print("/api" in url) # True -# Search +# --------------------------------------- +# Partial Extraction Using find() +# --------------------------------------- phone1 = "+48-176-12345" phone2 = "48-654-16548" phone3 = "0048-654-16548" @@ -182,10 +197,4 @@ print(phone1[phone1.find("-") + 1:]) # 176-12345 print(phone2[phone2.find("-") + 1:]) # 654-16548 print(phone3[phone3.find("-") + 1:]) # 654-16548 - print(phone1.find("-")) # 3 - - - - - From 5c143a694597dd6d2c97540c99b0ea197b7cb66c Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 21:09:05 +0200 Subject: [PATCH 29/34] Update 07_number_functions.py --- scripts/07_number_functions.py | 130 +++++++++++++++++---------------- 1 file changed, 66 insertions(+), 64 deletions(-) diff --git a/scripts/07_number_functions.py b/scripts/07_number_functions.py index 5e1269b..533bd57 100644 --- a/scripts/07_number_functions.py +++ b/scripts/07_number_functions.py @@ -1,43 +1,56 @@ +# ================================================================================ +# NUMERIC DATA TYPES +# ---------------------------------------- +# Python supports different numeric types: int, float, complex. +# You can also convert between types and perform arithmetic operations. +# ================================================================================ + +# --------------------------------------- +# Numeric Types +# --------------------------------------- x = 5 y = 5.7 z = 2 + 3j -print(type(x)) # -print(type(y)) # -print(type(z)) # - +print(type(x)) # ➜ +print(type(y)) # ➜ +print(type(z)) # ➜ +# --------------------------------------- +# Type Conversion +# --------------------------------------- x = "24" -print(type(x)) # +print(type(x)) # ➜ x = int(x) -print(type(x)) # - -print(x * 3) # 72 - +print(type(x)) # ➜ +print(x * 3) # ➜ 72 x = 3.14 -print(int(x)) - +print(int(x)) # ➜ 3 x = 3 -print(float(x)) - +print(float(x)) # ➜ 3.0 x = 3 # real part y = 4 # imaginary part -print(complex(x, y)) - +print(complex(x, y)) # ➜ (3+4j) +# --------------------------------------- +# Basic Arithmetic Operations +# --------------------------------------- print(2 + 3) # ➜ 5 (Addition) print(5 - 3) # ➜ 2 (Subtraction) print(4 * 2) # ➜ 8 (Multiplication) -print(7 / 2) # ➜ 3.5 (True division → returns float) -print(7 // 2) # ➜ 3 (Floor division → drops the decimal) +print(7 / 2) # ➜ 3.5 (True division → float) +print(7 // 2) # ➜ 3 (Floor division → int) print(9 % 2) # ➜ 1 (Modulus → remainder) -print(2 ** 3) # ➜ 8 (Exponentiation → 2 to the power of 3) +print(2 ** 3) # ➜ 8 (Exponentiation) +# --------------------------------------- +# Compound Assignment Operators +# --------------------------------------- x = 2 # Step 1: Initialize x with value 2 x += 3 # Step 2: x = x + 3 → x becomes 5 @@ -50,64 +63,53 @@ print(x) # ➜ 8 -print(abs(2 - 10)) - - - +# --------------------------------------- +# Absolute Value +# --------------------------------------- +print(abs(2 - 10)) # ➜ 8 +# --------------------------------------- +# Rounding and Math Module +# --------------------------------------- import math -# Rounding Numbers price = 35.54879865 -# Built-in round(): round to nearest whole number -print(round(price)) # ➜ 36 - -# Round to 2 decimal places -print(round(price, 2)) # ➜ 35.55 - -# Round to 1 decimal place -print(round(price, 1)) # ➜ 35.5 - -# Round down to nearest whole number -print(math.floor(price)) # ➜ 35 - -# Round up to nearest whole number -print(math.ceil(price)) # ➜ 36 - -# Truncate the decimal part (drop it without rounding) -print(math.trunc(price)) # ➜ 35 - -# Convert to int (same as truncation) -print(int(price)) # ➜ 35 - +print(round(price)) # ➜ 36 (nearest whole number) +print(round(price, 2)) # ➜ 35.55 (2 decimal places) +print(round(price, 1)) # ➜ 35.5 +print(math.floor(price)) # ➜ 35 (round down) +print(math.ceil(price)) # ➜ 36 (round up) +print(math.trunc(price)) # ➜ 35 (truncate decimal part) +print(int(price)) # ➜ 35 (same as trunc) +# --------------------------------------- +# Random Numbers +# --------------------------------------- import random -# Generate a random float between 0 and 1 (uncomment to try) -print(random.random()) # ➜ 0.7321 (example) - -# Simulate a dice roll: random integer between 1 and 6 (inclusive) -print(random.randint(1, 6)) # ➜ 4 (varies every time) - - +print(random.random()) # ➜ Random float between 0 and 1 +print(random.randint(1, 6)) # ➜ Simulates a dice roll (1 to 6) +# --------------------------------------- +# Checking Integer Values +# --------------------------------------- x = 7.0 -print(x.is_integer()) # ➜ True → 7.0 is a float, but it represents an integer +print(x.is_integer()) # ➜ True → 7.0 is float but represents an int y = 7.1 -print(y.is_integer()) # ➜ False → 7.1 is not a whole number - - +print(y.is_integer()) # ➜ False → not a whole number +# --------------------------------------- +# Type Checking +# --------------------------------------- x = 70.4 - -print(isinstance(x, int)) # ➜ False → x is not an integer -print(isinstance(x, float)) # ➜ True → x is a float - - - - -🚀 Python Challenge -Generate a random integer between 1 and 100, and check if the result is an even number. +print(isinstance(x, int)) # ➜ False +print(isinstance(x, float)) # ➜ True + +# --------------------------------------- +# Python Challenge +# --------------------------------------- +# Generate a random integer between 1 and 100, +# then check if the result is an even number. From 43107f90cc5e4a438a9e8326f38f93e46f900bab Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 21:10:17 +0200 Subject: [PATCH 30/34] Update 06_string_functions.py --- scripts/06_string_functions.py | 109 ++++++++++++++++----------------- 1 file changed, 52 insertions(+), 57 deletions(-) diff --git a/scripts/06_string_functions.py b/scripts/06_string_functions.py index f16bdc0..cd66a3f 100644 --- a/scripts/06_string_functions.py +++ b/scripts/06_string_functions.py @@ -1,5 +1,5 @@ # ================================================================================ -# STRING FUNCTIONS & OPERATIONS +# STRING FUNCTIONS # ---------------------------------------- # Strings are one of the most used data types in Python. # This section covers type conversion, transformations, formatting, @@ -16,9 +16,9 @@ print(type(age)) # print("Your Age is: " + str(age)) # Must convert int to str for concatenation -age = age + 5 # 29 (int) +age = age + 5 # ➜ 29 (int) age = str(age) # Convert to string -print(type(age)) # +print(type(age)) # ➜ # age = age + 5 # Error: Cannot add int to str @@ -26,7 +26,7 @@ # String Length # --------------------------------------- password = "123a58478as" -print(len(password)) # 11 +print(len(password)) # ➜ 11 if len(password) < 8: print("Your Password is too short!") @@ -40,20 +40,19 @@ Many people love python. """ -print(text.count("Python")) # 2 (case-sensitive) -print(text.count("python")) # 1 -print(text.count("$")) # 1 +print(text.count("Python")) # ➜ 2 (case-sensitive) +print(text.count("python")) # ➜ 1 +print(text.count("$")) # ➜ 1 # --------------------------------------- # Replacing Characters # --------------------------------------- price = "1234,56" -print(price.replace(",", ".")) # 1234.56 +print(price.replace(",", ".")) # ➜ 1234.56 phone = "176-1234-56" -print(phone.replace("-", "/")) # 176/1234/56 -print(phone.replace("-", "")) # 176123456 - +print(phone.replace("-", "/")) # ➜ 176/1234/56 +print(phone.replace("-", "")) # ➜ 176123456 # --------------------------------------- # Phone Number Cleanup Challenge @@ -64,8 +63,7 @@ raw_number = "+49 (176) 123-4567" clean_number = raw_number.replace("+49", "0049").replace("(", "").replace(")", "").replace("-", "").replace(" ", "") -print(clean_number) # 00491761234567 - +print(clean_number) # ➜ 00491761234567 # --------------------------------------- # Combining Strings @@ -73,13 +71,12 @@ first_name = "Michael" last_name = "Scott" full_name = first_name + "-" + last_name -print(full_name) # Michael-Scott +print(full_name) # ➜ Michael-Scott folder = "C:/Users/Baraa/" file = "report.csv" full_file_path = folder + file -print(full_file_path) # C:/Users/Baraa/report.csv - +print(full_file_path) # ➜ C:/Users/Baraa/report.csv # --------------------------------------- # String Formatting @@ -102,90 +99,80 @@ # Splitting Strings # --------------------------------------- stamp = "2026-09-20 14:30" -print(stamp.split(" ")) # ['2026-09-20', '14:30'] +print(stamp.split(" ")) # ➜ ['2026-09-20', '14:30'] csv_file = "1234,Max,USA,1970-10-05,M" -print(csv_file.split(",")) # ['1234', 'Max', 'USA', '1970-10-05', 'M'] +print(csv_file.split(",")) # ➜ ['1234', 'Max', 'USA', '1970-10-05', 'M'] # --------------------------------------- # Repeating Strings # --------------------------------------- -print("ha" * 3) # hahaha -print("=" * 30) # ============================== +print("ha" * 3) # ➜ hahaha +print("=" * 30) # ➜ ============================== # --------------------------------------- # Indexing and Slicing # --------------------------------------- text = "Python" -print(text[0]) # P (first character) -print(text[-6]) # P (same as above) -print(text[5]) # n (last character) -print(text[-1]) # n -print(text[3]) # h +print(text[0]) # ➜ P (first character) +print(text[-6]) # ➜ P (same as above) +print(text[5]) # ➜ n (last character) +print(text[-1]) # ➜ n +print(text[3]) # ➜ h date = "2026-09-20" -print(date[0:4]) # 2026 (year) -print(date[:4]) # 2026 -print(date[5:7]) # 09 (month) -print(date[8:]) # 20 (day) -print(date[-2:]) # 20 - +print(date[0:4]) # ➜ 2026 (year) +print(date[:4]) # ➜ 2026 +print(date[5:7]) # ➜ 09 (month) +print(date[8:]) # ➜ 20 (day) +print(date[-2:]) # ➜ 20 # --------------------------------------- # Whitespace Cleanup # --------------------------------------- text = " Engineering".lstrip() -print(text) # "Engineering" +print(text) # ➜ "Engineering" text = "Engineering ".rstrip() -print(text) # "Engineering" +print(text) # ➜ "Engineering" text = " Engineering ".strip() -print(text) # "Engineering" +print(text) # ➜ "Engineering" text = "Data Engineering".strip() -print(text) # "Data Engineering" +print(text) # ➜ "Data Engineering" text = "###Abc###".strip("#") -print(text) # "Abc" - +print(text) # ➜ "Abc" # --------------------------------------- # Case Conversion # --------------------------------------- text = "python PROGRAMMING" -print(text.lower()) # python programming -print(text.upper()) # PYTHON PROGRAMMING +print(text.lower()) # ➜ python programming +print(text.upper()) # ➜ PYTHON PROGRAMMING search = "Email ".lower().strip() data = " emAil".lower().strip() -print(search == data) # True - - -# --------------------------------------- -# String Cleanup Challenge -# --------------------------------------- -# Input: "968-Maria, ( D@ta Engineer );; 27y" -# Goal: name: maria | role: data engineer | age: 27 - +print(search == data) # ➜ True # --------------------------------------- # Search Functions # --------------------------------------- phone = "+48-176-12345" -print(phone.startswith("+49")) # False +print(phone.startswith("+49")) # ➜ False email = "baraa@outlook.com" -print(email.endswith("gmail.com")) # False +print(email.endswith("gmail.com")) # ➜ False file = "data_backup.csv" -print(file.endswith(".csv")) # True +print(file.endswith(".csv")) # ➜ True -print("@" in email) # True +print("@" in email) # ➜ True url = "https://api.company.com/v1/data" -print("/api" in url) # True +print("/api" in url) # ➜ True # --------------------------------------- # Partial Extraction Using find() @@ -194,7 +181,15 @@ phone2 = "48-654-16548" phone3 = "0048-654-16548" -print(phone1[phone1.find("-") + 1:]) # 176-12345 -print(phone2[phone2.find("-") + 1:]) # 654-16548 -print(phone3[phone3.find("-") + 1:]) # 654-16548 -print(phone1.find("-")) # 3 +print(phone1[phone1.find("-") + 1:]) # ➜ 176-12345 +print(phone2[phone2.find("-") + 1:]) # ➜ 654-16548 +print(phone3[phone3.find("-") + 1:]) # ➜ 654-16548 + +print(phone1.find("-")) # ➜ 3 + + +# --------------------------------------- +# String Cleanup Challenge +# --------------------------------------- +# Input: "968-Maria, ( D@ta Engineer );; 27y" +# Goal: name: maria | role: data engineer | age: 27 From 7b85ac806e38a262077193e249bda4d78749c9bb Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 21:11:57 +0200 Subject: [PATCH 31/34] Update 08_boolean_functions.py --- scripts/08_boolean_functions.py | 57 ++++++++++++++++++++------------- 1 file changed, 35 insertions(+), 22 deletions(-) diff --git a/scripts/08_boolean_functions.py b/scripts/08_boolean_functions.py index 8af7754..d11b2d6 100644 --- a/scripts/08_boolean_functions.py +++ b/scripts/08_boolean_functions.py @@ -1,36 +1,49 @@ +# ================================================================================ +# BOOLEAN VALUES +# ---------------------------------------- +# Booleans are either True or False. They're often used for logic, conditions, +# validations, and control flow. Python also allows checking "truthiness" of values. +# ================================================================================ + +# --------------------------------------- +# Basic Boolean Values +# --------------------------------------- print(True) # ➜ True print(False) # ➜ False print(type(True)) # ➜ - -print(bool(123)) # ➜ True (non-zero number) -print(bool("Hi")) # ➜ True (non-empty string) - -print(bool(())) # ➜ False (empty tuple) -print(bool(0)) # ➜ False (zero) -print(bool("")) # ➜ False (empty string) -print(bool(None)) # ➜ False (None is always False) - - - -email = "" -phone = "017-1234" +# --------------------------------------- +# bool() Function: Truthiness of Values +# --------------------------------------- +print(bool(123)) # ➜ True (non-zero number) +print(bool("Hi")) # ➜ True (non-empty string) + +print(bool(())) # ➜ False (empty tuple) +print(bool(0)) # ➜ False (zero) +print(bool("")) # ➜ False (empty string) +print(bool(None)) # ➜ False (None is always considered False) + +# --------------------------------------- +# Using any() and all() for Field Validation +# --------------------------------------- +email = "" +phone = "017-1234" username = "baraa123" -# Allows registration if any field is filled -# (at least one non-empty value → True) +# Allows registration if at least one field is filled print(any([email, phone, username])) # ➜ True -# Allows registration only if all fields are filled -# (every value must be non-empty → True) +# Allows registration only if all fields are filled print(all([email, phone, username])) # ➜ False - - -# Check if values are of a certain type +# --------------------------------------- +# Type Checking with isinstance() +# --------------------------------------- print(isinstance(123, int)) # ➜ True print(isinstance(True, str)) # ➜ False -# Check how strings start or end -print("Hello".endswith("o")) # ➜ False +# --------------------------------------- +# String Start/End Checks +# --------------------------------------- +print("Hello".endswith("o")) # ➜ True print("Hello".startswith("o")) # ➜ False From 960c3e9e74804b0b718b506dbe2b002a3afa0450 Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 21:13:19 +0200 Subject: [PATCH 32/34] Update 09_comparison_operators.py --- scripts/09_comparison_operators.py | 84 ++++++++++++++++-------------- 1 file changed, 46 insertions(+), 38 deletions(-) diff --git a/scripts/09_comparison_operators.py b/scripts/09_comparison_operators.py index 6178a1b..efe5138 100644 --- a/scripts/09_comparison_operators.py +++ b/scripts/09_comparison_operators.py @@ -1,41 +1,49 @@ -# ✅ Comparison Operators in Python -print(10 == 10) # True — equal to -print(10 != 10) # False — not equal to -print(7 > 3) # True — greater than -print(7 >= 3) # True — greater than or equal to -print(3 < 7) # True — less than -print(7 <= 7) # True — less than or equal to - - -# Case-sensitive comparison -print("a" == "A") # False — lowercase is NOT equal to uppercase -# Case-insensitive comparison -print("a".lower() == "A".lower()) # True - - -# Alphabetical comparison using strings -print("a" < "b") # True — because "a" comes before "b" in ASCII order - - -# WRONG: This will cause a syntax error! -# print("a" = "A") # You cannot use = inside a comparison like this. - -# CORRECT: -print("a" == "A") # False, because string comparison is case-sensitive - -# Assignment example: -x = "a" # This assigns the value "a" to variable x -print(x == "a") # True - - - -# Is age between 18 and 30? +# ================================================================================ +# COMPARISON OPERATORS +# ---------------------------------------- +# Comparison operators are used to compare values and return Boolean results. +# These include equality, inequality, greater/less than, and range comparisons. +# ================================================================================ + +# --------------------------------------- +# Basic Comparison Operators +# --------------------------------------- +print(10 == 10) # ➜ True (equal to) +print(10 != 10) # ➜ False (not equal to) +print(7 > 3) # ➜ True (greater than) +print(7 >= 3) # ➜ True (greater than or equal to) +print(3 < 7) # ➜ True (less than) +print(7 <= 7) # ➜ True (less than or equal to) + +# --------------------------------------- +# String Comparison: Case Sensitivity +# --------------------------------------- +print("a" == "A") # ➜ False (case-sensitive) +print("a".lower() == "A".lower()) # ➜ True (case-insensitive comparison) + +# --------------------------------------- +# Alphabetical Comparison +# --------------------------------------- +print("a" < "b") # ➜ True — "a" comes before "b" in ASCII order + +# --------------------------------------- +# Common Mistake: Using = Instead of == +# --------------------------------------- +# print("a" = "A") # SyntaxError: cannot use = in comparisons +# Correct usage: +print("a" == "A") # ➜ False + +# --------------------------------------- +# Assignment vs Comparison +# --------------------------------------- +x = "a" # Assignment +print(x == "a") # ➜ True (comparison) + +# --------------------------------------- +# Chained Comparison (Range Check) +# --------------------------------------- age = 18 -print(18 <= age <= 30) # True +print(18 <= age <= 30) # ➜ True (age is between 18 and 30) - -# Is age between 18 and 30? age = 35 -print(18 <= age <= 30) # False - - +print(18 <= age <= 30) # ➜ False (35 is outside the range) From 6fb22c0d1807f5173b09065bc65b069fdbfb946e Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 21:16:32 +0200 Subject: [PATCH 33/34] Update 10_logical_operators.py --- scripts/10_logical_operators.py | 151 ++++++++++++++++---------------- 1 file changed, 76 insertions(+), 75 deletions(-) diff --git a/scripts/10_logical_operators.py b/scripts/10_logical_operators.py index c9de8ef..9ed12ff 100644 --- a/scripts/10_logical_operators.py +++ b/scripts/10_logical_operators.py @@ -1,105 +1,106 @@ - -# Logical Operations - -print(3 > 1 and 5 < 1) # False: First is True, second is False -print(3 > 1 and 5 > 1) # True: Both are True - -print(3 > 1 or 5 < 1) # True: First is True, second is False -print(3 > 1 or 5 > 1) # True: Both are True - - - - -# Checks if the system is under pressure -cpu_usage = 70 +# ================================================================================ +# LOGICAL OPERATORS & IDENTITY CHECKS +# ---------------------------------------- +# Python provides logical operators to combine multiple conditions: +# `and`, `or`, `not` — which return Boolean results based on truth tables. +# This section also covers `in`, `not in`, `is`, and `is not`. +# ================================================================================ + +# --------------------------------------- +# Basic Logical Operators: and / or +# --------------------------------------- +print(3 > 1 and 5 < 1) # ➜ False: first is True, second is False +print(3 > 1 and 5 > 1) # ➜ True: both are True + +print(3 > 1 or 5 < 1) # ➜ True: first is True, second is False +print(3 > 1 or 5 > 1) # ➜ True: both are True + +# --------------------------------------- +# Real-World Example: System Monitoring +# --------------------------------------- +cpu_usage = 70 memory_usage = 90 -print(cpu_usage > 90 or memory_usage > 90) # False: both values are not above 90 - +print(cpu_usage > 90 or memory_usage > 90) # ➜ False: both values are within limits - -# Checking user credentials before login -email = True +# --------------------------------------- +# Login Validation +# --------------------------------------- +email = True password = False -print(email and password) # False: both conditions must be True to pass - - - -# Using 'not' to reverse boolean values and check for falsy values +print(email and password) # ➜ False: both must be True to allow login -print(not 3 > 2) # False: 3 > 2 is True, not True becomes False -print(not True) # False -print(not False) # True -print(not not False) # False: not False is True, not True is False +# --------------------------------------- +# Logical NOT +# --------------------------------------- +print(not 3 > 2) # ➜ False +print(not True) # ➜ False +print(not False) # ➜ True +print(not not False) # ➜ False name = "" -print(not name) # True: empty string is falsy, not falsy is True -print(not 10) # False: 10 is truthy, not True is False +print(not name) # ➜ True: empty string is falsy +print(not 10) # ➜ False: 10 is truthy - - -# Allow access only if the user is logged in -# or they are a guest -# but they must not be banned +# --------------------------------------- +# Complex Access Control Logic +# --------------------------------------- +# Allow access if the user is logged in OR a guest, +# BUT they must not be banned. is_logged_in = True -is_guest = False -is_banned = True - -# Using parentheses to group access logic correctly -print(is_logged_in or is_guest and not is_banned) -print((is_logged_in or is_guest) and not is_banned) +is_guest = False +is_banned = True + +print(is_logged_in or is_guest and not is_banned) # ➜ True (wrong logic) +print((is_logged_in or is_guest) and not is_banned) # ➜ False (correct logic) + +# --------------------------------------- +# Python Challenges +# --------------------------------------- +# 1. Name is not empty and age is >= 18 +# 2. Password is at least 8 chars and has no spaces +# 3. Email is not empty, contains '@', and ends with '.com' +# 4. Username is a string, not None, and longer than 5 characters +# 5. User is admin or moderator, and not banned or email verified + +# --------------------------------------- +# Membership Operators: in / not in +# --------------------------------------- +print("f" not in "python") # ➜ True +print(3 not in [1, 2, 3]) # ➜ False - - -Python Challenges -1. Check if a user's name is not empty and the age is greater than or equal to 18 -2. Check if the password is at least 8 characters long and does not contain spaces -3. Check if a user’s email is not empty, contains '@', and ends with '.com' -4. Check if a username is a string, is not None, and is longer than 5 characters -5. Check if the user is either an admin or a moderator, and either they’re not banned or they’ve verified their email - - - -# IS IN -print("f" not in "python") -print(3 not in [1, 2, 3]) - -# Security check: ensure the domain is not banned domain = "spam.com" banned_domains = ["spam.com", "fake.org", "bot.net"] -print(domain not in banned_domains) - +print(domain not in banned_domains) # ➜ False +# --------------------------------------- +# Identity Operators: is / is not +# --------------------------------------- x = ['a', 'b', 'c'] y = ['a', 'b', 'c'] -print(x == y) # True: same content -print(x is y) # False: different objects +print(x == y) # ➜ True: same content +print(x is y) # ➜ False: different objects in memory x = 10 y = 10 -print(x == y) # True: same value -print(x is y) # True: same object (small integers are interned in Python) - +print(x == y) # ➜ True: same value +print(x is y) # ➜ True: same object (small integers are cached) x = ['a', 'b', 'c'] y = x -print(x == y) # True: values are the same -print(x is y) # True: both variables point to the same object in memory - - -# Make sure the email exists, and it’s not empty. +print(x == y) # ➜ True: same values +print(x is y) # ➜ True: same object (same memory reference) +# --------------------------------------- +# Validate Email Exists and Is Not Empty +# --------------------------------------- email = "b@gmail.com" -print(email != "") +print(email != "") # ➜ True email = None -print(email is not None and email != "") - - - - +print(email is not None and email != "") # ➜ False From bfd1d65fb1e668d840f018c3566b2b29349abb5c Mon Sep 17 00:00:00 2001 From: Baraa Khatib Salkini <69188047+DataWithBaraa@users.noreply.github.com> Date: Thu, 31 Jul 2025 21:17:25 +0200 Subject: [PATCH 34/34] Update 11_conditional_statements.py --- scripts/11_conditional_statements.py | 37 +++++++++++++++++++++++----- 1 file changed, 31 insertions(+), 6 deletions(-) diff --git a/scripts/11_conditional_statements.py b/scripts/11_conditional_statements.py index 5b6a251..fd62b69 100644 --- a/scripts/11_conditional_statements.py +++ b/scripts/11_conditional_statements.py @@ -1,14 +1,29 @@ +# ================================================================================ +# CONDITIONAL STATEMENTS (IF / ELSE / ELIF) +# ---------------------------------------- +# Python uses `if`, `elif`, and `else` to control the flow of decisions. +# You can nest conditions or combine them using logical operators. +# ================================================================================ + +# --------------------------------------- +# Simple If Condition +# --------------------------------------- score = 100 if score >= 90: print("A") +# --------------------------------------- +# If / Else +# --------------------------------------- score = 50 if score >= 90: print("A") else: print("F") - +# --------------------------------------- +# If / Elif / Else +# --------------------------------------- score = 50 if score >= 90: print("A") @@ -17,6 +32,9 @@ else: print("F") +# --------------------------------------- +# Full Grading Logic with Multiple Elif +# --------------------------------------- score = 50 if score >= 90: print("A") @@ -29,8 +47,12 @@ else: print("F") +# --------------------------------------- +# Nested If: Project Bonus +# --------------------------------------- score = 50 submitted_project = True + if score >= 90: if submitted_project: print("A+") @@ -45,9 +67,12 @@ else: print("F") - +# --------------------------------------- +# Combined Conditions with and/or +# --------------------------------------- score = 50 submitted_project = True + if score >= 90 and submitted_project: print("A+") elif score >= 90: @@ -61,8 +86,9 @@ else: print("F") - - +# --------------------------------------- +# Independent Conditions +# --------------------------------------- score = 50 submitted_project = True @@ -71,8 +97,7 @@ else: print("Low Score") -if submitted_project0: +if submitted_project: print("Project is submitted") else: print("Project is not submitted") -