From 34cf681f7147471aec05cac29126e8e1e6760a10 Mon Sep 17 00:00:00 2001 From: Fabio Date: Wed, 7 Jan 2026 15:52:21 +0100 Subject: [PATCH] first commit --- .gitignore | 40 + README.md | 218 ++ README2.md | 161 ++ capacitor.config.json | 5 + electron-builder.json | 25 + icons/casina.icns | Bin 0 -> 214493 bytes package-lock.json | 5078 +++++++++++++++++++++++++++++++++++++++++ package.json | 19 + web/app.js | 1006 ++++++++ web/index.html | 48 + web/style.css | 259 +++ 11 files changed, 6859 insertions(+) create mode 100644 .gitignore create mode 100644 README.md create mode 100644 README2.md create mode 100644 capacitor.config.json create mode 100644 electron-builder.json create mode 100644 icons/casina.icns create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 web/app.js create mode 100644 web/index.html create mode 100644 web/style.css diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8464208 --- /dev/null +++ b/.gitignore @@ -0,0 +1,40 @@ +# --- Node --- +node_modules/ +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* + +# --- Capacitor --- +android/ +ios/ +capacitor.config.json.backup +app/public/build/ +app/public/dist/ +app/public/.vite/ + +# --- Electron --- +dist/ +electron/ +dist-electron/ +out/ +release/ +build/ +*.asar + +# Electron Builder temp +*.dmg +*.zip +*.pkg + +# --- System files --- +.DS_Store +Thumbs.db + +# --- Logs --- +logs/ +*.log + +# --- Environment --- +.env +.env.* diff --git a/README.md b/README.md new file mode 100644 index 0000000..854a639 --- /dev/null +++ b/README.md @@ -0,0 +1,218 @@ +# MacOS con Capacitor Electon + +creare un foder + +inizializza Capacitor + +``` +npm install @capacitor/core @capacitor/cli +npx cap init +npx cap init "MyApps" "it.patachina.myapps" --web-dir=web +``` +inserisci in name il nome che vuoi x es MyApps + +in id xesemoio it.patachina.myapps + +in Web asset directory metti web (la dir dove si trova il file statico) + +aggiungi Electon + +``` +npm install @capacitor-community/electron electron +npx cap add @capacitor-community/electron +``` +copia il file statico nella cartella web + +per esempio + +``` +/web/index.html +/web/style.css +/web/app.js +``` + +build e sync + +``` +npx cap sync +``` +avvia l'app macOS per testare se funziona + +``` +npx cap open @capacitor-community/electron +``` + +crea il pacchetto .app + +``` +npm install electron-builder --save-dev +``` + +modifica il tuo package.json inserendo alla fine + +``` + "scripts": { + "electron:build": "electron-builder -c electron-builder.json" + } +``` + +oppure per una versione più semplice + +``` + "scripts": { + "electron:build": "electron-builder" + } +``` + +inserisci anche i campi name,version,description,author,main + +inoltre + +``` +"electron": "^39.2.7" +``` +deve essere in devDependencies non dependencies +il file deve diventare + +``` +{ + "name": "MyApps", + "version": "1.0.0", + "description": "Cross-platform launcher built with Capacitor and Electron", + "author": "Fabio", + "main": "electron/main.js", + "dependencies": { + "@capacitor-community/electron": "^5.0.1", + "@capacitor/cli": "^7.4.4", + "@capacitor/core": "^8.0.0" + }, + "devDependencies": { + "electron": "^39.2.7", + "electron-builder": "^26.0.12" + }, + "scripts": { + "electron:build": "electron-builder -c electron-builder.json" + } +} +``` +nella root aggiungi il file electron-builder.json + +``` +{ + "appId": "it.fabio.myapps", + "productName": "MyApps", + "directories": { + "output": "dist-electron" + }, + "files": [ + "electron/**/*", + "web/**/*" + ], + "mac": { + "category": "public.app-category.productivity", + "icon": "electron/assets/casina.icns", + "identity": null, + "hardenedRuntime": false, + "gatekeeperAssess": false, + "notarize": false + }, + "win": { + "target": "nsis" + }, + "linux": { + "target": "AppImage" + } +} +``` +visti i tempi lunghi di certificazione solo quando va bene puoi modificare in + +``` + "identity": "MyCustomCert", +``` +vedi sotto come creare la MyCustomCert + +copiare casina.icns (macos vuole solo quella estensione) + +``` +cp icons/casina.icns electron/assets/ +``` + +in electron/assets/ + +creare in electron il file main.js + +``` +nano electron/main.js +``` +e inserire + +``` +// electron/main.js +const { app, BrowserWindow } = require('electron'); +const path = require('path'); + +function createWindow() { + const win = new BrowserWindow({ + width: 1200, + height: 800, + webPreferences: { + preload: path.join(__dirname, 'preload.js') + } + }); + + win.loadFile(path.join(__dirname, '../web/index.html')); +} + +app.whenReady().then(() => { + createWindow(); + + app.on('activate', () => { + if (BrowserWindow.getAllWindows().length === 0) createWindow(); + }); +}); + +app.on('window-all-closed', () => { + if (process.platform !== 'darwin') app.quit(); +}); +``` + +ora puoi builare + +``` +npm run electron:build +``` + + +## Genera chiave privata + certificato con estensioni Code Signing + +``` +openssl req -x509 -nodes -days 365 \ + -newkey rsa:2048 \ + -keyout mycert.key \ + -out mycert.crt \ + -config codesign.cnf +``` +Unisci chiave + certificato in un PEM + +``` +cat mycert.key mycert.crt > mycert.pem +``` + +Importa nel portachiavi login +```` +security import mycert.pem -k ~/Library/Keychains/login.keychain-db -A +``` + +rendere il certificato attendibile per la firma codice + +1️⃣ Apri Accesso Portachiavi +Applicazioni → Utility → Accesso Portachiavi + +2️⃣ Colonna sinistra → seleziona login +3️⃣ Colonna centrale → vai su I miei certificati +4️⃣ Fai doppio clic su MyCustomCert +5️⃣ Vai nella sezione Attendibilità +6️⃣ Imposta: +👉 Quando si usa questo certificato: Considera sempre attendibile +7️⃣ Chiudi la finestra +macOS ti chiede la password → conferma. diff --git a/README2.md b/README2.md new file mode 100644 index 0000000..ff1eba6 --- /dev/null +++ b/README2.md @@ -0,0 +1,161 @@ +# MacOS con Capacitor Electon (non funziona) + +creare un foder per esempio launch ed entraci + +``` +mkdir launch +cd launch +``` +crea una cartella per il file statico, in questo caso web + +``` +mkdir web +``` + +copia il file statico nella cartella web + +per esempio + +``` +/web/index.html +/web/style.css +/web/app.js +``` + +inizializza capacitor + +``` +npm init -y +npm install @capacitor/core @capacitor/cli +npx cap init "MyApps" "it.patachina.myapps" --web-dir=web +``` + +qui ho chiamato la mia app "MyApps", l'ID della app "it.patachina.myapps" e la webdir quella creata prima "web" + +ora aggiungo Electron come piattaforma a Capacitor + +``` +npm install @capacitor-community/electron +npx cap add @capacitor-community/electron +``` + +inserisci in capacitor.config.json + +``` +"bundledWebRuntime": false +``` + +copia i file statici dentro Electron + +``` +npx cap copy +``` + +questo copia i file statici in electron/app + +entra in electron + +``` +cd electron +``` +e se il progetto non è ts ma solo js modifica tsconfig.json + +``` +nano tsconfig.json +``` + +inserendo in compileOptions types e skipLibCheck + +``` +{ + "compilerOptions": { + "types": ["node"], + "skipLibCheck": true + } +} +``` + +per creare .dmg file bisogna installare electron build (sempre nella directory electron) + +``` +npm install -D electron-builder +``` +in package.json sempre dentro electron aggiungi negli scripts la sezione "electron:build" + +``` +"scripts": { + "electron:build": "electron-builder" +} +``` +e aggiungi (o verifica) la sezione build (dove ho messo name, ID, risoluzione) + +inoltre l'icona casina.icns che era nel file statico in web, se non ho l'icona rimuovo "icon" userà quella di default + +inserito anche identity, per crearla vedi sotto + +``` +{ + "name": "MyApps", + "version": "1.0.0", + "build": { + "appId": "it.patachina.myapps", + "files": [ + "build/**/*", + "package.json" + ], + "mac": { + "target": ["dmg", "zip"], + "category": "public.app-category.productivity", + "icon": "app/casina.icns", + "identity": "MyCustomCert", + "hardenedRuntime": false, + "gatekeeperAssess": false + }, + "dmg": { + "background": null, + "window": { + "width": 540, + "height": 380 + } + } + }, + "description": "An Amazing Capacitor App", +``` + +costruisci il build e fallo partire +``` +npm run build +npm run electron:start +``` + +per creare .dmg file, sempre in electron, eseguire il Comando per generare il DMG + +``` +npm run electron:build +``` + +## Crea autocertificato + +Crea un file di configurazione OpenSSL +Crea codesign.cnf: + +``` +cat < codesign.cnf +[ req ] +default_bits = 2048 +prompt = no +default_md = sha256 +distinguished_name = dn +x509_extensions = ext + +[ dn ] +CN = MyCustomCert + +[ ext ] +keyUsage = critical, digitalSignature +extendedKeyUsage = critical, codeSigning +basicConstraints = critical, CA:FALSE +EOF + +``` + diff --git a/capacitor.config.json b/capacitor.config.json new file mode 100644 index 0000000..5fed9be --- /dev/null +++ b/capacitor.config.json @@ -0,0 +1,5 @@ +{ + "appId": "it.patachina.myapps", + "appName": "MyApps", + "webDir": "web" +} diff --git a/electron-builder.json b/electron-builder.json new file mode 100644 index 0000000..f778fee --- /dev/null +++ b/electron-builder.json @@ -0,0 +1,25 @@ +{ + "appId": "it.fabio.myapps", + "productName": "MyApps", + "directories": { + "output": "dist-electron" + }, + "files": [ + "electron/**/*", + "web/**/*" + ], + "mac": { + "category": "public.app-category.productivity", + "icon": "electron/assets/casina.icns", + "identity": null, + "hardenedRuntime": false, + "gatekeeperAssess": false, + "notarize": false + }, + "win": { + "target": "nsis" + }, + "linux": { + "target": "AppImage" + } +} diff --git a/icons/casina.icns b/icons/casina.icns new file mode 100644 index 0000000000000000000000000000000000000000..9f8c00a7ed8340423093ef3e97e5eb0a8c7032e0 GIT binary patch literal 214493 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
jnP z`G(;3>1Q9K$*A1B*r_*KD+a0!tai6cccqu{7b75^GFVDPy#?hVq0Enk1P&uBkFwJ8N*4 zd?CB=Il>{iuz(H5gp+t#we{p8y})F=2txBh!A6atQz6=Hu!;4 zifSo0H}5^M{MgA;C*r*OUk&g7`*8z2;F1@|sDlYz2fz+yqkdO}nAj(Wn9w+76c{yb zIO-1vy{U2GLbr@3;X1a+f(S{2)2g+um9na)wKaKvkP{(yU}%evUwHH@ue|lgzy5{) zWc44cJ-(#oJG!ZPBCL^!8>{Qy*o{vdACA|{dVg!TeCzt_ue^Q(7$iA%t_3u=b~ae0 z)b#B7vHoD(wv}awVTz23mfOhHw=P}3@$%NsJo%B~ROF4yu$@nE~x7Ih`hy zb)&Ul30e4HyN)apE9jUJk#N#0=7Q4}X9+1d5}07*)7HEYlv3p^l5N6i7>Org6kSt> z{muxsj#9N+D!s@Q-*S@h)+h(;flu=5O!@Anv-6a?e6CR;P@5veeS3iGKqwEKM=KDQ~ z-CwrKKKfnmh$R3gWulz(HpK8Kt4lpYb$s@ckl??R++?>o!RWj6v(x8N)Hc z#wn|rHjPqM(Ddw-(*v3rg_vPyA3D)U{qm)^{_M9u_YY70G+RmxGmhf6DVac`XS3D5 z#p&UED_dPZHtIjMt*%~|FMa!pLk&WPvRcV~C1r6e#g^!*)wN7nPEu~Q!7d@Fclpa- zfAz~>J)R}UlTlJL-5TX;#$jo_Xwkf~6VXEkq%qWQ7S!E$);Z%>pw(6dR|`xTq#*vE9#P?lQO|38Rjb%ks4W)r3>+EZ2v|80$3FIBOwN~C}07!HP(l7+UQ^f7wmEo zrYs570YHJ9;UgasA`Zq8W!iz#S_R=9A&iTZCn=^(8QZqf$3xm^8<%7lM&kr?jQzcV zlx~^1~QwY}|g|9)0kK z_CDRcy9TX`KZ(LrQXs>lm>Y*x5$@8+YjTJX%#jat0g^Q9^_E)PQY6A$6ktXXMW8~s z1i&3_AnMb~EL&O`a{;xS14xPtshcdNwJ{c_*(kGn7NLv6Obk za>lYE7l7MYNhv3kv~8;ia88m$FiK1yyHUZwX(`(ziQb{qf)53wo|aOE32s%e0E-)r zMCeEmU=tjWDZ~Onm|(_;BY;KSY6qGzmZl=iz8l6kV~qQ4=l78ISBKL+3IgTg`~$L9 z6U4a1?Q}+h(OYL~6GXnD53mrqEi^HUC9_Bg7r)>-JT$(~MtP?%fw!>%+yd2ZL*!}~ z9wwxl%tZ?!Uz9rsa(pa&qA2VS99x7eAS>HB!kn?54+5M&%(M?(+cXszYllsg`Zz=k z1R=RYs-?$QPm~jR^Xkowix;=cSy`1~=8G}MT;sUOtt@LzlHoW7zA~WG+5Yye>!((h z^?rSv4#o20-+t@b;O~R_$;&5Lx1U5Y@Jg zm3j`A3e2>!S<;hIIgCfk%ajrlhU}8Gpo~|uk}{5qq?K(|H;8~CAZIfg3#Yn;VMV=&YLZ#3-9N;eSxs!z#qWyu&rYZ&xKO-ttY%$09! zUVQTWut<0B-WWYJnpcNd;UZh#zPkJEm%sVwlg}7fo=o>3x<yyv_#%JM5`ONzJ&!p>H)9I|4R`yUNNSbzv8!|{O#;TP;`9>o7CB980 zPNraM!CD8cX%U2Tmy%(gokM{CBCvN>Pf#UiHDgskHGYjU~`(?X)2P%m%E730#}t(PVQ2V{7B4E}d1fsfmVB zGAwvuq%Ha*ELg2-ZFLv+M~HG*^(HL-MI;d2A|pAH2%Zp3wK0Sc5k|a1oD{6m7ew_1 z8KCxl_Vxz-!DuuJ3xHX~9H5A(cGxlboh<)I(~j;C1|nyn9^zsB<{lrlL9J4V(Iii`)=Uu0xI8>uU0Obvxx-m0dg()J8(+Eo!j;#qKK{|Qn%6wF z!&B$3eEZs0|L`xKef-fgkDXS=&SoVeNwp8{&IDY=9T60au2Gs;i<_Cs>2S1q?(U1X zzW#6j?6`n)Cr%I`Wi|IPK-2VCK4t@6D`dG3?HR?41oe{bj)x$i2>`0NX8iIcgv1Fh zB-;vf-L@d5H6}^YrBO~$<7{&ujR^O7z`+ahew!)wm==4(e;5RlJkK3+jgrXv{XuD* z3j?eCx~GErWo;~?;4frKiRn%g&XZ6w!o=Sm0etA=UyGfIyV0i^j1o?fbqN!~$-}yw zO%KTED^>;cB=f0AG+0ik3tOakW2U#n93OF2o>Kwz~2EPx0j@k=pI zFfr2BJflg!@NcKFoM3?n3S3o0h@(VVbBYuWiEi62}N-!pxgy zI>jjMrOTMDpm0FZ$_^(J-O6#cl%otcl%u4om3EdS1hoV( zkcjAvz7=8lsIbxk8JcM2j5VN5W2Il0Qfj5rj4;l?NTY+L?gRDoqfHP}U&4ard_ZJ( zH8_lMP!>AlGcB!^1_P83!Z->A2j%kuNf@@yNu`JbOf4dj^9hVHoTW@~CWJ_mVAe!J zlg5!6OYFq&dZ zF-5GMR%Tv})1ocge$lfIPwe3U!xJaYeD1B+zx-#fz5i1`yLtWPZ~eu~qh9gBr!P)+ z?zGu(XJYT(nNRm;1%;Jf0vw^Ta&8W6T=#Dfg`nE+a9KcT7_(9`^3k<*QmWZ( z&WYrtW8wyaEsjj=BOO8fwSZo9NA%_x=mzs(i75_{{-8Z~pp+v1Tqllj?R*GH!eG8J z##yCJw8~(Fb0)aR)1=4<6WB6Dl?{wr!2}R&ZKI71O*2D-GGelShyjg9OM_mY0@6oB z*a*SwFjyfN>@pR+kmz-)up^}edKcROZ@Uq8pJEJ)jLij%YD&EdP zfz_Di3t#xc|M)-uvs*Xc`k9~k#LDvEg%`gnSoTkT`B$HP_WgM>WPF&2jDW=mTh;yP zwrLK_dW>v;Y2XO9#(y13kTbzJ6oCXM0gwI^?Hd0O~qdO&g-)Yn0Dgod$z5x$VoC1 ziDoR(Q+VaGU;D-%ymEn`{;|_f9bVn*8jFkcE zgF;Uu5_n8BU$+tef}%qJaTo>gokKX-DI(jpif4#(&X_;uiT}r%kPwqd^>NM|scUfX z^feGSfC;iwM*>iuQHC5gkq8u%Qy)M1EZG4t#t>!>BdJX=Wb#R#f!JQq+Bs#ka!3Vp zO%gId7iv!l3Gq#^T&<;?92{T=MUo0a0|49K`8Y1^aFn44h+0@gbRIF$6E=7REPN!o zy>fpp)cEBuxTDFt2 zb%=Mtifm~OXK z`+@g;xSU_zJ-CyJDs~k$3Fd!i{jXKzIEgF<=bz)apUO=ie!DCa@VSCn&tK7 zsF(I6DYb!#S5Pper&O#vu2TxucjgqYCik>7qu?iIWRuEBy zgwWs+Y``rjxj0zvOQ}>#877pG@P8^4w`0pQUL&ni0Y&Mmwvi~<%h*uY@X4K}gg8c; z5K9R})c-@=n+IEd-F0GT|Lu2ud%xGOH?_K3t#0j$Es!nC7#m@j@j!;9rY2-kP^rv6 zsZ5e7NJ0WhB{fVz2p)R?Ghqt`o82%NgDu&TrAGVG-RgaP`@8#ZJ!|Tm-+gUQFkw(8 zl`h+5b@#iv_jk|vuAimk!~Q@kiJ(!EeYd@i003PwNkl7u8}a# z1H8UIsP-b;Ycb6ol`K6~Q~nS9>pfn8>BhpD`|r&plmWJvuTlNF9yJ)qxo}_==tdC& zBETrSa_iiuKJ)WG_vv3ccodg#_|n_w?moWy(f8k%XZgtouC3kLx_IlApZ(;OdyYTy z_dfoEAN$bvBj9so1OUC^c#>8cAnJ!w1CbR`9C@{|KC;=M5~7mQcvw?B>wXP$EtymakHef3-Nhb^`im}wL6GhmDaHpTQv9TEk^Ksl(ys)91 zK&gzB6{zKfY=~DFL1)fhTTLR*^PJU)uIv#Pnm92~DKNyL9|WGSjgol|A&jEP^J%4Q z!-Xi3g@BlbVUVTeC@=hm!Gv_@=H}+-){25t>;(xk%(gKI3fmL|Krw_courLc3mG-o z-60TpgfUE*O#;B?YE$>VwrG<=YHeQ@Qv(&^m9&x3B{;!_?Jh8b07@wkMQ(Pi!5(Pr z|NjdB@ANcg3SpiWK47mjat>=+8?LlZfUw_66$GRZ8Pxju7r*$)U;L$|BmQ^)!}}h5 zXtgNv$)xXjlbQX&;ghEayZQNZ*WY<J^Uiue4`Ga7mxfH2tIHG!^L%WdORMgl%IYnOL$ z3Qbi4#BI4Rk**Bnh$>{`H1qrYteor)fliBbG8xuWLSRaQFhREPo;G>TZ_CY8Y}HOF zWf%j9giv`^VoGMZvk>CVt@VYudEbxHGz%EgN;#+?q?9Vn%Tn49OsC1fd1T{yf@x~| z5U2L+pr_bLmqVu^td(}*T`POv0J-DsrM2yt5jEIjzQ(p&cjCj!VTb_28X+wmztRaj zals{2jIksP(@D0mzLDp-Rzg-zgbUb$31h-5UX}$wFpgpt(fTaevd|~K?>XrTTjg%A zZ6O0%oi-uFBiMWsitcYROMTD3-tz^RGPj(xfg5HyW9B_d7lH^&sVfOWKY|EWyg~#T zqqrRZ;&1-!FMsAUCm(41;Ez4LaLDfuuaq)nO^6T}RwY4xXL<37rDMwnS}eNpS1+yo zS3myG5A8pE@2N+N0=)j}`N24w-G4Yv+Dd7Npu(tfts@3d)iU!4*(49K-)L}*HV4Bt zWeWsQq2y$wGNp?&^bGYFGb|=uA_gyh^{in1?)<{z-+q)eP`l~n)#T>&+r8avZ4GSg zO5imb^DP{fTr1|s+qbJrZ(Z{XLMw%s4#N-;s<@V=hJsMz0Yr9-ks)XtdJ^!#s8^LG z)IbXDc{X|jfV9IP*UAvO?g8}F4x%cnG@Zm!5W)f0hPhH@4i26;@WTgYPuzd~*)MIp`NEZR?_TZB&59xf&lT4>Cj-MIYhvoCz#fBKOR zJo7*tW-yS~)^1$7wz0YH)YbvWWl3h^U}bT<|-3OC_fEU$*`r1Z!hP+h(Ghe@SZlHLn zku4Gdq`H<9gqTw|=+Mq}(IDUy7adL*uqaF^8mMYwSb@D#bI7X&za9I@cu+Lvy4Q#4 z`HSasF=B0U=-9#Jt|K~I(<(c6_GWL8MbUxoEIoc7>#S0Ng;Ev3F-1)^A?sIn`?rP< zheu{WoP+@h<8n||g#Z!WQ-C$-@O*pN*Q z&IlFMHH>i%gM?_UT)PYiA+{HHdhT3GNH8)8)c{Wd%5e!GV2nX$S)rV-n67WF`y5gV z?cDAMqcJE-WK`&Td6s|ai(kC!z~aM?zpt1K!=ydQxBu*g-~XLI_>F7ZZ!I0^o_z9f z+}c;^s*xnGo_Q^+3LMY;#veWZuRryFKK;S_|H%*k*kccV`~Ky_z&)%z<+T6X75MAG z>2Gyf!QZ$-_w+uq&z!$1Dr-Qh+Mf>s+Z zALy=$YlR#kXq@DRheAjIkbIKM(r1ZK*_=PTBOe!o6+zOo=^a7|x6sX=VT_LG2xh0>$ZWGHtTQS*%`^_4Wf zp-oN428or`g_93-%Cdd+%Ik9rGf`_Xt3u9km;_jXowd#Dmp6)`P9nbnJqiH_GUY{; zl^zTz3rYdG)U+Ay@ZRorR?W<3snT3PLzD#5nbqFVz8>^B=DLB}jS7JF7z@L&s;bE( zC0Q$rpb6ChW6Z<0-*x_4p65}D!JhaaoZ4B}o)-oow--aMKy~O(XzD7- ztzGL&;!eMivZ}b&fU$rO&mc;Oy&r;S2tww006?jY0LmRjbVtrMFY>A~1e2;NZ*Fc5 zN8@I*CC58w&YXGQBc~sE{E0B>T)g`BFZ{~C_? zUhRJ{Zu+Y&Z{b7V@!+rg+?OuhzWR&5`mbL6`s+XOU;hs?-8p*!Fq(>~fPZ%g`OWju zZ*|D`rdjY?B8lE>3AD$4aD!qq6~n8=-5jK&wzo9Kc4i1e4Z&7#>%zseh=Jqx&hOjb z$*RGm=qX>sjR+w<%7z|gLE>wPib*z@6mirJ5?E%#-Qo2?N}?tSL)gFFPs_*;LrR$7 z0{YY$*%~J)XS9~eAR(pT6~LMWK5N9B;;|MPQhpSMkQjj~&Y2%<4F*xif9S})SLM#1 zoqv0GU|>bFVVNw3cb!}fW*cjlWKou*vEJH&T+UOkQ)K6pq?P5x=B-{j1Y`jlD6^`_ z4Cs$Wa-1(U=6ydbbg2OJoAKJ^3-8?M%_7kEB7~qvsa6_KgM4j^vFG#Tus;|e;IzV< z%@%64dRyzm(Rki553{tO2>KXu&Up!AKk%7P+?gO4Q^MR~mImI@*n~EyPrY}iN!rF} z-!oFlQKt+s16KNT$KQ6N67+8C`wR0&87s0Av6f|i{bT~H=)N$!B0JW zbp8N7cl)i*ir4DQNio)>8U0uZhk z&j_qbBi&P>MggsXzyMMppae`q$bqUFaoi805%Y$S3=Q>-P6#bH;Auu7=(f7MW^8h} z(p^TAch=s#BtCGGG!wzI(j=a0b1;!UK@qVHA2&#PK!yf)*Dk&>xVGDko4ch-kie!C zQbHtH2jd1rk*4({jXc5thFD7^B~Z>n-sz&+MyRYRV}$QhH;}H0rLIduwN2S%=zsVdGP@uSXA6X9X(8O8aaFi8+K8mtm}XPj-1h43O7g#EHC1b~=fgn>q? zw$jrAQU@Tl--wDRMWUJvdQpOz2d{2i`|p3|C%^vsYamjOd}QVH2UdgGLaJV(QWi@> z4WX*lQiGj*X0E+BD{kI+;lcMGxbo)4wR2Zz7Vi4m3oq~AcjWMaB_%X)TSMfGqrQn9 zQCZMI7Yrf63`tB(5mNvQh@lSyzc4E0dcqa)LW~I2@Yt!tTO0As zYnxTdwaO=QQX(O+O)?&2*g!6YbTD8I3mPFdfgqQSFfI`4Q@>~Em0_VIih?+Z-IURw z9H~lrs0u} z3=D-BDrJN;Qk8j5DdSZ(nq-Uxka${2p|}x}FhMWoCjac%m7oU1AtoDf zh1uEMnVnr&zrAts!nJSvj?>q+UiKJlcLJT6FvMv(Zu+PZw9-)~D^RGB?Ztv5%`<~Q zCGtr&79(VG`H_!4M$MJa{`}X;O!xGC4=wK7p9yJ8ntH=LbsJGo87-BENf0y$LWTyx z+`QuI^5vT)ppXT!-AQH|vXF*gj*Sda&kXZ+Tg@$^_9AICF{b%wvOdNeyJk}OLIFcN zBv{1W5=0Z^w-}uRu!X%@uZv_MCR_xR!XQwTqyVL5T2{($x1{I!(M(d58ploANF$lh9Fr0~fqXj|8Cj=Oo=atWF;0S{RVZ*CJ z8yO?p6KH@5CUthcW1I$zjYmLAgfR;Oh+r|yg_NPsin5Rz2FdJB2EKOY<>$|>-`dT) z&1fd{ib20hv(d2E>MoI>9kv@_w@^@HMs2DE&_+H7vxd&`6cdb`+*cHZ&;UOQf;eo) zaBeYrl@_IfPuBjL`r9pj2(IFy&dgXz!e1zX> zrm9K_W0SRZyewj*Q1;j`(rUCP=>%h(1kq@Bw7tH)v)*gYnQ>1FIQF~-gu2Kz;Q>%M z&-;i%&7sgbjyn*m@no1!Qa-{&>zSFx>X9~EhAe6??ptlPx|6ho2q}AXY&ik6!O{R} zu!0OSj~ci3@i?Y^BYRbTdy-z<-CSz6JIxsZXeI@)-FZg`XszA-iyNDh-}_Qy&fA^r zZte8Ks4*UjE4PZJ*#*`-BD{S)(S%xgoL(KOn}uEkp2QS_q7nj1NoAq59#1Afm^g0m z?Vam4Cg*$G>oNyHw91l1(Khf|%*IkwMo;%s4kd}E=I{nPjdacnV>Bg%^Kvc>8(5oa z=y}xWDQ?<%qd^FXl03@_!U4mWGGwbGZEJSU1-^qzcM}_gpisQX3QB3E1)}x@8bF{z z+IZKlufOo(WgawUy9@0`=mCAR-{06S zz<4u~##@Bay5is|B`{T>qZj7MF z%UnW*qT8F>lOk;=G4aiId*SM>{u^KTTC?K;=Q&2{C>`<5wSIJ?c=^Ki??3x$=&P#g zQ>k}u79vT8**F0ha9c<~1U=-_zz1=c0vr+_g+t)R90?_uZLF|N92t^ceEwbUDF@wWqOaj{L-Cke6 z_2|>bAAI!qTW|l>(qTHkRP!Ci04U}oKVY?=7$mUW@%%6n1xLVSlbmCoj>Xo7iXLu+ zeq;Dr9EWAo*CD-XoKIoE|9IRFb1B70pTTw zgi=P00mD%?7;KIvJC`q?>-Tr=JN@9&Bi|A!w~UJAy8jllCTst{C^ zHMG}+CW?dP+}k&wd-3*_+l7Rn*#Y;RUViw#69)3P-+Y&#TPN>%@a|*BZ{FJWqR96= zt^l&F}fFQYe!q0-VV%ZSH< zC{7v)14x&G`jm!YXK}8%I14-?w9Lw~pJ&kM5C>W-$IZ1}B+}CY)q#SQPiX~FmFKd| z5j4a8t`Ajbsl_PP!iY)$VGuw?Q4I!Ti0lyr2umRej+uw;KLX(_PF;`c?pBStgC1fY z6GlVEAVj=U9s>x|v>2!PI0}IcsQ~nL25UFAU)J;T?R7yx~ zl*HHpxgCcdQDl&9HCYgpek!!&T9m5V9q%4{JP`n1Q`2_hQ8-P9{=FYOW-efw3RGJOSo%OAY*RH<$+RN`= zdQ0j4c)SrO_^!KF-a7x6w{P*CL2oeXNix25bM4yab`PIc&-}o#OmC#w$TzanXj3zj z4$+stIC|;z;@*d54jw&t_UzTon}ND}4#*xu`1<8_hL@xyNvqMFZF?S5g8~z&iHq3o zUAhShwAFxbk5pPzjqcpzPkp#M(+(GBFRb0z9rqipcC*#x6=RFdh!Bq<>X`t{dlYyK zKxA7w1bwYxdzQ`}Ye0mAz-PQM&rTRbCGbE6z?)2Wv0s>q9Uf}|imwsBku3`|~d zVnCe4z@R)Y5w6isrm6&j#PfV8jB_ikYP}h^KXO`yz?f2Tr2vA=r?lo5+bGUMpUiaP zz}wy)?MT4OGzD7Rce-`-u0=*Y34kBOm2^Iq2s;;g38fme?ldW{E5O^evShLl9s$Vwi*{8t-mw}yufv>tls z;bv=ImQ)F~yHPAHHox!tKK{F(d-l2K-kRC>01d&UoTQU66v%MtKuAhK;N)T*ZBP43 zY9*9LG;Gc!oo*QWsVu{VeM`$r+MXI3MU8+2P9~=U6hOp~j|I>gD9`g1#FI2v9Qp)H zt+_Oi(tt5Spb#7eq0f*rcgL!Z653z~<1q+k+T=o0OoJe-vXKx)I}SXGnUgUr%gX*3 zcGzT0uz?IXpC>JqQAnCH&w&y)-YZe$lLMXhzQm`v(vl;frQnRvW}}4(taw(H96(_V z7>y>gbDb#ho%+9$Qr1#IPDHx?r4c5K1R4TWDZ&)PG#ib4Pp%wTc?g;d*RSP+YI#0N z4s{b|o_yk=)y2-mOBZQlZeea&N>C~rS^xw>X{enZmOWRxwl@%3r1j3GRQ{{ zoq8x2yM|>4j?No21Z1L6DR_yX_87AtA0bF7^P?b)db{HS8b%T&tI61gi2i`T{q`^& z@tZeqZEcPYtSlh{nCIU)xDIpdHljjPg6?brjG5jDhu~9t+M9ouMc6mT{+e)Yi$4fC z=Kui47yvNKQxsY<35?*SEP}qHEVLKz#Fs=dYhUwjAF- zpH0U57WN-Kdh!dOd+pNeFYSN)!%4e?0ip&%Wi+-Op8fn7$r_@K0FA;35~_8AoS_iZ z9w7m10S|F)fIu+{8K6oD4XG`pkkP1S03u0<1{lRYG+JQ-AYeX)2x@?Z0?^RNqXEQH zN+p1;xB>Jq!4wf_D*`Qrk{m;gm5Fc&AZ8LEBb^nlQNV_M`!Jm}1TqFlP;(h-7zv{U z3F3JyiXxA(YBYompD~(cLkb0gFp6SIz44@PfM~UwHdU0Pm6g@m*;xQ2vh@fh_L+cs z6htYFqR4&ohZu+FH9i8B`@tKAvSkuDILob7gbeeMMhbcXO*ntc69yL`M6uo%+Cnb z+uiNAJG9$wD_Ny!3IL3wmQr|qeJjh*iQ`9=R9}7e^3H92&jES&%Ie|*74jMYz>7&H zcmLw+XWx43)f+dj00hf2?+<#5^NWwa?}-n7`%_Du{gvbx;gSmkkjFfuxTq@Zl105} zwCw@X|GpRCPQg=yNot~}F-8cXoW-n7gqnvi?oYNp|ApUr_4%t0d}Q(I@4nZM;o|-< zOi~HPb4j^+q8;G)=&92=fM5LeE3dqC4tcd>lw<*V&3xc}kK!w<|NHX85lc9PcdW2au3-@19>JfVRfMwF7uekP~^#0Ue7 zG-3_XI0Q+#l0ZMMoc zLhu^v>_QkY+P*D>v4^nM!d`3&At*(fBZK$NdIPSF=^+8J5PXuVQibu1AGOpl_q}Gj zJMa17SSaQ@b8jt)AvF=nw)5Bn0BHq-FaZ#Hq2KDXHn%ob4lHf-&wlmmFTd}Do%w|& z#!OL4tuQ7rfM77nlmuZM5eBw)w<%&t9AE4Y2F;?J0{~(#02KhA`qZ!d;h%kOW)>$& zw7hTW;NgSK*1pN4dF#gd&;RS6{Osp{=|}$YkABzFe;=DrVZ;biLQKZvFp2p-HvB?H`n6V`d)4%LWYQWQm!G&ct~KK-ko{?q5a{P_1Se9sR*e(e7FNwK!k zyU-hNCk@Id98C%!qPgaY@A||M;+0=}e(ft~{-m+;Xm^2)^GUngXgAvgR-@q-#KR-U z=fAJLboN58GTxy>OS7|vfE}G15ty&P_|>CFKe~8mA9(FrrA$`vATS0ahyXz~4#Otn zX@!Q7Yy1qbUl76u6NfQ#P*GSz0o*sIArSQ-##N2T)Mk6`FCiz|MzC=PTL#-o%a**r zAc>5?P+=^cz!%m4O54IZ3cpfDNoWH-B5p@zoR+&ChGCxG3GY$F>%Z4}i3DP!mEp zyuUIM84ptmD67qSIg}EZ0zlhtNksrbU&d+RJ#Qi(DCv2xU+k<+N`I zBp4Blotv97lzIUsc~&Yed%gb7*7jsF?)9|9B5c#yeJdFIgm_X`qD-X%RhfD|u7oNo z6(JKP&0cR5`mL3NGn;F}8*A4+)ZE(DlM%ojaP(pQ@cY_F?pm6e?J!3D0EU4c)UF1soixv% zeS0`T2kyTQA%d6>DXWUIri&r~_q1bb={exIeNNyB8RCY+uI8{gP%G_@EtE)VVC&g> z!)P=>00T{H>tX~90e~1yfTl)cgRyb!Ea=VvP}*rnIbu7&$RO#CAJhs+4kW;U*vn}% zhD{_GDD2FhG$2sblLT$AQ!W0xCy8pKp3}{(x4014j>b6fjRQOrilnT{a$?&M#t@c4 z=rp-3ri-<6WJX395{<@Xr3MsR@)BG^$O9e7jMZ(Az>LBOElm6V)Pk71L$nVNkt z3Si>-LCpLZ%E~=&dj_b@X!au@!m>(?%ZyhNaN{G75zp489=Unr-Q%t9k-Lr-dVOnq zLZD&Phseh`pwvqm#6T^z$chZpcreVMkf-lEzSSwtzj681=L_1x-}Al4zVmyJ&M)K9 zWNS3Ot(9(~MlP5=IF-LVckHQW?%nR+{^T$J%!w2CK6c^*0BcG-g6OzEqLc)U$bM-q z=YC79+}~aT-TD8Vb4sb3Dwwh?f9rF<{>z{F#Un?Tf8xLU&kJ<<{Ke-7sS5S;E=bD9wh7;iaW^R*ts%Lx5Eh;cBRR zgN^xaSf$nO##RCjb=va?CvTpAceiiud-5(rV6PZ!Of?eBwZGUH>?Z86HW>#HW8@&C zU{7&M+asVH)5#6ZZ1IYeQ(x4;>GcEq0>l_d?djDR2;zi}5LAx7<<2{VNNb`M(vaJO zW(cs=KY>pRPmB$nU;KheijozDQ+~vdVEw?l~R>0&79IICD;Wo zNJ0z-{qba{l0rz8PO@Pj9)9S-xfOkD?Fwm5x^akUI2=}@FpYS2I4H9$3qr5i?no0W zBM25kRcVzSIo7#$HEk?Rp8o#m{omHs!PVEVUe=&&x04|BcSg60lzXhr{Fyf{ZXR5E z;Cud~r+@7i|LE5~`VIKNV{>eYe%l_*ZpATn7ODjCTWMa(v3-Nm4O4{} z4t8&D%9YVWF=Hz2Px&tFTZ^8(v462(042^&HwHfJ{iocAKn)NSVj?Qb{kcxofDy{WEJ`V zxj;t0zO0H#S`frAvFWnYne}{_-cE~(HyR-&9_NMUgNXUi3sSCxP!I)3%%;OIFnV>N z^Xe<-Pu(9KKXLkNuWwQx8!9U(G?V~qhBeawD@cLyfkR#+tfApXbDP4og1{BIH6q0I z4G=r}iQC>dSr2<=6$R3>)wzw+1`;e0)wq&SDr~EDU=}0%&O8hk>M~ zMgT|=^lZ(A0K&@VBkIr^+QoIZlu>)qPhjeXVE+-@e%WB-7>1YO+ueiiZBWSCxwM=U4}6Mh#7k^9m!blnQ$1Rq~v9#l_DXs*TfOXfCf@(*Czu5 zJpg@CQ7Md3OmLe=YHm)Mm*aBc0EeKGN;w2Ko|?QFrJUC)fRqxZK{{4igR12H?cH>H zhj*gu*LP0N&aN!&-%77fCa{w!$QVf(#S9dJ+pdJ6&_m-<)*qZn2X?Oz!UuM?5a>}!@;S(PdXlE5QHHqOgprkwySMx&Gk*bl&!n^(0l2M&f6H(IGm zX(eZeF0IQk++!vR4>6Z3cpw=OKHq4Yy?!2>|kQ&L>6boFi*}8~cO_!W1H+ zYriHNATdTt2`;K;Gx2ok#}R8acXziRdhBF6-29V2dh6cDmiH|$W8{}bD(IYFp!S(H(>l6v<+g1z$n9Gc7%?$`JneB8Nel;HEs>H3R zO*l5(+q}8))|ri0p5KBc*xbCObdC_p%akP^!=BN+_T|$xTU0xZ@mhAs&4x&x7ryUl zEx62mk05|KFO@RB9~r|CBud)v2P5JFvpsYD(Z>19F9TX!x^*?YIC}I0hhBd5^`j?d zW)|j0JKLSv7NmvixP%Rl3=Fc74YwgQSeH6ax45;X&kO)s$OTD0F=E=l@Qb5W*F5Tb2^oKXa%D+FN^{N zd5|zC5orI|sro}(^g~Y>Xq2M`*^VQ39^RN>#wcO-1#GFUFoHft7@Eo+ET^2Qwc(YP ziU1TCz#t*bBp~)^$vBL7A(Jrh7^p-Rgp?5I`-J%fp{cZ}5V|T0$`C+ADUC5?4tFG_ zVT>q>79Z8aA&a<5sw%MjvYJE?aaLT)~((Ec9I!Jh}J10rqeac`_Pq3 zH^+m4$0$Vj+Gl z3pvtYbzd8?d}nY&gNpgg38C9?32Ja|-Iv*N8z=yBUU@Xc8t}XXK>87>bmn1ZDA?Y< zNk}Ih_A1U-R}YLQWp{S}?9w35G4(nMMo?j@T`z{Qo3$W`0e8y92BI1_xu=utMjlRl z)R9FLur&{^c_OvR#~!QM0CxuvsT+sdzuGyv+k^;Qf#Ejn4q;ydPNs@}u%_bzYz)zE zJnr&~%>^!YBAZjCi=+}FgIt1js5k_T+*8Qa!WQziDr!xBR|sPRWR_PUqi*u!;5P_T z=48+@am!BoBe>>3+6bU(kANBsq?E&s5{jX_e^Lt@T{)6YH^o3~pE;Jg5?b0O-vMWY zfx4M0vbi8N{54i7*Db++T9tiuEYnA9rT&k z+ug{^-t269c5d-Izw6jnzI^@qu<(AAaQEp+g5& z_uqH=6hUMrn2&K_w9TT1>pUv~fl)Ig^_K@U)~eQ&^z0WUwbI&SfwU)Hm0WJD4>vY9 zFhw)1<|}W!dF|$w5O{XxKoTA)Ce`YJh1*+ikJG*%b}BQ@vZ6J^;(%sZHO(~|8jXOO zLXvE)fV5}hRPJHw$E@NU;H}<#4_`0}1ZV&MYn+*hoENLZN&D zsL}NX6+=jjD}1G@Syql6sH8*MU}vm4)j_cRBB{B#di*lHF(jHL|qT={!mT5foqj>Q!7K5nm+1sm)ilj z4Oaa-wgFIblBV7L^L`jQ(>tdvik)O4Mvg@cl+tK#a;=;(9>G-Gx=PmbYfL?;sr?P0 zq~P`mNa!q639_fnRYlsBb1oz(DK*yh$3d=*R#G?xtXg@(cENkSB0z*7C#K>SA`ge$4GAnF6sS8(D~i~z*| z5nlTQIFuKX8l^d3=ynjP*4O$W1IsJ--MIGF<*P%asxz-&j-u<^6VqIX!r2m(`Fj4! z)PvYzxwQRU;WE3KYR1`4N(H*0mgt-pfwl!VMA(cB)D+l@;Kk_E&?GGCLjtu zU{smqN=oQx9=6a#ltAXBBaDY)mPde$2KvNAF&^ zaO#00n>)QpCX&|vtU}a}5uw8Ml~UXC8@LI)HbMdWZQ9uBhE@&-<~E>UPeIm9g=0;P zl!AAZtZNl<1c0K%Gxd6SDp=wmn-~({5c^ZXMW2!egD8nNCHNRDB_2l6VN}(P#?+KZ;wT z8uxn}UNB}}icM}$qO-6hj?JPJkOp832t~XEs-9NGUM06BPgnNupIx}|M}K@KT?aFV z*r9tCpL(Wy{GPjx-n}Z-#EalyIO=VtlO6ERs~122lb?U&{>T2?|MI6!u0FWEvqebI zY;}z^1S0OfHR6Q3q?-wlBCBmP;5)wSm>%>`p5Ax--dRm{DBWCWs;6aC}m_ z1;5`6n@IV(f^nE|y~(Q_5fTI_OAQOc?tJUk&FtpJ=E838+I77gf)=RvK{y z5h6AB-X8Qj(!j1S05!24nyD<0`)wP@CAW!)?CF}hC0gzEP}hXDaGHj9j0L9#X>}5i zT2)d|Dfb*mZ9;}xB6~NKtFqvfRt6m=14!s}POx*9bRz(xwGsl_LS1PMq=LeJ9E@$0 zRoG|@5pnF|nmCD}u?ay=?KbLa&dEbygv>WN5@3U-N)$jy!K(^74PAQ|FwXJ} z!WK=y?)t{4+Snd#Cm&F7lk5H+-1cbw z$h}MZ4n~iCBtCWjJ%|&NyJ&aV5b3MOL3pIyR*l(H?!AXypoNJ<0ofVk1XfKP6cJ$=s-iNG!oJz zabsmQ5H=E`)=W2QHZ{aqQH2rpJvX1RffHieMFMEsxq5Ly993u4csd;YN>Ig6k{w)(>zAL=dO;U!zx?i0Dv`|6125F zz6eqb2__B>4W^P1Msr?C?%pfWgdvPvi-|B$wrSRG$y0BUZM4EvJ5yE%^#RU&fH6jq z-ZLGTBJQEGF-VscFRDs7O(7v{j)|gZrbS!L&gRCp>5mo`jIq@rj4i zaavSGyTyElD8mF%0H79?;5Nx2s3ETXg|HGv3qT2}sx0tv(xkgPpLn1db((&>J;KA$aJ03x zoy47Xcj1SA^xhy!M(I$8&ED{uym51JF^*z78rT3xJ;J3e(49&ya^kogLqM>O8UX^` zwd?w~e*N6Vvm+0qGhd&4-wz);e&0c0s=;nnltyy1zCI8NA31jT)~$4u>Nq|WM1ESP zz8{Ck(*P+gZIh0*^HjB8uGC6s?GeBTbx0f6CZJjxz&Nmio=P#psTZ4`3Y^y3IQCKy zLTX2wJ?~5Rae1?p#hslH(GuCjY0KwQN-#UCv;u{=a{M%&Uz`mZ>GojV7_5=@{5Wj1 z66$dwD_+@7iGiK9YjE2nb1a!-fBF}{_x{J8T<)F_vVxEh8;m^<09?u30FwB@#kGt7 z<~RTMue|u>yH79wqaVF*oF441f?L z%}Bv{RsrT=gD9772m_|rT>Bwh3lN50Z?pW>|KqvW&fo`69ZLfA;+b==y?k?Ff3q>$ zw#V9LcOMaMpf0(ME!(|*&|O#zy-_&{=>o#I;sUvLnhRl10PSsBLEty+ znT=D^(s%Tg97@DYM?i2-@3)rLFyI@$gj#6_qMQ0$nyJlq?G2>Op2N=+xG?Q%ZAC7f z=&e)wSJJkgM(?Rz%PL)q?K@gH#x;FhV%rkc_#}5BZTJAnY2Uih8Puqz4mz;D{oE5nh~_9V81o%$!gr04-VhG@ak8urRC5@1TBD8 z1VJy$b6^A_AqQDi7602O|EJIY;ctK92Twiq%)P_%>bYyz!j>Sc>dZB(3V5EUboBD8 zYge!Jb6z#t;qr2`JBxz|7|8m=B2Mt^QX4u!U__BI$oV`t_BTP0ATIf&8sFNi&b_NX z{PaUlf8f!}?_M2cSHg(q1!zDTL`mMyrBFu>AH98}cmC~b_niFT`KxCY)C)_q{k60# z^U4p1vVlTt8-Xw+#3$MS-}h~q!MSi6iP#n6$n4oU)r9I=9p9N1JHc*P`^HVncXwfG zm0Gi>uVCvFHN8s2vGAOyqtl_7GJ5MqRv{;QE0lD9(7NH=PXTX4`SnrUbf{ zqZY%eYplA;gHw$}n~n)&8WQ&=q*UA>! z`JeytTdeU_9al^@Y!R^f{Xh7pZ@>S&U-{J+UV8QN$^8DRdVu_d1YQ`0LWADm;&Lv& z{q6Vv^xL8pcXzK`o=uCx!$Z$k!x7xQ=xuEV#==rqk7GiiQW8VmsKGiXESCl&0!bM6 z=u^)CVUK?B=8uo}k2f}3U-} zKwyBR(Mo7aQ4R|S%Eft67*m(_m=TxxpUICniV!kuCYB54(BekZ5jCyJCJDD|`OG>< zYvXFM2Cv}Ylk1khZ7jZ#>*$+xS0yRznxr4P#WeBN1V;S{9W?Ca@M@DNR`lZ6T~v5v?75Pu6!b5L{CXaiyAp%1jwjIe-*|K(fny!Gbl znd?^ugYf@+|NgBv?z8yx7r*kA{iD74q`1(zzOlJ^c=UKaPX(yz3K()?q~C7)l_-mH zb??dTfBWzLpu0m}e(jY^?Gu01X9W_3y74fMi4-SAz6b*pMXdgyPP(kF?X+_at``Rr(sp{@Z~WGc_kVo+?wdc1 zJn!YtKK=Bw{mE)?x_GPsMZ|Eg{p9`uRPobKKl8&M-JVTXJ3a4c|F|qn+hI2ABiogm z2w<0+YR0)Ui(WgZqWT0tYn=e##Qf~Jg{XmRApzW=MCw`qG|-lGO8}R=X(0Y&NCXZf%dER#@gK5Q;>eb5yJA|N8y)f0`2Fx|Ysj z)$NZ)DIGWkx#qBIjyYMszP|p|DiPLrtPdR7)1Kc#V~kY72+_D6xdEPpHdA_0R*O}} z4Agb(^ZlR&2^)^KEm*AOKlmrVw{>CI-=+5- z-tAuiWj33gPB$+_n>+2S(u4#MQa|vwwzd!U4!-~2Km0RvJA=npuZ}+Z+SN;!+Hpr( zctSD3VHkyVu`7jghBwIIIt_6sUpHlxg5v7Jl^*lZ%P;Q?+na=Og1Y9@7$ZvR zoV1zsDZBQ6AlABevq6nPPb2XN*P`XXXoPTs&$q@R+oi7h0)Q;QJUx5qhS=awW_kRL_pQoOCW19Kf4~wHDzyoVRcY&lf!j+b2iU# zHH-6Vp$K8EOjU_W5fn;mczy8Dy0VtWRz^EdNrN=T1~;uMjgj#wWS#-Jwm<>If~eE! zBjh2%Ou(Lx}(_3Uzeq ze|@k?y`ZvF02IamkVcdFd~&a>GC>$|4$}Oz-4B238`p2&I=XfDLu0^i{`T`Pzw)9a z#s2(&5bg)9CwIoTKKK{{(280FMA|504XG1liWbYox4!wU|Mk5${?6b1%P3qF>ZCuo zaQptl!kA0E#l03L3SpLH^Dr8H>C3+m2Em_y^WHoKH(ud4ZwzieyG2-@<%fi>`aKr< zFfUf3C>SHnkh5NDs1Cu+xeOtybTVHo(nPiRmVrf@r-fMYfanIy%?IN|#KC~W?xXuB z+nd*(93E?dt!74GQK;o~nJ%ZTR?L|%oY_vDP}KQxod`93|2h}3jV?ZHnl^5!THrc= zcn#!g@)dv~bYuaS5!IQ9L5;c~H1Mo?fR15p>blk-1JAXcUFPKIY4*$pwxJ=dWuSp0 z=V;?bJQz17!MK?h69^zN4k@bLSz@rOCmJ{dqZA=$%R&iqm=DG|!Z^)xC1j`Fj^b#s zT&xx|%1|8nQfdH^X~t|0^tWyVxGkZLwi@92%8XtO#q&Z2k(cMnp_qILF(SCt-p+FM&O3*9?#NF))xPn}wKsmack9mlwNr8FY6sX! zA#zTEOYcBq#pvcKb)d*ZT1df35cuZlXXDMC&Be48w+Frc)+&8Go=zx5St3y>d=`1U z^U>j=%%OENO^gVkKEM>c_0|vm_`m+KOu+bbym6Ur?_R>#yZ@kg>9ZTXUOb!587BzK zygJZkIoKY2^{-sH_8gi_R=!V%8%5aK4?@!&)JLv0Ntsnv7mNT3pmykc2uuUWUn4Z@ zKL`^TMV=9AzFKgGdc6(g*^|j~GR|VZ-;TEe)Gilza#T)cGXer^d6lWH(XK}V*Hck> zmIGiN!y5R$UzQa_P)I?j@;z>yij)(-bZ7(%$yz4!d}ie`v@<6^mkiaLQ)va(#=UDx zV;AYsxh7=2F_0^6T(=0FgX|i7g=vr(Yv)YV)X;0ye&lF`Yp3{nO`lnZH&70(>cFpE z!^Z)52y}tm9cz&L91=8{O^s5%$NIevgz)(IxGJ;F(STEGjcDx2n;{3Tj~ZtU(|7`q z^&!(#@n_P4%{~QV5H^x(lh0De{}L6a)*>-${jEX}gKsDy>w7>6!#025%e(NGJ6 z2<5H*U?nGMmUUaCzp)Xv;`@*HB|eVZ=H|0kws+bJEJXd>tO1!)FfWBN22uhk+S}iM zd@%3!!{=Xo1tC=FkHZ%B;)I1Qn9dFRHbZ<0@b`~%Jz1OzzaQG!T)_YY2=ER*rh+ z0Z?ZelrZ277PV1mO`d`c&jFnK+gO9vV=iNV#t3S-myIEKlUOva$ObhT5_Bn+Yx^{? zyJqa=@TQHFHgMSfb1Pq`tlhY3LZA(lP1f%AO}%wp>LQg9R$Ha1(Lh%wWJ0LbY7Vs8 z-Q6aHS7l~2==OSH7(4SZ1dtI*HyAvJ{k7Pc$pWAmWwxP6*O{RkO*9xNhkRF3Q%06c z`N_jR5MvF%BF(iQYz#*>Emx}rW&XzY zPUy$)zkTn?-Tc+B?tbm{7fd&yxx!#KJO&0;5%) zNMgOnZ<{|qbv|JsI;{^U@6>GQw* z=DY9SdpN%Fyq}EyLR4WK>#{n0e8d@H9*TTNMpdP#VB+xR05ImjB0zEl>KIHgK>U2< z>IzM4jJ6a9EZExHTd6_;DL;7cLC7H`IF8tscNMg9RImWY(Arz~_Q$C}txf5(l`b?A zQWuDZ5P{WlC6!9j)B@1o7%Htj<{cazan6UsQBf79tSqpU)un<^0&`?JDJr342@qhE zI5=}digkHR1Br7hv0h6KL~V^muyGLrs%iW~+>CDZ8c^f<@Sb!&-&fy6}H49F^^xX8t9I>(svxLdAdkyJ4OosgSK<@MTT zffxH;TL_q}+_a|^P!buf%c`OTwd0o7qAGJl>Lf}k;Y^b~=M1bYa680RF~}#-5?2oD zcDHvlSsqSO5XGXkxh%=aBA<;v{$!R%qf5T$E1^Bl4=}BxrZJc?q0#=y2@T_Rr(-x1 z$+Ar69*52=ARi5ON3E+_dKB4hDBF7vXBHFR>(6Gn7s26XU#fDoN&qW}DR-~#eC^k~ z(e9Jg@}xWR27}=G4KmyilgR`E%P=SP@^PmdkO&#qG z^Sp+HWeL>AV5uSmSe*?(15u;4*8rZ4QrZ}waknqDb5C(Ouw%&>V@gq)I{BV1RB;#s1 z3EREhc4(`tDw>f8!!$C6=9$iOBQ?k}>v45-bZ~TdaOu)$Yja5I4`MN5+G%5?c~z<` zjC}}+1`T8if;u(AT7x>GRC1Om1$_zF;rx`0{KHH>Jl#8-rE_81mToZ`2H`l#flw4O z#zP*GqO2yT6TdBoL4*-frs}nQ4!EtdtgJ?(i&1=G@$kum_l~-oUXgkI%?PM)IzCa8 zL|fbG#(vnLl$Vt*vZT|-U;N@Fg3)4rgpuy|sFf1}N=`lMMyU)TAuCZ87HU?ncAA%3 z3gi1E47@axd72aA#c>~4GFud@`JCfUo3%l;Z1;vDVbkN))t#r6#dQ&YsX>5n%qYUM zbQ*`@-~Yz%-uw8&Km0fUe(&SMYgfMTAO7$^{GU5gw61Yz0W}yw!$6(GSDq{W0C7TAK0wABh23ptC0$VHl4%b);A8iYLqJyRK- zLx7lq6hT@oi^B&qj?Ir(+2`Q4uXicTT!RefsD=b_uJj>?GFxSr}OM{IA0_Yk3YG8 z`u*?x(O|gy=G%8pKa%x{*R9Z|kh58W_9Wt-p$w6jBIYxJ0*ZhMc?vbfc9Y{uXx?oZ zYxDibkl>)*0uW@=*|IEIo}^haUnbqr_T}q0kr!GBD8-c2Uu%n9fGq&nHgZ_N;3h$@ z^G~AcWh@2Y82H$@**{ROD0Z~q`frd!iULd;*Qzxc4>V3lKm&&#hJO7^5QT(dV;R)g z)@OjhmYT~@LJsII7z<$^8=V*JsAd($ZBgdW!w z69p_1Lka5*O=*+y@jPI$8FkRse7+>I(+T3kM+d9b@s%r2X;Bdx_B;LKC(GNnKDc;c z!z=xdp4=-%d2Mv{!3PiTKRE0Ud^lu;;wbWr^;AWTi6f6|q>4pVY7qFXF85cf{NN~q zkXpm%2Y?g(($yVrXXo4h?FZlfqrK-pv+@7G{*|6LRL024tkRNr4jG6L6;iC0tF8X- zzxwC@`mMKr_~D&f{dnuem!8|+-8wosPSVAN%iG#WLTIPc&GUJu+vV7kr6Pn-%<4rB zC~(+(U@gbqDqB4{dSYBlQE4GnDMcw%p;aZM&;VT9jhOF^*fV)jbldHNbpOUv*N49_ zJUlqYB>4PizCK@+%cLkRl87gj9v|+{R@o{mS6L+;%pL;bg#mB?l^_g{J8g(?R%T%o zZ*Oe@2xZoxjPWdE5NtA(OVWxwg2BOqdy4sla!whc6rX<)d^UVVp2vg0cUFq7I%a@S zM}pKyYum6(?ONDp-JPq?0H++@7@!&i9bd{hO}o*s0-!WXC}BbA>Rv0g0>D6{WSLis zDbWSC2FM(mvMiIS0Yi?uqY=mY-r+&Isu=UaD58W|VAG=UiJVO{`Q-5-_vqI4;P`M~ z2)QxZSPChGiXvYon02~g&^nlmeNKbWV;*y)VJqwR%PcL+N-`e5@Y)wDL;Ti;Uw}J* z@eU7LufFdUX540DDw2tqX(uFUbwhz0$pY4(c@Vhwnn2Z zfRL_iJ{P32URCTLo{UeXqS~~CzW?UqFTDQcul|3%XLgg%edco=e>ho85Tu=`MOwU0 zMvEk`s*3p@<7By5w!1Ba;OXg!=kqWMDfW#mmf13nS^xm-`d_(DeH=j05YN}0k8@m^ z1@%FX5C-)NGys*dl~Qu8S5TLKT54AX0>daLh*Wv8S|o%1FbtxiD7bSe)D~76NM|>n z3Rx&s3YBK%Vwq;S6plG+t({E9S)MDc=Zm?lUsFw{)6?;|ay39D#41@CYx@1Z6k@(g z!qN8i*Iox^nBiKM^&D=zOIoOT``rV5L#l){IE033j6j4ci%rsu3f(J%!@C4 zytn`6Cy(sz6@K}uCA1R;NNJ7{qonEEuClZ;7IUrvl%gUK`iyX^fUJ5!aI*Jsb#k=Z zZ=IezOqNS40r0`-GT7MSLTTo+R@i;-of81T&Q2@}bFja>bRlquZMn7O`9W~!3m1O- zH~;ou|Eu2s$|ul+npo|~qRBELm^z(jpj`KZdyG(Gw3$s8K@j-9=csaqVC+!!fZ#d= zx(>LoKsx;n4C{xvCK)Q2w zLP{M({uzGLB@$=IPP^Ar7Q|7j+v&E#piEYu zd~`QmO!MVpa&VN*7e*IVweUlF@#@xK)2~#P&TAShE5-^xi-s=u9KxMhCiq!Y0 z=cDO-7PYnw;CJud-amM9;ljn|p1*PB$_0es{{9n6kp<@D_+&m`#c}WQ#Y>&e00I^U zQKvI>r+0C5eE+-u^G^dm{`Ft|o1c09m$bDQQmcSfraqX9qH5|lhDjY8gif=ZQqpRL zTIohTPn8B?OntbVXI6u5Hv|ZX%0LVVH+D^ybwfo5ok12mu-JMgTAwm&1Khe0bZAOq zAqEOKGarg6b>i)KvCJ{CaTsK|W(-jV*Mt)XoG}hk3<02wYv)%E5h#Vj3etKfoeR7) z$QA9rRcDHL%d#X6YLh8dh-#6g^VKph3MZ&*D+oUZ1RY&Bg>PO|B^?XzJVmdp9#a6f#u+6`R7$pV9y8I7Rz~7Wh`REBi!SJ5I_KOngUKo zrg3~`Ktl+S0z@jyq85N&s&oY{<^JuD_UFrDd$bvII_gmjpjF1n9$2jbB*;P}H1HWr za$ABR;jW8gaH;91f}!x(}m2GHXe;Q^^&vzh_%DE(vmmb1|Yb zWxB@D6@fMPZ|%3*%=nxv^EuB7H7rEaywAZhO~WtNPUwvoh#OwJcDkNtKfW39y9q2j z_sv|hKj4{32wo%jjb5j2_0MlmtHuK9W@L?%X`^{Bjq@$4>e}UWk<8)Q4mO}7qdl~XUQrlip*N*d7S$`g-F!fodoTEsZ^e)N*0vBLAQPJ!uHiG z7cXp$wuZf(jSXVd`#Gb#<}DUThs3BqwgC-L z1)u#YXzNc$oQ92)^DZ*WGk_iZxj$<|B}aBWM?S6>?>U9!EI9!` z|4-}Hz9y6W%+DMCKgPzcRqlG|u&J5RS@u-lOh;=3#I0GYT`zqNu`$gZw{8GwG0}F- z1~li!t!oMwa7OhaRc0dO&hvD0BEg&Y#Naka^{YX&V`Qa3$7!WZXCYO z)}MoPHfpNwWm=o#4Q^_Z@|{ z5w&+ZtH8DJOk_!7It&2N zpVss;#t=e`FHAw=x}jB)MYlP~_5MgI7=_RPjAO%z2qT_=6RDLLJre8AII%>)rb0HEe?2L=XQ*F^}quFE;MBs&#?e{%ha z0Z&^s(XO$fW@qNkojWu%G(J9l@4ff-_xEFrYnpMY)}I*gEUSimYF2*5iWT?YfB$>l z^PY0KeB+HbKK$^*HTImUbN$H&Jj)`4BuV1B?*9Gzzxvg$zV@}R#TZ9XjT%ZRLP)t>zV5o~uDtTfb?eq4geE2?gb+axNGTa(e+tB2z*Y0ZTeohV zGiT1ab?YW3CJr7vh!6^bpi-$&N>Aar{=|T1SvAof92|5UXZ!Z;U;N@1dwP1l@P#kj zeDlpg5Y#~Gsah{Z9{>np1b}e*5@A3vWPavV*k9rr zlkD@e;g+XSeEKI-?9l1@)TchRapT4X3l{YB^k}V@ELqah(h|opW9(!oFf9Z2d?zV? z^32a?z2r0?rMac(Q`7)I6O%wHStlv+Y@p@8i)pG2Da2=t?bxxSySsbi#*GM}j*gB( zp-^96AIHhl7&-MRrq1^imBJ@~^Ly7zjsZ|3u0aZe!N9-}M36?tAft_>7!x3ba==eo zh+6bibFC-2gOEX>5CV-bBD_X0Vri%-VqB2JJqLPv58nRE+p5*j7}eW*>>vN}y1)-G zG8nXd69r(;hBP8z{}c#ds~V)n@#n>Zmz)!xl0ZNjkV;c$DJ2bxWo(d+WsEGj?a%G6 z(!)=t*iwk8l{QtStFctt*ndXHT1Upj#z-R#$WpnqeEF*7D^|YpRj(SK7+<(}aeY(s zij}J=<%xo7qN<6GB^XQrVQtBd4Ae}KJ!Q=t!T+NgkWvvNWQeu$m>^=EFc@%|s7B>X zkV8O>HU!~myKWVxX0_80mskZsPrG*K$@e!1QSNg@*yR^pQk|Um%XhxBTrN?{JTLp- zKaB!pj3$6mO+=Wa)WQHc`VuOWC1@T-#C?gKH1`cpt zL!%Ix=8g_0TNh+=ekRCfa@lM>6+w;G#>5B{Tw^Up_<1nkC8q(Y>$L_ROQkdb=S)Vi z%UM(`{L|lk^!^7Q`ra)+ZJXIGqcUaO)O@vd1*~R*v^JjajUL?lz^{HezpJ$}I@sRQ z)Y{y{1ar9ICh|EXILbHVUE)9mNh7J?#-7d;kA>B0(u-L&!J&pii0hi0+B@b(l6B3V zzv|rcXUv}ui13zjON_n}2+pa0pL zzD-@%V-BQDCofGWjHjNhF~v1aP9GR*Kbi8vAQ%Bqxgb+6j$ZfIf3@?T+grGSu@ild zZTs}!yyv0&?((yNRxzXGNg_r&sTc^KEVT}FO+E{C7X%Z)%g|}ZlW40hXlUJQ-;DMHac>-@Vw!H;cB7^)p)#6RfroN92qIjIBmgqe*6P3-$;m? zZt9?yBnpD5{0;z$(-#gHf-y2W0+e8a6KMz*!gU{e@Hb!n*axoIurw)*$0T#>=0_hr zGTbqDu9xvn%d&Yc@TR7oO0;FYB@dH`LE~q-W^I4?c43 z-~Ig+fA;4*lef}hff&ZzsUe0?X^N1;Xw70iAN&5IgP}F-4qy$DjdYPjL}Fl!d9tLO ztfS-6>;LZEtx4Zy%iAVOg@k(Bo;dNd?Y#}l&(5Bmc77nF-Lt~J@thV+5;w+JK zW;Aghx7TGG1tkO$5(1-wC2wq+51&lQYLX2RBFozv{^zN_y-L>Z}?Ko#a=isq{-Uo7& zt?MqRWE(|ebFQ&9swR!|meil~imem)v0?q_zPoS7LFvJ*91e73ZgcEmebPKF>_`|b7Kx;?B;^C=KxngsK1M4=ijoWXZxNL zg~72^osG*|od5jFKL}1^t6>_`S~3r1>hq4z3CG#SpuRcN)SB@)Kf1rS=ZU@R=FJ@2_t+2q{oj1SV*^Sn3I=0PM#rGtJZtO7 z*Vp^@w6g7{jFFyz`%kj{mCf#Kj$TzFU0lMQ4BI zXWz{>c`v`>ZDFP0S$~=MK}PtrKF2#7MV1=}(`?{@6UQd@iSI&2X(hOJT#Qu|G`DyS z4JZ{|3_wVlZvgbP$ahKsUaUS~D%F6oPGzTNiXi>a07L^*m@7;PF&R|))~Da=jUU`} z*@oleO1P^8rQ77;L6uPrVjjUuBk;MEL^v_wS_T4DXz!LN^|NKAi+_KpV@)B1t)1wokN!er|$YK{m45BJgoM?$C z0feM9i9rStL^yW>?qs=eriqMky7Otj)SlBv?UyfJ4Vc=+18j)E7A=@`k15SC;MDUP z#3-h!@S`vMZF9Bfk`0SS2M>vC%L5M|>njF3MiXcK`jxMEZ9;M}Mt)1qq0~?e+F+?@ zl61DW0AV3vjcyA`eIv2$>Ec6;#7SFHQaXa6qyiBHa3w%7odnv#Uh zZfLG!6(PU~qlh*J5sVY1EuA@MPB1xMPBg2ADo(V=Q#+sj|L=sJPGCK+^*_OYnt#Gz zfM9G0(j@f=Dc~Vsl*6fxD&P6c2mQj~^Uqm2Iojii+yf6C*)=E*DBoXy)`H6~oiwf& zN=yKB9#9dJ(9EFBCnT&=+=}5(LY+_)zQZ-s-Nu5$TjhJxUlLqIHugrR3 zOwe?~vbHG*XnKFJ_B@^LB(gEKGgzU+z;^1NI_WCLX3dV!6pDDz!caOOA+QNRSiC~Oo3(3p>F(Y@i)ndff0 zZCCH^f$HJ@!CB3)am~Vi_`nA%lZ825Guk?`BC8@@z=#mYCb6Y3qdc3-*VWZ=!Ie_A zO-ILb3F9yN+R)mLTnZ|uKIv3m0Z*C7^cBH|q+7ZcIRgQM9N!r^xbr`6`0(ro*s!=$ z>R2Lg^NvHm-F{3qEj{xs?_!HqRD~N*4uBobtq-gfGutZxZkeeqW(Uj}HBpQ;LWC3H zPAXWr>GcmMmD>*NO<2ovQCPRIyISr0+(+KEa>IEQSt%o@A>WQE5`avUggVAV3&Qic z+-dpT;ECg-$HqrS$|&QfTm0$8{a+OTJ;!=MG@vFQX|qoX^=lx%=Cc6Tigql?v>`|V zHadkw++mO2xA}$-zkltly7k?eLa7&!x&QX94{qt(UGc@bbL&>F)RYOpt`OK5fs988 z2gCs}4OAPML~#@Pq6apGfK&yj0l47!Tg5b{pH;+kQ9)(`I4J36Q<1IMpCf8M-~ z%K!P)d&f%ECyqs9l}xMo8Hcwx8x;h{agS1#tRpBWn>(V zBb52=mY#bLj33Q(&A#Fdv(LRaL_F&T0+DpDj}T0$MS=Ehn6(%LtWQuFurUM>;er#w zfUrbsOsM1eu{3RS7w&%i;P~N#?af&Ng$1)3W;NIC+jWp2_juo6OJjXq)&&h5F@Y$- zG(m|*kwA!3e_&FLfH-^8Ytn2X#?v(df6RJ87;q96Tda(=!O9?`)6=1;(o2o8iDIP^ z)Gh3UWI6l9< z-RJ)1hxUvYBc)*O?75gIh+_u{>X3>mYE@ziY2_cAFcqh6-KDQKkO~2u0tURGaR4Y{ zBX$giV#SeW7H;A+0_Fw@tW1#g`iBp_?X~ANO+NOq*IklK9*2xq<#jvu3~n8fgAKEm zUGkbmt1m>T4wH-qCV?X1AvXX{87FC(c|%-gVrs(4zF3e?6QkjXjR&Ku=l?0`zu5!mrF*p(VP-$5Yb2_ zP$(v`WC$^gPMI5iL7Z?6XQo?-C>49aU{ZEajEKQVBP=!encUU~Z~y#1edyfTxi_D^ z7zX!bu^Ca>{l_btd#VFk-Rp+AB+HGRkLpIC@icPFS;EXZG(`LCuYOU4D;#|uE z1cY&huvHZ18e z_;{5RXEtS)b$4T<1@kdcSmH1YB`E4S)Aj48ra|KcVZcdzpfND0DXMkDMrlk4($*3C zjNkg>um9v5H~jV07cXpr$)k@kt;ULINAJjvEM+Qd#OV>kg#25o>2r+lOGD?=}Q zp`fYCFp{Dk>vRz}hAOR15>lKn6kh+ycij13pZnysubxG!#iKn5kb#IF8Rf?&{YM6M z`^Hz~7cEo5#Y`9(6CFELQIZfMIR~O8$XLll$rzBv1XHUK3{$KD2xFL#IEjqWQb_|k z-DOj0`!&&8Aq1`)M3^r+|H9TaXYVV(?qh``N5`;&yrbX$u1%adhYw90K0G=wsE!WE zQ0GGJDda|4W2z8R(-`9vtQW)y*DAsh08Pz;vGT$IY^=o@3QGf@c<(iO{Lp)^Iwv`C z0Ky`{e6mQl@0sY2n>G)aS(jbavi2-3JlD+-pf2|)!wRIt(l87_jka%Wu(nu)QpPAD z!~inJFwP0JKW3aGj0wSvQwx|d;+(h+7lNX6+m>hiDw17u=N>xTi>s(SI1x}U2ZdT6)547%UB;6sN`zgQlFgoM}u{ z0zi@5-d-4l1sh*^=;m9p;B9{7NPQD)a*-d5#P4QDr>dA8Hgo_8A%D1}rR>k>+^V1h882%m9nl9d1@D@ zOpC>pF}^2y_HMiBx(}b;<*c3+M8ij@RvHKWCz5TCjqVx2`%Sj-yp1hu*X259dR|Uo zkyt!~9K!O#2`B-XNGWajKscr@EhWQy4?lAMgNGj70b|D+)C8M2a{sO0mXrG^931Yw z?}=@{f#SfNnQe@+DA9;;gsDs-3YrlMRY7WI6_aR8Y2f7=^1TP1fO6TC!&z&~+BU+W}$k(i)or9Q@pQ=TZ}d%+`HZu{O1AHHhC z-1!ZaWT>A|J`u4n5x$7X$VB(I8L-8 zoH-628t&b*^MUar2RAHQbj^p?Etw?_HTZmec^e_&$vvBR>PVNbK*F17*y0!B zODRW?8ELD_f8?!e-#CuG^sNVO`PzeTe&0V~)>J4bfTT<$0fGtB+8BgdX3QAltkVgK zN<9A1FB&Q_87#NOq`9?j?yPyQyZX{^{or;jVQ`=yU^=z?yf=P-$NB?(Kq~3e?Ltrg z4BB3hQA%Zl;O^W1^N#O+_Ug0ed*u_R8afSK$BOJoN!+vZ(8I?jkV(mt+SMu zcY_Q=I>WHb5LnlpP>b=E-;f!b82sVCe<@!b_~ysnaq-HWAMJ=HHtT3Km#r@xKfG_p z-5F+3;@$G&2bfdWF{}QxrJ4FpDv2aSgD#osP)^{B&pf9wm;2_8-|?6~f6kmJE+R12 zF;K1nVTuSNgfZd-_3a&nV&Q0CZ`St@?m6U%y0PK$IWs%wFX+DOp~t=Yy34P)3O%*| z2tTFM^(noZ==tr7{ec>gTAOJP1hqm3Y>XxZ6T+pGeh}RJAOHHu&%f}-m!Hpc$entI z$YfDIu;qy%+IS$YD|Rke^}07tRg|K63lqq0!J!|Mo#2{=eoysKf3eRzgUGP zW8Q3Hg=xSBik+up%rJG(oxdL$k`J|2xgeJ)=r3(;GXdh@Pw zOmyKT8~qC0_uE3LBQO}!_f0zc;`VWyYX(G&qpPCRG`6>-@EPda* zt@NM7QqWb%n%ygNS$)uvV zW9P2I#7Ncm$>p2Qhw>0cVY=PyF{cUh`de(2lB`8At1E$is~=8fN2aq&gi3ldEg zw(bQ$Y8eKu3kYdL73bZv=L{U_??2qUm4_Ph{?cWu9(imZ%QkeMwn(c4@X5B3 z>94gqz9;$d`x)_vFyQ1F(ym&Cp@eY-AuNGuO#)v$eAiEI{_@{^=nWS(Ayq1mFsw%V z26t@l8B!g;Jg%B9xq9vE{ygGAy_0FKXTmj%1qcZvLyk!jV#mwJCM@<3KJ@c%U42p0 zU%%sw!+Y=U-@kuW>%w2%vSr5Hr8&kp8uyQ$7_W>41ffF7G0@&#*U{zu=m$TUId?_N%vq&yRHam>KtZFlTUHwY zipf;%%?reUlX(zKkO7s3B*GYqF?9vK^}GM})0_VB?XNk%#e;$VK3UO)k@%sV{rkdT zOYE7&>(6}cTVmqn++0I8&jq9oLr9IHxDrM&r2%EMQXRPe=U-bhFMQ`)mN;nF1s5+C z#Jm6QN1GZtw*B_OS>3JcH!kbhxl5ZMKeO@pfIfWOJvcPc*_kt`@F z>*4!`Z~ofdE$$3r+`I3)2QudJ*Drn3+h2C;9a}qQFA=$xvSNfg1QY|wEUKXZl>2U| z6JWTtqxImvJva*U4jURc-qf1!>}qc7?D*EVzddKs!p<3UlLTYyI;f4cN!p-?NZOkO z*v4wVpO}A`2BeKD1Zzl;eRgC_DP^3IuU!A3yMFlPkG|u|`lL`C>PLtS^o-qe-~Pd1 z&Yfj}*Ij)2m2aeeqwi*Y*LOLm1ZhpQb`q%-N|@uvk%`07_H94u_IG~dZ7WUraju4- zI)2*1*(=tr`1LRD%m?{L@83UhVq)QnMQ%g=Pwv^CXTH5`RVQt*l;bjN+$maV-Yp_y1Q#wa!_Z6W5$kizB1eIwFT$Be8Hu!3NlT3 z;64J0lPZd_0i?lb0zeWR#t!@c%lig%n1(b{O!~HZVY}I2Pi>FyxdY zeb2VNp-f)+rmIP=?XF*L?mgJQeB~<7X}b0M_kR1P|I((sbVjAH4Ssmv?pNOH5Bv9%50pxRY_2(BJ&>xAPXZ zT=M1%TU(k(M&+;XdT4TNboGV{zWlKW!AwQv!#lPE&by z2H>Z}+O>KTgr6)WujQePF~V_A9P0h*7ynOEJb2{=%Q{>XkBp5RFZYkg1A~=46@Gt` zpLyxko$D`ZYM&n!6USvbz{v9_n{RGu89sId!b)d8pCOo-3ZWHKRg`Oz;66z?VT`jdSiBi>x!QPz{ zy^pKDF>h=v6YpQU6cebpL@?kCyMz$Tks;R3#+5j&uuw+u1P709?dcsoo?*PjZ)}-0 zbNTY-pjj)D2u|D_cQZ7T^)g<@;K~YrD_y7+|r6#NEOGDb3*Y{sgyyr&5NmWiW(1|JrYhU2(UrvKn4o{6fy}|C3UK? zMp|cmXYk1WfB*dd?##=@S#L>J=+SYPdb>sk4-8cv8ivsss~XO^EH`giroP2<7*&RX zA(}9qZq^el9mGIrU5TOOiD>tocjO0-ozW01o0YB0E;lI3P{g!G1X1f8u@DptL{X@O zL>Ll-t5G6cXXd(Kd)fN=svbI^kRa2JSK;1Y;zWQU9o3 zo|&=ZM>o%CUDmPYf)Rrgj44qZ6q48xSt?WK&$JP zw_;VOYh_K|#5-QK{)St=QI(aqzWt+0CZIx$JVm%6Sb-q~kWq*bgD4=xEf3P#uHV4` zJXPXuF)hLd8HNZo)-Mods-B0!$)o>%{d+H7l+Qz9MpJ&^_|dSO3{0wRhYCB3&Sb~Z z_A@TZ&sy5n+!in{Y9$2P;OX{vi}$n%!!i{ZDM%EWv1s`d{exSF%Ucii2uEuiW8^9c zjI*>fQ^!fdIL82)wh3FA!3xLhey zs=a`CfZDKdaL`Wc49za=m>o*xac)u{;5we~aB7gjCNT+6j=ew=0*n=+aQ>=Q)nga_ z;+~%XhQ87AW zVg34xhFC*uu1y$1q={8RYx97ufkXy_wBXfv7>8lR7}J=~TeZHmsk7bpGY*M$wXC8M zi6s%73nqBFscDP>4ItApS>|RHP?^M_5^6L-DgecaQDIfd7#R{uY?M}7Q9=Y`TI;Y< ztyU^glHf|IIi6&U_mn3(7OyDyj^rvvhEazCXPP3Vr$!Qi=9FRTAc4!V44PXj<O^4^CBT1;x)*dNe&>i>v)|{rkHX{YelJ)5(8C? z(gtu!Dl!4?DvccC3Pq^`qjkFL3$@M+gHb5MM9Cd^sA&VIRVWm-MP(*kc@e+tC;)znRRtZ9qU`=rXkN{|smO?P< zVjUpu5D+9SM<*mL+vPwUjYZniZIGots91pl87YDoOB+a~Mv7*DxX4hWv0%a|gAFE{ zaKt&bAGPKzNv&-J5NCo}ze*JVl04C*!pzbBV-tPH8yUlpusVSqOsnCt1&cR7^vI4a zTi2g^KBEF@%_&bORG=v+^pvSn&kaLUb`gw0YWuf@xSTz7_s@Ru-GAG3_6iY}Dr1wS z3EewbIeeltFd+NK;7~}tRcoWRPE^;Ft7~ekYvhdE2$RyZuAbj9g4S;RM3*F?FS35;y|NHMknN8ac)?Egd?Bar&VUCJGr18X4=bIAyh3J}^j0 zqohHpepHgk^)e$Pqe{zSWfEbNbv&j~Tr4kNGO!#JmcQNbAJFb$0vrHl(B7*5ZVqB9$sVL}PQ98s5Gfr&tr zgH;d?m>I-U33mYtux=@$Ji#QvB+{TjORbY6GFGcJv9Q5{H;l9uPmT~alxnbEHd0td z%xHT=nlWQcBVsKzPK}-cg%nu3K^P`HwSCB7r9deK8l)nvyH|m3w@^IDpCVDH63`aKy1oQNF6hWRZGRs ze)?1K=!34Bdqu^ zMpCLybz-M^3~UUNMk|#Tw{ep0%C-Dm{ElzYA}O9P?uxQKp@S-5P?i=Ji{cSiV|xd(^e783?_!9YQZ?G zm3yTc=z5c!LZft8Nag-r+qELzf35RhT(3q)^+&-KC_$WI!3-q{m{41IgN>rb5bJvp$Aki+KwaT^+-1ZbtQ`jlhhhgL zjTDWIs2V;2d{|?xa7MAZkme$+i!n$=wQ>PGMhUl|1(b>t8A=s{PB6rvt11pv93>IM zf;(C1a3z@1IO8_P${R86;X-_Luw0GkXi*l&i)wOocAZ-p=>7P+-!^*m0If~ed@9aN z*K-77>8MQ`fe|8=ax&Q)zIx-Q-v3woAG)W}A;-oFQ3A-XA1GF@{on^LeAQJ_p}M-p zq2vASfU-f>NKh%1NoQB2|EF(`Go=SL^T$%6)u!O4<2fMxlJ?)GsnTg{nF@rNQUZ(6 zkUoX|JV&*6qy`C3bDZAs_BI0bD|(TJrWjC1_m6*x%3sA zqH1~TmaUC#oe>g4rRaVC=kG6l(_6~rguDK{MGJp)+pkz-d&_Anc#z9_Ue0$t$4Mj4 zsk@cc^lth-QJ8Q_m^D(2)-V#buPxlL*nAE8;uCu)VcIAJ=+8g$_rmkOaQ$c7 z+B-k~rLV8O{1tM65_!Tw=-YP@~hq9)Pq`j8e`ilYkWf!^os9 z$V`v+?caafPtFZtNhu*A_o2pFbLtyg)}FI5 z4vWMUVBsRtTF##}>+1Q%HcdQII;A8dnI$#%QAq zp@cD}6w(H!hP~Ms+&T}O_GW2ptcqZav^KTDtOk&_VUtPIheRTw2nWk)Mro{dr8F8J zJJ^MSMZF_IRkqHV8TTLE@v%>IR`8$Y=FQGFZz19LfB4glt4=4`I+GeqlUl^uB=u?( z*1k<6N-^GlB8jSn!K3X>x%a*EEsU}-EG=Ju!6!fe)sMdYFD4DIf~sOtsKmpi&~NU# z{-3U2ef}j$5)$T4JAmKqgwfRK01Sp;3wur4WoMZmRW5tw>(`yLF^pp1jty3<*lLIK zRf`sm4IHmlO2ooBqKUQgwUvgf*i0{#)(%mFhyh}z+Q>jktc^7x28@)%KspZzhy|d? z;`6j^kyyWhSURQFLh`gBk0HVd71TbsWgrG?eGn&z5)6zXKOotle_)_eDtXmv=YjrL zRm53)N8X5A=1<1e{$onT*mI@K4s&0;7*tSF?&fYe%3JW!PEp_&AMooCdnJhus& znt3o~{V>pzKvBvnLJSBukPyHWTP9$PmMof2WEdAmTLTuGSZa;ZfjWTF;fEAaJmqq6 zZKS!@7IfHHJvBfqg$e284nj#HP0d@>#5#pKH1!15DoSH9zC8}7v6FS2R>duTPpA19 zfx$+-7$m{eaq8NdSFYK!@0KMwFE=T>C2J1F!j8p)JL4|=)|7uy99wkFyJe8CR8%JG zYNU)c{?_hu!MRbfj49(M1_zJq>s3->nZ(73d7T|;kH2PwM^YAxl?z|}>b@ffZu;66 zDW|7j{EF+o^cCU;#W<$a(MF}=_0-7y-^GBZY<}4TtN>a&%q&8LskdO3?7|?Rsejdg za&4`P+8fdEVHd4bqD?ERk@cY1IuaYy+n5j_MV**XnjlI*lUM_Rgkpn;PBh2d6|R<` z6-cZTVl*}uPD#TxA=r@^$7z%<>>HZ2{|GTkkwHpnLcl7lQkW5NQ6wW?B|>Bz(Ka#T zw24LC5A565RhR7>*G3ncGPyoAwoRKKJGB1lH)PMeutHtUP1PiVF=gR`1nd5#=9p%@ z$;tBZ(Fq1L$oP}AJSW$1=FDy@q|CvZxURqgR4m{8*B>bmF+4K-_n-MEV{w`Zc!~ql zy-GY)QV74x2RyUv`Xp+a-siM7%77sV8#Fcg3fY)w;hfpKhYFs+6>Dig(ln0&>7?y+ z$h&X^B~)saL`ncghG+vCTPkB4{o0r{w&Y`J4#-%Mu|YtZ4kDm+XlhdgG^lhU^wdq) zYL%KPWJtqJmJYlzGCixny0fF@SgD(CICERip$?{J)A5;!J6>VGNvfM?w9L5rjSJ5> z*O9JfR0 zV;cxyu8}ZUq!VB?(g{%smR80Liqeb$H`s}!lPHoX9Y-cf43UUvZjeX-$3`2F1SC_G z#=fbz#E_{8ZZ-%`+qMb!UFr%V7^i|Giw+b)nnPj|s?3rFi%G|9cIg%0j!TcU#80$2 z-;bla=Ph!seNV>~SMZir9yo}AYcQw$BtB*}AgGMzxUTCqH#JFy{H(8wm8OQA=Q0g? zsv0PzW{O(D7?a-YWNKnKOy4U7{@d+5o>K#!y}+?Hj2um+s;37N*>f8(&Gq#y_4%yh zm@xDL!i^CO35=`^*pSx7w~4AGG6Dgf&wxtmbH~9B;5vm^Y!a0y&eHmh*kA=xkr;98 z7%mE0h3PCyra(v&Q)xVAd61SB0=033ma*2FGUhQ31|`-!hd zMt{5gmk;N7>Fl+qUHND2E0^YSL70S^VG^3Ga+R@6AQ)?-!59sSQ69#T;3A*TGr{XT za$?u!IZGF$j!aQTb*&P}Siq;XLRt$Uq?9%Ick(7H|NS0he@JoeR0%Lf#*o^?eEaT3 z`;=$6GpD1YZ*07~YYCG&5KK^pDFy<}D33!UMJ^>tSkRM&WMH&s;8>|zZX~=oTtvnk zuNLY%+k6miF~%yQ)Y>LDTTkm6yA~`!jm;{TD^eN~6ILV6IOaUf6>~zV216M|X;6mK zEE~bhVV*;@Yjp>M#zAANnn&C!+S^-zh287k@TNI!Gdo=#hGpeMu|XLU0HfBi7(*E& z>8yN=X(A=Xm1HIi>Tw-A^!v<-EFtg~)`X$bJ4a3&%Jz2xqwdYgA zfOJiv)F~sB&e_9Yd`IM5*Mwot5h6B1X+SF7_|Tl{@I>E{ZTC;?dN}Mo=!}ogDkZ*@ zP8c_8oYAxru%qGVmP+a6OV@T3aAj;v2`qiy9~Dh5x65&g*?Ku^c7ENu)vtbKHs^(5 zqQM9uC`MW)Y4Vl`mhu}T!$AOMMldI>HzdkIB$BeTv0itdre66LKDRBXZ^}A^LV}QF ziZDYdppYgElQjPfwGwNBAWjmDFc&>q9$lym3WT zJxA%bIIPFuQYs9}$H*8tQZL4(Zkp4St&FZh&2_XPR7nNH5Jet0)wsHMaPYA`k3V|% z9cyQIbgjFvH@1F_LVC-VG_87QT;2V`io+aU~fZ>fnQUGP7%;loMzF<>e3U+}+!&mteo6u{{@<>gb7V z;@6L1$umu~VWb>p7&k~G18LHpAf-V`i$rR{IXq^D$~S4+6$n9IFdAo;Pbomr?5E0XiKPpkrAa zpYVn22`5*V%QQDTT{D7Qu22{oYWMGDLz~`umXAib>qAR$#+3^WdIMpz2&<)>muqiq zryb3@tHB3yd2a4l-@sUToLeXxQ)Hx!D`A)zoft>}NkEC#%Bbm^52VA2teLc7F|}+{ zX=#%6S_Io*9fRf+S-_d5yD7$L&WF_Q&{Pxabc0B{o-@$j-`&yHk$ok=)l#vNqucpl=HkZAB|^)|glizT=;#2hD^Wag-c@UM#D_;4qP+t>MfLyF_TE93o>!Upo8K?pd^=B1Pfn6X z8ilbXBL|!Sk-`4`*6XDVUb|Q@Rpt+~R8b4AVz;&yC{p2Fpm4xmFN>`OgKTgR#z|Hh zNh50%W;D~&J>4^%ZoXf7^Vav>9tDG0uf3M0rmk9d=6?4L=bY!9=R8NW8%>wyG~}s| z+M4^l%;h;M`9%l=M2Rk<7O)#7D@P>a5_5@33Rq_R98@f>Xc9^gDG(YQ8eB0rRH$l5 zD3LFqFCfnm%K^4!U}=;yW|s(SO1`=l4BGzo=E0>s=!F?skbuJIfL)2g{~O`x@5%&0 z;I5Z!b_MKANj7H`R>PpPxy8yl3?al7u{l<0CI{od6<5KpRv<&hjkfpT^V7W_c*n5= z)6$=A9XNfn-vUq%;>+u7ynf)Gy`MuJ(;y@h9;OCcMQjG_Tz!gLQWiHYnrKL1fGGja zKrN{;K7}O>%oFY^p=>HsN@gVHJ$NErqYLpW$Oy7{;ln6Hh`zUCKin?59XRB=eR_D-RT zdi?xacXg+Rnn&+kczn6v8Ocg_I5fy7NLj-T-7M=QkWl4p@d6k34k0Jg99x(tnI%qp zPAi1~z!>I$6ATC`KoctBbE|eI9U?#`TrX&iD^PFY(lM0SW*AZ|qzrtYBCHK8P@%_H z)>dbmwb^!48$&12A4Iy8<|%i=qL($Qes4BlcUGw_>sDp)Vv-*&DQ)-3SkNuOiDe`Qhu`})4B3G*l)Xw{yRm&*P&Qp_KHt;WfxTm&Ky{rYr8== z-Mkv@Jti&Shzh3?CJ}_xRh=ZGAiQ_&u|02Exbp{(y2duH`vLanx;enM=l@^lbp zlSG5=5*q4$+mJ!N&H`k$?tO>F8wxe*SlV-*27( zIY7`L1TzIhandyzb`R~Xp_18$FrF*}-kleN%H-)w$>-mj4JcD@6VAY-W>$Ehvh4*K zQ#?+i-Uyw|w>IlbM~wr7usBbI%7Z9MXThdPzL8$KsG*E zGTwad%v?=b=Uq6rv2ep(cf9#c`;YGX!u$T$G!H|BJ7{D{#+)XIXkf4@;&2O{$`df$ z0V_{O+ZRtPwp%UVsw{U&waz>OXQ$h9Q&GDWF=~v_gm?&5IU~-(-Y{F=5X+J5r6AK; z?#$YitHW#0Po22IiUL)c;=554hEOM=$=ZI~m33)ciq@6=Fq4kR7jpIA;|+KbQtx)G z?q=s~fliBOvbv;k8Wj>dR=EI-I6OrwS0FqajqZE?q3M0Wn`+^G4?b_1sYlQl-JY)3 z>io$w*VdNh&as6{&s=@#%4&1=@NKQ;rT_A&;K)AviuvFEpO3!o_?-`~Z{89$eH>uQ z0JP9Kf~m=4>YPbaIUd}!v{<8pgUmuzZLoUPpPQ;zBN7zu*LWOZL>$PA@X=TViOzaH zwMX|g)_0Ovkj&9w$D8o8+`5u}r(4a|3-pc`o7P{P@cqx^8~$H!z$EDh zAi7@Jal0B>Wh87NC#d3cP8zrsjUQdSJh zRE@JT%aN3_->oB1bJEvwEkuZ#x!Fdo;)el1APoufAmR>^Vx^=|d4ZP=n5*MTKN&4Y?vjK2IUq@xd zw6s1DV(Sp0Ry$yI)$=$8o7dKEj)L66v9$>Ulz=Mnk1QOfZt!n@^vz*AtsK-q8<0hS zx34{W@!?0m%IJ-M`?vT1$UE+8FSO*&^3z{inL1rPdHPtiXAv|`{m%P7a&rGZH;6QY zeVH2W3#*BR1R1L(v<7K0RrQhRV>oWlwi)A7RU8CXW`iJN0m1b!pacq$i9Evveli#! zPHC#F)?&IIicAA(W~Q3`UT3DTGgxWsMQkL5qtqzLG4wc_h|-ZqnM_lYXUrL@Wi#@s0jotU@Gx|uTHzi8p z>m{rAU2VXw1p159HLv$}OlDP1G;k-Mj&?^!Of+nYd$~A2qeL!*vKSNVD$1%X>BvMW zc)ERzJ}tiT(FbtCiaTw)G#uP~*S_j3Kfio#dX7`y`jye4)3Z0+eE_!{XfcszkALdx z_e|eh>l?qp+efMz#{j6ZKiw%KZD}Ba$R`-pDuK^gNiJeiDMB!SjxbWj^-3AQgNnlh zGD-p;F(RG9K4KAu%<>QdA_l`QL3pCOqm&jxT5AbHc^Z%U-B!Ie;dZ>3g@M<{|Lv|4 z`1XO=x2y^8CbHo5Aye090D$X5H665YLfoF@ASRQ0tp?>(j4%k5(BpAdMv5xPbOm64 zuDuELIJKwRM>-E}J^1B|kT*d{`82g*?o9{Z|3j}KzH@FH(>|CAT-1QLhFbgo?$5to z*{Lm54h~WfMpam0niar<&~nC))dm_waVgVk{J@_OA02>D^Oe!svA=IPXm&WE= zNNW%yG~lo}1_E=(LTF%Ksd4AD?|A?KqYWVxVNzyX!JyMIO2X?jZ}^fCT=4n`uE`JJ zgsJdd-GJTQl@2Ii3zP+nE9)-C0SQ13p>!bCdStZ#+8L>x%^glOP9OjtYX+p%+w2IL zBv@%jxv9Ib**v(IaiIG0CV2R{PmlFxq+rG2rphYYS9ZqZ9bPXs6Kh9DHbYLfnioEQ zHU9YKYiDm;9baBX%l(RGe#1IuAfOKT7$FLBm}hca@pw=GV}d+Nu<#6e5PLlZ9j8m?Fk1wK{{?_W}g5U}%JOmW)QvJU`#8mZwm; zvV+OFQWD+)J1Gn}4S@dU#_aEG1Kf2r95?xtNtapiVlvzmIfu2R)&_)x7-6S@(a2f~ zTyZ$FJaIq^t(;QGIBS5TY$&8NW~N>bFpW&qe=1#hdd2g&7^AQJ?PJOI0D_!YA60!12EHXw0|QCf?xdu(+Blm_fy*8!2VhvOU;;}e5LMh! zXeVJiDo21BW26w)SfdNX8hC-THqTN{DS^lt$NT~@TVo3trX^8ElGW=~@p>MeXWugZ_hs&I~1xP`t0o3K*5C^!mn0da`?A$ZY zJb(FFKn3%B2m+;885C!R=Dblu(pD_N5akq-T8ON}iJGpqLQeKlbN?sK4mRc=_|*N! z7O-=6<4W#23XVsZvRuQ4x9^L;|Bv+*vv+E0nDi@vPwBQwiJ|~ez;N00Tc+eOABy66cenhfe;W%v@yy|=5t#BK^R3rrNV;%;Nm@$ z6lj^0^vc0taA4oQGFv^NYFh{;gc&M+H_ky*0F&!0_wDJce@j}5o8-GEu|Cue=n0+O z0SW*zw!kLec<$_P{?=~*FhDpR_TW3;@vb+&@hwqMhX6<=M|l#q>Y_j37$(5Qz`7_% zg`f@rZ6e|w1^>}w@Wi9Kd480KFoHN=Q0}=8F zEk~%hNhaCjTv}_2s2W-XHH1=I;~>I>QKzg^c^(f2%}S-%RZ|4v#UnU~%5ofn7?JCw z2LvZo`tRljOy-U3+8qFN*)(sB14XSeH&L1$1rw+a{IrT<%@O1C@KJtq{ z^9%Q!eg2Vdo;>ozHxf~NQNkF&NID~c9V5Mwj06R_)7WC(#|ylcbGbqQGr2j5v7S!uDFk7lZLa}DCZ0z#OT8EN^L3Q+E}GE zD2$51rAttVpG3xpL1T&^0C#-Dv1I`P4%x#@hbSBZ4#l!B{NyquZj&0|QZQC8& z9ox3;q+{E*ZQGvwXI^H_nx|T|)~UB!Rp;Kb_x}AEVK9=Qzz;xDG=o3bEUs%BdraVf1U$?zlLBZ(9TECEZe(QO&fAa&p>gKhC+f z?jD!El+G>*Y+SgOauQuO=$+oqFnB$$1_(Ug&PW=5b)+;O{;eGG&~!cut@K<07AlN6 zzamGza%#GWQ@dut?EZu^w9+0Kc7h_TjF6gBsbmOiGFk2U!z_Yct?*DEiwfi>6cRs> z5?}H~z4S=!qSywRNR*BbaQ9`@;PCTAfW}ZD2Crw$@K7+q-E;0RiQM*0PM_5M=o?aH zqf;+ATL{AJRn2UDJ2WhgXgtV4I?{ppp|hL(9pj~G)&0 z3mJs`tIyKEAUIZ)!2*xd2b=9Xy}h0;oB8~gd}U?m*sbR4NGCT^u2%YV&NxJYd27qp zo9VI8YRglk-x%f=F6q-qgCM;CsCa4%#*CuSZ8bMFaj5Bi$?rHbiX#Mi(jOXm(E8(8 zaK26=N9sWoLzoh=#7e>eVpb6}+yOyk$a}8LWKdq0b=f>0VXEA&hv8j!xw=DlT$O#p zGt^fpJqOp|1g{;s?r(3K4@_5{J5XIlFS;1$JzsUuX@JUE1gv5jX5%(adk{Il$?6R6 z!`*n7uj!ktW)ZNX>E$N|_#D7qRqO0#@+pY`~hYfG4JTmkV4B*SWb6 zH#bUz`l6(~m$9h_csQA_?Q&DZagssVy&{3jcf()b0qaB?$J!3-ke#x5*EnD$ikm^-)By2@c_~Z|jkcHYH3G$Z=LP(A&3L>zEmFT;M zN|JUPu*L5=o6!wBUMfK<5d5Z*NEEg1rk?N`AH#cyAGg(=M_+G+O+jzLqMe8VlF1gL zi%*#{-sfAiojaAHyf07L?%O*<;q)UQT%f@N)#486b~0@nX8m*^hc*qMZ3;Q4#zNW% z&?JjK+&Bzy_@2+__p`i>CE5wX)FmL`d*g_!|5lMYLA~6MgLqa45(7=N_)%olOHvLx zt?cQt(|D+Mz%xG&kgS*~#hYV{dt77k|JWJ+)e~$ozk?-Q^WTBrC4$m?n~GHW;kztY zeH=wkg1*x#gb<=p6Om##PM9-Df5sg!$1WTL0}owJQZtvvK9tcnNE93vL$)N5&~X&u z-kr-WULjB}_!#`e^Yu%2<7GTK>*8KGf>K@S!ia0>-A--QZ8N8?Xz3q9QRpA=sAyYk-7=G)~K(Xj@V#p7CU6)wP7*6Mn9E#a53gc==# z03GpVk_`}qGB;x&#WmyCQ&9Y?E4%w^sAOMBLf9g<$8H zI9nH9>^+f&ZLewa01Pv@p%)X&>OJ12{jy5aw4H34AH+B@a53S+W6)ebq2ihQ7VwWO zG*IOa^LVpq(P}OW+0-4%G?5sy9zQ@-e4GEi#oN`j0a4JJ)=IbKCCPtBDiKD8=hA0F z*gV$=-J2bM$y6h%rPB4z>Z;RWYb3$FWBMq<6^Y5eLJacm;GVleWe6k!L`s5_F&$2e z=8X!fzQ73HH+hnekj}1+?zgno&_crV8BTgM_v3Zp!cfEIfZ$WAtT(7q<6y@s7zJwu zHg3nY<*jPAciLjF>XsAx%E>*eO7yy`6qbJ^s!VAdP$u@uZ6*sxcHzqXV7*s~NV=eG zGUcV4yhTv(U$AP?m7ZDIWNDRC{%PBlGa1?>w8cls?6qK6_l5&a7nW1uy$_=>d7k)) zrXEzkThT2$&ZGYc1*w9OZ8cYr5Hq%;ekXiP0wZw&wZ1tlvhR44&mTzPEF>fZk4)7K zciWro*|{mLL=l{F_!uNXzZydb`Z#qK`#l`%Et_MEhX4X-A4Z=_xe|p?15)=5lF$Q1 z*~;#(E&=hq*H&x`v;YXsda7Oqd8+2i5M5_*omcnXD`U{FZPBl1!zVAfy~|uwcA41+ zNqf&}j{0V~@{0#CIz_I4ovC#f`4tfh^T$=vr?fU1uiZV<#-@A;;`;n`dn3%Ch-rxl zD9^QW-K&tZ6HNI|9}QuEG}@gkh+kmf@{SMkeq!CGVIT=Lm;?Bj47g+l_HXS4tVOWH z(Lt46JM$c-L6gxwx$p{kX!>cljB%wi5CCbULJC8dZ3$^JVZ3kCbRB|v;v(_w;S!#g zJ&$$oow**0*mxFh*`@6< zg=3M-#M|t(9LC9sJmV`fmxmtlSHtnZMlcK;W=;0KkAMI`m7@R z5W4Rq{95DhJlVcFe6D!#^nST5)O~sQ);NFg&GOdP#B#^=z;Tf3eOX;`EN=vH_1$5p zPx{(x4#}(ytgUKTBv3~uJw+&ZyKni9gNnlqOg3TQz#;d*8AMR<*VAvP$mhp0%Mtd4 z?hJ!QIUt%<8?i)JGOi;>E9~&oLdHaah4J`tqXP`!$n)i(BK;9i%f<+K5%>!e33f?N z-az4j*g~J|SlICngTFEHF+KtC<;aHpVulBp26~AP@_^cT&~s6EA55?WR03dvpk)JE zDmMJv&*<2H3MbKpBShPjqr(z&XVG*1qWR&nmg3c4n|#e?k9t3mVb9%j(yO&n-u8cf z8JT^}rt7|7&7R?iDb5I0@STXZ9WgZ*SoxFE6A2wqpzJsQW0rLX}?{~ zEdyzGtdoZL^tp~Y-Ra1)9=nw-k%^8|S%oYELG<#&>AnSIS_Mc%?7?LIiy%g$-C71v z3??8%I7CQtFt`mtA())UCE4FDArLTt5W8Lk@n9LYD3}opX997N&wL0V4EoskvG%6jo)X5{H!I%9Cux9Ojr(;hoF&MNq^(EYL?QG?YU%qYu!zBud#jA; z9Ot6*b2)!;l%gUaalw3u5Y0yZRe8|=46>Lxwb|A%{u~cPzBh#>kA_JP#v}~@1HlAh z95dSZAptORdq>c9LV@R_(^y<+8baZk$A*XGAg#8dXdY;Zzl9Ejm7>X6CB*g2K$ZT< z4+8g559NQ5_wXLv!P0<`?oESghan=VtqbgDOw^7uh;k$?itpeOO@m_?V)I+qkb`hB@MJlG4|Mk=9LKC)%?FHUAhxWCD~+L{?*MY8A`)H zN+PK2u*R|sn;F|z_l6hKoe_oCUC12$ZNvLqmc`fTD6!_`*ebJ9Uk6n|jRppXEZ_$0 z(G;~^G{9;Up1&;IUA;CmZP>j=nPp1v8!cT{`BYj zoXYO_^6KB8mqJ}SUXZ?f53KZOOQPwN<0#B@oKzrKQZ~Vz4N$ez_m6Zml*B<%7`|1w?(INRu%id@tDJP5 zc~t4owg~vVWSofF1l%?Ic!X~PwsHo3lvqt{qtPu#4h=+`fllBZ#pjSw6<;qBary6m z(=ur1WY^j_4Epz)#K_;<%ETku^#PW`P6N;}kv_Xh6tH3S^szq9eL9w3ew76}WX8XFu?f@4L*$M?5i-!F1S#QE|j_|=~`b8C&$?ktE;+MZFP z^L70~G$|yOh3@)uZOH5GJW#glKzm5^S{&?dWwqvK*ZRkK@xV;Hq;B)q_=zfOUphIY zp;)f)XhQqCP_I9miV*J7$MIv^s^$laG0-Aag*B2X7B+!IS%^grbDA8+NgR`H5gCd> zD1=b~=2yovok*(@5kU2HUuxFZc$hV{Tb&&?1aDeoO+idaT@Y%pwOLVEi!kwaOae2& z7Ohxdd3p6@Qf4U6w z&Uv{Y*h%fLviT36R3!&_MVxJr-jsXyK9Pw#4$6b%b)lNTRRuA0jIR;$c%ZdSbo?I} zpV}TWRrT-i?~vJqI2|IQ^CpwW#kIeNcc}xEik!d#SD7tcwa$X8wkKecd(*nS=LgT+ z%`=f!W(iwp+lKN3g@*m!hv3y>)Bd`~x1Kg3b z%Q(?il&Uxm7JM%9X4C>0Owvsx^2o|IqNz(!l)nlZ-oZBnnZcfB575jvw6} zr|F>K7pUviBy-8{ab?Cv4C?#TYu-3J&?uCMG|Iv@CUg2x?#l$luF)*4-Old=l%q~u z(2%4EoULvCHNf*vW96)Hov3jjKuP z7x0XLNqwS<&zGn7wkgjKSlP^#&W{B)@0Xq_Vs!l0nueBEY@z3V-y%imB`29jV1y@~ z+&Ct2p+vzXc{X2H#+f|#>gmOrLpvBocI&jqZfg15Z<$(3mU+zFwoHV>`p9h+)3qKj z^1#Frg>WR2e)93shO+TDEU55>;7Q~H!hZMUs2zH0uvoBaHGc_sg+UI%mbgGu+&@H? z4g8k*l|=gw=9KtE&_8%MxaLls1L_3Qwl`&LrvBpmvZGuSaYNSyEzR&JM4c^2)!byj zO7C>Nd=Ep2MlA}m8|Xv0Jt$vW80bLX{fh{3F>ph9M#}}6SUXz7ZSE?_!TC@&P%_hC z?s|)nw=WXtE=Fangp8^QNg>f7BNUc%Ma{&+6Ef%QnX8iS0*SFTNM0pIoiaf7&er6+BQuXV^IeEBf>P#wVtSRMjhpe3X?O4P+z0%p}da-|6DT- zC!!T;RKHfS{0IK;2MsaqXcRSe_n+|J5GhXHRKHK)(L3o-s(=tkTgUC+N)8^}hdY{- zkpdY@Jps?D8@kU2zHf@PXcW!(6?Jy9vR0)#s12U^>-552;^h6jmWyHAN|h^f01(ut zWN(r&wr@wQQfIy8;u+`jR#3O?Vi=LFPo08UsYOWxHH@}W%k}*{wd3uPM134=-wl*7 z3KfwT1Z@@rTeTRES8fBgu5FH5(4$q$ed5#$>zRhj}xNL!a&V#Jrb`@4z+ zpjHaey$ohp>$}>?$@$f9`nB&8ZOe3FKXXPENGVS`H7Am9o*5`7N#W-ctpCsD3M@FN z7L26Wj1%9;?l6b#p}U2JwZU~^yZE%ufo+56?PK~bNc`}xEa*1q96#rpn(o`6V83OZ z*i{!{Nt2-AU%$LdlVX%z4RnYFTl&d_QA(C!-K!K6ySFn0ulJ@+gPWfca6iLH4^|_((W-u&uimS?Jv6W=y1{JqSSWz$PU`{pimV zJ=EVHt{1b3Lj(x5MvG66lanNS0St?2S@IH1MVe-0rxS;>xqV3AUoil$kpQyu5B+ZF zf#szrc+%1dn!<69-C5SBUSe3Q)A}SZH{LtJt>}Jod?!|+Eg2zLQ7%$ujw4p1X5mhdGC0Sg{j z8UXjQjo(P&j0quMqre&9C_8$e(&Jm7byImF0{0JGF_9bBgx5|{`cbHnTt!A3B|lFG z#c)L{0{_fJbaTBnjcOGhpyQ4m4}t#ZH^)6Hdl&(9thWT=~=eCR0UCuB_|p>YMQK^@YGdQsFpj1oeIMzu+JYj36L*KK~CK zg#WvY|G(iNq_Bsf-$i`?0|yy*hfdH|PQCnmvMu8J&Ixj$R4$dEER_(0@+ILHLcIkM zkejwf(&*3iY?Qqyeeyh7wI9z@XUA=vJmMmg_6yuv>3qRsRYk@sYqT%*nKi0pA-LT-PreG*jfCIn{iA)vsUukw?T0%F0{AMT5aq<}G{6q&pdiJt{MAto%?dZ80e zYlO3{>9MU=T*G~1;?Y#ff)n@zWo$i}8CGrsw zU_4BSh}(m+%f{kpya)^aF+*i86w=ueXimXG@soEfO;qxIo9ru5@NyS%({XNV3%B(M zKJsMBuzUU#c?l+_2#TAQ#4vVz`MPhb!|m_WWKe+9d0=tZ=M%xpKA*RPic9u2u0>{V&b}7JWrX8zdx#Ppt zl?BUEZJ{7KG!>$pA`V-lDTgO-x;T!HwvW9v?edPON*Q0CYSV>>Y^$q`E6EXZI0U%Q z?MAvw*XJ2XZ3>+51hX@8v(R}fobmC_{f;AQ&)_465V9nldPc11U?;5$k!tOswFrJ1 z%}LjMcl`nq^kGps)`|VkU#wT2w>Wi5H?g0$;g(T$H(ZaIoGJL5HzzLJM_!&oWzm}| zN9^d?F3!$QPWKUom3K!hO)MPR;_-tm3h=>{`$b<)7OkD7j}H0|s&_w2w_v;1E`SYM z!RFF|h$WBP;Iltuc)LE21gHL9wby@a*Y#=Uw0(vl);KySZn>?k(*E6F@pT*Dx~{V^ z0K!QnDC9V52aH=q-%mua6`N59lG@MNmB)=qQh4q_&I)pt5b?7tA5ZCjgS^dYViGj` zgcOcJfOIo7h@UCvtsQfv@5i~|L#uSDU!RCvl@B!1k&z=w_mHX;uyI^Z1lAes@6W_8 zNPQpye-avsk?;_h<^rziKiaeKkIUd0si`3( z#0w!!u#Xo#z8buYwDWr|wfXFuuWIXT-V+vP(kLMwHy8{x1_z4(^z%g)1GKxe!I_Uwv;4k#__%svbS`86*k$B<7+rtT?KzO8V#7`G2oY5hz;PR@6|M4FyA|BzZJecMm7Gv zes1)5vRqqTU0&P-undN%W5@5@gzothcLFevnaNJCYtp!1FAC)_TPYkXv2%-8$)G)= zqEnez8EYQj*rup03sI~)J>QPwsE)KfX?l{R|KQGvi9rNZ|5dafqr$>-IIDVDZ(@rc zmlO_W{n&Tu^7yyUtT5r17fxbsW-c>m74cW17*9DLIOpZT^&_Llj$gwZALIzif~L@x zBJ|wdY$>1bd7OLCRqnQ{^|0{vG`c~@E3>i&a=2)@XLuI-FNB|-!E#ieXP5Qoi~YdR z)v{x4^^E2!;PP!E*I$rZf_mSK57SIcD5Jz5Ncm8_^tebwZ|s8sMG+(9p#~jFZW!xy zhQE4ONB5~LJCJ|B)nqi&#@F!tk=@Jb`%jp9tQHHPPJ>~PhTMzWpO>_A4Wrw9dmAdO z`gI+e3%S8W%U$g`vHH>W<1S3&2TJ1K7F;B$5-(Vcb{6oQB3gcBDrgF!1fllZZ;RSP zYUAg7n5u3`iBAHwr=;JZEQosKR=3g;Xiz;=2i9H7+p?^U z8Tq-|W-6yEdy`2ypZ(=R9c_z-d01(ZR9*}pk%?flGyQiY`FxI&eJ(p2c^!zP(9zcY z4c-=h+uKYsubUtNLo!c`^U}Mi7r9kA8t-R0RCW5~NODmAh0w#MA3i?|**!x53)NbfnQbixdsj$>u{D16 zpK<=Zq=3SVL9@v6*gMMlI$=9o>ioNLdU+eRBFpVET8f4}*8!pyIDcv-OKQ&iv%}<1 zKAPd-{{AqNi?>@Y?<{6Gch^#zsisQj8S(d$1Mk%Ujg+7gzTvmNHu{>8$?PZ^yG%7q zl*RvgrMvtbexq~v*iIFk!sl3DYuTQ4t*zOI6bgx&Og#oCcz?*;isp8>A9ZnIFMaj6 zbfr8MnuMC9s8YVzZLt0a(^_5sQS{W5r{SYtkgG1V z>r^N$=m1E&dzRX#6<0KOse%@vl=$0HPb}3TI z9=-U168KeK$M;Ddo$V!^G5>G~bi2N?{3+e%_!_F(>k;He@2$dO;@7)OJ$8C*T;O?m zn(Pd&4?5`hZl$hoV^Qf4e&hO63~Vr}l@%jk96n~eo+L}TfM6-fhcj{>Wz?PVU61JE zSGB!unoeF-wiQ&n?cdXr2~n#1=TQFiX@W7Dn*)oCLE)AywX@Ih?$iGISEj9*!S{IY z8!R)R!Dm0#i=NCj7-L4SvokM-yVB%9w)&n)$7U3D`I$WRrIJv=N{qxo#kM1_b1U+S zC4RNsf7$+WGJHK8mvu8c^S}yA0$Gt*d3-+bYn9;n8g^CvX+HdJE-~`SlQY5eq4N{awCR3^wkQJ&EZMcHv<Z^OULTZQU*vhx z0;d3vum?dW6&1C&+u;kiqnv!*)QFlISYV2ya zmYtdnI#_biZEihVuJI!{0jiAhgPAD^44ap@czXVw%Bo9`xMaN=uo6AY_9!($p@>8l zZh$C5KfJ$703}pkP>hdGqlfEK2~)TmppoTq8=|>NC4gr<5M{&l26J-!`>NY!N|z_F zBFu|ylH;HEDC&IGeB(E_0q?f&@XyF|HFR)|V2%CXwl-B0pEolfWup}rYw=Rc&Yr_B zZF!pk^dxi3W_p;qfQ_BEP9p02DyTdw2S#IM-sY>kPLdngwMYCkmrWStKM@RM4S!RK zek~~Xr9w$9w2JsRg>YyQN{lQ<;^;mfxbXg~=(MkWu9NnU{ymxX($wVSoKYB4Oimak z27}u7Q}${ZiRXPiZ&=(VCxwTw*1whe#HpTC8Eeb?t@?dNYSoWwbIIv45FRwa&6g3M zkTpT;dEqX9qzavv6#|IDtY15<*6#2aYUn@Nzdy@cm%&kcB-G+E5=agKSx`^L-ru(x z@<#(rrK?+v3PORn>~F3wgTq(jgC@b};As`-fjgg$#~;J}j7JCTv*e$YX+nkr&QKZ3*q9*LuTB|a5Jx5KJ= zjwjD|^KgZO$jTH(N)5c)zxumnzov#-VN|uITbwX&nKmCfarh=6p+IoPPUn|$e1JLS zSaN5{3#L6R`j}TM&)xgsP1*58bWgwVz0Hjr+-us;1&`=D>G2wB76VYCSRn9ox?#04 zMi`NV3)mTb4-wMf5#@@!FAsVVA~VJO}m)0vMoEdPi6lOh$fheBelcSn8HmjB#|`B!k>i(Uk+P) z>gj{S!5=Mlu-6V)Iaj^8ZupTpq;p!uV-*QNBM5kSuSLPY6i(#Z(&?DNxI(G=9CBGU+s5z1B^K zIhbB?=uEO^yG)pN8l*%ifcYpLInD`d8NyOlXzUFfu~xh+@{QXa`*!rfNR^{26K+O%v|xO4F_{(I}D;yI$u52~C` z80@bG+BEpX&|oojz<4+hebcpMew)y}j}muftSDq-rSB&&=8==?d!Q@)p%Ffo6~F`r z_zbdFkObD`&4ZIu9f+Se5TfVx8>LYER2-}?P?tq;MNb#b>%FdNj6kAM26XrwCF;(v zC*sqm4-tnHA{brhUa>cPiLnaXdJSE9edB^V3>u3t_|Hyg1I(?Un^i6@@FeM4|9k|& zk4(Pkel}%~A7?FjyBq1Mj30Bc;Wc0pg7`4}02zg1!72=p10%6?zy?RE=*>~m1|pGS z5(6+7Oq``+V{7I_m)80Anx+y&ekLm4G+FlM8|G0=2&xFY1Ga$>8L-k0ff1*C&xuoC z8z-@`$u5_*zERQpy30mgi|&5IwL_K(WV4&B8%hMMnDroh$EZ$z$u%ggt1F0lrr~0@aq?*fcb+*ZdY&( zvQ~aP$L>B(Xa?cBR$J@LS;x0@P-6`Qq>Pt5^X5Ai#GLUpKP@759_{`I?5cAw%eL|F zGO<#G`Z2ZoYb$E=E+8f#MpY5&9?cIF4BU{`e{k_qsWmnn#E{!UMU*i`sH7h~Yj#ya zzO-~cC`JiF3nF)UC(U8!%!fRXR6b52^xw1+C=^X13^gI803*wr*j4+HoLQpj7raZB zQodkvCo0N>Rv5qigpbJh%*c7@=bjxUT?&t;M63kc=N_WhZ2NAQcl*&y;#HfDIZTSm z6KoN&oZuE^E>t2eQBWKVy+MF^rD5qSr1XeidMv%7nK6_erUfd$91tFKonMVOkGv;@ zFvggSoi0^h467H$=T8{&&k^IKUuPAq&u>*9H?f|Z!`q+>f3N4V+mFjESWr@e79z;= zmiMvi1vt}ZGo>RT6ls;mD%8KcuBHTs<7V^JWCdi>`CZUilX~V@r53GPw*7 ztL#amoFIJcZKV#vkW)vb4(n!o&i<;eG*&V{`|1~;Pdb;#zH~x~sbRqcw=R=FP!M(3 zt>4~u9^h2HovRYG)Ljwls(GDofhRg}r*BhM&c(s5Y_1U2>v}sTs7d|tWrzhTtwkZw zu}7*`FMzXXxhngfoc5Qks-p={<3?+OM%zVV+UL3JO=#cOWKZD{oQ(g{7<+b8z?SB` zdPoazXU6!IDzICN3e_o>o;W!;GRLqe0H-IL|!EayXo{aiUBF%MBw3 zO9Ls=c+*IeFJ@-wluAX)+7HgmX}$Q>+R*47QKJC!bt7%7oxVpwQ;r#I+Awh)EGvnc z3V>YPgq_lT*zFt}^mhp_f^>#EWUF{x1}>J+v6^Zb&3m3RYdqfLJMT8@YlKi0F{AoX z^q~FLfcXKsa8uxBZDRo!3R46@?T0LY&D0GrEIMfGj3?;04RZmVEntnAV=2zg%}`87 z_I9MS3)0*!$5$#P zMk%2)%^8oKJOZxC;us5P^ud&yU`YQA)xdo_roNHtMnQ*EL54W;w|^ZvFZ`*oN~a)y zzb4h{Hf3liggtW54EIO6Wj=93fMJ;|yRbm7fz4v{uqqP%0K-h64D8EBij$~H00j6X z^wKbs5|M!^cX)#p{n&1P?NO>)^1BX(_gUqJv?u^F1*$|D4#H_r?i&;BB#yElkxdLQ z?ov3@XxfVR_1s|Cv7hb#Uahj?b-c2b9YKSF?Sn=l_ZO#GpOG^ALw-#rK8&f<&q^G1 zK%ra$6;ujlw2Tnm@K4B(+!BezVWovh!#1R80il{i1kDRHXH!=f4M;kt?IOY_+{e|ZcS=#&bGu; z$MEh6$E*ccd0Nd!f08!ndvbG^3Zje-bdp3P*2=V9R$FU7x8s93^wOfFy-k`3=e@o! zi5xD?FTN3~s-@2)pkZM_NAN6p>CX4}3@W83)%tU}o11SsV<|doUJ~w7KbUr=P83v6 zZBfW%w~{Gw{@2(b z_W{X~g;XPrdX0R@DxC7-C$Cs))F9389S^yXRWAT@ZyYRM^Gry7ajjmMrHt>w8GMRK zK7B(Qucs;yJ~?sG7e<_4O%mP-x@lh@BEcipRolpOC-F@;RHP$n;IqBZs?^ztEt<}K zN!_b&fY~Vb^kSR=x%E${w(NZ+h6^@HsWop+9YzNUSH)g+` zo&m+FqI7lvM6tJ!b^l%Phmy9=7y+-RVj%zO(7awhGdwE4f{B~4x~)TF*sJu(qSDwh z@#piu#EBCCxn|V&3Gqxn6(9G?v9M?yDO$L4jd=5_6FEyhvI(FUjR~3zEhJYkQ<9$w zEK5L+8kvm&^~Xq(JxM$RUU{qOxg4Tc z6j(UB>ck^eYK#*=G-pI;g$@I%2T-;|3Nl+AY2`QXFVUprAf)_<hS58SI#0xReB*s&$ihUuzDUyiR{dMmjCjgq1zwXl*#p-Y;k}mnlavFaSzPS6_Oq z#V{_60uz@@`GwXh3zHqkN)(d<45H#9WyuV^m_6Z;8{CM(=f;IwKy6}%WCq62Ee~-_ z28fG%eW;AVZFQlN*|gK2P-%ea*lN!UL|u7Y5MpWYozlZj;fU}?u5kPRKaE@x*N zlGg#_m|?>HR((HTWiPF)bwZIjtSboX4(Sm?n6bN3f;q< zVxN6CCT&=aRIANH7h;8&cT~U%D>=fqPA2#)y5foA&U3K>@Wij}penA`P@#t48;Oij z;$gb_LF#n}+bu!&>;5hev$9QHw<`>1;{8Rz;`E4ugg}jHR`RumAOS+o%`hf0AcF0HQL2`N8T`m% zgcs?v9%@07AsNI}PBY6r@2-hF52lmlqJB6B7|Qq$rs;9%?ylNFlI9yy^Y0kSg=@GQbt9+T1b@bpCmtrPtHkIh3Pu=$zvy>=co1~ zM6=u5nlAh78PGNd9Yf=pu%3L4F^(b_iKKu?&9Ff5 zBf=<09$+_V3Iok#xq}M_IoeO8=7^9vH>3262UvnLo2TIMRW)q8Gym~@waclbbABl! zU6P+8X+vzcU(+Ty)#TuKN?VMLU_gc|41r(X z7856}N6=&?g#rc7Lkke2^d!*=Y=J2`a`R!(uTX%xE$pVRF$=m^qv}bt!G?nd>8DSD z2qA06wMEvMAvf+QQc)+MBgt2Ki3O?y_8aL&snr%(m>G9i+M;bf1~Vq>Zmy^MpRPW7 z{Uqyne$C^t>$tuAgH^$6V5qH!t!>eKqOKT2r-DPV&Sm6eP8vyo@uem#(JO&A#NyV?&pin5w=t%6BWrAS$2^(XF8+sN$@7>R((#;ruNztPI=%;iljOUH7;#b!k8Nkm1#AT0o3 z^6Nv4*BB_2`QnObtu8vf`R zvLvk$>J-*GA!e2jJ>CDqJh!&Otd0*8rjQvFVH`p1$($P1G*J(4qOQVho*u#ACoNUe z`-7~CA2_Pj?EpR$mB}4+HxQ3{5Mn5l&yH=(w1$(0lb2FbQ!~4Bb36kqZTINH!kKh9 zA;GIgS$nbdVJx%$5hmE-JAcyv7HdSEMbuAuc-1l1$@^5{(JuVj(L#}0s^)3Kl9fN z6%Sjb19ZNvz0J0^m5I(c%Q)%fb^uI3a62b?NVJ;JY5DV?p{V@4O2tfGlZww=V5JPz z=`mV)qlRd?l`{X0vQU^Dzfho_9uX+&FxmIhtZnI@TOM7aN1Kr<@4j2gPieGnHb=kM?y{i^O6Y~qaTSjn|4}=i;$Hso>vsiPkJk-rfF^~Vo&(ktW z$&(atp?f{(w)dFM%UoYl+Xm>5pq+_jz8g^kR3eb6w z39wiHPDO2W%-mT&D6?H~yld<^Jn1?vWfR9H89Vr?I?LclO9|l|HBM>EVITvv5N@|9 zYa#Wl0F$nh3GtN2VXK_i8II1)Q(vplGn?8OFA|P;CSBVq_snjPk$2OIlS{{p!MoRdyQm%ok~Vt zy0?1cLiMHfLX%>mTHaVlKAd^VSp#Ae)L>IajF+mCC2Tfp90JJbyqgOfHYmaq!0aH9 z>>&MeZ;ZQ+$AG-WSMRQ1Ow`cdfY{9TcYDZ#K`OS8gg8B=dAqB}$jc3!&5QB~=S{rS z6&>aX$3?wTeb4(6>PXO>Lk_%}13p)Z*t{xk>GEf*6H2WsqU;f?asw+P=oaQ{A7IxCN(XLUC>yP?`i!BV@cn&PzdclDF{ z&{)L{aA!!}8%#p_AgNqe^SAunKAI`A!_bE4@l$rD>$MVx zr%!x>2s{G?HQTl2&dfUTY2))~?l3>{F=5m9YH?y8&X&gPyN5;Qv-hs2<{>#!38^vGmNbJ?_{_9|N-4lsvFAxtDq$jV)|wqW-?$58%wm z(+(a&7To+toJ#x~0p1fEG3HTNDQ$H8<%0*jPGn2Wmui}oK-{G5mw=Y7(Hsj34({K( z&*dyDS(&VZu8SREY2DP% zuAiz+QUrV9HfpW|Q~wTh;xxPfkc0c#bbQ{|(NlpKm7`A7R=2A5U~wf1fXb>wbIQg$ zWK0Nu2{SiLRHDF|GQTt?NI+3OzthC#VtDpS+fCeZyiGR#g_cKCQAlbai*b=N^ z>HYZPb(#a4b<5LlmY0sP>M;w1Uo;lF0OX1??Yc)+kQDUWb4G`_g>u?NMG*a!dO}b` z0Hn5nGXWO&91?}&1=DXX1-6ajWMHW+Tx66EOXaCw;*m!=tEfg=$0s%+#K$@-O&;b^ z!mRp(ljx9BQyA=;Zs`T5+$aW?)4b$5TYjj{C%ElP!4EP+E6GW>yIfJt!zruK0JALL zqQEntDTGwdOYeXrHDY5BO5QEs9E?5?2{@74T4tmbtgyF-)8%cXcckzwI-6QCsz0ZDKqoq*TsS$ZvyBlGv+0ET4 z4OJa)OqTxeT$UEt@lWXav?TezL1fBgV&pr=|sQ>Ssp5| zv@dc1xFPDXy z&yJo~#7Xs5$C^C$05mjBQ_}a{#oscoSC(3bPp%3asmwLMB*z^=Oa{;;da(?pIsD4bjs- z!)^|xmof@J@oqn+CBsd#r3hk<;OQ`N*_b8Nj(qB5wR$`u-U!^7hjci;pU8H;%=^DPr2hi3`m>q< literal 0 HcmV?d00001 diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..d2cad2c --- /dev/null +++ b/package-lock.json @@ -0,0 +1,5078 @@ +{ + "name": "lunch4", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "dependencies": { + "@capacitor-community/electron": "^5.0.1", + "@capacitor/cli": "^7.4.4", + "@capacitor/core": "^8.0.0", + "electron": "^39.2.7" + }, + "devDependencies": { + "electron-builder": "^26.4.0" + } + }, + "node_modules/@capacitor-community/electron": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@capacitor-community/electron/-/electron-5.0.1.tgz", + "integrity": "sha512-4/x12ycTq0Kq8JIn/BmIBdFVP5Cqw8iA6SU6YfFjmONfjW3OELwsB3zwLxOwAjLxnjyCMOBHl4ci9E5jLgZgAQ==", + "license": "MIT", + "dependencies": { + "@capacitor/cli": ">=5.4.0", + "@capacitor/core": ">=5.4.0", + "@ionic/utils-fs": "~3.1.6", + "chalk": "^4.1.2", + "electron-is-dev": "~2.0.0", + "events": "~3.3.0", + "fs-extra": "~11.1.1", + "keyv": "^4.5.2", + "mime-types": "~2.1.35", + "ora": "^5.4.1" + } + }, + "node_modules/@capacitor-community/electron/node_modules/fs-extra": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", + "integrity": "sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@capacitor/cli": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@capacitor/cli/-/cli-7.4.4.tgz", + "integrity": "sha512-J7ciBE7GlJ70sr2s8oz1+H4ZdNk4MGG41fsakUlDHWva5UWgFIZYMiEdDvGbYazAYTaxN3lVZpH9zil9FfZj+Q==", + "license": "MIT", + "dependencies": { + "@ionic/cli-framework-output": "^2.2.8", + "@ionic/utils-subprocess": "^3.0.1", + "@ionic/utils-terminal": "^2.3.5", + "commander": "^12.1.0", + "debug": "^4.4.0", + "env-paths": "^2.2.0", + "fs-extra": "^11.2.0", + "kleur": "^4.1.5", + "native-run": "^2.0.1", + "open": "^8.4.0", + "plist": "^3.1.0", + "prompts": "^2.4.2", + "rimraf": "^6.0.1", + "semver": "^7.6.3", + "tar": "^6.1.11", + "tslib": "^2.8.1", + "xml2js": "^0.6.2" + }, + "bin": { + "cap": "bin/capacitor", + "capacitor": "bin/capacitor" + }, + "engines": { + "node": ">=20.0.0" + } + }, + "node_modules/@capacitor/core": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@capacitor/core/-/core-8.0.0.tgz", + "integrity": "sha512-250HTVd/W/KdMygoqaedisvNbHbpbQTN2Hy/8ZYGm1nAqE0Fx7sGss4l0nDg33STxEdDhtVRoL2fIaaiukKseA==", + "license": "MIT", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/@develar/schema-utils": { + "version": "2.6.5", + "resolved": "https://registry.npmjs.org/@develar/schema-utils/-/schema-utils-2.6.5.tgz", + "integrity": "sha512-0cp4PsWQ/9avqTVMCtZ+GirikIA36ikvjtHweU4/j8yLtgObI0+JUPhYFScgwlteveGB1rt3Cm8UhN04XayDig==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.0", + "ajv-keywords": "^3.4.1" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/@electron/asar": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/@electron/asar/-/asar-3.4.1.tgz", + "integrity": "sha512-i4/rNPRS84t0vSRa2HorerGRXWyF4vThfHesw0dmcWHp+cspK743UanA0suA5Q5y8kzY2y6YKrvbIUn69BCAiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "commander": "^5.0.0", + "glob": "^7.1.6", + "minimatch": "^3.0.4" + }, + "bin": { + "asar": "bin/asar.js" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/@electron/asar/node_modules/commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/@electron/asar/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@electron/asar/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@electron/fuses": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@electron/fuses/-/fuses-1.8.0.tgz", + "integrity": "sha512-zx0EIq78WlY/lBb1uXlziZmDZI4ubcCXIMJ4uGjXzZW0nS19TjSPeXPAjzzTmKQlJUZm0SbmZhPKP7tuQ1SsEw==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.1.1", + "fs-extra": "^9.0.1", + "minimist": "^1.2.5" + }, + "bin": { + "electron-fuses": "dist/bin.js" + } + }, + "node_modules/@electron/fuses/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/get": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@electron/get/-/get-2.0.3.tgz", + "integrity": "sha512-Qkzpg2s9GnVV2I2BjRksUi43U5e6+zaQMcjoJy0C+C5oxaKl+fmckGDQFtRpZpZV0NQekuZZ+tGz7EA9TVnQtQ==", + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "env-paths": "^2.2.0", + "fs-extra": "^8.1.0", + "got": "^11.8.5", + "progress": "^2.0.3", + "semver": "^6.2.0", + "sumchecker": "^3.0.1" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "global-agent": "^3.0.0" + } + }, + "node_modules/@electron/get/node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/@electron/get/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "license": "MIT", + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/get/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@electron/get/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "license": "MIT", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/@electron/notarize": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@electron/notarize/-/notarize-2.5.0.tgz", + "integrity": "sha512-jNT8nwH1f9X5GEITXaQ8IF/KdskvIkOFfB2CvwumsveVidzpSc+mvhhTMdAGSYF3O+Nq49lJ7y+ssODRXu06+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "fs-extra": "^9.0.1", + "promise-retry": "^2.0.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@electron/notarize/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/osx-sign": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@electron/osx-sign/-/osx-sign-1.3.3.tgz", + "integrity": "sha512-KZ8mhXvWv2rIEgMbWZ4y33bDHyUKMXnx4M0sTyPNK/vcB81ImdeY9Ggdqy0SWbMDgmbqyQ+phgejh6V3R2QuSg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "compare-version": "^0.1.2", + "debug": "^4.3.4", + "fs-extra": "^10.0.0", + "isbinaryfile": "^4.0.8", + "minimist": "^1.2.6", + "plist": "^3.0.5" + }, + "bin": { + "electron-osx-flat": "bin/electron-osx-flat.js", + "electron-osx-sign": "bin/electron-osx-sign.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@electron/osx-sign/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@electron/osx-sign/node_modules/isbinaryfile": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", + "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/@electron/rebuild": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@electron/rebuild/-/rebuild-4.0.1.tgz", + "integrity": "sha512-iMGXb6Ib7H/Q3v+BKZJoETgF9g6KMNZVbsO4b7Dmpgb5qTFqyFTzqW9F3TOSHdybv2vKYKzSS9OiZL+dcJb+1Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@malept/cross-spawn-promise": "^2.0.0", + "chalk": "^4.0.0", + "debug": "^4.1.1", + "detect-libc": "^2.0.1", + "got": "^11.7.0", + "graceful-fs": "^4.2.11", + "node-abi": "^4.2.0", + "node-api-version": "^0.2.1", + "node-gyp": "^11.2.0", + "ora": "^5.1.0", + "read-binary-file-arch": "^1.0.6", + "semver": "^7.3.5", + "tar": "^6.0.5", + "yargs": "^17.0.1" + }, + "bin": { + "electron-rebuild": "lib/cli.js" + }, + "engines": { + "node": ">=22.12.0" + } + }, + "node_modules/@electron/universal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@electron/universal/-/universal-2.0.3.tgz", + "integrity": "sha512-Wn9sPYIVFRFl5HmwMJkARCCf7rqK/EurkfQ/rJZ14mHP3iYTjZSIOSVonEAnhWeAXwtw7zOekGRlc6yTtZ0t+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@electron/asar": "^3.3.1", + "@malept/cross-spawn-promise": "^2.0.0", + "debug": "^4.3.1", + "dir-compare": "^4.2.0", + "fs-extra": "^11.1.1", + "minimatch": "^9.0.3", + "plist": "^3.1.0" + }, + "engines": { + "node": ">=16.4" + } + }, + "node_modules/@electron/universal/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@electron/universal/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@electron/windows-sign": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@electron/windows-sign/-/windows-sign-1.2.2.tgz", + "integrity": "sha512-dfZeox66AvdPtb2lD8OsIIQh12Tp0GNCRUDfBHIKGpbmopZto2/A8nSpYYLoedPIHpqkeblZ/k8OV0Gy7PYuyQ==", + "dev": true, + "license": "BSD-2-Clause", + "optional": true, + "peer": true, + "dependencies": { + "cross-dirname": "^0.1.0", + "debug": "^4.3.4", + "fs-extra": "^11.1.1", + "minimist": "^1.2.8", + "postject": "^1.0.0-alpha.6" + }, + "bin": { + "electron-windows-sign": "bin/electron-windows-sign.js" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/@ionic/cli-framework-output": { + "version": "2.2.8", + "resolved": "https://registry.npmjs.org/@ionic/cli-framework-output/-/cli-framework-output-2.2.8.tgz", + "integrity": "sha512-TshtaFQsovB4NWRBydbNFawql6yul7d5bMiW1WYYf17hd99V6xdDdk3vtF51bw6sLkxON3bDQpWsnUc9/hVo3g==", + "license": "MIT", + "dependencies": { + "@ionic/utils-terminal": "2.3.5", + "debug": "^4.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-array": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@ionic/utils-array/-/utils-array-2.1.6.tgz", + "integrity": "sha512-0JZ1Zkp3wURnv8oq6Qt7fMPo5MpjbLoUoa9Bu2Q4PJuSDWM8H8gwF3dQO7VTeUj3/0o1IB1wGkFWZZYgUXZMUg==", + "license": "MIT", + "dependencies": { + "debug": "^4.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-fs": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/@ionic/utils-fs/-/utils-fs-3.1.7.tgz", + "integrity": "sha512-2EknRvMVfhnyhL1VhFkSLa5gOcycK91VnjfrTB0kbqkTFCOXyXgVLI5whzq7SLrgD9t1aqos3lMMQyVzaQ5gVA==", + "license": "MIT", + "dependencies": { + "@types/fs-extra": "^8.0.0", + "debug": "^4.0.0", + "fs-extra": "^9.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-fs/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@ionic/utils-object": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@ionic/utils-object/-/utils-object-2.1.6.tgz", + "integrity": "sha512-vCl7sl6JjBHFw99CuAqHljYJpcE88YaH2ZW4ELiC/Zwxl5tiwn4kbdP/gxi2OT3MQb1vOtgAmSNRtusvgxI8ww==", + "license": "MIT", + "dependencies": { + "debug": "^4.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-process": { + "version": "2.1.12", + "resolved": "https://registry.npmjs.org/@ionic/utils-process/-/utils-process-2.1.12.tgz", + "integrity": "sha512-Jqkgyq7zBs/v/J3YvKtQQiIcxfJyplPgECMWgdO0E1fKrrH8EF0QGHNJ9mJCn6PYe2UtHNS8JJf5G21e09DfYg==", + "license": "MIT", + "dependencies": { + "@ionic/utils-object": "2.1.6", + "@ionic/utils-terminal": "2.3.5", + "debug": "^4.0.0", + "signal-exit": "^3.0.3", + "tree-kill": "^1.2.2", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-stream": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/@ionic/utils-stream/-/utils-stream-3.1.7.tgz", + "integrity": "sha512-eSELBE7NWNFIHTbTC2jiMvh1ABKGIpGdUIvARsNPMNQhxJB3wpwdiVnoBoTYp+5a6UUIww4Kpg7v6S7iTctH1w==", + "license": "MIT", + "dependencies": { + "debug": "^4.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-subprocess": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@ionic/utils-subprocess/-/utils-subprocess-3.0.1.tgz", + "integrity": "sha512-cT4te3AQQPeIM9WCwIg8ohroJ8TjsYaMb2G4ZEgv9YzeDqHZ4JpeIKqG2SoaA3GmVQ3sOfhPM6Ox9sxphV/d1A==", + "license": "MIT", + "dependencies": { + "@ionic/utils-array": "2.1.6", + "@ionic/utils-fs": "3.1.7", + "@ionic/utils-process": "2.1.12", + "@ionic/utils-stream": "3.1.7", + "@ionic/utils-terminal": "2.3.5", + "cross-spawn": "^7.0.3", + "debug": "^4.0.0", + "tslib": "^2.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ionic/utils-terminal": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@ionic/utils-terminal/-/utils-terminal-2.3.5.tgz", + "integrity": "sha512-3cKScz9Jx2/Pr9ijj1OzGlBDfcmx7OMVBt4+P1uRR0SSW4cm1/y3Mo4OY3lfkuaYifMNBW8Wz6lQHbs1bihr7A==", + "license": "MIT", + "dependencies": { + "@types/slice-ansi": "^4.0.0", + "debug": "^4.0.0", + "signal-exit": "^3.0.3", + "slice-ansi": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "tslib": "^2.0.1", + "untildify": "^4.0.0", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@isaacs/balanced-match": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz", + "integrity": "sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==", + "license": "MIT", + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@isaacs/brace-expansion": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz", + "integrity": "sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==", + "license": "MIT", + "dependencies": { + "@isaacs/balanced-match": "^4.0.1" + }, + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", + "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", + "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/fs-minipass": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz", + "integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.4" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@malept/cross-spawn-promise": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@malept/cross-spawn-promise/-/cross-spawn-promise-2.0.0.tgz", + "integrity": "sha512-1DpKU0Z5ThltBwjNySMC14g0CkbyhCaz9FkhxqNsZI6uAPJXFS8cMXlBKo26FJ8ZuW6S9GCMcR9IO5k2X5/9Fg==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/malept" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/subscription/pkg/npm-.malept-cross-spawn-promise?utm_medium=referral&utm_source=npm_fund" + } + ], + "license": "Apache-2.0", + "dependencies": { + "cross-spawn": "^7.0.1" + }, + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/@malept/flatpak-bundler": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@malept/flatpak-bundler/-/flatpak-bundler-0.4.0.tgz", + "integrity": "sha512-9QOtNffcOF/c1seMCDnjckb3R9WHcG34tky+FHpNKKCW0wc/scYLwMtO+ptyGUfMW0/b/n4qRiALlaFHc9Oj7Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "fs-extra": "^9.0.0", + "lodash": "^4.17.15", + "tmp-promise": "^3.0.2" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@malept/flatpak-bundler/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-3.0.0.tgz", + "integrity": "sha512-S79NdEgDQd/NGCay6TCoVzXSj74skRZIKJcpJjC5lOq34SZzyI6MqtiiWoiVWoVrTcGjNeC4ipbh1VIHlpfF5Q==", + "dev": true, + "license": "ISC", + "dependencies": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.3" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@npmcli/agent/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/@npmcli/fs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-4.0.0.tgz", + "integrity": "sha512-/xGlezI6xfGO9NwuJlnwz/K14qD1kCSAGtacBHnGzeAIuJGazcp45KP5NuyARXoKb7cwulAGWVsbeSxdG/cb0Q==", + "dev": true, + "license": "ISC", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@sindresorhus/is": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", + "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz", + "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==", + "license": "MIT", + "dependencies": { + "defer-to-connect": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@types/cacheable-request": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz", + "integrity": "sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==", + "license": "MIT", + "dependencies": { + "@types/http-cache-semantics": "*", + "@types/keyv": "^3.1.4", + "@types/node": "*", + "@types/responselike": "^1.0.0" + } + }, + "node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/fs-extra": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.5.tgz", + "integrity": "sha512-0dzKcwO+S8s2kuF5Z9oUWatQJj5Uq/iqphEtE3GQJVRRYm/tD1LglU2UnXi2A8jLq5umkGouOXOR9y0n613ZwQ==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/http-cache-semantics": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz", + "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==", + "license": "MIT" + }, + "node_modules/@types/keyv": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz", + "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/ms": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", + "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "25.0.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.0.3.tgz", + "integrity": "sha512-W609buLVRVmeW693xKfzHeIV6nJGGz98uCPfeXI1ELMLXVeKYZ9m15fAMSaUPBHYLGFsVRcMmSCksQOrZV9BYA==", + "license": "MIT", + "dependencies": { + "undici-types": "~7.16.0" + } + }, + "node_modules/@types/plist": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/plist/-/plist-3.0.5.tgz", + "integrity": "sha512-E6OCaRmAe4WDmWNsL/9RMqdkkzDCY1etutkflWk4c+AcjDU07Pcz1fQwTX0TQz+Pxqn9i4L1TU3UFpjnrcDgxA==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@types/node": "*", + "xmlbuilder": ">=11.0.1" + } + }, + "node_modules/@types/responselike": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz", + "integrity": "sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-+OpjSaq85gvlZAYINyzKpLeiFkSC4EsC6IIiT6v6TLSU5k5U83fHGj9Lel8oKEXM0HqgrMVCjXPDPVICtxF7EQ==", + "license": "MIT" + }, + "node_modules/@types/verror": { + "version": "1.10.11", + "resolved": "https://registry.npmjs.org/@types/verror/-/verror-1.10.11.tgz", + "integrity": "sha512-RlDm9K7+o5stv0Co8i8ZRGxDbrTxhJtgjqjFyVh/tXQyl/rYtTKlnTvZ88oSTeYREWurwx20Js4kTuKCsFkUtg==", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/@types/yauzl": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz", + "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==", + "license": "MIT", + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@xmldom/xmldom": { + "version": "0.8.11", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.11.tgz", + "integrity": "sha512-cQzWCtO6C8TQiYl1ruKNn2U6Ao4o4WBBcbL61yJl84x+j5sOWWFU9X7DpND8XZG3daDppSsigMdfAIl2upQBRw==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/7zip-bin": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/7zip-bin/-/7zip-bin-5.2.0.tgz", + "integrity": "sha512-ukTPVhqG4jNzMro2qA9HSCSSVJN3aN7tlb+hfqYCt3ER0yWroeA2VR38MNrOHLQ/cVj+DaIMad0kFCtWWowh/A==", + "dev": true, + "license": "MIT" + }, + "node_modules/abbrev": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-3.0.1.tgz", + "integrity": "sha512-AO2ac6pjRB3SJmGJo+v5/aK6Omggp6fsLrs6wN9bd35ulu4cCwaAU9+7ZhXjeqHVkaHThLuzH0nZr0YpCDhygg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 14" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "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==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/app-builder-bin": { + "version": "5.0.0-alpha.12", + "resolved": "https://registry.npmjs.org/app-builder-bin/-/app-builder-bin-5.0.0-alpha.12.tgz", + "integrity": "sha512-j87o0j6LqPL3QRr8yid6c+Tt5gC7xNfYo6uQIQkorAC6MpeayVMZrEDzKmJJ/Hlv7EnOQpaRm53k6ktDYZyB6w==", + "dev": true, + "license": "MIT" + }, + "node_modules/app-builder-lib": { + "version": "26.4.0", + "resolved": "https://registry.npmjs.org/app-builder-lib/-/app-builder-lib-26.4.0.tgz", + "integrity": "sha512-Uas6hNe99KzP3xPWxh5LGlH8kWIVjZixzmMJHNB9+6hPyDpjc7NQMkVgi16rQDdpCFy22ZU5sp8ow7tvjeMgYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@develar/schema-utils": "~2.6.5", + "@electron/asar": "3.4.1", + "@electron/fuses": "^1.8.0", + "@electron/notarize": "2.5.0", + "@electron/osx-sign": "1.3.3", + "@electron/rebuild": "4.0.1", + "@electron/universal": "2.0.3", + "@malept/flatpak-bundler": "^0.4.0", + "@types/fs-extra": "9.0.13", + "async-exit-hook": "^2.0.1", + "builder-util": "26.3.4", + "builder-util-runtime": "9.5.1", + "chromium-pickle-js": "^0.2.0", + "ci-info": "4.3.1", + "debug": "^4.3.4", + "dotenv": "^16.4.5", + "dotenv-expand": "^11.0.6", + "ejs": "^3.1.8", + "electron-publish": "26.3.4", + "fs-extra": "^10.1.0", + "hosted-git-info": "^4.1.0", + "isbinaryfile": "^5.0.0", + "jiti": "^2.4.2", + "js-yaml": "^4.1.0", + "json5": "^2.2.3", + "lazy-val": "^1.0.5", + "minimatch": "^10.0.3", + "plist": "3.1.0", + "resedit": "^1.7.0", + "semver": "~7.7.3", + "tar": "^6.1.12", + "temp-file": "^3.4.0", + "tiny-async-pool": "1.3.0", + "which": "^5.0.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "dmg-builder": "26.4.0", + "electron-builder-squirrel-windows": "26.4.0" + } + }, + "node_modules/app-builder-lib/node_modules/@types/fs-extra": { + "version": "9.0.13", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.13.tgz", + "integrity": "sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/app-builder-lib/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/app-builder-lib/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16" + } + }, + "node_modules/app-builder-lib/node_modules/which": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", + "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "dev": true, + "license": "MIT" + }, + "node_modules/async-exit-hook": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/async-exit-hook/-/async-exit-hook-2.0.1.tgz", + "integrity": "sha512-NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "license": "ISC", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/big-integer": { + "version": "1.6.52", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", + "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", + "license": "Unlicense", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "license": "MIT", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/boolean": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.2.0.tgz", + "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "license": "MIT", + "optional": true + }, + "node_modules/bplist-parser": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.3.2.tgz", + "integrity": "sha512-apC2+fspHGI3mMKj+dGevkGo/tCqVB8jMb6i+OX+E29p0Iposz07fABkRIfVUPNd5A5VbuOz1bZbnmkKLYF+wQ==", + "license": "MIT", + "dependencies": { + "big-integer": "1.6.x" + }, + "engines": { + "node": ">= 5.10.0" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", + "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/builder-util": { + "version": "26.3.4", + "resolved": "https://registry.npmjs.org/builder-util/-/builder-util-26.3.4.tgz", + "integrity": "sha512-aRn88mYMktHxzdqDMF6Ayj0rKoX+ZogJ75Ck7RrIqbY/ad0HBvnS2xA4uHfzrGr5D2aLL3vU6OBEH4p0KMV2XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/debug": "^4.1.6", + "7zip-bin": "~5.2.0", + "app-builder-bin": "5.0.0-alpha.12", + "builder-util-runtime": "9.5.1", + "chalk": "^4.1.2", + "cross-spawn": "^7.0.6", + "debug": "^4.3.4", + "fs-extra": "^10.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.0", + "js-yaml": "^4.1.0", + "sanitize-filename": "^1.6.3", + "source-map-support": "^0.5.19", + "stat-mode": "^1.0.0", + "temp-file": "^3.4.0", + "tiny-async-pool": "1.3.0" + } + }, + "node_modules/builder-util-runtime": { + "version": "9.5.1", + "resolved": "https://registry.npmjs.org/builder-util-runtime/-/builder-util-runtime-9.5.1.tgz", + "integrity": "sha512-qt41tMfgHTllhResqM5DcnHyDIWNgzHvuY2jDcYP9iaGpkWxTUzV6GQjDeLnlR1/DtdlcsWQbA7sByMpmJFTLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.3.4", + "sax": "^1.2.4" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/builder-util-runtime/node_modules/sax": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.3.tgz", + "integrity": "sha512-yqYn1JhPczigF94DMS+shiDMjDowYO6y9+wB/4WgO0Y19jWYk0lQ4tuG5KI7kj4FTp1wxPj5IFfcrz/s1c3jjQ==", + "dev": true, + "license": "BlueOak-1.0.0" + }, + "node_modules/builder-util/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/cacache": { + "version": "19.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-19.0.1.tgz", + "integrity": "sha512-hdsUxulXCi5STId78vRVYEtDAjq99ICAUktLTeTYsLoTE6Z8dS0c8pWNCxwdrk9YfJeobDZc2Y186hD/5ZQgFQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "@npmcli/fs": "^4.0.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^7.0.2", + "ssri": "^12.0.0", + "tar": "^7.4.3", + "unique-filename": "^4.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/cacache/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/cacache/node_modules/chownr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/cacache/node_modules/fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/cacache/node_modules/glob": { + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", + "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", + "dev": true, + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/cacache/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/minizlib": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz", + "integrity": "sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^7.1.2" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/cacache/node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/tar": { + "version": "7.5.2", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.2.tgz", + "integrity": "sha512-7NyxrTE4Anh8km8iEy7o0QYPs+0JKBTj5ZaqHg6B39erLg0qYXN3BijtShwbsNSvQ+LN75+KV+C4QR/f6Gwnpg==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.1.0", + "yallist": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/cacache/node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/cacheable-lookup": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", + "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", + "license": "MIT", + "engines": { + "node": ">=10.6.0" + } + }, + "node_modules/cacheable-request": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.4.tgz", + "integrity": "sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==", + "license": "MIT", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/chromium-pickle-js": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/chromium-pickle-js/-/chromium-pickle-js-0.2.0.tgz", + "integrity": "sha512-1R5Fho+jBq0DDydt+/vHWj5KJNJCKdARKOCwZUen84I5BreWoLqRLANH1U87eJy1tiASPtMnGqJJq0ZsLoRPOw==", + "dev": true, + "license": "MIT" + }, + "node_modules/ci-info": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.3.1.tgz", + "integrity": "sha512-Wdy2Igu8OcBpI2pZePZ5oWjPC38tmDVx5WKUXKwlLYkA0ozo85sLsLvkBbBn/sZaSCMFOGZJ14fvW9t5/d7kdA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "license": "MIT", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-truncate/node_modules/slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "license": "MIT", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "license": "MIT" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/compare-version": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/compare-version/-/compare-version-0.1.2.tgz", + "integrity": "sha512-pJDh5/4wrEnXX/VWRZvruAGHkzKdr46z11OlTPN+VrATlWWhSKewNCJ1futCO5C7eJB3nPMFZA1LeYtcFboZ2A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/crc": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz", + "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "buffer": "^5.1.0" + } + }, + "node_modules/cross-dirname": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/cross-dirname/-/cross-dirname-0.1.0.tgz", + "integrity": "sha512-+R08/oI0nl3vfPcqftZRpytksBXDzOUveBq/NBVx0sUp1axwzPQrKinNx5yd5sxPu8j1wIy8AfnVQ+5eFdha6Q==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "license": "MIT", + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decompress-response/node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "license": "MIT", + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "license": "MIT", + "optional": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "license": "MIT", + "optional": true, + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "license": "MIT", + "optional": true + }, + "node_modules/dir-compare": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/dir-compare/-/dir-compare-4.2.0.tgz", + "integrity": "sha512-2xMCmOoMrdQIPHdsTawECdNPwlVFB9zGcz3kuhmBO6U3oU+UQjsue0i8ayLKpgBcm+hcXPMVSGUN9d+pvJ6+VQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimatch": "^3.0.5", + "p-limit": "^3.1.0 " + } + }, + "node_modules/dir-compare/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/dmg-builder": { + "version": "26.4.0", + "resolved": "https://registry.npmjs.org/dmg-builder/-/dmg-builder-26.4.0.tgz", + "integrity": "sha512-ce4Ogns4VMeisIuCSK0C62umG0lFy012jd8LMZ6w/veHUeX4fqfDrGe+HTWALAEwK6JwKP+dhPvizhArSOsFbg==", + "dev": true, + "license": "MIT", + "dependencies": { + "app-builder-lib": "26.4.0", + "builder-util": "26.3.4", + "fs-extra": "^10.1.0", + "iconv-lite": "^0.6.2", + "js-yaml": "^4.1.0" + }, + "optionalDependencies": { + "dmg-license": "^1.0.11" + } + }, + "node_modules/dmg-builder/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/dmg-license": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/dmg-license/-/dmg-license-1.0.11.tgz", + "integrity": "sha512-ZdzmqwKmECOWJpqefloC5OJy1+WZBBse5+MR88z9g9Zn4VY+WYUkAyojmhzJckH5YbbZGcYIuGAkY5/Ys5OM2Q==", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "@types/plist": "^3.0.1", + "@types/verror": "^1.10.3", + "ajv": "^6.10.0", + "crc": "^3.8.0", + "iconv-corefoundation": "^1.1.7", + "plist": "^3.0.4", + "smart-buffer": "^4.0.2", + "verror": "^1.10.0" + }, + "bin": { + "dmg-license": "bin/dmg-license.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dotenv": { + "version": "16.6.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.6.1.tgz", + "integrity": "sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, + "node_modules/dotenv-expand": { + "version": "11.0.7", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-11.0.7.tgz", + "integrity": "sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "dotenv": "^16.4.5" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true, + "license": "MIT" + }, + "node_modules/ejs": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/electron": { + "version": "39.2.7", + "resolved": "https://registry.npmjs.org/electron/-/electron-39.2.7.tgz", + "integrity": "sha512-KU0uFS6LSTh4aOIC3miolcbizOFP7N1M46VTYVfqIgFiuA2ilfNaOHLDS9tCMvwwHRowAsvqBrh9NgMXcTOHCQ==", + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "@electron/get": "^2.0.0", + "@types/node": "^22.7.7", + "extract-zip": "^2.0.1" + }, + "bin": { + "electron": "cli.js" + }, + "engines": { + "node": ">= 12.20.55" + } + }, + "node_modules/electron-builder": { + "version": "26.4.0", + "resolved": "https://registry.npmjs.org/electron-builder/-/electron-builder-26.4.0.tgz", + "integrity": "sha512-FCUqvdq2AULL+Db2SUGgjOYTbrgkPxZtCjqIZGnjH9p29pTWyesQqBIfvQBKa6ewqde87aWl49n/WyI/NyUBog==", + "dev": true, + "license": "MIT", + "dependencies": { + "app-builder-lib": "26.4.0", + "builder-util": "26.3.4", + "builder-util-runtime": "9.5.1", + "chalk": "^4.1.2", + "ci-info": "^4.2.0", + "dmg-builder": "26.4.0", + "fs-extra": "^10.1.0", + "lazy-val": "^1.0.5", + "simple-update-notifier": "2.0.0", + "yargs": "^17.6.2" + }, + "bin": { + "electron-builder": "cli.js", + "install-app-deps": "install-app-deps.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/electron-builder-squirrel-windows": { + "version": "26.4.0", + "resolved": "https://registry.npmjs.org/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-26.4.0.tgz", + "integrity": "sha512-7dvalY38xBzWNaoOJ4sqy2aGIEpl2S1gLPkkB0MHu1Hu5xKQ82il1mKSFlXs6fLpXUso/NmyjdHGlSHDRoG8/w==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "app-builder-lib": "26.4.0", + "builder-util": "26.3.4", + "electron-winstaller": "5.4.0" + } + }, + "node_modules/electron-builder/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-is-dev": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/electron-is-dev/-/electron-is-dev-2.0.0.tgz", + "integrity": "sha512-3X99K852Yoqu9AcW50qz3ibYBWY79/pBhlMCab8ToEWS48R0T9tyxRiQhwylE7zQdXrMnx2JKqUJyMPmt5FBqA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/electron-publish": { + "version": "26.3.4", + "resolved": "https://registry.npmjs.org/electron-publish/-/electron-publish-26.3.4.tgz", + "integrity": "sha512-5/ouDPb73SkKuay2EXisPG60LTFTMNHWo2WLrK5GDphnWK9UC+yzYrzVeydj078Yk4WUXi0+TaaZsNd6Zt5k/A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/fs-extra": "^9.0.11", + "builder-util": "26.3.4", + "builder-util-runtime": "9.5.1", + "chalk": "^4.1.2", + "form-data": "^4.0.0", + "fs-extra": "^10.1.0", + "lazy-val": "^1.0.5", + "mime": "^2.5.2" + } + }, + "node_modules/electron-publish/node_modules/@types/fs-extra": { + "version": "9.0.13", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-9.0.13.tgz", + "integrity": "sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/electron-publish/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-winstaller": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/electron-winstaller/-/electron-winstaller-5.4.0.tgz", + "integrity": "sha512-bO3y10YikuUwUuDUQRM4KfwNkKhnpVO7IPdbsrejwN9/AABJzzTQ4GeHwyzNSrVO+tEH3/Np255a3sVZpZDjvg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@electron/asar": "^3.2.1", + "debug": "^4.1.1", + "fs-extra": "^7.0.1", + "lodash": "^4.17.21", + "temp": "^0.9.0" + }, + "engines": { + "node": ">=8.0.0" + }, + "optionalDependencies": { + "@electron/windows-sign": "^1.1.2" + } + }, + "node_modules/electron-winstaller/node_modules/fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/electron-winstaller/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "license": "MIT", + "peer": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/electron-winstaller/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/electron/node_modules/@types/node": { + "version": "22.19.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.3.tgz", + "integrity": "sha512-1N9SBnWYOJTrNZCdh/yJE+t910Y128BoyY+zBLWhL3r0TYzlTmFdXrPwHL9DyFZmlEXNQQolTZh3KHV31QDhyA==", + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/electron/node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "license": "MIT" + }, + "node_modules/elementtree": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/elementtree/-/elementtree-0.1.7.tgz", + "integrity": "sha512-wkgGT6kugeQk/P6VZ/f4T+4HB41BVgNBq5CDIZVbQ02nvTVqAiVTbskxxu3eA/X96lMlfYOwnLQpN2v5E1zDEg==", + "license": "Apache-2.0", + "dependencies": { + "sax": "1.1.4" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "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==", + "license": "MIT" + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.5", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.5.tgz", + "integrity": "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg==", + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true, + "license": "MIT" + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "license": "MIT", + "optional": true + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "license": "MIT", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/exponential-backoff": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.3.tgz", + "integrity": "sha512-ZgEeZXj30q+I0EN+CbSSpIyPaJ5HVQD18Z1m+u1FXbAeT94mr1zw50q4q6jiiC447Nl/YTcIYSAftiGqetwXCA==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "license": "BSD-2-Clause", + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/extsprintf": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz", + "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "license": "MIT", + "optional": true + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "license": "MIT", + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "minimatch": "^5.0.1" + } + }, + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "dev": true, + "license": "ISC", + "dependencies": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/form-data": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.5.tgz", + "integrity": "sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==", + "dev": true, + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fs-extra": { + "version": "11.3.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.3.tgz", + "integrity": "sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "license": "ISC" + }, + "node_modules/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, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "license": "MIT", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-13.0.0.tgz", + "integrity": "sha512-tvZgpqk6fz4BaNZ66ZsRaZnbHvP/jG3uKJvAZOwEVUL4RTA5nJeeLYfyN9/VA8NX/V3IBG+hkeuGpKjvELkVhA==", + "license": "BlueOak-1.0.0", + "dependencies": { + "minimatch": "^10.1.1", + "minipass": "^7.1.2", + "path-scurry": "^2.0.0" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/global-agent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-3.0.0.tgz", + "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==", + "license": "BSD-3-Clause", + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "es6-error": "^4.1.1", + "matcher": "^3.0.0", + "roarr": "^2.15.3", + "semver": "^7.3.2", + "serialize-error": "^7.0.1" + }, + "engines": { + "node": ">=10.0" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "license": "MIT", + "optional": true, + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/got": { + "version": "11.8.6", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz", + "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==", + "license": "MIT", + "dependencies": { + "@sindresorhus/is": "^4.0.0", + "@szmarczak/http-timer": "^4.0.5", + "@types/cacheable-request": "^6.0.1", + "@types/responselike": "^1.0.0", + "cacheable-lookup": "^5.0.3", + "cacheable-request": "^7.0.2", + "decompress-response": "^6.0.0", + "http2-wrapper": "^1.0.0-beta.5.2", + "lowercase-keys": "^2.0.0", + "p-cancelable": "^2.0.0", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=10.19.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "license": "ISC" + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "license": "MIT", + "optional": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hosted-git-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", + "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", + "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==", + "license": "BSD-2-Clause" + }, + "node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/http2-wrapper": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", + "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", + "license": "MIT", + "dependencies": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.0.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/iconv-corefoundation": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/iconv-corefoundation/-/iconv-corefoundation-1.1.7.tgz", + "integrity": "sha512-T10qvkw0zz4wnm560lOEg0PovVqUXuOFhhHAkixw8/sycy7TJt7v/RrkEKEQnAw2viPSJu6iAkErxnzR0g8PpQ==", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "cli-truncate": "^2.1.0", + "node-addon-api": "^1.6.3" + }, + "engines": { + "node": "^8.11.2 || >=10" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "license": "ISC" + }, + "node_modules/ini": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", + "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/ip-address": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.1.0.tgz", + "integrity": "sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "license": "MIT", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "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==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "license": "MIT", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isbinaryfile": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-5.0.7.tgz", + "integrity": "sha512-gnWD14Jh3FzS3CPhF0AxNOJ8CxqeblPTADzI38r0wt8ZyQl5edpy75myt08EG2oKvpyiqSqsx+Wkz9vtkbTqYQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 18.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "license": "ISC" + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jake": { + "version": "10.9.4", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.4.tgz", + "integrity": "sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "async": "^3.2.6", + "filelist": "^1.0.4", + "picocolors": "^1.1.1" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jiti": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.6.1.tgz", + "integrity": "sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==", + "dev": true, + "license": "MIT", + "bin": { + "jiti": "lib/jiti-cli.mjs" + } + }, + "node_modules/js-yaml": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz", + "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "license": "ISC", + "optional": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/kleur": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/lazy-val": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/lazy-val/-/lazy-val-1.0.5.tgz", + "integrity": "sha512-0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true, + "license": "MIT" + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "license": "MIT", + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/lru-cache": { + "version": "11.2.4", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.2.4.tgz", + "integrity": "sha512-B5Y16Jr9LB9dHVkh6ZevG+vAbOsNOYCX+sXvFWFu7B3Iz5mijW3zdbMyhsh8ANd2mSWBYdJgnqi+mL7/LrOPYg==", + "license": "BlueOak-1.0.0", + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/make-fetch-happen": { + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-14.0.3.tgz", + "integrity": "sha512-QMjGbFTP0blj97EeidG5hk/QhKQ3T4ICckQGLgz38QF7Vgbk6e6FTARN8KhKxyBbWn8R0HU+bnw8aSoFPD4qtQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "@npmcli/agent": "^3.0.0", + "cacache": "^19.0.1", + "http-cache-semantics": "^4.1.1", + "minipass": "^7.0.2", + "minipass-fetch": "^4.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^1.0.0", + "proc-log": "^5.0.0", + "promise-retry": "^2.0.1", + "ssri": "^12.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/matcher": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "license": "MIT", + "optional": true, + "dependencies": { + "escape-string-regexp": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true, + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.1.1.tgz", + "integrity": "sha512-enIvLvRAFZYXJzkCYG5RKmPfrFArdLv+R+lbQ53BmIMLIry74bjKzX6iHAm8WYamJkhSSEabrWN5D97XnKObjQ==", + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/brace-expansion": "^5.0.0" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "license": "MIT", + "funding": { + "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==", + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-collect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", + "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-fetch": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-4.0.1.tgz", + "integrity": "sha512-j7U11C5HXigVuutxebFadoYBbd7VSdZWggSe64NVdvWNBqGAiXPL2QVCehjmw7lY1oF9gOllYbORh+hiNgfPgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^3.0.1" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-fetch/node_modules/minizlib": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz", + "integrity": "sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^7.1.2" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "license": "MIT", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "license": "MIT", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "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==", + "license": "MIT" + }, + "node_modules/native-run": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/native-run/-/native-run-2.0.1.tgz", + "integrity": "sha512-XfG1FBZLM50J10xH9361whJRC9SHZ0Bub4iNRhhI61C8Jv0e1ud19muex6sNKB51ibQNUJNuYn25MuYET/rE6w==", + "license": "MIT", + "dependencies": { + "@ionic/utils-fs": "^3.1.7", + "@ionic/utils-terminal": "^2.3.4", + "bplist-parser": "^0.3.2", + "debug": "^4.3.4", + "elementtree": "^0.1.7", + "ini": "^4.1.1", + "plist": "^3.1.0", + "split2": "^4.2.0", + "through2": "^4.0.2", + "tslib": "^2.6.2", + "yauzl": "^2.10.0" + }, + "bin": { + "native-run": "bin/native-run" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/negotiator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz", + "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/node-abi": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-4.24.0.tgz", + "integrity": "sha512-u2EC1CeNe25uVtX3EZbdQ275c74zdZmmpzrHEQh2aIYqoVjlglfUpOX9YY85x1nlBydEKDVaSmMNhR7N82Qj8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.6.3" + }, + "engines": { + "node": ">=22.12.0" + } + }, + "node_modules/node-addon-api": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-1.7.2.tgz", + "integrity": "sha512-ibPK3iA+vaY1eEjESkQkM0BbCqFOaZMiXRTtdB0u7b4djtY6JnsjvPdUHVMg6xQt3B8fpTTWHI9A+ADjM9frzg==", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/node-api-version": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/node-api-version/-/node-api-version-0.2.1.tgz", + "integrity": "sha512-2xP/IGGMmmSQpI1+O/k72jF/ykvZ89JeuKX3TLJAYPDVLUalrshrLHkeVcCCZqG/eEa635cr8IBYzgnDvM2O8Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.3.5" + } + }, + "node_modules/node-gyp": { + "version": "11.5.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-11.5.0.tgz", + "integrity": "sha512-ra7Kvlhxn5V9Slyus0ygMa2h+UqExPqUIkfk7Pc8QTLT956JLSy51uWFwHtIYy0vI8cB4BDhc/S03+880My/LQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^14.0.3", + "nopt": "^8.0.0", + "proc-log": "^5.0.0", + "semver": "^7.3.5", + "tar": "^7.4.3", + "tinyglobby": "^0.2.12", + "which": "^5.0.0" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/node-gyp/node_modules/chownr": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/node-gyp/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16" + } + }, + "node_modules/node-gyp/node_modules/minizlib": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz", + "integrity": "sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^7.1.2" + }, + "engines": { + "node": ">= 18" + } + }, + "node_modules/node-gyp/node_modules/tar": { + "version": "7.5.2", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.2.tgz", + "integrity": "sha512-7NyxrTE4Anh8km8iEy7o0QYPs+0JKBTj5ZaqHg6B39erLg0qYXN3BijtShwbsNSvQ+LN75+KV+C4QR/f6Gwnpg==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/fs-minipass": "^4.0.0", + "chownr": "^3.0.0", + "minipass": "^7.1.2", + "minizlib": "^3.1.0", + "yallist": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/node-gyp/node_modules/which": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-5.0.0.tgz", + "integrity": "sha512-JEdGzHwwkrbWoGOlIHqQ5gtprKGOenpDHpxE9zVR1bWbOtYRyPPHMe9FaP6x61CmNaTThSkb0DAJte5jD+DmzQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/node-gyp/node_modules/yallist": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/nopt": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-8.1.0.tgz", + "integrity": "sha512-ieGu42u/Qsa4TFktmaKEwM6MQH0pOWnaB3htzh0JRtx84+Mebc0cbZYN5bC+6WTZ4+77xrL9Pn5m7CV6VIkV7A==", + "dev": true, + "license": "ISC", + "dependencies": { + "abbrev": "^3.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "license": "MIT", + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "license": "MIT", + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-map": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-7.0.4.tgz", + "integrity": "sha512-tkAQEw8ysMzmkhgw8k+1U/iPhWNhykKnSk4Rd5zLoPJCuJaGRPo6YposrZgaxHKzDHdDWWZvE/Sk7hsL2X/CpQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "license": "BlueOak-1.0.0" + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-scurry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.1.tgz", + "integrity": "sha512-oWyT4gICAu+kaA7QWk/jvCHWarMKNs6pXOGWKDTr7cw4IGcUbW+PeTfbaQiLGheFRpjo6O9J0PmyMfQPjH71oA==", + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/pe-library": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/pe-library/-/pe-library-0.4.1.tgz", + "integrity": "sha512-eRWB5LBz7PpDu4PUlwT0PhnQfTQJlDDdPa35urV4Osrm0t0AqQFGn+UIkU3klZvwJ8KPO3VbBFsXquA6p6kqZw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12", + "npm": ">=6" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jet2jet" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/plist": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/plist/-/plist-3.1.0.tgz", + "integrity": "sha512-uysumyrvkUX0rX/dEVqt8gC3sTBzd4zoWfLeS29nb53imdaXVvLINYXTI2GNqzaMuvacNx4uJQ8+b3zXR0pkgQ==", + "license": "MIT", + "dependencies": { + "@xmldom/xmldom": "^0.8.8", + "base64-js": "^1.5.1", + "xmlbuilder": "^15.1.1" + }, + "engines": { + "node": ">=10.4.0" + } + }, + "node_modules/postject": { + "version": "1.0.0-alpha.6", + "resolved": "https://registry.npmjs.org/postject/-/postject-1.0.0-alpha.6.tgz", + "integrity": "sha512-b9Eb8h2eVqNE8edvKdwqkrY6O7kAwmI8kcnBv1NScolYJbo59XUF0noFq+lxbC1yN20bmC0WBEbDC5H/7ASb0A==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "commander": "^9.4.0" + }, + "bin": { + "postject": "dist/cli.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/postject/node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/proc-log": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-5.0.0.tgz", + "integrity": "sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==", + "dev": true, + "license": "ISC", + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "license": "MIT", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/prompts/node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/pump": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.3.tgz", + "integrity": "sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA==", + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-binary-file-arch": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/read-binary-file-arch/-/read-binary-file-arch-1.0.6.tgz", + "integrity": "sha512-BNg9EN3DD3GsDXX7Aa8O4p92sryjkmzYYgmgTAc6CA4uGLEDzFfxOxugu21akOxpcXHiEgsYkC6nPsQvLLLmEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.3.4" + }, + "bin": { + "read-binary-file-arch": "cli.js" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resedit": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/resedit/-/resedit-1.7.2.tgz", + "integrity": "sha512-vHjcY2MlAITJhC0eRD/Vv8Vlgmu9Sd3LX9zZvtGzU5ZImdTN3+d6e/4mnTyV8vEbyf1sgNIrWxhWlrys52OkEA==", + "dev": true, + "license": "MIT", + "dependencies": { + "pe-library": "^0.4.1" + }, + "engines": { + "node": ">=12", + "npm": ">=6" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jet2jet" + } + }, + "node_modules/resolve-alpn": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz", + "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==", + "license": "MIT" + }, + "node_modules/responselike": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz", + "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==", + "license": "MIT", + "dependencies": { + "lowercase-keys": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "license": "MIT", + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/rimraf": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-6.1.2.tgz", + "integrity": "sha512-cFCkPslJv7BAXJsYlK1dZsbP8/ZNLkCAQ0bi1hf5EKX2QHegmDFEFA6QhuYJlk7UDdc+02JjO80YSOrWPpw06g==", + "license": "BlueOak-1.0.0", + "dependencies": { + "glob": "^13.0.0", + "package-json-from-dist": "^1.0.1" + }, + "bin": { + "rimraf": "dist/esm/bin.mjs" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/roarr": { + "version": "2.15.4", + "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz", + "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", + "license": "BSD-3-Clause", + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "detect-node": "^2.0.4", + "globalthis": "^1.0.1", + "json-stringify-safe": "^5.0.1", + "semver-compare": "^1.0.0", + "sprintf-js": "^1.1.2" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "license": "MIT" + }, + "node_modules/sanitize-filename": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/sanitize-filename/-/sanitize-filename-1.6.3.tgz", + "integrity": "sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==", + "dev": true, + "license": "WTFPL OR ISC", + "dependencies": { + "truncate-utf8-bytes": "^1.0.0" + } + }, + "node_modules/sax": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.1.4.tgz", + "integrity": "sha512-5f3k2PbGGp+YtKJjOItpg3P99IMD84E4HOvcfleTb5joCHNXYLsR9yWFPOYGgaeMPDubQILTCMdsFb2OMeOjtg==", + "license": "ISC" + }, + "node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", + "license": "MIT", + "optional": true + }, + "node_modules/serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "license": "MIT", + "optional": true, + "dependencies": { + "type-fest": "^0.13.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "license": "ISC" + }, + "node_modules/simple-update-notifier": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz", + "integrity": "sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "license": "MIT" + }, + "node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.8.7", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.7.tgz", + "integrity": "sha512-HLpt+uLy/pxB+bum/9DzAgiKS8CX1EvbWxI4zlmgGCExImLdiad2iCwXT5Z4c9c3Eq8rP2318mPW2c+QbtjK8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ip-address": "^10.0.1", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz", + "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "^4.3.4", + "socks": "^2.8.3" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/split2": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", + "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", + "license": "ISC", + "engines": { + "node": ">= 10.x" + } + }, + "node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "license": "BSD-3-Clause", + "optional": true + }, + "node_modules/ssri": { + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-12.0.0.tgz", + "integrity": "sha512-S7iGNosepx9RadX82oimUkvr0Ct7IjJbEbs4mJcTxst8um95J3sDYU1RBEOvdu6oL1Wek2ODI5i4MAw+dZ6cAQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/stat-mode": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stat-mode/-/stat-mode-1.0.0.tgz", + "integrity": "sha512-jH9EhtKIjuXZ2cWxmXS8ZP80XyC3iasQxMDV8jzhNJpfDb7VbQLVW4Wvsxz9QZvzV+G4YoSfBUVKDOyxLzi/sg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "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==", + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/sumchecker": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/sumchecker/-/sumchecker-3.0.1.tgz", + "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==", + "license": "Apache-2.0", + "dependencies": { + "debug": "^4.1.0" + }, + "engines": { + "node": ">= 8.0" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "license": "ISC", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "license": "ISC", + "engines": { + "node": ">=8" + } + }, + "node_modules/temp": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/temp/-/temp-0.9.4.tgz", + "integrity": "sha512-yYrrsWnrXMcdsnu/7YMYAofM1ktpL5By7vZhf15CrXijWWrEYZks5AXBudalfSWJLlnen/QUJUB5aoB0kqZUGA==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "mkdirp": "^0.5.1", + "rimraf": "~2.6.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/temp-file": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/temp-file/-/temp-file-3.4.0.tgz", + "integrity": "sha512-C5tjlC/HCtVUOi3KWVokd4vHVViOmGjtLwIh4MuzPo/nMYTV/p1urt3RnMz2IWXDdKEGJH3k5+KPxtqRsUYGtg==", + "dev": true, + "license": "MIT", + "dependencies": { + "async-exit-hook": "^2.0.1", + "fs-extra": "^10.0.0" + } + }, + "node_modules/temp-file/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/temp/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/temp/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/temp/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/temp/node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/through2": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", + "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", + "license": "MIT", + "dependencies": { + "readable-stream": "3" + } + }, + "node_modules/tiny-async-pool": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/tiny-async-pool/-/tiny-async-pool-1.3.0.tgz", + "integrity": "sha512-01EAw5EDrcVrdgyCLgoSPvqznC0sVxDSVeiOz09FUpjh71G79VCqneOr+xvt7T1r76CF6ZZfPjHorN2+d+3mqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^5.5.0" + } + }, + "node_modules/tiny-async-pool/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tmp": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.5.tgz", + "integrity": "sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.14" + } + }, + "node_modules/tmp-promise": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/tmp-promise/-/tmp-promise-3.0.3.tgz", + "integrity": "sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "tmp": "^0.2.0" + } + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "license": "MIT", + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/truncate-utf8-bytes": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", + "integrity": "sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==", + "dev": true, + "license": "WTFPL", + "dependencies": { + "utf8-byte-length": "^1.0.1" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "license": "(MIT OR CC0-1.0)", + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/undici-types": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", + "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", + "license": "MIT" + }, + "node_modules/unique-filename": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-4.0.0.tgz", + "integrity": "sha512-XSnEewXmQ+veP7xX2dS5Q4yZAvO40cBN2MWkJ7D/6sW4Dg6wYBNwM1Vrnz1FhH5AdeLIlUXRI9e28z1YZi71NQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "unique-slug": "^5.0.0" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/unique-slug": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-5.0.0.tgz", + "integrity": "sha512-9OdaqO5kwqR+1kVgHAhsp5vPNU0hnxRa26rBFNfNgM7M6pNtgzeBn3s/xbyCQL3dcjzOatcef6UUHpB/6MaETg==", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^18.17.0 || >=20.5.0" + } + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/untildify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", + "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/utf8-byte-length": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.5.tgz", + "integrity": "sha512-Xn0w3MtiQ6zoz2vFyUVruaCL53O/DwUvkEeOvj+uulMm0BkUGYWmBYVyElqZaSLhY6ZD0ulfU3aBra2aVT4xfA==", + "dev": true, + "license": "(WTFPL OR MIT)" + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" + }, + "node_modules/verror": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.1.tgz", + "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "license": "MIT", + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/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==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "license": "ISC" + }, + "node_modules/xml2js": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.6.2.tgz", + "integrity": "sha512-T4rieHaC1EXcES0Kxxj4JWgaUQHDk+qwHcYOCFHfiwKz7tOVPLq7Hjq9dM1WCMhylqMEfP7hMcOIChvotiZegA==", + "license": "MIT", + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/xml2js/node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "license": "MIT", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/xmlbuilder": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", + "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", + "license": "MIT", + "engines": { + "node": ">=8.0" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "license": "ISC" + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "license": "MIT", + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..6300e40 --- /dev/null +++ b/package.json @@ -0,0 +1,19 @@ +{ + "name": "MyApps", + "version": "1.0.0", + "description": "Cross-platform launcher built with Capacitor and Electron", + "author": "Fabio", + "main": "electron/main.js", + "dependencies": { + "@capacitor-community/electron": "^5.0.1", + "@capacitor/cli": "^7.4.4", + "@capacitor/core": "^8.0.0" + }, + "devDependencies": { + "electron-builder": "^26.4.0", + "electron": "^39.2.7" + }, + "scripts": { + "electron:build": "electron-builder" + } +} diff --git a/web/app.js b/web/app.js new file mode 100644 index 0000000..ccb7b2e --- /dev/null +++ b/web/app.js @@ -0,0 +1,1006 @@ +// ============================================================================ +// LAUNCHER — VERSIONE COMPLETA E OTTIMIZZATA (A) +// BLOCCO 1/6 — Variabili globali + Storage + Config + Setup Page +// ============================================================================ + +// --------------------------------------------------------------------------- +// VARIABILI GLOBALI +// --------------------------------------------------------------------------- +let URI; +let USER; +let PASSW; + +let appsData = []; // Lista completa delle app (nome, icona, url) +let appsOrder = []; // Ordine delle icone nella griglia +let editMode = false; // Modalità wiggle stile iOS + +// Zoom +let zoomLevel; +let zoomMax; +let initialPinchDistance = null; +let lastTapTime = 0; +let zoomAnimFrame = null; + +// Long‑press / drag +let longPressTimer = null; +let longPressTarget = null; +let contextMenuTargetId = null; + +let draggingIcon = null; +let draggingId = null; +let dragOffsetX = 0; +let dragOffsetY = 0; +let dragStartX = 0; +let dragStartY = 0; +let placeholderEl = null; + +// PATCH MINIMA: flag per evitare che al primo long‑press parta anche il menu +let justEnteredEditMode = false; + +// --------------------------------------------------------------------------- +// CRITTOGRAFIA E STORAGE +// --------------------------------------------------------------------------- +const SECRET_KEY = "chiave-super-segreta-123"; + +// Salva configurazione (URL, user, pass) +function saveConfig(url, user, password) { + const data = { url, user, password }; + URI = url; + USER = user; + PASSW = password; + + const encrypted = CryptoJS.AES.encrypt( + JSON.stringify(data), + SECRET_KEY + ).toString(); + + localStorage.setItem("launcherConfig", encrypted); +} + +// Carica configurazione +function loadConfig() { + const encrypted = localStorage.getItem("launcherConfig"); + if (!encrypted) return null; + + try { + const bytes = CryptoJS.AES.decrypt(encrypted, SECRET_KEY); + const obj = JSON.parse(bytes.toString(CryptoJS.enc.Utf8)); + + URI = obj.url; + USER = obj.user; + PASSW = obj.password; + + return obj; + } catch { + return null; + } +} + +// Salva apps scaricate dal server +function saveApps(jsonApps) { + const encrypted = CryptoJS.AES.encrypt( + JSON.stringify(jsonApps), + SECRET_KEY + ).toString(); + + localStorage.setItem("jsonApps", encrypted); +} + +// Carica apps salvate in locale +function loadApps() { + const encrypted = localStorage.getItem("jsonApps"); + if (!encrypted) return null; + + try { + const bytes = CryptoJS.AES.decrypt(encrypted, SECRET_KEY); + return JSON.parse(bytes.toString(CryptoJS.enc.Utf8)); + } catch { + return null; + } +} + +// --------------------------------------------------------------------------- +// SETUP PAGE (6 TAP PER APRIRE + AUTOCOMPILAZIONE + "Aggiorna ora") +// --------------------------------------------------------------------------- +function showSetupPage() { + const cfg = loadConfig(); + + if (cfg) { + document.getElementById("cfg-url").value = cfg.url; + document.getElementById("cfg-user").value = cfg.user; + document.getElementById("cfg-pass").value = cfg.password; + + // Mostra il pulsante "Aggiorna ora" solo se esiste già una config + document.getElementById("cfg-refresh").style.display = "block"; + } else { + // Nessuna config → nascondi il pulsante + document.getElementById("cfg-refresh").style.display = "none"; + } + + document.getElementById("setup-page").classList.remove("hidden"); +} + +function hideSetupPage() { + document.getElementById("setup-page").classList.add("hidden"); +} + +// 6 tap per aprire la setup page +let tapCount = 0; +let tapTimer = null; + +document.addEventListener("click", () => { + tapCount++; + + if (tapTimer) clearTimeout(tapTimer); + + tapTimer = setTimeout(() => { + tapCount = 0; + }, 600); + + if (tapCount >= 6) { + tapCount = 0; + showSetupPage(); + } +}); + +// ============================================================================ +// LAUNCHER — VERSIONE COMPLETA E OTTIMIZZATA (A) +// BLOCCO 2/6 — API login, getLinks, ordine apps, render, startLauncher +// ============================================================================ + +// --------------------------------------------------------------------------- +// LOGIN API +// --------------------------------------------------------------------------- +async function login(email, password) { + try { + const res = await fetch(`${URI}/auth/login`, { + method: "POST", + headers: { "Content-Type": "application/json" }, + body: JSON.stringify({ email, password }) + }); + + if (!res.ok) { + const text = await res.text(); + throw new Error(`HTTP ${res.status}: ${text}`); + } + + const data = await res.json(); + return data.token; + + } catch (err) { + alert(err); + return null; + } +} + +// --------------------------------------------------------------------------- +// GET LINKS (scarica apps dal server + salva + aggiorna ordine) +// --------------------------------------------------------------------------- +async function getLinks() { + try { + const token = await login(USER, PASSW); + if (!token) throw new Error("User o Password errati"); + + const res = await fetch(`${URI}/links`, { + headers: { + "Authorization": `Bearer ${token}`, + "Accept": "application/json" + } + }); + + if (!res.ok) throw new Error("Server errato o non risponde"); + + const json = await res.json(); + + // Normalizza apps +/* appsData = json.map((a, i) => ({ + id: a.id || `app-${i}`, + name: a.name, + url: a.url, + icon: `${URI}${a.icon}` + })); +*/ +appsData = json.map((a, i) => { + let icon = null; + + if (a.icon && a.icon.data && a.icon.mime) { + const base64 = btoa( + String.fromCharCode(...a.icon.data.data) + ); + icon = `data:${a.icon.mime};base64,${base64}`; + } + + return { + id: a.id || `app-${i}`, + name: a.name, + url: a.url, + icon + }; +}); + + // Salva in locale + saveApps(appsData); + + // Aggiorna ordine + loadAppOrder(); + + // Render + renderApps(); + + return true; + + } catch (err) { + console.error(err); + return null; + } +} + +// --------------------------------------------------------------------------- +// CARICAMENTO ORDINE APPS +// --------------------------------------------------------------------------- +function loadAppOrder() { + const stored = localStorage.getItem("appsOrder"); + + if (stored) { + const parsed = JSON.parse(stored); + + // Mantieni solo ID validi + appsOrder = parsed.filter(id => appsData.some(a => a.id === id)); + + // Aggiungi eventuali nuove app non presenti nell'ordine salvato + appsData.forEach(a => { + if (!appsOrder.includes(a.id)) appsOrder.push(a.id); + }); + + } else { + // Primo avvio → ordine naturale + appsOrder = appsData.map(a => a.id); + } +} + +function saveOrder() { + localStorage.setItem("appsOrder", JSON.stringify(appsOrder)); +} + +// --------------------------------------------------------------------------- +// RENDER DELLA GRIGLIA +// --------------------------------------------------------------------------- +function renderApps() { + const folderEl = document.getElementById("folder"); + folderEl.innerHTML = ""; + + appsOrder.forEach(id => { + const app = appsData.find(a => a.id === id); + if (!app) return; + + const div = document.createElement("div"); + div.className = "app-icon"; + div.dataset.id = app.id; + + div.innerHTML = ` + ${app.name} + ${app.name} + `; + + div.addEventListener("click", () => { + if (!editMode) window.open(app.url, "_blank", "noopener"); + }); + + folderEl.appendChild(div); + }); +} + +// --------------------------------------------------------------------------- +// START LAUNCHER (carica locale → render → init UI) +// --------------------------------------------------------------------------- +async function startLauncher() { + + // 1️⃣ Carica apps salvate in locale + const saved = loadApps(); + if (saved) { + appsData = saved; + //console.log("Apps caricate da localStorage:", appsData); + } + + // 2️⃣ Carica ordine + loadAppOrder(); + + // 3️⃣ Render immediato (istantaneo) + renderApps(); + + // ❌ Nessun aggiornamento automatico dal server + // getLinks(); + + // 4️⃣ Inizializza UI (zoom, drag, wiggle, menu…) + initZoomHandlers(); + initLongPressHandlers(); + initDragHandlers(); + initContextMenuActions(); + initGlobalCloseHandlers(); +} + +// ============================================================================ +// LAUNCHER — VERSIONE COMPLETA E OTTIMIZZATA (A) +// BLOCCO 3/6 — Zoom stile iPhone (pinch, elasticità, wheel) +// ============================================================================ + +// --------------------------------------------------------------------------- +// Calcolo dinamico dello zoom massimo +// --------------------------------------------------------------------------- +function computeDynamicMaxZoom() { + return Math.min(window.innerWidth / 85, 4.0); +} + +// --------------------------------------------------------------------------- +// Carica lo zoom salvato in locale +// --------------------------------------------------------------------------- +function loadInitialZoom() { + const v = parseFloat(localStorage.getItem("zoomLevel")); + if (!isFinite(v) || v <= 0) return 1; + return Math.min(Math.max(v, 0.5), computeDynamicMaxZoom()); +} + +// --------------------------------------------------------------------------- +// Applica lo zoom (aggiorna CSS + salva in locale) +// --------------------------------------------------------------------------- +function applyZoom(z) { + zoomLevel = (!isFinite(z) || z <= 0) ? 1 : z; + document.documentElement.style.setProperty("--zoom", zoomLevel); + localStorage.setItem("zoomLevel", String(zoomLevel)); +} + +// --------------------------------------------------------------------------- +// Distanza tra due dita (pinch) +// --------------------------------------------------------------------------- +function getPinchDistance(touches) { + const [a, b] = touches; + return Math.hypot(a.clientX - b.clientX, a.clientY - b.clientY); +} + +// --------------------------------------------------------------------------- +// Elasticità ai limiti (effetto iOS) +// --------------------------------------------------------------------------- +function elasticEase(x) { + return Math.sin(x * Math.PI * 0.5) * 1.05; +} + +// --------------------------------------------------------------------------- +// Inizializzazione completa dello zoom +// --------------------------------------------------------------------------- +function initZoomHandlers() { + zoomMax = computeDynamicMaxZoom(); + zoomLevel = loadInitialZoom(); + applyZoom(zoomLevel); + + // --------------------------------------------------------- + // PINCH SU MOBILE + // --------------------------------------------------------- + + // Previeni scroll durante pinch + document.addEventListener("touchmove", e => { + if (e.touches.length === 2) e.preventDefault(); + }, { passive: false }); + + // Inizio pinch (NO double tap zoom) + document.addEventListener("touchstart", e => { + + // Inizio pinch + if (e.touches.length === 2) { + initialPinchDistance = getPinchDistance(e.touches); + if (zoomAnimFrame) cancelAnimationFrame(zoomAnimFrame); + } + + // Nessuna azione sul doppio tap + lastTapTime = Date.now(); + }); + + // Pinch in corso + document.addEventListener("touchmove", e => { + if (e.touches.length === 2 && initialPinchDistance) { + const newDist = getPinchDistance(e.touches); + const scale = newDist / initialPinchDistance; + + let newZoom = zoomLevel * scale; + zoomMax = computeDynamicMaxZoom(); + + // Elasticità ai limiti + if (newZoom > zoomMax) newZoom = zoomMax + (newZoom - zoomMax) * 0.25; + if (newZoom < 0.5) newZoom = 0.5 - (0.5 - newZoom) * 0.25; + + applyZoom(newZoom); + initialPinchDistance = newDist; + e.preventDefault(); + } + }, { passive: false }); + + // Fine pinch → animazione elastica verso limite + document.addEventListener("touchend", e => { + if (e.touches.length < 2 && initialPinchDistance) { + initialPinchDistance = null; + + zoomMax = computeDynamicMaxZoom(); + const target = Math.min(Math.max(zoomLevel, 0.5), zoomMax); + const start = zoomLevel; + const duration = 250; + const startTime = performance.now(); + + function animate(t) { + const p = Math.min((t - startTime) / duration, 1); + const eased = start + (target - start) * elasticEase(p); + applyZoom(eased); + if (p < 1) zoomAnimFrame = requestAnimationFrame(animate); + } + + zoomAnimFrame = requestAnimationFrame(animate); + } + }); + + // --------------------------------------------------------- + // ZOOM CON WHEEL SU DESKTOP + // --------------------------------------------------------- + document.addEventListener("wheel", e => { + e.preventDefault(); + + zoomMax = computeDynamicMaxZoom(); + const direction = e.deltaY < 0 ? 1 : -1; + const factor = 1 + direction * 0.1; + + let newZoom = zoomLevel * factor; + + // Elasticità + if (newZoom > zoomMax) newZoom = zoomMax + (newZoom - zoomMax) * 0.25; + if (newZoom < 0.5) newZoom = 0.5 - (0.5 - newZoom) * 0.25; + + applyZoom(newZoom); + }, { passive: false }); +} + +// ============================================================================ +// LAUNCHER — VERSIONE COMPLETA E OTTIMIZZATA (A) +// BLOCCO 4/6 — Long‑press, Edit Mode, Context Menu, Global Close +// ============================================================================ + +// --------------------------------------------------------------------------- +// EDIT MODE (wiggle stile iOS) +// --------------------------------------------------------------------------- +function enterEditMode() { + editMode = true; + document.body.classList.add("edit-mode"); +} + +function exitEditMode() { + editMode = false; + document.body.classList.remove("edit-mode"); + hideContextMenu(); +} + +// --------------------------------------------------------------------------- +// MENU CONTESTUALE +// --------------------------------------------------------------------------- +function showContextMenuFor(id, x, y) { + contextMenuTargetId = id; + const menu = document.getElementById("context-menu"); + menu.style.left = `${x}px`; + menu.style.top = `${y}px`; + menu.classList.remove("hidden"); +} + +function hideContextMenu() { + const menu = document.getElementById("context-menu"); + menu.classList.add("hidden"); + contextMenuTargetId = null; +} + +// --------------------------------------------------------------------------- +// LONG PRESS HANDLERS (TOUCH + MOUSE) +// --------------------------------------------------------------------------- +function initLongPressHandlers() { + + // --------------------------------------------------------- + // TOUCH LONG PRESS + // --------------------------------------------------------- + document.addEventListener("touchstart", e => { + if (e.touches.length !== 1) return; + + const touch = e.touches[0]; + const icon = touch.target.closest(".app-icon"); + + if (icon) { + longPressTarget = icon; + + longPressTimer = setTimeout(() => { + + // Primo long‑press → entra in edit mode + if (!editMode) { + enterEditMode(); + justEnteredEditMode = true; // PATCH: blocca il menu su questo primo long-press + if (navigator.vibrate) navigator.vibrate(10); + return; + } + + // Se siamo appena entrati in edit mode con questo long-press → NON aprire menu + if (justEnteredEditMode) { + justEnteredEditMode = false; + return; + } + + // Se già in edit mode da prima → apri menu contestuale + const r = icon.getBoundingClientRect(); + showContextMenuFor( + icon.dataset.id, + r.left + r.width / 2, + r.top + r.height + ); + if (navigator.vibrate) navigator.vibrate(10); + + }, 350); + + return; + } + + // Long press fuori dalle icone → esci da edit mode + longPressTimer = setTimeout(() => { + if (editMode) exitEditMode(); + }, 350); + + }, { passive: true }); + + // Cancella long‑press se l’utente si muove troppo + document.addEventListener("touchmove", e => { + if (!longPressTimer) return; + + const touch = e.touches[0]; + const r = longPressTarget?.getBoundingClientRect(); + + const dx = touch.clientX - (r?.left ?? touch.clientX); + const dy = touch.clientY - (r?.top ?? touch.clientY); + + if (Math.hypot(dx, dy) > 15) { + clearTimeout(longPressTimer); + longPressTimer = null; + longPressTarget = null; + } + }, { passive: true }); + + // Fine touch → cancella long‑press + document.addEventListener("touchend", () => { + if (longPressTimer) { + clearTimeout(longPressTimer); + longPressTimer = null; + longPressTarget = null; + } + // PATCH: reset del flag + justEnteredEditMode = false; + }, { passive: true }); + + // --------------------------------------------------------- + // MOUSE LONG PRESS + // --------------------------------------------------------- + document.addEventListener("mousedown", e => { + if (e.button !== 0) return; + + const icon = e.target.closest(".app-icon"); + longPressTarget = icon ?? null; + + longPressTimer = setTimeout(() => { + + if (!editMode) { + enterEditMode(); + return; + } + + if (icon) { + const r = icon.getBoundingClientRect(); + showContextMenuFor( + icon.dataset.id, + r.left + r.width / 2, + r.top + r.height + ); + } + + }, 350); + }); + + // Cancella long‑press se il mouse si muove troppo + document.addEventListener("mousemove", e => { + if (!longPressTimer) return; + + if (longPressTarget) { + const r = longPressTarget.getBoundingClientRect(); + const dx = e.clientX - (r.left + r.width / 2); + const dy = e.clientY - (r.top + r.height / 2); + + if (Math.hypot(dx, dy) > 15) { + clearTimeout(longPressTimer); + longPressTimer = null; + longPressTarget = null; + } + } + }); + + // Mouse up → cancella long‑press + document.addEventListener("mouseup", () => { + if (longPressTimer) { + clearTimeout(longPressTimer); + longPressTimer = null; + longPressTarget = null; + } + }); +} + +// --------------------------------------------------------------------------- +// CHIUSURA MENU E USCITA DA EDIT MODE +// --------------------------------------------------------------------------- +function initGlobalCloseHandlers() { + document.addEventListener("pointerdown", e => { + const isIcon = e.target.closest(".app-icon"); + const isMenu = e.target.closest("#context-menu"); + + // 1️⃣ Clic fuori dal menu → chiudi menu + if (!isMenu && !isIcon && !document.getElementById("context-menu").classList.contains("hidden")) { + hideContextMenu(); + } + + // 2️⃣ Clic fuori dalle icone → esci da edit mode + if (!isIcon && editMode) { + exitEditMode(); + } + }); +} + +// ============================================================================ +// LAUNCHER — VERSIONE COMPLETA E OTTIMIZZATA (A) +// BLOCCO 5/6 — Drag & Drop stile iPhone (FIXED) +// ============================================================================ + +// ============================================================================ +// LAUNCHER — VERSIONE COMPLETA E OTTIMIZZATA (A) +// BLOCCO 5/6 — Drag & Drop stile iPhone (FIXED) +// ============================================================================ + +// --------------------------------------------------------------------------- +// Utility per ottenere posizione del puntatore (touch + mouse) +// --------------------------------------------------------------------------- +function getPointerPosition(e) { + if (e.touches && e.touches.length > 0) { + return { + pageX: e.touches[0].pageX, + pageY: e.touches[0].pageY, + clientX: e.touches[0].clientX, + clientY: e.touches[0].clientY + }; + } + return { + pageX: e.pageX, + pageY: e.pageY, + clientX: e.clientX, + clientY: e.clientY + }; +} + +// --------------------------------------------------------------------------- +// Inizio drag: icona flottante + placeholder nel layout +// --------------------------------------------------------------------------- +function startDrag(icon, pos) { + const folderEl = document.getElementById("folder"); + + draggingId = icon.dataset.id; + + const r = icon.getBoundingClientRect(); + dragOffsetX = pos.pageX - r.left; + dragOffsetY = pos.pageY - r.top; + + draggingIcon = icon; + draggingIcon.classList.add("dragging"); + draggingIcon.style.position = "fixed"; + draggingIcon.style.left = `${r.left}px`; + draggingIcon.style.top = `${r.top}px`; + draggingIcon.style.width = `${r.width}px`; + draggingIcon.style.height = `${r.height}px`; + draggingIcon.style.zIndex = "1000"; + draggingIcon.style.pointerEvents = "none"; + draggingIcon.style.transform = "translate3d(0,0,0)"; + + // Placeholder nel layout + placeholderEl = document.createElement("div"); + placeholderEl.className = "app-icon placeholder"; + placeholderEl.style.visibility = "hidden"; + + folderEl.insertBefore(placeholderEl, icon); + + hideContextMenu(); +} + +// --------------------------------------------------------------------------- +// Aggiorna posizione icona trascinata + posizione placeholder +// --------------------------------------------------------------------------- +function updateDragPosition(pos) { + if (!draggingIcon || !placeholderEl) return; + + const x = pos.pageX - dragOffsetX; + const y = pos.pageY - dragOffsetY; + + draggingIcon.style.left = `${x}px`; + draggingIcon.style.top = `${y}px`; + + const centerX = pos.clientX; + const centerY = pos.clientY; + + const elem = document.elementFromPoint(centerX, centerY); + const targetIcon = elem && elem.closest(".app-icon:not(.dragging)"); + if (!targetIcon || targetIcon === placeholderEl) return; + + const folderEl = document.getElementById("folder"); + const targetRect = targetIcon.getBoundingClientRect(); + const isBefore = centerY < targetRect.top + targetRect.height / 2; + + if (isBefore) { + folderEl.insertBefore(placeholderEl, targetIcon); + } else { + folderEl.insertBefore(placeholderEl, targetIcon.nextSibling); + } +} + +// --------------------------------------------------------------------------- +// Fine drag: aggiorna appsOrder in base alla posizione del placeholder +// --------------------------------------------------------------------------- +function endDrag() { + if (!draggingIcon || !placeholderEl) { + draggingIcon = null; + placeholderEl = null; + dragStartX = 0; + dragStartY = 0; + return; + } + + const folderEl = document.getElementById("folder"); + + const children = Array.from(folderEl.children); + const finalIndex = children.indexOf(placeholderEl); + + draggingIcon.classList.remove("dragging"); + draggingIcon.style.position = ""; + draggingIcon.style.left = ""; + draggingIcon.style.top = ""; + draggingIcon.style.width = ""; + draggingIcon.style.height = ""; + draggingIcon.style.zIndex = ""; + draggingIcon.style.pointerEvents = ""; + draggingIcon.style.transform = ""; + + if (finalIndex !== -1) { + const currentIndex = appsOrder.indexOf(draggingId); + if (currentIndex !== -1 && currentIndex !== finalIndex) { + appsOrder.splice(currentIndex, 1); + appsOrder.splice(finalIndex, 0, draggingId); + saveOrder(); + } + } + + if (placeholderEl && placeholderEl.parentNode) { + placeholderEl.parentNode.removeChild(placeholderEl); + } + + draggingIcon = null; + placeholderEl = null; + dragStartX = 0; + dragStartY = 0; + + renderApps(); +} + +// --------------------------------------------------------------------------- +// Inizializzazione Drag & Drop (touch + mouse) +// --------------------------------------------------------------------------- +function initDragHandlers() { + + // TOUCH DRAG + document.addEventListener("touchstart", e => { + if (!editMode) return; + if (e.touches.length !== 1) return; + if (contextMenuTargetId) return; + + const pos = getPointerPosition(e); + const icon = e.touches[0].target.closest(".app-icon"); + if (!icon) return; + + dragStartX = pos.clientX; + dragStartY = pos.clientY; + draggingIcon = null; + draggingId = null; + }, { passive: true }); + + document.addEventListener("touchmove", e => { + if (!editMode) return; + if (e.touches.length !== 1) return; + + const pos = getPointerPosition(e); + + if (!draggingIcon) { + const dx = pos.clientX - dragStartX; + const dy = pos.clientY - dragStartY; + if (Math.hypot(dx, dy) > 10) { + const icon = e.touches[0].target.closest(".app-icon"); + if (icon) { + if (longPressTimer) { + clearTimeout(longPressTimer); + longPressTimer = null; + longPressTarget = null; + } + startDrag(icon, pos); + } + } + } else { + updateDragPosition(pos); + e.preventDefault(); + } + }, { passive: false }); + + document.addEventListener("touchend", e => { + if (!editMode) return; + if (!draggingIcon) { + dragStartX = 0; + dragStartY = 0; + return; + } + if (!e.touches || e.touches.length === 0) { + endDrag(); + } + }, { passive: true }); + + // MOUSE DRAG + document.addEventListener("mousedown", e => { + if (!editMode) return; + if (e.button !== 0) return; + if (contextMenuTargetId) return; + + const icon = e.target.closest(".app-icon"); + if (!icon) return; + + const pos = getPointerPosition(e); + dragStartX = pos.clientX; + dragStartY = pos.clientY; + draggingIcon = null; + draggingId = null; + }); + + document.addEventListener("mousemove", e => { + if (!editMode) return; + + const pos = getPointerPosition(e); + + if (!draggingIcon) { + if (!dragStartX && !dragStartY) return; + + const dx = pos.clientX - dragStartX; + const dy = pos.clientY - dragStartY; + if (Math.hypot(dx, dy) > 10) { + const icon = e.target.closest(".app-icon"); + if (icon) { + if (longPressTimer) { + clearTimeout(longPressTimer); + longPressTimer = null; + longPressTarget = null; + } + startDrag(icon, pos); + } + } + } else { + updateDragPosition(pos); + } + }); + + document.addEventListener("mouseup", () => { + if (!editMode) return; + if (!draggingIcon) { + dragStartX = 0; + dragStartY = 0; + return; + } + endDrag(); + }); +} + +// ============================================================================ +// BLOCCO 6/6 — Context Menu Actions + Config Save + Init Globale +// ============================================================================ + +// --------------------------------------------------------------------------- +// MENU CONTESTUALE — AZIONI (rename, change icon, remove) +// --------------------------------------------------------------------------- +function initContextMenuActions() { + const menu = document.getElementById("context-menu"); + + menu.addEventListener("click", e => { + const btn = e.target.closest("button"); + if (!btn || !contextMenuTargetId) return; + + const action = btn.dataset.action; + const app = appsData.find(a => a.id === contextMenuTargetId); + if (!app) return; + + // RINOMINA + if (action === "rename") { + const nuovoNome = prompt("Nuovo nome app:", app.name); + if (nuovoNome && nuovoNome.trim()) { + app.name = nuovoNome.trim(); + renderApps(); + saveOrder(); + } + } + + // CAMBIA ICONA + if (action === "change-icon") { + const nuovaIcona = prompt("URL nuova icona:", app.icon); + if (nuovaIcona && nuovaIcona.trim()) { + app.icon = nuovaIcona.trim(); + renderApps(); + saveOrder(); + } + } + + // RIMUOVI + if (action === "remove") { + if (confirm("Rimuovere questa app dalla griglia?")) { + appsOrder = appsOrder.filter(id => id !== app.id); + saveOrder(); + renderApps(); + } + } + + hideContextMenu(); + }); +} + +// --------------------------------------------------------------------------- +// AGGIORNA ORA — aggiorna apps dal server senza cambiare config +// --------------------------------------------------------------------------- +document.getElementById("cfg-refresh").addEventListener("click", async () => { + + const cfg = loadConfig(); + if (!cfg) { + alert("Config mancante. Inserisci URL, user e password."); + return; + } + + const ok = await getLinks(); + + if (ok) { + hideSetupPage(); + startLauncher(); + } else { + alert("Impossibile aggiornare le app dal server."); + } +}); + +// --------------------------------------------------------------------------- +// SALVATAGGIO CONFIG + RESTART COMPLETO +// --------------------------------------------------------------------------- +document.getElementById("cfg-save").addEventListener("click", async () => { + const url = document.getElementById("cfg-url").value; + const user = document.getElementById("cfg-user").value; + const pass = document.getElementById("cfg-pass").value; + + saveConfig(url, user, pass); + + const ok = await getLinks(); + + if (ok) { + hideSetupPage(); + startLauncher(); + } +}); + +// --------------------------------------------------------------------------- +// INIT GLOBALE — DOMContentLoaded +// --------------------------------------------------------------------------- +document.addEventListener("DOMContentLoaded", () => { + const cfg = loadConfig(); + + if (!cfg) { + showSetupPage(); + } else { + hideSetupPage(); + startLauncher(); + } +}); diff --git a/web/index.html b/web/index.html new file mode 100644 index 0000000..36f51f9 --- /dev/null +++ b/web/index.html @@ -0,0 +1,48 @@ + + + + + MyApps Launcher + + + + + + + + + + +
+ + + + + + + + + diff --git a/web/style.css b/web/style.css new file mode 100644 index 0000000..1b7b449 --- /dev/null +++ b/web/style.css @@ -0,0 +1,259 @@ +/* ============================================================ + BASE PAGE + ============================================================ */ + +html, body { + margin: 0; + padding: 0; + overflow-x: hidden; /* impedisce pan orizzontale */ + max-width: 100%; + touch-action: pan-y; /* solo scroll verticale */ + background: #ffffff; + /*background: radial-gradient(circle at top, #f8f9ff 0%, #e6e8ef 60%, #dcdfe6 100%);*/ + font-family: system-ui, -apple-system, BlinkMacSystemFont, sans-serif; + color: #1a1a1a; + min-height: 100vh; /* evita scroll inutile se poche icone */ +} + +/* Impedisce selezione testo e highlight blu Android */ +* { + -webkit-user-select: none; + user-select: none; + -webkit-tap-highlight-color: transparent; +} + +/* Variabile di zoom globale */ +:root { + --zoom: 1; +} + +/* ============================================================ + GRIGLIA ICONE + ============================================================ */ + +.folder { + display: grid; + grid-template-columns: repeat( + auto-fill, + minmax(calc(85px * var(--zoom)), 1fr) + ); + gap: calc(16px * var(--zoom)); + padding-top: 24px; + padding-left: 24px; + padding-right: 24px; + padding-bottom: 0; + justify-items: start; /* più coerente con iOS */ + width: 100%; + max-width: 100%; + box-sizing: border-box; + + transition: grid-template-columns 0.15s ease-out, + gap 0.15s ease-out; +} + +/* Contenitore icona — versione glass */ +.app-icon { + text-align: center; + cursor: pointer; + user-select: none; + touch-action: none; + transition: transform 0.18s ease, filter 0.18s ease; + + /* GLASS */ + background: rgba(255, 255, 255, 0.12); + backdrop-filter: blur(10px); + -webkit-backdrop-filter: blur(10px); + + border-radius: calc(20px * var(--zoom)); + padding: calc(6px * var(--zoom)); + box-sizing: border-box; + overflow: hidden; +} + +/* Icona PNG */ +.app-icon img { + width: calc(78px * var(--zoom)); + height: calc(78px * var(--zoom)); + border-radius: calc(16px * var(--zoom)); + background: transparent; + pointer-events: none; + + box-shadow: + 0 4px 10px rgba(0, 0, 0, 0.12), + 0 8px 24px rgba(0, 0, 0, 0.08); + + display: block; +} + +/* Etichetta */ +.app-icon span { + display: block; + margin-top: calc(6px * var(--zoom)); + font-size: calc(11px * var(--zoom)); + color: #3a3a3a; + font-weight: 500; + letter-spacing: -0.2px; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + + transition: font-size 0.18s ease-out, + margin-top 0.18s ease-out; +} + + +/* ============================================================ + WIGGLE MODE + ============================================================ */ + +@keyframes wiggle { + 0% { transform: rotate(-2deg) scale(1.02); } + 50% { transform: rotate( 2deg) scale(0.98); } + 100% { transform: rotate(-2deg) scale(1.02); } +} + +.edit-mode .app-icon:not(.dragging) img { + animation: wiggle 0.25s ease-in-out infinite; +} + +/* Icona trascinata */ +.app-icon.dragging { + opacity: 0.9; + z-index: 1000; +} + +/* Placeholder invisibile */ +.app-icon.placeholder { + opacity: 0; + visibility: hidden; +} + +/* ============================================================ + MENU CONTESTUALE — ANDROID MATERIAL + RESPONSIVE ALLO ZOOM + ============================================================ */ + +#context-menu { + position: fixed; + background: #ffffff; + border-radius: calc(14px * var(--zoom)); + min-width: calc(180px * var(--zoom)); + padding: calc(8px * var(--zoom)) 0; + z-index: 2000; + + /* Ombra Material */ + box-shadow: + 0 calc(6px * var(--zoom)) calc(20px * var(--zoom)) rgba(0,0,0,0.18), + 0 calc(2px * var(--zoom)) calc(6px * var(--zoom)) rgba(0,0,0,0.12); + + /* Animazione apertura */ + opacity: 0; + transform: scale(0.85); + transform-origin: top center; + transition: opacity 120ms ease, transform 120ms ease; +} + +#context-menu:not(.hidden) { + opacity: 1; + transform: scale(1); +} + +#context-menu.hidden { + display: block; + opacity: 0; + pointer-events: none; +} + +/* Pulsanti del menù */ +#context-menu button { + all: unset; + width: 100%; + padding: calc(14px * var(--zoom)) calc(18px * var(--zoom)); + font-size: calc(15px * var(--zoom)); + color: #222; + display: flex; + align-items: center; + gap: calc(12px * var(--zoom)); + cursor: pointer; + position: relative; + overflow: hidden; +} + +/* Ripple effect */ +#context-menu button::after { + content: ""; + position: absolute; + inset: 0; + background: rgba(0,0,0,0.08); + opacity: 0; + transition: opacity 150ms; +} + +#context-menu button:active::after { + opacity: 1; +} + +/* Separatore tra voci */ +#context-menu button + button { + border-top: 1px solid rgba(0,0,0,0.08); +} + +/* Voce "Rimuovi" in rosso */ +#context-menu button:last-child { + color: #d11a2a; +} + + + +/* Permette drag sia mouse che touch */ +.app-icon { + touch-action: none; +} + +/* Evita che l'immagine intercetti eventi */ +.app-icon img { + pointer-events: none; +} + +/* Allineamento stile iOS, evita offset su PC */ +.folder { + justify-items: start; +} + +/* ============================================================ + PAGINA INIZIALE + ============================================================ */ + +#setup-page { + position: fixed; + inset: 0; + background: #f5f5f7; + padding: 40px; + display: flex; + flex-direction: column; + gap: 16px; + z-index: 9999; +} + +#setup-page.hidden { + display: none; +} + +#setup-page input { + padding: 12px; + font-size: 16px; + border-radius: 8px; + border: 1px solid #ccc; +} + +#setup-page button { + padding: 14px; + font-size: 16px; + border-radius: 8px; + background: #007aff; + color: white; + border: none; +} + +#cfg-refresh { + display: none; +}