-
+
-
+ Get started by editing
src/app/page.tsx. +
+ - Save and see your changes instantly. +
dAMQaiH zm^r3v#$Q#2T=X>bsY#D%s!bhs^M9PMAcHbCc0FMHV{u-dwlL;a1eJ63v5U*?Q_8JO zT#50!RD619#j_Uf))0ooADz~*9&lN!bBDRUgE>Vud-i5ck%vT=r^yD*^?Mp@Q^v+V zG#-?gKlr}Eeqifb{|So?HM&g91P8|av8hQoCmQXkd?7wIJw b z_^v8bbg` SAn{I*4bH$u(RZ6*x UhuA~hc=8czK8SHEKTzSxgbwi~9(OqJB&gwb^l4+m`k*Q;_?>Y-APi1{k zAHQ)P)G)f|AyjSgcCFps)Fh6Bca*Xznq36!pV6Az&m{O8$wGFD? zY&O*3*J0;_EqM#jh6^gMQKpXV?#1?>$ml1xvh8nSN>-?H=V;nJIwB07YX$e6vLxH( zqYwQ>qxwR(i4f)DLd)-$P>T-no_c!LsN@)8`e;W@)-Hj0>nJ-}Kla4-ZdPJzI&Mce zv)V_j;(3ERN3_@I$N<^|4Lf`B;8n+bX@bHbcZTopEmDI*Jfl)-pFDvo6svPRoo@(x z);_{lY<;);XzT`dBFpRmGrr}z5u1=p C^ S-{ce6iXQlLGcItwJ^mZx{m$&DA_oEZ)B{_bYPq-HA zcH8WGoBG(aBU_j)vEy+_71T34@4dmSg!|M8Vf92Zj6WH7Q7t#OHQqWgFE3ARt+%!T z?oLovLVlnf?2c7pTc)~cc^($_8nyKwsN`RA-23ed3sdj(ys%pjjM+9JrctL;dy8a( z@en&CQmnV(()bu|Y%G1-4a(6x{aLytn$T-;(&{QIJB9vMox11U-1HpD@d(QkaJdEb zG{)+6Dos_L+O3NpWo^=gR?evp|CqEG?L&Ut#D*KLaRFOgOEK(Kq1@!EGcTfo+%A&I z=dLbB+d$u{sh?u)xP{PF8L%;YPPW53+@{>5W=Jt#wQpN;0_HYdw1{ksf_XhO4#2F= zyPx6Lx2<92L-;L5PD`zn6zwIH`Jk( $?Qw({erA$^bC;q33hv!d!>%wRhj# zal^hk+WGNg;rJtb-EB(?czvOM=H7dl=vblBwAv>}%1@{}mnpUznfq1cE^sgsL0*4I zJ##!*B?=vI_OEVis5o+_IwMIRrpQyT_Sq~ZU%oY7c5JMIADzpD!Upz9h@iWg_>>~j zOLS;wp^i$-E?4<_cp?RiS%Rd?i;f*mOz=~(&3lo<=@(nR!_Rqiprh@weZlL!t#NCc zO!QTcInq|%#>OVgobj{~ixEUec`E25zJ~*DofsQdzIa@5^nOXj2T;8O`l--(QyU ^$t?TGY^7#&FQ+2SS3B#qK*k3`ye?8jUYSajE5iBbJls75CCc(m3dk{t?- zopcER9{Z?TC)mk~gpi^kbbu>b-+a{m#8-y2^p$ka4n60w;Sc2}HMf<8JUvh CL0B&Btk)T`ctE$*qNW8L$`7!r^9T+>=<=2qaq-;ll2{`{Rg zc5a0ZUI$oG&j-qVOuKa=*v4aY#IsoM+1|c4Z)<}lEDvy;5huB@1RJPquU2U*U-;gu z=En2m+qjBzR#DEJDO`WU)hdd{Vj%^0V*KoyZ|5lzV87&g_j~NCjwv0uQVqXOb*QrQ zy|Qn`hxx(58c 70$E;L(X0uZZ72M1!6oeg)(cdKO ze0gDaTz+ohR-#d)NbAH4x{I(21yjwvBQfmpLu$)|m{XolbgF!pmsqJ#D}(ylp6uC> z{bqtcI#hT#HW=wl7>p!38sKsJ`r8}lt-q%Keqy%u(xk=yiIJiUw6|5IvkS+#?JTBl z8H5(Q?l#wzazujH!8o>1xtn8#_w+397* _cy8!pQGP%K(Ga3pAjsaTbbXJlQF_+m+-UpUUent@xM zg%jqLUExj~o^vQ3Gl*>wh=_gOr2*|U64_iXb+-111a H}$TjeajM+I20xw(((>fej-@CIz4S1pi$(#}P7`4({6QS2CaQS4NPENDp>sAqD z$bH4KGzXGffkJ7R>V>)>tC)uax{UsN*dbeNC*v}#8Y#OWYwL4t$ePR?VTyIs!wea+ z5Urmc)X|^`MG~*dS6pGSbU+gPJoq*^a=_>$n4|P^w$sMBBy@f*Z^Jg6?n5?oId6f{ z$LW4M|4m502z0t7g<#Bx%X;9<=)smFolV&(V^(7Cv2-sxbxopQ!)*#ZRhTBpx1)Fc zNm1T%bONzv6@#|dz(w02AH8OXe>kQ#1FMCzO}2J_mST)+ExmBr9cva-@?;wnmWMOk z{3_~EX_xadgJGv&H@zK_8{(x84`}+c?oSBX*Ge3VdfTt&F}yCpFP?CpW+BE^cWY0^ zb&uBN!Ja3UzYHK-CTyA5=L zEMW{l3Usky#ly=7px648W31UNV@K)&Ub&zP1c7%)`{);I4b0Q<)B}3;NMG2JH=X$U zfIW4)4n9ZM`-yRj67I)YSLDK)qfUJ_ij}a#aZN~9EXrh8eZY2&=uY%2N0UFF7<~%M zsB8=erOWZ>Ct_#^tHZ|*q`H;A)5;ycw*I cmVxi8_0Xk}aJA^ath+E;xg!x+As(M#0=)3!NJR6H&9+zd#iP(m0PIW8$ z1Y^VX`>jm`W!=WpF*{ioM?C9`yOR>@0q=u7o>BP-eSHqCgMDj!2anwH?s%i2p+Q7D zzszIf5XJpE)IG4;d_(La-xenmF(tgAxK`Y4sQ}BSJEPs6N_U2vI{8=0C_F?@7<(G; zo$~G=8p+076G;`}>{MQ>t>7cm=zGtfbdDXm6||jUU|?X?CaE?(<6bKDYKeHlz}DA8 zXT={X=yp_R;HfJ9h%?eWvQ!dRgz&Su*JfNt!Wu>|XfU &68iRikRrHRW|ZxzRR^`eIGt zIeiDgVS>IeExKVRWW8-= A= yA`}`)ZkWBrZD`hpWIxBGkh&f#ijr449~m`j6{4jiJ*C!oVA8ZC?$1RM#K(_b zL9TW)kN*Y4%^-qPpMP7d4)o?Nk#>aoYHT(*g)qmRUb?**F@pnNiy6Fv9rEiUqD(^O zzyS?nBrX63BTRYduaG(0VVG2yJRe%o&rVrLjbxTaAFTd8s;<<@Qs>u(<193R8>}2_ zuwp{7;H2a*X7_jryzriZXMg?bTuegABb^87@SsKkr2)0Gyiax8KQWstw^v #ix45EVrcEhr>!NMhprl $InQMzjSFH54x5k9qHc`@9uKQzvL4ihcq{^B zPrVR=o_ic%Y>6&rMN)hTZsI7I<3&`#(nl+3y3ys9A~ &^=4?PL&nd8)`OfG#n zwAMN$1&>K++c{^|7< 4P=2y(B{jJsQ0a#U;HTo4ZmWZYvI{+s;Td{Yzem%0*k#)vjpB zia;J&>}ICate44SFYY3vEelqStQWFihx%^vQ@Do(sOy7yR2@WNv7Y9I^yL=nZr3mb zXKV5t@=?-Sk|b{XMhA7ZGB@2hqsx}4xwCW!in#C zI@}sc Zlr3-NFJ@NFaJlhyfcw{k^vvtGl`N9xSo**rDW4S}i zM9{fMPWo%4wYDG~BZ18BD+}h|GQKc-g^{++3MY>}W_uq7jGHx{mwE9fZiPCoxN$+7 zrODGGJrOkcPQUB(FD5aoS4g~7#6NR^ma7-!>mHuJfY5kTe6PpNNKC9GGRiu^L31uG z$7v`*JknQHsYB!Tm_W{a32TM099djW%5e+j0Ve_ct}IM>XLF1Ap+YvcrLV=|CKo6S zb+ 9Nl3_YdKP6%Cxy@6TxZ>;4&nTneadr z_ES90ydCev)LV!dN=#(*f}|ZORFdvkYBni^aLbUk>BajeWIOcmHP#8S)*2U~QKI%S zyrLmtPqb&TphJ;>yAxri#;{uyk`JJqODDw%(Z=2 `1uc}br^V%>j!gS)D*q*f_-qf8&D;W1dJgQMlaH5er zN2U<%Smb7==vE}dDI8K7cKz!vs^73o9f>2sgiTzWcwY|BMYHH5%Vn7#kiw&eItCqa zIkR2~Q}>X=Ar8W|^Ms41Fm8o6IB2_j60eOeBB1Br!boW7JnoeX6Gs)?7rW0^5psc- zjS16yb>dFn>KPOF;imD}e!enuIniFzv}n$m2#gCCv4jM#ArwlzZ$7@9&XkFxZ4n!V zj3dyiwW4Ki2QG{@i>yuZXQizw_OkZI^-3otXC{!(lUpJF33gI60ak;Uqitp74|B6I zgg{b=Iz}WkhCGj1M =hu4#Aw173YxIVbISaoc z-nLZC*6Tgivd5V`K%GxhBsp@SUU60-rfc$=wb>zdJzXS&-5(NRRodFk;Kxk!S( O(a0e7oY=E( zAyS;Ow?6Q&XA+cnkCb{28_1N8H#?J!*$MmIwLq^*T_9-z^&UE@A(z9oGYtFy6EZef LrJugUA?W`A8`#=m literal 0 HcmV?d00001 diff --git a/front-js/src/app/globals.css b/front-js/src/app/globals.css new file mode 100644 index 0000000..e3734be --- /dev/null +++ b/front-js/src/app/globals.css @@ -0,0 +1,42 @@ +:root { + --background: #ffffff; + --foreground: #171717; +} + +@media (prefers-color-scheme: dark) { + :root { + --background: #0a0a0a; + --foreground: #ededed; + } +} + +html, +body { + max-width: 100vw; + overflow-x: hidden; +} + +body { + color: var(--foreground); + background: var(--background); + font-family: Arial, Helvetica, sans-serif; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +* { + box-sizing: border-box; + padding: 0; + margin: 0; +} + +a { + color: inherit; + text-decoration: none; +} + +@media (prefers-color-scheme: dark) { + html { + color-scheme: dark; + } +} diff --git a/front-js/src/app/layout.tsx b/front-js/src/app/layout.tsx new file mode 100644 index 0000000..42fc323 --- /dev/null +++ b/front-js/src/app/layout.tsx @@ -0,0 +1,32 @@ +import type { Metadata } from "next"; +import { Geist, Geist_Mono } from "next/font/google"; +import "./globals.css"; + +const geistSans = Geist({ + variable: "--font-geist-sans", + subsets: ["latin"], +}); + +const geistMono = Geist_Mono({ + variable: "--font-geist-mono", + subsets: ["latin"], +}); + +export const metadata: Metadata = { + title: "Create Next App", + description: "Generated by create next app", +}; + +export default function RootLayout({ + children, +}: Readonly<{ + children: React.ReactNode; +}>) { + return ( + + + {children} + + + ); +} diff --git a/front-js/src/app/page.module.css b/front-js/src/app/page.module.css new file mode 100644 index 0000000..ee9b8e6 --- /dev/null +++ b/front-js/src/app/page.module.css @@ -0,0 +1,168 @@ +.page { + --gray-rgb: 0, 0, 0; + --gray-alpha-200: rgba(var(--gray-rgb), 0.08); + --gray-alpha-100: rgba(var(--gray-rgb), 0.05); + + --button-primary-hover: #383838; + --button-secondary-hover: #f2f2f2; + + display: grid; + grid-template-rows: 20px 1fr 20px; + align-items: center; + justify-items: center; + min-height: 100svh; + padding: 80px; + gap: 64px; + font-family: var(--font-geist-sans); +} + +@media (prefers-color-scheme: dark) { + .page { + --gray-rgb: 255, 255, 255; + --gray-alpha-200: rgba(var(--gray-rgb), 0.145); + --gray-alpha-100: rgba(var(--gray-rgb), 0.06); + + --button-primary-hover: #ccc; + --button-secondary-hover: #1a1a1a; + } +} + +.main { + display: flex; + flex-direction: column; + gap: 32px; + grid-row-start: 2; +} + +.main ol { + font-family: var(--font-geist-mono); + padding-left: 0; + margin: 0; + font-size: 14px; + line-height: 24px; + letter-spacing: -0.01em; + list-style-position: inside; +} + +.main li:not(:last-of-type) { + margin-bottom: 8px; +} + +.main code { + font-family: inherit; + background: var(--gray-alpha-100); + padding: 2px 4px; + border-radius: 4px; + font-weight: 600; +} + +.ctas { + display: flex; + gap: 16px; +} + +.ctas a { + appearance: none; + border-radius: 128px; + height: 48px; + padding: 0 20px; + border: none; + border: 1px solid transparent; + transition: + background 0.2s, + color 0.2s, + border-color 0.2s; + cursor: pointer; + display: flex; + align-items: center; + justify-content: center; + font-size: 16px; + line-height: 20px; + font-weight: 500; +} + +a.primary { + background: var(--foreground); + color: var(--background); + gap: 8px; +} + +a.secondary { + border-color: var(--gray-alpha-200); + min-width: 180px; +} + +.footer { + grid-row-start: 3; + display: flex; + gap: 24px; +} + +.footer a { + display: flex; + align-items: center; + gap: 8px; +} + +.footer img { + flex-shrink: 0; +} + +/* Enable hover only on non-touch devices */ +@media (hover: hover) and (pointer: fine) { + a.primary:hover { + background: var(--button-primary-hover); + border-color: transparent; + } + + a.secondary:hover { + background: var(--button-secondary-hover); + border-color: transparent; + } + + .footer a:hover { + text-decoration: underline; + text-underline-offset: 4px; + } +} + +@media (max-width: 600px) { + .page { + padding: 32px; + padding-bottom: 80px; + } + + .main { + align-items: center; + } + + .main ol { + text-align: center; + } + + .ctas { + flex-direction: column; + } + + .ctas a { + font-size: 14px; + height: 40px; + padding: 0 16px; + } + + a.secondary { + min-width: auto; + } + + .footer { + flex-wrap: wrap; + align-items: center; + justify-content: center; + } +} + +@media (prefers-color-scheme: dark) { + .logo { + filter: invert(); + } +} diff --git a/front-js/src/app/page.tsx b/front-js/src/app/page.tsx new file mode 100644 index 0000000..a849ae6 --- /dev/null +++ b/front-js/src/app/page.tsx @@ -0,0 +1,99 @@ +import Image from "next/image"; +import styles from "./page.module.css"; +import Button from "@/components/Button"; + +export default function Home() { + return ( + ++ ); +} diff --git a/front-js/src/components/Button/Button.scss b/front-js/src/components/Button/Button.scss new file mode 100644 index 0000000..25a624b --- /dev/null +++ b/front-js/src/components/Button/Button.scss @@ -0,0 +1,17 @@ +.button { + border-radius: 39.5px; + background: var(--Noir, #181b1f); + width: 155px; + height: 64px; + flex-shrink: 0; + border: none; + .text { + text-align: justify; + font-family: Tahoma; + font-size: 20px; + font-style: normal; + font-weight: 400; + line-height: normal; + color: var(--Blanc, #f4f9fb); + } +} diff --git a/front-js/src/components/Button/Button.tsx b/front-js/src/components/Button/Button.tsx new file mode 100644 index 0000000..99bd4a4 --- /dev/null +++ b/front-js/src/components/Button/Button.tsx @@ -0,0 +1,22 @@ +/* + Button component +*/ + +import React from 'react'; +import './Button.scss'; + +interface ButtonProps { + text: string; + onClick?: () => void; +} + +const Button: React.FC+ + + + + ++ +
+ + +- + Get started by editing
+src/app/page.tsx. +- Save and see your changes instantly.
+= ({ text, onClick }) => { + return ( + + ); +}; + +export default Button; \ No newline at end of file diff --git a/front-js/src/components/Button/index.ts b/front-js/src/components/Button/index.ts new file mode 100644 index 0000000..910475f --- /dev/null +++ b/front-js/src/components/Button/index.ts @@ -0,0 +1 @@ +export { default } from './Button'; \ No newline at end of file diff --git a/front-js/tsconfig.json b/front-js/tsconfig.json new file mode 100644 index 0000000..c133409 --- /dev/null +++ b/front-js/tsconfig.json @@ -0,0 +1,27 @@ +{ + "compilerOptions": { + "target": "ES2017", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "incremental": true, + "plugins": [ + { + "name": "next" + } + ], + "paths": { + "@/*": ["./src/*"] + } + }, + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], + "exclude": ["node_modules"] +} From b5553624dd262bf52f259eba13b7ddb128aa3159 Mon Sep 17 00:00:00 2001 From: Chak <444chak@gmail.com> Date: Tue, 17 Dec 2024 11:45:22 +0100 Subject: [PATCH 2/8] =?UTF-8?q?=E2=9C=A8feature:=20Ajout=20de=20nouveaux?= =?UTF-8?q?=20composants=20(Box,=20Space,=20Title,=20Layout)=20et=20mise?= =?UTF-8?q?=20=C3=A0=20jour=20des=20styles=20associ=C3=A9s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- front-js/package-lock.json | 1135 +++++++++++++++++++- front-js/package.json | 1 + front-js/public/homeillustration.svg | 11 + front-js/public/logo.png | Bin 0 -> 511547 bytes front-js/src/app/auth/login/page.tsx | 14 + front-js/src/app/globals.css | 10 +- front-js/src/app/page.tsx | 124 +-- front-js/src/components/Box/Box.scss | 19 + front-js/src/components/Box/Box.tsx | 30 + front-js/src/components/Box/index.ts | 1 + front-js/src/components/Button/Button.scss | 7 +- front-js/src/components/Button/Button.tsx | 21 +- front-js/src/components/Layout/Layout.scss | 14 + front-js/src/components/Layout/Layout.tsx | 24 + front-js/src/components/Layout/index.ts | 1 + front-js/src/components/Space/Space.scss | 16 + front-js/src/components/Space/Space.tsx | 32 + front-js/src/components/Space/index.ts | 1 + front-js/src/components/Title/Title.scss | 35 + front-js/src/components/Title/Title.tsx | 39 + front-js/src/components/Title/index.ts | 1 + 21 files changed, 1388 insertions(+), 148 deletions(-) create mode 100644 front-js/public/homeillustration.svg create mode 100644 front-js/public/logo.png create mode 100644 front-js/src/app/auth/login/page.tsx create mode 100644 front-js/src/components/Box/Box.scss create mode 100644 front-js/src/components/Box/Box.tsx create mode 100644 front-js/src/components/Box/index.ts create mode 100644 front-js/src/components/Layout/Layout.scss create mode 100644 front-js/src/components/Layout/Layout.tsx create mode 100644 front-js/src/components/Layout/index.ts create mode 100644 front-js/src/components/Space/Space.scss create mode 100644 front-js/src/components/Space/Space.tsx create mode 100644 front-js/src/components/Space/index.ts create mode 100644 front-js/src/components/Title/Title.scss create mode 100644 front-js/src/components/Title/Title.tsx create mode 100644 front-js/src/components/Title/index.ts diff --git a/front-js/package-lock.json b/front-js/package-lock.json index 19bce27..33bcd01 100644 --- a/front-js/package-lock.json +++ b/front-js/package-lock.json @@ -8,6 +8,7 @@ "name": "front-js", "version": "0.1.0", "dependencies": { + "@nextui-org/spacer": "^2.2.4", "next": "15.1.0", "react": "^19.0.0", "react-dom": "^19.0.0", @@ -23,6 +24,18 @@ "typescript": "^5" } }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/@emnapi/runtime": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.3.1.tgz", @@ -553,6 +566,71 @@ "url": "https://opencollective.com/libvips" } }, + "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==", + "peer": true, + "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/@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==", + "peer": true, + "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==", + "peer": true, + "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==", + "peer": true, + "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==", + "peer": true + }, + "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==", + "peer": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, "node_modules/@next/env": { "version": "15.1.0", "resolved": "https://registry.npmjs.org/@next/env/-/env-15.1.0.tgz", @@ -687,11 +765,82 @@ "node": ">= 10" } }, + "node_modules/@nextui-org/react-rsc-utils": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@nextui-org/react-rsc-utils/-/react-rsc-utils-2.1.1.tgz", + "integrity": "sha512-9uKH1XkeomTGaswqlGKt0V0ooUev8mPXtKJolR+6MnpvBUrkqngw1gUGF0bq/EcCCkks2+VOHXZqFT6x9hGkQQ==", + "peerDependencies": { + "react": ">=18 || >=19.0.0-rc.0" + } + }, + "node_modules/@nextui-org/react-utils": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@nextui-org/react-utils/-/react-utils-2.1.1.tgz", + "integrity": "sha512-cN3Z0b2bV6Nf0CYD4imsGdXbHMQqad8KivltpBv1ItbI1/FSTAv9AHTKSzDE15hd/UwOGYt3Qm7I6tWzqov55w==", + "dependencies": { + "@nextui-org/react-rsc-utils": "2.1.1", + "@nextui-org/shared-utils": "2.1.1" + }, + "peerDependencies": { + "react": ">=18 || >=19.0.0-rc.0" + } + }, + "node_modules/@nextui-org/shared-utils": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@nextui-org/shared-utils/-/shared-utils-2.1.1.tgz", + "integrity": "sha512-qE8gZO63GqUX1ljOi/4PlwGzE84dhUS3zFIq+10/N6ePAaNjM4DwtL4ocucG3abCz4iRUueYKLIxTO2+eYyAfw==" + }, + "node_modules/@nextui-org/spacer": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/@nextui-org/spacer/-/spacer-2.2.4.tgz", + "integrity": "sha512-RMkC2O3I+W6qwsax5Dge8CzF2tJIDxOiC84yiQxfwRHWVe1qPXbLRu1nM5lbvjAI/4aS9NegUQ3aYnFqZwvojQ==", + "dependencies": { + "@nextui-org/react-utils": "2.1.1", + "@nextui-org/shared-utils": "2.1.1", + "@nextui-org/system-rsc": "2.3.4" + }, + "peerDependencies": { + "@nextui-org/theme": ">=2.4.0", + "react": ">=18 || >=19.0.0-rc.0", + "react-dom": ">=18 || >=19.0.0-rc.0" + } + }, + "node_modules/@nextui-org/system-rsc": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@nextui-org/system-rsc/-/system-rsc-2.3.4.tgz", + "integrity": "sha512-Y6OLFO7diYnUMe5ffDPt6sIqCaah7FOqRaJ3ZQ/We8gE8AgHnyNQxWllLtRzBqaCiIheHLo7dTMed1FFmb775A==", + "dependencies": { + "@react-types/shared": "3.26.0", + "clsx": "^1.2.1" + }, + "peerDependencies": { + "@nextui-org/theme": ">=2.4.0", + "react": ">=18 || >=19.0.0-rc.0" + } + }, + "node_modules/@nextui-org/theme": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/@nextui-org/theme/-/theme-2.4.3.tgz", + "integrity": "sha512-QH9ps5NpenWU966INdGbdvZOWWUEGqxrLM2vyqkSRq+A65YON4Jhg/x1xWcSX0SJECNhoNZLh5mt6jp3jH5k8Q==", + "peer": true, + "dependencies": { + "@nextui-org/shared-utils": "2.1.1", + "clsx": "^1.2.1", + "color": "^4.2.3", + "color2k": "^2.0.2", + "deepmerge": "4.3.1", + "flat": "^5.0.2", + "tailwind-merge": "^2.5.2", + "tailwind-variants": "^0.1.20" + }, + "peerDependencies": { + "tailwindcss": ">=3.4.0" + } + }, "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, "dependencies": { "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" @@ -704,7 +853,6 @@ "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, "engines": { "node": ">= 8" } @@ -713,7 +861,6 @@ "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, "dependencies": { "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" @@ -1025,6 +1172,24 @@ "node": ">=0.10" } }, + "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==", + "optional": true, + "peer": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@react-types/shared": { + "version": "3.26.0", + "resolved": "https://registry.npmjs.org/@react-types/shared/-/shared-3.26.0.tgz", + "integrity": "sha512-6FuPqvhmjjlpEDLTiYx29IJCbCNWPlsyO+ZUmCUXzhUv2ttShOXfw8CmeHWHftT/b2KweAWuzqSlfeXPR76jpw==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1" + } + }, "node_modules/@rtsao/scc": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", @@ -1356,11 +1521,22 @@ "url": "https://github.com/sponsors/epoberezkin" } }, + "node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, "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, "dependencies": { "color-convert": "^2.0.1" }, @@ -1371,6 +1547,31 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "peer": true + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "peer": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "peer": true + }, "node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -1577,8 +1778,19 @@ "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 + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/brace-expansion": { "version": "1.1.11", @@ -1594,7 +1806,6 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "devOptional": true, "dependencies": { "fill-range": "^7.1.1" }, @@ -1669,6 +1880,15 @@ "node": ">=6" } }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "peer": true, + "engines": { + "node": ">= 6" + } + }, "node_modules/caniuse-lite": { "version": "1.0.30001689", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001689.tgz", @@ -1723,11 +1943,18 @@ "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" }, + "node_modules/clsx": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", + "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", + "engines": { + "node": ">=6" + } + }, "node_modules/color": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", - "optional": true, "dependencies": { "color-convert": "^2.0.1", "color-string": "^1.9.0" @@ -1740,7 +1967,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "devOptional": true, "dependencies": { "color-name": "~1.1.4" }, @@ -1751,19 +1977,32 @@ "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==", - "devOptional": true + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "node_modules/color-string": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "optional": true, "dependencies": { "color-name": "^1.0.0", "simple-swizzle": "^0.2.2" } }, + "node_modules/color2k": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/color2k/-/color2k-2.0.3.tgz", + "integrity": "sha512-zW190nQTIoXcGCaU08DvVNFTmQhUpnJfVuAKfWqUQkflXKpaDdpaYoM0iluLS9lgJNHyBF58KKA2FBEwkD7wog==", + "peer": true + }, + "node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "peer": true, + "engines": { + "node": ">= 6" + } + }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -1774,7 +2013,6 @@ "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - "dev": true, "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -1784,6 +2022,18 @@ "node": ">= 8" } }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "peer": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/csstype": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", @@ -1870,6 +2120,15 @@ "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/define-data-property": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", @@ -1913,6 +2172,18 @@ "node": ">=8" } }, + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "peer": true + }, + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "peer": true + }, "node_modules/doctrine": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", @@ -1939,11 +2210,16 @@ "node": ">= 0.4" } }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "peer": true + }, "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 + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" }, "node_modules/enhanced-resolve": { "version": "5.17.1", @@ -2610,7 +2886,6 @@ "version": "1.17.1", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", - "dev": true, "dependencies": { "reusify": "^1.0.4" } @@ -2631,7 +2906,6 @@ "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "devOptional": true, "dependencies": { "to-regex-range": "^5.0.1" }, @@ -2655,6 +2929,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "peer": true, + "bin": { + "flat": "cli.js" + } + }, "node_modules/flat-cache": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", @@ -2683,11 +2966,40 @@ "is-callable": "^1.1.3" } }, + "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==", + "peer": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, "node_modules/function-bind": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -2773,11 +3085,30 @@ "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" } }, + "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==", + "peer": true, + "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, "dependencies": { "is-glob": "^4.0.3" }, @@ -2785,6 +3116,30 @@ "node": ">=10.13.0" } }, + "node_modules/glob/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==", + "peer": true, + "dependencies": { + "balanced-match": "^1.0.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==", + "peer": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/globals": { "version": "14.0.0", "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", @@ -2913,7 +3268,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "dev": true, "dependencies": { "function-bind": "^1.1.2" }, @@ -2993,8 +3347,7 @@ "node_modules/is-arrayish": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", - "optional": true + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" }, "node_modules/is-async-function": { "version": "2.0.0", @@ -3026,6 +3379,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "peer": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/is-boolean-object": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.1.tgz", @@ -3067,7 +3432,6 @@ "version": "2.16.0", "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.0.tgz", "integrity": "sha512-urTSINYfAYgcbLb0yDQ6egFm6h3Mo1DcF9EkyXSRjjzdHbsulg01qhwWuXdOoUBuTkbQ80KDboXa0vFJ+BDH+g==", - "dev": true, "dependencies": { "hasown": "^2.0.2" }, @@ -3115,7 +3479,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "devOptional": true, "engines": { "node": ">=0.10.0" } @@ -3135,6 +3498,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "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==", + "peer": true, + "engines": { + "node": ">=8" + } + }, "node_modules/is-generator-function": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", @@ -3154,7 +3526,6 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "devOptional": true, "dependencies": { "is-extglob": "^2.1.1" }, @@ -3190,7 +3561,6 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "devOptional": true, "engines": { "node": ">=0.12.0" } @@ -3356,8 +3726,7 @@ "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" }, "node_modules/iterator.prototype": { "version": "1.1.4", @@ -3376,6 +3745,30 @@ "node": ">= 0.4" } }, + "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==", + "peer": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jiti": { + "version": "1.21.6", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz", + "integrity": "sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==", + "peer": true, + "bin": { + "jiti": "bin/jiti.js" + } + }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -3479,6 +3872,24 @@ "node": ">= 0.8.0" } }, + "node_modules/lilconfig": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", + "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", + "peer": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "peer": true + }, "node_modules/locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -3512,6 +3923,12 @@ "loose-envify": "cli.js" } }, + "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==", + "peer": true + }, "node_modules/math-intrinsics": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.0.0.tgz", @@ -3525,7 +3942,6 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, "engines": { "node": ">= 8" } @@ -3534,7 +3950,6 @@ "version": "4.0.8", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "devOptional": true, "dependencies": { "braces": "^3.0.3", "picomatch": "^2.3.1" @@ -3564,12 +3979,32 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "peer": true, + "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 }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "peer": true, + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, "node_modules/nanoid": { "version": "3.3.8", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", @@ -3652,15 +4087,32 @@ "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", "optional": true }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true, "engines": { "node": ">=0.10.0" } }, + "node_modules/object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "peer": true, + "engines": { + "node": ">= 6" + } + }, "node_modules/object-inspect": { "version": "1.13.3", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.3.tgz", @@ -3810,6 +4262,12 @@ "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==", + "peer": true + }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -3835,7 +4293,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, "engines": { "node": ">=8" } @@ -3843,8 +4300,23 @@ "node_modules/path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "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==", + "peer": true, + "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/picocolors": { "version": "1.1.1", @@ -3855,7 +4327,6 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "devOptional": true, "engines": { "node": ">=8.6" }, @@ -3863,7 +4334,25 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/possible-typed-array-names": { + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "peer": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/possible-typed-array-names": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", @@ -3899,6 +4388,121 @@ "node": "^10 || ^12 || >=14" } }, + "node_modules/postcss-import": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-js": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", + "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", + "peer": true, + "dependencies": { + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, + "node_modules/postcss-load-config": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", + "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true, + "dependencies": { + "lilconfig": "^3.0.0", + "yaml": "^2.3.4" + }, + "engines": { + "node": ">= 14" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/postcss-nested": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", + "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true, + "dependencies": { + "postcss-selector-parser": "^6.1.1" + }, + "engines": { + "node": ">=12.0" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "peer": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "peer": true + }, "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -3932,7 +4536,6 @@ "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", @@ -3973,6 +4576,15 @@ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", "dev": true }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "peer": true, + "dependencies": { + "pify": "^2.3.0" + } + }, "node_modules/readdirp": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", @@ -4029,7 +4641,6 @@ "version": "1.22.9", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.9.tgz", "integrity": "sha512-QxrmX1DzraFIi9PxdG5VkRfRwIgjwyud+z/iBwfRRrVmHc+P9Q7u2lSSpQ6bjr2gy5lrqIiU9vb6iAeGf2400A==", - "dev": true, "dependencies": { "is-core-module": "^2.16.0", "path-parse": "^1.0.7", @@ -4064,7 +4675,6 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, "engines": { "iojs": ">=1.0.0", "node": ">=0.10.0" @@ -4074,7 +4684,6 @@ "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", @@ -4240,7 +4849,6 @@ "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, "dependencies": { "shebang-regex": "^3.0.0" }, @@ -4252,7 +4860,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, "engines": { "node": ">=8" } @@ -4329,11 +4936,22 @@ "url": "https://github.com/sponsors/ljharb" } }, + "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==", + "peer": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/simple-swizzle": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "optional": true, "dependencies": { "is-arrayish": "^0.3.1" } @@ -4360,6 +4978,65 @@ "node": ">=10.0.0" } }, + "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==", + "peer": true, + "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==", + "peer": true, + "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/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "peer": true, + "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==", + "peer": true + }, + "node_modules/string-width-cjs/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==", + "peer": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/string.prototype.includes": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz", @@ -4466,6 +5143,43 @@ "url": "https://github.com/sponsors/ljharb" } }, + "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==", + "peer": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "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==", + "peer": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs/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==", + "peer": true, + "engines": { + "node": ">=8" + } + }, "node_modules/strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", @@ -4509,6 +5223,28 @@ } } }, + "node_modules/sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", + "peer": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -4525,7 +5261,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, "engines": { "node": ">= 0.4" }, @@ -4533,6 +5268,183 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/tailwind-merge": { + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-2.5.5.tgz", + "integrity": "sha512-0LXunzzAZzo0tEPxV3I297ffKZPlKDrjj7NXphC8V5ak9yHC5zRmxnOe2m/Rd/7ivsOMJe3JZ2JVocoDdQTRBA==", + "peer": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/dcastil" + } + }, + "node_modules/tailwind-variants": { + "version": "0.1.20", + "resolved": "https://registry.npmjs.org/tailwind-variants/-/tailwind-variants-0.1.20.tgz", + "integrity": "sha512-AMh7x313t/V+eTySKB0Dal08RHY7ggYK0MSn/ad8wKWOrDUIzyiWNayRUm2PIJ4VRkvRnfNuyRuKbLV3EN+ewQ==", + "peer": true, + "dependencies": { + "tailwind-merge": "^1.14.0" + }, + "engines": { + "node": ">=16.x", + "pnpm": ">=7.x" + }, + "peerDependencies": { + "tailwindcss": "*" + } + }, + "node_modules/tailwind-variants/node_modules/tailwind-merge": { + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-1.14.0.tgz", + "integrity": "sha512-3mFKyCo/MBcgyOTlrY8T7odzZFx+w+qKSMAmdFzRvqBfLlSigU6TZnlFHK0lkMwj9Bj8OYU+9yW9lmGuS0QEnQ==", + "peer": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/dcastil" + } + }, + "node_modules/tailwindcss": { + "version": "3.4.16", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.16.tgz", + "integrity": "sha512-TI4Cyx7gDiZ6r44ewaJmt0o6BrMCT5aK5e0rmJ/G9Xq3w7CX/5VXl/zIPEJZFUK5VEqwByyhqNPycPlvcK4ZNw==", + "peer": true, + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "arg": "^5.0.2", + "chokidar": "^3.6.0", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.3.2", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "jiti": "^1.21.6", + "lilconfig": "^3.1.3", + "micromatch": "^4.0.8", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.1.1", + "postcss": "^8.4.47", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.2", + "postcss-nested": "^6.2.0", + "postcss-selector-parser": "^6.1.2", + "resolve": "^1.22.8", + "sucrase": "^3.35.0" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tailwindcss/node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "peer": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/tailwindcss/node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "peer": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/tailwindcss/node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "peer": true, + "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.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/tailwindcss/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==", + "peer": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/tailwindcss/node_modules/postcss": { + "version": "8.4.49", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz", + "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==", + "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" + } + ], + "peer": true, + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/tailwindcss/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "peer": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, "node_modules/tapable": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", @@ -4542,11 +5454,31 @@ "node": ">=6" } }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "peer": true, + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "peer": true, + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, "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==", - "devOptional": true, "dependencies": { "is-number": "^7.0.0" }, @@ -4566,6 +5498,12 @@ "typescript": ">=4.2.0" } }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "peer": true + }, "node_modules/tsconfig-paths": { "version": "3.15.0", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", @@ -4715,11 +5653,16 @@ "punycode": "^2.1.0" } }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "peer": true + }, "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, "dependencies": { "isexe": "^2.0.0" }, @@ -4822,6 +5765,106 @@ "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==", + "peer": true, + "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==", + "peer": true, + "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/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "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==", + "peer": true + }, + "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==", + "peer": true, + "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-cjs/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==", + "peer": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "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==", + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/yaml": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.6.1.tgz", + "integrity": "sha512-7r0XPzioN/Q9kXBro/XPnA6kznR73DHq+GXh5ON7ZozRO6aMjbmiBuKste2wslTFkC5d1dw0GooOCepZXJ2SAg==", + "peer": true, + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/front-js/package.json b/front-js/package.json index 7d32a09..2128aba 100644 --- a/front-js/package.json +++ b/front-js/package.json @@ -9,6 +9,7 @@ "lint": "next lint" }, "dependencies": { + "@nextui-org/spacer": "^2.2.4", "next": "15.1.0", "react": "^19.0.0", "react-dom": "^19.0.0", diff --git a/front-js/public/homeillustration.svg b/front-js/public/homeillustration.svg new file mode 100644 index 0000000..c011862 --- /dev/null +++ b/front-js/public/homeillustration.svg @@ -0,0 +1,11 @@ + \ No newline at end of file diff --git a/front-js/public/logo.png b/front-js/public/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..2d29268c82381240d8916b4cc6e1664fd1fbd97a GIT binary patch literal 511547 zcmZ_02UL?=*DV~%Ifx}FD5x}#0zssx2!tj!giwO?UZhBeB#_XXsE7z0ItT$liu4Yl zM`_X(kN^oaffz!l(%X&4^S=MR-_JM3Gaw@{Qr6yUuDRx#`w4#nRXKC=@<{*ya0a6K zNCyC52?hX|!6*KtKl5Yg(?j|%1`i#T2Y`}(9tr?(1ps+;U(efOvB~kP>zMIW?Q+vZ zF@C`fa^mDIRaNU)z|&g-$>0x>);Fx4bqm?WoMrz@^wkMTPP^DQu5WL^Uv^u$2rs^| zk$-YaPs9>t#+n_^&KY`kWHh$kRHt@{w&dsTHC4B~pFTY1Tx@SLP`Np7@4YO$d_ZOT z88GFsX|Y%P>L7i6@o1NqdqwFifZ;z^NaWdV(pVm6E!)y*uO-4IH-4VeUWrEmFnde@ z=;&y5iiI*2@pHZXX7*8w(P@^5(5K}WJ8+_}+F@n;M-fkr_&j#%*OpDa+}K)SE*Cp8 z__(M1j>7j|)gIL?8y%iKV*2kp{r?_d!dR!(Kl@?U;gl-?#^2XFEQh^P6UK)+4 jj%1E{__8nkPP`9VNcR+jJ(j8y|4*lDGNy^O6sJuG9F4 zHhCtcvgzI}9_cncvn!+6X@$;ihISu>M=EWAEVqMYYL#!Mq^@oW2(h0C1{{Aao@MZV zTKf Vea_@Hq z@ADVlMbrs;na0*q0%i}0t7@yY`;7v~9T>$sBJ;fC+|KZxvOLM>BPKP-a{N|}bJ2w! zRKg~CJ$y4C^@Xa3Ylqm(3yf>wBxG}DJ&@+DH+hr-{lPv*^v^!IMqaJ`fqJD7b@Jbk z{Wo_1K7g@tV3XXoU}WOpeE{=4`eil6st`CI-X0-i$&=VVVRx%`|A<;!5{(z`dEr_& z6944_9+VVR2bqXp$w?w>CZ(9l-&b!Z-lP=bV+y{l`OAK~F;zN#y*6ai&!cg&{53kz zGABVYdYhbcf9D`Kpz4eiLn3)*bBA0SLEgRD`HI+DJ~I;s3gh?hk(pT@3CJjOP&z)) z!Pv~RST4t~=a)bX|Jff#Vb~8^O7$53gKpT)?i@YZg{^bWNnzh&O=I&|1oKnhpl=%& z#?`0wYC??BPc++ca$~+%*qZ}yV+4GX4D;h^wQm~=MzGm3`iNXIs|gtaP78n1ASbat z6FHe`3tP&bWcC=39zPF9+g8pd1!?UW8?r9Eo7xVHbIA>qL%Cp Hu#JHWc_{CFDocW(91DH3HuzCFf2>9G?!c2Fh9?AT03!^BxT >K_M}JAW3&{S;GHxs>`HG6ptokY$0z96bhFO !?Ob3w_> zi0_uXK;o;1V?s&oGxi%t>XvKRl@IO#rw*4UrUV(qSpE~W|1YEec_#Tj!16_3@XMtC ze)=Nl^lD|aSP5x%X^xuo>V`}SP{w`AYRfG?Er;aP>Ug6Tjv`d&U~a?}XSU)5g4u8k zy~-AdQ!K#gn~sE5bs_XbTNUggIonf`(x4nxL3nH`k`fSBp$d!0E=PcRnAgfK^4;B; zUb*IeP`RDzy^$a3_1`!DZyNo6uy~Qdf2`Vu_xb$4f56`5*xs(>*HoTNBQ^OFyJ0u$ zy^H+}Kpt~ad5x5c(L%^qrMb;^A5*IhHN^M=$;l`3uAAD&sII}U45BqjsFKjyRB4(N zEqlH2=ru341|7K9qvhwFgWHq~P9+;^6Xvuv2b20Mo0%{!lDw;?Zp31 #EWF>{P zc3bSwm`(9cBT;GJYjtbwu7sL{{PEkB5X!vrazt^Ig0cM X_k-SIlQ(TYc|pJ1>`lTZ*k{a`D(|CfTytI}XDBH&Z)fW%BSyfSt&_nl$H^lL zd_jBT$rH$Y`Rmk(l6j?%7sZ1t#8W4~$7EYDnlY1Ol+7fqQ-L<$rg~~M<>D#If$W6a zmo1^n4)a9W;P%W5UxwQ#hj}#-R5CT3XP{11v}39jWO=)hYI?}D?;4P8aM$eg@k_7> zV(^DlXB@mT2>qRx*pU+oftxlFTqSp9=+P&@R>xmfHI-_py|K+hEW9HLx)L?237%=? z!iKS>gS-v7Ox~i*C;`Lk_lrudLBH~qFo8kO=a9_6>DaQ3y*!r><|TzZUdAR`$`lbu zaX*J(upmgASqd^9KRVC6GP+C>nxAdtF|06h!yDFwEO`K^aI1;-f+OxF>%KgYtT`wt zY1#LC5C5gf!$kMCDT1kKIn3%m)%Jg8t2)5)@l%ceB!QyFbQhW5vJtki^VE2yX=Qdj zelbC{>Y9vNY~n=+k==Ia2!a$vTF7Ps^Y$Re=dG)pRPG|xQk}Nk@C>3BOLcEOwDC39 z4wB=#=enuPFzBNmt|!CQ^TrK6vf8vWc5W)6xYJ39{29 YoL{4 zU__|NpZNBTxjKGON!UzVII*?R;&5eUvv%Kc-@N&uv*0_%<3IeK2Eg(T&0{%}_HWVr zdSxYClHWohXs&mKkWkqgiN~4eiMN<@no~n7K>DEI>mPl80IgEM(ll3rdjVuvSgS#s zA97Fz(KZ6a4|eYWrz>2gxh~nY%oQNV1XHelTRdxlV<_U77*Dwo@fE2f=gNdW0-=r! zXqM6gmpUyFV;+D8R#?J4D2pLpWoQSn*H|Shh*{s$=XPd+?N*B(UUm~YXAx-XjR-o^ zdJV*XF>n@tsJM@gy1;jQV&Ah8WZbrP6m;?C_&0SH`9h-80;gu{3hl$}K5zA-@p3*? zu-COP7n1eHL>(f@MxySrz_r?GK(1?=`mB)~lh~W+W+rJAo}Lw$c|neD5yyroNn;_j z<^%Z)w_Y-V8~j~kO#~abSxLwpN;Z7J+av9JRzTPsV8nmC-%i2@+E21+h0SiS&X8Nk z12fB;6Q-zdSC8NQqY%dJtB# EC(Ugj(?+O8&-Rb6(*=1TW+?L+6rD>1`oz}jAghl#|ZM(y-4j?bEbHs{8v%Z_0P zyew~Bu3v1=RUcY?MnL*vvNY~PNh$O(S6)REpF0na63S)!xnZ-5_nztDnSHV7)IW{~ zso;Cc0L#lypZq7W`ObRJ5>&V(%*@@${?9Oh)B-h!+}Vj2JvH&N*L_kW(uvib!08u{ z GsPLxlYr>xo|Ibtl1AWZ^9@zmH^&f4u=_dz?S3+5Ma zV6QTyc8}y9J$ml_Ij1PDuKsl~JN7E1xJEnopsH_kCg;G~%!ypN41iu6wM5J%nN{H{Phc;t! F{`<9y?oAKx zfH>_X(0u(CcNNVVHnQX%02k&T6$mpX8m7E>c9Ks=|CVY+NB{U-!`NQ^4d8S>GptSn z4VXw|0wYGdX;pSxZ;#M%wTA=B?BhS3-ESwOE2wh88-V%pzdI9n_#X`3K-c&;jcldv zcB)HxtV*I=PV$`!d=qrY61hj%Z-oProX>UHx2r^(Qof>m5|VVe9)&*>7f;IGuvc0e zoG}kt ^NIIRcOFDR>lqY7vxk!!^*Q3EyR_03F1Ra21M=)4cK_$HE1pL;XYs6cz)K3J5c z?5-9GAiftZanu5H=*e!rtfT &CmNd1~U_(cjMo0M;`rv15&AO0>L{8ev1Hcr&)*eRB-(`! B-cXbubM$FcF%r +GWeej*zaBz_UOcPMEbSC7|iK^vMFRjU}bcSO|;+qt`xn(_rl6B zx 2{?Ex)0r`PeiumRUS;Zt zk*B7CDzpng(~ZDyN{G~@+fSTW%2WXjz)AX|JloIj*c5PFPhjc#K8Mr~Flxj;Ykbpl zEo`m+V8ABTFFH_K%Cdk|rIC(XH*mEV3!O^|QQKE(JP8F+Qu)MJMiLw*aZAf#T6b^m z6TFTt`9B`*Gd*eY$MMT!&b%@Q >-3DD zb1w?jYQzy0GKNQ(kI80*bIjc|b*0U;tj~YF<1Lo^>xLPo?gUv5*(D~LIwNSvHo&03 z$znHa#QDum2?N!q07~k#b-exvbEQ3(qUn_o-WlGp*bkHhPR?y#$2rI1n~1$$%D8?L zwUzGGl512};s`I+)ob;sY;g6E3<8kkLqGs3dkke$I}goD)I*p?do3rXC;}AImE|x;z+l7U8yD;ZD420&VwtJxH?f{RadsP*;j=Z{JD2w=wYF3@ zxAuIH-K+s;%SUf+v!Lrsqn1=+2XN$PvmTF{UG09$6$YMaP*VeHp+KMz_8FB?ddL21 zm%}^swW0D#FakFSAKr D{c&cbUn7MX?B%Y7sPlZ(>?U;%A8sNwMSxpud9|z? z|75C$^m=&l{Osjw8Z-*qSS!moSP5;_3h0!XUT-~zv7cc-7EGe(upi=4wZ~=1^3Ogf z6J*qCS}CWKyrnh!!I6GJA75;^I=XQ<%2L9o_6<|=L g_$&RH=R2mnqQ)li9sed-fazAzu3FL34*Mo{(pj80c*K9GA$w -kseb7TzleDnyAFx7n2_7eP;|>nFgWs*f!o$) z!TZ F_rHWd>eouw@2~Ii1}E|hR;zogZFUyO&hp1!5#J`2P&^@Z0Txa* zDQSs#wEVj6c}*$)zSLZb5DymWw-LpZk504!Lp62oHb=F?)(-c=j^_Pl&NSz_y~Y?F zSENJGLi8;P^ tK~&2tLU|iN4N|^{ zL9A!oig_!9Vw}f^mU-q~ZN~m;q%S01lF$CLqiLN=PS0?I+pG q12WU03qTg>3=gntcA9$4G+9C_*lMOz|kSBYgyJDC|!LQr>Rq1Un z43L`b?c6-*Em^YEjV|JyXqK;qit9d5(&$b)=rjdd#TaqXa>fHl0F+tp;Dt#dz@UF7 z#s+WKxPNc}iehV7F+Ak;@4(IB28X )wK*K*uh@QHY(Akfz%MOL zGu#BJF!R-5Sy$X5WjKSP!O6P1AlKb`niptgl83mRjN*gEQ7LjQ)0KReCpU^MBL?^z z{BAtzIUb!(F!(cgJd$HiV)zH0Zf0QfGLF6){cI}p+?8g}am1UX0Ons5YUYcZ-p4N| z2EEROgS9}n@jxr|$H=(Ookx$?Qu>WILnC9~SG?A% sTu_ni27Cy)fFxUS_9TuY_I5HZ^C0bn7z z4K>>87}UknUw6R^C&eQh?3}bz544-KZvs2?DdeXOr8Aib^#|mYyvyT;0q`$edg{ys zlk!_$Hkb&8YBJJkFC~+8VC+WhNOR99IKHoblonMI+iTb0KcUna&CB1sy>21B|J8Ea z$zNPnO~%yh)N#?knhOR?m@J6|rt$oP3)5vM{HKSPMf=SThhgMtX|#^Ky6$J3$I=Mv zi05nJaCN92D4Z@r@W{Ey^AzPLR5y%zkvpQEs0q!}o}Rkbu2q$XmrY|M)dkwcep9lH z9?}CDQotgzDeOJ2bg@>E9B3FSt@a!dQ*oX$LH!%Q+sy^WTkp{%l+1@x6gs6`JEWp3 z2Qy=bp3*CZ68SKP)F9vQ`)_aAw2D=RHq?v>xG(Qh)B)UE7;xP?PU)dp*xxEFm9UFoedI*f7TyV3Wf2Ydb&BYcI zg@D!anR&Fc9OVX2vLJ(*;7sES+vx|qUg2V;prk_B_B-Z6=p(1vk4dU-vcY3w@-qPG z!P% d+;AmoK;+w =Nz;}$sBCv9u} z!=t?d;E#t$fPB|n+E?=)dT-jIu^@x)3i| ?8Wa&n>G2wh<-F9Y0^p<-+q>Is(MG+Kyd5FjEZ)O zgpWUX$x$hl_eG4Z8&HW)&Uz^%tKMGtGk(F%Z8Dz8$in`^1aXHaig~Gw2dm3E-HHU% zc1BW^Sii1hGdP(KT2F5ZKFEpiHD@Us3j8+Z#P>R6QO>nVz%|_lHEb+XEblI<)ZP*U z$PJVFVe8ZQ4)}KddM*6w4sS8XewFGRy obC3Z%%UMQ2`}{tXXi**=M|1{k2g6gg&AlY!u1uDG#)A zW0MVAe$IqBA8%$4A8Q{wzi!8VYoQd$TeHrC&Ce7G;l@~A3-cJ?OpWVquGDYHb~e0o zH0ecGwynMe659+|N$__#$dnGjfX)0%R{jr_xl!~*cP9eNy7v%px_%1nbG2~X=^(!| zWL}Vf2ijlQcE^NzePZbChZEg^?9@{4ZPJS6K~8C>eezDNS|ii3rJnCo&cAtNmhif0fSRL{pDf$i zXJUR&yh3~AX3IT6fu7V{9&9zfDoOVTk9Z$^Few0NH5P5{89{4!7*+v+(kuN{2U@+= zSd0ic8TqlE=zRN=xqKR3WxX48^Y2F6k0z%Ov5mg+2aS5yCEYKypJD%j2-KDuq)Hh7 z9J-;0+dqx231mzgD5DEKSG3iaTqXK6*e8WEEsqo;B_~=o6!Lkoj?Flz^+eHPQOU?$ z$KG0FBDE{Yf3oKl|IWP3%zCeOLmkog*cv!O=R6uCk6$zW?)Q0wLg-t+1{?rS*;G_a zHvsLqoEue--|073VkHZnN5Yea%X5B=&HzvxDObxOU5{h*MBmQse9`0<0#x@T*60hW zELJgjPYC3b0VU{0#e W$ZY$$r;ObtP^3SJ}5peNidG5q7p6j;7X7Zco{!OR3 zy?&enX8Ub0YCjUXG(SbjGP*Cs5ok9xYDO3g=@(W19;Lw=sL-rY75=DLlQ+7(Qm0q! z=qwBIyxAftURl-nP&h2S1gAxM*S31m_!*E;1rCQK-4DMPb`8Bx2LM6qagSz#MP0y6 zbMIYU2bX5GnvMg9xVLu)M)Qky^LrS~lsvEO6<6ssWXezg(yUfeC4RA0c3Eqiq=Ex= z^ rNB)`v_8!4^KNaOFuT$eA?;=EkUs0?kpBM4HNw^yhuQxho0cMpOdt6v(W8 zurH 5^B0!}uIPn%D-eu*rk-C2~+-p&s;D+uHd1QX|!3aSCI96ytNeP8gNU zWC^P^4vo8+ccYqVVe}?r;D%uXZmM- ul1<{9tR&*>dY%SUlOsi zWxrvwkYoFcWJ?3sV<&uO^OG3ztf|6mL3)y?sQa94vTKZ{wLw?K+Mfx@bEag^H4LhA z;gLmwnlGhOr;(Mn#`FE?r+4oxkBCo&ziLv-*wtYGhv+EZ>AH`rx}-q>0)*d33=G$Z8VL{*!!|Vochyn zWx>m?k>l7%O`UiTXmnS6wfPUuo)cV2S?9kz(VSG0@qw18{yb@-TJC89M{ #GpWM^#^@<2fvALF>wi#r99Y zGA2z~fsLN>~P6({pI@oxv4#; qnLt9eg`=m-B`1nZ={|;#y(qS$ ziLKTP{*R8{V(mhXGXtDp6b9IUe`7B}pD{XP@1UI$!O!b9SqIg>C&HMR7=D>KjGZh1 z-{ZwvTsCz5AoAv~p83eqWsR}|95+|#Nxe6->)otY@Ouf_r+KmEl?Il1)8b71ZSOm~ zQaN5`#>pgvsloMx#2VO#^% `x2SM`SsLgfb HLs6{frN_x9M9VY~rT8wqC%~gTUoLXt%XN^mkJn;VjzD%?(R@hdVl81AHM%A6 zajvE&CzY^1x2_lN1m`^`6IX_;OF<2De3&=hQUVn;UAQ9U{yd4C)ekX{4;(JRYVTdA z+=wl63+f7!@}v&+`0>z(!`!S^fpdKF!Rph}@5nP?x8g!1LMc*`c5xXFFa$1@O>OKZ z@8+T|4b5r1wQ-XuJw=$j!XVM_H5G2tDscd)37e#~T>UC{Z2h*N=gd~@XX SvV=ITo@Pr+NaCtY4@uc0bC{Ug$>v48!ebNP6KKF^!@t z)qY@k1^rnA7cW<{nnfM)C CMI=kha%Krh{Qr8D+xyh zO=6(6Hq6XyO|0xGFHez?5r|VtZ$kUF&i j2-iIzE5R3^C6hqgqwEkHlpFZn_x8OxG!NNe{nysO9~+ATe>(H=z+ z2i;$g6+q5<$OESbdBz5-T&py!5$Eu^Q9B4kmbhAZlzzP@CvxX!sF~<(@o%fR5P3t; zTvbFuZ2VL9J5XzO4mD;uT5cSFA``~Ua$pDH_mI4@3!H`#NVK%?-XcdZ@4?`+$`WeR ze|8Pre(rhOP+&Ugnu{1qnUBLma~G{xX-nAfq1}2K@~gVIVaejnI#Kq+xu3;8#J-_t zvv&}HT5>T`d}zb=&!#0p1#lFez&Ao4C4d>4-!U2WE8V*L%p$BIP>zriH@alff6YGq zB{k6)M#+4;|L5VBwRay`;m&@qR}*VSQq;=Sb (g9DnBS?ZLgyvD*YDEn{L48|EBrC>#Ab9$BaGHI9R4j_z!5(B##-N}MU;_By2TZc z*e-`oz5p}> c3p(;3WeZ=B zBFz!BNc)C3yK{q@yCeOi+v!!*JJIW~z_~C^1+wRLcHe&5=>o*rp#i%=BYEfAxhLs# zNP!H}A!Q_rgiX*S_V9Z-ZT}(e&@h=#Ykr9HxvaD|1K2bp(6`pWA84 MnzS%&m+|lfNaeY5I7%jy`v3HmdR2Jlkb!w%e5I zzmb-;1FPA7tOARBnR6!Xb!D+mxUq57X^UhFC6G@eeg2qUdZ!Tg>750Az)lC0y#qrp z(%bd$z=SV8skRg6 OqN(h6{+Uf}MqoSp_gf _G1ax0h(AZA9xUUO&S*5EZJdikBO0JR$znfy^3Jy*>;E{E(vrgshLRKKnSyr|K zJ2x~A;L~QMsneXSkBt=!fRnS{ZeV>o_`uuNxu3=Z45IxRop#Yo$(=q;ZjbgI(u)>? zrKt}^`1}Z-N2?p8K>3exc=M9=w6FS|x)9449^l?yGE6mZ^NtU17L)f#qcgk|?22R1 zz#o#48vS8aI&7_mElU^ZlgZCXGnK=E2VKucjsYF4;zNL?2|?04^3)%{ic%l@_Ls^d z1blOi_)yIlVcl~I^f nj(p$EzsW7EE8 zf|KW)f>h|c4VlH8$})%olS{&D{Wj=BpC5(~-=lh%t4{Zx!|;LJq32&gC-oBT#^6rT z7ytBE F9G-|6uNUjcLJa{BMz5l zK^L729Qjnljm8b?>uiE&GPLdyn? u-6pIL4CR6uZ<1%O-0jdBlvx|GrwC0CB8 z-d;iidUhV;rF(YRWrO>`Ipy=k(TKD!XpZi={E!~v=0>Tn!*>4izM6mT_+rLI@a1EB zr+0L@z5N|v74-|2Ft`)@UHL~g@R?l-X;a^AJl5(w )p zjVTMYsN0q2y}pc@!9CL6>-Nt-^aAv(7R7xTVc_Xgnk?~}Z#)&7C%1EV4!}wC>YUPB zQz-tpka=qI>b-$=XjldG=fb1nv`(i &ehG{DQvrjyAXeT_>}>AW?%YIBC8X$e+7 zrd2@|z>xo*WMjE0-$8HavuY=9Wy*Y-qyh|xZDV8Bm+l=k8Y+PIaZ`Ij{x$WuL*dUG z$L*siy8L`ze*BgL=dZvmvWHYA@tZ0jXAWBDsP_4&PTG)opV}EU39~5%vj# 1k#my4_7IlAv ze|XU({QIlcJBSt?4^4lAjZ_ROAq|ZfhYEg-^sA)-HVN-}3Boas9r+8OTS24&d)cRS zyIV1LTG_yQTeI+%bAoklhWxrlRjI~#v 6a&P;*LJBxP27H33Ltt!>@sjI zGa(#R8~gJq!m=c+aMSB=)f}ItUXTUm!;8QJ57Z^{>Rf$=yjjO5-w)>V3K@&YpZ$JR zizSoVv~2g%hvQLOo_}<{GF0$9TB&VW?%RG_tsd0&UhEiF2xFtijbqCyj~M&QgZVxQ zJH(|_vEBP}iw);y{w2z^{KoR_Z@KKD7K~tMn>OvCThD^fZrf(x{1&oez)et|wr0ke zaTVm=^HihyFMJ@P?lzm6uop&I-Ora7ySOVFP6 oB;i4=smx=BcrPIlfc~6@+ zjYOl=hLbi6fTP#F5YXo(Q~=*zHQhTH+mag~O@X%K=<+R&MyGe{r~#Gl487v6(Dd9# zYbHP|nV1Fnyt&OTU%odRBA__CwbafO*pnM7NZP%TtuSF9v0Ab_xUjO)eBdGU&pm1m zJn06shsl?yM*v 3W7ZWnvM5y%x~ *cy;aeYn^8<40ql yeY>dA++RVsgPf z^~5!kr)dQt>9_`~rrb7<&8P0;480|!DvpN%``HX-N5tj}M9T^H1)ualF_i!7j^f6k zl)aZcwQK}0|84%sL*#ZZ^3I{cXZ_#p=Ku2(J9!qHbk1)`-$D3S@LV#m90Ny_v-DQ< z@{*|A^-lMA(i(5})xYKihV(vv7wRk8GXUSV$+P)ep@cr!)ijZRtj{PdS4vfo?y9+- z=aTTlHc!O$;UfGCT^^1UiFzoN`< bu zLD%Edvl+`}-+>cX?vKHQ_8@z6zGbf@jTLO~_1j7{` !5L@a39kQQm4LKmA=v#j%|h zK|PVY7~xVrMmV_+@+VnFLw=sR Rqg-ff>lmDI+Vs#so(D}83wr`o zM+-QEqMIJ&LP)->9sU;7s_gmXHcyh3W@+g}duE)Wi>_!xG&@{?rqQCmzeFFT*XkRz zih-POY?aT7bc9i*(J5)D-I$36A=ZKp{Y3!Kd;mIl>q6*8_Rs+b=$@|1W1!JIDO#yd z8~D~Uu({cRP`pgHSo-mnAST9du)x4kJ-Wb2umiZ$^uV2cw)#c`3SdZ-R{h!`f9VJH z2X|-xfif-rtibdf#*1!Qn{z4c;ja~vH7kzm>Ae1G#@XWN%?z*m0lUI$ztW@Cm(*k0 z_7E|4EEk*Ui-?E6#^~4*4)58Wt+%F%5}aO$v%MaAZ?Z43bPQ5oUMmNk%Zv5O`q3fv zYBXS>&bD@eUhZOVGZcnqj>Y)97 ~(MD$2-Q}4%xNbp^NbzMgoj%UG(gjx0?Klp}_Mw?JFkd8|S~n z3g%ZQ;sCCK$q_te7g|5IY-hgVW4Rf<{*PCrM>ey8?k K0IevK^R)Cla;nMJE1OpC=9L-xS&xIBRUa4Jk XNx8|(C`FvZ0?cP{;+ znj?ZMq#Y%bwEC4px=a|k`b1>=5xlU*R7!2ucjl4!!j2dY0wLPoIYauznl|NwCpLRr z_3W~4A?{t~%4=L$-PZG0Z@KkJa#vA4SW4#P>^vzw6~I}cr)Dk9i$ye$>oY!1$P<6r zO}ewa=Xo%3>inZo@8Rka(}&g%)+cZx-yG=e+7sZkf6Wz$@%XG@undtdmujuPCX{_r zKoN$BGil-WyxmI*UHilMbtP~JVJV0Y?~nebkZ>R#k?$0h>XYAz Prn7;$^Wn936CDls+_J)+ZD*dATIME>)E80$B0Mdt#i_XF zh0GapGdXhGZ2l-bIO7<8060-}k8ZOr0-SOGNBjs7q^r(*Tw3PdQ?R}1-5=Xx_~t}c z#R&oXxgs ulN`}W%OdA~Y;>eE3NORmeZ}$e2VUU%&2(uz| zFCylcmlt{26u3%Zk%sa-ACZ0T5+E`YOPPlC&}x-D2E=f;)2^sPQz{)?w^S-K#5!Kk zq_=O! JMdmtMMbdjH8v6xT)|*E6s; zV`_e{zPbBlA$#ncCOj*V-8tSRe&6MVPsh$$ek-W}@^T?C1vdUBtByB((V&F?c^MHD z89hEHx|dpWUm9dWKPKchIRZ|?-`hKNqPF#C>SYP-*_Ne&5@ui00*W0=l@Av4mTZ}T zKf~y+SIr=Dkgen{Vxgitxk%EtaVK2w9eJrSMXgr_=s^3pL>HEb(njt-!L!IO7Anh) zwS 4qvncllta5eKggjg4DJ!oRd5FUK+5o@*(J4lvR*&tJc3qTK?Z- zFTQl~n(&ad^q=@C3c@zKJGn9fXSTwqwG!Lma&u9qW7Fb2W8DVRzUs0{K&`Z62L-Zh z*( Y2b?J`ZHv#x{n9y5)GVfrBOuPhGQyhzYUwvfsvLDso&QIl5l6 za&@o8*-=87iZ}){c^?`lmL_0@Y-VMFNivLoiUjwNs(3K5ou|`9jEi`%<)=*hxXO8b zeoPm~Zu#sPkBg5Atf^}jUV~`TO4)xP_vjK_G4dKhcnB%O^Odg0)@k}*lSS8h8TL=Y z_rEXA?>;>@P@X o6I)5Avt3?@7ADAqg?nm=0N$+>dw{T{B-~72Oap$ z%!k$b0m%Ohk;Kk=FD(!wKm$jIu#Nfk*&nw nXgB|uk_sa{*7ADLcm6|)QrZ?jL?j1lTak7+o+ 6ML*rwldHB9>x82!mL30-1U(&RGsRj;fjgs%jF_) zIoioQDOH{qxSWqccB@a)o67sUv*a&4UEl9Ly^AvYLM@B?si~~)j<$H3_IQiQzA4v7 zdR>mN5eJsV-IDX{c_@J}TSXRDr*;%T*6PETt8%|Sl%R7M_eigCEvol4Kpg+p&sF6w zOf&xs=$LK*z&OPG1d#shh2bwQhqXB8eUyLX3f~x!6=BTopgu}Py+>SyNdm3PdptcS z^O-5}Oryxv%PJpKQ6p}H WmS^D9_?V>_K4m&E%)-|t7GT)rlr zEh1YQ_p?zT-4p2E&EPU#Tq3FZ_)n+~os-Ab!k>?mLA7uLH)AjV5jQ;D;ec!OWG|;( z8jbw=>6NyUH#>l) |cfm_%s zLWkYqtH+me5a|@xdV7xFSMqKH?YpI|gXk|3`#&y%BI7pu%u;!0%CB6v`oMg5yVqS@ z+(KTtoqu_H rkwT93WZ zN%dE~a^lE)l{2JXvU~lbmxU?)hDc$qFk5zmhWNUm2T87wJ41iuY*lq=;&z6Sw>{OS zWm#3^;MeLd*Lko;L!@ Zpa1qDNui*U#@2h+G_^-=O=G? zTy^ALgj`^Jl?)MOoyW?D{uaebmk%U1%=iW? z z{&Wn5nf`GOo5Z40ss&f3@4&5#Au0oho3lHG(Pz^3<5&l-oV(sKY}lnepiL1VefbNo z`YiI`YpQ~qplbVOpPP=hS!v~&Dg@=SVWEb>GsxPPm>O* lVOA&{jE8o!3h z4IHeD2i0vG)@y<4)En@P+j7WrN}jwCfu49V^Gqnht)w9(qQ&BNWemX$Y~@V8sr2?9 zzDt@tm@X2kKn)hy=!b}K#to`H4>^5P*M&p41*bp2F^h- <+Wne2wL*N8=KU$ zUI{Hr#kIk`Fw5P6sTTu?t WnXB2Kg&j%WRnWf|k7KR^h{yvWq}O z&sr?s_MNyJm6&^)+U4Nj&Tg%`uQjIM)d6Aj8NuJXXOTKOau?UB%ASc2ZHL^nj?{fS zpNhuXSzrd;xO-Ksg7O+Ggg>cyqXkUoUf5CodtU(Q3(7L;nxF{fb7hTBR3bf+pme42 zTj^3>OwV?ZXKd8?gsfZkP_k2r&?St*w~9sGH=(zE3OmgI)ZQ>oxTlHZ$k6&}(|Sf^ z^>$`_k!v(}pRS dz=6=SvCG?2~WP4}0 z$V1-f`{^MiF{coNiy5f;jG_Hf+YI1&vjvrIDR4C#*Q=DmwB@-q1-|~at=$lln&(X5 zCK*1JQh(CnOv}Mx>1X@;`n^?-W7YtZ$2#5f+^>EQzDi$(J=N*_^`J6v03|vM&myC% z^Bu#lKb!DIy$NClVld;);H_FyUz5B4?g!#lm4IBthpL(QGz6f>)iP&2{*BG2jaY7^ zGD{hij}vM!#7}3Clr|Ka-s3tG!5i$!fe-w3fzu-xSp^o@^`*ZXq*Z@$Mps#v4 MY%0Co4Nqsrzu;=KdKTc;P}_Ot1YxH` z2?w0s7e0NVwEdu*Vlo2s=2MB7S+}I0r>>pceC%I??^Ig+`s|okjnchukg`8Mf(8ER z`9ralNlK003!j(SWR}fth2Mb&*O+7G)qe{62ooyw%*46Q3uO*URDHnd7}3Xyao)4_ z%HJNOCq!7?p6xAFoe_gpboKBYnJWKyf!9upW{meVA_f<+=X^%<2pY|;k}<}Gr&Mt= zLM_TcrSo*-4=|4-U!d@kj5(P~k@=Rn>(2qj=QCHUI_Sux-r P#rkk<-;!PnaA7h3kpSq3<1r9cy_2mqs2BYRP-rt z2Io>-LY&M(i^D }EMxhP zv20NyL`n8Qi__5kZqh{5prW6P(cgP|0?z7#8>2UQc#?5F0k8!5+fYvZF4a!@cyMQy z1gD&-7AuACJE<(M$@|Cr-J^f@ZmH^@-4ev>x9np(ul{wZ;R!d5s~t9}EVH4Ka4&}h zzZT;-P6X9$NOz2H$j$%^qVTg0bJm_DfQ1ZXfo`b<6-_XX65GOMX;poV+(0W@Rul)` zktZ3R*cpwAE}=G~ei o2_=7ty^$ zr;8%bvi!Q`KnU&J_DW?-HOBiuQts1r9T$Ce_*nenHGSw -JF5!Yv(PDt)f#wBQ>wWR1wXC znFiMlRM}vPI`}yiO%ja2Mn&jz4$(gHMbiW*OX>6z3N~luS$908=o~SOD5O!dtDyVP z!_Sc?T%dpoSW>MJf6i>1#DuYs@J760E|b)1@-Y)k<_6k{bmQ+eUyP>yg1gG$xiE%# z* 1ep|6wk^MrpvJG50 }iO-ZaD_gmPU7w0u!i&dNG}jZ31pR z?G5z9Y5y=mSoA{Mk4LedDcikx<2ZG%+djR@{3)kB&=r}LvZx16xC*FKCAU82siUFw zz;!v=-wEySzve)2<@Dj6%uYW03$Z-c>$!8Y>Iv_~t9dAi$k;eLygp@Qm~~b78>llQ zU5oDetd^{sgCWUCty#j%`AEsB4H_t?r>5Ca-dp0jVg~;zNJhlnUh6=h;{&QVaTb%t zZ{2({uLNOlD9`d^htl9-=q2vgweHDl&BF3YSE)$5VLIP|R+p|k=&Qtojcg0JIkoYa ztD+@zLyh+L*}7yOc}hC3#K$8-VBFRvNjC!oV6S9jupig5kkdMFG$+wYZVuQFJ?r}0 zQ}X}Z{UYQ7>vTl$g- 83AZ0hfuLXFP?m_U>zvytRB}snVZnO1Dhq>36Ist+{xUI-E&A2wRUJ z@nUDdoZ |Gw3#t1T^UwJLNNrAliQiP1qdMzr>bQ5|;7*fqLT6}2gm)=KSBdqr!8lA^>& ztcW0X5Zm*0-S_=Gzu$9T$Kg=_I2`>ZIX~y;eZJqXGuW@trGAvQK?_x}6M&VCX^GQ7 z;8kSb`s!XW8oT-4Sg)(?-Gt!YV9Lsn?*8MDgMWI6SAmE;3;#rSOBUdHn&%4XOWgNy zoBJtv!uy @AvdxlECgs1HStHNfR;1GzY&|3Z70bSQmTxqQ&^FYZ;qon zi!O_c7V+`YiCyqrWGl#->;%spdcFV-kV$O6ORG^rt&GVneXAN+D$d$}1c<_yj5zM0 zim9PeN|w%v?(+?cx;Oo4ahkob 2q z-H_4j0KWz?+r3XaIUkGW_VrvuVfaV59i9b~9_nb|atKe8)Iq=egv|K NZ0) z7xcdMtVnz2?k9hiImhoOPC{irRS1D)9dyPH-8NahXtg9{Xn)aO#$aasX+LBy=EKCC zAFcVuo>~1}1rv}ZQOUHPO7EC $e@L2omzoOWo;_18j?E|Ao G}Bx!P7>*r)@zd|%bG_F(swL}-jGW1rtQwryJGI^h_LKAM1 z+81?cwEf{X_|HXE=-BxEgXozDa5mslt-|dyUmaAf;Jx1C=093m@HB|q2oj8m%>X*c z*nBvS*$MvbX_#a7MSbC$tfJ!1-%W{a^@|g7{EdbFCZbIupvHJ}1F-L2v)95WxiEN( z@v{4l%f-X4ks~Hrk=wLd`v`iNL_DvNe$8l D4#vO!VLE@@Be-sZJL3gF8tpl1yxs5A{aC zcHaAhR@H#=Elg;82k`-FrJmI#IOFyfpO9TGKQWfmnw%t0`*Z$|_mYPn<^+m~(`&{A z#|$sJ=oR|$+TH#BBL8QbVM{*BDm;s1!5BN4e>l-)kBv8}y!$(2#4jBplc-wdv-)%C zWF=Rjv8~Yvq}K(*-&ijRrwjYVDV;%>ioZyxcmw^mcHDwkl1PO-i`R_fj^6UwIA!=V z=NU`i@f69S4pVXN^vDzi&?E3=$I5~wrE^6dJkjgE^=o$30`bRwDg9*oHZLj{D2ut) z^KfK~Z_)EYL38c}dFjWzY5019=m0tE88oc-v7F+;C>X;LCDZLtnLRIxKWP?uPBeO` z+8LPjVsh9jRTnq?T6SKCJR^ #UT3*O2_ z+{vvwBGWI;cu}Cg%xDR*YYWJSdHeJMbBK!Cjv;T)E`2(Au~K0FEIU%V{^~vZjhBZp z#f^-?bHn?%kf48(bX9l&Nf+(U eVK?}rIueTs{&>D zZwwX(1W{HcIL861hO4!u3s1z4EwSW>P|@V6GaOUmxFMM4P&$03b>4G0SIuy%5FU78 zNf@DXPulBiYZ&lny370i2pY1)r~X=Cqj|>E3SCs3XfM=V;EdpY3%)R@S( i$~g@65F~ZYq?$dWP{n?M1JJn#>C$-6 zY?`z1wU_L!=x|S`AY1Ob*)o*t9YUe2)Z^=wVdykW#}Fh93$(;S6nP+P0H*=B^Z~Nh z*+uub6l8|d8d!G|BRmu$x%&wMvGQg7;o#?kK`snC~k4GqKM`Oj*~xB3Y|o z?|Qr@WCI~Flbq}V`=v96x*wu_ 111s{K?XJrgtbLgbDzVqZa) zb9A8YI}{rr28fuEG{DOn7T_NJc;jLe9h{TOJq1``XzM>MFsZ)7lrrc1ivve!3+Hbt zj}Ft=qMWleRe>C>LxTaisH9tu#XtrAW8dCSp)ue8$>bPZK^6X~$oM3C{b>6Ifk=H( z#SZwZW@%E;Z5mT{pdhGb>j`fQ&ihv_&B!q|cSE-eGQr7vXRrBX!z*WSF#X #v>H8* z#Ax&-CC3?tbppnR(yCnkIvWTaIOJ8)?o2MD zUzNs~iC(;bGcsxOHmdN7Z~g#!*m-g3RB Rwai)85m+WrU=C`SXoepTvd*{tjF9X$${T*v?Gs+gG^N zO@|BE8ZyeYx#?99--DG2 WoSf~O=S*l^2u{_s#}i2`l(N2p`Mmof+$XFQ?^)+X7H1o@ZW_QkL8-( z(x=BTQhiw?-{XJBP*3_K(T#A@tl#8K`(e+3q1g4r!tusSETIw>?h9uux|rvIOp}`; zIbhXKjdw^WLlx$qnhmbbolc%?8qw;EzPCq;P4$XtR~k!Yb56$pjMfU#dYnJKvAGD_ z@<+|^*n4QEWgG8=4Yf00AK>-g4f8$M&3j9?a+2xxUaHjZl%mhJmR3z_cD1Ae5bIB0 z$5spcVE~e_2q%G*>FPzXUc1~Pu_w~_D}VSzdLfD>pT69^hMUjV?f05}u^Yv{IH>r; z0+SBn$p*E0rDZqmEEsdC#;JMp2Cbad6`pU|`zgUzH+l<0$-|Dvi-ub5>S9lzFRZUM zV*lZuZ%qX r}>TnQlAT(%FBIHxQy}sGX)d=%-+aYrH|Zp@vJ7on|kg!o$8vn zt6ncVGSRR O&S~w{2~!A;C>uQ2XUJ^;$B4t?j>|!3?TEiO>SeYg!m-l! zX53366CynMCl6x~8$2Tje*n}KnVMft^A`u8QXB3mbcZzH!(wn|W4d4(cn{}$U$a|D zq(_Eluh+N%!}D%%B`|mLx}?R}1PCI)ui1 zVVv`O J*pBISaC9kc;IwM*1 z6|ZKcNb@Sr(X*1j!HZY7;{m}F!HH)kIu#{ZiT8jhPAZ=4#hzF{1WeJg$}WR@-`9Mk zRC1GJ;esT=n&{Y8fEpWmIaeSk1L~lI8uMx%wbZ#;lubW58}EcRp(^uAEyy- ?G~(`liSX$|ToC!Za=K=mln5Ng!9?}=5Dd}N^= zZjo<8tU>4u=}M=&^fkC~S35QUudA?|4q0qINRrQ&mYR6Nu&9&Xjdno>c?ti%YRoYD zJIMiUwtGv4^p%LFf)AN{2e;J8eL))oMOE0f5B&U zU$8P|(PMF&50Y?$L8+e&+H RAcA{XogLe893)uIh6bs<#`he zRpmtduVWmcCX!e!W!Ka+;l~(a1UTBb_O3n)^x9TykklHNTCW1+HP ^NDk)EJji+D7^nrYK)ca%Cdma82G!-}91VUpbI2d6(hCd5AmXOlfm2D>oks zB;L-kqmp`DnIO NNCXfH^4kiMyhWbqa6!~?v^vg(53D|0kKTE;W3JR{PIiJs zb9Zn+d6i)4yt4j=b Uyx^n??E=M@yx 8*9 zPaJ!J$%pb)bF|M-$DLO%Ere|Y*2x4%26txKeLc}no e%paKoXLHYv?$r0v1~7Jtj`G*(Ct~xD-?B1bui*LRZf>!4 zTR_Q=o#|kA3pM$bW4gyuK3}VU j+kC#Ko|_RqE$!H zAITqLl(5OhsYw7ULxPHKQ0=OYY~SPG*qQl#gRA}_tl{aXMdhEL&r|812lL6^A*?Dz zW9xekzRPj^g{^L7uy0uQ<}Gb$lY@woUBcR42`n>_!(sZzCVu1P)2*GNfUf&Z_`NK` z#P_TQ f zRl=iJn}Eu!(o8D{CHe(ybDC-fcte7RdZ0MBiDT1di@Q@8%~LfT5Xqwvbe%JJ!xg Vv8?osyyu87_$V=bax~x zx#`UA%{x*4egJsR1ADX^k^Dxs8;+7C(EGfpejJag8~i!OR}Ef41N;0Wy a3m&!8qWn~4Qzl*J$W!l(@>J}Y-iYk9RnbbO_7Skh$QHJS9Yo7t!jwU%i5?03B z<_I)M7?UUTE!Cw4 ?cf^2M>Y}__<~So zxw#n_E%?_luMfqHDDkh70u7&b_jc6L_l-SeiafkhzcmMa3Qkl?eO7F-gxsOr*C47^ z2+k|5E#bSjHKCJ+o8dbTU~-Abdn7c`?I+y{e0Q-3Vzn|C`VPCF7=3g==C6Z)!#Mwr zYW`bR4`~tx!uAuZtwV A3Y3GuCJF3$1QPsdc%(l^7J>)`TLg9G@e4{dqiFSQnB()MYj5$VUYs?nxU z^;FQQq$sb>0j`trZz_mSE>(|rD*ZvYE~HMs*+0Qv@cZ1ibmz86j>lLA#1r|-58xEQ z)y{G(0_nLLbbdFw_Wq*5O%Kw@7gmMgTa$pR{Umn#sw?Z#1iIc%`oH?K#?zO9hj)7R zA^a%NQ%rND)@=F%WRimkz)xV}Ju7r}>z6O|lF$$H|8N1E6?_t{_&l~XL}RYm-=}`U z!5)8f6j05Y)Ryt!@hElh3>gShTiWe+Tjk0Xx~}fJ=i%`fza)y1m4UTV%$qr?bv$CK zR<-=d@N6 Zy28O!p^7Z?*qzwcg4w4pUn-Ly0AbQQ$=9T$^y&Gq4@MlFyDBLX zQyZd;Z;AnF$AAGiX3qgNH!gbKXt!gL?Zu$mip<` *gj9;2;#o4WxSm;_|UQH zMQTdldr@bAn{9sri5@JBZ4-&UDDr}~QVU{tbtL`?GfJ=n#t}g3DYe4)$78boy74$$ z0lX*0``=#Gnul*Y2atN5laq6>;iL>`nq=&o8;qRFKqnHj6R|S>s<}{O bO`h6F{O7xUR4^+|bMhIZJAFiGiN=BC5^frcFG3?g+QA9Z}r?k!e z_R4A7n5yBN_Ldsgx?gVJ6JD#~B #&19Ui!hqJn`jAv}x)h&=Ta4jG$`Qi>!M?zj z`yO$;?YIu` RRHyj%cp;aHSxtzDGa4m4uTi>dzgyt!%Tr3T zt`}? tMk(lW)<-Xv?MBt!OOy0+~J f|N_q|Mm$cj( zDvWdLmDKGYn`U%vgkSjuXD{v?62chNE^K6;A$Cgk-ekT8inh5pzq 4EYUw1qt+xE>kR+Hx5XUwGF$E&axpxdH*Q 5 z1Nei^|8@*-ykSxaSb}PNO$M63k*luTz5cwqR)I@5B`mOp_asmR5x;LfIiIt5q+#Q- zJ3vpBy9rAqhe(@>a=WHS+ 1bH)gztE_cfwOa}y8e`EP(!VS*MaHO#%-)9@Ur <5PP!RCO;d3p>9T{68u8n W4ggzY{ln>r$2F)~OHtQP0htZBd4w zk2jpAAo7Z+6YRPtfVSl!>k@73x1Icdw=IanAywrLdjU{>2Dw9Qr4D)~*C@cXGlQ0R zfI+ $K_3gdOlhRPXhpF4X*)3)9 6Moosj^0`f5ib2->kl#f|#wW*UweU;om^G*&*1UVa2=wZ#gM-|E?NGo>Zm6Nt*qV zL63~pTC)}Y?)9bcz*hrUD_LSEqBH^D1QD6qH-?;0gYL9HkyvsGP#WT@IVLsyB&JN( zV)kqJwq%y~%qeQD`k$Ed#&j$KixhCA7H`(J=3kBDKSxWg!H3e&7vz1FuW>nlTX8AG zNPG+0KKYQ jc`gdC5U)x5@OHIxZ+Jo?yncbraw;-A^dwQ}y8t0;P%OL) znO+ucC!|;b&7OA4L^TE4j5sg7<8O?P?e}I%S-&T&iu^fhjv3G`1>&ULOT1i$YP%Gr z@pRjIge ^j2j> zPOrb>=<>G8Q~NSuI&g|l iiy}xjbqsz rDnE>lB>JV_8Gmo5UFdM#Qxq({6s@V9LfH zBL49!{X+RCs@Fv-(3IUy9u1P >%zLa0_xK(#w0WRvh9}F4W z`oU~glVz(B=2Z5Fp4ig8$LOe~puZ|-xXL*{EMx}lVMgEMG3$?7b^mV}|9?MN1BsHx zw1^WfKvy}a!4jo>U><&)psMKfGh}3mX`0PwW-e362ntKi{6ro{dF&gdN5*EPcrj`5 z7G0bEoC!Lst0bT89)1*NAl0MUQgX@HDQ3vf9XVGQ0{P=j2IFS0O&AHcUc}A*j^Ilz z0%&CmMgXu+((=#)Jyqpu4v;C&m4ifA%wXn*Q*{2~pIPENZXH7s87ZacR=V$=?2iJO z70Jr*C=faDAbugKb7%LBS6n+!p%Y<6tS#9qbdEmN>@T;U9Yd8 I=E& zQoLqv6FUud&q5@BE7%vY3b<%CNbX=M@N?v+ii>Su=7H4!0=gX_r{SWJAyt?4?YJGt zn0)_6e 0(Q~EN_rQy6r`+z0gNBSe=vSDcAsiwr=e#5 zk_8T1>x*oX@PnzzKHmKnAf4B;vOKG$({@4pg9b6u5&+Eq(R FENvS(y=hpZ+(15Hu`GBMM-pzU~i%_Da@y1wlRroZza#fZm?9Z3LM0aDB zJz%#@cd#K9Pt0SpT?`UEt%;kp@MK~S`%|D0+_jlcg?a`#R0XsxwsSl#Uk@=YGDz qJ)LzPx6a%erdp8#C!>W?!2gEjx{(~<8#J2pkhLzhA*hNu{KAbmNNu*&n zqMt~xBnzeNx{v9+lLOUVfnMXjCk|D|75qTn&&}jle2Of^c)dPXnE{pdi&Syjf6Xeo zWm2eHeU<#|F~#P_k6ZGWg?Sp?V#+_}{*LekEJFsFxGdl6hStx_#2_z}yC#*LHbfipQ0<*?I7HJ?UQgd3!K@oC;sv(v= zhs5A$r$CJX2N5y9Y*5E|%61>M1O0hoi&^qVotB=~8bgxq3x(kRv8#`5>MU)61|3zm z0s}dKh(Nf>gLskM^<|Kb(%9NCaD6`*C5+3^0{6ut|FiMwe}saF>MWZ#U-C|n|NPyo zFMpN6mR9*vV_?G+smF;{BMC*Zq$@&lS|T81dgv%d@^bZ^#Dn83m?5tDRI30?XG8+W zv*=4_azLPQ+=8>hE5*}58(;s-xcXepuj%zJ@2|ZpXNwhliJC9A5QLcJSoNcrpliv^ zd!n@ovE ~Et6j9hupSN nz63y=x(iiOnRob;D^Hd2!_*iomuUwpK*cIi%{m81E&Gz zUo>scpd{DAPSkNTvO&2jws;qNjw_^Fmq@)1)OQ8O$pVH=Y8AvViMGN$wHvdcGzh#> zi~Ntf4^|UL<#*?z0>xA+ht;|N(Mo!hIp9<4GEn0c^w@wS_CTWBa*xMIHo@7#nZ=|U z{`{U-Ea#{g;kg(~oKW<&cTmx>xRDa~iMeOGbK~#yE6!X_7s906`NM$)+Z%ABZtxb> zA!0w8<60bJ+TuqHt8}imQU3V0czr$OREmvwu6|yzZM{2m+fc-MsHB~+1l9vl3(;@n zam9eU#&PryC$&TQGf(e?!UF8k&hEECnA~&8-s;7tZDBZQe~vFI+~ss7l-+f_ZnW%g zZ~?+ou0gTn!a|ZYD7PQRyvWHx-vZ2f{)@(ns&)IkL~|(2wAqmU-O`p?W&V_rk0rlx zuX+Gsk|k9C8QlX$MPa_~YagZ@eXJ7qKtx+glSnjA93XDx{#zj zWCi{uNFjxCU+A98U9RxzNLO3YSPo1Hm8k+^5f}QkVYW+3FmSm59f~i~n3MAUhZSj! z701R|*DBg4tANi#C~TaJKiHn^h|nkd8WyXUWp*-45L3$P9TeZi@=rD$w(gy1DpLZ- zctG9BRCI-R9GpmVgaj*wi4M<-=y(1&l+E|^VlzvRTE;SBpE#sGiixXyYSi|x?p=L{ z)ms9ofk>>+wq$qo8v_8kfd@Tr92FcZsZ7&C&q-F@$V7Vs;jz^!>ErCevwkssk>+)s zheI|-4I~Fm+R&}lx8E_7`Td#dO)9WKfenCSGrR$Y`|dbhXo<(UL^CaTrLQ(gE!JfT zdR2M6Udbh}mo)U=`-abNEs=qx>|sk^CyY>v@b(sIp5NFxN!uz*`MPtP?iyT*u#CV@ zjN~;xh@j_bl|}Z?2?q1)`zp&LMFN4RxExnbr)QRLzQ=HHYzN*j|4A0ID*Ak`fX&sv zE@#D|m4~FtVq4iThPnFk$8})y*6acRA~tb3KVkddedMJ}fO}Hr9l%{}9OVIG5V7H+ zQu|g-1rX!G_3Qkh*A;`GKYmC2INRy4aOtpVH<1WatL_r1<-0F$-*;Cc#z~)Z@)C0a z4-zKbE%XJD$^&Ea<$Z}Mb&EOz;Zo$c=K8gUNa;KWY~rVRXr#A7uwr^)Wpq3YnyejB zaVrgg{l`q|L$yr}9RKB+PE 2qrp0>TSI+&GeqYl;| z92emI-yXBWXJ4$tvN>L-Q=@Pjc-{jXsSRt3E#Hj~it%TM-I>^NeDcf^g_`UDrm`+$ zByKd52b!i8kC*!3b`o$?m;KvKoy+4PZXz*kES#gxeH)-Q%sTG74+(OE#q5cBy9;I2 zw|_`IjM=j41rAcg4keM$dRe()6l$pn&>I~5_7nvAT+Re--$fm}-Zrbr6#nLgRg9ch zNUv}t`)7g50=Eq8FDqbE&&JaQH%{B`2?d -wLnfD+r}@a!#zZM+WcJID&rz0@76B+!4WrEbpc zj)q5-QzyUhpuM@}_xvo!9$J1HV^(t>@SV7$@Jea@!_oqm%#0`3MLZ3!e>?2sue0hG z+NL0x=t%G)C4kg(UUR9Rah%ps*cwJu{CaEYr^n~OFB>j>%u3$Glzl_aaixHao%n?) zKR}mo0AoOc-Ft k66#XyRfa%zb%l*c`aormq8{Ipp zdGfj^#l><`J-1%XbUuNN&P@r4P7;Nl{;jTyc)u`1I1;{zv1r%a?L7W5PujC1VfAM! z9blr86AW;72w{%=rH1L>t9%HqOnFk&w cQ8xgFI~_tL$~^vJ#;*1>o?5cp&sM*ChPXS}+wPylKCD;yc%yL&5GAo6105)W<9 z;ZSQYhJ5sa4zDhsg}m!}sYk^2MIQHKXRg&hqTKvtgCRNcQiD8}uRnESI`obm`;qSj zj8eP3-#DJ8gVjPQ_0vB1{dXE3|1DZp=rRc=RN~Lu9$utaLb%el{KH4sjdQ9rFKEUG z=jakCOxcxT3x=I|ZMK3l-dnr7lpOCNz #l{d7u3E|TRI z@Avo&0{1egR8!a?#se(&E%xp0CzVPmI!{*;dxlrUYCV)V)g3%ma0^SrVk4AdStvX{ zwVMir%h9TQMNe1^tW5R^e VnDIIh^WG^2hHb zR@xfBcfF{}cwO -1j+}T^H7lRDyf7Uh}I7?Xq7*WqV!>6Ub#9e3eKa z6jH5UC(VwPErubHiTsUOrnyaX8xLr3BK~uRjx zH|F{k=6MlgWK55ikqG-u(cjNjjfG=1^ qSr8)>n zUnG}Pm|j#mLA?Nc4C+!p?#{k@J?fE_GSsZ1ryOd$aJ0OIP@(l*b1u*KH<|xjSjT-} zLzaza6(S6Ir#2UfoeSkuTj@{1To*Mp?{-HuuJg?JrB%Q)M{8!gYTLioS#escGADCq zPVWox^x06Es|%D}q*VHn0{|fEsP7%3RjS*C+C)l*N-G7VxH$WjYnr4A+uNyq>EpP? z`@Z3Tz&IYCRIn&2!{1nXOhVA;QP@fYGAgzVxB!^DG5IqpQ`gqL-`hcg#j5iMx}I!) zFjiIAji{_YigsbFN(IRB{XaqY-%5gYAKNmsZ=af*(xH@d+GqFe7#v=+f&)-HYLB`5 z?J;w!TH_Q#MLcWe#8Dk;Uzm`%Wp18xs#V<&W$X#qV~GbMG&SjmnO>g3qEfRbHExPt z(doVBdFf)kv&vVFUz9v8f>l;0e vsZ-KUezulD6#uZRhO*LLs=xEjIk1KM5nRhEuEU zrmReYpLnEqYipOo3Mov5gyU&5rN;_lH-K#tz5spUBJII^83}$sADp(FM2cyqf+dHQ zip=Q=0s}+uSd%_D&4Sll?L=)YjLXeNt`NRM-}mj=eg_umbUz41NH*l|+()TpiQTr; z7-80iSbW zcGodR3z6=T{Qfxiz2R9qpj++?O#Yoq$^=iC2q$IGVZv=B`UW`VX=OSw(nz?+Kw29d zhH_I2`)MDVFL5+yKY{ZZA0toE)ISz2es@O1topp#NPVvFBVIR=wkWa $zFtI^~0=~F^2#T8~rG(7<=)BC9gK-a-F)w;-amb^x3IM<|`aS z 5rQd4Ya=wZTJ4 zb3aAMB`&~lZvn8%5KA5QdlclLW*EWU9baWZ#Y3wMW$%Xjcx#vdEUZ?a}{u0bGRa zp9k&GEXjV9Ca;+LSA9Wa=yW%pE<)tK48t6^)4cLzGXlLO9nei8sBZTl{wp6I5&>vD z dyj!YpXCda`E`e9njYng4n#^W{lC@D8z?lh$iRHvc*)pk9 FwDrZ zvia2uucY^}QK#|Kb%yj(PrLE%ldXAX>~+4Qd~K!ZGeuyiRmD(zq@!PZx*N#yXNm!B z_2vIZ;wXykAaPn}K~62aC-$uUR)3i&u1*2x URPstu`;{9`Ag*Or5KlhrmIc5fdnd
(OUTKu?XG)yy;^O?AGGpB{Ar#>esW*6oDeOhV=`7@_Y_&QGpJ?1(1t}u`06}J)K z(WZ9O1_TbnM}*0(mXLIAtJ*-m`9SCQ*I29WdeyPa6nV_0#-`aetHgq0ii5@-ZVq z)IvPL{dbL|Zmjj6$bqRviM`C2UlDGCicYh8t MeFJ&Pwja7Zy_LGh&Q#KE^)mVkbT5 z@XEK35%dG8&=;55n9KgPPwIcnA@5ip%1(7x6zWa_!f7p=O2Fch6oOQ(E!u-K!8>2W zs#RbUIjVqZBG^@jTTWAG`pVGe0UzgRkBD~L?=T@R{)Em1jwwA!6j A zlRg7y#ehqRzPeu9-#8I+cA0Y@RAyGCtLO}eKB5l@c`j`xxt|Yz_Y5;NC}0c!z0p5y zGrQh;I)^1b?o8jF0cW|HUVu1G9Q&q7gX`app5(zqJZ$*_Pgqa >!y{LP9 z(9dZNiAo@BjkC6e25rY$y~5Y87l2d`v0wlDOW`Nm^4-m2-jb3h5AE_>j!}|nb!#I{ zHg0WhRjml^vCG##aJF*PM6y S! z0@$a*Cx2HuhPz-j;D>@R#v77s`j<)}&CK~sW6QhYv-Q5A&T;$ `36l@piYKr zyCyCqY3Wt_kA^+-NM!;j0O1> &oHTt!+FEJ%vX4KHDzx)bf zn|}%~?7d7MxJ7cou6tO0z&Gq{PB8sLKHnsaNrkQG%}E!)X*hTk$dv=(yp0ydtdv-1 zqCe%0h;tJT1rC`izxC4Bw3c&r+3;s*tQpx++Y_Ur8e}h+Ha0Y1jIvU{+m~4JCm%=m zSP=(fcl9cM=0=WrG0|5ji5((CnS75$1BgO#R5iJi1y$5Be-3fYNh7!;uM1a{tGRKF zQS3u$s0^xIhTQ3CCTrQm_6?$Y8|c1J&HGiUZVhRHJlbnp>CdvY|HPlp{!y9{zZJE| zT>$7%*V{f?G!J~8i!1`1tU9}&ZAk}kS$q7>+K71BLuv_Yv0ETtyF2Dp@7Gl&o3@Yu zo0oy6nKFB_`+aU<;-9+x3cH`iytYZJupkANJ}U5ET>nE?D_C+sovLHQ19^q`<3<&= z#Km8GA4Yj2$=3B8+gO)0H3r5$(91T;Gc1A;(G^8iu1stb#M7?Xk69L(?|m7_u-mIF z+#&|{s~7kpxVP8AXN3#Q$traF0&hz_)l@8sp0Eud$6Eso8Cs0M9``7Jg0ItNhZI yfwfGU(O8rl8Vca*}PNZ0P?nX1 k5h8 zPwJh$;%3a{aW%kFdqfbh2d5mN#`#?HQsMAHC;%(v`2 LX1JK%{ioPjUCx*?oyFm2$^Zp6PdS#CR=kW$}FC6puxwAG-!KL#ck3 zu5! z^JEh}pjTZyuo9>SI5OcoL3n_{#B@&o_MWZ3z#ppCh>14|2yuYWaFSGKR6jg|n+#^Y zL5Nsow1<(~-W}}OP8_LV`2E8wg7KMCcbGS4)`Sb$*ft^?J){Dy-L^Xpl==CIU#DDj zSrpvY#1bzn-jAT+tAdBhZ9lNWY)TZofHgtxkg0^%l|u3uVuJMJ98gi2PHv5gq7Y{v zGm$nKPpIeMEpn6n@WyCrb&b?REG*rTP<-C9k@;1>3|!>aVbpyOA@96okLsVR8$O9c z{5e3^d!MWUK;qjQ{xEdIJyue$yrlb9FrS$I)~ED)_f%TBzJ7$7=45J1 wv$Pj+#Tupnjb+W_Iz)Sem3_;t5DYzUn20Zh4N{B zvTEyQRQ2>IeiXkm&j9UZ;cL wmOjdrs1T)lApB->B_8#1(d6FIC?7p-D8+E?^-r7*A`rM~-yJr>cS#$`eM z(W!)aTjzn*oz%9faHD+Y5F>SNcWCic(LVTAJBwSivL^XrCwG}x_{EhTrba%55u4>` zYW!RmHIgxo_d4WB9|Krj^z)OR-0r&YRZ2>@{mpNmP++&2zXrRm{W9V?9r5$NywAC& z=_k|W%9J0@;zG~Z=nEq*lgi1Veiku2 z_fr zF9@&7Gr8DAmaIngGn*~8fu09Fy!%#)73(ZzX))28y&?sd+7sG@0)kpu&)1!Qdubu` z($psbkYKjQkd3L%PJJ|Ir##*@kO U#F&njE`iC#rrMdAb zA45+EuMs#hS1R@|U;V3XG`+`v@JFbZCDUc`u3K)_)bNiP{FGz5qn7*qIAOI^HanUs zidQ4GXm3 4NDu1 z$x>Y=wGdk+wA{gr=~WK<(5EjNs |FT8SP!EMWSOVreg z_~J6^{}A@x(QL wW%GW zrS`5pLWLMXBoTW&>3u)XIlt%m_CCMAa{LqL bdHv$ z;pmx6A$GlQ%Dvk}_@jc_lWgfWtL#tXl?u;!K7AqUQSRc432`f%3tuxkO0No{)UH;R zI0sBql-?sEn->pS65AvR(+15el~&D&U7j0O)>qOf&u%_E|A97F<^TF K8{r5;&7ZW2Mef7CMBy6aS3lQG0568VsLc0#y=n=_UDkynZsCn_vK0 z!}AH}?&B#hDQj#F4owdw%)&}ak#F`qG7@ttqCU1g6PS>j{D=T(xNB1Y?R~g;sB3pr z!@kT`2z2EWe9+K~L?76L#J{!0?BN*~HoRXIsXG3w>nSLpK)FmlZ#h9OfAyG@89Z zTcHQ4)+I88P5#j6YVNDAT$8}4^tV?Ge>Fd}F}J|fNq}24`WhHYJsVC)=Xw18(DZJc zsa{438yXO;$9j^=>9-^ab$!m{L<5QD*@atXr2$~-+NY-H;r`5ybP(Z`^5OTh-<9I% z%W4$mz8{KZ9(<<;ZyZdxTeIMpYk<|Nt5!QXR}mW@u A; M>N(Gx#Y@+dS8y=Ab|yuCg* zx8W=M!|XSkzyd{vWSEOdN@)3*K|?5b2mbt4O^B|D?2@qyc=B9~vIa>Dj|tBp(uJQC z6TMQvEi1pAwKkj#w4|FDSh^ygOo~pD)T?q5cX`bjRJ| }nWuPHHT2o*w z^aedLAdjODWsYhKEeJ(EgUWYjFe38)uBy){)oIOoD2?OZud82!YKZsWps%5m%D<@M zG88*2d*5Fr>Ec}DJU=9nA1#;ZN1cp`1il3*xA#o69Zy0+K5j$%sa@$F796nM)YtI? z-m3`0o>9r%lB_1n3a9qfHc&i_J#8*Ys3umk?bxAA7cl){k1$c>WW==r7{Dx%9i7^G zkc 1`U*4BrNpUUZ!Ibsg^V7JPg zL~8CM<8d0kK>;`3N5pjSAOLtG_Yg-!K_F!Z+%kkLzc9S$$^P}C4-L1m{8E;O`g5t_ zd{9Spggq~R92p=(cO!j#E$)~IEL%#Liu-^Fe-|L|+~>2A`a|ubn06-G$^I}VgXt~S z@IIh}bhy9sf?Sq{2;bp!o6qbE36}g4? 91K)!eY^W zPj2$zsQ2kXn;%Jx${9!<->;z;v`elj=?1b}>i;-_u@0~Ke4#IUKVUxrl a%2W7pPAF!2k=GYM$@+MXI0D2AFk{ gs_5uPyc4B6khO|$u9OSxy6XtRA zijKCRdCllnf6sAni|dhYZeq^xTbKLD6qx2r177&a{!f2(+oMG_*(VS8z6|)!ZX!?S z9Y>EzqqBj=VLJagYTY<9Cj5cY{9hxOcutG*VIN_lIe@(G 7?ZEMN&l5S0H@LSkLO{Z;1i{Ot5IV#@Tlh1E-+{!bLtKFbMKPXw) zpQ>fV!J}IPxLVQKcIK$v#a-0MtEdOq{Fva=W=VrXoF o*6j9C^hS<7QamwMgS~&ThGD8DcR`>e75D6{oYjTF 6c r6lrjU_H$; rF*J$9~uLmv#(5oP1^npdPQD z2PEg{iSY2!=r*>OHvy`%1C>T*V^UUv>Zx8rFG4l{Q1(QIqa5=q?9S9UWFm0RBsgeR z)(WquRn_qSfRewXSBG(EeL|oveN(-~d2{X1xTY