From 8944580e0ddec40fc9966bfc06cff5b12e0cdabc Mon Sep 17 00:00:00 2001 From: AS23 <70798346+ASROYAL@users.noreply.github.com> Date: Sun, 22 Feb 2026 15:40:23 +0530 Subject: [PATCH 01/20] Add files via upload --- frontend/vatguard-demo.zip | Bin 0 -> 238682 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 frontend/vatguard-demo.zip diff --git a/frontend/vatguard-demo.zip b/frontend/vatguard-demo.zip new file mode 100644 index 0000000000000000000000000000000000000000..9c0804d77d1cad05d6880ccded9975b29d0bcdc6 GIT binary patch literal 238682 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⋘}y9lwC{=C`H`N( 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 X0J;&}Y{@KludsqT(TFZu3e^}nc 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 z z>3NnmlOn+Ul9MNh&xQN6^CQuTu4rLvV>j zR>0ZT6L4}$YJF5*+A9E2LK#c*YPs+6X7Jn=Rd5Q|J6`-$ zy${?w)clWs!PxN>-fP4#3BzM_FAd9mlV#zBFOPE$nyBx!><7|&2fLr4v}gIr)y)}& zD~|Xvp%FG6PZ`}(6`^J+qLi_{#C7pjT6M^%6lxjr^as~t;5b0%fYaWp1F&o{#v|NU2MeB`%wdJekSWiTJGunk4JglzvI0K|Iar- z@=*T7JU^D_Pw3q8MU%j;h7!nuy)%;n;CxwF1QN*us-7%#Z@N^0 zCIcmFE({GYA8khqdLD9;D5;u_kJe$=pY(duj2smUTi!7uz~j{3v?&;DoQIa4gOb30 zZ!k?QtG)OOuskL72<2(%)ksc9E4p49n;i1DIxoufnzI*Kx{!q($}2N1Fve16TZ=B9 ziAf4$Qd90UXzaigJAg8go=P&06r-XXCsLfM)APxC8u`AWirJc{LBqv;OW@^^!bj(%*Ycq&) zRMtXr$4-ab7M_BbVmcQgY<_b9?aZ?D{431r8Kp-U&x)@`vY~nblh7_como{HgN!() zR&Ybo!)}J4B#yx}yP^#g#>-hKLj3{g*;_cu9bhZd5Uw*W_{|EL8?lq)fk=ZGCL{BXUPv9KXEw4L76v=- zfi^g#IE#zndZYF0F&%q=Zmx&5!&Qn2H82v&i~eun#U9!6E6_$|9)2mdj|86s_wnx4 z=#GIok0%mrSi3|sE3tq_mND6n#)}$^DcYGYy2i87Y&k*XkS|HnFsco(q2idcKqFe> zoz78!o_a#b!V$~O)p~@zYJvY2=K2V&1ddbo2nrUqk4L7`IsF{iwO7fg#8ji{oLlwK-ZLypG#I#+_z zac*;9(1W(c%-X>Lw&@piMQwXgH0E)zo=rBs4A7KpHgjU~ssa8xU>YV#?0lJ;o=|&= z>dCFEVfCy)(I$Z%di{J5Vqmi{6GniYIOf+?B6cLskO~QGn;@RzDZMD{t#7Rznhe*8 zK9H+QnlmCflA@?w797w~IJb;0J56`5`S$_#i`4a$+)L2DNo5H#vFDB;hM>O@^k(EU z<6)1lUEOYGAsm&Gh>dlA*XJ!12_pm&ahkS^X|xn`TFVT{NIG0$7kSKhHMYJC>G381E`WZKsy-5X9@00d zDdw0#U{i|FD>OTil4%(Vlr&ORY;1PAt&mkU` zvE65Ob|H`^KV?NM;jGI6`o9ULnU@>Ym#OIqwWp|_+`1ap&1ivDQalR=%K<24o?=-BjAM7TbZ_fE; zm05HEg4j6LjVkH^;VO!9N~LzAlz^s%VnSd6N^9v4!8S)JsQDt5eW3Le)rT8bL+bNx zR{Cv>De-DVE`R~I2>QWbI78jZ8Z!K@5w_A~L_*D|?OKK3IE(4r*vKeQ?uJP_7$CaE z?s@~iXPF*3iv?o=x|bc{<4gYjfHq%dft%;8Z}UdW3t%v`$jrp;k<;-)XqGbIZoz2- zXue6zeP60+Ni?B3Do~?hLTvjGyYswO^qCpO#}MCb14hhJwv85c32i*$8#)~=&23I1=sXAAR0~QwwCJR?lNnDF zei2clVba8);mmp=Ax)8t8HV^cv+!yS$=PLx_czBfNv-%R=4DRkJfe6~c>S0q$GqC! z1Pd7o;8-UoOQT)aAh=ApSu8Gv!m!#!Izer%R~TSF9|B6Mj8b<6BSfFD$22PpaMPVv z4%yXkRweAHi7t1RUj^YEJKhJPt7TCVw_h+@`V+NtK+kSn4XbT}T`I(07-KwRN`b!` zx!aAk0rfQ2L@H%9B1iyyH9$!oDwex|3fEI-y>%dJDw=NEpT|zrc#H$l&|1+Vu?BJa zcM0;Iu;uOG)?SPv_c7MIGCmdCr^FtieR}8mkxR;wrZV%=-hk=QI0FU6mULc80K^2% z765R4)HxnjIy08$lLpvLb$wTWLNc4z6%R7hI7W(&0BFxjb|wzcFysF&q241`-ixWH z?f>^hkUr3Qis-|Qs{z%i0Z;nrNLF3U<=3MO0s#?Rb`vw*<0o}~0nH1n5%d)rbxx_G zky*|uLv*}yWRw$dY0c)AFSyLg>#r?z2oh4Wx(w*yC4YZBzrwXWqx2NZx4O2>B2&{S znF}KkA|?~6aRaXiYQ)9OXR?xP?qfSS8DK!$wr6I)5x+ymj6F9SE zs#%P1dlaFrlK&p=&@Th|MS9u1U}&4Snpt_2(~c}IV;3Jo1(?&hFHCj_wo!LOUJcmP z77>-pW08XLWZSx$*QXSPD{aFlRB?hGHn~7`R%<3y=V6141sMi^55MSYEc4m`joa<< zFYKeh-<9O{zTG`Yhd(!W4P7xGHi;(7#MC#9f>NA2m9(jnBvL&CyPdGA@?DUvD|pMJ zWH!|yj7$l!w=4R^GDUlNO^Mwit2iPFJ#uIcS|@=hetQneGwgP?oR9ND3&Vwxd1-M0 zj((~c?%^~}=(NQb_YK|hp^R@gVf^#Ipr5iS9%>wS%RJmi@SnHrytZxOnXCqO8Jk}0 zoIi4)ba>?8U)`S_P+6xhRA%8RxaSpr7)b=~-}q;0_mX*G57oU)JY6vSlaxJIxw)e1 z^NX#neCDAiy1xG1SpJ#^nm0AyT-*3Fp6)ddoVroh)Nh_?{wE1|We44%N!JR~y>Ypf zS?I^Uo!+~4r=7R;VLQuS63|bvj89jy|5SFp&6E?qOy?_=Bl{zG=`@?x>f`YOCe30u zEgP{mT%YD^AwlP6JsFNXVMiqKtf7Q{!xg1eD*>;T3bNKyz-NS>+C@%rIo|fJ@xr6+ z{6}9L{Np2*M!&;AzCi$94)J^#{LN3`H*bM{fg@}Q%Z0SC>CM2i{LrvdiVa0T^p{(D zJ{R+jl*F2L7DECdz>#7fvNngR;x#>g7bH^#D4=XX761Zji&Z!+<>KV1*h&lZJ?W7H26gNG67 zbH&%gZ@BZkgU2`mRz5kkcc45g9W`~sv9woj7lu@d+SwciyEt#XO*oBiXH8!>f zV=N*-vuLTT9m6Ai5&)AV9|+)Fm?LqpW(_hkft3}n`LN>rl``>Yb?-#XbD!g8>u9;a z;(=>H74+)f(?4DoE{Cl?N)Vdo3_|l(b1)beu`uR2Z)^7F?Q-m`d!0G=y}<$=du|}F zv_ke6Zdw7If#i0rV{DiuW`n4c*&54ojY7o999q=mYGO#k>1YGz-G@i4{)PhZ1*V{R z)(|vrHUp93`*Fef7(lLQ%^O&_QqM)M9Cj0*U(w42yR0E$NdXK6Zrakt#_}#ShBBHZ z1RHP>&93QD%JM##;OexUuWZ#`eR!nnZzBU&&M*DC6g)Gx^lbU{lCTW`ia>S0M3Ke2 z2}W&FZPeKzVdsH3TQr5S#mm_yTG7DZOarc`#2j@Z1PnCt&=A}ML6i(-)o-4jy5Quf$&E~9kYI`N8r5?9(_2!edMZksj5^(Y1i)4_r4p^y=!5V zKxVF7xzeUnWwwh|1cr1}}~nbPOcxi)i$!fX~qFOe{x2Ej7qcZ2Vu1)Z$8W z+((JMhc%8z$K!Fqk0@uT#7vFs$&2IX z_H*mxGfT35s%80wIM@&1$9tZ-k3Asm7ld=bm{a(rNrZ|Hrv{TZ!V+&DapZ@e2mLGL4kZZ$24ZLF zJSo+Yy_+fqZ*6$lS)g$*hAC(|j%aOVq;p2zud>C;_bO|Mo4jD5a5P*hJ5CNQj;-vtd&xtq{Su`vH5SkK z`;b%*XdUl8C{f00m>lYEL^*`m9D); z+6Ge~A3;+ehyWXFxBJqkYfcS0lfW$qMtVXsff?ArgI}!^`aZiq^Y)vG`ghU2qhxqd zSM*vAlH}NORo6DJ19HHAu7HJpGgz$6Ar#GDandVJA!pZ*exPPCWu^;4j zaP!ksjx7B&?4Ln@&ejLc5a(LY-4vVE%1TLj4f{JZ^9~6_=Z(`cTNziz3~F&hdW6Rb zOb{SDvGl$6qYG*@cBQGtsTVNsT$R<-CL@A;*~u z+-JHoQ{G%Z{`|+K-O)2IfnB*0yN!~%WxK!L@Lgt^*A{Po!8Zk5JM-Jk)I1XZavFPi zw$-xudiSp|=WU16dq{X+3&$SVM!x%mt2lmhzJGqk=ZuW+oW!x#v0t)!(lZJWn2=*T z1tQM|anJMsu2tq6YET=s5#e)5WCqHJ-AHhZ$FSh4`zGPG5n*CNxl7!w!tIbX{8^Y@ z_X@JFasRrI_01x8`rrquAiw*JXZ7d;^>ak3GCEkb#X{({!Cr`|xT2vl(x!7x%x7a* z+Ejx9II5B1+DH$;fL^xkK(i5Gzt0MM!NH8kyt9OtOKn`JQ)& z)CzPrNl!87xm1k?t&Vx2ouRG=38Mfr(UCG;^Je1^{^pD8!+ZMsr&u*y?cVZ>KGuKZ zC)|?}_xPuec5AI6)F?_M7Dd`)y~5Bzi$rXpGC8SB@mSbVvw`23(pXMKmgQ8H1S7*4 zvHA*~X>Qg_>)m)sQ21mKT1&;^Fk>4g) zB^N6tbl$*pW_1(pYgwk)&MPa4s6*oV8dL3YKNve6^FTpl!l-l{3bDQMc* z8E*kfk3qw1>`|lbvX|;u4bP!fy%Myku9~vF8dW`WjR-bN&x#oJb6`d(nusOEgDoGP zKjy3^-$m3zeu!Jx7et+heYl%1!V^g#Hwu?jC_Qp2JaLjeii_kn<)bmJN69D|vJ4G1 z0=)%#1Ade3DQ(EK!x4y?a-LdZ#WmyclIsEasMs_67SfTA`b2g?l%?hORx0?hHpMrf zFK9ZA`f#@{#B*ZG@b|LP9rPGUMX%gP=R}TNmGIRTc3(j7gIHRt^ zauYc-X|xWrbh81s%PHrC88SK`xPxySKLkS`-}1R940Q;E{NTz)eY4e6QWp`%%PZSjYs+csozl^fsiNsfKIF zx8eCZf4_+5D|LQ{q&J}r! z<5YUqxY5j);FX%r+>H%^969?nb?~Q7eos6;j;Jf_6QZuevv}-)D1&rKbF&dVN01Ce zuh-QOHJg30pYG~~WJ$T=OJTYawaD|@VLOcKtAH_GB`Ky>LBb)g*~tur0hp3HxR)QDf(Gr2y1>C zLeVN4C7}y)Nt9KX+?$s3T4U8*ZAg7qqRs?A>WyP=4&(v1m@Wo0FypKSQL*pFnx7x{ zdAZ?Qk#+}lCw~z5Kt#_Q_$T+v&!heY?&oMkd$vSKgfN~DdsMp{GEGK9X|Nkhlf!l^*+0N=G7$h zt`!YBMaw)AMEDc*5p}0O{U=zTV~u9iiDTe-de1{QL9B8(&s1Cm>xypBDV6S zG!Ym371Wb!4;V!t+E}sJu$m3I6*eQb!%Yllk||9^Z)!{4FrIPCwyHPUUf99{_nHvm zov6yMvhjy*7vkg~d02?P^0r)nb#TCv8#Nu`f|9wm;-y~U&rN5jm5DH0njAM< z+gUkxp!b7B4x0doU@F~}!g#2f@d}Y~KI3{JtSsfxWI^!Yf`1Tw-Id83uDrFb8F~H` zfb!SH4%V61-}42$q0j^UDqlf=Cek_n;|#Nd?Q>+ovXzYH+s#-#BGZW8 z!B@XeXL_6~kMylPJmO<;`P0Aj_`E|O;s=U7V=(O?c%NuzNh%Dvq(nh0e+AHpiU72LhRskle1 z+`YTT5$XHai2t~LosmRQ86Q94ge0p;(?2g!4&X~;@-tm;@Rb|Mag!QpvF2PNJ71CF z{a>BV^q=~~cKgZK?ykJtJ4KuZR(t11o)ceV-2OW0OE;lLu~w9s7M}2uYS~lF#;cf* zB0on7Jipgp(D{xh9`EMpI?asdhSku?qH+yag-&Luzq6Fh8yr5?82p9`KjVG>dP{)o zQ?3`Ex_6U59mH>3+CLxg=h;Vy9QO*yAOAP@O|s=S8s(Wk?rH8{S9~rYk3!`#IP2*h z^c*%v$%dZWGFQgJ*ik5bqN2tgBS@Ij6$jzt%-6TI3KtD^$%t_xo4?4?p&RHqdEYa7D=*L<^ z+02?_wb4)y<{=gG738BUKc%4xU$A@yjyc<}g_aoSjJ~lMb-?@4FxqlMqsGgLrq0|V zpUr(E? zi+Ts`mr{VQ19|IadsvY;Ru$DyS0%tJev4N8pMhikZSwNQ67ZWj@A*;JOz1Ci++Kxd zFsq0%6qihnO%6^-Tjf}-JVsLId!R}kXAMV5}gbQpwHOs zzukIw6y|TXkH5hH^mQ}Ni%XFgdy!Tc=K!&@n7gsX=T=l*ZOHf!{ME|g#jO)2x_(K! zJVo4q=zlLQf4Ba2J3nuJp=X+59j9HY#aG#IFCFUZ(O0iv9|gm!Gv~ah4nbJc0;t$l z==qUM?-QTKN8p^>YUc4Y2P_)DF`@M+Q%Iy{4!sdHqaw881y!vbY`3G=tW?S&<1AQS zt^5gX+Qt~%G2bs0bS>0k!!r9nXAAh-2={VUzDF|hArHti)FZK;$9=M!A7p~9ft`vF zjguT293}7|u~c%KL-TEmO`>WrkO(p#6&AT6YnRhfVLnDYlW$@LS`-Wyamk&Em%9n@T%_qIptf%(?R5r1hJ{rO3-a;snlzMK#ulbGMdh?Nmpw>{I zj$3!YZg_H`)?ua}dJAMmtV9LLl4iB3)vb>(0=>pL>+f;F+@CSmdHY%czE%MFuQx#+ zX3<;i;(fH;%iR8YfbTo-f5vj%aPJxZ=geC$2w<@d1*0w?jkw+1;{1S3m?g6H{b>p# zx+ee;Q>7to4F(b2p2W2N=Y^%rb^@0CLQn3;|Y z1d>n8blexg&)kGOrboQPC*7H&@(Rn(2iGvVOAzF#dDh(|D)14(b>}H3zwxV6{mUad zG$371hm)~67uca-`y#U~n&o^$ZKJia0B1TOm7z3%2KFEsjS45MiG*)>ZWl$%pjER? z#@abAYMX#E;Q5*ym_k{I=x^|io%;WoNgZFm^jVPrf0jLj@SC;%MZddq86oI_R#qp3 zU(}T|pP}b}&sytWcvrT_i@{M@w(dqppF(*bNcFk_eVY8|!8xD3L#7v(0BtKSV;al7 zU>p|2LP2>v54VWu@8>G%N7DrWEf`ZH!dAd&G?_aaC0QlBq#48@aN?nSDA@&{t!70z zD8>Cg^M2Q2^;D_hwCuc&*u0`4PusV+d~yAmU*6nt1N&B|@!~eqyjV}_=S@!6RqAuu za(S^YFj15k!3T+OzrsWp(5F4?dC--K5G-rgBXYSD2bs;7cskmTL)FO2)}<~+&tkNp7r9mv#j0BcV0kno8@%5&Pclny+Yuvsils`<2f+Z zXi{RO$%2^k3w@H>ezvwR-VeG z{uZiUK%bIT&V#OWOv=FK*Q5|2;4HI73P4r`g4#sg;7pR4i6ZZWt+^c-EfwH3x>kbq zayZ{@$9S&dF;vsI-%h9yN5sadUCH6KJtO=+ad&^oJ7ud|&osUfbSDv)_Kyr|W#_4R zx5(n(#Rhq-rMa8@p6UGr{1jPs9d=~~bF?j1_Xhr%tXkMidQV0^PQP!X(gL40S4WcWot~9BATq0YFx(=g%kGgV}>`?THi3m-6ie= z#`*VgMfy>Js9#`+^i&+`_-|J>s3=>@hoXg19FGH@gvtyEQU;QHb9p``y#Xoh;5pv_ zcs{{$xv?|{oGIo!6BLW*xAZJLlzeXzW9ZgI<93Fbc`yF{?bAuNU)7(#kbf`fJ~FTW z8u4yT>KzGa)6fQ(j`JurD*f z3E-)8;qlMeC5nAcb|2F0RjzTPdByJL5KT#B3F}I6w8ffW0$tqa zYrC3L6`L$4GITgdgdrvSHt#j;ddVmXG3yQJS7blZ%Fv3-+snE2N1K${A8Du+C+hug z`5&=%!rdQQk?8;X|M7!5Wn_|hXv;atr4a&p`+CzMo%paAV`c3Zb@x&9FPFJotdoxo$ z@oxe*!5E)Vq<;$Z(C&&x{2@E>4diD6U5_tyG(M+O8Hp=q#bh?Cujf)ZPlwQa6~`1j zle2wlRg#XZNq^ZOg66366_DjUr}owcRqcn%C}*&;ION%3Ui2(I0)W+A@rJ)4sOXts ze-S^xTT9O6vrilR>vf=0^8Dpze%{=n3Hneq>1U|V^f-?DXtx^D*`CaM)46K{+|cz4 zMs31yiaQ9H>;iNZsznOS*t(@q!}9AGulR^hkyOe&Y&)`~3X)_D&8ggSbhY5TIAX?( z>O4w|kBt*Q>G8_+a2|C{n7<+2`yvZ|AW-8c*k>x74*F+k9a2_D?A+G1EGH`@by5Xe zi6Fm{0y|j&%|;Xkq?SYIv(yV z{rlCvnL=I}m7Wj!Shu*RP(l`Q23nZTm|F~!s$7-3(JHpE6^fbpuX%>h$Zt%{TDT|5@!ZA#;&k&h`MD#nLmSE>?Itt=_{YALV| z)Hv?vivG3CS@~=OdDVpCeAA^QRiWvjb=^06cKbrHesTZH>QzOiozQPxH`&N7gy)IY=PP-;o1$!s{K z)?lXl-iFa3ch8U6`F7SgML^8uWwV31UCqE_Y+f|Fx?2q6c;$h!py_c;;+j%8P9X@Y zH`I)Ct=)978hyVv@lwdzNa7>Lisy;?^|-}%+FE=uP|{t+h03x3Ysa5~%WTpltEn;o7P~QLIjJ?Nb`vu2 zQ=-b2C5ozRRvI8@53FPl zEU;Ig7p$CzXKPu9#g*uh%5j6Dj}Pf_VlI1%hKUfV!3NfnvWI(sv*qQE@2$#O@VB6>PG}jz>y+}=^%3Xc9>qAF6MJnD z45t1Hw1p*zSQe_#w9R|y6#KU%>=OZQ&vX?j+`%K3 z3&XbeLuAr$muB?54Q$J1+hBWCN$<`(|v2{E$&w!G?f=lw5DQ?iFG3Y z%O=Rzhy2I( z8kaN6L=KV_F>qns%%jb8yF){`u83hez+{d~mP|wf?yg7IjqDHH2|YT@8k3!`_;Q@a zgd(=P&x{p6Hxd8uGaKH-Onn;r{&v&xj-&3{wtVpC^Uq$yYQ6is!ZWSVvx^U(^mNnt z8P`v_?s*1B>fDmN^P}GwG`g8IH1EYDuA~3&7uHKXOX{PXJFc2}@noDKZY?*47JKDU zrwX59?@pn~FaQ7`j@>jDwKL5)3Cth<~-7Bdl@f$j}7%^$?U|G1$c$*4J{SXmz1UgRNNFm z(Lh3$E>opmXj09E+-fv+w=(+GD!CuwFF(%L*y>+-`}l2XdTYbD)fd1=dOF^F${DHe zU+P~T)u9S8*E&FcSlV0NYcbp>`8mP07K86`*NFD<6f{jGnin9+6_a#6$B-xv!>Ezx zV@@>12-8~<_rn=h+v$2e&7#;>s9)6N-psWR(EO))#MZzFy&s03e^~|ZYWhFEk#^LM zt){Tf3A^`fhtNaH_#5aa!oEJ&hq|feL(A>qNrUb!d^Rm-Y_bJx%Y{?6lo^&Xma^5( zpv~5CcSni^bFLlq2+?o=4VKGQvOQ>3)P{9AQx>8PyCL8o_vBosCO^O3;`h8V6B$^o|<&tu)V2YA$Hq!yxv2d6rV5aJx|$}mms1`U4m;(g3BN9 zb}MpfYx23+FtmHAy4a~%&)1C*M}Vgm(3;V|0O(+r#JI4`dj`DBOeW|}-5D=a3;S?z zW+SP^YD3+xaC^{L;Aph2az?@?;&Oto#-*5J2FIY=U~jm}V5aVL71a&G$9KkWsruGU z5*yl4>v3#Z2PVirdD>h*V04#v^&o@WB%PMU3YG)6x8%^3V0P0tPZ}RP0eOh z#&dL_RzW_VLb*VX?LF22S?ew~14tk6_1JXn_0%C)FR zt{pZM5<&Y^u2#EMZ^JP%2ZAm;T#PCl*{(5sD|_g4I-V=seg?s4PDj3q^!5!YlvS9c zUe(S=bE9YwtXa$!u(mEoc%Ey&X;NXGP#jsIaSDOESWCXouzv&jjOrK1U5)w+aaCEB zdzA3Lv#pm6wyf|2Zwg}~)R$4yD;JXn>Q#)<=vfAR0aPm+1XAJ*5?7sy3Ii8yVG@LC!pB>GY zI_sd)iZh{H-Gf6;JpR9`YK8Iv2oDQkGlAr}qx5PrVWA#-a7Ns6Y(@Hv(B)7qY@KG8 zpgnY;<{x66{x|B8Hw^HP(Ibb$KE3TDANszpMGWrwSiipaJOMoM=<(0lui9bXi5%vx zIb{Z(=&x9S0#Hlq@fIe?XcVOjLto@8F>p*x7N+E39WrZXFxiH6;zryEDgj4p*sZr= zM=?0A$!IqSimBrKhM4F#-qEKpu$OAKYZ<}K4X;e_FWT*1lI(A;-sWK4#?xqpTfK1T zKHz%qq=oP*`hfBR<`9a5(GSa-+ml2cQ;v<`$v3sF1LkXZK-PF%F5 zYYgh+BCy2=%0@D3P9!%Jh7nRpECUhm0TUcs&6c9o*5oi<02t^Y(f4Q9-3C^kJHy>l zEicnF$%?#xcFR25Fn%d+;!#WDg%Ia|zZ5li%hPvE{11tWXSiqfcs}Yw-9qCeYHBjm zGEbVgj=)W=0Qg3!L)UD9(gZBj*g03>YN^c2qOWU_;uYyOiEX618v` zQ-h>VcJ+_u+;f2DpZ|hyMAF$-a5bl%t^v2#PU&kWucvh>QTQ+P^^d*0e|14T#Wns5 zdOf3$_nhFIFCwqy_uIh8f4vEe%q-0`y)3<6{d&E~Q(WZ5r}mIUNVPJIyfDmew3)ZC zp6aaJcfQ)WRUL7eUl9d&%8h&G#+$RZq~cH$h?#5qpy{Pn_RK;exMTm$oBEhLr%i#&ZYkO zNgX1mwH~?7%A&$2gn%h)Y-M>%<$#kAkM2i%ZZeu2RNkdVSR*Rb7E2|Tkb5Mzg_EIB zVZnYK&GHIY-2qfXOV0@`NyzWT<$f(V&j`=Cp-=kZWAiu(wd_ak4vb3cM9sVDsJBXL zcgmeJQBQx)3w8&JSlb9#D0Crbw6aqsfC&?rIH76~+mR$HdEzF4Xk7P|mCjn`Bt$J> zr)YZ&4aA8fujW=h;+TLYxs|?l22-9i-Qn&#w)vf=LuB4ljKRkccm#Mt;PKDJUHUl! zH%ER9#+n-S(t>4#9qt{pWiH{s#K{zLPR}QKU6A5V+t9Oc1gz#MvnQ-_u$idsn9Ohi z&<;GTw73{<)x2!Cv+;rbDAc?IFaJlTnO@T`y=x2aQ*YoTKlughJ7Gw#e_?uBm^jb( zVjtb>{j^5{AKjN`UgVw42+wYbuf`U=?9zSl4O|@t=X%Ed%y_k`KQ~Ih|AP)(_A1rr z8x3_YA)ol}<#AU--Euh^O1Y1F<)G2ggx?zZm|dmmcpm5e0ENWOddcg^K|+&Qtv6%% zu!*8|GB-qfGVBePOltE386^-~aA0D`4z*Fpf4_bE@@=seoqzN%@LbU3tBWMwF;3>@ zVfVzt1D>E~u+PLg9h^l)mpW5o+k>f6fipPY!gI=jXtl5K+Sk#U2YTT*lu6V;*euhyse2xrkz)3(f0{;Q=$A6QL^ z2M~7y`;5JtGiReI@i_{|i#Z}J?Q&|dHg3>5ElkI%%dePy4+me8noGy z{&qHi!33&3GHPfFpK;?H&Nt|0HAKh*mX2Io7vx#Ba(N%Zl)uk^@G@}debxFgf&T>d zjMArrKG03nA2%))V&-+bnA3LRPSOLJU|SuY9N<+ZGkcmvvvuiCmbm5?p}ytgO;bbq za4alCU!(Am%4+J4sB_j#%yFd$E+6f`$o(JSEK81?gFMyhd!cRkLnWbJz&&B@=h3<7 zO^2kdasw?yMS^1GkhhQ~q=dHgbk`$~LSc-uj*G5XjV48JJsGvk+M7<>1}Iw;T&QNN z=mo{jOAS${2bniCSUm8u30L25xjfk?PKDmzH#X<4rE9U%zfQy#M&}nd)vospL5rS z_((MN1>^-+$H6(Iu!H?@u+|4t!{sU3!pZf%Z!)OgLP2v#%{}G z*$BZ`Vlx1VdJO5h?-=mzFkJBpxJKgw9qHqQIt(_Q_A76Kh@O#hPFlDgeU)W9MKk1i za!;W-wR3t1`AKxaeG>K0FghfU^5w$V_vR+M4=JOTw?HyrXBeq2GFe-gf*-AlDKQ;K zvgUb$4#DwL&Tf;tJDf*C%AbH< zP<0-54Irm>GYr@CKt6C~Ww84IHvrPG4(ViWG;$*&T;dG?v|$5;Sy<~pi6&dS;6|8H z$QU&$dXpH5!H`)MV&UUszBMEq{C=tZ#9M#<>lD$8eVKndO56(;zrfY-BWn69u7~LM&r?TCo5Jj*%K^X1?1FEJ-r=mkmPHcaJx?F#z$N|`J%rs*6s=Dg%%fMMaM|H!^uIZtF1*B!l`i#Gf-BE0x{_j z=71=TBva|N@pA1C8i=8kZN_c!y|v?5&rA;W20|jl)2a+a!+Fisvt}8IjeBqFc0-GA z!lreP0g3HtBtZjABO6%o7WM`4`8yo9ntd!Sc7 zy;||5>Y3PX@A(a0bM{>6O$U)CxhB)Ag#We@s;;!o3#4?df zYRv6}P^9*-unZAVQ#5@&o^DBLJ{W=9AavE4+Y=YCEs*UBip5}CH+ zZ~AwAg)iKT{pe|URzEw;vXwTY%X$*Qg1GUPdx)X~*qS9xy&KI^7CX2hJl3gXifBsMj^=Q=mCP~^2i;NR6Ysuwr3t@7CNjUipnPIPAbobeDR`|+d~nG9Z7NJi*J>7 zCzuyPoVlu_wA<`?|3J?yUtbApgmd(0<1l_2Y_qu{Z>O<7oFoK}l(-=9oRV|1rP>oy zb>OT6LfHH18l(mW#%>{VNa6Ty4uru1`p)_JTUVXi`FGEe^DsGXw5=B>&Mut}#4)Fh zL?5**d|o;p z*+Q}ARpVX;k(=Jk0PwlDIgr%fjal;!O(A*aJ+x#4SReBeV)YG8)*^m@fToLu%npzWpI%Ei5N z6O>cCT2VXw=*UG+$t-URfL?F9My>q?KIW6|O5>w=xm%#*v9ReUpce|Chh4*_?IpXO z5YAxY*}Y)pqJX1KM&>%PBFFY|L|dwGUKd_c>WP=4Q)WiB%!nL=V9W}fQHh#ri9?LR zSLxjK@N(SJxLkJ%oBsY9-$9b+abhG{+Jz9;iuCWVCddQk&ojgm2~L0eXBZu#lqPkp z#Py;IHnvvrn*xHylUdzswkz{ME$ax#N{n&W8wxHX8FhCCL~P(dMDoJfW^J|(XK7hE z969kkKP)JJt{eOBx8_GrIrHFqeYHNX;`2x&&Nm4uH>qjA&|A~A3@_5cOKq}u9ksw? z)9@MYnG2o{`WJ8=T(zmQ@VK=CPt{3W985WCgIDU~q_kNzhL+kk!=ov+qVb}7{E*cC_83nlMbetaS z85WDAuW4mu`{KZc<~~12wlu`}hX_f@Sr1;5dnMiNcaTfzGpQ`Md$P`CfKV1Ky`G^H zT?){DW2*T1`@MU!7}abPg^?k$}gnKceP#;!bDP2v9er@8vOgTzQOLb`Z5JQTJ$Mx$Z4gdXZO@Xd1BEMtg>l*aoB>$;nNMLRXw;AJssD z+!jk}%^dD+JzgX|eSoL%UI!`gp|s&6yc1@^>dZ48W@(QN+oJVDiI2Gnp_a=Dp;Qqq z5lv1=IN0`9Jio$rs*;SHS!qd4!6fp?V{s)gElJ51=#)-Jn3inz_RgNli@;aw$C`_n zNz~U2!^(3{_rg;yo0i_Izi^840>2)>`tBo62z&2*|MHN}aj4?-6lzCd9*a{LNOxo8 zxJocKJ=!>9L>etsC)_JmpGriX;dL;lEr%LDBw%J1wiN5(m`OIKLD_jY#gh#4_LLkqz;HO>l*KQWS^N)O z)2;B-*8a)9`4|3!_;FLn?PqY)#n{uyFq1@9V_4^12_RL3-auRr z@F^>1)8*6?czMTf=~n@g9Xt6lqA+@T{jWCf?MUI;(mgZ0rh7eA^ZoNL{5Klq%5w%s znk7Z@folA~4159jMEe(qXSKLXYA`n+#LSdlEDf~=gxSX3jYx07MiY$KQyY$U$l*Sc zw|=zXT*vcC85PD=wh!bPI@XJ}J?u)+5)0s9T1yL&x42RCenYtD-BNg$`i(bPm7mmf zbCUEab@JV+i{Deq?N0T`dx85f@O1_0y+<6`;JwrR>oY!Qh+M!}Y7Wg>o`ASkqSHgn zEcfAhK^5gn6MHN7F!q#nl?c-r+wOW>n9PWcV6%r>mkD7*9~OvW#su1{!(9liXA>^0 zzp%cY+#VlbHPS<^Z)jOk=GMKP5Al$B?H2S2k2fd!L^mtj%2(PQ%}ynK->~Ar2t+#} zLe|Si+Ej^Z6N1$=-Hx{#7X)+}!v<1}7QrUagQ2k7n7TYdt@V(DVulb~PC|CQvJM{8 zv0i<^Qx@;8F#Erlwe~VM$$;yr!Bkp1d=?yQ)?Mp{9xAB zu6~|s9hH!4dDe5!@yn2SZU%kHtp0M6^=I$>dwJ#gNq3m$`FdCGv4xGy z$fE`rl-!6B0O0_e>`{QZw%R+y!yz-YxFmJAI=Gl@1bn-8SBl!J4W$`hYfjJp5u)+8UpP)9hcim006+B%X~DV%N0nQ-SKEYIamx?iP-D zObdJq{zTU|C%bBd791~a$Ch_UHlNHO7;2Wjd`rX|tVYLrwV#g};Mp%A{0_eYYfo}pgQeHnM{ z^SZN97UG)%YW#JjPb&%9DYFqbY$(j{xl|+^xUfxIq%mj*toTjb5Tw!q6MfYSY}BZS zoALNy4#zH}u7=~eJX>K#{%EPkZ^QCs*bl7_dXoLXAH(%a*cXhyJkvkJ{T%Q9Xps!- zfN)zKqIL(56K5{7Pb0Jk)irutHLx%c2bgb&!!ox6Y~~7Vs;V|UQ`b9uYqka8Bb!8C zR9HEgZ*^1Y1z&BN_aO=s-9K4_wIYc=vO7N{CSJn6pz!6HuBCUz6NiOd;=s?nhzxxn zH?=qzO9nUOcygGcdek!@XR+E^lACH1v}fhnOk_NlOR~5pS=e|oJt(faND8UKVSlZK zruzL`#`kuCziY3T_j9W_?zb*I>%I zdLq!Exr-T9LnRKN4Una2LOhHehQbE5roBP05UJQ%ii9CD!d%feOLG%OligwlZC7x+ zBy>*xd+7Ia7k~Wt0eoCFBIj~aIoC)8omE){W;>Ai}OMY!*{JhxXe>`Db^O}B|8W{2p1#j+)%`EZEzLrJZ@9Ye<`Seax z%W5y~1oV3A=P>Qevh=*$n?Bw9In>aL%ccXKp6}}j(bHh4(~V)0#7;+`k(cHea@o#( zdUF>(x!jp~xlwhzH-|}}>2&AkxR0%(8<9>G=eymRmvNGJxbMhvFw}{hmpeO<^K#?u zqq_)cLkl(Yd-G$SfS#rFW!N=8Mv;AJA2!;e5D^EH_NW1oleM8tnARk`Vn!U+p_e+N z;Q^jnIpujGpA;rBm9eCtVTl?#6RZiQa=UT$L|FBX+TOtbH-=SQYs*}gV=4xaaTnbnui>-u4QF92co645Y1viA9R_m%*hs#z>T_UWddHn4c`d3!m7|BBusvf z6VQTOI}3R(&PIpPwj}k#Z0>`5g5c0E?6KdsRehxKo@#Y!XI=D7L2c`Z8SRA6i{BZ& z5k=?g&$i}!itIaT)K8jS6{+iqQ}FT)@Z&ivyXHAw?tD7)^#){jLbgBGyz->X4C|?{ zbMcULsup4a3YPvgoe{%I~s!(4~{A4oZK=v zWu(P+K6q}x2b>~}u($WrZgQG``QU2V@}g6Q!nHH`8#ni>-(=R2L+_yE6s~fb2gOkn ze+G8*0-9f)FJLD!-Lz7F>VtBTNw=*OZ%PkdVkmB)K4rn2ehc5e(;Zddou^#c>L{A7 zF*n3HJofD!m6v-(lAVhAJ+UbCT8O647y#Zv*_YN8h2TwjvUkPni;K2)YUOx|mM^cJ zY2cfXzCX?lT&=!!WVg0&oPq_fpYrNs?Nf|HnOG|z;<_cO@5C}r1|xdeH|+RuhsUERmNSDZpB|NK86Nsqez z_`8y#u2b|XD=#4dZjuBag(N{&xQK!wR5;)2X(S%gXq}iF=V@_cjk0HnvK?G zjC#5{k{6KzGP@bZtL{8DAlFLTLGF;7>C{@|F|iH>B`FWeex+#DIN)5i<#di3XC!enMo_u8^N1JB;x9$xg}l6{6GK4aUJ~vp`O;?_d`OE$7kyq z@J~vd5Bq0`9ir9ds%Z1W7)P>#SaL&NsHQ7i zDezh?V^UpMGIBzt=$LKO4!f zYWAJ%=f{M_3Feuyr$PS$ri-^zq83moXE-VCT-uk=A!@rJVZr1$TE?QEGiW%8m24~% z9yGymte|{FZL?sWE&P0be0@$zd+5eN(k+^Z;h{e1Mt-*2ij@`2sKO#ELFt1E?9Gz{#U1Fpr<#=4WYGX}lMi@B5LZFr+V9d%j#2O<$UQ3nhZ!m3Q?Xw|0$n|-W0(^dm06*6h8To=u z_+k_|sPVJ41xdFwew1kGh5gQ7JY7 zltpdGgBhDwvs#>kHnmX6T?$ap7TXStDIJp8;Qwduy?R^MmNn78vT+_;?Zq4f+>3j} zAW>paA|+Cd-T-qDbEY2pw_hdOvZv)qX?pE_4$u#4ndBskV$~QmYE<}YW^9Mxu5(e~ zU`+7Cf!E==JQ7$z&owUMD{$haBF4@KgbY4tL;Q*#`kf8&$w+txqwF}$``Lc)_R81u z?zzmlE7h~GuE#HEzsxy4a(DqT@X27M)(cWP^&6BkXfFT>J$7SQ(p0w079=1bDX*u> z2%V7Tc%vs{WUU}DLNln^r7OU3{Dh14rH=!${&*u2-^W zdA**TyIS`Um?&DKRkdN42Vauy8ACFzm_=T*f*@+O1Wal%NQF|f)^hA1;&e_rW80rf ztf3@NihIc0{ zo#Nzr2U>fV9<1u)8sQV|BlAC9Im4{>&=3xiEr-dn8wT*mqild1Zs;M@2oX=wv;w%y zJm#g5Ho?52nG=-22jGx1F;0^XLvu164B9Yd=&8%-ez_??WF)Uh^v5uK&L4IDp8HPu zXLjy4bYEF_IeWo+ZsALq*#f#WmYTgyj1+6I8`yYyK!*Gr%MX@ejA<7xCc3jmqdj!A zA&4D0$BsN3F;a|$-ek^9U7@L5T;9!Lvvi2P*$YJQ_h}6M2j?}m_Vutto*kAas;^u< zhX>EJdYA@cS_-5BnwdGa4%0(3m$}3b)nSWKxs-J_u>*vPCib+r@)L*^*Il;a5sDot z3{j}74E1GnbdWdI&hp$PEYr1i7gV;d9dKe==o^4j{8f|}FzjE0t+#hIuc2w^Lr0l^ z{2D6#rNjL>90^|^{^W*@d^1np1Cr=px9uSN4vxMRe(z%ZaQXlCfj_T()?Gl+T!%ePprQ>0$<_FV24^?wd6uMGY zdc0;jL2P5rTdOQH%ea;yqGCldU`0n+xNib_L$-Cp{a8P=^Y?`(8?f+7+rOVq_)JgB z&%|H(d2{J(?e~cJF|=CYQ^(89eL=`OUPHJxMLIl7Jq=sWc2T|+nVdJ-)q1XOmzL-$ z!>J1_wEWODKot&y`Ly#u2^GQ8pfNA8T+;ecE@pSFPxu*U>6zq}VcE-tNRQ4B6FF&T zKm)Z1TmTHr@)ASrWj{n?a=zIE!>BW56WuTe9YVr+ohmzdq9W0FO_!VDzOW|L=1>>i zXd{St#EoUIRog$*7P(y&x7jLvJeFT%?|dByeI{%9Gw~CbKV5nu`(-Pus;o40?H4+h z=%zGTErx4HDm6+PiT+@mk;`}9|Q&vm;8U;E5dI@3H0$~Qr1Qtb=lI96=lw(U>D0a^6B+*is-?3GlY!I zx~QcxpRN2Y9#7(*_mzdo2}bL^Lka#lQSaR3$Zn5(DgIK${H3P=8rCC<|4m@ls32|~NLAjVmOuZX!*e$riyM;F9 zXmI3aUbSBw_#lJf5@VuKmrc57>-E3at5=k@f1YZLhPOjwZ+G=|OkjUK(P5~UiTw5h zesH6Ep?Q_t@u=@6ccKouqCpoFeE=7Sq~I7k-AzUkTa9T^$m5mlv)xcMCqcBQms)e& z)s6s_An^&{1R^k)2gP=+K)YPSvTn56MRTC~IV`Ia^4-g+WyUw-{PB|DH>xLgy&j)O zd5@}Ka^*b^H@n-cu8^eZmTjYKiDpv z(cYs1SaC2V-st|e8DX_$k?_xta=qwc^ETi9V^(?+8OL#a14ex@^T^wqzAV|lbRhUZ z?3eQJ4{n0UK09FFyBB;_QT!u2&-?_3l*IR&3Y>y*kHeAQ&^?Wp_p@_wuLmqSq@EB= z{aNbeT?|yh@_;m6so?>SIC7S-NaFDYSjqz>$e}GZOp>&X64oPx3QO^t(ieuCh@f$( z?a>xp`q--5GJgxK_7_>uKi?xH*PGMMqK80>bC~0P=;|p&c_n%h<@NB~_Pd9w#M*>$ z)PW-qjy{rO-Ho=3)EJkI2doHU8;N3;ag#NU(MVlWpvL9yctAl~v_nu7D#ZYcabyp| z5UfhctT}|9<19bS{AY{*KP8>NUqA8gf4xiRQo8=i`v2W;P@Iyi@K@Zlb03XMmJ`%B z0(l%l=P7drr@Xu2e#TMvf$~YBx94Z9mLASJLgl2EBQkZ^POxa&w0p0LjyrNdoUSBu z?lO71EyNN|M>%}liln%huR@6!Q|oa`r}-e+%)v2%qQ2s;NI0H}&IDff0z`Y(S_}hE z&y60O{|o@~bAh%Gluu65+w;D`wxP2Q)_QUrA*<Yp}PZ^Pl1z{4v) z_>~p@FPS)T5}Ws<)6eX$-l$$D%=x%4=G=JZX{&_MeZ6$py~2|me;mqD1t9Cmn8Bb7 z@k^eWBx|`VmNP1L=4Pv4lQ#BPh{cP9B5=`=L6ItBepad7s2vRP@0uC(j_~#5=g(t1 zzfryN^C48{LS8#mkf>Bj4rle0pW05=5DHAwwo#Y_y7x8wXsJvRmoJm`#Bc+R1t!2C z92R3l+>RHLIh>lwoJQx2!*fnMj?za`8ha|APr%q;YmzTi#WNm_o-j?n54(LVy8QF7 z8{V(ElG-*?lAU{-rMpdWpAiO#0p=v`pcXz-@xxldFwUXS&Z5~$6;u-&o0>hZ25~%b z$~7vpK?OiiUZVVLA&aizMD<;0(D!u9Co zN~wowHKIEiX`(JgrZ}`loe56D0=OB$s|hnq%6&GOO&duO$IyDK9QUNt>3*O)P!(5< z=86$W!aAol%pf|<>Uub>NUL!Fu5!RH!q@*Iciwdsz7vRgMr22VCwU$JoLj;40ozpg zm4^d+Wt@zBc~r{UVmCv)X4pt=JD{f2+z;Y#GF-&@tf0+xP(V%BF?c;ob**&c1C#UG zYMnXAe2%XieTcNh>R$nA`mZwzP9~8P-UTjv4vpuP=uup+hka3Z*ls_QfhEKT^42WV z)SZr8XFUf?epBs~z;neMBKDbFMPi7LoEl-L>(Ew+Y^NL&l^M$;PG)FSnkN%r*D45G zhvMRIYS+~#*74Egythkyj>T8HS1w=A`u356Oh&Sr89dVyFEWtAMduN(i&Rt5C|PK+ zk8w%^Gj&0eLNJj9e&`Ks15)u-SIs#a^<+>H=q*nAN#q4e!Yf($cQN|kI5&Qe?Fl_) z7kr|9mEkR_C)CeAkg^d&k(*#K7DRXhZfZ`ko2DrmaJQxOspTdE-{wjlInoynXlB!^ zKr=Ik!bi)Ta@`f5ru>)`Fc{cm)~1-F1QY(e>-N{J*E43rzi%L1wuSdHQl66kk>o|} z$AfeBNe^j*-b@*;=|z14il(gHIFlCYR>!T(BeoU?n$zj98_?aF%qK`Jpd@96xjy6~ z-rH;xu3Ky+4%3L1X+{)bIPN;wD`Kw=(>JlFJ3IEj$x`>qD11596P{%LQpCRFd|QL@ zgl_%n4JT23b^TnE(L>)R+ZvV8Zic}=pI1&0ce}+tmq40BmT|6R7KKk^$i>Ds6!|(i ziN*--#*Wmj+hkX^3^tG=t$|oJ+^9aaA0mof?0+78_u8}k^()_8A%9bgq>~g*`@pt) z(cSM-9-ourN8)D@e!SE-OCW|ljnu4U#X>%j<09A$nQ4Pf+?@nYU~EAi1bVe3^FS?S z1*r>ZOih7$%LB^PW^or273F~Ibu(J1k${i8Ap;D-pVzYgStiNJ(|$sY0j{o||M=j= zx_q^vU&ww9+VpscxK}LeEUBKte%x>J3-znCi(kau!;fN(%~6ob%dwjX;(>-YjWVDC z+E^3SN&v%c)G|{!$|8au5Myv|MFCz6LtGDcCO%>X)yreo6=B-mu2pU_w^Udwo1dSo z|3+c@r#@;gpPKsjS&R z!>Fz+*NNw+ATs=q|K}gbQ@XZyHP;(Z*u7BlS>HzUvq%+p zcvIC(B={T~g~M)t$mV$1jE%$rClhqKHzztPS@eowB5@PP9Z_IhF?BiG&@-@s#cts- z+1`^CcMS^)yx{&Oykqb$@-JxEhuf!tR$gl*e$>bHf%1vtx97dRT^7UaDs%+TyD3iy zIRGCfg9ZyCquN8vhKku{#V%{=P^8psPqW7AxHD)KD0Dr|)F(4KUTu9NVAL=ph@lDr z9o9aQsP@y|EW8?RKI4! zkM#I^>+tv1-|v2RzyJA($cuGVg^v>IBhS*#;|uQc&sEyLQ9aA^dfd0#9^*VhgPNsL zYgm#@+=apD0_JPNXmJo_B@e_ZEcTqh;Z0lvqXCp*xy$N)m9YUeNZN@y-RufzJRYn7 zejy>d^-|OBWzTL==^) ziQ22^_P$+k{S3P;j}N|eZhp=!(MydLFDDe~cSGckl<;S)xev52V!FBTav|FTtX=~%xi3kiv5nq|xp{NQ+#8NOthbiSL8_e>dQ z*lg8C^>HOElAlP9>A%}7zN>ympIbbNmv@ey*@^aBI9fYg>mA1-_|9dC-PQ|zBHbdW zCmB*m&Vw4`H_?8^pdMv0Na>NXvme%)UI^kKQn&M+H{QEDr}cz&oHwf+Jae zC-GzqlmxTRm;$vH1f2^bC?W!Wd%)AQ0EJW&W)iu?QLc;@{0#E)qhdNNB!0~DbH)EL z%o4w_+xrXibHn&Z@yx&D-?K5=WB9JPRus}<81vkOTgC2hIrdhxXlNsIlg9Y4h}IJ` zLmUKe19!98%3gqGnPAAmal^JQ0+Jdy(U~dRVq?eFJDcTgqQ7`o9j|H%4E^@8z`b5We^bzEqds zQ+C*yK6{&Itf@qSaF9xAtMC+Q8i#V|hTAH!N&pV=ZLpR=p^RZvf4NNonF=zRL()^yU zdg+Vvu|%;buD%-ZbEBE#KNV#czK)4cr4#33&f}KnLKpd5n_$_dAL-$xO7Pm_=Hm@X zWVfb$E~&b4o8R2=p(ofs;m`kkTeSMc)Ay1xu1zIA-ug?(|BIG4Uj>U_F$r#N>tTI; zkzF1)g`WD?4~0K+>O3*AtN1?ErWAU6t@-?={Qi>L^zw#ed5VF3=(1BLmFpdM`pMpZ z#lHAd*3uy6OB;oSogY8OKV13u3#%L3@U2r*ocKD4?~JwknH;~~bgF25t$+MgV%M9l zJMMo%zXWBP;yNRsPxUm%&$$?#S77Pn_M0Bv=RjY$2EO;PntEL8ug)Uut5^QMAI=+% z_iO+7qmDRd45zo)@4c+0XBN#jx@Wcgc6QEC>alpD#s;ID6&z*GQl3SF4OT7|mNVF; zmFG`uxf)TJOYY5Fo$pdv29`~;S#7DVQK96J;~`ruEQ4zseHKQ;2_8-1!dd^A#eadm zGCe!eUw(sj{IL_;L;U;nf>%abP*Gg~$$JD5f-VE~wmVq+App$Q zK3pNr0$Q#k3*x0F!#8tYn}nl^Bxt|b_&L7#F~F`XHpkbtGxkIr_(br?!qcCZGld?h ziS35lb1Q(IIWR4$@wQzFTRd`!Sx3`~IRTlHokRj`mP!IGB-xLlh2n>U92lTECZ-#g z2Amk$2SrOn!MY0gY?}Uj*33u6dDW7?*SDcv-%H(nPEni)9yxsa(^nA;3>mICl*NPz zOL#zx*tNL^ie)%c>2#XnT|~~eGtA!L1Ds%rECd8ymx*jfjY>E_IEfBmOKL)SE#tS4 zC6@4h$^Q-c7r7l)mi_XUqy4Fk;u&=Ks0z(9_~!q)AaFdojQ;~XHxTV1I6u7f{k*$O zJ_G9eM)f4Z*WJ=46@xx-7NX5m2LEF*hG)ZB;I3v!kOXeH@)bw zbu>rAD!S_;fj(Hn{YCYO`dMV3uAOVadMG)f3y-_2Vz&eq8+aIaEE6J%6D0UfC0sh2 z<=B{5@Ofqqk(zK0>n#!QIGWx-6$jO8dlcJ+m2q0m{zS$7qQ)0Rhlgmh2(j zw2pSF9DDXQ<%9Lki)%3?ebu0$a_kOWi{ltkNHzo=PX^E7=YQ%K`!##;C-R4G3BR%E za{6+n*rV=-PlHTdZR%X>=t6~xW(BA+57s)qS?-r2E=mcp$hHJ=G%814GFpvD*2x!; zgbw(S4@hkd?i9LQ$$+L*UZ*itF#WN;QJ5sf2{p9-&R~BA!u^);nRD-_=lrWasKZ^= zE+#p!b-X;ZBbXKd#f%jbI+z(hnno0JsP-D6VPl|M`jWLz@PV@u>^f{9&K0|LLpV4D zDN_vvNw#cP>x4)Cuwv=fqyJ0W(;lwaPyGH5Gwc~k2$Sk=a|qpi}3~?CEe>6g06Xfm~?)Wn`joSjfGSD8#D8&AP-ckW?k^!H{0Sph{r_X+DnciCxhxgRkx8s*Htsb=lnBmU0 zX*-jO#!!fi&NpB=<(IU+MvQR5AU;+-d{Dw4HM7do8y1|R7Rw`zWKcbz`qdiFZglYaZCCrhTGGZ zE6v}_qPE~Mswo|-@)J|wl58Ne9UZily|%e{+;&|cr6kz7pt?b8#fup`2g14zGZD~p z3NzHDgz+$dB!1k{tF9$w_;0|w`p+QuE!S@BFa(OE%1!%}b9xGSnAg27_7~Pm9G_93 zey*nf6YaA|K3wTr+Ye0D(rDN{#>tD0Z8~1Xy~$ovTX7g00gh4wKite>8d%{Jm~z+z z-5>^-ZVZ87r~obZ9yLl+W2uA=KE~B>C~y_@ufVUpw(sVY9j&#AHWS*MC8_k%_Jo~tB+9%UP5Ce!jVVZJIYo$7AN64Hk z7l+h5&@|)Lg9W_6IuP8==JTIOS^7tx)YcCzPVQwhkdO27jqHh^Zztz`2J-hjU8s#i zd0GW}6uoFjCI;ETmeCACcMxkWY_`0QaFd!ur`8yiyKzE;UD1v$aFVnQ5wB}h1{Mc) zwrmTnVEr-8Cot73N93EN<6JlGcMI`DmzmTzZ~DZ*=d!Lxx1i)-ed;XFShLo>6w0I4 zdd3X85YeOaOs^+> zqf66a(1C(kJdD(b45elHMw93Cn| z7IqV42J3*dp+}+3dch&XlGf!qomPgOrq-rV)X7HYW*Jamtvba4RbAlafmjXO(Y)m1 z^&BYGa*S+Oa`<4D-8Z~B+~v(P?Zu#MVyrE!sQNp4F zEeE$TCYs!IC-Ru-Ea`9{F)BzF^v+exA%Kfq><_2gYAi(14&h{4t>DAZk#P7A-CcUz zoieE+zqnIW{R*{N6u$eO9`-Tx=h^3=yB>x&G=4u)V?9p%@7h8@kE`qp&7)W@2bUuF z9=cj0*Qv8mVkLzPey|X=Et##iRyb4!O(Sim=#p>e8q*DDqdY;jqDrLj+}^Cl!+LlXR$*vcX&v{a`gE?b7BJdB2NA%NF|AemIB>3_N`HQ$5pjR+;tY?Tm*2^kCCGaKD2?F3pUD%&! zpGVDyD}5c=^R2{?wvTK|i5_~y1_v|8LDrkZ;PT-Rr{%_NE5q%U8k@TC5cGyK(5O0= zmZX{8?#B^U%=N&-CJ=`0kcizuwzpcqeBkb7VO01_Rd|P;M})!Rv)FMimHhtdf2{^ zjIBq6lvODQ+S~x-es^5Z1iFb}Kgp**x1h&K9-R|nzl)eZhxGQ5^qGIR7y4qm;r6b; zgaX-?v|n)Bbhw5mN=I7RKArd|wOJpKiJti^ZXfL?@c0C~K9s7`C=^cPQ{GtaHFyyl zK*XS1EeYsVV>UuB_r*_@2EJuPe?2zgXJXP9nkS~74_+>0dSq%e4u=+kQKBN~(#&DP z;`L!kC7|KRe4r3(C(Sy5a0@7-9PI$t?2N-})ui}zjtp?Ef=WAVEU+AMX*W*5@snZzWjvk%$O5N7MxM8?XJ+t{e7U|ukwOy!3PD*Fw^>t}xhkn`MJzoGli z+%rH<&sn}&$HOsBE&^`IWo1|v>p0VBNL7=qJ*0vP8^92<8j_|oDNEfQX2WhYmk*Xv zWc5@hbSc8NjzjIn=~l~OeVgyY?dT_xzj^_-T{G4%DfnO82g4_FwBE^{nEH0|a;DZp zb57GG5%Eg9GIx?Nof|9AI}l-eR2b{^RFihIMqNzoF&N34Y{HMHY5*}yQ%qzSUL&jH zmcP@0`~WVt`gS+eyKSUf!@r?nfo-QR{>2##e%NB4jQ(Fc7k^PWbWKCO^ey|awR$Y; z^4Gp+O_EzLO@0Pxxjc?N>0!uAJnBA_@<%R^3!Kfj%taNs} zg(I!DJ8f_H7CYQyc^U#9jnpN_QO+cSr;d+j+s(jCn8`j@_}!>w5g{qDy;-b6?`inR z@7rt@et8o|{1dFgZ>4pqTKpQ<uH_XRUF(ZQfj~%31|ZX!(cwNgZ-+`Y6cp{Vxnw;YB`x0nUs!jxpFFOEMU~m{rS0h zDj6;P57nH1I@A2v-&dg@Um5oQU1#3^+s6a;v3v8+p$y#6JxlWKtS{1lz8@|-Y)J%~ z0dE`A?yzxMyD)!TQ-R&o6V}3fO+~Aya~H*=*>5%_=p{H>0RH=dF>21Cy4abZG>U1UM&#gJEU6IArdG z^~M~`^>OG#b3@zwU7d2EhJMBr5!+yRXd?t3$-6zP0s(6Pt5zC!wkuU3VM|3wtBc{72>`*YK$Ya#PBiTW z9G9uigRfSH#&trw`gBzo_TpbIvbrmmTTGR*2j^6#S!T&XN*ZPl@hziX0GssMXU#htTyJd zKT$cSRndk=AU(GRULsZX-Zw=6*2af0W!w=pw`+b~Q0N30|HMG=H=gf<5PF{y_U?E?rw{ zT*&q)KT7k#48$mSywQ}A%Go@mbyFB8W`M;oo~YmyZu)gZdTR{|v{_84?SVfk{GvI` zqEg_FJBq-InIOwj03DX(cqG_=2)+FJDM!1uvM-yXJNQw#ty?dqZhGH$*mxTmkLE9) z1pT!?<@msUDns!~#{E2I|k*q^u&H=OeYkd5|E5?~31gf>7#Q)vqcwDVk^ z*}q!n{uj}HrXJa$sTcOk>xjC8viKVX27kzB`v>%enfu6~Mo(3G{YQ0}oM!5G5GeR_ zJKP{1DVG+UxT42}Sc23oKj>G)zE7~n=WBQI z`o8?Z4?lYOnuj0z1f2W*bN%(kQO2cxFXtM6s`>gy(l^@Ta^VH<*N~lC8YN8fRY+r_ z*c$XvEV?=ppC?OF$t-nJZ?JJox@{;ku>z2Sz>n7n3nvk zTcf0rx`*ZeRTPigiG_XooFu-&tvKtq^xSCehA9kiVevVz3|M4ERzEN9M>4z`JM|1lP zg$a5pz2On5_m%9)XBr$)`*;uC{G8o^dv=W88tr8n3ajxvQ_WDL9?gdm-DZ&}e-$ z_Gj}w>p$B~))=AGreNn3GFol6%e@aU+(B0o z8sn?E1W>+dGCEDmJF1$S&aNQ9{fac6G&YKR89LBeMLs^Ri*tHT5x!gq^hk-=S%@oc zsL^J*Ul%xMNxNjYwh~Z~%%v?#3xrM%)XYF;8VxKJZ70WkyBIiRvR$cY&Mh#u%C~Jc z;^cLs&_O8iI`lVWf>&{8zAh|x;DVm+a#^KGl$_e=CVhtb`!D&ytd=X$lkl#GeREoB ztt1o%QifX>hY+&xgi@H-)~FhgOhE&FI4;=@XL5t4v&?lWu`oDt)^n?JaB;sH>z;s( zwd2kyQHYq|?8c>&k>kI~H0%@n&ni3b-g*|?9XX<$}7)RGB0NYu~IMg-|S)@Pn7&b`@+H7E9d=8kK{?I(xtVIJ0UM)v!kK2 zJj{|kh|UhO0MR2{pLjKvJHi%OxY=kR!nBv}mhp%tJ<>;a<2|(|Rcw{*8HyVbIqKN~ z!VgDJxiOz~D>_GQ@kmxfs+YNawTAOiU;3e9)DXEmZ#7D?ll*(XMq+~ zdd?Dff5r9au7~vg!21qv79yWgi?1-Vmqq?UE1b>2&xf%Gx7*6F)Fo69(M3DKy zID4jqt#>xs6?8%GUQ*xO-}L~ICwkA?U+>i4MD%{?VO*6w3jz zBi1lKCL%|kT7WuZ0-hzE!BjEFF&Kg*u%Du1Uy}s@?5epCv8J&?$Bm6lW)2|vz8Eih zrK){tFTBnr|M+jUZ&iBu!ISrU#o(q!_^3DEI+gA@Z(Z48^14(0#gq6EbK`YC{TZRS z|MnRAC`cSOoQNpZ%H9yhAfO8kerlvPA*Ykp znGJ^f8mEN4K&jIpC{n{U;wdF%;S@&7RV;61u!xoEAEpJ}nYcGHIkmPrG4&Dx0#67H zJ)*83-*O{Y@~?hdt_yp;B-x*RB6s9S{6#zysrf|wO`304UM_@txOQo-HW}?utrThQ zge5A@Gh`>C_$W_eX;v^MT?0zeaUvWjG`o)_d|&EhGA zSlfBd0P)clRj|UUsA7pey9K@RlKqZ{xg907{Zbrl-|&8=4e>NLKhS?;?1!soP`w^3 zo@T~S3TRp`an2dkb4!};CYJ1T&~lySFu?)repnngFGIq0DtiiG9#kOR%7^0EJ&1}v zpUa6KW7ZV1RNhkk@t^|#&?Nfma|}Iy+u;+xEPNLa;!AOyo}pbPuQ(C#M>L7D2>sXI zv!7ITb;@Vc!_d&p{qfDtRiPsv37qaKe9JbkKL$GERXl2{edRm-eun?&#ew!V(f`Ne zEB{Szf;(*r?*5iv(||txo}Wsxxi9y7{*=ejwC}v*&Llei%h}t~17~}f4?2H1h+G9h zM!Xr|Q$rpmD|$|l+uUCVcnO$elG#$b*-)QP7IT?pYD-}b(756Kh*+xICgQTv;^NiJ z@kT8>LGd4%NcZLjd~a_2RM)3}<)HpAIE)MbaBj1i>al${XnfK{!>32_$5-48;*bAu zMxPz_Kv*S+feMluGtJ$RU7$fowqC4MkRVN0DLP;YvqoDk66S5IEareH5Q}xrk`Q7H z!8#z?dI^Q5L%47?8cu9+m&AeBYYabN;ha+7AJuWctQR++gU`_GJqVJj{3f9Wd8Q`$ zmh!vA&!;aJlD`+Ux{8lmCQ**|CAAM|fh7Ue+>OJSt8-W=tsJsvD(YJTh5lH@Mn=IMt%4i|Sz_-&+IPS3@mJs{)Uc*4u6)?@-W^?h*Ya)}`w->ss& zpP>uB#qBLcYntBduw|Gt=~U+c)z%zbVQe}2W=ApZOhFXy-PSX_6e1&Q=5@p+$G!P2U=>6Hs1 z6|EYbwK(B3v2%NsYXnMynY5jg)2X|h;D?aeM|iao3uUD)Dn0`z+tL@Yp^h!_dy6Zz zW?qmNI@GJe?zPGqx?zXFag{Co=rX2>b4RwDL3FYtJUdM7{Em|SeG1X9Y8d|mZ})jQ z#lKOVZ#VQBSMOE1_i&RQ&lz|pdl^61lQV8oAI$s4s)2DyOoO=_0Y2E)60?JZd^M6* zj@_UJoaSR>z7>~3D>xNmtjY1lql8o@v z=pOx8Yx()TNs4?B;UkPa5xuhYbog?n)T4ZSz6Qx*5|b;d$}GdHm)H&=Mj*QmitK=A z@yc|ZLR1iRh>a`R%GS|oLYGs$q%9$#Am@#ls&n^;M`QCiU^ijC8(qJ0F9^3E+FGP z7-;)BZ({fmm5hL{O&QnMJAZnR4i?N;A)27MTqfjlvl@n?RJIH{f&Or+Shnd$diYmR zyoA2%mDg#5_KZYd^~OVS#y?3g_!MXCnO*=0g1G7Q0t|y-R3@6g$TVLdH(T|fD3t15A?W%0#9%!wEF@c}JRA(Ra>~?^yOt8@}hz z`7b2Td^xw@>)UzbxcegAA-T1|g9T3NjV;PUJ!j{!+zc}jM1-L^Q*}DX{S=zd2^?K9 zlt4K-g__MlnlJ%2A7OsdMf7m8_YdxN#wb4z1AOf%_}&8gS6G(QzoqXD4xa@J?&saf zD*q^#m+v5Uo|NJZ<+Ctv&ifjjyzkCw&P+@NQRmF8Eh^Fn0#Y892N~5Z&bQ5GzFIB8 z-EM5AgzhzJwNjvH&{gvxNMk#to7fX4F*#-mp&}w69rI{+@9&uR3XgLqF%^EMrP=ki zGt16LFIP%E+EO^#s1{-|L?9$5%wb}N6vTN7JF*XEDg=ii){Hq+*i_zrI2!{w3}?}1 zF&v4}TtRD5C6;6=kwGK50KHDFaV!S%A9^Q_YRyb?`yD;}9L>f*`NVFaVlO_74?**5 zcIR>MjJ*SpWzDuNT(-LG>awfLw#_cvHoI)wW|wWd%eHOX`uBHk-1F}F&iU_qD`G|L z*s(KK&Y3gk7&$W6+_=9Cj*5LvF|zD{BQVJ4H*kiAekAOtM4PhZiWVoERu{)iRv}K5 zZQ;9fI`Xm8af?<%dtjl+dM|l=;d0;8?qt-ua$dk9Wnuf4h*$t{MY|Te+2~YCsU$P9 z@W6>%@RTP)nlZ6bG?ryhn+_bJv3(52opElijhNJkgCE6UeO|pWHSH!^%^dI5*2*`1 zP1&B$@vC+4QZ?NaAt&aQ)xq_qaF_ji`nh5i&;@jIyf`m9_vEIp-T_EDQ=}`=B~(-V zkM;2Qr&|Y`!h(w?aS_D+{j7R*Mp$jZ-v{FitmO)p4{Ir&BNBYjRc>_M?6^4+w=#X# zI7?Wfy!|Ik6DS2!kUuaOdE#5(up&#$ETzvliAggSn$}jU&RDZu@#Q?cqmeCfw`Q$D zD;LHsL-SKDT#$aO$Vil|GSY&y5D)bSvFAD((bjT4v*j-8W~D#glv}?!r+pgK-fnUyDY(i`<*vp8`EAVs*P~cHiLX4!EGD<7>W@Ru^ZB{b;gz){P9Y zCFq;ckyCTue7@O3Y~ZnVjb>yF7xSJuL-E?O(}F9194BL|lFhu$gv^O3Bl0{Hz~$+@ z-7%G|_Snv&moRwRQSIb?*dCjm_k31PF~#>(xWq8|xGvYpalbYOX9Qb=)Lr0x-&+;) zUZ!k)j#Kb%`!b^tkyz)UPl;wi^V1E{R>(l)-ai}q;&~n?=JxQ}{glewJwM?3(foC^ ze-ivwQKIb0Sn@#MaHV?4tK{w`_1w_1nVD^Q=w4By7HZSB5&kC#4~g+YR%b_mEVh6F zwz~I34GDvum(gEvIWjf5o*Ra~H%!qk00D~%;evQ^hkvr)xG~hgixmSUSX1$<+2m4J zo@uF{?xoS<4g_o6bQ=BjW~mc1X>VOdFd(Pztc}zYx1qWCNUI+|>}Zuvzztc4>Cfnu zXKc{&0TFZ{Xsz4@v(As=e)DE}_Q{~1%8izw^(IRB(p=EI2)kje%q`Fg85`ki0Yx)L zhm222x4jb+u9=osL{i&w7m!n^QyrY2Jce2isVf)5q>Fc{54TWU(s2#xQ!iBkhxwGj zb1Sk5CfGADKkIpybCKO(2{$=`xv~1Kr~(9>rcK|S#vBFns+Ziizo+V3+<*e=BJv{e z44UBtk&9hvCat1OHe&nB>0sqgm2^>-zpjRS5e8H=`|6Bj2j08CI}k1skF)4{4CHel zDbi7;HTOwPuR$1=mmNVCRD|7@{3PtjIGmJBXZ(q)qzU^wBaOTCfZ2sje_qIDnS3eV#?r~lY+JQ4lkh~il6i*l~g;9bKzb_YS`LRDs#QuEL(RFaYg zubhi_giz2kic$>qfuIhD@6EUf_a=8_GbRt86S(h_vjYs}BuZ z;o5v_RmpQ3z>chmPmZ^dLT)|i9WF`_VwpWs5~NctU!Z|l2H|x3CF_WG;~RJ9MNmW( zw%2Zf?=Cx$Baw~i%oa`{<1-F)^h{nnZKkb`MqF&!2 zCQ_pR8k&N<0^$CCJt1t(m^N?pGdh0U5D&Nt+({BAk6UMEE#gmIK6U-up+b@?TA@p9 z?q?L>JJ&i>`_4vE4y7~wYp|+pl^IrMVOzOY$h7H4vZB)P$X&zfBWed81*U2G3~&=X zAVjS|V4ISXftJ9hBjt%z;V9m6-|R@6jO48fXe(3qD?k~P+d*bD!tOW@;nD(8XM z-LuM6t$;@MK=yi*B%QI~Dh$T3xX?(R8J%r4(&rYdbivLrH3MK4Ly#v^F@Xgvrt(D= z#_L;z=$%W4Lzp>2(HbbFMk)FZG5i+IW5PVXjMh)9Ke1p%-XURi{MT|x%Ruwpr}4FC45W`GKv=d^6}VO*e^*r zfAQuM8R}rP;P#K=auvf5gcJNu!Xpi)14Ydp-m>K-P$by|Q+n3T#_EFK2J0v;e8`aY zi_yoN$q)&+MNjH&ZrMVD#5R9zCo~yjB6AF)C!8RVa^@(ProML>!#_Dzs=O4eQC(&f z7g-%jd|g-FZE2^Nk$KXG_q}o+-e7A{4oYF(konM+l**$vu7hgyOmAvz>q)$CUeh?4 zwj2lH;Vz-1l0?Y z=YpK;=dvO+z?L_Amn*-wQ*r_1t<&pMJ9^Yzq|eN`+r7=Mm!s9$)P7yoU6{foJ6O$5{w3$pYATk#w%I zjbNd?kXyUy-%4hP)e*^(qJM~FM(C8pAq4vNRNy)ZuAcbtpEVd2Zn6d`S1)cf0y_49 z-+yaDU)@#M=cyHT@f68Q%X2P#L+$ZJEO z*4DPihk{7SWr*g3G?>g=8Jvpr3g*(}ZER&) z&c!g%ob9-wYdOXuIdZCFduTU~0uw%Xr{+3^LhC8d9qzYCo_A?|fYZtWKQ280f898= zs%ocM+%U=Ixv3NsHNoM0U)Adx)NebsVK4#d%4g|8z<5oN0?&hi-#w>FfHB0w%AI`1 zgLd?Sag%y2<~%ORI=sg^RYttY|EYyODjI9)t!vi##ktJjJo|H!xY>QQ7FFK4!lL~1 z>WNlXtIO=ZF50s)VV1mGa zclPg%O@~B`ZK9JSYaG=?uWhUJn|MNTHk`LdqrzT>#=X^sJv2d+;bpt&-bY*n6u1uc z%3Z8fQGrUZw`#Ui8>1&(Ky7hN>tt0zmtbdZ#T2EFZYjM_9|aJm&Ew6xM3VbT>3x(5 zi(I@IY_m>gBk$U5CfH1@9wh66wxgjPvJD}S!uCLo>5Dj-fbvC7eOK((9cvdRHcn8{ z10)qK0Uo-i1~1E57xL)(loshGVB>>mn!EtNi|CoF0ZzCR3I#GSloU8 zOYnfPdI&8NNypAE>yJ_Zq$3F ztr?PVGKdOeDX!Q4Ox$)|TctPn3c}O6Cl#W89vwU&Edw4e&kK+gh2z=!4}{&NuI@K! zr(q%?dxL(9PwRfZRjHT1Zv(W_mv+pVjn zXNFU>=1ev9)h)pG8?@37l*SR2YjbFyL%haZRH)<>9JRd$>Mnh*s6H!yGH+Q?rKxvzxO zyTQG*tk2RHnl9hrv0?+flDrwZE-Y=lT0(Qcn7)E_#YkR$dl;q zYu3Xg`7ZW~F6$zPNWfxoMXTq^y4dpV9Nul3+|2umbN5gpH{_HII^Jf5?{s36JWN}g z&+EZZ8B4iB+S-RaH@jJjfTX$IauRMZ#2&8jEUNSH^?2`#yq;=>^eGs z45EA~sf}3YXALBOs5TX%Q>JxcX-d#}nYA&kD;#(#4|Y?BF)iAyOrDoDjg~9Mz23}X z4|^M=U*R;Wf zjs!V!z9odorlh_CR?RWXZqdSD2r5s0LO>FFGl}){fFXwjM=Mk!T)D!` z7Y54hKqQDMR6~9h85}MPGs>?weG6b0U2sbfB4nHzqWO6qqJ(eYes|dJ=fF3p z|CQMNZFF-EzR1#ZaW%4wNc-mPR1mZpgHLE%Yi<=qs^d7QCcV^za||tLBt1VWeGX&^ zlUB!2pKU>`U8V${L(j<1N%jvotc*L1FC1r3vFo6aWeu$6#-yh~!c0y9(XX)b%=eLr zr=~&6QE~=0_=P9yvoxo&Rlu2s0N6gr70+x|1k~=7@!=fNX3t~U-NokN~ zP$!Y>aGjoWhgdM6py8Kq1TzKtJ8_AKs1RBy<`X+vPNRl0z|fjEtKP$K%5&)3-iH`o zbomSL_2Hv&1XMNY*p#zu9|e)8%9d%lj{b-qyENx%EmvPxU$fEpbFzf(ArWVDB5rB8 zNctz;kMT9`1!a89o6SU@0!}fk66&${T3yi9v75U?beqX8j<9C)&uQDrK8h}*&gE^` z@cFmlty>jxv|Rco8lvooqSY%~Gg#6gUv`h4c<=ewzT_ zkrc)#jshLP*6j7~K-yOcPxWW9DQF3Ltn8IPjFJ{;?E`Htfu$0q#yd9Z-Z;Mx1H+6` zZBLrpU>5Q+VIGh;g)KE{aJla}fSCLBr`1ORu(=+^Gh5KT5>m>aI6n;|OR>3Zd+SQe z_r53IGK3#jch<3!?s*+tfOX$=*0 zJR`q&@FU9+d-DlywUToH>c0rQ%$DzC;xtT4s-4e10tV2+Y6x0_-^#m8;w2jcaNR2iRB}) zJOV_@tx*{n3r-b->VV<3oh;`Bsb#NBihv|0Xn)~lYfN26Rl;6kmH1~ zY4@)*9XL!7sEm9$hc{Di)x2J2+ayH~p*b-*uaRw~3-70+SXi}-38o)s>#vQQDlh)q zjx0D}Wvqj;-g%aA3Dp}OdUj&(P6TtC z&ER5%WY;eDD}>f2z=xZFguc1Hu{0*Ko<@7%#D27sc2~7iLpM;pOGAHDWTuSfArHV` zq(Q)TE4Q5AP*V|dci0a%R_CF^5f2y6<1Wig*jx&|E}tU0htXZ^@#O0FV8TO2k2!#R z*Bi%OcTn3gIwpZd7K8`$BmU*Ke%j+gph>YxA*$Ko$3O3CAz=Nzt5`{=QsOF}^x@l` zfz;d>0-n!HlVbrf+18DtEY1%-%6c~453g?-sZ z4^H9FM;h*jGw_q}{-c@jc_9cXLBKIMa2E>L+uLjI*oxr2oo#u?%HXgSIQ3czc_#=A zDiH{#mNf@4`=&s`vMp3hAqNt-!k6FsJ;~rx&a1Nz@WOKt#W6^R9Y$e1sBvwhqKV&J z;%Dd|8XhCMWcSf@k1F5F@!R<}Qe()4-`U;=4V=h4wqH+L>`5MZjtYt7;Ul&%+lCd) zS3{bFQw4;aP$cz5)y`1Ck&J}Y-rb<$J=B(wr40Y*Z-_TIcy?epZZg&!S52XRV*hN2 z&T8aZoZ3S(gv)zD}F^_6jAV;MHA8bE!B>No`6ud z06{5@3^dCFLxbAM_E;EL2k}LIez<~9beH&>EJ&1@xhi`{pMrO<5Xd>nY2P@xKna%2 zz`nI53*2%xvIQMEQWpnFjoGc6M``zDNUd^`Wq#N#X0GmMrUFNVx}5l?a9j5xjx-@u zqOEQJ^!!t82BaJOR=7GR_D*1fW#O)6y#Eu<>Ntn`w%fAvQ}?VisF?Mhd$B)WlsNq3 z`i1c+y5M+(Ym(>rQ+5N%f$lrRomG!tLabq*=Zr1Gqf-$E*2%rIt)%8!no)${vP?hk zBK8GLh!E%Zwb}=cLhxNo<2f|GH8;lWK^YU_ogR154;qb)n1!USu|c=w%zJnFD*y+l zQN=)@lwbkz^w7fC>K&;&KI+d!iSCGo@n~oknkbcaTC&!)Wsy6u>=ppzulz;zj_ zTUlXxbU+THE`YUUg!L!RV5d+>Lj4zUt!&{7vy_YHo#CjL9$4q>3}4%e7)?1R^@u#aR_Fni7;nA7)f7^JPf_T{U3 z@R|6I)G#~mqiR&Yen$Jpv1~LcG#8L-0zqQ__KB`b0T zclD)raxPU+^gQ*NEAphiR1K#$&(uq~+eY=1akj@{nQk4=W9FCF?d->1@9nkMMtM8Y z55(PW3-euFuZtk4(NFx1le3WUR-Km@)0y6-H#*}4aqnv_=i0pX@GA2mLVGVZy3GAv zp)kr2#Ly(AL5?YWK4H!dTkuRbg(;{O)5)_b?YpakBe`*}vsS6kZrN>`{H2`t*xj)h zZ>ZPe$cBDq4?vw&NT}Cb_v~RrbT=8h-0Z%|75H4MZT#_jM=uy~vU7cnQ@J2a z8Su({clk2%dS0^cT-9ahk4#)$cY5OPMziS%Og z4LW{6eC`i4EO@UIgX_h z?^$MP*(BI(r3h}0P}a|-?$gxK+xJf~q%rLX>LPw;v1dQIsJo(r?y9)mF^DQFjZCZ;;(q0tXRn0xtv9{nESJ)5{Ora4wZbSIRMV8H1;i~;0@bY<|ErhVx_FoV zHrE^TqTpX7O#y|ZGRsenLC{8 z=9_gl?JD2wIUAKwCm;Si4j}jAfn~MmBLBm6n*<=*tmzMbT85b`vz9l!W&^$Y%>a@? z7`aXc);XLDUL>$XCrNm#jC=V+-_y;cqz=X#rgr0;^7xPv|0Coi-H~*S3@drS05&u7 zZcIR|H&F!L+OWL|D^=94$@%9mix2nrqbqpK~_* zI~jk(zaHdxeyF4RNh(y~p|$B%jICDBn!S*IIef@}p(SyC0`t_@8FoCUoF_FO)Tuv@ zIe>~)ONI?E#6R>KE|k4qQ@pN5n_33WbgKINMTIr0#j>C({3BJfgC4@!{`?0eu13(SrZ4Gp{I|A#{2X*4}8 zjpyO009Y<;6|t!azl#0J0BRn!@But~ohuI&G92b}B}^W?Jy;aNJx@h)MhyEcEA z9EE=7?Ad}`C?m*>K`f>h3YD7Bcfcj7&JoaV2?=t7+y3-WL3Pg>2;6C~Sn!%_Vr!t`GSC$2Y522szu?`Ake zC=!@w=hcD4ZYTYI>9T4_W7dh7kk@O4IuDyqHh2?1z0yCv==59XM=Hm&141~UY*`o> zaKH7|rOSsAh5>Ot7CI0OV(OxqzQo$4Zelh#-%8~dnLP;u98ZPkE`iE63yqW&^KgBs zn>)&M9Y>AN^yk z!M%%k*X7IUAxzqX*-1t9Nr+W%o0dDhItome%vVeIHEjiLgw-G0MFX)dasrfFy0SkX zlG;RL6qkGi1E@IiZT7D@y2iLD(@pcmq6rXi#5?E5cUI5pXjX!sW!Z>pKZVblQuQW4 z`i)Y76&xGLdAJPH9m&2a*mK~DMq}C%!HWNGYDqWI;!8+Z1XNz^AgmMUifaCtj9I9l z^kjL&X&08u#p(R3MSyS`_cL%mc;`WgOaEsojpgH0x-vrX;-F|x-;Y0!qXVc!gk#$S8_Au zL%$~em)OHq_t)MRkh~Nq7%C7D5ERghyoy$>?$KH@C=d`WED#VD;9D1cCsSvA2P0ZD zXM-Ph`i7SJrp9y@j%=>4csEilEOUPTYnpne_`CCr!dxp=zhrYDvWC z8a_+&KNX2#m@Xjr%P>m8FHQPC|DX|=t{ZECcSQjap6C(535+mLD$i!jkm%%xV%3M0 zr_Z}jlfa+>3;6;vS^U!6{=O8f&E77`r_WQ4S5J3bp_wXhm|je6-yru&TJjlnWSM4C zXB_X4jCb3rdU~Hf{>wO3xo_?u%E#IsZTXf$NW)tQ6cRNL;hSWVxv7qivRgoTSt!~# z`@93uPqzM@JGDT~iR~ezA?3iU2(w`}h7oH9gHA&t8$?f3w2d!YUjNuve|HWQZV;-l~?VM1rxvm`# zd*wM;=QdQfoJ`X&%e!j}RvvYl%X+aiu$=^NDGO> zp^g$VY3&WUCrB6OFjSeEnwUDftQslf@#}1iC`fI_9^Nx!to0&3J|Q{NrN6xazrY#@ zpWAD9it#(%@_`MK&I&W?6K4&%va_(KD(Kf^+g^d>@i5R~U)j-cmj8~-s*`gNYiV&< z=^JLi%YbKU3&<9vL>ifz8|&dxFAi^u6&R1iSL*Tk$wmIFzWOUgb6qs8IYd@6TrhRcFCI%b_X~ zZXvRG-%U=OZwas3->jPmPOhj)8w-6bJ64m>g@#CBh{J+Ygp>M$ReoOQ{@Q7doo&1d zP=iE?BCunpoZdk1V!c@Z)aBQgDw*TGN8c27BL69LSQb9YAIe~+}bl~Z!2}pXjZ#n#~ zG%!t(wj}iOEu#>Hj25DY%%)$&%T+{`Q)wEpA_KHX=U9LL7d353YW!yw-ucc)ed5Jb zL&Zw^kAJn61(iH?6kw%2z*_9TTkGU#Xlr9)Zu$>ft)pvU`sk5@pLj)vDGD!T!xM;3 zcS#V;-51Q#1KUyKW?i3FHAL*&-@0?Isw4tq3v2lu$fAoIG`~sm+qn;869$B1;2X0> z{qCfm;7}qoQoWT8XGQy>p2VPcfv9~{-d1XXopD=Q!HLG&58w7}!WecM=G-gp>-FS3 z`P@MXOg~aWTvgq8QAVqnA){Ll@F=VUvvsj!5vWxyp$hfASIW(R#!2|`BiA;PXpvZ9 z@%1getAD2XCLN%cg^CVYTU%Fq7#3O2lF9w62eju%Ty+4}e}Di1;r-nM#*S9zHcoW^ zbc2^7k8J=w(#8wm%_Y`8vQhD5apgjrBu=L=Ms_=-;=vHBIg;?_D;7*i@d5G}CQZcEeI5@phyC3tzn4e_JzQgM{yGz4R=oKn5lq_fZF2~ng z6OgD7=Q{*R(2){HR=M!luBE*uqKnZ%ZKk4jm!%x2`3ebvrX{fIydr^GVKgl6M~PPE zbd?2Mvx9is1cKY={6~0h4FRJLpjawN)k63vlP_5pku?z>If7-=2DReo@26Jh=dFdH zWr1`!3Vj|IBo$T@ly)kQ{)TC{t>nDKH$h+S-Mb$TG1!K%YogVCD^-#gP( zxXB~ci|cpBJ7nev%$y!6rEOvywmY}&bHEzgYUrsC(O4{|tJZdsvjbJEFb+hN_>l7O_)+0Z|7G z4$j{P#>L#p_`iq6$x%6GBODN$L0506AzGx{TZO`?y+g4gf?2CH=1PpU<>Fgj84c~b zGK>j#6C5aOPQ1b$c7>x&PPf*^wwUtZTm1K|@ylo~{vc_LlcNk0TOF6{A0}(Y$;t0Z zT_=-&+=G=kV8D6m7)8_CBM9OYsm>8&t3mW&c)+86f;JwN5H_Gktdqk=U6{0|y#mx8 zU_J!SyZMqx!*pLl?U&SK<0!{X)w1e)?9k4$lc_)Kmd_Uy(Sk?a6(+JebgDQSbJHLO zjfe6u4_M3;jnv-2{~DnBRPZd<0Q(~Ve)zWl{mT!I{|r!oCt^1&0{`-aS2&?6Rn=xY zTacixfqF7?v`ccTIN2)r%|-@+)X4;W=H0=#w3$xDT}{6)F_veu$!}-`%&aT{tNl2y z;&`emaO2gypP#~;M0fi(GiSnw@fEN><$UgOpJ#!FIFTT_BhX9-Wgp!u2RcCe^p`uy zx1*<O?$2%ounqIgxLnGlLP!f9 zXfClx3hp`eeiJDzX>VM{S-A-~2WI0;RTJNd(IBjx!uveMryHf#g~WXG;_T!JyS>32 z#^Nvp{ROFT5Go&is`37}keNl?BM}0)N&#@=|2<^vY#p5p9UcEWYAhV3Dk+A4P$`H@ z$VkylP%4xhD#}v~Q_4(@Q#XM)qM}M7GdYej-6_UL2naTE>h=DajeqygpKllspC?MC zh%IS61o`LVf&Re*0Z;tr^$qapUwELSgW=zDuLV%3bsgYmV3_}5VC|d@tjrC6&yz$HEfmN)Ngn>wcpf}wbfIfy}3PL4P^ken`tjM~SN zY|XX0xx`t=(im;C6B9yXn7onHI4I!^L27wts?{`qw(RT%2w?BO`$oXdj?T%^ zt?=iV%^E#Y#~U?NPG%n+-}eUjB@sUmfo)dNtH?jg!la6Xl;on@K3C!Hv59J`zH$J?ft>el%i(!_b4 zKDG+S-2XwGuj$gA6H$MpN(kDrP)akrr|+wAWtWVy%}Cj1!d36BI-$`g0SnSE)lbuA zc{~veRz;Fl#VHErwV~h>8aY=X&rVX%=jUT4VU7Ag(ScYpALPwdWMI$U1=tkkZzIP+HSneTdH*t5xg zpt9FQ)B~zS;J>A9`#k4ts~I5S!V~$6m5SJrJjJVLC7f@N*$(QMC9U;z1zJBcrrJ z8Y?B%UDcw=IE8XTIi(NffN_^ed7;t!2(&EBX^(=R(?$A2b}e{b|};S4D>?nccr zYLM`a+Io0C{;zE`s}XosiDT9;(3)ypwuAFQ1&Rp$@6dx$)CRy}aP?Br{V^~hMK_Lv z)lTLwj^FMGG`0Psxx-fS4;@!%w43+!mpYwBG5?&#RS@S%eobDnq(6CdxxM9X$X3{IHm|>T3FVM;j`n)1+{4o8TNN|BVKpm0K6e00a{2g>; z&EPknlAl|mQA;6I=N~1$6gJxAe?*yVV29s)Traxg+_!cu$ZM^;^(30f(bYo)0GEENUt-bQv`xM;4U5;rey zP|1r;tEb_1?J(9DtiR2|4VIWFr#}J@??7ec ze)Uf(Hwo!u=F+!_{m6J*LiaX=x8GsuDF@m{m$L^I_f6!ev6=OpYc^qdgT{*4(A;Mg z5|UciVon9Zy%?f$Z#c)RQ5LFhE}EQbX2Q zFx?Ts);I{D!UQwDAJ;DsK^}ys)YN+k{LFt31mlVeFDNb~-7WsrySanAE1x5De4gL? zLU?tZ(h`#b#!BOA)|uoiY`-0VCe&^qZuk3T#?c>LsS8`BiY#X<22<2KRi3KyE~#0B z1>N1UsT&AID>i^8 zIU{I#IMa++=3Jv%&W_VqtPVtHNGh{OEPuP8n;g3CDtZs!(ry#+$x!8VOrvyPW33#g zYoBE!kGCxNQ6AuMY3|%TdlXIy*&7dcjGC@arUiFhm$L6NxKksGJ@tKdGE{nu$ggEm z(_`~5U4`bIrg2@hojz;=8?Gq*a*8GP0No#@-6>o1`Ff8qIxAI8HRp`}PGl@fIyRgL zHkzSdqF)6z%B%t!=0qw#*!a*Z3W9>@m&Cu!eWO23)kDJ(g$3O9o zDTuEZp0hpA*5wU#@)L_T(Goi5gf)>j$;+1bWfMZSHGYYmw154=2RPhRe{?}kzR-wJ ze5tgIjJc}qr_v^^1(cQc8*ZJR5*!TEr?s(+ZfQxihEh^SidJ$$N>-Volt!GkNttSlMq)v3 zazuK9T0wETdGCKx-v1}uGPAX{{NL~g?LXm3=3AwxnIg%qgmt+Mv^nt$qR|Jv*UuYVv$72Tx6cp;A8h!`yq`#x`Xw^U~a8=8@nPU2-I`PmnjRD%yjIen!{I%EEYuq-txS&yvw#!Yxb|3 zr<|a_^vzd)&lG>Ge1lnWZ`yYg3(*wnHQ6;*9s?-QwkG8*HrPW(LxY0zGkxBMMXP#T zCJl*^c1$EpT8W3c%~ zOPs9l|6{TIS3H(?zj>bmhEE?12#D%Gh1NeQ(N8mDYh$7RB1nI6L1!f?+YElBt~=_Y zO!N^VSFV)Cz(6yw8;7yRUl_E|8#xReI} zZ<0}&*CD4+a*z3J5qDK(HE=^1bP%5^P#$2wGBb|FCFl@tk>Ji&LEz4l8xo9^yL+;;wdF07qB#Xmg6EmuD&wt zgS$}FMi2&)wWHIt;pB8eai&cxAt>cFf0_hw42znb>uK~qSmPy*ecVYvmxt=k+C$5C za~GmvlEl1P?3ldtd20^R@i?aJfWm05l*F_B_|06+P#uR4rJ0P7d75o`vu0SlGU#gY zTgSCW@CTcp2*lByRbY7ru6j%Q%ZOcNVuE5xoo#J_C+|776Q6#1g|EVOD@A^{dLS@j zTnaqfp#t`3D-um|;3aeo!?SYhpbGqRUOyj(d+LvSwIIxwL31=bH~0?F{tPt^*G`an zfyg)?Q`FP}IG-3?eI8w7VEg2at7dU6Z;9!i4EzZDK+NE^m$`;0sz}E&kfpbFxn8Zt zEN-vy3TG#Yjxd5ClZaGGOzD@_&sO0cR(({}C{SD%Q4ZtVo}iy7u3K z1^d8Ay#yGRYujnZLYyo)|C|(m7sm=~3X{keP;>!N{^}fJ3v+05>AmfZ6W?^4+HiD5 zEpO7IXvrs0rEG|Wl|<#)Ys^P%nI4|GQ`{-~#i?6a(nKGe(vdseD|rn=l&6}%VkAfa z*WkXc_)JpTvP&AoA^f{U4X+m?6iEz>9E%f~I(}_$S{6u+0lXBfe2K}k08QVxMLr=s z_zFZ@+QYP7f-Ma$x0}Uc&%bpslex=84?b3IBe76a;hjLkV_7dt0v=FD-a#6avHj>c zXx>IHghhk;MWgx;@hYWNSfU5r>o9Wak8Rs=yoCD(@RfazBnN&FDlm*IcfpN5zdKRF zHij*GmE#2y&F_s;3CZl^vUV^D@pl?!^n@j2;xBXkMqYkJbjRTf4QhWr4E=ZU2>Rod zWlEI{ZlT5f)=?y~G7t%-K0DqTxVts-Q*cODu+<1JS_E{;C@;XFt*#?_N;51XGj#yomTbvHgdF|o*k`2qGQ!w2FeGdcDz$gUOzfk@a!~I z>I@!r>>=*7LYKZVp&9%JYH+hTI}%ED_&`goUoNu7sAk{|$^$bde}vi>#O`|PaMVVl zH#SzZ$xmAg$PBz0`}Mi&(D-vR{TigQeGbZ$aM-${mGm-Lk#hE1ZF|#9vEa$!b^6b| z#uIqciU^|XNYZ&w(rEl>ottI80J$XPUs7PncY1qz8yuk6+fVIy+clGHz^9@0xoBH6 zSKuF8(tYAHCx5uO z7l?UVMAY%<$16KW_#~j^7Dfu5BVx_nF%?~$Ql;q$o?M&Rm&@_?!oyqn_?(mK?qX8f z)RMSV`rb&J!s$FmAEe!Ehqv|$ZKL^g|ExKFzq60i49dAUBo<`o>hPd9)EE#By1Y~N zM+v$lYTLunIp<6zk~l^KaL7lFMH1Mfh?SkM?`;@8Y>ZkE%U}0z&;??<;9&zuKrw)u z^gkt{zm(n|#%}u7c2>r8|B!tFdT%5HOg}xUkZX?M`v~wHY@o}r%&ahJFec7d4l-1$ zhxRH0773V~qBN;$e{>k<;$ki z9jD1N#yq$(^5Ct~=C-eE{D6M}GN_4m%nmku#vlEAhoAhFcjaaIX>sL2MWU=)1LE$#$8wxcGhY2n=#P=O&Bmg^m5l!(vr7 z>tT$4u23}O?4hF$@!%rjGiB8Fm9K2qoGx{+U^92N zBpszv#GOcL!;zA3a@?Xxema2BRpzvs4Ss}<=DjB?mP0_|_xqq-8ULY;K6W&J_@3FD zcxo}V2e=WZCb+)KYNADaxH*D+9k{^(=;b;JK_JK+7z(;pZ`5;N!4bw4&8}NxKa(4lZBbs~WAZeU!6~-+OIBy^pUV zq2It^00-8dRasO<*``|1XNbp zuWO8lBIS6ysm~vJ?B@U*uFfN>sORO-X$TlIjBQLN$JMKh8}RdzDH~plNw@BH<9H5@ zDDSh53ZFCZGRSEdL*&TSYa*Wfmo!wy8~0vD>=QNJl6z@}2FZogM=CZLNAg9lLGb5g z;q)>QPAz@OU*SbNJJ-tPu#%tBSO`*876Tn6L>ZE+@odu*M>`wcDO&eOXSfdW46za3 zdeAyp1#PkA?9v3{h?PBFk)i2|VwxZTsa)wHcO3z1+FROSt<;21Zxq4$Pv*IP&i5#u z&g9mV*E58bYoCFinpkY_!JM0R>%V*2Z(cx3-~Bu6 z|K7`n#&^xdj`*3S%YXt4Wvah2Y59c6)nWC^l|04;P5P=PIInva(b}F!(ocxw=GVuT zt=MT`0r`;i%%8p&e%&lLc4e8k$jVL-9i2|yVw5k+7|D8TIx_Z1a0}`5YO$HRuapM4;G3% zcZpj&aNf9gQbG=1jNU2Y7BWfBfF}cALAQA7S%USVv1|#RfIlHK=%Aak1=ziGZuwHz zl+rhEQ4W)F#tZ>n14bMH=^;O!ChB$>^#~pg4l5tF?0ZYiak1@v*2vklOj9*z$MtG_ z@eS-#6dMjf8&uJ*b;Kg~pZ+ilSqIbq@tXkjQ6M544TdisQ?e=;7s$BBi496$aKXdY zu|U*Hu?6SWrrjGHt{>ce-EMKYm2z$6+1;betWWt&kY`rre_1=cjYo`AL8lhelGCmT znH@UA7aI$ZZ2j~2t69&_!z13P5YaD2j&yd`6uLy}%a1de^5hH?bS`=jYb?)y1r3E-@ z6vo4MYEp3lN9pJQ&iD0oRf&0R$pPRU9&xdDTD4sB=c5O(78_eCP-&$V2{lBGBKTur}mdxo@rXXi>{p$N)Q*)%%BxPV%xv;dAEStO(f_^kScu%PD({xPw2#cohN zDD?IcFam+Jn{VS0Bv){ZqRwGxoH>!D987h>33;z5iS?DY9#t3?W(f)=FiL-r9e1i! zLAS~pp(MH~JHY)xL>RS+=eDmayGE=Py;#BG{@(uF&T(@B2{1@o{~ML;sX}?Muhs;! z5gdGf0eL^B$tGcuEc}abjN&-w3Gf7({p+zPHMIGzwm8Q9+_OhZ-#aTA$20uwZdNgd zC-0`pRB=Ifahpyd!0tg{2EXSEKW1OPw-@AHp{~-Z&}9|fyKveZNgg|de%2wuVs!gw zF>W4hdfOBszUxWvF7o0q6C%3>uKmQC`$k!bEX=j7;fP{8($58ficj(q1APNHLdY`(hEecnqf?X_ zVk1%R4rXE)Jqr<}_1-oxJK3dr=|Yn=_t7~VI87!iFXz6!0)_~Hum)zB!0ZGrl~G;v zvkEPUXcAB)59AP;JD|^olW~YdVQe@69p9xOA6cMUM7E5K-4y({UQ)!#_G3!bCm4zc zp&=F1x{K;2hH6g3qSt^A(GjJs2jvUl(6qLMZr3emIl`l+K1&oy za4JnN?ldFW?1VGOHUq|W<~b!+Ts+x~CbSrKM03LnS!OxvQTE5G%NWE}1T}Bi3vKBk zpqayN!Jo)YX~Rwtv1{3zcJjrPKIQ8J8{!qASB6Yk46$9LFFz|l!jLW!^C$xF8eG%Y#U91aQcPqe__LAeP{an~goNLmvR>X8FuF>*JxuKUR z9sz$|51M6!{m4DKc~sxntdx4Uogu&#I}EvuRSi-d9HmhOOJbv{d*_g;2#FJJrkXUU zF$eQ^nMsyh_9DfUammY_TFBlJ=CUFD0?W7sBZ|o75_E0sN(40xcm7Rb|EQ#X_V8jDKW({d68f*njoJ#ZO`o)H8r z^GN#Ir{@Kd&(i zjEX=1+1P8q)|C>D;(l4N0wq0~H8gcKV1qnFY1iOcQr&N`$*QpmzlOuA;mHzNYz$~x z{xadwm-(r5en^ESp}OhH8o|YNRA#Ews_)4>qZp{O)KSEB4l?uQEwtm9;tZxWb$3zOG5K@Y8H&f>d^x6sJuEZ=cFIw)ng?M1LyV@;+vfLVNmww< zFPIlyw)sz~(UHPOiKUPsR_AJPN$iAD0&zwkdZ|O=7FVTA=?^b)-rw+?ny;isi^J&` z+A}3_YKHb$7lBdg+?+!GKM8>KAUKgUQ@1|qNA5OM56AipBPsA?`Oay_=f<;#jH77R z#b-_#l}!Wpid)K*TzcXXq!gY}+?$r(I^G!JtrFm5y zskd^1zlIspwqpEXPm_fiVffig?MMwBXA-3l>9;*q z=`b|_sryee;7Armjil5h`#aq@t4y48T6*K#hZ0vaxFt^ybE3o=h4%eup!u>EFDB~W zj=POjYB~Z;d)3=*EgXpxt)F=5X8~Ztodzcmyi0wmZWuoZmsyfwW?BP7I>drw!jPy> zCF!q7NK-^LmqSHUn~T|#=M_iN*ccr+t2F!&@N`x^32^~)=%h*e411vaR6v&}Xa^Pz z`<85mZMJ%1*7=PaVtN6Sjb=tqkxs>A=8T6ki^3TohQ*4?iC%5ve?|fKgf%~5r_5%pCNgRYjE}iUo<6>UTxrzFnbQZt-h?M!d0ywbxq138%dXV)glPU z8wk@tBCwsIy{(9vu5mr;JRr6^77>tSY(zev4|KW|`#v^)p46L_SGfp|8#y7y{h5qg z7&3mviUVPGNm&uzer$+;iO<#^acpwe|JoNdTA%!Rm&~JUdR}-#x@Av(yrRhT&GlwO1?2L@#v9m*-q&|+VhtJxE+2009QZzqBmIu!4S_!KOQ?OU z9~$%b{%<7)5uO$jnAxybY z@zJ_WJWZw378yn6Mqn-(T)!NhSSoXZILR0)^)i7Rv}47$%|8zyKLt#ak-t!|0-=3V|`dMbUr*Cyqq6DcZ27~a9*73y&iPDGUe=hk9#KO=^i_Dn@hqwNU^o)`jiG%M8_R&l2D|6YMj@Q}*MtN2CIv_Kz3h7a`N~ zdcr}8*y`Mn++W)^7k_fW#)aQ^>iKt8Z8#Tub!5KFa5ZY4Gb;;+X7dO-sMQs>r8k)W zvLl9TEdZhb{ssIjT}=s~+nEz_DL=`N-Gh2RpGkg$F^AtcEGH^ZU}RVl?tWk5!ZerP zBP68{{ztnIzB@%U$D;&VaHNCi9oaSurmmQGBBhWHx9#j$P{ zRC>4V^`VbNJR3A#046H{15O*~0O(A1@ zq><4~Xn-4%Pc;vWR?}xMmYs))r?GLS-%e~_LiY!)b7UbH5pFBVp~XxHZ!UvpVr(ZP0lL`!8HrLSjBj ze=OE0axero4*^94-^QMCOQ!KaIR6|aqU&lG2pSD=p@=<=rC4&PKq*L3wg~W39X4A3 zDF?)0fwz75gB>ufi6VMn2y%$L5&D=S^Z}?km6Iz+rW{+9-`K{&JZu!QJEH2GWtS6$ zB$g(SWJx^Irqz<_JUv~?g7%EK{KrTcL7}bTzNfTEWDWsfe(V&ybE~h800ct6Jw1V> z7DAdM{5kmp#(vl9&Zr%Rtz&J3h35*dVc(0Q^s@d` zoK+ZD?o}p#Z*QYn*oZ$xm4uL^D@vWkf`13o_`*_tTNnr{Q%_h|SFE{?=lib$p%acDHB<>6<=2{OU;b9jtm>RmLd_3? z)TgPXnR8hx(>wQbb5_)j5h6OU?3Ik}%rc~U2vBLH-m_GMCZ@h^Xtjwog_Ma;Iv}~F z?<-9nV5r8L*FG#-{xQP}7LHP-o4-AvhWbWra>E=J1Xjq4Zc$dw#8_7j`PXb#9YDEr zG{$UHBGz)c5;>`wXc`-HM$Rm&rK!peey#0ww2CO|#Hsktbp~4fuZ*8@@j6 zq*(ZDCA(^r*gQ?LGHot|xU%Fj>p3c8*wAdHd!!#SeylfTuaw-&6wQy}V zKeUBFheml}aqjC6`7#~ER=$iocc4ZLbKJ&#_@VP7(5zYKt2El0p}eF$kM}Xq>J0e3 z4rVmQ{~jM~^S|v+?K~~&BmdA)M_0RTvJQReyYUDCZ|X@2DE9PKY?5imstY5?y2WY@ z`#6@mh6ks80VyvL6`4P4A`bJ_>&@@eiU&B_1^Ik^fO8)usJJ_=$KMsmdQpR&)6OW+ zsV8xM&|!NiN_ebY@80tM{M5`UC}PelyJaRtZqMdy)A(6Aq74?_>?Cl8e3!uLJ*XjKPB-%O$e%94tBvGm zMCSB$WEkdy2rF=sg~RQ%Ln;1vxU|?Bc~AY!6tQ=)BF{`PAiB} ztJqP~ib>N#NKlWA!;z1UPf(9gODc;|jZP`cIgm?8jZ{q2Ow7|sNK4VqNP|!<&;XSx z*B$OkOioeJ^0V^wpqAVJ;(vJ|;d>}W(X%XIOxYV_$Lwqjxd*0ag2Utz&E0{S+SOfh;2ba2Czp>*|gA=K4*wBVwi!l=taW`Z}cf%=G2!*6rIzB`yC z>26B?QqcRS79+_p6MI`qv_ffCNZu25=Di%rn{o{{tEKT_s}UoNtOEZ;5ZBPt8v6!? z`e|3|3pE;9-@VBPPYrR%qIXON%#0Z`B@OHqdlp1DQal;pJMjG^wFPj*iY4h1+Ml!Vt+8cnK>%b4t$k6hHr)GV&|4xWQ$ zhllH49Vk*LWM+_L&;)WaD!wO!VlajwYb@_;?1-Lkxa1vGk`s}5`5!9Cn-Q=k62vo+ zpn(dLd}5qT1xSF2qJ^Q;LU}TL+PLF7eGnR7YI(OpKXcMNvnFVo(zvnI#x8?C7eDWQ z(P+PKwFf>on%)P|7hb&UkH_rbDjcas0f-P>{+YEwd8%sH1ifUmLj-eZl0Q>s%~Ci6 zoRh2c)(dE>KUUM$R(5{d*?Ed)8zhG%BbYyC3K5-W1kYOQ>UnvWZjM6nPs&f- zsEDU{G3xqKH|v`-9nT5UKL&2-MXL_+-x`Cmzy8s~&TU7u%#qdse7bu2Q*6k?cWbsv zlTH05H7OU_0>m=ut`+(Izzi>FZ6{kHkfskFuvv;MEV)TN+dl|XOO^3d4u_)D_SV?I z>5@wjc0q&z#P8+qf(2y3ge$O!=#Ze!CeHC@KekOlDc8xUcy)on0McxWRGxEiE5E_!Z34^0|CvWoo+pTJ+I&#KeXDfGH-ZsM?1ye-K@dQ9;WHn$LcM$>n`d zD`{e3Giv0So_^l9qV2ixT3*w7`d1g$-|SX&qT)sOoi98fzipNOKD&J@dCYD8rnY~` zdIyp=Y**>wySHAbWV}lBB>2+XzKbZE^0G$6O1Z|14G^$)Os+Z{NWqt_BS~;^v)Sm5 zbCQwFsi&LzDOlYh3C(AK`EKC++(5B%7Wl|5qxqeeXWS|ktNg@_y5V1e*WJlfWE&I{ zHVKE`2@Ohozw8L&V(3zI-6*vKZ_VzE@t-|o)M%wxmYe%ENK7>b2L0Vh-}BNG&83Yk zN-{c(WH`j0@!9(La^nVjBWPO-lBgh%j@wH7Fdb!=#{Ipz@bYcNg5766%6pYj9i@mj zVsgOZ0orhUYLPae_^5hF*@u%;P2J2ia)+BYu8mrBHQ(N9`Vf*+Hy9!tf;^ zcIY9bT_LnK8`Wri7Y8wmq?| zX!&h#-(U_m#k^*hnDT_@-Xg8!+nLt8)FZWCC+@7(L219%j zjNq$dui7fkd2TmQCxZExEi==VzI>A9-Zrop6jVa2fB!M`k0LEN6Wq+quHnMptO>FC zFsv=IB7+S`ppjHTb`km-V_bX%+sg(+6f{GD`3-(T8tSSff!B<#HPfrw_?_@{y=}et zGbU8h?cMt`{-lo_1JH?7hBn#xGF6O85Qm=-p9QTv0|BP_j&G6c8fe}G9(Ox2YvP5C zy2e2~Ap9}OR_w2O^cei?!30~^&q?F*~0%ExudpH>><8=nDtf zt2Uz-ZkLfFOw~A^@bMFht#snH1#LgR_lX*qHSS7m6BM+*;(|0>s8GsJZ39InOQW;BjNOGtc-`vvcOM)9I(EZxFYPtAIr#a0vIQT8g{`*ZA$Zrv`! zz3YEP-Km_!=f*cr`|=I#{5ziZJL(L--SvN?ZX)r!F2si)+WJt zQN(L9FMEa4^K_Y}SL0h%iv4=>y`Xj3CtXoe{>^Xa+PU|}0G3zQ`2FUl1Y#Mj^Xof- z)3dhy29V!p;GhGMFQ^^jGF$}HbS{bSzSGTH4qLl@#CrFW#I+93e?y1)dHI)|8|CyGEyp1-r zlXU`^?>5`nh{P9Q)ZujbIN9^Yxsj7B)Rt>>&k0#ZzNRTf-%OM%+c|f9-c5|FX!DfC zhY+d+8Jzbw@tN%KWx3-8C~i`-TqfV5G=3F|1|P&-Se&f8s_$X$vfBXRU0T+tRp@#9kXUk0 z&2Yd1Hg?@OT**W$ylI*waVyij&6u}$t0Pw~ZkJ9_>Mv8X&kqxwKaLt+2o2&~GcR2w zs{B4!Go!(V(>{(b%~mn#BE#K$psK|b+IYohO)^Kv3FBjAmocIFD$gvdoGTS53w z)AEej;;YKoH~XBAflQ{o?oYn@l_(mAnM&b}vR2)P%sW-%JzBm%d&-wDfr2W4`q(z+&>)|^@mj3VJ-~W~se20jgt(~pQKVu|PNz!(g{;&8~ zBts7+7_w2L5nieE)EO-|@v-K#ryo|$fjib3(z@S!t5!TGprRp}`_RLUJFAwGssXnX z(6uIx`$j(;24K*HALs ztTF4neU?_vfqAldF=m50t_uEl^3zz^L{au8pY{M0CS4?%@Vc=^&W0nEN?i(EPH2aP zIwD#ByC_L*i?gj2>WKQiUxTP%ZQ;P^hl*GDpRYP}Y7rvJh{MT`?LsLZ%SMKTZF;hl z(_|k-flq2kGQrI!hyrtsK;`WepTq(5I?xF6_?HPnNlLCIsNUCU(!dY_yHSf@*y&#> zqAEkGSbvP-7Lu<}f7%k3J2F}L0rbf}+JSjI{)R+#6%p%^0JLoIi?Zo3#{#8vfz!dA z%&;aG*%nTm!XJGVgQq z)lvi6*`41*n&^%8BmpcPHvXh-#qLwHe?CPuGfyM`nqj=# zOfQ}p&SPHe1C|4`lyQXXO#>2G%j#3dufCqv#N?tWyRXhjsBTjE&k6t%UB8lT_K70!H7jgF@HxXg!`SVbgCbd$Nk& zB}JQn<`2sp2d~}+cj8*~8q8M{LC9QL;&|1t4RKytW+yq%p`I_ zA?3BdtJ8^#)3jua*0ysY&6KKWYX#QAigNkN=#P^794ob!M-o>{>?YYLh>{PXOoi13lUpxT+ng*O~^&Or5 znFh2KWNrQNk-Od~bhw$*8saidrQdtLD$RjARnZ{D5&unXjV zP)DR?f-d~P)=EIf=Z&=`ut|IN_fM6%U4llthu#Q2sYFW~c;K3=6fl>&R(ny}jlxm1 z_Yj$*+om((t>3g*fxPO*VB16+F-Wi7!f?fK=Mo3wR1}6_1vUd+QY^u!>R7#*k(U3( z>SJJ{gbmpRQo`1n*7`#a_zz|YH7-ve==r0bz%i|LRFi&HnFJ+4hc!6T;2?d39u(W7 zYr`@}4b&V9#ONMpyWpB)CGT-})Qhq{m?|Y4-3uzaah6|?4cfrbn6<#d0&!`psmbiv zsH{%4I6}C}uTJHPP}z=1(>|D=JBxV0!~>$ijr(}C)LN}#^J}_DFR`he#Yb)Dc>nW_ zmMDtg1N!dTUBCeVsQ>*pWNu^U>_lVh^bd}%QTe}&->975JE2x(W^~@+HCo{AXMdRc z;`(8eht{pg74Rv9YWIC@77|OSSh027=M6cya%9X@xap8v@1V#5H%E}7GFCc(H+aAv z0_#*??W{$o)76n%FY{C;G+0^gOeff(5s#t{8RID>R(KqfJnYjZ^^C%$3u!;zmO)LBJB2B}M9C_?CmHJ*zBWwJaRq(gh!W zG^{yf59`N3G=bWv+lcwGrv|am3|lVC30|5|urZ@jcVw6Pk*;43ubJDyu9j>RZ*8)r zkQA~?AeB<*3Y3r~wegT0czE}6(uZENLW1SLbbl{_ObX25QVm)K;qfY4H?17q&E6MG ziS8N8TQD~*;3OLZiswSfx^ocl$c`k!jq%@nDOc1c%+=sF-u=TTnn3^r=MWn1astY_ z4cXCeJlez*V~o28=7cWPr;h}!n`h2j(kTrxhE=nAC4`6@%=kn%gcqm|<*HTKI&Nbs3lVOM#W&ZclRBqFG`c zrZuZK{?GmTLpgJjDc2V!RVJgf%V%z+l35QR2`N~4Df7AmNu~$>-s&=jMdY?3p;#7c zZjl;*z&Ro_DTqE)gYm&Bq~8{7?x90uR<+Hg0&gib(|BA8Dco7vf_${h0;$tTPb?hQ z@6`;$RP2bTfl*eRKK|SmqOclK;_>bG7-%!A1acZdah&dNg?=s11poXa?}o2Lmg1P$ zZg-5D-HXp|2meJFO~0j|m;S>G0S!x~P)n9fG5^oZv?8Q)%!gJp!{Lbc2gfTErO}AFCScySc}5 zeedDm4so=soeO%re|0kb&0-W6jwxW@o)qBkcIdB*@BiZn{}-bBZ%1UN@9++k0r?#8e-7;c*5!wCni~gX!^0L zwr|JIl;Lg?#He0*=a=W5S0kirk1n5p`~t}V`gR%dt3M?=NuPgg&94HSM7E^}Wsk4w z_=$W}j^yZzMQp^gCYSht*dOqfiB5$82WX`^dMUg5s_Xsclp7m2FjZ=f?wz zatHa81SR<8G`g8$omwy9(2X26YV|@UL-C zK;3Yf||r010Jo+{_0G?)KNYh3UIIQ7&U%DLzE*J3Z~WyC-C-0joUo6vnvkOS z=XWEU6@vOYMl8C6^I`--3Jd>bs@6>M5nr-!C+M5ijI;cH;8}_Fv<2|{QOX5YK25G9 zdp|r2VlXi<7aXZfHXh_!PPdbykpwxt@ED>&Y#i%IxV2ipuDt_bIj`57=bi1XQ)VxL z@w`967+{MpZAJ<=2hufQF5eNxbtsAW9*`*wFQV0cYcmkEXDvt@V&@`|Y*Ezi;dnq3 z5}H;_KW^A;4Ru!l)%gO~F9mWqQ2v_3Vhwk_jDqMvq>F1-jF+t+-eC`OZ^(bvvu@o| ztunTKy&tyD#Us4lOOk(p>J;k-Z1mUxym82M{X#bv-EmMvw?Xy!lqC)_bc39O!M%D? z&{9%Hl7WTl9=xUU>n_fnYR0=N%%9-{naWoclX9ekb&3p)k3U)7(7*QPZ5fHg|TCm62ttUiWO#v#|=Rj z<{3W_j7kTIxK(VIrU-uXju7qrB8n{BHEtq!b3O%#WXJG)Q8}Qm=%Y9v%{-+jv1rvY z4rN)}$~b9WuNp_Zs?z{o?||c1E$1kWc}Z_K!IltuYPwxR+QTW^CqV9~h2W@;Fi0%* z!BLSJJd;nKsM{+}Pl73^QLe``j(URd0Y@iIUxKEeO>s-99;j5!nyGMDb1^C%%U6*? z997(EhBW@5*L8E=0cpy@Tv{v?urZ?@28fcz9-9ja{B8^Cwo>7a@pz6>p@in2Tq(!T z?L&?VhvqK>q8Cp+)x(RF>z|U~L&aqR34j+o#c5)IG#VA#%O6Tm(Ti^%pTu>I5myco zz%9MR(x-cOWtRYmZO3nS0{PGY=`vME%X z5`~-qiDZilY5cW1qp}AiOg(7OHO1TpPEj^v4XUITK>kC|<`&%vCC+MC2x5M9t7Z-4 z5~l#+zDz4Fu7)5$tZD9!;MIfSt7oL>|8nfwShIl(3RT|qLjN`$Onqm9zpAEeXaWLjKt`&vgpxa=4o9)V*$VS+Y5 zEHKF*B+76ClHl7|>Oxb#fUxzktPd37;>Zd*9~yH)=?>_yoN`W_F_ryWHCnsN^8Fb2 z-QL$#rS%8w)mv*w74&{|y`_mIIj|+AGG;iJv)mC2hENWcH|W>&rQDi^DPp}1{W{5= zkHl#6Zt$7#dZ7%zjK^Y^jn*}P&e3KW!`^7QGlC#K7NWRF_ki}Y8vh)k6ehZ>m~F0t zs1I$XRp`bZ@NnuxPyL7&=MJ>4xlX;**Z@ggaico zA@#~s5AR{;mU>dtrer#w^W$1m?-!K|lAyN$5*3)1vSd9d?pl{E!P%i?uK()qjA zjtb>C`;TbE%~LaS2a0Gz$`Y&b_|_j0rRQT^X3#-tjB!@;bFf4AZBcW22TjUsTo8Ow zUA+t|6*(`g+6}tWkEDvpnmvl9i`7E6wm1y3ff>KG zcX2Dl4sAb9u0X?u4|U`^6&91|dK)C0OJ zNFc=$6E_14ixi{cpR9WUQDdAZG;570NX`pNP!>|3<(=}Y3t_BNZ_Q3vzz~p*xm8nX zH;Tb>X1|8${5~VI3k&)E)GXXmg@e!^n)Lp@DHzT|k&Rlv6Za?i*D9v$`r5h7#x?uH zOkEcw9jbHGvidrb6ZQETr;G;i8)xnv{SU8X-(ei;7m3wWRvMm9%|&8Re|dk~1BS$28Q_3Or-jRIqBsR!qe2 zfS5QSs>cL&;Q9b_iakd&h~Xzf7xdcnyV2O|zMrNR1(*;RK0{zNe-x)~I()9{Wu>d7 z)65#YC-H>K#WZK6Q@IuE02sMCVursl4XX)uCw<)xh}BwMSUb~{W0ulNsP83c3x5o`fi+zlsMuU4DC3 z+blDk9p@DbNvLy&yFVH{LMEHAL0R~F@j6mzId0VyO(-rGZP- z`!26S-LM9mNOpg^@|j4Oe+$E@cCJ&5+y2OKu{5^|>*9cbYYrKq(l zn~J7mULnWkz7)yE;KCP)Ux>#u9a}X_l0`KHogksCbQ#Mh%NzgYIXe99-pf46lHQhnxt|0b{ z(cBUO-r2?n=6C?89hFw!icAiXGvrB1hvJ`B^eS2J7b$IM#=4T^ztyn zFvxL`5;|-ww6jKAQ|+Ht*}U3vo2)O_qa6K0NhOuR1#x$8?URynr-Tt%gqumFKbwn% zTP|ipL3JGLJw`!-Q&HN75B=DXNWa{7>~Am<)xC%zZa$ml`IKoyW`hX#XrTG@=2#p*S!OfM z{tU9-t8x3yFw_JsKVP{al)^o`dM26-M7pt-smOGUX1y=i<-%GOoA3`dWeqzR#PyBj z1#0!({1x^wt#K%;%Z|uvvONp3#!+b#wP{|`<&P?)*^9$%mZ_9v&POTf&zbw0$nG>! zXAvG7Zc(Zu4Gpbp64j!QO=Ho-*INaC=lWVx|HzNZbyU|cb3__4Bn!oX%8wq)RDf!w z($ZmeGPN{z!1921b!3&-)uV5WaP^tnPO5v@0CEM9RB3FkYYrYVE4}faJxF;tzHw(k zIEY)F%hPqawYy^Cfj9tQ*YzL3pgZgjR}HZq3qUMpKUh=6x*u4&2+UTnGPvs$-6aoo z(1GNR7&B0&t|XK%?aqO;@En$DSB~eip-r5w&7+dk*_JePlOMN+6IUjlEZy; zZC8ldh;X#x%RapFFq*u@x%{d3*{ymiH|#ZesbS$KxV$Ju%ElJNCN?;k&%J z(HuJXnd4*_!^8YtP&Usoxhf;yxaKgq&LNg;3K2$s3NnGJ_;iFPu4wYLI0(kzuw32H z-2xDly4ho7WFtSb$mXa-1}TgB*syfLid{u2n$rlypbhoR0H&+SD$v>>Jazdd&do^> z-3g1nz$U^}>c*SN+%+b$VpoN<&hd`jGZw|teuVr+)? zNwUb|^>mNwHPN%z&%Qr7alY+Ga5%|{*%>!arZ9i@LM_$nCJWkpUi|qYzoxw0B4(>V zf%2u1g&j*U4E!dQI$DadYt@=Wxz;{|$Oyv1pn9WF^qI*nN4rlXBlF6TpP*e? zaQbU?TjM|5MT0k3-I~Ff1u#du^5GflG;;b)hjDv;(`k5Iac3p<~9#N3qOaaW~)2{W1pq%w)DT#0B`84 zHeHIuI5lTFza)#a6KGRIHi~vt8#?5BT1x>`sxXdnwb3w4cUxs`{u1A7pO0}S`$Eu3 zI4D51KFByy*}W&8L3N9`pr(LPI5G4u4op}}j#KTh^d>DwFb5bEX>7JULLy5IA&Befijk!N8? z!i?v>6X+ETPp)fz+AP_z;=AkgPJNaKvEH%`LH1HX)q^r1&}6;Rn9;Q61PeE zNQ^Yq985dIAl^bw^ropm3u{iGf z!OMAc1J8{Q?yKkVg@)d4=RrCVeAbL}z-1sQ3c1FjD?xMeCN3GousPew)m$JM7j^rU zM3z4{as0nvCqsvX_5{m#QM**^}=vL1puT#AV{W$b1AgdtF#fG-!$##?{a6+Ylpu zEJGsM<2p9zpsyuSR8X4_8}sNCCvfs};Ux*>3B)NibJd=si9b0fs5JnK#qE?j}x%tc}pkA zVcje$o;HBgn$)EIw%==L8Celj?qk8e`=k+a@VGG8MX7Of4-XpW$F9{C8SXD35(-QL zy{)bW3!_Pg+iv3#=H}>`qMzF3nsn8^Sq~o)EY#KXt%@3ThNH|@yt@MiEKtSblhQQD z^@dRbElR919s~qKXCIJ|wO)<+ubF;n0-l9*g&cW#mYan=VNVq4}p{ zfdhS{c=~0|a?A-qL+#pIzUPZUvADNX!bK;?N=CdZqhr?Kl;mHCW%6Crw1nYyM!-?O zj(`yDK867coSUvF{i!7Z8}l$|_NVy3cJUUQqHR0O68{Oxlnb-DT?i3_wrCK%2ghA7 zNL1`xzQX%IUt2ff(OsVJILrBtv;TlU_~zftf9V_iordA)mZ>CdyG9TFEkJ_j0Xfkd z5O2mgB;NGFX`7QfuaTVgHy8{3q0UImfd_NDCAuQ9*I=H0Z;;N6hbR6sHaT$?)y1yZ z{UO=>`~39a0#!%?@+RFTLrj?Kci6YBugP+LeA4&fooLl~Oi0?igt<#0MZkZhD=9JR z!~gcV!jG4Q<~8U!vbT1}ilZ>MB5Us3G*?!o599#?WjSP{Q3vtw$(b!1u)hx`iIy+6SY?L+k9lsw|42HxaLLSaFmx6$cfL6OP= z6Cc4mwYPJA~bw` zRjYPW7Wwi0egv@lbx$m-mu#{CoXkll8NI3mJ>^i(=SQn+d?tqX9#AnWzvfNro?5&G z@Os^B40O2(=I6rTt$_#q5fq~;=MbGnPUdv0d|uOdx)!F%ND_1hjhg-ldFR7nTEshA zZJLDte1uh+&sdb#$>|^JdrEQVG8`RHbpz3*e(#*J$&x13h%!*uA?^SH<3<818}?HY z`9>5iMnd`T-Rb7EXv-@Y#U2@V<#~3ZyngDoi^$J1zs)CA;X+jw7apzAMRa1w&>*+h zJ7hGMZcO;9!NB-s>1{<%cZe`xdaBdtO0K4CN3qHiImSXMddA+xuk}wcV)l%dT!)kP zU9M5YuQA#l_WBGfD1J6Eh0~d+}r+NarnEk?fLIa_?GWj z{12)=D}4iFtA9vM;-oFVr*8*ceTMZ2&KNW_3%Di*&T3MO;jTKeMp@(I#r1#iy3p$=wv%)BXp!5F{1Gl@WzJ2Q$9%5p^ve!o_xo7W&1 zD{xG+$mU~1aTgxDl+6B!m+(#Co8tGV%xTD+qP}nwr$&9v7MaU&psdad8*!e z@2WX}!KKkXx_eAbA36Gdq0{rq36-s|L{E1uD9?K3c6M;sr3AV}b)1Q?o#GnL{nr{1 zNle@r|E!VKPrvcs=z(mkt^cRV>!mPZ{S*586WXWD?I$?zfseiJq0zL70G>dFkhGe7 zS&C2jy&Yw+fR9UBGtAh~a9eDhxQL3~2&MvViSTFDYz^R-Ykk=z!N9Q?jvM7zlo0G@ zZwoTeBa9`ymg8^%k=TWr-l30q84U7GP-o*>1`&r}zq{+)uOpflYB4o&zUVq7z+d2M z$>i5_M=IG0WXZcozI+G0A|$YkCWOq9{wOJDBntN6v!)u=!ZdAnx><6 zHO%*P8;*XOxNY>;nIMzFwI0+OL-}g(-eejI&HZh@(T*e`K1?_FhycBvdN0G>(kp7F z&0{U^juR6(xM)k4O_w{iq|DremPOUFB?ERIR&bs1J!f_^#s#t{>GCVy<(!8R`Lp$A z)XD|JD)#CC^4-nL+Y1YV;w!K#CaovfSGaB|nu)HS`es^=pI&T^}OsFvSBx(-j=o7l;EAdX2~b-X;(ltEXuW zSd!4SGlrven6^d7B^AedU?e1W*CnDOTci*cu=0Vo0qfNN=3n*{f>F7nC26QhAKAQN zzDLYq&hw05E0Z^m~R<{!Q>up)B?WAHrp1G5~WW{ChQ+D}|QG_!qLErtH)qh*ZhK zAYpzBqyt#Ox)$%u?8 zXEz46yCk{HFFt2y*w_VwJ*5>m<&QDFQaoeTQry%%UCc>WRy?XnGw#a9@%T(|?suU5 z+Q1;Z13>X#KuBQU3X!QzMYGkHlT6E69P=;Wm5&hN%qekqy=NWA6(|cklhUhBynXc} zf8m2A`iKXvJP9jOHOWS#!S;!akVlZYs&0NkW~*335NmuO5_5Ql!E9h=4wEU)^9~hq zM#Rkt7H=-i@jxpJA8R9VyvFBoY=#XN@jx; ztc2}5W2IIRkX2!z7~(*&bf^Cohv|#ybzs{*^4?c76aTTs78Ks6|HOo!<>_zLD4)JE#fZh#N7(diEbsV-I2+PQu6lth;T}T@$ z8tMp0f5um;sPHa5n{&@K_Io&Z4ifnzCYsZhr<>R3AOfp_Iv@#A^P#Ht;Dgr8I51&B z=w`VvZ8T-AI0Us}1rHB-8SYfgXq=sAvt*l zC(fv2CB_k|6}M4=KZ_Q3eB}|YTvA^MK^msoth8z7prxZZxwWlWn7&#Reh~b+80BVh zTB#97s45z^J5`%6$~!P+8RFohO4%cSuPFyyWHR2RlZwbPBT}|Bs%9MgGIAc-*nfgk zF6?mv3*%ePif%qs))%27Svyw_&fWlDaokjci>htmeNoNuS<Ht{>~SDN#$N~|1r0LYdK~|o_Klf zS+Q&c%~UVB)bxmt&sb@LyB1ry zR2}+x;-iGv@(XFuJIs^y>9%~a74b<)Ux&JFzAMt;59d;xlKiHjml~)g&{Xa=N8P@f5}|algW=< zf69*5ANl>iD1r413~cNT|F7?*N=Yi_$M@28q7rFenj7v{CR=!`8?3$9JSW2gO3O!>2z*URD{noLy$nJ*pgH$ zb)t#S+2dxsD4P$<%$7hLo}yZlOxq&f4$<~X2U#G1SEb3#WQl3Rr2xK9vRS&mTf9}% zQJ`+Tp}mnajf}=KR=DBvX|AOJP=Q<}a7~gho7PZ_{cSyowybmFyl}+?vIvmbzLeoV1F7M{U z?d3O-n+y&W(Dr*EP1VW@KgGp?Kx>XhC$6}wMV51fG=AhlRlFd{@(Nv{0VMS;6!qHLeKk>5*j4L#W(b4@(0ulg5yE;nE&VY2VJHBxYSGi=q<#pa zEvdk@Loz+sBBR_Zd5guK$jbVzgsV`zWQkUnukk34=bNK@k0KB)0%vy0=oUwVjHWt6 z_=tQFI#i~>)tSzQTVg|1Y@z0H=o?(&xmtSfm_rPW3;7)0lKQZas& z%%I*_yYyl0@X%WqK++C2a?Bcy%R@)uSKT2Cgc+)rXsL)u4MJc(MjpDav~27U{_HI~PMt88X;YJOF|@~vWlqkXUT$R-=Mb%7k!aV{VH~7EESuqCZ&-uTXesO7 zN0gW+uFJ2MjL-8(lBRZY#^b|!PdoQdLntU%O4aIUVTpLrdI;4_i8uI=S^j2j9NH?O z${%u_9GWb8?lH_WxY3N;Q9E{GJ91cdK0V~xD8nk%r0_jb>&HE&7c)0N=x5-EilDCcu8h`y}ya&q&u&vvGgePl1Y<4W{9iB;+7xT(#8pPHX90~%SrP# zJMA(t(xn&SQGl!i`(}pw`M>gW{^^90fV}MM{L~jvKNQ=)pf>dWG2;IReniQ)7s~AOX3y$uZ=J&LS}g;2NyEl72oY zsF|$SqySFgW#+_>f*}$&-X(v&(uz?%*x^%@$D3pkam^2x)4NKVWLC8D94uQdtkgn8 zQcrDCoV2tG*M^%L@=3EporW4{btZ^IUI#cTmCVo{m|wz<>17@$( zC?|AS?9%bqOl*d&!+q!CY7M{muhAEaGn>%N+)_n)%2Und)7giiHrD>*)7nTO#~hYR z{u7afnbc)qjp7h|DwXB#*1@w)OXbHny@1~4GRgRwO{5%E<48W*KrH|b7?38L*tj8C zmM(JSh_bbG0*`6%SGNIP@q*bl#0q%O7)UZ8TNHJrbf#WgL(DiuZXE_g3$dV z?xvfii>Lv~JXd=!?4Lt>xDe3#?!UL_gg5oEp1y)m0t}IAaey`yhy1u8W_pd zRV-h=pt|xCM|4kO+)XDC^VEMu>o)1gzktgRW_<#g6=x8u-rCP5wR>{f-n*GfH$|)h zZg&pOU_FuKXRc-Uia-A@OZSveeN*@Tb$|F@sjdHP(qp|d7hVh}2P5kL zsQ7<2>i^BPC{-q-mWCaZp`w|SBLkF!YJxHodToOehkL_#eO()R<8{-jjf`hTQ!xjn z(OTC0FSE5=86#u@N=5 z=O?w7w%cYx*4c8#UEUze%eC9FD3*O?p}=1+uc`oiOLS<00Iv=tx)SF6FN z0B`m6;5o?-RV)<2z4>+*c{?*KkjkB#Aw%MsRdz+t=2B^1UzE+AHNvgG1m};w&1S=# zYe0!fUy*4w4|y{CvOF#6hOsc!*;dEiv7QlWO7$zxA|<7mXJI<@Ekc7j7?!hQoD|f?0w!;R$$D|s0U@obDKwxMWG)d@ zCSy3{G-MFHodCzMt%6eYnDnNd&njheIh+38ZMtM=tTO*15?#{9Zd@tr19hQa)@^H( zK}e}PD0KIqDxj5iyP|)vP^U^V?}=CvDDE<3(`byUM-F5Pj$Z96jTaATNSz5zXnuz0 zFwpgks+rhY-$ z@sEPwry7QFgt+K!>>2|TYk~(^)rLYAixr@a2;!AU9111`jjyl5{JO@GhgZ<{*cfmx z+hg7FOb-#&Ru}zLQDbaQnVVuz`XenHE|k zpFwv!dgZY4zIi}f0G<~R6~>Z(g%!-%EyK3eN%5~qX*%i;3_M>~C;t9VjDfE-3O|v+ zLH+Rr>T&DZw#Rz0{*54L0>%t|GBW;)KU#_m#Z2~24`L9qSH)@56By9BJQYBe~ z?z#9W83{&kh0?9(bxcWc`BpOJl~6S*)FgP1$dNzBwy6N7#un6i;S#>@1g$=S4)Y-c zX?v@CUOK4Jveoe;iqS<;65o(epKHxmxk!DFBNjKh-O6Qp1ZQnGToL zHbT5!W@D9@@O}~Q?4n#0HQGa77JO=9P22|;s)AW2kH=$4hUF&PVAxKGFIaUIi-Kq| z`UxgqQqvP3q9-R(9XMg+5^urDKaE}uXzK}E&O6ISQnTY+*e-jof^Im6EtWU?OQ81I zvA}cY`+ElCd{waynp4R64ZF(5p^zyKSP5`f<;rRlA8gw;K;5%-6jGHjZP+Vy_|G-{ zG*Mtcq{-UaUP!_Q9|Bb`!CXO_9jVdzor!9Ke4FMm7OKHPs$j6f@!F9ijUkxit4fmfgM4&=w_gv{1tI{ENu$jP|%?R4ZVAvz0WYw5F72t+IM5a>Sqd zEftqVbPn!oKS9XFI#^kHqO3wANCQY;fBU*uwTW8@IB%kA4i9L=RDQ?8>ox3IycGKs zEU*SKEI+@JFVIxzfr``%dvRe6iF>C1l4L}Rnde?kgwfoy)cc~Ck|@t;?%WbsHM-OV z?OnEoy;AtquQ7n~k|tc?`IN7q)}_47X|9^_*ehNZpI` zJe=rY*bBeD0@zC)S*zS`tYOker+T!j@Ucf;1)tQR1R_Plnr$2!!1WM})WL)sE@anM z4+6fAXZ|Vs7jQEt646#3S3rnJD?ANBre)LRb#mcG%qG|XVJ zO8oXR!AGDNO%4Hg+FEnL^RWskNt;LA24c3IF*VdHQ-Tuguwi&~HQVVAkVSP)dTc1B z-vMFAL-Y3IJIK2i>c?%0fA&mL#j{Q_RuR8PBc?`q#3zh#o%H{dlyW4>2pjgN9d0}7 zXG;+kGuWdH9*mn_0G*sD6p<*(DUH5fvp)vZ{A}%NL#8sCe_N%}qCt+Ptvl~fPJ11* z%C|oU3N4Hw3S_Mn(g7G?C@)ib^OP4to#8-fApdjGX-l`-Z^|^j$yR&M*KmYzOfYGS zzmjTmTL)au4hy11M^75@#|UV{>jG|g&-O3#QKY^#17FUy>3A*EylQ)R&)(_gDn$m15jY zE+Pq~!zk7hYS`U6g~2X#x+!$D?5&3#r=Z?3vsS~_4YMp#qA{R58wBmb%R=nQE*R_l zi+Pn`9*Tx@fS@C=V^QbQ`}WFVv4W{-fa7Ih>+rb)jsH^i^ZU)O&qAjB+y%&^9lXDK z!qBhQ-7oMD%r8g}D!2Y7p8wvskBCGnl36W$(2bCHh_gjJ0MjBPMo$9AYN&tx-ai$l zaBz0eFIK|OOcB`vu@$eJ5ZgRf@2|W$53*)X3f8DLL?F*=^b_P_;35av6n#d2FKh82 z7Hi`s5o@~w`p&9W%^|{Lp!n8E1j~|1DvCH`$6%^n#7>G-KpZt5Dthy~<=zK&khiVJ zZvqkX;Ah*_V#Sq>m~!W{eJ65|85mZSY6bkHaZ9?T@^jy#C3|zg`}W2|xJjZH5SbSX zoJ=2kgV(z@b7zPO;)?jQi=~}xV}^JTJiF+a!bBaV-n@W0zxe&MK4ge?OO-ULLDXApU%(RIy)OuUH=7| zM|#QA(SK^Z63~C8X|dP)VOgn7>}~!t%)+(mN7M2T)q0OokeM4U5Y(OmnxCYsv?S5A zKi^EFJn-7}8<8F;wfAS~0ti7Gk4LeO}^*54qkN7P6^!NiXipC$2Vm)}0f zDHWwHgH;m+P0+7At-}m7p|Fxx-+G{0S*RX~ub&e|Wpo654BymfZVJ9OuAWnpQfMNf zrI`5S-|W28w6lJ!gHx5F^F6|^eVwi%F(JFE?WOGuf>&*>Rb;;JRJ=a?ke%;BiKC079xvgc{zUsPgw!59>==Sp4f^D>I@_JLLb#6mf*SN*gI); zk>7c3Y|qS}1_mXy9DG|-1ywuIs!i$$+3t;x?F^GqG({h{2#Mds#mMBST!Vq~yutB= zCpmfW+i1z&g5nZwx*@a^Plv>R%I-mP&APJXzPMyNC7wH~-)@D`wLCo#$@F8*jZH|# za}5>uykQUtPj>1-RQav9czW(Krb6YnZZQVz=HC=V2a}viZYCy6934lwS-SGKFt#NPcN|mH$!K z*5b<~C!gRE6CN>TNJAz8HXt(fj6#)g1bsT`rnn#=u4C&RiO_B`Mh&6snb&{-wG+2U z+-((CXk^qehYsNs@{|zDyu*=JMV`Zk)ILItvPI2%1VihT1rnWCXMu)6pNmR{9)1d) z_Uf{;>SSliD?M^#Z}0x1tLKv>R7NFVqr?H&fuHiK90!c2&_|jVo~2f_jXIWdQ|t^u zqwPB;$SkatR>g!&?~t95R$U&&6NWNS3&Y0XJXuym+no2O+x_`+zLQB1eGRhH0V~VG8T&R;Wfz_-UXdD9W1}-jFq-f78`X*QIzpy zo@ncIXUeXr&iS&-@k2w>zh&~=QPoyNx&|SKqEMDOa&AZ`e))3p(~{9GYP8nsh&TQm zxH!h$amy%yyL#H=B>g4ZDV5ggc$T*Q(TI_QTeNA(nqdwK`n~Tkbxo1%7sxm#3^p6h zeB*o7O7D%z(V2? z@(BPlkT;ZBze4DnT#xFp*x9tjgJ};=_7#*zKW7b1e+$&>!IV0ls&d@C_hN-;EN(f66u-?eB@x4K z==uc^>Yn14Mrrxik{%koRJ3OY>z78s^v$B9%g(R&W|Z`N-Pl>&aC;o}xQ+U9ZcAU$ zPNF%z`bd)R(78u%QnV^ca1rz*V*Vp2Rf%L%lm(Ql*#fC*EHBqCUn)1B zsis#`@r|>ZFRc9b7#a4omKU;O$4_;;zctRDst^{1wecf!)ekf$D=fv2ed1`{xJmnt zV8a%Fk_&HkOYGcF$4d*@k%+%nn7^xnmTU|l0guS4cg&rE4X6>cmp>OF#{?ZV$t9Mf zVE=<=1Znoz5UZI(?+#V+7}~Rw{PEtr)TtN&R9#z>Yivq^AkWBTT{nSi?4Te=$yM@% zZ$2fB`Si&tA0Ekczr5A?oMrSoTxp65x&zjCzh~70!d^MHd66%&I6G5YRm!m}q|TM# zP=@fHRQZCA&*ojW9?DHM!)AA0f1Z@U5j92*9@uB)jWznf%4P!4W*2NZg9^ru&p9GT zY-r!l>VgCj*z4GcMh!14QEAJ&DDv{o&aiSivTp2%a@%ti2Nx zqfTJgHHm=dhM~Ny5r{_lXCCQ!tU>}63y`+KmUJ=USEROTP1Y$8y=iGlj#cNVuhn*` zL0KQL+|Z#qV{4mM-v7mc_e_w9=lt|blzvLTe?jl*{aEk+hm$E%9Qzq=j{IW@lVRr@ ziqB5SRaT;Wlox7yxaj@eN}sw;5+VE5#UddtMznaSugA!UYiwz%Y@4?W7#fHYFUm*g z3ieAco0Ku)X`AOdlu)1CR2XGTFTxXvs2IGakZx$b1A=TS)$16uEb&bV|>@N5p)l+vDLxPBnQmb@_UnFK2!GTN%PEC z`XtcbBEZXi+6@~aFy*c@qhQw;1ImY>;l z{~`wFAEBB4|19&R+D{{z4WawwA1U!zzay@cueH8M2N`My==v5Rb!`YCxOl#$HJKcK z*PPQ~>+o=G znhq}5okFFTzBNDpkVJ&2v6qRnCe21ZnLcgt;4U_hQTN)OMA)StQ51}tKu~g;=Qwa5 zD}<~9%$haO*zD#ssAijJF`PsXDOB#rOno0@+$AO*nQQT0g6ww8*c@K{=#dJ($9>Pg z(DWS(&TW9;LS2JzuYX{OY1M+Kx?w1#PjDR?S#8R>B~Ww$FHHctKKkG#EOc>86__1! zj#~pd_$P?_x@dHG1emKOGMFgB~ba4X@ zc{Fuu`Q}zvqp4=?k0iYCKVfl$q$8nb>15dbFlB-izX^sYJ^k^S%mjaD3X&l(0BP0s z0z%rLDhDulGGMZ5!$-(1FL6rUn|8any0)oI+al2?+1cAvc47Frb+Bx8dL~-dC!sk=IGMCi zXZju`a$xTz1yiNVkvjfjHIO(m*^tMHSdS?q(0k;{_ikzh+$S&eXoJQp*hel#%l9%1 zoWl$xOoI_aB;~?qz*F&S7pyawx^K{o4Om<#qjrEr8#n4~=H&yO zm}o7i%c($L)id=vOISP|` zaJ(W$%rNO?^Mq0` z)nh60$FC9No(uv{7GaX@rrjeNPRi=DA-L6*cI1nA1eE*Ks!J6KWyzvNKo%Dsaz%VF0CJ92VTp|bt=ZBPPQqFu22G~HqF;+9>BS1XWC-L!62PoHBA z-SKeY1$n%nr*5gM+Ob*OTf9{n>#{61<+%cAMBK*4$ zzkECgBV7WBp_r)axUzB4zucUnxgaylLPsQ8%f8yZf3Gi0C-aX_T>%qsJA!4T`*oS zTvJ1m;f?<}H-tEV0^fO+HU?kQo_*FTwk%Sa3k3BCPWEug&>DYs#@w)9Vf?$4ZYo^p zx3nv-aAYc5ROZZ3IIBooHZ8--%0~ZPN)(H&>)p%%KLOGlSegY$`nHuW#5}khA2jnb zM2DC&seiNcfwk&2Kk`%uZ|6tvV=)GlTAiML4896J{xNB#2=hd|)F$bXk)!3Qbk&%v zNnS_{X`|ZS>vBUBsHWBiD`Ii5g`GCh6+*&rq+b45ETk)p)ATBkP#ylwsn=fQy!pYT zBi&G${^w^J&#CAn>JiiVEC+)G_)3^VjqTu+Pn?$CNUiHZd%!Yrd2=n#ceMwdy@pZd zFiE4%e|1~9u(reLf8cf<+`oF)|98CnhBX!|g4c=)0yJ_hlw3S4hm?_+C}PW~Kn8lS z9~j*oFLfKzFPb*|w)Vl<9+S}{?M8JKJ`g6_yLbm<(dkU~Lbr5stGSv`^oL$iOSycd zaKg*(f(=}o)oV6HbGI6|acZ3gU(W)_BaO`axaYpb0`nD<2gFNYwofoT9z5mwQ`rV? zdnE|rNZm%rc4nzV1`jAZk#qWCX#Rsb!ZjnIND?;*b%XV3s&?w4fT z(&oe}slD7as+&vCfswW$kP&Ni_UVUJlFUPhq*8nL2Wc=jQI;eV4Xl{vF@ZMOK7csW zG>sDrVR#2khRYre%xV6bNE%c*$Qj;}Ua1i;+J1b__$f|7carNIS^PtSs`|P6QVJ>- zM038+S7Lh(P@wUt&I&s@jL~Z0%;v*r0SaQD%e7)Ko6Xmh7YLbXOC(5AS`GfV6V#ZY z#RbU`w!rjJ*VXsJv{YFrUX2ur8W9~khxlLt3)9qzBazy|Zo4Mi%_IR_v2n^q4c0CA z8Dtn~L@2C+4&lR51!|F>R*AKJ5ZBVl*;$jwBK@ePkf-g$ro7@yew)zlEy$S= z`O#*#c%QnHVJ_0Yy@MV6B(xmou6j^{ z$}KE=OMimelzcxn-rNA=3as>fi$X5$PNw?PEl-b}}==6zyPW(0J~{KHJOXo9^;WSOop1 zBC>aXBgeV|M&cZj01w4i#D6C+Yx5$qL_;nHqE_Cv_lJw=tjJ<&fNFW@bxetv)?5%+ z2BPVsfzO-j!(l0g2aBuMB7({zg-~N?+-!qOl&j`+g050&FZ0U>#FD#8tX7=MNCP|5q3V zlpp`8(2o&@S?yl|6NjH5 z*E;0OkYlmq+57=0U!OBs^&+zp@4G)`=51WSTNT zwA0&ND!uu&XlGF6_D$f8&wD%wV7cehaA`+LzY^Q+S8W13J&%r1zv zQHh(Rz$RGYZ#p|WJVIb8Y zy)2yhY-fJK?tOCtd>QeC(C(c$)%Eer>}YxSdc%KZ&Ki~RD0|(X-EZ8-SUv>co##!@ zaDPYA@hJLzJbd+Rdvkx@T^;WaoY1D2e76dY(pR&1gp#-IR_LpC&g5EuMj|v164;%3 zT?8roaT--Yh$n;SWD9Cx1wa~N!j7lkjdmwMEo6G19RH)d#EpTI&@q}bF04sYo<5!) z4ENEP?}j>c0*C_bcPtzcMPhE3C0X-8g5QOKQX~SJTSGJ%u-h8Y^FF&k1y7m={{h8M z#j8grh>m9q2u>i99FCiq zl1Jl(;P$YcXyqAu`S}>*gNSJ&L3SD{R<1Y5vf!8_B0ecavS)S;k?Gs^_3VJ-`^t+q zg-l1bKX1D5flkQ%Q1X-GB=sT;Me=NN0$6zFSA=-xTTwj%!3?T4TM21Y;SMLqmE*GU zH{CVWn3>8A;n#j*yK;%Zm{w=F*;`H*aie%c2*8&lsyCgK=_+xTHtjHRoD`ZZt3iRq zzW8#09PH<|-sv%dN_tlZi;PYNm7QPzQkol|cw8C8+4I;@zlbx6&-3uvej!4iyF50mcVPIwF$l>V3hYf_#UnQh{Bw^Tq;;^#A zfA9+sPydiN!LjcRMUFj<#rAX|YUQzEl5MIOApB~;VP5XGY$ZSzHS?7qQtspa1s{J5 zkPekE*up(aO4yP(Oftrf_aHc6#xy2}>yh6V`ti2a-mh;Zyi>LGlEF&!R6kVu9Zc2b zv68VMR~A>RnW6Kl$*T2qG9Hh6af3;TeBhnS2ZISxJk?|yr^4<>1*rX>G%IDm(Gh!us=2MfTWaI6Iw+7{v8Gk97k`zx4DWZ5L8srIJ2y?`bTaH${>ZNNbLtLd;k_`0&G)YjA#|5E2 zx$PP2{Do#=!c&CKNbXU`T5IZHUW`1%WZ~8O|}Q)lK~=DM`>c5qL&uZFrk4khpA z+qMi*?3A*#xj5VTm8X-W$tVDu8gNqLLDZr+XSyLB+384;-Rdu%Hu!EQ6ydc)vvz63 zCUF3hq8HLT)l{b<-{n->g<9U!_%Z z{{;?0HhKr0zY8z$hRwiss9x{=7MgMUTS9LOI*ln%$ls(8NtC^4Aw22#eh%W8T&D}I zzbtfYTSZP6^@ub8!2nIDyJI`8jgA7+IZOVYu(e#Ejb+{^idU$7!csEHnBDor}70R@Ndmrob8fC))t1Dw7?l0YhN*5M<;(F53;LP6Bj_Ap;k7wtC+Xd z>wE$CmrlC+DcTM0!oBsTL;*8hfHMdQtu0l=OdA`34z_1$9d2!5Fk~wJBIc0)M3phL z2r=!B@wAYcn39?y)=IO<71?bm6@?L@7y8_%SVR^r=oQhC~(0I!yZ~q#lJ!11nk{ZwEY6zcpm$k43Be0G3 zO`PJKIh;?G6forX{WV$Kabx^k!yxp+ssvrcc(&Jr%qAruJqlce2OD~>i1=17Jh{2C z1DP;x3ia!_VA=fg%0LoFsm;L6;Kj@%U05v4RbLECCj%T+_pV3P`CB&&YT2Umw=1jo%!kJx zV#~8DV6sY|HgI5a(#Jv8vMAKn35eM(eph5VMF>>8RsuXR1#Lkd)c!_wTgZUQqTw&- z=Ukv$%k9gzliUq3x|HGl`|n{+vToRm!XLyU0$Bne- zNA3h?K=`#cRax!znoNIagYeBO0%oU=)4F}z;L4te z`Q&Vl(Dgg|JfZP*oGI~xu9U6jgIJ@K-J?1{ng0rLt@BAp)yhN3A8xA%RrW&*X8MB? zI*hYo#&j&%MZgZ$!y|B@Px~NegMJ-0Z$GbW_hg||I^Il7Q{lDs6*aq2A3)4H#wOYy zN02caaz1{8PLAXkv;*kvb%RBFY8`Aw1jQ_KVwe=&N4_Owm--kiE*)<63R#d^x!bhc zB>G1~N{xyCVucC-KY58ip&xP;@d8=wBsH~o3EMJBzXuUnqRTC%zTHEcfiF)*C@|vA zhDo*PH>&H=8nW97og40;R|le8%nXn`2HQ>r`#mz;96Z)}%T8AIKDW+Qs{7kwzMcD? z5hnldpQ>kxPCHCcH(~0PL)kVG%4g!eFB4zfoi2}A9;PlN_=nmvH`j(p5`iUhpCzq( zmt#I%kq?we)YW!%tRwr7U8AZfr0NO6_JKULlyySUrc9a%nz-Ng%I>upUFUm5GV>6X zB^k1b-ughdh_GZ7xy=tAMuBV;)@6T7^c$LSg?>q+FhZ{a z$t`*9#e*_pFS{5JR^{O}hYpOiGJpQj3RSNXM$}glgU)8`X%vRV6dS3If6Cm?$h<67@J%5l(r*QX26)qa!;7myK5 z(~Hpp81BEY$VS#gBLI_5P#EEc$20&bQmdgnS1)?2?RWoX)DvST3pmLi*0ZNJ1R|{k#AF|EK)xd0QR?jTv*1aU+&C`P{j#8i{(}+K_ zwlVUMk~EUcChp`k-r;IP7nq}*noS2)LKYh ztuCZru!*hDKR^b!&=WI(r?*Zqr~O4|^Vl1Tbca}`7tp2st}*|Fts^CU4Lkq&8fDUN ztt^)9^ZTWY2-y@L$PbmoBx8}uaIvVHxTJJ&|2udnMv%ff^A|1G0B1V4yf_QWn+R{8 z@5SiRlP4e?#BBW*WRD>ok>z2!Az-svRTJBH!v!x^iZGF&4+t6vEorgH@#xDRgU;?uU|L6^0*}t}<;2#QC8|;_&WWXfj!6I%4MhlH#5IAugA)67reCbL+`y%%z6#!< zALR3TJrUTY9V9ZuP`Erf9TG?pCg9%qYRDZt588GpCq?u_9z5R(9+03x&*RC+n{0O` z@Jjv*wzaukzO^EzZA3$w5S0kvC`Zepox|8Sb4ZKV0=~g$Sn_pYT{nzC=(mSz_R_qY zGsh+j?x^7vNFFpZ7h{6BAf3eLol5qU>YQbw_I2j*VsLWQi84pAO?N&`aWzpmY&1pC z%1oF2sSeWWEJARmO%kQ%Pr;J0NcG%vbTtC=JU0N>s7yzE94QcTj)~w+FMjlQe@Dxw z=lE0}auJo@F{N53F&}i5h}Eb0))w=Q4_;9_LB8NzAwPsWTT7qBNB2%RmAK-r_GrlZ zh*@$$E11pYwfdscTYb~`E5@=yDD~L+xk>X9C6UzEI}pS|t)L~spijUVyXBdjZ*5jt z++FzA#-Qz5ci*s1?U`I$8uKOO>WXA|d%(M-LhJ^sq1r5Y=#MBBljgzQiSIv$=d{MC zV6Hb`v~?_|(T5>hRV|?_?5ME%(PK3Ly3-MHpF65mEkR??>Xj931|s4>jnS0EHISZW zjYg?~nKD{VCYfv;q;f|3Q%AJfK*}aGolyZ=Oz&*{MYh*f-LHzrfN2DpW~ju2hld+l zf5P!M4A9qV*ZFgUi}z|Io3vrAZ+7@ReHugq`qR*}efy}s3l1ZIn=oQqwpihitrl^> zdmUlNeY3}h%ikQw%C#qCCrY7?EC24wp5;_s(2+@tejqly6lIS_1K3>zA&0BEY-&*a zK#7XZFR~7tD9#FwDeK|imW%R|{WDB2XXFW|`faTNutR3U4|o5Ev3HD)y=~gO<7CI? zj%_>Hv2EM7Z5unbZQI%Lj&0jcrmwkY-uHR#HEZVn&}(&n`>#IFuC6+&>US)U1Q+@| zzNftgF*JGf>jf@h=NtK6bfcn=Q=TF3Q*;T^4mRr~jz^u+Ci2=4SFIJ^EtX<(+^8d~ zw55v*FJ(zHUDWv)V$6(G-7Z^_C*NxtR(T55rvmwV2WSLLO?|<8l$q^;H1~P#UU2IL zyGZKZ1oa&ZquUyY%j8kmc2c3Ts%a8P}j%P zf^FQQs0oK)K0G)a+td!i_i^sJ9_|M`PHXkh_U&h6X^e=CC|N@sJ>`_D`uDvm9f3(V z6?2bX*g8mcgezxuA)BCFQ`&a^Cc`kU*~-OV#N*Yk8nFvBH4?e3J`0K-_?rmBf7xRp zweU?>HJ@I#GGF(~;T zxsIZicXvBxgeQghjShtK8e=*z$Ol9nWgrW$Cb3(^h-3r|(fw@8QZ-G&Z$vA0F$&VH zmQZ0#IhQ$p@B?TLLErxK>m|)p05~QY3J!j)Fx4@dgoXcFv_R{kQ5%j%JLz7`J&-uw z(L~c1ww{2#tEzt7ao>08nt>QF6LXp*M8*d4NU+M^!XD1YqGdOM~3y@t@j{#e2RbvlmPps<~3Y9oM&@*0M2jU7F zJkT>!y?BEb8N9u@2vuctpX0x%TdD{?{Kk7425L{n=q9CxAU!K9EtHjEN5Dh=;;Ozw zR4VVApQhQlqtQUeM-a1TPnWrhhnIrvhWd=kvukz@ScrV+4RiE2nURaw_c zb6wUPkKc!O!LsDV+TL!hkM( zI_@N?$rcRmQ7t@6JGK++C4L4rb>(nP%qIPHea*;gDkX&0^c?JW4zF~M)Fxd2lTe(j z4M~=Bwbo$PPo7~(x1U{g%cPQ~S*`JD-h$h6rneHh`$v3@Z}PV4BI$>Fy+R*64C=PW zgC-5_bBUZJR>+5Qt3sdbfYvo7>$ZbT$nsw>WqElTqi_n;0vifc3AGaSthfo%6d&j$ zqvQ&N#WSKVR^zUU{Xx-maWta{*>AU7q0(=N|30GW&Btn%4;V!X1UaT`_5e`q0?pJzR@5F(1r{v&I>!0J?mIFf|!#NPtlAvIY zx#0)x*VnybiY;DKK%>>*>GXSfYPR=9r!m2LlQq1=M?^zl8+*WS7&hbp!psN)Uwq@1 zNk`bf_e-$r6mbW)CF4o>1{t7C|@q2X$%!E(uOW&ED zA`wSS`#A8|st81?8YT|nHC9a8neb~+2wOpp@XVr5|1<+*fOcqO$7{ry1GczH0jU5+ zEY&wtt15JHW&d7bbj}y&4>bVELBGR8ItET6%^oRxcB4n0viYv=v}K?^79xXQanDbl zY{uRYW!i)T9$c`FtelfAqpLGS-Ber={Ze zX>4T~dMKGjk{-3Hk)4HhwmcsrA+|DpqLjAPo>f0tcOMtA|L^!^JA&<`Ruel68qvJK zTIR$%3MP~S-SUtkAW7+1>*@otDCtjGl!`EFQt-^MA25F4j^7-fSw|wE9N8)+JJLS2 z{R7=A>^K+(b2>gqb9!yzv9}30Yi7}U1S_pbE9P398e&OGoGYCQDH%CaJK8>^bkEam zlQhG}$cq?fH_)<&2A5@$xy8dzSD$JeA8#mW6HQS@E{Gp6>rPFU)pwJxrZqd{&ML#}&Vbia zw-VDAzdGE4{MFf5EYHGr+mP;Ye>9ajUQr>yWDhPls2MrQFQ6VE#pa3;o3WT{LM)D1 zgjOzz^++jq;Dy}27FHb@XOoW?LBl}h9KSdl2j@`E=3u2Z?)&hy3@?+ptp(!2e0nuKH#^EPEXxTH5i%wKcz6ePO z{~~n}%n;U0=hiGgLeOFyemZ7jB(D@O*kk_{gb1GYl&f;#c*{*jXD1RS(t&zXBBW*Zf_iVAev#*4R zXfZik5#lg8R@IHLjN%`;?k};$D2+a2OgGsjQ*S2k>A!lHz__I~zIcs&oz{gwp2b}^^6bZZ*V^|X%Q4Cjx*&@;edeZl@(rQFtH;Kk zBi%lbdej#B_*HhOQ?H>--UlDyqDB{4)#lKq>kRHikxB+V6ssp+o~jDfuJ`a;CpD>(FvE7Zf;4_eAFk-;k6 zR4#^Mtjp3^2#wU~7R1?791$L9&Oszwi%dHz9_z0_L{;X;55#92c2x^FC?IQ~W?(hs ztty><^ixo=uxmpnj!RO-{BA(6JjkG@VoRuYu=qi_k}ysfD@S?hAc;Q^M|hl3z?RFB zxLyFIW#F(Tb{c~`G5D0YjB)chEZ0rtm-TRMo$+mYa7IAKc!bg}u6S_;?*~*l`zR6b zH6;KX-x%0}R*@(ofjw+h(b7{WKoFu#(_}}fCM^RWTL{QLg8qs&r|(i9?GlBAMWd1% z5WhQ}Fkrw?tHfIEenVl%L`kWRFkj7?o4Qeq(e*3~=NBSo?2a6%C(m?a40^ikjdyvS zpKwigXiM5~zvp5Z49mH5<3X$xtJ#VSy6S*8ZOwvSbV7DgmWuU|{KlBIMl4!Qbl8Yq z)3DoHhW*qXUQNNyI$rit~vLevi-F%M#{rLQ`5#a{+r-t$K`7#ybV0#+K$=@-WiW zln$_Ruhtz^Z{|+JpGXBp-gUR86NdzNAMc;v85JJ^XntZc`;*71+%pNTwCsK*tWuqL z#WkcB7-;!0nik5iVS^+0p3sqKplMS=em+#!#+!L=Zr9U(LKjjy14JoWdc)F{U>jW5 zzuv5WN8BGb8##($J#N+E!#=Tvt-{CgUUV!xF=WWS&%HW^jYY|bv|jDOCce{U+BS5~ z{(gADY0S;}{I?ct2YYa-F5njw{-2F>{%fN6UmM%~w*O#5kEx;XLyhaQT7=-GGV}WC z&gD^s+$db-t+^IWqe6wv#zDT{Ni-y~Xa-@`TgJqGB@QH2;4r~n3uwBFrZXppT8c-1 z%Uy|C?tDw0yM)MzE=Ddw5Z}#>3EGHMmJo{C^Jfb_$J-f0cUd9o7AYv+C*_X_VxSzP zG^tt#Qi~C4`4ShpA1lH-o)CXIXqGQFnW$(Wj7w;R=CB^M*4-5CBk>nF7qdh*4A4@H ztVRB0Eeyb~Hc`2P*Al9xt3z}Fj@CkN2~A{)!iHH~(ofcfp^}QCQDypWhj-T}Zg!a` zpmnSmQ+F?f%XqbSmxXPHLU%sgS z%T1A-GOam@qu3)CfU{hCsSzt{X?#USXUZ-wp1QZ#V5}Ygb;X^~o;#%=nb(iOY5Q>QiCjq>@ggQZT>-#oV{NxdIl(h|WW z$B#N`LR_uVv6d$(XUd2q+3m4@5=uNquRHPGmrfzgnW3#77K$E}*B9yGzfT!=P&jEV zqt8A|vLx5P0az&JDg3%)OP$!%{raS~UdWy??D;{Uzq59LJt)@Cl!U;3N02B|cLzT0 z{fF@3E!s`WeZ$=ITh4OgE`82|{7h-C6?}E>G&(U9zKt9@rv?kEc9_}W#hx%kjIee0 zsK=FuyOy&nv47tNcNu~y0|#8t9>6-#f0AqdV@&wZ9j#X1jN4;F^gFJtyOXCy3*ETd zI{ia;QemZ6Y3Z_-)3n!50^jy~DB%*wD;!|29S4@#7ns@;?0&?~oOA1)R#&hmn6HPF za1xOyoG*O?A|lu;hQNDt+v`BIxE+WlU5}Om|0)unY-2wqDhfdzvnFM$&_D!Qq)Q!{ z6QK_v%6BE2A0H%TiASh~rpQZMHXj6*tLY6tqh~MwkfOA0Io6=mn*6OWeN?DfuWczl zAXT0*b&nPf!@}uox>6??U?#de(l;b(mgZ1TM&whlYJ|YKmdieL4l#R$2IjL3siM7dH4u)Y%_w>dl- zYAO;Dv>ver%$at@E+DuYx)sCni^?Tvv#Ccf;>bwnDwW#XiBB7C8`HTy8%ru4D)L&*yRmfqpyp${yA_ivFavQT+%$7Scb)vmMn#2yel>k9 zIk2e+RcoVzfdN!n64^4*LO-i=^{2>Vwz#tFxs5vkOYK44-KNhR$f z^XU-TRcJrKl)l^q?L<`nR}e}8$sav8$S4dc$RamU+KrL2$U4%m*46}dv^J#hh)vQ$ zPcRERa3d{QG0!Umj0CqOd@w~YD>or~*l(#_E_uO*=7`WNvhE@it7*wqvu_$$3`tp1 z8CR?F+&agx44}KwMWGRVqhha2X7G6&E#+3RO`TFv#-vMdQ0EK3z-i#?YPeW7NZyx7 zp8gbXu2gIN$?=z$WL7-pkJJvG#Bi5Q#D_`Z7N3K=_zh#ZY(r@wP%fN(q6}_e7h-Lz z<+5VtZ|P^@>=kU}>iRVN**5hn*OkUGek>_SjL&*Zjct#7y4GSq^yeosEWj<|AH$>IGC!H1e94At_vzI^iCo3iXwqulDh8w-=19Vf1IcE^hLjHJz;@?bJDUcbuaGL%Z`+7ZaP^T0~LK!jW?^NinDM(GO_XQx|W03 z&!In|{eY8%p@H~iNn70RGqK_(Y|w%I4YTlQ$go%Q=NxIc%m@S&#>RexQ8EmJD+W8O zv;MVpjg`ep(uB>-4nVQ{J+68CSsvpiB{ax4eC)WgwLK|fjx4g-l!N_u-|c#=fK=OP z`Q_JNPK2(xh$@ST{;C;eAxISTLH3e6tEm2ywgSwmkN2qlH+#!Iv3}|JCVi)zLDKUF z=WWOp^Is@C@MN$z_^4k8^=E!*_c1y_`ODDNoZ9KiR@ zMX!bm<7^KYAy(KFb@xNra+PB|xQvLdt(5Wt>`xQWU^n{QLH?+ivsF7%Qc~t$R;|HL z!$ta?cY%NZN@JL-E$!sBdYyd!J0_8*?8iTD;JAR1tN#S7VQyk%WoYOAPc)5D;ss#l z5H~-m;WMfRk^}Q}E>@rrjmH$hbh%J*DelZ0OT+_;3}HgQyyWn|_^D8Fg(KXqH+j3} zPa7P64Pfj5w~UE^9qRmuxb8_>l-@qnd!m33;qLa*IVc6}uJ;Pm~3BO9i|Xv?k5zcc5#lz&oWM-HlB%H$sP= z37!3><&`CMq&P4@3Lf0~Jk8jvQKn=(ap zJAGN5oDvv$2(FDcX|eU~n&BlggJS^ny&RGEVpWafFUphdI;a=WwI#JegS_Bw7s=R- zA)3o>5AeWcni7@1F*rt;&J55vu^FGx0n+kko&1+3dMC9F6aFnKJ(Ot6zPdE00_0PE z5FIStI9nktla#Hm8Y2YR!8h#32;6i|sGM&g}(7iG*lWjD2LD!-7a7ZlN`%^rP z=(cUrDd?&G?JHC9RmZ6i%DqRUA`D*kH%p>07EeH|It1BC9O1IxGNI+7c1^cZ(ZW2d z#QGG4>4}3HEf!=3|F4R%Z^FVLY2Z+NMj5q6DLP^)s=>^fAGCj14)KJ~LrUL8F4?Md zrv9BetZu&`;Riqn@dGZ(e_&f+1TZZyuy?ZfUkcCvA_>hZiqojtPtS}?&`?ZE|B-;B z_%k_0GfpF=B2N8hMn&F{LQ;CXYL<3tfnHKZnr==;ltQK9Xisu_hMG=bsa8K~k)=ED z;{)0HOem6ReqJfc-eOQWVhZv2qbqTt3z-NupaKj#Q4{#dkF^0EmxgY>-&CQR731GV zo3)-WSj7OTgZ58AmH7V#C>uN4*&Exr+5Ug{9=UQ~}fl0Qe15g-!7vT)zexQb0A6Ujz1wzFY9D@W}KJjd_u%u-B*tZ%?b zAy~ViB*I%OWh{C+6uc@xim?M>xss_umA34VkXj2h72pc6j#h@Odh9?b7 zBF(cXa0H|B=j5XUHesrelc#RM|K!|Mexdz!u8Dzl9Mq7684WiN`zHZx<#<%4=hQoyYOLeS+!X68j-_3+v}eYjNj4M4ZBi!OUZ#AUuy;ECFVngtUVmpBgc_k`LQU zb#n%WnJ7uV1YS-VKxp{u*8g`AO#r&-X$I4Q;9Qxa&{x-6ny_lb3~zlkvZ?cx%O{br zp^jhA-HRsei>l;Gt!TikCJDlFWFt}2YIz+xR(y-;h(%SV=-+sg&B@3N*Acf(*a7yK zNQa#$pE91ChRJ?owN#JEZW?Z~;n?9?RmXIiZ`@JSn4kF*-Q%hkJHwKzhKl4yNwH;1 z-{uORx@=NfrRPzI=pQ{OPt-`RK@Fr9I87q!>~m-@84Fus%bkgDv{@Rl1Li0v`dsS- z-{(Ku$a`hPxa|rP9Tl}RdX@ksW+D}4y0`;HTl^mZgbFbb+wjC6rUiy?P;)AuE9$G^ z(ZSMu>8wQ#md-ZoZiMBuaAF*ao==2HyV>z;EDzVbM_*XsuX8(^2<|U*$_On1vuBaW z|E!wCEO~xl2-^Uw2Z1L`@ZYe*>hOu`^bpbx$1P3F%A1f>Z+rf0)x?&(jx%cypAet< zy*;(bJB;~-tC@biy}jixKC+}Lj4 zOB@^h;10HC<^!z?x5Kj4CFvD6vb-Mw^(1stf~5fA248$ zJ9b%}6`0&P%@^vf6&In!-@GxV!q^0O$DB53mp98zOn>|1EDm8O&RD6#k~pheXGUb|JCWIkO|#b-s&N6std0)WR5Yy_0}Vwu(CoD( z8($IgsOa<{ID~h7#Fpu%k6BmQ@#pB!5BUGRci{YLZ>$Lj%A;uik!z?+#w8#ZN-H3|phAMK<}U8Qs0 z{udi|S!66Kp0d0q%EDfgsV1B?%NtO$g3y&$MPqlp>5(E1(1ZFOzVI3QBs1S6KX3~P zOnH(~S@_bWnPftBN5ub{2Lo6S@Ho>5_5n~9J9}8Zx|3x`Iy{i4?dgK%m<}C6jJ{3* zEgV!FV$yRYqrh2sEcbE=)abmstSVZPN?_1(LfCsG!d8Sr{K0i~ydAHi&bhxpXe^a<>e z6w8?Q7SrON<-N$O|sdJokYt zr|`Vvoc9^=QiG3#ja}i~W8NV&iac1?NYd8yzA&EhXz?#_Mf)$(_hNbItHqhdHDlhN zRYFb2X5?OKnI~mQDO)C&v_(jiZFk&hxPh(y5uB-mrmSxD?%VuTDi^)pYDm*SYl+0J z_Lvu}kTxTHvjjhN?2^poA6cQr9{m`iKoj=E4OkZESmDUI$2mT3Vm&sX+H@;CHA75J z4Pem*sef>waO%f^BQPhJD8u&-3SZ?>5P6@@0J*y1ysw8k5!evxoI4moci3@hkQ#>> zee9Yg*P+_o4thx>p&`d9i^lKTPY%rH_ON5x7CM+Dwgj18O&KABfLHy9AbKHG6P^nh zqbL$hYycCD|I!-pkID*_gqmpe>+Qq@s1_$CnN8SV8TLS~7%s>~$O#kGf z3ZgH{%eH_-!l_0D7Rm4%er4Rvrk(dgpq-P|c8*C%*u4p?^y@$_{#t-PkW*DhPZz#=xpePZ!F_3 z2WiXxA^iIA?K@|8f_ovMJ#*T{Ge=thCuqA+n(ZwcstNQdzK)fJ{Ss{J2J+Kb_S&?T zSaW;O+1VGSSy(Q`DiRNyeZo(euQEc`*7Q8f92#JMo6R-RQF=9 z?V!mbSB+`9eg@RM7{TOcny8<~Q(3&fM4p`fsA;KVNkVXM?`78cR~;t`P?qZ0)9S^@qKyEsH1(JTPS$0fPoYS z-)9xX0i1VnKG*a7KJnIah_e@722#1*Z0l;d`rqDE|L;Qlvr$ zsFV<}5-3$+z`V}G@(*km1X9XW(y6dMH1M$B&vP{!RYLHIW22>Ffkn2O$Hd+scsp3_ z;dxzFc@Kp;SCN9fNS=u3p+7%5*gAAe%VaPqS7cCah&_kF2Vh(ik_Hg2*MJW4QZ#xp zj1cIz@vn^@I%JUsH&0^oy`X)VSMp*YPr?cir$b+Apx$W;v-lk7a}{*nJKod>4C?dV z;1G5r*xLdtD%Q%I48ZXgk)M()ff|hN(9w-SHil^!J?vk5uS0Z<5%ZKGxXqhPYA=p| zXSTe9la~Ni4|E!kNv%j0rllTU4c1yH1$~TJF?!=r;MQU{1-(phFy|X){g$ zAq(>1d%1)J*CW>Czex&x^-U?r74`j`XPf)0rRL0|Cb^=%LrP#Xt#;gX2Aw!@;<@Yv z4^>IblO@M&-YNu~EIt6c_a8{97Pj^-|MQ>MMsYoI zodMN*M(yWEGU|kc(py8s;DDleKCQ_q!q}36sxn5QRFeM3HE(J*jEP>Xv#Ds|I>kIE z{x0YZQ0>?{)L(AU5d7m|+j{w=ys)JKhNKy*>I|1i$uNb#TsTDDjXII?a&#%qUqjvQ zBJJOA@1xJszH{cYBaW$E91SgCA9pn{?}9NId-m#dK&ef+M}!{-5K`g4V=YxwHp_zZ z!QvdjAAvppg19hxz)WlaT{O;b@ayV48{yinOm$spb$0awg)F#-vOhV1l9MGZ0nQHu zoEZfB82rsc-vh%uwrck>*C@r zZ{go%-WQi%JL+45$K198Wqm);kMss_ubKea$Xy~i*lZ+?SGd(?pRv#yv zOEx}gmZdjH1!FSdFvYNA*2MTB$~1e+p@ZK~ztsGo#(rRJ1 z?le7`sjdoDJ|`DW;VdOlr9dST`u6u@yZ5X<<4f}(gYHo*<2QSviFBja+0?c~VjU^n z>KNDFO8OqG^)f}=iKpy-E$IERZsbSm)DgC(^hj0#dED?s8Yyb6Xq{{9{hy=F@J4fG zO90Cv;3~N$4nZcc5O)hYU+5{9G;^x#!twqr{uo~|S>$)FN@$m@zG$#pJEzUqwGx&K zX8_fK155@d!2slN4Gr}x%A?VXd*APXd-xWtEYX%XwEzHd*86Hl_Uv>yXic%;*) zI6N3$X5=aLH~Zn&1KV&zaq%vJF4PHa5cQ8epT)J7-`Tx=Bbie7!M_{{EnLHfcvC1b zV0g?V1n(=x8o}DAP$<00dIeEO;L%=UsNLwxFe)>W!1Vj<8ha$BnE=K*?8%H6kz`h^ z!t`Zw5{4-+EdDkr42AP~=j?<`=Wi1pean{pZq>n;HpoA!MO@v=Ih_JS-C`r^iGLmDmxm>;&hlNqKFJ%vLfv1Fa9Cb(Z{mGfvN=+Q%p~T?4C+}|^&I!s^X6sukY2pjrTN>L8ocjSe@Gvn$YmajgWE`$-iCg}uc1?nRpH_<<Uq9 z|J`ksXI9pUV?;fM@4UIox!Xxl;x%l|a1ZMlG>vtPi41y}rx#Mv++pp|^w(NwHqRkE z8(&=bl`zdB;K`&I)FXsB_wqy}=Se868TF>F04oYiE~`oR8^^4i^~m*@oV&@!vC9C{ z`>+5!q2wpR-B>fo`g=?z$l7y6Wrl9bs4KifOK_$Ggha4Pk$MJoV zjH(?8;l94(k$r8H)V=6mv|uUxBR)RAkDJV;M3Fj{ih2v*z>r~bTgyRXapH11lb-sD zHSsE4W1A^Dw7-c%dK$k5VcG@<#x~6G`{XjvHnEB;x0IMAeScLGJc5!P%_Hb^)Cw_N zWDMu6KGe3;miJD#6q)v0;Vj8g(W*3ywj89Y(Q2gpZP}13C2h$y)?{)EvwQzNS3<(m z{y5=kj@KhLHu`UDGS}$)B|AV@p#}j6i2VPpw3^yE+Wga17*_k=0;_&>emvwF#8aB) zS!l~3NRdc9>bjM2LPLZ^0l$JQtiZQV7=}c$@Uj4Y$8YtW_S|dlFxUwxI+8cEVKmPo z2OMD<>$DWZ~jqPCc$#uYD;4kg0S6lRec}3fb zylP0}Bz|hr=2C7u5rx?%OT(^#MINx1uigyAGIVRUOvR~{g6{0t%`u=%|2gQ8gsbel z26S-f9h7_xdN$mTlcLGNlKQEoezr55W}Bjze(&(;47x&en;7rb?h_r#D(w>*@Qx)2 zpAONiH+gUzFH~vJfa~dGi448^E*#~bgAll73$nQ+05DNx@EeLcnyffZ84{L>70Y0K zQXj3b+q{F7b{#4>d(E2UGcchC>IXR51Go=*V3a=RnTE>&>&Hd8WON<|SzML zlk4unXn4)gY5a7bYUsHI+0=%Z6B1ItWzG26L&dN|_hEp@BIR}cAD;Y#5;MJC-B zmSy93ZdE;Vm0`%U=CPPb%Rw;sYBjNHta{%#PJS!b6_~BNS07B_ZuujU7~c z77G^@kee~(WxNz0HwfrRufntU#uMwT2FiyTNf&4yy?|+;xXa@WK>gMTOY0;e^)*r) z1ecE=?WB0ZRjbXyoVA89Hq6uNM_^tqQQ3o4Owe;5OW@`jxbe5$jshQ8@ITU-*EL*9 zM8ivyo`;SSoUnFvzm436&saYYPx;TmI`loRl|lbu=@9DU4r`G||mnBY-l1so#_zF%?aC^U3uUnxTT|*p%Qyz4}%WxSUM57=^)tFirV+(7VzeE8`|$#M|zRq zm5Zez4n(&*?Gfs`X0~Qnb8>_TiA9lnqhimz931(Dq}mrj2M3emYeBhw6|%Umv7liJ z(&S6@euJm(^5Yy86G#qyz%uIn(1x4;*G75FpXSTj;lEP+nIU$VRpM|UKF!~x9Wt!n zse4}rfniq2ot4;f=~0^r1JmE)H)(JGmLw10eIZBzSc(>y|52T5WB|Yz1JuZW;?|-1 zCP0cr^qbM^KQoYr7`Ki5Wi4@0BL!NezKnMHgnAH=TAl_a1C4Am>hjTh9g9qwn3{nA zixY}wPIKRL?d!&qP7kAEdB>ZN_Bv@^BB5JB8X@T&J00sTqo;D=$cge0m8gV^w7mF^DJBwoHp|EjEQ-Mo&Ukb?h zFT>8MR<#s7+*F0X1@@6IcF?2yaUiyId!DRxCJ9_B$~yLsaj@!&xLJ#vwjD!Vru6tZ zbLF(a3lu0ScKPxol~Jcd0!{&M-Jo{FxOyal7=ka*=8>o;|E=4zg=f#bcbTpD6FQ>V z{PnRvmzP0s1KzAA_CKA0YzBJlyn)wgrpwD#{E>%xYQf}s@`vUM4lu~nkBpL` z84Fi!Huw~*M_@H6@mx8p7+p=392R(jfeZE$eh0t2yi|o@f!?N1MVLSUY3sZLyWAJ^ zk{6WsCg8!np*YkSquV!FoXMe zMuZulcy28WGYu4KwNyK7&;ciC2?$!Y6tLu8tIMhtJoc8)3XDiw2LpFO(5B<=rG}4PC}9btTdmW4@7t)@E~pUg`?j{TLv%QEJpAR=31(Z z=67t0jA76By~bJL7eded3zu?hcg!Gim?m(vRo##w0XOLuLhfdzkQiZ0}=g%)VVgtf(e;yK%fD*ozhA?SSMpq>?@M1;gBZM=m4&;-YC23v=S4rL< zDY|)?w?yTr#0f2TpzIePQEJ^{&MsJ95YUhieqbm}iVuO+(IA%*PdGFzi!ij2^od=I zvOkaX7y|k97qu8iydynpOI1EDx< zoxoz7HF)hV=I_hj3Eo_wBQFW@0JSo^ugh%UF2JNE<5*|Z4{D$(cSx(GQ&G0eHHEaE z9^NxDxe_-DT*$L)?B>TdJPg*{ZH0a*;i~kqcx5hsmlR5Rqj_mcO`!&NeVBDXTQRPv z{JQP0sqkC%b=AUB=P50gw=c_%53L@$%Fvq{#2-w0l0vpEjc9Ekfn3(wYbEPS{roQq z-G{uYwjo@GAO%37;|FN3r2nTp+T700%8C9T?L&-U4I`E?;7$nTfG08nN%jHHo~eAC}9xA zVjNl`*;zNdZsnn8N@ju;>;5A6xQH1XJziG$KE&m+ck{Zwa?k?VizZqMC6KDmg`d)< zS6DDO2EO=#qLa-=Ao7bRolCYHPWvi`)X2+r5}C9g!MKQFDY$|Qs=JQ`6PzSgiU~mQxjIfg3^>IVf_ej!+81@uNrE}HV!Ine2#?4GxAGAis+rk zoY1mbiKx=a1m6{)@_aa3p);>B)JzCcpqIsYW+@A!p!ukDeD}+$1;0}?4ki^0pDI`PlngnC;2KKK-X83 ztxoTzkUh13GzXsJq1sF(s0eE(cz-TE_;6sww4ukxp#_nv|Bi^iSH5ddzgWpZV_NW1 zbJ6%=9`h6@W)a~Do)c9ViZ6jo*wjQ59Q=6b-Q4rp#G_YZ06mIg_wMQ7`})53WPNM# zMV{@e%vV+^E&sb-^Rr*+_{whA0<5nQGq}pbfv-R1z;RU8=u)G|S1%c>urNBJ=?Kl^ zu7f`@qw)7IIZ>PAD0Hnt8<0yvlp`~<);}qj@SWF#h;qK2T$!~PoB5r}$7U0Yua3=U zU|r3L4E^;WSI9G3e+rmjrq&rFwq*ni3T_T%@})z(RB0OZtE`(r0=`~=V@Ge`v{~M{ zRmG0)`E1qhb1_;cq8|5t53`CCn>LigRAY=g77OA=GZK*r+|%JfNpYK8jhOF6^rI5y zrjR}ek=F;=?+@8A*9#`cu26&dEck*?z&s;fQI(U*xsuaeT==y4rh4y~xSnNtI*lD3HT@azgE5C+>Lq%abXQWdn+|EH}CIo%eN4?)P%qdx93Y|9Q!8K>uO9|egJ z^Q@|skhu=#dFlY3a^vFGB8`=zs?r76A;VHREL^sAb@Wuvqo()n2|So46_J}Y;=C|J zEBWvUt&k-Sus=oQLW)7Fk=60Yz+bKlut!a6qWXPGm|vl`arjzksv?7HySKM|X?waq zFO#UCiX?pqh;#a#xxklI*SLor_JBugua2raql~4(jAnVjo71&>+g13Y^#y94zTL6C(dHWVsY?5a%97+WTSK z8q|wf=`Xd?kRhPEL~zqQ0%reeUc~Ka(9JD?d*{^m0~V+*TR%1w!@A2dfxx6GW3bgv za1_k>CY8AZ=F6_!&HBW$kL>uh{k`b2WK4Y;CY6(mAAGMm293$PUP~1gD~%kpc-P>( zy1vE}xV6tyLB~XQFe3Y-J%pBthsX-mcCHZQk) z4XLC2dZtepZqXOeXq8!8u{FJxgXlW38@%ag@DQ{sE#sQgz2S5^ML;+^_{)h`J_o!a zNyYPwO|Ap?lp<02)AeuW1HGw|$yzIa`CB8uSbpo)5C*7~8YJVxQ?Rqg`LCEaTY#&x zBU;WEdK6!p+xu}UP%{qbd~^Yy=`&kQ$KGP9hN{Vv)V%tVjM|EcLxdNfP0}7-0w^*j z3&-9;z!p0lxDPY4Z5UZ^A#h5YBUzIInMwC-go0%SRfjcu;A&Xj%vH=0Q4DWI4jZQO zCp~OrWj4yA7aIlF8^S;&?LyE&jFgXnTFeRr`lh?t&mUd(X_kY&5B_WqK$gc$_=YDZ z7Pna59Io$bwKP<$A{6zA-=w#lN>(MbxWQA@3Qw6Scq$w5qnm~9XEBA>HR6*txm3(e zye{QThRz@VWqIzO_=?LB4DJJntL1yEt1|I{_*xnV5R$K>}0}x8A)3 ziTp><#CoS?y5b;pCA<@*2MJ`sukL!%rgPpfFNUHtEY-T6N%9?1&Ng?YKT|Jf`az7N zKstq+1UGda9UUKU4s0jnMaP^?9_%5Rd}r$8OrjuCidHenRKLII9sDTN!TDXanQ=!O zzz>&IEfF)_|4aYipXW~Vz)-n@1p?{^G!F>>PtR=(0Grd>*cn*~1Kt3hy<79tc3m9# z>$>!Wv957Jw4{8(^+2Jn!CN>y2{Sbbc!UAMrh)b`gXjm|FSc7le8XJ(T;odmhH)|> zEN1n-I+BLUj@a5*y2P472H81w=Q|U0Qvqx~w>guvVqstH9p^<6jFs+DsYE}GB91BK zhrp{n`uXKRk<0p-Cy>d477GoIgMhbA+6$Zl7Me zw2Yx(^uq;_fDde&<@S1abY$hyjD*N9vzrIjv?4;Ch2miqUhXGd(m~&3`0x?mVnfc@ z1Cz9YZ5bV`bhqlDhWwDRz>E&KvWOOy#o&#b(+5lJb#}2W{SDqaj|oXf$$ZWY(byl( zjKc}hD0d9rC`Y1`umZW61U;J5??A!vBy$_fViFhLTeRAdovGYnXV3kuXwN;9Gxo+d zxo0x$`A#<2qwlWIkfn$rZFt zB1Pw8`Fcg2v#^Xj%`fwj`$0(W-T=L42pI~G+WspabQ%Zk$Epa<@>_dzXm)xSF%Y3P z?7WK~uB-zVKlIVVI9S_aq<4jbW2Cq7tWvqj`msl!t2aUi5O|eZLeM{>#P$-XB4td8 z4O(*|lG{hD@seWfmr)8HW#*cq(sU zjgIe^<8UN)ZKa0*=u?CD=|?+JRa=GR@6ZZKkK`1^-`@USkdS$T(2vl`93wM7+9Wml z364}G$hX$lv(hjKvfcffI2mi%i?g$*B0Ov;k$MG>qbjBgKLMX)7b75RXVcAqvfWpV zZGikwI5IwFx^=HZ1Zrgp0#|MZ@)qO4Z@bPybZ2f1dJ{6#c9ENn(i(EL_QS!3W^$ZW ze|A2SowORBmSKf=w@%5XBZV7X6eiKY6BjTa#9RB1<;i3Ox+{c;SMouxJ*&vPRj(|t z<@93z0Iv@Se)>67tz7Ha*$r*ToTe4=>I(;9H7p}weX)T#$;r4accCq_c4<*Wa70>f zY$J4Rx#DoWbiIMoa>ir#aDM|?-{7Cv^7nNzvwvxHVw&301TXo&Zy^zqPx{^C3b z9$jS-$%9->jSl@nScC_H_-^kE9TXd27CKmd-8gPw7$L5ZL;JBNV)fA^J_sm#qPfoQ z9^rmQO9!9u^Gsfkkc@w@P|gkHM-F3B4c%TLPfYD$uC*IFmFNjTmI^{c5N%=7ic>kf z$Z}?G5k^(F`XJNvLtI18ZRhEVVc#+6QM2#&L-r(T$0Mt?-L19Qj68^P{Y+Wuy7?BI z@Si<|j!mDG2d6n8!+rSVUQVlC*2iI3IZ6(JmF~$cYIuSsSMA$T*%14K%=X0NaQ{E} zdZ*~lqJP^nwr$(CZQJ<8wku}EPAax-+qRulY^RcR{@vr;KHcM<`>8O&^o+N*Hp z1Icn2$b<(b+BneOXE5L&*w5QjqtwF8ynjGfROLRw=KG#l5#9GhZOjdVwo~{XNI4Ob z!0d5=_h{Vz6*;KaV?<)VYhGH2nbpp;VYNC0_%mS%(GGt(5j@pRP;YlE6d3FznGc;Q z%iVTk3f$L+r)%+HVsjEEl)1uUme{n&D7J`~1%hYzSq3?xy`k}iX!l5|;20Sr)ejn? z3cN~ch^*FK$5!i!UWX=<@*tgHT`oShS7LS0;xU4Y(&VVk0XZXi1Xt#0ZkbbiD0G0p z>`mLwO7H|-K*Be1|LWOjU^>BHBs3rAl&bXom8%=|50AY00ppSNlN$i_?@JJWPi?EW<44_o#$d z>QtaJq+q^5rhio&DVaOcLaCySxJm~znC!BHxwq-|aZ_nG-k12oE4V`=nz%|vm;)bA zNA6@xhx#wbi=*O$p`NUa7ah!h?Q7T1YEFMobgkND$q7#4)+?W4X1j)o2p(Suo7JD=B1}f9nWERdzsa z@Wj`G<>*Zn*q;eV#E*kQ)%PTp8%lA#7;2Q1$r4?sAf7>wHRF3y^? zQ%z5ATZtxoQE*Y}w1+K~1Ll6edJqK#{F<+5x2&Kv51wkd7Qw7)Zt=y;SU~lOA+3w! zT365f-B6Ytn;kHb8k$dc|FkxP-wioILvs zJa^r_0u7BX@GHmf_0xpsgNffXj{m3=^e(UK-oPPJBcyPIfV+<*{HTf z6V!KuhCtfe`iCOHpq(;9zNuGM>tq$Yb8{u0E!K| z$^RHH+NTgF@I97)$}Dq)*$?RoKrFNae`)zC#E^2&1`tp(&(!$m9RCqYUSiK$^U>TU zFgzY*R)W7GyI=-X{WOJ`p8yUm6JY+(0)IOtq08=Rj@rhO^9Cmu{Y2hkEKgeTz+@%N z{>=X>xo-4!Kdxzsl{d;}g?^iE)A9+-;B!z)MX30(cskm;7m%P@|N8R}tJU5ZE zsyEc4LIM)&!Um`2Hn-_qqQggliK8(>d~>2L;6sBtNQQmJ{xSL>>tHyvVMlR8riSw* zsE}_g@sfqp0erPLv?ZDn1RCv};jC3wV9pA=so{pfMFyq^He-XMm%|Nt(A>EOsA7IA zQcD({J7Wac+Al0}#JfJ8F=B;pnOmC#v+(j7v)I-Jddn92mfow#xBz>NXubnc%KO9f zHKg6kWmw&tMlwn;yB$rLAfUqUuMffH{iMukJ2WkR{`MxYl`@XHUuMU97EKYBa`_@t zBD6nGm9eT(ifd49!|` z1E2eBt#AlhCmK;~+oFvnX*&#mD9#E3hYSeUcm@xBq>7hfzj~YA!2dMR=H6hn>jR?+ z8Z>(4D)40FW&iU^NFSTLdB+kfToc!**JUQUE=z#oP5l0E9@>8nORW^mv9d@&KsoaN zgNNp5Y+>fYsN&$}YNljsY;SMotn~BdKOWi@-e%%v%hR?YaHB$)v$+2Afz$DFM=WEu z9NuQ5L8%=duYSak%+!4Wae0cGIBSN$BPfg4&13hC-%aT&>^n3+B#?AG7&VQ%i`C$| zb|jf2P}T=GSNz57AQdrgL&W+;2u0QJT>*<d#Qgo{N7I#;|zPe zoPIr@Ew1W2A4AMcdL6tk@xo$48BHXP?vqFrxIrAY`h`<8-Go0sp}rP~9A+EL14`Hw zR$MS%94w93X3zem;JS_%Qo*EIT)U>aj(ZJ(jKY^F4v=>x9QsTD)xTd0uHTy9jkg{ZsbM3eQh# zJH{xfitPyf)R%iUlXLhv_Ozz-C5mdP~y zmd!{Q<>d|5(qj^0E^??)5)|kwN&y=iwNZ4W)OV#|e3Qw!G-4o~obhcH)-pw9hb?+0 zxT|{bU0eL&YSzXo(<|nZF4N9c%6;CP0~Z$DQjRTqY2YB9wAkspnqR>) zKQzWyi1?8W3LW3g($F_eS;R0b<37{O>#E3K_(&upz6tG{t6@+S7y^wPnb$rvH_+iJ zQ+E=JSL!LZVMsrHud0mC^2o_qqhTSN6R374ZMuy@yv(2|2cPa78c$6AOXJKYS&A;; zEAS-?ej}fA;6HCJILs~sgzh~0_s=5ub`TLyYc>+3J{m@7B3ra3I~dU-Jztqy8m~Y% z$A9iT|jiA>L~KF1A~3;Muiz1VbWn4oP0wm}H7Ya4@viUf^15#3c&20Z>0(mD~F zh5`xs1|oauULyO{z)M{W$nluy=Vj>$#BsBm&@Jzge>~Q8R>mTsE&~*brH_MoZeOpHnsieF*M=1Y{ZXjIR_-_|Dg~iY z9)(@QkM&JT`>eS>^W3*HSFb%YIL_4;;LD$=A{Afq{L}LN&^GEq&2@*4m&QliE z5SVxcVh!Wr{7zfACO&MjhCnc*BU>GkU1yf|+my_=oQ*5D)1|aFR@=H>KlvipgpiSP zJ$QG;-ob6#vH_VjntFu1Rdg(L8x(JZ{kVYKb+i*Su90%Bcs5wd&vm6hj#{9H{QAO2 z%v+P(*GTqLd|WRJk(~C|Un3Ei48qp*L==%0*S-iOq+FSDS`7d?Ak+VLW-Jx^Q4%vRh>gGE`$Oc2WX-G(cW~F_-&#fKfGC&&yVPE99-- zEI1=P;}9;4{K(~XfLH}GT|2znwBhKR+sK*}Dfm$_lIe9A`}qw`b`fLB0Ot}S<<^t* z@v-HR1x~0OT-DQoCBM`eaS*_NTQ4N}Y#&0P>DtCr3eXKJt+KSz&xg*b4M210W2U1k zZsDX?-Z+*6m171TR5saz$rSZLjth|GcO0n#(xZ8UV()Rw+u0K=WEzAapYs4BrHTh& zl@44=l^Ete4u3ee%8#E^N(|FAPeZnwU)+sA_+8Z5$)rB6IGOU?r6&nc|2ebsg7L-S zXw}x8doF=jlbPw0CidvZ3*eVpe#mS5j0lMEsCcN*)-P?OXZ~YU6-0#&mMi#%4UI{{ zp|b|v_M|s}hWN%mEJvKR_Pu>v({PZ=&DVuRn@n1G z5V(Ojq>aE~sZ2#&n1P&-qE5|NQyCUvE74~@;>d@GOtILo=v_)&FLe#)mLJwZiw(w@ z!M>s87b{UDl$=p)s&8gBtBpHb88bKJQ6+fQoi#n-$q|*3i02JBt}7VE=@^wtbmxJE z6;ei`{9O6Y=r806APNn=%a~|d!LK&rnxWSA9^2!T-Bq7syiOGG(3G24`Dj%=pjluaKtp4ijV)eI^}4aMd_)ERzRoH(2UUO zgusk2X0Ss@)vLnQtCtN@g`?f9{b=Q)pYhB75qn8RuMv@&VChSEwXI`0#idjF?J^X94i;9wD}nXv z?-TD6qRi|Q6$8e9=6Ot1N*hFshJ$aQKdlF8SZF-h+P8{h}UF+Q>L7DP_1$OU zLgSGTM8t)#dWU(k7Jl`h`~JlEG{C%dJM&T%ot6ag*j`u8i8Fy#Z#8**{T8rlzi>ai z!N5&?j4m5&71$3J$u%y^#TKn0YGc$(F=I9C4d3-5?0JaP{iLV1$?LYxMBg0fRN(^3 z%AJCz>GYMg&9z|)fzztP8;n2m=p$|SFsUKNOVOjbabN>6IF3X7!m;RVaO)nz{)gsI zGkI+1vOdJWnP-G zzWyat$28YYP)_w{5G|{Rf9we{+Q~y>f! z{SB$8AK2^{Z(Q9J={Q$fB~h4j_OVOPQxnlhBbFs?^%?anp&~n%5_Br{Z5fvOLto;t z>)WbJc!?y~MW*dw`9s8w0CAwucUDc?p*3jWQqx$8Tkcr=6Dju8;nFEkT^Qta_!muJ zgo#Tr(&{8_)V5QIgADpN=3fzl(VeD9(@j}t2)(Da=7WFyWUn&}6A`inXpKp#%^Xlq z63qsdLx05Wed&+KGvy+q=^8BFhcxd7>hhNVad4+ys!)42qmb;}epF!Ww0C=3fg_?K znZ$@}HeEL5DhveFUxD1Qa8l*-R`_vnf8WxB6&L+>f%T{IV=~pPhOf}psw|S~qD`JRk4=xjmka@CB>Vc^@QsJDgNVYrYOHCne6^M?9a z5o!>FhqM915KEgUW5ySa1{N9H7O8@EE~&Hyc5Dc+U(w=eoKWNc*)yljq5f^LkMjFz zQJ+OR+>gVslE7!URZ;K5JBCu9=1)%-x8QJz_U%;m4Bu4!9olzWTgnU53!U4T%%*v0 z&eL{%&t>(iP|39jlWg1#0VKoPgEOlnQi)CdF@2_ZIM zL}_N^PjGPH$bk8eL%%Ze2hLcRC4b)LWtJ!l@};@tt;i7$BW^Kt^%6P;SVU~q^e`R| z=brjj`7(o(jfH-EAv;#sUJL9z*!yrA{mCQ(pPk%<2~IF%vh)Re2m^xW7f+iR-vJc# zuHvp^(V>n6fQxLiBk+}Z_a&qYY71ZsRNn;dpyfr5fNWzIT*d~9j2|o;`BX@VGXszQ%I!G%$4!- zm$s0WaNx?Zhs5a=xYoL@zA}CRiy$IL+n9rI@*{8Jgx~W?W?wx)x~Xxc5j?_p=D?FJ zN6Z)faC)6_w4SN?LBv8_fFO+dVKiKhoa-$Ob?N)OUsFpqOk0?*8AC=9q zS-l$zW@dKt9mD}yFUgV!MF%(uSaT3jjK)3b5;Fk1$r>D3@T-qf?i8mh7Q-C@#xnb~B;y{xQI#%TOLfO1tsQwc?S zvhpy_VTW_d%CJm`5Qz~ek7}MpGvdV9)L4Y{okmD|Is9H<<4;U zevDhepNHswXW;%nnuN4H!0i7<8_E6$I-`6$B`aO6RHr^Sr&iajT6UtML?uH{O+TSJ zMms%Te^Sx>L#L^x8e^nUmXem2rJD{suR8(xZ@iiRe7OST_kQjVjkM+`QB3wfe_77K z!pi=?WRPX;ZTmwGjGkH5EaW=SPF$UO$_y(O_ZH#I>**%=Om`pUpDeIt2KT>#4kof9=MHR# zts5FLVw5_PrZ2VXNgTXsDNFE~7jfKyq0_?O+=p1auo*K2_am9F*6{;7?tb>EObk;~ zmE25~5-OLtdm(`hw$3Jkt6Qf`uEFeTB1#@Dvlwo3zVNYO=zL(PQLSuE6ipSgPWbXT zM~qobH4aVmxa7uF>;y5*bAi{$)oGV_g*Y>ZIciv#&&AK4Pt9a{aiCBQU^1PaVsESs z{MsdgGOb8`$eQ5d8a^ba1&dijx70Q{xKs|P>`2B26eF1%do*wwNjGZMg*)ds$4DqO zkCR~SeL2V_N*W%qbo&e(zIcHf6^gJlK6C5NshkSCN#W1%gvRZ$NgcWHZU>U$};i$f}v7#$W$}D_8c0dc2Q-+6>DD{Y? zDw8UAG6>|}c`?yp_X^!*3L9fQkshEpp#LQPGDIF{$|p;vdBXMJAwIG{M4(Wh*QZ## z;9F1ZQldFh5fn{n)E0pT1xCXONRT~&gFQd|bg6Q$(XNmR!C-}krXQ;uLD)K^sx~8N z4?%B-BeI32ajm2_zsjgWb{I zi_$vKore>g#W4$?c9@DEY7r)dP)zOXQqL*NBD_j>jirHaACyiFK#M*0JXa8+(=sL3 zjB5)M1EW(d2GotqMk*)9$!)$1pDx4AbkBhei=XgH`!}i4a;KzlGgLHwB;@Y z!62QB!8#0#l1aVnYHW#=32L#|_=Z{RivC6*n=Q`qezWyS54ZBBwD;XYmc>;qI4@$}W`x-Z=5D6%b%t2?Zx|T$=vI?HW0A zc)_z%#_UlPFw1&@y|8>o8pArIYvZpPJv+dqsVyn!>4J$ONqX+wzhU{})Vy_j(~Xq| zoc*%rC?Q|6!Z=#i!6SY{*WRmAVK&1NmCwnA7>&X~EbCD6Pf8c!c{%TF)$HmwxEm4A zk&qBAb-+8vvjZYHN86TL>Ty-jQrKC|m{Mu9`ZWudNY;29JS1>NW!q1?oGxBTJZvMj zweZlFGzDkC7i!r(&;%Bu0E}G3^J~Kw)ZwxL+cgejr!J&>h;v5B} zpEeuWDk6$nZ(1Nxtdw(@o7EtTXn@y91^FTda&8PHuh#PELzg8UJFI22>6?Y38f9u_ zy;>)32iYO|$~O@46aG7r6wlv3?Xzk|hQF^zRYS|{9v~3Efo$}FxPC8jHuOmj6F4@@ z1R$?)6+Z0<)5MK1M*7 zKg|2;vU<*k41B1F{H4LfV(;SGyA6sFIn1)O&m1yfL5eBCn-cL4NPAPo{|9l|&Fc43 zPwGm<>*g@&{T^jS31vp=xTm{2X>|(n3ao0z$oyzNY9_Icu;j*a5;X(<+hX&aUvsr2 zN5qlc=puhRZ#!!#D`TVVnhAkqg`7n4>%d!-VRnl=;ZG-OxyB2{^)Leu)=Q@QaTGBc z>qvSWA8w39s&+*`#VLoI;O*jEle2@E4f8HBNmK~3CJ*rTPy$AAvCOcFO&7a=^Yu(F!zpB5Vj|Bf;fWm(^_?)D9H+d)^ASLYo zfsOaSMhh!rQ3pFKdka+uhyS(JSO0AFxb5gYFREGiY!OZDfw`beny`@C)3+9MP{eZGs+-Vt$%2eCs?#N{SF4Om3ZOayXEW$U z8+!r8$Gy{;FcgY14H(RCW8$ewU3(h5EV~ztQ`9$UfZ0FV-Kk|TA15GlS+UX{Nh3uf zPE4EyrDFcQjeNZP%yad9B0}j@h7x*Ip+DW$Wj@vh@Y;I;aSulp>CakYdvt6+d6rQv z)bpTTVAFQhWZ~$n$x+TZ)k+5X0tp_B`0mxW-Oh2-0Y+9u$e1$fp&g-@-D2(+n!g~)b1t4|xg`McI-5JPI& zW|W|PcMYpYmzobz3rVJk;-NRjA>wJIX<7b~4x*$)OoRB8=%yS1=q-q$y#S1cLQT_Uv+0d=FkU@l_dZpw5yPOPMKyHPg4!iBC z_beZ4^f4b&_(L$qwaTm*bEjx(^&xeUlPJ~>7 zeR?0HphkUhV`_stz`9JNzKlPrfM^_~b*?c}I|JtiMl36${6bu)CGrR#+&l~Bb5(Kk zw{u4JuQhkG(;5o{Fd5Kb2@y;>t&bjAL6nUcFu;^Pl(k^=`G4KL_#f={R?r+>ua_=E zG}y+hlNxcq;2|49xAQ*wsjP>^7Ip=+kO|vsGPEWGVzw-?)D#1@`ZkJg%esnm&%uQG z)!Wv@#DSMwcysFVIcHGM_*csw$_NRTi%Q`0L#MRBSbk4(cpY{%fi6EQ3)(Ror->&o zIDljDXRN>|v8H3;5&}0uV=1qSodJm^eb+syMk&)n*k`IkbPzx$i00oG!78YDN`h8u9rbk4cZUdh5Q=kd+Y!b zoE_T^Nyw|%>}whsQvci%V`$qGon*hhJpVs;S87+IQOXa8LI?X_`+L`)Fm>gQal5RiQTV&YVv zTq*IEuO|rcPP@nJVS91z^zAyAx7dQBN^To+v6_O3YF$-ZWk;_UWB#m1zdgGLzv15a zr@4$N->sga+a!1)Z&jrli!u8b1HT4)>^7;Jy?YZsGsh1u_0q^I0D7uyVs_XZd!q4K zT?gLIYyGOGrv?ToqS+L8!$bP+wc5J>H_i>=jq9hv&S;dEikjTQ1FG;1$G|lR521@) zrxs9bE*+5Wv*0-L9ot8eBGP@Zh3=~%cCZ%}avdv)+rK?;wGGtx12Jy6R=<$ggB*GD z>Z8WgUpk3jVYo%BVn(5P2wH4MwYWt;)RS=moYW9gWhoGtE&J(JAgbh9!rVE3PYsynQjg-j+!{6ntC8@;!;Sse-9gu~@ZT_3zt>WY1YDm4uq~K%3iM%Jw88 z*+4A5kRpFT1PJ%P?qH3-EE{S0anTCg13z{1HnI<^WXp5Y6gGM^>bn2gyJUj;mvO!Q z$^Y^n{Y>C2G2auNhclY>7;GFuyzu;%d3TGxmk59d=Rn?Q)3_H9UJ?i+38Y_LbGrz6 zi{8T8SEyQzSRQ**BY(SF9B%NPYc53NY-MDTX5Ad4=#+BG;k~`bA*?5!VA|bYRX?nh zVbI@oslS8@&pptqCG~E*$c5f?0qK}7w+h+zi6BOPAJ8q6`(_q&9vrDC55*9)Q2CvA zmv7ER;m=b_0q76YdY`ZpBM;9awWf4TVGU8iE1j5~YM-EU^S?&2{ghEv$4@0ZRnhF3 zmyV{uzE(}bHy(3ZcoZ5}YPxNj9+>WF@neLsO^RI^t-cWt z{!v^nbd6+=`Ekb>vINDEi!(KU+ujum;;C^Jg)(Gn?IbT_%rMn+e!bN8_8F=_>%m%A zL9ZsTJ$F)Q{VBkGREmdW=D21XcG-&M1_KHTMb!#KS%F#YN_RuH>-j&3>h^uYu*?wb5uK|5{{*gB--PVU=~WG}Rujn6`Ua2F@P& z-M&cz`F8ee^INHl=aupQJD4J{0DaJ@cNEI!z@e$1H1HyR{Byk@9cn&HQys|*Ve5Hmb5D2!X6Jmc&nn>OUg z!oVcrkiVXp@qL))6qOz>pMm3_<5OdS8F^I3sz++aTg1HDjX4V*V-QWq;52i&Js;Rxjk&!Ug28mjs5X<})iLKOQC54Ui8r7Kb&$AudG^gd3Nwej?CAIADg6ZH z>CFr0CwZYu>rrkSDD2&*SeN{#xc}C4U)yDo9C?&1!I|;J`#diPjC<&62SyMN4|3lbl+!u^>zd6|b9 z2?wLAbX3-=LXMWvq$dw@acm0L%Re2VgUVBs?ht4!*EoeJ44ymAtQ6Wx6}nYT=joh)HDU4{UmcF?HB#)onj0xkz&#h3#bDrw2~mK{hKN)#}@995-4=s z6DH8ER+C~0$UDGKtpTDU3<1rD!N_BlVZEo#xP>jnveAq{PvKeOC5y!t8AIZF%CD^o zVe8Fkk4{?v1?n-FcCd1P$WT+~jksukZ|c~Z4tdN6F_*2iJh5~>v%Ht9-Z|&ZP}`y* z(t`f!75DfK2CKtfCy#DrRCT%ae?YOGX6q*?g=YzTeM14TWhJ4IRtjpn?6O~6>WED^ zrP?})PnE!x6^B}>AK>lWR%nsM!`f_#5Lf}65q_rAfrRdee>E3wwFCI`fA8jVr5M}GsVe!Y zcBUdT(dn+<<(CTs)QIsRamB8)r*%`o9o6h1%BJoVlvb9DTO< z7W}{77}az}s+Xm`=~|%RhEXceqdJcf2wSP(4z?YAsDMQt-`Z^L^oCcomLWv-s<;wx zXPf(FDB65<`av&t233rRfS94#k8NI9Fb>E}%@g)HxRoZKdQ^asGIVR~#uW zf~w{H%}VoOAKS;iJ7lHV#Xw{?4{toJpdsr0%@eTkTg`Fq_2|nvqagWD<%ez?H5Kmk zj=2T7=Q3q-bv$D}gB^={0+nDc6FNF89;(V$fy+<})*kY#gfOAh=NcE5GQA+3`79ss zqQ>m+k!t$n!WH=eF?WbrtoaC@6CW4<+}T=U_iCY26+OcSGNz~qU(Dm)$*UQn`yn4m zT_aQ`Z2RM^8TfF%U6-5nSCqdjzkZuA_S5kCjCtct_0H}ADuN^nbBoU6QUckGW?-*4 zMv78Pt1)y+rx5Z)!yxzEOK;O4)=M2F#;rb@cKSp|8v-i_m-|9-iezuZ6TqDV28Wn?f_HT=Y zsAyI|?1S=*!F8JESExBUY4grco5N2(#ZAwb$UkUKC4~O>(HnDKfazvZXe&*SlJ^05v<*x*iqkgQ%66s zBD@5zgeB^z19^M5lm%Y>2EWTV9f&$<(AR zv54Xvk!t>v{lXqs>qQY87do;$0I#jxm9+42n-7i0`eLP8%1+8h3n6@nl)zBCaa2HA z5D==cs8Z*#H=>(#>(1te$mkNP$=t-c_FMa!$MVg$M#A*4j>p9yvu z$jlc&GQ2So`nwFZBH=lX?~s%N_t$=1w2G5#1ry$#?bEz+jpU4YW zt;Q3;drWoh8eDq>gq7X_{y3u=LKJ-crs?=TmPWwWMe9tAm+t040lxnLT9?l|S^jC^=4i0qToLQirG3}8u4EFhWwPxp0+O3+Rb5!z zH2AQH`EuU)SnzedzuUVwK0jXm=~$H0J9$Hov*_lL_t%}jqb*F|xS4O_4KR2&V!AL91&CA#S@A|itA1FQ<8W51Q zFc1*U|LoOh2&)O(8{2xhSh@Vy+_bH0=dvl0_;qc_93JIfPA8m@jK&*PRz)`+`SMRA zvALZ#%?2Js)S09U-$0BRuCnEM@H3$D1N)`&UiSJd2N)_S0N~TD=~2ps0u92y$gk)j zxXr32j7OfK74`d~H>I<7jktkul->zIULLB`%z| zpeCO0nIz_vJfWr+Ze36$c`)3bSuu5IESZT)M=}Bn9H@iv&vfR@@Nns6NjAP?estkfij}__@Pba%> z&PftrvE6jKWEU+UrKtdA<~ZlwVDvBgQF7)PRUnRH_COLV0R%M&_@u4rd$5({78nQ8 z$Dw@${>u>K zSoVG{V^>;KyJB?@P_sdZWcbU^U+`vvC;Mnf$g?Qa{{2P(Ps+i}tBBpN_uOZ>4l63~T@MUR0z#h^4+;O`nA7+PU7&bk)ysVts`2ZE{8JTWf|1Aw7PT+&gi55gJ zFdJL_MLOJCNG4$`vP-OE$*ocr5Jq1>EUfnO(+(H(3TIyzG}|w>a80re>ZlY);sM&G zd?l2(3DaAVx+oO!ywgZn5LqJBbgmSEAnZ#X)1p0WF00u6e2VMv(gdgRHJYI^Z=yUn z)|Wt=g)(H3j~FBz1RJDxVTuSm*t-$POs{m=v*T#%Kz}HOSec;|Is0*J9ML2U;vDHA z6wB=p(kQh){?xuuFFe%dF<6p4&_ihg98ej;uS~Ig=QHRy6S(%>E~Qi`9toRc7!BKDG4%aLtYKOh>n0^`Vu2 zZ(p%gJ3|kkZo$e*y-vr`#?J0_?SK?{lMqxr2MjIIzmq?*FnZR7YLz~!J01V-O#XoK8 zzr?7G=5C%p{O&}QnYt0EoAuhI5%?H0T{hTj-!GIlG_}z-H5;ig@FR9Z^J!%Ojt|lLU9Z4kb&-6ywFfK45jd3N=cBPOSYYmnR+n4N_LI#bWtj zftwn_c|dalFI)`Yfs+NmABAl)<;_wU<<5awuZjBiYb&UHP(to0cZmtyCcYJQ5;ky4 z_7H`FiVrjkxJ>TtK(8Y+md%`%9)j9ZrkwpqiC&umS3c@Xf!ra~(HPAr&Yt@A?f{;vP83+l!n%otDO z?F?EJgk*zfzK|LQ;vv)JPA&Wtx(*Y#%pi{@q&X(h9PdUaQh%1zx+>AE0W$YnkOtdv z*su>?+g%ARU)Auze10ImuNH{#NhoY_?gNyX$b_1TtYCUz_OM|5A~AWwoRb|jb6rO! zlYnr~?2bvxOQ4}gE$LXeap>)ke*)WTl_B!%cSZ>M#K?i{qepQDJkV`Bd6mJ>myRW1)&ueB{X-{GgZHQ85V?E26C%VBEh-}I zwBNkgLzi`F?G946=%Z3h+?wy3t`I_t>YXkDU0$YP(;X5RjHKKOzBtnCRisB3rKwy3DD2$3^nx(v#+iH zCG6NAp`OuJq;UnIEu^v}wt=fi=VjQ%(DGR{#CNb_=iO5}1LZ5nTjOB_C9KKEFSOT) zZG1HBtcLLxI$L;$JRbgBo+IO>T1J=6cf`~m;phMQq`5!xASzXW(LMVZIv0z^>S!X8 zJXRgWord|Gq75lXU~hc!2{%#brLXr`pg+<+EYB``9H9_?#%ks`czus5&K7%!o#5Jf zeMP&|88`t7n?5CuFQ&Pt)lXH#fl%QX%{!6=t*W?6RTYZ@U-*lAgt1oNNGm~UEAKbT z8!mdOYq15s(Xe>1?X#uJ<`PRk3ROQ;I{At)3a{8bEnMc?tp>VS@&Xu)kqSsX; z7hNIq4_p1X=c3ne*C^^@13zVz-!N>^7UC^n9z1{as@;(gUsJ>=qGry}k9=S2dtuzX z8%)tN+gaeihWYfxW8KT6(k8x~i#@x8#7nJRYz7-)Al?`{I_qzgl7$GNc-s;`3ZcOf z)X5>0VoAZnazkVOKe2gNDe~$dtQd&_ZzsE}FIBtPZaVLh>!Q`On;Lib_AmNPQuD~x zbaBNwHR?nnjBTc28gu=OB`uO8nQi3)A8v_ws5q=&mMokVT?KU~0_Y-pVkCFIa~m}s zF(m~H{7Su5xmJydZo;2*s@#s)`Gvi*@GPT6eIyv9-=10cOrZL2lx))apRC6$W3PTX z^~2mA*J2`-X)2bSwPpB_(k|Ch5>7g0XD7f9sk-Mn`Bk(FfZr7sC5}IRjYvc^MSlLu zni;RIPv)#vO9n0$2@QmD@K#5UcHYxRum^8oR`3!ys==95*s4^_qgstn31MxCg}gH8 zt_C$F;Gftug5gYD7 z6nffl&1v>feW6K~_8T|&3&A1wbA6@e5Wiw8y)c73u-A;W!mqJC#Ce@h2Q;@?qMUz~ zmi7j3Pz?$&Mb+LsS?IcsB=E&40~*D8HU!9wc-tSD=>7|p`cqr~8^KWUdC88wb>x|I zAeUhH88v}~O3Eh?Hqgal_G*yV5X^())CG`@)qHk$z`ipLp{||fAMR-#RDiDDdvlg7 zw-1;|Sm7ZajuP|j;>1-88P;t8DZ5lBSUp$}0?XKj#O7lD#NT$9OVzYO%PaxmMSej& zQo9=wk&1D)e_rH(D84!DZd>sC0}oUi6%CW^-wXIYG0RkTI4bLT zu0*sUSD-mZbJW7MQq(_P5&#GDj2fw?kN6C)IV7)vuk^Ykio2V}eTWRCnC8;W46)HcStK0w8xtp;z zhPdq81r?=;#HSV@Wuk}|_k7L4mT%-#Y~w3)W590BCY?tRFy( z4b_3N4A1iZ*SOw?TJG*VzMfNy#Jg=Ths+{zP5XVr`dHAJ2OV>g+DvpR3#b2Hjbpo5}8Jlewba0aC*MX&ibh zy|R3jp4EBYtTmcG?IXN04v*h-qYEI}uF{*ggbz1V;e~Pn*ja%LI#;P99ztPq++pKF z*}#z--SvC59@o_5CF~fWaWw5VWRJMFV%^skConYPKK8yCNk4m5wvqE-j2J)b?6vSm z?ft6Q<%|*4Er;^gTpvgS0Cmr#5tVYYC*=-#XsqfDZ3_ERzS_oE3Q4q@@Y~eY=DKd- z+L>)IQ|A)j98tEZt-V^h=xc1c*z2Hp4&k7yZRk+>OM}Ohf__QnffPPhYR!4oA+L=3 zgyt>>s|UXb;B`H=s3-@xTs(deX~bWCeu$z$lKazKBdXJ{+w;n5%tqRu@NC#}`34;R z6Qk$exYQ$L;3=#znhtpKY$N->T00MLs=q(*U$g9yO-4pW_Rh*IM7HcMu6cC}QWDR) zHbz~8Q4UHG-fW1}s6lP!0K_2TY+KHngkh5Us#G>N|Lv;JFy>AO(*j5R|VbON`}1I<_h@NFCGv;P4TE_y;c;IG-a=vV z8%7Pk>x=&w@m1%50wvp=@Fsl5Ld2{=j@ocyYo8dJ&n%#G$dw}_lrFt5^b$%%5dR#x6u_F zCKvKy;_Y*j%x}20D$3_CaGZ9#{%M7ai_X+h(q}w+c?u1m1u4!4#fNqGA3Ey3WRi^Q zx)8jr9Im)kI(f{$a>K3E6 zwXQJk{&5S7@r*l{kp-o)M)f7Z@vle}Vy>>QrHCN=#N9^mST{*4yyx3y%E#R*+eHL! zSDddBFu^lLE^|bDa%^~9S2uMFe|3%5_Wsy34=ObU^?Es$v8QH20_@>KV?%iJuwp@hV_bjk2W1UH#*LH)?#|bT)&D z#F|ekwrFg6ujYO2G`y_))jv6{IF9Sk+_csO%@J0OpNB+js=%8P z)5fi023}3_==&X3@-6uI?mEvyQuUWhhw$Eg99NeL^7AO|`!3ok-QpbR{ltWTwk2+2 zz0r0)Zm94B>Q3!o*3q)W97(d`8(-^vH2H#jo|pD$c7mj`S*g`TSrYbtRAD z)6^ja#Vbs;kt9^-Ufo^y1<&Bg_TbN(-<>wLKKiYcq)#E^Zj`o~Gv6Fbk$drth$x~Wb0fCq z*4%6iT7K)1qYrh6a_{)|F_!a!U{|Nh(u&olb=DhT!`kS${Ial?0A|}6CZj^UuE4-) zSwqd^uIhQw@d8WBimQwgUgYtueKDo%+Wm<$0qo4t14uYqRsO|Ca}&!?B5!MVcx6rL zmc`ZwnMwF=tA*zx@)Y9UYna%qcdtOck1XrWsy0R?*^1xaKMvWkrC2Jx^Vbq82&B|}kKOTqE*mpKLhW3^nz3IK zjo=M=K3@5eMr zGk#Qw>({?3ZhUb?#GD!S%bW&>U?r`wT~W%q`+a@&-F-&$JWZxY`b&@QRGqv%CI7L) zrZax5z2-z1JtQIReooH&L(fyB9lJO$pT<#p={(l58ijL;{`?Ymk@AT8NoS@P!K63D zhtzw;-`cPpC}C5HoT2o%FwdcTzer*wpAY^uS;$FX{kG=J8}A_IIq7+#m()V%U@v?h z2QKrZ2XI9duoQT_I$-w}{d7$-nU1mZ@cdzI1>FIhCqc%+q_?Q9oEo#E$bBKMbVV#o zOyfd>$3=4eYcJlZx-zK^lOJcvpA)}SJ#k@6e7mu8obtmR(tq^vsMISM>tpI z4bM5pmh{4}^tRht6EdnPC5&9IzQC);7{WXw)pH0zMGXrza=O_$PZHKUz@@t?LD0{j zeWJ{bq8DoLtU+D~0)UGbk4G$#vPPR@~K+gzi%^+XoYf;{Ug z(Qh^%djn=&-VD*I)Wbm?OD_$5g<61bc#C;bW_b}uafV$XkSn|AVZE?*>YJz^!30eL zf^+cnz=NJBZW$)LNgCdw+v*3}(;a5mAO>d-jK}moe@!5R=Wf|pUY6OUo%YeW;f@fK zXv+HYgI!$&C95hyq@`rF@c6TKMM-!Oh1*XqJmr%N$(?ADTI;1Jl6E=gU;TW*A#Knw zGd0v!L|7;i-f!SbPJC)hXf%;^|+Fb1D={90qTic77Y~te+QV zM6dY-ZGNu1%D@X3M89ef|0 z5V_&G)btV!&Fn(n88d*&lNIOm)Qz&}+K??oF zRGTQeWWy+H=;TY>wqPptQVLCx1GjJcSD(oU<;|WroYsYSq?jezX*rlMTvf?*egjAP znCX!11se)6l>)9=s`Vf{srG;B^n^&c}&$MgVriy&Z7jFAf zNiZvQ;63?=>rG!}4h`L!FOQ_76}>r*=GT&*T0h0#SzFHNXsvJ3e8?9*^oPLY$a+2Vr ziit3po0(^rH}O}#@Q3f@RZa#3J>})GJhY|hb>!ZtLk($9dt7G7(E)85-OWSuXTTEI z19F>#BAf5CEavB|qF(!6X<+x%F7@}{;_C9{W%s)-djYC7_=4S&jAwJ;V3I{Fr^E)e zqcqz94k_(8xq}72e5!_fXIGNUkpW(Eb%&DKWYrQmu_fkp2MeZqXxyr-bY$)`mj38r z-%WE>LV@_m#Q7r6)Vw4wiI`zgU2zn10;Ap#$zd1XLEn=(mrlSgTIV0DD7u9ZF{h+H zNsRPFu@HXScy%@MA?%E*!9fetQU+${cWVbzsC}8aeFucJ-oK)^U_K_1l`r35dMNM^ z0YjcY4o?3xbJqLb6A>4l%h_xsCP*ZxoUB!uChS=mUuZybNsbTW=H#`i3dm|nyOi30 z${oC7D3B(pt9^M^$I#;_d((QwOfU5HThV~qMwj5v0uxQuRii8iFHdPDsnN2x;fjzu zDbK#0?aS>Gf;<%GSy*i5<@J~Ak#w+uRYBgC8AzYwknxQ?5TP7h{JkUBML%8EbhtP{ z>&X2{v`c}|2(xt8V;Zh!$`)xnG94~Ru*0w>Xqi|b^_PeeqCD52kjB|A8)H_w zj>_A(Usvy-vdU=Ex!j43vLXJ_?NWNTG6s*lI>rz$+MgaKJ9t0C&+hFB!i}I3^bqmq z_Q-k}J+sJ(rG~-ase9jRO-zlA#F1>cncAZC>}yPstY`((M`<_#q1GQw*WMD}>f?;0 zJ!N$ATZ}@pn6Vs^-{e^OZLL%{=Qjq?onCQ%-HR%fV`_0NWCf!lcWxkHdFuwrpT{x= zx7&=~>l-#*e%NC)lBX)q(ZSG%>xgKvnF}ftb53bBRu%WE|8(xqE2X46H|n19BZqFq zOguk$?RA04Sq268m_j#E)r7#d(}W6d<^Wyh0V*{TusZ|Q#n;`hIp0Ueoq&+m zJz!#a-7wAjTA=yCG43~cMw`mO_}|Kt3ONfqvY9V4zW>M*YDEUhZYMTIjB^{o^y4vyw>mJwL+?*hUa$z zt~^e6E3+n#a4A(=9VVf0m9cv3wD_qC?^BiCW1`O^ESJDsXDeuetC5Fame>= zVGX#o6W6L-{SrsbBlAk1YjEj6612gl&9H3RW$f*DlhPT z{hm*~AGv4ZE!NUA{POusn;_(tkr_X$OTw~+^i<_BQt>D%zlP9iify8wrxCoEP(4d%$qr7rmH1nLySx({r$r%1Ouv0f&?TAEQ zR~fnu!$>vWj2_FF$V0y{_(DQPA!E1h5 zd2^kY_|BJ%ncCrS4YJE^h&6j<5TcYS(+lno+9@7p(;04Z=oIuX4HiY#9Frt7A$xPh zkJ4H-n4lb2C>)iDFP%QmM0)Tn9z3j0L_jaiRD7PBAv7((>9$lhbSSWD^vrvql#Uz` zp9xCy3Uz!wH$KNvS666)mvrWZ=-9)@wW&tmmJ%5$JUQt)Fnp8X>@_!wXjf3!8x3!Z~UKAReaWU&sN ztY-^`PcWTVx$_ZcHC#=aA3dUTw9nV&bYAL;lTRW2s#Bu%v-x|nA=@#gt8aKtmW>YH z31fMBLBDn@BHGDfxiPc3{Pnkh0vcSALfOhYQU#&zT$*z7kh9`mhV>L_+o5D_l1jag zpWO_*VWSNnCL+_no8kBx# zeaRJz%*%-=h%uHG%Bwnf{sDS{u-cltxQmc$rDB;XdgGnTSjwGRgN`7&(~ca1{nf|Y zUsa>7ZqibyK3Ecjbw@x8Sz!=l&1aDpAIAcd^ZUhul6n|!zbCI=u1oE^I^b@dAdv!f z=@b4KQ~Uf}@&STahXKo_dKN*xdR;Aiv%7KCt8_7swaB+xEFvc3cv?aDi;>Dw=9G*$i9LJ_ z&H9a}l$~AP**>Fmn-Ihi6t9}5Rw|P!YT=oZX)Ww2Kz+-1gR&WH+#LD<9=A#ol#2-lXshzMh_=2+g-3C@}kvlb} zRGweYr5UflWl@rmqD5aXCiF~Dl(rl4sG9d|%B4u3Aygn77BQvdCb6v)U9U4&tSYhW z{pdrHHb>8VdX;h|9ZNIR;UL9nr&` zbUsBw$Maqviz{e*#6B7_&rO+@u6IBuu$LG&^1-d(yQ`th_1Se+4cXni_YG`C=n7|| zjhAPHtIr?wbyDbwo<4Y)hiO_hru6yX_tGViQ$@3a= z8LOktZ#Pw8r*Dr{Hlae3*Wr zr3d_1Bu?0`#*3abgk1qkRF4Mebm_LL44--*d^jIEVa(R`Mew9%Gsj45p%H(k_ISqGZzlU^B<==EA&n3>bICl=kx+ON|a%4*RoPA)}CNU?P< zQlt=P@JUV+OmqeD)@-k?#8sySJQ4n=_hHj|(cXe}yh89<@|A#Pg{|VvD*A01iOSJr zh$Px(?)>K*jqIZV!o?itpIY1Pr?#y|zfqog1N*h(;0jTOQRXrwbNJ`NC32 z-OimMpy>|R6Ro;~*lv>fU}($j|FHC2l%Q8#gm%XS)6_k9W`RquABTg1QmsMOBAiC* zD^nPcorDW{`fOf8bDRBIWr^}&a->>uf4xK+Jm0TnA15=z=9hDG zw^8{UiiE;LuaCbBr=Ytj*&&$uSZ+60#@FJV6Vkz%g&JZ!+}7afHPcnJy_)DY>zGirGfBvx5w;- z2shA1Oo))S&YOB1Z#rSza6(9X=DGP>5me`e?1;lO8CQ(Y<|{uAzkKBT`I~omSgVs* zzgQokwLNoeg;2GpVm2FJ%i~f6Ul##We*^o`acO78N%#m;CQhXFiFa`F5`0b#cEtbxZOgmO0_AOZrBE4fx%6 ztU51Q#vhhQ?s{JWR{i$XyDigoefut7sIx@VBh}^ia?>nhQhIUi=+=Ak;;)BjpG?4? z33DB;jn#o^c~RY-r#yT&44Kf9KxrPJJaz2y-26oM14!`0$42NF*mQJwb*>!v2g^KVKd@0c!}Z=>mJ8r|1_K$)XNE+3x%}*HBWcP zYymmbNQF57pt8qeNNvQ~U!i_Mtt`V$r=L}5BB{W#TvSbk`iQmqiBuN4?{DMJUy$!r z9F^B(ddXpM$zI2YIt>mgBl=HUOt#hxYPhyrtMjXoXPy+SMn2wLcDGo0KU1{&h%KbK z#b4M_oWG}ii2iX6lg*((Wry|S#12$*EY#^5p$B?$e^lA0cN?2>1ilvgpMzOAX+))loG+2{nW zE9NVkk26>4zHokRB*8VUq;!5o+?UwCNu}zK;HALJsX5A@a^zuA<3{G=Sn4YtB;J!@ zfokyW7|wZ431a${)Rk>6_C&9^n2Q8)JZDWQ*>KRyDYA+DGn~D4iU!q4Jn76++%}Pm zxeOUNvO=XS$iO~J(quEX=dNp>&;Jb|VR*R2To}PZAU{CRiB9$OQ)r#w|ey@{* zs}OO0cS}Y8vw-NDgZQ4`wVrd|s_G)sz9z-whvYLQ4^bO9gY+b6?uQ>KXi?Rqp`KsP z@xY;X=}xljAgHD)5J53|b5-yw9qG{)!d+gIjv`>a<)u#=@k}qa{WRm|Bugz4*rF zX6WDQ*7fbkGB*&S3Z2VCB_3y>@+m8E5>C6yoR(dOD67Zefr6 zmzswL`19tt^W5HQ-Eh79(nRenCliAUDc^NO=_#SSW70fT@Wsnlt7QvRYezjwjII+G zMXiP}5DJi0+!-i?8*&8jy-pstG&&5>1Jy!2=9&*i!LwSGS69AF1yE17MQz?T^7 z$LV%|$C{j@VRVd>jVWfMu=9GG57E35wDzoq)AcYpIf{PqmmF0k+p(PSH~Ukz-;EO> z;8zO|#tPImwVq!bk`z%^aMx;;2n)%Vu3V^*&9hZ6v3YxX)7?QPXR{BTymfw7R$ata z7xxLyh7*$-iY_maWv283b6U24g^Iw<#1E7gWeX?yB;SV~edr$Ol-z*#C9c`$rG7dk zQL}Bd`L~f&B5r5Ztb#N|Yp8bZRhyX)@ z&zbiu(gRM;9wZg`j)QkY&(xPN$&5$4=*cZ7zl^XEv4tjoT!AlTTRKJ6nq|i_E74A{ z&$OwEfuYvK&fgv+KM}a5Q*HL#pNy^ig_qx?rjN`7slLFy5T0iFlbn77+YZMQf^TPB z=U2^6j-`BHlzoJN1xi!sk$1DgzA^Vvs^z$eXl63OiKX#3LE-I>%@PSthuv$xsHybO zO(W5-@%II zaO06vP_5$<{-n{3L)eF-8#h@M{=l=4&x$5nGq6$h-76DLSH)udo3#Q(ti#VtSgD%P zH$|yKkfcexZS}R5gd%lh{Ogi%rkm-UuTw+cY&^Xnn=*-}-F(zMF_5$w&OTu!AT+aZ ztFWt_(Gkf)8 zNNgqPcE_zn{@|0Ryj?j`Y!XIvacu0N^$Qe_509maCUd=;cWVn$+B_h@N`5GzLA@I< z7J4w6^YQGd4hI26O{vJTpn<0jak9uxv0EMzcW~{T-qd|~s_mUr5OXac9W6v%7Vb~5 zU@4gduRC7+WPrD%DQ@7naHGzoK9XxZjT?Qp&|Sy4$fTDfQ_JdTx2Fxhg;!;<=tk&4 zotm0f-z&y0;UWHNr_;(UREVi#Z@4Syinb=PCQFgZk|Z0*;mRp}{HhVs4LoISF;7hH#r877KhIJ6~tX>fXvL zSvPQf=n!@P3^B0<^{e>N@#jcs_jW1QLN4;;Nd)xx1I|RkRo+({JIt zg`0?&!5r%aj=mpR)k_Tg%su!*dsb=n^<}|@$M4u}#a~O;$PqU_4=O{K2!H5up_%Qb zSu^I$Op>*n$BPeyeLTb7f35A#TJ#s8rM3=UVX47}lob9A&oe4hXY}Dh9fexrEk-9T z($NNCwERX20oP%atIOqg3FSwtd^z&S2`&IcuAT;_Wmf$st z-xnSD&c;SZS@n$JSz#Y2%F!ECOoC3{wtv03x~*qo`T6}~iwXF@1>ioi=QBb!&Of&6 zazeq~?9S2JIi9mUx1w{}WQD>cO78-00t4PrN@g5S4$6yLml>mQuW)cE>+ziGC1roD zVb~ExNv|{TXjJ)^?0p31g?SAct+PbiF_O>fQi990@L^N6c+Q|ze6-iW^j3ki8 z58NF8A(fDtp^YI5frRZXR24H2iuS}qh~X>twhMSN5ts0lGiXJu-hgdHwDIu4D=3hI zke!;q>>jqe_JnNQ5%w?}IKtlB4d%7?ul@h03(nKr0wF-232^_HF2Gj4YC7O$CHuXF zTGe7FTt$de60oSMgyo)2xPo`$Slo?EMEpW+ZR{yoIb~^Q^%9aw(~{0w8klEgUcGwu zYAM)}*EkR-s)><7jcSoN=EDPnHR`pihKwx2kNWWWJ{e9tAjoF~Z~fY!i8jPeQy=&b zt@8bcRz1LH?_g(oK{s%)mynAW!hP>n{Qpobb|MMuu%Q64q*G2T}n;(w~ zfPei~fS&fR$9@J!(wRwJVlb$F1#Y(Ak3k^lPy_HUtlx<8vO~B#I6Deq0_BG(cfyFW z4un$y5CV+Q>9JrL;HOxyKWS$tWMj$ModBF4iq8&#V3OUh3my6bV6h;-mA{kW6J5_@ z3x4G-@B|oi{=U$m3}76J#rWMSsE5a{jp7oH6blo_fh4u!?U1J)=oyP;>+LRt@pIdq z@|+O5OMVGRaSzqyqg2l0YC}8>!zHI#iAy7hA{w%SpSMTgd(t zc`bO@4Y&`>ZwMwJ4hrqS*dgE^2zQt}%4=7WB+b$EK0xpUB(QzN?+YFJaVP1w6JiqN z&W2eHbNN~W##i9Xm}K_rLWgb%?~n-Q<>u^;`ek;Pzs&wq-`|E@5*~r)%>a)17YBSr zhbD^dK>0YMV81|r`_E4hl%Gs;1w42efUsrC5ZeXh^;@QYQ9~3nT&e)24{q#O?GoRC z@<4c@?7X~wiS>8;{&j1xF6@67#;sK)cCfsVn9Psu(=L!Gcr|zkAM7)V-74hH$Nv`< zduAX4oI_qxz+jXhM*!OI3ms}Bxr-#qAo+m#%AEpnRmDPsz_WSa#`ft4(z{ULP-k~+ z3 z_pemgMwe3BMXH|%p#K+y_O}~hn&!G21atK4e<85#eSJ5?k5gd(i-Fyiq1_li=ac_H z4*rOOu3Jihmw?l}0w%|f?gQXhc&v^blN^3V0r)YNZhxZ6?tTtl1Slx}&zIbPX$BqI zqr401cPtn=!Qe2}pOJwbs6V;6iV&mu%6md)t6@&`TJC-4d{E?xyqKP>|M6 zL;b_7KPbh&gPV7n%MyR^3BFywC7MzbT# z8vy&{pIq1p-xuqF@Id(N!Bw~z6AHMPvKKRi{dJ*3As+j4kqAd543vtyD0d-xz)B2& z#{n3`-0uq=+UL117=?g(p>`Ko>qhJeT;OCrV2F9_Hx-j*)x7rQI=g##qXZGCT?3Er zomct+&?VpjU%-?HzbOM6VV6;;pDzH;KOZ5I!J0!x*O%RHNVa}HS zC*u6n`=&vO1<3_$Y~x+Jye}JgnsWfu7Smh)OFnKFm zkthY>Fn90W_?fAEbACV(jUZcMt2r`tUp~~%4uQ1aBM%!3Z#xSBWt{(~bkfY&mu!!O z`tGifkm|P|{m+9X^2qvM3<4F8Qt#}VjLP?AgL(@N z{kiUGr}=F8zPE#U8AvtoHtgcct!7^?3gPJJ2HRWcyAOD^azKa}1BGDw#!}tBa40An zcQ+xUxT{(zKsJEk1$H<6xM5!`CjZ#(&Q)NZiV+1mt|H$lZs(nSxqFwG;^8+gE&wek z12lF(%XRFF1t+inJiK?O;fO<3-l&6IENQk=2`*jxQoTUQwucgelq4NNMu0?s_`sHS z6D+UWr<4a(>+W40Z7NBz5zs+1AY*6uDNte!+>aOj45%WY-@x{< zpy&INZM{*b-HZ2T=}Sdm=mLrQ$8}p@?2G*w7rUhh?=F&J%tsilAdIoKYd8IWfdv)j zZq!WqVj@iaei(QdcCsv=-jdK8QR4;Mf^$cwv7qsH&hI zUe0^CgvCdC$&)}8mSAE`1pJO)7drI%;=XKqB*McU;p@I?H1xI z`_jE&ZeT>Zo2F$Hp3EcyWnjkn*qR>M*cXeL_1vq-k0j-3e>Picv$j$;o=4Ar3c2t?lzJ>?F;_jq}QId^NC#> zLjYGUr`S2hJqW?uFIhMsknr79(ZTwSLK}2)&R|v;TNStQ_l1Jd3<4BE|J2)WIWSYWV>(5TWEb$y*;GtL1xMIA|C=o_NGY}JG;Bb-Hb4QKzv2RXMTfSK{wH#` zA`JsPEOUwAJOGq{8+(G2nR*u>X0p~B$ZfFsO8YdgJ$`5J)>PI|r6*!@Hq= zOxnW1C!cDdH{S)f^EmroL@<_T-$k;Y^S8SlZogB`ooCYh0Vj*>3D*2|LfuZ<&U5De z(8xviq+y*px0AT@V4FY0WtlyRK)&6Mx!K9yxi|eEc9im-Y^3T?8Go Date: Sun, 22 Feb 2026 15:59:27 +0530 Subject: [PATCH 02/20] updated branch variable --- backend/Docker/docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/Docker/docker-compose.yml b/backend/Docker/docker-compose.yml index 17f11b2..d84522c 100644 --- a/backend/Docker/docker-compose.yml +++ b/backend/Docker/docker-compose.yml @@ -14,7 +14,7 @@ services: MYSQL_USER: root MYSQL_PASSWORD: example MYSQL_DATABASE: VAT_database - BRANCH: main + BRANCH: frontend secrets: - deploy_key restart: unless-stopped From 24403b1a6a854ed578a0302db153e80f8c998ff2 Mon Sep 17 00:00:00 2001 From: AS23 <70798346+ASROYAL@users.noreply.github.com> Date: Wed, 25 Feb 2026 14:18:25 +0530 Subject: [PATCH 03/20] frontend integration with backend is added hopefully it works --- .DS_Store | Bin 0 -> 6148 bytes backend/Docker/docker-compose.yml | 2 +- backend/main.py | 1067 +-- backend_README.md | 28 + frontend/.env | 7 + frontend/.gitignore | 24 + frontend/README.md | 19 + frontend/bun.lockb | Bin 0 -> 245395 bytes frontend/components.json | 19 + frontend/eslint.config.js | 26 + frontend/index.css | 0 frontend/index.html | 28 +- frontend/package-lock.json | 7785 +++++++++++++++++ frontend/package.json | 88 + frontend/postcss.config.js | 6 + frontend/src/App.css | 42 + frontend/src/App.tsx | 47 + frontend/src/components/AppLayout.tsx | 232 + frontend/src/components/EUMap.tsx | 163 + frontend/src/components/NavLink.tsx | 28 + frontend/src/components/ProtectedRoute.tsx | 18 + frontend/src/components/ui/accordion.tsx | 52 + frontend/src/components/ui/alert-dialog.tsx | 104 + frontend/src/components/ui/alert.tsx | 43 + frontend/src/components/ui/aspect-ratio.tsx | 5 + frontend/src/components/ui/avatar.tsx | 38 + frontend/src/components/ui/badge.tsx | 29 + frontend/src/components/ui/breadcrumb.tsx | 90 + frontend/src/components/ui/button.tsx | 47 + frontend/src/components/ui/calendar.tsx | 54 + frontend/src/components/ui/card.tsx | 43 + frontend/src/components/ui/carousel.tsx | 224 + frontend/src/components/ui/chart.tsx | 303 + frontend/src/components/ui/checkbox.tsx | 26 + frontend/src/components/ui/collapsible.tsx | 9 + frontend/src/components/ui/command.tsx | 132 + frontend/src/components/ui/context-menu.tsx | 178 + frontend/src/components/ui/dialog.tsx | 95 + frontend/src/components/ui/drawer.tsx | 87 + frontend/src/components/ui/dropdown-menu.tsx | 179 + frontend/src/components/ui/form.tsx | 129 + frontend/src/components/ui/hover-card.tsx | 27 + frontend/src/components/ui/input-otp.tsx | 61 + frontend/src/components/ui/input.tsx | 22 + frontend/src/components/ui/label.tsx | 17 + frontend/src/components/ui/menubar.tsx | 207 + .../src/components/ui/navigation-menu.tsx | 120 + frontend/src/components/ui/pagination.tsx | 81 + frontend/src/components/ui/popover.tsx | 29 + frontend/src/components/ui/progress.tsx | 23 + frontend/src/components/ui/radio-group.tsx | 36 + frontend/src/components/ui/resizable.tsx | 37 + frontend/src/components/ui/scroll-area.tsx | 38 + frontend/src/components/ui/select.tsx | 143 + frontend/src/components/ui/separator.tsx | 20 + frontend/src/components/ui/sheet.tsx | 107 + frontend/src/components/ui/sidebar.tsx | 637 ++ frontend/src/components/ui/skeleton.tsx | 7 + frontend/src/components/ui/slider.tsx | 23 + frontend/src/components/ui/sonner.tsx | 27 + frontend/src/components/ui/switch.tsx | 27 + frontend/src/components/ui/table.tsx | 72 + frontend/src/components/ui/tabs.tsx | 53 + frontend/src/components/ui/textarea.tsx | 21 + frontend/src/components/ui/toast.tsx | 111 + frontend/src/components/ui/toaster.tsx | 24 + frontend/src/components/ui/toggle-group.tsx | 49 + frontend/src/components/ui/toggle.tsx | 37 + frontend/src/components/ui/tooltip.tsx | 28 + frontend/src/components/ui/use-toast.ts | 3 + frontend/src/contexts/AuthContext.tsx | 100 + frontend/src/contexts/ThemeContext.tsx | 41 + frontend/src/data/mockData.ts | 277 + frontend/src/hooks/use-mobile.tsx | 19 + frontend/src/hooks/use-toast.ts | 186 + frontend/src/index.css | 128 + frontend/src/lib/api.ts | 153 + frontend/src/lib/utils.ts | 6 + frontend/src/main.tsx | 5 + frontend/src/pages/AboutPage.tsx | 140 + frontend/src/pages/DashboardPage.tsx | 140 + frontend/src/pages/Index.tsx | 5 + frontend/src/pages/IndiaComingSoonPage.tsx | 134 + frontend/src/pages/LoginPage.tsx | 143 + frontend/src/pages/NotFound.tsx | 24 + frontend/src/pages/RoutePlannerPage.tsx | 377 + frontend/src/pages/TrackingPage.tsx | 453 + frontend/src/pages/VATAnalysisPage.tsx | 324 + frontend/src/test/example.test.ts | 7 + frontend/src/test/setup.ts | 15 + frontend/src/types/vat.ts | 43 + frontend/src/vite-env.d.ts | 1 + frontend/tailwind.config.ts | 108 + frontend/tsconfig.app.json | 31 + frontend/tsconfig.json | 16 + frontend/tsconfig.node.json | 22 + frontend/vatguard-demo.zip | Bin 238682 -> 0 bytes frontend/vite.config.ts | 19 + frontend/vitest.config.ts | 16 + out.md | 97 + 100 files changed, 16077 insertions(+), 536 deletions(-) create mode 100644 .DS_Store create mode 100644 backend_README.md create mode 100644 frontend/.env create mode 100644 frontend/.gitignore create mode 100644 frontend/README.md create mode 100644 frontend/bun.lockb create mode 100644 frontend/components.json create mode 100644 frontend/eslint.config.js delete mode 100644 frontend/index.css create mode 100644 frontend/package-lock.json create mode 100644 frontend/package.json create mode 100644 frontend/postcss.config.js create mode 100644 frontend/src/App.css create mode 100644 frontend/src/App.tsx create mode 100644 frontend/src/components/AppLayout.tsx create mode 100644 frontend/src/components/EUMap.tsx create mode 100644 frontend/src/components/NavLink.tsx create mode 100644 frontend/src/components/ProtectedRoute.tsx create mode 100644 frontend/src/components/ui/accordion.tsx create mode 100644 frontend/src/components/ui/alert-dialog.tsx create mode 100644 frontend/src/components/ui/alert.tsx create mode 100644 frontend/src/components/ui/aspect-ratio.tsx create mode 100644 frontend/src/components/ui/avatar.tsx create mode 100644 frontend/src/components/ui/badge.tsx create mode 100644 frontend/src/components/ui/breadcrumb.tsx create mode 100644 frontend/src/components/ui/button.tsx create mode 100644 frontend/src/components/ui/calendar.tsx create mode 100644 frontend/src/components/ui/card.tsx create mode 100644 frontend/src/components/ui/carousel.tsx create mode 100644 frontend/src/components/ui/chart.tsx create mode 100644 frontend/src/components/ui/checkbox.tsx create mode 100644 frontend/src/components/ui/collapsible.tsx create mode 100644 frontend/src/components/ui/command.tsx create mode 100644 frontend/src/components/ui/context-menu.tsx create mode 100644 frontend/src/components/ui/dialog.tsx create mode 100644 frontend/src/components/ui/drawer.tsx create mode 100644 frontend/src/components/ui/dropdown-menu.tsx create mode 100644 frontend/src/components/ui/form.tsx create mode 100644 frontend/src/components/ui/hover-card.tsx create mode 100644 frontend/src/components/ui/input-otp.tsx create mode 100644 frontend/src/components/ui/input.tsx create mode 100644 frontend/src/components/ui/label.tsx create mode 100644 frontend/src/components/ui/menubar.tsx create mode 100644 frontend/src/components/ui/navigation-menu.tsx create mode 100644 frontend/src/components/ui/pagination.tsx create mode 100644 frontend/src/components/ui/popover.tsx create mode 100644 frontend/src/components/ui/progress.tsx create mode 100644 frontend/src/components/ui/radio-group.tsx create mode 100644 frontend/src/components/ui/resizable.tsx create mode 100644 frontend/src/components/ui/scroll-area.tsx create mode 100644 frontend/src/components/ui/select.tsx create mode 100644 frontend/src/components/ui/separator.tsx create mode 100644 frontend/src/components/ui/sheet.tsx create mode 100644 frontend/src/components/ui/sidebar.tsx create mode 100644 frontend/src/components/ui/skeleton.tsx create mode 100644 frontend/src/components/ui/slider.tsx create mode 100644 frontend/src/components/ui/sonner.tsx create mode 100644 frontend/src/components/ui/switch.tsx create mode 100644 frontend/src/components/ui/table.tsx create mode 100644 frontend/src/components/ui/tabs.tsx create mode 100644 frontend/src/components/ui/textarea.tsx create mode 100644 frontend/src/components/ui/toast.tsx create mode 100644 frontend/src/components/ui/toaster.tsx create mode 100644 frontend/src/components/ui/toggle-group.tsx create mode 100644 frontend/src/components/ui/toggle.tsx create mode 100644 frontend/src/components/ui/tooltip.tsx create mode 100644 frontend/src/components/ui/use-toast.ts create mode 100644 frontend/src/contexts/AuthContext.tsx create mode 100644 frontend/src/contexts/ThemeContext.tsx create mode 100644 frontend/src/data/mockData.ts create mode 100644 frontend/src/hooks/use-mobile.tsx create mode 100644 frontend/src/hooks/use-toast.ts create mode 100644 frontend/src/index.css create mode 100644 frontend/src/lib/api.ts create mode 100644 frontend/src/lib/utils.ts create mode 100644 frontend/src/main.tsx create mode 100644 frontend/src/pages/AboutPage.tsx create mode 100644 frontend/src/pages/DashboardPage.tsx create mode 100644 frontend/src/pages/Index.tsx create mode 100644 frontend/src/pages/IndiaComingSoonPage.tsx create mode 100644 frontend/src/pages/LoginPage.tsx create mode 100644 frontend/src/pages/NotFound.tsx create mode 100644 frontend/src/pages/RoutePlannerPage.tsx create mode 100644 frontend/src/pages/TrackingPage.tsx create mode 100644 frontend/src/pages/VATAnalysisPage.tsx create mode 100644 frontend/src/test/example.test.ts create mode 100644 frontend/src/test/setup.ts create mode 100644 frontend/src/types/vat.ts create mode 100644 frontend/src/vite-env.d.ts create mode 100644 frontend/tailwind.config.ts create mode 100644 frontend/tsconfig.app.json create mode 100644 frontend/tsconfig.json create mode 100644 frontend/tsconfig.node.json delete mode 100644 frontend/vatguard-demo.zip create mode 100644 frontend/vite.config.ts create mode 100644 frontend/vitest.config.ts create mode 100644 out.md diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..93c958db8b325267cc5915800ffffd4b38314278 GIT binary patch literal 6148 zcmeHKF;2rk5S)cbSV}=k%KHL8I7OkL<^$ja8X_zq=-u(`Fmt;^u?!Lw1=^K%=WcJu zXHVh117Pd--8HZR(9wnXP?($6Qh`(;6-WhAfmGnA0DHEqTRLV;1yX@j;HZH94}~tQ zfum#lbuj4ouJwgb#&Nq#5KGK!;ONK|nmLu|REsNyIi2|ubv1BwbULi<%;&_;7B>`Y zyE9)}IjlNnOa)SbsRHLdU8(=y(0{o9Pf0mT1yX^3rGPCqcbhdoDSGSd - Returns user_id on successful authentication - """ - auth_header = request.headers.get("Authorization") - if not auth_header or not auth_header.startswith("Bearer "): - return None - - token = auth_header.replace("Bearer ", "", 1) - session = SessionToken.query.filter_by(token=token).first() - - if not session: - return None - - if session.expires_at < datetime.utcnow(): - db.session.delete(session) - db.session.commit() - return None - - - return session.user_id - -def hash_password(password: str) -> str: - return generate_password_hash(password) - -def verify_password(password: str, hashed: str) -> bool: - return check_password_hash(hashed, password) - - -# ------------------------ -# Auth API's -# ------------------------ - - - -# Login -@app.route("/api/login", methods=["POST"]) -def login(): - data = request.get_json(silent=True) - if not data: - return jsonify({"error": "Invalid JSON payload"}), 400 - - username = data.json.get("username") - password = data.json.get("password") - - if not username or not password: - return jsonify({"error": "Missing credentials"}), 400 - - user = User.query.filter_by(username=username).first() - - if not user: - return jsonify({"message": "No such user exists!"}), 200 - - if not verify_password(password, user.hash): - return jsonify({"message": "Incorrect Password!"}), 200 - - token = str(uuid.uuid4()) - - expires_at = datetime.utcnow() + timedelta(days=7) - session = SessionToken( - token=token, - user_id=user.id, - expires_at=expires_at - ) - - db.session.add(session) - db.session.commit() - return jsonify({"token": token}), 200 - - -# Registration -@app.route("/api/register", methods=["POST"]) -def createUser(): - data = request.get_json(silent=True) - if not data: - return jsonify({"error": "Invalid JSON payload"}), 400 - - username = data.json.get("username") - password = data.json.get("password") - - if not username or not password: - return jsonify({"error": "Username and password are required"}), 400 - - existing_user = User.query.filter_by(username=username).first() - if existing_user: - return jsonify({"error": "Username already taken"}), 409 - - user = User( - username=username, - hash=hash_password(password) - ) - - db.session.add(user) - db.session.commit() - - return jsonify({ - "message": "User created successfully", - "user_id": user.id - }), 201 - - -# Get a list of all existing locations -@app.route("/api/routes/locations", methods=["GET"]) -def get_all_tracked_locations(): - nodes = Node.query.all() - return jsonify({ - "locations": [ - { - "id": n.id, - "name": n.name, - "location": n.location, - "x": n.x, - "y": n.y - } - for n in nodes - ] - }), 200 - -# ------------------------ -# Routes Database (AUTH REQUIRED) -# ------------------------ - -@app.route("/api/routes/connections", methods=["POST", "PUT"]) -def create_or_update_connection(): - user_id = require_auth() - if not user_id: - return jsonify({"error": "Unauthorized"}), 401 - - return jsonify({"message": "connection saved"}), 200 - - -# Get a list of all existing connections -@app.route("/api/routes/connections", methods=["GET"]) -def view_all_connections(): - user_id = require_auth() - if not user_id: - return jsonify({"error": "Unauthorized"}), 401 - - links = NodeLink.query.all() - - return jsonify({ - "connections": [ - { - "id": link.id, - "from_node_id": link.from_node_id, - "from_node_name": link.from_node.name if link.from_node else None, - "to_node_id": link.to_node_id, - "to_node_name": link.to_node.name if link.to_node else None, - "time": float(link.time) - } - for link in links - ] - }), 200 - -# ----------------- -# Route calculation -# ----------------- - -def get_graph(weight_field): - """ - Lazy loads the graph from the DB only if it's not already in memory. - weight_field: 'time' or 'cost' - """ - global GRAPH_CACHE - - if weight_field in GRAPH_CACHE: - return GRAPH_CACHE[weight_field] - - print(f"Building {weight_field} graph from database...") # Debugging log - links = NodeLink.query.all() - - new_graph = {} - for link in links: - # We build the adjacency list: Node -> [(Neighbor, Weight)] - new_graph.setdefault(link.from_node_id, []).append( - (link.to_node_id, getattr(link, weight_field)) - ) - - GRAPH_CACHE[weight_field] = new_graph - - return new_graph - -@lru_cache(maxsize=512) # Cache results of route calculations for faster repeat queries -def dijkstra(start_id, end_id, weight_field): - """ - weight_field: "time" or "cost" - """ - graph = {} - - links = NodeLink.query.all() - for link in links: - graph.setdefault(link.from_node_id, []).append( - (link.to_node_id, getattr(link, weight_field)) - ) - - queue = [(Decimal(0), start_id, [])] - visited = set() - - while queue: - total, current, path = heapq.heappop(queue) - - if current in visited: - continue - visited.add(current) - - path = path + [current] - - if current == end_id: - return { - "path": path, - "total": float(total) - } - - for neighbor, weight in graph.get(current, []): - if neighbor not in visited: - heapq.heappush( - queue, - (total + Decimal(weight), neighbor, path) - ) - - return None - - -# calculate least cost and least time path between two locations -@app.route("/api/routes/calculate", methods=["POST", "PUT"]) -def calculate_route_cost(): - data = request.get_json(silent=True) - if not data: - return jsonify({"error": "Invalid JSON"}), 400 - - from_node_id = data.get("from_node_id") - to_node_id = data.get("to_node_id") - - if not from_node_id or not to_node_id: - return jsonify({"error": "from_node_id and to_node_id are required"}), 400 - - least_cost = dijkstra(from_node_id, to_node_id, "cost") - least_time = dijkstra(from_node_id, to_node_id, "time") - - return jsonify({ - "least_cost_path": least_cost, - "least_time_path": least_time - }), 200 - -# ------------------------ -# Tracking -# ------------------------ - -# Give details of any package if user has the token -@app.route("/api/tracking/", methods=["GET"]) -def public_package_tracking(package_token): - package = Package.query.filter_by(token=package_token).first() - - if not package: - return jsonify({"error": "Package not found"}), 404 - - # status parsing - if package.current_node_id is None: - status = "created" - last_location = None - elif package.current_node_id == package.destination_node_id: - status = "delivered" - last_location = package.destination_node.name if package.destination_node else None - else: - status = "in_transit" - last_location = package.current_node.name if package.current_node else None - - return jsonify({ - "package_token": package.token, - "status": status, - "last_location": last_location, - "created_at": package.created_at.isoformat() - }), 200 - - -# Give list of all packages sent by user -@app.route("/api/packages", methods=["GET"]) -def user_packages(): - user_id = require_auth() - if not user_id: - return jsonify({"error": "Unauthorized"}), 401 - - packages = Package.query.filter_by(user_id=user_id).all() - - return jsonify({ - "packages": [ - { - "id": p.id, - "token": p.token, - "status": ( - "created" if p.current_node_id is None - else "delivered" if p.current_node_id == p.destination_node_id - else "in_transit" - ), - "current_node": p.current_node.name if p.current_node else None, - "origin_node": p.origin_node.name if p.origin_node else None, - "destination_node": p.destination_node.name if p.destination_node else None, - "created_at": p.created_at.isoformat() - } - for p in packages - ] - }), 200 - -# ------------------------ -# Admin management -# ------------------------ - -# Allow admins to create new locations -@app.route("/api/routes/createNode", methods=["POST"]) -def create_node(): - user_id = require_auth() - if not user_id: - return jsonify({"error": "Unauthorized"}), 401 - - user = User.query.get(user_id) - if not user or user.access_level < 4: - return jsonify({"error": "Forbidden: Insufficient access rights"}), 403 - - data = request.get_json(silent=True) - if not data: - return jsonify({"error": "Invalid JSON"}), 400 - - name = data.get("name") - location = data.get("location") - # Get coordinates, default to 0.0 if not provided - x = float(data.get("x", 0.0) or 0.0) - y = float(data.get("y", 0.0) or 0.0) - - - if not name or not location: - return jsonify({"error": "Name and location are required"}), 400 - - new_node = Node(name=name, location=location, x=x, y=y) - db.session.add(new_node) - db.session.commit() - - return jsonify({ - "message": "Node created successfully", - "node": { - "id": new_node.id, - "name": new_node.name, - "location": new_node.location, - "x": new_node.x, - "y": new_node.y - } - }), 201 - -# Create a link between two nodes with time and cost weight fields -@app.route("/api/routes/createNodeLink", methods=["POST"]) -def create_node_link(): - user_id = require_auth() - if not user_id: - return jsonify({"error": "Unauthorized"}), 401 - - user = User.query.get(user_id) - if not user or user.access_level < 4: - return jsonify({"error": "Forbidden"}), 403 - - data = request.get_json(silent=True) - if not data: - return jsonify({"error": "Invalid JSON"}), 400 - - from_node_id = data.get("from_node_id") - to_node_id = data.get("to_node_id") - time_val = data.get("time") - cost_val = data.get("cost") - - if not all([from_node_id, to_node_id, time_val is not None, cost_val is not None]): - return jsonify({"error": "Missing required fields (from_node_id, to_node_id, time, cost)"}), 400 - - new_link = NodeLink( - from_node_id=from_node_id, - to_node_id=to_node_id, - time=time_val, - cost=cost_val - ) - - try: - db.session.add(new_link) - db.session.commit() - except Exception as e: - db.session.rollback() - return jsonify({"error": "Failed to create link. It might already exist."}), 409 - -# Invalidate the graph cache since the underlying data has changed - global GRAPH_CACHE - GRAPH_CACHE.clear() -# Wipe lru_cache of dijkstra since the graph has changed - dijkstra.cache_clear() - - return jsonify({"message": "Node link created successfully", "id": new_link.id}), 201 - - -# Allow users logged in that own to update packages -@app.route("/api/packages/update", methods=["POST"]) -def update_package_location(): - user_id = require_auth() - if not user_id: - return jsonify({"error": "Unauthorized"}), 401 - - data = request.get_json(silent=True) - if not data: - return jsonify({"error": "Invalid JSON"}), 400 - - token = data.get("token") - new_node_id = data.get("current_node_id") - - if not token or not new_node_id: - return jsonify({"error": "Missing data"}), 400 - - package = Package.query.filter_by(token=token).first() - if not package: - return jsonify({"error": "Package not found"}), 404 - - if package.user_id != user_id: - return jsonify({"error": "Forbidden"}), 403 - - last_event = PackageEvent.query.filter_by(package_id=package.id)\ - .order_by(PackageEvent.timestamp.desc()).first() - - if last_event: - prev_hash = last_event.current_hash - else: - # If no history exists, this is the "Genesis Block" - prev_hash = "GENESIS_BLOCK_HASH_0000000000000000" - - new_event = PackageEvent( - package_id=package.id, - node_id=new_node_id, - previous_hash=prev_hash, - timestamp=datetime.utcnow() - ) - - new_event.current_hash = new_event.calculate_hash() - - db.session.add(new_event) - package.current_node_id = new_node_id - - db.session.commit() - - return jsonify({ - "message": "Package location updated on blockchain", - "block_hash": new_event.current_hash, - "previous_hash": new_event.previous_hash - }), 200 - - -# Check integrity of the package's event blockchain -@app.route("/api/tracking//audit", methods=["GET"]) -def audit_package_chain(package_token): - package = Package.query.filter_by(token=package_token).first() - if not package: - return jsonify({"error": "Package not found"}), 404 - - events = PackageEvent.query.filter_by(package_id=package.id)\ - .order_by(PackageEvent.timestamp.asc()).all() - - chain_is_valid = True - errors = [] - - for i, event in enumerate(events): - recalculated_hash = event.calculate_hash() - if recalculated_hash != event.current_hash: - chain_is_valid = False - errors.append(f"Block {i} (ID {event.id}) has been tampered with! Data hash mismatch.") - - if i > 0: - previous_event = events[i-1] - if event.previous_hash != previous_event.current_hash: - chain_is_valid = False - errors.append(f"Block {i} (ID {event.id}) is broken! It does not link to Block {i-1}.") - - return jsonify({ - "valid": chain_is_valid, - "chain_length": len(events), - "errors": errors, - "history": [ - { - "node": e.node.name, - "timestamp": e.timestamp, - "hash": e.current_hash - } for e in events - ] - }) - -@app.route("/") -def serve_index(): - frontend_dir = os.path.abspath(os.path.join(os.path.dirname(__file__), "../frontend")) - return send_from_directory(frontend_dir, "index.html") - -if __name__ == "__main__": - app.run(host="0.0.0.0", port=80, debug=True) - - +from flask import Flask, request, jsonify, send_from_directory +from flask_cors import CORS +from datetime import datetime, timedelta +import uuid +from werkzeug.security import generate_password_hash, check_password_hash +from functools import lru_cache +import heapq +from decimal import Decimal + +from db import db, User, SessionToken, Node, Package, NodeLink, PackageEvent +import os + +app = Flask(__name__) +CORS(app) + + +# Attempt to read MySQL connection details from environment variables. If +# any of the required values are missing we fall back to a local +# SQLite database. This makes the backend easier to run in +# development environments (e.g. without Docker). To use MySQL set +# `MYSQL_USER`, `MYSQL_PASSWORD` and `MYSQL_DATABASE`. You can also +# override the hostname via `MYSQL_HOST` (defaults to "db" in the +# docker‑compose file). +DB_USER = os.getenv("MYSQL_USER") +DB_PASSWORD = os.getenv("MYSQL_PASSWORD") +DB_HOST = os.getenv("MYSQL_HOST", "db") +DB_NAME = os.getenv("MYSQL_DATABASE") + +if DB_USER and DB_PASSWORD and DB_NAME: + app.config["SQLALCHEMY_DATABASE_URI"] = f"mysql+pymysql://{DB_USER}:{DB_PASSWORD}@{DB_HOST}/{DB_NAME}" +else: + # Default to a local SQLite DB if MySQL settings are not provided + sqlite_path = os.path.join(os.path.dirname(__file__), "database.sqlite3") + app.config["SQLALCHEMY_DATABASE_URI"] = f"sqlite:///{sqlite_path}" + +db.init_app(app) + +with app.app_context(): + db.create_all() + +GRAPH_CACHE = {} + + +def require_auth(): + """ + Validate auth token from headers. + Expected header: Authorization: Bearer + Returns user_id on successful authentication + """ + auth_header = request.headers.get("Authorization") + if not auth_header or not auth_header.startswith("Bearer "): + return None + + token = auth_header.replace("Bearer ", "", 1) + session = SessionToken.query.filter_by(token=token).first() + + if not session: + return None + + if session.expires_at < datetime.utcnow(): + db.session.delete(session) + db.session.commit() + return None + + + return session.user_id + +def hash_password(password: str) -> str: + return generate_password_hash(password) + +def verify_password(password: str, hashed: str) -> bool: + return check_password_hash(hashed, password) + + +# ------------------------ +# Auth API's +# ------------------------ + + + +# Login +@app.route("/api/login", methods=["POST"]) +def login(): + data = request.get_json(silent=True) + if not data: + return jsonify({"error": "Invalid JSON payload"}), 400 + + username = data.json.get("username") + password = data.json.get("password") + + if not username or not password: + return jsonify({"error": "Missing credentials"}), 400 + + user = User.query.filter_by(username=username).first() + + if not user: + return jsonify({"message": "No such user exists!"}), 200 + + if not verify_password(password, user.hash): + return jsonify({"message": "Incorrect Password!"}), 200 + + token = str(uuid.uuid4()) + + expires_at = datetime.utcnow() + timedelta(days=7) + session = SessionToken( + token=token, + user_id=user.id, + expires_at=expires_at + ) + + db.session.add(session) + db.session.commit() + return jsonify({"token": token}), 200 + + +# Registration +@app.route("/api/register", methods=["POST"]) +def createUser(): + data = request.get_json(silent=True) + if not data: + return jsonify({"error": "Invalid JSON payload"}), 400 + + username = data.json.get("username") + password = data.json.get("password") + + if not username or not password: + return jsonify({"error": "Username and password are required"}), 400 + + existing_user = User.query.filter_by(username=username).first() + if existing_user: + return jsonify({"error": "Username already taken"}), 409 + + user = User( + username=username, + hash=hash_password(password) + ) + + db.session.add(user) + db.session.commit() + + return jsonify({ + "message": "User created successfully", + "user_id": user.id + }), 201 + + +# Get a list of all existing locations +@app.route("/api/routes/locations", methods=["GET"]) +def get_all_tracked_locations(): + nodes = Node.query.all() + return jsonify({ + "locations": [ + { + "id": n.id, + "name": n.name, + "location": n.location, + "x": n.x, + "y": n.y + } + for n in nodes + ] + }), 200 + +# ------------------------ +# Routes Database (AUTH REQUIRED) +# ------------------------ + +@app.route("/api/routes/connections", methods=["POST", "PUT"]) +def create_or_update_connection(): + user_id = require_auth() + if not user_id: + return jsonify({"error": "Unauthorized"}), 401 + + return jsonify({"message": "connection saved"}), 200 + + +# Get a list of all existing connections +@app.route("/api/routes/connections", methods=["GET"]) +def view_all_connections(): + user_id = require_auth() + if not user_id: + return jsonify({"error": "Unauthorized"}), 401 + + links = NodeLink.query.all() + + return jsonify({ + "connections": [ + { + "id": link.id, + "from_node_id": link.from_node_id, + "from_node_name": link.from_node.name if link.from_node else None, + "to_node_id": link.to_node_id, + "to_node_name": link.to_node.name if link.to_node else None, + "time": float(link.time) + } + for link in links + ] + }), 200 + +# ----------------- +# Route calculation +# ----------------- + +def get_graph(weight_field): + """ + Lazy loads the graph from the DB only if it's not already in memory. + weight_field: 'time' or 'cost' + """ + global GRAPH_CACHE + + if weight_field in GRAPH_CACHE: + return GRAPH_CACHE[weight_field] + + print(f"Building {weight_field} graph from database...") # Debugging log + links = NodeLink.query.all() + + new_graph = {} + for link in links: + # We build the adjacency list: Node -> [(Neighbor, Weight)] + new_graph.setdefault(link.from_node_id, []).append( + (link.to_node_id, getattr(link, weight_field)) + ) + + GRAPH_CACHE[weight_field] = new_graph + + return new_graph + +@lru_cache(maxsize=512) # Cache results of route calculations for faster repeat queries +def dijkstra(start_id, end_id, weight_field): + """ + weight_field: "time" or "cost" + """ + graph = {} + + links = NodeLink.query.all() + for link in links: + graph.setdefault(link.from_node_id, []).append( + (link.to_node_id, getattr(link, weight_field)) + ) + + queue = [(Decimal(0), start_id, [])] + visited = set() + + while queue: + total, current, path = heapq.heappop(queue) + + if current in visited: + continue + visited.add(current) + + path = path + [current] + + if current == end_id: + return { + "path": path, + "total": float(total) + } + + for neighbor, weight in graph.get(current, []): + if neighbor not in visited: + heapq.heappush( + queue, + (total + Decimal(weight), neighbor, path) + ) + + return None + + +# calculate least cost and least time path between two locations +@app.route("/api/routes/calculate", methods=["POST", "PUT"]) +def calculate_route_cost(): + data = request.get_json(silent=True) + if not data: + return jsonify({"error": "Invalid JSON"}), 400 + + from_node_id = data.get("from_node_id") + to_node_id = data.get("to_node_id") + + if not from_node_id or not to_node_id: + return jsonify({"error": "from_node_id and to_node_id are required"}), 400 + + least_cost = dijkstra(from_node_id, to_node_id, "cost") + least_time = dijkstra(from_node_id, to_node_id, "time") + + return jsonify({ + "least_cost_path": least_cost, + "least_time_path": least_time + }), 200 + +# ------------------------ +# Tracking +# ------------------------ + +# Give details of any package if user has the token +@app.route("/api/tracking/", methods=["GET"]) +def public_package_tracking(package_token): + package = Package.query.filter_by(token=package_token).first() + + if not package: + return jsonify({"error": "Package not found"}), 404 + + # status parsing + if package.current_node_id is None: + status = "created" + last_location = None + elif package.current_node_id == package.destination_node_id: + status = "delivered" + last_location = package.destination_node.name if package.destination_node else None + else: + status = "in_transit" + last_location = package.current_node.name if package.current_node else None + + return jsonify({ + "package_token": package.token, + "status": status, + "last_location": last_location, + "created_at": package.created_at.isoformat() + }), 200 + + +# Give list of all packages sent by user +@app.route("/api/packages", methods=["GET"]) +def user_packages(): + user_id = require_auth() + if not user_id: + return jsonify({"error": "Unauthorized"}), 401 + + packages = Package.query.filter_by(user_id=user_id).all() + + return jsonify({ + "packages": [ + { + "id": p.id, + "token": p.token, + "status": ( + "created" if p.current_node_id is None + else "delivered" if p.current_node_id == p.destination_node_id + else "in_transit" + ), + "current_node": p.current_node.name if p.current_node else None, + "origin_node": p.origin_node.name if p.origin_node else None, + "destination_node": p.destination_node.name if p.destination_node else None, + "created_at": p.created_at.isoformat() + } + for p in packages + ] + }), 200 + +# ------------------------ +# Admin management +# ------------------------ + +# Allow admins to create new locations +@app.route("/api/routes/createNode", methods=["POST"]) +def create_node(): + user_id = require_auth() + if not user_id: + return jsonify({"error": "Unauthorized"}), 401 + + user = User.query.get(user_id) + if not user or user.access_level < 4: + return jsonify({"error": "Forbidden: Insufficient access rights"}), 403 + + data = request.get_json(silent=True) + if not data: + return jsonify({"error": "Invalid JSON"}), 400 + + name = data.get("name") + location = data.get("location") + # Get coordinates, default to 0.0 if not provided + x = float(data.get("x", 0.0) or 0.0) + y = float(data.get("y", 0.0) or 0.0) + + + if not name or not location: + return jsonify({"error": "Name and location are required"}), 400 + + new_node = Node(name=name, location=location, x=x, y=y) + db.session.add(new_node) + db.session.commit() + + return jsonify({ + "message": "Node created successfully", + "node": { + "id": new_node.id, + "name": new_node.name, + "location": new_node.location, + "x": new_node.x, + "y": new_node.y + } + }), 201 + +# Create a link between two nodes with time and cost weight fields +@app.route("/api/routes/createNodeLink", methods=["POST"]) +def create_node_link(): + user_id = require_auth() + if not user_id: + return jsonify({"error": "Unauthorized"}), 401 + + user = User.query.get(user_id) + if not user or user.access_level < 4: + return jsonify({"error": "Forbidden"}), 403 + + data = request.get_json(silent=True) + if not data: + return jsonify({"error": "Invalid JSON"}), 400 + + from_node_id = data.get("from_node_id") + to_node_id = data.get("to_node_id") + time_val = data.get("time") + cost_val = data.get("cost") + + if not all([from_node_id, to_node_id, time_val is not None, cost_val is not None]): + return jsonify({"error": "Missing required fields (from_node_id, to_node_id, time, cost)"}), 400 + + new_link = NodeLink( + from_node_id=from_node_id, + to_node_id=to_node_id, + time=time_val, + cost=cost_val + ) + + try: + db.session.add(new_link) + db.session.commit() + except Exception as e: + db.session.rollback() + return jsonify({"error": "Failed to create link. It might already exist."}), 409 + +# Invalidate the graph cache since the underlying data has changed + global GRAPH_CACHE + GRAPH_CACHE.clear() +# Wipe lru_cache of dijkstra since the graph has changed + dijkstra.cache_clear() + + return jsonify({"message": "Node link created successfully", "id": new_link.id}), 201 + + +# Allow users logged in that own to update packages +@app.route("/api/packages/update", methods=["POST"]) +def update_package_location(): + user_id = require_auth() + if not user_id: + return jsonify({"error": "Unauthorized"}), 401 + + data = request.get_json(silent=True) + if not data: + return jsonify({"error": "Invalid JSON"}), 400 + + token = data.get("token") + new_node_id = data.get("current_node_id") + + if not token or not new_node_id: + return jsonify({"error": "Missing data"}), 400 + + package = Package.query.filter_by(token=token).first() + if not package: + return jsonify({"error": "Package not found"}), 404 + + if package.user_id != user_id: + return jsonify({"error": "Forbidden"}), 403 + + last_event = PackageEvent.query.filter_by(package_id=package.id)\ + .order_by(PackageEvent.timestamp.desc()).first() + + if last_event: + prev_hash = last_event.current_hash + else: + # If no history exists, this is the "Genesis Block" + prev_hash = "GENESIS_BLOCK_HASH_0000000000000000" + + new_event = PackageEvent( + package_id=package.id, + node_id=new_node_id, + previous_hash=prev_hash, + timestamp=datetime.utcnow() + ) + + new_event.current_hash = new_event.calculate_hash() + + db.session.add(new_event) + package.current_node_id = new_node_id + + db.session.commit() + + return jsonify({ + "message": "Package location updated on blockchain", + "block_hash": new_event.current_hash, + "previous_hash": new_event.previous_hash + }), 200 + + +# Check integrity of the package's event blockchain +@app.route("/api/tracking//audit", methods=["GET"]) +def audit_package_chain(package_token): + package = Package.query.filter_by(token=package_token).first() + if not package: + return jsonify({"error": "Package not found"}), 404 + + events = PackageEvent.query.filter_by(package_id=package.id)\ + .order_by(PackageEvent.timestamp.asc()).all() + + chain_is_valid = True + errors = [] + + for i, event in enumerate(events): + recalculated_hash = event.calculate_hash() + if recalculated_hash != event.current_hash: + chain_is_valid = False + errors.append(f"Block {i} (ID {event.id}) has been tampered with! Data hash mismatch.") + + if i > 0: + previous_event = events[i-1] + if event.previous_hash != previous_event.current_hash: + chain_is_valid = False + errors.append(f"Block {i} (ID {event.id}) is broken! It does not link to Block {i-1}.") + + return jsonify({ + "valid": chain_is_valid, + "chain_length": len(events), + "errors": errors, + "history": [ + { + "node": e.node.name, + "timestamp": e.timestamp, + "hash": e.current_hash + } for e in events + ] + }) + +@app.route("/") +def serve_index(): + frontend_dir = os.path.abspath(os.path.join(os.path.dirname(__file__), "../frontend")) + return send_from_directory(frontend_dir, "index.html") + +if __name__ == "__main__": + app.run(host="0.0.0.0", port=80, debug=True) + + diff --git a/backend_README.md b/backend_README.md new file mode 100644 index 0000000..444a14e --- /dev/null +++ b/backend_README.md @@ -0,0 +1,28 @@ +# VAT-Gate + +A web based tool too allow senders to easily compare delivery routes based on cost and time parameters. +Front end will be basically let user choose to and from places then calulate the best route showing him time and route also mode of transport and tracking options + +## How To Run? + +### This project uses docker to run + +- Step 1: +Install docker on your deployment location. For installation, refer to [Docker Desktop](https://docs.docker.com/get-started/get-docker/) or [Docker Engine](https://docs.docker.com/engine/install/) +- Step 2: +Download the Files under VAT-GATE/backend/Docker +- Step 3: + - Open a terminal in the project `root` directory + - run `cd ./backend/Docker` + - run `ssh-keygen -t ed25519 -C "docker-deploy-key" -f ./deploy_key -q` + - Add deploy_key.pub to the [deploy keys in VAT-GATE](https://github.com/someRandomDude-a/VAT-Gate/settings/keys) + +- Step 4: +Run docker-compose.yml + +> [!NOTE] +> To change the branch being pulled, edit [Line 17, `BRANCH: your-branch-name`](./backend/Docker/docker-compose.yml#L17) + +- Step 5: +Open a web browser and navigate to `localhost:8080` for the website itself.
+Navigate to `localhost:8081` to access PHPmyadmin portal diff --git a/frontend/.env b/frontend/.env new file mode 100644 index 0000000..22f41ce --- /dev/null +++ b/frontend/.env @@ -0,0 +1,7 @@ +# Base URL for API calls. Point this to the hostname/port where the +# backend service is running. During local development using Docker +# Compose this will typically be `http://localhost:8080` because the +# Flask service exposes port 80 inside its container and the compose +# file maps it to port 8080 on the host. + +VITE_API_BASE_URL=http://localhost:8080 \ No newline at end of file diff --git a/frontend/.gitignore b/frontend/.gitignore new file mode 100644 index 0000000..a547bf3 --- /dev/null +++ b/frontend/.gitignore @@ -0,0 +1,24 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/frontend/README.md b/frontend/README.md new file mode 100644 index 0000000..645a758 --- /dev/null +++ b/frontend/README.md @@ -0,0 +1,19 @@ +# VATGuard Hub + +This is the VATGuard Hub web app. + +## Run locally + +1. Install dependencies: + + - npm install + +2. Start the dev server: + + - npm run dev + +## Build + +- npm run build +- npm run preview + diff --git a/frontend/bun.lockb b/frontend/bun.lockb new file mode 100644 index 0000000000000000000000000000000000000000..5d9d33a3bf4f45fa099e2aa3014149e034981149 GIT binary patch literal 245395 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 aG(|+$-_n1#f877;&wmep - - -

VAT GATE

-

Hello World

- - \ No newline at end of file + + + + + + + VATGuard + + + + + + + + + + +
+ + + diff --git a/frontend/package-lock.json b/frontend/package-lock.json new file mode 100644 index 0000000..405367e --- /dev/null +++ b/frontend/package-lock.json @@ -0,0 +1,7785 @@ +{ + "name": "vatguard-hub", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "vatguard-hub", + "version": "0.0.0", + "dependencies": { + "@hookform/resolvers": "^3.10.0", + "@radix-ui/react-accordion": "^1.2.11", + "@radix-ui/react-alert-dialog": "^1.1.14", + "@radix-ui/react-aspect-ratio": "^1.1.7", + "@radix-ui/react-avatar": "^1.1.10", + "@radix-ui/react-checkbox": "^1.3.2", + "@radix-ui/react-collapsible": "^1.1.11", + "@radix-ui/react-context-menu": "^2.2.15", + "@radix-ui/react-dialog": "^1.1.14", + "@radix-ui/react-dropdown-menu": "^2.1.15", + "@radix-ui/react-hover-card": "^1.1.14", + "@radix-ui/react-label": "^2.1.7", + "@radix-ui/react-menubar": "^1.1.15", + "@radix-ui/react-navigation-menu": "^1.2.13", + "@radix-ui/react-popover": "^1.1.14", + "@radix-ui/react-progress": "^1.1.7", + "@radix-ui/react-radio-group": "^1.3.7", + "@radix-ui/react-scroll-area": "^1.2.9", + "@radix-ui/react-select": "^2.2.5", + "@radix-ui/react-separator": "^1.1.7", + "@radix-ui/react-slider": "^1.3.5", + "@radix-ui/react-slot": "^1.2.3", + "@radix-ui/react-switch": "^1.2.5", + "@radix-ui/react-tabs": "^1.1.12", + "@radix-ui/react-toast": "^1.2.14", + "@radix-ui/react-toggle": "^1.1.9", + "@radix-ui/react-toggle-group": "^1.1.10", + "@radix-ui/react-tooltip": "^1.2.7", + "@tanstack/react-query": "^5.83.0", + "class-variance-authority": "^0.7.1", + "clsx": "^2.1.1", + "cmdk": "^1.1.1", + "date-fns": "^3.6.0", + "embla-carousel-react": "^8.6.0", + "input-otp": "^1.4.2", + "lucide-react": "^0.462.0", + "next-themes": "^0.3.0", + "react": "^18.3.1", + "react-day-picker": "^8.10.1", + "react-dom": "^18.3.1", + "react-hook-form": "^7.61.1", + "react-resizable-panels": "^2.1.9", + "react-router-dom": "^6.30.1", + "recharts": "^2.15.4", + "sonner": "^1.7.4", + "tailwind-merge": "^2.6.0", + "tailwindcss-animate": "^1.0.7", + "vaul": "^0.9.9", + "zod": "^3.25.76" + }, + "devDependencies": { + "@eslint/js": "^9.32.0", + "@tailwindcss/typography": "^0.5.16", + "@testing-library/jest-dom": "^6.6.0", + "@testing-library/react": "^16.0.0", + "@types/node": "^22.16.5", + "@types/react": "^18.3.23", + "@types/react-dom": "^18.3.7", + "@vitejs/plugin-react-swc": "^3.11.0", + "autoprefixer": "^10.4.21", + "eslint": "^9.32.0", + "eslint-plugin-react-hooks": "^5.2.0", + "eslint-plugin-react-refresh": "^0.4.20", + "globals": "^15.15.0", + "jsdom": "^20.0.3", + "postcss": "^8.5.6", + "tailwindcss": "^3.4.17", + "typescript": "^5.8.3", + "typescript-eslint": "^8.38.0", + "vite": "^5.4.19", + "vitest": "^3.2.4" + } + }, + "node_modules/@adobe/css-tools": { + "version": "4.4.4", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.4.4.tgz", + "integrity": "sha512-Elp+iwUx5rN5+Y8xLt5/GRoG20WGoDCQ/1Fb+1LiGtvwbDavuSk0jhD/eZdckHAuzcDzccnkv+rEjyWfRx18gg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz", + "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.28.5", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.28.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", + "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.28.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.6.tgz", + "integrity": "sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.9.1.tgz", + "integrity": "sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.4.3" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", + "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.1.tgz", + "integrity": "sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/object-schema": "^2.1.7", + "debug": "^4.3.1", + "minimatch": "^3.1.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/config-helpers": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz", + "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.17.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz", + "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@types/json-schema": "^7.0.15" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.3.tgz", + "integrity": "sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.1", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "9.39.3", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.3.tgz", + "integrity": "sha512-1B1VkCq6FuUNlQvlBYb+1jDu/gV297TIs/OeiaSR9l1H27SVW55ONE1e1Vp16NqP683+xEGzxYtv4XCiDPaQiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz", + "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", + "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/core": "^0.17.0", + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@floating-ui/core": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.7.4.tgz", + "integrity": "sha512-C3HlIdsBxszvm5McXlB8PeOEWfBhcGBTZGkGlWc2U0KFY5IwG5OQEuQ8rq52DZmcHDlPLd+YFBK+cZcytwIFWg==", + "license": "MIT", + "dependencies": { + "@floating-ui/utils": "^0.2.10" + } + }, + "node_modules/@floating-ui/dom": { + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.7.5.tgz", + "integrity": "sha512-N0bD2kIPInNHUHehXhMke1rBGs1dwqvC9O9KYMyyjK7iXt7GAhnro7UlcuYcGdS/yYOlq0MAVgrow8IbWJwyqg==", + "license": "MIT", + "dependencies": { + "@floating-ui/core": "^1.7.4", + "@floating-ui/utils": "^0.2.10" + } + }, + "node_modules/@floating-ui/react-dom": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.1.7.tgz", + "integrity": "sha512-0tLRojf/1Go2JgEVm+3Frg9A3IW8bJgKgdO0BN5RkF//ufuz2joZM63Npau2ff3J6lUVYgDSNzNkR+aH3IVfjg==", + "license": "MIT", + "dependencies": { + "@floating-ui/dom": "^1.7.5" + }, + "peerDependencies": { + "react": ">=16.8.0", + "react-dom": ">=16.8.0" + } + }, + "node_modules/@floating-ui/utils": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.10.tgz", + "integrity": "sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==", + "license": "MIT" + }, + "node_modules/@hookform/resolvers": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-3.10.0.tgz", + "integrity": "sha512-79Dv+3mDF7i+2ajj7SkypSKHhl1cbln1OGavqrsF7p6mbUv11xpqpacPsGDCTRvCSjEEIez2ef1NveSVL3b0Ag==", + "license": "MIT", + "peerDependencies": { + "react-hook-form": "^7.0.0" + } + }, + "node_modules/@humanfs/core": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.7", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.7.tgz", + "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.4.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/retry": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@radix-ui/number": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.1.tgz", + "integrity": "sha512-MkKCwxlXTgz6CFoJx3pCwn07GKp36+aZyu/u2Ln2VrA5DcdyCZkASEDBTd8x5whTQQL5CiYf4prXKLcgQdv29g==", + "license": "MIT" + }, + "node_modules/@radix-ui/primitive": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.3.tgz", + "integrity": "sha512-JTF99U/6XIjCBo0wqkU5sK10glYe27MRRsfwoiq5zzOEZLHU3A3KCMa5X/azekYRCJ0HlwI0crAXS/5dEHTzDg==", + "license": "MIT" + }, + "node_modules/@radix-ui/react-accordion": { + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@radix-ui/react-accordion/-/react-accordion-1.2.12.tgz", + "integrity": "sha512-T4nygeh9YE9dLRPhAHSeOZi7HBXo+0kYIPJXayZfvWOWA0+n3dESrZbjfDPUABkUNym6Hd+f2IR113To8D2GPA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collapsible": "1.1.12", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-alert-dialog": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-alert-dialog/-/react-alert-dialog-1.1.15.tgz", + "integrity": "sha512-oTVLkEw5GpdRe29BqJ0LSDFWI3qu0vR1M0mUkOQWDIUnY/QIkLpgDMWuKxP94c2NAC2LGcgVhG1ImF3jkZ5wXw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dialog": "1.1.15", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-alert-dialog/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-arrow": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-arrow/-/react-arrow-1.1.7.tgz", + "integrity": "sha512-F+M1tLhO+mlQaOWspE8Wstg+z6PwxwRd8oQ8IXceWz92kfAmalTRf0EjrouQeo7QssEPfCn05B4Ihs1K9WQ/7w==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-aspect-ratio": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-aspect-ratio/-/react-aspect-ratio-1.1.8.tgz", + "integrity": "sha512-5nZrJTF7gH+e0nZS7/QxFz6tJV4VimhQb1avEgtsJxvvIp5JilL+c58HICsKzPxghdwaDt48hEfPM1au4zGy+w==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-aspect-ratio/node_modules/@radix-ui/react-primitive": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.4.tgz", + "integrity": "sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-avatar/-/react-avatar-1.1.11.tgz", + "integrity": "sha512-0Qk603AHGV28BOBO34p7IgD5m+V5Sg/YovfayABkoDDBM5d3NCx0Mp4gGrjzLGes1jV5eNOE1r3itqOR33VC6Q==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-context": "1.1.3", + "@radix-ui/react-primitive": "2.1.4", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-is-hydrated": "0.1.0", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-context": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.3.tgz", + "integrity": "sha512-ieIFACdMpYfMEjF0rEf5KLvfVyIkOz6PDGyNnP+u+4xQ6jny3VCgA4OgXOwNx2aUkxn8zx9fiVcM8CfFYv9Lxw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-avatar/node_modules/@radix-ui/react-primitive": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.4.tgz", + "integrity": "sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-checkbox": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-checkbox/-/react-checkbox-1.3.3.tgz", + "integrity": "sha512-wBbpv+NQftHDdG86Qc0pIyXk5IR3tM8Vd0nWLKDcX8nNn4nXFOFwsKuqw2okA/1D/mpaAkmuyndrPJTYDNZtFw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-use-size": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collapsible": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/@radix-ui/react-collapsible/-/react-collapsible-1.1.12.tgz", + "integrity": "sha512-Uu+mSh4agx2ib1uIGPP4/CKNULyajb3p92LsVXmH2EHVMTfZWpll88XJ0j4W0z3f8NK1eYl1+Mf/szHPmcHzyA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-collection/-/react-collection-1.1.7.tgz", + "integrity": "sha512-Fh9rGN0MoI4ZFUNyfFVNU4y9LUz93u9/0K+yLgA2bwRojxM8JU1DyvvMBabnZPBgMWREAJvU2jjVzq+LrFUglw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-collection/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-compose-refs": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.2.tgz", + "integrity": "sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz", + "integrity": "sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-context-menu": { + "version": "2.2.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context-menu/-/react-context-menu-2.2.16.tgz", + "integrity": "sha512-O8morBEW+HsVG28gYDZPTrT9UUovQUlJue5YO836tiTJhuIWBm/zQHc7j388sHWtdH/xUZurK9olD2+pcqx5ww==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-menu": "2.1.16", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.1.15.tgz", + "integrity": "sha512-TCglVRtzlffRNxRMEyR36DGBLJpeusFcgMVD9PZEzAKnUs1lKCgX5u9BmC2Yg+LL9MgZDugFFs1Vl+Jp4t/PGw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-direction": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-direction/-/react-direction-1.1.1.tgz", + "integrity": "sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dismissable-layer": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.11.tgz", + "integrity": "sha512-Nqcp+t5cTB8BinFkZgXiMJniQH0PsUt2k51FUhbdfeKvc4ACcG2uQniY/8+h1Yv6Kza4Q7lD7PQV0z0oicE0Mg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-escape-keydown": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-dropdown-menu": { + "version": "2.1.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-dropdown-menu/-/react-dropdown-menu-2.1.16.tgz", + "integrity": "sha512-1PLGQEynI/3OX/ftV54COn+3Sud/Mn8vALg2rWnBLnRaGtJDduNW/22XjlGgPdpcIbiQxjKtb7BkcjP00nqfJw==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-menu": "2.1.16", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-guards": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.3.tgz", + "integrity": "sha512-0rFg/Rj2Q62NCm62jZw0QX7a3sz6QCQU0LpZdNrJX8byRGaGVTqbrW9jAoIAHyMQqsNpeZ81YgSizOt5WXq0Pw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-focus-scope": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.7.tgz", + "integrity": "sha512-t2ODlkXBQyn7jkl6TNaw/MtVEVvIGelJDCG41Okq/KwUsJBwQ4XVZsHAVUkK4mBv3ewiAS3PGuUWuY2BoK4ZUw==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-hover-card": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-hover-card/-/react-hover-card-1.1.15.tgz", + "integrity": "sha512-qgTkjNT1CfKMoP0rcasmlH2r1DAiYicWsDsufxl940sT2wHNEWWv6FMWIQXWhVdmC1d/HYfbhQx60KYyAtKxjg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-id": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.1.tgz", + "integrity": "sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-label": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-label/-/react-label-2.1.8.tgz", + "integrity": "sha512-FmXs37I6hSBVDlO4y764TNz1rLgKwjJMQ0EGte6F3Cb3f4bIuHB/iLa/8I9VKkmOy+gNHq8rql3j686ACVV21A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-label/node_modules/@radix-ui/react-primitive": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.4.tgz", + "integrity": "sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menu": { + "version": "2.1.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-menu/-/react-menu-2.1.16.tgz", + "integrity": "sha512-72F2T+PLlphrqLcAotYPp0uJMr5SjP5SL01wfEspJbru5Zs5vQaSHb4VB3ZMJPimgHHCHG7gMOeOB9H3Hdmtxg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-menubar": { + "version": "1.1.16", + "resolved": "https://registry.npmjs.org/@radix-ui/react-menubar/-/react-menubar-1.1.16.tgz", + "integrity": "sha512-EB1FktTz5xRRi2Er974AUQZWg2yVBb1yjip38/lgwtCVRd3a+maUoGHN/xs9Yv8SY8QwbSEb+YrxGadVWbEutA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-menu": "2.1.16", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-navigation-menu": { + "version": "1.2.14", + "resolved": "https://registry.npmjs.org/@radix-ui/react-navigation-menu/-/react-navigation-menu-1.2.14.tgz", + "integrity": "sha512-YB9mTFQvCOAQMHU+C/jVl96WmuWeltyUEpRJJky51huhds5W2FQr1J8D/16sQlf0ozxkPK8uF3niQMdUwZPv5w==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.1.15.tgz", + "integrity": "sha512-kr0X2+6Yy/vJzLYJUPCZEc8SfQcf+1COFoAqauJm74umQhta9M7lNJHP7QQS3vkvcGLQUbWpMzwrXYwrYztHKA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-popper": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-popper/-/react-popper-1.2.8.tgz", + "integrity": "sha512-0NJQ4LFFUuWkE7Oxf0htBKS6zLkkjBH+hM1uk7Ng705ReR8m/uelduy1DBo0PyBXPKVnBA6YBlU94MBGXrSBCw==", + "license": "MIT", + "dependencies": { + "@floating-ui/react-dom": "^2.0.0", + "@radix-ui/react-arrow": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-rect": "1.1.1", + "@radix-ui/react-use-size": "1.1.1", + "@radix-ui/rect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-portal": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.9.tgz", + "integrity": "sha512-bpIxvq03if6UNwXZ+HTK71JLh4APvnXntDc6XOX8UVq4XQOVl7lwok0AvIl+b8zgCw3fSaVTZMpAPPagXbKmHQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-presence": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.5.tgz", + "integrity": "sha512-/jfEwNDdQVBCNvjkGit4h6pMOzq8bHkopq458dPt2lMjx+eBQUohZNG9A7DtO/O5ukSbxuaNGXMjHicgwy6rQQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-primitive": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz", + "integrity": "sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-primitive/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-progress/-/react-progress-1.1.8.tgz", + "integrity": "sha512-+gISHcSPUJ7ktBy9RnTqbdKW78bcGke3t6taawyZ71pio1JewwGSJizycs7rLhGTvMJYCQB1DBK4KQsxs7U8dA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-context": "1.1.3", + "@radix-ui/react-primitive": "2.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress/node_modules/@radix-ui/react-context": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.3.tgz", + "integrity": "sha512-ieIFACdMpYfMEjF0rEf5KLvfVyIkOz6PDGyNnP+u+4xQ6jny3VCgA4OgXOwNx2aUkxn8zx9fiVcM8CfFYv9Lxw==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-progress/node_modules/@radix-ui/react-primitive": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.4.tgz", + "integrity": "sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-radio-group": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-radio-group/-/react-radio-group-1.3.8.tgz", + "integrity": "sha512-VBKYIYImA5zsxACdisNQ3BjCBfmbGH3kQlnFVqlWU4tXwjy7cGX8ta80BcrO+WJXIn5iBylEH3K6ZTlee//lgQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-use-size": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-roving-focus": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-roving-focus/-/react-roving-focus-1.1.11.tgz", + "integrity": "sha512-7A6S9jSgm/S+7MdtNDSb+IU859vQqJ/QAtcYQcfFC6W8RS4IxIZDldLR0xqCFZ6DCyrQLjLPsxtTNch5jVA4lA==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-scroll-area": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-scroll-area/-/react-scroll-area-1.2.10.tgz", + "integrity": "sha512-tAXIa1g3sM5CGpVT0uIbUx/U3Gs5N8T52IICuCtObaos1S8fzsrPXG5WObkQN3S6NVl6wKgPhAIiBGbWnvc97A==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select": { + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-select/-/react-select-2.2.6.tgz", + "integrity": "sha512-I30RydO+bnn2PQztvo25tswPH+wFBjehVGtmagkU78yMdwTwVf12wnAOF+AeP8S2N8xD+5UPbGhkUfPyvT+mwQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-focus-guards": "1.1.3", + "@radix-ui/react-focus-scope": "1.1.7", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3", + "aria-hidden": "^1.2.4", + "react-remove-scroll": "^2.6.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-separator": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-separator/-/react-separator-1.1.8.tgz", + "integrity": "sha512-sDvqVY4itsKwwSMEe0jtKgfTh+72Sy3gPmQpjqcQneqQ4PFmr/1I0YA+2/puilhggCe2gJcx5EBAYFkWkdpa5g==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-separator/node_modules/@radix-ui/react-primitive": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.1.4.tgz", + "integrity": "sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-slot": "1.2.4" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slider": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slider/-/react-slider-1.3.6.tgz", + "integrity": "sha512-JPYb1GuM1bxfjMRlNLE+BcmBC8onfCi60Blk7OBqi2MLTFdS+8401U4uFjnwkOr49BLmXxLC6JHkvAsx5OJvHw==", + "license": "MIT", + "dependencies": { + "@radix-ui/number": "1.1.1", + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-use-size": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-slot": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.4.tgz", + "integrity": "sha512-Jl+bCv8HxKnlTLVrcDE8zTMJ09R9/ukw4qBs/oZClOfoQk/cOTbDn+NceXfV7j09YPVQUryJPHurafcSg6EVKA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-switch": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@radix-ui/react-switch/-/react-switch-1.2.6.tgz", + "integrity": "sha512-bByzr1+ep1zk4VubeEVViV592vu2lHE2BZY5OnzehZqOOgogN80+mNtCqPkhn2gklJqOpxWgPoYTSnhBCqpOXQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-previous": "1.1.1", + "@radix-ui/react-use-size": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tabs": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/@radix-ui/react-tabs/-/react-tabs-1.1.13.tgz", + "integrity": "sha512-7xdcatg7/U+7+Udyoj2zodtI9H/IIopqo+YOIcZOq1nJwXWBZ9p8xiu5llXlekDbZkca79a/fozEYQXIA4sW6A==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toast": { + "version": "1.2.15", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toast/-/react-toast-1.2.15.tgz", + "integrity": "sha512-3OSz3TacUWy4WtOXV38DggwxoqJK4+eDkNMl5Z/MJZaoUPaP4/9lf81xXMe1I2ReTAptverZUpbPY4wWwWyL5g==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-collection": "1.1.7", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-callback-ref": "1.1.1", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-use-layout-effect": "1.1.1", + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toggle/-/react-toggle-1.1.10.tgz", + "integrity": "sha512-lS1odchhFTeZv3xwHH31YPObmJn8gOg7Lq12inrr0+BH/l3Tsq32VfjqH1oh80ARM3mlkfMic15n0kg4sD1poQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-toggle-group": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/@radix-ui/react-toggle-group/-/react-toggle-group-1.1.11.tgz", + "integrity": "sha512-5umnS0T8JQzQT6HbPyO7Hh9dgd82NmS36DQr+X/YJ9ctFNCiiQd6IJAYYZ33LUwm8M+taCz5t2ui29fHZc4Y6Q==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-direction": "1.1.1", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-roving-focus": "1.1.11", + "@radix-ui/react-toggle": "1.1.10", + "@radix-ui/react-use-controllable-state": "1.2.2" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tooltip": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@radix-ui/react-tooltip/-/react-tooltip-1.2.8.tgz", + "integrity": "sha512-tY7sVt1yL9ozIxvmbtN5qtmH2krXcBCfjEiCgKGLqunJHvgvZG2Pcl2oQ3kbcZARb1BGEHdkLzcYGO8ynVlieg==", + "license": "MIT", + "dependencies": { + "@radix-ui/primitive": "1.1.3", + "@radix-ui/react-compose-refs": "1.1.2", + "@radix-ui/react-context": "1.1.2", + "@radix-ui/react-dismissable-layer": "1.1.11", + "@radix-ui/react-id": "1.1.1", + "@radix-ui/react-popper": "1.2.8", + "@radix-ui/react-portal": "1.1.9", + "@radix-ui/react-presence": "1.1.5", + "@radix-ui/react-primitive": "2.1.3", + "@radix-ui/react-slot": "1.2.3", + "@radix-ui/react-use-controllable-state": "1.2.2", + "@radix-ui/react-visually-hidden": "1.2.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-slot": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.2.3.tgz", + "integrity": "sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "1.1.2" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-callback-ref": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.1.tgz", + "integrity": "sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-controllable-state": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.2.2.tgz", + "integrity": "sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-effect-event": "0.0.2", + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-effect-event": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-effect-event/-/react-use-effect-event-0.0.2.tgz", + "integrity": "sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-escape-keydown": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.1.tgz", + "integrity": "sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-callback-ref": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-is-hydrated": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-is-hydrated/-/react-use-is-hydrated-0.1.0.tgz", + "integrity": "sha512-U+UORVEq+cTnRIaostJv9AGdV3G6Y+zbVd+12e18jQ5A3c0xL03IhnHuiU4UV69wolOQp5GfR58NW/EgdQhwOA==", + "license": "MIT", + "dependencies": { + "use-sync-external-store": "^1.5.0" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-layout-effect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.1.tgz", + "integrity": "sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-previous": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-previous/-/react-use-previous-1.1.1.tgz", + "integrity": "sha512-2dHfToCj/pzca2Ck724OZ5L0EVrr3eHRNsG/b3xQJLA2hZpVCS99bLAX+hm1IHXDEnzU6by5z/5MIY794/a8NQ==", + "license": "MIT", + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-rect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-rect/-/react-use-rect-1.1.1.tgz", + "integrity": "sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==", + "license": "MIT", + "dependencies": { + "@radix-ui/rect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-use-size": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/react-use-size/-/react-use-size-1.1.1.tgz", + "integrity": "sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-use-layout-effect": "1.1.1" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@radix-ui/react-visually-hidden": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.2.3.tgz", + "integrity": "sha512-pzJq12tEaaIhqjbzpCuv/OypJY/BPavOofm+dbab+MHLajy277+1lLm6JFcGgF5eskJ6mquGirhXY2GD/8u8Ug==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-primitive": "2.1.3" + }, + "peerDependencies": { + "@types/react": "*", + "@types/react-dom": "*", + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@radix-ui/rect": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/rect/-/rect-1.1.1.tgz", + "integrity": "sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==", + "license": "MIT" + }, + "node_modules/@remix-run/router": { + "version": "1.23.2", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.23.2.tgz", + "integrity": "sha512-Ic6m2U/rMjTkhERIa/0ZtXJP17QUi2CbWE7cqx4J58M8aA3QTfW+2UlQ4psvTX9IO1RfNVhK3pcpdjej7L+t2w==", + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.27.tgz", + "integrity": "sha512-+d0F4MKMCbeVUJwG96uQ4SgAznZNSq93I3V+9NHA4OpvqG8mRCpGdKmK8l/dl02h2CCDHwW2FqilnTyDcAnqjA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.58.0.tgz", + "integrity": "sha512-mr0tmS/4FoVk1cnaeN244A/wjvGDNItZKR8hRhnmCzygyRXYtKF5jVDSIILR1U97CTzAYmbgIj/Dukg62ggG5w==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.58.0.tgz", + "integrity": "sha512-+s++dbp+/RTte62mQD9wLSbiMTV+xr/PeRJEc/sFZFSBRlHPNPVaf5FXlzAL77Mr8FtSfQqCN+I598M8U41ccQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.58.0.tgz", + "integrity": "sha512-MFWBwTcYs0jZbINQBXHfSrpSQJq3IUOakcKPzfeSznONop14Pxuqa0Kg19GD0rNBMPQI2tFtu3UzapZpH0Uc1Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.58.0.tgz", + "integrity": "sha512-yiKJY7pj9c9JwzuKYLFaDZw5gma3fI9bkPEIyofvVfsPqjCWPglSHdpdwXpKGvDeYDms3Qal8qGMEHZ1M/4Udg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.58.0.tgz", + "integrity": "sha512-x97kCoBh5MOevpn/CNK9W1x8BEzO238541BGWBc315uOlN0AD/ifZ1msg+ZQB05Ux+VF6EcYqpiagfLJ8U3LvQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.58.0.tgz", + "integrity": "sha512-Aa8jPoZ6IQAG2eIrcXPpjRcMjROMFxCt1UYPZZtCxRV68WkuSigYtQ/7Zwrcr2IvtNJo7T2JfDXyMLxq5L4Jlg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.58.0.tgz", + "integrity": "sha512-Ob8YgT5kD/lSIYW2Rcngs5kNB/44Q2RzBSPz9brf2WEtcGR7/f/E9HeHn1wYaAwKBni+bdXEwgHvUd0x12lQSA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.58.0.tgz", + "integrity": "sha512-K+RI5oP1ceqoadvNt1FecL17Qtw/n9BgRSzxif3rTL2QlIu88ccvY+Y9nnHe/cmT5zbH9+bpiJuG1mGHRVwF4Q==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.58.0.tgz", + "integrity": "sha512-T+17JAsCKUjmbopcKepJjHWHXSjeW7O5PL7lEFaeQmiVyw4kkc5/lyYKzrv6ElWRX/MrEWfPiJWqbTvfIvjM1Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.58.0.tgz", + "integrity": "sha512-cCePktb9+6R9itIJdeCFF9txPU7pQeEHB5AbHu/MKsfH/k70ZtOeq1k4YAtBv9Z7mmKI5/wOLYjQ+B9QdxR6LA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-gnu": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.58.0.tgz", + "integrity": "sha512-iekUaLkfliAsDl4/xSdoCJ1gnnIXvoNz85C8U8+ZxknM5pBStfZjeXgB8lXobDQvvPRCN8FPmmuTtH+z95HTmg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-musl": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.58.0.tgz", + "integrity": "sha512-68ofRgJNl/jYJbxFjCKE7IwhbfxOl1muPN4KbIqAIe32lm22KmU7E8OPvyy68HTNkI2iV/c8y2kSPSm2mW/Q9Q==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.58.0.tgz", + "integrity": "sha512-dpz8vT0i+JqUKuSNPCP5SYyIV2Lh0sNL1+FhM7eLC457d5B9/BC3kDPp5BBftMmTNsBarcPcoz5UGSsnCiw4XQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-musl": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.58.0.tgz", + "integrity": "sha512-4gdkkf9UJ7tafnweBCR/mk4jf3Jfl0cKX9Np80t5i78kjIH0ZdezUv/JDI2VtruE5lunfACqftJ8dIMGN4oHew==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.58.0.tgz", + "integrity": "sha512-YFS4vPnOkDTD/JriUeeZurFYoJhPf9GQQEF/v4lltp3mVcBmnsAdjEWhr2cjUCZzZNzxCG0HZOvJU44UGHSdzw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.58.0.tgz", + "integrity": "sha512-x2xgZlFne+QVNKV8b4wwaCS8pwq3y14zedZ5DqLzjdRITvreBk//4Knbcvm7+lWmms9V9qFp60MtUd0/t/PXPw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.58.0.tgz", + "integrity": "sha512-jIhrujyn4UnWF8S+DHSkAkDEO3hLX0cjzxJZPLF80xFyzyUIYgSMRcYQ3+uqEoyDD2beGq7Dj7edi8OnJcS/hg==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.58.0.tgz", + "integrity": "sha512-+410Srdoh78MKSJxTQ+hZ/Mx+ajd6RjjPwBPNd0R3J9FtL6ZA0GqiiyNjCO9In0IzZkCNrpGymSfn+kgyPQocg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.58.0.tgz", + "integrity": "sha512-ZjMyby5SICi227y1MTR3VYBpFTdZs823Rs/hpakufleBoufoOIB6jtm9FEoxn/cgO7l6PM2rCEl5Kre5vX0QrQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-openbsd-x64": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.58.0.tgz", + "integrity": "sha512-ds4iwfYkSQ0k1nb8LTcyXw//ToHOnNTJtceySpL3fa7tc/AsE+UpUFphW126A6fKBGJD5dhRvg8zw1rvoGFxmw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ] + }, + "node_modules/@rollup/rollup-openharmony-arm64": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.58.0.tgz", + "integrity": "sha512-fd/zpJniln4ICdPkjWFhZYeY/bpnaN9pGa6ko+5WD38I0tTqk9lXMgXZg09MNdhpARngmxiCg0B0XUamNw/5BQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.58.0.tgz", + "integrity": "sha512-YpG8dUOip7DCz3nr/JUfPbIUo+2d/dy++5bFzgi4ugOGBIox+qMbbqt/JoORwvI/C9Kn2tz6+Bieoqd5+B1CjA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.58.0.tgz", + "integrity": "sha512-b9DI8jpFQVh4hIXFr0/+N/TzLdpBIoPzjt0Rt4xJbW3mzguV3mduR9cNgiuFcuL/TeORejJhCWiAXe3E/6PxWA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-gnu": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.58.0.tgz", + "integrity": "sha512-CSrVpmoRJFN06LL9xhkitkwUcTZtIotYAF5p6XOR2zW0Zz5mzb3IPpcoPhB02frzMHFNo1reQ9xSF5fFm3hUsQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.58.0.tgz", + "integrity": "sha512-QFsBgQNTnh5K0t/sBsjJLq24YVqEIVkGpfN2VHsnN90soZyhaiA9UUHufcctVNL4ypJY0wrwad0wslx2KJQ1/w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@swc/core": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.15.11.tgz", + "integrity": "sha512-iLmLTodbYxU39HhMPaMUooPwO/zqJWvsqkrXv1ZI38rMb048p6N7qtAtTp37sw9NzSrvH6oli8EdDygo09IZ/w==", + "dev": true, + "hasInstallScript": true, + "license": "Apache-2.0", + "dependencies": { + "@swc/counter": "^0.1.3", + "@swc/types": "^0.1.25" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/swc" + }, + "optionalDependencies": { + "@swc/core-darwin-arm64": "1.15.11", + "@swc/core-darwin-x64": "1.15.11", + "@swc/core-linux-arm-gnueabihf": "1.15.11", + "@swc/core-linux-arm64-gnu": "1.15.11", + "@swc/core-linux-arm64-musl": "1.15.11", + "@swc/core-linux-x64-gnu": "1.15.11", + "@swc/core-linux-x64-musl": "1.15.11", + "@swc/core-win32-arm64-msvc": "1.15.11", + "@swc/core-win32-ia32-msvc": "1.15.11", + "@swc/core-win32-x64-msvc": "1.15.11" + }, + "peerDependencies": { + "@swc/helpers": ">=0.5.17" + }, + "peerDependenciesMeta": { + "@swc/helpers": { + "optional": true + } + } + }, + "node_modules/@swc/core-darwin-arm64": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.15.11.tgz", + "integrity": "sha512-QoIupRWVH8AF1TgxYyeA5nS18dtqMuxNwchjBIwJo3RdwLEFiJq6onOx9JAxHtuPwUkIVuU2Xbp+jCJ7Vzmgtg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-darwin-x64": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.15.11.tgz", + "integrity": "sha512-S52Gu1QtPSfBYDiejlcfp9GlN+NjTZBRRNsz8PNwBgSE626/FUf2PcllVUix7jqkoMC+t0rS8t+2/aSWlMuQtA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm-gnueabihf": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.15.11.tgz", + "integrity": "sha512-lXJs8oXo6Z4yCpimpQ8vPeCjkgoHu5NoMvmJZ8qxDyU99KVdg6KwU9H79vzrmB+HfH+dCZ7JGMqMF//f8Cfvdg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-gnu": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.15.11.tgz", + "integrity": "sha512-chRsz1K52/vj8Mfq/QOugVphlKPWlMh10V99qfH41hbGvwAU6xSPd681upO4bKiOr9+mRIZZW+EfJqY42ZzRyA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-musl": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.15.11.tgz", + "integrity": "sha512-PYftgsTaGnfDK4m6/dty9ryK1FbLk+LosDJ/RJR2nkXGc8rd+WenXIlvHjWULiBVnS1RsjHHOXmTS4nDhe0v0w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-gnu": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.15.11.tgz", + "integrity": "sha512-DKtnJKIHiZdARyTKiX7zdRjiDS1KihkQWatQiCHMv+zc2sfwb4Glrodx2VLOX4rsa92NLR0Sw8WLcPEMFY1szQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-musl": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.15.11.tgz", + "integrity": "sha512-mUjjntHj4+8WBaiDe5UwRNHuEzLjIWBTSGTw0JT9+C9/Yyuh4KQqlcEQ3ro6GkHmBGXBFpGIj/o5VMyRWfVfWw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-arm64-msvc": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.15.11.tgz", + "integrity": "sha512-ZkNNG5zL49YpaFzfl6fskNOSxtcZ5uOYmWBkY4wVAvgbSAQzLRVBp+xArGWh2oXlY/WgL99zQSGTv7RI5E6nzA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-ia32-msvc": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.15.11.tgz", + "integrity": "sha512-6XnzORkZCQzvTQ6cPrU7iaT9+i145oLwnin8JrfsLG41wl26+5cNQ2XV3zcbrnFEV6esjOceom9YO1w9mGJByw==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-x64-msvc": { + "version": "1.15.11", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.15.11.tgz", + "integrity": "sha512-IQ2n6af7XKLL6P1gIeZACskSxK8jWtoKpJWLZmdXTDj1MGzktUy4i+FvpdtxFmJWNavRWH1VmTr6kAubRDHeKw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/counter": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz", + "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/@swc/types": { + "version": "0.1.25", + "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.25.tgz", + "integrity": "sha512-iAoY/qRhNH8a/hBvm3zKj9qQ4oc2+3w1unPJa2XvTK3XjeLXtzcCingVPw/9e5mn1+0yPqxcBGp9Jf0pkfMb1g==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@swc/counter": "^0.1.3" + } + }, + "node_modules/@tailwindcss/typography": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.19.tgz", + "integrity": "sha512-w31dd8HOx3k9vPtcQh5QHP9GwKcgbMp87j58qi6xgiBnFFtKEAgCWnDw4qUT8aHwkCp8bKvb/KGKWWHedP0AAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "postcss-selector-parser": "6.0.10" + }, + "peerDependencies": { + "tailwindcss": ">=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1" + } + }, + "node_modules/@tanstack/query-core": { + "version": "5.90.20", + "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.90.20.tgz", + "integrity": "sha512-OMD2HLpNouXEfZJWcKeVKUgQ5n+n3A2JFmBaScpNDUqSrQSjiveC7dKMe53uJUg1nDG16ttFPz2xfilz6i2uVg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/react-query": { + "version": "5.90.21", + "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.90.21.tgz", + "integrity": "sha512-0Lu6y5t+tvlTJMTO7oh5NSpJfpg/5D41LlThfepTixPYkJ0sE2Jj0m0f6yYqujBwIXlId87e234+MxG3D3g7kg==", + "license": "MIT", + "dependencies": { + "@tanstack/query-core": "5.90.20" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": "^18 || ^19" + } + }, + "node_modules/@testing-library/dom": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-10.4.1.tgz", + "integrity": "sha512-o4PXJQidqJl82ckFaXUeoAW+XysPLauYI43Abki5hABd853iMhitooc6znOnczgbTYmEP6U6/y1ZyKAIsvMKGg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/runtime": "^7.12.5", + "@types/aria-query": "^5.0.1", + "aria-query": "5.3.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.5.0", + "picocolors": "1.1.1", + "pretty-format": "^27.0.2" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@testing-library/jest-dom": { + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.9.1.tgz", + "integrity": "sha512-zIcONa+hVtVSSep9UT3jZ5rizo2BsxgyDYU7WFD5eICBE7no3881HGeb/QkGfsJs6JTkY1aQhT7rIPC7e+0nnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@adobe/css-tools": "^4.4.0", + "aria-query": "^5.0.0", + "css.escape": "^1.5.1", + "dom-accessibility-api": "^0.6.3", + "picocolors": "^1.1.1", + "redent": "^3.0.0" + }, + "engines": { + "node": ">=14", + "npm": ">=6", + "yarn": ">=1" + } + }, + "node_modules/@testing-library/jest-dom/node_modules/dom-accessibility-api": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.6.3.tgz", + "integrity": "sha512-7ZgogeTnjuHbo+ct10G9Ffp0mif17idi0IyWNVA/wcwcm7NPOD/WEHVP3n7n3MhXqxoIYm8d6MuZohYWIZ4T3w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@testing-library/react": { + "version": "16.3.2", + "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-16.3.2.tgz", + "integrity": "sha512-XU5/SytQM+ykqMnAnvB2umaJNIOsLF3PVv//1Ew4CTcpz0/BRyy/af40qqrt7SjKpDdT1saBMc42CUok5gaw+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.12.5" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@testing-library/dom": "^10.0.0", + "@types/react": "^18.0.0 || ^19.0.0", + "@types/react-dom": "^18.0.0 || ^19.0.0", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "@types/react-dom": { + "optional": true + } + } + }, + "node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/@types/aria-query": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz", + "integrity": "sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@types/chai": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-5.2.3.tgz", + "integrity": "sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/deep-eql": "*", + "assertion-error": "^2.0.1" + } + }, + "node_modules/@types/d3-array": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.2.2.tgz", + "integrity": "sha512-hOLWVbm7uRza0BYXpIIW5pxfrKe0W+D5lrFiAEYR+pb6w3N2SwSMaJbXdUfSEv+dT4MfHBLtn5js0LAWaO6otw==", + "license": "MIT" + }, + "node_modules/@types/d3-color": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.3.tgz", + "integrity": "sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A==", + "license": "MIT" + }, + "node_modules/@types/d3-ease": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.2.tgz", + "integrity": "sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA==", + "license": "MIT" + }, + "node_modules/@types/d3-interpolate": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz", + "integrity": "sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA==", + "license": "MIT", + "dependencies": { + "@types/d3-color": "*" + } + }, + "node_modules/@types/d3-path": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.1.1.tgz", + "integrity": "sha512-VMZBYyQvbGmWyWVea0EHs/BwLgxc+MKi1zLDCONksozI4YJMcTt8ZEuIR4Sb1MMTE8MMW49v0IwI5+b7RmfWlg==", + "license": "MIT" + }, + "node_modules/@types/d3-scale": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.9.tgz", + "integrity": "sha512-dLmtwB8zkAeO/juAMfnV+sItKjlsw2lKdZVVy6LRr0cBmegxSABiLEpGVmSJJ8O08i4+sGR6qQtb6WtuwJdvVw==", + "license": "MIT", + "dependencies": { + "@types/d3-time": "*" + } + }, + "node_modules/@types/d3-shape": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.8.tgz", + "integrity": "sha512-lae0iWfcDeR7qt7rA88BNiqdvPS5pFVPpo5OfjElwNaT2yyekbM0C9vK+yqBqEmHr6lDkRnYNoTBYlAgJa7a4w==", + "license": "MIT", + "dependencies": { + "@types/d3-path": "*" + } + }, + "node_modules/@types/d3-time": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.4.tgz", + "integrity": "sha512-yuzZug1nkAAaBlBBikKZTgzCeA+k1uy4ZFwWANOfKw5z5LRhV0gNA7gNkKm7HoK+HRN0wX3EkxGk0fpbWhmB7g==", + "license": "MIT" + }, + "node_modules/@types/d3-timer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.2.tgz", + "integrity": "sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw==", + "license": "MIT" + }, + "node_modules/@types/deep-eql": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/deep-eql/-/deep-eql-4.0.2.tgz", + "integrity": "sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "22.19.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.11.tgz", + "integrity": "sha512-BH7YwL6rA93ReqeQS1c4bsPpcfOmJasG+Fkr6Y59q83f9M1WcBRHR2vM+P9eOisYRcN3ujQoiZY8uk5W+1WL8w==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/prop-types": { + "version": "15.7.15", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.15.tgz", + "integrity": "sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/@types/react": { + "version": "18.3.28", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.28.tgz", + "integrity": "sha512-z9VXpC7MWrhfWipitjNdgCauoMLRdIILQsAEV+ZesIzBq/oUlxk0m3ApZuMFCXdnS4U7KrI+l3WRUEGQ8K1QKw==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@types/prop-types": "*", + "csstype": "^3.2.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.3.7", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.7.tgz", + "integrity": "sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==", + "devOptional": true, + "license": "MIT", + "peerDependencies": { + "@types/react": "^18.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.56.0.tgz", + "integrity": "sha512-lRyPDLzNCuae71A3t9NEINBiTn7swyOhvUj3MyUOxb8x6g6vPEFoOU+ZRmGMusNC3X3YMhqMIX7i8ShqhT74Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/regexpp": "^4.12.2", + "@typescript-eslint/scope-manager": "8.56.0", + "@typescript-eslint/type-utils": "8.56.0", + "@typescript-eslint/utils": "8.56.0", + "@typescript-eslint/visitor-keys": "8.56.0", + "ignore": "^7.0.5", + "natural-compare": "^1.4.0", + "ts-api-utils": "^2.4.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^8.56.0", + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", + "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.56.0.tgz", + "integrity": "sha512-IgSWvLobTDOjnaxAfDTIHaECbkNlAlKv2j5SjpB2v7QHKv1FIfjwMy8FsDbVfDX/KjmCmYICcw7uGaXLhtsLNg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/scope-manager": "8.56.0", + "@typescript-eslint/types": "8.56.0", + "@typescript-eslint/typescript-estree": "8.56.0", + "@typescript-eslint/visitor-keys": "8.56.0", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/project-service": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.56.0.tgz", + "integrity": "sha512-M3rnyL1vIQOMeWxTWIW096/TtVP+8W3p/XnaFflhmcFp+U4zlxUxWj4XwNs6HbDeTtN4yun0GNTTDBw/SvufKg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/tsconfig-utils": "^8.56.0", + "@typescript-eslint/types": "^8.56.0", + "debug": "^4.4.3" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.56.0.tgz", + "integrity": "sha512-7UiO/XwMHquH+ZzfVCfUNkIXlp/yQjjnlYUyYz7pfvlK3/EyyN6BK+emDmGNyQLBtLGaYrTAI6KOw8tFucWL2w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.56.0", + "@typescript-eslint/visitor-keys": "8.56.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/tsconfig-utils": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.56.0.tgz", + "integrity": "sha512-bSJoIIt4o3lKXD3xmDh9chZcjCz5Lk8xS7Rxn+6l5/pKrDpkCwtQNQQwZ2qRPk7TkUYhrq3WPIHXOXlbXP0itg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.56.0.tgz", + "integrity": "sha512-qX2L3HWOU2nuDs6GzglBeuFXviDODreS58tLY/BALPC7iu3Fa+J7EOTwnX9PdNBxUI7Uh0ntP0YWGnxCkXzmfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.56.0", + "@typescript-eslint/typescript-estree": "8.56.0", + "@typescript-eslint/utils": "8.56.0", + "debug": "^4.4.3", + "ts-api-utils": "^2.4.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.56.0.tgz", + "integrity": "sha512-DBsLPs3GsWhX5HylbP9HNG15U0bnwut55Lx12bHB9MpXxQ+R5GC8MwQe+N1UFXxAeQDvEsEDY6ZYwX03K7Z6HQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.56.0.tgz", + "integrity": "sha512-ex1nTUMWrseMltXUHmR2GAQ4d+WjkZCT4f+4bVsps8QEdh0vlBsaCokKTPlnqBFqqGaxilDNJG7b8dolW2m43Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/project-service": "8.56.0", + "@typescript-eslint/tsconfig-utils": "8.56.0", + "@typescript-eslint/types": "8.56.0", + "@typescript-eslint/visitor-keys": "8.56.0", + "debug": "^4.4.3", + "minimatch": "^9.0.5", + "semver": "^7.7.3", + "tinyglobby": "^0.2.15", + "ts-api-utils": "^2.4.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.56.0.tgz", + "integrity": "sha512-RZ3Qsmi2nFGsS+n+kjLAYDPVlrzf7UhTffrDIKr+h2yzAlYP/y5ZulU0yeDEPItos2Ph46JAL5P/On3pe7kDIQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.9.1", + "@typescript-eslint/scope-manager": "8.56.0", + "@typescript-eslint/types": "8.56.0", + "@typescript-eslint/typescript-estree": "8.56.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.56.0.tgz", + "integrity": "sha512-q+SL+b+05Ud6LbEE35qe4A99P+htKTKVbyiNEe45eCbJFyh/HVK9QXwlrbz+Q4L8SOW4roxSVwXYj4DMBT7Ieg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "8.56.0", + "eslint-visitor-keys": "^5.0.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=24" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@vitejs/plugin-react-swc": { + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react-swc/-/plugin-react-swc-3.11.0.tgz", + "integrity": "sha512-YTJCGFdNMHCMfjODYtxRNVAYmTWQ1Lb8PulP/2/f/oEEtglw8oKxKIZmmRkyXrVrHfsKOaVkAc3NT9/dMutO5w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rolldown/pluginutils": "1.0.0-beta.27", + "@swc/core": "^1.12.11" + }, + "peerDependencies": { + "vite": "^4 || ^5 || ^6 || ^7" + } + }, + "node_modules/@vitest/expect": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-3.2.4.tgz", + "integrity": "sha512-Io0yyORnB6sikFlt8QW5K7slY4OjqNX9jmJQ02QDda8lyM6B5oNgVWoSoKPac8/kgnCUzuHQKrSLtu/uOqqrig==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/chai": "^5.2.2", + "@vitest/spy": "3.2.4", + "@vitest/utils": "3.2.4", + "chai": "^5.2.0", + "tinyrainbow": "^2.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/mocker": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-3.2.4.tgz", + "integrity": "sha512-46ryTE9RZO/rfDd7pEqFl7etuyzekzEhUbTW3BvmeO/BcCMEgq59BKhek3dXDWgAj4oMK6OZi+vRr1wPW6qjEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/spy": "3.2.4", + "estree-walker": "^3.0.3", + "magic-string": "^0.30.17" + }, + "funding": { + "url": "https://opencollective.com/vitest" + }, + "peerDependencies": { + "msw": "^2.4.9", + "vite": "^5.0.0 || ^6.0.0 || ^7.0.0-0" + }, + "peerDependenciesMeta": { + "msw": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/@vitest/pretty-format": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.2.4.tgz", + "integrity": "sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA==", + "dev": true, + "license": "MIT", + "dependencies": { + "tinyrainbow": "^2.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/runner": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-3.2.4.tgz", + "integrity": "sha512-oukfKT9Mk41LreEW09vt45f8wx7DordoWUZMYdY/cyAk7w5TWkTRCNZYF7sX7n2wB7jyGAl74OxgwhPgKaqDMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/utils": "3.2.4", + "pathe": "^2.0.3", + "strip-literal": "^3.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/snapshot": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-3.2.4.tgz", + "integrity": "sha512-dEYtS7qQP2CjU27QBC5oUOxLE/v5eLkGqPE0ZKEIDGMs4vKWe7IjgLOeauHsR0D5YuuycGRO5oSRXnwnmA78fQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/pretty-format": "3.2.4", + "magic-string": "^0.30.17", + "pathe": "^2.0.3" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/spy": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-3.2.4.tgz", + "integrity": "sha512-vAfasCOe6AIK70iP5UD11Ac4siNUNJ9i/9PZ3NKx07sG6sUxeag1LWdNrMWeKKYBLlzuK+Gn65Yd5nyL6ds+nw==", + "dev": true, + "license": "MIT", + "dependencies": { + "tinyspy": "^4.0.3" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/utils": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-3.2.4.tgz", + "integrity": "sha512-fB2V0JFrQSMsCo9HiSq3Ezpdv4iYaXRG1Sx8edX3MwxfyNn83mKiGzOcH+Fkxt4MHxr3y42fQi1oeAInqgX2QA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/pretty-format": "3.2.4", + "loupe": "^3.1.4", + "tinyrainbow": "^2.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/acorn": { + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz", + "integrity": "sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-7.0.1.tgz", + "integrity": "sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "^8.1.0", + "acorn-walk": "^8.0.2" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.5", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.5.tgz", + "integrity": "sha512-HEHNfbars9v4pgpW6SO1KSPkfoS0xVOM/9UzkJltjlsHZmJasxg8aXkuZa7SMf8vKGIBhpUsPluQSqhJFCqebw==", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "^8.11.0" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/ajv": { + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.14.0.tgz", + "integrity": "sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "license": "MIT" + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "license": "MIT" + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/aria-hidden": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.6.tgz", + "integrity": "sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/aria-query": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz", + "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "dequal": "^2.0.3" + } + }, + "node_modules/assertion-error": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", + "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/autoprefixer": { + "version": "10.4.24", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.24.tgz", + "integrity": "sha512-uHZg7N9ULTVbutaIsDRoUkoS8/h3bdsmVJYZ5l3wv8Cp/6UIIoRDm90hZ+BwxUj/hGBEzLxdHNSKuFpn8WOyZw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "browserslist": "^4.28.1", + "caniuse-lite": "^1.0.30001766", + "fraction.js": "^5.3.4", + "picocolors": "^1.1.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/baseline-browser-mapping": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.0.tgz", + "integrity": "sha512-lIyg0szRfYbiy67j9KN8IyeD7q7hcmqnJ1ddWmNt19ItGpNN64mnllmxUNFIOdOm6by97jlL6wfpTTJrmnjWAA==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.28.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", + "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "baseline-browser-mapping": "^2.9.0", + "caniuse-lite": "^1.0.30001759", + "electron-to-chromium": "^1.5.263", + "node-releases": "^2.0.27", + "update-browserslist-db": "^1.2.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/cac": { + "version": "6.7.14", + "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", + "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001770", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001770.tgz", + "integrity": "sha512-x/2CLQ1jHENRbHg5PSId2sXq1CIO1CISvwWAj027ltMVG2UNgW+w9oH2+HzgEIRFembL8bUlXtfbBHR1fCg2xw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/chai": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/chai/-/chai-5.3.3.tgz", + "integrity": "sha512-4zNhdJD/iOjSH0A05ea+Ke6MU5mmpQcbQsSOkgdaUMJ9zTlDTD/GYlwohmIE2u0gaxHYiVHEn1Fw9mZ/ktJWgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "assertion-error": "^2.0.1", + "check-error": "^2.1.1", + "deep-eql": "^5.0.1", + "loupe": "^3.1.0", + "pathval": "^2.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/check-error": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.3.tgz", + "integrity": "sha512-PAJdDJusoxnwm1VwW07VWwUN1sl7smmC3OKggvndJFadxxDRyFJBX/ggnu/KE4kQAB7a3Dp8f/YXC1FlUprWmA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 16" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/class-variance-authority": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/class-variance-authority/-/class-variance-authority-0.7.1.tgz", + "integrity": "sha512-Ka+9Trutv7G8M6WT6SeiRWz792K5qEqIGEGzXKhAE6xOWAY6pPH8U+9IY3oCMv6kqTmLsv7Xh/2w2RigkePMsg==", + "license": "Apache-2.0", + "dependencies": { + "clsx": "^2.1.1" + }, + "funding": { + "url": "https://polar.sh/cva" + } + }, + "node_modules/clsx": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/cmdk": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/cmdk/-/cmdk-1.1.1.tgz", + "integrity": "sha512-Vsv7kFaXm+ptHDMZ7izaRsP70GgrW9NBNGswt9OZaVBLlE0SNpDq8eu/VGXyF9r7M0azK3Wy7OlYXsuyYLFzHg==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-compose-refs": "^1.1.1", + "@radix-ui/react-dialog": "^1.1.6", + "@radix-ui/react-id": "^1.1.0", + "@radix-ui/react-primitive": "^2.0.2" + }, + "peerDependencies": { + "react": "^18 || ^19 || ^19.0.0-rc", + "react-dom": "^18 || ^19 || ^19.0.0-rc" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/css.escape": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", + "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==", + "dev": true, + "license": "MIT" + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssom": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz", + "integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==", + "dev": true, + "license": "MIT" + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", + "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "dev": true, + "license": "MIT", + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true, + "license": "MIT" + }, + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "license": "MIT" + }, + "node_modules/d3-array": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz", + "integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==", + "license": "ISC", + "dependencies": { + "internmap": "1 - 2" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-ease": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", + "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-format": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.2.tgz", + "integrity": "sha512-AJDdYOdnyRDV5b6ArilzCPPwc1ejkHcoyFarqlPqT7zRYjhavcT3uSrqcMvsgh2CgoPbK3RCwyHaVyxYcP2Arg==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", + "license": "ISC", + "dependencies": { + "d3-color": "1 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-path": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz", + "integrity": "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-scale": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", + "integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==", + "license": "ISC", + "dependencies": { + "d3-array": "2.10.0 - 3", + "d3-format": "1 - 3", + "d3-interpolate": "1.2.0 - 3", + "d3-time": "2.1.1 - 3", + "d3-time-format": "2 - 4" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-shape": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz", + "integrity": "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==", + "license": "ISC", + "dependencies": { + "d3-path": "^3.1.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-time": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz", + "integrity": "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==", + "license": "ISC", + "dependencies": { + "d3-array": "2 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-time-format": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz", + "integrity": "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==", + "license": "ISC", + "dependencies": { + "d3-time": "1 - 3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-timer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", + "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/data-urls": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz", + "integrity": "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "abab": "^2.0.6", + "whatwg-mimetype": "^3.0.0", + "whatwg-url": "^11.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/date-fns": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-3.6.0.tgz", + "integrity": "sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.6.0", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz", + "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==", + "dev": true, + "license": "MIT" + }, + "node_modules/decimal.js-light": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/decimal.js-light/-/decimal.js-light-2.5.1.tgz", + "integrity": "sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==", + "license": "MIT" + }, + "node_modules/deep-eql": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz", + "integrity": "sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/detect-node-es": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", + "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==", + "license": "MIT" + }, + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "license": "Apache-2.0" + }, + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "license": "MIT" + }, + "node_modules/dom-accessibility-api": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz", + "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/dom-helpers": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", + "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.8.7", + "csstype": "^3.0.2" + } + }, + "node_modules/domexception": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz", + "integrity": "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==", + "deprecated": "Use your platform's native DOMException instead", + "dev": true, + "license": "MIT", + "dependencies": { + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.302", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.302.tgz", + "integrity": "sha512-sM6HAN2LyK82IyPBpznDRqlTQAtuSaO+ShzFiWTvoMJLHyZ+Y39r8VMfHzwbU8MVBzQ4Wdn85+wlZl2TLGIlwg==", + "dev": true, + "license": "ISC" + }, + "node_modules/embla-carousel": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/embla-carousel/-/embla-carousel-8.6.0.tgz", + "integrity": "sha512-SjWyZBHJPbqxHOzckOfo8lHisEaJWmwd23XppYFYVh10bU66/Pn5tkVkbkCMZVdbUE5eTCI2nD8OyIP4Z+uwkA==", + "license": "MIT" + }, + "node_modules/embla-carousel-react": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/embla-carousel-react/-/embla-carousel-react-8.6.0.tgz", + "integrity": "sha512-0/PjqU7geVmo6F734pmPqpyHqiM99olvyecY7zdweCw+6tKEXnrE90pBiBbMMU8s5tICemzpQ3hi5EpxzGW+JA==", + "license": "MIT", + "dependencies": { + "embla-carousel": "8.6.0", + "embla-carousel-reactive-utils": "8.6.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.1 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + } + }, + "node_modules/embla-carousel-reactive-utils": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/embla-carousel-reactive-utils/-/embla-carousel-reactive-utils-8.6.0.tgz", + "integrity": "sha512-fMVUDUEx0/uIEDM0Mz3dHznDhfX+znCCDCeIophYb1QGVM7YThSWX+wz11zlYwWFOr74b4QLGg0hrGPJeG2s4A==", + "license": "MIT", + "peerDependencies": { + "embla-carousel": "8.6.0" + } + }, + "node_modules/entities": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-module-lexer": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz", + "integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==", + "dev": true, + "license": "MIT" + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", + "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/eslint": { + "version": "9.39.3", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.3.tgz", + "integrity": "sha512-VmQ+sifHUbI/IcSopBCF/HO3YiHQx/AVd3UVyYL6weuwW+HvON9VYn5l6Zl1WZzPWXPNZrSQpxwkkZ/VuvJZzg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.8.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.21.1", + "@eslint/config-helpers": "^0.4.2", + "@eslint/core": "^0.17.0", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "9.39.3", + "@eslint/plugin-kit": "^0.4.1", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.4.0", + "eslint-visitor-keys": "^4.2.1", + "espree": "^10.4.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.2.0.tgz", + "integrity": "sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-react-refresh": { + "version": "0.4.26", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.26.tgz", + "integrity": "sha512-1RETEylht2O6FM/MvgnyvT+8K21wLqDNg4qD51Zj3guhjt433XbnnkVttHMyaVyAFD03QSV4LPS5iE3VQmO7XQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "eslint": ">=8.40" + } + }, + "node_modules/eslint-scope": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", + "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/espree": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.15.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz", + "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "license": "MIT" + }, + "node_modules/expect-type": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.3.0.tgz", + "integrity": "sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-equals": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-5.4.0.tgz", + "integrity": "sha512-jt2DW/aNFNwke7AUd+Z+e6pz39KO5rzdbbFCg2sGafS4mk13MI7Z8O5z9cADNn5lhGODIgLwug6TZO2ctf7kcw==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fastq": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.20.1.tgz", + "integrity": "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==", + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true, + "license": "ISC" + }, + "node_modules/form-data": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.5.tgz", + "integrity": "sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==", + "dev": true, + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fraction.js": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-5.3.4.tgz", + "integrity": "sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-nonce": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz", + "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "15.15.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz", + "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/html-encoding-sniffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz", + "integrity": "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==", + "dev": true, + "license": "MIT", + "dependencies": { + "whatwg-encoding": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/input-otp": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/input-otp/-/input-otp-1.4.2.tgz", + "integrity": "sha512-l3jWwYNvrEa6NTCt7BECfCm48GvwuZzkoeG3gBL2w4CHeOXW3eKFmf9UNYkNfYc3mxMrthMnxjIE07MT0zLBQA==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc", + "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc" + } + }, + "node_modules/internmap": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", + "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/jiti": { + "version": "1.21.7", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.7.tgz", + "integrity": "sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==", + "license": "MIT", + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsdom": { + "version": "20.0.3", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-20.0.3.tgz", + "integrity": "sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "abab": "^2.0.6", + "acorn": "^8.8.1", + "acorn-globals": "^7.0.0", + "cssom": "^0.5.0", + "cssstyle": "^2.3.0", + "data-urls": "^3.0.2", + "decimal.js": "^10.4.2", + "domexception": "^4.0.0", + "escodegen": "^2.0.0", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^3.0.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.1", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.2", + "parse5": "^7.1.1", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.1.2", + "w3c-xmlserializer": "^4.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^2.0.0", + "whatwg-mimetype": "^3.0.0", + "whatwg-url": "^11.0.0", + "ws": "^8.11.0", + "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lilconfig": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", + "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", + "license": "MIT", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "license": "MIT" + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.23", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.23.tgz", + "integrity": "sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==", + "license": "MIT" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/loupe": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.2.1.tgz", + "integrity": "sha512-CdzqowRJCeLU72bHvWqwRBBlLcMEtIvGrlvef74kMnV2AolS9Y8xUv1I0U/MNAWMhBlKIoyuEgoJ0t/bbwHbLQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lucide-react": { + "version": "0.462.0", + "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.462.0.tgz", + "integrity": "sha512-NTL7EbAao9IFtuSivSZgrAh4fZd09Lr+6MTkqIxuHaH2nnYiYIzXPo06cOxHg9wKLdj6LL8TByG4qpePqwgx/g==", + "license": "ISC", + "peerDependencies": { + "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc" + } + }, + "node_modules/lz-string": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz", + "integrity": "sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==", + "dev": true, + "license": "MIT", + "peer": true, + "bin": { + "lz-string": "bin/bin.js" + } + }, + "node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "license": "MIT", + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/next-themes": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.3.0.tgz", + "integrity": "sha512-/QHIrsYpd6Kfk7xakK4svpDI5mmXP0gfvCoJdGpZQ2TOrQZmsW0QxjaiLn8wbIKjtm4BTSqLoix4lxYYOnLJ/w==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8 || ^17 || ^18", + "react-dom": "^16.8 || ^17 || ^18" + } + }, + "node_modules/node-releases": { + "version": "2.0.27", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", + "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nwsapi": { + "version": "2.2.23", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.23.tgz", + "integrity": "sha512-7wfH4sLbt4M0gCDzGE6vzQBo0bfTKjU7Sfpqy/7gs1qBfYz2vEJH6vXcBKpO3+6Yu1telwd0t9HpyOoLEQQbIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse5": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", + "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "entities": "^6.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "license": "MIT" + }, + "node_modules/pathe": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", + "dev": true, + "license": "MIT" + }, + "node_modules/pathval": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.1.tgz", + "integrity": "sha512-//nshmD55c46FuFw26xV/xFAaB5HF9Xdap7HJBBnrKdAd6/GxDBaNA1870O79+9ueg61cZLSVc+OaFlfmObYVQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 14.16" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss": { + "version": "8.5.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", + "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-import": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-js": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.1.0.tgz", + "integrity": "sha512-oIAOTqgIo7q2EOwbhb8UalYePMvYoIeRY2YKntdpFQXNosSu3vLrniGgmH9OKs/qAkfoj5oB3le/7mINW1LCfw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, + "node_modules/postcss-load-config": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-6.0.1.tgz", + "integrity": "sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "lilconfig": "^3.1.1" + }, + "engines": { + "node": ">= 18" + }, + "peerDependencies": { + "jiti": ">=1.21.0", + "postcss": ">=8.0.9", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + }, + "postcss": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "node_modules/postcss-nested": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", + "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "postcss-selector-parser": "^6.1.1" + }, + "engines": { + "node": ">=12.0" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/postcss-nested/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.10", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", + "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", + "dev": true, + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "license": "MIT" + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/pretty-format": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz", + "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "ansi-styles": "^5.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/prop-types/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "license": "MIT" + }, + "node_modules/psl": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.15.0.tgz", + "integrity": "sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "punycode": "^2.3.1" + }, + "funding": { + "url": "https://github.com/sponsors/lupomontero" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/react": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", + "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-day-picker": { + "version": "8.10.1", + "resolved": "https://registry.npmjs.org/react-day-picker/-/react-day-picker-8.10.1.tgz", + "integrity": "sha512-TMx7fNbhLk15eqcMt+7Z7S2KF7mfTId/XJDjKE8f+IUcFn0l08/kI4FiYTL/0yuOLmEcbR4Fwe3GJf/NiiMnPA==", + "license": "MIT", + "funding": { + "type": "individual", + "url": "https://github.com/sponsors/gpbl" + }, + "peerDependencies": { + "date-fns": "^2.28.0 || ^3.0.0", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/react-dom": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.2" + }, + "peerDependencies": { + "react": "^18.3.1" + } + }, + "node_modules/react-hook-form": { + "version": "7.71.2", + "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.71.2.tgz", + "integrity": "sha512-1CHvcDYzuRUNOflt4MOq3ZM46AronNJtQ1S7tnX6YN4y72qhgiUItpacZUAQ0TyWYci3yz1X+rXaSxiuEm86PA==", + "license": "MIT", + "engines": { + "node": ">=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/react-hook-form" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17 || ^18 || ^19" + } + }, + "node_modules/react-is": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", + "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/react-remove-scroll": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.7.2.tgz", + "integrity": "sha512-Iqb9NjCCTt6Hf+vOdNIZGdTiH1QSqr27H/Ek9sv/a97gfueI/5h1s3yRi1nngzMUaOOToin5dI1dXKdXiF+u0Q==", + "license": "MIT", + "dependencies": { + "react-remove-scroll-bar": "^2.3.7", + "react-style-singleton": "^2.2.3", + "tslib": "^2.1.0", + "use-callback-ref": "^1.3.3", + "use-sidecar": "^1.1.3" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-remove-scroll-bar": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.8.tgz", + "integrity": "sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==", + "license": "MIT", + "dependencies": { + "react-style-singleton": "^2.2.2", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-resizable-panels": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/react-resizable-panels/-/react-resizable-panels-2.1.9.tgz", + "integrity": "sha512-z77+X08YDIrgAes4jl8xhnUu1LNIRp4+E7cv4xHmLOxxUPO/ML7PSrE813b90vj7xvQ1lcf7g2uA9GeMZonjhQ==", + "license": "MIT", + "peerDependencies": { + "react": "^16.14.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc", + "react-dom": "^16.14.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + } + }, + "node_modules/react-router": { + "version": "6.30.3", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.30.3.tgz", + "integrity": "sha512-XRnlbKMTmktBkjCLE8/XcZFlnHvr2Ltdr1eJX4idL55/9BbORzyZEaIkBFDhFGCEWBBItsVrDxwx3gnisMitdw==", + "license": "MIT", + "dependencies": { + "@remix-run/router": "1.23.2" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/react-router-dom": { + "version": "6.30.3", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.30.3.tgz", + "integrity": "sha512-pxPcv1AczD4vso7G4Z3TKcvlxK7g7TNt3/FNGMhfqyntocvYKj+GCatfigGDjbLozC4baguJ0ReCigoDJXb0ag==", + "license": "MIT", + "dependencies": { + "@remix-run/router": "1.23.2", + "react-router": "6.30.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, + "node_modules/react-smooth": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/react-smooth/-/react-smooth-4.0.4.tgz", + "integrity": "sha512-gnGKTpYwqL0Iii09gHobNolvX4Kiq4PKx6eWBCYYix+8cdw+cGo3do906l1NBPKkSWx1DghC1dlWG9L2uGd61Q==", + "license": "MIT", + "dependencies": { + "fast-equals": "^5.0.1", + "prop-types": "^15.8.1", + "react-transition-group": "^4.4.5" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/react-style-singleton": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.2.3.tgz", + "integrity": "sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==", + "license": "MIT", + "dependencies": { + "get-nonce": "^1.0.0", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/react-transition-group": { + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", + "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", + "license": "BSD-3-Clause", + "dependencies": { + "@babel/runtime": "^7.5.5", + "dom-helpers": "^5.0.1", + "loose-envify": "^1.4.0", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": ">=16.6.0", + "react-dom": ">=16.6.0" + } + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "license": "MIT", + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/recharts": { + "version": "2.15.4", + "resolved": "https://registry.npmjs.org/recharts/-/recharts-2.15.4.tgz", + "integrity": "sha512-UT/q6fwS3c1dHbXv2uFgYJ9BMFHu3fwnd7AYZaEQhXuYQ4hgsxLvsUXzGdKeZrW5xopzDCvuA2N41WJ88I7zIw==", + "license": "MIT", + "dependencies": { + "clsx": "^2.0.0", + "eventemitter3": "^4.0.1", + "lodash": "^4.17.21", + "react-is": "^18.3.1", + "react-smooth": "^4.0.4", + "recharts-scale": "^0.4.4", + "tiny-invariant": "^1.3.1", + "victory-vendor": "^36.6.8" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "react": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/recharts-scale": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/recharts-scale/-/recharts-scale-0.4.5.tgz", + "integrity": "sha512-kivNFO+0OcUNu7jQquLXAxz1FIwZj8nrj+YkOKc5694NbjCvcT6aSZiIzNzd2Kul4o4rTto8QVR9lMNtxD4G1w==", + "license": "MIT", + "dependencies": { + "decimal.js-light": "^2.4.1" + } + }, + "node_modules/recharts/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "license": "MIT" + }, + "node_modules/redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/resolve": { + "version": "1.22.11", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", + "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rollup": { + "version": "4.58.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.58.0.tgz", + "integrity": "sha512-wbT0mBmWbIvvq8NeEYWWvevvxnOyhKChir47S66WCxw1SXqhw7ssIYejnQEVt7XYQpsj2y8F9PM+Cr3SNEa0gw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.8" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.58.0", + "@rollup/rollup-android-arm64": "4.58.0", + "@rollup/rollup-darwin-arm64": "4.58.0", + "@rollup/rollup-darwin-x64": "4.58.0", + "@rollup/rollup-freebsd-arm64": "4.58.0", + "@rollup/rollup-freebsd-x64": "4.58.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.58.0", + "@rollup/rollup-linux-arm-musleabihf": "4.58.0", + "@rollup/rollup-linux-arm64-gnu": "4.58.0", + "@rollup/rollup-linux-arm64-musl": "4.58.0", + "@rollup/rollup-linux-loong64-gnu": "4.58.0", + "@rollup/rollup-linux-loong64-musl": "4.58.0", + "@rollup/rollup-linux-ppc64-gnu": "4.58.0", + "@rollup/rollup-linux-ppc64-musl": "4.58.0", + "@rollup/rollup-linux-riscv64-gnu": "4.58.0", + "@rollup/rollup-linux-riscv64-musl": "4.58.0", + "@rollup/rollup-linux-s390x-gnu": "4.58.0", + "@rollup/rollup-linux-x64-gnu": "4.58.0", + "@rollup/rollup-linux-x64-musl": "4.58.0", + "@rollup/rollup-openbsd-x64": "4.58.0", + "@rollup/rollup-openharmony-arm64": "4.58.0", + "@rollup/rollup-win32-arm64-msvc": "4.58.0", + "@rollup/rollup-win32-ia32-msvc": "4.58.0", + "@rollup/rollup-win32-x64-gnu": "4.58.0", + "@rollup/rollup-win32-x64-msvc": "4.58.0", + "fsevents": "~2.3.2" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "license": "MIT" + }, + "node_modules/saxes": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", + "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", + "dev": true, + "license": "ISC", + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=v12.22.7" + } + }, + "node_modules/scheduler": { + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/semver": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/siginfo": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", + "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", + "dev": true, + "license": "ISC" + }, + "node_modules/sonner": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/sonner/-/sonner-1.7.4.tgz", + "integrity": "sha512-DIS8z4PfJRbIyfVFDVnK9rO3eYDtse4Omcm6bt0oEr5/jtLgysmjuBl1frJ9E/EQZrFmKx2A8m/s5s9CRXIzhw==", + "license": "MIT", + "peerDependencies": { + "react": "^18.0.0 || ^19.0.0 || ^19.0.0-rc", + "react-dom": "^18.0.0 || ^19.0.0 || ^19.0.0-rc" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "license": "BSD-3-Clause", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stackback": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", + "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", + "dev": true, + "license": "MIT" + }, + "node_modules/std-env": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.10.0.tgz", + "integrity": "sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==", + "dev": true, + "license": "MIT" + }, + "node_modules/strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strip-literal": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-3.1.0.tgz", + "integrity": "sha512-8r3mkIM/2+PpjHoOtiAW8Rg3jJLHaV7xPwG+YRGrv6FP0wwk/toTpATxWYOW0BKdWwl82VT2tFYi5DlROa0Mxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "js-tokens": "^9.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/strip-literal/node_modules/js-tokens": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-9.0.1.tgz", + "integrity": "sha512-mxa9E9ITFOt0ban3j6L5MpjwegGz6lBQmM1IJkWeBZGcMxto50+eWdjC/52xDbS2vy0k7vIMK0Fe2wfL9OQSpQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/sucrase": { + "version": "3.35.1", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.1.tgz", + "integrity": "sha512-DhuTmvZWux4H1UOnWMB3sk0sbaCVOoQZjv8u1rDoTV0HTdGem9hkAZtl4JZy8P2z4Bg0nT+YMeOFyVr4zcG5Tw==", + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "tinyglobby": "^0.2.11", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true, + "license": "MIT" + }, + "node_modules/tailwind-merge": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-2.6.1.tgz", + "integrity": "sha512-Oo6tHdpZsGpkKG88HJ8RR1rg/RdnEkQEfMoEk2x1XRI3F1AxeU+ijRXpiVUF4UbLfcxxRGw6TbUINKYdWVsQTQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/dcastil" + } + }, + "node_modules/tailwindcss": { + "version": "3.4.19", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.19.tgz", + "integrity": "sha512-3ofp+LL8E+pK/JuPLPggVAIaEuhvIz4qNcf3nA1Xn2o/7fb7s/TYpHhwGDv1ZU3PkBluUVaF8PyCHcm48cKLWQ==", + "license": "MIT", + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "arg": "^5.0.2", + "chokidar": "^3.6.0", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.3.2", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "jiti": "^1.21.7", + "lilconfig": "^3.1.3", + "micromatch": "^4.0.8", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.1.1", + "postcss": "^8.4.47", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.2 || ^5.0 || ^6.0", + "postcss-nested": "^6.2.0", + "postcss-selector-parser": "^6.1.2", + "resolve": "^1.22.8", + "sucrase": "^3.35.0" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tailwindcss-animate": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/tailwindcss-animate/-/tailwindcss-animate-1.0.7.tgz", + "integrity": "sha512-bl6mpH3T7I3UFxuvDEXLxy/VuFxBk5bbzplh7tXI68mwMokNYd1t9qPBHlnyTwfa4JGC4zP516I1hYYtQ/vspA==", + "license": "MIT", + "peerDependencies": { + "tailwindcss": ">=3.0.0 || insiders" + } + }, + "node_modules/tailwindcss/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "license": "MIT", + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "license": "MIT", + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/tiny-invariant": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz", + "integrity": "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==", + "license": "MIT" + }, + "node_modules/tinybench": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz", + "integrity": "sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==", + "dev": true, + "license": "MIT" + }, + "node_modules/tinyexec": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz", + "integrity": "sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==", + "dev": true, + "license": "MIT" + }, + "node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tinyglobby/node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/tinyglobby/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/tinypool": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.1.1.tgz", + "integrity": "sha512-Zba82s87IFq9A9XmjiX5uZA/ARWDrB03OHlq+Vw1fSdt0I+4/Kutwy8BP4Y/y/aORMo61FQ0vIb5j44vSo5Pkg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.0.0 || >=20.0.0" + } + }, + "node_modules/tinyrainbow": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-2.0.0.tgz", + "integrity": "sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tinyspy": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-4.0.4.tgz", + "integrity": "sha512-azl+t0z7pw/z958Gy9svOTuzqIk6xq+NSheJzn5MMWtWTFywIacg2wUlzKFGtt3cthx0r2SxMK0yzJOR0IES7Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.4.tgz", + "integrity": "sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tr46": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/ts-api-utils": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.4.0.tgz", + "integrity": "sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "license": "Apache-2.0" + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/typescript": { + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/typescript-eslint": { + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.56.0.tgz", + "integrity": "sha512-c7toRLrotJ9oixgdW7liukZpsnq5CZ7PuKztubGYlNppuTqhIoWfhgHo/7EU0v06gS2l/x0i2NEFK1qMIf0rIg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/eslint-plugin": "8.56.0", + "@typescript-eslint/parser": "8.56.0", + "@typescript-eslint/typescript-estree": "8.56.0", + "@typescript-eslint/utils": "8.56.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", + "typescript": ">=4.8.4 <6.0.0" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", + "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/use-callback-ref": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.3.tgz", + "integrity": "sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-sidecar": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.1.3.tgz", + "integrity": "sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==", + "license": "MIT", + "dependencies": { + "detect-node-es": "^1.1.0", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "@types/react": "*", + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-sync-external-store": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.6.0.tgz", + "integrity": "sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==", + "license": "MIT", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" + }, + "node_modules/vaul": { + "version": "0.9.9", + "resolved": "https://registry.npmjs.org/vaul/-/vaul-0.9.9.tgz", + "integrity": "sha512-7afKg48srluhZwIkaU+lgGtFCUsYBSGOl8vcc8N/M3YQlZFlynHD15AE+pwrYdc826o7nrIND4lL9Y6b9WWZZQ==", + "license": "MIT", + "dependencies": { + "@radix-ui/react-dialog": "^1.1.1" + }, + "peerDependencies": { + "react": "^16.8 || ^17.0 || ^18.0", + "react-dom": "^16.8 || ^17.0 || ^18.0" + } + }, + "node_modules/victory-vendor": { + "version": "36.9.2", + "resolved": "https://registry.npmjs.org/victory-vendor/-/victory-vendor-36.9.2.tgz", + "integrity": "sha512-PnpQQMuxlwYdocC8fIJqVXvkeViHYzotI+NJrCuav0ZYFoq912ZHBk3mCeuj+5/VpodOjPe1z0Fk2ihgzlXqjQ==", + "license": "MIT AND ISC", + "dependencies": { + "@types/d3-array": "^3.0.3", + "@types/d3-ease": "^3.0.0", + "@types/d3-interpolate": "^3.0.1", + "@types/d3-scale": "^4.0.2", + "@types/d3-shape": "^3.1.0", + "@types/d3-time": "^3.0.0", + "@types/d3-timer": "^3.0.0", + "d3-array": "^3.1.6", + "d3-ease": "^3.0.1", + "d3-interpolate": "^3.0.1", + "d3-scale": "^4.0.2", + "d3-shape": "^3.1.0", + "d3-time": "^3.0.0", + "d3-timer": "^3.0.1" + } + }, + "node_modules/vite": { + "version": "5.4.21", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.21.tgz", + "integrity": "sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-node": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-3.2.4.tgz", + "integrity": "sha512-EbKSKh+bh1E1IFxeO0pg1n4dvoOTt0UDiXMd/qn++r98+jPO1xtJilvXldeuQ8giIB5IkpjCgMleHMNEsGH6pg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cac": "^6.7.14", + "debug": "^4.4.1", + "es-module-lexer": "^1.7.0", + "pathe": "^2.0.3", + "vite": "^5.0.0 || ^6.0.0 || ^7.0.0-0" + }, + "bin": { + "vite-node": "vite-node.mjs" + }, + "engines": { + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/vitest": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-3.2.4.tgz", + "integrity": "sha512-LUCP5ev3GURDysTWiP47wRRUpLKMOfPh+yKTx3kVIEiu5KOMeqzpnYNsKyOoVrULivR8tLcks4+lga33Whn90A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/chai": "^5.2.2", + "@vitest/expect": "3.2.4", + "@vitest/mocker": "3.2.4", + "@vitest/pretty-format": "^3.2.4", + "@vitest/runner": "3.2.4", + "@vitest/snapshot": "3.2.4", + "@vitest/spy": "3.2.4", + "@vitest/utils": "3.2.4", + "chai": "^5.2.0", + "debug": "^4.4.1", + "expect-type": "^1.2.1", + "magic-string": "^0.30.17", + "pathe": "^2.0.3", + "picomatch": "^4.0.2", + "std-env": "^3.9.0", + "tinybench": "^2.9.0", + "tinyexec": "^0.3.2", + "tinyglobby": "^0.2.14", + "tinypool": "^1.1.1", + "tinyrainbow": "^2.0.0", + "vite": "^5.0.0 || ^6.0.0 || ^7.0.0-0", + "vite-node": "3.2.4", + "why-is-node-running": "^2.3.0" + }, + "bin": { + "vitest": "vitest.mjs" + }, + "engines": { + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + }, + "peerDependencies": { + "@edge-runtime/vm": "*", + "@types/debug": "^4.1.12", + "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", + "@vitest/browser": "3.2.4", + "@vitest/ui": "3.2.4", + "happy-dom": "*", + "jsdom": "*" + }, + "peerDependenciesMeta": { + "@edge-runtime/vm": { + "optional": true + }, + "@types/debug": { + "optional": true + }, + "@types/node": { + "optional": true + }, + "@vitest/browser": { + "optional": true + }, + "@vitest/ui": { + "optional": true + }, + "happy-dom": { + "optional": true + }, + "jsdom": { + "optional": true + } + } + }, + "node_modules/vitest/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz", + "integrity": "sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==", + "dev": true, + "license": "MIT", + "dependencies": { + "xml-name-validator": "^4.0.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-encoding": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz", + "integrity": "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==", + "deprecated": "Use @exodus/bytes instead for a more spec-conformant and faster implementation", + "dev": true, + "license": "MIT", + "dependencies": { + "iconv-lite": "0.6.3" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-mimetype": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz", + "integrity": "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-url": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/why-is-node-running": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.3.0.tgz", + "integrity": "sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==", + "dev": true, + "license": "MIT", + "dependencies": { + "siginfo": "^2.0.0", + "stackback": "0.0.2" + }, + "bin": { + "why-is-node-running": "cli.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ws": { + "version": "8.19.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.19.0.tgz", + "integrity": "sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-name-validator": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", + "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12" + } + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true, + "license": "MIT" + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zod": { + "version": "3.25.76", + "resolved": "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz", + "integrity": "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/colinhacks" + } + } + } +} diff --git a/frontend/package.json b/frontend/package.json new file mode 100644 index 0000000..55fde82 --- /dev/null +++ b/frontend/package.json @@ -0,0 +1,88 @@ +{ + "name": "vatguard-hub", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build", + "build:dev": "vite build --mode development", + "lint": "eslint .", + "preview": "vite preview", + "test": "vitest run", + "test:watch": "vitest" + }, + "dependencies": { + "@hookform/resolvers": "^3.10.0", + "@radix-ui/react-accordion": "^1.2.11", + "@radix-ui/react-alert-dialog": "^1.1.14", + "@radix-ui/react-aspect-ratio": "^1.1.7", + "@radix-ui/react-avatar": "^1.1.10", + "@radix-ui/react-checkbox": "^1.3.2", + "@radix-ui/react-collapsible": "^1.1.11", + "@radix-ui/react-context-menu": "^2.2.15", + "@radix-ui/react-dialog": "^1.1.14", + "@radix-ui/react-dropdown-menu": "^2.1.15", + "@radix-ui/react-hover-card": "^1.1.14", + "@radix-ui/react-label": "^2.1.7", + "@radix-ui/react-menubar": "^1.1.15", + "@radix-ui/react-navigation-menu": "^1.2.13", + "@radix-ui/react-popover": "^1.1.14", + "@radix-ui/react-progress": "^1.1.7", + "@radix-ui/react-radio-group": "^1.3.7", + "@radix-ui/react-scroll-area": "^1.2.9", + "@radix-ui/react-select": "^2.2.5", + "@radix-ui/react-separator": "^1.1.7", + "@radix-ui/react-slider": "^1.3.5", + "@radix-ui/react-slot": "^1.2.3", + "@radix-ui/react-switch": "^1.2.5", + "@radix-ui/react-tabs": "^1.1.12", + "@radix-ui/react-toast": "^1.2.14", + "@radix-ui/react-toggle": "^1.1.9", + "@radix-ui/react-toggle-group": "^1.1.10", + "@radix-ui/react-tooltip": "^1.2.7", + "@tanstack/react-query": "^5.83.0", + "class-variance-authority": "^0.7.1", + "clsx": "^2.1.1", + "cmdk": "^1.1.1", + "date-fns": "^3.6.0", + "embla-carousel-react": "^8.6.0", + "input-otp": "^1.4.2", + "lucide-react": "^0.462.0", + "next-themes": "^0.3.0", + "react": "^18.3.1", + "react-day-picker": "^8.10.1", + "react-dom": "^18.3.1", + "react-hook-form": "^7.61.1", + "react-resizable-panels": "^2.1.9", + "react-router-dom": "^6.30.1", + "recharts": "^2.15.4", + "sonner": "^1.7.4", + "tailwind-merge": "^2.6.0", + "tailwindcss-animate": "^1.0.7", + "vaul": "^0.9.9", + "zod": "^3.25.76" + }, + "devDependencies": { + "@eslint/js": "^9.32.0", + "@testing-library/jest-dom": "^6.6.0", + "@testing-library/react": "^16.0.0", + "@tailwindcss/typography": "^0.5.16", + "@types/node": "^22.16.5", + "@types/react": "^18.3.23", + "@types/react-dom": "^18.3.7", + "@vitejs/plugin-react-swc": "^3.11.0", + "autoprefixer": "^10.4.21", + "eslint": "^9.32.0", + "eslint-plugin-react-hooks": "^5.2.0", + "eslint-plugin-react-refresh": "^0.4.20", + "globals": "^15.15.0", + "jsdom": "^20.0.3", + "postcss": "^8.5.6", + "tailwindcss": "^3.4.17", + "typescript": "^5.8.3", + "typescript-eslint": "^8.38.0", + "vite": "^5.4.19", + "vitest": "^3.2.4" + } +} diff --git a/frontend/postcss.config.js b/frontend/postcss.config.js new file mode 100644 index 0000000..2aa7205 --- /dev/null +++ b/frontend/postcss.config.js @@ -0,0 +1,6 @@ +export default { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +}; diff --git a/frontend/src/App.css b/frontend/src/App.css new file mode 100644 index 0000000..b9d355d --- /dev/null +++ b/frontend/src/App.css @@ -0,0 +1,42 @@ +#root { + max-width: 1280px; + margin: 0 auto; + padding: 2rem; + text-align: center; +} + +.logo { + height: 6em; + padding: 1.5em; + will-change: filter; + transition: filter 300ms; +} +.logo:hover { + filter: drop-shadow(0 0 2em #646cffaa); +} +.logo.react:hover { + filter: drop-shadow(0 0 2em #61dafbaa); +} + +@keyframes logo-spin { + from { + transform: rotate(0deg); + } + to { + transform: rotate(360deg); + } +} + +@media (prefers-reduced-motion: no-preference) { + a:nth-of-type(2) .logo { + animation: logo-spin infinite 20s linear; + } +} + +.card { + padding: 2em; +} + +.read-the-docs { + color: #888; +} diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx new file mode 100644 index 0000000..34d50e7 --- /dev/null +++ b/frontend/src/App.tsx @@ -0,0 +1,47 @@ +import { Toaster } from "@/components/ui/toaster"; +import { Toaster as Sonner } from "@/components/ui/sonner"; +import { TooltipProvider } from "@/components/ui/tooltip"; +import { QueryClient, QueryClientProvider } from "@tanstack/react-query"; +import { BrowserRouter, Routes, Route, Navigate } from "react-router-dom"; +import { AuthProvider } from "@/contexts/AuthContext"; +import { ThemeProvider } from "@/contexts/ThemeContext"; +import ProtectedRoute from "@/components/ProtectedRoute"; +import AppLayout from "@/components/AppLayout"; +import LoginPage from "@/pages/LoginPage"; +import DashboardPage from "@/pages/DashboardPage"; +import TrackingPage from "@/pages/TrackingPage"; +import RoutePlannerPage from "@/pages/RoutePlannerPage"; +import VATAnalysisPage from "@/pages/VATAnalysisPage"; +import AboutPage from "@/pages/AboutPage"; +import IndiaComingSoonPage from "@/pages/IndiaComingSoonPage"; +import NotFound from "./pages/NotFound"; + +const queryClient = new QueryClient(); + +const App = () => ( + + + + + + + + + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + } /> + + + + + + +); + +export default App; diff --git a/frontend/src/components/AppLayout.tsx b/frontend/src/components/AppLayout.tsx new file mode 100644 index 0000000..bff4e61 --- /dev/null +++ b/frontend/src/components/AppLayout.tsx @@ -0,0 +1,232 @@ +import { Link, useLocation } from "react-router-dom"; +import { useAuth } from "@/contexts/AuthContext"; +import { useTheme } from "@/contexts/ThemeContext"; +import { LayoutDashboard, BarChart3, Package, Route, Info, LogOut, Shield, Menu, X, Sun, Moon, Settings, Flag, Check } from "lucide-react"; +import { useState } from "react"; + +const AppLayout = ({ children }: { children: React.ReactNode }) => { + const { user, logout, updateName } = useAuth(); + const { theme, toggleTheme } = useTheme(); + const location = useLocation(); + const [mobileOpen, setMobileOpen] = useState(false); + const [showAccount, setShowAccount] = useState(false); + const [nameInput, setNameInput] = useState(user?.name || ""); + const [nameSaved, setNameSaved] = useState(false); + + const links = [ + { to: "/dashboard", label: "Dashboard", icon: LayoutDashboard }, + { to: "/tracking", label: "Package Tracking", icon: Package }, + { to: "/route-planner", label: "Route Planner", icon: Route }, + { to: "/vat-analysis", label: "VAT Analysis", icon: BarChart3 }, + { to: "/india", label: "India", icon: Flag }, + { to: "/about", label: "About", icon: Info }, + ]; + + const handleSaveName = () => { + const trimmed = nameInput.trim(); + if (!trimmed || trimmed === user?.name) return; + updateName(trimmed); + setNameSaved(true); + setTimeout(() => setNameSaved(false), 2000); + }; + + const initials = user?.name.split(" ").map((n) => n[0]).join("") || "?"; + + return ( +
+ {/* Sidebar - desktop */} + + + {/* Mobile header */} +
+
+
+ + VATGuard +
+
+ + +
+
+ + {mobileOpen && ( +
+ {links.map((link) => ( + setMobileOpen(false)} + className={`flex items-center gap-3 px-3 py-2 rounded-lg text-sm ${ + location.pathname === link.to ? "bg-accent/10 text-accent font-medium" : "text-muted-foreground" + }`} + > + + {link.label} + {link.to === "/india" && Soon} + + ))} + + +
+ )} + +
+ {children} +
+
+ + {/* Account Settings Modal */} + {showAccount && ( +
+
+
+

Account Settings

+ +
+ + {/* Avatar */} +
+
+ {nameInput.split(" ").map((n) => n[0]).join("").slice(0, 2).toUpperCase() || "?"} +
+
+ +
+
+ + { setNameInput(e.target.value); setNameSaved(false); }} + maxLength={60} + placeholder="Your name" + className="w-full px-3 py-2.5 rounded-lg border border-input bg-background text-sm text-foreground focus:outline-none focus:ring-2 focus:ring-ring" + /> +
+
+ + +

Email cannot be changed in demo mode

+
+
+ +
+ {user?.role} +
+
+ + {nameSaved && ( +
+ + Name updated successfully! +
+ )} + +
+ + +
+
+
+
+ )} +
+ ); +}; + +export default AppLayout; diff --git a/frontend/src/components/EUMap.tsx b/frontend/src/components/EUMap.tsx new file mode 100644 index 0000000..05bc622 --- /dev/null +++ b/frontend/src/components/EUMap.tsx @@ -0,0 +1,163 @@ +import { EU_COUNTRIES, EU_ROUTES, getCountry } from "@/data/mockData"; +import { Package } from "@/types/vat"; + +interface EUMapProps { + highlightRoute?: string[]; + currentLocation?: string; + packages?: Package[]; + onCountryClick?: (code: string) => void; + selectedCountries?: string[]; +} + +// Scaled positions to fit inside the SVG viewBox 0 0 100 100 +const EUMap = ({ highlightRoute, currentLocation, packages, onCountryClick, selectedCountries = [] }: EUMapProps) => { + const routeSet = new Set(highlightRoute || []); + const activeEdges = new Set(); + + if (highlightRoute && highlightRoute.length > 1) { + for (let i = 0; i < highlightRoute.length - 1; i++) { + const a = highlightRoute[i]; + const b = highlightRoute[i + 1]; + activeEdges.add(`${a}-${b}`); + activeEdges.add(`${b}-${a}`); + } + } + + const getEdgeKey = (from: string, to: string) => `${from}-${to}`; + + return ( +
+

EU Network Map

+ + {/* Background */} + + + {/* Route lines */} + {EU_ROUTES.map((r) => { + const from = getCountry(r.from); + const to = getCountry(r.to); + if (!from || !to) return null; + const isActive = activeEdges.has(getEdgeKey(r.from, r.to)); + return ( + + ); + })} + + {/* Country nodes */} + {EU_COUNTRIES.map((country) => { + const isOnRoute = routeSet.has(country.code); + const isCurrent = currentLocation === country.code; + const isSelected = selectedCountries.includes(country.code); + const hasPackage = packages?.some((p) => p.currentLocation === country.code); + + // Node appearance + let fill = "hsl(var(--background))"; + let stroke = "hsl(var(--border))"; + let strokeWidth = 0.5; + let r = 2.2; + + if (isCurrent) { + fill = "hsl(var(--accent))"; + stroke = "hsl(var(--accent-foreground))"; + strokeWidth = 0.8; + r = 3.2; + } else if (isSelected) { + fill = "hsl(var(--accent))"; + stroke = "hsl(var(--accent))"; + strokeWidth = 0.8; + r = 2.8; + } else if (isOnRoute) { + fill = "hsl(var(--accent) / 0.3)"; + stroke = "hsl(var(--accent))"; + strokeWidth = 0.6; + r = 2.4; + } else if (hasPackage) { + fill = "hsl(var(--risk-medium-bg))"; + stroke = "hsl(var(--risk-medium))"; + strokeWidth = 0.6; + r = 2.4; + } + + return ( + onCountryClick?.(country.code)} + style={{ cursor: onCountryClick ? "pointer" : "default" }} + > + {/* Pulse ring for current location */} + {isCurrent && ( + + )} + {/* Package indicator */} + {hasPackage && !isCurrent && ( + + )} + + + {country.code} + + {/* VAT rate on hover (always show on desktop as small label) */} + {country.name} — VAT: {(country.vatRate * 100).toFixed(0)}%{isCurrent ? " 📍 Package here" : ""} + + + ); + })} + + {/* Legend */} + + + Current location + + Package in transit + + +

Hover over a country for VAT rate details. Click to select.

+
+ ); +}; + +export default EUMap; diff --git a/frontend/src/components/NavLink.tsx b/frontend/src/components/NavLink.tsx new file mode 100644 index 0000000..a561a95 --- /dev/null +++ b/frontend/src/components/NavLink.tsx @@ -0,0 +1,28 @@ +import { NavLink as RouterNavLink, NavLinkProps } from "react-router-dom"; +import { forwardRef } from "react"; +import { cn } from "@/lib/utils"; + +interface NavLinkCompatProps extends Omit { + className?: string; + activeClassName?: string; + pendingClassName?: string; +} + +const NavLink = forwardRef( + ({ className, activeClassName, pendingClassName, to, ...props }, ref) => { + return ( + + cn(className, isActive && activeClassName, isPending && pendingClassName) + } + {...props} + /> + ); + }, +); + +NavLink.displayName = "NavLink"; + +export { NavLink }; diff --git a/frontend/src/components/ProtectedRoute.tsx b/frontend/src/components/ProtectedRoute.tsx new file mode 100644 index 0000000..62218c7 --- /dev/null +++ b/frontend/src/components/ProtectedRoute.tsx @@ -0,0 +1,18 @@ +import { Navigate } from "react-router-dom"; +import { useAuth, UserRole } from "@/contexts/AuthContext"; + +interface ProtectedRouteProps { + children: React.ReactNode; + requiredRole?: UserRole; +} + +const ProtectedRoute = ({ children, requiredRole }: ProtectedRouteProps) => { + const { isAuthenticated, user } = useAuth(); + + if (!isAuthenticated) return ; + if (requiredRole && user?.role !== requiredRole) return ; + + return <>{children}; +}; + +export default ProtectedRoute; diff --git a/frontend/src/components/ui/accordion.tsx b/frontend/src/components/ui/accordion.tsx new file mode 100644 index 0000000..1e7878c --- /dev/null +++ b/frontend/src/components/ui/accordion.tsx @@ -0,0 +1,52 @@ +import * as React from "react"; +import * as AccordionPrimitive from "@radix-ui/react-accordion"; +import { ChevronDown } from "lucide-react"; + +import { cn } from "@/lib/utils"; + +const Accordion = AccordionPrimitive.Root; + +const AccordionItem = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AccordionItem.displayName = "AccordionItem"; + +const AccordionTrigger = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, children, ...props }, ref) => ( + + svg]:rotate-180", + className, + )} + {...props} + > + {children} + + + +)); +AccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName; + +const AccordionContent = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, children, ...props }, ref) => ( + +
{children}
+
+)); + +AccordionContent.displayName = AccordionPrimitive.Content.displayName; + +export { Accordion, AccordionItem, AccordionTrigger, AccordionContent }; diff --git a/frontend/src/components/ui/alert-dialog.tsx b/frontend/src/components/ui/alert-dialog.tsx new file mode 100644 index 0000000..6dfbfb4 --- /dev/null +++ b/frontend/src/components/ui/alert-dialog.tsx @@ -0,0 +1,104 @@ +import * as React from "react"; +import * as AlertDialogPrimitive from "@radix-ui/react-alert-dialog"; + +import { cn } from "@/lib/utils"; +import { buttonVariants } from "@/components/ui/button"; + +const AlertDialog = AlertDialogPrimitive.Root; + +const AlertDialogTrigger = AlertDialogPrimitive.Trigger; + +const AlertDialogPortal = AlertDialogPrimitive.Portal; + +const AlertDialogOverlay = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName; + +const AlertDialogContent = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + + + + +)); +AlertDialogContent.displayName = AlertDialogPrimitive.Content.displayName; + +const AlertDialogHeader = ({ className, ...props }: React.HTMLAttributes) => ( +
+); +AlertDialogHeader.displayName = "AlertDialogHeader"; + +const AlertDialogFooter = ({ className, ...props }: React.HTMLAttributes) => ( +
+); +AlertDialogFooter.displayName = "AlertDialogFooter"; + +const AlertDialogTitle = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName; + +const AlertDialogDescription = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName; + +const AlertDialogAction = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName; + +const AlertDialogCancel = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName; + +export { + AlertDialog, + AlertDialogPortal, + AlertDialogOverlay, + AlertDialogTrigger, + AlertDialogContent, + AlertDialogHeader, + AlertDialogFooter, + AlertDialogTitle, + AlertDialogDescription, + AlertDialogAction, + AlertDialogCancel, +}; diff --git a/frontend/src/components/ui/alert.tsx b/frontend/src/components/ui/alert.tsx new file mode 100644 index 0000000..2efc3c8 --- /dev/null +++ b/frontend/src/components/ui/alert.tsx @@ -0,0 +1,43 @@ +import * as React from "react"; +import { cva, type VariantProps } from "class-variance-authority"; + +import { cn } from "@/lib/utils"; + +const alertVariants = cva( + "relative w-full rounded-lg border p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground", + { + variants: { + variant: { + default: "bg-background text-foreground", + destructive: "border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive", + }, + }, + defaultVariants: { + variant: "default", + }, + }, +); + +const Alert = React.forwardRef< + HTMLDivElement, + React.HTMLAttributes & VariantProps +>(({ className, variant, ...props }, ref) => ( +
+)); +Alert.displayName = "Alert"; + +const AlertTitle = React.forwardRef>( + ({ className, ...props }, ref) => ( +
+ ), +); +AlertTitle.displayName = "AlertTitle"; + +const AlertDescription = React.forwardRef>( + ({ className, ...props }, ref) => ( +
+ ), +); +AlertDescription.displayName = "AlertDescription"; + +export { Alert, AlertTitle, AlertDescription }; diff --git a/frontend/src/components/ui/aspect-ratio.tsx b/frontend/src/components/ui/aspect-ratio.tsx new file mode 100644 index 0000000..c9e6f4b --- /dev/null +++ b/frontend/src/components/ui/aspect-ratio.tsx @@ -0,0 +1,5 @@ +import * as AspectRatioPrimitive from "@radix-ui/react-aspect-ratio"; + +const AspectRatio = AspectRatioPrimitive.Root; + +export { AspectRatio }; diff --git a/frontend/src/components/ui/avatar.tsx b/frontend/src/components/ui/avatar.tsx new file mode 100644 index 0000000..68d21bb --- /dev/null +++ b/frontend/src/components/ui/avatar.tsx @@ -0,0 +1,38 @@ +import * as React from "react"; +import * as AvatarPrimitive from "@radix-ui/react-avatar"; + +import { cn } from "@/lib/utils"; + +const Avatar = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +Avatar.displayName = AvatarPrimitive.Root.displayName; + +const AvatarImage = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AvatarImage.displayName = AvatarPrimitive.Image.displayName; + +const AvatarFallback = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +AvatarFallback.displayName = AvatarPrimitive.Fallback.displayName; + +export { Avatar, AvatarImage, AvatarFallback }; diff --git a/frontend/src/components/ui/badge.tsx b/frontend/src/components/ui/badge.tsx new file mode 100644 index 0000000..0853c44 --- /dev/null +++ b/frontend/src/components/ui/badge.tsx @@ -0,0 +1,29 @@ +import * as React from "react"; +import { cva, type VariantProps } from "class-variance-authority"; + +import { cn } from "@/lib/utils"; + +const badgeVariants = cva( + "inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2", + { + variants: { + variant: { + default: "border-transparent bg-primary text-primary-foreground hover:bg-primary/80", + secondary: "border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80", + destructive: "border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80", + outline: "text-foreground", + }, + }, + defaultVariants: { + variant: "default", + }, + }, +); + +export interface BadgeProps extends React.HTMLAttributes, VariantProps {} + +function Badge({ className, variant, ...props }: BadgeProps) { + return
; +} + +export { Badge, badgeVariants }; diff --git a/frontend/src/components/ui/breadcrumb.tsx b/frontend/src/components/ui/breadcrumb.tsx new file mode 100644 index 0000000..ca91ff5 --- /dev/null +++ b/frontend/src/components/ui/breadcrumb.tsx @@ -0,0 +1,90 @@ +import * as React from "react"; +import { Slot } from "@radix-ui/react-slot"; +import { ChevronRight, MoreHorizontal } from "lucide-react"; + +import { cn } from "@/lib/utils"; + +const Breadcrumb = React.forwardRef< + HTMLElement, + React.ComponentPropsWithoutRef<"nav"> & { + separator?: React.ReactNode; + } +>(({ ...props }, ref) =>