From caf90c2ccdc499de425b2cf26f0b9cd7b6438825 Mon Sep 17 00:00:00 2001 From: Dharshi Balasubramaniyam <139672976+DharshiBalasubramaniyam@users.noreply.github.com> Date: Wed, 19 Jun 2024 12:39:21 +0530 Subject: [PATCH] Added Notes app - React.js + Firebase (#349) * Create README.md * Added notes app project * Update react.js README.md * Update database-react.json * Add screenshot.webp * fixed the repetition in readme.md --- .../Advanced/Notes-App/README.md | 98 + .../Advanced/Notes-App/index.html | 14 + .../Advanced/Notes-App/package-lock.json | 6462 +++++++++++++++++ .../Advanced/Notes-App/package.json | 34 + .../Advanced/Notes-App/postcss.config.js | 6 + .../Advanced/Notes-App/public/favicon.ico | Bin 0 -> 31416 bytes .../Notes-App/public/screenshots/image_00.png | Bin 0 -> 48522 bytes .../Notes-App/public/screenshots/image_01.png | Bin 0 -> 48889 bytes .../Advanced/Notes-App/screenshot.webp | Bin 0 -> 16996 bytes .../Advanced/Notes-App/src/App.jsx | 45 + .../src/components/AuthContainer.jsx | 14 + .../Notes-App/src/components/Button.jsx | 16 + .../Notes-App/src/components/ConfirmModal.jsx | 42 + .../Notes-App/src/components/EditFolder.jsx | 76 + .../Notes-App/src/components/FolderCard.jsx | 61 + .../Notes-App/src/components/FolderList.jsx | 42 + .../Notes-App/src/components/Footer.jsx | 9 + .../Notes-App/src/components/Header.jsx | 51 + .../Notes-App/src/components/Info.jsx | 10 + .../Notes-App/src/components/Input.jsx | 23 + .../src/components/NewActionButton.jsx | 60 + .../Notes-App/src/components/NewFolder.jsx | 70 + .../Notes-App/src/components/NoteCard.jsx | 92 + .../Notes-App/src/components/NotesList.jsx | 20 + .../Notes-App/src/components/Search.jsx | 28 + .../Notes-App/src/config/firebase.jsx | 26 + .../Notes-App/src/config/reactQuill.jsx | 14 + .../Notes-App/src/contexts/AuthContext.jsx | 3 + .../Notes-App/src/contexts/FolderContext.jsx | 3 + .../Notes-App/src/contexts/NoteContext.jsx | 3 + .../Advanced/Notes-App/src/hooks/UseAuth.jsx | 188 + .../Notes-App/src/hooks/UseFolder.jsx | 168 + .../Advanced/Notes-App/src/hooks/UseNote.jsx | 178 + .../Advanced/Notes-App/src/index.css | 40 + .../Advanced/Notes-App/src/main.jsx | 24 + .../Notes-App/src/pages/auth/Login.jsx | 120 + .../Notes-App/src/pages/auth/Register.jsx | 146 + .../src/pages/auth/RegistrationSuccess.jsx | 32 + .../Notes-App/src/pages/my/DashBoard.jsx | 90 + .../Notes-App/src/pages/my/EditNote.jsx | 102 + .../Notes-App/src/pages/my/NewNote.jsx | 95 + .../Notes-App/src/pages/my/ViewNote.jsx | 35 + .../Advanced/Notes-App/tailwind.config.js | 17 + .../Advanced/Notes-App/vite.config.js | 7 + React-JS-Projects/README.md | 2 +- database/react.json | 7 +- 46 files changed, 8571 insertions(+), 2 deletions(-) create mode 100644 React-JS-Projects/Advanced/Notes-App/README.md create mode 100644 React-JS-Projects/Advanced/Notes-App/index.html create mode 100644 React-JS-Projects/Advanced/Notes-App/package-lock.json create mode 100644 React-JS-Projects/Advanced/Notes-App/package.json create mode 100644 React-JS-Projects/Advanced/Notes-App/postcss.config.js create mode 100644 React-JS-Projects/Advanced/Notes-App/public/favicon.ico create mode 100644 React-JS-Projects/Advanced/Notes-App/public/screenshots/image_00.png create mode 100644 React-JS-Projects/Advanced/Notes-App/public/screenshots/image_01.png create mode 100644 React-JS-Projects/Advanced/Notes-App/screenshot.webp create mode 100644 React-JS-Projects/Advanced/Notes-App/src/App.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/components/AuthContainer.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/components/Button.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/components/ConfirmModal.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/components/EditFolder.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/components/FolderCard.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/components/FolderList.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/components/Footer.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/components/Header.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/components/Info.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/components/Input.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/components/NewActionButton.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/components/NewFolder.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/components/NoteCard.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/components/NotesList.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/components/Search.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/config/firebase.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/config/reactQuill.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/contexts/AuthContext.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/contexts/FolderContext.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/contexts/NoteContext.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/hooks/UseAuth.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/hooks/UseFolder.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/hooks/UseNote.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/index.css create mode 100644 React-JS-Projects/Advanced/Notes-App/src/main.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/pages/auth/Login.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/pages/auth/Register.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/pages/auth/RegistrationSuccess.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/pages/my/DashBoard.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/pages/my/EditNote.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/pages/my/NewNote.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/src/pages/my/ViewNote.jsx create mode 100644 React-JS-Projects/Advanced/Notes-App/tailwind.config.js create mode 100644 React-JS-Projects/Advanced/Notes-App/vite.config.js diff --git a/React-JS-Projects/Advanced/Notes-App/README.md b/React-JS-Projects/Advanced/Notes-App/README.md new file mode 100644 index 00000000..7ec582ea --- /dev/null +++ b/React-JS-Projects/Advanced/Notes-App/README.md @@ -0,0 +1,98 @@ +
+ A user-friendly notes app enabling seamless note management functionalities by authentication, folder management, nested folders, text formatting, search functionality and responsive design. +Users can login and create account using either email/password or Google account. + - Authentication: Login and register using either email/password or Google account. + + - Folder Management: Create, edit, delete, and view folders to categorize and store notes. + +- Nested Folders: Create nested folders/subfolders, enabling hierarchical organization. + +- Note Management: Create, edit, delete, and view notes. + +- Text Formatting: Create text with bold, italic, underline, lists, images, and hyperlinks. + +- Search Functionality: Easily find notes and folders. + +- Responsive Design: Optimized for all screen sizes. +
+!2NEmiwCB^;AAGgq*erggC zRuiIEP;AapQsx--)V5>`GPixzY#P$uxs>aZ@NzPJ8)Z|n5+7&b-5v71_&^Jzb!s59 zEKjD);!E}9&Bckt_QB1Rs4AvWk7P>I+;v2C#^dO68TO;f++6-QunD+DSC1ilb}19E zlPC9B&z7%7;!D1te6#th=WJ*BCY;7`7mh{;9b4x1@((TH7ajK7AH#0; !{BCk*vi`*;WT2xqd+4?SHi#$ZvEHXrTMB_ E>XKQ?7^syT$~pF+n2=ORB?}lJWB@_bY$& z%pwClnoH~uNp|kue5l`HQv+^rv!WCCa0F6>o_`R(Emw}8?z8NWb5~2i8&V@<`Y!Wj zuM0PdVUmuwjZKpa7fXSM<_lNyL$5`rZVfz_lN{lnEicZ9!*4)eJFq)h@roI5Sf`5; zqpRNck4=Tr9*fh68>llofL8-GHRN-wEO3l}$_X<=+?-pq8pVh$IaT_%zg}ut-xWba zcp{T9B0mU7i)44G)Wt{k`>hIH<6#2v>UoVbnwT7pyj_U`O`)qaS(Df=xXBx$R-D+w z=kcEGe!X#8BX d{&GAN_{kqzk z;0@R%{i9wg*vtsT9k5QyaGB %f}#1zCCgbQq6pk09XmH->RRodn%U z-7%uXBBw{~@GwTufX3EUIScn@hh}}B7g ~venw5*+m z&IW}+IPkl`L4-+mVXBh qp{mK_dPN+(>&geqSd@t4O4Lhv`_`63)dCL9?$ z+C6MrN9R=<6zKt~NgLuC>3VuUt(JE;7-C!PqDU&5m}AD9n$~@rdL Bn&}qgOC 2>O`PfL^YyG0B<(Lf2__qFStbcXs#;FW|pbrzW92{2Dh0-Z>3UK8%F_g zHZ2Ri?Nn<|Ugb7xW4#rJ9(8;MqHbfSN3-7v3AZu%W50R*!D~e!!I0MY4Wh?_PLZ8H zU?Hfew!qlV<)-$Spg1J-PP}28S-Mb=a3^ y&I!OOW1k u877L{clxjWAtDmPBmud$`BTQ|$s~hu^ok#9|g;;P~f3boi!( zS!;$}V;*%5CieKLRjcG611YxWb;@~i65o5)+%bGLI{Mpg0C2rgR>44SKV?g$JBvuR z($RS O)|oeQrwtf}c>eIgjOC@5S2D0<%85@N69peYj(-CEVb zX>qXY^_vC#BA0cD=q`HB3taGjQ0iL8_f=pL?$?`YxUTqu^=V_(6~=KY6-^#E0BLnO zEnVdv0J)6$VCR{GC02oa`B}_mtxi$FzyO=11jhKc-BE9mW+>Ae>)T5k5BYfGwz%KR z-n;F(^*Ra$1ofW}DXeGuoDy2zJa?Wcx3(n}El^h$;L@GsS;4DsU2${uKwGtOk$+Ub zW*p_2DfpKV`TRFrW|hEQ_Si!=X3(TPI0y_8C%V=4R}-< $=EOTJ^>@rd{=#AOz3!&EzL*cv}2O1X1LWx4m!VhsM`R zSBEN9Sd)|a-7qYI2!2y)J=RYj|14}wS)><(GFGhAMJX>u9xOBqA{6t0o3l+F z4?o6yQH_?I_1EU;6m@lj^h6Iu((E!TGw!z$sGd)A=PiCv?&8FsJh1^2GCz&abd;EX z_fe#{FYEH@87~{_Po;WA)fRuk!YUd3BF{wLhy7+z$y!010g=Q!AV| xImjS1ss2!R^Y2CX?MWcDHS0Pe~o zG+Qm|J>V9s1}5J?*}&M~kvOeO!`kui7bfPLa~o@YQ+dg^WOzQCjiPy?Sx1uob*+50 zUxp&3R%LRwP97Ey?G&S+P`%xNpR2#ZTFt?YLaQ15RI5>gd><|Nu>^1hkVIpqCs5Z@ z8@6Z31k6jsap2bh)qrt?;pB!HDQ>uh&rQceg4ZQ7DQxFW`*|nyFIKd;igkXKAE{EE z^nc!{n=!noFJvpc%^LKW+e=>QaBeugHJ$X&Gxj9%VL|! *mMdH@Q+>j8(y5prBKCM{=CorBr3ULvsRE=ZWzVmGwna*Pqj)2%`6Vgg0{0 z%vOLV_=?cOkX7Hg>yY7zar6<|v9YK>h~^}$8OQ$BV;PBKr|FYrG)y}(Iq-ao?IulM z&W%pY-nP|0xycq^IDal-<<}YiLky`f;g$4m~*g_CVL8IRIFPPbGK?<;Qtog$Ra1 zEmu-<2VtAK&Xo_^5r0X%YI9SG&4mCfbWH>n KZ#A z8X?T}3Wau^!z_Qh5_XNIL>2pzB+563WgkTlq_ZWO$CZNh4Gqjujxe`=?aCuo@%8nN zN-pEW3%Pc&YW#24tF|i%behJM^z46|Br2rVD3U|8ZiOWZM!1;r25_SdkQK=MeKZd0 zY%31Fo_x$X7EZxToE-liVFC>fko2WK5Y*I}N)6XD*XlBx^bf&&>0x<-Gs_p(VOmO? zLwP`i@+@#n3JrUJrmMOVpGyjIM3#NyHh(h>+ST;=c2n6IPy5r}-%-*rjr(%{-U_}K zqFkBx47X|^)U`8Ge8q$=nG~=f?%{#PX$eA1D6@?m7JF*uH#c&q|9fz}-}KWI*jmY< zOf+&ZSoBxre?1hA>`J;zm3cLxOtdxW^1Uv))_p|~?8s}g_Kr@PrFkF?S`?pSde&i< zTJJotv@PaFKP|}RPqbuz(4 nbg-x7wZjYip+gluFePubhDhN8@iLd&UQIF z5sPa=rlh4)Th52`^`iL6Mht{i9|^bAeLzTjapnsDdIfJ(qERcBP9rxr7kj4O)A=}p zsN9mz&ksd$st2`quMuHvjqVPl7d0lyFtfr52;lasySMYm>M!g~ZtfU45=yiF0PNc- zF!k6HfiL8_ZtmKb*INFsql0W^)slu7M>L5*OQ1%RH-7whr1B?71saL1HojTAR`}p` zAxW7=G@YqJFPI%hJ+t4e&;J{_B!8c^#@L}>{0kV)0I8kFTm)#^l+>rfhu1N1?B=Gg zipI3-y?L;r*|KH}9(*)8*izjNyB&skg7DFzDhUjTcxam1GVUh*p%X{=k$O|y#FVJS z&tY59^`_vSutkJ2bw1r}-*+>lQYw85oplGkiD3O6Qsu@EA&YXYs+2~!PS*=w+DE<0 zdWYj+6~h$}utZY9Ute05G5SJmEbzy(Wze(r@O0GNDuClZo-5MKbhXA99fV8q7q>Ln zjn@vR#IPDm^Xz`pTi}mxz#re1!{bpatH`x;OYSS{x?*`x=0Ej16#gAPtT4A -KHmL+jv%ii+O4%^O^sC=J1Z&+Cuw+f`ge8K>lR2B!@H *+k!(ReOVZ^JU)pEeGyK^d?XZom@`Cv;glhi8_P`)Y zI4=F1F<1x8w~)p#5YxYNLT8*K9LpAE>fA~EQ9+3(A2sLnGgW%lH^H#&X_PDFY5w-* ztHL89IDSaDop_#s^P~rc1S*}h6P7eilrRPb%B$E HvYX-sK^6Ckuc?rkDPA= z-~6|JK?BQXmVMef-radKlzi71W+nmvY;s+j2e+S(a!clDTMQf_9|_D>` )Qt-P>BxT&o{QHsAKeBsViVq}%&XBlI%6~1Sk0tg+xf^xES=pW9 zTtG!kKPdFJ3e>l}yH}5;R1{A^7QrSgWz%K^z{GZPV`MJqR+*hlojaL{lnorUIQ(Xf zac4&k#flu{@UU{T9zzt#m xBB1Eo7sG&kasUE8in?ag zPkJ4* =IH3-qNR>4KRK4M&CMt`983WgvTrZQFKF{b5ZBg{1g8DV zAKcE^1ZsNo#8|vN1OIrFwyle=ti}{hJ+Zpr%@^i2MQ8lui}coL!)U`!nAI8Mi05rb zTlOqGr2GTWm0T4R2xn^(m)FLlXPsya?wW8lmX`Uavx4NPoZ>StGGsGy#k?w?g)G!5n)Y_WPTU1%vAaN_i<6xS|6Auy8o<0RzF=_p``6D;3y<^9 zjP<$Mvu8SG!z!WE3%U|CdSYFJqy^0~#;BC!qZI!{NRNLAUY`U(yc#N|ct;0S9<4=; zJQ%XG8+Wl{<$-GCE+8Ygt}#+6VCq!#AMBf|kY~F!m}yA;vSq6wYz83V9nd%AmZaSa z=l)JQ$-mPfM{4>pId191+7r_+vuIsZCJJ7_Y8IZNN%?EX(H-^}N7wHdL1WT-WgsPw z``w1A?So^@0CUwAsglq5AT*F-w!t% HiEWkel>@G7|*BblbnQIlMH^ zXrmcx{&co(LeoT2-K%fJu1M-74!Iri`8%qi`#t7^eZ(^~rnnpiIoYmdH>$zsaF$Dw zKsa|+B26lOZ=sHNAwcCc|L5<`(wWrYHkcnf3A@kFCih{yk@K|e4lP (rIPdpM}))*`Oi~x{)E~OrFJ{dFK^TJnsbC*u2IL` z->I+AzaXFR-Q;~Qo8w8QP~aye*FdGyURYX)<0R$Qk(HS!Ddj^eM)d BQkUI&@`6^f1-MoGd-9AzIoe+G|C%y= z10~=SXjC$2sJ-~p%%jy0E1ZUkp|nW?WPdCsOrifg5lyldSu&FlRyvPqhW^S{6NDk^ zeIh4e*2d!P7@(fpk{$meO6f3 xF=2B1%ym|?<|gtWS2)EZ8`oab{8QieRD=hN3!<7_lVqXE zw48dJ^OPL$1tP{#p`lsRz(w3~6WIrtePuX5YWuVjGynB}c~#NS`w-z!USZa=?Xlgu z73hVXhv>?&+r+9fuf lv5f6(FSec1WqG;kmiHsxV z0R9_}_7nu*{<$oR4&1QwPaX d1yR_0Ch=eGQqgaAB&sLZcND9Oc4~V5Cd*-n8 z8xSW={~-B~uqg})a6e>dLhYd`^Oij&$K@esK4Y%GmCQYV!TJpCrSv8^Nq|R(*BW<1 z<=+BX9=AjlZ~w{OwqRx9#kH+IqS;(cGKUy%o{t>!hrc%rBqX|s+? mV8c%;g&smNH>Bm>p)BAWEDt@IWO;7tU2t z)+fhBSl61dA?(`m$W=q^hw-p ht4c0xN?mTE@x(UCFo0Ggc+lIFEu& z9%7u{LX2-b5dcMkBfvB2pT<)PfxdS8gUhb3Ak1O`(-!(r2GZ?q@Q Q@Y@w!ly(9{V%fYY}`G#ukCn==)c*lQn}JeSw{ z%>0g7_Qj@1kaE=nz)YaDazr}6fP{~4nMpDo01Jtq1W@&nl^g1(KypI*kkZt$fm7&P z@lk}=_LVP6n^IsFAfN9XhlZYc7;474cgdSdhB@u}e<7lA1$+yBlHhD(xozD{vFBKW zW=5G7Q;BQDQ=M#-^Ca~ZplqzQT7Sy;hz1HnAJcTg;mhDe%=l;4wLI`p(^u~W(ivMT z;1^DsJCDahjx3Ehc)i@sk0Z3+y|U3 -6Yg~jD))jv4&ecKkv=+ zzmQO)$GIVTqYuLo>W8yfYe00D7DSO2NqK%BfU7#r7o(E0FSs|_y)0|?jsL}ZobaWI zJRIOe=`WRAEn9v0%Xp8N) upDuGOg zMk{#-4b&siF=(#y*^qy-$Y$6o`QP$@>=3<4geR*-9eewC?RQ)vycBiZK933UREYot zUM%X4DV5;H){4;GZX1p=h_r$KWvLh;gE@D>R0aFc)!R?>e vOpHmpzn!V*cyTUn@30E3u)nKASsJd zRPtQFLysi2t8sa`AWc|~sV3|+s3E~50aCWLZE;jmcisHvNMeCsBC=uVrReUHZS#R< zkqc`c$IK9t4h^0rE*DddHZsDm4E+~iyE|GY=(arL8vY+O+KLD-vB5)KCD}wY0_bZ& z@Bv=$E^K^J>%NF)6YtoGc(hQcSa@`)88%+HL7R@y;}A08` 3-|sy2>hd z2q)!E`w-40YjhTg5}moTV@2qFgnzj^84e#CeWj1EmFn{Ae}7fQ^^@iTkBfo=1UVVq z^ANZfB0y^HfhdN+rP~K2NhG6zI_;~JAHpS%4TFA33&t!`JM2J~aQtc?g=d-Q#Fj7r z2Y+Slz`W*f-6Z0cuP|Qysd9q*q+ui63-Z7t4vMXf*!7AIazC}zdA6%$R`zKQzHZvg z!j-4jyj>=apE(0fFQ>Y^hw<63QU5$wC_5xI1SMpIw8=VQtOI+__5DjQ`#KJ`<#^8g zi-vPg9<9Y#RhHTZ=30E@hVT!S4$d(TXq_B8+jp&M%}tva8C44LH)N3W)A4`KjF)lW zf2;~Cb3RorPvtBHJWLZoS^yuiEPfeV8o_Zei3BGv!PtYp9Vvg5G6^Nd2=A@DXxK=& z;51h_CVtW6Nr j%L+uPW4(Jbv9RD@HV@c2%8t3z#bjY);@ ztA&Wg#6}KzeM#vmx?i2eoAdXs>V`jvo;SJH9}MkcY4?Dh0$?bXnTOV@oOVP;mD8N% zK{^vq65-kw^S$$uw5e&%;zyVp*W50%*xBoJc|rPYb3ImdQtQ2kiFd7y*heuwn}+2> zv50Y}P*VeGNuh@?Zlv*@mC62QrNVt?JIedLQ;EzTKUi6{-k1rDG BSV$`4WYlQG4ruR3(w-Vd01cfeDh45$2U#<%%k`iL~ z3ISPJKaEn^K#WLAH>Wb1{C^%AwMkK#^~X2A2L6jH3v{HIR|~y39&_ix!wD6q6jr<& zNheO!ob0=4Bg$iAqdJB!Cr{>^^Zo19yX0!5Uj3U#1jr@^P_oP|S_^e8=HK(3jPD i!N;TPp8lu8l^8Qiv+Yrny_)CASul|>Al2If=BkZ``BF`K_{~^{n~A@1aFEOs z6LU{Jby;3Znh(uYRdV4 U2n9gS$0 X(J_R4?xwj}=$R)X{{DljcdVRdvu;_La05;9M{O^nObdB}N!fdgiLjJW z5qwa%WT$$X>!;D@g`;D)i`;XgVKaxlMbU>Y^yd_8WZ+jK0PLJ0R~@{%fk8Kxo>`yV z^?FmOPGHKpmxqib97;*ktH8^rAW>kIZYr+a^v12+Mk(k^D&E>zsIKLB{Qk<}e!kw9 zY^DW*guR{YDFV`+F+E+IK$b8#-6n|8%5gPT!-YgIeW%^3l~S9}74L-{Z2=Iq?r(=j z!L{oVxl0Tpzl`z vHIh;T{O^h_~Y1okD{4U6zFxoilU`-kG%~AW_DC=$avT R{)-z8&HJgb7RFcrY*q-AkX!*M4EWoU;%hrOA^fCI4i? z^kAX%?{ul!_$hSU=u!@nOyT9%Aai=<;g5idOw>dRABp92?9^9^2CAb`BCLdn;YFwY zjR9}Buhqo&_y?%^U|Mr@?AX4p_ir#$Qym$Kg>>|(G64tm+J1}rQj0ug#K0>vU@iem zLBnc#fqZVNr}JzsI+-F&xRJ9}Vx6~q(@Wi2uO2`_p7Q-m)nW2t=V sOlBL)bWoEOYS22|26dZcIbyA-MEqK~JOHs-lN}%do =) z86 @UhccDr<6EreNLD3`Q@UU6LWIL=%Ofle%Vi_ z@!D%vW?BxxP6B+Pc+YixrKI2bz-qKS!81Di;X|OOx#^uLkdZKwW?pY<%E4))t)o1) z1?#9_!@B4gE)4nZoqkA6xMV&q<@>^9oRm@ud8KT!k@HX7kMVy}NP562s31rZ3Pt*K z&DZm1hj9w&4W oZeJZ12R9HM9{u zBdBU5=tcbbHf52Q-zdY>o4+KP*yBFW)JoRv_v$>k`6z@%3VCkbsK;V#r7q$Y&RcEl z2`ggU4A3-L@83zK0gtuNY?6SlZ&K}IvV9PjBceNV89qmXece$Vv4ouik;FN=cI(yq z6+U|#7@mVThLnV3qu`Ican^Qjb2L-N{eXcN!N2|~@dK=zo r9Cx3=(rzUw5ksf)ZG|lV6%+gcLRk^n1x@l972I7vRayfxP z$N9&<&~frte9M>9+&`Q+i25rlGn*S`1P+@itw<|cT@z>BKngbzH%4O2m#^Whfb;fi zY^K~#byZP8;qr`8G{FL#oev*jg VA$5gLs($}&ctS47{Xa}%+(@?;68L^b#uC&0{l~|n0>nK5kr7VOn4dq* zOgnC(dY>njq;zVwTg9%OH@YKbW};?yt)eG@p`H`x4@Qh-jDT+QukS4TYaC|F_4#F@ z!|$H2$31T* Ywi@pRrbelS_+O!GYKQUBm|qCO204;k1k@^p{Szi)hldBw7V zuHS cCBt6Tm2hC~8%B=mCHwr`n@!mew03B9czy}7ak_#I2 z4;>%+c>dg)oe#_n=NIRNfjuUGi>2D7T%0%8BdK>SHo&FyF)WqheLdgAi|%JwpepOP zUQvIdBck($OQoNHH-@8xbE>J|D#`#<8dyHXsYDm;+&?WgyIWRf)@I6lCa!&bdGee$ z@m&lUv$fL|qKP9LiOb1e?41psZYA8`;3lPgg`tQcHhEHQ>n*lY-3bQ)i;49gZ7?Kl z!t~T5c~<$FWiIS{r-xGhpftK%i+XhZCV<&&S~4h3z8p=WU91-MTeJfaH5U&nE~*>s zLGSFR7=j-*QI?Oq9mshCd~CYY@-fGUYAUHyhb2>0Vfcr4 UzlrEV`aD6Y__1BP?Z*E z_2L-o-hSVR5^QC|*fpfyrszJVyin8k@YEpEwOJKn0Q7iQklPxg_m#_c9;gb##lq~4 z&CNE{tWct%p#%w1Xvn%4c)&-uonL_uPGB>f0F!A6SL%7(eSj)T%VI0t&UvNz8?3LA zayVTwy F3=B zU+&7etq}-IxjGnxLQcF{&tE#uxFK&&Zobaxh4S42p3CpTTvg=qw?6-e= i!oD2V*487r;_Gt(YHWl1pWS-}D!Cf-zw%7267G=&ejoQ1NHfs4yU7ns*kca? ziZ~a9jL;TQU|jIDC-h?_&blCJN1b5dVTs_x0oEGZw&EFP5dj;G%PxglC91V9k+^7% zbCm`+r_1wq0gjH2=_3Bzwps4Tv+reZhTR3zc}hvtu+HT|H_aa$k_m0T?Y)~zaksb6 zN=u%-#F5>cGP0OW_=|p#!1hjLo17)BX#(7IQRRj=T%9H6?$Y9g_;q^A(+!S#FHh^Q zL!lCMm}z1`LL{bs`KPy?_iKT1)S?--xj}Pt0Zha@7k$kZimR2EQ?kZ(;w8 !y%PkFzpIKe0f3XH^ Xr+!UVCQs-`su$Bxm_QR9Ha;(y^`t$ndE0M;dM=k}moor<%rt %%fww=QFY|yq8T|f6 z$?vj{#Nd}59?U$8bu3n#= 8H;M-o+R`Jtv~baq>TpMVA;?!r8j1>t1Klm6 (R=9j}P3!`e5U7&jI+M(&%itATcOI({977h$C z@R3dYOJd+f=>G8fq~!^yZFeheJFuF+sS$_N0j041A>eSVr7%bwjd;!*rIZETYUJlK z$9K626#Xy$4r=|&gUUU5rY`*Z%%=I-*PMRG|81Z1CvqJ;AW&rmX`g)5KA9k%vE{8{ z?stBt+z3OQDN8jL2-81QwtI0@iqd%U5(h?uK!NU78XlkckwA38`g#hqq(KWyxLh6W zS=EMyNev~AO!{|1gruiyAwP0axVYf?czc5rgDTeu6RSe1z*ZYy^tFF}uY|Sq*m!); zjPKTgKv*%5sEGbh=cGS{`2tWaxeS-Y-VplBty^IXys^bECs=vz%7LkA;#%Ocor4nj z9TD`eGh`9Ev}8CY_H>elcOW`gcT=Kht*JIb5ny=y%q#?^Ja^5k}d`M$vCy z9ML%E$j^fYimzq1nCP!UUZ Ivi!cN|0Hr#emW0WmxaNfq*WrLe{JeFFb!n+ zZN)e(ex#2uPMY$CQD?s+(HgMLQ<|V?11m!f)g|(`!X<&NJrX^%xgfU|6vHK&$c!Mj zT@YM+dr|V2W#^zHS7Z(;wXOQWvDnjpC9l2Nr%NPQ#90BpLc_62;y usfkeS1|tagWz zm2*VWid3%Fbvo3_4%QN1PO zy*XoMk;f+L=SOb8AKg9E>Rs-x2l?;Bt`OGqX>Oi|&SEWPbYV8C0UO`(So9zop}fMT zA~avf=s~a80X?*qYFDtR(Eu|7b_lWy&@L7Bz8S<6Xz~OC3Si=NkX!v;6oZwI*&s;K z$Og{e`ZT%+a(kTq-kF>x$ci2_3l5e-?y=5B@giDaC=6E_mPNXLL^2UFVM1>FN$YVY z4j7D&&)kw04T)@qPJ>NfNA5~qZo!M-Cm%gZ94jOVRJ?C6ihOWhn34%EcAG7@AI`rZ zn<#m@lZqe-^6{s3Q+qct!AlApYuYXC&>2r(ZoED})Ao)zeCgYG6{+ETEA#;RTVYa_ zmX>b(npWM8;~C5Q@uR;nz|%zarRBd;wP1YYTMd{~)6U0N0TOz`CD*G$E6$yP64myo zo_kKBrE1Ag$)FdB??|`r{tn-xI|BBzeVJKVx0CfuYa7 =?bJX z%cnMmKbMG71UV7?fR{N;aIQeIj}Hb_BDamFf9LK|SJ0+aqJjVZ_T+u0XJ!cN^Te8P z4!V_|u=AAA5pOlB92KxRN@}Zbr#(CtI8|1YhtyHWGEPfcUw~@&qhif=@wtT@&emEo z%3%;nB&WvuEkDL34S%fvI|~3a$KRZ6#?2S|Fv*c8CJx$eM|!y2t15zKitu6h--ej* zYZ ffEX p l89 zmBsZ(78dFIX+gj!D-4Nf!iHdIzz@~zp)e#2r>dsFj3|_-o4veGmVvYM+|FnqmU4>1 zVAq`9ZXzTk Ef_MH@Nf>PV1f7>(DdbEcbr0nYp 9mpd1oJ1th5 zlN{Jst-fP@7H+KOvcY1jTTkbX!fxEK`RNg9)0<6LV?3Jh@^0BxOINqQqPi27(i71= zADvFP;yDMK8cg#)H-$^0cOb SZ&i3x|Pn4O7$j@%_) 1+AeKd=4m`-{K;nc8%Y&O ze F!WTr8!6`rP2)&5=u85x 6AtUl$4Z^M#4kKx6bc=^Ub|8_s@HsVPuB0 z_g?YV^Ssa6r`f&MDPEZb;2oJy)*~yO7{sye&r q-ff@4o?G(B5G@e+iDgztT} zKfZVUE^+@Xrqu6b)`rfx2R83_JQC_iq+6Ucx?u^h51q%1IoNZjr>kX)#$GlPOf*-k zu^)uE=Ei)1=#)@VQI!l!agg{MItNoo$9 d|-88U$Z6 `;DtaG*@Ay0G2;s47@`1L~Av 5=2d*3+Y=utAhr(b{Kk9S((Mba+k2Ma8ENg zi%Kl5Sp4Zypv=_B=2)})&bx>1WqV|440a3*bUz|+&->ES!mhhJ!}EmFUkgL*|WM z^!AU8Z%_!?(H|(8wJ%VVBo!K F98M{kI!#6p{_9!-F!!wW^;a!b@h5@WO%Io~{}BXqTLT!h`J+e; zVC*E#=_+H(1rY6SuUw0tWOOIU+}HvZ(&dvED2Xl#eH|-xsj2Y7W{pggp8Bgr$h73w zr|PGsR(z5fNVtQHsx5qYN8EV@pc^^1ybxk(@nU4d=g(Jk6aC-2I`~UR=L)a}mvdzA zX8K*#RMma$lEIPG*X{r8IJe7i<=;u6teNvJ*&ZSPxuBvV7N7<}Yh>W%UIQxOzivP8 zoAQaUDmor`E4`b{e|kZt$VF#usECm&@|6B&w^$Yd#=-YVMr_ChL@u?xD!pBSk2(+@ z9^N|uu`05dlR}H_=Dk+q?tOejP2hrp(*ajrhS-4-#lVh*tV;=Qa0@^7j&37g&=cK& z=y_A~GG-wp5J#$X)Yj@Cffm>Rw49_SVE(&1>|2(Y;M7wX?tZ3y)o%m_5fBj9+fUzj z-+nHAzD8!avzPH_Juk0KLP%pD$r%ke_>;27Uv$OX-?iksC~4+s>~>6dP>SQf_5J0{ z0R{=ZSLf7_JiOD-80d#`&y-@jZ}0Af3=6b;J88}dxUlPsqqVtQ4m7Z1#vcwJ0xJlL zoq&1Gr`|6tBSHcVHFKy5ZZyy@LA*CoEqeex0;xgra`)4>4^mm+a_*@S7_P Ch!T16-VDS#w&*uTW4BIc9!+l~feg}DO0hVCz1RI$V!!Tam4Q}j~6oAeIZ%xXT zX1VK5$nWq=M?+}BSu^MI)hn;|_Qk7oUpKZ=jo`$O9VGXJ0&o0)>-2#oajf(-a-vKi z*i(4jG@T 0m`ST8RJ?Zbx^R(lol0*fzs6VbitEs zds#)j2rx(G7jD1v8M2*wG^{MggTfy(f_ofb|GG8CMc0^~JT!CU4 6~$`rUDp*9v=ygkj-~Gr`E&A298%r9 HmY)D^OxhJ?9 z5tL4Qx3Q%;lhQZmBBV3BvmUYci6}1~lyNm 9pjtRKM zW9k``SrRSHoXQ|b?8S@P(xO#YwCL+lh6$UX1qys5s(p#s{aYwO>V#U?#Jgy(iCdkQ ze{El`ZNQDg_ kd&>6Gox{#>|1J!6nmGuWuEq+0JhR_ARsHX;|&Ls>$nn3G; zd|6o;07X4Xem4Sg{-mn*Og+VbkoH^r(Y-qZ@C}+cHtu$E%G#Vf4(9gucH_l%xg+s* z@~VqV@*Sj#I4;RV31uSz_{aomBr1%42WS9RT7n;tc59g;u(3{y4Kw?ve8QZAWFtq` z-6upm=#u=JM*Ay 9wmRk%XNfk`|IEabi$LUd zGYzZ+bM1@Q#WKb7VFV8m@yFER@P|?U;;_rwxBszrs>J ~6IGz8->)XZW}%6GyLV5lZCxwykxhP56C1(* z@}xTocqTSHKT>g=zk!&_Fq-83=U?#jJecU;5|=AYfOXynSFt;Td;VA-PQM2b4V|=~ z-VgV=GcR+;8UILvqjWdpI%8u6f68s7a*Ff>C+3ShY3xFicXSxo5DR{pg1_}hW|#%; zsaZKBId{d-`m>5c!T-H7>WUpCSBmIFKfy8?Bp8w>Ef9wRY4LwH;OEfz5S#tT6AXP5 zshJZ&v%UJ< qoe)9f*rAe z*E^<3RkWM?;V @U+Qb45+C!H1rN2 zPZ(5GRFbOZc*lry+}erv{My)!(;aN?XXOp@gi3cztc(^L5hI(p{7XljAq|YPXJCd+ zU{BLu&~G3A$$H&wRZf#x o9R~ zamTjYlKwQb)FBYiXWMaf3~ZvFNEj>0-Mc)VYRVcK{l}v+38n$(ia*>9y?ia6mWW0Y z;- 1nFN!$YsV`sw9;fzfZ?yEFG~33VRO 6x=5x6~%1@r4M*22272MV>d1gk>VZIR-5b#6# zcCpc!mE&n<=zUybL)^nR{X_AU_bQwtt?ae0*C|q16m)Tt!)&g5ImpsB{;Y7~GO`+% zU<=W7VgV;y*P4gkAh%x-Pzym1v(@)?O0g6oh {9YLy?3o>bP 7 zg(Ii}NtLyhp!bhFiC{1oWyAK{RzR1=TK31!y2k;V{ (hwiHTlmn_I>e=!w9(%jmmt%PfX8@vs->m7c{SH(%L^olbnv6ET+47_}wA`n2 zn2_CT2IL~pL1o~EdG)DqbaXTc6_w32hChf~lnwTnrogG=j$Bx)UL9*$zbqZqZeu9= z5l}Fo$(WRqkA(nM+hoYZJG+ye2pXMC?CiY)^=P@^Y>YIKeF$0?Dg;?GaV|A$=FEd& za9Ko*9J~VpmIv7B>7vrPbb$LzQA2k8^%-UYka70e(Xe3HbfsvsiUQr<&oHV$PHppw zp7mHGD{KAsv%mb@U7O#YNC@04K{yzKH*EJ52_c1Wg2WcgI(cPf92ORq(5Y{uqe^~$ ztz(%D_N%L5vYuisRdOq9!0ygf<9p#97Rk6VNT1dZ*>RF~u2;v9B&OLnqzvbOrXv@E zl?OJ|r9qDJ$$N1vFSa*+ev-hE!lqgmWU8%JywDg&9zL`z!nMorZY<`ndAE7$>n-tN z%C@GyR5^d&=}ZtI08Od232BLdfjK!j>D5``PP|gQcH|yvJ6(+V_^br4vdM8y)M2qz z-*zMuM7!8WuDHFaNsH{-^jCrtB`0F1 pP?D(E66{uxon)f3yM z6JW*uv^{W_Lt|rDk4N`{I#qFS%vj3=djY*81S;(c!-n`4bUI~#SPplpJ6QPmp4cvM zKP#54PCt?TTtDr0_FBEY(EbNtQfaoI;V$n4qe~WyGiBsS!-t~L+l@UuM0Ki+qJVq- za<`|R{5CQ|sHLUlwf(U~$mgGJV^frW(0+_y``dr}x7JVFB;QnMP%#|yvL?^QR=l^c z+R!IL4mL7uyQ*Gj=D3#PAyra*%vsdPrJ#8}F)^x)j0~>y8yQG|TS$lm@BtwS2?@sA zCB?=08adKje0-nP{Ou(f?go#xyxI9kS3!uphjEryio@&bx{inR#+8jq!6(xne(7Wy z91;SfqvP|WWkU>FbptH@vh56`lcSO$VUa90F^{?K ewL|Fs?T0j)-3 zJ1lCu`z02n9ZxKCMbdG7k~QxLLB%)TnEte91z} Jq3nT2w)`4@iFnv5LDG?}~dF_#x;%SQhRaZE3M`CmhCNWd@} zJKnvgWJG)Wl~+)(KNOcN)a0t=^XoVb$_}XBV7~XlOYYucTM~E02VNfTO2bkO5ZAVP zZ!c&l@u40Nb6s5Mpn>1~2A^?kzQ2d*jQ;#eKm12J;+?dykVj8Q_cnUx$}o-ca*&+6 zH7Eo|1msnl87RVs3<5 jwf{)iq-f@d*NqXLYSB`_pU*=>amp$`S$P{8r?8W( zA;XyHgXh*90qH_xYDL=S|K8P}om?`GHG!U82z&1`Bui9YSa`?T*}1fW-1F09xxJy} z@!9SEg_P8Mt>1Uo0}|>j-`Ylk `*rvf^O=)gzMXs6t;>F)eTgO*-}JK4fIqCP5!*C z;wRPJQ)q~Us#mpH*jNiM!tzMde;$LnF}P^we3YHt>;3~WZ1%;Q^K@q7)t1V+G2Z-y z!W~kTFbqhd5L6kMfaRkwaCN#Ovt7t{j_VM$`^LICelBfppMmy7A`sL2#|M$W xC ^*3Vf@qDgv01}M6+*abld=k zt9}JbJES3V9g5tU#;-j8Gkh!ivu`SU=5%6Ak05rJ$L;z|rkbhE$S6GM!M%)c17j3S z{0~Mg@|T*T@gyt9m+hm-uA8OCFm8X<5whMaapCH+Coy6}F4Phd5~!|c*wj_Wjnu)6 zX+>ZZu$$l68J4j5PE$SN^FGxl4?Sns>nvi_c-}sb(9GF*iGz&tWoF2!z9r%}tWR?= zW>M+_!|MZrrrgO_VUzacbde1 &Ck1vO`N>Z~EA BW={2h>%; 546V0C36 A^{#R*-g@zCrb2>DbLo*kpxKQ=6G *qqV_-kr4`=Pu|JldeWy75TYak zJJ`YR!|T2Mpl0z*)6kb6haL(Iq-o|Tkb;q2%xF5ypOE>SP+nFNB|cb%Wa}<=KaCzN z-QMWxNu{cWX{5J$4XgPPqWk^c+cJOF7SPr$WPK*9wTA{Rst?NM%M%flsg;hlf -eY3{ zFR}4<5-8qs8%Vl8(Z9s#x@Z(S$ru>@_*7^jV$%t1Eg$F@#$8{Y;+L1`lpplAJp283 z!+$yl_ux1vp}|ow(A{q7uAt;~Y31JJ=GStAt4u?t&&5(G_j6Fh?6b1Aur$vrJjY(} z4P9;dOS7$DMM&{#p~5oz-#@oIn6qCNRC$0^kG-nrN mf4efwpHe$ikkK^#M>sNc0yh4Ak~l^Ex3qiBBqsnVu&&iIqP zSSC;Be%PFXvkGR_79QXJPW7Dw?*M7(;n8&Ak ltlQdY+U|b zAHGwF6U_j*J*5Bd0%T< 97_OwWI%|{Dd+_^fSo^FA7090 n~JBe;I;y?CSDHt{bE`5=zQ&_nj$buFo_>JiA$J189g8cx?jECYvTy8Mj#UMpFm` z9%4fwT?qfnliz?S?_2H)NlZ*+R%294 O?yI3KH+NDhnPV4vP-cF7D z?fMqQ>Tt2U;FpyV$N#YZkx*&Hyyk``Be&qqtNOdioEm*W7}#T#hGK(L?AmyWL=dk| zMJE7?g8widuuHhC;aFH$gnnqWiThciVY&6ANZ$T?) QA-c@T_`j|1+ZP&oQ7 z#KX&b&-KrfckjId>r>Qoq~k_qZjF-a|BU7&e6ktEE8ke(3aU=)xRc=HFmily1UEw@ zJk23=BoD>>d24?BOJp`VIYIEpr_iYieE$IVQjI+YgAaqD`m?j|va{plaRaLtTt}s5 z0A7{8{`c(cGUicb;=l{;SJ2ES8)5;YMkY^M^>skM*IeFJil>9Me}D8K=kdl#<+d@W z_!#2{hA(YFx2IjOv#e!|5Nr0L-$^~#Sg4Y0WI!SOyG!Y4V%>eo)Ql)oRaLg_sv!W! z65qXxRAQuPp-3J`MLnk8K7F2FJbP`;s<1F}Zpx!&WyPYWw>MAQjO0m&NjAytx24bt z?T^oq4~1;Uc{TFvES<5jD0DLqT0_DA z>1w5~;e_ml=>rs8ub@V^tt9X$c3&c>y6xm{QgU+G }Hz19Q+wQty5dWfWmqk}v^Vx@dSB(C+BF z!av*MDF{R#5AsBovM%X %<(jInvaXCvrr}3jPmToiRpz5;;`UG zL$59C<8z*QGSWzb?8Oz=gUnXZb!WOKk_joo_dNH*cd)VOBXL3+a%0Sl<^8q6LK>xr zPm}=j)@yL0Z}y;Q8Tmnp6@q3O*iMuacyuos55N4j?h&GKC-6oTVF{U_F$qj(Dzh9V zOryL1T{PaOd> rh2ojU! z_}?v0@9;hD?cjhxCum+OncpLOv?ic~8Owx0O6Q#ll>hgO-yVD=1{pqNEOXK1gS+bG zrx%D0V!u{L{IsoKc_JKA$eOVL9n;BWGm}cHT!R-87llSY3tIC}s;_{$ bS?PS1VTUmBpR*l;$BmY@x0I zV^~y4DOxTN%uzpdE1h=~Pu2fqja!)xe9rD?F>WO;lv!aEo6}_AwU8-{M}#nNoMWQ7 z-CY_tHmm9wB#;a|xsS&$SzWDyDqySi8Mhzk6m)S%5f9&$@)0Itkc^DPsh#8ASxrum zmR&it{Nm?EftU)OW3HnGuv_-Ul%K6F>ZxI%ufTf$J}B@3@Rl$6iCd|^7qOspIN5Rf ztLS6|NRw^J>1==6EG$guiC#+NE$I}drCRp&etzix=W(fq{+^)79~~VFYn`;UJn1-E zu|AOF=maK8a+w&H{Mx@yCHP{P5pYWo0w6t-CDspUn{)YGOwj2QU-aIf&l8yjnE;?- zyh`tuvvd2zOs5>QRclnB|8&@ydub@v6&v+6?Bv+pTJ+1d3;&G~Fh8R7G>h2BA*PrN z!wzxgU&ER2-Ge1a9z_=J7_2t5`D$r*ye&wC)&k?@tT0jdorHlQ9;Eq4Yk_8KlpqTO zInN5n1Q9Kr4>liwH?LUs5tt+QIXY_YSep2Z7K 053gKQ!Kb3&kB)&+>w|m+y5(XxxG<^@Y(KV=Ikye-(GWstl_ay-c$8vy z^wU0k5V%sjuciJ$GK$~u3llRl+TA!T3ewm1E_b@Rx@;GkMX-n&V!<@>0J9>$lQm*Z zKr2en;`x`-ph0waLpmb;gYUQfos`rUvdP&tKW#+xo2ZZeNv=^v$Bg)Y)*=ygd+j-F zS`G*T-p_Q*S4!RzDE=&SoU4M (OaSSE@?w7}zqO>oOl3LEc3O5dS+I?iK zFL)6-+lHY7i{z;on#l}OKDkN>3@#0MwgBR!{sRfOn*SUx Zh-eFr?tK@2lPf_Q0x$LQ-f2?Ps}{GdV4!570Lj}kIz}e3{P$ngx{N_9 zc_X9u4zO>Wqs7Z3sY|o|^q{8o4R(|f+N{*=&sAA9GruMWiQ(HIn=K&H-)T~8AIJ9O zN$>CPqZFhkf0q&jjC Z8ez;OvZc4vMI0oupS6CgW|z?*Z yUuUO&g6}vyAT>j$A@YvxQ}hDEjqyZ zeT^Vil9xwk2+-T5!GT)^(m|!_q@<)Z4zu^0<{Cq09r{A`%M+9BFS{hB@cx~m%IndF zuPyTlDwaJad>!0eofW$dYbw<1w7@;V;RbY+O6hC(1&P)ksM9BhhK7W|umD0!tko$N zpdzzw6C5;%3&wC<{3Yr>Z@D?OWn$i@eEKpl6%>6dGqsjpSBL%VCK-|N6-ZVmOYAkn z_Z%6)iVs;Wj~;q}*nF9098nvvBPee_)id%mE?n-56y6)pXO>$#tIO+K%#FO4M@VGv z(faTq@Sc3{<3BD93UFi(8lu8wbBx*V?01B`y@!7;XY;?!s6UlG#ph2mTCnVB^ilU4 zou& ~0C5%t|5xs!=cHX3vf-EaWiA>Z(TG|>-CO0l=MH!>zBL}mHGpT4J= zD>p>+XwYw1;=#!YOy?1ZMXM&pn4j*v?iM2;3T?@9?1=l|? 3s0ZpnncJ%e zpet*0jsag2M%}Nv{enkZTRU{}_~1acdLTe-AG{p24YtUst>+J&oiE!}+^ooe0m3VF z^331lj^r4Fa4wAV=G*4k$=;mhQoBD&Q6wq(e#aRTrr(E#cm+fT0w|3!nClJ=nrVk& zPL7!UEZ*tjlFsJCPicNp$Ah|IQx#DOATC@vUSbtg +I+xj@8j$PBXtnd1i--JEYW3#|bd9Hm@vMeR zVG%7^Z! iknx0eq~tHx5xO>;{NwvXcD)#-&tVNxA3&VNWLD;E)%f>PXt ziwn<-?qIPzOZT-jGy&*K?c-gxo5Wa*{?XqDQ8I~Hf}>q3Q`FLa;yRTEVasOD*i^8@ zRbW&izrHxqioRat`)uu%qkMKY#XvDv>df`aeLFU0<2#Pw=^nA@@5G?Cv5laU?pLTq zUp*3`KcT;&$L-);HS3mGqe`1`e+s)RY>NOrQ_G1`Ez|@^!L2<9hKA(-L(Y#Fevu!Z za;&(R6 !0v+249zOcIl1(5f@@FS{DbCBI0=8{~@I0jnHpN z)#1WN9=f5}jD93Qi7y9aV{1-fk!+~tAz@@psNi$H+$>)_YPbm%ug{{r_!rYP`X~VY z^5x#>M5R0Tix7Ra_MXeveX~XdrHuqi>L#5*p|0ZZ-Vj|TWGi_0W|tgFU@$T=0#Q5! z_W4hH01H(w8p7!iD2puSzBtO;ho43Tr+Y5!w_=0@kA0lO5O=+=rN_t^&_ g^< z>1%*I*1zzhlW<1ECL3MtJaiTJ*v{`wzj`lMZPIoCaG;B+OkxZmD8vejip+rsP2T>C z-5e2Ek-Du<^xe&}S&8v{m5-GL0X4X4Q`N`VqQlC@wH$9cZMAN3Tk8r!-soyihFVf6 zu1fF10zImo2LvdM)j5&kkS0a)U}$5bI62<0U~EXbJz$e^aqiD(`E#Cs(XoB|IRS`q zra$E;1eFXR(j){{dlS+aT*qykV#nuvZDPB$!5Sz64L4Nf>+^4u*^?K(#v~4rKxTk? zKig|q3Z2@erywNOn2R5&{Il^lVPDFZ^>Bb$&KPa!uVn1l2g}^yK`Nb}S|2B00kIJc zJ|!Q*lb-P_Nn#yfT-n&!%@^@H$hfzA6tfzeL2{~MerIn$H~t+}AWJiE zZy<)5XqNNQnhF~mn{3I?yw+Bu{WLxh?0}e&f2<=gaNhTCn}@Oe<;mVmn{Pvn5Afu+ z0<6vj<6Sjtlf}i&aZb{Rzy;pVRX;+*!psj>dc6+1u-AcY(Y?38hQP7{VsJIvb5ZWq ztFrmMnTpp-?eAm)r7uqZzD~bDA$o&q1wAU^)(wU{5wuP-q0Xn3;ng`Zs?qdf>be4; zpa0m%i0*^;ADYId+0%Ip7Hup5-2wCC1+jN zjL``cZxrr_9kVOFF)%VR)?Me$t`O|72{c5F6EPE)c+Yl@AV0rcygGI^2gd9}dcm`X z!_!lxzl&`!8k(rmQZD%8$1b#tFx;Y2G}-EDOTe4BG?
U^q; z*gy%fIbF?oak3W!#^?5Tk^Ys4=Q?Sk8)%hAs@J(b2aO=ZHf%(z `j>M`&6=-o1CN=x5VSvv1ksw8tnMn`vd24SG)3J%Q eWryno(xRc?HKpZHi20gw|I!{A6QygjMbPcG|jQFl%;|uEzq9~E(Eh>g42J0 z?=mw_b<}D!9336WkA9GP-C9FMLxUR_82F!0lYzU}*4Cmx ^#q=_UroqOHU z3nb$a4U0bb>4K(dE$msqlg+`C!G71NU4y#H9MEP$cjG)h3PykzN6h2Q(+HVC2A^%2 zfn&mnloG*>+^12L7fODC>e&O$lJMQQw`YdF$H&JCK&b$ur;h{t+njqPupDzBJJkDR z9cMgUO9iIjwlhTtxWvfVSh#}&UxPR)Okb`RLskTUg8u W#d3`ITyxbD(mp@pn% z1l*b!crDWLadHbk3rk7C85)8Q9|xxs_z(#hS;*CuU(;L@AiNntFWrkz0G4P*2jM_t zRmP9}Zm&;KvBkyJ_2mvL8{69BfPjvG>#;UpPlgyZxD_@Xv>6Tz!s2v)0l voL)^XKFVz3eP5ngFll1MPYqXdUUbdffvWtE8l)x0#tftj|!` zbaN~Z15}*-3a*in@9$tkWyxb>nxWz0cv8s-BMk$CyP^&=2w=j?;6q%3f=WOkhjPqB zR;7H;zl$yn%7tEZP^9vGKocErjP@%r`nxId*jQVGGh^aGKz7XtFgy;5k_WPwfeG%! zqr-2{Sd!r2 Bt(J-*Y6(6!Eegef3Jjv_kd}HTx0h^SR@rfA^ z3p=P8;2sSq{lG$V{r4O-6_qZ-*KIE&;v+#51~$6@&Pv%I+khyD-DV oD zhzf*2!c=p9OhG|0)8tyx86SxQ+LUk)k3ZjN-i`e6nLGnn;EuZjd=hnmF*wdN*%A(r z*cdKsAr^J#)Go79Pr`z6u3R#fW*VStV_~5JkRdX102AbO78VydF#X6#Ba;8ypY~nE z%w9)DMa|T`#0SVJ_ve I47T%)_qxA+Jv{BWr3d!x0y=SS*u6y1|Djr1 z3l=bGjRXvs*<{%ZP#bgsntvRaBr1k9%Oxg2q-13G%sL^Ht3l?gi=FDoxVYY%>q}Jb z-oyel3E1`Cfkf7@wFI)Lr1bO%t%AqQ5)%6RI+2kO*Bc1vnz7s-X3sm4EHDcS5(~B- z1cTpUXqq$7oBer-E3i6165^(NdHS~>Z26i~NTjkpMkk0K+y49FiEY<_Xme?hg%?(! zEl+%W27a}I-Ab{uDCL$qBK!^$-UsQFr?z0m{PU3loHC-Kf{!|`&u8+X_fcVPRirW- zh`MNKXsFAyG&SGO^UqK2FSOJGfQbTDsi~ X_#z(RW+&KOJ1?rdL%} z74q2CBcOjs4#u|8n=^n3m|hURB2l0E2ZlAg(9O@o!z1J{BZShNfEg>x16mywyW{B} z4J}}e8`r;@#7mIA0EF4R1t =S!Ht^=9U930xzET=#=DB|U5e?0j9=x^uT zoZ-HXld`&cAMl2CuozakjlAoiw^3_5&eAl;)ch4yy|`^^0({)7YwC{~(gk>QI2#7o ziT_P-GQfOxer^sn^xY%Rs`<)!bC8cvt9V~)4SZ*5!Q;4Ya8_E#|H3W8ZznUQ`bD`; zWI{qeI7)mt?>aiTpdP3F?Af|gP^49UDIH=Cd>1JWK9xWZh;)frSux+fJppyY@B$_G z`;rpQOkulV5a5Ouq7}a%U3Lu*tL;-pk}Hj4bdLOwECf!(E-Xy0TV<5kLKu@NV$b1; z505UGQG(!B`fzyYJilHMDEPnt3&nx08_fXi+nQ5Xer_%k0iC$!zGx(Q1O}9d?+acQ z07C&o+WJgjR(^hdz+9A_fnPNVf!GWhMyPn>(x6=cDk<|Hg(|?Z3YAfJGy c3L>82rp;}s?lt2a7=RBzuZ9oEq5}tPk-W)UT&okGt zrq5z2!|Uw}lnZfu_RMzn>aFRL1w&pps1q !9W(9zEs@&bbK1`>E=9yRIcWtu#4(G9RAH5LWLn?_ z%CDeHCbPL{pgNMdIV1*ZtEwAg7)<|TMK{7FWW0FP Bd2F+IfuUXzQlEk); zRkw$12y8e-9N4Q^ng<{?V`yk-XuXVz+<%*x9Fw2ayl1Vh-W(aXRMnsMl-5l6m#E}K zCqXVhf?NwTYWJfLH9fj*jY60*(LIuU{41yjfhFQ&TxoQqm2tk1yWS6`HnS zJ+%&(`XxcYG{g`VwVUSy* w;IryfE10$bCrBMNIBFm6O=Dw VCNmK22kcDMZ ;Ld65);9w@%FH{UyX_`Ek{*G>oo}1o-`ed>d z1i;<3G@J$7<&qWg$^`O&sJYAq;qdSB#JMsER~IpPtMV2U9gee11xXd!fyZ*EKxg;} z1@Ncmj13(aZ$6 hp*Y**P=Lj zK=)!Pl9c w4 zXjvWeSr9=~s!IM3o5Z2SJu-4TpZZ0A&W@J*zDio_9`M=!|No%nTZ}Cy5y__9+654? OAr(b+c$K_a@P7eKz*O4+ literal 0 HcmV?d00001 diff --git a/React-JS-Projects/Advanced/Notes-App/public/screenshots/image_00.png b/React-JS-Projects/Advanced/Notes-App/public/screenshots/image_00.png new file mode 100644 index 0000000000000000000000000000000000000000..af25a9751b219ea2df7212397676ac3c20388957 GIT binary patch literal 48522 zcmeFZcTiL5+dqu!S6xA6U8N{()fE;H5RndH6%i2w(o28{2%#kOP69SSsR~F75b4r; zLQO0{q?Z7J1PHx{NDUA|-k`hBZ|42)H}lT(K7TxChH(;4&bjZaey-1To%80gp7vSJ z%bXk>9A|YN+%x3hI0fV2INtv2N%l9g`PCKde~x(@YTxB3>k(XHfA|mN4)6{KM`aw> zf$a(Q=hGe!EW9~5&V4=lJBD}v_>_aASw!dF9peC-)p4%$A>Ry*L&dI79`B=G=lq_X zecr~vQ1{XGYcODC#gLC&?Z6FPBRY`;#0 xibx#3~vo`lKX{lUYpU!l7{GHi5UQS`m!F%cH^Pg9mG*Hrw+yZC?4vv7%rQuSL zv5AQm1%Sw|s=5W{te{$M%p)t|dmHApE+*Lju$Mh?`4yUj!~MK^@J`nYlH2?D7Um!W zgLmb}0$eSs9f2iQ^|wsRZG?(BH95VGad12V4ZApzbF||=E>Ea4B5-SAm7!b5+1Fto zivcTP=)$F@=f_VuK9~CW9Y;p7E1+j }*IQXm# zOCcS}m3~x`pD)#tgl%TPfDKJ6)-=nNJ9%S<4;t-SBadXZ^Ze%x7ylCfrd!&(v)F%) z%X2iy_ulsgsc?+-33Q@S(Fg0M08a(B 6^IzUSV0MJiI@MjnkBBP2=pFf{vO_0P4Uc(vI3{h?qEjt^>vt{)29pLSn& z4+N>)8z&(j@sg@qb7im>N6>S8l1ncWRDPk2RztSd##Q%ssN|bl%R`byMMc@J#0_;U z*-~}!$IbfsCnQ*=Ws}fO-QFJbFx(Tea?7!cf9XPoG-7vvZ=x-v(2#99VO8Ue{_cbb zdBpSl*ssYl;7pmN0IbrFOFWrDZ-?ramy|>c`Hf_iXxT$?uh7u*h0f27oyloi*E7G6 zgw=zf1AIZ8?nV()At!z+Yp%NV6sC};FNC>2=j~I2Rukz)TNv?-FZ;!;Z8zT68rL(Z zbd31;dcr_NHwU{C|FJxsuUHZsWx`W_-^cnr)o`S_B2=Lsc%C${WT-tM{ul<_pUji_ zw8fRw{SMHgn=IYkLp+b(X4$e$oPChW^-%zecca5stvf$GKc17HpAWQt?ACet7oz-l z4!-DJzxNQ g?7%xJh;WLuu6QqyN6J)MqQt-}dYHuy- z6Yr0GD^S8Wo&zg;0gPFr3`uMM4#f`GNQLeCAsvUyiW|T4@?`7o`b_nb*NAtoy8XAe zSN5zJ&{c~E#YVS{>Rp_+z}V}*I`WSUGgB W`{z^DH{C&R z-DcMsX_@K=OF*(^-sI*uEyRB(D(dsgQ}}1cj#qv1>Pc6Yg^_A@H&Lu~7` %+ChMx_@t4^GsX^V+^c~0e{1$o_jp(jQxGvI2-b}<-s z^AiwkMP RE `fKj#!waftLsAcP1S)>3m8>zj@ zRZZ~m93_3}>>8fCj0Os5bGik$bV!FrX*G+rk)(@NXD^Li6i?ROvufWaf< %J$#`DGa{SvAPkdE(eN8}NG>@|DXm3(Hx54>?F~^l zr!@KOMg z&Sqo3^P#HDns$mQ_~N}=Km1FDGJn!>iNereF6l!~*fdhnAX5{P;bC9DAxDGqxGdU4 zBIwbjUhv^Ya*B$t3vVPE@<0nA&KI;Z3aN(XSLbGb&TT&7EfCBi>}N`zi^jU1>q%3x zL8hs>*>$JYR>GH-%`2Ov1x(8=FIY<&8rT!fjRMZGLy}DKCn-U(3<>qiuJ*phzCwb& zm47ZbGSxK(l9JafI<$53AEgc~Ggr1Ak}uXFrZ1pgH}8-ni{VXFG iKYTvV{!dC@i$_rrV!5!O%JotA>4NP-OL>zTX^W~qiys0z zG57MQ;YC&iK5bX9*Af>!QnKvZ7p6}%UO4zh2y+Fjc(DATs7NAKZR6W2pZpTnjlC)E zP=0Rpt;Y(@Wj@hcEAcUiD~Y+m$zkXP5q_=^CRS--8Q#j9c$ZA)PUj_};5uX0Df(H| zz2N4No4DEsR~GBC_8wjE7R}%RGjsriuB`Pi8tRhg3S^qBKNnTyfQn^;q#A5^dk;U< zG4~gc7ZQ5*Eo%ab# A@Cs9-l*TZ9g!{Q!K54|Hk{yJv3gl`Pw a{aq_PF zR%sxyae@c6KUlC)|60JU?n)+nqa9x6o!2MD)9IU^nA6Opy2mlr8fAn7XWzk{$xJei z3G$&$sAC!9v^L4|rg#}@K!%Ak*#TI-$eMq($a~zrJIzGAwcG4oNnzZg&5-;~0RGux ze|7eE8=n}5+TxkHOI-F-2R!{4F#XGV6jIEY2*rL!4L;f^lHRO#j3=5xn^wAe;`guX z(bvjDnXU&r7+iO9S$UxG_-Df>NWeX^9XsY%xbJT*jeZ@(g|bT0e7$kzDi1kjdet_& z*uK>L2RN8o>&Xt75cgd!nWnd48U7Q25G(I)c?)@$B0b=9YEqTgTnD_U-bV(h;M-KT zrJH(j1iRiQu%0J_5NAxoEJZV8k!d4`U-+ tSl1x%(be=ug_(LZ?nTf@@&?nxxWfv0+D@Q!>Ldh|hSHm0UNN)C{ zmY4?Xs!s~r_DDnG^iJysjGGDKjNq6Y)^EnZbHeOCz7RDkBfy$GykK{LrwHp(9w8{a zaS6HFQe+J(NXZ6M`!c)AjR=PY=Blln(%Aic@;Et{aF=ZOq>*jF(1ho(_J+^Y=cj~I zG;YlKcFE$O5;xiLS)EIP2)kN$gd)r{RX!dvX`v{YaWBgijM9mZrQ^6Q$#_j}_1mVU zmOPY$c}1jeE}}!c;3*YeKuphtEaNo}J=G3(XDq6JEkK0?p_{IYPr4PCPBkN3m8Htq zNT6 AKpTmtWYJMKxw6tqIh zlx|G0-c7B~Pro IJ3xftt{S~oxkb^uDGrvIBe78mf4Rtt>>S6s>I3fbRJ zkRCgbBMWSz_V%9Y>M lq84M z3>`9PD4uN?kQ85FGDy9+?YhFL*vLQP_}tYNQ#*=nWfH2&taUYsyGz`eQH-@+-Gi9| zdQ?&7djl{|6qM|zLw2NrrUI7gmUaaU*SgAcziN_=bu2ic3C44&cWbvkz@Uq(3ZFp< zMT&|FxnSkQA`9KmFy(SZYt4rI;V<8fpEHn@gZ$R4ttr|g@e=p;aIDig!0sgUppn9q z7EolTP5;(W2rA>mBCvUH9%)f9rsK@=^&MgOv;$YhIvZz}dC9+F|8#RfkGoH=g`XvY z=}4q>I}z5U!a&zi!h6R5a{Z-#$*)j(HlaMWk&Cb(V!nHq=KUlcRoV%jVVkEEX6$#f znh9Rd&dhy3_;tplcvV4C|o_f4kE#aPl)fRK! >Udm(`S{%ahJ {%X^fI!f;i`nrap{pjg`5b7euWpUhB$~+?H-ZdrN7k0) z8y-p18p|ZqU9xc)d7$DtJN$^V8Z5aU2h-OwOa}602KF|I<)}y8Ui&89lb>I1UXO9? zPJ18YKjw*tj$M+jUs7C0(z&CZi8z@FI(FKFS@ZgMFAI3PQ?Gh*lPT-dQ!aoG2HSo$ z9E5KSY2Q0&Sm$@PruNY>{3QwrVIOI)HQb$WH;h9<&!qbys%QA5t1Lbte<5#jTRpCe zh9l|LB7}hx69}Djs}x*_CF~xxrVaq|_p pQ}iLR@yq2(%%B3%7B&K;S-cV2l&PkP;Sq~vs7vQ0 iP3J&MaL2FlHLSU0aHdds4)o1K@}JGIhW^P&Bk}Z&V*5CC z1(YNXZCvSRK~^93vp^CDdEfg<#zxZatT&qrxDMyuRIuCb*e_{7SAmGoaguQ%(jA$L zh{BHtD5k;cdwx_ o$lp~93S6oU5&_2LY_2Y$0GlNON zMYA?$OMG$}I}LhRl~{gD0YaI(@RJEdd;9vz7y4n}wX#?{pCB(QX65l5eKw@7R{_P> zGvbxRD6&+7kBKEcV2U4ca`nB86HtYv++X49jBAc{Qlp>O%<&^_dwOj~MJGh@jXvgS zB0d9zanGX!;&}Y=*B7h|cWEaNW?d~NM@C9l^`~9W9&@}L@>{R8z~vdYy%4C)d1sp| z40A5#7lmR|p$k!=9;Wd8*54;I?YnH6?M9>GU={A8cAM?&-0z5( bzL{<=_Wbb@LX*@laxQ{=h~mt7Ys}0>A%ipCGg%) zH|JuTLJKDBgvCjdT~=gA*}JRl^1k9JFzDs_KdB(KwT|f*XPr8I-69iZlDr7UwHcY4 z!#)8{sz;R=jde&1_gcSw*dG^ik&Oqq6;y73v1(+9?!zm#4f8Q)L-z@&%Wf_~GltbI zQYNq5PIK`|ca>c?DP61Tl-?UStE&@IRP-osU26L|x!;lt26DasVM{CV;SQO6iu&Qs z%c}Ko;jM1Zjq|};C=%byI cec zxZl$EWe7b| ^D|f)C^MVFJsIHzdavBX0yqg%#wHGw-t* zv5TMmN*Ci#)D{9fmg0vh>4&Oq9do{wliNIDkZf}p=wS%KN5w|P4UwGJ8s_lUvh65; z&9HM>3~Rrf6-fk#s)MVs=eS`BON0VE6+_89;ZxYXKKRrt_+?$G&i>!|^X~{U7Y2~& zHsJbS$bT|l i`-JW*{ z-SkC5yuW_aoZ)Kiff7$Eg9d^gSe1N0K)*5<9hp<;)~rfhlE Ubzq!Ix8i#hAF z3HtN8=(F4JH*>Oe9qzew)alCBb#D;2P%m!V7~vEqtm 0*TKQip>sEw=2^%|gIMc_&)#%=R6 zO!qnU#fd!Ohn-?!u=dZVMAFX+#P9P+Z{rx>uEjl_=@}+{ZO#JM=gP#-9x)9_4Z%XW zwZRClq5(ageyP#1j_HzHwNf@#`~qVe@yKZ=TaGl>iC3Q5BO~=h-)-eUr-PN0gze;D zqubOpj9Mgf7H!TXWhdR8K5N{kFf=S-@k3f2*=FT7qe?tE*9)Us{Bex&QKdQgJePq? z^ OXgk-sq3ckn6uO|PLlhk5O zpTgeJHG!uvOF*d;=%trcwf{l4cgo-d<1`Kf6pqSdN0CL}Q0hBupB`XuR%t0Wp=wXu zDE}$ql>6xw1(V0|MXv~_@~*R~sg5+AiC|ju%oahvH#`z2(9>j>W)rld>s+3mMft zZ3$b~Yuu1K*Gr|`iyK`zX@P~OXML?UVzc`DeAdV1D?jMSwZOb}ay6movl)zd|CT LfE!zswTW&m-Ihek zms@d$pd#^+u mcW^_`>G`F6!cmW@Z*y83BEes*=hM4DH5IKb(h`fZx@p2!8( z?tQhx73K9>eYJ}e=0HN&wsnrHX2nE}A*RBeSY$pvw{31>0bQz1H_SIVlLI0aX2Gi5 zJdpc2W2U+2K3yJkuR49q^ukC|?gy{s!NO7G!E BR5PHm{U5RxL?gVGiWUmzt2v%qy?DHLbTn_eBn;M5fu>f$oMq;)D^(bsuI? zuS5v`Ze|ncu(d=GlN56=U3$4SQEFAcelA~eaoKyC=)K?ae1ReaY<#Z1x7--@z8Yiw zd#lpcvXYp)U!6s0r5IR9F>kNrGCHs#s2xb7eV8oY_NFiovkX+J=)ZXAHeN=XMWmA6 z3G?6N_x5=;mkDLBL2mWe%l^8a91(J*%xO4v^@z}j>%2?ED~w2cu2@o4(UW~LaNPP> zJ)vyZXO-fr_h{czJWKtkR4$ImT4x7-5Guw&6W=P;eGYDEwZ1giw2}Ll&`zPdhG~F_ zru`Tl*H@BFkMz6>I&!6FJ$<#VM1BA~fE{RF#35GgEo>5U*EN^~jn< 6>ur_0hw?bC_aS|=PFB l@Hjr0XUwwGyLl5K{!!|;Q z*9?sCO-JmE%G!Q;1>OCo4fs9T+RtLgqu}B6#gUK|5XGhT^z7CNVkU8%#D^bRXp$+D zftPWsX>99&1bZ|*?i}nR#1vm;r4FuoczzA1hIk*^RNgeHKLW>NH8P`LzQ=0#KSrT- zq80!*c@Kid=Tjou7`iK5n(Myl7t9u1XO!0AI$14Qwc7qf$Gu0eI*L!k)!yk~5HlkO0Y)l|*TIz5>iD-- zxu;9Q|4`b~flI-NuB=_3uYT9;?pr3g|EzmE6?jK#pR$Smes)g|s>0)+7rLU)%FMW1 z-ku-^xpcR1Q8I?IgT^=zgrw#KLD~9bs MJRgxSVBqxMn@@`^X9g-In zE40}Ri{we_n4|!Gd0c9^L>vHeZX9^KUkhZI`B6=jCUnDQ0JzVPo28N&1#-EO>vvun za{OLN&{LH+ev8TNOp&!Gv7ATmu^UtS!sAJ~Ey18&2hIKI2N`bM!fHx>?6PK6_vy~+ zsKq7+=vE0#;zXO&iJGP3H=lfZcJ?sskFZ`yy6639LFHTE0V|cYBhrAKyTQdYeU;wn z)+qA!q3=#aLXS6z2h&oQQlmFXO4W;!bi2eSyHvuaDt}~?G;(67zXqFwslHnFXYH#X zHYcVH1OgRMt7x*DMJ;Ukl!DF)H}OHLlQ?mi-S7es0}Yekof7hS48SZI68e!O5jW5e zzSi2)ZS~S$r8G;T%*h*!2gdhlAHmf{6(yBQ6*WMDeQi?-K%&98bvZzecRQ2cRf10u zgeyB+y7FtG#jFf`ipwH4IRxs_El+G&DaU1&!^-Ry`?8W32pMjmUp0s(WuK~>2Q=UB zzXXCU3vp!Q=lg8}?oT^Aub;q6g`t iKa#lT zyv?{>PcFEX2JTM&VLyFc`3J~gm*16jEdF+Z-R5~C|9<1`5xqO#lY!)Uo_DoU<6w$= zj}%M5xKm6)Jk$r`Eo6TRLNNsi?fS~CAxOvvb}p!BOMKHcv>^yDT^f0;WN8IX`DlL0 z*P8d9$#`bJd=Y17WNAtMc$#od;LdvqXq2)=OWMc9fose54(uM+--G_hWFbuLrl^1= z@qCiB^<_3hYq#7&95q@XXn9c0KoV7de;O*K1nd?l$dW6utd-yjQk?sW&XPHY)?`Ok zEQ`Cm6_S=j$ag?ZXiSfav_KRpxxqi;A*KPyr0-mdQ@eG@#{V*s9OM)>>&fm8M{0{8 zZi5G84U-eaYsL)+RvvV#xj%f6&N*dx%nG6_h0T9apNR7bxBGOt-*@}dB4(P|FBg7) zJnem@Bee(~m6Vxh*EL$JOaHiP$ E#*KPcfC6yt8$Z}ic<14gy zZrHdfblrrK@2$YfI{_`Sll!K*Ss$;Qrgb!;z%lXxR{y|d^3!urZiip+K+;0i6{phj z=*(hni8I%77^KgY3d1dFwS`)gL}u<4*x>aBzrshg=t_zC){V8$Scmb x`0E9+MuZdo=bJ2;e-9R!yYr3)1|cE{FQM_CvXn3(H# zK`Pe!zvUb5o!xd$|AowM3SW_AQ7$eCb|y)6hR5!U9Q*up4gd-^)ax$?YwU4=(i_~^ zKeE$(4%O1q!ahahiN+YcUtJz*jm;xpr6#{1)wsK8H($fu)5S|LH-0vdM=D@@ltH8C zsh|8h-!_-%J9YBD!!8;|j0@~%>#mrVS*4oHCEXnv2GkU~D9SfBJ^B3NMh$T4=e;ZD z bt(As)r( f zTom#TlhLFmb_05Ea9-DziU;ge-pB<$obupwCTtzWIX0c#TkYT+qB%uv8#W4&_(uXy zBsVkZO=1)4vHmUW^kjc{uqW$2(F6@(ZWD9L%A{je*XnlrA^?ddyKXn$@{G7KjsFqO zC(-4Shh(`PrE6S{IC?X!^@6_II~l2<1y#x=5$2+H^`{;E(0!vDR&_UB9|l^BmjKC4 z2OFL15gG?qz$Cz_%*}Gow%4yOVM68I(voDl99H~LLYUC){1jfXwlFiHOY4hy>lt>( zJiJe3USL@&J?@1oY%b?`I!6h($HrLUc|D(`Zwd=PvPHdM!8HRG5Fz+YP6Y6$* z8<~}i#p9a}$eE!4wk&4`pmpkwXV{T _9PZ*Z zdcr~O&9%05M@>s@jeP@lOYxcok6Yo@I&0u{5hWGBxY2c-kxfiyV_a-(j9Ecz;%KMp zR2?}#GD|bUCi9=kAP(vgj(|&4IYz2>usb{aUn97Ci(J5gbMJX2pSrrZ*v)sPT2yzf zoRh)s+I6MLO9pK%vgZsu?;Xs^guY>u4GY2O?&o6Zg4g(13TsW?uvNx$O}n^E+#9jO z`0^Vc0lO(mA6V171WltE+WL+Xd~EH!cbYrl!~Uew{IjB6vU}$1fn_L5UTy}5Tzi{l zfSt`*f6nGUtuDt3Uf!&lQGD2a3%t?KeUZo)el4OWDk47#ZBAD)^lnGJ=3c-T>M=5# zAX{Ubv%B{~qNfidcrcx@fltq5&>!Cx^cr_1VIT+jQ)y9njV4I1(!m9179wZC-BF8X zf9~~R6e|&I<|4fpzq@#9pkZrYcXMx@lbHWsdc7-990|PR=GrZkJZxfWiY{+Je}3cH z_4@Uwks+!?BQDt{W(3xIA*xvA%kzbn2qSPkxBODTP7BveksMq8nB=s_*xSO^H?Q{W z61^`MdFnTPFS65UINN {p+|^rU;_;X7GJ0 z-=W0-ISpD)`A+nC5jVAk=Q#|8`h4w~q4C&gE@C}TqfkAhDY2BLH{~YpKOF{Xd7WZV zH$U9~4Y@OwRz>AnK$Zsn4A~qb61BYFl5%hQX+DP%wgps&gY?Ga{6GNJsxI{8LhGP{ zf(&|GDz=F|QzCH|lH0NqI+Gv%=k_Nh$d+4W(`eO~K-{KN6Um$Ytzl68dpdtJdE<*4 z@RyO@K)Be6a;e+ZW4|SZKr;A!_o8 dF3 &HM^UJ#M@k?pGi-hsV~$lnLY z8TWh5e_L_iaIAhSe@ST{JoD|j-1Ls`mx1Au(204&Fn3-Bwo&2qSeqm@M&&I)ivaUOg} pB9*tQ5Z5xfLUlM9gt*Pd7B`nr+yVht54rrJZ5JIN~ l 8lABcWMhaGIkaiu#>h>)W zx -z+IZX7zx;SS=RQKdqMVnIekF}S{XQN$~;gF46x#K R_l*Q>fzCohCmD4=#4oB`5E=>*LUkbSvTND4k`M{G<4kv#^$fe3egq z_sgIt;%gas0qUZ#+kZlKI$D&R>-Yv~Tz`0=n%tJdb-(4(S-kSC>3-du+PfpD(1o3p zO0^8koC`4~&Clq-ows3rfxMZgpcrRmcqT5`5nuPc#d$sGcKzWGzYLW>%4PZX%SAsE z_!HIYh0Nf2qw_M&TZVwzJw4^QL?w1PWItSDQ5m$o>=%L7;dGIdl&p3=Xq5>$ufZ7Y z-H?aE{!P&pZ&V~}#@Q^@jJ*iM{3vN|ia&$t*Frf1b??wz%bR&I<9?tnq@oNGvU2VJ zWL=9a*uW9_pcdevX->{`ArAlw184U(7qk%wghKDI&c8;2bYho578hE|afd-oZ02{* z& Ry7^ZwT^ z|A*UULv;CNtODvJ#}ieLZ_maz#W^_83i>kX8T!XKD%9(ICkUhFdH=Jxga6-bN?}Mi z$FAj7rR>2ccqZo6vZuX0jypE;a8HfxdOm3Bnd0#B?t)_+Bj*HfJ)y%nN7M>hF7;*z zd_Bo4y29JiRUZ21+JUX-S#p`J8AY%l6L4FCi{LA_7N;6lFY3r+b_{y{|0Q{LzOTp_ zUG3W$thPHi-*~ZLL7k5~lsRE;obLMhqtXEqukA~_&9v-lm`n-~1x=hUvL896eIHeH zyZQFKKKzzT)tpe?Qf+zk9 & zBBWh)-;J!wEO&RdlF&Dfcrav^{uxGBt7ia!ZfdH0(CoQ7l(V7ySHND|Zodw(HStY? zeMhp)8*+Jfay2k`zN@!Yoj4&vpw(SlQ)YHx+^#P-r3G9?v7h4laBu{>p_$Kf?7A`v zX64)+#_juFaZSI<*|2z!KQ6#+<>8>_LD=tJttu^gvqWhSU8|o>N;&kx9#M@dsQ@+; zg_c8(7f@>z@yYr^X}yVqZ6)O~apcgHUInG=J-eOtve1az *;KiZF ztv4Md)$K3d*H$`_jAZ9Piuen0inL1atx^oWQu|DF#{`@AJnyS(HfMBxQ!M0 tjtdYCDUcM03iES5*d zG0zDIGfyeh@0^e~klULG*d_b7mWW>If9noc)Km8jsAP4U2}`D9YKw5oN>iVa_Bh+t z`aQbU?-~uWd()2`1ER5O-k!T7q6?)U9!W=F3 zwhO;(I~H>iRS%j1{s7r{^x#?{EC=H)9fBM!&ixRl?D@q^FY zIfUT8`=on&3I?~?8jR0w=Rt5ga|?EDF_@O){%&@Y@JXGO=KR(AAcS65!)C$yBt{f7 zLD?2 `NJBxp3hJ6-#9UAz6*h1RJ8UYyyj(S;%pa46h qVYs`Fls>oF1JC1SL#fDO|q5 or{gtan%TYk<>@cch`@ zKWiQiz`s7`bcl~hx9>ZT$9vM5w*iOmzixy{6~5V%i~MXp_nO}3iR^pi#gdbW>jn5& zL@S3pt$r&}C}=LEDVi<-QS;Cg^!KutN$|!USluY<025xnlWnM#pyc$#+A@-C80jet zrs#8Oo%hTPffJum(Gw`ys2w*I(K 2rgJ-?6>|JZwv{$LU{_R5U1A~_(mU2Q9UQN z3tGOP2maFiqC@E9{cW~CT_9iuzWPZ6+*i~=? !ag&Qo!bn`_N~oKwlx zsk3;SF|$jsKR|@__6YBNiE$!Ui$t`t=a+5+)?;SuM^wsX)ES8Tg1kB9OgF0l{8E@| zKj16QaD;~41{>{IQE#c;xAL(_r-vrv7kO=n`8Y@zk?4Ut)m9OK6~JcziexK*11l;X zkD}`j! (tLIw|F3DGBOM`za&h}&XmASn) zT30fz!4%~kAEgTt#56>rcxR&|Pqn?>WI1HKEhsdRrEgH$4oW24FQn-R`+KGbwWchB zIh~gcc|03p#q8I*P8gU438|im>nGY=5{vF!m}yH{#~boE_?}S?h62XNDnbQE`CV8J zE^3d99*@l=D$S6L?7mIHu^-lIm1X_C2*K$#`ctH;T5<{yTdwt$t237Q#Mj>3jKtzI z%9($EP%o@@>%QQ~pNZs)jb~!+EL~2Pe!Zu!o~j g z^beAi4*Kj&AcjFSh#H`JeN?82g=ov +b!VwOJmyz7Q7;$P>VP5LI2 km1uR(D!6ybW5*IG-5 zO=Gjz0(wq+vumwHofaaS^?JHlD#V?~hEekcQk3O|`ChM5`#oc$5RU!|o%bibFgZ)( zW`}VQ-;bm+_r{3!+9L3A-^@n>S >wB`6Yh7yS4M-Ey9ok^)9QSLz>y*%d+&DVPh)P6eO(=4u_uV|A$wLf-Bxv9 zUQP%w<_IzOTko8D|00!bG0BSag!8AYLmo~fLhp>fNZBskoJO8P326YD+toA2_^WEo zSl8NGLN2tq!FMM=>irs~NW-=XFSPZGal?Lvt~fr54SvW7T^`u&&k9@G Ci!7rGXVF8c!6PxS`;Mp54I_JojFDPR1*Df`P~Az{o2#e+UuuQ9WLdH3CQ zuCqkma`jOUiks5>M!*g5m|v~z%1R!s^oy&8Gy-SECuh@cRzORPOGoPaM|U6UA?rS@ zZ?n6e6(;A8B6I3mBm>L#EE4I_#yUF#8sh4Tv*(9(?WRk+8Kp5Pm*RlC^fr!M3l0Kr z&h#REj`^8)a4f`P%-f%9L1{ZJW!(~>8bBFwKmK{BMAt2PNsc`FXru6gUBIxS!{?4v z*}1Jw`;G>LuU_LdH{4=n_(PoIu?cQ5{8-@L)?~9iE}Y|r|DcX+?%;o@@e6kM#cQGn zGas60T~GVfi7ixO85!?5wT(KgPuZ}tM}4HqPG{@d9rz~0;C1^svR5euY#T=i`7OOO zurAuMx+O0RV03Knzqj_G`>yAdt6u`T$SE2CyLLC^!y3oOy2`=A1XL%)?#Y(MRn!=C z$a75l^2;HTj$&IJ?(iwV% D^Ium@xI#ALqe Q9QqDJD7`DT3#>A1SixZN4#&s)w;)$jW-_(y*Yf`5BjA zLmb<>%1Z^*64fqUpt=A4X%!KmDxts~bH}|?EJu`AU9M_QqVIIGeLv;ld0o_^Mv&%} z-ULqy5vh;>cN1)UhkXzcGv4emnBB0X-}Z7P-1vHeblfH2FHLu}-xon>aZA045)16) zbqYx#+ZJ%U*NN2{iQ+Hp`Q!qi!3zXkRNN9@i2&*SV9QGlSjqgjDRd1Xgw?mNu8b1i zLj`2lGHFfHj%7$Rn%FcdyZH{@kjgd*! xJ*xp z=)=rD)lu%mbnBD{%=eoX8M#is(a#`0ZVh7aMS)<4kgUQJvY{J;@P>LVoH%@9bBW(- z{CSqM_a>_T8p;x%A!lz;7)TfLi@virJHHZ5yM2V1d5_q7mA`>%p3e4i?TEGvo`N#a zdD0*`Skd@cn``yV6ue5S96QSY*P7A?As!_AjR%R+TE5Xvg}>YuIj50Z**hS7TsQAo zX^Ia}Ex^Apb#_WNXdIwQG*GWtABnQ5yN+_Ppk{~f-UwRtdJ5o?WzIt`-~9++#5fO( zEq&x4@4M{y+$*MPEQVkgd2ByF zGOs>a8#lIxf8sxsVGRedD#&%IeDcnsfs_QhFFaBvzxaL7c8j&hbLq|R&d^KwP4nS< ze;EytUg%%xEB}cS4!x1DpWd`S#b+cSDRRXBo5!)6?$6E XP(N3`~1(7!uMn-7_v zR;*CDzmOoc3?4F SLe(~coeh@t#jQ0 zWv$myU^$$lZO=0kc>+kDEq#L*7VoCNS@vvo^r15*C(d?v4?n^xJI)bO^WTRExL)=9 z@~N$30oLM3A%>r-(BGnje$5I-9mbeMk;6$JC7ZD^CcVN#nDx!t8g#`%xV#|di9H=* zEwpJdf*!iz)by3w9NG=t@VA_5#C!+j+G-`x*?#zJ }&mZcIywf }ajqy&$Hqwlce*!X+TKI|TJuw@K{+!`f4qAz+H14f^?JW4g>OliQs z)vxi1eLY2-5Cp@ipLe}3JBBF6y4fO!a~ K>pph%a#{C>f{BV*6!CCF~xJ8+T^95B^@zqdU(4ILK|i8&RO037>WE>qlO zo5zN=XV!LlW@A*eNTxxeO|Y_53w;6^2!@Qy%FieN-hzpFvtCMN#n9V6@S>(lwK{tb zza|J28x{8+$