From 133ee6d512c8a32dcfd5a1920922e76eb38ec327 Mon Sep 17 00:00:00 2001 From: ErfanKashef <129071476+ErfanKashef@users.noreply.github.com> Date: Wed, 19 Feb 2025 22:22:39 +0330 Subject: [PATCH 1/5] add packege taptip and fix import --- apps/core/app/test/page.tsx | 8 +- bun.lockb | Bin 621608 -> 649664 bytes packages/ui/package.json | 11 +- .../editor/editor-toolbar-button.tsx | 26 +++ .../molecules/editor/editor-toolbar-image.tsx | 61 ++++++ .../editor/editor-toolbar-view-html.tsx | 27 +++ .../editor/editor-toolbar-view-set-link.tsx | 47 +++++ .../molecules/editor/editor-toolbar.tsx | 199 ++++++++++++++++++ .../components/molecules/editor/editor.tsx | 110 ++++++++++ packages/ui/src/styles/globals.scss | 9 + 10 files changed, 491 insertions(+), 7 deletions(-) create mode 100644 packages/ui/src/components/molecules/editor/editor-toolbar-button.tsx create mode 100644 packages/ui/src/components/molecules/editor/editor-toolbar-image.tsx create mode 100644 packages/ui/src/components/molecules/editor/editor-toolbar-view-html.tsx create mode 100644 packages/ui/src/components/molecules/editor/editor-toolbar-view-set-link.tsx create mode 100644 packages/ui/src/components/molecules/editor/editor-toolbar.tsx create mode 100644 packages/ui/src/components/molecules/editor/editor.tsx diff --git a/apps/core/app/test/page.tsx b/apps/core/app/test/page.tsx index 4f20deba..a64894b2 100644 --- a/apps/core/app/test/page.tsx +++ b/apps/core/app/test/page.tsx @@ -1,11 +1,11 @@ "use client"; -import React from "react"; -import { FileFormatField } from "../dashboard/products/create/_components/file-formate-field"; -import { FileFormatSection } from "../dashboard/products/create/_components/file-formate-section"; +import { RichTextEditor } from "@repo/ui/components/editor/editor"; const Page = () => { - return ; + return
+ +
; }; export default Page; diff --git a/bun.lockb b/bun.lockb index a60456c8e32234630c049483f5de0158b53c96a2..12219a3f6e1c19b1ba83b0cf111b8f7dafb74baa 100755 GIT binary patch delta 151172 zcmce<2Y6If*Yl5ZEb%==M($x+>>+8r{_M=f8&Wyt=~WV@jKsqy4^*cJKk3?@zdvK4LfRHmoHsM zpP#QB+d6*3ry-x1Uq?Dlc_838&A=&OeQ-T^7?@Veaaw=};ElkSf{xP^tOqs*pQ>%j zwY2mY{B(w) zj!y=q=&Q(8zAUHnjQpJ9qIPI4J|nlRxPbAcz%`J(!qWWG{JfG_@syeISaC_-Y};@S zC=0ZuwFck_xD@GRagQB&PH|pADGipE6=xTL4H}wy2dJd-Ux8Ar3Y4W@0S^bC1SwiR zvpBC51&XJZm0bBs)A$RNkzV(LGR%#j)W|C-$Su7Km z#%l?tAjc%-%`vLFJs(v2g`m36&C4#Eg4#1m_~khLox^BAGy6RirN9`a zth6*Q*D21QQ5>7>I8zFWvQ_hBDydw%7T%qK&heL1jJ-G6>LXA}`aKG2enKcGeeQs( z+T>VC=`5Nl&MPa)pFGdG&(=FT)zs?;s^0GwzXh>i`7(^4@l7k~G%q%zz*i?$P!e|r zwKf^~QwocU^BgCy1WSWIT6rv|sJM_0W7B3!edo?xNMET541w}crQd%j_~4=a$SX%$c4aFLg?BdAZj7E~a7!P%A0k)r@==s19>1jsfKoXMviLKA<{m)y<4} za&CUHEEPd63zX!|n4O2@96HvFXLUER>3gu9V$tFrj)S+9KW;P1;A;4vYf96ZJyvcA` zZY039>dZ$(ixke+3H;8jqj-)|cx;1=gi$(x%8 zm;4FxW#YR)Io++cd>2qodb#{p-=W(s4) z#j$zL`E;mqEh*O&41u!9&$K6J`wWx<$6-(L)eKbmufgLQ=@dq)0;_3AniYa7I1dd~ zFbvm-vMnDj&EY*k?PaY%SVQC#Q_8mYBGVzo9tWlHHROvg0gnL7 zKn-lFm2WIIiZ_p!SmzsI3Y<=XBPm#~)Ktv1+h-@_Qs^j9Q}QR}#sAgW;6_j*T|3(- zd>tqS%IBE;74UlS`Jmb_0HshoHaD*mN0ht?Rxk?G$Zn;SU~{;c9v4EHGKQUro(=4IoSwM3VwBo z={SF>8Tm+1Q@0hlaN4E#p4NYJDrltjL5+0eGEgp zW^|gvsZ0K$!)YHXsN+%^k|liar{SGf8eRx$3eE%7aRql%H5{pHK689XE+X~Gh>DGX2eQ!rk0fD z6vs;PoOkar9nH)y=C)Ac%pj2HbNjuf!_ujFh0>|g^5n&F_kCu7y*8L~@51Y8{U_J8 zBH7GXNy%$u$TSP?Hx&v&Ezhh6jJz(WWg6IMOq&d?$^3ubq>|-tde96od0}~tfw*2} zqodMVSY7#Ra@iH5?%3QX|h^IeeobeS< z%W1sDp%xRHO}VJ$M}lhZWXs!Hp4*MBr=X}f^o;jbXpA{%sJWOP!M~U zcemIQY!0vOBd+-MtHu$wf$H#CP>bqLus-`p$fGYPW*Z{2BYVx;$hiNNXONKh!`?m40ouEvVGb4ApM)c2kmyCn|)42Jc z;$vK<__qK_T&o!$lksi^imLp4@JO)!PUG_5>@Z8>O;AhZK~SE3y~TwVV-`=h*kK2u z;AjdSjzIXs2L`J^Es1A9&E4%5uK=aMT#MPD6dhu*r^Oj4C{rK(sad0?`7>wE>pZRG z8@Md{$0tVN4?n^FsR&+1pkOe9iY>u(Pz~?-+{|4Y_|fnNpho`c7p8+{Opl!J(-p=^ zw}bMT4PTmgI`cY{-}fscZ-rcny#g0Di6f9xU9`uHv=mezK4Y)(@*6-kxF3}Kb5P}{ zQcm)>zcyH$BTsRhxZiZd6QSZttGW&@lk*GmxGCnu7~to>8hccMnuymymD_Cb5m3Xv7nFAP zL0J5M{3NWXSlu|zX!Ms|l26jIm^kr@ z8-Y{uN;~m9)QQ&$_=lU>pz7t*p7uF^$5yx+#R!x!W4cZXj?*b*8g2_}1WAu7o~uWz ztSg&;cOBEv%>RNcu78~IEw;BoqMK186A_i#-{ zeLB#Ha}P5W9Z)75W%+xQ6CViITo)E~%F$MKs^y(5wz0U^mTwAIyRTb**kOUVFZjs{ zKC<{cD2qH{k*A-24}a7)iZ(tx;7{4-a7C5%a9OIfq*EbJot-g_1AY`rUS9gawIQ4W z$`Z#|Jfd-1BM4f-4~He*PhH2cw~*3pTeCL`%ZHZsPmSL{y}W^dSy@wE_M z0cDJzk1-wYvUnS)244o1-?5#UgiFCA;B!GKw2^!b4X=2{ME@qu%fLd@9k;kRc?EKO^`DtEBc3FNwu5)jByNs(3j9jpTfb`4-1m8~|#Br&w%bv7yD^yPEvs zqJje6zc{Nh%!0fKlx3%bGWpq7-UE~cn`OiU{wu)m(*sUB1Y5y2;Jub#3ATb4g2#eG zz+=Eppq#X!#eJuma&Lp`@Ig@d*IT{_)YK+lO%BHNiWL3g1I(Pv@ng8&-4Qcc(#h>3 ze7c#6UnnPMycU%AF9#Khie}~&YU(-;H2KNL7~SbW&X;@~G2%?K{8}KFB0sJ$J{B(_ z#z~XA&oUKrRxputqiP@lhXDq0>?*+%Tiwz8cV!B z)8v0T-HbGQmcitU>K$NP9GQMy<5mZyf8_7<3IXoja9Sh|b??JA5d4;(= z0dt&P<)*_epe&Y~=gZ^HoiwD8L~O$=F9;o}N4T6rNB`jro??gSGfVSxzFBD^;HRJz<68q$)xmhm$zsV%T>cftGReza@^YGm zJg&J6J++>5tdWJ6mRlXki>hSlA41R5KW^8&9<8gMu zWsx^6J_pMA9=?eEUy1byWYW2OogtSB?XEQ%--=wzE_wU?n7P*O^?t%Qv_2@slV6SEZG-<6ktR2r{D&y7ftSU(BIpLY9)T(xb&F{* zyQrujo7)r5^E%C$8Y}$+1r(@`S!ME*ccSDSD0$gRUc#pO2Rg?|M#vVnUh)QGZb{dDER3k0p}!e>7%O0`fvGIz-f=*00IS`vmZCkbu6fY z|NLSGFT$sl@Lp;s%V*+ ziEiLPkhoLc)Z!-_15Q`?+GkB9?Dd>6?E_XG15YNu8z{?#EN*+i@Vh{5$K{{~G6s|- zJ6a5aaS66tjqkHK5j+8T#9|{*7W#67!Oa$Luvi9aUms@iM2od7?z}JHf8p*?i&tAL zx{vjL92L*9g5yCQ41yMS-fQ?{789U$%l2FCxxn%f7EcD{WQT)t%6<13XL}1&oY-jb zW>8KX9>)4tFdd8nrP&}*0i~d*jHmhB11YBv`pBSHJ4lb^%FbZ&y4&zP%b#(b7RQ!;F^dbpaynm zh3n6Bl3yxn+`;>;L#tCpe_{Hc{gturbbUpyXtFZ}u6B}dS^Lti^p1Syopn;H%-N_V zwUZCcPWakXPkwtW`E9b~HzOO6uc&t<^%O;GgKGZAZ;X9;`#fW2X^AuETW|A8orACL z^S(Rj_~8EiUP{NF!3p1cBRlqtUx;Zm#Ew6jHVWa|gGPXgGc${LH9s{kwvP620r zSxKqRArp}|pxhu(3U>Y7D7=d@vSAxg#vAa5akf)HKXT8_FVb$@{!b&H2FgfJgZ@n{ zX1=#r+6;lLxYagro9&MriMa@GB#|5*6O=&9d-^;~>Ox3Ncky?^ql``-HM ztQFrrc*dID(WigyzijpGmBrIWz2U97E^+gwc-=1FrY||GW6|mbm&`bR*cE%94kEo|=EdH)C(UJiWb>wXZ?`rGI?+;E*XL z8PA`S_I~u?w4=^{L&D#s z4wj*M;dH{4T4eBIo@kKk@lW)!?n3AOX#)T5NS{X8*GcT@ZLPn z@6vqDtsQclv-}#XCPmz{VZ&jy)rET#>};6dVQ4RGoVR0Xx;vl_U$ph> z#HdpN8|AaMmqgres@bY}5w~Am#~EqzrbpbXVM9#4!ic*Erh^%JOpdrGhE2&}V%1B5 zwA!!{iPW4xy89)`Gbq;3i^U@0A?&jKVTnNF+FfM9@a0Hk!NiC^g1*FkA4zZ3NVJ_8 zNDC8^bo>fpqlh~NW;$(~9|^C8>Eu;iH@pprjAPm#zSj*C*;KtYQxI^@16{!JA1wT97tICQ7 zTQ%}hCOj4VppjQKAsTGn*h`rh4HXhA{dR*NH1;YcMuRsW=~W?b%t>gpw_{>@aB>qb zb5b<8wTV{&v~B8D0V|q%DY0m9XHzc|Xn&Mf5sSJPvmwZCj&GRFumS!sVxOc1nt7So z(O_CLuL8(z=2c}!-McybXf*^9tL|WqU}wVWsCMw|=3Z4!G`Os}my#QGHxc2xlUK`Y zn;mg~fOUb@_1eCkR-0`PyG=|FUqVXLn&^9vb%N)S*lGVNEo_Nz)=&?2&F)@mcDkES zO05OFSau|MeTtVkIqJTRP;J%nc5h7!9PL$2M(d-!lqpg7dG_Bve)-)w5w{6@h&+=C z&y55#TY6PfqQUE1dMQ(*p;yW4>1F*ZBarGpD)A9cg6OgmGCdl6rnQ$jJsSFxTiB^y>h$#B zd2PHZPYcHX2evgX>m+t}q%W98P|I6|ZFj(A>Ds;nH$JA?fcX)3 z5X_7fOSzZBG{4MAEE3#$jF(av4IX){msuEfCv#AjCxpDV*yvW6MuYya4`5N4O+!PH2obtfBD+!>^_ zi#3v$xVOU2fMMSbfwaKMUdp^^a6lI?6S%O8S1~W@KEzry_S)^G1-f`C^P}$NT}^19 z@$5)w8*G5LBPZQG8oi}#Z9m{lgh?S(XVI*JX_?kew7rO~PVp)hMBVmWwS7-av|Y#i z!nE@1c-r=^w0W+~8GNssS8;wcSiieh1(bF7QWi!-%^1l9FLhyh=oV6=lnVaPLs{;r z=xm~b+L{kjKd!fXO2pj=)2NN5euK#(?Ek3QKVod^uguV580$ATJ@|aYtB6P408^@l z$Yuei!)zGDnDbyVIpbv^Jqwd9d}nnV^)mJ9YA~U*VBHgyO9B~TQkue0V)p_J0HYcn zB8&ZD>zK)o(5>9Ucx66pjK=FeO-iSWZmJWyHQjM0dpjOwp`prIrhG}njlnczd@m;w zT$kZhEQtnx$?&R{MBPhyFfxife>UBHFylCkBGeJ(ShzXq!Q7}(u(co8o zyp&6#!IS!WnU_S}X?=}hjPu+Mli69c9AG|z$xN7*7%>(FY~F0V1}63WykPzQUe(g5 zJBHIqHbOINkHA!&#m@QX08BIBc(Ia5u-5>u>QZ)2W=?IIaczRhKvd_rG3<25nFOnq zh_zzMU?at3{$SrTyp+qL?lMem9E=K~EhPK+Hf%J|tGbMRXP}p|JR06Ikh!92_5K*_ zd8SvfJQ^%M)2mt@bsuK;m3PrC;r$mFV?%4gLU6z!uVO_sICqd&wIb?n9c0$1zafQP zrd=aC7}3LjhjVAVz)+a75OA8G3Dz1!%-WaNtTX|)A zs1wJtQA!0DpRKImi@;S;_YzJbL;%LSdwL}F7;KDRs?l&S(~Abj4EHL$sCy-DB;R7X zS#xi~H2Ho&3^f?R(cDWdOb@Oa;Zstz~qQRB=MBWIb6hY=@o(nHshVzMWuhrTAo63tEz z_CMFFNJN7R&h@GiQTNevlM5`C7jb`t`O}(+UC0qT)7OC73rP*}dwQ9ariA4gkGMyj zmpstM3L~MpuyKjhc7crAq=qN5dXO6L8+3VkXeFuf8b#H;#Rh>i&sPE``H0nWI?F)>y2il`xa1t@aZb3xSeiU8a}= zpg*a>I2VU6^1aNp(O`#ZUd7s|TQse@PF^JREUb@z{H`_K^hH3M5(y20_46&5Af=T? zkMF0|F2GLyN*PZ|$Nh}DB-HCc9lt?hrU=`FI?Rw;$~_j5!WlU)JV$B>b%;dlU5yHH zO@Ha=>wnBAzOj)Mr#n)=lbVpoItK?Y(w$ce>;57y<<6+vV5SL_b+jo5`_A+#5H3Q< zR#twvwv6E0Grg3%qHe=k$^A@Pixn5@Tr4NraZ9>eOsXGE zaxzau+?Qa+SK8)ALMN5@CoEiT9w{~q?FhF-LQnc~t)$e_Y6sv9!XF;{A=w|gy9!3Q zka5xLSD1AiS{_!W;Z~NU2iKK(Dfbd`%e>5cqwXiO&65ZJ6cdWh@wH!_9=vXjmvUd! z-H$--%JGSN{mFBaVM9S=AxtXPPV9bwNIus~*${PqvqJV*Mjf4}MX8(1{CQs0hG=mA zJTK+`Xz=6tUM6tb0B@KeVE*}D)dNxY z5rqCu;_XgEf?u8QWp0dy&Robgp>c-pB-O)rm0i9}$B({?yvzrg>bMydyEQ&F7>0M^ zNh?TkDj@RjzBm%z2~(J|zWALRDEBHJin{a5lRKaG`uobgl!v3iZ_B;RhohnBVz%|f zj;@@^NR2X8f&+5I9B=`%;-?-ah4*vVth>akdL$Y=XNi~cXf*V~5}tZ^sgI@y zU%Jq%K#+Hld^R;RkP*1ZOL;8nx)&RJ`P)^fKa6NLH9a`*Vz274Xy``-nL53NhF!vV z)KusSQvLl#Yc2Jv9*?>gE=@*o9WLI5o#kc4(t~X-^(vl-hT@lMbt%GDkvh$9quDZE zZ2PGhq{gX-;PcD8swbmv=rZGn^}O8=MBLM03N-%FAiM;ob>QF55?ihcxV4e=_LXV4 z+)H^n>JDC>JU!^Ty>Pi#@pLr!#d5Fe=|%3XD~%mlmK=>HT<%qDiiYmKT&pSdiHzDL zx_eoy;;vVCna@Ps{42~9a=pAF;@$~Mqi@G+yFINoB;r*rNe{NT(#zZ&byr`>fXF?< zKZbt}>y~7}l&idyXQQFfS7||JZB7razRIgW@I3-7wK?5A%`@)79rqU8-}6$kqbD@D z+B}zY>?dgPcM3PA@kgILtA5ApM(p#-?{5*f+N*kw%ly?|%Jb3CD&>4CX#wN-VIzZ}lYMUk0C*f7R z7!8#rY$L%J6JE+o(O`q?yv&yt1t;F!Q>tO5!CIoD!H;%@9EeLcq8h5w9eGxyvk19?{>4f_#w`n4Lh3_iJU_jCQP&JKdK4-dAnD&CF*v*!}zhe zofN?aP=u#w90?wP^@N4J-C2>)PcXCNoN;G$CmXq~!ZhKB`wt3sz_g7X+*n)OWzMAj zDs>0JG)II!dbl2@{*1aiVA=!>J9@oo$z0EKVg1PS_Ye0rn}>1OE3^)WE+R43eR z82w@FNig*Q@36R{V!Y6)Qj9x-3s1wEi9ro6RY~L>hAF}-;KKI_Zow6Vjmv~ z&4P9Gc5F!xJwPhzRnATi{h<12F*7b7cq7%gvrY0(zG6CTfsh`!8Cg;eb_M%8s>*YcLGdphI~g`50hQZ zldpX+wTTmQeee8`X_J|o8VQy>t_ z5mUSQ6UlqFYR`v_uP*s6>|nj_PnrN>T3!kp<7Ms62$L9DU8T!Y=2T=FUkV#lo%aDu zLoyFrx<73OVGh^Duv5w7X(tPKJxmjiZ|E3a&2WQI%T4}{JwM&uL`rL}ofqQ?L-{ji zGhlu>)>pxLljkpUx5Z}5%oEZi^I~fw?poMse#zZ8q=ju3@qBf}ZToC8OHEFInI<*8 zl`sv)e~94jhMC1Dmuc~wt(Ry!iHHL;dArG5nPiDoN0~eY7nEL5U64_;_NF{nm#`!F~VoD)vU*vtCJ#lvNPA0LD3Kd%F7) zDXSs#6n@pT&%uL$HW}8Hz8iYGm!j`$jx#pNLPx$1^LBil5hgJ@DR!U!8*B20c|2zt znDRIF7;Hp!y?R^BFipu!*x+PdaP1Z^b6?cmi%=1bBRZ4X{!J51%(IV`FxdqwX@+1u zs;dXy@+$U6Luqg6$VE_f=aSNp*{wsw;?c$MF$hd(9Ng@OlntETT(-;-Ezc`);gmfVZ^O}H+0tGsI`j^V`xzI@7Tc387Ln5Y zvzzI13p?8{(YT6s{1#`C8se8&bwOGfqD{;%?$&+Z?D2%1eUZ>;SU))hbBR#LC)PFWwf0yH&TT|-4l3sO4>2HUWp7Y^9 zT1Z^6IN;X*r_^sZwA*;}-$yb2kkSVZA$9A2WPJZ%1H?hl8Q_Wk4^WfP5F#0p5$|E-0wpE}OOe@fklkftH6lZd4SA`O0r zR##2L1_sQV`^aZzZiyG;BMq*G{cTQVW%pa8V`vHg%8oQR{quj!k9S3hTOZ-S4bA-l zse-V7wrkM&i$hG7dl6DOB9Hd(j|8`W;bs21$nE~6S-nT-QAKd}mtM+mJm&n;%LM9v z}&yQi9VO$J2#W()elw`Q<2Gd|F8S+-K;X*V+hxyOqKmOLM_$%sW?K6tj zO0=CvsM~iG!Yi5PW6x*h;5If*rm~ zR0ODz_g%G)@rb(`mO%})nwS=b46uZ!h~JxnoF3Q?i(qQnocY$mKgNBo#P8PZ62C2Tl()$bg`JCR7$ zgW>v^pR6VPgHSe1_Vo|ep<7@)upnf=OG=8Hh}rOG^Ay0aKCq6-I_?6P90kj;U%vt4 z2FDYdBY!bh9%k|ER8k zr;LHAC)3(eo5yhJsr8>`!{Q#vddvSaQPF_5Hz2jc;^?v;rk>0@&&Xdj`VE!9y7>3~ z)mC2Df0ernW-i#rIst#$a3k8f8m5-b+qhk@o-j7Z&(p#I^G)keqOD$s!Ib4&*8Lu4 zOxG4eMuGufA)ei_a!X+8lw^%_aJ~no9oYXmf%^;WOrOObNDJ38O>z_B0C^>B2wB(x z`|W_K1EzgSq*k-qfy50*1Wv0pi^Tg%tS52wktF(t0*UiTxMd-u1cy`RZv(6^^*N4K zM%?dUnm?4tjnwK;hbm2|JC(!@N^BXCANE`s%-p~HM7?}bJD zW@XBsVCvEYfJoSWUEGTizaUy{=AqF&u!HmeEzB+>Oxee+S#ptO3O0uZzv10+j zmXz_e-34j2CHAr&$OzX_1GJ|EW4^a*7guA!~DmdkC5uC2Z-(+jm%^aP`Kw^)HvWD=yAe% zkUpY(j?r{BLntsq(M9a zGgA=T9;x+%3bn=yyEHL>fN5@LlVBza5EE*xY=XPB2`qGXBi1UQ5RV*gYKn4(@y&xD zVRC%(U?(4CoC7y5j?^kU3a3AYUhYS%Rm<}=9Pc|=cNhm1zOxr;W)@ua{MB0AjB3X+ zl>14XMRQ`bm?457J4(_&u4I zXj{z4QjOV(d|X(kSw>{yOC4)qBmFJxCsJBP1iEQ_b7&Z^Pui#K;v9_lUM8?AG_6M-7FUZ4*0%;xOJh^QOx=Cg4B1F|#xtX0JzV z;fEiqRf0mHEI*a?YDR4m{;Oa2Q&MsS48&8mjCP5t&Vgv~hIWaRlfkNXiA*rm>^MIb zt;h(IP*gL!VHIqQI4bv*V=ve1n%-nn3gy`+pbS}h~n2fU*vp61@(zFNv7;NS_2 z*)QFPl#V=RBv-&x7xiA|xejcUpQmSfolmUEE`Vvd`Sn6uV7#_|IX%>}1D5gMQq3jh z%iQ-!nX|B3ZFQ1aw!R5MlVNxTe)|Y1O|}rp}Oy7#o;ZD^f z%p{N+6@_|lJu%G<;ga%C05;yZ^P89 z`M&4ZCnu^R_|ljzW^DK}6MAEpL}nV&Dx?Zc{u&Hsbxl+u4L#qL*qW$J=M`-?+DfGM zA_zC>jshk*>0omG!Q?LolLLA%R8w{($umvz-Gj+iJ*%aY4<_$9nEdHrG8*yAM$yKk zq|NIj&#;Q6RVNu!QhJM@tjwSmsR5>FhhEjm!h^~C4<>)APP&6mHG4mi`Q1q9sf>Vg zULvbMZvanARP+z@4xbkApB4Gp?u)SV{Mn(fdrUOoUyw~+87!+h?=4ti5(~qCY6`06YAVI;7m+p^+B#wQts}B9qe^bzkvTR!f13W>|n`2 z|C)K3u(8#xY=CLom^Y zy?7RDI#GEhp4EDAb#e~LF-H0t$>AoMIwZi$V884FlD5E`Bu5$PaYG3eCOL#jUZDP2~HcH$Q(l4y$dV|^sYT3 zS;HMkQuiv32AKL*m`u&lfYa+QFoiR2W`v(rMb zM&pa)Ss}Dbr00IoIxFBmz%%RunAVwLAH(GThV`3JldXbj-I%;TVOrOLL~H|*b)sed zS86uG#wD^w;xqLpX`21yB$6Xd@_v$hl}iPJF+VwmXhiC4BfRBc@*9#vjP%s(>g2@- zlW&nc!!O{r&q*F*IWmUw#QX>St4Zk$;J?`l?#@Z1jKhE@=bHJ!+PFjsOlJrjgcsNw zVCVZ^Qy7?s<9L;PO`($1Y+u%6a=@9K*l`^?lPXQ@s3bKd;1v70cafsplj)&dQv=S$ ziPZDR%?~*9{oGxo3KLo91~P)v0^a+No))@mT7a)asE5#W^1L07r3Xup1-MU0U= zSCXg#-2>$6a7naAmD5U%RaoLX(!vlO1B`pV0W$}T-8|8%EK8*1usU{>(YX2ho|9&q zBPc776JHF*rl~*t*+|mdXLj>-$bGO$enx2c9C@{0=5~@A03G8jwdTsll@W@QoMy^= zNzxqRDC0gh&zQuo;T|^MnBK6Fe`6Ieb0}23y|4+%o`PpBNTf_*99J#~=o>S9xAbjN zeEpC=JLqt})!Y2#&t#}9#X0EvNa%JLU&!DKh~JZv>gJx>b)mTzu#2$<@?aV|YhWi2 zEMU5TnP~I{OfiHf2lo=07irV4To~xxZVAGGV?K2(){2`yvR{#TbCYG$F8Thd@y*?J z$TYFIfG*xJT_8+w>_7{~Jz`wrA?C{sHwC zZVRJ@4K_jWdy+B#9oxMZFg1RWwy#CpaZ3Wuj3f)a4LifDjHkOP7nzG zY6kZH5NURzavGuZBK(1REDY{COD?YA=>Bu?tw@X);yrHbOHjlw-S*CiI~&#q7D%kx zOvr@EKg>ipOHE0Rv~2N@!;B9qVE+u0<#2k2dd{ULk16A+(p@kOyjEiODJ+*u6DhM; zCaKGk0YV3cv6j&`hPx7Gd{_0Ws+sg{ewk^F%L-rr8v-*WwP=^Yqy;Auw0OOmsb0(F zNqv(P3EbZj6*%IFN`HVsV&!jtIfX--PK5;BN|U zvnvc^x$p#jAD_Rh8kZ<&xzEd@C8!-eEN?YE{Cc0>U(eKc_e4){u;i@ zHsJpaNNpJ3`sL5Zt|6s6Ms*c;2NI){9?N(0OuliE)7lNsWRf@>5#)8gqlHomh25AmV02&C-f7e`_ow4A8`9Fuq2_ z^X#;1liR4gY8p&7GRi#$lgIiSfcq0n$6Ty=MI_WU!J*$@j_#i%3;m23O%z-gaB^Yh zTP6EoGN*Y`(&hRjBYwFvVG4@15^Y~(B4KhEb5#BV=1;P}w?rz8W0-HFTny6#1*ZJo zi2E?CKa7RMA5HyMk;p7(v1H$1whESfJmTI5(>;|htZ^7@aU)vjiAV6<8xxs}DSb5( zZ7jGaVdTV0qose2bBkfp#F*rDm|T<{b!A%kCS!f2nD0#fBd%?*F_bh8)9JQ=Gu5vrt*?PihT)RbI{=e1W(yp-j#hM7 zbL-sB(NFS3+am+~#R7D)m--lA>>|axcusa%cThM{xtyRuN@K8vEAI?AixQO{N5s35 zN6rMPT))}@QvQ)MJZrt#R}Nk;-nJ6#yCLGXx!a7wjQ0YVmJ;5Ee{F`@J&B;w@E#lE z6RW22Xd1>>3plJ^_He*?!tZt9BLU|orQAl32AsLo%DPuW)vS4Y*Z(n;^E<&*;YVTG zUaRk+?ySd?YaQc-cEK2E7z;d+yyfWoxHrPgT4qg#UWcV6vIY{b>O5(7VqSF;h4Nv% zY5guew3d{wU9kUCiOlP`^F0-CZuAvD=jniRwV(Q&)Kz|J-ll-FEKzwQ27ZQ=WWg2B zBvP(sTW`8q=X3uYuasZD?Xv;rLVxyNA;n2uXZz5=mq@LWK^*@-GstiAS&zIW z@>Vx&pZ($C18&oSC;#~XOS5{Wzl1LGyO{DqGWDsSs>DHZUgUz1$hwKnNX_-jjeaS4 z;dsTQaH+m8BTHoI>Ord1SM;QR`IivYCB-F#a*ba}UPqRYn(4RqeRV45RVxc_eKk>a zJ*MdYnt$~`lMU6W)~_dJD@=-Z50ENQYr!dRBr zm>x$o_MhQY!W2{qNI3U)7$<^Qy4$SEgh>urymJ@<8$>ChA8aE`VT)~(FBQr9rn2S}Pjp0wN#GpkX% z-?2Ni==fWt&_q(4$w^&LibD;5pY$;)?L`DfzN2*9P94o8KTjzm$6i;$^t8&iLil}~ zcQ8sc-eoovEJ5i(FliI?Z+~H!&NBXC+kFi-0LF8#57NRPnu7kH&bm`!+E92VR1&Fm z>xVor&p*xm2&pEHGMp=q*=?$u2ssxfCCyh~@39O+6Ush;Nr{88_Lz^1gl8=nX%b9( zp#M_Dy$+_9OuMh!l4jSd|FMa@=0GqGrpG({2O`d3Yl9gV&?EJcpCl(xJ*VV4}nhmR6XQtjm_cR<{~v=8)%8?)Ja2!@o4fFoPQUH+C7!9uKJZtYxOn z12B1lc}{=QS7yM5ErA(d+D-4z!_+&&$FmN=_!=X3*S>p_ty3yEZ%?9X1J4E?-IGYU zAN+GqA`^5Ydrd!1VpRjS<0()U*K6s)8}=qr9-zQ`Nc8Typ+D3fUnh@L%)L7YCd-?X z!W}UAm6_>}VOmz~{~T1BeUrQ+P%ktEcBY9Q_mY&?8W#wBYn+hF7bEKn)5x$sPi_{& z*wil02$L|&PAz|H3z=>9xP8fY>usNpxZ`2AB%5l5nE!`UJN6|qA7*Ur_g7CGo|6UR zkCX^3mn%ibge|=78JMO5#$VI@2Gb}BI-C}|e`i|Y^v54}O@r|@ik<0h1*y({Db;xi zrimsPahrF(H|=qJIB1qY0Ya7dor-FhIA`3%$i8B#r1sGZo&{Vh0! zuiiWpc*-66hnY!p)4v3!bDzKbLZ8C$g?rQ8E`OR*RGv#5f*E(^`V)Q)rZ8~uqR{xS zaV0Ae`>4w%Jv%Ys4QnQ&E}P)&qs;#pfbng`SF zTi^et(Yvroz7iNU+_RQx<)Hf%AmROLPI~wWr6}p=C9asp3+dWHf2;6aw$_l^X!uf~ zSNw3!3i{F6p^?SL;1T>B%TI`(6Zomc&q@5K9CsccJAwKLmCt;Hbba_cUim}RQ^5u=u;CVzt@)Mz**|Af-#C0kCYdM{fp6#tjSSF9Y2`xbxQX1rlDYN9G` zvGSTI`I}ZQ)C_I2TquRM^P_TA{OI%VIQ`!&1FqB}6X%?5H8^46zE%p%MQxhfX zY4amCzb2~JUdS7RXW4wAl7lT5DmjE-^55b7S7iNRoMQ|8pP;IYvh{>Yj<#H=7S(sC<-`)>4|3^Qc`By>}e+CZ&IkWhmnkdVJkZTdu168*^sD=->yb-96Q01F| zTAM9Em1}9Swaq^k4AQ@IoDyJrizkBWpo4@K)o~ZN7I_-j06ZO3M}t8AIfM1q7?s9+lo5+ z+Twm&;RnlqvG_Zv3V(pIOf6b%1Re>Bw*Zx&0&2vqLA86V%|8+3pVN_Fs+VDTyf+C| z?4#WOC90zV)NcZg1I5SN_6~*WFN=Ks#hpp~mLO&^+hjO-phh+w)JLdfA-}Xt=UTZ? z_2*ffZ{%3D3T*`CJCB2*HY7ILjLo1vHL+Hr)4S}_s`rx37ApCQK0@WY zpl0t#D;G-M#B!l{Q&79W3830PskWxdB>aXuks&K~2c>-msLy{wtn(SLH;=(>6b<6@u`)6Y2`vCzvh?n_kkM6ev9AL=B{}Zf-t@+y$+MlT2#e`mLCdL zz7hGg5;L~jJ4Q38+HY>F{U=oQ6kDz)YJQHfa-rHg)^eeEJ5cqH2W5{=At&){UA#_% z>|zUbwRj4sk5I`7zf`%Gl?%nwEw71^pJwGkO-_GM{hVQOkj)2;*GZrPLqKUe)D{p* zKHT#E6I44RY(1eAI|tMxjRkd*o*FX!lYsex|Hl}oV`-Xi6%c9xmw*ky#Ww!}n_m-E zZ;6!)#V@qHCQ5#hmH!jt5~#q%wt!H{%dC94#T6D;DwEHDLbZ3fEmspIx|(0|i3*S@ zi90vifgg`Pz&g`TtdLh5-+2uItDF&4*K9B1=0EkDolEXyZYoM>^9FmZSN zV6ze0OA4SGUy;q83F=c5m0x1>OD&dxlFzl}g@MG^G#l4mx6~H96qNRt*SJ#RFC@)OxDLVo`o=PzuxmC2t5y!Nyj8B&d&2<(gW45bbt#P+%HLwG~?13PLq} zjO9W(%JG&9rBHiN9i3?LBvAD_gZlg%#%pBAg?qu((5Y5l6SYJJ+Wa#?qK`AwmOB*6 zBBRNdLStF6n?YIRIZzEhuS|=Qzi8zzS-DWI^{SP>X7P1U?QOOE z?WF6xZ3XXu`UutVHc%BluzaV*4?(%W7nXko>LXMT`_*!x6#flVd%s)$hs}>Gp#pz` z>Zq1lwWtx)wOpujVascx7Is4`7pkL1mj5>x_Y3ObKpQGZf#X1(@w$PUqn;Lff%*s~ z&j8g?)XIfYus5i727uZ>hJ%{oERcWvkHby9DPTSMU$GUGf->C_P#>WhS_-xRSAlBi z9#9HC0czx%K^-jK0kzmZxA{MUx)aqSs;Zqvpz5cBiV`P)hbeTOLPDBGEuIBZ*BJ?_ z;#g28lo+T63PFvu2$Th8fwD*`sE<(f=7E~#ax1Tis=pYy{)dXr3KGr0HMZdYLo}iL z|3-&8Vm)dH@IOb>|No*Qz5TB`G*k9CipugY#z|-nUj{X2uY;PKH$Z)a%74>xq4M7X zHRtbGxlr2L>_nQ zl8{EO#d@GVLIt41Ef;Fpq<|WEDyRlqS!`{w4XBS$<&Fg<>clUV?<`V{%)bQ6I2n|t z-7W6{O0kILY2Zol98l|e9;na%9}IM%f%&$B1s2b@xX|JvP#<9+vG6P2t4ZI*Hv0l! z{3K%kiQOeuycE<&s9`L#TqwJ)wDKz~UIoft*MN#Xl~#VU#Z{oXz18AsQ0=U<`FH65 zPOJF&2m(cuH$Z)aQs7O?g^HWoKsE5b&EH}3YohAyLavTKw745oy-z{qe{T66KbRue zgFv5}s0Q{T*9gA_#rIj8*^$;jc4LZjzc7Xn7 zri4BBWr~w>P-}Fxc<_k;%$5}4a+?`~3O_WJbK`zU52i0INPy;y4 zmKUnysO3T_*w^9!9i~*^bX!2EhR(9`!B$=q)$vFx7fOLq7ROi|2ddq3L49hXywv8GS@|4L7F-Bw9F%7ph^tgXniu$D#|W;d+)gwAk3nkF?knRQ(o~AKl<3V-Y-WEL3$~#)#*R>Nbpr+^WC>6pweQK#Naa)H(Pub)JLdkc**krg!13lZTYRXd`(n; z+mdG9P62gX1xnu!Yz3j@J1p+BxXb3(M0NNna@GIbmixlum!K|Ee}Y;PhY^U?ZoP)A zBW1KfAdT9AGE{p|4V`FtM^GJ{VtEfx4fM1a0ad;isE<(jr&@W2l?&B=Z=2sIZZrB= zL0`*jq8jRF^ZQ#IVDWTYUMK|zTmC;mDI6ba8#>!o6e?r5WC>I=O<%dGm zJC}SZI1!WuvQ7E8pOEP%+XfDWs#rk28k%8I|MyLOgi?5><%dE!ZJ8}M2ULFxKs{S` z7L!oJ7l7K+SJ(nqf@;{acnzp>*V_CFP$Q|dcnc^+Zv*wIiCW6{*m4_ezObd@_-iDj z(VI3ysE)Ty$YLES+1S-DUOd~fk5Q0@E%O3?$LKK}{*eMAM+(ErEY{fEW$w*SI! zrWpz$M1v5b5JD895G5g`LP(+zk|-o06+)=95JD6}NQERsA%rM|5QPw;5c_@Ra({b{ z*i`!DtHu?=1b&%@!K^9N^K`LON(+mp(z{@!zA+z=0)3BvbmFv1g8?uaSE_k1YA z|89=(RI}EeRKDZyp!|PMGUw6TiSX#vo>VRdCWs3Q@^7XRBWv+br zx~MmVqt>2OUVBoxQa|1}FmdJW$QZTuq;ejK+LOxpWOAOk@`%(tnVg+3!)s3}uRW<8 z2Mw_$@J3R5QhDu3<+Uf3*Pc|4PfhT4srICD>=J8FD#swyo>X3YQhDu3<^MM)m-DNs z+LOv_Pb#ne{3aNmmhuL%fj>1BmEWG#o>VRdq~^)xJTSEnB+LOxps2ryMKPQ>+LOw0QZBz^ zuRW<81HtdKYfmcYedK>Txtw2F)Sgscdr~={WX_*i)t*#dds6v-IjNi`ca$#j(@N~} zRr>gLYFK_(MMp=&Ea_n;d=ezp#U2GbkKcmjHhrc@4STOJI z|4p*ncg@cnGM@QP%QVS1Rq@cb=a$dEO&iqBNxC&(` zvf=~FU3Z1Idh_A?prbP%s0R(Mv0R*-@%IHLFI;xD>!CMQZ|^mnI@}{-MgGJGMJAJv z`t+}&lE0$(-w=xfJ=M#W_0{zI>7YdSYqSe!W7E z!`=Zi-~Uofc%NT3$>cYU-1jMD*12OJ-#Tlle=IsZSi4QRk;c@`ZQ7m4pAgrZmpehM zJMl62-v$54xW7|l&)vuld5ZYB(7aAv#>>((z3e}npK|m3NP}Zf*7cqJaY^GDBkJf^ z6)wCnPwDFbv&oCC4u6}y>Ft#*O9JYXR%fZE-{?=xuj+SJD|P;TZj{GtmCa8FX?#Ds z=X~LQweNu;O}Z+M?%4Rg6Lbg<)uk)3DlyPCFYX8OLv#fQ5#Ken)Yba-gCVy4&L z+uN6Wb?>^@`^1sQmlx#>{?%#akC5iMl-*g{g06IzjN!~{3B8&kgU_H%T&o;uIab(1aiUtK!ANP5G@w&CC(A7+*Y-dJtfIF(GgqI=CgRUP## zP=5IKW`0mRBd4gf{U<5ATDnw?%vF3!s5d8^#^;@#+TeieqUb|0H?w?3JG`6aYF|gK z$D4D%On#TQ#xMT-XXWz$@Aq$#9X#71)cM)^6UHg@t=gI!4t}dO^>M(0;a-=n6%YSlpYqwE_dY7+?j?-9_~z!t%YosN z@7IkF)P3{YxnSvz>m|J#j@g~wwR74s@61p|>vpGl8b$WLcG`Gk&V@O{XWw%6+qkBU z+51&Z=knKP|J(NX|M2=Z$%f6I9wJw`A9E{_$R$&j7|r?>uXLm8a!#v+eLnX+4K8^l z2H#h@Gh4B!@7=oNZCcg&7;^dP`eCMZO%9!Gy?NWj!bud>4c(i&Tji2`v)l6_O7(j@ zT+%K=daH$9j8fyppQeod*5gQ_&CDVP?*oTB4*O1@Ka8&@J36TQZqG^jE0PQPhfVQ6 zJ8xZ$?(zT9{%?{=8fWc@n6;$5W3k)9k3EJCot3d=?}&8CjSX(|Tvu)$H1Chz@p;Xj z&r{Ty9DA#AQKH+Sw8v=+r-mlo`V!Ubw%z-HCzHMP!%aUVD zEY2_a)Oi1x5ABz=$y6lwoDjC@hh_3JJEJUxjk;+!>0H0$%sb;d*6lO&*`4evl^We^ z^{;QJGW|cPKj-|me&mzB@L~NmPugkTYxpR6Z0x0hSG09EoI0>=Vout!&`Dbr>F%w@ zBsiIOel69uU-f6JYO8{y{d=#}YW9YzxO+v>mlpI6OEt;GNNQ!>w&sH0KGOB-uKue|^lO@TbYo}hHCICBe;qkK zW$v-q{aX)IwC}oV*Y~qSW33A98_YRAWNeF9zg!j5A3j+1`$vA|v}KEikz)_s?Y!`z zUrd58w4XbFRn@|uRMqv*eO>e2jS>Rq4hc}B!V^ohUR*eKCT;$VrB~caRWl3w@9S-0 za8~>2)3PSMrsX&I%Uu3#)7mwAXESJ+TIsHHPJ@d-wD%ubX`(&vvCqc~CG9<&%8K1? z4YIkozEi84k5?w{|tU*P&+j3iUomt@X9;+tSRo;CJWk7cy+0f4W(>|J%n+?@xL+V*RHN{WBe= z9xzrMot5AFR$cX&>+_N<&Rjc}{<4noh@rNZuB%fjchBnE!?5gzYW3qvV*TA+=1u#) z@n@6isy*BGI{v2n!A-AL{h2errGJ_A=godIO4ns=RB8CwGAOo2 z_jGD@&sJ@tyyV^yy9X|2RSmWcKhynHm)~o>>qi`4TK}>}^R*ii-48sP+D1jOAnZ)N z=-k7dDt=wxIeo^Qpw#>Y>A|y7i(Zhs0XCZKj#4X0XHw`$?IgP7!9|arCngFe8uKOmLCj8wY=GzS3Oy90)jdJjM*gI5oLIi)jr4+QA+1dJe$ zo&a4FKrVwNX&V6Y7y=9cR+PgKGzehW3t&zDy#Pjo0YwaB$e=f%m?5k;z=jGLB1{41 zeE{Prv=6|-3{cKsOJ;_E3WgX%fE|@F#0~-2_60albYFn|P=LH2U^3bC1E>rGBr-UX z#0ZegkcvHmWE!a&16<7k?#2KoN@36(4$$fka3;6@fJ}yL1{YEc0CanMF$!R93h<&xQ$Phn6~j`pGy}w11LDm9K2*tIKN{dT1hAaqh5%H?0Mv#8e92)b zAekYR!H-mj0bIud+=l`DDTP7P2B2jQSVL~+fJ}yLh5%9w2Y8PI_znjIQWk^mc!2&0 zKrs1?0OTgfXx(a2`FYLWe6qXk${MafT)pxZB)Ww zVF$3b0)$bd6`+Elih;;-6d=|f5I+hKNtF!t4gg1Mz)p&@2B=H|sEr0hk;7;}GD9lE z9#S0xaGeZr9|MS{6b8*H0Ijir{p2c$l zAdjJd;RxxC2Lw$6gp3EoQ$B;ybb!eOz;Ozm04QcCWk?`nTR?;pAj%eSib@zPW&o@w z0um{5BA|kyiXn+C?EtaPfOtDV3RN=L&jdKy1I|&LJwU|;pymKbB?kvUGD9ju8mUeK zxXuE&PXeS<3WMfsfYxNdWpbMg$YjW7$RNcOfVV5acM9MdWijZw0rVXKS>)pg$YUsA zxIubT0YP&BAyWa_l+R!^7hp0CaGQds0g4$)8FI*YIv`>mAZj|`9+fayxC5-60J#+D z1gK!BVt7cFGXSyk0r4{c`BceZzX0Iq40ud&&H$B#0JWKb0&ophAekYR;SZ@U1h}pMxG$7i zNhK0GyHGljG<_jj9uQ>-&GCR_vShQ!CDd{e#Cs*gcM+tngs!vb`a$$PA*vEu<_XDT zDPXBDp)QLdL8~Akiy>+fdc9qAG?LJIFGw*&A-oXH0UqENdV$fX= z&|eAABcGLkJca^>uB7J&2-*M$@dM~nK7-LlfXOOA4+>rdC}t>SFd$=pKtu>2${*01 zN*F9Q0jyU83@LIopn{=_p&wbU0mN|34=u> zz&ZqAOOYXf3Wh2MJF?sah}{8*-vn@=N(TF#0LRUM$rQI4pt1{~wguow4qE`p45eQsxorhxGGsHjkYXFadk?^O8(=nNG3f3E=x+zOkBe|#C|{&0X(UM!QueGIs)KD zkr99jhAM`oWElyFjRC|*0(_{F!Tun?aR*>I#q9v790I8A1o)D}PCzn4DuW-X?gF^R z0^D~2{3(S&GY+5?1z1CFQGiT_Y=!_*>;`xr2Kep<1X31*?h%0g9zZbp>;dF46fkTc zy}f{-qkxdTfDp=OFp3A5L<2Tca5SKpp_Cz%jQ0T|jsc?f0k%;IgT--x^?pDYMeYYw zFjO%RSsnnyo&dxj07OzHgM9+PF$S=c;$i?QCjn{)0a4^|5RlA}%CLu24*^_H0o)G( zqA7(z^E5y!7O9*$gqHhy!>h0(|2DhbW6d_Y6S)Fd&Y64g>NS3K))%-Vs1h z5+LLVAfECWjFJH+M*+tv_$Z*5p_CzkjN<_jDS)VWz$q$WusDnNJ)@3ENAU}iV}OdY zczg8w7~UQwk>znf>^WQ|{y46ZLX`~m=K+o<0Ou&~1VAMfpq2ngC5Hq+GD9ju8mXQH zxLyFbp9G{+3WH`EK%%l$YUsA zxIubn06~`kA!h*Dl+R#v8DNqGxJ|)HfMSMHh8!|Z21Hx|L?r|6Q3-=Z2EaN6kV}y% zfQpQN1N4wA&jMnvVvhK;m?NJm8SJkC9M1tBQ`|X#N+v+6+YAV1r z3*ep#D5Mky&FcWI3xJp8b^&izUr{=jB2uK`pS^G3pMBHt&u=J;LH8y=|01A-d@cg= z7z!BPkzP6=C>s!x4k)F32BTX5lS_b)6nqI#%uvcuM#h%`5w`(RmjPd>gu&tt!1@ZH zoFcCPDj2F5zLRAJAT|dOp8=?(N(TG80LQCf$pmGnOb`4NP4%Yz545k#h;5Z~*Nx>CB%qWch{e*>Z_ zrDZoDc`OAi^`+G1rgWmTfs|HrRg=;qt_`KsD;u?ul-6@?ETtD*)uq(`7HShIZROfj zN^iL~lhTmes2Wn*!L_-RK67m$rIB|~HKnwVt3paYP|3akJ#frH4_Zm-a1KP}DMalq zL`zDO?n07TQd!zcsop(^>obV^J%~0&ghlf?MC(2VtpmB;$Dn00WHacHA{XFY2=L7X zbfzo@-4_7;2LL_tc>u^`C}8MHdJh3XF99JB0s55BVDt)Lk_YHP!FkyHdQu@512WD> z=|!PjdQ%CPK4kU?#gHPo^rbQ`{mAk$iV;O~F{Vl`{mJGD$^eQ(A(ax`h*|+|#Dp9Q z0Lcug41-DaDZuqD!2Kz}j8Ygh-vP9q0fv&>Ge9OoHiJ1So&&t!1ALzYMo<=mZYe;& z5MW6@g}C*Rl*7e}^j@HhB7ZK{l+R@}8N5UpL&03eQXv-`GJb^xMSQ}7qF!M^gAXVRD45GaD&*op#vf4@Q79KrD&ex2%s!!bQ6vgg z{K8_ZK4Gy-$+8R(TLp+O1NcxSgZ*!S<7dEfiu(*u`2$e<0`Mh=FMwo*R0cm%{VKH! zb5+Lu|BB20l!D8oDFJAe1J;mRIUtiEn<0P{-vHiHfbTazAZ0P=Dg*St1A@utJ0Opt zfMEmaRRDryfRGA62<0;v$pI#nfXx(K2`FYLWe6qXAApEDfT$mUZB)WwQ5RtS6A(s` zKLHgCRSZOyzW}i+%4&WVCkIGPj-*(-|M|Uf+qK^-V=g?rvF$KT(;s5LrvB-ABmEbR zd}SW42#gNvKIZEq>uZlJ&J8j12%4B5{~&*fcb|?mK1+?{GtI;#d-`_C@v$Gi{Prsh z?>$OiIb@*rs?YtF_;pzOe8aia*RLFJwfvm+U1f@5YG8P@@8YM;8|<21R>$sE$cOT* z`XSFkt)7#$sHd_~4H0!Ls{8f5PD~BO%PnZ08Zn)l_fB*L12jx3!cF%T2-LRFbss;r}ug|{T z_j-fUrbFMhNnE}o>45#i&mQi}oZ5yQ>i&F^LNR06!3JlqWG!>tJoww1SEC+1>)hy9 z)tk_ZRK?wMvWy@L75&bB=f2JC@9eQLH}`VMv9cdS^8eI%zDd8^^Vj!!Cfv)bYG9!1 z*yU!C*Uv{QEQcH!H{@bmpST-$TRg4#IsU)j3grQm9eL>L{VZZlj*sd6tDnP%JAGNS zeEF>1_f9NobN*?SRCR373%il7XBI0qx@XU8_V&k|Zd!rUjeL(7o@_XLf=xoBeNGf# z58X>%v%H7LgnI=>KDRQOO?s zuMZnMxU>Dtr0)@Fn-{+`+t%aox)GlCzt>(qr*^`*?;XcQSLPcJ3~a2wS$X#R1#u4b zzxQ}~y+z-lS3BKEuF*aIMb&?kZ2H)V%NmxQ`zhIdF|);=LxFd?`kh`JI68OcwZ*|t z?Y#=NEMIDvyl$alT8kjV$s=+)x!!u2X*#y)r&YVZW~*Oy8Z?U38lZcvEdLLc8CUrZwP|M*e7>-n>4)+tNI}-4ojs^?PVrI)AQr|M-r3%vD2WE#5kml;Zcc`n{Vyjp{6XRHJ(_ zHM_UqeM2kX%eN<GiC)>dM!H z#)XafIOO-{HBD~6{C#vx_uD?ZmTpN)Z5^;<+{KR4q=K?ua|7-UEtb~k9{)Vgp93l`j1Q8Bi}=u4ye5&Eq@-Dw!6I1_ZpW96&s zF=bwkqtqWiep}f1%;&W^`xFzFf9mA_%VPb4L!-a9N;|Ewb$X5N#ntRy%lL_xb09Ze zL-cQ7>UF!pOpmRT+B=7MnA>-I@g-?`yUF8l{fE>p1S4g6}Kk!HAXwsPm)R0eki6oXI{1&JGaY|4p z;DTYDhz^BX>S=k0SB(`ZTt={H9A zn%XVhTeW+K)Yq$-!mH}~R^Kk2r2S`}U1YWE$E@Lo4IE#&)$uvVKlnw|Xg6CuTVvO5fC)xV=p#(=MqzO zr0_`h))rrdUdE6eH+AJHLaolm@eI|@-p_sU)F4(vXy*YCvCBXPq` z*Vk{==t|4h6IZm{qTaEm|Fwg|?yZU4HE-wiw*#M_KJmIRWvPeuMUP`k;sf>tS{ilr zeAc$c=$)$By(ap-8-`Z)%h7oAs9o0GWUXF1UX0xweDUZIhf%Nnvi;^x=vZ;2AT~mA zt=IA=Qwr+^uX(=A^}e$G?z!FSv_5b4w$V&7X@c%O-;n0|>uKs4z2#8`4MG%K4@`RN zqbM(2^3lA_qk{oY>QsDK8ol|WC8f2P)_-8d>Cerw-l_K*P|&km?%uR^^S1ib=pO&R z_P+FL!wt??Hgx}7g194~C6|NfnMG-ut`{KG$ z=9|Z=|2h(B5RS5}nwx@>d1K9!<-qb4+;Hs)4pk30KDC9F7{mefo`UneUjYuFW) zSJwMSv}w{|=otF5 z0YwbiWFP|=wE~360Jo`-p_sv34#=TUIUu4npq$|znbiSUXaQpC0CK5}p@PA-F5n?W z*9FA30mxMV`DCL4ux|@UWOz&xRe(x6fQu@ifD#yz88qqvo{>{MfU7njgQ1Yr>jN~~ z1H9@3UQ#+kCWB4`KoNN~0C;x*pE9Isw8O0X|Y8LotJSV?Y^&HU>m=29z^=Av0c07P^2KbwD|lF;pXkO7cNl&MK`WxTJ~ zhj=xIC@a$?mP{6%77)2IEouSr?heUisjE!wH6gk^AOV^XRb{%%lE-4GfYeu})e1;Z zPe>7qnlklj2{AH>de;Ql=Ly#VqEnAnMArwG||y7o?n}sWJ^|4YBC0+<*?WRvsnQ zP^Ql;6}>T!trq5Kp-lUC*XShO)d+7L}6h?h2`1IC9XlSQXJL4S*D}=wp0zAVvcrVLFf=7$25m7V}OJ1B_26NQ4QboTWF$ zr!&N25G1BE#1P}dQo&-Y3+adP(S^hghRF3G#uy(xh`lK!k!1kJrwc^I4C2xSVuJBu zNoLXL3K@*?=?ZZj0?A-8!}xTAXby#Vb;Bk$l+wFl6U$`K(Fd55hd#i27$BEn1Zj5% z=$Zopx&tgJhar!_um`}3{Cfa`h69QitjVA!z-R;@tS4X$6*3evm>U3WDAWKDVF4&- z7*A%s02Y>jm|g%|Dr2ay#CFv6KPTAOQFL!;>`2Te?}OPK$fgg#-U^V&FqtHV0F_Yy z7ejy}B`_p2X!He4Bd5LqS8G59gA=Lu189y0c=ZD~Q#wN?gN_lvg*=P^-eUl{46{kw z7@#{A5MT^&qa21j2E+bxU8crE`g*y3?+zsxCB!Um-VD)j0)>tPM7ROU8BUSec=YcyMRG}`GA?Jxaso;cMRQ4}N-im6V~cW@;<%h6 z$wZX%_9T={ z^5K$2Ib5!j-ei;;_M<#WjYNp%LwGjihcoKm z3v%P~lG3@nBE?LUBJ$w!nzFdOA#E3wV)EfqLOERClHM$ocjV9IJ>_#LC47=kqQ}#8O&V)WfbblE7FfwB*Pana|2kc0>roh%Bc(>`9_v=P`*<%mkO%nQb{&* zQGQSym!Bk=hw_UYxKvRBm*1r7j`D|`P{?&H7MtOYy|+Y0P3H67I{@M}AEGRyODvfz zItw6j87*1>@m>eXWvMHp_6s4pfslZO5LFr7WyxbP^nlct(P|G!P!ObuMNLM%7D0@H zAz_Okjb!wKrI^Ls6QVAot)7sG^^kIwrZO6`7-F#j60;bhA*0VM6)d)RMJsI~qkUeG z*o_eR5{N=Z(vYfUqFI7%F5aW-t#1*idLNAYw0|oMAkftp`{{17g+#Y^jW)g28qJ zz>cCf0Alw6B`_p2Xlw#ZBd1LO*BC$sgA=K5 z2524xcx?taQ#wN?gU%L!3wdk-cpn1fGR!9JP=IbMARrXrMmY?542D|)bIE@zASez{ z#NbW_+W;wdm$4-FvNkA?`AZhOc=$--u>;eQ+4nrP;VH98k`9}eQP6LVUsEnb4!8RH|6detSO$NyK z0V2s}AHY5ZkjSu;B>Mp>X8|tz0a28|kj$WQ0I-Lg4gg%w0Wuh(Nj(Ojc^=>u1K3aL z44Di%2LUnUaS-603dm(RMB0Y{x)%TehX8Su!;r^d7z;Q;{;`0dG(ZtUJQ>6Rj4lGg z;sD2~kfE5t{4gMaLJtEX(gEcRr^xIGz~T}h<_I8>$`~pbY>xtxDEcTM_A)>o4@e=K zc!2#CKqA9Ak{ko5WB^=_0a7V}A(=trI3SIjjssk;0x}rVN&N&s^BTbG1mH5IGh{O8 zBmgqVBLU!@3CLx*M%pI@9#i8IVsl$pHJ? zfJBDJBuN3N+yS_x017C9A(=trEZ`YAodvk&05TW~N&Or^^De;a9N;CTGh{O8oCg$< z$9aJFJwPtQ8`4e%=-vkeqykDPhar!_@B-i+`CkA8*j@sBr|3(7*nEKeGN6)dE(7cz0TLO0 zlH>|N-AP6QcVJ5|9Z|mD638JQl+&NPRi2&VmFzhZM1>$*I?Mh*2RV>^h{8 zoL;aLvzXt2sLN^V4M@ZbNI6SWISsi9v3LoIxe3vb(`S|n7Tat{3pwq}hQz*t$ZtUu zavFCFVqXMFWN9TQ>1~M0YlzEjh?bmAvLv%;+<~-}(~LV1*Ef(17Hy1A4n(sU;*|sG zfbn6;WYM_`(ZTrKg?N`ha#=cKeC|PX-$DZJLG&;_EO{)3_aR*|KKCI(?;u4i`WT;F zh|zmUST3Xo#)qYt#ry%p0ORuj5>W~%XX%acc?hxi0Eu}BF~s<=RIu3QLHc2Q@*uGv zA@Y2PF~%n!V*d$}$T9%q^9Z6+261@=F~Rt-B(rEdh788|JchV_hGejqVSJuIG`~Q+ zo?sIjO6gCqiDfeA6adW0qX6Lj6_Cp?g0!Ckbjtw&PXU&c!;r^d_zYl0{?7nG-vC7n z)@1M;VDudj_8c&V3K@zS%nJcF6j}&~r~s5Rj3=`f0E*uDhVQS?hd z><{IJROglQNPdCx3Sj>eb0ogP9Fs{>1W@?}a47;fQUXIVgT`yXG;(?kaIFGlFgTI= z8-V6-fY%#?RGUyZoT*#vs;Qa@X%P^a?OO)-xbY&Qh5?pqp9KM`~%Z6`pc`o_C z#T9}ifFcHWGI$3tk^;is0TxgpLotK-dw>Upz6V4o1IigZ$*dG$Ap^ve0=%eof?z*Pm1!QfBo zp8=Yx0I$!0HI&Yf$)NKE5I`PZ0N(WgxeS4%{S}~F9}w^r5KK7?c?^c-fDPnd4hU)h zC}Id9gKq#MH9*)mz-B6BC}uGK4hW^t?|_JgfO3XyWL5#NXe7fYoE6HW_~i*hMI+2% zTZuV{qALNhjREo>fJn0W0kBucRZjoFRd$l(CqShM=5YCmIie_mA(=tr7hn%L{Q|f) z1!OQplX?|Evl+mv3b3Ej88R7kegk62<2S%t1CYybh_wFzbejVL{s7`AhanFTW+=m} zlQ4f7MxzBT7U5z%8Ax#1NE7piNdU*GkfE5tTnb2_P$?in0VroUMP|wXiGWk4d8 z0r+za8A=jGbHV2rTvEtJj)KoIxSS(N9Ta?y!6lUvxZrb)x+rPn#08&Ya7ib16%>4q z!R0cgbHV2rswf%c!3CdVaJfd>^-%CR2A3?#;eyXG>Z9Bse=hhOgG)9UG(f@U7+h{s zAs2j(p@xz}pCy3NB&&!IR=+fGH8MFfr7bwq(UyA$XFAlj6%75rV=h+$V`Fql_I&6QyCY0 zcF|JioHX4+c2lyg@f4ZbO?<;NzF1*ZCcd_zX_A?)tZuc_iIy@IIseA5Dgl@Cyfm^As;dcMl+>Z|N(i^Ys0N20Kn{Nv9 z^{$>z@qS?SZ{DtQp6Awmj_2R+GV#RkTsHrAU0uFzFM|Pp?^=ZE-<#v3j&nR+Je^Ss zVYtVu*gA>%TAL*e(v>Zf$S01#760cxRQI93B^JWAzq(&fx?m^@O_QcBmkp8ga8^`z zjd)%~b$`Xe7rA&Yn7715=|9UHTzyy1EyP`@?k-Qx5Z({L8gM;Rb3~G64waco z>Rm|wJHGAGl8z0Ng)7S)Zt{9^S}q%0JtVGw*Y<3e`M6Kmy55OpwBR17Rp26T1pndc zZ7gY^wd`UY<$iJr{TVNF&~71@RL?c3jzkIHkW{_Cyk^gHo8>dd^9-y3Zx$p?YHTO# zDN#GyOu|33y6QS=3%(EEtGl3Vi2q5*YLd)J`lU4;nYMcIUQ3XA) z03O=vwM0j!VQr2xkW@cHcvErloZ;m*Z>G{&Hok$|e+Ox=69%b&e~D6~zaz)Pnbgx+ zwyUl*Wggv{Bby=rJs3kVJ5h)14-2s%KRzE5>D69R? zOcIPN`n5nJufo@QG~-QY0e3yAfw!!Wa-0A2w$7XBaCtrTyuUZ8_9*GtD%l6AS~L5< zqigm`f(ITJ-=ca8Q!X7Up~1Q`!|JiA#6R*L;$e|QsR`e`bARtM9`r`kv!iTg^>w7B zLuvjx*;e^~)@Su;^%&q8dLj0KLn~TN^jVm|Erl!_6a z_~(dtwD{XZN*FM?iREgSvrD8rj+bLBF^A^TmTtQ-6@cDaPKc#lSO+a3dub5FA?d@X5l`y{Z z?U8i|PyS-Q4rqr|3r0v-M_lFy5-uvO!5d4$(l%jwX!8%v^TxPcSQoV4^TvcJ48}Ly75OfV#C+Xgj=aTUitrPt zj|&q7Mhfc=vl6yLSPz(;u${ts!o~^PCCmV3Ei4MgBiIWWFKn-v&kwI4l*;*TV2TEE zulpchgzXnI^3(4pVF!fuh2_Kep%w$z z4{`oAD89qPar;VN#f%rlj3ZzQEQKHU>B20~juAt6Nth*UpRmiqM#2sWy8`1Iu|lGS zT@~|Xqc6-EMa3{ql8@-HWoG(#ygiA!feoD6eBFu2G9GhG55;_TXqySk z6J`$^BrG4sBjdpL-&EjZG2n*xgz^F0*{bcF2^_FT+2 z71l$n;zD85Ui|a*|@v|;pvkwSJCc-S_b0|x*@!9wl8A7 zIcW18VEZa;F52&el?$84_n#NUGkz23jyA8y&Zyso%}2X0+B{VVTY$Equu5SIVd1>< z!1M#g9rQpVg#8k>2)4c2F#f;Al|6xf#EgH0Er!|fo`ag+p=VvBov0tt$W?Tl_CQL=xa+n$KYcZ(`TY>foe&)hd zPna*-N#eTog{_3e3u_>ZZ`-e~xUw1$cUox`A{Ev|%;*nO7S>eQYFKB{nP$S)z-EZ~ zG=!~%ISXqpECA;I_qu*cEd;IuI*A2p3JZko7FSjX3xZ9+eEe+I62|K|82O1OB7QP! zE#_O#j&;LNQd+_`puJvLo9gRg3^oGS3T!8441t};0(sIFwh3)hSv4uO7q%G}+X?F+ zYzwRq;U}q%!a~u0AxuZuR$RX0hYLJ)Lgjn14aq^9pSg5}@nbkw%-2O&80-exrl{Re z(SN0I++H@@vrxBb0-p~ ztfVv&wU@A6Xy1m7LhUUq3T+;K-rx5Twi|68el|lG?y#TI9$etzXY40t+>16}nfLcb z!lKdUE3+B@y|U6iwE4Ph1H^p$(Vht7{rx~;2hg^I@nj+_2JM(SSpU3lA0!rd5bd96 z^S<3w*det42pfXR%ZWw!-thi@sIWM+H(&&(q7D;w7;OjGG*ok8N6?-mY&frfUf@xL zf7Wa|>Ih-+Xb*$UK(!Ed4DA8JEMXWzrQ?W+Fe@?N30Qw&ql6{EPN2<`wJ^VvxbO;b zK}HKag*LC#*~l1Sr_nAzcp57#5$yr;YErU+VG~d~gY3dyly}7wVBEnZWRKXhP8605 zi&ew==l!$2z!bF4Va7$MlZ2f`d#>1JPJ!`gokQjba};(S)&u5+I#pOI+WKO?X<~U7 zU_FI7@%rZlrXht0@5g6|D_=zWg)nDf>9{-uSLS{DOktPM9tz`qyNj^PXs^ZYmUr#5 zgk3><4UDJR!ZL9CO5?=PxC*=qyM!5iQQd@HL;D46CF&eunP|Th3!Ez~3-(IbJYm;i z^|2S_+j58TD!GBEu`whO)-(Z7biKu&oeMj3&*j_eX{}sp(aph<+ zV?hhh)Vw=AAnX^~Jk)G4!m7|7h@BKq2ZjAc+piChcb$g> z{z02Jk~Ab%7!S`d%y$VECrkqSEcOA1h4KF*`3{eF-Z32!rVM)x;~mpcVKP`DE??*M zA1@G}c2?gzpwcm6_#9iw3O8~Kc3fCp*eG$s{A`AcO8l*`W5j$3!c<`&aKpS~Iw`Ck z>>-S&Q`Ls?uMafD&Vu($r^Sp7V10!p3R8pSV<*Kst1~buYD3s<%*Ru*n6DA+9*lQj zDKOqUHio5$`Ob^^_my&&NBLi^4Qu zg}D3-Nf*`}#@h_rC1EXKOOPU%-(`WC0KVZj$Q5DyAp{#go->5Cgzdv+en?&w)=Jn1 z*fn9T#dZ1NmnlpO)=oUavi_Q%QX6q)eyCj+Gq!~d#Up|r88?Kr6AR==#!X?`!uU~; zEv!Av5F0CR-M55wfN`gJW4SG?Bia=Wu>N^Vz9UcvZNA66h2{wBg!UwCT)Z*f71kN; zaWLNS?g`^p%6-L#d0&_wtRL1pZ%_OZ9!04O{yf5V#M{$@f6qi+aUoc2AP>ci-C(?) zc>U)I(?^>-$m^P)D^Qg9|G#A8QF|l|hijDjVib5Z9>aKJ?TPjjbdc{*ftb$^$7_@( z0Qnw071#@H-r%_R&xG;!>_0)Tx%bb7^+CHIZiH{FP?#awgT*Mk5Y`vQcZ8SwQkXrz z?Z(RurD6pHQ@w#+y?YI6*N3(okZaPe^YU(fShP|;{yaenkf+Eq9KRb_; z;XMX25wSz;5eH-vG8vhII3iP#X~=ZM37LU7BQp^fWEL_TaYfvaImldO9^#I8AfCu# z#7l;4a|s$t5k6Y73|Wr&A}bL-Sh5Q7M^+VZx-QoL zNo*{qkOU+aiARng$B;OLkJKDTjv~7dLL!hzWCyYh*^Y!GTahqiC$a?z#)xf1)+0g4 z1|$Gkiv%L;lv`m4(BMNqD-nLBRf4=lO3CYryt5zgA9;VsuMBt}=!WoXA%1bjFS7VG z6~Bh!*G&9+h+hTrtG-Q`ZymA>2|+d^fyf4AF0v9?imXTckziy2!td4iy;%_AiQXwK zMq?GS23dme>)v_DYGgUG0`WzBaHIT*GJk^1pEfVRnw){mLR=ANWG3Q-xFBxGD8w2u zMTQ|}h#nG!HMk4e!4HsdG(wT>h&ul9qY8EtNHoH4L%a|dWHvGjnTZTVj1YcLZHx>< z1|#N(DKZ=}K?WfskpYMqVu=hv_)~@c$Oztf-@?7Qjqo9iV+bFP;KL6m5I%&#haFBM zeCUFYhw$-_L&y>2FyfBPLHOX@JY+ty09lAkL?$5ovo|@|CMCF&Yf(2Kfr#H4{8^6# zAnTAIBp6wZtVDPZ>WeH#Jdg_Pz^jl-7#)4(YH>{rTyo!)YBoVua=SU&)3MoQf zBYafp43dKQoyVWI$a~}i@(C$JJ|kZcKC<);`Hn;*{O*vCBJD@`$PphYI*9B+b|ZTc zK2mf5*@f^CqWQ=|!~^gwzd z21qZYH)4qNMU0XDNEAkD4-$>+Lk=QGk$8l^EP)U9SRiKn=4lujLy_T#F~Yx1!bf=q zBc{j@gkL1_i@eup@*BGYNICKid5sh!{0gxruzKqeyN5IbZ%VvE=yY8Xj#R10Jz z(i&-lXdx{TO{6*RUK=A#kwyp~?ct+4Es(LuXk-jBAA7Gk$P&a8@jwzh%2%XS%Az!<|1wgA1Ly|>uWwZSTBne4IVv*xWA~F;^vf+p+G6ZRdwD@1Ny$PI-)&KuLbK_RZJ~X)P zOA^Bj#=ayW`ySbMO0p$eW|S>^l4DQEz7|=tMGKOx5ZMw!nig5I{GYGux{kRUGxe$O z@9*(=&N>ywf%%X6M?zok?e;aIvIEwgdhVgG;C+PL`80Jy<7LLQ`@CEFKk6{aJg>4%D zw}YR-;vS~12!(_p*QOuaX2hhPAS(VPEWBEJVAJp14U=!1I;%u0|0zeg}1 zh18G+(n2~&4;dil6hf!r47^6*nxJ#8Mxgz#RNx0~acK)88T>?oeuXO#2fx5&_!)kK z1#lB?fc8knlK9Th13Ex=co}-?1*r>`-q0Sp!b{K*dO(>P8-8H&6ijuoH^REFkI81ll)D1C?e z9}2I-I2Z;aVKfYf@}T3a6||9*w2P1ErfXm=%!PR{3v`sV9G1oKX9=u_9q6u8$9*Gg zf|$+x*$O-1Q}_(NgnjTBfwMqX&?%8lg)*SvNzma<1n9u#FzAq`0M7*>4-_HH5hB!? z%oXgffX-rc_R=2)0B0^SA%n2I20CofXc!CU;U|cL-k|@)_W;aCad9Gwgo!k)5>#6> zlvee@En2j88MR%d-KJtx#dXXZa2rBsr1w$(8L@Q1vn#ZvD04wZ2!nc*%19D&jRgGx z*Wo7If;+hX2{)hw&m}>dx66q53~Yn#umg6&F3|q$Q8*5zh&L>pKbasibRz*Tz@I3& zZI*wQ;<1>jSj$5>yeq)d&>xW=@FHlNv=MI4KsBfiHQ+oQ!B5)XA`d!_n*=YB@d2Ql zaED+KGy+{htw7KZEx8XAs~W zm<%t%vrrT2Lt|(Pl|fhZ<{+gW0a0I%-!*q=5wBu(%*RDEI0u`y11(fJA>}{~W z8^gmKm>PnL`I4GlnlpQadlA?QxEcKj9wCCg2zn(Hx$KW}qY0x=<6ULOG}aWx+;vj&R?@ObA7f z4>CX$WP$7C{5vQOWnnfAQujX=rKbK@V9|Y!JrsL4>ZuFpj>Z|3sSQ-YuB#KnsE&7_ zA=RW$t9D>N3%a$STMFqw7ZY?5;Q;RWF?ETc7iM?pi~VPqhu!LaIEH$dN>NOLaWEYY zkdR{3Wnr*6(^1GNIO8Si81`>L{-042R&FlOI>}g0)ks%D-3gy#bcE6p&UlKGqfFX@nmRgIn#HZJ+=)bj`YBy$ofP{cY^)*-UhyMPj#4_5zH>|1oTraML319Zl# z|46_w4v#v4m9-|V+>ul135BtKIkh^M z<0+_~f;kGFg{Q#^S+g>wphLqSkX4u)dP0yafRC;{IgSO&MJd6sZ^R?3in^_#lpUyk8oPNZ;0|6)jN@X>iOzai9d z+`oY}*yShp2q*#t0B0@NLg*?X`2f)nauq`NbC%=UfXV~8ASY-8N*hw?Ki|+3k{rmMK6$&ZC|IciDFXVuW9r%Z%U#ckTv)sOWmjTs;^d~?FISExtgSP7YD-O9 zWSJocXq!x1YuawpmYTNPL}HOiX>JIP$R&NqpaZm5St{jv=nBet zXXpgo;AQCHp(5=A{oz%31^U4N7z{(<4R{@50oBeio80v*Q<?-h?qQRzl-IkxYV# z@D{uclVJ*|Sf_=$(~-fnZRBn2n)sE{A0* zBndA8RfFtm?JJ-nY=*Y59yY>iSOtwi4RZs??*mu^AHrJr2-blj+5|R^->@qIzruL< zMU`|A%K`WbzJxun8+O2Runm-(t)QH2hfm-O_#8fio$x8_0{QKQeXt*{z+pH9m*G43 z2EK;l#2<1Dj=~Z67EXW^DZ)!|4!(zza28I%8943PWnO^u@B>_gAK@oZL%Rw;Lmb?I zYo6H=Gv+#f{s0A*l3So$E&y#N`5+YT@T^kM!2c(PWGX>$o!;eHa<`$hXTOK3Dz)w} zV^59_h3^(h`Rn*h?@KR1chD*Sa4s_NtOP1ysX&QJ z2g-?Zl-@JtuV=LZB~thcBV|^h+_Hm;`*D!I zoKOJrLq1R`qH?NSs@{W3!1^h2VwU-WaTIKgl^IyKSiuIC znJr1HqmCCwW^m3mP)R0@>R*v5MJm?1pus}LSP$&5tZ}_P&+VWsXpRV0XzSD_AoyAK zZqNmu1&yLMu`xx9GDef9TB-03#0oAn{qRq&Q*fr{@Jy?Be zC-PSYM{52Lj#NdW#00w~e0GY>lWR=^wD{2YKM*(NvIh)+{_raFgI7Qq)O^whG^c1j z$*un18;cYKN7@%R&4f~}fASxRn<5wiDoRB(47$T`cmouPW>GCXY$UJat|D&*Pr+*- zeM2#0RsTXeJh2d*2q~|OpiC*%Iw06TxFodLXbV#O7V?!a$77C#F)$jmjB~T&W=K59 zqA+b7OI80?xfX}kV*x_*;C+}63q4bAl34;$ZsnCY8%AzQcrqx4dr|m21?xlD1-fpb zgQ;xE=?S{xsY_p*e5`OmH<&&E6;BEjXs0(0Zeec&=dk~ZsoR+!fp!=5+Wrl0TVV@) z4Qt^Ld;vS*6ZjZ5!+Q7#)><3lPfQn==)ia-&2j0f!-}M5v^Mt#6%Rs7h6ps=C#fD?nAJ)v$ILm%-8} z__GA;Zn3?ubqqn>K=10a7NkowiY)vWoArZN&xLtwiRL^D1A3d3^n3p_vt3xuu_Mbf27ztY?R=`Fk zKLu1Hdx9z|2#&;<81y~fcz$f+))dmH&dffOK*XTCxL@?lr;t17lYC7vsSN+SZZ0w~ui^77bq za99?~KxxpSV>Fb65>OnXAQFl}Oi}(+2K8kPSRF81LJMdP&7ca{1U!dbCyoDyb97XW(h53e`a}wV^(sBPOIN76p>hhMpb+w%B!C z-yV1Q1-rMwycn*XC@G5BW@(Sh`6lq_~KF}L_K~H!YdcaH2 z9o**X{nBOdIzIkGW$N_Z%au@J0G&%@vikg)7;!U*qK?Lj3m5^Oj} zspme*bC;XsBqO^&ybW)GBAEzMG6BZIXh!&kcI}QaikgyCS`e zX(PCV{YSV67eM|pufR|63)IBzXU~ko)C8-H{HFT<70Vx>f$kcnkX?zn1GhmFn-caX z+=82M175{Flp?=}U5QkK(Otx3;D_LZrr=qnVH2xrnne80nS?GURw8^B%y7s7x~QlN ziw}YIe;B(iHKqbxYSiV%>|p(~Vz)YU$x&f5f-XBg2ALoXv;#a6!eV&H3@To$#F_!z zvw;#;4YMjlLSfLtIzQxvJdhi5fz~2wGx@M5)jn+1sWf7O8^=8_a6tkqQIA6bsE&JL zXBCC;TZP|~m>;7o0#kBIoLaw@0;g$S%P#*MUg}$&T4be~nqCheVCxv>J-MUGS?DCU-`O9wIiYKG~gB@&Oxd|2HGoaj6 z$JA8b1XGua8bJqg(h#!&=(15gs0($VHq?S=!A=nxc%)00lisIf=Ev}-gNg>8!%+jx z2+)>65!{Aj*Vr%&^F5y5!0ZLDLl1Z!bk(Lg=;qT4&<)x{8)yYBKwYpUW)ynM!NU*+ zF{${|8V|iBx5aD+ouDIh05wcYSI@l*X6FQc^kt_jE3%g$9DUs}pT(5DOps|4N#p0| zQxLK#)!^_l&pkmexkE73ieJOj7%&)fAoPbJ6310zE;yw!Zq+b6{ z;qSDG82)PV(ablN0B^xK(EH>V%+VlWDby?B4`3UU4QJi-EFJQfeLQw6GZFg)k5fT9 zVyuA8k$sVU2Vn`mjrna*fW+jj>||tZLK6$4(vp7Zl^p4eQDX0xfVJ!GT7tp3H%TPK zhM9(caJYntQh1frUlT_CtLT*?Dbhci!#Lce)Rv5W-4Cws;7EdB`xTk$Usa|y@LM!8o`|1OvRW@E$ZN!X5T z+elC{F-aDURWz3zNtw;1Rg_f2{9iH?uZ#K*t~V*QbrxJqNwpDGMR0qtC8g?1s_*|L zV=)NY?(o-^={68WU`s%9N?c-cR;ev^t23#FXWLMWZA3P}KQ*4D1|fw{SYnDqeO?=A zw(+TCg5=ycuHe+i*9|W%REGj2mSb(-t;ApZ5vwru^0O6t@UD%G=o5x?y+E%)?nBTH zj$R;cg=TgGeTCyXxP^k0c$i;qrN}nr&lD*t?!)y<*b94LH+%t~!)Nd*?1G)}3G9IF zuno2*Gfi)&$l=$UL`t8Tem6y)m~U}E21nrtd;?#@VK@W_;Q;K1A3$078S@HU2Bq>6 z{0N$}FJNlw)4Y2gY?ftS8g3s!Ka_>At$z>uUAP0c;ZL{)H{k|chd)4xQJ7I$Z)=H~mB1MwJv;*XL@EXN zK*Fj>^*JR-5o(y!FEAwY{N<*#)O=)=V3mv?Ke;PRO6)Q_AoCD*)j%rDdBpETkd6lx ztL{aofz+UT(u!RF6xb%hnsN(9Yc#DuVqhA)2a7@9ePxDB5C$WN^BiQv9>qp3pBI6vXm46oCAY5As4D(3SOEkP~u1b`RO*CO^qYR$&xY z*P*pSEsps%=48;PIVGVKsH9|0$1I}*DeI8XEbsZXLQr-26wj5R5>$i=pfIW?Ti4dK zZdNu}cYngY3e{;p>H1=+5BimqUZ9aCJVv!v619W6?ai>ih5z%I%3LSt2<@S*T16Wy z?Vtm60eR|Kf?Yv@^b0d`?*ZN6MNkR70P>f-m6N~x^c)|N8;_NdyX3ZN3rNM@n+Nsk zeweR-Z9cXmo+AfUaks;lI-EM$BQOjGLGWl%33)ZmSlp{(>eXT}_GEen4Pk1LF+=$C z8t8OS&F>BDuftGK&)2XccO_^J=4i|}VFakDjr2^lamgs+QJCj2t^W?sKGTzzKKb#2 z72`A(wqb68k6|-xfb}p5-hv4* z9>#%kKM~xmA?klE4=Z3X%z){z0H%S2reID6HNv+&Q;l&R_W7VN?*zHOhy7ic4bq|T zlDE32dd~*4Chly3hfSPOvkoM0bF7FrLU5Z=yV!)=R`?Vo|1)m8u-kUFfcTvTrbc1s zId!pXpf0A_T?uK)^T+Tz90N6^8t@GqhGFm!?19~&UUQrXwT0j((gV0P$4$GjUtuqY z`##LQ>VxXz8Zy-#x$e0a}*a#{3g*!gUCtXjPJK-tOJA za+1A;zf60^>i9WfsDDQQ&r&#ORPwPzk$ndC5bXCnce%Zbn`C6K459d!$E*O>J)tQ* ze&kX@3P=uCrn2f^4-$~6+1w^T!>uB*!ZP*yIQngzzPKylDka$;!7VjtXx%}&HPklX zSqU8t8nTs;`nc)i&bm+sVy5Fb0#AM7QwFmZW=*I8)u9?Z164tv|5O2eK~)*_HB}YD z=v!KSU1h%l*T-ySKp(c1f^x{H6!kMC`uUNv*t27n(5le>E=eQ~rSZ_W%lf&22#Dsn z2&R7RN5A@02=psJ1t34O1p3wc(BEs4SQC| z0{Z;}{VY*N$PAf4KT#wZDNzoB>)qP5Fq409qzT<@0!rEX4-TNjs8J=R;Bg|AyA&40 zZWFF{v($4B4i}u;;5e*Ij4TQm?0G+R2@;|PX%i4EZ ziLq@%`mB8L#Q!kduRpvSXmQ_+%%!I#MH0)JO@hTaon0>ZvxF> zFwe~}TY#T%8t2<#ABfo&Q@;+>8g?TWqmMEaVFw%(NoUMX(9ttr!c@ZK))lP(3)s7P z?%PO2ckI2OC%g=j>j8b>ar}da=36ABFYZiePdSH_n$fd?<=i)G)pMakT zAN3;rn&(X@lH4EI?Tv-4xT(R)ZzFs_Vzl$7&Z?bGtxlKYc7iY)@c#z4q>;KOX%*#@3{R28L`KD9}Hjl&SXySFJLOC_utM_hyePx5*|Zl z?VMEMM?Q-<`;g!InAREmbz?$Fh5U;**?RMffwLogp{=7LA|oS8I(O$E#V7SgWe>N` zS+_zu`IL&FTs1wV!so-Q8FIGDmxb?8tj}e9(&2Nw;=0nA2d|%rw#bO62rB+h&!<_X zmjh>?7&F50DPAfDeUFfb^aOh1)X%^6Ein6l8>l!w0ncY)v!}WqNjbEz<5MD{ID;lW z83?nsc9%ZocQq>Qs*9kKD|tRI&l@!Ir2_RPy4oV5+CWdlmgm5^n7Ac7W=u}8#N32VpKrIrA{|#6exG-&8c4&mO7nP%jf3PqvtJ})%yjUZAeOUE29Z z@#ix8LOlOp)4nC6OK>u;t{2jXc9_FLTyg!i$%nc z$iz!f$xoO#H_MTDZJ|S|Dd$^LvUa6)$q(TZVZ;l+L06J0WVcV((3*pOrjZ5!6hi|7~5dwm1q}qB1*Ir{!0>^FsD;e zwN&1fqeEiWtv>hqL8tbpzeEb?e<%g}|4iS$xnoV+0bv_dd32_vs>rFlBM-UbP|Q!4 zUJA?p!s}<_0~LLkS(4QCuDiPB>XR#KC~?k^98wOS^!QBs+Vs3u?YT+#lyrUC_3qNM zUGF}fd}*(K-E_yvPZfp~&}}>Q=-aJtw@!T?>3XAEi6#5z;!`5R>FQZ&zp0opW4op) z-z#6yGy$n|Yy72-uk`MY=7__&*R1@u_j{f?$|oOzRCGuBwhhhu$@3c47y=a0D;*+U z>eiw6%P006`7_gyBJSYj)OeykUbPaxa`cxW-0@1RvqU( z@vc`~3D=LMq$Y9QW?X&l-3jF$C$AcFlWM3=M2R-ks1k_`XO6ZKG3u2`=QYu8RJ;^f zN;I!d$#v-6sk`1GY7gpqzV(*&&pQ!0K8b{>;PvrDrz=+-bHxKwoa6IxYO^APKRkL5 zg_M?Z8dG5UyI;L`adz@hwY_MPpdVF9hfjtd8!mokuxS?Wb1AjCP1t~byE+3BZ7YS8 z%l6gDh4B)p)0koz(Ow?~xsdpL@4ib}>$i?57}~m2gfm_C#7EOk=VO&VXi}u~5Ai;4 zrZYnnb|w-^`{uIkhBQt4SyaLMDO-t;=DD!T*$!<0=Uc&k|r(btI zqkmYaFMS5Hr6UemGniFb{FzeFobqNcb25?oA|ze2K(2l@SM?67sTsCdL>X0SsSIZG zTLgM4gSm>NuT}<=t4B&Fa8m-0#;IKfQ$90Fx}!w>ea5tWTk5>M@OP9@!D_YrGnk%| z7=}a|C3eiWXPfNZ^*$1sMu}!p1``(`O<3O}nF#wTpgBe@^)0>K;eJ~XoKZ0qg{YD~GwOKX)pd7k zf-k`Wh+dyJqZuz<6*HPgBZ;*ok~xqp8(FJy)}g1CIXawyXkbQjA}CgqCfuJP#d?-V z+04t4{;WAsmX!oB#Kq?Hoo(IV>eZfJJ{jYBWiqY9snBp%Eoy4bw_Z&#^W;wj9rckB zrFhB5M`iR}gTr-N{rbfjFXCdnsb@CJ!u?Ucs^R8zxPPBlkKq9ppw3X1;=()8J*KXB zG(JSpEaqGme`ntpSxxP%glv$_#AYS-#o62<9n*30>doJNamwd3Ck??H@KGI(O!>s@ zI`ckQ=%uR+Tde`JFYEnSod!@PyE$1tWq6=&cDHrbTYlixpN?cHNgzg2mFmyg&6RAF z=4~XT_R5X+-?hp3Pzfa5i6vxo4wEZD(w@y}8e;~o<#dZ~>g38h53g?)j$}!9eMl|O z4fqTBO6M~B0{&b+x5D&J{2%_1yV!(~svs z&&OSj+tOTET>Zn2zo1ded`fV@<7Ouk(QhE3R@;BWwNfd{KD!hNZ!qbMkNVn&U&KtR z(q&nGFD&ULY~h@4EY)%ni{4Z;M>TD*r*6A+Yd%9V+MUE+aSv6K;0awjs*IRZ{= zNI1^L`{al)brrTm1S=PEe7*JIH7y3kbw)y?Sri-X_~gbX?u!*g!t(gF(kbrt++Go8 zCSe2Pkx)DE|L|+ZCdtD3A;I8NhK4XV!t9s!HAv`f;rgn{)swa8rx%v!h|(&C-T3I8 zU`nPMH9mQvhTn;|q~bjrVRGal>@_4bay0FGbwKlbnLa^6BL`vA6lL!kp9RO-&gk;v zFSi`6&S>*wQPZ8Ufr?0ELSp~SLg`M7xVRjNlA5j}LmCw|bC9Uf1qpgy?6rgSc6~qj zXKCl9F(NW5WHLTVS<`9fV$%j@FA58N9T&!z*iL=Ack99YxS?_Epq1$s-3SX^R&+{U ze|Wxi2&jR5n$9)f%^zF%$>E*ahlOtUdKXglV0h4)BfSJu;hf1^lsrqRav+g~&?t^ACO_eO9NOoU$%m%EUfSV|;M@c6ux2 zl*D97xiVYtdz_(cQz_#sNRLlgqQv4YfL|_c>XWCyTBcalSMp|2jlc9S*@c9b)zo6j zGG-V$qJO9UmC_X_HeJcxr?67$4eS3@VzIsq-lrwQi_!^fp z%eEug4oT&u*Qz#OZwt-U0?FbL#r68&Ei9js3gh^UqRf%Lo2&bK*&VUCph93lnA5D(*=2>)_>;w>I!;3reF5#Z{_`X^TX3 z9VFDvyOwOTplIQr)J45Fsb{@;d3%O(*V@#cvP3$8nAIr%&lgOIABz=rlzp9RDo0o+?bI`|i%(4LMyazjV$%trYrn9T&LsW*| zaeCzVZR^)Z^Of<1S_y{O%8~Bst$U<@)Zgf0NKF?-Wu9h|W8{v#uwuYl&zeN7l=4hXzx=*%-kq%-38$U2AX_Dgu1IJw zXncHN!6yTyS?4svMeWafIm;Qv?1PiWtm})~*B*8(XROy+7?s~>Xs)y*N$)f?wM$^m zZD=Y_qq__#;m`2UGEcXO&7U%pY17r8BCr7`EnensKRcknq46crq;Z<6J=oCfE8#Dc z??)sGBGILhI||m=Ss`=X-gTez;v{qZ8<{{!vcCffEl8^Fx?QHyo?hA>(U=>>OL8Mq z9|_;JMy6PG%tsneseuvJ*sQ8U-^!au^p>_9Ua^LVA zl}|S|SERC8W7D$&b29Dng~ldVG){eRs!4iYCvXPRlcw^NOW6iBYKB^hS_9MM#-<07 zfq6*ib+C2a(~W*?Q1B@)Pn6@v#%5bp)Y1_?Yi!aygYbTYwMI;veD>KkQ2|@%s5{@- z#6>eK$2B&UE0TbRnwW~EFw-|N=_*n9Jxlqs`T|YNSUEn?#7u06X5I)&H!<7f^fX=# zko#3~^_rM8rHQUn6L%yJJ3RL3EerPi}1wykyAWCZ;8_z7b7K`3jit zpj*%LnwZwLF;|d)ef~`5SZROuz$O$b{dr@mJ@MO>Tw3aLmZ8>p0I}wXpKW3amm%t3 zkW7o@pn3Ibwp+2cs~0sn4QXoHA`$&?Q@36g{n~$IvuU~4IT93Zv5*}2s1fw6Jb3B0 zm~xt$)d*M)L^m}n6t+GRs+L2SUOoDK)_N;F3DVIXA5}-#Qzfgsvg51c@je5Zn%hd* zL@#WL41L$nnNe-JCqXUEZEA{@MPfA)>Cw?_S<7E@cW-#ukzm*=9r9q~oAWGXv%IW7 zyN@~^UyB+{{oIstC`nHNXyuV|=39I7zHweVipm5@Ox4Vkr)}9b=JVQI;G1S{(sQT& zW$sOX_NiWo_*Q8aR3x$qmHjF1he>+Ow+-W)W+q2@(zB7Kr$OP$$_np=t!?7&2{;3u zCy_)qn4`c+M`LsSmv-v4rKEC1BXGN1xX$JK zEzA}*O_nTXN%pgyKba{F9m1||zNt@Sdl^GU1M>9|lZZkD2 zJP!?`o|_$06My`h@_3}NiG7Nfd3SILk50O5v$u7}k&ylMciyS~{r6s(MpM%6u->JS zXnL<;O!&O&*00u0s94w0>CB5>zLOfNiPbHP=<}#h z#~*b4*CN~7EYJplR?Req>-cE43{)H1@8VHkPOsMRNzu;qc$yRj+L=*L)BPDwH_LPz zMR*{xom=0B7QENEesS}KmsOh2>ZT@NRe$Zkn@DI`JZE>8bU$rO-o}d+iMQLCu~pGc z2AukFa~=O|-M#6>4n0Yay*7YXA~rz&j&APW30 z?fWxl{1lhHt=Y?xA&`mzRtxwKR{GyQ99eBld^Vj_KNz%x9R%*TKdZC^4ONYuO+2rq zdMk#Yb&1ne|H0c1ZB~r-KBp;Ktu{M`**PO&Kd}8fUoFZtzU-Z-ZELYZbFhq!&+49YP_{oNl^t!}$Y@TUEsBsdM$Mq{&MM@$nT1}n##`AGwPiuox11e3&Cf-}p1dbr7?%nUJiSN~}cUY&JMJPjK7yb{ZG1!iODl3GgUrdJ?`P1qD^I71szLeLM&_-S|7OwZ zwf4VhLf$)ebmDK}T0X7j{hZy4*xTDm-Q3fufnNH(MzyJ@8KU>|&w84vjd?A5t*W~= zxVUI^+Hbz`b8a)SmpeBkkzbp;ghP!jhp3RGBs}*(TmyGt&lEnZaAx0^6-k`VPMGo5 z^foy((5!Hl_u+we8oJBFCm-wicFRTst~%LpB$KGl@IGeM^L9l4=M>sbKwd=9k`Ubq;Vf-##6GfS>$0JQ z@Q!Z=_A~Xh5iqWw89T{Vb=QVwHjaU*1k?M(m?sZponNwElv9MxOIpwgu(y?v_(Iir z8G65;$<>PekS(YyfVw2gk^SV@SKYV5$YdXEzu0Dk-tf^75mhXN{in^X{89B2o`Hvj zem1~e-6uTFNEdnrpLE1mWuRML>!Ne-Joo#+s!leX*~2TZ=-NnRM>19U3PV?hPF(Cr zIHz%Idb_j53tg+6bUwCBV2UYdE69X8PX-kNs9 z9$LXRm=6}3&kQsZ+fe-M!z__Vj;7|Mp5Gs6ZnR;u>%)O2Ut51!U%^49ZCl(U2bqCw zlWvOUMq7V<#aFXk(n86TY-T$Db~b&Z+WSlRmJTsp+oR@_A!cTKTEn3s?j)Qk&9l#U z=z63q8Kn_vZap=`>_;N{3KEY{6s`OGwtK?WqFUwRtuB|u=@0uy<2fGdK+diYF{L}O zQr;KiR$7kY)!JPg_)Z?Dz?}*F+bf)(G`wQNw zjPE_~q5zHS(N5$r(ZhWwhtpp-m67lz&}_zbqF?q*XBKrLVOFiD&i7jhldd!GN*wL9 z?o8m>Z^abo&Eh&-Fw6BW{(at^}G4Q{9Gp}7Cy}Mc!4D4ALjPl>Swz@ zQ)v6T4HO55rIIK<%na^=)+)nH+sr95Cyy-FV3=7Y7xvS0DQr8!W}rGQUz|R@QPEFo z6V`jx=`+mSmE@>lW_C4p%NGtaaT!yFnQC4AIRb@;yK`9F&ewX*JhE3yC~rsCJ)H;- zlte;`KMiEOJL|`^;WkkvL#huqan)0Xo4s8r7g842812VKn3m7R@5$>Rcv}rpOmlK_ z?Bqd`=Jjs0yF`k?XEXcPEJh_J8#px5-D8=NY2Br)!#BT3>NJRy=9Hp;a9oE@?fAuqgX;^JMxeXgW@ywv1UkvAOecJ=(b7BqT1+Y8Cve3xX`$~$hb z=`nL&^e6YZb(lGM8J%!AHS$kM3yRQb1!Vh5H-DDU45mtV8dCH)GqF4Utid>UxEjCa z>C*+r{nmvmJ6vYfHcAhCGE*}xBO8=B_}!e}<9&vWGba`H9V9drq*&SLSkFtzLgOXo z;iIMV)FY=R{keAF6vxNe_**m16n=>YwG)XKVJPmTp3mAXD;5Il;^%Y#`GFx6qbf`aRvv;bVHlOB9-5 z_9Nk|Ji%Ognd)sg!E77MDapHpNQ2H=7iPu%F#bc`+RzRxI`dC7-FtFC<4O8jyk)NT zL_?3a%-z2JLKR26N`8E#GU zO)vlJHp0Nnx80;gUHx#wa$lD>eWAl~(Pr$Dw@vITWVbSj*Vu4-%X1Yfp3KihglN(p z8O_HLe@$#2o1~-@Ytr~qX7!DE(Nyi@pYFRh*_`e}W^FP3V_LimK2DwAooqJ0O5n8b zn8AJjHkrBJF{_ZcU$)dz#s2YS{J$hSt{0=9O|Dxou{PQF^?G%d@1KjI>l8DrA2l;@ zidip{t->q);@gX9_^Q7|bV{$$?6`fb?>F-{oQyB`q|3=Gl)tI7wZ_D$*#4nV0)LkY zGn?W|(ReBsb4>0xQWi~FD8%_^-um31F_rfa(sQawGk};FN$SQjM!TazxOsknKWp?L z0%xRA)w}u0+Re$^Pp4a}mqqf`6+UWiqfR&fY~J|y_ZAEtk4tJ?=8H8l zz_j(T_4gFt`nxAV&wPBEX^TX3B_y;O^dCDpb4y}=a=l=IOsb`p(#1NBfhMW9t{%t)v&i=f#n@D}3lknS}c%O2F zQO1_c%QU@C^jB_mIbZcOz(*B1KJ0SrGfzBTJ3h=y_^9a>`@F@P*~@-O>G|X&qJem+ z1us9;?()N*MAeE9G;W6ZXfR{?`!h_A*XRHnW|%ocnFT&2ghuLj3mko?K*etR388k% zV*0BYru%D*1ILjhMD%$iwdc8Q)0-1c9xYV>Ngd9X;kze%(&E#pV*6|@3q<#FVrAOp z1F@OrDq#b!F@H&-@}h{y8NbXahD51|lA5s7&op_4_&Y~GKGPlYS9CII?uqcaXlnelEY6AiD{c551A!qn~8@pwWt}1`NKGKI+i2u z=V$XB05Lz93+waiY!g8my^w`cS$9`c{Ii#r`zf+1@xll8zso1|#B}_Xc~$RyUUHZ( zR9hDmdC32NX|kpF?_;p3PngSu&$j%n{9jA!-;}e}FnF$sQ;q)nG$%}3!e^V-Bx0y& zYc}b&aAuy{J9f?}w(G|059yY!uE&+)2Q%iGi6dC>rk?LEmP>t{a^0ptJ$Iew+yluz z-<%wAKVOAX6-1Iw8#{BpDLj&%@1-_{<8BVj_J^l*`dw1)quw{S)sk&4tv)v;-0>L2 zS*rES&8OMA$??~$7fRt|*@-NR6Io-14!!Nyyzxc%6hF^voG$dSg{JVE{%;b$f9PzQ zbX#b0jAqE{z0h63uTGug+?(ST7xB6~YyC|WP%5-uere~7W)~Xl!AFBxX}%J5Z?gpk zdttLJjybjB!rBl|f+@%Qo*;Sz5=z?VBD5jIdfL+Skc^UcDC3%>FhG}V+JL-Foe zXqt|pdc3u;nLCDcAX(lrhOrRON5^8?Z2Y*`oh+XGdS34XFMiMxbsFEv#?~cf{8-c- zT4ENBWoCG8nMpT}1u)rLHjWW6>vA^}Rnx9o*mvB1F3=3ooact%6PKr-O4j($Fu(YW`#Rf zUuw`{Q2j9lhY+RiS~3aETItrt`+xNB*eK1Xshx~EiDB2g_5>6zT4_2@U}NMLBsG!E zT4|>1`NLK2vggZHW}oEj#ahbfn^h+6AbTZR1fE%C0u%AJUzX5Q%B(i^Co*JP4TTzpQpr;DPV;ZM6_S z=}7O5TZ6jpXg2wMUuZ^LG$r!UOGUO*>(}F1?X6?;Pj<{sJ12!Nv@9-qhi-+b>AlIJ zEBOY#oUS=q^`=S{4a7&Qh{#mGTrN~Cj9rG#xM&@;?n%>=JDGt*Qsiyt67TGF6a}U} zx(STy=a&7Ij?XvwuKYG_eR88&v4pNMaY#fbahJZ1(-#rFZq!7OjJsI`szk zJtNo7xMW8opJ@>9Q(%KBJekUQ3W=Xp4M#HHox&+ z!M^L`!)D%SZWGp5e51+yjz2cK$u_s?zd3Y8{~FWF|3LmV7_$a#hmRWR!Z&~FRG?kK z>Yfi7@3GD7eFq(bx0xP2c>fx`ZORmXp}%^PkklcC--)f!;smcNN5=wQEFnzT8kTZ^dyRN_uBJ$e^r-5 zBYfwpcnPI})Y)#j6E@J&llbs(nHzboUDc%|FWwion>o_H$CG%pZKiJ@{`$vXeWCWP z)$DN7T=G`t9vz|{k&2jVsF{aHKlEO{WG}F!%T**72@J`N zb~Vc)Ti0gq@?>mrUubntwqx-keY?HXDP%x&x=oXY&tY?^zUR|?mzh76J@71_x?0b4 z&wup&nge#bTFG2Uq%4u8UW3eZsZfs#D)pUOjUtc!k zj&Qk=(PG}`rs{NmRF)QRxy$-Tm+aqPHu=o1Xke_NwV7Vi{26m@*v+s*)DI@k@o|QW z`&%g;+x6{Kq;rox6()_ZdgrMvchZHH+2c-#HWg`RxT%Pk;jbE~w%3jNLEY8%n(;II zWupxes=O78ejC|v`f4ut=;E~c!5n-v1o{@l?e5%l{gb+{?7aSlxW^Tl%0xznEJ5f| zg!VL@^5wz9uX8R^%q_M=Zux(NtUA^wdrj?`)ZY=FGxI#VS=n!VpLEEP{C?Cw?KQDT zL?{2!eSM!8w`gy*etYxAO9VWhV}D-%G}TYv50CdL@uk_Puyv5gg7z-sUO6=Ot*){0 z5}onU;8bHoNX^0vo4pIJRC0dr**r&>J@nDE(rfahJ-4?H+jvlMa$@$LsrkJKkR-t z{uUoq-SuDVywoT9{WWBUO#t?^BTpVSW8Wo~D~HVjVyXD>*X|nq=^= zshBRbG?lF`*>9Q~OS+pY2d6&&EMG4um-Lr&?>08O9j)JVa3^j0 zO568{l2^52b1~f&d;E)&eVKkxgY~f*c!8QT|Gox}X1y15>u=u$tb5K`W`$z*`~!t} z30INcD$w;>uYuKAgDWeV_IS0ujbtLP>6)OFSugd`?a`q^Ke9OI_aB#7ddt;8p9<-Z zk5*B$({w*Ds^+Fi@!ENnAEKOl1s2$bWHuy+ollqRos{W)@jAR52CgHa33}n$4wXMi zvyY=)o6?N4r_3XvC3vgXsdVVI-YG}ksLX9*EAZcomp9v<@BfS9wZ-lgp3RaRvs@b=NqH8}#b%Oxiz2{=cZ1 zq;ipzyUksKwvh85%GZ4-ry;SUJKx-0L_163Z668mEnMFwoSA28FZPFr9UJEkJ6SX3 zPd_woqrG7q;5hr}sq9X>?TPA) z%%fvcG?^RkQ`_^YwfsQ;<_kYP81K{G^Xd5No+h#L)Ts;}uR{+gvzw+g7J#8{TSQRKrP@6HgfF70=&Pm?=c9{;m>)1KSK@H_c%OEjPmw#zqB1dO?8_wi0F^?>DQugt~3=!C$lbpL}8x`~=qj z6evNM|B^TxCg#E4+WId^_%C6cByg`Kk)Qke&+7iQHsaSp=0Db6f{OSL$&UG(pF^9( zT0*aHSw4U3;qQj8T1rDL&N_g9Uz~H70v}e*@%W;HG1`35DuaKg@lm^fJM+kcRWHBb zo&z|;*&Te;?z`T)xGHjK+kAxKojtpbJ+l4az7$tF)bOJt(Lay6-y@v2jF_@`OXq{L zruDI{>EAS_zTJBE91!tBpPvKyUdw&?%}PYdd4+a@6KIPG`W?8WOZX~@)LU4VuF0b} z_y4n?lLx-C=l3%I*NBpcCsq89)R|&S{F!6yi(k@-xqQK0td6RYYVe6H-7}IHy%~|1 z1bIs$%J>)+CP6%@gMKk@??n?>;;;Ib!{dDRWjpLg_bqJ4>Y^*VezY>bE`;!LA}?q; zel)X}F#GnL>b?fQRrL9B1=dz5Q!w;N!swk&Gy6;IByxxp$w|+ZCA`XTW}Is&>o@NJ z(R94-PiIaJ_NVer=N>b|m-@45i8FU8Z#=6}l^#_ekNv$`*v|vlCb9{8>XM0*qCJ;P znmlZV@F8rzW&T)gp%z|&ySt+q9^Lq|o0wRQH2Ckq0W?V5V&>el@id(Qpr#zMIkN#t761!H%RMju|DApfi3ccMp%k)1TA70n_ zwa=f-ZRPFoPbTw9wy$enHA7bNTsOO!x)R-Oel{nIa@p(LO8?A2wm3KAnI|`Yw9m-C zdr{+UzT}HDGgpzlL^evjO~xW|W~uFh}$`f-Vo(gCH;##cHT^#XKkj+bK-oVEj<@LjK4}$ zzEi)Nhdv;0>^m3hP2L)Rfa3psyVkvT8S6`sqd=2uZsq$1rv7Mjo^;yy@^aAjni>Bg zdF+ma27{$z-W&0H>g(G0@+xTHHM8SGl7#ukhcvnF*G>O5Ja4~lmaQSl?jeQqMJzRP zT29q(m|JT&qVTpZ^l8q`8)ooYysU}Wl(iJr%A0PzeN(sE!pjrRlptR3gke2C+7T)E z%gLYnJQk;KK2=}na`)%My+X>AlOcWw!kU%#JoICMnss-p`aL!KZkpO3k-=|~NR7n% zQ)XXDk*lq~z4Z<|F5EP+AJO{~*}>+lNiU=PHqAbC*lVp*)=?>=3!8v;$oW;8=yl}v ze<*UVL6-8G7e#+X8oFOI{`HB+?^Tlf+c;c7xnp`ra{nFoyddhaWd#OC4(5f%*-j>< zr|+1}>&a~*=M-FOMP0}*cT5}-(II!;3Ln2Q^@Zv4=A=gl-Cf0-2A}kl)QN2UD%>90 z^L>1@ZNMux@mJhHUT54jV>giU_wSko8>qx0_uQ&_yXnHv8t;edtV_D6mu?}U&gSue zGwnZV-X%{heCP=jgmk6Zh_3y2Ov{bv@=~5`R7j|KYoq_M>`5o%Fe1A)`XjS9;@X9V z-c?smzBw{wi)S3|&XCnIG}L6=ER;%{1p3GG?M?ou zWc`wbn#j%m$CAZhskPZ3ne0OHP!oeo_B+W#oux&SqtQQh|8!9+;?jjQ%Inb-q2|NQ z{#wZ%!xH*2>B^lV)M<@Rym2V>)q^8cw%YDy1So-oBuJN_Y*IH^C?4}!>PA7rFiGw z+IBz2PfA?18o!P6M6a9cmjXIH6za?}*~XT*n|*zqY~);*lPINOTwdNzyE~19mS`!C z)C%o8x1>I6_xeT2huyFbz4>&?Q}gClaKbtr-u>;A+NCxlq558b?xX1w@)Z5Xk#O4V zF3%^$-3yt^cYU)VK3;3y_i(5wy2JlisiTN!JlR*G&(Yt%ovgD=iO^}zdOoZ6Ec>?5 zDgIyf`$NMO0yo%6?f>D4ys^7dgIXJXU&o7tqzW~wr9Tz_?Wrc%x^=oGAD?{qbB=x| z`I$VQbCashTKG-fYffOtCl`V5DR2=)G&&9VxX7^$t*%SNOMh9cArQZQ>jp(%J?VY#Taq>IK27nX|} zOhO7DTTJ((F&lUJvnI1eZ{vE*?B9vAO^Yj}r`)?pkStBGWKSXMUzubdwAf$*pCWJ~zd%y40`J?DS;7@-y8DYtE~gj%oXMi$DEHl{ z?Xw*o$@69ty&I`ZYWQ|8wpV?`E<-nlg_@P0`(v~cEcQiG>pG@sXH;~$!@N2_5B;vx z;@45CkBji}ey1z@6PesmvOGuvBj3N&Hm3YO>g`aAi`XE9s$Qu6pX zQ|-70uT0p~=->xlY;?(bS-hjl5`ON+Ue5&Dn<7;vpWM!4es_3SiyWKvY%g*!kGmH+!hPN) zj=+aG-RfBK=r?!oJ^i&7ma1afpLbIukn~NB1Xl%hPU2h$+>_gEJ4CeqbTQCgD?5|h zw7!V^|NTNB+sDq8!vx#M|HDyxG&)Q?x!DUqSYo zGX6TFO{<&Bc=y8j%*-QHyL;Rl z9_XLX?KX?+Wj`=;(!otm-8!SroB2$RqomoIHtqku+!D3{TRQd<===Fi=*3f^C*|vC_Yg>*shJRn4 z3G38eU9~YJ)!L#TH+9dExBs4(gfaj6xY>LPjY*~8pGw!J$hPADo-$ji2}<*SxD=Z7 zHD{Z<1Z^jgb5sWAzg%}tYIIAgJd(QpY|F=ves;XDqu~F&+-x2b)?gBS^MQV0Q;?wC z|A)~usTghRO;}c5fBBoy!Isv4Z$-8T{r}OL{@=ACTQ@e9Nwpr^O8$F!BuMiE*Y^|F zQNq#F*2w>V?KfcxcNQ{(e`G|mHTe%I{F~O4M5+CsMwA4p{XdK(whbheza-kk-{d#p z*z)gtv~7?7KBOHBk{UN{Zfy*9?)-n>!V|WigfS-3D*nZImsAY4{Qr9l30l|vK9E%D z*|Gb-$7t)#_BI=n9m5lro*fVVdyFjD+vBzq* zt@Yo>kW`H((dz>VKXr6h&b&8=*fjk2lIO$gyMM4xaVjFzx%nP4`qWo{E*}28^VXy7 z@I>y7mx$<3-2A7gMNRGNybSZ<#q{gEivQhjDi#U_wAD2naz0fFK$O%akWh&kxY_2F*;=+`^zrI)L zk4^CsQJ&BCAKqG&@v-XH<9(_|nX!ZoG({pK+KW}0-e#RYtuJ1pTa?)*?SnmuQOTEe zZIixi|9FWBp3g(+D?YhCbn@PKpSe*c&7Xw*2#GMXhu^vt*>HDsr+A6op3jbutJMqq z=&Ky>b27@bBy8YUPohwUg2h9}eE(j&gul3%DD7E`yV~C_cO~x&_mx%CuKK~;& z=ivEGxR+|ntV(fnQemG%!r9QNxc|vO_VoNmDpukp&nNX`RezklqTgrnK5rB^g>RFx zX`V#)wsY@&^VS9~&D*dmi<`Dc=p=XGZQf~zlr<}Oj-FQ5eSchg@5-;KvhL2GJe1ul z=X_x;KDvP4VEWaomFFDb(*WypxU9LY*y51TMFoG~gB`o?`;8j15^2hrVt3G9q@1gx zbljkNY0`~6@c(soC2&zy-+vgF2Z{oQg7{Ey-#``_H3ZQxcU&P|L$28 za?YQf1g-d|jIm^fI67y8c$pGnS3n##hgTacCD zBbr}VVQ+N|G}xz-gWCfZS_!!7qc5LqJ@@GD&8c6W`VKs31{u>~Rgd+Vs{W-?E9c2msydAnl#qb2AF=#_=@8w31p4vx+^y$w$ zYk)Qi7}RFl-23kPS+5P6r(#T%XFI>5^ zX_bmmaFP`QLwmiHeOp5qs9O=jmARsLz$WW1Up+XLNpf3l!HFF ziD_U>#A-jXM*w(G1O%|G+AuIzSe4edDW9E~=0lj`r^% z%qtsN4XZ6Qs1poAQm&l+oZ7gML;m|9{ubvC<%J$&RrGnkqf7iHl}eYkz)?O#I}`(l z@$TzJCriG>Tzn2D>lelXwXbi zcGdk~5`>>J`4=REvie$X-Txbe)v*!OE5LAj(%UvDbFbNa&z#HC#0MV_Xg*IeSsWDT zhAWHsriw zuFfd#1xpT;Z~Ca{${!F%$6t$dlp+4_Je#xfN)7`=UX|Ezk~Ou39Cy)tX&JfbS<_4T zIqN>#7NW|rKkMC{SK}|$DJ>;!vH;N^IR`de~?Sh$dE24MXl*KiGA@5-6 zIf`unhL*pj;4BUTCMoQr#rB71YNk&ICj2yQyTX3(a*|^VFsQfM=sbGcyZOc60z+OZ z-7=Lgkp)~j@??$uhqC~YD-KPedp*cu*~i6>V#&bJWr90JtmB%zQ~Y|F^>FaOn`2b@ z^JU1Hbz`PJT>rf*Ak;|$vUU_JA=*MfR`bAv;wB5e2N2m)mDvfM#gb3Cxy3%4o>Q~O zK01F%3W3TljbWblDAcduM*(_yUfvb!K9gorD2tb2F}QdsLuQ=Twi!N4`>qOkZ7iD( zTCvSozHWHrX~(C#jz8F_VsszN3W@trV31Fq_FKe5+gTqQVZ_Lgf9CgWk#%lmx=Q=* zSXN22%YZ?KAU1h6|F*B)c@<+jAk^FZKI-c7`u+DgsgSS7vVjhe>}Oz*A^f-}Hos)` zy+G>hr30y&%CRg57`i55JnZeO-yB>SU-PPp(M^UFAKth}*Wk7kpm5r^!q|`o;651` zZs6`-({97H5xaj@X;*|X5g1ze_Z65jFP-JwEK4Yt;T5Hn^`Lc*WWO~Ke6&ACGPl=I z>Q_C##y5GL8C6i)@A3NEuoT&KxkoWQXsdr!M_PgRh-PkdgCD=K&snQ{^ZNpw#n&eC zLCB4l(d*`vOx?)so-V{Qr}($;88PgTqnZ=@!x4doe6?ZIZW{MkUhREt3Lnfkw1u{G zOV=R!X#!$d&M**;jb&jCQJ5LP?1(BnA2R;S#^38dQbpPk%kqI?`T9Zm_CCXPgobb4 zWhqxJ{+GOXap{UfMP-TtuEev7MuM{|#tc%#ee1V_E{EJ+AY_5hkzOXI-7nrw7*6<& zVsG~s8q&iFx8r#aG2`6VV(l89)TPVYtRKa*w*z1RmB1j++`Dwl@F)JGHvxkj0>%>N z4=*`d*(dN$zF7i0=_EL3>+nr|#<68jR|T*7^R%N?N2JhrAQZpEb!+B}C8b?L${nqO zk>Y@qN%$rA@=bu%TAyQy7%#=hG`aXC*KoY;$z>;wtUl_9qv;vs>on%Qm%Y_$;M%cB zXQ5%s0{RnVmH4G;i&fopbt(%kRiYr+D^GhoctqK-8Or34$mRNbT}kf+!M{!f5{3oT zm$XP^rOv2j|3r4*84X0fvr-o-Q+!mh_nUK*7Sic*Y6b{Hk7n`6KKA#b--mThYX=B? zKekY0r~O1fP;bQj2Sl`RH@l-tQ_DI5P?IPLqQEvOK0(#o(C=q$0f$q?0%E(R>0t*GrAC2Jnelw8`DG>s0~PB+nPYx*j{u6 zVvEC*c=fEX&*|wqZYQ?=WKoBTdwlmKF?(FWsjJrfrL6$}c1NbO_Ea(p@j-5l6#3bHcTIU`8t4X*@^gvVkeT6U*AU3a-ipfovRoeBs8X zyMpc2No<8H3d6Ta;=Lm5K(2m|GWPdYx}x|FiELdn7LGVnv%%rEYKa8>A<8aZP9VmpdX{(TA*UiOJ}DD(;XKx6VI)axfwO`YCP$m-tiRX z%M$>1rZ5p0T7|bvp|dQ-TNzf;9Sn6&=`M$kx5FuYMLxL%THj3extkHs!I|tgl44RO zALfk@&}BRlLw8A(lA+~gGB=_?dwYmqaXm08mYY6*-TT8TnqiNJ+%VB*B`ql>Q?#b! z`HDPb-UbS##Q$BJO5SGW(^)Q8(|deq@+@Q4qnoYPHCA^iDrY&|rn9!qg@NMT>Aaa- zEr3=Jj6+>YQ&F%r`2Ku4^&$IycBHuwt6dSoI<|nKEKfNU4x)$Cq)VXxW$K|Ii|qua z)1@pPfA-rvbCFX<7Ys2DBc<{GHeO|(Erk&IZD40hm!iO5uFU3M(90!g--L@xL#6Uc z;R2s^pyM-`WpLL1n$28V39H1?9PZhB<+`p-Tx!dA%So~7wH#JTn93A{9N~(s(fLDp zhe82UZVw(YlX(pwQ=G};4cf^gwI%f_n_9Oo~^&sNj#+? zqRSjs2n=2OIXt-NGJ-v~{jq?Cw=gVX<}X9W9m#hI30y~K=xDwdxeT1cDvA3zU{I(s zbmrgj_ZCI)ed3ZFNpsk5kc0K_05!fdmrd*-_~@z;27@DFI3SM;G0uH$_Mg9QUW}|L zQa~>smd8$YfSB>Xpb`Dcml3CWWegf57X)$IWEtXe&MQhxJrgd`N` zH^P)VLe|7Xa25UE;~BJm?~mf=Q+}WsV|kcAIgjPz;FY%Ddra>EQBEcEV*Ie7$Nio+ zD#CyXQK_JGAV>#|9rVBy-y)e|58KPLpA_XMO8HA=T8mq=!AQ#`cVtaH(R4r?=!rz0 zo3!b5hN6{P^YZ+U)?FrXke*_=_8xoNigbrI9m(N4B;<+Dw+B+!^1GX$G9VCLMxdKLF!BReP zwbA!{$oehMy2u!yjmu~Duv1Ii!J}H^l^T!T5;h*RT3%U_&A?Wc=(xebHY_S0Y+Ed4 zo?S3=s5rxEOIcwTsJZ0|c8h+Y1Lv+nkEOHhnK zs84P-XhXt@#!nOel8iv|SF)Sc&1QVL$?oRz*3G@%x+-Dd%1OLq2?!a`nq7kf%C(Mv zN_8dC%C1qgG{nHwG>o~uj!G~e)qw|22%!!&auA}OKa}Z#srv%C(Yj*`pS)j(|Mu-g zV9IyST?V8DAg8*=KK6?prI&b6kA-{NX?25ME;#?XFwnL11K!fV%>JO_M$a)5fG9ud zOlJam_zMGQ3;6x=P1(r5v0en5rfV!U@`znNw%V924GZ2e`O_7$)#fy#eh)A&}!SbmE|+m z?f?X%XR5oSYgtGSA7Z*_C zL<&woJ?SN6YiDd`8E+ux`J37HH&Ez;&3rnsWX_4H%l8kU(=TL4n1cOwGrLY0*MLED zC2O;eZTodoeLDXtTN>YI;>06&1w;E841_~<$QNpa`EKYCF&C+Dq94w}y3 zsnd~09IKtKlx5aE`PfS14wpDqDTzNyy!MVUn(;kqN5x+g1`$9)!8aeM?1uU>H zYAOjBp1??Ice3_h`_|^F80NXlgIm9oJLJ6d&s%Bx z3J4eHAcdCyl@Z;)kL2VE(-!SySs3%_&VmDVDSqLLawE>KaaNW85D;2Bt|-lD|5bxE zMJmK@7dr`B(H89#h_Pw?2Mr`O5SVO|VTD4AdM27VAp0ajXX|oY3?Y-Tsdk7@6 z-@|ELLyPx+HsHh*6@xFqIcvGYal{inzM3w;Zi}2|bnyrp?^8%)Ot}sw>|rI~r>lOg zj$GVa(9$a2;Ah>+H~rL{23j(0;T~o?7_$5%W0Yi0EZSS}28A|~9=mF^dsz@+bll4w z$!BAGE;*dP>A8a8rQs`qjYL1@(LdzJxe{u3= zVr+zwd&NrP70T%XFvuaf-?F)Tr*ovd=15jvtBBbT!L+__5y!aRrNg}b`y*-UP%ck6 zAe}(_%d?7JE)xT2TcuPEU(H@X(C%{%v|sM}`=`q=SCfwvviDmuL~PV9qU`!fT7s3! z-f*9l2AycmlOf~Q-XAgRYdN1n4{z+PpoxW3 z-}nT6bGa8O0ii5KSPweRl3|c#&A<1WK2=NN}jJ-1)L5RXz z?tVqf)-89d)l7Dw3NU}|W$66PJ7DF7FQtp;-H)+~)Rce6HB)Cbi)Ts?qI7dgzKUj* zK*1cYd_#u(kNPlY@SyjXQZOxZS9GD|qLjn@+f*af20T&-Wlkr5i*kHVzglhIpmP!Kj>1{x)K-}IG9UsT56I((U&4MLP_y$$e=vCX3oL<+emi2Jg3U8 z=;`*S+z;n{5s-W(ZsnU&O-cO|atsOs1;;ejhj||V>$hns4K``ej(M5oHFpDC(Z&Cm zuUP$3x@Cu_YRgPwvCTOi>0O<0`|0(s_c}pq@K$u!t(k0MwHHTsrE!&lsnn=>X)L9i zk zI;k(1c!O<=!%`@{yhWNEIrO`baQmWfph-j!R7no)nf*H$Ki2NR#=j#t8}2w_`R@pw zhn&924Y20+x{cqMpOt{?N{~W9Uv<+~+(axNt5L2Qcf7SfC|+o3rQCV~vu8O8D6qWT zSfx2i;$lZ)XXUCg@!2hI8l@|SpL$eslg_pVrdXrKB~%R+-3@?&wBsb-BZJytEzr;lR}ZEZDR~3Qa%bCXWS476qnQ zvF9Cj2pIBpAkJd-dwdCV;2l;!87*Nfc$2%R*Xqme!Dl)}OL7o`CIJvy)9W{R@7}FD zvgPS0v|hi$Q7jC!;yro%xbx4^ORofOl}9q*il@T zX(ziD<^ENE0mnedg0baD>8X?nu&*E+jWi!6-8%l~%G-3Qm1*oKj{k-G;fubX?LQma zRLe1FOs#Yy7J4z#opk3)cmvkG5nLI+R&by;^e)RvfySy?f~Rf*8mqeV1_lcUsx$1! z%5VP%b@GaJRz`Lu-?%%(= z;C8bIQdLO}yi*reo(4+He>YFZZ`%iKWI8zfRn9i!Tb%McH>r)kPVJBu_9xBm(ey6n zLg5nrNXJ^q$%ky)Wc)sQ#Kun%R?+W2Q}8|hPgauYH_SR( zDG+%(0d4L74<{@X{&K&;T&CjugR);&W)(6Oju(h@Hb*OOn>KVbmV0D*c|-0iS4A?&t0&yhY_9%t z&@TTh_O>aZfQt+X4}1RcxEbM?l2RbPPuS<66$b)?w%nf9NB))cmHQJFW8xF`5Ex3Z zpr}WAdsc}@Yt8o<(QCzs((n)bwDD`GVzuuoOPKQO$*d>`svRLca$M!jQzp(3 z8f2qymj0QC|5GPj^}WoXl<4H7PU&&i5tVMpm_J{AN%NXaGwk`L`=1@z&_spwd(Kxd zR^NGE6xg8U=;jocdDF=#E8G`O0jh84m(Na2U02T&Ah>Qi-zvXxsh#kg9h?Cz$uC*5 z+A|SGo7We}yt!I%D!BVh_!KC29)3mh%c1FT58oW;UBUjCDYV!2tYA%N2|gz3xA^2N z779AEY{_i6 z!D%1xw`QuoWQ)2pey>)%242)FzWdSRe$j{hwNL~0!qC0G4=b2wE*zjzp)Y|+k)+42 z0{5Za^LhZ&&r?SWTaGW-^jydbxmV;Ocb^x$KmEzyu}?ea4>w3PBJ~@=FW4<$C_5tQ zne1~fn9m$!a|J}S$<(QmM>9>D*H}MvLuU*t;K4E6(`njNvYa`{MpMaF%>k2lD%mM~ z>t>GNuY}YOT5-S0wBe&bAx~CWSmwk{#9vl2aV`SHSdEr-nJctwm7~#0OOocL#KrW; zo9@{=2h?1k)&MHoJy&Sv_z)VQXywitm+^J&YA>|6x{=9l%@sz_-N3KsK|~zq*5^TF z+%lY(2U9v)gFmsh@WVZ!FWx;(3qUkvL63_2b031DPS-L)YCadQz57fXIm@X9W= z=X*nEclA4Il~KPkEj%t^N}N8b&)BoA%RB6Db8i~oe9tO)`ul+RQlnsD78T@l9I; zw#1K}Ke10w@wg1n{C-!(%#2_B&f=S_a9ZN|;Oj9yb#XzfWDK8{w>rM`QMPs5O(akT zb`yp=wf*4DvuUXw`lP66&FoRSi4Moh#y_*;5%lt6*TP0~3tQE+=L|+n91&J$cF~b~ z_@-ko*{ff_aQDcdkJ{s#yi?|Z;q|WUT>XBInr%Wung~N({1C%;h*&O z94sRgUY+t<&)_B}#^bv_2ojp-H_AF3zcB&d6hpGPhqfHw?R_c>-?ZdfaJGEijtT7# zEyFjpo|E^k9hnxh^xNtyHZ?-3e9gx}O+No;MuUzI-r!;_ZTWJJw%@l~%un>0!z+MK z6<250v73>x!w;Int#5Ga+IkyJO{3Z0Y=O|+${`3hx~GLFcfw(zXnks2lAe|5ZQOfQ zN%n|K43CNKQDm0NvDQwa{p=oQ*8J|Q)Kh+>7C$in8f@?O%O-=-6 za-tDla!OKabYfgeN>YkPVzfTp_Mu)fE2l=cx6W>=}`gtG`4$* z(2&irw{dN))+N=Q8COd3z)p~^tmkgQ-PF5-APn z*m58Vos<$4oe~`dBVfCi3r(EVZxE^<%nc9hwliif8J8JzDGkg!GjArivywwXN7m>A zp=CS7J=};*Rg(&OsbMI(N@a&TShw;s$%ogfRDI^z8G$^!*`vYMElkvAWDwO;lBuvW zAvUc{s#moxGb$Cp)(^62O_+omzqs-x;`@!erES(>t?T|M|vj4MW!TyPWh8P8f(*<*)Osd9Po|_05U-|zL>qc zO{;n)(lIw%>sGHWl2Zd4N2|{4!$CGJ*x>a-R}-UC+&5)p^>so(S~hZ_Lnn zuV#kM6M_C=oK1^X#)YJA)C`%DfJzR;DKaHGflNgDMX_j~4vMwE=ljB>TKm6VBDAcv z|Md@qh62mqEYxJ#b*=68uUaqMn3kvn0ESq?BQ`E3HUa;^#?8VE^iulxs;Oz9^#})v zUV)`VhesO7;a^kIqEkHLoMvDVJ}mo~AE36g^cBOt^#`Z5Y96t1d>5lIPARa0TA z(N$APx~i#h*=dkCvML}oEhR3#8aA=f;Zf*!s}jhzR22}F6q$}XswQ*tlG#!$QI(3k zyGLAFbTt)&5I#I6B|JH{Dpf>6Qe^z3^rWv`SJs}}FO$uqMGL?I0kCs%>s^Hk9l(?x$dQ^@FLM16A?O|?(ra06% zRm(7gkrlDsTdiBXUd5IbK}Zf07RCSreb*}VMx`_%H%d29>#9&oZAQ|c39*{|3R<;Z zOlZ~QSJ0{*y9uqD{0dstkW6URDL+UFi z4S|dar6JWo=~G2orP-ShDv1U_MyITIqD z^a`3d$zht%@FW9G`zra6Ih#;O_N}zZs`z9|Cis$VS;nV+zyzNX4Dw{l@<_cA(4=32 z(%Lb4$MjV6`I-7i4^nuF9xjKpU9Cfl!01vM%F40YeP|vPD&2PH~M16(ty1iX0M4F?2)uLkf5ef3y6j7y?$6$`DMMus5U{WMYHDtZnDk z3bWo{E6nDv1~@HY-DH2qB%431>)hpYKN_z)Y}Hi6+k-P~`qj<2BTWct+TOKc9`6Y* i`@hJrIcHU8)Lovu;V$9o>)w^Wz3y=|<}uCY`Tqe?%ED^^ delta 133153 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 Ks~%;@sr`RwPdv^5 diff --git a/packages/ui/package.json b/packages/ui/package.json index 91a5171c..98c14db3 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -24,8 +24,6 @@ "typescript": "^5.4.5" }, "dependencies": { - "@repo/design-system": "*", - "@repo/icons": "*", "@hookform/resolvers": "^3.9.0", "@radix-ui/react-accordion": "^1.2.0", "@radix-ui/react-alert-dialog": "^1.1.1", @@ -51,9 +49,16 @@ "@radix-ui/react-switch": "^1.1.0", "@radix-ui/react-tabs": "^1.1.0", "@radix-ui/react-tooltip": "^1.1.0", - + "@repo/design-system": "*", + "@repo/icons": "*", "@tabler/icons-react": "^3.12.0", "class-variance-authority": "^0.7.1", + "@tiptap/extension-highlight": "^2.11.5", + "@tiptap/extension-image": "^2.11.5", + "@tiptap/extension-link": "^2.11.5", + "@tiptap/extension-text-align": "^2.11.5", + "@tiptap/react": "^2.11.5", + "@tiptap/starter-kit": "^2.11.5", "clsx": "^2.1.1", "cmdk": "1.0.0", "date-fns": "^3.6.0", diff --git a/packages/ui/src/components/molecules/editor/editor-toolbar-button.tsx b/packages/ui/src/components/molecules/editor/editor-toolbar-button.tsx new file mode 100644 index 00000000..7ada9e89 --- /dev/null +++ b/packages/ui/src/components/molecules/editor/editor-toolbar-button.tsx @@ -0,0 +1,26 @@ +export const EditorToolbarButton = ({ + onClick, + isActive, + icon: Icon, + label, + disabled +}: { + onClick: () => void; + isActive: boolean; + icon: any; + label: string; + disabled?: boolean; +}) => ( + +); diff --git a/packages/ui/src/components/molecules/editor/editor-toolbar-image.tsx b/packages/ui/src/components/molecules/editor/editor-toolbar-image.tsx new file mode 100644 index 00000000..2d900df5 --- /dev/null +++ b/packages/ui/src/components/molecules/editor/editor-toolbar-image.tsx @@ -0,0 +1,61 @@ +/* eslint-disable no-restricted-imports */ +import { useMutation } from '@tanstack/react-query'; +import axios from 'axios'; +import { useRef } from 'react'; +import { EditorToolbarButton } from './editor-toolbar-button'; +import { ImageIcon } from 'lucide-react'; +import { ToolbarProps } from './editor-toolbar'; +import { toast } from 'sonner'; + +const useUploadImage = (editor: any) => { + return useMutation({ + mutationFn: async (file: File) => { + const formData = new FormData(); + formData.append('file', file); + + const response = await axios.post('/api/upload', formData, { + headers: { 'Content-Type': 'multipart/form-data' } + }); + + return response.data; // Returns { imageUrl } + }, + onSuccess: (data) => { + if (data.imageUrl) { + editor?.chain().focus().setImage({ src: data.imageUrl }).run(); + } + }, + onError: (error) => { + toast.error(error.message ?? "Can't upload image"); + } + }); +}; + +export const EditorToolbarImage = ({ + editor, + showHtml +}: Pick) => { + const fileInputRef = useRef(null); + + const { mutate: uploadImage } = useUploadImage(editor); + + return ( +
+ fileInputRef.current?.click()} + isActive={false} + icon={ImageIcon} + label="Image" + /> + { + if (e.target.files?.[0]) uploadImage(e.target.files[0]); + }} + /> +
+ ); +}; diff --git a/packages/ui/src/components/molecules/editor/editor-toolbar-view-html.tsx b/packages/ui/src/components/molecules/editor/editor-toolbar-view-html.tsx new file mode 100644 index 00000000..28fe45a8 --- /dev/null +++ b/packages/ui/src/components/molecules/editor/editor-toolbar-view-html.tsx @@ -0,0 +1,27 @@ +import { Eye } from 'lucide-react'; +import { ToolbarProps } from './editor-toolbar'; +import { EditorToolbarButton } from './editor-toolbar-button'; + +export const EditorToolbarViewHtml = ({ + editor, + showHtml, + setShowHtml, + setHtmlContent +}: ToolbarProps) => { + const toggleHtmlView = () => { + if (!editor) return; + setShowHtml((prev) => !prev); + if (!showHtml) { + setHtmlContent(editor.getHTML()); // Get latest HTML before switching + } + }; + + return ( + + ); +}; diff --git a/packages/ui/src/components/molecules/editor/editor-toolbar-view-set-link.tsx b/packages/ui/src/components/molecules/editor/editor-toolbar-view-set-link.tsx new file mode 100644 index 00000000..bdab52bc --- /dev/null +++ b/packages/ui/src/components/molecules/editor/editor-toolbar-view-set-link.tsx @@ -0,0 +1,47 @@ +import { useState } from "react"; +import { Link2 } from "lucide-react"; +import { EditorToolbarButton } from "./editor-toolbar-button"; +import { ToolbarProps } from "./editor-toolbar"; +import { Popover, PopoverTrigger, PopoverContent } from "./../../atoms/popover"; +import { Input } from "./../input"; +import { Button } from "./../../atoms/button"; + +export const EditorToolbarSetLink = ({ + editor, + showHtml, +}: Pick) => { + const [url, setUrl] = useState(""); + const [open, setOpen] = useState(false); + + const onSubmit = () => { + if (!editor || !url) return; + editor.chain().focus().extendMarkRange("link").setLink({ href: url }).run(); + setOpen(false); + setUrl(""); + }; + + return ( + + + setOpen(true)} + disabled={showHtml} + isActive={false} + icon={Link2} + label="Set Link" + /> + + + setUrl(e.target.value)} + /> + + + + ); +}; diff --git a/packages/ui/src/components/molecules/editor/editor-toolbar.tsx b/packages/ui/src/components/molecules/editor/editor-toolbar.tsx new file mode 100644 index 00000000..66bc78a3 --- /dev/null +++ b/packages/ui/src/components/molecules/editor/editor-toolbar.tsx @@ -0,0 +1,199 @@ +import { Editor } from "@tiptap/react"; +import { + Bold, + Heading1, + Heading2, + Heading3, + Heading4, + Highlighter, + Italic, + List, + ListOrdered, + Quote, + Redo, + Strikethrough, + Undo, + Pilcrow, + Minus, + Link2Off, +} from "lucide-react"; +import { Dispatch, SetStateAction } from "react"; +import { EditorToolbarButton } from "./editor-toolbar-button"; +import { EditorToolbarImage } from "./editor-toolbar-image"; +import { EditorToolbarViewHtml } from "./editor-toolbar-view-html"; +import { Separator } from "./../../atoms/separator"; +import { EditorToolbarSetLink } from "./editor-toolbar-view-set-link"; + +export interface ToolbarProps { + editor: Editor | null; + showHtml: boolean; + setShowHtml: Dispatch>; + setHtmlContent: Dispatch>; +} + +export const EditorToolbar = ({ + editor, + setShowHtml, + showHtml, + setHtmlContent, +}: ToolbarProps) => { + if (!editor) return null; + + return ( +
+ {/* Typography */} + editor.chain().focus().toggleHeading({ level: 1 }).run()} + isActive={editor.isActive("heading", { level: 1 })} + icon={Heading1} + label="H1" + /> + editor.chain().focus().toggleHeading({ level: 2 }).run()} + isActive={editor.isActive("heading", { level: 2 })} + icon={Heading2} + label="H2" + /> + editor.chain().focus().toggleHeading({ level: 3 }).run()} + isActive={editor.isActive("heading", { level: 3 })} + icon={Heading3} + label="H3" + /> + editor.chain().focus().toggleHeading({ level: 4 }).run()} + isActive={editor.isActive("heading", { level: 4 })} + icon={Heading4} + label="H4" + /> + {/* editor.chain().focus().toggleHeading({ level: 5 }).run()} + isActive={editor.isActive('heading', { level: 5 })} + icon={Heading5} + label="H5" + /> + editor.chain().focus().toggleHeading({ level: 6 }).run()} + isActive={editor.isActive('heading', { level: 6 })} + icon={Heading6} + label="H6" + /> */} + editor.chain().focus().setParagraph().run()} + isActive={false} + icon={Pilcrow} + label="p" + /> + + + + editor.chain().focus().setHorizontalRule().run()} + isActive={false} + icon={Minus} + label="seperator" + /> + + editor.chain().focus().toggleBold().run()} + isActive={editor.isActive("bold")} + icon={Bold} + label="Bold" + /> + editor.chain().focus().toggleItalic().run()} + isActive={editor.isActive("italic")} + icon={Italic} + label="Italic" + /> + editor.chain().focus().toggleStrike().run()} + isActive={editor.isActive("strike")} + icon={Strikethrough} + label="Strike" + /> + {/* editor.chain().focus().toggleHighlight().run()} + isActive={editor.isActive("highlight")} + icon={Highlighter} + label="Highlight" + /> */} + + + + editor.chain().focus().toggleBulletList().run()} + isActive={editor.isActive("bulletList")} + icon={List} + label="Bullet List" + /> + editor.chain().focus().toggleOrderedList().run()} + isActive={editor.isActive("orderedList")} + icon={ListOrdered} + label="Ordered List" + /> + editor.chain().focus().toggleBlockquote().run()} + isActive={editor.isActive("blockquote")} + icon={Quote} + label="Blockquote" + /> + + + + editor.chain().focus().undo().run()} + isActive={false} + icon={Undo} + label="Undo" + /> + editor.chain().focus().redo().run()} + isActive={false} + icon={Redo} + label="Redo" + /> + + + + + + + + editor.chain().focus().extendMarkRange("link").unsetLink().run() + } + isActive={editor.isActive("link")} + icon={Link2Off} + label="Remove Link" + /> + + + + +
+ ); +}; diff --git a/packages/ui/src/components/molecules/editor/editor.tsx b/packages/ui/src/components/molecules/editor/editor.tsx new file mode 100644 index 00000000..726c180f --- /dev/null +++ b/packages/ui/src/components/molecules/editor/editor.tsx @@ -0,0 +1,110 @@ +"use client"; + +import { useEffect, useState } from "react"; +import { cn } from "../../../lib/utils"; +import { Textarea } from "../../atoms/textarea"; + +import Image from "@tiptap/extension-image"; +import TextAlign from "@tiptap/extension-text-align"; +import { + // BubbleMenu, + EditorContent, + // FloatingMenu, + useEditor, +} from "@tiptap/react"; +import StarterKit from "@tiptap/starter-kit"; +import { EditorToolbar } from "./editor-toolbar"; +import Link from "@tiptap/extension-link"; +// import { RichTextStylesProvider } from "@/components/providers/rich-text-style-provider"; + +interface RichTextEditorProps { + value?: string; + defaultValue?: string; + // eslint-disable-next-line no-unused-vars + onChange?: (value: string, text: string) => void; + className?: string; +} + +export const RichTextEditor = ({ + value, + defaultValue, + onChange, + className, +}: RichTextEditorProps) => { + const [showHtml, setShowHtml] = useState(false); + const [htmlContent, setHtmlContent] = useState(""); + + const editor = useEditor({ + extensions: [ + StarterKit, + TextAlign.configure({ types: ["heading", "paragraph"] }), + // Highlight, + Image, + Link, + ], + content: defaultValue || value || "", + + onUpdate: ({ editor }) => { + const html = editor.getHTML(); + const text = editor.getText(); + + if (text.trim() === "") { + onChange?.("", ""); + } else { + onChange?.(html, text); + } + }, + }); + + const updateEditorFromHtml = () => { + if (editor && showHtml) { + editor.commands.setContent(htmlContent, false); + } + }; + + useEffect(() => { + if (editor && value !== undefined && value !== editor.getHTML()) { + editor.commands.setContent(value); + } + }, [value, editor]); + + return ( +
+ {/* Toolbar */} + + {/* Editor */} +
+ {/* */} +
+ {showHtml ? ( +