From 5ff4e8d78a8bf93a2f75db166940316d60586162 Mon Sep 17 00:00:00 2001 From: Sagar Gurung <46086950+SagarGi@users.noreply.github.com> Date: Tue, 12 Mar 2024 14:51:26 +0545 Subject: [PATCH] [blog]Added blog for Option And Composition API (#117) * Added blog for Option And Composition API * Fix grammers * final read and fix typos * Review address * Review address kathren --- pnpm-lock.yaml | 6 +- .../OptionsAPIVsCompositionAPIWebUI.png | Bin 0 -> 49083 bytes .../images/OptionsVsCompositionAPI.png | Bin 0 -> 26291 bytes .../options-vs-composition-api.md | 188 ++++++++++++++++++ 4 files changed, 193 insertions(+), 1 deletion(-) create mode 100644 src/assets/VueOptionVsCompositionAPI/images/OptionsAPIVsCompositionAPIWebUI.png create mode 100644 src/assets/VueOptionVsCompositionAPI/images/OptionsVsCompositionAPI.png create mode 100644 src/assets/VueOptionVsCompositionAPI/options-vs-composition-api.md diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 65142c6..142e6d2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,4 +1,8 @@ -lockfileVersion: '6.0' +lockfileVersion: '6.1' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false dependencies: '@iconify-json/mdi': diff --git a/src/assets/VueOptionVsCompositionAPI/images/OptionsAPIVsCompositionAPIWebUI.png b/src/assets/VueOptionVsCompositionAPI/images/OptionsAPIVsCompositionAPIWebUI.png new file mode 100644 index 0000000000000000000000000000000000000000..ea7fb7384e54663902834081fdf493e65c10669a GIT binary patch literal 49083 zcmeFZbySq?+cr9&7^H}Rpn#xsDka?@-3*ONcY`#DfPe@h-9tChF_hBX&Coq`H{UhC zz2CjoUi+W@egEwJt@W~e);KzG-`91X$9cr%6Re~lg@Z|o34uUxq(6wOKp^*M!GGS5 z9)Lf=qjQP@5BD8KrPUsRAJ0cd-@$VdCkag_Ra+A$*G~?{5K|jlYhz|dLkDAH8%Hx+ zr@ebkf)L0nh_twf+LxqlgpX(c$sl(^Z2aM3cQ=$|%$3h*PgK63BD>lGZ5e#C*+F2I~vg<76?J7b3bSMSAJY6kG2d z)Xdu;Y}R%6&aO_pciiE{$Q#cl?~88%0feY~fiP%Qb{C_51Nrcc0QEp5@*WL5e0=T8)i=p&@B!!&DyIYTjt6lhXm9DJ8{)IeP+3^Jfrpdl}x z$fbU?);CtD#XeS~1Ff_ei)?CYvf`R?yCNbY+8WJMb>K~Qc>j{u^ZXC)%lBzNeqirR zSIXiBWklX$LSjk(by25(Y6;w$Z)*B%Xh`_{`G$j#kB`sA)m4Fr{{z&eU!LwTN>4ZW zGzs2aJ2LClsXfFaFU+;LM_vFeN%8dblskKjiJ6}^9krbltz052a&vid^7kP{uKUT7 zPyS2Xpa-}wbHTd2OJ#iXMjUlJ+ErG0+46}DuU-ke!1XvS$Lr1JzkWquU0+YV*^4#s zRyHxoe#g#U>2>9DbG{tTz{KPhzFBJ6kr0S5AIUZcpHIy)5zSaquj07YOYg{&qnJ9r zi-4b;Oc)?TSsMqzo-`=&L1G#INfQ!3d6IUu*JMzQaG8-%tdmJs&X6SK|MKSn4r%6U zPb@MTs-HLdx2-wgCmG+GODfpm1e+4&jKJc$Erx)=Kn4yDHPi~5ndP4DA_^W8(5PuQ zDAn`r*0dP2{dxmO6xY#@cwE zURLlR4U;NK?bFUo^+b*R@@SgKy^?72@~P2ML#eNinb!9gTc%45gTR_@I;2KLJ&T>u z_qlPdw3;fLe3F`+theQ!m6^FQu4C(5dvkuUe7OtXlhM0f?Vg`E01N2|pC@yjg|&qe zBab&n2$dKI?mu{tZ#&<(HB(*Eczr0_a5AnlU2dvq3@!LqVS~{AO(Q?N)|Ytl4~unU zJ=Ldpn*l9X^!XD5iIa^XG1LV^{kupCG>Q)0<9)e%|E=0x;@q1({ps`#_H^Kb;@Zi@%}Za6GWYJfiG#aLM)5kar+C~ zTxf}Yv|co(Yai#tMj!Wl#qkN+M}cp@8FFP~SxC8UbZa>eXsM~AWow1CZonqEul$la z-l?9?PfHV4QSK4{{5f6n=SwYf%8!RDT?y=_KOGz$2O6tP2gv2)*hFMwnDU}{)s49l z`&O~d+DO0ZIhofvUj?bAq?C4Xw2o{z zn^SFYKXE!-k=B;&PV+e1ty>CV67O z*q063U~3R2HeF$^Y7Bko+lH@@AF(x7V0nFhaCmZZVs=Ny=R!wKEg^J!o`Fjt$dohU z=JLd}+@x-HM2j+a7NV{`->=-Js-UrYUr zYFSkJ^a+*^Eh+Z(g<#yjpDX>F#$u+bs2IM>%V|3|YpunVD6c4R5*3I|vNZJODTKuU zY~UL~!MO|yzhpkwEzrME3yb_7uYNfxHxr2Ge52P`mMpQ??Zvu&0V^a*&B!QoGxK4w z)6TRy&I>N4k(CD~C`{^$dz&$7{rB(Ry2Zd39Ci!BoHnzQ6-i(yG@MRb>c`*K)F%si zUDgvdtL7+df`&n1Aqrq@5WIaU0yl9crF=6FPL8t!VFH_liS(PyFxzP7k#36s-oP#Ao) zN?!u!DiX;E#)@IbPt=`GH+sRnZ%!uOr4B@gG%BbJ;Yfe^QiFQSSiU-P+an2l?7fG$ zW?-p#?G}8YbL+Coc6NWj*N*-9B!(ISpn=@n+@`B-Q>(0J)=tJVrYkLxA&kX?giu`= zuk%*t#KhS)Rk1>jYR6A9RTq~km+eVqmOG8Bv%NhB9Sw~bQBlzlgh~0-GYX25sd7_~ z28G?1yiOk|e6C9cueR9*uC~k935n3 zO^0fkk=vUqSua5VyWhV*!oa}Dvq9AH+An?k`I0AHEC_eAgTm){%j!2+3f?O>fEg)Z z~?Jf;Jbsjx3?kRzbmx_;;82+kbzy7LERY`Y*n`NyQi-C70yEC&mDz@eZf#W z2Aj&j$EPz>Z9B2p64cNt$HhS^=vv=fyCW%XQYOF{JYg{;l)S>dA7&6xZ`@R zh%5jWaV)pz;N2Dg!Y%<6Rf67rn%vUSA%z+w;^N;>RA7JKj?;QtE$~x~z$qBf+D+aK zYXhkz$H&LzCET`ix&WG0!^s8Is%`XQJ1D?%1qTOf|M}?G!R;p~C}=TNmIW>%N25qP z4-}fkaAvR+!SiR&o|%E-nf~+1KZZ$bsnQ;c&_1~zOw}AfI`Uli=1}x#=H}?|@VEs} zXd}_KaR{ur?yb%?nEm8l$I7v**e|#W)v%hKcW1Rgp>rX?MD`h9`0F2vh>3_;D6?+`SFo|MF(f>E0<|7sme&+3bzvgwJ_j zS%*{ff6?*wZp@a8PX~N2&U>!q-#?Z-J1Ro2iN^hZSfGWnv81Q1xDeh~I|)3FCc)h$ zV44CtmIYd#j*9BvYE2ITt%6xk3>ed9%E9x??6CE%f)WkT2mk*4d-n3>_E726)D-y3 zUok9t?x*vqpda0jH(-rkSNUMeSdh8^v%zmR5w7!N<3&2MYU@}RfZ3ri8%)QsMlTQb zf;IQK3>5UfeXE@6c_^I~K69^M0wBk1pOeE<>tg}XxLLR~)avCX@;D^##H;7M;Zl?^ zuz_0$c(wcKcHV&Cm7Hz;L12fXwN1l`#?8&1539NW*o9)i`Xr>Jkjvph;{cd)o32+` zL&CyNHqI9oKB7L$-rhce%R0dv%40h^VN#wa!QTo9ZloQ1j0MW6$e3B^@PVT-_Il+%xF=61-0OoXF zL2+I84)~x(6sdATI8V@nk{J*$ zymkG4_dV6eP&6D;4!fCHSMZw4)mQ_DOhEwC?yJ#Ir!$1Bhf|A3vBg+Es+ST3JgTIY zP5WOi<5bVN7tDF=355H1)qeH&2Yt;UAt_mhn9w;nIXjyG?Q_!2SQ2F+kO&Ysaukp$ zfE!uje^*2`Qtb2i$8wd$?ylE`I8Az=hkxw~08m>J&u+T4mS}rw=3{%q7agLFZqgeE zD=2BK8#SJ^;yT%xnOHqtSuwgfow1dXk%=7HbgDG~pp}PQVBT$SIKR4rD#+7dH zefkv8b8Kv&6pHv6_6B@z%RwKmDYMlo0VFc%OUMFK-o2tJJX|q&z#axzvDxMEru$Z2 z4nHOhF{(CEGH7c|_H?_(=kC^hGb>hxQy)d-K~If>^{hW6hZuuGM=!2jBdxyj1XV|< z^gEr_8&D31isk=r2s^=UH zl$dI^dGXQF(aDISQ1s<_em-dA%ZaAjtP}x{n7o%QY#iR#UjUW2*3XY$M@L6L?qwgK zd-W!1_S~?#=p2wMn;y3f zSkUo;KVA&|hnXE0P{it=K7Gn!$w*I**Zr#sCdpVvxS;kL^@9i4&(l!+PR56bY07~a>1KDG z0v`XqaIlUUONI3eR|#Hc2`0JQ3cjAlPNhD559ldCpwvK5HK^!I0|ss}`R7v>ZJM$r#|z^(PY;uh|6%?l7swazIE~v~E|%b;p^@}| zfO9D01+Fer`ggus=oqL!d3byBP=kkStl^>zP&njuKpZz{kSmb_{ z*Wr&RsF_b=$PU%D4}V6#xPcD+AYzURHyWd$Jc z8GsHdBy!toxVv9UaGS>(#ul^a)qQDTR5{riBB`4=t1yT)6JBA&}3TNcFjgXI)mKLE}V)ycH`7EFzu`^&&tPkypiir3DBw4k4 zKf60qV{eFpe4Dd!Od%m5gwu$8_SOA|50M8Q6la&U6kitn-c{G#Gydy)&d`kb;txnp zln2=sm^C`K4P#CeIU{-0vN2`=LAtxTP~04)r%)f5%?<%*%gDqe$LG4sq>j*cTP3uf ztH0P5{e&vf-TEU1gk1|xb_a?-7B zDYqs|Gk9ILH-^65Tm3YUB4Cr+?%{AxO$9K3OQgZwmP-@Z2QxtAP#gxkMF}}x$qKM*05eq+28tzt?bFwp8$by)&?@tE zciRzhmD>OW8xD_-9BXfYh#yMgaXfA#Hb~NA%?6qqRdVt=eM`&Bl^_3pRl(r`j1!Jh zs;et2bV5P~XlQ8v!TNcxvs#>GFj~h#2pKEPM`+0SzbN_n`E3nl1c7G!$Xk^O6rXne zm(rdcpWCBU`FYyBjrnOn{0jBpE_r~2pzaOa#HP~(kQ)HCDfH@<%mH=tg}=p}ORyR5 zO%w5#vlR>ns{!bx!Dv*IaSxH#VHa(JpjX{yT(HM(t(2nBjZ@whSVy5GZiPjl4P@ly z$Jht>GeA|>@Y@WfOAr?YM?^?g;usxJ`y?bJ+O-Z@ zDE9*pNI3sE8#V%rQ1_!g?ofoj)+xWue_|R!fNUrvrbiS#gD_NQ3q&O`msJuNy$L(^TnVe z{hsdbVc;}m0jnYxv^q<;^+a)U$6_V`-7UbWdUimYvQ%Y#TJ4S|eP{H&M~Q%#7`nTd z3ECW>4h#rO)J^7sFSfb5q2P1bE;FNaI)keLJpXJ^V$jq$!{Qyzf7mH8PYWpiL=S6I zA)pVn*SI*Cm?~;&Q7F@ZyRvB#+;gRIPfYpUUGLc`=#i6Y%aYoc#EzH8=71h<*E`Dr zy%d#_QhalDmRR*9zOotc`C2{IHGsUsz47b=md>-4ma%{#W&QPkXt^;6V+r3G&I$#T zRb!3h+;=!l2THh5Y$@r+KO`^_?>5pWm&`k6OtI|$5DySy>1@NtHuVSX@4}()p+J_d z^(R}_g%_~iUSE4M>(&e&PY(CKTn-MvBCbo`%+{&4X=~Jv2YX^MA)mnU7U5m{4*oYb zL=+M5cLf_@Mb~fI#QtF@kZ$1*$YV!AAf!J90Ao?@v670_RyPhAP7hS$j$l%*P4pwYMb@mf*vLLB&TPHt8}uk<_= z0>$q1LR~pkyD7J0)lshUO_SGJ?w1WXTIVGfEXlb91cXsh`E|96(gf;e0)4hHMhlR z=W7Lhx@GE`i6CL1NiXtrrQLxoJKK-BzKf>s z=IIJad4;-rq6Nl1ztr7!kuP<2zo+B_)hZPHtK*p)jZYf^x(ptBxlRmJGXa?lt=?0& zSG;35;w2MsA9Xqq0)`8Gw@wy|m}PXb)Uapu0W9BquD*5?+ic$RC~PKYKxNglI5XY* zxcL0y!p&(}A58xd8*>Bii!5^`g9i6Xb4GD1tHMpy^AMEN19+bV*wupVe6>feq7RlS$-ue`=}1Y1ip-%3}zi2AAvP z$gSX5xM7b4m=UPL?Ad8^_Rrf!R($-6UhVH^3H%LUWVW@nnS(i_UFVc1c(FoIjdrcF zQiOEgUl2j9hw)kX;kmA~0}p)*31B=nIlVhm2u<>G_1vB-^GL1GaJ6d>^{EMSV2)7NJ+_*z$h$qQZrTJj zItmoK`Wi-SKB=u9tLs%v$GVKed^)nrw3W%1LeO(EBhk%O58m6aJO})liqCDBIApwP z^z`)68sXgwHda#hzhBl|$$jzfGdXhasfG`HowAiT7nIta%ZdCJ+3HTi8%?p zll1g-T^l?sELAY)bx#+W8C?CPECiJZVgOWm+EVueRosd6Q7M1mX)Xiz)JDh zxaO#tUlZ0l#BrVKG=C znU|i8ZO~daoZHyc6bTS|6pVJ1Gx=$~GUW0E$;iPm>XZr)L+@DIEj*P!0|XN`v68bwIs9gBfKEbai#DI(WNscc-}6JDgQ) zsTgq9zL~A0dUodjIRLrh#LMZtrRH_98tcCQ_u&|zY2p3!gkgW9ST4c}YR9a;9C33@=JFJL^ z@{DebSet3_MPt zni1eTP<(4Kw^gEP!&W2o`7~T1;RDqGxXcdW=^VH4xiOXcG#vihUsZ7a6$BJ zP(k3P#Xu~GJrd$ryqy7v@66U7rB4+6bLMqB%mhYT`mfhg3AY>39oqNXoCEkWK$y1b zpuipw5P-^BbZxk?#Q-JYVr~J6%e@EKY>1BSm(hO*1_o9~n^x&*XtG;FY5uW;xnBuH z{-W}RoSfXK-@S*rHuGi1p*_}|7Ndh3Lm9O{BWK!P>^0qaSMQC0EY!9RVKGlu<2hJV z5Yh=KUw1U4JXAF%1ic%`K2-8yu{oS|d5J91!+i%TClFX&qcE|D2+yNFPyw|-vpEi> z+n_EIxcI=D-8-zmJMR$Ua6dNNnQOR8w?^sqZ;uJ&n&?zjR9F%#S$gLlf?N;~-hLuEATM9c3tb z#o2)Y%^)DqFsW4lb`$jla49kXwGPa*z%OMd`*Q{GD$0WJq`6smgpK&+%RttA#)os?e6bu@W zNz74mI!*&+#__rJQEcdsDiCFb3tr{|br<~^KKLKyMx@krgI*%+Mwz5W34%psFl%N{ z*P}z~z5#1q85rDv??P>CiVqJDjld`ZaEKx-Z{Dn=CoTX}1!egYBkH{Y>H(RV+Ea-I z23rPjI4lpA+E4~Bkgh1-83ZuWu5)fVGrT_Fr8aljvTafHswh$q)|LTeDIhUZ`Y%E1 zI3Qp{%nCGQe2;asTXKrets6?Nff+?-l$2g7t5Mwufj z4@c#SF{}o~g@uLXSP|fAkti1oq{l@lE3m*>8}3r{?%g}xpKnpGY!7>p1B_VZRIk%` z@7oL0i_1%t|5}m!MSxla}uDZmj(_li+wHFlr6vl%(JE&W6EH~KJb!$8 zZUOiJuur!R-g3`-map~3JI+}GVm(Tm>X|-c1MfT5MfrrlhGYpJpq2(+wu-j4cJR-< z?tcD7=LzGS_f6M_p0Qx5=<0&DLRXh2xM#RPB;1%L9JQ)|6@L z$=2@;SuIdiQkGL{?amH_3NnUZnyrp=Usq1(GgjSI=JaZCu!j2FUCpC%_KEI9u#kZ0 z)@!6x&jK{fo)L(T9_$5bY?0Xpk5+Kyz)6Q3kO7)Td0Lr~HMMem|#(4~t_oB{V41pewV2pePbu0fn<4$|~# zK&RrnYjuIwp#ip~zT*md?0o1XkL!v`-HNdgUUxTV#+aw8Lk?7g0(u~fa*DTYN9B|t z@rXgTgbt%pW;xn75h2>Yy1VsAxM%JBuWxR8JjrWZ7MjuIfnkLwaIBO!5yJzVJrp7U z%HUR{ANzTNC2wOfklS7D4K?*am$R60h>aPl+UHGhw}}? z3^*5HHCIaz}JhQeiLw?G}KKp-5_3fH9lzqTK*g z^d<4A0y%9|I+7EsW@l#?-}5K^-#^g?;I5-i7UT(v1>sSQgX0mL#@)|G+ARD+{sGRz z!pf=$JdxqqT1RIfrVD^8g*q(Lq4)p0BuY;c$a~AL|Ny@O?NknDD3BT z-L<-G^8tx3N{9p4s@a}kznH(fMcIfTrJpmty8?xZqNe~MnMZJRB=mBcZcj?KrYj4; zn^8ki1BmF;jT&%%s7R+;0c14=gXV%lmm9B9PsIYUl>w1LcUUh{ytd&IGkFH&|+{%prCuyxTwAssjwQRL6Da_W{2WqemsDu z%$69d+o6gC*ySi26GRFia?Au_KWG?a`YSCU#z9wgZ#r!O!UA&dF#u~I{j@*$ftkB#=_N zdtd+xLQK^8E8w&;($aRk@KK3ZE78{jtQr;H0)v~jh0O_YT9DU*zn20dWC#S13_I;j zK*OMtTkw(`0I{g$?fmr`xYk2>Lf3Xvg?RUqlpEZgffX!=`c@Ev0k2M;kccSd#+%1! zBLZA_4sgFUdH=*#12oM8BOMb2Lg4Vp%JOms$Q?HR&m%;e=?%ihR7nv1HFMNC-R6tu zj_BZ|V)N5S;B+zs!sKW7Kl4=LIqHC)COY%~%A5bEzUhDC7w1D=Fd%7aKR$#dUzL4! zTu0uu_bO}Oy1gKLyCmONFCfLfM4|dMql{sbQs;Xef?MwFbSrJ}BOE(NOiO4_$zsWe z)6hO4DOyhmy1f`uYx?KX6`8gl=t6>lyLy`hD|$g}c{@`Om9p3P2m%3lG@4Qt2^4R< zrfFxe(}$X|x{OhkA&`n9CHvr>=*qcw(Nm~#&!_SN>4FadLC>T0cqYEW&9_6B2`9w6 zW%LSKSFCt$(8vDRf1940)HtoyPL8i< z86MO`kdMaTkhpq+ z<1&9=DI#kTFI?Gk+EAv`sWgLG)Iaq_&Mm$O<}v#Ue^fD!?7CTdeN;LT@oUk09e7aP zFS(-VJMXL%R!wYFmhK|6e%gm@J}Z6#k4mhS4mC(kzj!gQ$w>4(&kqkz{W@$B^KDYM zjO_6Bgekqf=@6N_*`2xj#a|`s1VI&54gJYR!%nt0Jjo7q*ffFZ?PgR zo{zyWyu@rgVO~t{_j4Sdnx=H^AcoAJdV%cF7q{#xiY$$p*V+4uvTZhgp+s~RP zX21L~=_g~jSsx(1_@q%f(PvMmXGz>UTu5!sTP>A3bM_FTvaV7j@s%KI0xdF25QR^@A za|P{5ufLe`xRj_5N8)ss2IM+6y~pu#hHUppsTQtaQd{)ZknJ{&GYPqb4mLRvlRQBUe<92@i>CMMo%Hm7W;7c(-YTHQTSiyBQs&7)e@04{GpT@YVfK6Y zP1moC-ikL_C7r)U9x0EeE^+SLi}45vWCz4Y;tz|IatAW9@`xM_JG{Aj#pAN3d#n)X z@W1$nHiZ%Jg1joegwU1YNcOMN>6!y^Ht@iOeCzc4)JW}d{&j( zvR}5#^v?Dlxfq4qPj$6SJuG&ga1soKEFVFsqlp>|8Me_sA`xm4S=-pGT-?tb^;>@1 z9m4A?#QPGVPKXL7*^#xMD#!A_5`HBy<@B}ur_SPJo;Oody7nAYX9c?of>HX86On5t1gPKl3~9lV2$J4;CYoM?ExbX=0kI;l%5dQS=)>ZvwVgR{!F zQX$Q2refrslEgr|;1zhpos)zSXvF@8hwvl!o2Gu!O1l6_J_xnCb z4<>0Gke>C@wcT3Bsc;MCwPyH*)Y(P_ro>xlD)1z=Pkjw*hG0x*&iZR*ufO}Z#NpX0 zEK!Y1PwKjC_koLEkNWXbg;nzIUsfWR*l#lt#7RSc7}*9{TB`3$)TvB&p<%x4c9bb2 zIgDQ4!-J$9;wwOOd2x$|x2p|L*5>!d8bl(UOzOYsAtdF-_jhS4T>dikO{Gu=F{|0X z4rHurrRBLhSMy?PP~&d-x$`(7`AI=PUX_}-rPvGf4vT9qvZzXj z6cf+r;v`Qo>pf3h{}!K;UoG@fenz9rCUQL_lHURqNDICg{wBILO{v;-{opr5da0=! zjEp_-N+^3)()ohQxKQ!!&5PuIg2+#?pN6NGRQyyG5=*e}hF=z>6Oktdfm>*Px-pKi z5E)tNS+!x}mDAwbGiY_8V} zx!k!G3_E7+=b8n;E$){FF&4t2N-e5PnDw((qMlKgC{DDsAOy|}R0*PM5P1>$Eu8f_ zX;UfP{oTBoL3MW`K;RAUZT?zi!TczV|?(e|qwb!%sB_o}3zKYKc*HXK|I zH}U$FS>!K8zk3jy75ySAn)ad!H+oSzak&2t_0ErpK{Q2V7H>gRg0m=Qh}w5~hM^Fy zlzJfuMD|q@q-N!PwNEY&qv5e`YIzCWMVKjP$MfPE{WFWG2D4u2-68C(9Tr30F2%7z zAAVR;P!L0-PCf7F+ZCr321e`Br`C~}Ne)KFblme$t)>-1RpG!$sI|JTnrWK^Mz_tg zqNY;ARi-{4U-l_qR{bbXjvAg%O{3+I5nJZ9T==8O zgJ(?ldV&(8AUE_kySig`f5cm>wDgDJDoK<)WVPKFJn|$DLkePf*82n84}W3f)Z3}JVG%iT3cs#csV>@B|L6H!g6vK(!>A>{jLHuNPvgGXjQGM{YsK@M@IYvnUxKKkNb0*N)6+Dj9Zt*ZryO`k` zv?d7X3{8B%s_h;>+T)fv2qWw62D7iZIO4lm8^Vlkr%8JDODF*1e9V83A!=@c+kfSs z;g6`4I&Y&W(rr>P&YhcRxuB682KXd3GAAU8)qi{}M~w|0{};*r|A!Pjy1O_oShmvr zgeolT9RvJbB(wP2<@t#a2}5Ul=k1UUAr1C**0GRGLhaIhd4Zc)I*e(CjC6>vEdJts z2!m>iW}CzmH3mbSZQ*vbCSis&H;$K0c6-OS+?u#&!*}KaXJ!>YD)2awSy~CP49+#S zWhqyVUjilwA$I0KD+yC$?h)tURykRJ=!zC#P_PeU%pv!CyL{a5Lu2`IgWP&@x8}=3 zo!rmvt`Rpuc%1grp43c=gV*K+oO>Sh^->l8%mvUOU(it35{jQ!v%Bb!O>KS}WEpKN zPFFS2R`f&?@W#}`Y$EF7!7XqTzxEsF+}sM65|YbRKW07<9$uCW!6B(66AK)6U-dbDqBy5>ucYc|ZO?0}#DrN2374~#E z2{U-R@cVI*11_oZwGwq3Gr;*si|OERNXiUI@`an81aRRpG`@oq zaIWvD%dln-iASnM6oa7X-E@bg*;z#TNL2__*MnYwM|u-O-(3{~iLKm<)qD;!h;y5Q(yrZQWoQQ63nEMXMrK1TXt2M z&HDa?^WAwkBdMdU)LN05tqp-|3P03m!yKc^hG7-lfKr`!Hy z+M+YYf(D)Xp|H-1wYVVq4M|8%Rnhi^PIQ@|RA4G)%Rq#qY{KdL9ZVc7=IOrptcp>m z)fiYnOD;h=&ELQ>m8a23zi6c~ttfJ8I+x%fXb>fp3RGeJnSWk@>ylHIoh|#<4>Kw= zBQYvLKaE2h(cYw-5-N^1^vMH-M32>#KFG3mjXzI6bVxYLWCj zd~wUpEJacwuEZ&a1G!^EdbMPPbA8n?&1Mv+(&PCQ(!7e=c|sPYQf}u6y+B@U57p2> zy_$yd&$bneJX4fXjYgCAjAEmZ=@tAzs@?PXJOlmE=>W9FkM2|c!EZQ!sI0SzkvRU2 z_Rek=>q=;%lDGE>QwnNV*|M=sdIYiKc@1tw0_&$n^=V+zJnLwa;IzBnMur9+tbl| zgTd(ZY;;P2@4QROVa;j6d9P&MiXRN$gD9Z`Zl3$mPY<3~lq&Wjrf(#llX!M)=G|DC zV$uUCNyhws25MFXHOWz7953$#(Wk1>##qWmR;E+dKH>@gkJ02H z7(QO_XfK+G%-x=tyP3XZ7h^J9qd+Cl!YcJ3L1Q1LvE$T9PLy%(P3d5jRI(yw>Nz_Td`cl)a zVtY#q2b)Q5`2{!$j7 zT#P5cKR4flt=@+)^_p=jWqke`6&?M$!@g_ojY_E()ry>(NY{M=NHcXHs1PEPQ5+RB zqr!9#Fje2LcJ>YbjAlRnr{k1`4$*Z7JncWTLz9vmJo-{UQ2-CX`vEKP|IepN2iugG zwnTIpFGIMl8TMu&zGakvi}aF&c%G9n>v6~*gfYTdVnd(cc;9+8@bGGgM9O&JY$MvY zZd%VcS=#lFzYfV85*H2f;fW{Q562q7f&7X54`k8(#OIOOtAEMLd?ADo5>W5Qa?K^k zF{k*U9>mPfu@QWKwT^L+9CrS2iSY1-sZZPa@0@oawvbq0pT`Mn3T#kcjMGZEaGL9J z6k<)y#wE}t^NralGPs-Wk=kf#5W{$t25YZu?YS+N;pv(Bo7XCa>y3pqfo)cNQMt4a zn$n`aey)mMBYhs|83rL~-|ILNt^2RD0LrZw3Tf{ z$JT0xq4B_6W+ruTcOUn&NhZ->edwVse=zdItdc(CWp4&NCEnfID|izxols7-Tpyd% zl+9RP^HHVSazT?*!aov+r|0S)8iWCR@xCu7&qxIqwd_H)1btmJY;^S@lK21uM2u@yhVGL1y~v9WY%jclNk1BsG%)h4__*@L`y0#qU&pbL@rj zXh*x<_F1<2@0p$WOWg6fuHMHB6nvcoA)z*Gz2Su-2X_P7SjFEHr>Fh#d;6{7lFl7cdpa}R8cb7=;Zp9Yi;Ky#b^b6IwEsFH3T05e2wmK6|(^wbIgijpU+!NliP?#F{MJQk|gRbSbxt~Kf451MtJz~n<)>R2^|okRZO z;VV0Twi6Y1k>w`}T9KoUqWttoH#)FlhC5dD!*kx+;P>@=r%@~v)N9PiAxeg%YC;lX zj0X~$cc0=KDk$0PSzKbDXAQQOG}nnqxHdhI*N#^_HSY5t%p;7b;CWyU#ffl#NLg?D z#-z!z*(bZuzx|Q$qvk&n6o#UV_~vlKCq-|Cw@AM2Qzkzd)zy$JaL>%lrF6kzd8}!1??M`B4?Q?9c1%EWC|Gj2=8KPXih`c7E z@rptBiub~4os^(>H7pf+qmzN}fgt`QLv2$3(5Q(tVC5YiI6#x%yzuS&c5GZ=&3&Ax zfq++qW0;xA5D3gnCia%?=~E|(JMy=ruzrie#B-nTjW?NmYreP!x3146g^0f+3}(rk zhw^^IrnBjfoU)!*ez;}1JXO7Z{wCP+kEhb}I&S@k@(*4iNrH!VFfxmhzDXzARMU=R z?4&8slna}CYktk8IbwtPyjd&J5Ork3Efp#Z*h(utX7+X=Rh!w3f0`vLd|dX8@9u{H zg z#@5CBXUV${;#P7ZRwU(+Rj=1DD{89E-_>tjEr&itZ6*2Iu1g9Jagug5z2l{%%4d@-)3HspXTb_Ma-8}mDOOFYk_Cp%OG5%H$ zTk?qKD(1pszckP2KwiC~t06PG2!dUv68iNgn{X(3aXff!5bsaOr-1G!Bd2%B9HY34 z>*iMX8m-j{r=Jw#1F|mas3B^sMD>F#F(qEAuT}>9b#tGnS28I*ZN-{@T$5qx$GMli z^tTD+5G1ZPj}=wzjer1Q&}0)MUy)2ujaLxN)h4*PxeT2X&5vwGBqlXv<=&J8NlOyO z_l{vZji|p9^VN~-v{dPb3!RVgr>fcQzw>co8^R@D?IStNM5&%^Ws40Lf16QtT8Zd^ z95`{6$&#D)N}j4i=Ex&teI33%G47cV<3MlIvecV3^3@O8zCPs65{mYXGk*O2g67e$ z@^!=Qh>5qSO7CLcBnnFILqGnrYM4iClk#)sN6WMy?N&TJ zc~nAM_|gwHC*ZKWW?;il5kFv#fA(Kh^0M>d|l*9+sU#grR#98laA{y z@T$h6`CfDK>f%$pFE#fDkuY|2I{gxrJmn}jcXgmAzFmxnM*OK0J-89vkXO{`GY=tM zpNHiC+|RQ89w7X~%l1LkzfY~6l|*^O$G-g7hB@@RRmN*K!RcsEjMnC_R-YB>>{GOI zV1Hc-c>J8th>J)p=xu6rX@^|&h*&D#qj$ueN*Ar2Uv+WuHh!6W{wrIofB#Swzu_a< z@NQ9LmdQs^aka4bMWNrfQ(OjYUXFXbcG_2?9mBGNqM#3RXsv?AS`bAu=; zeBs>nvJak?LC(4FbHJgW+hPzOJ}5~3Lv!BzMfH16u~ni7H@%#dSHR>VIh0uS3Eb-O zXGOHRqI*61La*_Jm2~z(3_6yEp8Rdi4oxS`vk(}p>HS~swHl|{ zUMrDFCiHlymc$c-Qw29W>b85qoq#HRtMwNFRhduS`&`@~5@z#kof4esu2H?B)KqTE z+HahbLrOyh1J6pNtIM4wnxWMcSX}ePiK&4Vs#Ky^3T=hg?{g*a&X?HI8>QLYv>hwp zT$H<07fN!s&yNy1D4BII=OgSYen&lTpqF04SsiADwSLOXG#2(CvpYDJ`Y@o>c@k7= zp8CMoH;MyiKk2Dz4x02jS~$&v?K>(Q5@J6Eubj{AC+{=$@cpJG{92NAOxgDo;jFlM zzf@sgjtmzj-k3R}nOhn>YJ)025?x8ew^J^Fb=@-x6MM3IZ^LDt0D|V*O8je&wPR9a z>U;9r2OzTlsnyH(s3oO|){Z@7@S5EJ+Yc+V@?+tNNA>)=VbO`Z$phI^|A+`VC|lT0 zTiW(DvV<8AB$dSJjGp!^KWFj7{NXJKseOuf-zijBobi?QiAC!sWZ~A)(nl|75{=^H zWTJs6d6I9`(UdS5-j|+=?>AIL7CLgwuc@dC*xpm7KlJ^+VtobMDfrg$mQd|%x9Ass zXzhrE+;bsp{DH85-dz7RO>CmVkj6yG$y|}%9L5DcFOGjHFGAUrANHYf@-y%i3S6TdDt7N4`o3yzV}BG5xunjw!;&#@ZWGqt_E_ zYPmynN-tQ!Mq>Vj^)ylLn;O1pQE_qg{=f6{O@FfaM8uDk%sA031)-wwZLRtS{}Df{ zK96&ULN|=>Ka;-2g~lKW@Q3_^Uek(;6H;P{fD4GQsO)T{5si5GD${mIt!(2Swj6`3 znGm*Wi$L0#iI~s5h>QD_={~PoSExUH1h8;Ch@wbp_%`JGr#K>Ju6Uis=;94T35KPb z`_3Fs9W3e`@dW=O?lp?wKLY>50J$fy33L0y2|A_=ZS~Uxaw;l!Iy-G*@Q)?&@ux7d zpVCmFe&8s2fcn`+_b2$zpOj$%2u1yLvVijW-{nON{*d@`rIF-UROwRK;7-y>X{81? z+|J*b(4MyMwDnK2zU9hI_w(~jJFwjE2@i!?=?>A<8IFfHE%ey?ef$FUa;z&an@?EW z2upP4@%iD%r~UVT?z8qQi$Keiiks`l*q^w&W3=~v_Z!z#ZD2|)+*9lI;dxfuRjOGk zg4GELlVsA9e)_$Wx}1%F@WnecU*&JP1A&ssUu!7FDQUDks*B4Zf3&iKT*VOyf4%_}-?IN|!P|IT0g0rp|xdM;OP(^Az8Y{K>KQ z8*3fET-!)lFCpd${4~vTEEA`Ob%B=#ex^CCQMXgCz;6BnyGf3@6fFOpC$0I%6Y6KT z4268o)l45Fp2FTSt04_{SlH0+e{w+d<`u-OW53v}MAi}0hk!MEx z`?$g%Trp^vu)ppl-F@sr6M*2;r}BsU89>s_(uARNNJ&UZN;gu{B^?5i(jh4=DIlD=-v8eF>{H`>IbZe|hi@pX_3%9R zJ?Ay&z2@&?lA_~0uipzbOjUKE|2;|Ffq^C=LLQP7q~(cfq{ih@*N2owN>;j=UZ58p~XOu)Wr7*fvfRZ+7ui5!wJQAbq=Jo!s6(C$+f~?m4hsb^XZQJXt7#J zPiD`yeuP>Vg#0e8{lcJ&FM+-r%g%W+ZL-;7ai8cAVDC(m zPNfq3==im-tV2~E)U;uZ>wu1gf|3Ezk{?fVvGBFkN}LE*$AVGRN$XDMLRzcwzaEXx z2ke~ay>jn8i~T#@dg0 zACDK>g9eN+W{WF#|1t0r*-}P_b2=l|9M#V!n#K!1k zr%EvE&TOk(q(`cz4qvMfu2?^b=GqR;kKM<3D51uYhlysDIJ>R4iggP+;58?OBXid; zD!tBK#So_b;E^7*N83ozy~``OtG@+RAVg&@gP;_ZK9)bXXS?m5c54miRzV8^fnYD$ z#k}*E)6QKgv-<>QWWE9N_t;JyB4u}6Uj#G9Cmqs6|Fa>EJwZC2?v)P@^0MNSZl}7B z8c%+j7qBxnMi7TAaUiKWta30EAvIWQv-%DFu{PIU1{VVwt<#Sl^6iYsj@E98+_?Lh z-e`0ikArN7{0ZU>Rze5=g)Vq_&j%NDVQYN2L`SA^62v89HlV!7z6_OjA*v3Yjk9$M zZp*fF53V75eV$Kl+t(j5POWN%a)6FR9orHv`^^GLR>HeP`q5uKh8xOvwm~>Pjm()I zzG9i)go;Faty^Rwl;5V514e$%7RekxF=h%}4e;vOS!IcKp95ix%L*4HfS_Vb}xwI_?s&a5;>bnLpw55I;z=fd+hv#B6J^ZNF4?eRbWm@YKZ*) ztW9t7?)P4+GJ(*uu8Vv52_7=Rr&Axk>;;6Vp=6U{FG|yYmF7i8ioh@sA;+9JB-&p& zEl@sfCoeg_IK7-Ldt*C~8+?NGMDyD}joi-Q2T43K=;k>(Mz8ls1F_>s4q8gSrDlXp z1^3cAV@Uhj7t%f(-~P;x^7!%N=aWB>321-UNCXhw5h5$i|B>6dl#TvFe%;0c!dW-s zmT=LH^2yRazCvZ12~+j2B`O+R;rgHI8h0-B_lT+{BA~pL{os|});dE#QdzrhHquK& zvbNt3CQt(HGhUsQ5hYhU#eRM|NtfkM5I8p}sj-lminC_(#)8IrS`FFa+?JIr zCyA%LbDURyK<$_2LxSI1coeF#NOVt}MY^1Xhu(yy3RCsJr7TII2noJB>rP^dl4YbK zL5%cSlC}ZglcHRd?EQ54tNr0sS!rpvkapM$KF58k53DoEv*hM(yB6kO{ZD1fu!&G| zi8W9Ai#OQicv3pA9D38xL!m%H9$%X~>F82MIuoGJ-#BCwXg(5V{3 zYx4+M@_98zZk=>=A8j1c%$&ia?T-(QR66#woZoa)aWp!+2R9UE7KH^s>bDI%5j1a2_=vJYYEgpA2N5BFuHG9jYXpzss0@>ubtOjXbdv~B7<{?NU@yJzm&W7KBRn{j z2|&srW+(h(hlRfx?WE#hn8vjg6BC2y;`(L|4+$Yt8oO)_rH`=)W8AJ7q&F-NNXF#_ zlhiLBN#XaREG-g@>=?Z#(RZW2FGzunIo?~=TOXD4WPk4Ve21d>h7*pYbSQtP2D5xc zmvUt%*}RkwvKr3rU#G`^C&Nb+4QLZ*Gw%^B&5L2R*gp*WCujC88p*nrt?irLCoUGa z9#y;w6D+#GFu8&z!XMexX!9lv)OSitG%()t2hMn*LSKws`?oR?p&H3AL@ZQyX)Tl5 z3Bc#r`ObbHUqzz-uWe=&W|M_pryn6sjZsiUxI})72InuYyQ5{H61x%}Z5I;{-G^$t zdHL{kqAJSSIx5#2V`AB8GZRrvoY+jo!)xl!n^^e;4M(p5+YpWQzz=+a6gfiL^R^ROZp4Sx( zElNKEJCZxvNr(!guI=m)E4T)ehid<;l(h8ed&I)g`=jy2bX~ufMx3;N@2QK^9opZn zBYAdjo}x%7Ngii0VU^#O(plAHLX#NZj!sL)_?~+?#gp`)sA4beCg^+yjj7|^=Q!?6 z;kaN|oab~i>Tadp6f)NA+nEj|Z?NyshkcrYUyBL*Ic)aDO%dHqe5%W2&FW3kp*s27 z=DW8z<$^kVBB2wVgCV{H&-L5o}p=4swrQwy1yv;2_66YaZHuMXfRQAvClI19o(!a2C@yYo19L zei};IY{D$2g}?me4u9vo|AmGY{6^Fvjp|JpfwsUdLxLf$m6OuUm2Ekwzrta?O_MAL zXs4~X5^Hicxxv4Ez*%|UTlTs^ZDP5m^e$XNR#6WmlAT*))6c1mX8V^<=;?~QQYT@W z1-{(gz)SpBQ3QVz;>(k2n!OFB{;5B{YRTo|5+~+i(iWQ{XL==zj6Wj0pp2S)^Ql-&pUs`O5L(BH_(| z-r$ZQU2Ked$N2|;I7NC!e{}rf+_2`Z#2vEjEJ zB)UIaj7j~3Fy({fo=jgXc&Ve|CcQ7$Z2eU}mfSm@+Wi9a*WuBOpej$Z{yp)@K8E&pR_{I=A`_Gr?amHc}|pTp)OS>=D&9T=Yr%$GjIyZgbF zD$!JFA8EX$r2BJ6VIA5%G?(9z_G~s}T18Y5$=j2rLkGql6ypLezcHGGaJvV~Tf5IM z?Yr+0e#bB~=VyNXJOt1CbSeL)5c#DrE(N7Q(Wl{pa>Ap(#7sgS%fAby1YB5A`B#y# zZf{4P{+W%}`_MCmc*i7s`&7Z;@qwBjWy8d*FSs$=Q{Tx!6>kQQ`~%w79hql`c<=n5 z>@c@|*X0);uvkMOL#=AVI=qEQFO%?$?@hXaXQ5nuH|ko%S6IP6*p%~5b@iN zjFn{jXUoYgpFQkDC<~|}IJ0TKyRstp-^WTo`Asdp9E~hcZGkzCF3}cn-<_;mvC*V| zb>YCJ|64l0cb4L!)xqGB!cUJpbHy@MB|qwU1LTw6KQ;-kanpbQ!xg*gKzg|y<54)A z?cw@9l!jU*p_qVBbTemDl!DDbkLRi0^hX#vH{6jX0%=zO`wPj$ekSO1v8osJZjgsbI6FdiUqy88I3f3rF3o z55pcOQfbGJX{t6slIPdaYHs?YLz~nqw}=a3JZLe+-pJtWXy6yVVVwDF*yASQWmRH$ z#xg^4gZ@bMR|E>ytsKzIh zpm5SqvemW$Yym47Y7wk&4hTr?IpC8>4WXI(;Gipy`Ng2czk?*WAq~%`nVgD3JI$A&wl6 z#GTRvzIH&0{+2Iw@Q)(r>e8(D&b^h9&v#c1P)FMC7%3y?#82qmE?Xm+KgjbFzxOI? z!TG3II4S~VX~t?e^Uz9WW9OeE(WF>PkXDel>Gd*^YiZ#T5*E!I6|xFastDmh=RXBx z5${I?M%w5TxdXk-NFt)XBbq1$IQ`Zow3vdPNI4Wg|Fq}JH$86<*eKT|A3a@SUc}!Q zcN?SAZ=$B7E0X+Asm&|lD};(|fYuh>)TsV2AgX1MZ7N+F-0aiGk2-2WAXA5-wiUgcI{`+>D+aUzD9dT%Om1i3lbp0-cy+8hi z_vf_X2ZR3Z_?2NnBI??Sp_?%s=!eqBuZyW}%Oo+XW_HuWU!*@lb=wyWeTC%X z#XO?xg{OagdH>WLIo*VtFz%S_`e{V_U|BA|RNv3z`;$3Tw7Wd$oR}I1mwRcUi)X^u zLf70z_$6Q6Ey;4I-)6dVBh5(fh`BslGM4Y!L#046I5fX`T}Meoc+yU4PFzRl@l88a z{F+SNPZul1y)URt@?;u5n;S>B6jCGq^e^>c>z=fa>8SR~+`QF#wMiIP`rEDUDK4S!D1cP|(e#?NVYdj(U_ zYyHedW@lepd4?`;=7-*Oq~Km8$Ct6XhlY01mN^h`G4f!pVBK9FdSe6sqtB_igP3!j zMJ^;(&qjW`QYc+E&tavA+g&@<_9;e`^Obl$iPlp?=4kgb%BQIL#zzUsSbRksg-4Hm z#%c%oRy~0^XqyHcX}CR6kY(eSgpOY^4BNdcwyJtvk7PYkP3^N9u)K+3E6~=KgbmZ6I=MbTmrHP|y?L2L|dAX7uFAvpDf9Fd>X>)BG zA3d@d3WO@qtVx3N7sS{9Q&Y5YWob!u%+SMHP(a||;yFq=HKE!BB5}CM(8Y|qkkRN7 zy$_zMCGyw>eM5uLH;+_Q245R#rKYBO_&$0w6$PpWGB{o1%I0QoN*l}4>MEL?oSf0( zEtVEPX}E%O1x0B$IRZ45&lUGUfJqYUU8PLb`s_6${?`@sNsM9a(_Ei#4yY04~bCg1MDm_mBt|Y7)a3q5F$zn1|)`y>JQ5(m@r4vmd&K@Ueza8e{;F$|k?T zMyhsLqyY+I={gNU+0K6$Yv{EHsO~M;j!$3&9?*h!#>-#a8yXsd3GYsruRZ`W1wzsK z|2rXrPt-@Jr$>EzavN=7U}Ay9Cw^ckpZw=Q^Dm}%?` zKt>$_Kw#VnP&v`b$jEpc7Vg3*F9XsNu(ebRHP8QUWPBdmDk>gugTZvKvw4pBfsT&s zPhL_J%P{fTgFwM0!2eLf9C1xwJ#bjzBwPY!l@XQ$@01=&!2s|582P>8R~+Qg85th{ z9=3Vnl`8H}17oBD-lwcUnF)je`sW4s0Io~xi;+a~09tiSN{asHuLE2F!a0WfJ-WNP zzP|gmVelG@US( zS>gCg)(1wqVPk%Ad{&%p@c3PMIXeP@_PdqaYN!)trw8U2U>KHl60kgl^4fj3>l+%f zfE#JK%@qGM<-wCA5l^mFr+O{dTyfR5dzaiDtJU~t`gAr}0vYwwI z#)08sJRG2=-gU;P3J=GD3wjIxcwbx`L4s?86&C}O_G5-n5^>_H6m)xfd6^ES3S!~n zRx5bJWppQTnjHWicm-I^Qb4^{o+-6~LDO%5l|UvVOXM10i}Xu!TI(lC74akjoCA+8 zU_0uc*v0)*V~K~rWVzkD<^*xV7-n!M#vcvbrKW}{SZ~B~1o+K2cz;4FDxB;eI%9^# zq_FzPxy-SEpYQ>ucz*!`aP=cQofpIO#xDjhb68x&{GgEbtbh09>K%_<<;C(_VBdX=%9MvI4@wW&j^_Ur*P50Lz`#pza{X|JGkX0T{!WG&zSc(%akA zVL*>D?TdYYt3*R|`}XZM8axUEdP7 zq(@vQpcwSD_(esjVF0-u02a|{X?U2Jm>wP;nLzW~oUUSo8DfiyNSMwy0hInZ0Ina+ zo?tFO40sKp=hGg>v<@))mwx@yC^Mt+zjA~dfonCKUiwJ|S-^Q6x6G(H42J6k1O(=E z2^PW307lLSiugW0eE|4EOatIL_FueI1gN2;fx%sAwcwy2)YP=J<&~8{02F?P7zU_v zQJ{<2OoXbwe$4@w5dv(AGDIh+aJ4wiurK!33``0tzEtmijP5#-l^4E*+ceG^WBoW{(R^7_Z?&kV!Ksz#V zQ>Dhm-2pCQ5K#Uo;pybHVX+K20|Ec*rtia3@Cl@qDw!@V9zIu-smeuEj} zi#x};jOiXLZ?IKLV&JMBTK;1AUmaos1Koj-x{4MnG$Nv8ytf>lK43>-F`?EQ+%DAg z+Ne@2ef|q*W+e8PMp02w1ut5!(-zf|VOYxj7{EYvua{APwD0)u!nMi{_%(F2v`9|% zS3~>yZf<-quWxs>=#aT71pku-3{&`RF`KC}JT+p-5z#R*$TfPAK!Th;PLRmjA4lg@ZXEB_(`oEZ+>cww5=&;)k7g4o*%&WV1PS^C6W1r4kiZ z3Mvq3Vcie@Zq^38&H+HwO<|Dw*d~-4FDh|nloT@ ztUw-ptnH6jZ4iWR1IkDeo~`mEP(7c(hTsD<{GReDnxq5}2lj3MXgAT<)?7X}X!asG zJUm3?*AP@WD=RBpat z| zob9VZT;>3#5_mF9*#3zb98}s_Y`q5>fn};i4u02qvV;N!74-*rE1;pFWdb9K0Ihwc z0vdaOHAaFKB4&-A?}jVfFvK;(%I0c(T;cI+9>Hw!DzX8XF$Yj`Ad3#{EJimqiCh8l z`e*gaJCJoW3Z046rV)D{!K-GSd>JQ9VPrU0xuhkFhjSFPpK9W|gla003rX0LR$7RSc!Kvca-i@f2p{b_u% zo&=alKF|lc%PkF!jZ%f0Pd=*}L%>6XfO>m-sV7f3fcwp3J<|5u%)r2afQTqCI+_4F zoW}6vNwyj$00tEVf-G(g@F-8z)rr6wqA#V)D%}$U%nnL^P~89+A_Y$cO)|jXu|E?( z(-ly6D=fcLR^i+{Ai@R&kjcq#TvZh}0JM=po|sGoUI3lNY_&H=l_g%M)}9)1nG?eu z0I3ZEfaiRX*!%$WR-rSCg@e-pe@Xp`q|;C>WGxUqhY%P)Kg$sNS@Vhv5Ue4<2Kji|ByCPv<*HUw=^}Lr@39PoJ`#Iz z@b6ezSpXte3TxGb$|%u$G}!v*e+Jlp08u%m`XxRBBwb=qKl-~ZCkN8z60n}S0l-qC z^1-Hf{~axs$8reS0T|Tiru{8|x74Y7ZBmaC=bf9It97pP3Sj4Ckar&rxbMwjXa5L& z;s0;KJPmvZvLOCw{SYnIt@=4Xcj+@?H(lAaV(kc|dMyMr4GY-J=m6i<*;9G}zwZH@ zq66Tu>D3r7K5xw)7CFL2-~x+L<62h>wHbA8Zte?&Ly^C$aT880 zMZ}bpVY!Nl-@bn@Ro?}O7~w!7dwI-1DsWT^2Re{W$rRYQ03^Cuo!J1O=Z=uWZ{2e! zh5Y@ARoL(9JdIa8!LK&mbDbjPw77|;t6AwOkVJYwDSV%N3C=2ACtm64={hYwp1Egk zu*S(Ohf;M5`HJE+S-JqfT#_ER4S51U&a{9?SKl}}KJElo=V_bmsp2s$=;(>=Px$)? z(}vNFzrd9Ho**nBpcC)+^Em?%HkdE$I^}!TFv3pkF43(jQTb={{=)}+umPYB=hxGM zhh`)J8{qpS1;TzOBWK|eVBPx3hA=QNKKa@-0vSd4#viiBU2(rT^La>RcL7MxxBJ3V z$C=wO-PIaD3)mw`Z0@eEyuz`J@lPvWFFz^fU#ZRk9u+x{b+qzK(e1sxJ;dr@oxFpF ze6%rKJB`r>x~m;H)0o=Y+9}m?#|2PGPjrvsEyEKWX#QEn3b0vHZhTk(1*03xA7H&1 zL#W_&;x^KSSdheRb=#aPS$P%@50AGoy0Hi=(Acf|GX!GN{NcF1?b&QnD^r1GXew?Kxy96R#z^fZAu&u166sn&&l zsAps^L{VD;piBI4|6cYNEfE=h7ub+^<&2DIAafItlD-8ekmTlva6bAI z;4*2V_xq)YWd=X-;@n(cvX{MRy$u@-bk;IJ)O!Fj^Ie4s2cjne3S@9FTcAc?mHn`= zu+RgDZT$vGySuxQKG?R5aN z=dwMC2Xcs?;<(qG3#dHzfQMJ{$MEARARAWzH3YW@%1~*5X>kHeGW=C40I$BlMIds8 zd&?PQagW0;vhSAPok7JI8`G+5Xbi9-P}W@%I>a)z^9>{l3JRci-hy@q0|!p?UVDw7V3IEw6QJvKms zzXiml?%&5O0KxpWb7%Jk%tOwa6QE#4z_kZIA-L7S!NHm=%ptrGqL#L|!vVa6C=*Hf zRnY@-a&lO9DxJ)Pw~o3g19@Hn7FWDh7RK8bvV`r%wozLwAGv?Iw zwK$cR;bD{VE4&)Z!vnaI!;!N#$%_{+s$NkZdx=^Or~58`%rgZI`VDYl7N>XP6-aFR zA%_PcxNN0nzqhuVv+>R<6KkYyg?uwleqP)KW?KEM+=(><>Ww6X)YOqlN#tNyLd(ZT z3haLXH?sn^_W&@Gx+F<}9P3yyJ$x5ZxR`5d;Tt6+D0p8)WNwwyrskpr5*suDR*r_n z`E~bz^0tgAWWfxL5pa2V^);&S#|$EPbap0*PHHYeGtl_($P%i!humV8pv0k6=59(fwCy>g_M0KD|H z@;peaVg`*dSS}`C=U|rdc`b^`3Z`9_`7>itHoa z#0f7fJDVQi-%=6zN40pu@(h!+_G|a({@22njR?$mW4o!14a@b_(X%SM3=z*!+ffop zf{`*q;VL_V7*D8WXLR(mjR(-D5@xu_aruO&ng`j0Fb*XCErY#T(DWZ~GK0iis2jld z=;6Sti6V<5s(YE%x6%dk>`|P-XiIs%F;SYX9eN~$ckToMdX|=hz?Mw* z?g1w!Aw(I! z_Z}5DTQp^%VKbdl*l%yDlLmbv@^AvKlzO;aXk16~qhzg2{e-ckbQ$0Jd;?zGYw^gXjSuzl}(r;Mz8X4qfH-x@ok)KtJlOm3-9)~Nw<;j<#HStAQDuccb zY|1A*{6r4F-DgK#WE3+rCMUh4#eTitA(Vr=ozzHy683gQA1s`xOMG`}*CHYqLE*an}}nIg-kANp>}L)&HA zRyH#wp0}XPOLu1Tu{%8?+4~8ufF|n{KVXpt55QV z-hcmC#J$2tG>f6&3=fw=&ID?#USSJY3J5h zDcOqN<8mZitLj(1F$Lb@2v{M;tsx3$#}#SM#^+{_4eA2G8w_q13c?(yD}VCq%v7F2 z+(S}_Fk3bro@&`MXHQ~8*#RAN$m}FY2*i5wmF^|D(+$$hf)miKvwaiO@L}$@KPS~6 zD`Ngj<@|<9g7gg8(Z!_`K)$a|jBr3XlZ$w8AuQ(6whKh5ppX#+>Il4+_rcxsqj^kZ{W)6rJ4xg_h1jIox zdFHaC&O6VNSlOAFBy4PKLN4W{;Xsae3Ba%LVV&UV5-m8=@&H4eA7GdWexo!XgKlp%7eubxAz{DwjFS2 zpqDR^ChARUHIym|0%d^J-Oa5VYV;3~dp_1<0r7L_Ke|8N46-%fRxw)*G*2iayNgbE z;AJ`>Xeg;1R#tmV>VdzVRW+F{Myk` z64B4x*mwt#iyj)EAiYY)y_=@MP2>ZFixgI%TbXNX4!Wq@baU1BW4?aU?;3z$QV0^MayuXeGkiS-I`LXCr-7Yd1S-`}GSz zs1d#_Bzo1h9ON8e3LUow)%?4}MD6%JyyGvPV1ma9Ky>m*S?E_wJdA7a>Ou$FE!&xq z3PNT=6M}Vew)$mU-x3-VWnnV!D^f&18gBS~QBi8({r3(JLx1D7o7>yOL^7Zv2g7aq z42N_F2M28+79A$&4l%pnRS+8~?)?Kq_W*hgK*~kOynQ!7B_DB^0JPVL&rgrjCur<57RSw-0XkZ+IOK9TdPbdwSAw}@%8o@FE zySU@M`C0QcXd9(ixhyIC_s;_05ku?NjwTgSGhzc;@_)63m>p874ouj3z0u5sckkZy zq!rruUL4nRr-7mFk_r-Y7#$oY0m#?-(6VdPes}WAv3G20s=>1DQ@FGaSPIH}@vvk9 z00Uh$7FNImM=mM05e3hSIUN>6icgOPoK~^GxGd~8wNO&&6nIyMr;I18Zf{?zqBFvc zgX&Zm+S}%pQM6d(Vm@_U4CrTI+R8CHI?6IDlO;zpm8u%~7tS6W50=_l#D_u1e*rnc zBL3k4qBg8+4dZR}PWc5=yztk6I{fuuEjjCx5d>A_>>6Hq;f^_k2J7(xLg14VkdtFU zlf9U4ykw`E7b^SkZ86wQhRde_@`e3j`!y<;*}~jgF6wSO7*Z+a(XbCdindMfo>V_= z$NT|W>+=t5+Zjt0mD>o9Bf5>V%E%`(?+< zs!#$9Mo}8I`pvIilTB6<&;6$}^-@@C4g%~UB1#BzAcx7K+y0|nHo0n9taC&~5QNW8 zc-H{7tOFLJU7B6e=F}iivJrJ1?6P}^?4g{07Mc~x-g-p@P~)P*uJ>@j=>d%85C z$GnZ_6R9A45??VM{Rs^Z??5#?0JjORXqLq@^S)i_!A$R9{+F)^wrCleFqo zR|?J}z>@+WJW6_=VwOQWE`IMrvylI_h>`a$uPrp`o@CcS5#s?G-4XnjST?DDWQXId z^x2zRS($-cJ_pf2NJA3^Stc7=v|zeO+6c$raEcKFBCxKmjzzhq5l&4Y2nD}=`$>t= z8v+nQmQwNA795OK```Q{1H~il;UNHW~So*zTU_E#TchBTZxf{lZ~QsM zU0u0@!z|F(fMAOV_>fZSeExFrP~yQs`MtYfGt!@j0w!?A;8F*V5*5s$1A$wvBU)56 zVFP!J^RAc=Iov?4QE_j_-5FlkAh_^S-5@j|3x+|INGiR7C`ZS~mvEU(phXBS6*uqb z-w29+1Wh^u_7psDeKa&Q1%{1$0a=0_;Pr|)CITrD39mD=>H`}GaX_G)P;O991kxgq z77KiI*`U>S3(i;tgoNnW+3^vliLi)l`4a1s-o3+w79KXVfe}3~=n_MnjR7r)p$zd4 za7>g~KP>P1+R5n&oRBO*rbQfFLWdC{&f)a)R-~+19Ai6g7l@68g$3);9Bk-iy!eg5 z^WQYQ%N7yhaHI5cm_RGo;ISO6VmR$XPgZ&hN=cGf2BFdG>+2DJ1H9pjT&f8%EI1?^ z0hsl8u{J)8$@C5kbbvBys*wCn_-kZ!UJc$PpB-WN=;X== zIa!vVr;4r-e?s-Lb-1p3$BBxaeT@Tk)S3T2W>{1!D>X{+8sj2c?n|SqH65b+b@t&P zg;pHRx%2E*X^G6xv^%t;U6cRSd+$4wV86Yi5X+ztV=NHEpb$&^|MIOLb~gM}j{NI& zY4{~|267enmO&{wGT+z-Fi^*322SHI$SSua-@7h&e;oBsMcwajGwY`r zWwTwaYEq1%7`Xzb_8i5>W;3f5AJa+cv2a%Tnw6}6`%xz5Vq-S=z9V{+eX)IFAn=ma zg5DIZ8U0U6rL9hF#5(5l*lEXe76yfx#AWHxOTB|aud>z^3(M>3v?~ez^&~V+rPdHZ zvIk5}Up|fZemK1I3*>Y-l9=Z|45<2&|Ds}oiM6-Ok$~YLs+v_Y`rTa-Ja$2 zo6KN1WbHvGCT6fccZqM-`|ez7U+%|}g09Y%(X5Xi5Pl#e4q0uSjJrs5BTvln@}YQ7 z4&PSol%-f3)eh@bc%ZwEQ5B@=$kJi;<<45Syy7g3^rb%@#c^2vy8p5A`ZRg2dZq1e zS^zE5x9EfDc7{x+3%kKj>awOf5<0yxx?}w-!us<2V-cO5UXL3Y`hIc~b%s5;_4n?y zc#e)pYlsV0MA2IJy=P`Sy#f`6XH%!)!a7%jWvcu|pD4!IbN-a56LpxPnWWciSW7HWfh@KLJIbdRghSlz^^i1@v<*ye1B^AE{M7Ipi>K5ue|AF7dy>G zgY#lTEMpnVgOeb|mp&#_;c}Bzo9!6qf2WfET9+-Jm44yv_$^0Tb$-ZmS+*%`dm|r< zk&1ZM`VLW(vkv)JdxAVy1yMuys_&YfewMhNxIL3T{G-_nD>tL`!QWEBgA4woMml^M zdZv3XR1~zs5*RCO*&pXRJ&nC6W>ocX<+b}zp4-UO9*h&qW56H2!*8F}jD)tvGuISw zp(glTd_j6UC0BD|lIyZ(#8;P|Iwas{kK%iL6;+{1wA%(gqzclcd;g4+9 zQLvnSV~5Xd+c$E!s^{c?o5JZiUQL|UYu}``QGH>oH|IIib3*)m(Pb0WqOn=t8w5{_ zW5*-dt)vNakZ;YqOTNb9qF2gGc)HtmYu} zLN1nP370W;;pS^u&fyUDm5&N)RqJT`;JXXmg^830uG+sA7Bhwj{a^E$-87^c%Uq^E zyQ$5e)wxh*ydV8L?C>D9qU5GanMZ6)n{Glh@Ll=cf#5#@r%}=8t6nz4xVqk#u7kc! z`wfNS7$O3-Z&y1X3Oy&5Uvwtn_NSsh^U2HT-cXpo*66=pwz0_{T3%qrEAh{ZPmt5w z+MKy`^z+jFwSerRCM^2?0gt9qrpRVyRc!=LYcfLxZ&!`Dj(iVaKtPxVqZ+r;z>C58r-@f7NQ5olzGIR3krh+2s;!r`FqxP98>K#HyYYwg5wOo z=4-GT&YZOznn&r=q{>WKu~^$WFtQ4LyN+SN6S(()bt@;@-;&c^R3r0hj)h;8mM+RjQLKNOIV`1>OA{#P?p>Q@ce7?@~5sNXim znn=5usNsFGIOH0*rLI*6zVg+Moi~TqAJ53@2}_9ydSc-0wIpscCZ4`%sZAMtgdW-z ziX2gpV@hle3>zArZKq8!tefbynuUNBuu8_ieKI5UUb#M|ho&)+!U})M^4jN9WC|^x zh~v&bdId^?p;UPxg;ib8VM9%=L6ey^1;2)^fU%DL!bTsAnt0z!zMpEetSDcbq~e9Y z-WjcJ_pUwo9{q(sAPWhLf(Xa>0L`+7)oSt$TUgiTBUgr7=E8a}cdT=_2KCBrdUVGP z94XSa%jj#^RMs9;S^xZ3VDjXa$(Q^UTCrdc!qwWr1tFJ^RC69vp)J}^~k@S))z+BP|%4}a;!EcdzKp9r31lBP^31 zj8E(Q_nHd56xWk5Izkfl>Kkj`VlVz>ShGSei5#{ZdSKR9s`K>MK9|cr7WvUyaUuKc zMAj4e&t!obm(ydF`l>1&AFMQ}O7hn>6sHgFp@(Y!c&+uPU^dbBzH*cv%XMC$v2u^_ zf*JX#1OdIryXgd}-+0*JVc23$tmU~5Z}T^?F6BTaJl>9VQSTFVE!(TaL( z_-tEfNvDJXNtD*IXbZ}Vak0k9aW zx2!3pYvB3l!Vk&IPq>&4?&5)sdrC20%nY2K7~BuL77H0toISs_=SGNbY$ke!_|GW0 zJEZ=p!mnuBm8VvKNJ`h9d`E#Xae=k;tXkDsPSiri`$O~9Q<|aTwTnk6GcUg1A+mD8 zje6r-}hd$ zf1$K*YJGEmt0t$>$#$PPZ?#oRowxAgYcp=UEtGmS-EZw?$!_zwPtym~H}ROLYlg*Q zz64E9^6)MeTD1oX6!PkNy-n26N<(t9`^Ij*HG^x$IBa^FVwZEn9gLr-fg*R)S-ODB zCjKgGg^{};?UI&+x_Iknl9{lSyrvJz=ClUSSqdND_%NO4iQN}dw)$OFpXbc&F@wx@ zw%K-OY$`N0YbT#NHy3d9ArF2X?#U`{E|uq>UTvi>NbKh5b>GIp!tr$4vd9SwScrb|SkX_8 zv;L;4IpbDkb@`k`r4veDzd%Li{w2SWQAN`FrJL_fcbq$ie`mZ>ahXMT4y5L9U+ua4 zd-rs6K6-9qlv$AC^78{rAM?vCZZzdsS)5 z;89wWPu=&eW{OWYj$%?})|q(?=@mhjGpXJ$*|x-K3{&uD#X;H%Sb)ox1HKDAgF=sf z#A?&KW)XTMsM%sjZo368Ob=AN?cs?VJ^Ur z9Q&CF#N?bc2mE}Q%~XEPzzbqQ=Kf!0iplFMJyP-C>9=4LEr=UTJ^=B|Oyu+N%YQ^Q zN2)xCYQ)p{U*lW60`dvx4C9HSo+LvGToS+lRtMkE2escHdUlJ2tdNWw z)`q@I*BL5Wdv-8lS0x{{Abg|dwag}x;1#;f*mG(3^g3SUxfoYQ@?t}jCf`oJbj1Cj z`#x0?!|7(T%uU$G!oze5qd&M|5g}oBPpR^9ng1KJGtY3yZpP^!D*o)Vs2duiPX(YwOSLoSm6*jz$2N#dME!p~^^<#GIyq-_jE&* z-yNHT%mPa;o;#;1=HB&D#U!)B=yj@KOwJpQlGsoEKT{Kr;5${g#B6SWc#FlLO7bY<%$PGaJr$nlF&l?dLV!Jum_R?_$X?Aj~ zzCLQEpOOXBePn@(Q4IH+ZPcDS7KxN8GH!ZXNy6Ho(2{`|DLv9{61ylJH44|MLF1jt z+`*>L$x2w^_mVnyGQMZ;U5@EoM#>5;p2#pL+;f52+H1J0@b93GDOyDHjuB1cPTSF) zf@JdS=4J^KOtgyoodH+(ZD#*_W{(r&ptbF5x->@N$cn|zMytGooG>!saq*N3c1E4js_1%R&kx`GHCjfE?&Wpgh=`H4vG_ak zVXVOM`cJ=t$m3WBYIN8m%{?pr!tXhQa7uigm>*>b8f(57?_$hnC@e3?a{BpnCNZ}c z7$FC7`tmtKeIySG3X&yCtQ~Ut%B}NG0@23}ec2BkcU`Uvsl?Qu&?RJ_ls)HaMqXPq z>dXp%+B%v<@#=unaD$jSjafetT7UJWm zH>>1C4ky~*iRu&nfgdTkc3Phr2D;U`IlKGwNuB4fq93&yDSzjGNU+lzGhLnbh3wlr zH?6RcuFv-xmuC){Zt84i@6dxoMCy;Z)MX?b=ub(2k9Ler$irKx+R7`s3XVgkP| zAZ$y~W2HjBfLd_G?r)~N>P_6cx-(4Pk4QZiG@TE>uYVqwGI&9~Eli+fdTKVH`)4=I z9g7CjNI#bNK@dg*a_o3UrYWhSeQ`*Se{XKBI}weJu}-W$P5Sqr8&vh@Gtd9LE9Q8v zvRnH~q3KIf*CTu;Q2|==y9C74t*2+~nJ!MKiH4dTNotO!ka)lA8tqxH?KP^Kd;ik( zD}D1RYl78a#_>S3HO{@E^-Nv0eFxKlUN9@eSzp6Izco5)!EcCqz?%S#7*h%>&`>Rh ziI(r2YV+!}2)3 z|Bkv_^P(i@_h7&f*(r5EcfnOk1tK>3em|rL%{V`_lUVz!)!A{vbG^i(S9_|lYJQ<9 zKBX`qRd{XXf7>ym=MN3J62sQ2sXz>|+WoCXx9Ce#Hj=phrI6zVji5&bMWKXwv%1Z% zqVGkhaG7~gYpvzN1k|pr*_Nns$Heo{*g$(Y$t7o$!=Kg+&>B7dOs^Wx5elGH$AGi z_Y}O?p)V%${M?6%I>n~2v?S{)ooCB1XdtsPtfJ$|1@&$CPu71Y^% zgQwn8_c2j_w4b5%MH`FAD?Bp zt$?z@%rO#mk*SEm_DWZ%;2}|0H&Xty?aV~&!^XY8lQZI=Kk%~76Zs_Dsl>18{UpC) zVNt2Y>4(pkm9jz?zA+42(vTd&$~ctuy%T1_Sqg=mIk(7=16v*#hMZK_Ze04^{N{Ox zJ2Z0Dd~dXRJ8mz5*K_Y*zEGZ_=1_m*=}^NeH+4?>;Hh{0zvK1IbD6QSXNUSaRF6%5 zkQFEKR3_V!bq*C<%}gV2HCk~U{V+V~y5;jb+zkIOalsBd+35KpRWfI8y64$ctl^aG zHhW^MUgDyE=wjN#lT~EJtUtRv^D`|QQ7BUeDWzE?eLHqkyG)YtudA6Do zerxKa;x0*%|66Gv(Q1R^bQJyUQ{}f{?HXd4Mn6q(g|H4fKsJ* zLRBJN2-2HG1SwJ?EkF{;9^Sii_kDL}Kin^Oc4s!9k~29aXYxPiSO4d<%iKtf#cXD&#@N&ve0J=>`B1lev)>W;d((Lt-s<}KA&TdTWw4Wig-(TH zZ71f_51o(w0|Jni`d~JOba8ARK-)Bfht_l>(t(8!z(CXZ8* zU*pG=^!R&npU0*I9@EwoNWX2cixnt9ji1@?rrP9$^yjB*-D7&DU3oCpL5Acv<@oV6%QYd=%*njfe<*u=M=e4B!>POyM z5p^v7D$V|bb*#(>5R5GDBQ@KiE223+lTxs}Kr%U|0$sL(xPHr@9VhjF^&pD<&!l!m zBu`T0IKez~xh20c-Kk1ZKYDRNOVC$I$A(g`2112~2;x-tNl3UDL66m*aw5-3|7_6i zqMEqAucibD#W8VRwUgF5QP^dYGg&jM9>8GXOQv4q{ZX7@5-uA@Q}4H_Z$g2=}b3X(gcZgH5Op9H{CMgxQ@In~o} z_k1}`47spz_|lnf`ol>~>I?{OM>`}2`YCfV+FyoQmB<=|FwXl88BGC@@owHmqTaWA7*R)G z5kuLw^!g3u8@8mxc7y$=E(?;DP2!5I`wc0r z{lxuqY8}u;G8IKM9YmQ6>%04(WiAK;4g5A;Kq`pq4q>a1qSMQ^exmqw{AjA%u!wpq z&{4phZ|wcb`l5D~dB?V^ja2%&nIsYHpYc7Fw@ciycg@1O=R=~Nxw^o%Ye?aFN>(Tz zA{?6DB0BmYsLyjLP?K$I&t6BU^0sLcYG<@N?#9%`j;))8p-X%GQm&Ze>0g4VT-DAx zxK?=D6*Bori?;Gi3$xD)Dr!RmQ1ei;cQvD8{s+R&J@cA46^+xE;Foifkg!<%$a!fZ z-EpI~Z75rnxvrN2bHOv6x(=2|>fg0BcG|oeSWyNx3(ztDV6Ea^5>ntMKunJROSUn0 zWvGBt#_})BZ{F4t5+?W488eBc^Ua9udFm!n-PG!;4=a4F zDcXK8Asr)Q$q4grD;wf5>3liZW{DP-3?qLpIw==*+y&lsgq%HOcj-TgaP5E_z-=#Q ziE-ocRm{u;p!eUG)`+V1Kw9OHeoe{R8FK}BkJX3D41@}Gj(AtnyZAeQAFmH7qk9R^ zcUWc3HW}R!j(CCdZ;w8TxD^V1O|wZWS~Jgb@^mlT4)wV_g92)UiN z3i;+Tr$puAU|0)`3Y=Hxj@E{Iv}g2#AAMVx4k*|P_bPT>6Ye&#F$^+}AoNSmQ071S zzNG!qg5w!*Dz7r!I)HfVq=km!?J%`TpX1aWs<^py3Ks;ah~l}yftLQoJJ0|o7E zTQwhh*xZY2t-l7FL`%2eVeqBtj(qEy+?S3?O9kkA{0Se6Rum{XX)VqRs+$6$n~1(l zl`6`KR6|rv7Y(b0T7;PVc!XEjUvcodm=rX6$j4Dm%?*X!2^`xCc;AT+! z7VAm=z3rsu$J7lSA-D2(?0mPPm=EM^ZNCln;!VymTdCan%>UywwF)lM`p=(LWz=Cu zqz-^;NXk-XzmT}J*pT~&R*pkT6xD=Df;D>8W#;wxJbOG!OCGeg?)*buF@j{% zBpXOyr!i^oY>z7*^zx*|Nb=)DfKXAi!ab-x+<=7 z!|ADkj>KvywT}0x2+b_>>y)v@p8gHY8!^SlHXXIr(r+F81SGLg&tG)sipa<>$4ojI!N` zGYDq0*kQ6JMk(jl4Bkb2#armw^P}dDBTSjGbUV>VCTOgBIn@7c96lP5R4B1c|mTHgc zEd$K-*@r)i_%a*a&X^P-i^8xECl+LnK4!9E!V~y1Ywe#c`fzp-Z#m~>%|W}%6Ba7H ze=V;M00qcrV2;^mOxv~kfbZ6Yd(P?h-LJaCyV%a&o+uId8i@E$w8Q~X?|MPM2h)+s zf8ed_Tgoq_%Xb!a&8Pi^nmg_=7tDQ13=m$azuft>V5UmT-#EkF?ktMtfFllYvzuJ2 z-uxmxPnvUmv7cP!LgwKYWPJ8{-@yfj@rNm$u$#>o3}c41;$51nm&sNIvkIw-1rFAP zK71u8IC4!oV0;Dv4SS%q=q=6AKOnJ^_v6|K$&*(xv@yF^HbC54=lz#HP%7DOkNGg} zZDV;CH|TfGYn*7NiFpvYE_g{w?E3J3$vUW2i*joqY&pNaN2$FTM$MW8_^F-p_7HrRZ(y;qsm{={uSMjbTq{Dnb$(KvGkvu8cW4bVVqN zdmA1u3Mk){$bD_{TG2iH+hhFmLKYts#&jf!okM70bMLnL76JrA7f_yg*VUc>PzyJb zcr#%~`g!mRqvw12VLl_q*srD?*gT4obY8MSr}=;m{p|00GEA(mf@$TG3-z=(8!&A(;MOa;3f>!_5GpaDfsOM zEOt8^ABeWr`4>TWu=O7fw%|WI*x2h|TU83|w>0u&*^l}^_Vk%4-)y)@s%&$cuL;Tp zS8w1tHc~r_GiUrp9RpCo%o0s184Gy)J&IMA{c(pztlSNl)xPPwS$5~lLK!VQxqj20 zsW8druH9j~w2A1BFH48BXZvh(-D$VY$w{q+{b*waPVY+ME~RJ&^&*SJ;V?7Ak24H; zR;S}^oqFlI)AcNL@o{Txtcx-h{1}mT*BK-6+$@MSzCt`8}=QD}Eq$O2F5QspPHU@0N z7!^KvVCk*8uNC`=(YxY$`J7*M2C)T|*3{yc@_W!&vgA#i-Kb--e;vV|MnEhLLG&W248AvyyFjID~IGM{3F0JI#ew z4r1wzmdVp<|2q*sntXWm&u?XcpQ7?G8`r~Nx!eLK0EIA6j=pZPYXLK*X;R9V$CzH+ zt0%c?_~QA9k2A-gh7jQynOrgXp@fm`a(N-Oke90F{HlzONe5OcF|;&=DP_9JElcYly3eUY#G*_PDeC;9e9(@ zj3>FBYOyt%A>OnBofb^~lSh1W)L2#|a*fPpo}IbxZ3e}k-^M#to8O;dwTU;5$ewhB zCE-%PlHNpj!*6HQVX+8d50$$a(H0E|h8rd6SH=<0c;Er=I)jsE1HGvkTV@e8HD1}W zQKw?S2mz)3nr!C|eH~Q{4$OJ^=Tdfu)NC&i%PL9gB{Y*??+kZXbb9dYa&R=&4vmKj z&*F&EMy!f4plQ5fzPmY(R0dUVBA_fLtN9oUqzUTY`ONS0=%LVc8FlyY{gVpR{U!xVhW%YAgrMC_5**y^y&scVtW`aA06erc3DIJN&#tX_S$!pWC zpVQn00A%bRqKeyi*wNjyraerN9*)1|oUrr$FvBaDRedYGw&=IVpmIYi5KMan2ymfw zJO2uJZviO%ABdOKj!$1k=7#lit!L-LFjBxO_?|oA2v!L+L@H2AJ|d#HZrCbEF8r47 zzaB%Vba#b^%jm~K+h-zzHGHfNna8T^`cK?&A4S);_7+sPiEegV4GyQ+!w|Lrw8hwt z_jBWuYAV24sKO|($>ekb)6z(Ok4}N>Bf{Xex5Vrplf{v_iR9{!hMi;-34B*8rJ0*C zSXB{@656i7xsj{g8^M8>KJ{vygpJ@CGq%Q%Uj*Iw`rk6b(47&}0WyuJS*~1s!XUSZ$*wdau9j#Ily;7=*aM(KP7m>2W-*Za#T*wG2TV-B zz=a!E2*2t?RIg3+W2&l#+@&FDfl-)>7$Zr^A!RPz{F!P79+m!{c_zAU|kb-*#g;)6XVUf zxd0gCC*q#1NpaiK=9hYJGzZ=gW}pZ-BHH_}TKJMe@q2UOmtU#U{eOzjPEhLXf5|=l zUaIdgEVA*=kRIZ0pzPo*>H@UyJuLB(V-GnuXS89<-oT|?8F&~sq5r8SDeWDNT{BeQ z{^6^qAtEf{u6pPmLn2fpUjp)C@c}3p4fqGRAF`o>EaCqA9$W7#DK%|g3V;Ss1Eb>t zSrW&Pz}04vgH4C%vg=fCU zuriX)fquH-fdG>q@(eHfOfvl;VVkghHqBKOxYRcV_j`e`9~NngDJTmYz<}q!l?(wU?Wfg4xDjz?TT z%{7iReRt>&-JAn&-&ZfC*4{jsgifnMiVZC#k198eoeL_9JyT3J5H{auz1 z(yV{K9!`t$42e$;#i`dIFv_J|k64MXPrpQ4hj@v1X8v3$D_A!pDv& zKF0rb1~!8cjs{K-`!@pj&P0~uvczkChm0j*1R*n!J?NT?wWU;Ct8Hi!ot4VhY?RH= zdmb6FF~2~7UIV!RoGSmtcDLa^bcPr=lQ@2ORBN6S`Lo^>5qPv`q5-l!3+<j2 zx{RGGbiZ6-X}hR+h@X}s=+26rPxc*E^+by1;R8bK4k$z{^CFUyRwru1#ZKzerwyE} z#U0_eo2cVYz9aDajZDKL+3f)iA^QmHpuRI&uBPa+TIJ-P9Ksb~vwECCe&}~Gu+E?O zJOyTn6T?->Y48us7?DinEF8+OylvlohM>2{=uA)!6e3xGz)OdHfA~d+<~L-cq2d!3 zRaB!ezEwn|+mY7PZQxJZ6}G}a#f>C3Y6Y3`VDGqxvE|!KANQHbQA&6#R;3tmRaA^0 z#JIm)+~JfJbug3VZU1c+wT}EWZb%!chRkmGF`Gc7sq^J%okckyH|W9ZTkwrW!VINhQRLGTU}o!vQx7Tp`(|U@xNa zq+*9N+lOHwC+Hn0LLLt6K3wYRg&4eKG)vt11YDPYn=`uyMpWK-?J&9Bwu&}fOVouW z$y^4dz`)r$MHs8nmxTv0_FNEZR`*Rw`Ew;QUa2g8@{NoU_u&5|ZA(nncqW~&g2X9z zaRoe~8L5^1aWrmvTmD)clZ)>jn5(Y1BE%Yfbw7XcbnfoyDr5S}IfKD)nZz%>!T?#* zb>chU01nPzOM0=q-=fb=2@qKZ$R17=TH4l`(-W;e$c`wFcyletZptb}!Np*vsas|^;`AQ!Y0s>k!8ZckGp zR75d3X!}F}%I&mF*>4l5>=gN04Jm-%j^v^iBM`W!x%5+mLxmRod;hF_knOrAp@6UO z*pO~Hzrw#~KmSG{5Sw^z=#4+W8a!cm7*L`jciNo19HQt2WOZL(Vo{&Ir^IC6+t)qX z&J{1b?3{aihx(fdgpm)j#KTnq+r}i90%&BsDF14uZ_Qe(ndnON`^MY8{jn!O`t&H} zjtDp^@xu=BjMauFthe#(`}9rIrOCt3xT@|zc2gCztC0G&_lIp^`lzrCFY|r((&U=; zUKAbA@sxLvbO4W28BqycaQ-N~bGy|8|0Ph9ezB|@ZiD%po-FP>wfz+zTQ=XI@P(O0 z14a2UfM<(*fNmdV;KfzVYazw%?;I$fA@{?PUdXI^mF~rqOIm_xSfms2hzY(-hODe9 za@xh5oi{$TmV8AN)z}I?;uAj8pzm|2Eq1cu>#;)Qxr7}mgb{md&%(~2{w}FTgsqA^ zBGug!VW9$ryRt_fFMhofdBGp9Q1Y%w2{qC7;(0llKSO>hW-j7T(`#7=zPfWi&- z7iD1FhAIVXZT4`R#wc&_Twh6+ffIo*Mok&nGAX+L^Q}fu*@uVVjyjYWd z`(oFk#abe6g(;1&JML6$>2lEbaQk#U3+1H8-qO_)ZAV-+88bWrT#JcAOn?z_y4w0M za*KN)`F&Lgv(lM}1gdMy3bW6l16#H#OW;((?M8S-aqnV*uHSVJ^0;_`z1&;krczAZ~EUVsfzCBE)*2#F<3i7Mv zpueyvPq{r|rBBIm53DZu6L2;lKLL#5%2kH#G~ktqX)sI||HvAAa2pY(0f!3lC0uy8WH7%7F^2&i!Qgwdgi%IRbdQ z_2t0T<`UH1{|u0f%lIHLWd8l5fC&JY(j&ZjLEGu32KC|SD|mx{haUohf_FA~^O^uO zwSx}$+?`g;1VoSpOs>)$P;KxH1CZ%o7AqeW(aT*^Bn66IUt*Py?%_{ZclT646K{VJ zU3s1uFi?mT$t3~X0%meTVX&BQa&-XC;!9e2Y{Gq$g#}MVd?ohR_}#epczSs+B4>`q zaRG4Pe?-%Y2dUq@23q*_08|TxLW6*wIAuEsLsORLLk-Lf8fz2hNW@~a0n`K`Tq3-M z%bjOU<*8z8xdn6x+Lv(le_KcYo#FidR>A&f{6&w5t>6JN65tg{s4lDjAWZi9iX15k s$*naC5)$(iCK8etY6c`E|GyWKwc;Le(hQ-^FOLlL#Ncs_`inRJ2CKN$`v3p{ literal 0 HcmV?d00001 diff --git a/src/assets/VueOptionVsCompositionAPI/images/OptionsVsCompositionAPI.png b/src/assets/VueOptionVsCompositionAPI/images/OptionsVsCompositionAPI.png new file mode 100644 index 0000000000000000000000000000000000000000..f7e88f2c92cc9eb564d9785abd5696f5b03d1709 GIT binary patch literal 26291 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 YV{$v2H!rRG&{!`O)t{9-ef`gW0ij+CRsaA1 literal 0 HcmV?d00001 diff --git a/src/assets/VueOptionVsCompositionAPI/options-vs-composition-api.md b/src/assets/VueOptionVsCompositionAPI/options-vs-composition-api.md new file mode 100644 index 0000000..ee2f68d --- /dev/null +++ b/src/assets/VueOptionVsCompositionAPI/options-vs-composition-api.md @@ -0,0 +1,188 @@ +--- +title: Options Vs Composition API in Vue JS +authorName: Sagar Gurung +authorAvatar: https://avatars.githubusercontent.com/u/46086950?v=4 +authorLink: https://github.com/SagarGi +createdAt: March 11, 2024 +tags: Vue, Options API, Composition API, Framework, Frontend +banner: https://blog.jankaritech.com/src/assets/VueOptionVsCompositionAPI/images/OptionsVsCompositionAPI.png +--- + +## Background +When it comes to defining or creating a component in `Vue.js`, we probably have heard about the `Options API`. Using `Options API` not only we can create specific aspects or behaviors of a component but also allows us how we want to build components. +It provides different properties (or options) such as `data`, `methods`, `computed`, and `watch` through which we can organize the behavior of a component systematically. But since `Vue 3`, we have +another API called `Composition API` through which we can achieve the same thing. The `Composition API` is a new highlight for many Vue developers, but both approaches to define components have their +unique pros and cons. So debating which among these two is better would be a difficult one. + +In this blog, we will learn how we can convert a component defined in `Options API` to `Composition API` and we will also discuss the comparison of both APIs. Also at the end, we will know how we can define the component with `Composition API`. +To demonstrate this, I have created a simple application called [`Voting Details`](https://github.com/SagarGi/OptionsVsCompositionVue), which we will be examining together in this blog. + +## Play around with ****Voting Details**** +I have put this section in this blog since it's better to know some information about what we are building. The `Voting Details` demo application stores the user's details and checks whether a user is eligible to vote or not. +I have implemented two separate components with the same functionalities, one is using `Options API` and the other is using `Composition API`. We will go through a bit in brief how we can change the functionality of a component same as in `Options API` with `Composition API`. +>Note: To get the application up and running, make sure [Node.js](https://nodejs.org/en/download) version 16 or above is installed into your system. +```console +git clone https://github.com/SagarGi/OptionsVsCompositionVue +cd OptionsVsCompositionVue +npm install +npm run dev +``` +We can access it through URL http://localhost:8000 and the application looks something like this. + +![Application In Browser](/src/assets/VueOptionVsCompositionAPI/images/OptionsAPIVsCompositionAPIWebUI.png) + + +## What's in ****Options API****? +For the demo application, in `Voting Details` I have defined a component using `Options API` as: + +```js + +``` +In this demo app the properties `data`, `methods`, `computed`, and `watch` have been defined using `Options API`. I will explain the meaning of each of them in the `Composition API` section since we are converting component defined in `Options API` with `Composition API`. + +## Converting to ****Composition API**** + +### 1. Defining ****data**** + When defining the data necessary for a component, in `Composition API`, we have to make it reactive to mutate or change values with `ref` or `reactive` provided by Vue.js. + So data property can be defined as: + ```js + // data + const data = reactive({ + name: 'Sagar Gurung', + age: 18, + votingStatus: "Eligible", + bornYear: 2005 + }) + ``` + +### 2. Defining ****methods**** + Defining the methods is very simple. It is just as easy as defining functions in JavaScript. + ```js + // methods + function increaseAge() { + data.age++ + } + + function decreaseAge() { + data.age-- + } + ``` + The above function changes the `age` property of the data defined in `data` which is reactive. + +### 3. Defining ****computed**** + To define the computed property Vue provides the method called `computed` through which we can explicitly define the computed function. + ```js + //computed + const getVotingStatus = computed(() => { + return (data.age >= 18) ? 'Eligible' : 'Not Eligible' + }) + ``` + Here the operation `getVotingStatus` returns the voting status based on value of age. + +### 4. Defining ****watch**** + Similarly, Vue has provided a `watch` function to watch the change in any data properties defined. + ```js + //watcher + watch(mainData.age, (oldAge, newAge) => { + if(oldAge > newAge) { + data.bornYear-- + } else { + data.bornYear++ + } + }) + ``` + We have watched data `age` in such a way that when age is increased the data `bornYear` will decrease and vice-versa. + +The whole script code snippet looks like this at last for the `Composition API`: +```js +import { reactive, toRefs, computed , watch} from "vue"; +export default { + setup() { + // data + const data = reactive({ + name: 'Sagar Gurung', + age: 18, + votingStatus: "Eligible", + bornYear: 2005 + }) + const mainData = toRefs(data) + // methods + function increaseAge() { + data.age++ + } + function decreaseAge() { + data.age-- + } + //computed + const getVotingStatus = computed(() => { + return (data.age >= 18) ? 'Eligible' : 'Not Eligible' + }) + //watcher + watch(mainData.age, (oldAge, newAge) => { + if(oldAge > newAge) { + data.bornYear-- + } else { + data.bornYear++ + } + }) + + return { + ...mainData, + increaseAge, + decreaseAge, + getVotingStatus + } + } +} +``` +In the final code, we have imported `reactive`, `toRefs`, `computed`, and `watch` which are needed for building components with the `Composition API`. `toRefs` is used to convert the data created with `reactive` to plain objects. Also, when using `Composition API` we need to define all those `data`, `computed`, `watch`, and `methods` inside of function `setup()` as done above. +At last, all the things that have been defined such as `data`, `computed`, and `methods` need to be returned to be exposed to the template. + +In this demo application we have learnt the basics of how to convert a component defined with `Options API` to `Composition API`. However, there are lots of other things that we can perform using the `Composition API`. +I hope this blog gave you some insights on how to use the `Composition API` and also how you can replace your component defined in `Options API` with it. +If you want to learn more about both `Options API` and `Composition API` then you can learn more from [here](https://vuejs.org/api/composition-api-setup.html). + +But before finishing the blog I would like to highlight some points regarding both `Options API` and `Composition API` so that you can relate which one to prefer before building up your projects. + +## ****Options API**** and ****Composition API**** + +You can find a lot of points regarding the comparison between these two APIs, both approaches for building up components have their benefits and drawbacks. I will only highlight five differences which I consider most relevant for choosing whether to use the `Options API` or `Composition API` in your own project: + +1. `Composition API` is new to Vue which can be called a modern way to define components whereas on the other hand `Options API` is a proven, traditional way to build up components in Vue. +2. Also, the structure and syntax for the `Options API` seems a bit simpler and easier to understand than that of the `Composition API`. It's a good choice for small projects and also for beginners. But for large and more complex projects, a better choice would be `Composition API` since it has a more flexible and modular structure that enhances better code maintainability. +3. In addition to this, since `Composition API` is fully based on functional, reactive programming it can be difficult for learners who are not familiar with this approach. In this case, `Options API` could be a suitable choice. +4. Moreover, `Composition API` having a function based structure with better type inference, `Typescript` support is better than that of `Options API`. +5. `Composition API` supports better code reusability as it has functions and modular composition preventing complex code, which ultimately leads to more intuitive code.