From 56e2e51296de8cd37d5db290077e899bd2f1453c Mon Sep 17 00:00:00 2001 From: demuelle Date: Mon, 24 Feb 2025 10:01:01 -0600 Subject: [PATCH] Adds code --- .eslintrc.cjs | 18 + .gitignore | 24 + Images/01-pr.png | Bin 0 -> 23416 bytes Images/02-details.png | Bin 0 -> 57565 bytes Images/03-output.png | Bin 0 -> 83808 bytes Images/04-failed.png | Bin 0 -> 53681 bytes README.md | 121 +- index.html | 13 + package-lock.json | 6055 +++++++++++++++++ package.json | 36 + public/vite.svg | 1 + src/App.css | 62 + src/App.tsx | 24 + src/assets/react.svg | 1 + src/components/Advertisement.tsx | 17 + src/components/Calculator.tsx | 32 + src/index.css | 69 + src/main.tsx | 10 + src/tests/Calculator.test.tsx | 26 + .../__snapshots__/Calculator.test.tsx.snap | 8 + src/tests/setup.js | 7 + src/vite-env.d.ts | 1 + tsconfig.json | 25 + tsconfig.node.json | 10 + vite.config.ts | 16 + 25 files changed, 6575 insertions(+), 1 deletion(-) create mode 100644 .eslintrc.cjs create mode 100644 .gitignore create mode 100644 Images/01-pr.png create mode 100644 Images/02-details.png create mode 100644 Images/03-output.png create mode 100644 Images/04-failed.png create mode 100644 index.html create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 public/vite.svg create mode 100644 src/App.css create mode 100644 src/App.tsx create mode 100644 src/assets/react.svg create mode 100644 src/components/Advertisement.tsx create mode 100644 src/components/Calculator.tsx create mode 100644 src/index.css create mode 100644 src/main.tsx create mode 100644 src/tests/Calculator.test.tsx create mode 100644 src/tests/__snapshots__/Calculator.test.tsx.snap create mode 100644 src/tests/setup.js create mode 100644 src/vite-env.d.ts create mode 100644 tsconfig.json create mode 100644 tsconfig.node.json create mode 100644 vite.config.ts diff --git a/.eslintrc.cjs b/.eslintrc.cjs new file mode 100644 index 00000000..d6c95379 --- /dev/null +++ b/.eslintrc.cjs @@ -0,0 +1,18 @@ +module.exports = { + root: true, + env: { browser: true, es2020: true }, + extends: [ + 'eslint:recommended', + 'plugin:@typescript-eslint/recommended', + 'plugin:react-hooks/recommended', + ], + ignorePatterns: ['dist', '.eslintrc.cjs'], + parser: '@typescript-eslint/parser', + plugins: ['react-refresh'], + rules: { + 'react-refresh/only-export-components': [ + 'warn', + { allowConstantExport: true }, + ], + }, +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..a547bf36 --- /dev/null +++ b/.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/Images/01-pr.png b/Images/01-pr.png new file mode 100644 index 0000000000000000000000000000000000000000..a02496c5bd6db0f231542454d60a6306c200cb0f GIT binary patch literal 23416 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 literal 0 HcmV?d00001 diff --git a/Images/02-details.png b/Images/02-details.png new file mode 100644 index 0000000000000000000000000000000000000000..7166c9fd74a6fa01c0ed234ea5e121e7b992491e GIT binary patch literal 57565 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 tcB3X$)JVbBsVo-X>3w^PwCo|Iz?`ZURMHrHn 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 literal 0 HcmV?d00001 diff --git a/Images/03-output.png b/Images/03-output.png new file mode 100644 index 0000000000000000000000000000000000000000..a371872c247cf3bf5063cb541175465edb6ee7f3 GIT binary patch literal 83808 zcma%j1z3}P`!)(DA%cj2gh(kREscb9C@>mCItIw-e2@~5?hb*`J$g(*>8=3-CK7|e zr~#Ay=JUS)IKJ=E_uFx7yLbQUzOP?h*Lj}zBD6FVNpI8MCLkanRaTOJO+avin1JAF z>&@%qS6`YONIo*1)baFItgqlYHUpd> zxu?^v{YE!>-l`pP{Kd%%c}}BrdF4mp%KHL}>({%9n2cK53kkkDU8z%u{43^aoy}h} z8{|i{@O2B?wSx|Fy*~)2Km_;3Y;uXU}`ng@`uYa-Eiz+~w&; z9t)&^NM0O8t#jY1*d~eN`Bga%-7f;X2AYardO!EZ1zowfNIsQI_+_b=!{hp+6xfHL zFF!a539&>W`r~TX!!VU3Bos~LZ=VuBcCvu2E~ClD!@u#*;-wl;3@w2 zCc%|(I|3s7(G~og7XKz7AWR4&xPkwsz`y15uKri*4dOh)|2n?f`YYoLZ8>FS{I|A+ ztCf`#$ky3Szos9BuL^Fbqwl7#t|n&T4CFDlbbf2a;{|m2RfIsoOALPqv~n|N@&YJJv}{nJOy~1U2S;zL`6k;pYikZ^K;{KaD%*^+|0eWoj{NORmp$V zBX0$=aJ6%BvvYQ0`c<#_TW5DSNoM9>4gL4)U)O2nW%oZVIf4FtTlgE~{guMY$McN$ zzw5>qmH2g5Ov}#8%F#gH4v04oz6~j1(dQC>=l_3F{-?$NRZ{VLZC--Z8o;=c<@@cz2>|7D7Q+4=9YctcCwmf-#GPLsN=&nX*2 zKp;b)EdN5s>&n)`H9sA_xt=|CCl+#+Af_)1*|JfSPk>{$-JPH4G+~T9XBT|(bs85J zTH9WUG&K9ZBMxbXqC}U-68qHLn9^4~J-P;sGeIyM+lI}B_wcRAXiYA1+N(F2{v!Cp z$D~-$cSFzatY?47^LGvUS2|^#h=|B#2(JA8!@iWj+?*S_n``Lf7Mimrx)LJm4XbN``H^82oL{%kNNE!Ar`i5)gVQ4M$h zXbW;Ct`&wq=a9)uxlMk5dYpK~?(rXciAhGkSMtv}{*vLQV&bYOqRyFk`KK--m-(wE z&iBtb2!afs%INE>@=AcC|1@~;mNI{Y`wuy;LUjJBsYx;Q(xCgp$obWQowD2iAqUa_ z_W;YkVEPahRX%CHzrWAI&0YDr=M4(|I4&-YgI>%%9)oD?kF-)P%FD|;af`|MeUH05 zAbKDCzVJmCQA9*^{P*u#e7xnl6S3P^EQpm`NZkW7&vRVlmtwXs0ybPa$ro6KN+o*_ z_2tW#MX{g~GA-B(!j_$&8%4UC!uzw}+}=rc z25B8hqf+*uA+u0#p5*P3_qUi8Qp%uF|8m zm$wg!lU*ten;OkJhEZFf;p8KFF%^CNw2uq|09p|{ighsXwEB^4T+1@QK-49{`gmoV z33yWkIKPhdW6$z#{P_IHD?EAxB$%zminHaS+lWP~qhn;b=IU=pLy!#h z=xqto+x7Jz7D?`fdt*AVJgsP<_Q?)AMo9IX4W`Y8I0?JA<(UWL**x6q@do%jcug;* z6Mpw_S|V6PeH2QnTzYyc7S^kJLkyob0GK+*Orlms{pKI@ary#~Tbl@K$<6Q(xHOrX?n0YMkTItAhu9 zm4@kz&%RLDePmBp`BoY$$>obHZa!MN_4`FpNI@o?VQOT`eG)2THwPabB^P%@$Iv4p z-Nea9z`eI7|Dt9!VGPVNE$ZsLgACL>7%&n)nXy=1GjjH<6m$Ce433rY-G{-=5@YDa zm7zbqjxnjZLp2#jS26b@51W9eWR3fpdKHE(?K3A~(X_KxG#eY=rZ?W}3+NS5-m|}X zhJl;)?sTucF|y4?3!_ZjN{?SqKBZ;K<@acBKN=4tbLtlO{W5I-;jiIW`q^L;?6-=p zB73Cg7DuZ>UXJEi{mnDIj;dJc;fitdd}*<}H+yEF4ykG#1^XZY02l68U?n>9{) zqkSqY))*%neQ`W+ejIxbgY@{J>qUDD!;5@}WXBWVPk!g$Z20$Av@xB9g~d1Y_DOy} zHfUMMA3n54aga1ZQJKUI#r{Y9R{19PKcFaW zFNzM~@WUrSSX~7#!`)P?YPp7?xW};x5jMHpKmoi^H^qGrAE znmyOGj6}F+eKbFqo>{xC#TVyf(C8N7cfOjsKQJQQ;PP9Y6I`hgY@koN_QVx0iS+@YZVPkEm=Fs+Zax6Z8_TT#s1#T zzgBcz4lV9Z*~-?o%ltrPWWWu=Cp|2^UuS5y7F;GSBf^4c$GyYUTQ9TOeu}@{CASfQ zTb!R9Vq8sdi{j1$2X@++R{Ts+iMr2ij1bjiR;xjAX{xBW-p`D~d_RgN8(c+IINCow z$ntMc*~t%-{&8qbK}k1|Zj;R&9RBc0s+sGnTI}euotF1%Qn}je9eIb)oq}`pYH3CGGqMDeomQbo*{|c$&Ml;j<(8s-)(DBIVbI;0rj?JZ_Ox@DAe29cpEVy78c+`Kij-)&X+$-C9c&YZtMpBk1MVHWRtjon`5(L@ z>=e{i*3X%)RMZsh)bX>Q=--qMIG>e5G5&rzA?JX}NDI{EYXlVoC!c_o!ei(M0^_=x z6^$2K!}k{YF9GUmdowe8%l`L`?Y`*4ofi57zZ1-U>gObmm3~*~wlmiC4dOm<-}^_c zqSbcRtcO8r)xydNopVC5dgdJ5@Reu(I^X_YIAik>joa5ZaBPw4{eft>8N0?Pe0s3l z6As0xE_X*`gdc0tvR1=RBDoCO^f7O9~l%Km!T=yN~{o=cPR?Jv#EOO?1xCi6h-|0yCcr8l0|` z4+Eo_St}0Bjh}q+Ykk}%a&ZBdLwX+iGyL=+(Z3%aCD*Qs3C+IiVKiG&bI)kR4oj8K zpm4P9CV^ei`*WPty`IQ`$2Pg3DlWrjt?f3H)0q2XwUoR8ZEfwSht*F_jXl0mjR$^~ ziHL}}%UxyI;#!pMgt~JVTVQiU7a8@os$h3jEKm#ZX$c%wn>{Yd-LbPD_#(T;x6az?r*cJhL6@m zLTRtRR8(wh3_K|X8(+!dF}8AQ2j}|8Zns>%Xj7McTR_Sn0-Rf!>p^O+4P|qB&ikmw zcLm^vL@4N~xb+xs5%&mMyq5X+gwqoo!cSPWo>r66hvK}xr5AoDt);N9X!E$R&N@7 z_^rz;1Eji1OkDqotOI*wl#rbaq`5t)@4qMo^AzbH987X3R!i|eJ(~RnoNGuHVADvV zvQGNUs+!X5>@$-LLaI zJ=Ci+@49~4Xwe;$Tv5TLr|+k2hebi^)o%ZEJot|8ejEDXQd=w0K z9|aC&>RD!HI=86@93R_Yk5469&>0R}t$}HG>0lzCsO=BUbp^Ti$MameP7YmrfK9Ef zH9aem7Cq6akF3#kJ2rkc#W|Vw#j*$vQuVb@vm-pzx{<$6gRwxZ^m%}w9euuT(D%?1`TsUdsEpYCmrUln}$u*4U zq80IkTZqb#U{0EtddJxhkTL>h)}V!%D=(fY8)BKD25N()AB!Npg8dop(mX-W)$8$& zl`b~q8rA?P4U@w{>BT*H-Zoodt>G?t3V<|f@x~pFI;CJ?Qet?OfyIQ4`U2#<~hpA@hu1C(Zv$H?S?Oz3}S7uZo^MWvnZf+mTrNxZF6Zd%yb>8M3 zb$z5sCL@Nd=pkY-h^!`eNe}e=)S+KG%`~I}1J4bJGg+g1ooRYUa>VBlt=jHA3Gd@J z>LV3F@;J9&lvNm*2y_JX+jn{Vet%73%LCoDSIBH^Xb?1j+9#7RxE6jCc`+?40GxS$ zjo6W3Eg3gunnriHkUSZTWO;+wRzsKIYfLq{&r|y;-g!qZ&;41KrTT5e!} zYHlFlErH&T%w&tzR)~YjybnwnoLw{O-=*L5NC_g*T-fM1JDvbYZRO#Asv;{(%zNJI z{_Pae;0^L6F_TL=@d?K7s+oUz_}5My(g`L-pt77tjF6t4={9|^ZJ3c;yVak-oqM;} zjYBjLP~RrC)~(lL1h1quVaMHcKo^MP21UzOr1G$Jl_Gu7UYj!vV!otj=J%?oD^4ug z+ox=@wnnw-wN%P}@+`SZhFk4#jq?=;{-$S#2e>Vr%1 z+1sn~XY|>#+O(^8=0Dm6A2z_AYY&7s6=h?-FYTo(>G z@B|#wn2$N#>Dc6IJnuMMyR5(FD1!7UCl!E*je&^N;ACqNl-GT(hfO`FZaU zN_y72O2+aBrB0YW6NzMNw@Lf_>_Fyb@n*xI`}e%ZTd9k0q%%aZ7ssE^Sxuj#(y06g z`}(+XRZB}tRp!#}sPQo61qjHdW$}~Kf{*L)HR`sb2=QmQPdw`ro`2!p1_VSSmqpmg z(X4!R#er-%w%MY`!+R4}eSfx*i`Qdk&TcK*Ppt~JabH`M7KoCQ*bYftDd&~q9@usa z{{5CvNj`dfL*S0ieQQQ9H5C;K`i_ZGmx-n4<-Ujm9I`PgT75BZDn?^so{fV;snKz9 zg^PbG@rEL^ah+E!DX|dv!E@WVg|&+tjIO|P&4V5bgwo1L(XX{Ohag*RTQLDW!AJ97P`IZFNq@|DL2w8Ijb}CAs2zFTrI6XLA3!Z(6 z<@f7g@Ogu7ER&shveG~w*cs6{H@4C9N^Hp7mhm+y&z41Xgq9njO2EbMT7`bV-Tbh+qb z!PaSq=el3kh{9UiPO-NchIiU@?et41HCmf&z?$WgTKTlC{*G%;CwWP4h`ViZ$c4wo z#j{7d4u#J2&CB?o90|xJUMyWq>t6UFJN!L9nqZXh?!M|)Y>u9H#>L@_GSQBSw+l~+ z7g9G*o+Y*_W+;n6R;gE14bcIo#+L@IKi`}%T8&@kKu>4fIa9bnL%Qp8GXsfJoO;cj zoz2ayrj2jz{vJ+%=)LLO0Jp7i-Ah#WKN}0Lvt5#<%UE~^U#PPklNDY18ZQ-eRJ>KY zsX;IK(oO$$Wmb7)@wd0q7rVjPW_vlOj5XN1=w}7^O^=fP+b(`7b9Luzu~JQUJ)BBN zNO;@z4eE=V>ljIwMC9OB6RVQU0*?(e_)tk%SzOfFfjJJyI*DV4ZR5L?_wA4PdWhmO zdW>Dh6g=Rf^)}v;^8JhVHfCxQAs72mBTy&p#n34}7PsMim9Eai&1uo|npk>unv!9@ z^>PRhJ`7RmNuMgVm=H_$5?5>O=u-P$sy^Y)tv6MDXVF*BG;o=_&G>R-@slEim>6=P z+cP&cU8JgK^t5~l+_WazSlI-ePaQg278&COFSsF08ruN_e!00)QwENV;f($j554nF zc1jg5xP6C2LYk(F96Uvjes(e{EwthiP&onP2y2BD_w||CLox9-m-hhp)jxoRcx2ek zR1&z{t;xZ>`wf*F5vE&-Xo!EI_|RNY*SOZNg*(OdrPidP&81Lrfphwk-Hn;j#E%T( z8aaMvwah)@S-i!Xnf759gH2r#jUo!K=SEhGons|WJ~%wr#KeY$-i}j3M*q^Qk-zgd^igvvAV=z5%u0tHLelp)~EdI7os`^%?N|!9@{`kZ= z%Un{lecMKg(aPJzn>Ln~_v$703KQ|cl#?sBG;sdG*e%ZLX4kssOXX^M8?(@(F zd|ni^T10*E*xY(u$3{cOX2GGlo%y8blXB}$IaTV(YC{WXt(S(fTbwsa($q1G-`zRY z#8}^8ooixA`EbBajA}7SIWa4Bf4%F{LlVyJ3_C79e_HqKFEb)Nccip?m!_H{SFE(q z5X-k4J>aQ}Y`6U<{NDXvzB?YGb%i-5-H`$35UH7B-7vT@?vC%o^MQkR2Whoc`9g<> zczE&f%hb`;25ePoqno@OwVVySonBJ%=sU-=p<*@3tiatlAplaPS zJzhT-DEL4|jGmX0exlb-LAa<*Bax!3BfJ=d{~*l$0(s%vOavf#heVq-N^ zv&3er(g1ayXsm2Mn+pVXR!{}0CnOkSNzvD@75~7b+f8gWo{Vs5UzDyExNlBF1{$vJ zHB)NDS*fN*4oA$CxzpJ#3D1JbFnHHLxAh3l9_T!88^#Z`Pd(g}mN7j?(iK?D1nge; z{!r^Qund>ml|4ONp^WY0ZdzCpI~iT-8p?|5GO0e_D}*Ba!Uyo7phvH*0Cm1F`%SLK zAjEszVt^b^`@wCxVSB5kB0Y_G2wU&eGmqo(ZwWKa5l>ZCBE29w71eUR_PSPq%guec55U z;zj!~=AnBX37u3y@4npm+wLZ0zZ;{~*X^Ck)nrj8}$pa!hXG zzJVDBP`Q39*tCk@vsX-U*9H}rtmQjCixXn%j~43b`>}n31~+trbABwEowiCXHt`_G zPFyPUD0s5UKVBNsHi6+lc2Q0s?o2 zd)B=lF04U4k?{jOty&j9&zqR-TEl{g*DkH#c)&E1;x5g`!*RdIR2t12hFYD8&CQ*+ z)wquj9r0mL%YAO6x|zfFLUzMPKYOKjQiaO(BFWUztEdkPl0xpeztC^X>0DT<+w$d*u2$OR{y&)WZ9Ex!ki7GA`6rdwOJn0K`V_$~HIH<2*}6KCh>eSv zcn8(`=3qD572Y^JH5Ea&XE0sdm5;ud3&-z>%7%u0AYAfca}f|c759s8$+TN9zEUDw zSwTWZ#xoxKNRffnbHO*)r25j>b?MktP78iLd@o|yY^KA4-7bE996*cKsu@V-i9bJ$ z3Qr8LHEO5&{p=1`$b0okJ|Z%L|I>aEV+sxn&y??xSAA(1M$`AsC|>S5`uLt`1nq7o z98av2>JHS5GP2*d?RoHSkWXQa^K8eVI+9ETJuCRtZ(|Bx$vNA3CmGZnEJ)lEj*tXK>+M|NUBe z*(u0h?7t6dnY4-y0g(1sKYdVDA_74d+W}y!(s`M^9_n7bJpJ*{BJw3-Xg!B zQm7reDTeoAfpd+C)4(~UL^kDw#B6R(y{foxQTO}ztp->gKmK&vx5w!BoZ>G(ev$~! z*=M*=iQf3bD*0zZ2~746`|D^M|af|KT>M?&8Vs545Mhr*i*} zGqeba@Z|kxg_V1M=!;(-Mac(z!wQo#H~xHuL9}>kUZ0SM8T{KY=3fai3iyUO3%aHL zF!=tqAf5*Aq;$p z!jPK6$JB|G^pnw4eB3(uthmh`-LM>)_CG5tN+^Qf1i~Ej&s`!I=e6n@tyJbBCk+|z zl~n_D%0e?rqG`welR@pTz`{ZeU+Fu`5GtFsnAJ5}0uEbr+i-f6kXMf(1;5{b{x!Oj zuLckkyT{1V`v_Y2XISp^m-U0nrgtiZ?F#|+FaP8!{~9V~M6&0H-R@#Nv!b_4Ik-%8 zqGc_*)y}`1W=&<+`)03Q&#kp|wVp(TtYbKG(<<-3a;(JCX5&txF zWUPqZzg?yzehMO3XmZ-|deS?T`Z1a&Su)Ata`*a@_45fw_-4jWmNM@oqR{IDi!HwP zKQ`WJ++@-syF$7t*j(P9lAHQ?_S93?idw~g2mM{go_#h??doa^k|$eGfmTHMsp~wq zk?;UkQ(D)OhWDR4H}C9faupZJuL)Sl(KnxAuxf__MYGFKy zzFIKArrg9J=?`>OO4XwV%lRZg*1s1mI7{N;yoq56M5L`&vlGVf_+59?k!r4pC^lTCeCvvsz<$>v53dWwg*~RQM4sJ?uw&%p<^et)a5l4* z>jJ zKRYmyi*PJzDE=EUwHGEMER>W^DB*;Zwtw419O|^(QB#MDz>6bHGLF6>&O+^{8%=!s z`UjK5+~1ZLwoUbwsu0+J&pc^G9_Zk?%cKgC{Je?jY7=hhfXi%u(aAGJoi3+M^25N+ zKK{UMW4Oa_;0Kx6YftI#hq22mHQs9PN4TZE0wSal%(vEF5y}A%uM5|_$d}TTD0S(r z{TRJbceF=UbUln4+>j_nZ!y$v6q@X#&d#RlWFJ%EZP{W892u7bv=w{Udo_2;dj1vi zwc8aRASroyEkRt&z$1#;V$)%S$H&Kb7D|lnfsoJ_#O|lqk>X{FY|z3XqIew{9PjaQfyFUDG>Je8;!G z9>&dT0lyAfJpMMF-0)e?3@_P8{`k@D7)OXpX*hjkf+~03cBWm(3nfZ-$Z9-))4S5K zh#U!)l`RU`yf~_%X}e5uv)G<}>ccG&`>Fceo6EUJdVWBqwKzWhRoxVc5V|3M?GE+9 zK>da={ooGsZ!mWqwY>3Mt?+5m#I4&z@1DSR_>)5;teeL)8d2glj!m&fi?g;}onDl* zJne5|Dg`HjZ+#~z7kcy@Ko*J-PE?PNXO9zF9jjNi2Ow80LvH<;TbMQgEW&i^8j}M{ zbj)^8)vMmcxpyOq^r-AuN2V^DmFw#3EeF=r$HznTU#tb!TLLeZ623*L9h!h5qRNd{8hj46tjq!rF2w6x zF3gTv$OPu_qNcW7o(J!?ZWU8A|B4!#E^rwO#a89h<4_xC%7%L|Q$9ZTl{q@+6zRZI z-Hu~4sO>zuY4OR1ogM$-UN~k`U_?sOu)&e_vVDigXx4rBm|EF!;kj=|It>k8qhy+* z9_ZYFSoDGW*Le)tkAZH9bd{`SzS#sb!kUs}^-TSj>251Qf=er|V|#L>Wj41Qf6ooaO= zxH*Dc#d8erJh=BuA7gu&hU_+?$Ne-?dFur z!Osa6VPTE^LH9G?<8?Ti#Xg5ge9IVUip|mSjLtP4LoF{xv^(75InJfH1$KBr=XsL;x+iS|3Uj%T zIQ|)ob8Le62#bhlTKkO>O^q zCQyKEo9p+*%!}_-IuD;PX`lN|Vx*Ooyc#UG7not^rz|$QEsTih_Qi)5<&I~EFjE|G z=3R-KC`Rgd^@{~-g@*rz&zkhmX}A97>`0c8WA46jRIg8T(Ll(l)i9QtN<4;#W2Cm7 zAulPkDBJf*8?}K+ibb-U`of)JBr=*#1|@yeXDQTQI_WiQ*|4#O$_#6 z>Xem(OF!eIv$f|~zGj=oCU>7+LoJro!?!io&AS53l07|t9+%+qmU83FFO%(`_UQ&NvhI3szbO1G=SH4!K*-fYDW@P2SaX}x3c$0uNb92lEbR+<}=oH z!>f4}AC?lVtQb7+y4I!tv4S^F9UIhq%WFP! z*u11GaxHzdR5`KOwTruH;Bq0LDLt_Uc6NMPUFUkt-{$RToaH~?{0?gD+co4mK#!Y= z{7SkB@7sZ0Yy~KtN^k>Vq^@&~&dz3=5<2nm@f3K5nKZ&JpNuXeS@*$Kj{jmPg^g_a z6x#zMsC|*Vyh6W$^>cY}X#^m`?%E7GnR83@j;MW_iKOpzE*m+*Srd3MFIxA#x@CGP zsdgE2f(*Rq15~nPzS;j7|0zqZm4TYq@C~7qNsaZ?)3If{2`x3b%7*jOI?E+Lz8gYv z$uTupu{lzSi-^dWM$iST5Rfg3dN4Js!jbN$9YIt7fj9IPv_SncDny^Q1RWQ9Qu1hP zm>!`(_<)oHq9Ffr#@rm?zHWPpOTBfCPFN)_vFD?}CbL!OtW8vD!-mCsC3-1T*9{S`-om=1AHq6Y#aMI78Cmv9gG_B0V2{tw-DhfI+GjRkb3Z;Ex&q0gK%QqIY zi(F`Qz~%5CtXlxhQqs(&ahL@MPR*WNsj({0VXy^ixXy3(^(@39yb?`kGrj4qYXPN( zyq>c2SrFowiYyRX>(E-p4jN~P8KY%E*+Oro$X}B}N>vM6JR5=DvUud;G(3o%4j*Y%Wk(qnz(LogzDV%H3-$(f(-ZJUB}s| z(Svxo%$(%Tudgk(`|VFv1tj6-T0FQ`l@mL_8J~GntmmiOUcboiQ2#XCRTO`V$RBd_ z>B7A8D=;B7@kzR`@IWl?;gbz<`01Q+KZu(dEu7+0dGd2rU+T{5&dBj$XoyKvPnU9i&go_# zb`Ik#>_s)5!?S)^BRb&WTg%r;Cifmvy$yd7y=giEc!c&17x@r(y^B&lxKFa!r`8m9 zlHlc=-vH7TWWHarERc^}gx?QY~amajv>kUPa%)8Ag}jon8=5qc*q~9CtlmuLM$;a}QAXhcIpiw-TESi!>&PE0+B<4O1rOze-Z!YwZM1i!% ztE;Q6Pbo0{gqK^-mh>J|GTClQ@7|=_vi)mxLZ^EuQ^1H>eYYMh!@BGYJ7YOL!X#6% z$&VMKDs;oQfw84IlVuV>+LevbPqfeN58sMV>e$7t4C;bG!uEd^oA=;#XXd!EQ4K=T zk>ViRgjrL$j&wGrsW+OLfKM2a7faf)l8$DZd)2TF0FB?uD-Q;Vw$TA;UMXBdHdZrS zNOH5CSiX89vl{lcseLa+ywKFI-Ct@Z1V*a^HJ=vE-&%2~YRWG;HAiI<^ps{z+?J56 z7D4(=Srt)b(5^hMG>SD9F7Z9-Q^YU}jhoxXK0B`(bg5M&5$!+1eZnE#voA~8;@sE1 zOzr~0JF||yewtQC8V6fJ*%uI5>46z4J+T<(O49+gkvKfb*547smkjA+d*<%!Gh})( zQtuJJhaw5#|Tm+avsUbE?qCTU%Hk`9Mryibgez1H87*~?N24;lr80yVY zn&Hx6JCwM9kImK32DzRgRcTe|l(f0MQslp~D&as3B3FFV&P5?MLu%=`AFCd49E>lv>ImmXZoN$-wE3 z<#*U_4_sJVV13$=J{Yil)h2$VXWumHiXQYa-!0(QUY3J2XfC}jaNxFfpMJ+CE$!XM zgw^Mt7dczfODP`GKEj$oRXnOsx*P&k#c>^}Fy?ndZ4t*-Oya4R%*3X!ZU*qVvWU{e z70NAWT5hVv!ls~;QQ0TBMh*EtBVJ|ldE?2Uy5kP9BGGnw`jSbtQbQKeGXz?y1F{xT zYX!#!$8{^MFw0|1lqI4kb1NV^2I$C0slhLooj$S(S2wZhf>|~3+@sgv?FbyZU6C}~ zW_3&-Ww|GWb+pQ%RJy+z!brW6IjT_J*}!dN__HKAWDfncd#=YU;OvW3aq%{Y^qS$~ zahBi%w~R1LF`Z?LOTW)#k4j&pXhTtspFru7Z^9hgcVdjJ;KTI74HB;FE;jD*ili5^ z>Z=80m1R^Qadp=8?P@AplQvwjJ;33DZPj)^)!QpLkFkt(yDIpc6IT?f)~KOv|Sq6t`EKBbt6 zHO#e1U$P1gCgxPj%y?uDiIzClp*ylC2OxFOc6nuA3MaBoWy~Btl68S z$pl2&!`zi#N#+D>#AVM3l2ocqT-;A1cerQ|*7c!%C??m4b}1GMDZgH!fv5?nBu$ACgNJ@ZULAgd<*a@@}F+lKc-6L0}t(U{yIrc(-l*-iMWWRg*CRs(WQD++KCHfF(t zlKEFOwQSQIGY)e~IffGo11wm@B^3bvdugQwn~zl&+vLzq^c;r>lA1PNZ+Av4%6?Y=2Ee=yK0a?A7_EV$uY^Lk>om^pSEm%m8t!zkAE4ZXKE__Y0wxF=>? ztQ}UpFoL_2dMMq&ax7{vEgvikq}OQq2B5S5UMv^cNE=YfcMG@CWHaR07TBGmUS~7J zb!yyYfSWcys7y$&Q#h)+9PqD&qgJ8!1Eoa2kVyOFOQx6_osZ{f8F|MhOB~43kz5{* zvrNE`kJ^P~4yIJZaNUv`NzK*^mU~7b184B6lrZ|(gsjE-Yh8lyg}8}(A>^KNo{Z9)@`A? z!N)KR7;#!u&DW)Ek5orotOArJib_Mih0ns5qHjyTaSnLFd1`n$W-b#f5k{<@-qPj* z6;*RGtP1h*4uoIvljQTzkoE)q=rER31+S)!4nRdg(i>Vq8UrJ|4Y!Cn&1~xeFor1d z{V#3Kvnbl53ZtfJK(n20Mx!z1uq`>nmrs6GuBMxtyWdm`6g-?vNq^@OGxYtte?oHl zlYBM;*NhJEgd2})cGoy`icju^7&m`iO&uWkA#OP=Y`Y2jNDQI7@~S!XO?PTO>i12HEYXn${@7rQh4~tr#0zVh5zoRnRYW&aEjB%}_4CJ=kAFOZp3=t5jJ-lLp~Xf5M=agJeQn% zcYs-|-SxD`J|0d05_crb51uDjzDKQx_0_Fq+IiRlY@`|f`7uGJXGD>Kbw1}3=b=$orAfEw#5sqdbB zzez@%kOdW02qT#Sc|u%o(1-e#nZz$Qlj&cu)0W`(XSA|fh~4uA&MbWl_f#}Za_z$S z2L-?A?R1=DM)6qNQB;Ez`MjOgxRXF?R%7u{1|rX8OfysjT<46%f55yPL>1s60=E2%t3 zG<-V^9Jz7Z>hGXcy_A*HlPbe&+zG(sVg@Xr+{Jvvs*?plE`v{9^~ zl8o3;cgUzlcedkU|7jr;^6aCow7{hGY5e6gEIK+4uhro772$d&CnaUU*`u-<=rkSB zrkq2QfYlO&QXec%@j_!E?wIK=DISx$UMYs*K*4(pz%bjXGCA-@O$F8Aro^_BQF62Y zn8@%_q=XnuJd*2RuQM0kiKul`0H^FMn z)_8xLzRKhP(ullpFK7^uix);qsGXSZl??{0Nq{snT8w{#!ID3_ir4&t)c?9qL2b{u z+3!2OM0&e?p>vZO;NXpbaUr&{>y0w96S-*bcYDMnPO{#(N|ksnl&$|W-?qE8;ES%# z{+Bm=RpGbp4K@1k%()&}s^WQ$@LJm0J@_ig*nC?bR2RJ`-AwOF_rC zJ$HCWNHf{lRc!=#KRF=}WE4I%S@;+gFQoyv(GPtB(?m%q=|ob-mNn{Mgbl}nvEMhs z(H*kohs6o6GXb*JR#pROT~7Jas-RUnn;bl^$(0(UNKz~3*LnxKUdd}^B8jy4?D%-ctg^uq5?d6PpZUL!h>u@y)v?W$yC;JE=F zMPiSpps2K%UHk$wTFo5Q309%M+N24)Vx2Z9&3S%3{8Xwmb6&gd2$%?A<8qYl*J-hX z=n2{S>>LT=@`t%kChj03$l~XnN14PAcJT5bGT%EwO3}da7vqi9!q^AfDc#VQvrOfJ zu!_lS>wq3>g%i5_CYtEREmlrx-@;y3l)~JRE(Nmt>`DmDT0`OYq1i>a#oUpQM=}}r zrbECByoQ4p*|NoMC-sv{z|U4sTirXxAvvsQSR$n=)Jd~F`*baRCtYTju{iRXt{a)6 zWU=;`A#8!k;AjczadUjhb0o>9yZ06`lzsqH=@t1;^bEn(DZEd)%w~-z9Cv?qj#f*c z3Lm{e7>OZFe%ug>W24NVMnJg`>l$L0->VqaiZYMeC649L+0j?iv|h9wvT=x-T*yFVzCVy zV)f!o5i?mcS$r#7QCzEV)$rsnH8)+$B`DpD4;l9M)vGb#8t;u`o3AuSW02Zd_U*1L zd-9T{v@i|Y7(1y)^S+Dbl|LIVRD3q#ruYPly?J3P5*< z>oxWL2 zDE^_zpVPzjB})ip@W;lTHtWNu%7W+Z-xCI`zVh|-NogCPNFeBU&&RN;v-Le;M$02< zwtD4Y001o!#~#bzz{x4Jm9>X~=d>Z<8fKA|2kpf-cuKg5rPV^F74z*F{;x5v=oI27yYl9Bamha6--(6w{ z8#=eWMRQ*RnsWhtBiR<>u{Rp0kMDL3?Kb*odO74EjdBpr*@iz!Z&Qxob}tMy3qJ$y zy_{A}xQiP~E}-$6_222x-vh395qgj z!A2TK&42W7G;BZ}Ya%v{z{;n$=^YkgdFLLJ2x=h zKh$a7?Km2}(C2MQmDFj9h}AbDy$u@o7&yr_^?-&pS+oH5iGCA+MayV8`n@fZN+88^ ziD5lL@k!}zg-qbBa1}h4Mxm*apnHcaIV3UT0|3X}Ua(8(qzL9hJV&4{qEro|$i(eY zPbRMwiyN{wqw|XrG7X=rm38R-C}HWFPkMA$of%^s(zw}o_v^>r#MjC>KzY3gATXt0A` zkXoYPMl8~8TONxst1W8ba5X+T{nin)^%ivlGsTw*%Hc8DR;jnpSuI48xT!~);%@7< z)VwBjGa&aO)6H5+N;-tS413m-oh$BDT^|QY#>)7?b~U9aofIY^JQaG~b=CN)BcfH(jGNO!y4A(W!a5~n=RQA55*5nNvdTt4Jk2uz3n^)T`}n6)n5LXl zVaoj$-=Ck5b7qy6Q|69PNXS=tx(2|3n2)%%LTYH*GXN@lvL6r#iCkolcc;@UAvRos z>^NWE*-3BlbO=3J?nqoDHn8SV4?F=(mTD|}cx=mRmhb;0g?Xmjx@(rIYexUD8-DIr zz6`2#odm#!2sQ$SDfyQh7n9M}^2Uz^M9fuZo8IL+ILTHH#yBjh^J_QG$kZ}Bf8Pvf zTVA|@VHA9x+}073Jztl6oIWjo;eILEA^bZvW)hRuMvYdiNt0*$y_L00rphhGR=B`a z$k2!oqu8)!e40mX0hW*lR=Hl2Y&F}BXxVTnT#9D4+>y|JvL63M)ZDy3x6N{SV3VcJ zAc>SrvI!JZ-ZS2E8~+Ffk{eHp-x3bC+L`Z+d>P1?yFA5kg;eKqXIh-~YlxZHnN8ZQ zPC=51V@9ylg$pL==BPmQ2URX%M@QZ4$m=a)U+vr-@${zHNi*(AyM{lFE4C>iu|u!3 z;D;ryAGuns$JXZjnmZ@e4R*M`fB*m#U%pJ9fvaJ|nauq6N(Xbro4#W7|B==wxVm`l zjN(2zE@v;8E^?S&KL?E$JTxqQAnIF8=BCRr0hS+0v>BuTC2&tRAU68?43VSW)yE&+46R-N99MKa@{GIK7qg7#i_Gwz2-!}&>*EaZKP?wQpDA~Z^h-de zQ;c&;zmzD`DTALApMR8`ZlQQg@z@F%D~|VkEwU!NX6`KBzCu(ME8||0K^*e58n1Hj z-_H2Ft;{s<9K@}*^N-OBN2ZL+tT3lPCn@x3c=qwDK0b;?rh)@{`;GhdpI+K4Xz8mu zU&a652k%wUjVA?5%DO`S&KNm&XI+fWg8$W`z#v!HwMh1J`G3+bN zd-P5aBt&QQ-lEsR=q2i4l;~xM9%Z7JG5k;N^1bf+f91;c==bFJ`#w9b<2Yx}-h1tH z_FA9yUT40nh@`4t%Mbk-7f&iwRm6EY6u%#T1QN7GsHQwKdUkidDB}I| zkg3p)IiFWrq9odNOwH22YWn}2dm4us@{sK-;TBaeAg7TtIk4!PiQ`Dp<+0Yc`24`g z#F$6iXw0H-E|CM3ux-3CBIP0AWb=EKk|QovRmJdTkS2L|O)0}2xtB4GOuAKrS_@)4 z+xo8QAI|)glIm1CU*bNwA|i^8s#nF0BuY>{h=&MDjcV?Y72&1{2gv^Z5#Qr8581e>X+^7u&YDMSrii0)&KqH*b@k zOGO+1jqLCCJAnU#;Xbm#{Y(4&qtTZDwdXK|zUQY#@i%Rxy9O|TuzqBZnEvi6;2swb zB(yh(q$B)){Q>;%2TNQ7I6ydy(mAkypZSaHPo>@gdfQMctlu{8n*TKtIyU^aFqwp3 zn(rUK?nlTq0L(!mi1Ro7g261Ieg7RAuq5So%305=!@O65fibZ`ix5E1)Ua*&%H>X4N9$`^Fs`JjS*E}-N8NvlL!R)swNFMh zNeII}L;;DWcWG!ibouT1myDEOJEt4a|8rsa)0nRUX3TbjG==`1#Lk`JiqDo|r1?cQ z8QV(J>R!sJJnWBD>kOI-Il^O=DEV)bl8qT*{CfUhZ@A_}igSK1_v$9y+ZWfJH(r)9 zKV%kp*o5Jt+I-{CVAv}l_)ic2=T!a5`%?<-DlG_rE`Edoe4Nixk)yX&F#s1*dgfp0 zIQf(SR93$J%OOB^d_fO%huu2!A*}uBi#EIs?|4s@ztA;Y^G|*RsDa1InAd?kRNp(p zf_Mjbw=Nvn2=AU^0>NO>XTOwT0u$XT8L%6r#_Uw0Uw6R&tgEKLg2Ki?lJZwA|CfEL zj{VeE&)i$}{u={h&H)}wo;CH?9G`y}-hchD->m@>@%)W+b0Et8xMNF# zWKoRpOR-GGpVv+Qa-e3;S#X>T3f#U3_D_d^r+je&TCy+vXi9| zG=37U&=85aLnCzgg?KeoE;cU$7p`E1QhFzb-Yf*@J%({LI;93$vAbb_wr;dYN%!D@ ztK^Gyg9BPHsg_(`mwvXQ8jPAGPPy;+^B|yY=8ef1s}Vf z(6&3DEl(U4d&mBq3-!4albybkk>#N_xWIHmGk`no#0VD;wx9L+xYn-OUDxvEbVY@n zn!23Tj3NLlpaT?PrU9QHQvw;jdNS$WMcxe;og)#}P^+Ot?vrTm*; z^NLIKS`>fg!1Zb5l|xt#0~9zC&JNc4Q+51ks#-J-#fpYbqHx40NLtSK6&M@RyjosF zri&`f<>$ul%(_J__@MfC=NnDhFU|l?T08QJA%rlVST_A(9m27ix*L+atYM-LfJO99 zA}LJ)97Jz70VRv$hr1_*A5VfbNvu@s9XcEC!khI`%Eyr`&N=(ngCBspY=hq&+d$2j zH=5@3$VKe}n#sh@e)w1pS45+m_XZO(Qcz~q>l`76M-EJ>58KzoCt5DHW2Mf;F2zpk z0g=gI$|V?Z2to%!%08YrB&nnm{9@uc-hAH`1k2o%dYJF=X=Qx{rX}mA8PSXF(^_i=$e`>V_WMFFW&|-m$NI_d0m>ZBlm#ur6`M?%S3qUx*URk;WZl7G0 zD~z%STq;7QHQNgih4hTexHKj>r9>v@nA5-ul>~BxudPa+Z23aAk!56h^Xe8S?216+ z4iNz~wW53WvVAS3(w{upSr&IZu)$AL#;grrt_UNlwg!!APIH8UUADjKC{w#7ry*Xt zi7e&D?x4>RS_W~g0_WoHkG0kbZBl{!I$rAq$&SuWeWRr>PMlmzOH?{dZ=XpM>eytA z?&iD^c4xa;>@64MCc1MoBC!%EHWNp~fL1 z=#?A*4&nBgijT+&57--}anHB>T(q0Fbr(7{<>?lZ(mv zb2$BdKMsw>eXa3GVkLkG8MWO3_T~#DXVybDD1Vo7F`qp3$ujQM8OoKVklo@J0!3&s zAkrNNFuAm}PtTZW`}P6&$x+e0kW!?OY*xAJ*NQv*CZqi|0Rfn2u=ffIr0jwV;1`{MBYU#_g6san zbwkG_k-Z<{j4p=bDHf0s*pSMJMs;jHJyPW_|aqVr(>FZ`d&w`4B%M}2(sNYL6(oYQlnJ_y`B}y(9!o6**?!WxrTFcNc*2LT#m_&&_NKAFF${Fv( zt8Qyfn9jOBbKhF$OvrAd!akA4x&@!HIPvzydXgpo3&GL%##l-gm4EKl{-f>FdTKm{svq2NoMCtzAm`Wdzb|7Cz(>xH;p5^LZuj6;gAw-p0JEY&( z*H;h`|CU(!9?1%fM)$Gc_%Wb2+KpBng99&U=uSFnwHPiIe|X4C&a>p~u{^G&x9)td zvp!Q4&E>SKW2UVsdUd2&?)2;6j*D+Xk;U`^s%Ix&4pYxAE8bP`h!=2=x|EnlAX(R zHuk}`2dQwO8Yz{}9PV9{OM#s|S-theceQwr@N5xut_JeT* zpE!)77sy;^yYkt2HEC3q#I3V{+8`$9arKU__yOSD`WD-zo=bIOuYnePdUnc;->A4 zmi#)0zRBoHaqg>P&9%!}R)8MSEFz4yoUHT_eZ1K+?870jJ_b9~N;&S+D&9Q_I@a}T z`C3S9&HDYwC2U3W*gX6oKMi_vT0ig?Ye<`CpB8C}hJRPX0Lp`}{x?u5i^zXL>^80jRb0#AA(@ zzpVs>aVFGzy6imADrH8{F2_03MhclKF8Ns}9&nUmclhYd2v*Si`MtrcMCW2#bn#?U zOHQY%pu@Bnrw7JEq)uW^2ygjG*hce8$Z)f1NA+l82J=*(GVA+FrT48(f=%%Fa1YcD+ASiW z9y1Um-O+$|DCkZB?S$q14PJr+XKnG)rqQK`A=Ex41b*PeEOOv;(gtD-MEtkcUakeI z5ga=w4nvByX3r2pNm&D)N1IGPk&(1(ohsC3c2T$jd~ZjHWO|gJb_Rb?P;{?xIWR*R zttA1pqDTR^AvV+k#m&JCVcCgtUF%3%DiWLEF#PJ-Pvm|L1c9T9ZFxOhmYEwj>O>VS z3I;c0gEKu_C`i5!TQw-@fE2geHRhdAgw(>b(g^P(s0~+qcD4Cnjgg5LvGSP}BQ<){YnKCiv zs)=dJa6$Rc1SyTO(hAxL*`6=;k}V&4Z;qgH0nP5C3tg7Rf#LT;7fbbHOfxKU&02>j zd2tgrP=!aS6qY@Y(~{-wLZ!~F)`8{%rS%`9CzB^B#zhZZt}4xRbU<>G&HlKZhnG6) z-KwRz#_@TaA&!&;i_W`}C!G44BNKaVC!+v#>D9{Za~`9^&(V$}XX~UoVx9xqIu^eC zJ5REP?mXgcx(rU)_SDTf{mM(uWf6rI8y9bSYWz)y`>d#V=ls4CQsl{z zN*3qJJ`1tur1d%V$E_rD-vw>ESoW~gb{ZKBi$L=>5-tfxIoFS}z6ZC+nrIjW)vSAM z&{k|9AEA9J0EzT0E!rR=vfN%^{D*SLn~5`p1a<>9mq8@{I)F{7Y)BMm9!7+nqZIu( zcX{GRLGdEHH9UGL-;ocRdk)=7E~AyKi9ZujIOgj6eNWtb^wie!s#oS@(sf{uVaF#A zu5g}Ky5;i4Ukr`&0jJ>HNooDb?rUEy>-efM4nC<`es1wAemiYWYt7Oa_XD2w7`fQA zamT$?tr^srJr8Zc<({gp6Cx<_;ITF9=E9gYSI>prT*h}a=cEWCC)e1+4rcvl_f)3P zt&QOvtaPCcUul8xCrLqP`0H(3wPZC3O`r5ANx)xEZpS)_Ok@R#EIfctP5wA{kao2- zsftnYgw(+vaq1eHP;(OAa_7Vqt{0#J0 z;x{30wgz^BqX)T+=6z1YeBeT|APdq(+E%5vWULC7-R&{bc=Nul&%ScJxIBRt%wx;p zf#-NGo{?RoJn>1M?e^8_4iF$q(~pB3AE+4DcyEZD*>*flLlrl}CU7UiqL=;1S;Ke} zm*aCAw-#>bag7~U3Z}Ddn76ZVel{T&^)Gc8Gvg2j7Rq#ou$}B}aU=~#T4VaRwUmQe z^kSO8e2|)#txjlo3U6$NAJuXx;h9A{Ty=0wwfdc9mB9t1_RX0ZWaC@wB9%?+z&T#6 zk1t2H2M_xgQ$^|MJDdLYz)R`lIr%r5BP9t#1*zW+?WRMj%@j{s36H)EO?uf&*&4&D zQDQ(W9yWuJVRxC9;4vz9WK?U0H~6@2AJ9%+rV2^(1h+VZZTleV1o})HX98k8clnME zGFo(whdlj%VJbJ5Z;OOYcutmf4d{D_qxIWeQrl7JXtr&eNSa;T%k3@2a!@%eY>^FlM~tK zmWVSOyV9LPc*9lFc{PKW_v^WF^Bk(hVj>$t8EVQ(Yg^s=%nfled}sdCuwO>lk^O74 zLGF1sOPtSxwibhHtdN05<#V@XVRW6n0L}Jv+QwDNG_V#>)P&*Am`>V>>S;C|t;TE6 zcy|uo)tyPmGZ)t3Upjz`tzPcx1g{R(q19W3DH^uhfh?)U6l^vw%fXf#LmRVj(`7Fh zH!8)aYJtmWRkXPkHqk@vhS<8YtAi@}79 zajPo(ZsK&?0Ce`YZ>Vj^IsVgZEsQ;M+@=FD%Ll&S>~N8lXN`to)vZHSGTQ=zz|Tyd z1wyQ~P=V~49Z%@z5-`j=AD5Etu+_(n)#_L8m&7yc(2wb-KrA*V;1>sP7l*1Iv9%d7 z4mFuEPBwApXc7)`m~?lc#G1g-7G%n$E}O1J*v+PMQ?&D2j>*v$)1b+D-Y?CyhOU*h zHX#1s=2~M9e@QRV1NbJ#2Dhq0-0lKIorf@?cZ#-qqwDIq?hc14s8AkORy7(m0utlW zzTIYyZR%;0@UI*2`ZWBZ zIUahDtnUml)*)5@4A$|>I_@i9E#^xZlwa~3l<$$b0j0A`Vn2rJ*O`Ua6<(naIB)KK zQKV;(x}j%Vx7`wXJY6M`#b>W9j)br)EM$~m#4_-F#0-Z< zcjeK|j(6d57Ow?O(DeMueX|tciw~H7J`y}oY`&A7rkKX9vz~Tg(CVZKJxW6Ne{Zgl zFmlz^^f9f=xLDv2@WYY{@4KZ78s@B+M!XwHj$f>8rOboHMeBx~bE`D(uscm9&o90v z-#-yM{p=-n7Wq+j&ik9KeWYnW*u`I(Q`G`iLgo0n`dyuAC#brr_*h^FC2S-x;ymU! z07jGLtTwafj3k>1da+lxPLpo%V8NIVXIRiF8$S8XS7cwuZecE*c_Lz!MpYdbrO zlM5or^M*npNIpKo9dDby5F6$=!`9e$4q{U7*)Q!5(6tA{nWzmSy>5fyk^PBP&(bDFmcRCy(=yvGD6$tz&eJmYFiSvZz?h! zKY!6BAFrREY3ef7r6J738f1nBedNabHXWp*o1V6Yokd6^l8S4N%Coq}S#e!=@eJx) zJ?R6Mnkr}1V;^4SW0f*Tb{PyB2-76%*Br0m9dzsFfCr(q^ZImkrpHOu9%XFHZvnT* zg4wihjo_o^FvOzd;L|l;#YPGy6?HGSnTQrvxNngHw@=pRk)A@mhr75J1N_Sl3r$%) z$-@jSb<}2}F~i8%pE|a`Y^plLkQ$V`U!;o+zKIe}ytGep%LyAC@dA}EjMhlwk@1SC ztoK2n9O8gq1b=?!MEkt8a8sbaLTu4~F8->1DEppr_~`9hIEIek z8|ZA|1U7`R>3RK?i?ZjrEo$jY!fRBx^{h6F>{-k>i`APkyl|_A!C+1uhDOYo)PNmb zk_2iGZ1#-nYN?4;&|OLQMKN+5l8Ux9P=KROD)7Sn{ROW=YnVtcs>Ak>EoaHPZw^?~MhY_U>b2kYa^Djluhew~ zD#I|Y+UPui6%&kZOSbAWL!cc^W@L8k#t$107(7rxp3Y=%#xMys>nbG@(<$Ye@S3vI-=yC2%Ch=bFmi>r`qb-AKx zvK07HQo-da@-k>WBi0jyIazgchw2ht&NN4W1~sr0dE zYsZO^9V3~1rj1c{a(#{hl~%idMGK#*LK{ zR9uThiJ~jma)txEj@{;2muwhCc97Xx=fY?)|8n*%#JT(KCe!>I*amXs;IK`J+owhU zYC+@c71@*?RC82V^Gas2#HGGz9}{h(D^oL=a5|QV)HiIo3e<4AN~lP2w`n$|^F$aQ zr`h@`RL_Qvu0L&jWE1k|I9;N|zH4c4!rS@)4TGYuoDTJfFcxYKuXDd-)B9}N+ExA0 z>M_`q3gJa9l(4|k1F)%i%JpW_#8wB8N1fZlg6ZA#HS0jlDGnF=F3s&H!!De(Sao-T1F|^D$}Z*?FC-#^o2*M z3r99O`Bk;`iE{I`g)!6bN*O|eZxfTm>hOY(j=t6Dv(!Lwn)y-4Rz3c4g1WhUGPK_~ zoj#xCWLB)rbj@QES6OlPGc7|{#&lwVrAG_MlI+Q(m7D@6ah36U83ixfBQukOdmc{L zW*ka$^){W-K{8ZdCTBTGq-~dwvHidn!>T(i3LQRE}=|Hj%p%twjK@YSokRRtojGr|ea8f)x zFoVbN?fe;;@t2mnGp(x5D<@`0OR4~wgeiWFhT(VrH;#9p*!V)&CD6$msQo_`o^##VCt8g_imnJ5|DxlWmuQ%l{tsl z4P8y3FY!n`P371XhG*i$ec{Jv+H3RW;#UvBf)@Uys7kY>+xD%Op{=y68Lmf*TX{KP z`5H4adcRZOuS*`+rQ%5On(8f_NI?0YOkZCg>O9=yG|o!}=i1EGBpuRn4IkM%G5Y)% zO4;>zO>5_Wd9E3lI;rQElTuglDy5dA{!RM}6qmNERPh88bnzuYbCeAko2^}bTg*H4 zM@n%9KIi>~1xJo#5@QKZYVHCf zYV}qi?ur7>ttgA%df_Ah9oqSmnw#m#W=7H}b1A+kWBNUG# zb)+t1_KQ50aw^y5hsD}D`}3XwG1*Jo=1LUVbw5WD@8G6rx80d>Y$h<<@%SVmJ_$(E zz;yXJy$73h(j%r4a)|JKJ+bPKg<5?F_N_H@ z(j{y}agaOC?r?96!gzHB6`Z|dgkQ4T^4X<`-JVWMOdsLwt*dX%iVPw7j!qo;b^ypZ4MQTQO(rO6}mb zR;?J>jDMQeA{2Y8y26iRTjo8c?X$~5ud6TH_WARNZ~S1}!hQUZRt4i0)C9puzk}QE z#Qc1wG2ZsUQ9KS|AOvwF+{V4l&V$@`x>2uG(p2EndZs&Ec}jY@KSm@Z{#yJ*)Oc3+ zEgUoHvQ>Q{6P@%K(^`Wh^4d@LxAy3kH*edyR^UroAI~54 z*b`p}2zj6G>T+*{76TzN^||vwPb^h$$pEkPG{fmLsv8e(&bSy|QQe^C#rt#c732D? zW{JwF`q1fSnRq1Aay%0R4-WQu>d;ZIM?JO{Ra`{=iB#f{!=M1!%YA5L_o%!C$Rv&5Wg$208HJ^(`7_g;-Cl$YqlF@aD?C;*Cl}rss43xR3*m@L@G^$?7`l{Igw#!u$%s} znSw5bKrfn7C`QXwu4XO?ZN}TGwIX=Y=K}`1f~u@W)ZgtrKl|*+P~drjNb9f(O9`l5 zGt4$+Var7GZeQ$I zl&U*IN4cS91S>1_MLV*>u9*DD?1X!syg3!4HQ-V?)?`eNJ;8n$T-5+OcxYox)~;!j z^s!D++*P>GSsvLORnXD*$prHZuZ7m#&4TneTA9dW`yS#EO2&vw6l1v~g+cx4Iv474Jm*Af@ zu<#1+zSzaa^8Te4@-{O*#w%^0O=n3J+Xpi)TTr(1+XX&f-oWbX1iee~x!KJz!PFjB z@G*U}%=swpb)=46`eN#lfh+nyBA@>d*rZxuUdL0ZaXY-9u42dee$6Fn z{r=sz8zQ%R2iKX!#iTsQ@AqSY=@HUKr+Pn-j2`7zi0 zbACRjCSaRZqpk5ig)<}Go!Lxm-bG}o|yfjwf|`r`x5V78`02>{#up( z$7uKDTx;)G-qSZ8_~YC!k5>GF3q>Sy@&4w)5wiY2fQ5%Da@p)(w=sNTe8mIB>GkOco7G4k2X+iYw%P5)MY`+$T_Tl;@+ z_~#EqK;`+refW#T`X4BU*L6QhU<1(lK<$@!9&fyOgob54+~& z3ir>xkeoSx!yuqvJ0FHpbEAH-di}8uNQ3A~w4cZ^Ydw?i2FF!Yyd6oXSyo((3Z7C^ zC+bh1_cGZ6E5%shIZiuLvx($cI*>b>GxepNE0q(rI-~Yso-W zRa*z!I^JVzf*9uFZ{Lm1s-9zW_u9tru-?9$+wT7x>h3g2#itGmh&AjIeZ!;`=awZ? zutY8nJ_7@T$@u;%w4aNO=AQcZtW?!Gw`XyO$S47SNnyJ!p{_i~X|6L{8uDO458A0; z2{r#G5YhWl0&uV~iqPvFGp=%Au`~6&nGGO*F|w`dWynCEZGv176%>0LVf6tdW0Vow z;p81v;<_=*uUEF2o?pfloit64phtF$1iK7nI~(` zp%9I{5}{L=pp5}0(Y!l_25zipe3%>}mR^t4=<_p!c^)-V03}V>sVc$ti_pm*uD}RM zKm$BC_|lz3zry;#y$UGP4th`tHerzWCbTb#he7JN)m=aI!tJYXQsn>{9sb;KKycW^ zN1QwAxk_nVjPF%iTN)!Yy4`Nlf!vjo>3U#>RG#yeiR_xm2FvB))sHidtfMPnJO0p8)>y zRjP{jOd@#MN54EfZqk-?TbS-@zDD7eqYXJuEDXDy!5<@SoG5zr1f43tdzcU9M1>`KkDn>5?Ewi$}o!;^XAdwX91>)R0R zeedOQvOK-BTio_T+a<2>lOs}+CR9tv-2Du{wZ~-lx2N)oQ(Zmnaaq?;HyYiLG-TU) zHLqKocNV0SMN74U9R}0+)Mb44lIDaC?fBTYCJOTN8{RF2AX`=qnBrJD136md`z?Na z-B*l_Iqu)$Y+j5=niiUc`t%HqLS_rqvQ6ZY#O=$x0Vi>pitle$Wr-!yih&0BmS)sl zBcuIu@I1GRN|j!5lCw{LT-4wV_0>KCK?M-YoO#N@h)(9)x!s3Q%kha+q~43;UT*FC zEMZQ4=i6}g```7Xj$U$8Cgrq-UrBHG%t!}vB;bToz`%nkt49e}TjF{f7IT;%?yLud9)H9g z<0Ss8+?JmcpNbX}&C9GUU%u1&S;vXf_P9&yk(CUBlYj+QSUEz$Mp8M@S!WfW(0`{( zn)rvw`GN`5v&&3wT>UL|WX``?0I3W0MFV4OZQW1qsHvfnO5x?YP-)lPDNuBsOKUA7 zJ)<6RuI8>da{}A!!&w*o0GuVU5`6}MP(}u>C2f$LpyDVv@$C- z!<81hLHa_y`T`=EnMmtnZ1s^I2yVza?>rZ&^)bPHFmA5crxj|N(A3~jM;RGD$$gX3 zVtRx`-|=!Z+zxsI>ze$-M6qA{}nXAlgaj?p{8c&8e3DS!G1Y1 zvg-olx9zIh+m^ah3S*NnE0q}pIeH>_y86BH^KA!Pg*wbeY0F*43ade*gr2|z7W%}ceOz~y}L5pxyp+Qc*_S#bLQ40|ga6_^A zDW`l3D9p$=y@G5FkGL2%x>A#I>1X;3rJ?J#r)u>TDm4ck=QY_8=k3Dwp{8OW3GiR# z6aCzz_e4tQ5;*IiBmzPHr9Ih4jtw|xH@g9d&#MZ-a4e&2EVWIvYH*ev+JI z(O!jcMLPL6kqWIZWx698t~3;)A{y+f%vgP!jmz=yTXc$3XOY!H_i{a-*Ecn~)Ul1y z&EA{Iz~x2S$N$Pt}eb?es{W&*j1FN>#hDZ`+Df zmWMl}gYQ9%Z`3jsbwl?qWwD}oc$v?V)5{^NLM@ZLi-|3w#qIsd$?@jv0&0P25WZ_? zh3S(l1fd}O{(#a6(juy#OjhjZFv@>WPfviQC9u)a~Nm+>o=`VLkH$9q9=#3j&L+lrd2u~VaY^9OU64Sa%90nyK7Oqd=z>E47tzqL_64zDQ4DuE5LQd@cSiVyrc z$)S{Q@%Y&cAs*k4wL$x*jdHINj?8sJ^^J2(!f}Sm#ucTk!7dg$p_R!VTGD}$Ic|^o zdS;J%na+9geHjHg%W^-BLhnlPrF8zF1<~`VEpszj4i9(FG0$j8k5!Z+N)hBXrKX~G7P;w;uF zD0gEeu*TF*dZxULf*D^#T)2FUZ+QeWP$8D6p>q1bk)o}p5)}N6gn$i{Z)mno?*6IC zJ>Ar7>6;7KB&m|`=92`YZgwe7+;Q2@#=*Ofmnk^61_R!>Sw{`~vMs|wfigUZg&80@l#ySnl-f523NyH4TnUpBol%xpQ&0Wl{!(b>?dGju`?&O++kMa?D&OX@ZaC|`?9Zta3E}n z8k$)8Su@uNYLq7KX7WJZ7hvBi^>}jKtHprlvI+dzR6J+&8=fZE8H$6~d>n1YDVCKd zQ#w!p5u=zwy$pOWz7Z+?u&FIgmwaWim)dJ?lqR{*9HZXP8Yk2Amg_`j8un_-_;#1s zNJ|S7at|Aa7-E$hPhXlNr)Ho_$z@=l1UybjZWgYaK5hJ%4^O03hXNlmp{P(5G1+F) z6j7OgL&Odn?vDn&t}bY)ttcU@uh}_h4DvM}izs^*OYM9Bq(Qm_n|8r!_s&(s< zurW$?B;IC#A3!n!L7`vQSm&U|jlgyc7J_WbJ0P}uyDC+B-7-wG)U=n{4T^R=hn?4% z<;gVf=N+GCnyu)Bh3@;Ddc%DlH`+;a__}P&Ndt;V7Ixjb=h3#)GQh;>i;WO_QC5Ba^K)rJ)CJZ}MM#TcoseO#<7u9LM;L14Ulx03f-83_m<; zaN44Ff?IbTNtd89dIKMqWbJOu{2yP@|No=jpf(M5R;wMW!6`f&LkmGARHdt1S5?`U z^*kY3LlpKFrhpS1Yx$8s>xpGlSvJlG?r5o07G{F*OOE4Jdaff4{PfZSy99$;?ybvF#2Q3JHR= zp3R2dF~gRZrlYHG(o!m1(mL(q>MS$(@9d*9LKxZ?_ESZUMK|BZ@xK)pUK^cuMP zc{i2lK;##E4)`YZ(;ANQKVo2dj|}qqUtJuW zPDkX)Q=bvhF&P7h$!1~Y&TgeH`2d$>pgLj0RBt>s8DJis#E8T)Oz$JjbGhAL_yCTK2yk*wM(^W2IE@ zb-E$;4f?~S?A)9LX95N$&fK1cGWoB{U}exsCv5)(CF&pBh3VU;$}r!BSCyYwk(MLb z2);!#|IU1n+1CIEQk${+2{@zAk1g?65U-Z2M~dxZJy6Hi&|zk%0hSr-Nx?>oLzQy% z`Ot9Y>lmD~vKJp*oUpn>Li!k9eOqB-XYgE4woN*=_m=@aC{hmWTUu&8@NLs2!o+lF z>o%!^ILBW^g-q^56(8ztQ~A!M#aXr@Es|csqAntbq)y9*irp`{4U@jVX1&(_asf&F8SIaQp$J~z(M%vYc~ z#`pJqpG={6+tV%W0a32|t^+x?>P%NlnD6+kCSt7Zo1~AC2+r{%XwU@zridR{&V6kf zt^dPrB;f34akB}X+Ei?cQpVi{M$MRNc#^qXT7%0fAf9x9Iqh$G5y6d+!5wjGD+Nw6 zMUhiyByxi8s+Xz!T?Xf~K&9wMj5ST0^*|}<{d+9+8G!1hXi}z7wKCi6$wUm)=@M)= zuM+DBG8kulnLI7D)dV`C__?Ven_?@B1n*g3fKuRGjp1}gu6a|0|LL**FSGS;BCdEh zflYBA_1P7h?BO9dKD))~;`t6>XU{qhAS8vR6d=_BZd^XQjpUR2HqWnyp|@HKbzjHi6PbD*9yw-$bwlSqZ_tD%BBjvOgk zy80S!oy}+URMqOPGg9SFCm85v`VVLd)!wmeZ--Kd*cP{smGi@jIu8#F>ZSHZhZ*SqcHK!8x)SUE1R&{?#z-yiFS)(xA#dYYma48 zzy#Y10hiH-m5Z5tc%X6X;bB_U>T5GZfbtmQxvsd;1*fCt6$Zz!R)K+!?uubT(Mv=P zc1zFg*4X3S_(?;Lm!2C`@AxCAL6|P+8OUg*g4Pb(7iB@6)Lr%2>{pazhczYrczo)k z)>oc~&&aqS+&O!z{m_`~1tH`UjtA{KvpJLG3-mgzcBM^O%bW!|iKKcETI<@2*>ais z^`z2j0vvtc_~&_pWS0I?DGGZ9PY|%&kF8MjSJ zG&!YUI!K8m3^bSL&tDEnuAA^mUfP2UHg@?o9oOO4Ppj!ewxWJl~ZFCwIUD7 z!VIFUE$Dw&P-U3Rz5L=9;%*A^$3&K!f`R|XQ z|FYYEMyZIEfGE|+;|LlLF(?5kX=Lc*qv2?MQ|~--aFtQdgUxAf_wmv9Q(T)~YVT{x zN~Z(52sfXDyG*w13_IQgvKTo!2690mhH-jhtZFv1sylm}F{Z0)Y{b-3I|j@Nvw9zS z@|EK2-3>p&zkGQ<$gIag>+_?`W}&81H6rQRZ(JsAADLcPhN4j?Y3@wj4^Q_T|&K z`<}@Xdq2M2B_?J7N;ktQGVa*^JHYN3N3>@=1SmA=>=SoAurs1<^BHmxi$y( z3iA^hppuJF8Qj191{n}@UO>#%*u*~|*mmz|A`w6uYzcuJd5MxuNkF$_ez$YHNf+gZ ziHbRvpFVX@Q!7i%&COjw_-{ZZu<7|!?*mW`%8AnWImP3I9PV6yb65GXZ$d;yxf-Fc zmyX%3VFa`4`cZE?^u#{-lKe#hqJNq68T0MDgPB)lAZayqbw)u!9W_1+cV>Y*`QB6v z`sVDfok)W3aqet5*4+jIQr1vojqd&r| zGgRr%bL)>c2C%oiIrc(b5_(IGyEgZIP>^o+gPo_uK#0KV`!g+1=bsS?Pm()`970l0 zSAwGVa)2LH&5%|>I!x@mKaRs7f&L>!uU-?!D;fAx=CH%)-}m9qEw}+490<~1YTW+| zWXK=E^p)pyZp4IZD>r|oy!zv^pGQGzK%h3uTlYT6U&WgK-M^ebi1;d8@bAhY{_hR{ zx+Bm2FX}_OCOb4vkmGB7fZ_H#JHfcVua)`p9VT_=b<^|b+d~;2qY?UMVY^l3Q|uDk zU;nQvMt{`)lRtzUzdXwPa0>{uXWNSug#YG!|8rq$mlVVL_X779my*212ndos3}3JL zl^p9oT1uzgYyQ_SpntxF=vgExDn7LArSkvvg!o5$uH&8I|F=>8shO(Jv2T)+jtHcW z{SCG1-RlP#e>WbXp8+Wa{du?3%%7g~(|i0!Q*N`Z@cj3gKmPWwBZ)hJLPh&IkefjH zH;)Yn^2Yg(9{kl{GG_zIpRf%|xaHrlz9cH5;Q!UqKeg)`rnCmIu-)-l7PS4F>3NfM zpZr&?`Hyq|7fiCH+rQ|ee~-1q5OydTCr92JV@9DzGNEKdKQ&CNO~l7Q2C$J|h)P{y`Pqio=?@l{Orn_blk%Gg+Vk!8ng1;atjGAp`>YuEfFI#rK zJK&5mFh2xGGqeDTI6qqFjXZ?}urBhn;A^3-Rt&Jupe%3H-1YlmR0t|f7CG*fsxmwJ zo{6di3W`K<`g5E1_daV@2ZBRyTJS|4<-dO}Bl9Br*pD7@CzjLQ`OkZQX@fS*pgj4m z{)xd9?`M*jLDH8z7;U&LnOC($G$I?9r3sHI*Om95_QMaQEX^fq*+SgI33B#wxh0q@b@6`XaE%2Ya2`B?dc{8^y><*`H_%CbI zvA^Cx5l%T!WxVLlA_IDEMb7U7TD#Hg2gGqNQ-LqXE??wmh4`|%QnAU}zWybsPEd|; z8^JjSd~L5^9h5xW%#EE$=Cx%JSP*&seWIADudk2WZHOvCy54J&!((~JO+RzE)@!@Z zuWt_O#BIW|;Jsx#T5BtOw&6$H8)@AA0h2g1Jm=Y%>MKJFK%({i8|&9y&BMaWclwwVBqartfD+-} zd3j1q7eWi+oBhS*(bIlc>~Jx3+?S0njpa?dFqSH(N~eaUHQihv6ybh53fT`AN5^IP zkpgzA9I8dOfFS zAMChtdhwl{TB+94yo0hRplzZf4AOT$N$>HCr!vQV&p4mS1e%5Dd$Qbf-A=R|DV8lz z(ABA^&_3GQsxFOEe0v9N$89+|mVh$_F$u%J>5->Gyea^-vlYdKY&!Od(BlHI!Fj1- zd7k2y#bn(lp+*2QwfU2i zf(N@{JNhJTe4CY=NvF!rKW(bEHqF&VbiBbGJY4c#7R$Ia*8*(Hu4MiStZh@Lz+V3g zliUmKzM)u_zwwitAbL}4bQr1YI?3)jZLf_J3#g_~v4IK1K#bLbLLnLxE}J^;s@fvH z7hVXn%RQViS$9;>rA($?L48(Q<5sazb%|(s-daQ8(X@Bc{)SIz_~|m0?Ki4D*yUat zKB>>{z@^S;zfVtc!|EBv1!ocOsGtq?{7k#&V8uInawa)x>6jLEeN^Nnyw7NAO%_LY zxsssgdnFxPzqQ*%72u3=Ar7JgJ#< zKdOk%jD~L2t2dne``3|@?;+~fm=;|3Bq5RZ3*1Mgi@n} z)b$dWdg#t}_xh~jtg0onQu-K5s;q?Y+unawmF8$DcSdKFEC~SB-=z%g`eChVOQ_#0 zKq59?OwzAga><^?bUMWNst#+qOy;dAQei;rdn#(xSZ?;Qdh8t_8h(y@SOKGiCv5z2 z*poQ4mot3NV8l~K>5!%qqDF_H9_^~=8p`7;hmu1h&0t=RTpoN$PT<-}$&;KQ*( zHVpVG;S(S^p#yZ!=_|Yo6b9de{Zy2_FBLXtfEiODgu-Q$qR>H=&Q}x3(wis=tll_7 z*D2KK=4Aa)f>jOqD6BF6x4;LfyuT1388EU$9ALaNnm6}j1{EA_vH8lSB^L|=vu-ag z)L8Y|4~_gGfLrfa8!7g3{H2Q~K5;&KISw|98ZOoD>+w9!NJQax@9w$YoBz}kXKww= znXgVNmELNi#@goMyBg&rm=_iG=^jlCFJW%vql)q5lAsW&WAg3kM);-BaGYAHw|9tE zrcb?k#`EX>W-ZE~L~G-fjmBGM=~Md8R7;pt3KU{21hzjXI0*aBiq&rBihAvdL&(ow z-|#nLSIRM!zkEmY$ zkWT3#>;7{`5E?;O)U$+V>WM-4WOXOUS7m6?aG-NYWIxN4iZ^LR-%I*~Y?8~~ZFbFu zG0{)}88>GhaKAwKE3)1(cRY1(fikB^j45;Bc^;uy@~SyfIR-dSSRa`Aw|t;X2HVS> zo%4|^g#*Kjr`SeWC0JroG{OA$*v2d=<58KXje*@KKNi}gY2n=@rb-P3t+$Ng*P4t2()A#g~ zCpDRx92~D5LPgKJHkm(aGa3sAdY)2?vgXh)TQUTM{E6_)9ZKQx3^SpnthCa^(vHN{W?R0_U|w*Fr3 z5Sn<)Yj#db=aXnERewst!)k{B&1%~!M!V_Jvhx6>?40=B?47`Uj!fBr; ztF`$~HWB($uI+6RRJk91$|%ELVI7?(#8;`aL+52s(>Wo~yR*pR@>rHK2+})Kli}d} zXqujP8x?oyqXkJDl$VMB<$XC`H0GMH#9uqI+sZ5T<>2}!u8mO~jzD*V0W@xXlKp@%kZn#)B_HoIkqR2x#aMoxA zG`K7DK3ta}0`LbHrHnM5;#Os^@cSFlhuR*GgrpS!aZxJ;7-5Px*Z$$end9!b2lTcr zg?~gUFK%eH^}5>l7gtXWa8^#WXn~?*)FCL=blrV3<`!-AH_`LeW&SEF396%Gd)R6a z+R%n%Tc|qGOQ7uftuhe&0Y1cvbLUU!D`~nA^W51Msoy$ zFcHS1WcgH@P07Nj*70mNtgrD+Q5c7qxeu9Y1ue^jrL{-1`-$r;F5p9w{Y;*C_SlfQ zoo~8M!qxTMT7cz54 z(>N_+C)$J&+mfIjr!D1mIA`9qCyYBwKXit_tZS-IG$PSf(kq`Y=yJnnqn-_n=SC*i zEgu#dndm|-fKoKG7%U0$wDNS20zlqgc~|#JMF5{I(%Sr0#joj133Rd~6syK1CnuNi znh0awUd;Kk6D>qVWA|8$Z`vzteP@Z>o4jtX4oxtniK~RhO=vV*FTw6zNy?5B(lc;% z{z$1vL;K9!)uk8Pz3J7hme)5G?)YDIgf)!&l6QEr4T{)GA~kZ<1OCgzkN+sl!m8Ts`sYGYC3*twRFGGgjh?-E`b4h6U1XV zk~rjXV2|-5E%8aUn4yM-eUF+B9dC64HqAPZ`4eW3QZrYI>?ib_Cd63FUO4q1f`sx#zq4{U?;H-9s^h6u>>% zg=6D!Y9x;onL0au+}!R-01AZ~9cw}wQU3{MJha6eCnN)A9*enJCQ2l0I!>VE=Vro% zbST)to7U;_mm@_W*YP^TMtm}liS|`)ZZ*8&M05>)TyR9{YP{->O{T6^f^AC!zsH;U zaxGov#_@)C3#Rw(Q|IyJ(K=v2PaMtG30I4hA#$1)$c8+CO@=hN)Ku=O>Lk%6GXS_S zRr?mqt~rnce&4N!Q=$?L26I6Dp1ZXo7>BFX_-IR)(`;0~Owl%N+Ni?7ut&=|_jO*E zhc(OV!>5~Z2`q`!chgFB^1iAT>#01>d2BM%ZHe%VzYaUgTI$YfO;o8^e50QmXCRu2`&lns}U)-<`lloave73 zz!n{?q)@X?`c9K)g5lN530xW+s>0i62uOV7nr;eQq_zR|$b(yWr7(t`6wu6)ah!rK z_*JobLIev-k9LhqNTpwnFb54y8Akn5<@_w*&TAvC>zk&|_=oR@ytGpy>&aZD_H2{S%9#I+YZ#|u+SqUWCwT0g8>?wJx_=ngwBpdZ6^jp$$!*Y)p-DbOZ z-*QwquahMeCHc6YBJ6Q-Q!tX8aXy@$$HvAQujS6@(v^9ggeo_Ecv_@Wof1E?0i_sX zfO3ARQIzN@0f)Z=-HnOa8juM`HiSV*TtT>fYs$)8*sb)Bp8%McY`2*gV zQf)poLR+aHvwQ?J8tZWXnWZTpzE^Cb%7zsaEM|DO0#Gv|e@<|ljMr*db%o{tdvw#? zfbPYxh`X~w{G%Qg>C@}7#J?~~I{D_x^^%6do(1x+;{q(|5aXRQrBvhkNlaJSB-YqY z62=aIH9eUYK(-I&{4#n7y^&%INon*vtdkSN&ycX3t=R0O*6CD&lT8-1NP$8yG3~di zac(u50`2u0$?k#<-lG#}4}AQglpG|h*n=@;W#y-GSf56fd7>@yl(4kj+{9;P3F8&) z$K!!^SM1jl)!Vr(gCFT@=CCo_m76&MHd@rQ1{r(udL=H~m`xv6YHjJ!gF1GO4BC_O zXB-~6#J`7VL+hFWsW|7}=ET8+c$Fo->I#P}{~pYsn%)5S8f$>p$x_us-krLzjJXAb=-x8c^Q`r9-|caH28qMm^scM3!4FM z(fJNv(xc@krwLrf%Zp#L$?B7H%(^K>#GwjAF3o&O)mJo+o5jAo*U;P=IQKlxcG*b= zyE2hpVQQ2kpu}|ZSIR6;E^ttIUVi0iS4qD|RT9!^=tBEyyjh`R@)Dx(R{R|{bgG=!= zyXcSlubtxz>l5aySYd7Qsqn#{_&;U56QA8@;Q=A+F=}%gJ*PxEQ(kG*`n*XZG;e7{ z3g~BJQ?dy%yJyZ;y9#bg+nI3mljSoLgr_iOqiOr z&ZiN;14wt?d#dX<%=rw6RPJa2V7xgMfMfipr~B*wqCpt=I6hqST!e)@PM`e%EgJ`n z*Qq(bfNA3{7`0_n3MAS#Y*36hESo1s`o1zl%cZ%mau_alt{B;-eJOLk!k}d*!j0-3 zTO-GFHocenfu2qE=Pu@Ay_|a+W|tS|?1ANO$>m-}k`K<$-4v}-`F;Ch0WB2NNtIm~ zTb=n+buQ2=h=9Xh)tm7#)*G6o9`XRCI*~;hV!7ln-e8e4F&!ytbgEjUS`^x=@_>bk zw}ga6PYdj#TkBJ6s#2y8m0YnYS>vR$&Sulj_J0Gw1|P|o$f(p`EWnQYC&*8D07>lV z`|w0dygixoSnH*&>13Y0UrDwxw=i$`lW1fC)ih4q!x_e36b_cx9rv2Jsw1(9zyyje zOYp;QgVQ0yy=(i>UX=RfhC*5$+JpzN%OOf^2SD5F*aS_>V%@6?@7>x zRfZuI6~d#`5a#XCW-zCD-WPY64yn6L6FEPox0zA#%wR7_pPuk#SL2)yx)e&cbxkvQ z@Erd?YhV5g;?39uzQPJPp5eh3jxQ841*E^KmNL9}@zgkEy1z+cg?}fBmMX?hd)Nzd3TSQE_|5oIGm`kC->;J)qFHX~GZw3t#Z&Ttq(i4Wf2~v% z?Y6GI+aj!+{ql+vfD=ly&k%QQ|EQfAlnB$YJbJ{ROOnGLbJ=(lIbm}g7}fQl@y_K+ z74z0XzvosQAeRU~n(^@#7ajMuKkuovq;&ll&#uz8x%;E_NEYC{4}DV8hIWg?tK2u2 zE+K-CtgxtD0rF;Uaz3EFRiy;9v@q&N9l!3|_9LkKbpy_wGqertX1b$ zmklY* zd`&Gg>-KGp@aBBHoJW3Q)3~Ik28LFsL5I=$mCmhnsPSZq)dj11unWTtU-#~%q=UfaTulpnz&Eb2wi03p(Zt%8Ht zol^n1qiT;1J@CrFz>8`4Ls3adNefG-G}bgxMY7c>Y*B#f${1F4u}_(ft^ma1I!6M_ zlaemcX=#($aa6U~c!?G_z@SE)LOu`}%c&)2Q;-&Ed86yP5EyKz3JG-LtbHV!c|S z$9~N(NDI|+g5lp&ciY9kDHCZQ^cK46`M%#kcOi2Wh1Y4&86)~ynZpWtr!cdhn05f8 z(`kkn?erSu%Kf}n5@ed`J$*9x#RQaoTVMoxtL@@B(&WVbT<&DSmEz#wEz0*o43U)Z zej1pO&~QA-6&qiLpk4ta{Tybbe}>-QGvmGDGiy$HLUHG;&S^qJLtQ|d=x!t+=eOMZ z(`It4u^6Ty3Fd)zF6@GEpwMQk@GCizKaI89 zJon=Pa!fqt*4j^oURrOQVd{2gK(SYS8YS6aa*1m?3?V$?*Vs z+t|a<4X_&ses8AlS+-vD^iz56x@7$xOG)3;fm;HwxlH!idPT0wChC*C?lVV7_bDj& zN77Jhjdmk#~Ig8d&hi@>)Qf`w_;Fv@@g1+<7;-9M}_GE zPeL_F4IOBt@3kxHdImE+Lp8l&ogLM|3fNoejTy*kvgae$dAZ72D_@1P`9UVW-*@5D zF2J&eY*S72A^+$TNffQR;ged!2u;0}$f~y*U|1mAxE0E96BgswQls#N#J z_T#Z6jF<$d6b+%%P`uwhee^usT5p1}b+{Q^VleAM!Vl-5^$Wp|YN29_Q8_S`%<;io zO-Izo1R#23^y`{g8XaZLk4mQ{-`w#3!eaN>=N9Q{_v>O|t0jrXPPt9_w+hpY_n)Z^ zD$cVWS?GW*6FjT%*G6Slf7*j&2bYf=I0DYJsto*nQACY}))b*9Be91JC(tq=lf$1p z-=opze`gz%fM1P|BCFd^NqELd{ zIqgj?uNRxUOSK1Ra^M9uYnL|xlP;V-ahng1B|NF&$Cp~`xdS%swG$;X)~fyFWqR-(}H?>4FxE-gQkAXKE1UWcCm#<3e?`sB2* zZQg_?^|9-W+el+gDow+UOzr5O98|WKdmQoWHk9)=N`-nk%Xd9BMr#sSg@HCmQ`*x= z`yV(K95fGI3Or5yf86uf3rygx_A{EOvPYh1w#^y$#Ct93_tjZjH@a)!91KhQ)|rfa zMZ}x3X;~`mL#r~}{};33ZxW3IdvvTrzx+|ICOiMkXJMddeN5K>AOTJEvZ?QJ>ngr? z#TD#0Sm72&k7EOHG2x5m+9Q@D0K&RnVBD$f(IUi_RbX3Vf^h3uChCUQnCzMM9Dd@T z$817e>h#kn*x3GFm5Id52?H9ZfD z+MfcTvU+77XV6uHCVcRlvsz8mRahfsuoSwqy8)wd<-4DT+#^5@mO@j@hXZU;sXg}Q zj+AZdX}K*IY}$z*OnYoPDoPeSoy$g>P5t?y?k&rz2gu2BUr$BwfqA=+A~>CG=-VFi z)KnT+?eQ?Qehz9Y*;P-j^8~TlLqN8H2DLenlgiJW+`p_-SR1jm6Q?j0R2MW84BiCw z*f8+h&H8!j!Ct*Ns-v3?4g)ywG&|{QytCy0c|t|M!6>FAFB_6{M?7(;6HKM|Yqn=K z09vI5XT?G8RM_xa>EqywO7lb=kEM~awCQ?*+C<&446cc!_sQdr%9{>xEM|%vJLDA* z4o>W0`MRE;hB)0pYUNH7$Rw{JQ?^MVbzzV6xvtZojVI(RiR_xWro;P|NvgJ+T6@SBMfcJib^E)QX{rc>Qt?ONKSUa=SItuStV!V| zH5)&gGZ($l#)|VapO{hb;ToE+X3D|bV|Q8cE2?~=gin59In3y~cF=2Kj(2_0s`j{x;#|obll+?umFGtR2x6kovTf?cg zE(bC*NA3o^Ia3C6Fy)^fV@8Nwxn4!nQly}+ zd+(LxaR(q%?X8e1B>jOWXZa8sT+d&{>iCoc)PHfd@IbS43ClBM0D--K#Uzenyx597 z2cpJGAa~}kUO|0$Dp4w)iMR*gA!3dRP&<(ge<>ZMfzk1?D;4}WpH#X7?$qTBG;N}a z$9_CezN=eOO9AF_Z$pkS>Q8EXEpO1h1N263AvWczs|=d^J-u3Fwl%IIiEno+IN?Bi zFua=;s6*FXiB3W3}X{st-&HgT}=8^-0yT4_DHORw_LRIG|rpUn6X(ExHCZlg{Jqh!PQC4m1kiDb^E6|6lT|8#GO&sjn9>BFyMB&w}F7Y0A1yJd%>Ms(B`4yYVUCq(iDHl@uf^dy2qd??71S z%!a~kCvQ+3PNaRPXFzrF%gAO629&@o^QYS#HX~}^Mrc(}xyE8YZohc0<#TRQGO@(a z*pdY_G~1*nD6y+IHNdx0UrZf&la7@O*Rn1b7MhOG=E5adns zw-$inj5kXd8GEz{Fwmf$TrMuN>2efDNO!^9B_HQq>O7y14x)qpKYWjyl-PEkxycjx zU%!rsEA*2Od*xoTVBQ|C@tZDZW$LH}ky@e#^1XZq7z2ZRmPKbbk=03nD;qtWQAiIj z_{^1ZH)rY4{5IXJu>UCmnaB1sD#YjVrVEDDlR}CZA0HpyiQOV8+Gku$<8@`>FlA z)rMrUzy3~xYmTd;IGS`|{#@Xi?f<87i7?Er7$M+Gzq_HoEwK3!KsG*O{yil2CssC_ z18`!!0ZMY^?;*oK<0*iWJoB3j<$u0H1fV4MOU<~k|1(+ljPQTn_4f_``=|f^H}-E~ zEU=XSUw&d3J5!#=t9g#&*Dv<}z_!OVenyM**a|ZYvujrd*>|&2^rf=0in7qU9LMib zd`f>YG5TbBm8-Gql;O?2n-i4XI?316Y5)Erp8Ezp-&61$gnqLx|GqBbiseo3y^#D* zBzvAKp1R7b$p7G}{yWr@6$7*rSmoM2{3oJ)Rz9#VLC-pN{^5afD+9YcVn4#@pUC#Z zSHDCaoBx_|UH{wA{3Wm23Sye<<^Ew0`={XD9Cq@njC6gQ{qZzUI*VR=H|RfsT3~H zG`=tS<(hiQN~EUK8U_Ya^lG3eg!*vqSCgXJ(hObX->AcOX)XoCjSV~tCNC^DKDY)Bbyy4wq*)FmAC+oAoAAYIvU>!D5@~&>$_^zaE0Pe*me4CXm@ZQpQHR6;T z9|A@uQm8n}8TFX89dO=CzKRbgxa^2$(S0Q7=;=wyx-rnj9Ee0rQw{V!;U+R?9DJ;E zn{1SZh5o;d?a`XMdGthL?*$^^ddtANz`SF=NU1 z_su+PvaIa@gQ+V;8wJ9D4KbPpE6&h!jav>l0t}ve{WPePYrb>D< z9QXdo3a)|$#iQMGt#9p_{ZfkocOPrZ+1YtI3_Q>Za5_=I3^Mr+zWeV-$ls90zX1QN zPW)je@bfm`s2|ui@piC4<<F z=9;B3Q&?j9MqO%~jqyc4>_6i7?AY zhleurvcNui-u|l7^(G(%9mpb-Uy?4Yb>EsA(Q^|kC$th*cLGvPdg2xI7V_!U+J)@W z^xTDZPB*xr?sMuRZ!;XHQC9`hY%srfC$*wN*5+tVPyD%7$Y+nM-v!pPGdY%SAR?Kcn+u_?;eJFDHa> zB}Z+7(``K#YAkh`nogO?6hS3UJb3|wr=^}OA^R`ZN!wEIrj=@f){*w3BR=D@(E$AN~ZweS|FcvsjKiUn^EVr9x2oVqd~vK}gde~K&Uh?U65E6j8o>>LCu>I3SX z@_`T{24HIa-%jt}UXhX)zBA2E{_^G1N%|5Ze8|M>$Ap6mSTOH1?mhOdml8BHC%(#b z{#%aN{FQPy?8Ej6G645zrI{++R^nuvlERA8e4o{}f@((Ak+# zJ~ejv$E$m@v~&RO|IRus>{35 z{>%A2lefn!oR8+^Kk+QRB{xp9;3V{%IKXW^R|dRHrW5XIYl+ILEhiote%Rm>yH2pT zis_P{oHaA?6w3p$i6joK2}()MEmP5GIA0+TIa?u*sXVlRrHZig>+Kl*S&rf6_W!&M z0~M%FV6?t4VsvvV;xcPsfx2$pV^d$V^w>zs^xp75?d0I#ou8dAp>0jaOQ66o_Riy+ z$e1t=n9NrF0&i5?K=_ZEO}R~!hgF}*LGq8E)rU+<8c{>@s@EC@-Rv7ovrO0Qn>g4b zYxfZ^H44GwpAoVm3XQtTc-rvhe%r;44!$19$5i9=PMU5fNol`D89#b;2f%Nn;*wfc zJcq|WDlJtLP}1<43_ZNR-R=mS(OKE}!xGIEvJKLGWw{nvcBn5BoNi+k_k;yK?W{gw zb%!-K)1f1huJAm?8DEeqh<6SUNX#`WpFY%np-?b%Sbz2vCJP86ZPYC0K5;)eF_KYG^p;fKET^;1Kn(4UC02_D5$stbI0vgE&Mu zQt$D0319jQ(@YepkmKSKCJ3nz9Yp2HE)GSBFuh1z|5;>~_7vz7ih*9b7f!jFhp`aDLQ`H%;62N0mGj}2&E`bbJjS{JZEQOO(?e~j%oIWH8kjS_H^E5lkk|9Ncy8pyU=>!)R{qc zhXfp1Qbc8q9ARi4{pt)FhnRq^CM)z(cx>4zorY@cTD&^DJ1V@B*e~RL^c%)(I4a>^V7n-=5FKf5fGOv zuHd!S>c;x3HjKUI$o6Q17qppRxezI&rQE$MUEa8_f3gF$eIm?Osv5Pc56tV#1|1Iv zywptN|9P=mV;~iL6K(RgiEGUCo1#{tt%keO#^UgMUW_|E4o-Q5HO2C1e*Wg3T2Pxo!fg`xBzSlhDn2hUxp+DOOxuylYQU z_))85j*bi}BGERky66uoL4ry}^6rE zEO9jc)o;iPtq@qpP85;YVSPQt*K-rMT6phAP67^|EG>w5e->e?g1KMjJNZFn_Mo1< zgKDNRWYTV3bYlQZj!sECDx+~}+4myz93?t?8`^VVu0Q;}JYCSW4otzLR79H#aL5uO zH&PbngJ2MJnbx<-{G;0Kv4KW;E@oZ-*Hd*qo0gu9DVoyP^+a4Hi9+`u7{xxk>X{7e zKA($B7nlHkCj}^u!)ZK60>&PlXm8J8ILBMR*W{bJ=0q<XG)`ku!DZO%9d%8ze_y@+D87L5c;ow`hUI6Z9DMV$@;Z?Q-3~& zIATvx^i=G^c|8K4ZE*dVTZsmoyqnN|rYpCw$j8V(x5ELO61o5D#$fmS;nh|91zDX) z9D?n-Bma97T^`x(YSn}fg~Szv7s^e&zeg?cfe*8I2`j9p;|*k^aFTg2c;48ay=(92 zGJzY9l4l}CDE&Y{Gw8;%nv5@|PZAN8V8@LzUTY)-T4jM=aYVF@hK$NNHAeD2RpR0t z)a8JC5A!R$Jk>yn+C^J&j>jP9wQ9c=T|iwf>X&oMq8?CCFk6JI1-eFTo0hutfEmcN*~;PNr7W1u~qE=t%fGdK5182dM;vmesC3H6zfN!IOL^fQR>8fE*z+lv0D zEmvr4zaKVtf3?%jV-*P4T)qXFVkx5>+nvdUuJAK7Sy+GJVfB8Z%fz<>l^?&h7^hf` z+QFsbd&{@SmfZ3tBrLy+(MrQMWH?-y@PlQ3Ci|%8_fL${fLgB5(eOg0W4p_EQnGnq zNI|-D&F4!F(|0qvPxHSliSmFd0;Ss#wn*dD9UMXmwJ%Xke}sl6S|sTjii$}^QQLws z)l0rgw02UsU5!0|`hghrOVA1jhoN6(d> z132*Cn9skx5_7&OGowE&WA0HtSe=+XO?7@2_nC%x^TEkm3|Cg+O-nmP z6-`P;*3~dB3J1y&HpCXA4fQ&n3#BgMo7%NqzM1ZWJn?AzjgL9v^zt0ylzNWM&@)S6pxVIE+)0P=#ngL{2-?MxTO$bFVvke6%yLL$}1G8vn8 z=YDZ{^$c==@D$_hfIPD^z}<1p z1njc9AH8|g`sA5_7T~&dmwgDoqaeX42^xB!iL&$!KK#q&Wzqx&=Yt`Gxm{78q@x-4 zA=7gU93zPZ9mm!l-Z2fKDgAalBHVAFJC+b%cQ)Rd&x-ZnFY!xe@26mZ%qmA)Y&BaF2{iI5Soy%D@Az@i%hh+jzXkjwB>XsYBbL%X zWB^au**{+|czC^8?%Ff#DrL-?#>U)V<|F*Cr~&Y9FGV^!!&Z+OsAbs$;M&4qF|Q+< zk(Z%wesewo*O=E~`VhKWcK=t^sH@X;?Mn4Wca8I(P*Xw;;5sZH$7Fy)5J#STcajOMW${exBsa0+8m{+j&r3HIk=2fTUxl1y&9>bbc6{od!xed`TAZ$ zL@CU!_n3f1{Bp;T*BI~|%r-RS{q&T6GmDVs8G*@L?~6XH8-PvOVqgXxu=Sq&_8xRF zDY=Ky!)20xI~65jOf3%pWA*S`CjG5REa9zsTQ=&KMi>~@%WYiUoTa`Pg6X=7`M*A6 z)*1tGZW$0X?Zfy|6gaWt{mRte{(c3TCos#mQt^s@huwJuI0l;1_V5RD}zwWO;xM}+tWY^AM^!@`_?U!^Dv%yJE;m;X}{Wq|` zeE49z+HW}6WW@L>3}kIq2Wa?@f3q%T)oXZ5l%LDptjYECDsQ>&c<^7lGUBp_?N?~7 zyxi=nQB=~S)?iwf_rNM;0zoZ+ao{htZ^H!tJ79Ig_Ra=s0T38RC!IG{RiacuzPeH6i1_pbHbYTO zA=Zdm?5|(={^py&rd_NfVUWr6Ip6di0-{f)(Q<8V7Vr~rh1vrOK&IeMp|-!Kz83?F zI%_RPE3*6fLxKHYJa}+OtfsyXgKfj9!zbMg8tr+yz4=0;NH9hhkQ{yHGpq6XH4UwF z>9PF8>kpUZfPHm3l0-ukXD$X2UUoyjvxOAAhoU>;6m~!8uF}po{0}2jh)^OK-LLtu zuLwr|!E9L=Z>+078;)fgwaaj5VFj@yaU}U*;l!^_Oa~gtKD1l?c{ecRt(sb5!>x0f+xd6d9nyM zw0uf;x7^9xM7hZnl4t9@Ak8J%X>0I3CKlFHK0XAEsPC55kq?4|Ezo0UpXF)ujJ}@F zoO@@-TXHrPWRWAer^7AKeC5c*L{{Es12{BS&}`$`X@By$r)Vd51J@q-e zn3&gf`wi8XP{-he76w1#ckGT;wm+OUL7^h4MPK2hE=JGJ8hDo5CrFEYUNTGoIwfR5 zyH^}j^JdJSTm&Gaspdh@earfxAB~=qm_MA-ZEyw2%{YXe94r9*o=OCoB6rB4Z{pBg&5D`rk>hSc@%ag?-K&XS9n=y4>9HHmfAzM9-3tZlLn0{OHtZtTO^*L~*Jk{AN^PK= zR*u0Ch9UJfvh&8-axn*dL%?g1iR$Hu?NMD@+Dp`vRNSIlt3HHfK0D)#m8K&yg2ATB zYm-`4R?NMx3s!lok#(<3eSS4fiMp*m=U=WP*>F7PY4b{b8<@yJfz=~9ymR5Rz{Y8H z{C2?h@xb*bLe>txIi|n-h9(}{knL|S?^ct&0q~}+M0S?`B`(08L!q-n1R>3PH zZAoUhv+1c9G%|*vy5W_VI7)(26U})?V z&qnx_A{2lqIM2U=CcXEi0nwbN9mXf9i+L0Np`oG06SItG1M2W_OYP^jkv-i*D_R0o zt7FusgS>31U)$GDEQF-Eh#} zk=v#%*EkH3B0n@M<&1(1;a>UFX6>sDSVqvC(rW_H37-b{4}PJ1PJm1F4Mdtq&NLh- z13(>F4tnNA@@%(|mG6r=JE0WcU$(!K z(%===w=r$oCwD$@O1MKv!1|0s>ul0P$MBWmr+b-85lbi+Lgf2lZUaro(jsZ;`v;_? z8|;B!K`+Q`EtMe&yw8eREm1~pzlnAuq{NC#g%A6&c6&-VtT9_+q^K8m7KvdbsGV%5 zD^A6oLJoh(ZPK+#@>J!VH^GD)_7s%Q8uFqTL?vYR8|0s`xODMoz*`e$7T-%REE%Mvc5JVM;v-D^@! zxe|$<3!KT|i0Uq&7BYmP-6`Rvc>v&hg&;s>5%-2Ub7-3`MZvyDh6;`7eegNpQbAaG z^m5d@0Fc;GQ>wk;(i6{0V<*q^IZa@DUa}{(ws0h?K==jhH`|~W8{)FgP%3Z2V||*O zlxdd8j5KGdj}Y8tIynj1HrY%W;WXVizITMnlA7#mXZ}Ms!TAFaa?<(vy#+7#nCQ<> zQ@;E7G5G!Z@e8B&&Sd~)ui?bgjq7htHyyT!E`4U*`DF%358uD%|1rgfYQ{iK)n@Jk zeMH||>8&*7&gs@IWI(2=4w+@jX*oT&QgEPZsk=GI?||$q0JB%N-W&x+5j@^m4t&vj zbKmJ)#9E5hvmsn`*L;WXpq|fGCc0M_f;7+uHrJ1tn}-bY{F+GDRk~D?dsj{OUlz7! zY88Es52^NAkZqJdQg+iQ3pXffeVLTV&AMW7;JI-Myz5w!9kjAZW6e4&B#T211-g(n z*)m+RjOX^T;u2C5`xif9Y*l*{=9s=fFDY+fQd+!mKZ1QHSkVQ&F!MN{;wX`YqYqo?UTFX=a(FtP`UfY51 z#y9hUf(YybmW_Z5%D~WEqmY1xQ_jVTujO@|bOD9Gu;;-y!1Hpi33zGg?d>Uw)Tj(q z-|*aDGwB;>lu{(IB1i%TAHWqwz08itX?-Jby(|sN(s3DR#$bv*ytKIjHNA>~PLxU` zRw9Ih785|dfO$xu|7NuIm|U{~Sf7hx4}bUPeOA&q)xs8W!ch}5vvK!{K;rYkjdpI5 z;jrz|shf<@&tj%hRQ;(ZEok05g%pt#6cmFa)id2s85yOfz1N-N_&-}n0YlS@d)hXD zsK;q-P(nF2Zc~R#Zh6T;B}zwlSgn0)ptzQhbq%u}=nrZ$Y=O@^F7RKU&vOf55E3L_ z3}~+HO5iW|@Vp=4O?~43boabg-;Gp0v(0EoLp?_0x< zny*bjvA^MK$gs9=PdAHhY}I}zPmU6KTWM)NhDJ~Sgh7B?J;NQf^n4S(>f9nzZ%Z6K zR6bg}#_H*(kq*2OBc8E*ia$(v2*oTJW`R-SaHO@$`5SrOA{-nR%XjYvYCc-HpF8>5 z*hJzAkdq(e2%L#j-N6 zQ#>k^_;dbD#^!j}6|wA)+;Mh*LvZnK4a{d{`Yk?@WpUfQ;(3;Z4xaj-+LuaHn3M!1 zJ>4zHWD=v_VkE=qe)>~{JssEQ7FXu~*IWCe0aSr^(KV$0zY})oltKXh+4`NN?B9TD zSFY~LF_?D%*HP_4TPFeJsT22QdM|^kyv}t~p#QuFu?3PpGv%@4X+cw9Y;c4|Rz*d{ z-M);X>mTgZzPMp-Ty(9p9$-CQ&%ZuEh?wr!sJ8B>r$!D8|=*t7SB&<(|8u*0g z{%ISmfbTaq0Dlnp?IUV>l66#c;8V>T5Y)8a>sShag>*ML2Z`=Ix4N@^Gw%A7`3gr9 z!wT}qM2=wUD7yXSENL-HvCCqilC+S~Tb(3MR-^H!^ec$+Xcf7RU4wPta2j&K^E%@Hh5&3(i|L>ar zuUCHCK!U$Nb(F#Ko22+(kMx&408)rt+-hF>Kka>GSkznFuYyGjNK2@cQqo8(0@5hb zF?0>xH6S90ih$A$qBKK;v;tB?cX!v&FboXmKl!_4qsYu)Q! zcl_2J=WfeSemaB#WsfHz@N$Rq_TtxqY02m`mi|odAIJCqJ@qafZhUc^|H3i5GSntVj}Y@@o{2*T0(1BV#$bDikgPu~A0WB-&9!WiMVtcBqu+>*eb zEAmq-tF~D@${9?wA~r8|OwPTLyLc%!06@^wwnQCBfWz2u86BbXV6Uxcb?zQ-YJPjl z$JE4laah<2XTSBs@85~8+qscgy{^CY{no91>e9N|dz3==??2g1XIvj5W^C=_?#LRr zjzXav5dDKKU4(bCovT)pw{?sR4Ndx@?R#?E9o5xo&K7scgxE_bD!DJx4=}(*)ZS&K ze9~sDXqNZYBGf3d{DMotHx|6t9dz2?8Z8(IKu4O(-Gz#2f5ppG&2Av)zo8)8eW?Ty z0`$I%D6-zdh#P;*&78lhK!Z-g*Ec~q=fcGYd1$;)n^c1<$3SCU^ zy=!rmpfxN6rR@OpAr`*Ng#(svz5wu-_&83R*Qu^15chybK42O!9bG^y9DCeG0S5pU zVXaSj=}nOW%`lFmU7!Uha(`!=RW{KZIgq>E<9PakEYZDU4xc~|kAm-!4QlaJW`~qb z^7LwoTjl1*WunoX^5gB9Dt1f~WVE%{h%he5L5}J^HZ`o7Jv!i9X}( zNgc=Hw^KhEuPmDlw6?Xd=8#BTL07g}(G$lE7_sE8&zJM^`a(P?J`I#9Fy72JU^sHw zpBf^%`g}|BU1aXu3@k4ki1?zqCZ{0tK^=w60lI<>f2e414dd<*Rp%*!CMS!RT8|qZ zs5?=vr++U*!mA{S$B`okt%pO7KonRT^@vaqi3PPxR&cF3|b{M;<`o;Xn~LM zPU1I%KTcL>u8gq*rN|IQ%Z70=8JfYpd8kS@yzIr!mKH(?oR_80sds9zrrHzePznmA zQV1~KQd?pTS7nKWl@-+#$BB8tb-Qt!3uQYjNoU016-tGLMRU{0jnWgQB;kHzqhMY~ zkIpMu??T$qu|Mb|_>W&1Am16)7E(4Hy0Eqr0AvxWU`ml=cuy&$_eegor>^diXRZAL zGEp^?#oe`6g#K4TA>}9WE!_Ip9IB;?(jMPCY_1iagNlPTcYj5=jE(NSf$C~RtfXm2R5D6(j_~X?tQh|YtO8nq_M5kSV;GV0qdyp<`6hE@ zmRgxvshM*Ki0~?wua20}Ld=!YHJxtVO4&!eN)0B&`&5lsk>g8Fr?UOJN86LCZd+Mf z1)>_vEBY?UCYiO$-jT#z`FL<>$TZE#j9atPG@@#61?B>pL}AXw?{IwFT8K}A9H%(J zhhZJ71wNCu2mIiPv3O+X9)7kE|KMY-G7E4mf_rwn%({B($Ab2wanF6e;djCHvhOQ` zGuJp-S#?lHWjoea7GA&RdM-!1GjEpk1c08Jn>lCKZnt=dp3vf)LmnR7i@A*h<&NrD ze8YYfYSRO3acd35S}`brHnG?X$p;U!|Gq7L@gnN7qR{G13Sp<{_Wh&nq7bk!RXZ0; zqOJfC^8$jPG!KqmX?YY^i5qBASn?(+7hK$5n=s*C+wk5b>|WeijGmgGnY0SQrxqG* zx|^Q3AzBxKNcSxO0PlnS9;FHQS=Dkt=mKIk%w)dMgu#V?oM)(pJ+UY6i!iTsEu<-U zUqZt#978Qg;Hu8fY1_R8;No$i)%ci=Z}`-`s|QnyujG@c~Z-6Ap7q9h6CM$D*6Yuh7%?rHa z$0MJxhhzTWk3i^zxV}%B7vW_t1LSaJrgI!0pjIYZ(Lol2JH1?~ zy69UQp6mka%KcB8FJp((6$XcUr?fOz4~Fr7cw3Jb4zq6xnK$3BaBcS0ISm9!*rMiHB?e2-hvNL(A zXNnP9A!SHb#5lVk;aJGDJvHdw%gz~-YAp$l0_W!!x^$aFy-P|;!n%<*O7|sFydQi{ zvEvu6mz`o#oWW`^564rd!{+WDAc#apV91Q=OaDM{l7LLj(ToZjAMvzR3S$tqzVtVw zEqM{|kX5&;**Kmg_pXMvij0hG;p%<_KDioS4RkNPNiCfX3CX z7E`>yu;OCJsO`SF7H#YvMdiT~10iGclBJNVRoP;n)5+M_O&Q)8m!{}8Q9MI-o%@3> zy&p3uGlUObS`>P(Q)+WP$Fzc~4UZKk9$LGOF;G7D+A2T&iti|<2n5Su;o*d7F8D!^ zrMbX8i&1AScoE-~Rw+?l)IDo=WqeRiDXoP_c>mR#{rsR^Crtn+#tTeD4LTZ6tR>Bl zYJytx2~(|x2N~XZhfT`cZEb_0VSvdLo=yX44(si{`fo*v)|)HJ$zht=%3(K)mrq)Y zi~SZREV@q&bEDG^cwWE1X>zc*xCmQJYAfy(K}hCz5i=a2SzM3QZQ+gds@0W>eS@gO zLn1JlniChEL%(r#1H3kd!C-otPr$kEbJ$wuZoNY7<(*w4N#9H$G8By=T16&ZnJ>0T zu*Tc8=uJ-a9!hZQxyxnI`n-~jpI?2#XHfxJRR!`$oLTRWN{j+SIVg0zI>N;gy!T4D zTp*)mIL^OL$$| z>)ys9ZOuV&JY>RuW3@-VaaiocPQ&8)!9|9|V|NHNM+Q&P(r%!C*MmocoQeu8m)*z* zw(%#dJWB-Ee5={l1{SD{A z4ehuFqTIJ>2XeY>4<58c(yasV($a}owX|l$0^oZfcRCDJgFkZs5@X5;14tiiwp2+g z%;dwXP>nRmpz!C#x)E90OTf_{uU%v*`NsM5?Ex4F-p2|ziO|MZ5u+>l@|m7YET^%P zw>b^WAIWcHZXS*2K{EsjUjYqZ!Q$c~+4~8stqaoVR~1eVqjaM+2JboXvSm|Rb>xA` z22^`-74h26i52|j3ZN)Q8=jpJK(%C&Ur^64Z;L6snWs;_4iMA;&a)CplY6_Q(+SS6 zpB(SJfpAIq)n}b-p>KXP>W{iv6!7=fH(@NPUh zM(MAqob~F@^v)tr731}(5^hIBfMNhf^gn`w4!>TBIybgNSsg<$T?HElhk>6-8u0yO z;{)^!u<-TJqRp8j`TO_HX6CJfgFIxI{gtzJXFs+p)MNln8v03dB-Dy2?2 zpl|V1_yXWLACb~2YfR3>18GF-UN+i))dDzc6~N>fk{?P`E3I2z!qFxADO>jFlD|l| zFy~w~S3JK*5cI`F`T(+j1PE+`HQ)o2O5VTh^#0K~_A7dE|1*;3g%Z}1hyS?|D;Fx+OMK}{Q+%+no*J44RF(u^O1^HGG0%39d z&>*yM;t{+kMqC0W(WbLD++nykX5o#^z}kFQvmAdoY>mV7KA; z+n=po{QC|X!#^p z;kEBi=3h~vTU62`CsaA|(03#UW3IKu@UHKP@Rv9oALY`O4i3kO|| z5$8Y}c&O%IiSLvJ;;^Mh7K5L}9pshm*7wDStp^zTaO>?)3QZp8-F$=V-0DC~e{A(I zI%kB^+|L=aa$&^bix9z$A!pod2Sigz(1%{FhFE(Z`laxNTx~f;skG11S4c0@@+Ndy zMST-5@=i&5B_%1RtPxGm|L(e2Wpav&=y;`4jckX&T5&;ptjr)(m%-lF2eCUFLNE&I z$5YpJ%%x{yXsLu(t#_xeX_baP^t&pjlPxe@0I9?!7w8Iq#v2nxQ@XTd?s#Z?He0SvB^mS{F8quU3(dfj)c) zG!B&F&1PvrhkJ<=UpF7m5&u+|P-x@%VomTm-HG60tAA6v++>IQjIBc_Z>60vT*rb` zlbNIaZ8)9~20i-#NU&*ME^f$6MscUeS4!z_zzt(q-%FI#%!6eo*i2I%eYj36 zjEh5-j=0NXw%2+8`?odu4`Y6&wac_triKHY;W<{raY<~T2>VBPT?zIhnI98Wg;uHX zX+?GR*M?{9^Yer57W|A__**UiUlqHlF;(hwED?ZD#eO+$MN3?~<@&_jT@~Y_dG#mI z%$_tPhTQtWA-#zct9u%kVE)g?BrjtZ2eXAvT}WRWBBKK&MT~$j%#_qJSvhXu)c?{0 z>rK0y7QV46p*pBp#&95|F)mk=rP`2&D7(I&9)U8AAgXR)zOIuisn6=@YumSDDy|bH!8n;yQJml zP-rr=N%--@2X>r=&ZsDKpN5XPu(amSEn(~Y?|C*6(?JLGO|;&2@WpfLvh&>Z@w-+@Oy7NDl{5-1Htm$X zpf_T5-`qu&8k;|NOM&PXn*GSz_IpI1nXJ4YXIs10*&YR994Y|>{z^k9i?3d>oLU{IbveKgx_2_9VxNpVACqjM{37hh=bC)&3tYtG(>PY zLj1P}9XmeEwq4CFtxa&Pi8sfv05V2e2^a&1%H_!1H>ai7YA)j}j9$>Mi0M2=>=*-8 z|35KYpz)Y{I%oooi_Hi!J#(YawQR?#NBgTx1fsk7OCtdzBV};9I||7vr$8rVtUyx})0XfsCHqe4 zrbO=_B&O9(UWnZ=CHkSZ(<3TdhrCRUW1Vww>5FijrRqBRBA#cO3M|>y8nt@y9$}?H zE+=^WL!Pk&W3EYFyVI{s3M$qyQN318q*Wq>WqcF!2~CR39c=hgm=d3<2{a+3xTdF z`c6uwjKu~#^1T6LP( z79%ohN)k-N-3YB;5{+g$Tb*_-UFPY&RmXbrxxcH_di35qZ*7e);M*D+4D5pF%S;7n zak;>aFrEHaiwDuVrZ-tF?@?i{aee^XI?7oJTVk-+9 z64}s^Ev{Y$zWW;3ZDpW%!N4m7?P9253L@=Ljug%hrXb%}UueV0cT~tJEoWXbKFT~)D9pf3f+qu8XHFj-;uF>yohuzXxR9(S7b(ndBzOzG4kG6&1B{|77Tm_o#h|HwZp0Z*cm0+n=y!4M1A-9B98>K65 z!(Y>uLNH6{vn?RVJ?E=9#KgqoK-e4q;HAr*q6a$KE>4+Pp@}}zk`6HIGT3rjJR0>5 z(*!{*S|eij=*}sS&}DqdiMqaQ!cC$>V3pM!xHO{&x?U%8$q<>aL7opt60@?(`C9{< z@PgplXOjoUv(O8~%xw{g)Z6omCjMMzCV{&vp=N_@ee#dmxp*SPOiqF?AUvLC0Cov$ zL%i4PH5tBPUsWpv<4V-f;AVas9JRhy| z$GK>TX%rqSY3z;Wsn3v)MdlA9I3)}saMLZiXp;|Y33_6P_V#e;2q;{-+Ub! zDa=}naX6SA@#;E&R*JoyqGqrds9s6y6`D#{_y%Q#YzPV^Nn874F>U^lF58l_zA^|t zQZiaH9Ik0?CL7G|P|MEj5@h4_o>0G#j-P?PIU-7l|BH-LSrxq(Du5h=PyOYlJuhq|6~iH=vdKaDQ&_eUYoORvzzwumq0)e{rV zN1?dz7#4`od~0;g@OE#Zvir&CH9(8Xc@)En9)1^-FHN~Z$g4k8>R#hyrAl{|TR#7O z=F0av9byDBSJ$kC^NSF*DRtc=V&Ohk3CN8iQ3ISXMq45rlWeR=YusyGo$aD0oDc`U zmkeGokCu;FmvLa8ixrJcFwwA>1NhaAGF_XRJwBCBPA|;|CP#R|Yo(ikb_dgUq=LD= ztGpI=JB1W(4uaPApQcL7nVP0mhNLSI0fi$AW*b{VZ%M4j`g_FJxRgMUMAlQb^#Oa^ zfVlk12YZRw0W9g4Nas~PYk5N>ZdYo@cKN=bb|98_q=YIpHPu??nTYtHS=CHywsG5# z{Ux07muI#u6i=SM_A1)a=mf~prFnfX>^(KV-adSCu?FhRjZw!|H&_a8Hs$h94w zhX^%2zlj9;EHdyiNIDccW;soM)HkR{Q0X(GO|oj7;|fNNfc>@)wYacSu?m~%yllUD zU)NNIL1O}`*JQEIR}>m!v8GC__2@)K7l%u5%GR(#A(?5679??+Zw5ZmxwBG-KVk?wnCOuYqAC0EL-drHg`bDQ9{%sLN$=m(g`F>;Up31FYLYk6}U zHwCY|R6i0KjAYZcI-nME9U@q;AOqc|^|~+N0-rD`OL94)=&5i9$Jq6C6A=7>Fv9z4YWp%x56d5t7!gJVY+;)I?4U0PlaAUKqFXW!!5>R z#bSSGJ?+zoPm)iEh@y!SkSh2e03QoyjznP2M@;fbs0@*?gMMkejaLXsH?D6 zHo(^zx|b%d^@H>Yc!$_rl$WR8uD(OOr8UzdKmVKY^#yAFr^iTw8)hzv(d3__KR@Jb z@sp$o*e}S~%`_#p#Ci_tv#Q6~@g=Krub%TcbclfmM(*|zG*yiWSBeb^SF}1*;5Wlg z9pg-Ipk{-8V)l+ZikrTqrNy$=U!@;4=C_R7n(*w&R59yL9zEJyRS>s<2GOL78GTlV zPcVM_D&f@rO<09MCvH{e0b_C|8wZEdvBHC{!jTCP&$$$!_m^Bch&@bEuq9F?LCCDM zh5e>&NUu?%*D+_2)aRrip2_Q!JZ^#1r}YG)c2}`WLQLsas`h*^c8|6EfK2swTnv*C zq_xFlO?40t#Rp2}Ha@V3rG8%oNoLbI$r`|+SURZ=Q;gSGc;%#9_jW(QaUce`IN!;Woq`E=^V_8+3Mn#*pvy8!W6DaB8g}GD$4q77w zh;QKHIkZYU)~{8(qHM$2b(M9fs9h7B;#e)cDl1hg!=EEn`Hbs}`eN`$8fun{rurw+ z@)w@^jN;Zw7@=ZRHHsgC7Lf=!H`7>p8^zEj`ZeXwSh24d9zO;Na?Ja(_VdhH$J1w3 zT{a4jst#MTKRW5xj=8|t_O&GirQB!3oxMzUeud5c!&^qnN{BB|SMialL9b6z`6D!{ z^UPNvEobR!Q9ZqZYclRytWoRx1(;0{qd^50Hci`R5%|W2B7SItu}>V9#`24KC+47_ zP+x7L28tl{pA>XJp`Z(SXa z4rumKW1lW8vPik3{|4M^qZ(|mjIGcQty z?#?>h#rhe#^UQuARG$AL-i;NAr8gLcvC-} zkrd`gdOmhaY$urT=^(9SH-ja$%OAkNeJeS_+4*={KxbQfny>LEa{F5i9Dgp2xa!|e4dj5{1`P54X4ZQuC z-v5+s|7)m6_pK=}3HA$hP5zFB3sk|VtFJdf#SiNxj6Q9m;m92=E^zEBw*v0iMUsG& zLD^GZ>7hZu*>ASRS*Scfw`4x+9)L0g2nTH3(c@GBJ_ceEr9!AUq-h-Eu{0!`vq)g` zlVS3zcC+PxoyHo|B_n z-FoHPX>GL-!A|x)_ytrzj0_j2P~5A0DGcL_niw~j15F59Z__cqCBX?X-^vWp%6eqN znf&PCy!U^IheR_gfVB#6*I^0c&J0Wjckwi zgqOn?+d&AAjs&jx5^^ppw{VtG2N7ubc9}gQkKMX#dxdIc7E{DiD)06SorKw}$zwrw z!BfxvNk3OTSNOQAnvsIS&cuT`GmJ~uuG5LXxNz~mUI=~=UpJpQqHbh(QsH0(%7%Aqo;dNVjEB6yyx7V ztq#8@pCD>&c|0gdMtX7erNC}^H9f~I z|HU$$XHZ<$`q7$`BWVc<33>PR{=+Q-pX-3F9c(jR*>o3#(As5DLq<$*yeyk|>)0V& zO^F!+u*Y7D_75$C|U+Kb!~OS7g~iicR!D z|0eFW>&@E9kf?Wa)?WkxnpbgLYK<^7QU1yvyvIL8rzng_GHgn4vFLX)Np}9$grE5` zci~`hZ>_(G0hh)088n$iB7b{H@0Gc;vvWbW6jc+o&sSbj4$Ygih$U42P!@_Avs~ed z73HbtWVPyj{^NQf)t$&e-hJ~R0Ll5$t0YP|OGB-4`6Y7QN8A~9bQBP+^D4}7u`RQ7 zu?nf=lT*4iW(dnw<24aR?yA@u5hixThzNP?ua(pxOcbcBkG~ssU~O&s5j?-O5G=H= zli=8vE~?V*yn{E`n8#81d4#>V_+AJYdSpH3FzeiZa22(^NUnM*ah@-K{;7JIUR&&g zB5bR?>Z4YTD)Xl#jB0+Ue{vt1WK)n^bgW*WV$BZ#doD#|6is^F@!rV>H4Jfv2k zo7O}4v^M2AI{xaSp5-I?786zERpX(N1x;^N1Ls$OmggWu{QTQ*c>EJzO}tD%tuO3% z>j{3emhQ(-_T5m|LrvP(!=+TSue`<`O{q|g+KasGH&0+Pb(k&ZL;CLRR32i{0cUXA zZOfl5t3R5fcGqxkXYF?Qakq~Sxh*L?WXxgpA*Wf#TK@=TX~i3{vlwHk52N(fdf)oa zCVJIX7)CVi%r@oI713fo-q~-NF`;BhNjL874;5)-mKhKRuvzsx&&z~}2v!KX4&=nJ zWn*ePZpm@50bn;1aTnLv=#wENf-`e>?#t+6;^U`Y|niBPIPia%? zMZKS!@NWn8&QzNDRF2dXS7o^4^wv%!U%ReOn77y70 z%D-RN$i|4XEikd-H#R4sjDUBr)bjJ~n@2t1sM$Pr+s{lN@ygqVyfv{Ca5@Z@eA3UG z7=OP;i?9q9IG#F|RqUE1YF%@%qBB(OX|z@i_byo7@O+%7S3NlFNi(@haWH!NZO8?A zi?isOVUyUtxwGt!Cl!o#g0<9>O`>`nWtz8=5ZrDs<)J%}?J<@II<af?$Toed85v75m)>PkbcSO?vL#(4$rr&;9O~){Q;lS}KTHrT} zPdPFr+#G+$b`NG$#8w*E>5cllG7dQycO0ZtSFc&MRR{qvVm`&=nY;E4-ARGqyc#Zi z(X~KiQ*lb(l?p`XR%9Q$HTtV+7E&bp)&UjH>TNKPW@ir{>cwLb3wK!Iao9Yu>60C9w#qf_Ua?+ zsuiE=wL@pOM*xj-oP8bo`(N3IchgQ=82K5Xf}wG4|TE zk1M+Vok|`yyih%%^vGM2FMKiIkpy?djhswqanRSe~3%D|zu_?***czHc2HLaV ze{PZUB|Y!uAN>!ibvqJ7JYB+1onNKukQ^?&;vd;%F3AV?`c(v;#j-AB*GWr-GO37w zWr=TKC<&w73JUE!HcYZY&ieX+?~D9RNS86g&+j9#b@*3W_p4JX3I9bEfKJI$7_0r} zdcElHp7F3>)`POqMFWHPRQewOWlQ{v$R$MANe5&ns?H++UmIe{O2?XGk14No{#fG4 zY8Z8OS}k!==S~Np!u!jw{CRC&EThes^PbfwE3Toz;=c2{rDYVn$j@)YyD#$JX3{^F z=BtHu4F}9%tM|Lr^O6Fq|9UZv>D=jDr&DGD$e26VE_dFH(fiQ|te%qp+wO14$N-Qr zqRRcZtJeTlKYJxQ@poj*z4Xez^TZyvIh&(nPhi6_a0BkRHHf>@6zyqr~$++03TXN|QFK*wc+6nOqM8d22V;A^yH*Z3a2O$y! zVqE*jqYxvQ;ofuzdxgHgz1TSuUA&R8Ixw`8(}7q@j72|ME&23lwW)6~J!e#A@Vk}t zO^6llgiGaDmp+mot=~P3x<5(6W1YQKRD}1JqN91iQfoC$dOt|Nh|I*KCwdLK=OQG5 zA~TUtycp;q}PyIl!_+-=4A2ND4r$~pJPm{1OrBAnT7 zNz*Gd=}FFtBt(3mGGG+*Sbm`R$^4hC8Jtf3(+XX&GFn05Qi>{T=T3zyxPk3uLtGWk z>!bi4?32BK7?WWl6D4T;T41E*Tod*W$?@x0b!lE2SY;(xdGOQcI=Sou7`f*6)bJv; zLrV9*&Zn(rs~n7YP7dg8Lw6S15~<6^9aP3p$hg@|CdS9*Bb%Q&Amv(n2hgxl1X&o! zoq-*(<6!0FGFPfm;%S#X3@%7j^f*^FrFBLVIDrm3lR zmD)ekqP7237^7m4!dusyrF-U0Y;!3ikdWuQ5F z|7dk<=XM`hv}Wf7#}F{18}VwXNPv9j7&a4ovqemsL^_K;XHC|9glp(M**c}vqqMG(Bu_Vw`UqBLSB{d9V#zdB%jbDG?J zB6w@v)=R|Q*6&Q#UXsU9BXvo$aaThhmLhQ@BO}5f1<-nBjUXao$g(TBzsAOd%u3hl zwH6Jax}isFT2_Q3L#fhx)rb(ZLjY~q2F{YFRq@u6kJ|9l1D6Ps zULMg{8vW&WN#Li;Vu7!%W?!?TGceBTiox$5h zxKv7jQMUErgdlJ=ue_rFKm*kP^WL9zn?}g==Sd~H8sJjb7>#+avf0m;3^uUeaS3Sw zDmmv`>Yykm&(sKA!+^F-sP;=t0%ifGyANInGNkIjQXyoRNNVE1BZXu5o8j0FA54CJ0M+S^m zR#j$pRca~CPDlBTT0Sy7RR__|!_^iw3Y}W8)1!Pr+99sGqx;$=dxSdDXATv64Ny^a zHqQWNaKiQNCJ@u8x|+|qKW3JsCZ@bo?o$p=R09sn<9?pTl`s%UDjv zWI*Qq)dP((^FoBM{t#^vxa631h{#~$jSZQzmx;DRq-+g;Epu|x2~zT9X^SbIoK|Gh z2wu)$QNCyXz-6}}DHtHZjd|X6=Wv5DKY}sZy&r0yrD=9rR!UQ$Uxk6nTFIw?D0=_iDCBIRcI#5b?n>E~Eb2#z zgmBVpz&H?pO-NqcJ{5g`qX2(Lc>RRV$LH`v!Q$iwv4VmEr@`@8K=PaN{$Py5%~0!) z7>$Tz!5-yi)=|YnV>xJWs5K&>M6~sOQA!GUnmcbG#L)XpiB=p37#rivyu*pfCwEj{+1>wE|6il{P_)WcEsy>A?#7`YWLVFG~+Bw`65PwWO7ZBaK<9q zqw+1`P!8~2b(o(T$!o?vQ|!=%5^Z+Wg$HwzQY9=l%``kU(U4J|HB?n0ESQzZ2a9w#(>4$_O)F0&VQfHf5@s(z;aJ>3i{nh z&44u-ZSNQ%brxg(=W%p^RVu$s{@alNbNl}6!oBx^AUbdH;(*y6-NX6Ykdg0#s`?kd{0(dUVVpmV^Kb6>V;uj+ zto>sgpYIR-VVpmV^S5sK>%|{;{Cr1R{Es{S7n}V1;^qHK#=%tkpnKs0rn=1IhtL0D tI%jeAA29GY3i1yac)t5ifpaX@cWve{Q7fJD0`MavsrVTBNdG1F{{iQKNHqWe literal 0 HcmV?d00001 diff --git a/Images/04-failed.png b/Images/04-failed.png new file mode 100644 index 0000000000000000000000000000000000000000..7c757cf7b28fca3eda92269f6e03192fa5b557d0 GIT binary patch literal 53681 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 literal 0 HcmV?d00001 diff --git a/README.md b/README.md index 4f69c395..86e87472 100644 --- a/README.md +++ b/README.md @@ -1 +1,120 @@ -# github-actions-demo \ No newline at end of file +# Instructor Demo: Configuring GitHub Actions + +At this point in the course, you are well aware that GitHub is a very powerful tool for collaborating with multiple users on the same project. Collaboration inevitably will cause some conflicts whether that be within the code itself or with your overall workflow. On occasion some errors will slip past a local linter and make their way into pull requests. Wouldn't it be nice to automate something like linting before each pull request? + +GitHub Actions is a great solution to this problem. For example, you could create a GitHub action to automatically run a linter against every pull request to ensure the code meets your agreed upon standards. Today, we are going to create such an action. + +* Before we begin, check out the [Introduction to GitHub Actions](https://docs.github.com/en/actions/learn-github-actions/introduction-to-github-actions) to get a grasp on some of the core concepts. + +## Initial Project Setup + +TODO: this definitely doesn't work +To begin, start by forking the following repository [GitHub Actions Demo](https://github.com/coding-boot-camp/github-actions-demo). Once you have forked this repository you should then clone the forked repository to your local machine. + +## Create the Workflow + +Now that we have some code locally, let's create the workflow that will contain the actions we want to preform after each pull request. + +1. In your terminal create a new directory called `.github`. GitHub will automatically look for this directory when it's pushed to your repository. + +2. Create a `workflows` directory inside `.github`. + +3. Finally, create a `main.yml` file inside your `workflows` directory + +The folder structure should look something like this: + +```md +.github +└── workflows + └── main.yml +``` + +## Actions + +Our actions will be defined inside of our `main.yml` file. To begin, let's open up `main.yml` in our code editor. YAML is a recursive acronym that stands for "YAML Ain't Markup Language". YAML is human-readable syntax for data that is being stored or transmitted. + +* Note that the first part of this file simply gives a name to our workflow. The `on` portion specifies what should trigger the workflow. We also want our actions to run whenever someone creates a pull request to the `develop`, or `staging` branches. + +* Next we specify the `jobs` that can run sequentially or in parallel. We are specifying that we want our job `test` to run on a container that uses Ubuntu as it's operating system. This container will be spun up by GitHub when our workflow is invoked. + +* The `steps` section contains what actions or tasks we want to run on our container. In our case we are checking out the branch, using node v20, installing dependencies, and finally running our `eslint` script. + + ```yml + # Name of workflow + name: Lint workflow + + # Trigger workflow on all pull requests + on: + pull_request: + branches: + - develop + - staging + + # Jobs to carry out + jobs: + test: + # Operating system to run job on + runs-on: ubuntu-latest + + # Steps in job + steps: + # Get code from repo + - name: Checkout code + uses: actions/checkout@v1 + + - name: Use Node.js 21.x + uses: actions/setup-node@v1 + with: + node-version: 21.x + + # Install dependencies + - name: 🧰 install deps + run: npm install + + # Run lint + - name: Run lint + run: npm run lint + ``` + +* Save the content of the snippet above to your `main.yml` file. + +## Create a Pull Request + +Now it's time to give our linter something to complain about! We will make some changes in any component and then create a pull request. + +1. First let's make a new feature branch to create a pull request from: + + ```sh + git checkout -b feat/linting-test + ``` + +2. Add and commit your changes, then push them to our `feat/linting-test` branch + + ```sh + git add . + git commit -m "Creating a PR for testing" + git push origin feat/linting-test + ``` + +3. Head to GitHub and click "Create pull request" next to the yellow indicator for our recent change to `feat/linting-test`. + + ![Pull Request](Images/01-pr.png) + +4. Click "Create pull request" and then click on "details". + + ![PR details](Images/02-details.png) + +5. In this view we can see the output of our workflow + + ![Workflow](Images/03-output.png) + +6. The PR should be automatically marked as having failed checks, indicating the author needs to refactor some of the code. + + ![Failed checks](Images/04-failed.png) + +## Conclusion + +Congratulations on gaining experience with GitHub Actions! This powerful feature can become part of your CI/CD pipeline, providing valuable automation and efficiency. While you might not use it for every project, it can be especially useful for group projects or large organizations. + +--- +© 2025 edX Boot Camps LLC. Confidential and Proprietary. All Rights Reserved. diff --git a/index.html b/index.html new file mode 100644 index 00000000..f5baa23d --- /dev/null +++ b/index.html @@ -0,0 +1,13 @@ + + + + + + + React Props + + +

+ + + diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 00000000..f5a5a747 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,6055 @@ +{ + "name": "vite-project", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "vite-project", + "version": "0.0.0", + "dependencies": { + "react": "^18.2.0", + "react-dom": "^18.2.0" + }, + "devDependencies": { + "@testing-library/react": "^16.0.0", + "@types/jest": "^29.5.12", + "@types/pretty": "^2.0.3", + "@types/react": "^18.2.15", + "@types/react-dom": "^18.2.7", + "@typescript-eslint/eslint-plugin": "^6.0.0", + "@typescript-eslint/parser": "^6.0.0", + "@vitejs/plugin-react": "^4.0.3", + "eslint": "^8.45.0", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-react-refresh": "^0.4.3", + "happy-dom": "^14.12.3", + "pretty": "^2.0.0", + "typescript": "^5.0.2", + "vite": "^4.4.5", + "vitest": "^2.0.4" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.8.tgz", + "integrity": "sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.9.tgz", + "integrity": "sha512-lWBYIrF7qK5+GjY5Uy+/hEgp8OJWOD/rpy74GplYRhEauvbHDeFB8t5hPOZxCZ0Oxf4Cc36tK51/l3ymJysrKw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.9", + "@babel/helper-compilation-targets": "^7.26.5", + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helpers": "^7.26.9", + "@babel/parser": "^7.26.9", + "@babel/template": "^7.26.9", + "@babel/traverse": "^7.26.9", + "@babel/types": "^7.26.9", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.9.tgz", + "integrity": "sha512-kEWdzjOAUMW4hAyrzJ0ZaTOu9OmpyDIQicIh0zg0EEcEkYXZb2TjtBhnHi2ViX7PKwZqF4xwqfAm299/QMP3lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.26.9", + "@babel/types": "^7.26.9", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.26.5.tgz", + "integrity": "sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.26.5", + "@babel/helper-validator-option": "^7.25.9", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", + "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", + "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", + "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", + "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.9.tgz", + "integrity": "sha512-Mz/4+y8udxBKdmzt/UjPACs4G3j5SshJJEFFKxlCGPydG4JAHXxjWjAwjd09tf6oINvl1VfMJo+nB7H2YKQ0dA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.26.9", + "@babel/types": "^7.26.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.9.tgz", + "integrity": "sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.26.9" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.25.9.tgz", + "integrity": "sha512-y8quW6p0WHkEhmErnfe58r7x0A70uKphQm8Sp8cV7tjNQwK56sNVK0M73LK3WuYmsuyrftut4xAkjjgU0twaMg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.25.9.tgz", + "integrity": "sha512-+iqjT8xmXhhYv4/uiYd8FNQsraMFZIfxVSqxxVSZP0WbbSAWvBXAul0m/zu+7Vv4O/3WtApy9pmaTMiumEZgfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.9.tgz", + "integrity": "sha512-aA63XwOkcl4xxQa3HjPMqOP6LiK0ZDv3mUPYEFXkpHbaFjtGggE1A61FjFzJnB+p7/oy2gA8E+rcBNl/zC1tMg==", + "dev": true, + "license": "MIT", + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.9.tgz", + "integrity": "sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.26.9", + "@babel/types": "^7.26.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.9.tgz", + "integrity": "sha512-ZYW7L+pL8ahU5fXmNbPF+iZFHCv5scFak7MZ9bwaRPLUhHh7QQEMjZUg0HevihoqCM5iSYHN61EyCoZvqC+bxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.9", + "@babel/parser": "^7.26.9", + "@babel/template": "^7.26.9", + "@babel/types": "^7.26.9", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.9.tgz", + "integrity": "sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" + }, + "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.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz", + "integrity": "sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz", + "integrity": "sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.20.tgz", + "integrity": "sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz", + "integrity": "sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz", + "integrity": "sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz", + "integrity": "sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz", + "integrity": "sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz", + "integrity": "sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz", + "integrity": "sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz", + "integrity": "sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz", + "integrity": "sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz", + "integrity": "sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz", + "integrity": "sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz", + "integrity": "sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz", + "integrity": "sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz", + "integrity": "sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz", + "integrity": "sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz", + "integrity": "sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz", + "integrity": "sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz", + "integrity": "sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz", + "integrity": "sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz", + "integrity": "sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.1.tgz", + "integrity": "sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==", + "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/regexpp": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/eslintrc/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/@eslint/js": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", + "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", + "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", + "deprecated": "Use @eslint/config-array instead", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.3", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@humanwhocodes/config-array/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/@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/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-get-type": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "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==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "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==", + "dev": true, + "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==", + "dev": true, + "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==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@one-ini/wasm": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@one-ini/wasm/-/wasm-0.1.1.tgz", + "integrity": "sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.34.8.tgz", + "integrity": "sha512-q217OSE8DTp8AFHuNHXo0Y86e1wtlfVrXiAlwkIvGRQv9zbc6mE3sjIVfwI8sYUyNxwOg0j/Vm1RKM04JcWLJw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.34.8.tgz", + "integrity": "sha512-Gigjz7mNWaOL9wCggvoK3jEIUUbGul656opstjaUSGC3eT0BM7PofdAJaBfPFWWkXNVAXbaQtC99OCg4sJv70Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.34.8.tgz", + "integrity": "sha512-02rVdZ5tgdUNRxIUrFdcMBZQoaPMrxtwSb+/hOfBdqkatYHR3lZ2A2EGyHq2sGOd0Owk80oV3snlDASC24He3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.34.8.tgz", + "integrity": "sha512-qIP/elwR/tq/dYRx3lgwK31jkZvMiD6qUtOycLhTzCvrjbZ3LjQnEM9rNhSGpbLXVJYQ3rq39A6Re0h9tU2ynw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.34.8.tgz", + "integrity": "sha512-IQNVXL9iY6NniYbTaOKdrlVP3XIqazBgJOVkddzJlqnCpRi/yAeSOa8PLcECFSQochzqApIOE1GHNu3pCz+BDA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.34.8.tgz", + "integrity": "sha512-TYXcHghgnCqYFiE3FT5QwXtOZqDj5GmaFNTNt3jNC+vh22dc/ukG2cG+pi75QO4kACohZzidsq7yKTKwq/Jq7Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.34.8.tgz", + "integrity": "sha512-A4iphFGNkWRd+5m3VIGuqHnG3MVnqKe7Al57u9mwgbyZ2/xF9Jio72MaY7xxh+Y87VAHmGQr73qoKL9HPbXj1g==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.34.8.tgz", + "integrity": "sha512-S0lqKLfTm5u+QTxlFiAnb2J/2dgQqRy/XvziPtDd1rKZFXHTyYLoVL58M/XFwDI01AQCDIevGLbQrMAtdyanpA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.34.8.tgz", + "integrity": "sha512-jpz9YOuPiSkL4G4pqKrus0pn9aYwpImGkosRKwNi+sJSkz+WU3anZe6hi73StLOQdfXYXC7hUfsQlTnjMd3s1A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.34.8.tgz", + "integrity": "sha512-KdSfaROOUJXgTVxJNAZ3KwkRc5nggDk+06P6lgi1HLv1hskgvxHUKZ4xtwHkVYJ1Rep4GNo+uEfycCRRxht7+Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loongarch64-gnu": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.34.8.tgz", + "integrity": "sha512-NyF4gcxwkMFRjgXBM6g2lkT58OWztZvw5KkV2K0qqSnUEqCVcqdh2jN4gQrTn/YUpAcNKyFHfoOZEer9nwo6uQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.34.8.tgz", + "integrity": "sha512-LMJc999GkhGvktHU85zNTDImZVUCJ1z/MbAJTnviiWmmjyckP5aQsHtcujMjpNdMZPT2rQEDBlJfubhs3jsMfw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.34.8.tgz", + "integrity": "sha512-xAQCAHPj8nJq1PI3z8CIZzXuXCstquz7cIOL73HHdXiRcKk8Ywwqtx2wrIy23EcTn4aZ2fLJNBB8d0tQENPCmw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.34.8.tgz", + "integrity": "sha512-DdePVk1NDEuc3fOe3dPPTb+rjMtuFw89gw6gVWxQFAuEqqSdDKnrwzZHrUYdac7A7dXl9Q2Vflxpme15gUWQFA==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.34.8.tgz", + "integrity": "sha512-8y7ED8gjxITUltTUEJLQdgpbPh1sUQ0kMTmufRF/Ns5tI9TNMNlhWtmPKKHCU0SilX+3MJkZ0zERYYGIVBYHIA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.34.8.tgz", + "integrity": "sha512-SCXcP0ZpGFIe7Ge+McxY5zKxiEI5ra+GT3QRxL0pMMtxPfpyLAKleZODi1zdRHkz5/BhueUrYtYVgubqe9JBNQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.34.8.tgz", + "integrity": "sha512-YHYsgzZgFJzTRbth4h7Or0m5O74Yda+hLin0irAIobkLQFRQd1qWmnoVfwmKm9TXIZVAD0nZ+GEb2ICicLyCnQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.34.8.tgz", + "integrity": "sha512-r3NRQrXkHr4uWy5TOjTpTYojR9XmF0j/RYgKCef+Ag46FWUTltm5ziticv8LdNsDMehjJ543x/+TJAek/xBA2w==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.34.8.tgz", + "integrity": "sha512-U0FaE5O1BCpZSeE6gBl3c5ObhePQSfk9vDRToMmTkbhCOgW4jqvtS5LGyQ76L1fH8sM0keRp4uDTsbjiUyjk0g==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@testing-library/dom": { + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-10.4.0.tgz", + "integrity": "sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ==", + "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", + "chalk": "^4.1.0", + "dom-accessibility-api": "^0.5.9", + "lz-string": "^1.5.0", + "pretty-format": "^27.0.2" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/@testing-library/react": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-16.2.0.tgz", + "integrity": "sha512-2cSskAvA1QNtKc8Y9VJQRv0tm3hLVgxRGDB+KYhIaPQJ1I+RHbhIXcM+zClKXzMes/wshsMVzf4B9vS4IZpqDQ==", + "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/@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/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", + "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "29.5.14", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz", + "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" + } + }, + "node_modules/@types/jest/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", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@types/jest/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@types/jest/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==", + "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.13.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.5.tgz", + "integrity": "sha512-+lTU0PxZXn0Dr1NBtC7Y8cR21AJr87dLLU953CWA6pMxxv/UDc7jYAY90upcrie1nRcD6XNG5HOYEDtgW5TxAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.20.0" + } + }, + "node_modules/@types/pretty": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/pretty/-/pretty-2.0.3.tgz", + "integrity": "sha512-xR96pShNlrxLd3gZqzCnbaAmbYhiRYjW51CDFjektZemqpBZBAAkMwxm4gBraJP/xSgKcsQhLXdlXOwDNWo4VQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/prop-types": { + "version": "15.7.14", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.14.tgz", + "integrity": "sha512-gNMvNH49DJ7OJYv+KAKn0Xp45p8PLl6zo2YnvDIbTd4J6MER2BmWN49TG7n9LvkyihINxeKW8+3bfS2yDC9dzQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/react": { + "version": "18.3.18", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.18.tgz", + "integrity": "sha512-t4yC+vtgnkYjNSKlFx1jkAhH8LgTo2N/7Qvi83kdEaUtMDiwpbLAktKDaAMlRcJ5eSxZkH74eEGt1ky31d7kfQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/prop-types": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.3.5", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.5.tgz", + "integrity": "sha512-P4t6saawp+b/dFrUr2cvkVsfvPguwsxtH6dNIYRllMsefqFzkZk5UIjzyDOv5g1dXIPdG4Sp1yCR4Z6RCUsG/Q==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@types/react": "^18.0.0" + } + }, + "node_modules/@types/semver": { + "version": "7.5.8", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", + "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/yargs": { + "version": "17.0.33", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", + "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", + "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/type-utils": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", + "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", + "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", + "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "semver": "^7.5.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", + "dev": true, + "license": "ISC" + }, + "node_modules/@vitejs/plugin-react": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.3.4.tgz", + "integrity": "sha512-SCCPBJtYLdE8PX/7ZQAs1QAZ8Jqwih+0VBLum1EGqmCCQal+MIUqLCzj3ZUy8ufbC0cAM4LRlSTm7IQJwWT4ug==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.26.0", + "@babel/plugin-transform-react-jsx-self": "^7.25.9", + "@babel/plugin-transform-react-jsx-source": "^7.25.9", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.14.2" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0 || ^6.0.0" + } + }, + "node_modules/@vitest/expect": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.1.9.tgz", + "integrity": "sha512-UJCIkTBenHeKT1TTlKMJWy1laZewsRIzYighyYiJKZreqtdxSos/S1t+ktRMQWu2CKqaarrkeszJx1cgC5tGZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/spy": "2.1.9", + "@vitest/utils": "2.1.9", + "chai": "^5.1.2", + "tinyrainbow": "^1.2.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/pretty-format": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.9.tgz", + "integrity": "sha512-KhRIdGV2U9HOUzxfiHmY8IFHTdqtOhIzCpd8WRdJiE7D/HUcZVD0EgQCVjm+Q9gkUXWgBvMmTtZgIG48wq7sOQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "tinyrainbow": "^1.2.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/runner": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.1.9.tgz", + "integrity": "sha512-ZXSSqTFIrzduD63btIfEyOmNcBmQvgOVsPNPe0jYtESiXkhd8u2erDLnMxmGrDCwHCCHE7hxwRDCT3pt0esT4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/utils": "2.1.9", + "pathe": "^1.1.2" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/snapshot": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.9.tgz", + "integrity": "sha512-oBO82rEjsxLNJincVhLhaxxZdEtV0EFHMK5Kmx5sJ6H9L183dHECjiefOAdnqpIgT5eZwT04PoggUnW88vOBNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/pretty-format": "2.1.9", + "magic-string": "^0.30.12", + "pathe": "^1.1.2" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/spy": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.1.9.tgz", + "integrity": "sha512-E1B35FwzXXTs9FHNK6bDszs7mtydNi5MIfUWpceJ8Xbfb1gBMscAnwLbEu+B44ed6W3XjL9/ehLPHR1fkf1KLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "tinyspy": "^3.0.2" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/utils": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.9.tgz", + "integrity": "sha512-v0psaMSkNJ3A2NMrUEHFRzJtDPFn+/VWZ5WxImB21T9fjucJRmS7xCS3ppEnARb9y11OAzaD+P2Ps+b+BGX5iQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/pretty-format": "2.1.9", + "loupe": "^3.1.2", + "tinyrainbow": "^1.2.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/abbrev": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-3.0.0.tgz", + "integrity": "sha512-+/kfrslGQ7TNV2ecmQwMJj/B65g5KVq1/L3SGVZ3tCYGqlzFuFCGBZJtMP99wH3NpEUyAjn0zPdPUg0D+DwrOA==", + "dev": true, + "license": "ISC", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/acorn": { + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "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/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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", + "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/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-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", + "peer": true, + "dependencies": { + "dequal": "^2.0.3" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "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/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/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "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==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.24.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", + "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": { + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.1" + }, + "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/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/caniuse-lite": { + "version": "1.0.30001700", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001700.tgz", + "integrity": "sha512-2S6XIXwaE7K7erT8dY+kLQcpa5ms63XlRkMkReXjle+kf6c5g38vyMl+Z5y8dSxOFDhcFe+nxnn261PLxBSQsQ==", + "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.2.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-5.2.0.tgz", + "integrity": "sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==", + "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": ">=12" + } + }, + "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.1", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz", + "integrity": "sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 16" + } + }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "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/commander": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + } + }, + "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/condense-newlines": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/condense-newlines/-/condense-newlines-0.2.1.tgz", + "integrity": "sha512-P7X+QL9Hb9B/c8HI5BFFKmjgBu2XpQuF98WZ9XkO+dBGgk5XgwiQz7o1SmpglNWId3581UcS0SFAWfoIhMHPfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-whitespace": "^0.3.0", + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/config-chain": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz", + "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ini": "^1.3.4", + "proto-list": "~1.2.1" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "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/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "dev": true, + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "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/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "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/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true, + "license": "MIT" + }, + "node_modules/editorconfig": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-1.0.4.tgz", + "integrity": "sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@one-ini/wasm": "0.1.1", + "commander": "^10.0.0", + "minimatch": "9.0.1", + "semver": "^7.5.3" + }, + "bin": { + "editorconfig": "bin/editorconfig" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/editorconfig/node_modules/minimatch": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz", + "integrity": "sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==", + "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/electron-to-chromium": { + "version": "1.5.103", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.103.tgz", + "integrity": "sha512-P6+XzIkfndgsrjROJWfSvVEgNHtPgbhVyTkwLjUM2HU/h7pZRORgaTlHqfAikqxKmdJMLW8fftrdGWbd/Ds0FA==", + "dev": true, + "license": "ISC" + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true, + "license": "MIT" + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/es-module-lexer": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.6.0.tgz", + "integrity": "sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/esbuild": { + "version": "0.18.20", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", + "integrity": "sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.18.20", + "@esbuild/android-arm64": "0.18.20", + "@esbuild/android-x64": "0.18.20", + "@esbuild/darwin-arm64": "0.18.20", + "@esbuild/darwin-x64": "0.18.20", + "@esbuild/freebsd-arm64": "0.18.20", + "@esbuild/freebsd-x64": "0.18.20", + "@esbuild/linux-arm": "0.18.20", + "@esbuild/linux-arm64": "0.18.20", + "@esbuild/linux-ia32": "0.18.20", + "@esbuild/linux-loong64": "0.18.20", + "@esbuild/linux-mips64el": "0.18.20", + "@esbuild/linux-ppc64": "0.18.20", + "@esbuild/linux-riscv64": "0.18.20", + "@esbuild/linux-s390x": "0.18.20", + "@esbuild/linux-x64": "0.18.20", + "@esbuild/netbsd-x64": "0.18.20", + "@esbuild/openbsd-x64": "0.18.20", + "@esbuild/sunos-x64": "0.18.20", + "@esbuild/win32-arm64": "0.18.20", + "@esbuild/win32-ia32": "0.18.20", + "@esbuild/win32-x64": "0.18.20" + } + }, + "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/eslint": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", + "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.1", + "@humanwhocodes/config-array": "^0.13.0", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.2.tgz", + "integrity": "sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==", + "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" + } + }, + "node_modules/eslint-plugin-react-refresh": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.19.tgz", + "integrity": "sha512-eyy8pcr/YxSYjBoqIFSrlbn9i/xvxUFa8CjzAYo9cFjgGXqq1hyjihcpZvxRLalpaWmueWR81xn7vuKmAFijDQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "eslint": ">=8.40" + } + }, + "node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "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/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/eslint/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/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/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "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/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/expect-utils": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/expect-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.1.0.tgz", + "integrity": "sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.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-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dev": true, + "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==", + "dev": true, + "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.19.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.0.tgz", + "integrity": "sha512-7SFSRCNjBQIZH/xZR3iy5iQYR8aGBE0h3VG6/cwlbrpdciNYBMotQav8c1XI3HjHH+NikUpP53nPdlZSdWmFzA==", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.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==", + "dev": true, + "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": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "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/foreground-child": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", + "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", + "dev": true, + "license": "ISC", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "dev": true, + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "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==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/glob/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/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true, + "license": "MIT" + }, + "node_modules/happy-dom": { + "version": "14.12.3", + "resolved": "https://registry.npmjs.org/happy-dom/-/happy-dom-14.12.3.tgz", + "integrity": "sha512-vsYlEs3E9gLwA1Hp+w3qzu+RUDFf4VTT8cyKqVICoZ2k7WM++Qyd2LwzyTi5bqMJFiIC/vNpTDYuxdreENRK/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "entities": "^4.5.0", + "webidl-conversions": "^7.0.0", + "whatwg-mimetype": "^3.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "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/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/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true, + "license": "ISC" + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true, + "license": "MIT" + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "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==", + "dev": true, + "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==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-whitespace": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-whitespace/-/is-whitespace-0.3.0.tgz", + "integrity": "sha512-RydPhl4S6JwAyj0JJjshWJEFG6hNye3pZFBRZaTUfZFwGHxzppNaNOVgQuS/E/SlhrApuMXrpnK1EEIXfdo3Dg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "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/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jest-diff": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-diff/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", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-diff/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-diff/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==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils/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", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-matcher-utils/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils/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==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util/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", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-message-util/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util/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==", + "dev": true, + "license": "MIT" + }, + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/js-beautify": { + "version": "1.15.3", + "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.15.3.tgz", + "integrity": "sha512-rKKGuyTxGNlyN4EQKWzNndzXpi0bOl8Gl8YQAW1as/oMz0XhD6sHJO1hTvoBDOSzKuJb9WkwoAb34FfdkKMv2A==", + "dev": true, + "license": "MIT", + "dependencies": { + "config-chain": "^1.1.13", + "editorconfig": "^1.0.4", + "glob": "^10.4.2", + "js-cookie": "^3.0.5", + "nopt": "^8.0.0" + }, + "bin": { + "css-beautify": "js/bin/css-beautify.js", + "html-beautify": "js/bin/html-beautify.js", + "js-beautify": "js/bin/js-beautify.js" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/js-cookie": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.5.tgz", + "integrity": "sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + } + }, + "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.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "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/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "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/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "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/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.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.1.3", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.1.3.tgz", + "integrity": "sha512-kkIp7XSkP78ZxJEsSxW3712C6teJVoeHHwgo9zJ380de7IYyJ2ISlxojcH2pC5OFLewESmnRi/+XCDIEEVyoug==", + "dev": true, + "license": "MIT" + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "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.17", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "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==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "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/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "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/nanoid": { + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", + "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==", + "dev": true, + "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/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "dev": true, + "license": "MIT" + }, + "node_modules/nopt": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-8.1.0.tgz", + "integrity": "sha512-ieGu42u/Qsa4TFktmaKEwM6MQH0pOWnaB3htzh0JRtx84+Mebc0cbZYN5bC+6WTZ4+77xrL9Pn5m7CV6VIkV7A==", + "dev": true, + "license": "ISC", + "dependencies": { + "abbrev": "^3.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "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/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true, + "license": "BlueOak-1.0.0" + }, + "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/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-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "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-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/pathval": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.0.tgz", + "integrity": "sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==", + "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==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/postcss": { + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.3.tgz", + "integrity": "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==", + "dev": true, + "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.8", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "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": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pretty/-/pretty-2.0.0.tgz", + "integrity": "sha512-G9xUchgTEiNpormdYBl+Pha50gOUovT18IvAe7EYMZ1/f9W/WWMPRn+xI68yXNMUk3QXHDwo/1wV/4NejVNe1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "condense-newlines": "^0.2.1", + "extend-shallow": "^2.0.1", + "js-beautify": "^1.6.12" + }, + "engines": { + "node": ">=0.10.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/proto-list": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", + "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==", + "dev": true, + "license": "ISC" + }, + "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/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "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-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-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-refresh": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.2.tgz", + "integrity": "sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "dev": true, + "license": "MIT" + }, + "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.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/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/rollup": { + "version": "3.29.5", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.5.tgz", + "integrity": "sha512-GVsDdsbJzzy4S/v3dqWPJ7EfvZJfCHiDqe80IyrF59LYuP+e6U1LJoUqeuqRbwAWoMNoXivMNeNAOf5E22VA1w==", + "dev": true, + "license": "MIT", + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=14.18.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "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==", + "dev": true, + "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/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.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "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/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "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==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "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.8.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.8.0.tgz", + "integrity": "sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==", + "dev": true, + "license": "MIT" + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "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/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/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true, + "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/tinypool": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.0.2.tgz", + "integrity": "sha512-al6n+QEANGFOMf/dmUMsuS5/r9B06uwlyNjZZql/zv8J7ybHCgoihBNORZCY2mzUuAnomQa2JdhyHKzZxPCrFA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.0.0 || >=20.0.0" + } + }, + "node_modules/tinyrainbow": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-1.2.0.tgz", + "integrity": "sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tinyspy": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.2.tgz", + "integrity": "sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==", + "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==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ts-api-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.3.tgz", + "integrity": "sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, + "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/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.3.tgz", + "integrity": "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz", + "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==", + "dev": true, + "license": "MIT" + }, + "node_modules/update-browserslist-db": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.2.tgz", + "integrity": "sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==", + "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/vite": { + "version": "4.5.9", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.9.tgz", + "integrity": "sha512-qK9W4xjgD3gXbC0NmdNFFnVFLMWSNiR3swj957yutwzzN16xF/E7nmtAyp1rT9hviDroQANjE4HK3H4WqWdFtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.18.10", + "postcss": "^8.4.27", + "rollup": "^3.27.1" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + }, + "peerDependencies": { + "@types/node": ">= 14", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-node": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.1.9.tgz", + "integrity": "sha512-AM9aQ/IPrW/6ENLQg3AGY4K1N2TGZdR5e4gu/MmmR2xR3Ll1+dib+nook92g4TV3PXVyeyxdWwtaCAiUL0hMxA==", + "dev": true, + "license": "MIT", + "dependencies": { + "cac": "^6.7.14", + "debug": "^4.3.7", + "es-module-lexer": "^1.5.4", + "pathe": "^1.1.2", + "vite": "^5.0.0" + }, + "bin": { + "vite-node": "vite-node.mjs" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/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/vite-node/node_modules/rollup": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.34.8.tgz", + "integrity": "sha512-489gTVMzAYdiZHFVA/ig/iYFllCcWFHMvUHI1rpFmkoUtRlQxqh6/yiNqnYibjMZ2b/+FUQwldG+aLsEt6bglQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.6" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.34.8", + "@rollup/rollup-android-arm64": "4.34.8", + "@rollup/rollup-darwin-arm64": "4.34.8", + "@rollup/rollup-darwin-x64": "4.34.8", + "@rollup/rollup-freebsd-arm64": "4.34.8", + "@rollup/rollup-freebsd-x64": "4.34.8", + "@rollup/rollup-linux-arm-gnueabihf": "4.34.8", + "@rollup/rollup-linux-arm-musleabihf": "4.34.8", + "@rollup/rollup-linux-arm64-gnu": "4.34.8", + "@rollup/rollup-linux-arm64-musl": "4.34.8", + "@rollup/rollup-linux-loongarch64-gnu": "4.34.8", + "@rollup/rollup-linux-powerpc64le-gnu": "4.34.8", + "@rollup/rollup-linux-riscv64-gnu": "4.34.8", + "@rollup/rollup-linux-s390x-gnu": "4.34.8", + "@rollup/rollup-linux-x64-gnu": "4.34.8", + "@rollup/rollup-linux-x64-musl": "4.34.8", + "@rollup/rollup-win32-arm64-msvc": "4.34.8", + "@rollup/rollup-win32-ia32-msvc": "4.34.8", + "@rollup/rollup-win32-x64-msvc": "4.34.8", + "fsevents": "~2.3.2" + } + }, + "node_modules/vite-node/node_modules/vite": { + "version": "5.4.14", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.14.tgz", + "integrity": "sha512-EK5cY7Q1D8JNhSaPKVK4pwBFvaTmZxEnoKXLG/U9gmdDcihQGNzFlgIvaxezFR4glP1LsuiedwMBqCXH3wZccA==", + "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/vitest": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.9.tgz", + "integrity": "sha512-MSmPM9REYqDGBI8439mA4mWhV5sKmDlBKWIYbA3lRb2PTHACE0mgKwA8yQ2xq9vxDTuk4iPrECBAEW2aoFXY0Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/expect": "2.1.9", + "@vitest/mocker": "2.1.9", + "@vitest/pretty-format": "^2.1.9", + "@vitest/runner": "2.1.9", + "@vitest/snapshot": "2.1.9", + "@vitest/spy": "2.1.9", + "@vitest/utils": "2.1.9", + "chai": "^5.1.2", + "debug": "^4.3.7", + "expect-type": "^1.1.0", + "magic-string": "^0.30.12", + "pathe": "^1.1.2", + "std-env": "^3.8.0", + "tinybench": "^2.9.0", + "tinyexec": "^0.3.1", + "tinypool": "^1.0.1", + "tinyrainbow": "^1.2.0", + "vite": "^5.0.0", + "vite-node": "2.1.9", + "why-is-node-running": "^2.3.0" + }, + "bin": { + "vitest": "vitest.mjs" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + }, + "peerDependencies": { + "@edge-runtime/vm": "*", + "@types/node": "^18.0.0 || >=20.0.0", + "@vitest/browser": "2.1.9", + "@vitest/ui": "2.1.9", + "happy-dom": "*", + "jsdom": "*" + }, + "peerDependenciesMeta": { + "@edge-runtime/vm": { + "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/@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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/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/vitest/node_modules/@vitest/mocker": { + "version": "2.1.9", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.9.tgz", + "integrity": "sha512-tVL6uJgoUdi6icpxmdrn5YNo3g3Dxv+IHJBr0GXHaEdTcw3F+cPKnsXFhli6nO+f/6SDKPHEK1UN+k+TQv0Ehg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/spy": "2.1.9", + "estree-walker": "^3.0.3", + "magic-string": "^0.30.12" + }, + "funding": { + "url": "https://opencollective.com/vitest" + }, + "peerDependencies": { + "msw": "^2.4.9", + "vite": "^5.0.0" + }, + "peerDependenciesMeta": { + "msw": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/vitest/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/vitest/node_modules/rollup": { + "version": "4.34.8", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.34.8.tgz", + "integrity": "sha512-489gTVMzAYdiZHFVA/ig/iYFllCcWFHMvUHI1rpFmkoUtRlQxqh6/yiNqnYibjMZ2b/+FUQwldG+aLsEt6bglQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.6" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.34.8", + "@rollup/rollup-android-arm64": "4.34.8", + "@rollup/rollup-darwin-arm64": "4.34.8", + "@rollup/rollup-darwin-x64": "4.34.8", + "@rollup/rollup-freebsd-arm64": "4.34.8", + "@rollup/rollup-freebsd-x64": "4.34.8", + "@rollup/rollup-linux-arm-gnueabihf": "4.34.8", + "@rollup/rollup-linux-arm-musleabihf": "4.34.8", + "@rollup/rollup-linux-arm64-gnu": "4.34.8", + "@rollup/rollup-linux-arm64-musl": "4.34.8", + "@rollup/rollup-linux-loongarch64-gnu": "4.34.8", + "@rollup/rollup-linux-powerpc64le-gnu": "4.34.8", + "@rollup/rollup-linux-riscv64-gnu": "4.34.8", + "@rollup/rollup-linux-s390x-gnu": "4.34.8", + "@rollup/rollup-linux-x64-gnu": "4.34.8", + "@rollup/rollup-linux-x64-musl": "4.34.8", + "@rollup/rollup-win32-arm64-msvc": "4.34.8", + "@rollup/rollup-win32-ia32-msvc": "4.34.8", + "@rollup/rollup-win32-x64-msvc": "4.34.8", + "fsevents": "~2.3.2" + } + }, + "node_modules/vitest/node_modules/vite": { + "version": "5.4.14", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.14.tgz", + "integrity": "sha512-EK5cY7Q1D8JNhSaPKVK4pwBFvaTmZxEnoKXLG/U9gmdDcihQGNzFlgIvaxezFR4glP1LsuiedwMBqCXH3wZccA==", + "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/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-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/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/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, + "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" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 00000000..e0adbbe8 --- /dev/null +++ b/package.json @@ -0,0 +1,36 @@ +{ + "name": "vite-project", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite --port 3000", + "build": "tsc && vite build", + "lint": "eslint src --ext js,tsx --report-unused-disable-directives --max-warnings 0", + "preview": "vite preview", + "eslint": "eslint src", + "test": "vitest" + }, + "dependencies": { + "react": "^18.2.0", + "react-dom": "^18.2.0" + }, + "devDependencies": { + "@testing-library/react": "^16.0.0", + "@types/jest": "^29.5.12", + "@types/pretty": "^2.0.3", + "@types/react": "^18.2.15", + "@types/react-dom": "^18.2.7", + "@typescript-eslint/eslint-plugin": "^6.0.0", + "@typescript-eslint/parser": "^6.0.0", + "@vitejs/plugin-react": "^4.0.3", + "eslint": "^8.45.0", + "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-react-refresh": "^0.4.3", + "happy-dom": "^14.12.3", + "pretty": "^2.0.0", + "typescript": "^5.0.2", + "vite": "^4.4.5", + "vitest": "^2.0.4" + } +} diff --git a/public/vite.svg b/public/vite.svg new file mode 100644 index 00000000..e7b8dfb1 --- /dev/null +++ b/public/vite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/App.css b/src/App.css new file mode 100644 index 00000000..37c327cb --- /dev/null +++ b/src/App.css @@ -0,0 +1,62 @@ +#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; +} + +.card-header { + background-color: lightgreen; +} + +.read-the-docs { + color: #888; +} + +.alert-warning { + background-color: yellow; +} + +.alert-danger { + background-color: red; +} + +.btn-primary { + border: 2px solid black; +} + +.advertisement { + background-color: lightblue; +} diff --git a/src/App.tsx b/src/App.tsx new file mode 100644 index 00000000..4d01c224 --- /dev/null +++ b/src/App.tsx @@ -0,0 +1,24 @@ +import './App.css' +import Calculator from './components/Calculator'; +import Advertisement from './components/Advertisement'; + +const companyName1: string = 'ABC Corporation'; +const productDescription1 = 'Great Product!'; +const price1 = '$19.99'; + +const companyName2: string = 'XYZ Corporation'; +const productDescription2 = 'Amazing Product!'; +const price2 = '$49.99'; + +function App() { + + return ( + <> + + + + + ) +} + +export default App; diff --git a/src/assets/react.svg b/src/assets/react.svg new file mode 100644 index 00000000..6c87de9b --- /dev/null +++ b/src/assets/react.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/components/Advertisement.tsx b/src/components/Advertisement.tsx new file mode 100644 index 00000000..2181f6aa --- /dev/null +++ b/src/components/Advertisement.tsx @@ -0,0 +1,17 @@ +interface AdvertisementProps { + companyName: string; + productDescription: string; + price: string; +}; + +function Advertisement(props: AdvertisementProps) { + return ( +
+

{props.companyName}

+

{props.productDescription}

+

{props.price}

+
+ ); +} + +export default Advertisement; diff --git a/src/components/Calculator.tsx b/src/components/Calculator.tsx new file mode 100644 index 00000000..bfac7800 --- /dev/null +++ b/src/components/Calculator.tsx @@ -0,0 +1,32 @@ +import { useState } from "react"; + +interface CalculatorState { + total: number; + previousTotal: number; +} + +export default function Calculator() { + const [calcState, setCalcState] = useState({ total: 0, previousTotal: 0 }); + const [value, setValue] = useState(0); + + const handleAddClick = () => { + setCalcState({ total: calcState.total + value, previousTotal: calcState.total}); + }; + + return ( +
+

+ { setValue(Number(event.target.value)); }} + value={value} + /> +

+ +

Total: {calcState.total}

+

Previous Total: {calcState.previousTotal}

+
+ ); +} diff --git a/src/index.css b/src/index.css new file mode 100644 index 00000000..2c3fac68 --- /dev/null +++ b/src/index.css @@ -0,0 +1,69 @@ +:root { + font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; + line-height: 1.5; + font-weight: 400; + + color-scheme: light dark; + color: rgba(255, 255, 255, 0.87); + background-color: #242424; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + -webkit-text-size-adjust: 100%; +} + +a { + font-weight: 500; + color: #646cff; + text-decoration: inherit; +} +a:hover { + color: #535bf2; +} + +body { + margin: 0; + display: flex; + place-items: center; + min-width: 320px; + min-height: 100vh; +} + +h1 { + font-size: 3.2em; + line-height: 1.1; +} + +button { + border-radius: 8px; + border: 1px solid transparent; + padding: 0.6em 1.2em; + font-size: 1em; + font-weight: 500; + font-family: inherit; + background-color: #1a1a1a; + cursor: pointer; + transition: border-color 0.25s; +} +button:hover { + border-color: #646cff; +} +button:focus, +button:focus-visible { + outline: 4px auto -webkit-focus-ring-color; +} + +@media (prefers-color-scheme: light) { + :root { + color: #213547; + background-color: #ffffff; + } + a:hover { + color: #747bff; + } + button { + background-color: #f9f9f9; + } +} diff --git a/src/main.tsx b/src/main.tsx new file mode 100644 index 00000000..3d7150da --- /dev/null +++ b/src/main.tsx @@ -0,0 +1,10 @@ +import React from 'react' +import ReactDOM from 'react-dom/client' +import App from './App.tsx' +import './index.css' + +ReactDOM.createRoot(document.getElementById('root')!).render( + + + , +) diff --git a/src/tests/Calculator.test.tsx b/src/tests/Calculator.test.tsx new file mode 100644 index 00000000..8f2a169b --- /dev/null +++ b/src/tests/Calculator.test.tsx @@ -0,0 +1,26 @@ +import pretty from 'pretty'; +import { render } from '@testing-library/react'; +import Calculator from '../components/Calculator'; + +describe('Calculator', () => { + it('should contain the expected text', () => { + render(); + + const itemElement = document.querySelector('h2'); + + if (itemElement) { + expect(itemElement.textContent).toBe('Simple Calculator'); + } + + }); + + it('should match snapshot', () => { + render(); + + const calculatorElement = document.querySelector('.calculator'); + + if (calculatorElement) { + expect(pretty(calculatorElement.innerHTML)).toMatchSnapshot(); + } + }); +}); diff --git a/src/tests/__snapshots__/Calculator.test.tsx.snap b/src/tests/__snapshots__/Calculator.test.tsx.snap new file mode 100644 index 00000000..42348f09 --- /dev/null +++ b/src/tests/__snapshots__/Calculator.test.tsx.snap @@ -0,0 +1,8 @@ +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html + +exports[`Calculator > should match snapshot 1`] = ` +"

Simple Calculator

+

+

Total: 0

+

Previous Total: 0

" +`; diff --git a/src/tests/setup.js b/src/tests/setup.js new file mode 100644 index 00000000..9bcdb461 --- /dev/null +++ b/src/tests/setup.js @@ -0,0 +1,7 @@ +import { afterEach } from 'vitest'; +import { cleanup } from '@testing-library/react'; + +// runs a cleanup after each test case (e.g. clearing jsdom) +afterEach(() => { + cleanup(); +}); diff --git a/src/vite-env.d.ts b/src/vite-env.d.ts new file mode 100644 index 00000000..11f02fe2 --- /dev/null +++ b/src/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 00000000..a7fc6fbf --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "target": "ES2020", + "useDefineForClassFields": true, + "lib": ["ES2020", "DOM", "DOM.Iterable"], + "module": "ESNext", + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "resolveJsonModule": true, + "isolatedModules": true, + "noEmit": true, + "jsx": "react-jsx", + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true + }, + "include": ["src"], + "references": [{ "path": "./tsconfig.node.json" }] +} diff --git a/tsconfig.node.json b/tsconfig.node.json new file mode 100644 index 00000000..42872c59 --- /dev/null +++ b/tsconfig.node.json @@ -0,0 +1,10 @@ +{ + "compilerOptions": { + "composite": true, + "skipLibCheck": true, + "module": "ESNext", + "moduleResolution": "bundler", + "allowSyntheticDefaultImports": true + }, + "include": ["vite.config.ts"] +} diff --git a/vite.config.ts b/vite.config.ts new file mode 100644 index 00000000..2afca2f9 --- /dev/null +++ b/vite.config.ts @@ -0,0 +1,16 @@ +import { defineConfig } from 'vitest/config'; +import react from '@vitejs/plugin-react'; + +// https://vitejs.dev/config/ +export default defineConfig({ + plugins: [react()], + server: { + port: 3000, + open: true, + }, + test: { + globals: true, + environment: 'happy-dom', + setupFiles: './src/tests/setup.js', + }, +});