From 655db6839b8d3cb44268a671223e9d8e96b86221 Mon Sep 17 00:00:00 2001 From: fn-registry agent Date: Sat, 30 May 2026 17:28:44 +0200 Subject: [PATCH] chore: sync from fn-registry agent --- .claude/CLAUDE.md | 40 + .ipython/profile_default/history.sqlite | Bin 0 -> 65536 bytes .../profile_default/startup/00_fn_registry.py | 100 + .jupyter-port | 1 + .jupyter/collaboration_sessions.json | 7 + .jupyter_ystore.db | Bin 0 -> 835584 bytes .mcp.json | 12 + .python-version | 1 + MULTIVIEW_MODELS.md | 107 + README.md | 0 analysis.md | 17 + main.py | 6 + .../01_panorama_image_to_3d-checkpoint.ipynb | 230 + .../02_smoke_triposr-checkpoint.ipynb | 304 ++ notebooks/01_panorama_image_to_3d.ipynb | 230 + notebooks/02_smoke_triposr.ipynb | 423 ++ pyproject.toml | 28 + run-jupyter-lab.sh | 50 + uv.lock | 3997 +++++++++++++++++ 19 files changed, 5553 insertions(+) create mode 100644 .claude/CLAUDE.md create mode 100644 .ipython/profile_default/history.sqlite create mode 100644 .ipython/profile_default/startup/00_fn_registry.py create mode 100644 .jupyter-port create mode 100644 .jupyter/collaboration_sessions.json create mode 100644 .jupyter_ystore.db create mode 100644 .mcp.json create mode 100644 .python-version create mode 100644 MULTIVIEW_MODELS.md create mode 100644 README.md create mode 100644 analysis.md create mode 100644 main.py create mode 100644 notebooks/.ipynb_checkpoints/01_panorama_image_to_3d-checkpoint.ipynb create mode 100644 notebooks/.ipynb_checkpoints/02_smoke_triposr-checkpoint.ipynb create mode 100644 notebooks/01_panorama_image_to_3d.ipynb create mode 100644 notebooks/02_smoke_triposr.ipynb create mode 100644 pyproject.toml create mode 100755 run-jupyter-lab.sh create mode 100644 uv.lock diff --git a/.claude/CLAUDE.md b/.claude/CLAUDE.md new file mode 100644 index 0000000..36a65c7 --- /dev/null +++ b/.claude/CLAUDE.md @@ -0,0 +1,40 @@ +# JUPYTER HABILITADO EN ESTE ANALISIS + +## Reglas OBLIGATORIAS para Claude + +### 1. CODIGO INMUTABLE — NUNCA MODIFICAR CELDAS EXISTENTES +- **PROHIBIDO** usar NotebookEdit para reemplazar celdas existentes +- **SIEMPRE** anadir celdas NUEVAS al final del notebook +- Si hay un error en una celda, crear celda nueva con la correccion +- El historial de trabajo debe quedar intacto para trazabilidad + +### 2. PROGRAMACION FUNCIONAL OBLIGATORIA +- **Funciones puras**: sin efectos secundarios, mismo input -> mismo output +- **Inmutabilidad**: nunca mutar datos, crear copias transformadas +- **Composicion**: funciones pequenas que se combinan +- Preferir: `map`, `filter`, `reduce`, list comprehensions +- Evitar: loops con mutacion, `global`, modificar argumentos in-place + +### 3. SIEMPRE usar MCP jupyter para ejecutar codigo Python +- Las ejecuciones se ven en tiempo real en Jupyter Lab del usuario +- Compartimos variables y estado del kernel +- **NUNCA usar bash para ejecutar Python en este analisis** + +### 4. Verificar Jupyter activo ANTES de ejecutar +- Si no esta activo: pedir al usuario que ejecute `./run-jupyter-lab.sh` + +### 5. Gestion de notebooks +- Notebooks en la carpeta `notebooks/` o subcarpetas +- Si un notebook tiene >50 celdas, crear uno nuevo +- Nombrar descriptivamente: `01_exploracion.ipynb`, `02_limpieza.ipynb` + +### 6. Gestion de Python +- **SIEMPRE usar `uv`** para gestionar dependencias +- Anadir paquetes con `uv add nombre_paquete` + +### 7. Acceso al fn_registry +- `FN_REGISTRY_ROOT` apunta a la raiz del registry +- Para importar funciones Python: `sys.path.insert(0, os.path.join(os.environ["FN_REGISTRY_ROOT"], "python", "functions"))` +- Para consultar registry.db: `sqlite3` o `import sqlite3` con la ruta `$FN_REGISTRY_ROOT/registry.db` + + diff --git a/.ipython/profile_default/history.sqlite b/.ipython/profile_default/history.sqlite new file mode 100644 index 0000000000000000000000000000000000000000..a61f08e56d1231ba13c499f3faef2d10ccd3b1a6 GIT binary patch literal 65536 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 Dz`@vs literal 0 HcmV?d00001 diff --git a/.ipython/profile_default/startup/00_fn_registry.py b/.ipython/profile_default/startup/00_fn_registry.py new file mode 100644 index 0000000..b376e1c --- /dev/null +++ b/.ipython/profile_default/startup/00_fn_registry.py @@ -0,0 +1,100 @@ +""" +fn_registry kernel startup +Autoconfigura acceso al registry en cada notebook. +Generado por write_jupyter_registry_kernel (fn_registry). +""" +import os +import sys +import sqlite3 +from pathlib import Path + +# ── FN_REGISTRY_ROOT ──────────────────────────────────────── +# Prioridad: env var > path hardcoded > descubrimiento automatico +def _discover_registry_root(): + if os.environ.get("FN_REGISTRY_ROOT"): + return Path(os.environ["FN_REGISTRY_ROOT"]).resolve() + hardcoded = Path("/home/lucas/fn_registry") + if (hardcoded / "registry.db").exists(): + return hardcoded + # Subir desde CWD hasta encontrar registry.db + p = Path.cwd() + for _ in range(10): + if (p / "registry.db").exists(): + return p + if p.parent == p: + break + p = p.parent + return hardcoded + +FN_REGISTRY_ROOT = _discover_registry_root() +os.environ["FN_REGISTRY_ROOT"] = str(FN_REGISTRY_ROOT) + +# ── sys.path: importar funciones Python del registry ──────── +_python_functions = FN_REGISTRY_ROOT / "python" / "functions" +for _domain in sorted(_python_functions.iterdir()) if _python_functions.exists() else []: + if _domain.is_dir() and not _domain.name.startswith("_"): + _path = str(_domain) + if _path not in sys.path: + sys.path.insert(0, _path) + +# Tambien el directorio padre para imports por dominio: from core import filter_list +_pf = str(_python_functions) +if _pf not in sys.path: + sys.path.insert(0, _pf) + +# ── fn_query: consultar registry.db desde el notebook ─────── +_REGISTRY_DB = FN_REGISTRY_ROOT / "registry.db" + +def fn_query(sql, params=()): + """Ejecuta una consulta SQL sobre registry.db y retorna las filas. + + Ejemplos: + fn_query("SELECT id, description FROM functions WHERE domain = ?", ("finance",)) + fn_query("SELECT id FROM functions_fts WHERE functions_fts MATCH ?", ("slice*",)) + """ + if not _REGISTRY_DB.exists(): + raise FileNotFoundError(f"registry.db no encontrado en {_REGISTRY_DB}") + con = sqlite3.connect(str(_REGISTRY_DB)) + con.row_factory = sqlite3.Row + try: + rows = con.execute(sql, params).fetchall() + return [dict(r) for r in rows] + finally: + con.close() + +def fn_search(term): + """Busca funciones y tipos en el registry por nombre o descripcion. + + Ejemplo: + fn_search("slice") + fn_search("finance") + """ + fts_term = f"name:{term}* OR description:{term}*" + functions = fn_query( + "SELECT id, kind, purity, lang, description FROM functions " + "WHERE id IN (SELECT id FROM functions_fts WHERE functions_fts MATCH ?) " + "ORDER BY name", (fts_term,) + ) + types = fn_query( + "SELECT id, algebraic, lang, description FROM types " + "WHERE id IN (SELECT id FROM types_fts WHERE types_fts MATCH ?) " + "ORDER BY name", (fts_term,) + ) + return {"functions": functions, "types": types} + +def fn_code(function_id): + """Retorna el codigo fuente de una funcion del registry. + + Ejemplo: + print(fn_code("filter_list_py_core")) + """ + rows = fn_query("SELECT code FROM functions WHERE id = ?", (function_id,)) + if not rows: + raise KeyError(f"Funcion no encontrada: {function_id}") + return rows[0]["code"] + +# ── Mensaje de bienvenida ─────────────────────────────────── +print(f"fn_registry conectado: {FN_REGISTRY_ROOT}") +print(f" registry.db: {'OK' if _REGISTRY_DB.exists() else 'NO ENCONTRADO'}") +print(f" Python functions: {_pf}") +print(f" Helpers: fn_query(), fn_search(), fn_code()") diff --git a/.jupyter-port b/.jupyter-port new file mode 100644 index 0000000..5246073 --- /dev/null +++ b/.jupyter-port @@ -0,0 +1 @@ +8888 diff --git a/.jupyter/collaboration_sessions.json b/.jupyter/collaboration_sessions.json new file mode 100644 index 0000000..556d35f --- /dev/null +++ b/.jupyter/collaboration_sessions.json @@ -0,0 +1,7 @@ +{ + "7da6e738-4e80-4249-8b21-6196c839c170": { + "version": "2.4.0", + "created_at": "2026-05-28T20:46:18.369137+00:00", + "document_version": "2.0.0" + } +} \ No newline at end of file diff --git a/.jupyter_ystore.db b/.jupyter_ystore.db new file mode 100644 index 0000000000000000000000000000000000000000..5cfcb7cb4d7100f36ea9e06bee7a0f7505ce72ff GIT binary patch literal 835584 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ⅅHc!6g=aGikxIm#czCRcn`E_|DL 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�W(q}4Utful$NJI%*0 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ឹpH^Z$1iq|ChP(UgYfYy`xg*9k&D2+=y7`i*_;htJR;hE; zlDU2`` z9VcP#A6-hsN{eT{eo4$1Z*F>LOc%RpaM=7(wlIFvcchfbj--H%tN{#lL$ zIi1=xx9LjM@0$=mateDtl{B9}SVzeHfYjzyynaPXc0}Q|It2PF-b2K1A0hJH3qq1q zW!k=d`zCsq?D_Sz9*9YC{lk&54|u$3kam``#%-oehW+>M-)yr)-8f;TF<`CgY}<;* zh+uCRr#@fvvxshtp&j9B4pF^uuD#!CQc;0JjLk9lfSDN!*^U0V)G6qc0d?cmsY}Bm zv%sOeD(E$@^5p5Un_1&)4AC0+646L$ejZLoDJHMx_@#GnH+PpgQA=B0-hM@WAFOnb zuA*dl)_KH%wfQccjOW03=x&&U&K8q;%9m?#XY%!Gasa>&dn?4xwmfgWnTU;5qf8K)O%d*5kq<5IGglMcz^xA=}rgE z2S4G_bmI~|Pyxw_xM{Eo8_`+34X?Z;17@#r^>cSUB*4wUtMj@N2Rfq(V_+VJ*}3A` z-2INPDJ%9P`M4?O{runyyO3pFMX~N3ch}%R3N{q|&Q7(4`JJ`S^FPTgWo7PWK?LncOOwsH#uZz>T*U%jCJ zJV@1>;EHK1#xxC(I34XHFWBu_%ek{eHR+;521VY-oOyId>IaS2Oa|=idi~b;HP86` ze+Txtp{*ypi_0^7s)=XgG!zWi4w!3NAt;hfbMh!(nW|9_fa1W1;t4~!JgWK?ThQ4D zd*R?QN9uY(rA8;n_uEjW^~Wc9U-Gtw8<7(`z;VAJPdo8?VcsFp72<{Qwznc453hFk zl%C}0%_?jM`Qy%o*RMw+x3H^v7f4YH4ej}6hr1Z*lof7FznxR zMU?F`&I5k&!PXc1Cx6XnXkui0=e3{;>wBbv-}Hl<&Xl?|_9m-yajD#&fzoY8mLCdv@E0o@?j+5P&9lmCt#6OiAa6 z_-&O@cZRK+A`FkXht?!D)o z*3o(^Nq>D*9*)oX+XN*sI=l4IUp3+PVF`PzuFI48gHb+hpykp_3~b}CrMsPdVSpva zqte;%<2UY^soK}r=eCbL?U7TR2`OY#EZ@eJqOy3$`C()LcDkJX5?|V%+2hA-8#ie^ zoYndutdAsvKyM(9taOc{wUj6d^$58IE(VCwt3`_f=h+}4SpEB1z_etoO@@qGOT z;^Z5fod%}M8uYPBjGFw+ckJo!Kr{T_fGYl+g1NG_l=j$R zY}7lPGY@1xPj-%R^s<_-T<5f zcj~8()2V4#q_f@)Lmg>{s*$lwq$>zEh&c^(9{SjMko%-T%am#Y1FWoL>~A}Ohw5`! zLP22XTdb4-nt2=;8ps%5_S<-Z-SPWsr@P0r7vHuIqZkf)-|jgN`!MyPb3g@3e4_1? z_$RHQg!HH+MQVz#w$Pj`3!oSIt#WS%Tp9twyIrss0rR_jl)H++M&Ms901uDtvS50@ zl<0!1A>Bip2Ug*eln-3?p2{m7m=zE6&Yc8sv*Rtiisy&dYlCrp4cijD zj>)9?=U9=?ZVLgEzXo67oxHJOc(8eRqKYFz5{vUeUJwEVQ+w^v>$olZB&r27Ua)<{ zLUh5|Hx;U-*ndf5zAb?!0|DZfFSa_ZpNpi%PqRINYysq0}Pg3J#@=|*w;qd;SJ&x9g!gKw7z^RpJ-kLV6d;^`yeI zciv6ThH@``vm={z_8TETB~iHkx+PXXz-wU-?b^sBs^hPL?CQA%8sv@_vK)j=CVpjjJ+K6u)z@Pt#}v5VqI0>j@6rXAwg*XY z6zrk?0$VpQFvyPiJRYS&{bi-bl34lyN|13KAKjZ-JcAp|Bh(yeln!)%| z@gBsQX0Ns~ca@(-lCNS(0LlDG}sL8hkzYeWS~z2xx|WvJ9>>^xPdWNO?; z%=aD?yW)uF$2?g$Dg8qK_U%Q(US2{b2I6~^N_?d_?R7o&H~)Yammh&zx6a#KjVHO@ z*^J6WUrd-7d|{d)k*{jM!KV&@{4lHcpNj=uKq{qovw<6$xF7T^Kmc{JIkIHzS&9b`H?Z#YD5K<55Qnms^^{9Qn(z6!Hi=gXshn$ccOUIt*|2! z$tXVQR;jDXVs3G|y>k%823|noW?NltuN+&Un&j!^DqJW)go3M29Jc0M;w?%3MD@~E z4flNFrQO7`Bqe&jHcg@vB-fp!Lm7SDO=KrQ^s&eDxGcej*%jdXwMtSB(=}04Im_es zroiBYIAa;fKx*j%Y^9$%d;+@Yx})L%zv4W6<){FLNUXTPj@EY~n{<21`zY~t7jqI$ z0vf=tU5!fwGoDd|i0(<(mR9&Xj#<}a{{EnLs=HsUeI83ETQlkqs7={FX1*!lriCKz z0bbCI`PvOh-}3037E9~PP4OdUQ0oZjiK7w-tnbN5rv*Q;07CAX<5?XoQCg$ed`pTi zjewVHESNW5Jh)n!$&OY3Yy1j4sjt9X+#cA-uo=mN6Mib5JEc8}uG!6Gys9q;Q#zo8 z_4{~M9uRa!_#0^Hgg#d#H0?6uN#c0i(+h@5!}0tkuNAfb0pTj_cnq3uxyrM}7ad2W zpe}}LUw)kS^i}Zy)6}5R2Z`hb6MC}O_ai8VdwD7w#&TyYSnWWO?=F`Z9GF^Nz+K&? zAZSJxO0)P;&2)rY&+~Q}a%a@&)0CR{0vCZ)aZ=F7a`ogP0V{Yvt|cvtz2 z76CA);3-6H1Jparei$M~e{VfK0K$((TDm$mG>O&w%a7A~`ko2pefu5W3Vy=ht z%Wlt_2hx;YPMi?T*{=I7dR2puJis%Al~-Dr24CUrAV`4)JuQUG>F(8_tlpH*(^hAg zC2(9kQbk_T&gHx9UzKbNX!WNqAAhQdBXt4FV|-?&C|fW_hPdpI|J`@UYq@7!1PS&pu?KVN+MyDd?19gvri zyit8=dS9Zud3tbrtB~HeQlF{~IH-pEy^HSF_THoZ(Zt&|>mQ-WM^Vi8!EiGd{j&WQ z^^OWS{w5yn6AU^~5SU<@o_l`hPgg4su6(-$+k=ijtN&UFnY)pv5T)IvT`ai4FF#wj z;eIXhr}5h7YkXj?!H&9r4=9wstsT)NdKNGr;or|#z|WZaLva>G-xjYc>@_{yz~tq&(7(5jPtowcNUt1T^@_gwxrq|!z21q_nI-S~*GhAo@bw=O9ns>AD7BzlN|5Tzkf`og(;=qS|-56mLs&%DNf0w4N96z2CE zznn+JsM1mo_G$+7XoNUB;)cZU0c5hlzvRSy4P#Te2FZOfXAow-Q^5=2AI1R~dt{RQ z@zs3k35qtIuG4W7o}h}o5aAm%k}YbMP$TZnOSSVzCvAbrM(cN<(+-_?HB(=7m^I0- zQ^0l>KGD}PYWl^f3&3VFg@RO?H}cU(CFR*avt3rZs*Z$C&YgJtK}HD82-$OoOsk)< z{s9Wty#)hI&EJc=_kmLEa?5?cOYxGBcQ~3Jm}NNU{Uh05#u5u-SN$~O_?m84QX$_5 z#z{`?878cR*UgeSDsXRI4nMW`+dVO#8%&K472y1DJmvSq5g$0F;tN`eZV3R(YeyX0 zuDpP!eYcz^LGOBgKOeoi*vWfdu9N2n{vM<=R@iK|FhE423gdAnp zc*p-C2ksRQRB0eyA9RjJ*Ig&&LSbtOeYk}WcGhi_Zrq&Ju`sNhBs?p~$7fgQe{T26 z>UXQt>4!9iskbbv&^hlZ8|3Lk%HoaAUoL>WO(lziv~tDIe>fccj&v#X`8zy!o7fm4 z^`k@PL3=H>Z3k3O&MWazJl1j@8I7j5$XmeUH-ucS{*e;*dz@Gg`b5I4u0VTei&ADE-500$SW8`B(t^E*Y$g#&7;(cBK zD*BwJjv*6n+?l=8^y!GTN?}%oG~UkY_dJ=*&p;G}ydA&}l8sYbLiX~yd%`6Ux%73J z@2|jr^Pal-9Qg}AUl!NF5 z`}!^8Q}OuD*G1Nz1+9NMM1>#p4!8`5N_ky+B0n=niFe?9CNb+m%-k#&wAMO)EPxyGTp%H%Jd5{bF zCM}bqHX`i-Q}wcr%)6$hqQCB?kP|&Sk?vwA717b+PX6_B^i={h>hS8J^VrxZHNId4 zvgT+-60S6l9tXg*-g|l?H_gNLH+-)7!*`7XcEq{qLb8v5_G@0Fg_wOM4`E!g69%#m zfC^9)436$h#~E{&9(4v@-pIY}Y3@n29?Q_U2KtR8a+ifOfdhtfS|req9un3bPxwKA z-{nU8Ou$-LTzkW|m~=OYyCKmi8`=CcW^dbgB>BvUvJIGBJTz+rMbv~S9zKXrAnNeo z*ozPz-CcGO=W^>2Lf($xWXgCu68J-G2k|c?*w3HmVN;sJWc%iu@0NhJaKtY`XB8$YtC*uXeD?}oK_2fZH?IZW4h_M6 zdE7WXMs0z7*?I8b;9Vp|p$I@73P_q89`$ScV>J0YXf)&155TmZGzMOq4vZfC?pGIo z9(JocPQratqw=8>w`Zoo=Smq?H0E_T^)JQHruAwfTfO6fSHKDkr&-_n^7M`Kt=s7* z0mL(D;X}k*H$8lH@_jP@Jh)1A<^`G~QdXkBduOt3AE2FX0x`?2B*)!IX_9FOuy@Uy}F@>0)xWj}+ui+D1We20!xy?DLF2&ow-Sv?DHHCF31P>F9;sPj4{QmBf zS@w9-9}PS+f;R*v^EWB!LV#DK4$#p|$F%<8sZeP5Sb9&|ml)=9M>xA3zRC=XWvU1^@$^>vU7Q5|R)(e?WA#-92J;B(vaL2Ld9b|G?9BHjM_ICq+S2#R`ogd(C( z_Wfqa?T?SnPh$w;*FKXo^zZ8(+bs=>D)cqxpTO#29=-uN*JY>_-TOp0ekRIJ@?Be z1xgp=59^kE=hQ!o6MQtW+{lr&CK zA2a_<>7cZ$OK)&4r@`8ZQ%B0G4_;ooN|X;oAi)ikY2Wp3FN@2N`DBdr=T2pTbK(e^ z#PQa^0?WUE%6w6!MA*OAWBYn<>G!SKx?xBuydUPxH(GWpQcu-e0Gg<3)K}8Zqn9w^ zjZ5 zGRiOn214m|_(72kLryHvPY*DMN0t4^^oO4!P~;pPZp>Zb#PV1$y^?WJ@S@c|2ig!9=HJ{D?34-(hZ^g^@2P-VEhkP z|3u92K(FEmEkJc5BJeQ=?GqEWQP7A66CpV;`{me+M1DkQ;moGNFg)=O{SQuUZMjeB zg3dCI7%tc4=!2g`pGg!4dLpb3ID@c|oe`BXh> z?s!%wHPO*1@V(=Ww~2~Zem;*(!q{oJNibmhfVI(*!WKxJB8U4E*soSy|HQg#aS3=E z(r-3?4@`&kNsyuT)q2cBFyz*0pzs4!As^RKf3W7SJ13XlmYm)ua=_`(=)Jsm^7RV~ znSHyn5u)t(&}UvQ=L1E7h)GGfBFpjzhqDC@OsH3uvnWIBSNk}vz+&Ou{a{}9F*$^# zc1u|bvdhyu%)~v{1Hjq5A|VLqz`hYNflS*`TeSpXa3TXy>%iM_gi_H1>#UdpKveC>V~zK&>t zBCzx1E$uF^6|mw208kC5i&YGzyLXK=TxZ621TJ&|&|3_ByiXmkRVh*rr1jc?rx|ml zlxKoTienqSUVW~=TUMXjg9NPi^sUwv8SUyM$Vneuxq4pA_vC>55L9~S=|9pgc*|xS zttst4A3dAqEfYTsa~JJ{Wvnk>e%`n0S2sg$Px|9E`31Q;gU0l#l>DmyK(pv3MTGa) zg4>o%?c6S}QCXj&)AmjtRR8km2p?;J60>JC+_T`!wwZ?KHrt%AFJB_%(-}THaRo7~ z!E*k70J7GuuOhx5^;pXGzN`@sn3ArXf$v_YU9gS6eXQlA!)xyt5!rS6w^7N*jbrjX zmC_J({Qq8anE!}Nw+RVd^oKF$bSMp~bIEtzgrM1{TYTcn$PoL(so*N|uo1rxRCma@fJJBc#?}B~I2A6pNnHN51V0ja8&Kv1bbp zTae%wHX>G%z=>b;zu0>XH<8w3JPITFzRQarbc^}wy)2!y^ePBlYWA*sx05msw`=rM zJtkhRk2XOV(J>q6flll40K8}BJS)&1is}HOH9aCm+jl5JT_7yc%u4%C*GDL0?DW_S zO!P~B2jRuUY$_vh-$NvcPr~E8i{jpBH@YgsDn<5BW#BVvK<}W9*@V>ss{|SzSK{k511Sd^M9>Fb3`teDjG7?V`yQu(`R=9QuXHM!vbnZN4>i1W z*Aj%oK*P^-tIvi2u|zUQT9ysR(>;L^a{huKWoaAC!JU1D4V?U@#7S0j`4jG55 zes7#Uk(MKbYur-~F1I1;TLSmkaSJo2RPM8N;N3IiS*z#fo(LymkQ z8{esS46XLlqYVtfxW9sNz7}q?;rH@#^1YS5h7aC&H2F;>Q(#mW-q$YxZotUw{C*<@ z?J@`+UwAc1{#K^MxlBg0)BUm>T3s)LCfT$MPO?vdmE0zbr;9fnOoka_u%Cp+=FPIl zn}UZ`a=6fF;QW#RCxG0z6WOyuy7PM0QT!2*&mB4+mjdA;ciXGsnbqfs+c&=8pMKS) zzsbJxea_}7W{waThV^L7_q-{~1c{*|pzt&@jCOpy4ci$zFWujoUeEm}5Dg`bQ$+*vFyOB= zR2JASiVS__t316~4_B@edr533RH)usZDa?|R#$R5cs=*Gn#GGC87z=ON{JnnV&huS z8Q1lr%9Q>P-AH)?WG7T0lyepO)x3*u+{dQ@wkfa`S21;Ja9Q9``YrqUV(JO!VT9|R z>U<^7P!0*GQP^s7mr`)@bM(1kxrPq&wTPy>Nlr(Nx2??Wt6iKa`KUx(4l(!ststnG-NO0 zkvnkB>X|dLt!%v%6A*sU@LVd*N$K&H5Bk}TbRjf1DGK0bY={ua?h{s@fdaq#=gxY# zvJWu!VIPp6u(DT2$j=Dm9cG&IcN`fsYsV9a?dc3sP!jyTH%bFZjRcetDBionhaaB< z`$(#4#pufUP|5k1dDJ-@^Sf&seQhT`?!0L6z!IwMccX+LIq-n&$ZY$=tl@9<2XrgQ zrDET_Oz@K}no{g|2129>V)?E~Iiei-;2OR2>qER9q;m&esNvI<`m7y@B@3u#?BV&2 z01MrFHwpH}yDNs*{bZBS);jWD#0IVmKi-~ZY7cRyxB}_{izr7TSnIes1q45xU+;#W z_c=zUZEKvo@M~B#er{is=6=R54|#zYns8Ig6)!QPNwX+#wRNxg4P2>nh%@tapBT(p zMky5%a9h284>bPzf6ASwZDpE{Q+=_QYK`-A`VPsfoy94&`w_=N#5AP5zc(>sJ#z_pf{5OBX+@ zTJhJ=^6%Lq$M>k}l0ip|g*mC!lYM=W8tuua1fZ=yx#FC6huNg5Bn5epK4&AJw0Z-g zhf#>5O^~HT&k+Gc&|-;&*cQo|dT`O)uAU{K`pSPN|KKrHAJ`Jlka2fAxF6fOw?ugY zB;!?%>V@%u%>a`A+-&Z-wjOPI;wj%~({V1jhM zP4RXaF>!f&G=-F{ELf0Lk?9y=^!VGwarS}Q`~C6;Y67^}DAuO3h&*4oM7ZT|h_0$- z!|%W<8$Ye;SIa*c&>U*#f$EKuRUB)GX+lXu3XhBXCL?fg;m2~ z?k-0~0$D7q4f0q^uF$+N$gLzy8V2bh;_vszeNw3*weV7xA$b%+uMKe2GeTP!y+abF zpKDh)o1~`w26E0(%5OsQ!{OEF9w+m+VHnv+p zGgjQY`unYm_=LHkuh=OJ>cGuy(&1v_g{Yh+oNP~MrC2G5PsNrD=li)IuOp82!oC`dBb8OK`zWfVnanMh(YBwcW;2X09S`jGTAG&FZNj;2Ro1$oRKOT= zZ@c0Ahp!5(-BWO)GDc$PUdho-32#7O%xwO?a!sh35&E9V)XM!k6KO%sF}5gyuj?xZ zq6vQRY*TAPbeE1lHDP+_+JHSieHX=+rSfDYf_Y?cS&GjqIW(9rgzLgD(#JOGr!xGMCqJ)xfuERs6SwE7LZQkNJI`%ee*ddU#NGgYU5A2p0f0Q z{i;G^W(M_v`m|8$yuM#s2 zw)+K^{xN_p1H~h$qTW$HoD+bc?B^X)jh8*v8Z9rc155LOCd>R;cgmCHBryQSDE2&0 z4byDhu(e@DvC&k#dZ+wgh$V0#$#CF*=7w;4>7O(K+DZhY$NuGp6=EmO?fIT>jjfr` z#?W6-`tyQ3o=G>~$gicxWEI}M7J8`qGll$x9fMBurB6aaN|6V>bs@TsHta}fTz&yA zl{mpY4>9C3DyseP0C;g%7mb6M5b@P9sU3xHgVF$`*9XTQlevyx%{z~mwpIqr#P51{ zOkXA>muI5_;f`|J{OsQk(N;HMyL(oZeIA@oDsx9iTNwZLst!3$0xe0nLI2v);k=(e zyM@%oLJY7nE3kf0;orrXBz7d0OcN0nrKOC10K$+}y?%w<5j*HfJ9;p=MLFz;qZmvl zxvTIlpnxv?-e->oI84`Z3}}AM_G3N9J!(^Zn64?Za_Jey|!K;K6*Z-GS$(oqATB~_*&q8 z7Y0pY7Y5tT8YXZs5H(D;y!CgAW^-+m)Gr0=C}bcb`u#kA!qq+4?KQU!<4mj}+lpt4 ztex)pEj9JAKgG*01JXGA9oSkCATKkv#aV>A{~3lskLb>)yXL|i1)bLmbG#CS2Nl%o z(4rxh`>EABYgWxa-}5#S)e5sm8A>s6Mr1apuZ41B6#(f_f?ZU3#=7wmfkhYc)IAw@ zQE-3hdM6`YWRl)e@jZT%Y1jbpeCroN4e+wNFG0T#X`J^oAtUK*YNMu$FEi}Oee3&1 zFP?&`H?9T%B_#)EhL#-*7i$ET#y52d#}cG72t;K7U@TN;MREF!=;DbL=L!|o&iBjW zWzv;eLNDI0wW)#rF-~}Q)F>v#%#Ox5{uxjXjeeRQMc8@S&RYoH55!z{Q}&>loe`An zONt&)|9qwA5X-i-sLu+a{p$R-VEQag58#4|y%IX`D45Kr%T-o>(&gKwij54H)?FPa zSZ_zmIE-iay*s5f<0=6S++%T@o;MjepC^wlvr{O?tqN{{SXJ-%j33W>=N~HneroOx zC$-4E^UB5P(Y4?C$+C_Q`=0ma5e_3minv9X?308UI7X!~Iu@a^vp{h_@Wk=foi+0G zNS-+yxjT?l&)YIcGiRrrTB|qUOoFh?rIgv{KXjxMkXCsuPmUAT^wDFEp4VHvQdX" + ], + "text/plain": [ + " idx inference_s vram_peak_gb\n", + "0 0 15.595 21.12\n", + "1 1 24.106 21.12\n", + "2 2 15.327 21.14" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "torch.cuda.reset_peak_memory_stats()\n", + "_ = model([fg], device=DEVICE)\n", + "torch.cuda.synchronize()\n", + "\n", + "runs = []\n", + "for i in range(3):\n", + " torch.cuda.reset_peak_memory_stats()\n", + " t0 = time.perf_counter()\n", + " scene_codes = model([fg], device=DEVICE)\n", + " torch.cuda.synchronize()\n", + " dt = time.perf_counter() - t0\n", + " peak = torch.cuda.max_memory_allocated() / 1e9\n", + " runs.append({'idx': i, 'inference_s': round(dt, 3), 'vram_peak_gb': round(peak, 2)})\n", + "\n", + "import pandas as pd\n", + "pd.DataFrame(runs)" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "1d0a4ddf", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "extract_mesh: 3.08s\n", + "vertices: 23,358\n", + "faces: 46,720\n" + ] + } + ], + "source": [ + "t0 = time.perf_counter()\n", + "meshes = model.extract_mesh(scene_codes, has_vertex_color=False, resolution=192)\n", + "dt_mesh = time.perf_counter() - t0\n", + "mesh = meshes[0]\n", + "print(f'extract_mesh: {dt_mesh:.2f}s')\n", + "print(f'vertices: {len(mesh.vertices):,}')\n", + "print(f'faces: {len(mesh.faces):,}')" + ] + }, + { + "cell_type": "markdown", + "id": "0a001b76", + "metadata": {}, + "source": [ + "## D. Mesh stats" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "12e5c907", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'n_vertices': 23358,\n", + " 'n_faces': 46720,\n", + " 'watertight': True,\n", + " 'area': 1.4886255298483926,\n", + " 'bounds': [[-0.4964459240436554, -0.27947795391082764, -0.30450111627578735],\n", + " [0.5693031549453735, 0.2906055450439453, 0.29652678966522217]],\n", + " 'euler': -2}" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import trimesh, numpy as np\n", + "tm = trimesh.Trimesh(vertices=np.asarray(mesh.vertices), faces=np.asarray(mesh.faces), process=True)\n", + "stats = {\n", + " 'n_vertices': len(tm.vertices),\n", + " 'n_faces': len(tm.faces),\n", + " 'watertight': bool(tm.is_watertight),\n", + " 'area': float(tm.area),\n", + " 'bounds': tm.bounds.tolist(),\n", + " 'euler': int(tm.euler_number),\n", + "}\n", + "stats" + ] + }, + { + "cell_type": "markdown", + "id": "47ba64fb", + "metadata": {}, + "source": [ + "## E. Export GLB" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "bf14e846", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "saved: /home/lucas/vaults/imagegen_models/image_to_3d/triposr/smoke_20260528_224618.glb (822.0 KB)\n", + "roundtrip: 23,358 verts / 46,720 faces\n" + ] + } + ], + "source": [ + "from datetime import datetime\n", + "out_path = VAULT_DIR / f'smoke_{datetime.now():%Y%m%d_%H%M%S}.glb'\n", + "tm.export(out_path)\n", + "size_kb = out_path.stat().st_size / 1024\n", + "print(f'saved: {out_path} ({size_kb:.1f} KB)')\n", + "\n", + "roundtrip = trimesh.load(out_path, force='mesh')\n", + "print(f'roundtrip: {len(roundtrip.vertices):,} verts / {len(roundtrip.faces):,} faces')" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.13.7" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..b91ee92 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,28 @@ +[project] +name = "spike-image-to-3d" +version = "0.1.0" +description = "Add your description here" +readme = "README.md" +requires-python = ">=3.13" +dependencies = [ + "accelerate>=1.13.0", + "diffusers>=0.37.1", + "einops>=0.8.2", + "huggingface-hub<1", + "jupyter>=1.1.1", + "jupyter-collaboration>=4.4.0", + "jupyter-mcp-server>=1.0.2", + "jupyterlab>=4.5.7", + "matplotlib>=3.10.9", + "numpy>=2.4.6", + "omegaconf>=2.3.0", + "pandas>=3.0.3", + "pillow>=12.2.0", + "rembg[cpu]>=2.0.75", + "safetensors>=0.7.0", + "torch>=2.12.0", + "torchvision>=0.27.0", + "transformers==4.46.3", + "trimesh>=4.12.2", + "xatlas>=0.0.11", +] diff --git a/run-jupyter-lab.sh b/run-jupyter-lab.sh new file mode 100755 index 0000000..0739b68 --- /dev/null +++ b/run-jupyter-lab.sh @@ -0,0 +1,50 @@ +#!/bin/bash +# Jupyter Lab — modo colaborativo con autodeteccion de puerto +# Generado por write_jupyter_launcher (fn_registry) + +find_free_port() { + for port in 8888 8889 8890 8891 8892 8893 8894 8895 8896 8897 8898 8899; do + if ! ss -tln 2>/dev/null | grep -q ":${port} " && \ + ! lsof -i:"$port" >/dev/null 2>&1; then + echo $port + return + fi + done + echo 8888 +} + +PORT=${1:-$(find_free_port)} +cd "$(dirname "$0")" + +echo $PORT > .jupyter-port + +source .venv/bin/activate 2>/dev/null || true + +# IPython startup: cargar .ipython/ local (FN_REGISTRY_ROOT, helpers, sys.path) +if [ -d "$(pwd)/.ipython" ]; then + export IPYTHONDIR="$(pwd)/.ipython" +fi + +if ! python -c "import jupyter_collaboration" 2>/dev/null; then + echo "ERROR: jupyter-collaboration no esta instalado" + echo "Instala con: uv add jupyter-collaboration" + exit 1 +fi + +echo "════════════════════════════════════════════════" +echo " Jupyter Lab + Colaboracion en puerto $PORT" +echo "════════════════════════════════════════════════" +echo "" +echo " Abre: http://localhost:$PORT" +echo " Ctrl+C para detener" +echo "" + +jupyter lab \ + --port=$PORT \ + --no-browser \ + --ServerApp.token='' \ + --ServerApp.password='' \ + --ServerApp.disable_check_xsrf=True \ + --ServerApp.allow_origin='*' \ + --ServerApp.root_dir="$(pwd)" \ + --collaborative diff --git a/uv.lock b/uv.lock new file mode 100644 index 0000000..e185d83 --- /dev/null +++ b/uv.lock @@ -0,0 +1,3997 @@ +version = 1 +revision = 3 +requires-python = ">=3.13" +resolution-markers = [ + "python_full_version >= '3.14' and sys_platform == 'win32'", + "python_full_version >= '3.14' and sys_platform == 'emscripten'", + "python_full_version >= '3.14' and sys_platform != 'emscripten' and sys_platform != 'win32'", + "python_full_version < '3.14' and sys_platform == 'win32'", + "python_full_version < '3.14' and sys_platform == 'emscripten'", + "python_full_version < '3.14' and sys_platform != 'emscripten' and sys_platform != 'win32'", +] + +[[package]] +name = "accelerate" +version = "1.13.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "huggingface-hub" }, + { name = "numpy" }, + { name = "packaging" }, + { name = "psutil" }, + { name = "pyyaml" }, + { name = "safetensors" }, + { name = "torch" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/ca/14/787e5498cd062640f0f3d92ef4ae4063174f76f9afd29d13fc52a319daae/accelerate-1.13.0.tar.gz", hash = "sha256:d631b4e0f5b3de4aff2d7e9e6857d164810dfc3237d54d017f075122d057b236", size = 402835, upload-time = "2026-03-04T19:34:12.359Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7e/46/02ac5e262d4af18054b3e922b2baedbb2a03289ee792162de60a865defc5/accelerate-1.13.0-py3-none-any.whl", hash = "sha256:cf1a3efb96c18f7b152eb0fa7490f3710b19c3f395699358f08decca2b8b62e0", size = 383744, upload-time = "2026-03-04T19:34:10.313Z" }, +] + +[[package]] +name = "aiohappyeyeballs" +version = "2.6.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/33/c6/61a2d7b7572279226bb2e7f61d7a19ca7c90da0329c93fa0d560cbf288d8/aiohappyeyeballs-2.6.2.tar.gz", hash = "sha256:e202810ee718bd01fc6ef49e8ea53d023d5cb6b581076d7925aa499fa55dbe64", size = 22591, upload-time = "2026-05-20T15:12:24.631Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5f/fc/a7bf5b6e4e617b45f90f2d9d2a68519c249c81dd4fc2658c7a2a61c4f4b7/aiohappyeyeballs-2.6.2-py3-none-any.whl", hash = "sha256:4708045e2d7a6c6bdf8aafa8ed39649eaf926a4543b54560659129e3365953c4", size = 15062, upload-time = "2026-05-20T15:12:23.328Z" }, +] + +[[package]] +name = "aiohttp" +version = "3.13.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "aiohappyeyeballs" }, + { name = "aiosignal" }, + { name = "attrs" }, + { name = "frozenlist" }, + { name = "multidict" }, + { name = "propcache" }, + { name = "yarl" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/77/9a/152096d4808df8e4268befa55fba462f440f14beab85e8ad9bf990516918/aiohttp-3.13.5.tar.gz", hash = "sha256:9d98cc980ecc96be6eb4c1994ce35d28d8b1f5e5208a23b421187d1209dbb7d1", size = 7858271, upload-time = "2026-03-31T22:01:03.343Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/78/e9/d76bf503005709e390122d34e15256b88f7008e246c4bdbe915cd4f1adce/aiohttp-3.13.5-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:a5029cc80718bbd545123cd8fe5d15025eccaaaace5d0eeec6bd556ad6163d61", size = 742930, upload-time = "2026-03-31T21:58:13.155Z" }, + { url = "https://files.pythonhosted.org/packages/57/00/4b7b70223deaebd9bb85984d01a764b0d7bd6526fcdc73cca83bcbe7243e/aiohttp-3.13.5-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:4bb6bf5811620003614076bdc807ef3b5e38244f9d25ca5fe888eaccea2a9832", size = 496927, upload-time = "2026-03-31T21:58:15.073Z" }, + { url = "https://files.pythonhosted.org/packages/9c/f5/0fb20fb49f8efdcdce6cd8127604ad2c503e754a8f139f5e02b01626523f/aiohttp-3.13.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a84792f8631bf5a94e52d9cc881c0b824ab42717165a5579c760b830d9392ac9", size = 497141, upload-time = "2026-03-31T21:58:17.009Z" }, + { url = "https://files.pythonhosted.org/packages/3b/86/b7c870053e36a94e8951b803cb5b909bfbc9b90ca941527f5fcafbf6b0fa/aiohttp-3.13.5-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:57653eac22c6a4c13eb22ecf4d673d64a12f266e72785ab1c8b8e5940d0e8090", size = 1732476, upload-time = "2026-03-31T21:58:18.925Z" }, + { url = "https://files.pythonhosted.org/packages/b5/e5/4e161f84f98d80c03a238671b4136e6530453d65262867d989bbe78244d0/aiohttp-3.13.5-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:e5e5f7debc7a57af53fdf5c5009f9391d9f4c12867049d509bf7bb164a6e295b", size = 1706507, upload-time = "2026-03-31T21:58:21.094Z" }, + { url = "https://files.pythonhosted.org/packages/d4/56/ea11a9f01518bd5a2a2fcee869d248c4b8a0cfa0bb13401574fa31adf4d4/aiohttp-3.13.5-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:c719f65bebcdf6716f10e9eff80d27567f7892d8988c06de12bbbd39307c6e3a", size = 1773465, upload-time = "2026-03-31T21:58:23.159Z" }, + { url = "https://files.pythonhosted.org/packages/eb/40/333ca27fb74b0383f17c90570c748f7582501507307350a79d9f9f3c6eb1/aiohttp-3.13.5-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d97f93fdae594d886c5a866636397e2bcab146fd7a132fd6bb9ce182224452f8", size = 1873523, upload-time = "2026-03-31T21:58:25.59Z" }, + { url = "https://files.pythonhosted.org/packages/f0/d2/e2f77eef1acb7111405433c707dc735e63f67a56e176e72e9e7a2cd3f493/aiohttp-3.13.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:3df334e39d4c2f899a914f1dba283c1aadc311790733f705182998c6f7cae665", size = 1754113, upload-time = "2026-03-31T21:58:27.624Z" }, + { url = "https://files.pythonhosted.org/packages/fb/56/3f653d7f53c89669301ec9e42c95233e2a0c0a6dd051269e6e678db4fdb0/aiohttp-3.13.5-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:fe6970addfea9e5e081401bcbadf865d2b6da045472f58af08427e108d618540", size = 1562351, upload-time = "2026-03-31T21:58:29.918Z" }, + { url = "https://files.pythonhosted.org/packages/ec/a6/9b3e91eb8ae791cce4ee736da02211c85c6f835f1bdfac0594a8a3b7018c/aiohttp-3.13.5-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:7becdf835feff2f4f335d7477f121af787e3504b48b449ff737afb35869ba7bb", size = 1693205, upload-time = "2026-03-31T21:58:32.214Z" }, + { url = "https://files.pythonhosted.org/packages/98/fc/bfb437a99a2fcebd6b6eaec609571954de2ed424f01c352f4b5504371dd3/aiohttp-3.13.5-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:676e5651705ad5d8a70aeb8eb6936c436d8ebbd56e63436cb7dd9bb36d2a9a46", size = 1730618, upload-time = "2026-03-31T21:58:34.728Z" }, + { url = "https://files.pythonhosted.org/packages/e4/b6/c8534862126191a034f68153194c389addc285a0f1347d85096d349bbc15/aiohttp-3.13.5-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:9b16c653d38eb1a611cc898c41e76859ca27f119d25b53c12875fd0474ae31a8", size = 1745185, upload-time = "2026-03-31T21:58:36.909Z" }, + { url = "https://files.pythonhosted.org/packages/0b/93/4ca8ee2ef5236e2707e0fd5fecb10ce214aee1ff4ab307af9c558bda3b37/aiohttp-3.13.5-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:999802d5fa0389f58decd24b537c54aa63c01c3219ce17d1214cbda3c2b22d2d", size = 1557311, upload-time = "2026-03-31T21:58:39.38Z" }, + { url = "https://files.pythonhosted.org/packages/57/ae/76177b15f18c5f5d094f19901d284025db28eccc5ae374d1d254181d33f4/aiohttp-3.13.5-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:ec707059ee75732b1ba130ed5f9580fe10ff75180c812bc267ded039db5128c6", size = 1773147, upload-time = "2026-03-31T21:58:41.476Z" }, + { url = "https://files.pythonhosted.org/packages/01/a4/62f05a0a98d88af59d93b7fcac564e5f18f513cb7471696ac286db970d6a/aiohttp-3.13.5-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:2d6d44a5b48132053c2f6cd5c8cb14bc67e99a63594e336b0f2af81e94d5530c", size = 1730356, upload-time = "2026-03-31T21:58:44.049Z" }, + { url = "https://files.pythonhosted.org/packages/e4/85/fc8601f59dfa8c9523808281f2da571f8b4699685f9809a228adcc90838d/aiohttp-3.13.5-cp313-cp313-win32.whl", hash = "sha256:329f292ed14d38a6c4c435e465f48bebb47479fd676a0411936cc371643225cc", size = 432637, upload-time = "2026-03-31T21:58:46.167Z" }, + { url = "https://files.pythonhosted.org/packages/c0/1b/ac685a8882896acf0f6b31d689e3792199cfe7aba37969fa91da63a7fa27/aiohttp-3.13.5-cp313-cp313-win_amd64.whl", hash = "sha256:69f571de7500e0557801c0b51f4780482c0ec5fe2ac851af5a92cfce1af1cb83", size = 458896, upload-time = "2026-03-31T21:58:48.119Z" }, + { url = "https://files.pythonhosted.org/packages/5d/ce/46572759afc859e867a5bc8ec3487315869013f59281ce61764f76d879de/aiohttp-3.13.5-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:eb4639f32fd4a9904ab8fb45bf3383ba71137f3d9d4ba25b3b3f3109977c5b8c", size = 745721, upload-time = "2026-03-31T21:58:50.229Z" }, + { url = "https://files.pythonhosted.org/packages/13/fe/8a2efd7626dbe6049b2ef8ace18ffda8a4dfcbe1bcff3ac30c0c7575c20b/aiohttp-3.13.5-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:7e5dc4311bd5ac493886c63cbf76ab579dbe4641268e7c74e48e774c74b6f2be", size = 497663, upload-time = "2026-03-31T21:58:52.232Z" }, + { url = "https://files.pythonhosted.org/packages/9b/91/cc8cc78a111826c54743d88651e1687008133c37e5ee615fee9b57990fac/aiohttp-3.13.5-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:756c3c304d394977519824449600adaf2be0ccee76d206ee339c5e76b70ded25", size = 499094, upload-time = "2026-03-31T21:58:54.566Z" }, + { url = "https://files.pythonhosted.org/packages/0a/33/a8362cb15cf16a3af7e86ed11962d5cd7d59b449202dc576cdc731310bde/aiohttp-3.13.5-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ecc26751323224cf8186efcf7fbcbc30f4e1d8c7970659daf25ad995e4032a56", size = 1726701, upload-time = "2026-03-31T21:58:56.864Z" }, + { url = "https://files.pythonhosted.org/packages/45/0c/c091ac5c3a17114bd76cbf85d674650969ddf93387876cf67f754204bd77/aiohttp-3.13.5-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:10a75acfcf794edf9d8db50e5a7ec5fc818b2a8d3f591ce93bc7b1210df016d2", size = 1683360, upload-time = "2026-03-31T21:58:59.072Z" }, + { url = "https://files.pythonhosted.org/packages/23/73/bcee1c2b79bc275e964d1446c55c54441a461938e70267c86afaae6fba27/aiohttp-3.13.5-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:0f7a18f258d124cd678c5fe072fe4432a4d5232b0657fca7c1847f599233c83a", size = 1773023, upload-time = "2026-03-31T21:59:01.776Z" }, + { url = "https://files.pythonhosted.org/packages/c7/ef/720e639df03004fee2d869f771799d8c23046dec47d5b81e396c7cda583a/aiohttp-3.13.5-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:df6104c009713d3a89621096f3e3e88cc323fd269dbd7c20afe18535094320be", size = 1853795, upload-time = "2026-03-31T21:59:04.568Z" }, + { url = "https://files.pythonhosted.org/packages/bd/c9/989f4034fb46841208de7aeeac2c6d8300745ab4f28c42f629ba77c2d916/aiohttp-3.13.5-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:241a94f7de7c0c3b616627aaad530fe2cb620084a8b144d3be7b6ecfe95bae3b", size = 1730405, upload-time = "2026-03-31T21:59:07.221Z" }, + { url = "https://files.pythonhosted.org/packages/ce/75/ee1fd286ca7dc599d824b5651dad7b3be7ff8d9a7e7b3fe9820d9180f7db/aiohttp-3.13.5-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:c974fb66180e58709b6fc402846f13791240d180b74de81d23913abe48e96d94", size = 1558082, upload-time = "2026-03-31T21:59:09.484Z" }, + { url = "https://files.pythonhosted.org/packages/c3/20/1e9e6650dfc436340116b7aa89ff8cb2bbdf0abc11dfaceaad8f74273a10/aiohttp-3.13.5-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:6e27ea05d184afac78aabbac667450c75e54e35f62238d44463131bd3f96753d", size = 1692346, upload-time = "2026-03-31T21:59:12.068Z" }, + { url = "https://files.pythonhosted.org/packages/d8/40/8ebc6658d48ea630ac7903912fe0dd4e262f0e16825aa4c833c56c9f1f56/aiohttp-3.13.5-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:a79a6d399cef33a11b6f004c67bb07741d91f2be01b8d712d52c75711b1e07c7", size = 1698891, upload-time = "2026-03-31T21:59:14.552Z" }, + { url = "https://files.pythonhosted.org/packages/d8/78/ea0ae5ec8ba7a5c10bdd6e318f1ba5e76fcde17db8275188772afc7917a4/aiohttp-3.13.5-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:c632ce9c0b534fbe25b52c974515ed674937c5b99f549a92127c85f771a78772", size = 1742113, upload-time = "2026-03-31T21:59:17.068Z" }, + { url = "https://files.pythonhosted.org/packages/8a/66/9d308ed71e3f2491be1acb8769d96c6f0c47d92099f3bc9119cada27b357/aiohttp-3.13.5-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:fceedde51fbd67ee2bcc8c0b33d0126cc8b51ef3bbde2f86662bd6d5a6f10ec5", size = 1553088, upload-time = "2026-03-31T21:59:19.541Z" }, + { url = "https://files.pythonhosted.org/packages/da/a6/6cc25ed8dfc6e00c90f5c6d126a98e2cf28957ad06fa1036bd34b6f24a2c/aiohttp-3.13.5-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:f92995dfec9420bb69ae629abf422e516923ba79ba4403bc750d94fb4a6c68c1", size = 1757976, upload-time = "2026-03-31T21:59:22.311Z" }, + { url = "https://files.pythonhosted.org/packages/c1/2b/cce5b0ffe0de99c83e5e36d8f828e4161e415660a9f3e58339d07cce3006/aiohttp-3.13.5-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:20ae0ff08b1f2c8788d6fb85afcb798654ae6ba0b747575f8562de738078457b", size = 1712444, upload-time = "2026-03-31T21:59:24.635Z" }, + { url = "https://files.pythonhosted.org/packages/6c/cf/9e1795b4160c58d29421eafd1a69c6ce351e2f7c8d3c6b7e4ca44aea1a5b/aiohttp-3.13.5-cp314-cp314-win32.whl", hash = "sha256:b20df693de16f42b2472a9c485e1c948ee55524786a0a34345511afdd22246f3", size = 438128, upload-time = "2026-03-31T21:59:27.291Z" }, + { url = "https://files.pythonhosted.org/packages/22/4d/eaedff67fc805aeba4ba746aec891b4b24cebb1a7d078084b6300f79d063/aiohttp-3.13.5-cp314-cp314-win_amd64.whl", hash = "sha256:f85c6f327bf0b8c29da7d93b1cabb6363fb5e4e160a32fa241ed2dce21b73162", size = 464029, upload-time = "2026-03-31T21:59:29.429Z" }, + { url = "https://files.pythonhosted.org/packages/79/11/c27d9332ee20d68dd164dc12a6ecdef2e2e35ecc97ed6cf0d2442844624b/aiohttp-3.13.5-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:1efb06900858bb618ff5cee184ae2de5828896c448403d51fb633f09e109be0a", size = 778758, upload-time = "2026-03-31T21:59:31.547Z" }, + { url = "https://files.pythonhosted.org/packages/04/fb/377aead2e0a3ba5f09b7624f702a964bdf4f08b5b6728a9799830c80041e/aiohttp-3.13.5-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:fee86b7c4bd29bdaf0d53d14739b08a106fdda809ca5fe032a15f52fae5fe254", size = 512883, upload-time = "2026-03-31T21:59:34.098Z" }, + { url = "https://files.pythonhosted.org/packages/bb/a6/aa109a33671f7a5d3bd78b46da9d852797c5e665bfda7d6b373f56bff2ec/aiohttp-3.13.5-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:20058e23909b9e65f9da62b396b77dfa95965cbe840f8def6e572538b1d32e36", size = 516668, upload-time = "2026-03-31T21:59:36.497Z" }, + { url = "https://files.pythonhosted.org/packages/79/b3/ca078f9f2fa9563c36fb8ef89053ea2bb146d6f792c5104574d49d8acb63/aiohttp-3.13.5-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8cf20a8d6868cb15a73cab329ffc07291ba8c22b1b88176026106ae39aa6df0f", size = 1883461, upload-time = "2026-03-31T21:59:38.723Z" }, + { url = "https://files.pythonhosted.org/packages/b7/e3/a7ad633ca1ca497b852233a3cce6906a56c3225fb6d9217b5e5e60b7419d/aiohttp-3.13.5-cp314-cp314t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:330f5da04c987f1d5bdb8ae189137c77139f36bd1cb23779ca1a354a4b027800", size = 1747661, upload-time = "2026-03-31T21:59:41.187Z" }, + { url = "https://files.pythonhosted.org/packages/33/b9/cd6fe579bed34a906d3d783fe60f2fa297ef55b27bb4538438ee49d4dc41/aiohttp-3.13.5-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:6f1cbf0c7926d315c3c26c2da41fd2b5d2fe01ac0e157b78caefc51a782196cf", size = 1863800, upload-time = "2026-03-31T21:59:43.84Z" }, + { url = "https://files.pythonhosted.org/packages/c0/3f/2c1e2f5144cefa889c8afd5cf431994c32f3b29da9961698ff4e3811b79a/aiohttp-3.13.5-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:53fc049ed6390d05423ba33103ded7281fe897cf97878f369a527070bd95795b", size = 1958382, upload-time = "2026-03-31T21:59:46.187Z" }, + { url = "https://files.pythonhosted.org/packages/66/1d/f31ec3f1013723b3babe3609e7f119c2c2fb6ef33da90061a705ef3e1bc8/aiohttp-3.13.5-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:898703aa2667e3c5ca4c54ca36cd73f58b7a38ef87a5606414799ebce4d3fd3a", size = 1803724, upload-time = "2026-03-31T21:59:48.656Z" }, + { url = "https://files.pythonhosted.org/packages/0e/b4/57712dfc6f1542f067daa81eb61da282fab3e6f1966fca25db06c4fc62d5/aiohttp-3.13.5-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:0494a01ca9584eea1e5fbd6d748e61ecff218c51b576ee1999c23db7066417d8", size = 1640027, upload-time = "2026-03-31T21:59:51.284Z" }, + { url = "https://files.pythonhosted.org/packages/25/3c/734c878fb43ec083d8e31bf029daae1beafeae582d1b35da234739e82ee7/aiohttp-3.13.5-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:6cf81fe010b8c17b09495cbd15c1d35afbc8fb405c0c9cf4738e5ae3af1d65be", size = 1806644, upload-time = "2026-03-31T21:59:53.753Z" }, + { url = "https://files.pythonhosted.org/packages/20/a5/f671e5cbec1c21d044ff3078223f949748f3a7f86b14e34a365d74a5d21f/aiohttp-3.13.5-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:c564dd5f09ddc9d8f2c2d0a301cd30a79a2cc1b46dd1a73bef8f0038863d016b", size = 1791630, upload-time = "2026-03-31T21:59:56.239Z" }, + { url = "https://files.pythonhosted.org/packages/0b/63/fb8d0ad63a0b8a99be97deac8c04dacf0785721c158bdf23d679a87aa99e/aiohttp-3.13.5-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:2994be9f6e51046c4f864598fd9abeb4fba6e88f0b2152422c9666dcd4aea9c6", size = 1809403, upload-time = "2026-03-31T21:59:59.103Z" }, + { url = "https://files.pythonhosted.org/packages/59/0c/bfed7f30662fcf12206481c2aac57dedee43fe1c49275e85b3a1e1742294/aiohttp-3.13.5-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:157826e2fa245d2ef46c83ea8a5faf77ca19355d278d425c29fda0beb3318037", size = 1634924, upload-time = "2026-03-31T22:00:02.116Z" }, + { url = "https://files.pythonhosted.org/packages/17/d6/fd518d668a09fd5a3319ae5e984d4d80b9a4b3df4e21c52f02251ef5a32e/aiohttp-3.13.5-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:a8aca50daa9493e9e13c0f566201a9006f080e7c50e5e90d0b06f53146a54500", size = 1836119, upload-time = "2026-03-31T22:00:04.756Z" }, + { url = "https://files.pythonhosted.org/packages/78/b7/15fb7a9d52e112a25b621c67b69c167805cb1f2ab8f1708a5c490d1b52fe/aiohttp-3.13.5-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:3b13560160d07e047a93f23aaa30718606493036253d5430887514715b67c9d9", size = 1772072, upload-time = "2026-03-31T22:00:07.494Z" }, + { url = "https://files.pythonhosted.org/packages/7e/df/57ba7f0c4a553fc2bd8b6321df236870ec6fd64a2a473a8a13d4f733214e/aiohttp-3.13.5-cp314-cp314t-win32.whl", hash = "sha256:9a0f4474b6ea6818b41f82172d799e4b3d29e22c2c520ce4357856fced9af2f8", size = 471819, upload-time = "2026-03-31T22:00:10.277Z" }, + { url = "https://files.pythonhosted.org/packages/62/29/2f8418269e46454a26171bfdd6a055d74febf32234e474930f2f60a17145/aiohttp-3.13.5-cp314-cp314t-win_amd64.whl", hash = "sha256:18a2f6c1182c51baa1d28d68fea51513cb2a76612f038853c0ad3c145423d3d9", size = 505441, upload-time = "2026-03-31T22:00:12.791Z" }, +] + +[[package]] +name = "aiosignal" +version = "1.4.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "frozenlist" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/61/62/06741b579156360248d1ec624842ad0edf697050bbaf7c3e46394e106ad1/aiosignal-1.4.0.tar.gz", hash = "sha256:f47eecd9468083c2029cc99945502cb7708b082c232f9aca65da147157b251c7", size = 25007, upload-time = "2025-07-03T22:54:43.528Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl", hash = "sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e", size = 7490, upload-time = "2025-07-03T22:54:42.156Z" }, +] + +[[package]] +name = "annotated-doc" +version = "0.0.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/57/ba/046ceea27344560984e26a590f90bc7f4a75b06701f653222458922b558c/annotated_doc-0.0.4.tar.gz", hash = "sha256:fbcda96e87e9c92ad167c2e53839e57503ecfda18804ea28102353485033faa4", size = 7288, upload-time = "2025-11-10T22:07:42.062Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1e/d3/26bf1008eb3d2daa8ef4cacc7f3bfdc11818d111f7e2d0201bc6e3b49d45/annotated_doc-0.0.4-py3-none-any.whl", hash = "sha256:571ac1dc6991c450b25a9c2d84a3705e2ae7a53467b5d111c24fa8baabbed320", size = 5303, upload-time = "2025-11-10T22:07:40.673Z" }, +] + +[[package]] +name = "annotated-types" +version = "0.7.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ee/67/531ea369ba64dcff5ec9c3402f9f51bf748cec26dde048a2f973a4eea7f5/annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89", size = 16081, upload-time = "2024-05-20T21:33:25.928Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53", size = 13643, upload-time = "2024-05-20T21:33:24.1Z" }, +] + +[[package]] +name = "antlr4-python3-runtime" +version = "4.9.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/3e/38/7859ff46355f76f8d19459005ca000b6e7012f2f1ca597746cbcd1fbfe5e/antlr4-python3-runtime-4.9.3.tar.gz", hash = "sha256:f224469b4168294902bb1efa80a8bf7855f24c99aef99cbefc1bcd3cce77881b", size = 117034, upload-time = "2021-11-06T17:52:23.524Z" } + +[[package]] +name = "anyio" +version = "4.13.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "idna" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/19/14/2c5dd9f512b66549ae92767a9c7b330ae88e1932ca57876909410251fe13/anyio-4.13.0.tar.gz", hash = "sha256:334b70e641fd2221c1505b3890c69882fe4a2df910cba14d97019b90b24439dc", size = 231622, upload-time = "2026-03-24T12:59:09.671Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/da/42/e921fccf5015463e32a3cf6ee7f980a6ed0f395ceeaa45060b61d86486c2/anyio-4.13.0-py3-none-any.whl", hash = "sha256:08b310f9e24a9594186fd75b4f73f4a4152069e3853f1ed8bfbf58369f4ad708", size = 114353, upload-time = "2026-03-24T12:59:08.246Z" }, +] + +[[package]] +name = "appnope" +version = "0.1.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/35/5d/752690df9ef5b76e169e68d6a129fa6d08a7100ca7f754c89495db3c6019/appnope-0.1.4.tar.gz", hash = "sha256:1de3860566df9caf38f01f86f65e0e13e379af54f9e4bee1e66b48f2efffd1ee", size = 4170, upload-time = "2024-02-06T09:43:11.258Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/81/29/5ecc3a15d5a33e31b26c11426c45c501e439cb865d0bff96315d86443b78/appnope-0.1.4-py2.py3-none-any.whl", hash = "sha256:502575ee11cd7a28c0205f379b525beefebab9d161b7c964670864014ed7213c", size = 4321, upload-time = "2024-02-06T09:43:09.663Z" }, +] + +[[package]] +name = "argon2-cffi" +version = "25.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "argon2-cffi-bindings" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0e/89/ce5af8a7d472a67cc819d5d998aa8c82c5d860608c4db9f46f1162d7dab9/argon2_cffi-25.1.0.tar.gz", hash = "sha256:694ae5cc8a42f4c4e2bf2ca0e64e51e23a040c6a517a85074683d3959e1346c1", size = 45706, upload-time = "2025-06-03T06:55:32.073Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/4f/d3/a8b22fa575b297cd6e3e3b0155c7e25db170edf1c74783d6a31a2490b8d9/argon2_cffi-25.1.0-py3-none-any.whl", hash = "sha256:fdc8b074db390fccb6eb4a3604ae7231f219aa669a2652e0f20e16ba513d5741", size = 14657, upload-time = "2025-06-03T06:55:30.804Z" }, +] + +[[package]] +name = "argon2-cffi-bindings" +version = "25.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cffi" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/5c/2d/db8af0df73c1cf454f71b2bbe5e356b8c1f8041c979f505b3d3186e520a9/argon2_cffi_bindings-25.1.0.tar.gz", hash = "sha256:b957f3e6ea4d55d820e40ff76f450952807013d361a65d7f28acc0acbf29229d", size = 1783441, upload-time = "2025-07-30T10:02:05.147Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/60/97/3c0a35f46e52108d4707c44b95cfe2afcafc50800b5450c197454569b776/argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:3d3f05610594151994ca9ccb3c771115bdb4daef161976a266f0dd8aa9996b8f", size = 54393, upload-time = "2025-07-30T10:01:40.97Z" }, + { url = "https://files.pythonhosted.org/packages/9d/f4/98bbd6ee89febd4f212696f13c03ca302b8552e7dbf9c8efa11ea4a388c3/argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:8b8efee945193e667a396cbc7b4fb7d357297d6234d30a489905d96caabde56b", size = 29328, upload-time = "2025-07-30T10:01:41.916Z" }, + { url = "https://files.pythonhosted.org/packages/43/24/90a01c0ef12ac91a6be05969f29944643bc1e5e461155ae6559befa8f00b/argon2_cffi_bindings-25.1.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:3c6702abc36bf3ccba3f802b799505def420a1b7039862014a65db3205967f5a", size = 31269, upload-time = "2025-07-30T10:01:42.716Z" }, + { url = "https://files.pythonhosted.org/packages/d4/d3/942aa10782b2697eee7af5e12eeff5ebb325ccfb86dd8abda54174e377e4/argon2_cffi_bindings-25.1.0-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a1c70058c6ab1e352304ac7e3b52554daadacd8d453c1752e547c76e9c99ac44", size = 86558, upload-time = "2025-07-30T10:01:43.943Z" }, + { url = "https://files.pythonhosted.org/packages/0d/82/b484f702fec5536e71836fc2dbc8c5267b3f6e78d2d539b4eaa6f0db8bf8/argon2_cffi_bindings-25.1.0-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e2fd3bfbff3c5d74fef31a722f729bf93500910db650c925c2d6ef879a7e51cb", size = 92364, upload-time = "2025-07-30T10:01:44.887Z" }, + { url = "https://files.pythonhosted.org/packages/c9/c1/a606ff83b3f1735f3759ad0f2cd9e038a0ad11a3de3b6c673aa41c24bb7b/argon2_cffi_bindings-25.1.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:c4f9665de60b1b0e99bcd6be4f17d90339698ce954cfd8d9cf4f91c995165a92", size = 85637, upload-time = "2025-07-30T10:01:46.225Z" }, + { url = "https://files.pythonhosted.org/packages/44/b4/678503f12aceb0262f84fa201f6027ed77d71c5019ae03b399b97caa2f19/argon2_cffi_bindings-25.1.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:ba92837e4a9aa6a508c8d2d7883ed5a8f6c308c89a4790e1e447a220deb79a85", size = 91934, upload-time = "2025-07-30T10:01:47.203Z" }, + { url = "https://files.pythonhosted.org/packages/f0/c7/f36bd08ef9bd9f0a9cff9428406651f5937ce27b6c5b07b92d41f91ae541/argon2_cffi_bindings-25.1.0-cp314-cp314t-win32.whl", hash = "sha256:84a461d4d84ae1295871329b346a97f68eade8c53b6ed9a7ca2d7467f3c8ff6f", size = 28158, upload-time = "2025-07-30T10:01:48.341Z" }, + { url = "https://files.pythonhosted.org/packages/b3/80/0106a7448abb24a2c467bf7d527fe5413b7fdfa4ad6d6a96a43a62ef3988/argon2_cffi_bindings-25.1.0-cp314-cp314t-win_amd64.whl", hash = "sha256:b55aec3565b65f56455eebc9b9f34130440404f27fe21c3b375bf1ea4d8fbae6", size = 32597, upload-time = "2025-07-30T10:01:49.112Z" }, + { url = "https://files.pythonhosted.org/packages/05/b8/d663c9caea07e9180b2cb662772865230715cbd573ba3b5e81793d580316/argon2_cffi_bindings-25.1.0-cp314-cp314t-win_arm64.whl", hash = "sha256:87c33a52407e4c41f3b70a9c2d3f6056d88b10dad7695be708c5021673f55623", size = 28231, upload-time = "2025-07-30T10:01:49.92Z" }, + { url = "https://files.pythonhosted.org/packages/1d/57/96b8b9f93166147826da5f90376e784a10582dd39a393c99bb62cfcf52f0/argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:aecba1723ae35330a008418a91ea6cfcedf6d31e5fbaa056a166462ff066d500", size = 54121, upload-time = "2025-07-30T10:01:50.815Z" }, + { url = "https://files.pythonhosted.org/packages/0a/08/a9bebdb2e0e602dde230bdde8021b29f71f7841bd54801bcfd514acb5dcf/argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_10_9_x86_64.whl", hash = "sha256:2630b6240b495dfab90aebe159ff784d08ea999aa4b0d17efa734055a07d2f44", size = 29177, upload-time = "2025-07-30T10:01:51.681Z" }, + { url = "https://files.pythonhosted.org/packages/b6/02/d297943bcacf05e4f2a94ab6f462831dc20158614e5d067c35d4e63b9acb/argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_11_0_arm64.whl", hash = "sha256:7aef0c91e2c0fbca6fc68e7555aa60ef7008a739cbe045541e438373bc54d2b0", size = 31090, upload-time = "2025-07-30T10:01:53.184Z" }, + { url = "https://files.pythonhosted.org/packages/c1/93/44365f3d75053e53893ec6d733e4a5e3147502663554b4d864587c7828a7/argon2_cffi_bindings-25.1.0-cp39-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1e021e87faa76ae0d413b619fe2b65ab9a037f24c60a1e6cc43457ae20de6dc6", size = 81246, upload-time = "2025-07-30T10:01:54.145Z" }, + { url = "https://files.pythonhosted.org/packages/09/52/94108adfdd6e2ddf58be64f959a0b9c7d4ef2fa71086c38356d22dc501ea/argon2_cffi_bindings-25.1.0-cp39-abi3-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d3e924cfc503018a714f94a49a149fdc0b644eaead5d1f089330399134fa028a", size = 87126, upload-time = "2025-07-30T10:01:55.074Z" }, + { url = "https://files.pythonhosted.org/packages/72/70/7a2993a12b0ffa2a9271259b79cc616e2389ed1a4d93842fac5a1f923ffd/argon2_cffi_bindings-25.1.0-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:c87b72589133f0346a1cb8d5ecca4b933e3c9b64656c9d175270a000e73b288d", size = 80343, upload-time = "2025-07-30T10:01:56.007Z" }, + { url = "https://files.pythonhosted.org/packages/78/9a/4e5157d893ffc712b74dbd868c7f62365618266982b64accab26bab01edc/argon2_cffi_bindings-25.1.0-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:1db89609c06afa1a214a69a462ea741cf735b29a57530478c06eb81dd403de99", size = 86777, upload-time = "2025-07-30T10:01:56.943Z" }, + { url = "https://files.pythonhosted.org/packages/74/cd/15777dfde1c29d96de7f18edf4cc94c385646852e7c7b0320aa91ccca583/argon2_cffi_bindings-25.1.0-cp39-abi3-win32.whl", hash = "sha256:473bcb5f82924b1becbb637b63303ec8d10e84c8d241119419897a26116515d2", size = 27180, upload-time = "2025-07-30T10:01:57.759Z" }, + { url = "https://files.pythonhosted.org/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl", hash = "sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98", size = 31715, upload-time = "2025-07-30T10:01:58.56Z" }, + { url = "https://files.pythonhosted.org/packages/42/b9/f8d6fa329ab25128b7e98fd83a3cb34d9db5b059a9847eddb840a0af45dd/argon2_cffi_bindings-25.1.0-cp39-abi3-win_arm64.whl", hash = "sha256:b0fdbcf513833809c882823f98dc2f931cf659d9a1429616ac3adebb49f5db94", size = 27149, upload-time = "2025-07-30T10:01:59.329Z" }, +] + +[[package]] +name = "arrow" +version = "1.4.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "python-dateutil" }, + { name = "tzdata" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b9/33/032cdc44182491aa708d06a68b62434140d8c50820a087fac7af37703357/arrow-1.4.0.tar.gz", hash = "sha256:ed0cc050e98001b8779e84d461b0098c4ac597e88704a655582b21d116e526d7", size = 152931, upload-time = "2025-10-18T17:46:46.761Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ed/c9/d7977eaacb9df673210491da99e6a247e93df98c715fc43fd136ce1d3d33/arrow-1.4.0-py3-none-any.whl", hash = "sha256:749f0769958ebdc79c173ff0b0670d59051a535fa26e8eba02953dc19eb43205", size = 68797, upload-time = "2025-10-18T17:46:45.663Z" }, +] + +[[package]] +name = "asttokens" +version = "3.0.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/be/a5/8e3f9b6771b0b408517c82d97aed8f2036509bc247d46114925e32fe33f0/asttokens-3.0.1.tar.gz", hash = "sha256:71a4ee5de0bde6a31d64f6b13f2293ac190344478f081c3d1bccfcf5eacb0cb7", size = 62308, upload-time = "2025-11-15T16:43:48.578Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d2/39/e7eaf1799466a4aef85b6a4fe7bd175ad2b1c6345066aa33f1f58d4b18d0/asttokens-3.0.1-py3-none-any.whl", hash = "sha256:15a3ebc0f43c2d0a50eeafea25e19046c68398e487b9f1f5b517f7c0f40f976a", size = 27047, upload-time = "2025-11-15T16:43:16.109Z" }, +] + +[[package]] +name = "async-lru" +version = "2.3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e8/1f/989ecfef8e64109a489fff357450cb73fa73a865a92bd8c272170a6922c2/async_lru-2.3.0.tar.gz", hash = "sha256:89bdb258a0140d7313cf8f4031d816a042202faa61d0ab310a0a538baa1c24b6", size = 16332, upload-time = "2026-03-19T01:04:32.413Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e5/e2/c2e3abf398f80732e58b03be77bde9022550d221dd8781bf586bd4d97cc1/async_lru-2.3.0-py3-none-any.whl", hash = "sha256:eea27b01841909316f2cc739807acea1c623df2be8c5cfad7583286397bb8315", size = 8403, upload-time = "2026-03-19T01:04:30.883Z" }, +] + +[[package]] +name = "attrs" +version = "26.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/9a/8e/82a0fe20a541c03148528be8cac2408564a6c9a0cc7e9171802bc1d26985/attrs-26.1.0.tar.gz", hash = "sha256:d03ceb89cb322a8fd706d4fb91940737b6642aa36998fe130a9bc96c985eff32", size = 952055, upload-time = "2026-03-19T14:22:25.026Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/64/b4/17d4b0b2a2dc85a6df63d1157e028ed19f90d4cd97c36717afef2bc2f395/attrs-26.1.0-py3-none-any.whl", hash = "sha256:c647aa4a12dfbad9333ca4e71fe62ddc36f4e63b2d260a37a8b83d2f043ac309", size = 67548, upload-time = "2026-03-19T14:22:23.645Z" }, +] + +[[package]] +name = "babel" +version = "2.18.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/7d/b2/51899539b6ceeeb420d40ed3cd4b7a40519404f9baf3d4ac99dc413a834b/babel-2.18.0.tar.gz", hash = "sha256:b80b99a14bd085fcacfa15c9165f651fbb3406e66cc603abf11c5750937c992d", size = 9959554, upload-time = "2026-02-01T12:30:56.078Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/77/f5/21d2de20e8b8b0408f0681956ca2c69f1320a3848ac50e6e7f39c6159675/babel-2.18.0-py3-none-any.whl", hash = "sha256:e2b422b277c2b9a9630c1d7903c2a00d0830c409c59ac8cae9081c92f1aeba35", size = 10196845, upload-time = "2026-02-01T12:30:53.445Z" }, +] + +[[package]] +name = "beautifulsoup4" +version = "4.14.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "soupsieve" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c3/b0/1c6a16426d389813b48d95e26898aff79abbde42ad353958ad95cc8c9b21/beautifulsoup4-4.14.3.tar.gz", hash = "sha256:6292b1c5186d356bba669ef9f7f051757099565ad9ada5dd630bd9de5fa7fb86", size = 627737, upload-time = "2025-11-30T15:08:26.084Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1a/39/47f9197bdd44df24d67ac8893641e16f386c984a0619ef2ee4c51fbbc019/beautifulsoup4-4.14.3-py3-none-any.whl", hash = "sha256:0918bfe44902e6ad8d57732ba310582e98da931428d231a5ecb9e7c703a735bb", size = 107721, upload-time = "2025-11-30T15:08:24.087Z" }, +] + +[[package]] +name = "bleach" +version = "6.3.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "webencodings" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/07/18/3c8523962314be6bf4c8989c79ad9531c825210dd13a8669f6b84336e8bd/bleach-6.3.0.tar.gz", hash = "sha256:6f3b91b1c0a02bb9a78b5a454c92506aa0fdf197e1d5e114d2e00c6f64306d22", size = 203533, upload-time = "2025-10-27T17:57:39.211Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cd/3a/577b549de0cc09d95f11087ee63c739bba856cd3952697eec4c4bb91350a/bleach-6.3.0-py3-none-any.whl", hash = "sha256:fe10ec77c93ddf3d13a73b035abaac7a9f5e436513864ccdad516693213c65d6", size = 164437, upload-time = "2025-10-27T17:57:37.538Z" }, +] + +[package.optional-dependencies] +css = [ + { name = "tinycss2" }, +] + +[[package]] +name = "certifi" +version = "2026.5.20" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f3/ce/ee2ecad540810a79593028e88299baeae54d346cc7a0d94b6199988b89b1/certifi-2026.5.20.tar.gz", hash = "sha256:69dea482ab64caa7b9f6aba1c6bf48bb6a5448d1c0f1b17ab42ad8c763a5344d", size = 135422, upload-time = "2026-05-20T11:46:50.073Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/59/8c/57e832b7af6d7c5abe66eb3fbe3a3a32f4d11ea23a1aa7131371035be991/certifi-2026.5.20-py3-none-any.whl", hash = "sha256:3c52e209ba0a4ad7aebe60436a4ab349c39e1e602e8c134221e546902ad25897", size = 134134, upload-time = "2026-05-20T11:46:48.578Z" }, +] + +[[package]] +name = "cffi" +version = "2.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pycparser", marker = "implementation_name != 'PyPy'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/eb/56/b1ba7935a17738ae8453301356628e8147c79dbb825bcbc73dc7401f9846/cffi-2.0.0.tar.gz", hash = "sha256:44d1b5909021139fe36001ae048dbdde8214afa20200eda0f64c068cac5d5529", size = 523588, upload-time = "2025-09-08T23:24:04.541Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/4b/8d/a0a47a0c9e413a658623d014e91e74a50cdd2c423f7ccfd44086ef767f90/cffi-2.0.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:00bdf7acc5f795150faa6957054fbbca2439db2f775ce831222b66f192f03beb", size = 185230, upload-time = "2025-09-08T23:23:00.879Z" }, + { url = "https://files.pythonhosted.org/packages/4a/d2/a6c0296814556c68ee32009d9c2ad4f85f2707cdecfd7727951ec228005d/cffi-2.0.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:45d5e886156860dc35862657e1494b9bae8dfa63bf56796f2fb56e1679fc0bca", size = 181043, upload-time = "2025-09-08T23:23:02.231Z" }, + { url = "https://files.pythonhosted.org/packages/b0/1e/d22cc63332bd59b06481ceaac49d6c507598642e2230f201649058a7e704/cffi-2.0.0-cp313-cp313-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:07b271772c100085dd28b74fa0cd81c8fb1a3ba18b21e03d7c27f3436a10606b", size = 212446, upload-time = "2025-09-08T23:23:03.472Z" }, + { url = "https://files.pythonhosted.org/packages/a9/f5/a2c23eb03b61a0b8747f211eb716446c826ad66818ddc7810cc2cc19b3f2/cffi-2.0.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d48a880098c96020b02d5a1f7d9251308510ce8858940e6fa99ece33f610838b", size = 220101, upload-time = "2025-09-08T23:23:04.792Z" }, + { url = "https://files.pythonhosted.org/packages/f2/7f/e6647792fc5850d634695bc0e6ab4111ae88e89981d35ac269956605feba/cffi-2.0.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:f93fd8e5c8c0a4aa1f424d6173f14a892044054871c771f8566e4008eaa359d2", size = 207948, upload-time = "2025-09-08T23:23:06.127Z" }, + { url = "https://files.pythonhosted.org/packages/cb/1e/a5a1bd6f1fb30f22573f76533de12a00bf274abcdc55c8edab639078abb6/cffi-2.0.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:dd4f05f54a52fb558f1ba9f528228066954fee3ebe629fc1660d874d040ae5a3", size = 206422, upload-time = "2025-09-08T23:23:07.753Z" }, + { url = "https://files.pythonhosted.org/packages/98/df/0a1755e750013a2081e863e7cd37e0cdd02664372c754e5560099eb7aa44/cffi-2.0.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:c8d3b5532fc71b7a77c09192b4a5a200ea992702734a2e9279a37f2478236f26", size = 219499, upload-time = "2025-09-08T23:23:09.648Z" }, + { url = "https://files.pythonhosted.org/packages/50/e1/a969e687fcf9ea58e6e2a928ad5e2dd88cc12f6f0ab477e9971f2309b57c/cffi-2.0.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:d9b29c1f0ae438d5ee9acb31cadee00a58c46cc9c0b2f9038c6b0b3470877a8c", size = 222928, upload-time = "2025-09-08T23:23:10.928Z" }, + { url = "https://files.pythonhosted.org/packages/36/54/0362578dd2c9e557a28ac77698ed67323ed5b9775ca9d3fe73fe191bb5d8/cffi-2.0.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6d50360be4546678fc1b79ffe7a66265e28667840010348dd69a314145807a1b", size = 221302, upload-time = "2025-09-08T23:23:12.42Z" }, + { url = "https://files.pythonhosted.org/packages/eb/6d/bf9bda840d5f1dfdbf0feca87fbdb64a918a69bca42cfa0ba7b137c48cb8/cffi-2.0.0-cp313-cp313-win32.whl", hash = "sha256:74a03b9698e198d47562765773b4a8309919089150a0bb17d829ad7b44b60d27", size = 172909, upload-time = "2025-09-08T23:23:14.32Z" }, + { url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75", size = 183402, upload-time = "2025-09-08T23:23:15.535Z" }, + { url = "https://files.pythonhosted.org/packages/cb/0e/02ceeec9a7d6ee63bb596121c2c8e9b3a9e150936f4fbef6ca1943e6137c/cffi-2.0.0-cp313-cp313-win_arm64.whl", hash = "sha256:256f80b80ca3853f90c21b23ee78cd008713787b1b1e93eae9f3d6a7134abd91", size = 177780, upload-time = "2025-09-08T23:23:16.761Z" }, + { url = "https://files.pythonhosted.org/packages/92/c4/3ce07396253a83250ee98564f8d7e9789fab8e58858f35d07a9a2c78de9f/cffi-2.0.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:fc33c5141b55ed366cfaad382df24fe7dcbc686de5be719b207bb248e3053dc5", size = 185320, upload-time = "2025-09-08T23:23:18.087Z" }, + { url = "https://files.pythonhosted.org/packages/59/dd/27e9fa567a23931c838c6b02d0764611c62290062a6d4e8ff7863daf9730/cffi-2.0.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c654de545946e0db659b3400168c9ad31b5d29593291482c43e3564effbcee13", size = 181487, upload-time = "2025-09-08T23:23:19.622Z" }, + { url = "https://files.pythonhosted.org/packages/d6/43/0e822876f87ea8a4ef95442c3d766a06a51fc5298823f884ef87aaad168c/cffi-2.0.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:24b6f81f1983e6df8db3adc38562c83f7d4a0c36162885ec7f7b77c7dcbec97b", size = 220049, upload-time = "2025-09-08T23:23:20.853Z" }, + { url = "https://files.pythonhosted.org/packages/b4/89/76799151d9c2d2d1ead63c2429da9ea9d7aac304603de0c6e8764e6e8e70/cffi-2.0.0-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:12873ca6cb9b0f0d3a0da705d6086fe911591737a59f28b7936bdfed27c0d47c", size = 207793, upload-time = "2025-09-08T23:23:22.08Z" }, + { url = "https://files.pythonhosted.org/packages/bb/dd/3465b14bb9e24ee24cb88c9e3730f6de63111fffe513492bf8c808a3547e/cffi-2.0.0-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:d9b97165e8aed9272a6bb17c01e3cc5871a594a446ebedc996e2397a1c1ea8ef", size = 206300, upload-time = "2025-09-08T23:23:23.314Z" }, + { url = "https://files.pythonhosted.org/packages/47/d9/d83e293854571c877a92da46fdec39158f8d7e68da75bf73581225d28e90/cffi-2.0.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:afb8db5439b81cf9c9d0c80404b60c3cc9c3add93e114dcae767f1477cb53775", size = 219244, upload-time = "2025-09-08T23:23:24.541Z" }, + { url = "https://files.pythonhosted.org/packages/2b/0f/1f177e3683aead2bb00f7679a16451d302c436b5cbf2505f0ea8146ef59e/cffi-2.0.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:737fe7d37e1a1bffe70bd5754ea763a62a066dc5913ca57e957824b72a85e205", size = 222828, upload-time = "2025-09-08T23:23:26.143Z" }, + { url = "https://files.pythonhosted.org/packages/c6/0f/cafacebd4b040e3119dcb32fed8bdef8dfe94da653155f9d0b9dc660166e/cffi-2.0.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:38100abb9d1b1435bc4cc340bb4489635dc2f0da7456590877030c9b3d40b0c1", size = 220926, upload-time = "2025-09-08T23:23:27.873Z" }, + { url = "https://files.pythonhosted.org/packages/3e/aa/df335faa45b395396fcbc03de2dfcab242cd61a9900e914fe682a59170b1/cffi-2.0.0-cp314-cp314-win32.whl", hash = "sha256:087067fa8953339c723661eda6b54bc98c5625757ea62e95eb4898ad5e776e9f", size = 175328, upload-time = "2025-09-08T23:23:44.61Z" }, + { url = "https://files.pythonhosted.org/packages/bb/92/882c2d30831744296ce713f0feb4c1cd30f346ef747b530b5318715cc367/cffi-2.0.0-cp314-cp314-win_amd64.whl", hash = "sha256:203a48d1fb583fc7d78a4c6655692963b860a417c0528492a6bc21f1aaefab25", size = 185650, upload-time = "2025-09-08T23:23:45.848Z" }, + { url = "https://files.pythonhosted.org/packages/9f/2c/98ece204b9d35a7366b5b2c6539c350313ca13932143e79dc133ba757104/cffi-2.0.0-cp314-cp314-win_arm64.whl", hash = "sha256:dbd5c7a25a7cb98f5ca55d258b103a2054f859a46ae11aaf23134f9cc0d356ad", size = 180687, upload-time = "2025-09-08T23:23:47.105Z" }, + { url = "https://files.pythonhosted.org/packages/3e/61/c768e4d548bfa607abcda77423448df8c471f25dbe64fb2ef6d555eae006/cffi-2.0.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:9a67fc9e8eb39039280526379fb3a70023d77caec1852002b4da7e8b270c4dd9", size = 188773, upload-time = "2025-09-08T23:23:29.347Z" }, + { url = "https://files.pythonhosted.org/packages/2c/ea/5f76bce7cf6fcd0ab1a1058b5af899bfbef198bea4d5686da88471ea0336/cffi-2.0.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:7a66c7204d8869299919db4d5069a82f1561581af12b11b3c9f48c584eb8743d", size = 185013, upload-time = "2025-09-08T23:23:30.63Z" }, + { url = "https://files.pythonhosted.org/packages/be/b4/c56878d0d1755cf9caa54ba71e5d049479c52f9e4afc230f06822162ab2f/cffi-2.0.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:7cc09976e8b56f8cebd752f7113ad07752461f48a58cbba644139015ac24954c", size = 221593, upload-time = "2025-09-08T23:23:31.91Z" }, + { url = "https://files.pythonhosted.org/packages/e0/0d/eb704606dfe8033e7128df5e90fee946bbcb64a04fcdaa97321309004000/cffi-2.0.0-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:92b68146a71df78564e4ef48af17551a5ddd142e5190cdf2c5624d0c3ff5b2e8", size = 209354, upload-time = "2025-09-08T23:23:33.214Z" }, + { url = "https://files.pythonhosted.org/packages/d8/19/3c435d727b368ca475fb8742ab97c9cb13a0de600ce86f62eab7fa3eea60/cffi-2.0.0-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:b1e74d11748e7e98e2f426ab176d4ed720a64412b6a15054378afdb71e0f37dc", size = 208480, upload-time = "2025-09-08T23:23:34.495Z" }, + { url = "https://files.pythonhosted.org/packages/d0/44/681604464ed9541673e486521497406fadcc15b5217c3e326b061696899a/cffi-2.0.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:28a3a209b96630bca57cce802da70c266eb08c6e97e5afd61a75611ee6c64592", size = 221584, upload-time = "2025-09-08T23:23:36.096Z" }, + { url = "https://files.pythonhosted.org/packages/25/8e/342a504ff018a2825d395d44d63a767dd8ebc927ebda557fecdaca3ac33a/cffi-2.0.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:7553fb2090d71822f02c629afe6042c299edf91ba1bf94951165613553984512", size = 224443, upload-time = "2025-09-08T23:23:37.328Z" }, + { url = "https://files.pythonhosted.org/packages/e1/5e/b666bacbbc60fbf415ba9988324a132c9a7a0448a9a8f125074671c0f2c3/cffi-2.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:6c6c373cfc5c83a975506110d17457138c8c63016b563cc9ed6e056a82f13ce4", size = 223437, upload-time = "2025-09-08T23:23:38.945Z" }, + { url = "https://files.pythonhosted.org/packages/a0/1d/ec1a60bd1a10daa292d3cd6bb0b359a81607154fb8165f3ec95fe003b85c/cffi-2.0.0-cp314-cp314t-win32.whl", hash = "sha256:1fc9ea04857caf665289b7a75923f2c6ed559b8298a1b8c49e59f7dd95c8481e", size = 180487, upload-time = "2025-09-08T23:23:40.423Z" }, + { url = "https://files.pythonhosted.org/packages/bf/41/4c1168c74fac325c0c8156f04b6749c8b6a8f405bbf91413ba088359f60d/cffi-2.0.0-cp314-cp314t-win_amd64.whl", hash = "sha256:d68b6cef7827e8641e8ef16f4494edda8b36104d79773a334beaa1e3521430f6", size = 191726, upload-time = "2025-09-08T23:23:41.742Z" }, + { url = "https://files.pythonhosted.org/packages/ae/3a/dbeec9d1ee0844c679f6bb5d6ad4e9f198b1224f4e7a32825f47f6192b0c/cffi-2.0.0-cp314-cp314t-win_arm64.whl", hash = "sha256:0a1527a803f0a659de1af2e1fd700213caba79377e27e4693648c2923da066f9", size = 184195, upload-time = "2025-09-08T23:23:43.004Z" }, +] + +[[package]] +name = "charset-normalizer" +version = "3.4.7" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e7/a1/67fe25fac3c7642725500a3f6cfe5821ad557c3abb11c9d20d12c7008d3e/charset_normalizer-3.4.7.tar.gz", hash = "sha256:ae89db9e5f98a11a4bf50407d4363e7b09b31e55bc117b4f7d80aab97ba009e5", size = 144271, upload-time = "2026-04-02T09:28:39.342Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c1/3b/66777e39d3ae1ddc77ee606be4ec6d8cbd4c801f65e5a1b6f2b11b8346dd/charset_normalizer-3.4.7-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:f496c9c3cc02230093d8330875c4c3cdfc3b73612a5fd921c65d39cbcef08063", size = 309627, upload-time = "2026-04-02T09:26:45.198Z" }, + { url = "https://files.pythonhosted.org/packages/2e/4e/b7f84e617b4854ade48a1b7915c8ccfadeba444d2a18c291f696e37f0d3b/charset_normalizer-3.4.7-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0ea948db76d31190bf08bd371623927ee1339d5f2a0b4b1b4a4439a65298703c", size = 207008, upload-time = "2026-04-02T09:26:46.824Z" }, + { url = "https://files.pythonhosted.org/packages/c4/bb/ec73c0257c9e11b268f018f068f5d00aa0ef8c8b09f7753ebd5f2880e248/charset_normalizer-3.4.7-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:a277ab8928b9f299723bc1a2dabb1265911b1a76341f90a510368ca44ad9ab66", size = 228303, upload-time = "2026-04-02T09:26:48.397Z" }, + { url = "https://files.pythonhosted.org/packages/85/fb/32d1f5033484494619f701e719429c69b766bfc4dbc61aa9e9c8c166528b/charset_normalizer-3.4.7-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:3bec022aec2c514d9cf199522a802bd007cd588ab17ab2525f20f9c34d067c18", size = 224282, upload-time = "2026-04-02T09:26:49.684Z" }, + { url = "https://files.pythonhosted.org/packages/fa/07/330e3a0dda4c404d6da83b327270906e9654a24f6c546dc886a0eb0ffb23/charset_normalizer-3.4.7-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e044c39e41b92c845bc815e5ae4230804e8e7bc29e399b0437d64222d92809dd", size = 215595, upload-time = "2026-04-02T09:26:50.915Z" }, + { url = "https://files.pythonhosted.org/packages/e3/7c/fc890655786e423f02556e0216d4b8c6bcb6bdfa890160dc66bf52dee468/charset_normalizer-3.4.7-cp313-cp313-manylinux_2_31_armv7l.whl", hash = "sha256:f495a1652cf3fbab2eb0639776dad966c2fb874d79d87ca07f9d5f059b8bd215", size = 201986, upload-time = "2026-04-02T09:26:52.197Z" }, + { url = "https://files.pythonhosted.org/packages/d8/97/bfb18b3db2aed3b90cf54dc292ad79fdd5ad65c4eae454099475cbeadd0d/charset_normalizer-3.4.7-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:e712b419df8ba5e42b226c510472b37bd57b38e897d3eca5e8cfd410a29fa859", size = 211711, upload-time = "2026-04-02T09:26:53.49Z" }, + { url = "https://files.pythonhosted.org/packages/6f/a5/a581c13798546a7fd557c82614a5c65a13df2157e9ad6373166d2a3e645d/charset_normalizer-3.4.7-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:7804338df6fcc08105c7745f1502ba68d900f45fd770d5bdd5288ddccb8a42d8", size = 210036, upload-time = "2026-04-02T09:26:54.975Z" }, + { url = "https://files.pythonhosted.org/packages/8c/bf/b3ab5bcb478e4193d517644b0fb2bf5497fbceeaa7a1bc0f4d5b50953861/charset_normalizer-3.4.7-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:481551899c856c704d58119b5025793fa6730adda3571971af568f66d2424bb5", size = 202998, upload-time = "2026-04-02T09:26:56.303Z" }, + { url = "https://files.pythonhosted.org/packages/e7/4e/23efd79b65d314fa320ec6017b4b5834d5c12a58ba4610aa353af2e2f577/charset_normalizer-3.4.7-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:f59099f9b66f0d7145115e6f80dd8b1d847176df89b234a5a6b3f00437aa0832", size = 230056, upload-time = "2026-04-02T09:26:57.554Z" }, + { url = "https://files.pythonhosted.org/packages/b9/9f/1e1941bc3f0e01df116e68dc37a55c4d249df5e6fa77f008841aef68264f/charset_normalizer-3.4.7-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:f59ad4c0e8f6bba240a9bb85504faa1ab438237199d4cce5f622761507b8f6a6", size = 211537, upload-time = "2026-04-02T09:26:58.843Z" }, + { url = "https://files.pythonhosted.org/packages/80/0f/088cbb3020d44428964a6c97fe1edfb1b9550396bf6d278330281e8b709c/charset_normalizer-3.4.7-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:3dedcc22d73ec993f42055eff4fcfed9318d1eeb9a6606c55892a26964964e48", size = 226176, upload-time = "2026-04-02T09:27:00.437Z" }, + { url = "https://files.pythonhosted.org/packages/6a/9f/130394f9bbe06f4f63e22641d32fc9b202b7e251c9aef4db044324dac493/charset_normalizer-3.4.7-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:64f02c6841d7d83f832cd97ccf8eb8a906d06eb95d5276069175c696b024b60a", size = 217723, upload-time = "2026-04-02T09:27:02.021Z" }, + { url = "https://files.pythonhosted.org/packages/73/55/c469897448a06e49f8fa03f6caae97074fde823f432a98f979cc42b90e69/charset_normalizer-3.4.7-cp313-cp313-win32.whl", hash = "sha256:4042d5c8f957e15221d423ba781e85d553722fc4113f523f2feb7b188cc34c5e", size = 148085, upload-time = "2026-04-02T09:27:03.192Z" }, + { url = "https://files.pythonhosted.org/packages/5d/78/1b74c5bbb3f99b77a1715c91b3e0b5bdb6fe302d95ace4f5b1bec37b0167/charset_normalizer-3.4.7-cp313-cp313-win_amd64.whl", hash = "sha256:3946fa46a0cf3e4c8cb1cc52f56bb536310d34f25f01ca9b6c16afa767dab110", size = 158819, upload-time = "2026-04-02T09:27:04.454Z" }, + { url = "https://files.pythonhosted.org/packages/68/86/46bd42279d323deb8687c4a5a811fd548cb7d1de10cf6535d099877a9a9f/charset_normalizer-3.4.7-cp313-cp313-win_arm64.whl", hash = "sha256:80d04837f55fc81da168b98de4f4b797ef007fc8a79ab71c6ec9bc4dd662b15b", size = 147915, upload-time = "2026-04-02T09:27:05.971Z" }, + { url = "https://files.pythonhosted.org/packages/97/c8/c67cb8c70e19ef1960b97b22ed2a1567711de46c4ddf19799923adc836c2/charset_normalizer-3.4.7-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:c36c333c39be2dbca264d7803333c896ab8fa7d4d6f0ab7edb7dfd7aea6e98c0", size = 309234, upload-time = "2026-04-02T09:27:07.194Z" }, + { url = "https://files.pythonhosted.org/packages/99/85/c091fdee33f20de70d6c8b522743b6f831a2f1cd3ff86de4c6a827c48a76/charset_normalizer-3.4.7-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1c2aed2e5e41f24ea8ef1590b8e848a79b56f3a5564a65ceec43c9d692dc7d8a", size = 208042, upload-time = "2026-04-02T09:27:08.749Z" }, + { url = "https://files.pythonhosted.org/packages/87/1c/ab2ce611b984d2fd5d86a5a8a19c1ae26acac6bad967da4967562c75114d/charset_normalizer-3.4.7-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:54523e136b8948060c0fa0bc7b1b50c32c186f2fceee897a495406bb6e311d2b", size = 228706, upload-time = "2026-04-02T09:27:09.951Z" }, + { url = "https://files.pythonhosted.org/packages/a8/29/2b1d2cb00bf085f59d29eb773ce58ec2d325430f8c216804a0a5cd83cbca/charset_normalizer-3.4.7-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:715479b9a2802ecac752a3b0efa2b0b60285cf962ee38414211abdfccc233b41", size = 224727, upload-time = "2026-04-02T09:27:11.175Z" }, + { url = "https://files.pythonhosted.org/packages/47/5c/032c2d5a07fe4d4855fea851209cca2b6f03ebeb6d4e3afdb3358386a684/charset_normalizer-3.4.7-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bd6c2a1c7573c64738d716488d2cdd3c00e340e4835707d8fdb8dc1a66ef164e", size = 215882, upload-time = "2026-04-02T09:27:12.446Z" }, + { url = "https://files.pythonhosted.org/packages/2c/c2/356065d5a8b78ed04499cae5f339f091946a6a74f91e03476c33f0ab7100/charset_normalizer-3.4.7-cp314-cp314-manylinux_2_31_armv7l.whl", hash = "sha256:c45e9440fb78f8ddabcf714b68f936737a121355bf59f3907f4e17721b9d1aae", size = 200860, upload-time = "2026-04-02T09:27:13.721Z" }, + { url = "https://files.pythonhosted.org/packages/0c/cd/a32a84217ced5039f53b29f460962abb2d4420def55afabe45b1c3c7483d/charset_normalizer-3.4.7-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:3534e7dcbdcf757da6b85a0bbf5b6868786d5982dd959b065e65481644817a18", size = 211564, upload-time = "2026-04-02T09:27:15.272Z" }, + { url = "https://files.pythonhosted.org/packages/44/86/58e6f13ce26cc3b8f4a36b94a0f22ae2f00a72534520f4ae6857c4b81f89/charset_normalizer-3.4.7-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:e8ac484bf18ce6975760921bb6148041faa8fef0547200386ea0b52b5d27bf7b", size = 211276, upload-time = "2026-04-02T09:27:16.834Z" }, + { url = "https://files.pythonhosted.org/packages/8f/fe/d17c32dc72e17e155e06883efa84514ca375f8a528ba2546bee73fc4df81/charset_normalizer-3.4.7-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:a5fe03b42827c13cdccd08e6c0247b6a6d4b5e3cdc53fd1749f5896adcdc2356", size = 201238, upload-time = "2026-04-02T09:27:18.229Z" }, + { url = "https://files.pythonhosted.org/packages/6a/29/f33daa50b06525a237451cdb6c69da366c381a3dadcd833fa5676bc468b3/charset_normalizer-3.4.7-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:2d6eb928e13016cea4f1f21d1e10c1cebd5a421bc57ddf5b1142ae3f86824fab", size = 230189, upload-time = "2026-04-02T09:27:19.445Z" }, + { url = "https://files.pythonhosted.org/packages/b6/6e/52c84015394a6a0bdcd435210a7e944c5f94ea1055f5cc5d56c5fe368e7b/charset_normalizer-3.4.7-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:e74327fb75de8986940def6e8dee4f127cc9752bee7355bb323cc5b2659b6d46", size = 211352, upload-time = "2026-04-02T09:27:20.79Z" }, + { url = "https://files.pythonhosted.org/packages/8c/d7/4353be581b373033fb9198bf1da3cf8f09c1082561e8e922aa7b39bf9fe8/charset_normalizer-3.4.7-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:d6038d37043bced98a66e68d3aa2b6a35505dc01328cd65217cefe82f25def44", size = 227024, upload-time = "2026-04-02T09:27:22.063Z" }, + { url = "https://files.pythonhosted.org/packages/30/45/99d18aa925bd1740098ccd3060e238e21115fffbfdcb8f3ece837d0ace6c/charset_normalizer-3.4.7-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:7579e913a5339fb8fa133f6bbcfd8e6749696206cf05acdbdca71a1b436d8e72", size = 217869, upload-time = "2026-04-02T09:27:23.486Z" }, + { url = "https://files.pythonhosted.org/packages/5c/05/5ee478aa53f4bb7996482153d4bfe1b89e0f087f0ab6b294fcf92d595873/charset_normalizer-3.4.7-cp314-cp314-win32.whl", hash = "sha256:5b77459df20e08151cd6f8b9ef8ef1f961ef73d85c21a555c7eed5b79410ec10", size = 148541, upload-time = "2026-04-02T09:27:25.146Z" }, + { url = "https://files.pythonhosted.org/packages/48/77/72dcb0921b2ce86420b2d79d454c7022bf5be40202a2a07906b9f2a35c97/charset_normalizer-3.4.7-cp314-cp314-win_amd64.whl", hash = "sha256:92a0a01ead5e668468e952e4238cccd7c537364eb7d851ab144ab6627dbbe12f", size = 159634, upload-time = "2026-04-02T09:27:26.642Z" }, + { url = "https://files.pythonhosted.org/packages/c6/a3/c2369911cd72f02386e4e340770f6e158c7980267da16af8f668217abaa0/charset_normalizer-3.4.7-cp314-cp314-win_arm64.whl", hash = "sha256:67f6279d125ca0046a7fd386d01b311c6363844deac3e5b069b514ba3e63c246", size = 148384, upload-time = "2026-04-02T09:27:28.271Z" }, + { url = "https://files.pythonhosted.org/packages/94/09/7e8a7f73d24dba1f0035fbbf014d2c36828fc1bf9c88f84093e57d315935/charset_normalizer-3.4.7-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:effc3f449787117233702311a1b7d8f59cba9ced946ba727bdc329ec69028e24", size = 330133, upload-time = "2026-04-02T09:27:29.474Z" }, + { url = "https://files.pythonhosted.org/packages/8d/da/96975ddb11f8e977f706f45cddd8540fd8242f71ecdb5d18a80723dcf62c/charset_normalizer-3.4.7-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:fbccdc05410c9ee21bbf16a35f4c1d16123dcdeb8a1d38f33654fa21d0234f79", size = 216257, upload-time = "2026-04-02T09:27:30.793Z" }, + { url = "https://files.pythonhosted.org/packages/e5/e8/1d63bf8ef2d388e95c64b2098f45f84758f6d102a087552da1485912637b/charset_normalizer-3.4.7-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:733784b6d6def852c814bce5f318d25da2ee65dd4839a0718641c696e09a2960", size = 234851, upload-time = "2026-04-02T09:27:32.44Z" }, + { url = "https://files.pythonhosted.org/packages/9b/40/e5ff04233e70da2681fa43969ad6f66ca5611d7e669be0246c4c7aaf6dc8/charset_normalizer-3.4.7-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a89c23ef8d2c6b27fd200a42aa4ac72786e7c60d40efdc76e6011260b6e949c4", size = 233393, upload-time = "2026-04-02T09:27:34.03Z" }, + { url = "https://files.pythonhosted.org/packages/be/c1/06c6c49d5a5450f76899992f1ee40b41d076aee9279b49cf9974d2f313d5/charset_normalizer-3.4.7-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6c114670c45346afedc0d947faf3c7f701051d2518b943679c8ff88befe14f8e", size = 223251, upload-time = "2026-04-02T09:27:35.369Z" }, + { url = "https://files.pythonhosted.org/packages/2b/9f/f2ff16fb050946169e3e1f82134d107e5d4ae72647ec8a1b1446c148480f/charset_normalizer-3.4.7-cp314-cp314t-manylinux_2_31_armv7l.whl", hash = "sha256:a180c5e59792af262bf263b21a3c49353f25945d8d9f70628e73de370d55e1e1", size = 206609, upload-time = "2026-04-02T09:27:36.661Z" }, + { url = "https://files.pythonhosted.org/packages/69/d5/a527c0cd8d64d2eab7459784fb4169a0ac76e5a6fc5237337982fd61347e/charset_normalizer-3.4.7-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:3c9a494bc5ec77d43cea229c4f6db1e4d8fe7e1bbffa8b6f0f0032430ff8ab44", size = 220014, upload-time = "2026-04-02T09:27:38.019Z" }, + { url = "https://files.pythonhosted.org/packages/7e/80/8a7b8104a3e203074dc9aa2c613d4b726c0e136bad1cc734594b02867972/charset_normalizer-3.4.7-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:8d828b6667a32a728a1ad1d93957cdf37489c57b97ae6c4de2860fa749b8fc1e", size = 218979, upload-time = "2026-04-02T09:27:39.37Z" }, + { url = "https://files.pythonhosted.org/packages/02/9a/b759b503d507f375b2b5c153e4d2ee0a75aa215b7f2489cf314f4541f2c0/charset_normalizer-3.4.7-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:cf1493cd8607bec4d8a7b9b004e699fcf8f9103a9284cc94962cb73d20f9d4a3", size = 209238, upload-time = "2026-04-02T09:27:40.722Z" }, + { url = "https://files.pythonhosted.org/packages/c2/4e/0f3f5d47b86bdb79256e7290b26ac847a2832d9a4033f7eb2cd4bcf4bb5b/charset_normalizer-3.4.7-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:0c96c3b819b5c3e9e165495db84d41914d6894d55181d2d108cc1a69bfc9cce0", size = 236110, upload-time = "2026-04-02T09:27:42.33Z" }, + { url = "https://files.pythonhosted.org/packages/96/23/bce28734eb3ed2c91dcf93abeb8a5cf393a7b2749725030bb630e554fdd8/charset_normalizer-3.4.7-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:752a45dc4a6934060b3b0dab47e04edc3326575f82be64bc4fc293914566503e", size = 219824, upload-time = "2026-04-02T09:27:43.924Z" }, + { url = "https://files.pythonhosted.org/packages/2c/6f/6e897c6984cc4d41af319b077f2f600fc8214eb2fe2d6bcb79141b882400/charset_normalizer-3.4.7-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:8778f0c7a52e56f75d12dae53ae320fae900a8b9b4164b981b9c5ce059cd1fcb", size = 233103, upload-time = "2026-04-02T09:27:45.348Z" }, + { url = "https://files.pythonhosted.org/packages/76/22/ef7bd0fe480a0ae9b656189ec00744b60933f68b4f42a7bb06589f6f576a/charset_normalizer-3.4.7-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:ce3412fbe1e31eb81ea42f4169ed94861c56e643189e1e75f0041f3fe7020abe", size = 225194, upload-time = "2026-04-02T09:27:46.706Z" }, + { url = "https://files.pythonhosted.org/packages/c5/a7/0e0ab3e0b5bc1219bd80a6a0d4d72ca74d9250cb2382b7c699c147e06017/charset_normalizer-3.4.7-cp314-cp314t-win32.whl", hash = "sha256:c03a41a8784091e67a39648f70c5f97b5b6a37f216896d44d2cdcb82615339a0", size = 159827, upload-time = "2026-04-02T09:27:48.053Z" }, + { url = "https://files.pythonhosted.org/packages/7a/1d/29d32e0fb40864b1f878c7f5a0b343ae676c6e2b271a2d55cc3a152391da/charset_normalizer-3.4.7-cp314-cp314t-win_amd64.whl", hash = "sha256:03853ed82eeebbce3c2abfdbc98c96dc205f32a79627688ac9a27370ea61a49c", size = 174168, upload-time = "2026-04-02T09:27:49.795Z" }, + { url = "https://files.pythonhosted.org/packages/de/32/d92444ad05c7a6e41fb2036749777c163baf7a0301a040cb672d6b2b1ae9/charset_normalizer-3.4.7-cp314-cp314t-win_arm64.whl", hash = "sha256:c35abb8bfff0185efac5878da64c45dafd2b37fb0383add1be155a763c1f083d", size = 153018, upload-time = "2026-04-02T09:27:51.116Z" }, + { url = "https://files.pythonhosted.org/packages/db/8f/61959034484a4a7c527811f4721e75d02d653a35afb0b6054474d8185d4c/charset_normalizer-3.4.7-py3-none-any.whl", hash = "sha256:3dce51d0f5e7951f8bb4900c257dad282f49190fdbebecd4ba99bcc41fef404d", size = 61958, upload-time = "2026-04-02T09:28:37.794Z" }, +] + +[[package]] +name = "click" +version = "8.4.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "colorama", marker = "sys_platform == 'win32'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/9b/98/518d8e5081007684232226f475082b30087d0f585e8457db087298259f49/click-8.4.1.tar.gz", hash = "sha256:918b5633eddf6b41c32d4f454bf0de810065c74e3f7dbf8ee5452f8be88d3e96", size = 353007, upload-time = "2026-05-22T04:08:37.769Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c7/0d/67e5b4109ea4a837e80daa87c2c696711955e40449a97e8926672534def2/click-8.4.1-py3-none-any.whl", hash = "sha256:482be17c6991b8c19c5429a1e995d9b0efdbb63172824c41f99965dc0ade8ec2", size = 116639, upload-time = "2026-05-22T04:08:35.26Z" }, +] + +[[package]] +name = "colorama" +version = "0.4.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", size = 27697, upload-time = "2022-10-25T02:36:22.414Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" }, +] + +[[package]] +name = "comm" +version = "0.2.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/4c/13/7d740c5849255756bc17888787313b61fd38a0a8304fc4f073dfc46122aa/comm-0.2.3.tar.gz", hash = "sha256:2dc8048c10962d55d7ad693be1e7045d891b7ce8d999c97963a5e3e99c055971", size = 6319, upload-time = "2025-07-25T14:02:04.452Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/60/97/891a0971e1e4a8c5d2b20bbe0e524dc04548d2307fee33cdeba148fd4fc7/comm-0.2.3-py3-none-any.whl", hash = "sha256:c615d91d75f7f04f095b30d1c1711babd43bdc6419c1be9886a85f2f4e489417", size = 7294, upload-time = "2025-07-25T14:02:02.896Z" }, +] + +[[package]] +name = "contourpy" +version = "1.3.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/58/01/1253e6698a07380cd31a736d248a3f2a50a7c88779a1813da27503cadc2a/contourpy-1.3.3.tar.gz", hash = "sha256:083e12155b210502d0bca491432bb04d56dc3432f95a979b429f2848c3dbe880", size = 13466174, upload-time = "2025-07-26T12:03:12.549Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/68/35/0167aad910bbdb9599272bd96d01a9ec6852f36b9455cf2ca67bd4cc2d23/contourpy-1.3.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:177fb367556747a686509d6fef71d221a4b198a3905fe824430e5ea0fda54eb5", size = 293257, upload-time = "2025-07-26T12:01:39.367Z" }, + { url = "https://files.pythonhosted.org/packages/96/e4/7adcd9c8362745b2210728f209bfbcf7d91ba868a2c5f40d8b58f54c509b/contourpy-1.3.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:d002b6f00d73d69333dac9d0b8d5e84d9724ff9ef044fd63c5986e62b7c9e1b1", size = 274034, upload-time = "2025-07-26T12:01:40.645Z" }, + { url = "https://files.pythonhosted.org/packages/73/23/90e31ceeed1de63058a02cb04b12f2de4b40e3bef5e082a7c18d9c8ae281/contourpy-1.3.3-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:348ac1f5d4f1d66d3322420f01d42e43122f43616e0f194fc1c9f5d830c5b286", size = 334672, upload-time = "2025-07-26T12:01:41.942Z" }, + { url = "https://files.pythonhosted.org/packages/ed/93/b43d8acbe67392e659e1d984700e79eb67e2acb2bd7f62012b583a7f1b55/contourpy-1.3.3-cp313-cp313-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:655456777ff65c2c548b7c454af9c6f33f16c8884f11083244b5819cc214f1b5", size = 381234, upload-time = "2025-07-26T12:01:43.499Z" }, + { url = "https://files.pythonhosted.org/packages/46/3b/bec82a3ea06f66711520f75a40c8fc0b113b2a75edb36aa633eb11c4f50f/contourpy-1.3.3-cp313-cp313-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:644a6853d15b2512d67881586bd03f462c7ab755db95f16f14d7e238f2852c67", size = 385169, upload-time = "2025-07-26T12:01:45.219Z" }, + { url = "https://files.pythonhosted.org/packages/4b/32/e0f13a1c5b0f8572d0ec6ae2f6c677b7991fafd95da523159c19eff0696a/contourpy-1.3.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4debd64f124ca62069f313a9cb86656ff087786016d76927ae2cf37846b006c9", size = 362859, upload-time = "2025-07-26T12:01:46.519Z" }, + { url = "https://files.pythonhosted.org/packages/33/71/e2a7945b7de4e58af42d708a219f3b2f4cff7386e6b6ab0a0fa0033c49a9/contourpy-1.3.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a15459b0f4615b00bbd1e91f1b9e19b7e63aea7483d03d804186f278c0af2659", size = 1332062, upload-time = "2025-07-26T12:01:48.964Z" }, + { url = "https://files.pythonhosted.org/packages/12/fc/4e87ac754220ccc0e807284f88e943d6d43b43843614f0a8afa469801db0/contourpy-1.3.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:ca0fdcd73925568ca027e0b17ab07aad764be4706d0a925b89227e447d9737b7", size = 1403932, upload-time = "2025-07-26T12:01:51.979Z" }, + { url = "https://files.pythonhosted.org/packages/a6/2e/adc197a37443f934594112222ac1aa7dc9a98faf9c3842884df9a9d8751d/contourpy-1.3.3-cp313-cp313-win32.whl", hash = "sha256:b20c7c9a3bf701366556e1b1984ed2d0cedf999903c51311417cf5f591d8c78d", size = 185024, upload-time = "2025-07-26T12:01:53.245Z" }, + { url = "https://files.pythonhosted.org/packages/18/0b/0098c214843213759692cc638fce7de5c289200a830e5035d1791d7a2338/contourpy-1.3.3-cp313-cp313-win_amd64.whl", hash = "sha256:1cadd8b8969f060ba45ed7c1b714fe69185812ab43bd6b86a9123fe8f99c3263", size = 226578, upload-time = "2025-07-26T12:01:54.422Z" }, + { url = "https://files.pythonhosted.org/packages/8a/9a/2f6024a0c5995243cd63afdeb3651c984f0d2bc727fd98066d40e141ad73/contourpy-1.3.3-cp313-cp313-win_arm64.whl", hash = "sha256:fd914713266421b7536de2bfa8181aa8c699432b6763a0ea64195ebe28bff6a9", size = 193524, upload-time = "2025-07-26T12:01:55.73Z" }, + { url = "https://files.pythonhosted.org/packages/c0/b3/f8a1a86bd3298513f500e5b1f5fd92b69896449f6cab6a146a5d52715479/contourpy-1.3.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:88df9880d507169449d434c293467418b9f6cbe82edd19284aa0409e7fdb933d", size = 306730, upload-time = "2025-07-26T12:01:57.051Z" }, + { url = "https://files.pythonhosted.org/packages/3f/11/4780db94ae62fc0c2053909b65dc3246bd7cecfc4f8a20d957ad43aa4ad8/contourpy-1.3.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:d06bb1f751ba5d417047db62bca3c8fde202b8c11fb50742ab3ab962c81e8216", size = 287897, upload-time = "2025-07-26T12:01:58.663Z" }, + { url = "https://files.pythonhosted.org/packages/ae/15/e59f5f3ffdd6f3d4daa3e47114c53daabcb18574a26c21f03dc9e4e42ff0/contourpy-1.3.3-cp313-cp313t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e4e6b05a45525357e382909a4c1600444e2a45b4795163d3b22669285591c1ae", size = 326751, upload-time = "2025-07-26T12:02:00.343Z" }, + { url = "https://files.pythonhosted.org/packages/0f/81/03b45cfad088e4770b1dcf72ea78d3802d04200009fb364d18a493857210/contourpy-1.3.3-cp313-cp313t-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:ab3074b48c4e2cf1a960e6bbeb7f04566bf36b1861d5c9d4d8ac04b82e38ba20", size = 375486, upload-time = "2025-07-26T12:02:02.128Z" }, + { url = "https://files.pythonhosted.org/packages/0c/ba/49923366492ffbdd4486e970d421b289a670ae8cf539c1ea9a09822b371a/contourpy-1.3.3-cp313-cp313t-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:6c3d53c796f8647d6deb1abe867daeb66dcc8a97e8455efa729516b997b8ed99", size = 388106, upload-time = "2025-07-26T12:02:03.615Z" }, + { url = "https://files.pythonhosted.org/packages/9f/52/5b00ea89525f8f143651f9f03a0df371d3cbd2fccd21ca9b768c7a6500c2/contourpy-1.3.3-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:50ed930df7289ff2a8d7afeb9603f8289e5704755c7e5c3bbd929c90c817164b", size = 352548, upload-time = "2025-07-26T12:02:05.165Z" }, + { url = "https://files.pythonhosted.org/packages/32/1d/a209ec1a3a3452d490f6b14dd92e72280c99ae3d1e73da74f8277d4ee08f/contourpy-1.3.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:4feffb6537d64b84877da813a5c30f1422ea5739566abf0bd18065ac040e120a", size = 1322297, upload-time = "2025-07-26T12:02:07.379Z" }, + { url = "https://files.pythonhosted.org/packages/bc/9e/46f0e8ebdd884ca0e8877e46a3f4e633f6c9c8c4f3f6e72be3fe075994aa/contourpy-1.3.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:2b7e9480ffe2b0cd2e787e4df64270e3a0440d9db8dc823312e2c940c167df7e", size = 1391023, upload-time = "2025-07-26T12:02:10.171Z" }, + { url = "https://files.pythonhosted.org/packages/b9/70/f308384a3ae9cd2209e0849f33c913f658d3326900d0ff5d378d6a1422d2/contourpy-1.3.3-cp313-cp313t-win32.whl", hash = "sha256:283edd842a01e3dcd435b1c5116798d661378d83d36d337b8dde1d16a5fc9ba3", size = 196157, upload-time = "2025-07-26T12:02:11.488Z" }, + { url = "https://files.pythonhosted.org/packages/b2/dd/880f890a6663b84d9e34a6f88cded89d78f0091e0045a284427cb6b18521/contourpy-1.3.3-cp313-cp313t-win_amd64.whl", hash = "sha256:87acf5963fc2b34825e5b6b048f40e3635dd547f590b04d2ab317c2619ef7ae8", size = 240570, upload-time = "2025-07-26T12:02:12.754Z" }, + { url = "https://files.pythonhosted.org/packages/80/99/2adc7d8ffead633234817ef8e9a87115c8a11927a94478f6bb3d3f4d4f7d/contourpy-1.3.3-cp313-cp313t-win_arm64.whl", hash = "sha256:3c30273eb2a55024ff31ba7d052dde990d7d8e5450f4bbb6e913558b3d6c2301", size = 199713, upload-time = "2025-07-26T12:02:14.4Z" }, + { url = "https://files.pythonhosted.org/packages/72/8b/4546f3ab60f78c514ffb7d01a0bd743f90de36f0019d1be84d0a708a580a/contourpy-1.3.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:fde6c716d51c04b1c25d0b90364d0be954624a0ee9d60e23e850e8d48353d07a", size = 292189, upload-time = "2025-07-26T12:02:16.095Z" }, + { url = "https://files.pythonhosted.org/packages/fd/e1/3542a9cb596cadd76fcef413f19c79216e002623158befe6daa03dbfa88c/contourpy-1.3.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:cbedb772ed74ff5be440fa8eee9bd49f64f6e3fc09436d9c7d8f1c287b121d77", size = 273251, upload-time = "2025-07-26T12:02:17.524Z" }, + { url = "https://files.pythonhosted.org/packages/b1/71/f93e1e9471d189f79d0ce2497007731c1e6bf9ef6d1d61b911430c3db4e5/contourpy-1.3.3-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:22e9b1bd7a9b1d652cd77388465dc358dafcd2e217d35552424aa4f996f524f5", size = 335810, upload-time = "2025-07-26T12:02:18.9Z" }, + { url = "https://files.pythonhosted.org/packages/91/f9/e35f4c1c93f9275d4e38681a80506b5510e9327350c51f8d4a5a724d178c/contourpy-1.3.3-cp314-cp314-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:a22738912262aa3e254e4f3cb079a95a67132fc5a063890e224393596902f5a4", size = 382871, upload-time = "2025-07-26T12:02:20.418Z" }, + { url = "https://files.pythonhosted.org/packages/b5/71/47b512f936f66a0a900d81c396a7e60d73419868fba959c61efed7a8ab46/contourpy-1.3.3-cp314-cp314-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:afe5a512f31ee6bd7d0dda52ec9864c984ca3d66664444f2d72e0dc4eb832e36", size = 386264, upload-time = "2025-07-26T12:02:21.916Z" }, + { url = "https://files.pythonhosted.org/packages/04/5f/9ff93450ba96b09c7c2b3f81c94de31c89f92292f1380261bd7195bea4ea/contourpy-1.3.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f64836de09927cba6f79dcd00fdd7d5329f3fccc633468507079c829ca4db4e3", size = 363819, upload-time = "2025-07-26T12:02:23.759Z" }, + { url = "https://files.pythonhosted.org/packages/3e/a6/0b185d4cc480ee494945cde102cb0149ae830b5fa17bf855b95f2e70ad13/contourpy-1.3.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:1fd43c3be4c8e5fd6e4f2baeae35ae18176cf2e5cced681cca908addf1cdd53b", size = 1333650, upload-time = "2025-07-26T12:02:26.181Z" }, + { url = "https://files.pythonhosted.org/packages/43/d7/afdc95580ca56f30fbcd3060250f66cedbde69b4547028863abd8aa3b47e/contourpy-1.3.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:6afc576f7b33cf00996e5c1102dc2a8f7cc89e39c0b55df93a0b78c1bd992b36", size = 1404833, upload-time = "2025-07-26T12:02:28.782Z" }, + { url = "https://files.pythonhosted.org/packages/e2/e2/366af18a6d386f41132a48f033cbd2102e9b0cf6345d35ff0826cd984566/contourpy-1.3.3-cp314-cp314-win32.whl", hash = "sha256:66c8a43a4f7b8df8b71ee1840e4211a3c8d93b214b213f590e18a1beca458f7d", size = 189692, upload-time = "2025-07-26T12:02:30.128Z" }, + { url = "https://files.pythonhosted.org/packages/7d/c2/57f54b03d0f22d4044b8afb9ca0e184f8b1afd57b4f735c2fa70883dc601/contourpy-1.3.3-cp314-cp314-win_amd64.whl", hash = "sha256:cf9022ef053f2694e31d630feaacb21ea24224be1c3ad0520b13d844274614fd", size = 232424, upload-time = "2025-07-26T12:02:31.395Z" }, + { url = "https://files.pythonhosted.org/packages/18/79/a9416650df9b525737ab521aa181ccc42d56016d2123ddcb7b58e926a42c/contourpy-1.3.3-cp314-cp314-win_arm64.whl", hash = "sha256:95b181891b4c71de4bb404c6621e7e2390745f887f2a026b2d99e92c17892339", size = 198300, upload-time = "2025-07-26T12:02:32.956Z" }, + { url = "https://files.pythonhosted.org/packages/1f/42/38c159a7d0f2b7b9c04c64ab317042bb6952b713ba875c1681529a2932fe/contourpy-1.3.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:33c82d0138c0a062380332c861387650c82e4cf1747aaa6938b9b6516762e772", size = 306769, upload-time = "2025-07-26T12:02:34.2Z" }, + { url = "https://files.pythonhosted.org/packages/c3/6c/26a8205f24bca10974e77460de68d3d7c63e282e23782f1239f226fcae6f/contourpy-1.3.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:ea37e7b45949df430fe649e5de8351c423430046a2af20b1c1961cae3afcda77", size = 287892, upload-time = "2025-07-26T12:02:35.807Z" }, + { url = "https://files.pythonhosted.org/packages/66/06/8a475c8ab718ebfd7925661747dbb3c3ee9c82ac834ccb3570be49d129f4/contourpy-1.3.3-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d304906ecc71672e9c89e87c4675dc5c2645e1f4269a5063b99b0bb29f232d13", size = 326748, upload-time = "2025-07-26T12:02:37.193Z" }, + { url = "https://files.pythonhosted.org/packages/b4/a3/c5ca9f010a44c223f098fccd8b158bb1cb287378a31ac141f04730dc49be/contourpy-1.3.3-cp314-cp314t-manylinux_2_26_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:ca658cd1a680a5c9ea96dc61cdbae1e85c8f25849843aa799dfd3cb370ad4fbe", size = 375554, upload-time = "2025-07-26T12:02:38.894Z" }, + { url = "https://files.pythonhosted.org/packages/80/5b/68bd33ae63fac658a4145088c1e894405e07584a316738710b636c6d0333/contourpy-1.3.3-cp314-cp314t-manylinux_2_26_s390x.manylinux_2_28_s390x.whl", hash = "sha256:ab2fd90904c503739a75b7c8c5c01160130ba67944a7b77bbf36ef8054576e7f", size = 388118, upload-time = "2025-07-26T12:02:40.642Z" }, + { url = "https://files.pythonhosted.org/packages/40/52/4c285a6435940ae25d7410a6c36bda5145839bc3f0beb20c707cda18b9d2/contourpy-1.3.3-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b7301b89040075c30e5768810bc96a8e8d78085b47d8be6e4c3f5a0b4ed478a0", size = 352555, upload-time = "2025-07-26T12:02:42.25Z" }, + { url = "https://files.pythonhosted.org/packages/24/ee/3e81e1dd174f5c7fefe50e85d0892de05ca4e26ef1c9a59c2a57e43b865a/contourpy-1.3.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:2a2a8b627d5cc6b7c41a4beff6c5ad5eb848c88255fda4a8745f7e901b32d8e4", size = 1322295, upload-time = "2025-07-26T12:02:44.668Z" }, + { url = "https://files.pythonhosted.org/packages/3c/b2/6d913d4d04e14379de429057cd169e5e00f6c2af3bb13e1710bcbdb5da12/contourpy-1.3.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:fd6ec6be509c787f1caf6b247f0b1ca598bef13f4ddeaa126b7658215529ba0f", size = 1391027, upload-time = "2025-07-26T12:02:47.09Z" }, + { url = "https://files.pythonhosted.org/packages/93/8a/68a4ec5c55a2971213d29a9374913f7e9f18581945a7a31d1a39b5d2dfe5/contourpy-1.3.3-cp314-cp314t-win32.whl", hash = "sha256:e74a9a0f5e3fff48fb5a7f2fd2b9b70a3fe014a67522f79b7cca4c0c7e43c9ae", size = 202428, upload-time = "2025-07-26T12:02:48.691Z" }, + { url = "https://files.pythonhosted.org/packages/fa/96/fd9f641ffedc4fa3ace923af73b9d07e869496c9cc7a459103e6e978992f/contourpy-1.3.3-cp314-cp314t-win_amd64.whl", hash = "sha256:13b68d6a62db8eafaebb8039218921399baf6e47bf85006fd8529f2a08ef33fc", size = 250331, upload-time = "2025-07-26T12:02:50.137Z" }, + { url = "https://files.pythonhosted.org/packages/ae/8c/469afb6465b853afff216f9528ffda78a915ff880ed58813ba4faf4ba0b6/contourpy-1.3.3-cp314-cp314t-win_arm64.whl", hash = "sha256:b7448cb5a725bb1e35ce88771b86fba35ef418952474492cf7c764059933ff8b", size = 203831, upload-time = "2025-07-26T12:02:51.449Z" }, +] + +[[package]] +name = "cryptography" +version = "48.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cffi", marker = "platform_python_implementation != 'PyPy'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/9f/a9/db8f313fdcd85d767d4973515e1db101f9c71f95fced83233de224673757/cryptography-48.0.0.tar.gz", hash = "sha256:5c3932f4436d1cccb036cb0eaef46e6e2db91035166f1ad6505c3c9d5a635920", size = 832984, upload-time = "2026-05-04T22:59:38.133Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/df/3d/01f6dd9190170a5a241e0e98c2d04be3664a9e6f5b9b872cde63aff1c3dd/cryptography-48.0.0-cp311-abi3-macosx_10_9_universal2.whl", hash = "sha256:0c558d2cdffd8f4bbb30fc7134c74d2ca9a476f830bb053074498fbc86f41ed6", size = 8001587, upload-time = "2026-05-04T22:57:36.803Z" }, + { url = "https://files.pythonhosted.org/packages/b2/6e/e90527eef33f309beb811cf7c982c3aeffcce8e3edb178baa4ca3ae4a6fa/cryptography-48.0.0-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:f5333311663ea94f75dd408665686aaf426563556bb5283554a3539177e03b8c", size = 4690433, upload-time = "2026-05-04T22:57:40.373Z" }, + { url = "https://files.pythonhosted.org/packages/90/04/673510ed51ddff56575f306cf1617d80411ee76831ccd3097599140efdfe/cryptography-48.0.0-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:7995ef305d7165c3f11ae07f2517e5a4f1d5c18da1376a0a9ed496336b69e5f3", size = 4710620, upload-time = "2026-05-04T22:57:42.935Z" }, + { url = "https://files.pythonhosted.org/packages/14/d5/e9c4ef932c8d800490c34d8bd589d64a31d5890e27ec9e9ad532be893294/cryptography-48.0.0-cp311-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:40ba1f85eaa6959837b1d51c9767e230e14612eea4ef110ee8854ada22da1bf5", size = 4696283, upload-time = "2026-05-04T22:57:45.294Z" }, + { url = "https://files.pythonhosted.org/packages/0c/29/174b9dfb60b12d59ecfc6cfa04bc88c21b42a54f01b8aae09bb6e51e4c7f/cryptography-48.0.0-cp311-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:369a6348999f94bbd53435c894377b20ab95f25a9065c283570e70150d8abc3c", size = 5296573, upload-time = "2026-05-04T22:57:47.933Z" }, + { url = "https://files.pythonhosted.org/packages/95/38/0d29a6fd7d0d1373f0c0c88a04ba20e359b257753ac497564cd660fc1d55/cryptography-48.0.0-cp311-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:a0e692c683f4df67815a2d258b324e66f4738bd7a96a218c826dce4f4bd05d8f", size = 4743677, upload-time = "2026-05-04T22:57:50.067Z" }, + { url = "https://files.pythonhosted.org/packages/30/be/eef653013d5c63b6a490529e0316f9ac14a37602965d4903efed1399f32b/cryptography-48.0.0-cp311-abi3-manylinux_2_31_armv7l.whl", hash = "sha256:18349bbc56f4743c8b12dc32e2bccb2cf83ee8b69a3bba74ef8ae857e26b3d25", size = 4330808, upload-time = "2026-05-04T22:57:52.301Z" }, + { url = "https://files.pythonhosted.org/packages/84/9e/500463e87abb7a0a0f9f256ec21123ecde0a7b5541a15e840ea54551fd81/cryptography-48.0.0-cp311-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:7e8eac43dfca5c4cccc6dad9a80504436fca53bb9bc3100a2386d730fbe6b602", size = 4695941, upload-time = "2026-05-04T22:57:54.603Z" }, + { url = "https://files.pythonhosted.org/packages/e3/dc/7303087450c2ec9e7fbb750e17c2abfbc658f23cbd0e54009509b7cc4091/cryptography-48.0.0-cp311-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:9ccdac7d40688ecb5a3b4a604b8a88c8002e3442d6c60aead1db2a89a041560c", size = 5252579, upload-time = "2026-05-04T22:57:57.207Z" }, + { url = "https://files.pythonhosted.org/packages/d0/c0/7101d3b7215edcdc90c45da544961fd8ed2d6448f77577460fa75a8443f7/cryptography-48.0.0-cp311-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:bd72e68b06bb1e96913f97dd4901119bc17f39d4586a5adf2d3e47bc2b9d58b5", size = 4743326, upload-time = "2026-05-04T22:57:59.535Z" }, + { url = "https://files.pythonhosted.org/packages/ac/d8/5b833bad13016f562ab9d063d68199a4bd121d18458e439515601d3357ec/cryptography-48.0.0-cp311-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:59baa2cb386c4f0b9905bd6eb4c2a79a69a128408fd31d32ca4d7102d4156321", size = 4826672, upload-time = "2026-05-04T22:58:01.996Z" }, + { url = "https://files.pythonhosted.org/packages/98/e1/7074eb8bf3c135558c73fc2bcf0f5633f912e6fb87e868a55c454080ef09/cryptography-48.0.0-cp311-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:9249e3cd978541d665967ac2cb2787fd6a62bddf1e75b3e347a594d7dacf4f74", size = 4972574, upload-time = "2026-05-04T22:58:03.968Z" }, + { url = "https://files.pythonhosted.org/packages/04/70/e5a1b41d325f797f39427aa44ef8baf0be500065ab6d8e10369d850d4a4f/cryptography-48.0.0-cp311-abi3-win32.whl", hash = "sha256:9c459db21422be75e2809370b829a87eb37f74cd785fc4aa9ea1e5f43b47cda4", size = 3294868, upload-time = "2026-05-04T22:58:06.467Z" }, + { url = "https://files.pythonhosted.org/packages/f4/ac/8ac51b4a5fc5932eb7ee5c517ba7dc8cd834f0048962b6b352f00f41ebf9/cryptography-48.0.0-cp311-abi3-win_amd64.whl", hash = "sha256:5b012212e08b8dd5edc78ef54da83dd9892fd9105323b3993eff6bea65dc21d7", size = 3817107, upload-time = "2026-05-04T22:58:08.845Z" }, + { url = "https://files.pythonhosted.org/packages/6b/84/70e3feea9feea87fd7cbe77efb2712ae1e3e6edf10749dc6e95f4e60e455/cryptography-48.0.0-cp314-cp314t-macosx_10_9_universal2.whl", hash = "sha256:3cb07a3ed6431663cd321ea8a000a1314c74211f823e4177fefa2255e057d1ec", size = 7986556, upload-time = "2026-05-04T22:58:11.172Z" }, + { url = "https://files.pythonhosted.org/packages/89/6e/18e07a618bb5442ba10cf4df16e99c071365528aa570dfcb8c02e25a303b/cryptography-48.0.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:8c7378637d7d88016fa6791c159f698b3d3eed28ebf844ac36b9dc04a14dae18", size = 4684776, upload-time = "2026-05-04T22:58:13.712Z" }, + { url = "https://files.pythonhosted.org/packages/be/6a/4ea3b4c6c6759794d5ee2103c304a5076dc4b19ae1f9fe47dba439e159e9/cryptography-48.0.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:cc90c0b39b2e3c65ef52c804b72e3c58f8a04ab2a1871272798e5f9572c17d20", size = 4698121, upload-time = "2026-05-04T22:58:16.448Z" }, + { url = "https://files.pythonhosted.org/packages/2f/59/6ff6ad6cae03bb887da2a5860b2c9805f8dac969ef01ce563336c49bd1d1/cryptography-48.0.0-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:76341972e1eff8b4bea859f09c0d3e64b96ce931b084f9b9b7db8ef364c30eff", size = 4690042, upload-time = "2026-05-04T22:58:18.544Z" }, + { url = "https://files.pythonhosted.org/packages/ca/b4/fc334ed8cfd705aca282fe4d8f5ae64a8e0f74932e9feecb344610cf6e4d/cryptography-48.0.0-cp314-cp314t-manylinux_2_28_ppc64le.whl", hash = "sha256:55b7718303bf06a5753dcdccf2f3945cf18ad7bffde41b61226e4db31ab89a9c", size = 5282526, upload-time = "2026-05-04T22:58:20.75Z" }, + { url = "https://files.pythonhosted.org/packages/11/08/9f8c5386cc4cd90d8255c7cdd0f5baf459a08502a09de30dc51f553d38dc/cryptography-48.0.0-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:a64697c641c7b1b2178e573cbc31c7c6684cd56883a478d75143dbb7118036db", size = 4733116, upload-time = "2026-05-04T22:58:23.627Z" }, + { url = "https://files.pythonhosted.org/packages/b8/77/99307d7574045699f8805aa500fa0fb83422d115b5400a064ddd306d7750/cryptography-48.0.0-cp314-cp314t-manylinux_2_31_armv7l.whl", hash = "sha256:561215ea3879cb1cbbf272867e2efda62476f240fb58c64de6b393ae19246741", size = 4316030, upload-time = "2026-05-04T22:58:25.581Z" }, + { url = "https://files.pythonhosted.org/packages/fd/36/a608b98337af3cb2aff4818e406649d30572b7031918b04c87d979495348/cryptography-48.0.0-cp314-cp314t-manylinux_2_34_aarch64.whl", hash = "sha256:ad64688338ed4bc1a6618076ba75fd7194a5f1797ac60b47afe926285adb3166", size = 4689640, upload-time = "2026-05-04T22:58:27.747Z" }, + { url = "https://files.pythonhosted.org/packages/dd/a6/825010a291b4438aecc1f568bc428189fc1175515223632477c07dc0a6df/cryptography-48.0.0-cp314-cp314t-manylinux_2_34_ppc64le.whl", hash = "sha256:906cbf0670286c6e0044156bc7d4af9cbb0ef6db9f73e52c3ec56ba6bdde5336", size = 5237657, upload-time = "2026-05-04T22:58:29.848Z" }, + { url = "https://files.pythonhosted.org/packages/b9/09/4e76a09b4caa29aad535ddc806f5d4c5d01885bd978bd984fbc6ca032cae/cryptography-48.0.0-cp314-cp314t-manylinux_2_34_x86_64.whl", hash = "sha256:ea8990436d914540a40ab24b6a77c0969695ed52f4a4874c5137ccf7045a7057", size = 4732362, upload-time = "2026-05-04T22:58:32.009Z" }, + { url = "https://files.pythonhosted.org/packages/18/78/444fa04a77d0cb95f417dda20d450e13c56ba8e5220fc892a1658f44f882/cryptography-48.0.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:c18684a7f0cc9a3cb60328f496b8e3372def7c5d2df39ac267878b05565aaaae", size = 4819580, upload-time = "2026-05-04T22:58:34.254Z" }, + { url = "https://files.pythonhosted.org/packages/38/85/ea67067c70a1fd4be2c63d35eeed82658023021affccc7b17705f8527dd2/cryptography-48.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:9be5aafa5736574f8f15f262adc81b2a9869e2cfe9014d52a44633905b40d52c", size = 4963283, upload-time = "2026-05-04T22:58:36.376Z" }, + { url = "https://files.pythonhosted.org/packages/75/54/cc6d0f3deac3e81c7f847e8a189a12b6cdd65059b43dad25d4316abd849a/cryptography-48.0.0-cp314-cp314t-win32.whl", hash = "sha256:c17dfe85494deaeddc5ce251aebd1d60bbe6afc8b62071bb0b469431a000124f", size = 3270954, upload-time = "2026-05-04T22:58:38.791Z" }, + { url = "https://files.pythonhosted.org/packages/49/67/cc947e288c0758a4e5473d1dcb743037ab7785541265a969240b8885441a/cryptography-48.0.0-cp314-cp314t-win_amd64.whl", hash = "sha256:27241b1dc9962e056062a8eef1991d02c3a24569c95975bd2322a8a52c6e5e12", size = 3797313, upload-time = "2026-05-04T22:58:40.746Z" }, + { url = "https://files.pythonhosted.org/packages/f2/63/61d4a4e1c6b6bab6ce1e213cd36a24c415d90e76d78c5eb8577c5541d2e8/cryptography-48.0.0-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:58d00498e8933e4a194f3076aee1b4a97dfec1a6da444535755822fe5d8b0b86", size = 7983482, upload-time = "2026-05-04T22:58:43.769Z" }, + { url = "https://files.pythonhosted.org/packages/d5/ac/f5b5995b87770c693e2596559ffafe195b4033a57f14a82268a2842953f3/cryptography-48.0.0-cp39-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:614d0949f4790582d2cc25553abd09dd723025f0c0e7c67376a1d77196743d6e", size = 4683266, upload-time = "2026-05-04T22:58:46.064Z" }, + { url = "https://files.pythonhosted.org/packages/ec/c6/8b14f67e18338fbc4adb76f66c001f5c3610b3e2d1837f268f47a347dbbb/cryptography-48.0.0-cp39-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:7ce4bfae76319a532a2dc68f82cc32f5676ee792a983187dac07183690e5c66f", size = 4696228, upload-time = "2026-05-04T22:58:48.22Z" }, + { url = "https://files.pythonhosted.org/packages/ea/73/f808fbae9514bd91b47875b003f13e284c8c6bdfd904b7944e803937eec1/cryptography-48.0.0-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:2eb992bbd4661238c5a397594c83f5b4dc2bc5b848c365c8f991b6780efcc5c7", size = 4689097, upload-time = "2026-05-04T22:58:50.9Z" }, + { url = "https://files.pythonhosted.org/packages/93/01/d86632d7d28db8ae83221995752eeb6639ffb374c2d22955648cf8d52797/cryptography-48.0.0-cp39-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:22a5cb272895dce158b2cacdfdc3debd299019659f42947dbdac6f32d68fe832", size = 5283582, upload-time = "2026-05-04T22:58:53.017Z" }, + { url = "https://files.pythonhosted.org/packages/02/e1/50edc7a50334807cc4791fc4a0ce7468b4a1416d9138eab358bfc9a3d70b/cryptography-48.0.0-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:2b4d59804e8408e2fea7d1fbaf218e5ec984325221db76e6a241a9abd6cdd95c", size = 4730479, upload-time = "2026-05-04T22:58:55.611Z" }, + { url = "https://files.pythonhosted.org/packages/6f/af/99a582b1b1641ff5911ac559beb45097cf79efd4ead4657f578ef1af2d47/cryptography-48.0.0-cp39-abi3-manylinux_2_31_armv7l.whl", hash = "sha256:984a20b0f62a26f48a3396c72e4bc34c66e356d356bf370053066b3b6d54634a", size = 4326481, upload-time = "2026-05-04T22:58:57.607Z" }, + { url = "https://files.pythonhosted.org/packages/90/ee/89aa26a06ef0a7d7611788ffd571a7c50e368cc6a4d5eef8b4884e866edb/cryptography-48.0.0-cp39-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:5a5ed8fde7a1d09376ca0b40e68cd59c69fe23b1f9768bd5824f54681626032a", size = 4688713, upload-time = "2026-05-04T22:59:00.077Z" }, + { url = "https://files.pythonhosted.org/packages/70/ba/bcb1b0bb7a33d4c7c0c4d4c7874b4a62ae4f56113a5f4baefa362dfb1f0f/cryptography-48.0.0-cp39-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:8cd666227ef7af430aa5914a9910e0ddd703e75f039cef0825cd0da71b6b711a", size = 5238165, upload-time = "2026-05-04T22:59:02.317Z" }, + { url = "https://files.pythonhosted.org/packages/c9/70/ca4003b1ce5ca3dc3186ada51908c8a9b9ff7d5cab83cc0d43ee14ec144f/cryptography-48.0.0-cp39-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:9071196d81abc88b3516ac8cdfad32e2b66dd4a5393a8e68a961e9161ddc6239", size = 4729947, upload-time = "2026-05-04T22:59:05.255Z" }, + { url = "https://files.pythonhosted.org/packages/44/a0/4ec7cf774207905aef1a8d11c3750d5a1db805eb380ee4e16df317870128/cryptography-48.0.0-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:1e2d54c8be6152856a36f0882ab231e70f8ec7f14e93cf87db8a2ed056bf160c", size = 4822059, upload-time = "2026-05-04T22:59:07.802Z" }, + { url = "https://files.pythonhosted.org/packages/1e/75/a2e55f99c16fcac7b5d6c1eb19ad8e00799854d6be5ca845f9259eae1681/cryptography-48.0.0-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:a5da777e32ffed6f85a7b2b3f7c5cbc88c146bfcd0a1d7baf5fcc6c52ee35dd4", size = 4960575, upload-time = "2026-05-04T22:59:09.851Z" }, + { url = "https://files.pythonhosted.org/packages/b8/23/6e6f32143ab5d8b36ca848a502c4bcd477ae75b9e1677e3530d669062578/cryptography-48.0.0-cp39-abi3-win32.whl", hash = "sha256:77a2ccbbe917f6710e05ba9adaa25fb5075620bf3ea6fb751997875aff4ae4bd", size = 3279117, upload-time = "2026-05-04T22:59:12.019Z" }, + { url = "https://files.pythonhosted.org/packages/9d/9a/0fea98a70cf1749d41d738836f6349d97945f7c89433a259a6c2642eefeb/cryptography-48.0.0-cp39-abi3-win_amd64.whl", hash = "sha256:16cd65b9330583e4619939b3a3843eec1e6e789744bb01e7c7e2e62e33c239c8", size = 3792100, upload-time = "2026-05-04T22:59:14.884Z" }, +] + +[[package]] +name = "cuda-bindings" +version = "13.3.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cuda-pathfinder", marker = "sys_platform != 'emscripten' and sys_platform != 'win32'" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/ae/a0/156efe7816699c2de1ea2395031db7d010b7af23c243563a3ee6f0ecc1de/cuda_bindings-13.3.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a7698fcc4577aa96372866f4d0c9a6cf686cd5c90eab94581c29d37fe6600542", size = 5914803, upload-time = "2026-05-27T03:59:14.011Z" }, + { url = "https://files.pythonhosted.org/packages/51/91/510aae64d53227b5b36db6bfaea41514b66d92cd65ddc43aa49566f18313/cuda_bindings-13.3.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:abd908f651160d12c45c5714a38ee102a1173a55433c0d1509ec0e8293beb4a6", size = 6472506, upload-time = "2026-05-27T03:59:16.551Z" }, + { url = "https://files.pythonhosted.org/packages/01/53/2ef49e5b3734a5531b2ba5d726cba724d9cbb262404e586ed61070604826/cuda_bindings-13.3.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4a801fa30e75d25b74252123aefc746b6c4275624d2b8640632dd1dfeeaa1f88", size = 6008814, upload-time = "2026-05-27T03:59:20.921Z" }, + { url = "https://files.pythonhosted.org/packages/2f/cb/3a9fcf0651e0a49b4d0f1955837ce079245b27086c22fb2f253039bdf324/cuda_bindings-13.3.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:94d40ef7b4bdd9dce0244a1baa132e0e538f1eb2c0d162fb3648a15e48515365", size = 6531477, upload-time = "2026-05-27T03:59:23.391Z" }, + { url = "https://files.pythonhosted.org/packages/2b/0f/6987c5ee98f117317a85650ddc79480a3fa59a573ae1c923d0722b56ae71/cuda_bindings-13.3.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e5911bea15810b749a8077f8c45423ed785d51618b8e8664dea1fc8f5a2a76c8", size = 5807073, upload-time = "2026-05-27T03:59:28.218Z" }, + { url = "https://files.pythonhosted.org/packages/f6/ab/46ceee07dc19f18a5d1c28d592750ed9dbdc803077eb083576a442c9938c/cuda_bindings-13.3.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e2870fed7707a37f8af0c02364b05f355ebe8921604e8c68eb56cf66867e0798", size = 6354325, upload-time = "2026-05-27T03:59:30.715Z" }, +] + +[[package]] +name = "cuda-pathfinder" +version = "1.5.5" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/11/c8/26f2e4aae92f11522a96043892ba39a90eac610d5242523aa863212bc1c7/cuda_pathfinder-1.5.5-py3-none-any.whl", hash = "sha256:0228c023f95d1480f143ef5c8922d27a2ab052087a942e81dc289c9eb8f91689", size = 51671, upload-time = "2026-05-27T01:21:25.413Z" }, +] + +[[package]] +name = "cuda-toolkit" +version = "13.0.2" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/57/b2/453099f5f3b698d7d0eab38916aac44c7f76229f451709e2eb9db6615dcd/cuda_toolkit-13.0.2-py2.py3-none-any.whl", hash = "sha256:b198824cf2f54003f50d64ada3a0f184b42ca0846c1c94192fa269ecd97a66eb", size = 2364, upload-time = "2025-12-19T23:24:07.328Z" }, +] + +[package.optional-dependencies] +cudart = [ + { name = "nvidia-cuda-runtime", marker = "sys_platform == 'linux'" }, +] +cufft = [ + { name = "nvidia-cufft", marker = "sys_platform == 'linux'" }, +] +cufile = [ + { name = "nvidia-cufile", marker = "sys_platform == 'linux'" }, +] +cupti = [ + { name = "nvidia-cuda-cupti", marker = "sys_platform == 'linux'" }, +] +curand = [ + { name = "nvidia-curand", marker = "sys_platform == 'linux'" }, +] +cusolver = [ + { name = "nvidia-cusolver", marker = "sys_platform == 'linux'" }, +] +cusparse = [ + { name = "nvidia-cusparse", marker = "sys_platform == 'linux'" }, +] +nvjitlink = [ + { name = "nvidia-nvjitlink", marker = "sys_platform == 'linux'" }, +] +nvrtc = [ + { name = "nvidia-cuda-nvrtc", marker = "sys_platform == 'linux'" }, +] +nvtx = [ + { name = "nvidia-nvtx", marker = "sys_platform == 'linux'" }, +] + +[[package]] +name = "cycler" +version = "0.12.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/a9/95/a3dbbb5028f35eafb79008e7522a75244477d2838f38cbb722248dabc2a8/cycler-0.12.1.tar.gz", hash = "sha256:88bb128f02ba341da8ef447245a9e138fae777f6a23943da4540077d3601eb1c", size = 7615, upload-time = "2023-10-07T05:32:18.335Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e7/05/c19819d5e3d95294a6f5947fb9b9629efb316b96de511b418c53d245aae6/cycler-0.12.1-py3-none-any.whl", hash = "sha256:85cef7cff222d8644161529808465972e51340599459b8ac3ccbac5a854e0d30", size = 8321, upload-time = "2023-10-07T05:32:16.783Z" }, +] + +[[package]] +name = "debugpy" +version = "1.8.20" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e0/b7/cd8080344452e4874aae67c40d8940e2b4d47b01601a8fd9f44786c757c7/debugpy-1.8.20.tar.gz", hash = "sha256:55bc8701714969f1ab89a6d5f2f3d40c36f91b2cbe2f65d98bf8196f6a6a2c33", size = 1645207, upload-time = "2026-01-29T23:03:28.199Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/15/e2/fc500524cc6f104a9d049abc85a0a8b3f0d14c0a39b9c140511c61e5b40b/debugpy-1.8.20-cp313-cp313-macosx_15_0_universal2.whl", hash = "sha256:5dff4bb27027821fdfcc9e8f87309a28988231165147c31730128b1c983e282a", size = 2539560, upload-time = "2026-01-29T23:03:48.738Z" }, + { url = "https://files.pythonhosted.org/packages/90/83/fb33dcea789ed6018f8da20c5a9bc9d82adc65c0c990faed43f7c955da46/debugpy-1.8.20-cp313-cp313-manylinux_2_34_x86_64.whl", hash = "sha256:84562982dd7cf5ebebfdea667ca20a064e096099997b175fe204e86817f64eaf", size = 4293272, upload-time = "2026-01-29T23:03:50.169Z" }, + { url = "https://files.pythonhosted.org/packages/a6/25/b1e4a01bfb824d79a6af24b99ef291e24189080c93576dfd9b1a2815cd0f/debugpy-1.8.20-cp313-cp313-win32.whl", hash = "sha256:da11dea6447b2cadbf8ce2bec59ecea87cc18d2c574980f643f2d2dfe4862393", size = 5331208, upload-time = "2026-01-29T23:03:51.547Z" }, + { url = "https://files.pythonhosted.org/packages/13/f7/a0b368ce54ffff9e9028c098bd2d28cfc5b54f9f6c186929083d4c60ba58/debugpy-1.8.20-cp313-cp313-win_amd64.whl", hash = "sha256:eb506e45943cab2efb7c6eafdd65b842f3ae779f020c82221f55aca9de135ed7", size = 5372930, upload-time = "2026-01-29T23:03:53.585Z" }, + { url = "https://files.pythonhosted.org/packages/33/2e/f6cb9a8a13f5058f0a20fe09711a7b726232cd5a78c6a7c05b2ec726cff9/debugpy-1.8.20-cp314-cp314-macosx_15_0_universal2.whl", hash = "sha256:9c74df62fc064cd5e5eaca1353a3ef5a5d50da5eb8058fcef63106f7bebe6173", size = 2538066, upload-time = "2026-01-29T23:03:54.999Z" }, + { url = "https://files.pythonhosted.org/packages/c5/56/6ddca50b53624e1ca3ce1d1e49ff22db46c47ea5fb4c0cc5c9b90a616364/debugpy-1.8.20-cp314-cp314-manylinux_2_34_x86_64.whl", hash = "sha256:077a7447589ee9bc1ff0cdf443566d0ecf540ac8aa7333b775ebcb8ce9f4ecad", size = 4269425, upload-time = "2026-01-29T23:03:56.518Z" }, + { url = "https://files.pythonhosted.org/packages/c5/d9/d64199c14a0d4c476df46c82470a3ce45c8d183a6796cfb5e66533b3663c/debugpy-1.8.20-cp314-cp314-win32.whl", hash = "sha256:352036a99dd35053b37b7803f748efc456076f929c6a895556932eaf2d23b07f", size = 5331407, upload-time = "2026-01-29T23:03:58.481Z" }, + { url = "https://files.pythonhosted.org/packages/e0/d9/1f07395b54413432624d61524dfd98c1a7c7827d2abfdb8829ac92638205/debugpy-1.8.20-cp314-cp314-win_amd64.whl", hash = "sha256:a98eec61135465b062846112e5ecf2eebb855305acc1dfbae43b72903b8ab5be", size = 5372521, upload-time = "2026-01-29T23:03:59.864Z" }, + { url = "https://files.pythonhosted.org/packages/e0/c3/7f67dea8ccf8fdcb9c99033bbe3e90b9e7395415843accb81428c441be2d/debugpy-1.8.20-py2.py3-none-any.whl", hash = "sha256:5be9bed9ae3be00665a06acaa48f8329d2b9632f15fd09f6a9a8c8d9907e54d7", size = 5337658, upload-time = "2026-01-29T23:04:17.404Z" }, +] + +[[package]] +name = "decorator" +version = "5.3.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/60/8b/32f9823da46cde7df2087faa08cd98d01b908f8dcab982cdba9c84e85355/decorator-5.3.1.tar.gz", hash = "sha256:4cbcdd55a6efadb9dbea26b858f4fb3264567b52d69ca0d25b721b553f60ea82", size = 58084, upload-time = "2026-05-18T06:03:28.057Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/05/7f/798705f5296a58ca505d600456748d1be48078eac8a7050d8a98bc9edb89/decorator-5.3.1-py3-none-any.whl", hash = "sha256:f47fe6fdbd2edd623ecfe36875d37aba411624e2670dd395dddae1358689bb3c", size = 10365, upload-time = "2026-05-18T06:03:26.517Z" }, +] + +[[package]] +name = "defusedxml" +version = "0.7.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0f/d5/c66da9b79e5bdb124974bfe172b4daf3c984ebd9c2a06e2b8a4dc7331c72/defusedxml-0.7.1.tar.gz", hash = "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69", size = 75520, upload-time = "2021-03-08T10:59:26.269Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/07/6c/aa3f2f849e01cb6a001cd8554a88d4c77c5c1a31c95bdf1cf9301e6d9ef4/defusedxml-0.7.1-py2.py3-none-any.whl", hash = "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61", size = 25604, upload-time = "2021-03-08T10:59:24.45Z" }, +] + +[[package]] +name = "diffusers" +version = "0.37.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "filelock" }, + { name = "httpx" }, + { name = "huggingface-hub" }, + { name = "importlib-metadata" }, + { name = "numpy" }, + { name = "pillow" }, + { name = "regex" }, + { name = "requests" }, + { name = "safetensors" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/46/5c/f4c2eb8d481fe8784a7e2331fbaab820079c06676185fa6d2177b386d590/diffusers-0.37.1.tar.gz", hash = "sha256:2346c21f77f835f273b7aacbaada1c34a596a3a2cc6ddc99d149efcd0ec298fa", size = 4135139, upload-time = "2026-03-25T08:04:04.515Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9c/dd/51c38785ce5e1c287b5ad17ba550edaaaffce0deb0da4857019c6700fbaf/diffusers-0.37.1-py3-none-any.whl", hash = "sha256:0537c0b28cb53cf39d6195489bcf8f833986df556c10f5e28ab7427b86fc8b90", size = 5001536, upload-time = "2026-03-25T08:04:02.385Z" }, +] + +[[package]] +name = "einops" +version = "0.8.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2c/77/850bef8d72ffb9219f0b1aac23fbc1bf7d038ee6ea666f331fa273031aa2/einops-0.8.2.tar.gz", hash = "sha256:609da665570e5e265e27283aab09e7f279ade90c4f01bcfca111f3d3e13f2827", size = 56261, upload-time = "2026-01-26T04:13:17.638Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2a/09/f8d8f8f31e4483c10a906437b4ce31bdf3d6d417b73fe33f1a8b59e34228/einops-0.8.2-py3-none-any.whl", hash = "sha256:54058201ac7087911181bfec4af6091bb59380360f069276601256a76af08193", size = 65638, upload-time = "2026-01-26T04:13:18.546Z" }, +] + +[[package]] +name = "executing" +version = "2.2.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/cc/28/c14e053b6762b1044f34a13aab6859bbf40456d37d23aa286ac24cfd9a5d/executing-2.2.1.tar.gz", hash = "sha256:3632cc370565f6648cc328b32435bd120a1e4ebb20c77e3fdde9a13cd1e533c4", size = 1129488, upload-time = "2025-09-01T09:48:10.866Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl", hash = "sha256:760643d3452b4d777d295bb167ccc74c64a81df23fb5e08eff250c425a4b2017", size = 28317, upload-time = "2025-09-01T09:48:08.5Z" }, +] + +[[package]] +name = "fastapi" +version = "0.136.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "annotated-doc" }, + { name = "pydantic" }, + { name = "starlette" }, + { name = "typing-extensions" }, + { name = "typing-inspection" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/81/2d/ff8d91d7b564d464629a0fd50a4489c97fcb836ac230bf3a7269232a9b1f/fastapi-0.136.3.tar.gz", hash = "sha256:e487fae93ad408e6f47641ee4dfe389864fd7bec92e547ea8498fc13f43e83ab", size = 396410, upload-time = "2026-05-23T18:53:15.192Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e0/82/45359b62a067409bd929ae8a56b8ed13e5a8c8a61194b3c236920999ab83/fastapi-0.136.3-py3-none-any.whl", hash = "sha256:3d2a69bdf04b7e9f3afa292c3bc7a98816bbfafa10bc9b45f3f3700d2f761620", size = 117481, upload-time = "2026-05-23T18:53:16.924Z" }, +] + +[[package]] +name = "fastjsonschema" +version = "2.21.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/20/b5/23b216d9d985a956623b6bd12d4086b60f0059b27799f23016af04a74ea1/fastjsonschema-2.21.2.tar.gz", hash = "sha256:b1eb43748041c880796cd077f1a07c3d94e93ae84bba5ed36800a33554ae05de", size = 374130, upload-time = "2025-08-14T18:49:36.666Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cb/a8/20d0723294217e47de6d9e2e40fd4a9d2f7c4b6ef974babd482a59743694/fastjsonschema-2.21.2-py3-none-any.whl", hash = "sha256:1c797122d0a86c5cace2e54bf4e819c36223b552017172f32c5c024a6b77e463", size = 24024, upload-time = "2025-08-14T18:49:34.776Z" }, +] + +[[package]] +name = "filelock" +version = "3.29.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/b5/fe/997687a931ab51049acce6fa1f23e8f01216374ea81374ddee763c493db5/filelock-3.29.0.tar.gz", hash = "sha256:69974355e960702e789734cb4871f884ea6fe50bd8404051a3530bc07809cf90", size = 57571, upload-time = "2026-04-19T15:39:10.068Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/81/47/dd9a212ef6e343a6857485ffe25bba537304f1913bdbed446a23f7f592e1/filelock-3.29.0-py3-none-any.whl", hash = "sha256:96f5f6344709aa1572bbf631c640e4ebeeb519e08da902c39a001882f30ac258", size = 39812, upload-time = "2026-04-19T15:39:08.752Z" }, +] + +[[package]] +name = "flatbuffers" +version = "25.12.19" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e8/2d/d2a548598be01649e2d46231d151a6c56d10b964d94043a335ae56ea2d92/flatbuffers-25.12.19-py2.py3-none-any.whl", hash = "sha256:7634f50c427838bb021c2d66a3d1168e9d199b0607e6329399f04846d42e20b4", size = 26661, upload-time = "2025-12-19T23:16:13.622Z" }, +] + +[[package]] +name = "fonttools" +version = "4.63.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/84/69/c97f2c18e0db87d2c7b15da1974dace76ae938f1cfa22e2727a648b7ed43/fonttools-4.63.0.tar.gz", hash = "sha256:caeb583deeb5168e694b65cda8b4ee62abedfa66cf88488734466f2366b9c4e0", size = 3597189, upload-time = "2026-05-14T12:04:30.958Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0f/8d/d8fec3dcde2963f8c908fb315e5ff2cd0ac34f82394bbbf73a2aa5145ce3/fonttools-4.63.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:cd7e9857e5e63738b9d9fd707bc1f59c8b09e5177726d23664db393c59bb08bd", size = 2876062, upload-time = "2026-05-14T12:03:32.554Z" }, + { url = "https://files.pythonhosted.org/packages/ef/71/d935dc54e4ff121bfdd11e08702db63a7e6f25af21d8a3d7b7212df53641/fonttools-4.63.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:c2a2a42198b696a6f48fad91709afb55176e66a5e566131219dba372fb7f8c59", size = 2424594, upload-time = "2026-05-14T12:03:34.86Z" }, + { url = "https://files.pythonhosted.org/packages/8e/40/e76320afa1df918e146155ef239b1719ee266092e96f5423bfd075affba1/fonttools-4.63.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1e874792a8212b44583ea02189d9e693906b2f78b261f372f95d6c563210ac1d", size = 5024840, upload-time = "2026-05-14T12:03:36.745Z" }, + { url = "https://files.pythonhosted.org/packages/ce/36/0b805d8c485f872f65a509cbe3b58a5d0d17bee855333b54a150c79d3061/fonttools-4.63.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:22135da48a348785c5e2d5d2d9d6bec5ed44adacbaeb9db12d9493bf6c6bfa68", size = 4975801, upload-time = "2026-05-14T12:03:38.833Z" }, + { url = "https://files.pythonhosted.org/packages/c8/26/2cee03d0aa083ab022da5c07aff9ed3f689da1defb81ad6917c9627896da/fonttools-4.63.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:ccf41f2efdf56994d22d73bef4ced1052161958169428d06ba9724ea9e9a64be", size = 4965009, upload-time = "2026-05-14T12:03:41.494Z" }, + { url = "https://files.pythonhosted.org/packages/7e/48/cc4b66d9058c0d0982c833fad10127c4b0e9324606aafa41382295ca4102/fonttools-4.63.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9ced0bd02ac751dd6319b0da88aaef24414e3b0dbc32bb4f24944821a3741a27", size = 5105892, upload-time = "2026-05-14T12:03:43.525Z" }, + { url = "https://files.pythonhosted.org/packages/d8/1f/a98a30a814b9ddef3a2e706025f90b9e0bc94890e6cb15254bc86547d11a/fonttools-4.63.0-cp313-cp313-win32.whl", hash = "sha256:85be818f5506e8a7753153def2c9550178f0ecae6a47b5e0e8dbb23f7cc90380", size = 2291313, upload-time = "2026-05-14T12:03:45.594Z" }, + { url = "https://files.pythonhosted.org/packages/92/46/5177b01f3b4abfdd4409f31cca4ab279c9343a26efbe9ec78c97fc612e02/fonttools-4.63.0-cp313-cp313-win_amd64.whl", hash = "sha256:ba04cb5891d4c0c21b6da95eda8d7b090021508a294fff33464fc7d241e0856b", size = 2342299, upload-time = "2026-05-14T12:03:47.414Z" }, + { url = "https://files.pythonhosted.org/packages/27/d2/23d25e3f247b328be58d04a4c9f894178a0d1eda7d42867cfb388adaf416/fonttools-4.63.0-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:fd1e3094f42d806d3d7c79162fc59e5910fcbe3a7360c385b8da969bc4493745", size = 2875338, upload-time = "2026-05-14T12:03:50.052Z" }, + { url = "https://files.pythonhosted.org/packages/cd/58/7dfa0c761cb3b2964e2a84c4dc986c926a87de0cb9fb60d5b28ded3f2914/fonttools-4.63.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:6e528da43bc3791085f8cb6141b1d13e459226790240340fcbb4625649238b03", size = 2422661, upload-time = "2026-05-14T12:03:52.154Z" }, + { url = "https://files.pythonhosted.org/packages/dd/87/64cfa18a7a1621d17b7f4502b2b0ed8a135a90c3db51ea590ee99043e76b/fonttools-4.63.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6b2248c5decb223562f7902ff6325077a073f608ee8e33e88ad88db734eb9f49", size = 5010526, upload-time = "2026-05-14T12:03:54.647Z" }, + { url = "https://files.pythonhosted.org/packages/36/e1/a8933a72c45a87177fbde2696e0d0755c8c9062f8c077a961c6215fa27b1/fonttools-4.63.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:308f957cdeaf8abe4e5f2f124902ef405448af92c90f80e302a3b771c2e6116b", size = 4923946, upload-time = "2026-05-14T12:03:56.984Z" }, + { url = "https://files.pythonhosted.org/packages/27/60/872e6e233b8c5e8b41413796ff18b7fe479661bd40147e071b450dfad7a1/fonttools-4.63.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:bf00f21eb5fb721dbaf73d1e9da6d02a1af7768f2ebcf9798be98beab8ba90f6", size = 4962489, upload-time = "2026-05-14T12:03:59.443Z" }, + { url = "https://files.pythonhosted.org/packages/30/c4/83c24f2ec38b90cfda84bf4b1a1f49df80e84a1db4e7ac6e0d41bf23bc39/fonttools-4.63.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:c1aaa4b9c75798400ac043ce04d74e7830376c85095a5a6ed7cba2f17a266bf4", size = 5071870, upload-time = "2026-05-14T12:04:02.122Z" }, + { url = "https://files.pythonhosted.org/packages/de/40/3ae22b60ff1d41ce0bd044b31238cdc72cef99f28b976f1e128ebd618c9b/fonttools-4.63.0-cp314-cp314-win32.whl", hash = "sha256:22693918177bd9ceabec4736d338045f357769416fc6b0b2508eefef75b08616", size = 2295026, upload-time = "2026-05-14T12:04:04.47Z" }, + { url = "https://files.pythonhosted.org/packages/c3/d4/98078064ccc76b45cb0f6c002452011e93c4bd26f6850344f0951cc1fe89/fonttools-4.63.0-cp314-cp314-win_amd64.whl", hash = "sha256:7d782fac32985914c351556f68ac0855391572bcd87de50e05970d3cd4c96fc5", size = 2347454, upload-time = "2026-05-14T12:04:06.752Z" }, + { url = "https://files.pythonhosted.org/packages/49/4e/652d1580c5f4e39f7d103b0c793e4773129ad633dce4addd0cf4dfebde02/fonttools-4.63.0-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:6db5140a60a5d731d21ec076745b40a310607731b0a565b50776393188649001", size = 2958152, upload-time = "2026-05-14T12:04:08.706Z" }, + { url = "https://files.pythonhosted.org/packages/0e/55/ad864c9a9b219f552eb46b32cd7906c466e5a578ba0c3abfcc0fe7413eb6/fonttools-4.63.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:7d76edbff9014094dbf03bd2d074709dfa6ec7aba13d838c937a2b33d2d6a86e", size = 2460809, upload-time = "2026-05-14T12:04:10.783Z" }, + { url = "https://files.pythonhosted.org/packages/ea/2b/0aa8db70f18cf52e49b4ed5ecec68547f981160bf5ded3b5aed6faa0a6f9/fonttools-4.63.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0eac00b9118c3c2f87d272e45341871c5b3066baa3c86897fa634a7c3fb59096", size = 5148649, upload-time = "2026-05-14T12:04:12.747Z" }, + { url = "https://files.pythonhosted.org/packages/7f/63/18e4369c25043096f1048e0c9915951adc4f842bd81c6b18155824d6fa99/fonttools-4.63.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:51394295f1a51de8b5f30bdb1e1b9a4231536c7064ef5c6e211eec19fa36036f", size = 4932147, upload-time = "2026-05-14T12:04:14.806Z" }, + { url = "https://files.pythonhosted.org/packages/a1/3f/67f3eac2ffd8a98446c5022f8ed3864eac878a5ff7af8df4c8286dba16cc/fonttools-4.63.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:9e12f105d2b6342c559c298afb674006bb2893afc7102dcf8a1b55b0486b4e40", size = 5027237, upload-time = "2026-05-14T12:04:17.675Z" }, + { url = "https://files.pythonhosted.org/packages/1a/ba/4e6214cb38a7b04779e97bb7636de9a5c7f20af7018d03dee0b64c08510a/fonttools-4.63.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:796f27556dbe094c4824f75ca85267e4df776c79036c8441469a4df37038c196", size = 5053933, upload-time = "2026-05-14T12:04:20.818Z" }, + { url = "https://files.pythonhosted.org/packages/34/3b/214dcc19ee31d3d38fb5ad2755c11ef0514e5dc300bbaf41c0b69f393799/fonttools-4.63.0-cp314-cp314t-win32.whl", hash = "sha256:948428a275741f0b64b113c955425a953314f4b9ab9997f73a72c83e68e569c8", size = 2359326, upload-time = "2026-05-14T12:04:24.22Z" }, + { url = "https://files.pythonhosted.org/packages/dd/1e/3ff1a9b523058c2eeb6a9d50f5574e2a738200d0d94107d5bc4105e8da3f/fonttools-4.63.0-cp314-cp314t-win_amd64.whl", hash = "sha256:6d4741eb179121cab9eea4cb2393d24492373a260d7945006358c08cfbf45419", size = 2425829, upload-time = "2026-05-14T12:04:26.829Z" }, + { url = "https://files.pythonhosted.org/packages/2c/47/c99d5268f354002ce80f8d029cd9d7d872969da1de8b93d32de4dc56d6f4/fonttools-4.63.0-py3-none-any.whl", hash = "sha256:445af2eab030a16b9171ea8bdda7ebf7d96bda2df88ee182a464252f6e05e20d", size = 1164562, upload-time = "2026-05-14T12:04:29.092Z" }, +] + +[[package]] +name = "fqdn" +version = "1.5.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/30/3e/a80a8c077fd798951169626cde3e239adeba7dab75deb3555716415bd9b0/fqdn-1.5.1.tar.gz", hash = "sha256:105ed3677e767fb5ca086a0c1f4bb66ebc3c100be518f0e0d755d9eae164d89f", size = 6015, upload-time = "2021-03-11T07:16:29.08Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cf/58/8acf1b3e91c58313ce5cb67df61001fc9dcd21be4fadb76c1a2d540e09ed/fqdn-1.5.1-py3-none-any.whl", hash = "sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014", size = 9121, upload-time = "2021-03-11T07:16:28.351Z" }, +] + +[[package]] +name = "frozenlist" +version = "1.8.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2d/f5/c831fac6cc817d26fd54c7eaccd04ef7e0288806943f7cc5bbf69f3ac1f0/frozenlist-1.8.0.tar.gz", hash = "sha256:3ede829ed8d842f6cd48fc7081d7a41001a56f1f38603f9d49bf3020d59a31ad", size = 45875, upload-time = "2025-10-06T05:38:17.865Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2d/40/0832c31a37d60f60ed79e9dfb5a92e1e2af4f40a16a29abcc7992af9edff/frozenlist-1.8.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:8d92f1a84bb12d9e56f818b3a746f3efba93c1b63c8387a73dde655e1e42282a", size = 85717, upload-time = "2025-10-06T05:36:27.341Z" }, + { url = "https://files.pythonhosted.org/packages/30/ba/b0b3de23f40bc55a7057bd38434e25c34fa48e17f20ee273bbde5e0650f3/frozenlist-1.8.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:96153e77a591c8adc2ee805756c61f59fef4cf4073a9275ee86fe8cba41241f7", size = 49651, upload-time = "2025-10-06T05:36:28.855Z" }, + { url = "https://files.pythonhosted.org/packages/0c/ab/6e5080ee374f875296c4243c381bbdef97a9ac39c6e3ce1d5f7d42cb78d6/frozenlist-1.8.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f21f00a91358803399890ab167098c131ec2ddd5f8f5fd5fe9c9f2c6fcd91e40", size = 49417, upload-time = "2025-10-06T05:36:29.877Z" }, + { url = "https://files.pythonhosted.org/packages/d5/4e/e4691508f9477ce67da2015d8c00acd751e6287739123113a9fca6f1604e/frozenlist-1.8.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:fb30f9626572a76dfe4293c7194a09fb1fe93ba94c7d4f720dfae3b646b45027", size = 234391, upload-time = "2025-10-06T05:36:31.301Z" }, + { url = "https://files.pythonhosted.org/packages/40/76/c202df58e3acdf12969a7895fd6f3bc016c642e6726aa63bd3025e0fc71c/frozenlist-1.8.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:eaa352d7047a31d87dafcacbabe89df0aa506abb5b1b85a2fb91bc3faa02d822", size = 233048, upload-time = "2025-10-06T05:36:32.531Z" }, + { url = "https://files.pythonhosted.org/packages/f9/c0/8746afb90f17b73ca5979c7a3958116e105ff796e718575175319b5bb4ce/frozenlist-1.8.0-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:03ae967b4e297f58f8c774c7eabcce57fe3c2434817d4385c50661845a058121", size = 226549, upload-time = "2025-10-06T05:36:33.706Z" }, + { url = "https://files.pythonhosted.org/packages/7e/eb/4c7eefc718ff72f9b6c4893291abaae5fbc0c82226a32dcd8ef4f7a5dbef/frozenlist-1.8.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:f6292f1de555ffcc675941d65fffffb0a5bcd992905015f85d0592201793e0e5", size = 239833, upload-time = "2025-10-06T05:36:34.947Z" }, + { url = "https://files.pythonhosted.org/packages/c2/4e/e5c02187cf704224f8b21bee886f3d713ca379535f16893233b9d672ea71/frozenlist-1.8.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:29548f9b5b5e3460ce7378144c3010363d8035cea44bc0bf02d57f5a685e084e", size = 245363, upload-time = "2025-10-06T05:36:36.534Z" }, + { url = "https://files.pythonhosted.org/packages/1f/96/cb85ec608464472e82ad37a17f844889c36100eed57bea094518bf270692/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:ec3cc8c5d4084591b4237c0a272cc4f50a5b03396a47d9caaf76f5d7b38a4f11", size = 229314, upload-time = "2025-10-06T05:36:38.582Z" }, + { url = "https://files.pythonhosted.org/packages/5d/6f/4ae69c550e4cee66b57887daeebe006fe985917c01d0fff9caab9883f6d0/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:517279f58009d0b1f2e7c1b130b377a349405da3f7621ed6bfae50b10adf20c1", size = 243365, upload-time = "2025-10-06T05:36:40.152Z" }, + { url = "https://files.pythonhosted.org/packages/7a/58/afd56de246cf11780a40a2c28dc7cbabbf06337cc8ddb1c780a2d97e88d8/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:db1e72ede2d0d7ccb213f218df6a078a9c09a7de257c2fe8fcef16d5925230b1", size = 237763, upload-time = "2025-10-06T05:36:41.355Z" }, + { url = "https://files.pythonhosted.org/packages/cb/36/cdfaf6ed42e2644740d4a10452d8e97fa1c062e2a8006e4b09f1b5fd7d63/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:b4dec9482a65c54a5044486847b8a66bf10c9cb4926d42927ec4e8fd5db7fed8", size = 240110, upload-time = "2025-10-06T05:36:42.716Z" }, + { url = "https://files.pythonhosted.org/packages/03/a8/9ea226fbefad669f11b52e864c55f0bd57d3c8d7eb07e9f2e9a0b39502e1/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:21900c48ae04d13d416f0e1e0c4d81f7931f73a9dfa0b7a8746fb2fe7dd970ed", size = 233717, upload-time = "2025-10-06T05:36:44.251Z" }, + { url = "https://files.pythonhosted.org/packages/1e/0b/1b5531611e83ba7d13ccc9988967ea1b51186af64c42b7a7af465dcc9568/frozenlist-1.8.0-cp313-cp313-win32.whl", hash = "sha256:8b7b94a067d1c504ee0b16def57ad5738701e4ba10cec90529f13fa03c833496", size = 39628, upload-time = "2025-10-06T05:36:45.423Z" }, + { url = "https://files.pythonhosted.org/packages/d8/cf/174c91dbc9cc49bc7b7aab74d8b734e974d1faa8f191c74af9b7e80848e6/frozenlist-1.8.0-cp313-cp313-win_amd64.whl", hash = "sha256:878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231", size = 43882, upload-time = "2025-10-06T05:36:46.796Z" }, + { url = "https://files.pythonhosted.org/packages/c1/17/502cd212cbfa96eb1388614fe39a3fc9ab87dbbe042b66f97acb57474834/frozenlist-1.8.0-cp313-cp313-win_arm64.whl", hash = "sha256:44389d135b3ff43ba8cc89ff7f51f5a0bb6b63d829c8300f79a2fe4fe61bcc62", size = 39676, upload-time = "2025-10-06T05:36:47.8Z" }, + { url = "https://files.pythonhosted.org/packages/d2/5c/3bbfaa920dfab09e76946a5d2833a7cbdf7b9b4a91c714666ac4855b88b4/frozenlist-1.8.0-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:e25ac20a2ef37e91c1b39938b591457666a0fa835c7783c3a8f33ea42870db94", size = 89235, upload-time = "2025-10-06T05:36:48.78Z" }, + { url = "https://files.pythonhosted.org/packages/d2/d6/f03961ef72166cec1687e84e8925838442b615bd0b8854b54923ce5b7b8a/frozenlist-1.8.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:07cdca25a91a4386d2e76ad992916a85038a9b97561bf7a3fd12d5d9ce31870c", size = 50742, upload-time = "2025-10-06T05:36:49.837Z" }, + { url = "https://files.pythonhosted.org/packages/1e/bb/a6d12b7ba4c3337667d0e421f7181c82dda448ce4e7ad7ecd249a16fa806/frozenlist-1.8.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:4e0c11f2cc6717e0a741f84a527c52616140741cd812a50422f83dc31749fb52", size = 51725, upload-time = "2025-10-06T05:36:50.851Z" }, + { url = "https://files.pythonhosted.org/packages/bc/71/d1fed0ffe2c2ccd70b43714c6cab0f4188f09f8a67a7914a6b46ee30f274/frozenlist-1.8.0-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:b3210649ee28062ea6099cfda39e147fa1bc039583c8ee4481cb7811e2448c51", size = 284533, upload-time = "2025-10-06T05:36:51.898Z" }, + { url = "https://files.pythonhosted.org/packages/c9/1f/fb1685a7b009d89f9bf78a42d94461bc06581f6e718c39344754a5d9bada/frozenlist-1.8.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:581ef5194c48035a7de2aefc72ac6539823bb71508189e5de01d60c9dcd5fa65", size = 292506, upload-time = "2025-10-06T05:36:53.101Z" }, + { url = "https://files.pythonhosted.org/packages/e6/3b/b991fe1612703f7e0d05c0cf734c1b77aaf7c7d321df4572e8d36e7048c8/frozenlist-1.8.0-cp313-cp313t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:3ef2d026f16a2b1866e1d86fc4e1291e1ed8a387b2c333809419a2f8b3a77b82", size = 274161, upload-time = "2025-10-06T05:36:54.309Z" }, + { url = "https://files.pythonhosted.org/packages/ca/ec/c5c618767bcdf66e88945ec0157d7f6c4a1322f1473392319b7a2501ded7/frozenlist-1.8.0-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:5500ef82073f599ac84d888e3a8c1f77ac831183244bfd7f11eaa0289fb30714", size = 294676, upload-time = "2025-10-06T05:36:55.566Z" }, + { url = "https://files.pythonhosted.org/packages/7c/ce/3934758637d8f8a88d11f0585d6495ef54b2044ed6ec84492a91fa3b27aa/frozenlist-1.8.0-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:50066c3997d0091c411a66e710f4e11752251e6d2d73d70d8d5d4c76442a199d", size = 300638, upload-time = "2025-10-06T05:36:56.758Z" }, + { url = "https://files.pythonhosted.org/packages/fc/4f/a7e4d0d467298f42de4b41cbc7ddaf19d3cfeabaf9ff97c20c6c7ee409f9/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:5c1c8e78426e59b3f8005e9b19f6ff46e5845895adbde20ece9218319eca6506", size = 283067, upload-time = "2025-10-06T05:36:57.965Z" }, + { url = "https://files.pythonhosted.org/packages/dc/48/c7b163063d55a83772b268e6d1affb960771b0e203b632cfe09522d67ea5/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:eefdba20de0d938cec6a89bd4d70f346a03108a19b9df4248d3cf0d88f1b0f51", size = 292101, upload-time = "2025-10-06T05:36:59.237Z" }, + { url = "https://files.pythonhosted.org/packages/9f/d0/2366d3c4ecdc2fd391e0afa6e11500bfba0ea772764d631bbf82f0136c9d/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:cf253e0e1c3ceb4aaff6df637ce033ff6535fb8c70a764a8f46aafd3d6ab798e", size = 289901, upload-time = "2025-10-06T05:37:00.811Z" }, + { url = "https://files.pythonhosted.org/packages/b8/94/daff920e82c1b70e3618a2ac39fbc01ae3e2ff6124e80739ce5d71c9b920/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:032efa2674356903cd0261c4317a561a6850f3ac864a63fc1583147fb05a79b0", size = 289395, upload-time = "2025-10-06T05:37:02.115Z" }, + { url = "https://files.pythonhosted.org/packages/e3/20/bba307ab4235a09fdcd3cc5508dbabd17c4634a1af4b96e0f69bfe551ebd/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:6da155091429aeba16851ecb10a9104a108bcd32f6c1642867eadaee401c1c41", size = 283659, upload-time = "2025-10-06T05:37:03.711Z" }, + { url = "https://files.pythonhosted.org/packages/fd/00/04ca1c3a7a124b6de4f8a9a17cc2fcad138b4608e7a3fc5877804b8715d7/frozenlist-1.8.0-cp313-cp313t-win32.whl", hash = "sha256:0f96534f8bfebc1a394209427d0f8a63d343c9779cda6fc25e8e121b5fd8555b", size = 43492, upload-time = "2025-10-06T05:37:04.915Z" }, + { url = "https://files.pythonhosted.org/packages/59/5e/c69f733a86a94ab10f68e496dc6b7e8bc078ebb415281d5698313e3af3a1/frozenlist-1.8.0-cp313-cp313t-win_amd64.whl", hash = "sha256:5d63a068f978fc69421fb0e6eb91a9603187527c86b7cd3f534a5b77a592b888", size = 48034, upload-time = "2025-10-06T05:37:06.343Z" }, + { url = "https://files.pythonhosted.org/packages/16/6c/be9d79775d8abe79b05fa6d23da99ad6e7763a1d080fbae7290b286093fd/frozenlist-1.8.0-cp313-cp313t-win_arm64.whl", hash = "sha256:bf0a7e10b077bf5fb9380ad3ae8ce20ef919a6ad93b4552896419ac7e1d8e042", size = 41749, upload-time = "2025-10-06T05:37:07.431Z" }, + { url = "https://files.pythonhosted.org/packages/f1/c8/85da824b7e7b9b6e7f7705b2ecaf9591ba6f79c1177f324c2735e41d36a2/frozenlist-1.8.0-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:cee686f1f4cadeb2136007ddedd0aaf928ab95216e7691c63e50a8ec066336d0", size = 86127, upload-time = "2025-10-06T05:37:08.438Z" }, + { url = "https://files.pythonhosted.org/packages/8e/e8/a1185e236ec66c20afd72399522f142c3724c785789255202d27ae992818/frozenlist-1.8.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:119fb2a1bd47307e899c2fac7f28e85b9a543864df47aa7ec9d3c1b4545f096f", size = 49698, upload-time = "2025-10-06T05:37:09.48Z" }, + { url = "https://files.pythonhosted.org/packages/a1/93/72b1736d68f03fda5fdf0f2180fb6caaae3894f1b854d006ac61ecc727ee/frozenlist-1.8.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:4970ece02dbc8c3a92fcc5228e36a3e933a01a999f7094ff7c23fbd2beeaa67c", size = 49749, upload-time = "2025-10-06T05:37:10.569Z" }, + { url = "https://files.pythonhosted.org/packages/a7/b2/fabede9fafd976b991e9f1b9c8c873ed86f202889b864756f240ce6dd855/frozenlist-1.8.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:cba69cb73723c3f329622e34bdbf5ce1f80c21c290ff04256cff1cd3c2036ed2", size = 231298, upload-time = "2025-10-06T05:37:11.993Z" }, + { url = "https://files.pythonhosted.org/packages/3a/3b/d9b1e0b0eed36e70477ffb8360c49c85c8ca8ef9700a4e6711f39a6e8b45/frozenlist-1.8.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:778a11b15673f6f1df23d9586f83c4846c471a8af693a22e066508b77d201ec8", size = 232015, upload-time = "2025-10-06T05:37:13.194Z" }, + { url = "https://files.pythonhosted.org/packages/dc/94/be719d2766c1138148564a3960fc2c06eb688da592bdc25adcf856101be7/frozenlist-1.8.0-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:0325024fe97f94c41c08872db482cf8ac4800d80e79222c6b0b7b162d5b13686", size = 225038, upload-time = "2025-10-06T05:37:14.577Z" }, + { url = "https://files.pythonhosted.org/packages/e4/09/6712b6c5465f083f52f50cf74167b92d4ea2f50e46a9eea0523d658454ae/frozenlist-1.8.0-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:97260ff46b207a82a7567b581ab4190bd4dfa09f4db8a8b49d1a958f6aa4940e", size = 240130, upload-time = "2025-10-06T05:37:15.781Z" }, + { url = "https://files.pythonhosted.org/packages/f8/d4/cd065cdcf21550b54f3ce6a22e143ac9e4836ca42a0de1022da8498eac89/frozenlist-1.8.0-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:54b2077180eb7f83dd52c40b2750d0a9f175e06a42e3213ce047219de902717a", size = 242845, upload-time = "2025-10-06T05:37:17.037Z" }, + { url = "https://files.pythonhosted.org/packages/62/c3/f57a5c8c70cd1ead3d5d5f776f89d33110b1addae0ab010ad774d9a44fb9/frozenlist-1.8.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:2f05983daecab868a31e1da44462873306d3cbfd76d1f0b5b69c473d21dbb128", size = 229131, upload-time = "2025-10-06T05:37:18.221Z" }, + { url = "https://files.pythonhosted.org/packages/6c/52/232476fe9cb64f0742f3fde2b7d26c1dac18b6d62071c74d4ded55e0ef94/frozenlist-1.8.0-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:33f48f51a446114bc5d251fb2954ab0164d5be02ad3382abcbfe07e2531d650f", size = 240542, upload-time = "2025-10-06T05:37:19.771Z" }, + { url = "https://files.pythonhosted.org/packages/5f/85/07bf3f5d0fb5414aee5f47d33c6f5c77bfe49aac680bfece33d4fdf6a246/frozenlist-1.8.0-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:154e55ec0655291b5dd1b8731c637ecdb50975a2ae70c606d100750a540082f7", size = 237308, upload-time = "2025-10-06T05:37:20.969Z" }, + { url = "https://files.pythonhosted.org/packages/11/99/ae3a33d5befd41ac0ca2cc7fd3aa707c9c324de2e89db0e0f45db9a64c26/frozenlist-1.8.0-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:4314debad13beb564b708b4a496020e5306c7333fa9a3ab90374169a20ffab30", size = 238210, upload-time = "2025-10-06T05:37:22.252Z" }, + { url = "https://files.pythonhosted.org/packages/b2/60/b1d2da22f4970e7a155f0adde9b1435712ece01b3cd45ba63702aea33938/frozenlist-1.8.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:073f8bf8becba60aa931eb3bc420b217bb7d5b8f4750e6f8b3be7f3da85d38b7", size = 231972, upload-time = "2025-10-06T05:37:23.5Z" }, + { url = "https://files.pythonhosted.org/packages/3f/ab/945b2f32de889993b9c9133216c068b7fcf257d8595a0ac420ac8677cab0/frozenlist-1.8.0-cp314-cp314-win32.whl", hash = "sha256:bac9c42ba2ac65ddc115d930c78d24ab8d4f465fd3fc473cdedfccadb9429806", size = 40536, upload-time = "2025-10-06T05:37:25.581Z" }, + { url = "https://files.pythonhosted.org/packages/59/ad/9caa9b9c836d9ad6f067157a531ac48b7d36499f5036d4141ce78c230b1b/frozenlist-1.8.0-cp314-cp314-win_amd64.whl", hash = "sha256:3e0761f4d1a44f1d1a47996511752cf3dcec5bbdd9cc2b4fe595caf97754b7a0", size = 44330, upload-time = "2025-10-06T05:37:26.928Z" }, + { url = "https://files.pythonhosted.org/packages/82/13/e6950121764f2676f43534c555249f57030150260aee9dcf7d64efda11dd/frozenlist-1.8.0-cp314-cp314-win_arm64.whl", hash = "sha256:d1eaff1d00c7751b7c6662e9c5ba6eb2c17a2306ba5e2a37f24ddf3cc953402b", size = 40627, upload-time = "2025-10-06T05:37:28.075Z" }, + { url = "https://files.pythonhosted.org/packages/c0/c7/43200656ecc4e02d3f8bc248df68256cd9572b3f0017f0a0c4e93440ae23/frozenlist-1.8.0-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:d3bb933317c52d7ea5004a1c442eef86f426886fba134ef8cf4226ea6ee1821d", size = 89238, upload-time = "2025-10-06T05:37:29.373Z" }, + { url = "https://files.pythonhosted.org/packages/d1/29/55c5f0689b9c0fb765055629f472c0de484dcaf0acee2f7707266ae3583c/frozenlist-1.8.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:8009897cdef112072f93a0efdce29cd819e717fd2f649ee3016efd3cd885a7ed", size = 50738, upload-time = "2025-10-06T05:37:30.792Z" }, + { url = "https://files.pythonhosted.org/packages/ba/7d/b7282a445956506fa11da8c2db7d276adcbf2b17d8bb8407a47685263f90/frozenlist-1.8.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:2c5dcbbc55383e5883246d11fd179782a9d07a986c40f49abe89ddf865913930", size = 51739, upload-time = "2025-10-06T05:37:32.127Z" }, + { url = "https://files.pythonhosted.org/packages/62/1c/3d8622e60d0b767a5510d1d3cf21065b9db874696a51ea6d7a43180a259c/frozenlist-1.8.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:39ecbc32f1390387d2aa4f5a995e465e9e2f79ba3adcac92d68e3e0afae6657c", size = 284186, upload-time = "2025-10-06T05:37:33.21Z" }, + { url = "https://files.pythonhosted.org/packages/2d/14/aa36d5f85a89679a85a1d44cd7a6657e0b1c75f61e7cad987b203d2daca8/frozenlist-1.8.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:92db2bf818d5cc8d9c1f1fc56b897662e24ea5adb36ad1f1d82875bd64e03c24", size = 292196, upload-time = "2025-10-06T05:37:36.107Z" }, + { url = "https://files.pythonhosted.org/packages/05/23/6bde59eb55abd407d34f77d39a5126fb7b4f109a3f611d3929f14b700c66/frozenlist-1.8.0-cp314-cp314t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:2dc43a022e555de94c3b68a4ef0b11c4f747d12c024a520c7101709a2144fb37", size = 273830, upload-time = "2025-10-06T05:37:37.663Z" }, + { url = "https://files.pythonhosted.org/packages/d2/3f/22cff331bfad7a8afa616289000ba793347fcd7bc275f3b28ecea2a27909/frozenlist-1.8.0-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:cb89a7f2de3602cfed448095bab3f178399646ab7c61454315089787df07733a", size = 294289, upload-time = "2025-10-06T05:37:39.261Z" }, + { url = "https://files.pythonhosted.org/packages/a4/89/5b057c799de4838b6c69aa82b79705f2027615e01be996d2486a69ca99c4/frozenlist-1.8.0-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:33139dc858c580ea50e7e60a1b0ea003efa1fd42e6ec7fdbad78fff65fad2fd2", size = 300318, upload-time = "2025-10-06T05:37:43.213Z" }, + { url = "https://files.pythonhosted.org/packages/30/de/2c22ab3eb2a8af6d69dc799e48455813bab3690c760de58e1bf43b36da3e/frozenlist-1.8.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:168c0969a329b416119507ba30b9ea13688fafffac1b7822802537569a1cb0ef", size = 282814, upload-time = "2025-10-06T05:37:45.337Z" }, + { url = "https://files.pythonhosted.org/packages/59/f7/970141a6a8dbd7f556d94977858cfb36fa9b66e0892c6dd780d2219d8cd8/frozenlist-1.8.0-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:28bd570e8e189d7f7b001966435f9dac6718324b5be2990ac496cf1ea9ddb7fe", size = 291762, upload-time = "2025-10-06T05:37:46.657Z" }, + { url = "https://files.pythonhosted.org/packages/c1/15/ca1adae83a719f82df9116d66f5bb28bb95557b3951903d39135620ef157/frozenlist-1.8.0-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:b2a095d45c5d46e5e79ba1e5b9cb787f541a8dee0433836cea4b96a2c439dcd8", size = 289470, upload-time = "2025-10-06T05:37:47.946Z" }, + { url = "https://files.pythonhosted.org/packages/ac/83/dca6dc53bf657d371fbc88ddeb21b79891e747189c5de990b9dfff2ccba1/frozenlist-1.8.0-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:eab8145831a0d56ec9c4139b6c3e594c7a83c2c8be25d5bcf2d86136a532287a", size = 289042, upload-time = "2025-10-06T05:37:49.499Z" }, + { url = "https://files.pythonhosted.org/packages/96/52/abddd34ca99be142f354398700536c5bd315880ed0a213812bc491cff5e4/frozenlist-1.8.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:974b28cf63cc99dfb2188d8d222bc6843656188164848c4f679e63dae4b0708e", size = 283148, upload-time = "2025-10-06T05:37:50.745Z" }, + { url = "https://files.pythonhosted.org/packages/af/d3/76bd4ed4317e7119c2b7f57c3f6934aba26d277acc6309f873341640e21f/frozenlist-1.8.0-cp314-cp314t-win32.whl", hash = "sha256:342c97bf697ac5480c0a7ec73cd700ecfa5a8a40ac923bd035484616efecc2df", size = 44676, upload-time = "2025-10-06T05:37:52.222Z" }, + { url = "https://files.pythonhosted.org/packages/89/76/c615883b7b521ead2944bb3480398cbb07e12b7b4e4d073d3752eb721558/frozenlist-1.8.0-cp314-cp314t-win_amd64.whl", hash = "sha256:06be8f67f39c8b1dc671f5d83aaefd3358ae5cdcf8314552c57e7ed3e6475bdd", size = 49451, upload-time = "2025-10-06T05:37:53.425Z" }, + { url = "https://files.pythonhosted.org/packages/e0/a3/5982da14e113d07b325230f95060e2169f5311b1017ea8af2a29b374c289/frozenlist-1.8.0-cp314-cp314t-win_arm64.whl", hash = "sha256:102e6314ca4da683dca92e3b1355490fed5f313b768500084fbe6371fddfdb79", size = 42507, upload-time = "2025-10-06T05:37:54.513Z" }, + { url = "https://files.pythonhosted.org/packages/9a/9a/e35b4a917281c0b8419d4207f4334c8e8c5dbf4f3f5f9ada73958d937dcc/frozenlist-1.8.0-py3-none-any.whl", hash = "sha256:0c18a16eab41e82c295618a77502e17b195883241c563b00f0aa5106fc4eaa0d", size = 13409, upload-time = "2025-10-06T05:38:16.721Z" }, +] + +[[package]] +name = "fsspec" +version = "2026.4.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d5/8d/1c51c094345df128ca4a990d633fe1a0ff28726c9e6b3c41ba65087bba1d/fsspec-2026.4.0.tar.gz", hash = "sha256:301d8ac70ae90ef3ad05dcf94d6c3754a097f9b5fe4667d2787aa359ec7df7e4", size = 312760, upload-time = "2026-04-29T20:42:38.635Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d5/0c/043d5e551459da400957a1395e0febbf771446ff34291afcbe3d8be2a279/fsspec-2026.4.0-py3-none-any.whl", hash = "sha256:11ef7bb35dab8a394fde6e608221d5cf3e8499401c249bebaeaad760a1a8dec2", size = 203402, upload-time = "2026-04-29T20:42:36.842Z" }, +] + +[[package]] +name = "h11" +version = "0.16.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/01/ee/02a2c011bdab74c6fb3c75474d40b3052059d95df7e73351460c8588d963/h11-0.16.0.tar.gz", hash = "sha256:4e35b956cf45792e4caa5885e69fba00bdbc6ffafbfa020300e549b208ee5ff1", size = 101250, upload-time = "2025-04-24T03:35:25.427Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl", hash = "sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86", size = 37515, upload-time = "2025-04-24T03:35:24.344Z" }, +] + +[[package]] +name = "hf-xet" +version = "1.5.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/74/d8/5c06fc76461418326a7decf8367480c35be11a41fd938633929c60a9ec6b/hf_xet-1.5.0.tar.gz", hash = "sha256:e0fb0a34d9f406eed88233e829a67ec016bec5af19e480eac65a233ea289a948", size = 837196, upload-time = "2026-05-06T06:18:15.583Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/68/9b/6912c99070915a4f28119e3c5b52a9abd1eec0ad5cb293b8c967a0c6f5a2/hf_xet-1.5.0-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:7d70fe2ce97b9db73b9c9b9c81fe3693640aec83416a966c446afea54acfae3c", size = 4023383, upload-time = "2026-05-06T06:17:53.947Z" }, + { url = "https://files.pythonhosted.org/packages/0f/6d/9563cfde59b5d8128a9c7ec972a087f4c782e4f7bac5a85234edfd5d5e49/hf_xet-1.5.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:73a0dae8c71de3b0633a45c73f4a4a5ed09e94b43441d82981a781d4f12baa42", size = 3792751, upload-time = "2026-05-06T06:17:51.791Z" }, + { url = "https://files.pythonhosted.org/packages/07/a5/ed5a0cf35b49a0571af5a8f53416dad1877a718c021c9937c3a53cb45781/hf_xet-1.5.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:a60290ec57e9b71767fba7c3645ddafdd0759974b540441510c629c6db6db24a", size = 4456058, upload-time = "2026-05-06T06:17:40.735Z" }, + { url = "https://files.pythonhosted.org/packages/60/fb/3ae8bf2a7a37a4197d0195d7247fd25b3952e15cb8a599e285dfaa6f52b3/hf_xet-1.5.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:e5de0f6deada0dada870bb376a11bcd1f08abf3a968a6d118f33e72d1b1eb480", size = 4250783, upload-time = "2026-05-06T06:17:38.412Z" }, + { url = "https://files.pythonhosted.org/packages/a2/9b/8bae40d4d91525085137196e84eb0ed49cf65b5e96e5c3ecdadd8bd0fac2/hf_xet-1.5.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:c799d49f1a5544a0ef7591c0ee75e0d6b93d6f56dc7a4979f59f7518d2872216", size = 4445594, upload-time = "2026-05-06T06:18:04.219Z" }, + { url = "https://files.pythonhosted.org/packages/13/59/c74efbbd4e8728172b2cc72a2bc014d2947a4b7bdced932fbd3f5da1a4e5/hf_xet-1.5.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:2baea1b0b989e5c152fe81425f7745ddc8901280ba3d97c98d8cdece7b706c60", size = 4663995, upload-time = "2026-05-06T06:18:06.1Z" }, + { url = "https://files.pythonhosted.org/packages/73/32/8e1e0410af64cda9b139d1dcebdc993a8ff9c8c7c0e2696ae356d75ccc0d/hf_xet-1.5.0-cp313-cp313t-win_amd64.whl", hash = "sha256:526345b3ed45f374f6317349df489167606736c876241ba984105afe7fd4839d", size = 3966608, upload-time = "2026-05-06T06:18:19.74Z" }, + { url = "https://files.pythonhosted.org/packages/fc/34/a8febc8f4edbea8b3e21b02ebc8b628679b84ba7e45cde624a7736b51500/hf_xet-1.5.0-cp313-cp313t-win_arm64.whl", hash = "sha256:786d28e2eb8315d5035544b9d137b4a842d600c434bb91bf7d0d953cce906ad4", size = 3796946, upload-time = "2026-05-06T06:18:17.568Z" }, + { url = "https://files.pythonhosted.org/packages/2a/20/8fc8996afe5815fa1a6be8e9e5c02f24500f409d599e905800d498a4e14d/hf_xet-1.5.0-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:872d5601e6deea30d15865ede55d29eac6daf5a534ab417b99b6ef6b076dd96c", size = 4023495, upload-time = "2026-05-06T06:18:01.94Z" }, + { url = "https://files.pythonhosted.org/packages/32/6a/93d84463c00cecb561a7508aa6303e35ee2894294eac14245526924415fe/hf_xet-1.5.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:9929561f5abf4581c8ea79587881dfef6b8abb2a0d8a51915936fc2a614f4e73", size = 3792731, upload-time = "2026-05-06T06:18:00.021Z" }, + { url = "https://files.pythonhosted.org/packages/9d/5a/8ec8e0c863b382d00b3c2e2af6ded6b06371be617144a625903a6d562f4b/hf_xet-1.5.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f7b7bbae318e583a86fb21e5a4a175d6721d628a2874f4bd022d0e660c32a682", size = 4456738, upload-time = "2026-05-06T06:17:49.574Z" }, + { url = "https://files.pythonhosted.org/packages/c5/ca/f7effa1a67717da2bcc6b6c28f71c6ca648c77acaec4e2c32f40cbe16d85/hf_xet-1.5.0-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:cf7b2dc6f31a4ea754bb50f74cde482dcf5d366d184076d8530b9872787f3761", size = 4251622, upload-time = "2026-05-06T06:17:47.096Z" }, + { url = "https://files.pythonhosted.org/packages/65/f2/19247dba3e231cf77dec59ddfb878f00057635ff773d099c9b59d37812c3/hf_xet-1.5.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:8dbcbab554c9ef158ef2c991545c3e970ddd8cc7acdcd0a78c5a41095dab4ded", size = 4445667, upload-time = "2026-05-06T06:18:11.983Z" }, + { url = "https://files.pythonhosted.org/packages/7f/64/6f116801a3bcfb6f59f5c251f48cadc47ea54026441c4a385079286a94fa/hf_xet-1.5.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:5906bf7718d3636dc13402914736abe723492cb730f744834f5f5b67d3a12702", size = 4664619, upload-time = "2026-05-06T06:18:13.771Z" }, + { url = "https://files.pythonhosted.org/packages/5c/e8/069542d37946ed08669b127e1496fa99e78196d71de8d41eda5e9f1b7a58/hf_xet-1.5.0-cp314-cp314t-win_amd64.whl", hash = "sha256:5f3dc2248fc01cc0a00cd392ab497f1ca373fcbc7e3f2da1f452480b384e839e", size = 3966802, upload-time = "2026-05-06T06:18:28.162Z" }, + { url = "https://files.pythonhosted.org/packages/f9/91/fc6fdec27b14d04e88c386ac0a0129732b53fa23f7c4a78f4b83a039c567/hf_xet-1.5.0-cp314-cp314t-win_arm64.whl", hash = "sha256:b285cea1b5bab46b758772716ba8d6854a1a0310fed1c249d678a8b38601e5a0", size = 3797168, upload-time = "2026-05-06T06:18:26.287Z" }, + { url = "https://files.pythonhosted.org/packages/3d/fb/69ff198a82cae7eb1a69fb84d93b3a3e4816564d76817fe541ddc96874eb/hf_xet-1.5.0-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:dad0dc84e941b8ba3c860659fe1fdc35c049d47cce293f003287757e971a8f56", size = 4030814, upload-time = "2026-05-06T06:17:57.933Z" }, + { url = "https://files.pythonhosted.org/packages/9b/ff/edcc2b40162bef3ff78e14ab637e5f3b89243d6aee72f5949d3bb6a5af83/hf_xet-1.5.0-cp37-abi3-macosx_11_0_arm64.whl", hash = "sha256:fd6e5a9b0fdac4ed03ed45ef79254a655b1aaab514a02202617fbf643f5fdf7a", size = 3798444, upload-time = "2026-05-06T06:17:55.79Z" }, + { url = "https://files.pythonhosted.org/packages/49/4d/103f76b04310e5e57656696cc184690d20c466af0bca3ca88f8c8ea5d4f3/hf_xet-1.5.0-cp37-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:3531b1823a0e6d77d80f9ed15ca0e00f0d115094f8ac033d5cae88f4564cc949", size = 4465986, upload-time = "2026-05-06T06:17:44.886Z" }, + { url = "https://files.pythonhosted.org/packages/c4/a2/546f47f464737b3edbab6f8ddb57f2599b93d2cbb66f06abb475ccb48651/hf_xet-1.5.0-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:9a0ee58cd18d5ea799f7ed11290bbccbe56bdd8b1d97ca74b9cc49a3945d7a3b", size = 4259865, upload-time = "2026-05-06T06:17:42.639Z" }, + { url = "https://files.pythonhosted.org/packages/95/7f/1be593c1f28613be2e196473481cd81bfc5910795e30a34e8f744f6cac4f/hf_xet-1.5.0-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:1e60df5a42e9bed8628b6416af2cba4cba57ae9f02de226a06b020d98e1aab18", size = 4459835, upload-time = "2026-05-06T06:18:08.026Z" }, + { url = "https://files.pythonhosted.org/packages/aa/b2/703569fc881f3284487e68cda7b42179978480da3c438042a6bbbb4a671c/hf_xet-1.5.0-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:4b35549ce62601b84da4ff9b24d970032ace3d4430f52d91bcbb26c901d6c690", size = 4672414, upload-time = "2026-05-06T06:18:09.864Z" }, + { url = "https://files.pythonhosted.org/packages/af/37/1b6def445c567286b50aa3b33828158e135b1be44938dde59f11382a500c/hf_xet-1.5.0-cp37-abi3-win_amd64.whl", hash = "sha256:2806c7c17b4d23f8d88f7c4814f838c3b6150773fe339c20af23e1cfaf2797e4", size = 3977238, upload-time = "2026-05-06T06:18:23.621Z" }, + { url = "https://files.pythonhosted.org/packages/62/94/3b66b148778ee100dcfd69c2ca22b57b41b44d3063ceec934f209e9184ce/hf_xet-1.5.0-cp37-abi3-win_arm64.whl", hash = "sha256:b6c9df403040248c76d808d3e047d64db2d923bae593eb244c41e425cf6cd7be", size = 3806916, upload-time = "2026-05-06T06:18:21.7Z" }, +] + +[[package]] +name = "httpcore" +version = "1.0.9" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "certifi" }, + { name = "h11" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/06/94/82699a10bca87a5556c9c59b5963f2d039dbd239f25bc2a63907a05a14cb/httpcore-1.0.9.tar.gz", hash = "sha256:6e34463af53fd2ab5d807f399a9b45ea31c3dfa2276f15a2c3f00afff6e176e8", size = 85484, upload-time = "2025-04-24T22:06:22.219Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl", hash = "sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55", size = 78784, upload-time = "2025-04-24T22:06:20.566Z" }, +] + +[[package]] +name = "httpx" +version = "0.28.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "certifi" }, + { name = "httpcore" }, + { name = "idna" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b1/df/48c586a5fe32a0f01324ee087459e112ebb7224f646c0b5023f5e79e9956/httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc", size = 141406, upload-time = "2024-12-06T15:37:23.222Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad", size = 73517, upload-time = "2024-12-06T15:37:21.509Z" }, +] + +[[package]] +name = "httpx-sse" +version = "0.4.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0f/4c/751061ffa58615a32c31b2d82e8482be8dd4a89154f003147acee90f2be9/httpx_sse-0.4.3.tar.gz", hash = "sha256:9b1ed0127459a66014aec3c56bebd93da3c1bc8bb6618c8082039a44889a755d", size = 15943, upload-time = "2025-10-10T21:48:22.271Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d2/fd/6668e5aec43ab844de6fc74927e155a3b37bf40d7c3790e49fc0406b6578/httpx_sse-0.4.3-py3-none-any.whl", hash = "sha256:0ac1c9fe3c0afad2e0ebb25a934a59f4c7823b60792691f779fad2c5568830fc", size = 8960, upload-time = "2025-10-10T21:48:21.158Z" }, +] + +[[package]] +name = "huggingface-hub" +version = "0.36.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "filelock" }, + { name = "fsspec" }, + { name = "hf-xet", marker = "platform_machine == 'aarch64' or platform_machine == 'amd64' or platform_machine == 'arm64' or platform_machine == 'x86_64'" }, + { name = "packaging" }, + { name = "pyyaml" }, + { name = "requests" }, + { name = "tqdm" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/7c/b7/8cb61d2eece5fb05a83271da168186721c450eb74e3c31f7ef3169fa475b/huggingface_hub-0.36.2.tar.gz", hash = "sha256:1934304d2fb224f8afa3b87007d58501acfda9215b334eed53072dd5e815ff7a", size = 649782, upload-time = "2026-02-06T09:24:13.098Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a8/af/48ac8483240de756d2438c380746e7130d1c6f75802ef22f3c6d49982787/huggingface_hub-0.36.2-py3-none-any.whl", hash = "sha256:48f0c8eac16145dfce371e9d2d7772854a4f591bcb56c9cf548accf531d54270", size = 566395, upload-time = "2026-02-06T09:24:11.133Z" }, +] + +[[package]] +name = "idna" +version = "3.16" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1a/88/bcf9709822fe69d02c2a6a77956c98ce6ea8ca8767a9aadcedc7eb6a2390/idna-3.16.tar.gz", hash = "sha256:d7a6da03db833450fca25d2358ac9ff06cd624577a4aea3a596d5c0f77b8e03d", size = 203770, upload-time = "2026-05-22T00:16:18.781Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/94/16/70255075a9859a0e3adb789b68ceb0e210dec03934245fd98d248226572f/idna-3.16-py3-none-any.whl", hash = "sha256:cc246e3a3f89580c3a951b5ad298ca4638078b2cdd4f115654332b5c26daded5", size = 74165, upload-time = "2026-05-22T00:16:16.698Z" }, +] + +[[package]] +name = "imageio" +version = "2.37.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, + { name = "pillow" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b1/84/93bcd1300216ea50811cee96873b84a1bebf8d0489ffaf7f2a3756bab866/imageio-2.37.3.tar.gz", hash = "sha256:bbb37efbfc4c400fcd534b367b91fcd66d5da639aaa138034431a1c5e0a41451", size = 389673, upload-time = "2026-03-09T11:31:12.573Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/49/fa/391e437a34e55095173dca5f24070d89cbc233ff85bf1c29c93248c6588d/imageio-2.37.3-py3-none-any.whl", hash = "sha256:46f5bb8522cd421c0f5ae104d8268f569d856b29eb1a13b92829d1970f32c9f0", size = 317646, upload-time = "2026-03-09T11:31:10.771Z" }, +] + +[[package]] +name = "importlib-metadata" +version = "9.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "zipp" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a9/01/15bb152d77b21318514a96f43af312635eb2500c96b55398d020c93d86ea/importlib_metadata-9.0.0.tar.gz", hash = "sha256:a4f57ab599e6a2e3016d7595cfd72eb4661a5106e787a95bcc90c7105b831efc", size = 56405, upload-time = "2026-03-20T06:42:56.999Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/38/3d/2d244233ac4f76e38533cfcb2991c9eb4c7bf688ae0a036d30725b8faafe/importlib_metadata-9.0.0-py3-none-any.whl", hash = "sha256:2d21d1cc5a017bd0559e36150c21c830ab1dc304dedd1b7ea85d20f45ef3edd7", size = 27789, upload-time = "2026-03-20T06:42:55.665Z" }, +] + +[[package]] +name = "ipykernel" +version = "7.2.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "appnope", marker = "sys_platform == 'darwin'" }, + { name = "comm" }, + { name = "debugpy" }, + { name = "ipython" }, + { name = "jupyter-client" }, + { name = "jupyter-core" }, + { name = "matplotlib-inline" }, + { name = "nest-asyncio" }, + { name = "packaging" }, + { name = "psutil" }, + { name = "pyzmq" }, + { name = "tornado" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/ca/8d/b68b728e2d06b9e0051019640a40a9eb7a88fcd82c2e1b5ce70bef5ff044/ipykernel-7.2.0.tar.gz", hash = "sha256:18ed160b6dee2cbb16e5f3575858bc19d8f1fe6046a9a680c708494ce31d909e", size = 176046, upload-time = "2026-02-06T16:43:27.403Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/82/b9/e73d5d9f405cba7706c539aa8b311b49d4c2f3d698d9c12f815231169c71/ipykernel-7.2.0-py3-none-any.whl", hash = "sha256:3bbd4420d2b3cc105cbdf3756bfc04500b1e52f090a90716851f3916c62e1661", size = 118788, upload-time = "2026-02-06T16:43:25.149Z" }, +] + +[[package]] +name = "ipython" +version = "9.13.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "colorama", marker = "sys_platform == 'win32'" }, + { name = "decorator" }, + { name = "ipython-pygments-lexers" }, + { name = "jedi" }, + { name = "matplotlib-inline" }, + { name = "pexpect", marker = "sys_platform != 'emscripten' and sys_platform != 'win32'" }, + { name = "prompt-toolkit" }, + { name = "psutil" }, + { name = "pygments" }, + { name = "stack-data" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/cd/c4/87cda5842cf5c31837c06ddb588e11c3c35d8ece89b7a0108c06b8c9b00a/ipython-9.13.0.tar.gz", hash = "sha256:7e834b6afc99f020e3f05966ced34792f40267d64cb1ea9043886dab0dde5967", size = 4430549, upload-time = "2026-04-24T12:24:55.221Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b9/86/3060e8029b7cc505cce9a0137431dda81d0a3fde93a8f0f50ee0bf37a795/ipython-9.13.0-py3-none-any.whl", hash = "sha256:57f9d4639e20818d328d287c7b549af3d05f12486ea8f2e7f73e52a36ec4d201", size = 627274, upload-time = "2026-04-24T12:24:53.038Z" }, +] + +[[package]] +name = "ipython-pygments-lexers" +version = "1.1.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pygments" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/ef/4c/5dd1d8af08107f88c7f741ead7a40854b8ac24ddf9ae850afbcf698aa552/ipython_pygments_lexers-1.1.1.tar.gz", hash = "sha256:09c0138009e56b6854f9535736f4171d855c8c08a563a0dcd8022f78355c7e81", size = 8393, upload-time = "2025-01-17T11:24:34.505Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl", hash = "sha256:a9462224a505ade19a605f71f8fa63c2048833ce50abc86768a0d81d876dc81c", size = 8074, upload-time = "2025-01-17T11:24:33.271Z" }, +] + +[[package]] +name = "ipywidgets" +version = "8.1.8" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "comm" }, + { name = "ipython" }, + { name = "jupyterlab-widgets" }, + { name = "traitlets" }, + { name = "widgetsnbextension" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/4c/ae/c5ce1edc1afe042eadb445e95b0671b03cee61895264357956e61c0d2ac0/ipywidgets-8.1.8.tar.gz", hash = "sha256:61f969306b95f85fba6b6986b7fe45d73124d1d9e3023a8068710d47a22ea668", size = 116739, upload-time = "2025-11-01T21:18:12.393Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/56/6d/0d9848617b9f753b87f214f1c682592f7ca42de085f564352f10f0843026/ipywidgets-8.1.8-py3-none-any.whl", hash = "sha256:ecaca67aed704a338f88f67b1181b58f821ab5dc89c1f0f5ef99db43c1c2921e", size = 139808, upload-time = "2025-11-01T21:18:10.956Z" }, +] + +[[package]] +name = "isoduration" +version = "20.11.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "arrow" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/7c/1a/3c8edc664e06e6bd06cce40c6b22da5f1429aa4224d0c590f3be21c91ead/isoduration-20.11.0.tar.gz", hash = "sha256:ac2f9015137935279eac671f94f89eb00584f940f5dc49462a0c4ee692ba1bd9", size = 11649, upload-time = "2020-11-01T11:00:00.312Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7b/55/e5326141505c5d5e34c5e0935d2908a74e4561eca44108fbfb9c13d2911a/isoduration-20.11.0-py3-none-any.whl", hash = "sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042", size = 11321, upload-time = "2020-11-01T10:59:58.02Z" }, +] + +[[package]] +name = "jedi" +version = "0.20.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "parso" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/46/b7/a3635f6a2d7cf5b5dd98064fc1d5fbbafcb25477bcea204a3a92145d158b/jedi-0.20.0.tar.gz", hash = "sha256:c3f4ccbd276696f4b19c54618d4fb18f9fc24b0aef02acf704b23f487daa1011", size = 3119416, upload-time = "2026-05-01T23:38:47.814Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9a/93/242e2eab5fe682ffcb8b0084bde703a41d51e17ee0f3a31ff0d9d813620a/jedi-0.20.0-py2.py3-none-any.whl", hash = "sha256:7bdd9c2634f56713299976f4cbd59cb3fa92165cc5e05ea811fb253480728b67", size = 4884812, upload-time = "2026-05-01T23:38:43.919Z" }, +] + +[[package]] +name = "jinja2" +version = "3.1.6" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "markupsafe" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/df/bf/f7da0350254c0ed7c72f3e33cef02e048281fec7ecec5f032d4aac52226b/jinja2-3.1.6.tar.gz", hash = "sha256:0137fb05990d35f1275a587e9aee6d56da821fc83491a0fb838183be43f66d6d", size = 245115, upload-time = "2025-03-05T20:05:02.478Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/62/a1/3d680cbfd5f4b8f15abc1d571870c5fc3e594bb582bc3b64ea099db13e56/jinja2-3.1.6-py3-none-any.whl", hash = "sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67", size = 134899, upload-time = "2025-03-05T20:05:00.369Z" }, +] + +[[package]] +name = "json5" +version = "0.14.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/9c/4b/6f8906aaf67d501e259b0adab4d312945bb7211e8b8d4dcc77c92320edaa/json5-0.14.0.tar.gz", hash = "sha256:b3f492fad9f6cdbced8b7d40b28b9b1c9701c5f561bef0d33b81c2ff433fefcb", size = 52656, upload-time = "2026-03-27T22:50:48.108Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b8/42/cf027b4ac873b076189d935b135397675dac80cb29acb13e1ab86ad6c631/json5-0.14.0-py3-none-any.whl", hash = "sha256:56cf861bab076b1178eb8c92e1311d273a9b9acea2ccc82c276abf839ebaef3a", size = 36271, upload-time = "2026-03-27T22:50:47.073Z" }, +] + +[[package]] +name = "jsonpointer" +version = "3.1.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/18/c7/af399a2e7a67fd18d63c40c5e62d3af4e67b836a2107468b6a5ea24c4304/jsonpointer-3.1.1.tar.gz", hash = "sha256:0b801c7db33a904024f6004d526dcc53bbb8a4a0f4e32bfd10beadf60adf1900", size = 9068, upload-time = "2026-03-23T22:32:32.458Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9e/6a/a83720e953b1682d2d109d3c2dbb0bc9bf28cc1cbc205be4ef4be5da709d/jsonpointer-3.1.1-py3-none-any.whl", hash = "sha256:8ff8b95779d071ba472cf5bc913028df06031797532f08a7d5b602d8b2a488ca", size = 7659, upload-time = "2026-03-23T22:32:31.568Z" }, +] + +[[package]] +name = "jsonschema" +version = "4.26.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "jsonschema-specifications" }, + { name = "referencing" }, + { name = "rpds-py" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b3/fc/e067678238fa451312d4c62bf6e6cf5ec56375422aee02f9cb5f909b3047/jsonschema-4.26.0.tar.gz", hash = "sha256:0c26707e2efad8aa1bfc5b7ce170f3fccc2e4918ff85989ba9ffa9facb2be326", size = 366583, upload-time = "2026-01-07T13:41:07.246Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl", hash = "sha256:d489f15263b8d200f8387e64b4c3a75f06629559fb73deb8fdfb525f2dab50ce", size = 90630, upload-time = "2026-01-07T13:41:05.306Z" }, +] + +[package.optional-dependencies] +format-nongpl = [ + { name = "fqdn" }, + { name = "idna" }, + { name = "isoduration" }, + { name = "jsonpointer" }, + { name = "rfc3339-validator" }, + { name = "rfc3986-validator" }, + { name = "rfc3987-syntax" }, + { name = "uri-template" }, + { name = "webcolors" }, +] + +[[package]] +name = "jsonschema-specifications" +version = "2025.9.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "referencing" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/19/74/a633ee74eb36c44aa6d1095e7cc5569bebf04342ee146178e2d36600708b/jsonschema_specifications-2025.9.1.tar.gz", hash = "sha256:b540987f239e745613c7a9176f3edb72b832a4ac465cf02712288397832b5e8d", size = 32855, upload-time = "2025-09-08T01:34:59.186Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/41/45/1a4ed80516f02155c51f51e8cedb3c1902296743db0bbc66608a0db2814f/jsonschema_specifications-2025.9.1-py3-none-any.whl", hash = "sha256:98802fee3a11ee76ecaca44429fda8a41bff98b00a0f2838151b113f210cc6fe", size = 18437, upload-time = "2025-09-08T01:34:57.871Z" }, +] + +[[package]] +name = "jupyter" +version = "1.1.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "ipykernel" }, + { name = "ipywidgets" }, + { name = "jupyter-console" }, + { name = "jupyterlab" }, + { name = "nbconvert" }, + { name = "notebook" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/58/f3/af28ea964ab8bc1e472dba2e82627d36d470c51f5cd38c37502eeffaa25e/jupyter-1.1.1.tar.gz", hash = "sha256:d55467bceabdea49d7e3624af7e33d59c37fff53ed3a350e1ac957bed731de7a", size = 5714959, upload-time = "2024-08-30T07:15:48.299Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/38/64/285f20a31679bf547b75602702f7800e74dbabae36ef324f716c02804753/jupyter-1.1.1-py2.py3-none-any.whl", hash = "sha256:7a59533c22af65439b24bbe60373a4e95af8f16ac65a6c00820ad378e3f7cc83", size = 2657, upload-time = "2024-08-30T07:15:47.045Z" }, +] + +[[package]] +name = "jupyter-client" +version = "8.8.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-core" }, + { name = "python-dateutil" }, + { name = "pyzmq" }, + { name = "tornado" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/05/e4/ba649102a3bc3fbca54e7239fb924fd434c766f855693d86de0b1f2bec81/jupyter_client-8.8.0.tar.gz", hash = "sha256:d556811419a4f2d96c869af34e854e3f059b7cc2d6d01a9cd9c85c267691be3e", size = 348020, upload-time = "2026-01-08T13:55:47.938Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2d/0b/ceb7694d864abc0a047649aec263878acb9f792e1fec3e676f22dc9015e3/jupyter_client-8.8.0-py3-none-any.whl", hash = "sha256:f93a5b99c5e23a507b773d3a1136bd6e16c67883ccdbd9a829b0bbdb98cd7d7a", size = 107371, upload-time = "2026-01-08T13:55:45.562Z" }, +] + +[[package]] +name = "jupyter-collaboration" +version = "4.4.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-collaboration-ui" }, + { name = "jupyter-docprovider" }, + { name = "jupyter-server-ydoc" }, + { name = "jupyterlab" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f0/4a/1f8ba60881f3ed86112e7d77a4098ee859dea729e854140a862f2b52df95/jupyter_collaboration-4.4.0.tar.gz", hash = "sha256:d492a2f69bd91d6f472991051b2df83dc2cdfaeecbfa2d75dabee5fc3178814d", size = 3727, upload-time = "2026-05-11T11:05:17.778Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5e/70/9d44957eef95c0e8ce80fbf90cacaa3dabd579fd811278dc517148e7b777/jupyter_collaboration-4.4.0-py3-none-any.whl", hash = "sha256:c10828d3e83e73448051dfceadb89bf61bcdd97c3000eaac878b39be5aa8358f", size = 4751, upload-time = "2026-05-11T11:05:15.924Z" }, +] + +[[package]] +name = "jupyter-collaboration-ui" +version = "2.4.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/34/bf/f6494fbba8d192d34dce04994fe43a7c1069d11e9d443c6988013c099afa/jupyter_collaboration_ui-2.4.0.tar.gz", hash = "sha256:9a1942ed90f8d98c83a1b6fbc0108bf5d1a4b1484668b634364868806caf5d7c", size = 79142, upload-time = "2026-05-11T11:04:52.467Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d0/97/585c550ed6349c9a9bfa8b217ebbac606eeeda45af812602803b8aef05e1/jupyter_collaboration_ui-2.4.0-py3-none-any.whl", hash = "sha256:543fd8d63106e00f50c9e3d0fd70e32d8242de8d7f887b503dcbcec6cb586e5c", size = 46696, upload-time = "2026-05-11T11:04:50.525Z" }, +] + +[[package]] +name = "jupyter-console" +version = "6.6.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "ipykernel" }, + { name = "ipython" }, + { name = "jupyter-client" }, + { name = "jupyter-core" }, + { name = "prompt-toolkit" }, + { name = "pygments" }, + { name = "pyzmq" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/bd/2d/e2fd31e2fc41c14e2bcb6c976ab732597e907523f6b2420305f9fc7fdbdb/jupyter_console-6.6.3.tar.gz", hash = "sha256:566a4bf31c87adbfadf22cdf846e3069b59a71ed5da71d6ba4d8aaad14a53539", size = 34363, upload-time = "2023-03-06T14:13:31.02Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ca/77/71d78d58f15c22db16328a476426f7ac4a60d3a5a7ba3b9627ee2f7903d4/jupyter_console-6.6.3-py3-none-any.whl", hash = "sha256:309d33409fcc92ffdad25f0bcdf9a4a9daa61b6f341177570fdac03de5352485", size = 24510, upload-time = "2023-03-06T14:13:28.229Z" }, +] + +[[package]] +name = "jupyter-core" +version = "5.9.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "platformdirs" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/02/49/9d1284d0dc65e2c757b74c6687b6d319b02f822ad039e5c512df9194d9dd/jupyter_core-5.9.1.tar.gz", hash = "sha256:4d09aaff303b9566c3ce657f580bd089ff5c91f5f89cf7d8846c3cdf465b5508", size = 89814, upload-time = "2025-10-16T19:19:18.444Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e7/e7/80988e32bf6f73919a113473a604f5a8f09094de312b9d52b79c2df7612b/jupyter_core-5.9.1-py3-none-any.whl", hash = "sha256:ebf87fdc6073d142e114c72c9e29a9d7ca03fad818c5d300ce2adc1fb0743407", size = 29032, upload-time = "2025-10-16T19:19:16.783Z" }, +] + +[[package]] +name = "jupyter-docprovider" +version = "2.4.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1c/ce/1e48717f4f499b649cc9c0d3ff95b64efaf4c69142ecc7dee3caf011a681/jupyter_docprovider-2.4.0.tar.gz", hash = "sha256:7b901fb9d800599e2ab68557fd6391102a6888845286c4f7cbb6eb2bba3094e0", size = 51324, upload-time = "2026-05-11T11:05:04.373Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7e/cc/74b80ecbb804266f55cc82fb9242b49437572dcc4203bff5cfc7c449cbeb/jupyter_docprovider-2.4.0-py3-none-any.whl", hash = "sha256:cf0582cededc46bc5a055e31b4f4b9352f8d48bbb55fbea389e953b166dacf1b", size = 35927, upload-time = "2026-05-11T11:05:02.394Z" }, +] + +[[package]] +name = "jupyter-events" +version = "0.12.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jsonschema", extra = ["format-nongpl"] }, + { name = "packaging" }, + { name = "python-json-logger" }, + { name = "pyyaml" }, + { name = "referencing" }, + { name = "rfc3339-validator" }, + { name = "rfc3986-validator" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/18/f8/475c4241b2b75af0deaae453ed003c6c851766dbc44d332d8baf245dc931/jupyter_events-0.12.1.tar.gz", hash = "sha256:faff25f77218335752f35f23c5fe6e4a392a7bd99a5939ccb9b8fbf594636cf3", size = 62854, upload-time = "2026-04-20T23:17:50.66Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/eb/6c/6fcde0c8f616ed360ffd3587f7db9e225a7e62b583a04494d2f069cf64ea/jupyter_events-0.12.1-py3-none-any.whl", hash = "sha256:c366585253f537a627da52fa7ca7410c5b5301fe893f511e7b077c2d93ec8bcf", size = 19512, upload-time = "2026-04-20T23:17:48.927Z" }, +] + +[[package]] +name = "jupyter-kernel-client" +version = "0.9.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-client" }, + { name = "jupyter-core" }, + { name = "jupyter-mimetypes" }, + { name = "requests" }, + { name = "traitlets" }, + { name = "typing-extensions" }, + { name = "websocket-client" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/7a/68/287315ba355aa93bda2e344de5febc45e6de1b47d8f4a5b69400b24cfdfd/jupyter_kernel_client-0.9.0-py3-none-any.whl", hash = "sha256:77acb8f2f738d97625d6bd01ee8cf21c4d59790b7ba464108712db3870416f20", size = 40097, upload-time = "2026-02-11T06:42:05.133Z" }, +] + +[[package]] +name = "jupyter-lsp" +version = "2.3.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-server" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/36/ff/1e4a61f5170a9a1d978f3ac3872449de6c01fc71eaf89657824c878b1549/jupyter_lsp-2.3.1.tar.gz", hash = "sha256:fdf8a4aa7d85813976d6e29e95e6a2c8f752701f926f2715305249a3829805a6", size = 55677, upload-time = "2026-04-02T08:10:06.749Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/23/e8/9d61dcbd1dce8ef418f06befd4ac084b4720429c26b0b1222bc218685eff/jupyter_lsp-2.3.1-py3-none-any.whl", hash = "sha256:71b954d834e85ff3096400554f2eefaf7fe37053036f9a782b0f7c5e42dadb81", size = 77513, upload-time = "2026-04-02T08:10:01.753Z" }, +] + +[[package]] +name = "jupyter-mcp-server" +version = "1.0.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "click" }, + { name = "fastapi" }, + { name = "jupyter-kernel-client" }, + { name = "jupyter-mcp-tools" }, + { name = "jupyter-nbmodel-client" }, + { name = "jupyter-server" }, + { name = "jupyter-server-client" }, + { name = "jupyter-server-nbmodel" }, + { name = "mcp", extra = ["cli"] }, + { name = "opentelemetry-api" }, + { name = "opentelemetry-sdk" }, + { name = "pydantic" }, + { name = "tornado" }, + { name = "traitlets" }, + { name = "uvicorn" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/55/ae/7843fe02bb57c5a2928fa830b01779a3c2395ca382e91e690aac987fa054/jupyter_mcp_server-1.0.2.tar.gz", hash = "sha256:a1e1b4816d4cbc53944a6f76385e0c3b6b4d8aa5c9f855cbce153fad1b18c3fe", size = 80102, upload-time = "2026-04-27T06:08:37.559Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0e/5e/f306a728502f2d26988c76a882121dd1bb1a87c59e6db8b096a9a7b35903/jupyter_mcp_server-1.0.2-py3-none-any.whl", hash = "sha256:6be3c923fc6469094856e329dd593e4cbd4938cedb068b65697b3b1bc8543538", size = 111133, upload-time = "2026-04-27T06:08:36.01Z" }, +] + +[[package]] +name = "jupyter-mcp-tools" +version = "0.1.6" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "aiohttp" }, + { name = "jupyter-server" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/a1/f4/28e9cbdd05d3146d5adedc474f64a2d669c21b0e672d09b0885a1cc7c85a/jupyter_mcp_tools-0.1.6-py3-none-any.whl", hash = "sha256:45cb18658d5853a62faccd5e8ea17becc3a1850482a43c49a9e4bb2c854effd7", size = 45664, upload-time = "2026-01-08T15:32:10.559Z" }, +] + +[[package]] +name = "jupyter-mimetypes" +version = "0.2.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pyarrow" }, + { name = "typing-extensions" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/72/45/cb4671e13fed39f721066ad1a00714d4b607982b8d3e97a25f836198d1df/jupyter_mimetypes-0.2.0-py3-none-any.whl", hash = "sha256:e6dcd989258e3fc944365b656d9173191517e0e393bd878e97ce500e5b388527", size = 16724, upload-time = "2025-08-10T18:18:27.309Z" }, +] + +[[package]] +name = "jupyter-nbmodel-client" +version = "0.14.7" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-ydoc" }, + { name = "nbformat" }, + { name = "pycrdt" }, + { name = "requests" }, + { name = "websockets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c3/f9/bf5a0ba321a227ba4c94bafa3d3950f9e773658773a81e379381b8687e25/jupyter_nbmodel_client-0.14.7.tar.gz", hash = "sha256:c9ff959ea26f5b2876271dfe37882c4674551e0e2aafc7633a4ebc57c0260563", size = 25909, upload-time = "2026-04-25T10:40:46.108Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3d/61/5d6ada9177f164f3ca0394af899d09a7bb82b6ba9bb5f1d559a9d9f53758/jupyter_nbmodel_client-0.14.7-py3-none-any.whl", hash = "sha256:ff9371378608dd46f5cb58e394493aa6bde4efcbabbcb988fc331f55b5b7cef3", size = 23025, upload-time = "2026-04-25T10:40:44.046Z" }, +] + +[[package]] +name = "jupyter-server" +version = "2.18.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "argon2-cffi" }, + { name = "jinja2" }, + { name = "jupyter-client" }, + { name = "jupyter-core" }, + { name = "jupyter-events" }, + { name = "jupyter-server-terminals" }, + { name = "nbconvert" }, + { name = "nbformat" }, + { name = "packaging" }, + { name = "prometheus-client" }, + { name = "pywinpty", marker = "os_name == 'nt'" }, + { name = "pyzmq" }, + { name = "send2trash" }, + { name = "terminado" }, + { name = "tornado" }, + { name = "traitlets" }, + { name = "websocket-client" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/ca/15/1eacb0fcb79ef86e8a0a79a708e6ad7435f6f223097dd29a4ce861fabc44/jupyter_server-2.18.2.tar.gz", hash = "sha256:06b4f40d8a7a00bb39d5216859c81374a0e7cfefe6d8a5a7facc5a5c37c679a7", size = 753177, upload-time = "2026-05-06T07:04:36.274Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e2/50/ecf4f70d65bdb7519b28a33d1b2fee8a4b4ba1ae1a92f15d97e877c5de21/jupyter_server-2.18.2-py3-none-any.whl", hash = "sha256:fa5e46539ded65791838035a2b6001f13e54d5f64b8b3752eb1e91fdd641a5b8", size = 391907, upload-time = "2026-05-06T07:04:34.014Z" }, +] + +[[package]] +name = "jupyter-server-client" +version = "0.1.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pydantic" }, + { name = "requests" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/0f/2e/d22899abfdbc6fdd33860152f2108e6f377b11083e951bb67e6472e0247b/jupyter_server_client-0.1.1-py3-none-any.whl", hash = "sha256:5fc28099b95ea4b02e0bc85760507701c4c4315801897129e4b6c606582cf025", size = 19683, upload-time = "2025-10-22T11:19:29.907Z" }, +] + +[[package]] +name = "jupyter-server-fileid" +version = "0.9.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-events" }, + { name = "jupyter-server" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0d/eb/7c2c09454bbf66b3727ba8c431d16159d642c0eb1aa179412a4f7af721cf/jupyter_server_fileid-0.9.3.tar.gz", hash = "sha256:521608bb87f606a8637fcbdce2f3d24a8b3cc89d2eef61751cb40e468d4e54be", size = 54959, upload-time = "2024-09-06T07:18:40.412Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/54/d6/5e5bca083664b1dd368e261107cbe2d350e3bdc62bdba8720fdbb9b9db39/jupyter_server_fileid-0.9.3-py3-none-any.whl", hash = "sha256:f73c01c19f90005d3fff93607b91b4955ba4e1dccdde9bfe8026646f94053791", size = 16922, upload-time = "2024-09-06T07:18:38.445Z" }, +] + +[[package]] +name = "jupyter-server-nbmodel" +version = "0.1.1a4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-client" }, + { name = "jupyter-server" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0a/2a/1d13aa10cd573f6b823acc833f6f4cf6d1c2bd3b201f066496b78f964ed6/jupyter_server_nbmodel-0.1.1a4.tar.gz", hash = "sha256:ee072daa1e6b09db53f20e8f2d180d4f5e68dbff40003ad14dddfea8addf5cc3", size = 207265, upload-time = "2025-10-30T15:12:02.073Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5e/70/23edf6756dd2ae7c81ce5c2add66d986674d58072192152b80d417efbc4d/jupyter_server_nbmodel-0.1.1a4-py3-none-any.whl", hash = "sha256:f1c40906aaf98d6b66c3c9d5ebd6cad1b278d00c09d0a9227b0c15d972ec399a", size = 35316, upload-time = "2025-10-30T15:11:59.987Z" }, +] + +[[package]] +name = "jupyter-server-terminals" +version = "0.5.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pywinpty", marker = "os_name == 'nt'" }, + { name = "terminado" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f4/a7/bcd0a9b0cbba88986fe944aaaf91bfda603e5a50bda8ed15123f381a3b2f/jupyter_server_terminals-0.5.4.tar.gz", hash = "sha256:bbda128ed41d0be9020349f9f1f2a4ab9952a73ed5f5ac9f1419794761fb87f5", size = 31770, upload-time = "2026-01-14T16:53:20.213Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d1/2d/6674563f71c6320841fc300911a55143925112a72a883e2ca71fba4c618d/jupyter_server_terminals-0.5.4-py3-none-any.whl", hash = "sha256:55be353fc74a80bc7f3b20e6be50a55a61cd525626f578dcb66a5708e2007d14", size = 13704, upload-time = "2026-01-14T16:53:18.738Z" }, +] + +[[package]] +name = "jupyter-server-ydoc" +version = "2.4.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jsonschema" }, + { name = "jupyter-events" }, + { name = "jupyter-server" }, + { name = "jupyter-server-fileid" }, + { name = "jupyter-ydoc" }, + { name = "pycrdt" }, + { name = "pycrdt-websocket" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/18/fb/88a92c659864429342ab0d6c3b4829cdc6b008df10484820224e3871cf7b/jupyter_server_ydoc-2.4.0.tar.gz", hash = "sha256:74631f47a55d9dadf7dc918d78a083feaecc6c36af4d2fcdf26c0ee36bf70372", size = 33271, upload-time = "2026-05-11T11:04:41.019Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7f/6e/ec1dfa20b8efdf782a9fb162abc5e6a394bd122c21a0c9ff55e0e60f5a35/jupyter_server_ydoc-2.4.0-py3-none-any.whl", hash = "sha256:0442bf1e2ef8da16d7f0fb541db5080b249b43f098616cf8cd7dd173e4ae6cef", size = 34151, upload-time = "2026-05-11T11:04:39.135Z" }, +] + +[[package]] +name = "jupyter-ydoc" +version = "3.4.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "pycrdt" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/22/f7/400e8ee54adb2396f7a70a85a8951bc696303a9bd413c5e35cc6c0c5c214/jupyter_ydoc-3.4.1.tar.gz", hash = "sha256:fb31f0e7033b8a5bf8920334e2b3dd9bdaba3052de3164de28e14525fd0bc4d8", size = 973504, upload-time = "2026-04-14T12:14:19.967Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/06/ff/15eca734d96277895573026dff14edd63d9d1709c02363f5902ea9767d71/jupyter_ydoc-3.4.1-py3-none-any.whl", hash = "sha256:848e5a9f37403846b7554b87d71495a38b6249579af64b1bde8de650b2e49d65", size = 14534, upload-time = "2026-04-14T12:14:18.439Z" }, +] + +[[package]] +name = "jupyterlab" +version = "4.5.7" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "async-lru" }, + { name = "httpx" }, + { name = "ipykernel" }, + { name = "jinja2" }, + { name = "jupyter-core" }, + { name = "jupyter-lsp" }, + { name = "jupyter-server" }, + { name = "jupyterlab-server" }, + { name = "notebook-shim" }, + { name = "packaging" }, + { name = "setuptools" }, + { name = "tornado" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/2b/22/8440ec827762146e7cdecf04335bd348795899d29dc6ae82238707353a2c/jupyterlab-4.5.7.tar.gz", hash = "sha256:55a9822c4754da305f41e113452c68383e214dcf96de760146af89ce5d5117b0", size = 23992763, upload-time = "2026-04-29T16:43:51.328Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3d/aa/537b8f7d80e799af19af35fb3ddfc970b951088a13c57dd9387dcfbb7f61/jupyterlab-4.5.7-py3-none-any.whl", hash = "sha256:fba4cb0e2c44a52859669d8c98b45de029d5e515f8407bf8534d2a8fc5f0964d", size = 12450123, upload-time = "2026-04-29T16:43:46.639Z" }, +] + +[[package]] +name = "jupyterlab-pygments" +version = "0.3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/90/51/9187be60d989df97f5f0aba133fa54e7300f17616e065d1ada7d7646b6d6/jupyterlab_pygments-0.3.0.tar.gz", hash = "sha256:721aca4d9029252b11cfa9d185e5b5af4d54772bb8072f9b7036f4170054d35d", size = 512900, upload-time = "2023-11-23T09:26:37.44Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b1/dd/ead9d8ea85bf202d90cc513b533f9c363121c7792674f78e0d8a854b63b4/jupyterlab_pygments-0.3.0-py3-none-any.whl", hash = "sha256:841a89020971da1d8693f1a99997aefc5dc424bb1b251fd6322462a1b8842780", size = 15884, upload-time = "2023-11-23T09:26:34.325Z" }, +] + +[[package]] +name = "jupyterlab-server" +version = "2.28.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "babel" }, + { name = "jinja2" }, + { name = "json5" }, + { name = "jsonschema" }, + { name = "jupyter-server" }, + { name = "packaging" }, + { name = "requests" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/d6/2c/90153f189e421e93c4bb4f9e3f59802a1f01abd2ac5cf40b152d7f735232/jupyterlab_server-2.28.0.tar.gz", hash = "sha256:35baa81898b15f93573e2deca50d11ac0ae407ebb688299d3a5213265033712c", size = 76996, upload-time = "2025-10-22T13:59:18.37Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e0/07/a000fe835f76b7e1143242ab1122e6362ef1c03f23f83a045c38859c2ae0/jupyterlab_server-2.28.0-py3-none-any.whl", hash = "sha256:e4355b148fdcf34d312bbbc80f22467d6d20460e8b8736bf235577dd18506968", size = 59830, upload-time = "2025-10-22T13:59:16.767Z" }, +] + +[[package]] +name = "jupyterlab-widgets" +version = "3.0.16" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/26/2d/ef58fed122b268c69c0aa099da20bc67657cdfb2e222688d5731bd5b971d/jupyterlab_widgets-3.0.16.tar.gz", hash = "sha256:423da05071d55cf27a9e602216d35a3a65a3e41cdf9c5d3b643b814ce38c19e0", size = 897423, upload-time = "2025-11-01T21:11:29.724Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ab/b5/36c712098e6191d1b4e349304ef73a8d06aed77e56ceaac8c0a306c7bda1/jupyterlab_widgets-3.0.16-py3-none-any.whl", hash = "sha256:45fa36d9c6422cf2559198e4db481aa243c7a32d9926b500781c830c80f7ecf8", size = 914926, upload-time = "2025-11-01T21:11:28.008Z" }, +] + +[[package]] +name = "kiwisolver" +version = "1.5.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d0/67/9c61eccb13f0bdca9307614e782fec49ffdde0f7a2314935d489fa93cd9c/kiwisolver-1.5.0.tar.gz", hash = "sha256:d4193f3d9dc3f6f79aaed0e5637f45d98850ebf01f7ca20e69457f3e8946b66a", size = 103482, upload-time = "2026-03-09T13:15:53.382Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9d/69/024d6711d5ba575aa65d5538042e99964104e97fa153a9f10bc369182bc2/kiwisolver-1.5.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:fd40bb9cd0891c4c3cb1ddf83f8bbfa15731a248fdc8162669405451e2724b09", size = 123166, upload-time = "2026-03-09T13:13:48.032Z" }, + { url = "https://files.pythonhosted.org/packages/ce/48/adbb40df306f587054a348831220812b9b1d787aff714cfbc8556e38fccd/kiwisolver-1.5.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:c0e1403fd7c26d77c1f03e096dc58a5c726503fa0db0456678b8668f76f521e3", size = 66395, upload-time = "2026-03-09T13:13:49.365Z" }, + { url = "https://files.pythonhosted.org/packages/a8/3a/d0a972b34e1c63e2409413104216cd1caa02c5a37cb668d1687d466c1c45/kiwisolver-1.5.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:dda366d548e89a90d88a86c692377d18d8bd64b39c1fb2b92cb31370e2896bbd", size = 64065, upload-time = "2026-03-09T13:13:50.562Z" }, + { url = "https://files.pythonhosted.org/packages/2b/0a/7b98e1e119878a27ba8618ca1e18b14f992ff1eda40f47bccccf4de44121/kiwisolver-1.5.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:332b4f0145c30b5f5ad9374881133e5aa64320428a57c2c2b61e9d891a51c2f3", size = 1477903, upload-time = "2026-03-09T13:13:52.084Z" }, + { url = "https://files.pythonhosted.org/packages/18/d8/55638d89ffd27799d5cc3d8aa28e12f4ce7a64d67b285114dbedc8ea4136/kiwisolver-1.5.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0c50b89ffd3e1a911c69a1dd3de7173c0cd10b130f56222e57898683841e4f96", size = 1278751, upload-time = "2026-03-09T13:13:54.673Z" }, + { url = "https://files.pythonhosted.org/packages/b8/97/b4c8d0d18421ecceba20ad8701358453b88e32414e6f6950b5a4bad54e65/kiwisolver-1.5.0-cp313-cp313-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:4db576bb8c3ef9365f8b40fe0f671644de6736ae2c27a2c62d7d8a1b4329f099", size = 1296793, upload-time = "2026-03-09T13:13:56.287Z" }, + { url = "https://files.pythonhosted.org/packages/c4/10/f862f94b6389d8957448ec9df59450b81bec4abb318805375c401a1e6892/kiwisolver-1.5.0-cp313-cp313-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:0b85aad90cea8ac6797a53b5d5f2e967334fa4d1149f031c4537569972596cb8", size = 1346041, upload-time = "2026-03-09T13:13:58.269Z" }, + { url = "https://files.pythonhosted.org/packages/a3/6a/f1650af35821eaf09de398ec0bc2aefc8f211f0cda50204c9f1673741ba9/kiwisolver-1.5.0-cp313-cp313-manylinux_2_39_riscv64.whl", hash = "sha256:d36ca54cb4c6c4686f7cbb7b817f66f5911c12ddb519450bbe86707155028f87", size = 987292, upload-time = "2026-03-09T13:13:59.871Z" }, + { url = "https://files.pythonhosted.org/packages/de/19/d7fb82984b9238115fe629c915007be608ebd23dc8629703d917dbfaffd4/kiwisolver-1.5.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:38f4a703656f493b0ad185211ccfca7f0386120f022066b018eb5296d8613e23", size = 2227865, upload-time = "2026-03-09T13:14:01.401Z" }, + { url = "https://files.pythonhosted.org/packages/7f/b9/46b7f386589fd222dac9e9de9c956ce5bcefe2ee73b4e79891381dda8654/kiwisolver-1.5.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:3ac2360e93cb41be81121755c6462cff3beaa9967188c866e5fce5cf13170859", size = 2324369, upload-time = "2026-03-09T13:14:02.972Z" }, + { url = "https://files.pythonhosted.org/packages/92/8b/95e237cf3d9c642960153c769ddcbe278f182c8affb20cecc1cc983e7cc5/kiwisolver-1.5.0-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:c95cab08d1965db3d84a121f1c7ce7479bdd4072c9b3dafd8fecce48a2e6b902", size = 1977989, upload-time = "2026-03-09T13:14:04.503Z" }, + { url = "https://files.pythonhosted.org/packages/1b/95/980c9df53501892784997820136c01f62bc1865e31b82b9560f980c0e649/kiwisolver-1.5.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:fc20894c3d21194d8041a28b65622d5b86db786da6e3cfe73f0c762951a61167", size = 2491645, upload-time = "2026-03-09T13:14:06.106Z" }, + { url = "https://files.pythonhosted.org/packages/cb/32/900647fd0840abebe1561792c6b31e6a7c0e278fc3973d30572a965ca14c/kiwisolver-1.5.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:7a32f72973f0f950c1920475d5c5ea3d971b81b6f0ec53b8d0a956cc965f22e0", size = 2295237, upload-time = "2026-03-09T13:14:08.891Z" }, + { url = "https://files.pythonhosted.org/packages/be/8a/be60e3bbcf513cc5a50f4a3e88e1dcecebb79c1ad607a7222877becaa101/kiwisolver-1.5.0-cp313-cp313-win_amd64.whl", hash = "sha256:0bf3acf1419fa93064a4c2189ac0b58e3be7872bf6ee6177b0d4c63dc4cea276", size = 73573, upload-time = "2026-03-09T13:14:12.327Z" }, + { url = "https://files.pythonhosted.org/packages/4d/d2/64be2e429eb4fca7f7e1c52a91b12663aeaf25de3895e5cca0f47ef2a8d0/kiwisolver-1.5.0-cp313-cp313-win_arm64.whl", hash = "sha256:fa8eb9ecdb7efb0b226acec134e0d709e87a909fa4971a54c0c4f6e88635484c", size = 64998, upload-time = "2026-03-09T13:14:13.469Z" }, + { url = "https://files.pythonhosted.org/packages/b0/69/ce68dd0c85755ae2de490bf015b62f2cea5f6b14ff00a463f9d0774449ff/kiwisolver-1.5.0-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:db485b3847d182b908b483b2ed133c66d88d49cacf98fd278fadafe11b4478d1", size = 125700, upload-time = "2026-03-09T13:14:14.636Z" }, + { url = "https://files.pythonhosted.org/packages/74/aa/937aac021cf9d4349990d47eb319309a51355ed1dbdc9c077cdc9224cb11/kiwisolver-1.5.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:be12f931839a3bdfe28b584db0e640a65a8bcbc24560ae3fdb025a449b3d754e", size = 67537, upload-time = "2026-03-09T13:14:15.808Z" }, + { url = "https://files.pythonhosted.org/packages/ee/20/3a87fbece2c40ad0f6f0aefa93542559159c5f99831d596050e8afae7a9f/kiwisolver-1.5.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:16b85d37c2cbb3253226d26e64663f755d88a03439a9c47df6246b35defbdfb7", size = 65514, upload-time = "2026-03-09T13:14:18.035Z" }, + { url = "https://files.pythonhosted.org/packages/f0/7f/f943879cda9007c45e1f7dba216d705c3a18d6b35830e488b6c6a4e7cdf0/kiwisolver-1.5.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:4432b835675f0ea7414aab3d37d119f7226d24869b7a829caeab49ebda407b0c", size = 1584848, upload-time = "2026-03-09T13:14:19.745Z" }, + { url = "https://files.pythonhosted.org/packages/37/f8/4d4f85cc1870c127c88d950913370dd76138482161cd07eabbc450deff01/kiwisolver-1.5.0-cp313-cp313t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1b0feb50971481a2cc44d94e88bdb02cdd497618252ae226b8eb1201b957e368", size = 1391542, upload-time = "2026-03-09T13:14:21.54Z" }, + { url = "https://files.pythonhosted.org/packages/04/0b/65dd2916c84d252b244bd405303220f729e7c17c9d7d33dca6feeff9ffc4/kiwisolver-1.5.0-cp313-cp313t-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:56fa888f10d0f367155e76ce849fa1166fc9730d13bd2d65a2aa13b6f5424489", size = 1404447, upload-time = "2026-03-09T13:14:23.205Z" }, + { url = "https://files.pythonhosted.org/packages/39/5c/2606a373247babce9b1d056c03a04b65f3cf5290a8eac5d7bdead0a17e21/kiwisolver-1.5.0-cp313-cp313t-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:940dda65d5e764406b9fb92761cbf462e4e63f712ab60ed98f70552e496f3bf1", size = 1455918, upload-time = "2026-03-09T13:14:24.74Z" }, + { url = "https://files.pythonhosted.org/packages/d5/d1/c6078b5756670658e9192a2ef11e939c92918833d2745f85cd14a6004bdf/kiwisolver-1.5.0-cp313-cp313t-manylinux_2_39_riscv64.whl", hash = "sha256:89fc958c702ee9a745e4700378f5d23fddbc46ff89e8fdbf5395c24d5c1452a3", size = 1072856, upload-time = "2026-03-09T13:14:26.597Z" }, + { url = "https://files.pythonhosted.org/packages/cb/c8/7def6ddf16eb2b3741d8b172bdaa9af882b03c78e9b0772975408801fa63/kiwisolver-1.5.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:9027d773c4ff81487181a925945743413f6069634d0b122d0b37684ccf4f1e18", size = 2333580, upload-time = "2026-03-09T13:14:28.237Z" }, + { url = "https://files.pythonhosted.org/packages/9e/87/2ac1fce0eb1e616fcd3c35caa23e665e9b1948bb984f4764790924594128/kiwisolver-1.5.0-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:5b233ea3e165e43e35dba1d2b8ecc21cf070b45b65ae17dd2747d2713d942021", size = 2423018, upload-time = "2026-03-09T13:14:30.018Z" }, + { url = "https://files.pythonhosted.org/packages/67/13/c6700ccc6cc218716bfcda4935e4b2997039869b4ad8a94f364c5a3b8e63/kiwisolver-1.5.0-cp313-cp313t-musllinux_1_2_riscv64.whl", hash = "sha256:ce9bf03dad3b46408c08649c6fbd6ca28a9fce0eb32fdfffa6775a13103b5310", size = 2062804, upload-time = "2026-03-09T13:14:32.888Z" }, + { url = "https://files.pythonhosted.org/packages/1b/bd/877056304626943ff0f1f44c08f584300c199b887cb3176cd7e34f1515f1/kiwisolver-1.5.0-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:fc4d3f1fb9ca0ae9f97b095963bc6326f1dbfd3779d6679a1e016b9baaa153d3", size = 2597482, upload-time = "2026-03-09T13:14:34.971Z" }, + { url = "https://files.pythonhosted.org/packages/75/19/c60626c47bf0f8ac5dcf72c6c98e266d714f2fbbfd50cf6dab5ede3aaa50/kiwisolver-1.5.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:f443b4825c50a51ee68585522ab4a1d1257fac65896f282b4c6763337ac9f5d2", size = 2394328, upload-time = "2026-03-09T13:14:36.816Z" }, + { url = "https://files.pythonhosted.org/packages/47/84/6a6d5e5bb8273756c27b7d810d47f7ef2f1f9b9fd23c9ee9a3f8c75c9cef/kiwisolver-1.5.0-cp313-cp313t-win_arm64.whl", hash = "sha256:893ff3a711d1b515ba9da14ee090519bad4610ed1962fbe298a434e8c5f8db53", size = 68410, upload-time = "2026-03-09T13:14:38.695Z" }, + { url = "https://files.pythonhosted.org/packages/e4/d7/060f45052f2a01ad5762c8fdecd6d7a752b43400dc29ff75cd47225a40fd/kiwisolver-1.5.0-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:8df31fe574b8b3993cc61764f40941111b25c2d9fea13d3ce24a49907cd2d615", size = 123231, upload-time = "2026-03-09T13:14:41.323Z" }, + { url = "https://files.pythonhosted.org/packages/c2/a7/78da680eadd06ff35edef6ef68a1ad273bad3e2a0936c9a885103230aece/kiwisolver-1.5.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:1d49a49ac4cbfb7c1375301cd1ec90169dfeae55ff84710d782260ce77a75a02", size = 66489, upload-time = "2026-03-09T13:14:42.534Z" }, + { url = "https://files.pythonhosted.org/packages/49/b2/97980f3ad4fae37dd7fe31626e2bf75fbf8bdf5d303950ec1fab39a12da8/kiwisolver-1.5.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:0cbe94b69b819209a62cb27bdfa5dc2a8977d8de2f89dfd97ba4f53ed3af754e", size = 64063, upload-time = "2026-03-09T13:14:44.759Z" }, + { url = "https://files.pythonhosted.org/packages/e7/f9/b06c934a6aa8bc91f566bd2a214fd04c30506c2d9e2b6b171953216a65b6/kiwisolver-1.5.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:80aa065ffd378ff784822a6d7c3212f2d5f5e9c3589614b5c228b311fd3063ac", size = 1475913, upload-time = "2026-03-09T13:14:46.247Z" }, + { url = "https://files.pythonhosted.org/packages/6b/f0/f768ae564a710135630672981231320bc403cf9152b5596ec5289de0f106/kiwisolver-1.5.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4e7f886f47ab881692f278ae901039a234e4025a68e6dfab514263a0b1c4ae05", size = 1282782, upload-time = "2026-03-09T13:14:48.458Z" }, + { url = "https://files.pythonhosted.org/packages/e2/9f/1de7aad00697325f05238a5f2eafbd487fb637cc27a558b5367a5f37fb7f/kiwisolver-1.5.0-cp314-cp314-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:5060731cc3ed12ca3a8b57acd4aeca5bbc2f49216dd0bec1650a1acd89486bcd", size = 1300815, upload-time = "2026-03-09T13:14:50.721Z" }, + { url = "https://files.pythonhosted.org/packages/5a/c2/297f25141d2e468e0ce7f7a7b92e0cf8918143a0cbd3422c1ad627e85a06/kiwisolver-1.5.0-cp314-cp314-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:7a4aa69609f40fce3cbc3f87b2061f042eee32f94b8f11db707b66a26461591a", size = 1347925, upload-time = "2026-03-09T13:14:52.304Z" }, + { url = "https://files.pythonhosted.org/packages/b9/d3/f4c73a02eb41520c47610207b21afa8cdd18fdbf64ffd94674ae21c4812d/kiwisolver-1.5.0-cp314-cp314-manylinux_2_39_riscv64.whl", hash = "sha256:d168fda2dbff7b9b5f38e693182d792a938c31db4dac3a80a4888de603c99554", size = 991322, upload-time = "2026-03-09T13:14:54.637Z" }, + { url = "https://files.pythonhosted.org/packages/7b/46/d3f2efef7732fcda98d22bf4ad5d3d71d545167a852ca710a494f4c15343/kiwisolver-1.5.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:413b820229730d358efd838ecbab79902fe97094565fdc80ddb6b0a18c18a581", size = 2232857, upload-time = "2026-03-09T13:14:56.471Z" }, + { url = "https://files.pythonhosted.org/packages/3f/ec/2d9756bf2b6d26ae4349b8d3662fb3993f16d80c1f971c179ce862b9dbae/kiwisolver-1.5.0-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:5124d1ea754509b09e53738ec185584cc609aae4a3b510aaf4ed6aa047ef9303", size = 2329376, upload-time = "2026-03-09T13:14:58.072Z" }, + { url = "https://files.pythonhosted.org/packages/8f/9f/876a0a0f2260f1bde92e002b3019a5fabc35e0939c7d945e0fa66185eb20/kiwisolver-1.5.0-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:e4415a8db000bf49a6dd1c478bf70062eaacff0f462b92b0ba68791a905861f9", size = 1982549, upload-time = "2026-03-09T13:14:59.668Z" }, + { url = "https://files.pythonhosted.org/packages/6c/4f/ba3624dfac23a64d54ac4179832860cb537c1b0af06024936e82ca4154a0/kiwisolver-1.5.0-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:d618fd27420381a4f6044faa71f46d8bfd911bd077c555f7138ed88729bfbe79", size = 2494680, upload-time = "2026-03-09T13:15:01.364Z" }, + { url = "https://files.pythonhosted.org/packages/39/b7/97716b190ab98911b20d10bf92eca469121ec483b8ce0edd314f51bc85af/kiwisolver-1.5.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:5092eb5b1172947f57d6ea7d89b2f29650414e4293c47707eb499ec07a0ac796", size = 2297905, upload-time = "2026-03-09T13:15:03.925Z" }, + { url = "https://files.pythonhosted.org/packages/a3/36/4e551e8aa55c9188bca9abb5096805edbf7431072b76e2298e34fd3a3008/kiwisolver-1.5.0-cp314-cp314-win_amd64.whl", hash = "sha256:d76e2d8c75051d58177e762164d2e9ab92886534e3a12e795f103524f221dd8e", size = 75086, upload-time = "2026-03-09T13:15:07.775Z" }, + { url = "https://files.pythonhosted.org/packages/70/15/9b90f7df0e31a003c71649cf66ef61c3c1b862f48c81007fa2383c8bd8d7/kiwisolver-1.5.0-cp314-cp314-win_arm64.whl", hash = "sha256:fa6248cd194edff41d7ea9425ced8ca3a6f838bfb295f6f1d6e6bb694a8518df", size = 66577, upload-time = "2026-03-09T13:15:09.139Z" }, + { url = "https://files.pythonhosted.org/packages/17/01/7dc8c5443ff42b38e72731643ed7cf1ed9bf01691ae5cdca98501999ed83/kiwisolver-1.5.0-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:d1ffeb80b5676463d7a7d56acbe8e37a20ce725570e09549fe738e02ca6b7e1e", size = 125794, upload-time = "2026-03-09T13:15:10.525Z" }, + { url = "https://files.pythonhosted.org/packages/46/8a/b4ebe46ebaac6a303417fab10c2e165c557ddaff558f9699d302b256bc53/kiwisolver-1.5.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:bc4d8e252f532ab46a1de9349e2d27b91fce46736a9eedaa37beaca66f574ed4", size = 67646, upload-time = "2026-03-09T13:15:12.016Z" }, + { url = "https://files.pythonhosted.org/packages/60/35/10a844afc5f19d6f567359bf4789e26661755a2f36200d5d1ed8ad0126e5/kiwisolver-1.5.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:6783e069732715ad0c3ce96dbf21dbc2235ab0593f2baf6338101f70371f4028", size = 65511, upload-time = "2026-03-09T13:15:13.311Z" }, + { url = "https://files.pythonhosted.org/packages/f8/8a/685b297052dd041dcebce8e8787b58923b6e78acc6115a0dc9189011c44b/kiwisolver-1.5.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:e7c4c09a490dc4d4a7f8cbee56c606a320f9dc28cf92a7157a39d1ce7676a657", size = 1584858, upload-time = "2026-03-09T13:15:15.103Z" }, + { url = "https://files.pythonhosted.org/packages/9e/80/04865e3d4638ac5bddec28908916df4a3075b8c6cc101786a96803188b96/kiwisolver-1.5.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:2a075bd7bd19c70cf67c8badfa36cf7c5d8de3c9ddb8420c51e10d9c50e94920", size = 1392539, upload-time = "2026-03-09T13:15:16.661Z" }, + { url = "https://files.pythonhosted.org/packages/ba/01/77a19cacc0893fa13fafa46d1bba06fb4dc2360b3292baf4b56d8e067b24/kiwisolver-1.5.0-cp314-cp314t-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:bdd3e53429ff02aa319ba59dfe4ceeec345bf46cf180ec2cf6fd5b942e7975e9", size = 1405310, upload-time = "2026-03-09T13:15:18.229Z" }, + { url = "https://files.pythonhosted.org/packages/53/39/bcaf5d0cca50e604cfa9b4e3ae1d64b50ca1ae5b754122396084599ef903/kiwisolver-1.5.0-cp314-cp314t-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:3cdcb35dc9d807259c981a85531048ede628eabcffb3239adf3d17463518992d", size = 1456244, upload-time = "2026-03-09T13:15:20.444Z" }, + { url = "https://files.pythonhosted.org/packages/d0/7a/72c187abc6975f6978c3e39b7cf67aeb8b3c0a8f9790aa7fd412855e9e1f/kiwisolver-1.5.0-cp314-cp314t-manylinux_2_39_riscv64.whl", hash = "sha256:70d593af6a6ca332d1df73d519fddb5148edb15cd90d5f0155e3746a6d4fcc65", size = 1073154, upload-time = "2026-03-09T13:15:22.039Z" }, + { url = "https://files.pythonhosted.org/packages/c7/ca/cf5b25783ebbd59143b4371ed0c8428a278abe68d6d0104b01865b1bbd0f/kiwisolver-1.5.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:377815a8616074cabbf3f53354e1d040c35815a134e01d7614b7692e4bf8acfa", size = 2334377, upload-time = "2026-03-09T13:15:23.741Z" }, + { url = "https://files.pythonhosted.org/packages/4a/e5/b1f492adc516796e88751282276745340e2a72dcd0d36cf7173e0daf3210/kiwisolver-1.5.0-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:0255a027391d52944eae1dbb5d4cc5903f57092f3674e8e544cdd2622826b3f0", size = 2425288, upload-time = "2026-03-09T13:15:25.789Z" }, + { url = "https://files.pythonhosted.org/packages/e6/e5/9b21fbe91a61b8f409d74a26498706e97a48008bfcd1864373d32a6ba31c/kiwisolver-1.5.0-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:012b1eb16e28718fa782b5e61dc6f2da1f0792ca73bd05d54de6cb9561665fc9", size = 2063158, upload-time = "2026-03-09T13:15:27.63Z" }, + { url = "https://files.pythonhosted.org/packages/b1/02/83f47986138310f95ea95531f851b2a62227c11cbc3e690ae1374fe49f0f/kiwisolver-1.5.0-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:0e3aafb33aed7479377e5e9a82e9d4bf87063741fc99fc7ae48b0f16e32bdd6f", size = 2597260, upload-time = "2026-03-09T13:15:29.421Z" }, + { url = "https://files.pythonhosted.org/packages/07/18/43a5f24608d8c313dd189cf838c8e68d75b115567c6279de7796197cfb6a/kiwisolver-1.5.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:e7a116ae737f0000343218c4edf5bd45893bfeaff0993c0b215d7124c9f77646", size = 2394403, upload-time = "2026-03-09T13:15:31.517Z" }, + { url = "https://files.pythonhosted.org/packages/3b/b5/98222136d839b8afabcaa943b09bd05888c2d36355b7e448550211d1fca4/kiwisolver-1.5.0-cp314-cp314t-win_amd64.whl", hash = "sha256:1dd9b0b119a350976a6d781e7278ec7aca0b201e1a9e2d23d9804afecb6ca681", size = 79687, upload-time = "2026-03-09T13:15:33.204Z" }, + { url = "https://files.pythonhosted.org/packages/99/a2/ca7dc962848040befed12732dff6acae7fb3c4f6fc4272b3f6c9a30b8713/kiwisolver-1.5.0-cp314-cp314t-win_arm64.whl", hash = "sha256:58f812017cd2985c21fbffb4864d59174d4903dd66fa23815e74bbc7a0e2dd57", size = 70032, upload-time = "2026-03-09T13:15:34.411Z" }, +] + +[[package]] +name = "lark" +version = "1.3.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/da/34/28fff3ab31ccff1fd4f6c7c7b0ceb2b6968d8ea4950663eadcb5720591a0/lark-1.3.1.tar.gz", hash = "sha256:b426a7a6d6d53189d318f2b6236ab5d6429eaf09259f1ca33eb716eed10d2905", size = 382732, upload-time = "2025-10-27T18:25:56.653Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/82/3d/14ce75ef66813643812f3093ab17e46d3a206942ce7376d31ec2d36229e7/lark-1.3.1-py3-none-any.whl", hash = "sha256:c629b661023a014c37da873b4ff58a817398d12635d3bbb2c5a03be7fe5d1e12", size = 113151, upload-time = "2025-10-27T18:25:54.882Z" }, +] + +[[package]] +name = "lazy-loader" +version = "0.5" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "packaging" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/49/ac/21a1f8aa3777f5658576777ea76bfb124b702c520bbe90edf4ae9915eafa/lazy_loader-0.5.tar.gz", hash = "sha256:717f9179a0dbed357012ddad50a5ad3d5e4d9a0b8712680d4e687f5e6e6ed9b3", size = 15294, upload-time = "2026-03-06T15:45:09.054Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8a/a1/8d812e53a5da1687abb10445275d41a8b13adb781bbf7196ddbcf8d88505/lazy_loader-0.5-py3-none-any.whl", hash = "sha256:ab0ea149e9c554d4ffeeb21105ac60bed7f3b4fd69b1d2360a4add51b170b005", size = 8044, upload-time = "2026-03-06T15:45:07.668Z" }, +] + +[[package]] +name = "llvmlite" +version = "0.47.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/01/88/a8952b6d5c21e74cbf158515b779666f692846502623e9e3c39d8e8ba25f/llvmlite-0.47.0.tar.gz", hash = "sha256:62031ce968ec74e95092184d4b0e857e444f8fdff0b8f9213707699570c33ccc", size = 193614, upload-time = "2026-03-31T18:29:53.497Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/77/6f/4615353e016799f80fa52ccb270a843c413b22361fadda2589b2922fb9b0/llvmlite-0.47.0-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:a3c6a735d4e1041808434f9d440faa3d78d9b4af2ee64d05a66f351883b6ceec", size = 37232771, upload-time = "2026-03-31T18:29:01.324Z" }, + { url = "https://files.pythonhosted.org/packages/31/b8/69f5565f1a280d032525878a86511eebed0645818492feeb169dfb20ae8e/llvmlite-0.47.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:2699a74321189e812d476a43d6d7f652f51811e7b5aad9d9bba842a1c7927acb", size = 56275178, upload-time = "2026-03-31T18:29:05.748Z" }, + { url = "https://files.pythonhosted.org/packages/d6/da/b32cafcb926fb0ce2aa25553bf32cb8764af31438f40e2481df08884c947/llvmlite-0.47.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6c6951e2b29930227963e53ee152441f0e14be92e9d4231852102d986c761e40", size = 55128632, upload-time = "2026-03-31T18:29:11.235Z" }, + { url = "https://files.pythonhosted.org/packages/46/9f/4898b44e4042c60fafcb1162dfb7014f6f15b1ec19bf29cfea6bf26df90d/llvmlite-0.47.0-cp313-cp313-win_amd64.whl", hash = "sha256:c2e9adf8698d813a9a5efb2d4370caf344dbc1e145019851fee6a6f319ba760e", size = 38138695, upload-time = "2026-03-31T18:29:15.43Z" }, + { url = "https://files.pythonhosted.org/packages/1c/d4/33c8af00f0bf6f552d74f3a054f648af2c5bc6bece97972f3bfadce4f5ec/llvmlite-0.47.0-cp314-cp314-macosx_12_0_arm64.whl", hash = "sha256:de966c626c35c9dff5ae7bf12db25637738d0df83fc370cf793bc94d43d92d14", size = 37232773, upload-time = "2026-03-31T18:29:19.453Z" }, + { url = "https://files.pythonhosted.org/packages/64/1d/a760e993e0c0ba6db38d46b9f48f6c7dceb8ac838824997fb9e25f97bc04/llvmlite-0.47.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:ddbccff2aeaff8670368340a158abefc032fe9b3ccf7d9c496639263d00151aa", size = 56275176, upload-time = "2026-03-31T18:29:24.149Z" }, + { url = "https://files.pythonhosted.org/packages/84/3b/e679bc3b29127182a7f4aa2d2e9e5bea42adb93fb840484147d59c236299/llvmlite-0.47.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d4a7b778a2e144fc64468fb9bf509ac1226c9813a00b4d7afea5d988c4e22fca", size = 55128631, upload-time = "2026-03-31T18:29:29.536Z" }, + { url = "https://files.pythonhosted.org/packages/be/f7/19e2a09c62809c9e63bbd14ce71fb92c6ff7b7b3045741bb00c781efc3c9/llvmlite-0.47.0-cp314-cp314-win_amd64.whl", hash = "sha256:694e3c2cdc472ed2bd8bd4555ca002eec4310961dd58ef791d508f57b5cc4c94", size = 39153826, upload-time = "2026-03-31T18:29:33.681Z" }, + { url = "https://files.pythonhosted.org/packages/40/a1/581a8c707b5e80efdbbe1dd94527404d33fe50bceb71f39d5a7e11bd57b7/llvmlite-0.47.0-cp314-cp314t-macosx_12_0_arm64.whl", hash = "sha256:92ec8a169a20b473c1c54d4695e371bde36489fc1efa3688e11e99beba0abf9c", size = 37232772, upload-time = "2026-03-31T18:29:37.952Z" }, + { url = "https://files.pythonhosted.org/packages/11/03/16090dd6f74ba2b8b922276047f15962fbeea0a75d5601607edb301ba945/llvmlite-0.47.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:fa1cbd800edd3b20bc141521f7fd45a6185a5b84109aa6855134e81397ffe72b", size = 56275178, upload-time = "2026-03-31T18:29:42.58Z" }, + { url = "https://files.pythonhosted.org/packages/f5/cb/0abf1dd4c5286a95ffe0c1d8c67aec06b515894a0dd2ac97f5e27b82ab0b/llvmlite-0.47.0-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f6725179b89f03b17dabe236ff3422cb8291b4c1bf40af152826dfd34e350ae8", size = 55128632, upload-time = "2026-03-31T18:29:46.939Z" }, + { url = "https://files.pythonhosted.org/packages/4f/79/d3bbab197e86e0ff4f9c07122895b66a3e0d024247fcff7f12c473cb36d9/llvmlite-0.47.0-cp314-cp314t-win_amd64.whl", hash = "sha256:6842cf6f707ec4be3d985a385ad03f72b2d724439e118fcbe99b2929964f0453", size = 39153839, upload-time = "2026-03-31T18:29:51.004Z" }, +] + +[[package]] +name = "markdown-it-py" +version = "4.2.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "mdurl" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/06/ff/7841249c247aa650a76b9ee4bbaeae59370dc8bfd2f6c01f3630c35eb134/markdown_it_py-4.2.0.tar.gz", hash = "sha256:04a21681d6fbb623de53f6f364d352309d4094dd4194040a10fd51833e418d49", size = 82454, upload-time = "2026-05-07T12:08:28.36Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b3/81/4da04ced5a082363ecfa159c010d200ecbd959ae410c10c0264a38cac0f5/markdown_it_py-4.2.0-py3-none-any.whl", hash = "sha256:9f7ebbcd14fe59494226453aed97c1070d83f8d24b6fc3a3bcf9a38092641c4a", size = 91687, upload-time = "2026-05-07T12:08:27.182Z" }, +] + +[[package]] +name = "markupsafe" +version = "3.0.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/7e/99/7690b6d4034fffd95959cbe0c02de8deb3098cc577c67bb6a24fe5d7caa7/markupsafe-3.0.3.tar.gz", hash = "sha256:722695808f4b6457b320fdc131280796bdceb04ab50fe1795cd540799ebe1698", size = 80313, upload-time = "2025-09-27T18:37:40.426Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/38/2f/907b9c7bbba283e68f20259574b13d005c121a0fa4c175f9bed27c4597ff/markupsafe-3.0.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:e1cf1972137e83c5d4c136c43ced9ac51d0e124706ee1c8aa8532c1287fa8795", size = 11622, upload-time = "2025-09-27T18:36:41.777Z" }, + { url = "https://files.pythonhosted.org/packages/9c/d9/5f7756922cdd676869eca1c4e3c0cd0df60ed30199ffd775e319089cb3ed/markupsafe-3.0.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:116bb52f642a37c115f517494ea5feb03889e04df47eeff5b130b1808ce7c219", size = 12029, upload-time = "2025-09-27T18:36:43.257Z" }, + { url = "https://files.pythonhosted.org/packages/00/07/575a68c754943058c78f30db02ee03a64b3c638586fba6a6dd56830b30a3/markupsafe-3.0.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:133a43e73a802c5562be9bbcd03d090aa5a1fe899db609c29e8c8d815c5f6de6", size = 24374, upload-time = "2025-09-27T18:36:44.508Z" }, + { url = "https://files.pythonhosted.org/packages/a9/21/9b05698b46f218fc0e118e1f8168395c65c8a2c750ae2bab54fc4bd4e0e8/markupsafe-3.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ccfcd093f13f0f0b7fdd0f198b90053bf7b2f02a3927a30e63f3ccc9df56b676", size = 22980, upload-time = "2025-09-27T18:36:45.385Z" }, + { url = "https://files.pythonhosted.org/packages/7f/71/544260864f893f18b6827315b988c146b559391e6e7e8f7252839b1b846a/markupsafe-3.0.3-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:509fa21c6deb7a7a273d629cf5ec029bc209d1a51178615ddf718f5918992ab9", size = 21990, upload-time = "2025-09-27T18:36:46.916Z" }, + { url = "https://files.pythonhosted.org/packages/c2/28/b50fc2f74d1ad761af2f5dcce7492648b983d00a65b8c0e0cb457c82ebbe/markupsafe-3.0.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a4afe79fb3de0b7097d81da19090f4df4f8d3a2b3adaa8764138aac2e44f3af1", size = 23784, upload-time = "2025-09-27T18:36:47.884Z" }, + { url = "https://files.pythonhosted.org/packages/ed/76/104b2aa106a208da8b17a2fb72e033a5a9d7073c68f7e508b94916ed47a9/markupsafe-3.0.3-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:795e7751525cae078558e679d646ae45574b47ed6e7771863fcc079a6171a0fc", size = 21588, upload-time = "2025-09-27T18:36:48.82Z" }, + { url = "https://files.pythonhosted.org/packages/b5/99/16a5eb2d140087ebd97180d95249b00a03aa87e29cc224056274f2e45fd6/markupsafe-3.0.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:8485f406a96febb5140bfeca44a73e3ce5116b2501ac54fe953e488fb1d03b12", size = 23041, upload-time = "2025-09-27T18:36:49.797Z" }, + { url = "https://files.pythonhosted.org/packages/19/bc/e7140ed90c5d61d77cea142eed9f9c303f4c4806f60a1044c13e3f1471d0/markupsafe-3.0.3-cp313-cp313-win32.whl", hash = "sha256:bdd37121970bfd8be76c5fb069c7751683bdf373db1ed6c010162b2a130248ed", size = 14543, upload-time = "2025-09-27T18:36:51.584Z" }, + { url = "https://files.pythonhosted.org/packages/05/73/c4abe620b841b6b791f2edc248f556900667a5a1cf023a6646967ae98335/markupsafe-3.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5", size = 15113, upload-time = "2025-09-27T18:36:52.537Z" }, + { url = "https://files.pythonhosted.org/packages/f0/3a/fa34a0f7cfef23cf9500d68cb7c32dd64ffd58a12b09225fb03dd37d5b80/markupsafe-3.0.3-cp313-cp313-win_arm64.whl", hash = "sha256:7e68f88e5b8799aa49c85cd116c932a1ac15caaa3f5db09087854d218359e485", size = 13911, upload-time = "2025-09-27T18:36:53.513Z" }, + { url = "https://files.pythonhosted.org/packages/e4/d7/e05cd7efe43a88a17a37b3ae96e79a19e846f3f456fe79c57ca61356ef01/markupsafe-3.0.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:218551f6df4868a8d527e3062d0fb968682fe92054e89978594c28e642c43a73", size = 11658, upload-time = "2025-09-27T18:36:54.819Z" }, + { url = "https://files.pythonhosted.org/packages/99/9e/e412117548182ce2148bdeacdda3bb494260c0b0184360fe0d56389b523b/markupsafe-3.0.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:3524b778fe5cfb3452a09d31e7b5adefeea8c5be1d43c4f810ba09f2ceb29d37", size = 12066, upload-time = "2025-09-27T18:36:55.714Z" }, + { url = "https://files.pythonhosted.org/packages/bc/e6/fa0ffcda717ef64a5108eaa7b4f5ed28d56122c9a6d70ab8b72f9f715c80/markupsafe-3.0.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4e885a3d1efa2eadc93c894a21770e4bc67899e3543680313b09f139e149ab19", size = 25639, upload-time = "2025-09-27T18:36:56.908Z" }, + { url = "https://files.pythonhosted.org/packages/96/ec/2102e881fe9d25fc16cb4b25d5f5cde50970967ffa5dddafdb771237062d/markupsafe-3.0.3-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8709b08f4a89aa7586de0aadc8da56180242ee0ada3999749b183aa23df95025", size = 23569, upload-time = "2025-09-27T18:36:57.913Z" }, + { url = "https://files.pythonhosted.org/packages/4b/30/6f2fce1f1f205fc9323255b216ca8a235b15860c34b6798f810f05828e32/markupsafe-3.0.3-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:b8512a91625c9b3da6f127803b166b629725e68af71f8184ae7e7d54686a56d6", size = 23284, upload-time = "2025-09-27T18:36:58.833Z" }, + { url = "https://files.pythonhosted.org/packages/58/47/4a0ccea4ab9f5dcb6f79c0236d954acb382202721e704223a8aafa38b5c8/markupsafe-3.0.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:9b79b7a16f7fedff2495d684f2b59b0457c3b493778c9eed31111be64d58279f", size = 24801, upload-time = "2025-09-27T18:36:59.739Z" }, + { url = "https://files.pythonhosted.org/packages/6a/70/3780e9b72180b6fecb83a4814d84c3bf4b4ae4bf0b19c27196104149734c/markupsafe-3.0.3-cp313-cp313t-musllinux_1_2_riscv64.whl", hash = "sha256:12c63dfb4a98206f045aa9563db46507995f7ef6d83b2f68eda65c307c6829eb", size = 22769, upload-time = "2025-09-27T18:37:00.719Z" }, + { url = "https://files.pythonhosted.org/packages/98/c5/c03c7f4125180fc215220c035beac6b9cb684bc7a067c84fc69414d315f5/markupsafe-3.0.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:8f71bc33915be5186016f675cd83a1e08523649b0e33efdb898db577ef5bb009", size = 23642, upload-time = "2025-09-27T18:37:01.673Z" }, + { url = "https://files.pythonhosted.org/packages/80/d6/2d1b89f6ca4bff1036499b1e29a1d02d282259f3681540e16563f27ebc23/markupsafe-3.0.3-cp313-cp313t-win32.whl", hash = "sha256:69c0b73548bc525c8cb9a251cddf1931d1db4d2258e9599c28c07ef3580ef354", size = 14612, upload-time = "2025-09-27T18:37:02.639Z" }, + { url = "https://files.pythonhosted.org/packages/2b/98/e48a4bfba0a0ffcf9925fe2d69240bfaa19c6f7507b8cd09c70684a53c1e/markupsafe-3.0.3-cp313-cp313t-win_amd64.whl", hash = "sha256:1b4b79e8ebf6b55351f0d91fe80f893b4743f104bff22e90697db1590e47a218", size = 15200, upload-time = "2025-09-27T18:37:03.582Z" }, + { url = "https://files.pythonhosted.org/packages/0e/72/e3cc540f351f316e9ed0f092757459afbc595824ca724cbc5a5d4263713f/markupsafe-3.0.3-cp313-cp313t-win_arm64.whl", hash = "sha256:ad2cf8aa28b8c020ab2fc8287b0f823d0a7d8630784c31e9ee5edea20f406287", size = 13973, upload-time = "2025-09-27T18:37:04.929Z" }, + { url = "https://files.pythonhosted.org/packages/33/8a/8e42d4838cd89b7dde187011e97fe6c3af66d8c044997d2183fbd6d31352/markupsafe-3.0.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:eaa9599de571d72e2daf60164784109f19978b327a3910d3e9de8c97b5b70cfe", size = 11619, upload-time = "2025-09-27T18:37:06.342Z" }, + { url = "https://files.pythonhosted.org/packages/b5/64/7660f8a4a8e53c924d0fa05dc3a55c9cee10bbd82b11c5afb27d44b096ce/markupsafe-3.0.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:c47a551199eb8eb2121d4f0f15ae0f923d31350ab9280078d1e5f12b249e0026", size = 12029, upload-time = "2025-09-27T18:37:07.213Z" }, + { url = "https://files.pythonhosted.org/packages/da/ef/e648bfd021127bef5fa12e1720ffed0c6cbb8310c8d9bea7266337ff06de/markupsafe-3.0.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f34c41761022dd093b4b6896d4810782ffbabe30f2d443ff5f083e0cbbb8c737", size = 24408, upload-time = "2025-09-27T18:37:09.572Z" }, + { url = "https://files.pythonhosted.org/packages/41/3c/a36c2450754618e62008bf7435ccb0f88053e07592e6028a34776213d877/markupsafe-3.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:457a69a9577064c05a97c41f4e65148652db078a3a509039e64d3467b9e7ef97", size = 23005, upload-time = "2025-09-27T18:37:10.58Z" }, + { url = "https://files.pythonhosted.org/packages/bc/20/b7fdf89a8456b099837cd1dc21974632a02a999ec9bf7ca3e490aacd98e7/markupsafe-3.0.3-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:e8afc3f2ccfa24215f8cb28dcf43f0113ac3c37c2f0f0806d8c70e4228c5cf4d", size = 22048, upload-time = "2025-09-27T18:37:11.547Z" }, + { url = "https://files.pythonhosted.org/packages/9a/a7/591f592afdc734f47db08a75793a55d7fbcc6902a723ae4cfbab61010cc5/markupsafe-3.0.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:ec15a59cf5af7be74194f7ab02d0f59a62bdcf1a537677ce67a2537c9b87fcda", size = 23821, upload-time = "2025-09-27T18:37:12.48Z" }, + { url = "https://files.pythonhosted.org/packages/7d/33/45b24e4f44195b26521bc6f1a82197118f74df348556594bd2262bda1038/markupsafe-3.0.3-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:0eb9ff8191e8498cca014656ae6b8d61f39da5f95b488805da4bb029cccbfbaf", size = 21606, upload-time = "2025-09-27T18:37:13.485Z" }, + { url = "https://files.pythonhosted.org/packages/ff/0e/53dfaca23a69fbfbbf17a4b64072090e70717344c52eaaaa9c5ddff1e5f0/markupsafe-3.0.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:2713baf880df847f2bece4230d4d094280f4e67b1e813eec43b4c0e144a34ffe", size = 23043, upload-time = "2025-09-27T18:37:14.408Z" }, + { url = "https://files.pythonhosted.org/packages/46/11/f333a06fc16236d5238bfe74daccbca41459dcd8d1fa952e8fbd5dccfb70/markupsafe-3.0.3-cp314-cp314-win32.whl", hash = "sha256:729586769a26dbceff69f7a7dbbf59ab6572b99d94576a5592625d5b411576b9", size = 14747, upload-time = "2025-09-27T18:37:15.36Z" }, + { url = "https://files.pythonhosted.org/packages/28/52/182836104b33b444e400b14f797212f720cbc9ed6ba34c800639d154e821/markupsafe-3.0.3-cp314-cp314-win_amd64.whl", hash = "sha256:bdc919ead48f234740ad807933cdf545180bfbe9342c2bb451556db2ed958581", size = 15341, upload-time = "2025-09-27T18:37:16.496Z" }, + { url = "https://files.pythonhosted.org/packages/6f/18/acf23e91bd94fd7b3031558b1f013adfa21a8e407a3fdb32745538730382/markupsafe-3.0.3-cp314-cp314-win_arm64.whl", hash = "sha256:5a7d5dc5140555cf21a6fefbdbf8723f06fcd2f63ef108f2854de715e4422cb4", size = 14073, upload-time = "2025-09-27T18:37:17.476Z" }, + { url = "https://files.pythonhosted.org/packages/3c/f0/57689aa4076e1b43b15fdfa646b04653969d50cf30c32a102762be2485da/markupsafe-3.0.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:1353ef0c1b138e1907ae78e2f6c63ff67501122006b0f9abad68fda5f4ffc6ab", size = 11661, upload-time = "2025-09-27T18:37:18.453Z" }, + { url = "https://files.pythonhosted.org/packages/89/c3/2e67a7ca217c6912985ec766c6393b636fb0c2344443ff9d91404dc4c79f/markupsafe-3.0.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:1085e7fbddd3be5f89cc898938f42c0b3c711fdcb37d75221de2666af647c175", size = 12069, upload-time = "2025-09-27T18:37:19.332Z" }, + { url = "https://files.pythonhosted.org/packages/f0/00/be561dce4e6ca66b15276e184ce4b8aec61fe83662cce2f7d72bd3249d28/markupsafe-3.0.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1b52b4fb9df4eb9ae465f8d0c228a00624de2334f216f178a995ccdcf82c4634", size = 25670, upload-time = "2025-09-27T18:37:20.245Z" }, + { url = "https://files.pythonhosted.org/packages/50/09/c419f6f5a92e5fadde27efd190eca90f05e1261b10dbd8cbcb39cd8ea1dc/markupsafe-3.0.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fed51ac40f757d41b7c48425901843666a6677e3e8eb0abcff09e4ba6e664f50", size = 23598, upload-time = "2025-09-27T18:37:21.177Z" }, + { url = "https://files.pythonhosted.org/packages/22/44/a0681611106e0b2921b3033fc19bc53323e0b50bc70cffdd19f7d679bb66/markupsafe-3.0.3-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:f190daf01f13c72eac4efd5c430a8de82489d9cff23c364c3ea822545032993e", size = 23261, upload-time = "2025-09-27T18:37:22.167Z" }, + { url = "https://files.pythonhosted.org/packages/5f/57/1b0b3f100259dc9fffe780cfb60d4be71375510e435efec3d116b6436d43/markupsafe-3.0.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:e56b7d45a839a697b5eb268c82a71bd8c7f6c94d6fd50c3d577fa39a9f1409f5", size = 24835, upload-time = "2025-09-27T18:37:23.296Z" }, + { url = "https://files.pythonhosted.org/packages/26/6a/4bf6d0c97c4920f1597cc14dd720705eca0bf7c787aebc6bb4d1bead5388/markupsafe-3.0.3-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:f3e98bb3798ead92273dc0e5fd0f31ade220f59a266ffd8a4f6065e0a3ce0523", size = 22733, upload-time = "2025-09-27T18:37:24.237Z" }, + { url = "https://files.pythonhosted.org/packages/14/c7/ca723101509b518797fedc2fdf79ba57f886b4aca8a7d31857ba3ee8281f/markupsafe-3.0.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:5678211cb9333a6468fb8d8be0305520aa073f50d17f089b5b4b477ea6e67fdc", size = 23672, upload-time = "2025-09-27T18:37:25.271Z" }, + { url = "https://files.pythonhosted.org/packages/fb/df/5bd7a48c256faecd1d36edc13133e51397e41b73bb77e1a69deab746ebac/markupsafe-3.0.3-cp314-cp314t-win32.whl", hash = "sha256:915c04ba3851909ce68ccc2b8e2cd691618c4dc4c4232fb7982bca3f41fd8c3d", size = 14819, upload-time = "2025-09-27T18:37:26.285Z" }, + { url = "https://files.pythonhosted.org/packages/1a/8a/0402ba61a2f16038b48b39bccca271134be00c5c9f0f623208399333c448/markupsafe-3.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:4faffd047e07c38848ce017e8725090413cd80cbc23d86e55c587bf979e579c9", size = 15426, upload-time = "2025-09-27T18:37:27.316Z" }, + { url = "https://files.pythonhosted.org/packages/70/bc/6f1c2f612465f5fa89b95bead1f44dcb607670fd42891d8fdcd5d039f4f4/markupsafe-3.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:32001d6a8fc98c8cb5c947787c5d08b0a50663d139f1305bac5885d98d9b40fa", size = 14146, upload-time = "2025-09-27T18:37:28.327Z" }, +] + +[[package]] +name = "matplotlib" +version = "3.10.9" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "contourpy" }, + { name = "cycler" }, + { name = "fonttools" }, + { name = "kiwisolver" }, + { name = "numpy" }, + { name = "packaging" }, + { name = "pillow" }, + { name = "pyparsing" }, + { name = "python-dateutil" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/63/1b/4be5be87d43d327a0cf4de1a56e86f7f84c89312452406cf122efe2839e6/matplotlib-3.10.9.tar.gz", hash = "sha256:fd66508e8c6877d98e586654b608a0456db8d7e8a546eb1e2600efd957302358", size = 34811233, upload-time = "2026-04-24T00:14:13.539Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/aa/d3/8d4f6afbecb49fc04e060a57c0fce39ea51cc163a6bd87303ccd698e4fa6/matplotlib-3.10.9-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:b580440f1ff81a0e34122051a3dfabb7e4b7f9e380629929bde0eff9af72165f", size = 8320331, upload-time = "2026-04-24T00:12:39.688Z" }, + { url = "https://files.pythonhosted.org/packages/63/d9/9e14bc7564bf92d5ffa801ae5fac819ce74b925dfb55e3ebde61a3bbad3e/matplotlib-3.10.9-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b1b745c489cd1a77a0dc1120a05dc87af9798faebc913601feb8c73d89bf2d1e", size = 8216461, upload-time = "2026-04-24T00:12:42.494Z" }, + { url = "https://files.pythonhosted.org/packages/8a/17/4402d0d14ccf1dfc70932600b68097fbbf9c898a4871d2cbbe79c7801a32/matplotlib-3.10.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:8f3bcac1ca5ed000a6f4337d47ba67dfddf37ed6a46c15fd7f014997f7bf865f", size = 8790091, upload-time = "2026-04-24T00:12:44.789Z" }, + { url = "https://files.pythonhosted.org/packages/3e/0b/322aeec06dd9b91411f92028b37d447342770a24392aa4813e317064dad5/matplotlib-3.10.9-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:7a8d66a55def891c33147ba3ba9bfcabf0b526a43764c818acbb4525e5ed0838", size = 9605027, upload-time = "2026-04-24T00:12:47.583Z" }, + { url = "https://files.pythonhosted.org/packages/74/88/5f13482f55e7b00bcfc09838b093c2456e1379978d2a146844aae05350ad/matplotlib-3.10.9-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:d843374407c4017a6403b59c6c81606773d136f3259d5b6da3131bc814542cc2", size = 9671269, upload-time = "2026-04-24T00:12:50.878Z" }, + { url = "https://files.pythonhosted.org/packages/c5/e0/0840fd2f93da988ec660b8ad1984abe9f25d2aed22a5e394ff1c68c88307/matplotlib-3.10.9-cp313-cp313-win_amd64.whl", hash = "sha256:f4399f64b3e94cd500195490972ae1ee81170df1636fa15364d157d5bdd7b921", size = 8217588, upload-time = "2026-04-24T00:12:53.784Z" }, + { url = "https://files.pythonhosted.org/packages/47/b9/d706d06dd605c49b9f83a2aed8c13e3e5db70697d7a80b7e3d7915de6b17/matplotlib-3.10.9-cp313-cp313-win_arm64.whl", hash = "sha256:ba7b3b8ef09eab7df0e86e9ae086faa433efbfbdb46afcb3aa16aabf779469a8", size = 8136913, upload-time = "2026-04-24T00:12:56.501Z" }, + { url = "https://files.pythonhosted.org/packages/9b/45/6e32d96978264c8ca8c4b1010adb955a1a49cfaf314e212bbc8908f04a61/matplotlib-3.10.9-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:09218df8a93712bd6ea133e83a153c755448cf7868316c531cffcc43f69d1cc9", size = 8368019, upload-time = "2026-04-24T00:12:58.896Z" }, + { url = "https://files.pythonhosted.org/packages/86/0a/c8e3d3bba245f0f7fc424937f8ff7ef77291a36af3edb97ccd78aa93d84f/matplotlib-3.10.9-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:82368699727bfb7b0182e1aa13082e3c08e092fa1a25d3e1fd92405bff96f6d4", size = 8264645, upload-time = "2026-04-24T00:13:01.406Z" }, + { url = "https://files.pythonhosted.org/packages/3d/aa/5bf5a14fe4fed73a4209a155606f8096ff797aad89c6c35179026571133e/matplotlib-3.10.9-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:3225f4e1edcb8c86c884ddf79ebe20ecd0a67d30188f279897554ccd8fded4dc", size = 8802194, upload-time = "2026-04-24T00:13:03.702Z" }, + { url = "https://files.pythonhosted.org/packages/dd/5e/b4be852d6bba6fd15893fadf91ff26ae49cb91aac789e95dde9d342e664f/matplotlib-3.10.9-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:de2445a0c6690d21b7eb6ce071cebad6d40a2e9bdf10d039074a96ba19797b99", size = 9622684, upload-time = "2026-04-24T00:13:06.647Z" }, + { url = "https://files.pythonhosted.org/packages/4c/3d/ed428c971139112ef730f62770654d609467346d09d4b62617e1afd68a5a/matplotlib-3.10.9-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:b2b9516251cb89ff618d757daec0e2ed1bf21248013844a853d87ef85ab3081d", size = 9680790, upload-time = "2026-04-24T00:13:10.009Z" }, + { url = "https://files.pythonhosted.org/packages/e7/09/052e884aaf2b985c63cb79f715f1d5b6a3eaa7de78f6a52b9dbc077d5b53/matplotlib-3.10.9-cp313-cp313t-win_amd64.whl", hash = "sha256:e9fae004b941b23ff2edcf1567a857ed77bafc8086ffa258190462328434faf8", size = 8287571, upload-time = "2026-04-24T00:13:13.087Z" }, + { url = "https://files.pythonhosted.org/packages/f4/38/ae27288e788c35a4250491422f3db7750366fc8c97d6f36fbdecfc1f5518/matplotlib-3.10.9-cp313-cp313t-win_arm64.whl", hash = "sha256:6b63d9c7c769b88ab81e10dc86e4e0607cf56817b9f9e6cf24b2a5f1693b8e38", size = 8188292, upload-time = "2026-04-24T00:13:15.546Z" }, + { url = "https://files.pythonhosted.org/packages/d6/e6/3bd8afd04949f02eabc1c17115ea5255e19cacd4d06fc5abdde4eeb0052c/matplotlib-3.10.9-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:172db52c9e683f5d12eaf57f0f54834190e12581fe1cc2a19595a8f5acb4e77d", size = 8321276, upload-time = "2026-04-24T00:13:18.318Z" }, + { url = "https://files.pythonhosted.org/packages/41/86/86231232fff41c9f8e4a1a7d7a597d349a02527109c3af7d618366122139/matplotlib-3.10.9-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:97e35e8d39ccc85859095e01a53847432ba9a53ddf7986f7a54a11b73d0e143f", size = 8218218, upload-time = "2026-04-24T00:13:20.974Z" }, + { url = "https://files.pythonhosted.org/packages/85/8f/becc9722cafc64f5d2eb0b7c1bf5f585271c618a45dbd8fabeb021f898b6/matplotlib-3.10.9-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:aba1615dabe83188e19d4f75a253c6a08423e04c1425e64039f800050a69de6b", size = 9608145, upload-time = "2026-04-24T00:13:23.228Z" }, + { url = "https://files.pythonhosted.org/packages/32/5d/f7e914f7d9325abff4057cee62c0fa70263683189f774473cbfb534cd13b/matplotlib-3.10.9-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:34cf8167e023ad956c15f36302911d5406bd99a9862c1a8499ea6f7c0e015dc2", size = 9885085, upload-time = "2026-04-24T00:13:25.849Z" }, + { url = "https://files.pythonhosted.org/packages/a5/fd/fa69f2221534e80cc5772ac2b7d222011a2acafc2ec7216d5dd174c864ae/matplotlib-3.10.9-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:59476c6d29d612b8e9bb6ce8c5b631be6ba8f9e3a2421f22a02b192c7dd28716", size = 9672358, upload-time = "2026-04-24T00:13:28.906Z" }, + { url = "https://files.pythonhosted.org/packages/ab/1a/5a4f747a8b271cbb024946d2dd3c913ab5032ba430626f8c3528ada96b4b/matplotlib-3.10.9-cp314-cp314-win_amd64.whl", hash = "sha256:336b9acc64d309063126edcdaca00db9373af3c476bb94388fe9c5a53ad13e6f", size = 8349970, upload-time = "2026-04-24T00:13:31.904Z" }, + { url = "https://files.pythonhosted.org/packages/64/dc/95d60ecaefe30680a154b52ea96ab4b0dab547f1fd6aa12f5fb655e89cae/matplotlib-3.10.9-cp314-cp314-win_arm64.whl", hash = "sha256:2dc9477819ffd78ad12a20df1d9d6a6bd4fec6aaa9072681465fddca052f1456", size = 8272785, upload-time = "2026-04-24T00:13:34.511Z" }, + { url = "https://files.pythonhosted.org/packages/70/a0/005d68bc8b8418300ce6591f18586910a8526806e2ab663933d9f20a41e9/matplotlib-3.10.9-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:da4e09638420548f31c354032a6250e473c68e5a4e96899b4844cf39ddea23fe", size = 8367999, upload-time = "2026-04-24T00:13:36.962Z" }, + { url = "https://files.pythonhosted.org/packages/22/05/1236cc9290be70b2498af20ca348add76e3fffe7f67b477db5133a84f3ea/matplotlib-3.10.9-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:345f6f68ecc8da0ca56fad2ea08fde1a115eda530079eca185d50a7bc3e146c6", size = 8264543, upload-time = "2026-04-24T00:13:39.851Z" }, + { url = "https://files.pythonhosted.org/packages/cd/c2/071f5a5ff6c5bd63aaaf2f45c811d9bf2ced94bde188d9e1a519e21d0cba/matplotlib-3.10.9-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4edcfbd8565339aa62f1cd4012f7180926fdbe71850f7b0d3c379c175cd6b66c", size = 9622800, upload-time = "2026-04-24T00:13:42.296Z" }, + { url = "https://files.pythonhosted.org/packages/95/57/da7d1f10a85624b9e7db68e069dd94e58dc41dbf9463c5921632ecbe3661/matplotlib-3.10.9-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6be157fe17fc37cb95ac1d7374cf717ce9259616edec911a78d9d26dae8522d4", size = 9888561, upload-time = "2026-04-24T00:13:45.026Z" }, + { url = "https://files.pythonhosted.org/packages/67/b2/ef8d6bb59b0edb6c16c968b70f548aa13b54348972def5aa6ac85df67145/matplotlib-3.10.9-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:4e42042d54db34fda4e95a7bd3e5789c2a995d2dad3eb8850232ee534092fbbf", size = 9680884, upload-time = "2026-04-24T00:13:48.066Z" }, + { url = "https://files.pythonhosted.org/packages/61/1c/d21bfeb9931881ebe96bcfcff27c7ae4b160ae0ec291a714c42641a56d75/matplotlib-3.10.9-cp314-cp314t-win_amd64.whl", hash = "sha256:c27df8b3848f32a83d1767566595e43cfaa4460380974da06f4279a7ec143c39", size = 8432333, upload-time = "2026-04-24T00:13:51.008Z" }, + { url = "https://files.pythonhosted.org/packages/78/23/92493c3e6e1b635ccfff146f7b99e674808787915420373ac399283764c2/matplotlib-3.10.9-cp314-cp314t-win_arm64.whl", hash = "sha256:a49f1eadc84ca85fd72fa4e89e70e61bf86452df6f971af04b12c60761a0772c", size = 8324785, upload-time = "2026-04-24T00:13:53.633Z" }, +] + +[[package]] +name = "matplotlib-inline" +version = "0.2.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/bd/c0/9f7c9a46090390368a4d7bcb76bb87a4a36c421e4c0792cdb53486ffac7a/matplotlib_inline-0.2.2.tar.gz", hash = "sha256:72f3fe8fce36b70d4a5b612f899090cd0401deddc4ea90e1572b9f4bfb058c79", size = 8150, upload-time = "2026-05-08T17:33:33.49Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/41/09/5b161152e2d90f7b87f781c2e1267494aef9c32498df793f73ad0a0a494a/matplotlib_inline-0.2.2-py3-none-any.whl", hash = "sha256:3c821cf1c209f59fb2d2d64abbf5b23b67bcb2210d663f9918dd851c6da1fcf6", size = 9534, upload-time = "2026-05-08T17:33:32.055Z" }, +] + +[[package]] +name = "mcp" +version = "1.27.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "httpx" }, + { name = "httpx-sse" }, + { name = "jsonschema" }, + { name = "pydantic" }, + { name = "pydantic-settings" }, + { name = "pyjwt", extra = ["crypto"] }, + { name = "python-multipart" }, + { name = "pywin32", marker = "sys_platform == 'win32'" }, + { name = "sse-starlette" }, + { name = "starlette" }, + { name = "typing-extensions" }, + { name = "typing-inspection" }, + { name = "uvicorn", marker = "sys_platform != 'emscripten'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/38/83/d1efe7c2980d8a3afa476f4e3d42d53dd54c0ab94c27bee5d755b45c8b73/mcp-1.27.1.tar.gz", hash = "sha256:0f47e1820f8f8f941466b39749eb1d1839a04caddca2bc60e9d46e8a99914924", size = 608458, upload-time = "2026-05-08T16:50:12.601Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fd/73/42d9596facebdb533b7f0b86c1b0364ef350d1f8ba78b1052e8a58b48b65/mcp-1.27.1-py3-none-any.whl", hash = "sha256:1af3c4203b329430fde7a87b4fcb6392a041f5cb851fd68fc674016ab4e7c06f", size = 216260, upload-time = "2026-05-08T16:50:10.547Z" }, +] + +[package.optional-dependencies] +cli = [ + { name = "python-dotenv" }, + { name = "typer" }, +] + +[[package]] +name = "mdurl" +version = "0.1.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d6/54/cfe61301667036ec958cb99bd3efefba235e65cdeb9c84d24a8293ba1d90/mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba", size = 8729, upload-time = "2022-08-14T12:40:10.846Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8", size = 9979, upload-time = "2022-08-14T12:40:09.779Z" }, +] + +[[package]] +name = "mistune" +version = "3.2.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ca/84/620cc3f7e3adf6f5067e10f4dbae71295d8f9e16d5d3f9ef97c40f2f592c/mistune-3.2.1.tar.gz", hash = "sha256:7c8e5501d38bac1582e067e46c8343f17d57ea1aaa735823f3aba1fd59c88a28", size = 98003, upload-time = "2026-05-03T14:33:22.312Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2a/7f/a946aa4f8752b37102b41e64dca18a1976ac705c3a0d1dfe74d820a02552/mistune-3.2.1-py3-none-any.whl", hash = "sha256:78cdb0ba5e938053ccf63651b352508d2efa9411dc8810bfb05f2dc5140c0048", size = 53749, upload-time = "2026-05-03T14:33:20.551Z" }, +] + +[[package]] +name = "mpmath" +version = "1.3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e0/47/dd32fa426cc72114383ac549964eecb20ecfd886d1e5ccf5340b55b02f57/mpmath-1.3.0.tar.gz", hash = "sha256:7a28eb2a9774d00c7bc92411c19a89209d5da7c4c9a9e227be8330a23a25b91f", size = 508106, upload-time = "2023-03-07T16:47:11.061Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl", hash = "sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c", size = 536198, upload-time = "2023-03-07T16:47:09.197Z" }, +] + +[[package]] +name = "multidict" +version = "6.7.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1a/c2/c2d94cbe6ac1753f3fc980da97b3d930efe1da3af3c9f5125354436c073d/multidict-6.7.1.tar.gz", hash = "sha256:ec6652a1bee61c53a3e5776b6049172c53b6aaba34f18c9ad04f82712bac623d", size = 102010, upload-time = "2026-01-26T02:46:45.979Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f2/22/929c141d6c0dba87d3e1d38fbdf1ba8baba86b7776469f2bc2d3227a1e67/multidict-6.7.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:2b41f5fed0ed563624f1c17630cb9941cf2309d4df00e494b551b5f3e3d67a23", size = 76174, upload-time = "2026-01-26T02:44:18.509Z" }, + { url = "https://files.pythonhosted.org/packages/c7/75/bc704ae15fee974f8fccd871305e254754167dce5f9e42d88a2def741a1d/multidict-6.7.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:84e61e3af5463c19b67ced91f6c634effb89ef8bfc5ca0267f954451ed4bb6a2", size = 45116, upload-time = "2026-01-26T02:44:19.745Z" }, + { url = "https://files.pythonhosted.org/packages/79/76/55cd7186f498ed080a18440c9013011eb548f77ae1b297206d030eb1180a/multidict-6.7.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:935434b9853c7c112eee7ac891bc4cb86455aa631269ae35442cb316790c1445", size = 43524, upload-time = "2026-01-26T02:44:21.571Z" }, + { url = "https://files.pythonhosted.org/packages/e9/3c/414842ef8d5a1628d68edee29ba0e5bcf235dbfb3ccd3ea303a7fe8c72ff/multidict-6.7.1-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:432feb25a1cb67fe82a9680b4d65fb542e4635cb3166cd9c01560651ad60f177", size = 249368, upload-time = "2026-01-26T02:44:22.803Z" }, + { url = "https://files.pythonhosted.org/packages/f6/32/befed7f74c458b4a525e60519fe8d87eef72bb1e99924fa2b0f9d97a221e/multidict-6.7.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e82d14e3c948952a1a85503817e038cba5905a3352de76b9a465075d072fba23", size = 256952, upload-time = "2026-01-26T02:44:24.306Z" }, + { url = "https://files.pythonhosted.org/packages/03/d6/c878a44ba877f366630c860fdf74bfb203c33778f12b6ac274936853c451/multidict-6.7.1-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:4cfb48c6ea66c83bcaaf7e4dfa7ec1b6bbcf751b7db85a328902796dfde4c060", size = 240317, upload-time = "2026-01-26T02:44:25.772Z" }, + { url = "https://files.pythonhosted.org/packages/68/49/57421b4d7ad2e9e60e25922b08ceb37e077b90444bde6ead629095327a6f/multidict-6.7.1-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:1d540e51b7e8e170174555edecddbd5538105443754539193e3e1061864d444d", size = 267132, upload-time = "2026-01-26T02:44:27.648Z" }, + { url = "https://files.pythonhosted.org/packages/b7/fe/ec0edd52ddbcea2a2e89e174f0206444a61440b40f39704e64dc807a70bd/multidict-6.7.1-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:273d23f4b40f3dce4d6c8a821c741a86dec62cded82e1175ba3d99be128147ed", size = 268140, upload-time = "2026-01-26T02:44:29.588Z" }, + { url = "https://files.pythonhosted.org/packages/b0/73/6e1b01cbeb458807aa0831742232dbdd1fa92bfa33f52a3f176b4ff3dc11/multidict-6.7.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9d624335fd4fa1c08a53f8b4be7676ebde19cd092b3895c421045ca87895b429", size = 254277, upload-time = "2026-01-26T02:44:30.902Z" }, + { url = "https://files.pythonhosted.org/packages/6a/b2/5fb8c124d7561a4974c342bc8c778b471ebbeb3cc17df696f034a7e9afe7/multidict-6.7.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:12fad252f8b267cc75b66e8fc51b3079604e8d43a75428ffe193cd9e2195dfd6", size = 252291, upload-time = "2026-01-26T02:44:32.31Z" }, + { url = "https://files.pythonhosted.org/packages/5a/96/51d4e4e06bcce92577fcd488e22600bd38e4fd59c20cb49434d054903bd2/multidict-6.7.1-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:03ede2a6ffbe8ef936b92cb4529f27f42be7f56afcdab5ab739cd5f27fb1cbf9", size = 250156, upload-time = "2026-01-26T02:44:33.734Z" }, + { url = "https://files.pythonhosted.org/packages/db/6b/420e173eec5fba721a50e2a9f89eda89d9c98fded1124f8d5c675f7a0c0f/multidict-6.7.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:90efbcf47dbe33dcf643a1e400d67d59abeac5db07dc3f27d6bdeae497a2198c", size = 249742, upload-time = "2026-01-26T02:44:35.222Z" }, + { url = "https://files.pythonhosted.org/packages/44/a3/ec5b5bd98f306bc2aa297b8c6f11a46714a56b1e6ef5ebda50a4f5d7c5fb/multidict-6.7.1-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:5c4b9bfc148f5a91be9244d6264c53035c8a0dcd2f51f1c3c6e30e30ebaa1c84", size = 262221, upload-time = "2026-01-26T02:44:36.604Z" }, + { url = "https://files.pythonhosted.org/packages/cd/f7/e8c0d0da0cd1e28d10e624604e1a36bcc3353aaebdfdc3a43c72bc683a12/multidict-6.7.1-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:401c5a650f3add2472d1d288c26deebc540f99e2fb83e9525007a74cd2116f1d", size = 258664, upload-time = "2026-01-26T02:44:38.008Z" }, + { url = "https://files.pythonhosted.org/packages/52/da/151a44e8016dd33feed44f730bd856a66257c1ee7aed4f44b649fb7edeb3/multidict-6.7.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:97891f3b1b3ffbded884e2916cacf3c6fc87b66bb0dde46f7357404750559f33", size = 249490, upload-time = "2026-01-26T02:44:39.386Z" }, + { url = "https://files.pythonhosted.org/packages/87/af/a3b86bf9630b732897f6fc3f4c4714b90aa4361983ccbdcd6c0339b21b0c/multidict-6.7.1-cp313-cp313-win32.whl", hash = "sha256:e1c5988359516095535c4301af38d8a8838534158f649c05dd1050222321bcb3", size = 41695, upload-time = "2026-01-26T02:44:41.318Z" }, + { url = "https://files.pythonhosted.org/packages/b2/35/e994121b0e90e46134673422dd564623f93304614f5d11886b1b3e06f503/multidict-6.7.1-cp313-cp313-win_amd64.whl", hash = "sha256:960c83bf01a95b12b08fd54324a4eb1d5b52c88932b5cba5d6e712bb3ed12eb5", size = 45884, upload-time = "2026-01-26T02:44:42.488Z" }, + { url = "https://files.pythonhosted.org/packages/ca/61/42d3e5dbf661242a69c97ea363f2d7b46c567da8eadef8890022be6e2ab0/multidict-6.7.1-cp313-cp313-win_arm64.whl", hash = "sha256:563fe25c678aaba333d5399408f5ec3c383ca5b663e7f774dd179a520b8144df", size = 43122, upload-time = "2026-01-26T02:44:43.664Z" }, + { url = "https://files.pythonhosted.org/packages/6d/b3/e6b21c6c4f314bb956016b0b3ef2162590a529b84cb831c257519e7fde44/multidict-6.7.1-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:c76c4bec1538375dad9d452d246ca5368ad6e1c9039dadcf007ae59c70619ea1", size = 83175, upload-time = "2026-01-26T02:44:44.894Z" }, + { url = "https://files.pythonhosted.org/packages/fb/76/23ecd2abfe0957b234f6c960f4ade497f55f2c16aeb684d4ecdbf1c95791/multidict-6.7.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:57b46b24b5d5ebcc978da4ec23a819a9402b4228b8a90d9c656422b4bdd8a963", size = 48460, upload-time = "2026-01-26T02:44:46.106Z" }, + { url = "https://files.pythonhosted.org/packages/c4/57/a0ed92b23f3a042c36bc4227b72b97eca803f5f1801c1ab77c8a212d455e/multidict-6.7.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e954b24433c768ce78ab7929e84ccf3422e46deb45a4dc9f93438f8217fa2d34", size = 46930, upload-time = "2026-01-26T02:44:47.278Z" }, + { url = "https://files.pythonhosted.org/packages/b5/66/02ec7ace29162e447f6382c495dc95826bf931d3818799bbef11e8f7df1a/multidict-6.7.1-cp313-cp313t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:3bd231490fa7217cc832528e1cd8752a96f0125ddd2b5749390f7c3ec8721b65", size = 242582, upload-time = "2026-01-26T02:44:48.604Z" }, + { url = "https://files.pythonhosted.org/packages/58/18/64f5a795e7677670e872673aca234162514696274597b3708b2c0d276cce/multidict-6.7.1-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:253282d70d67885a15c8a7716f3a73edf2d635793ceda8173b9ecc21f2fb8292", size = 250031, upload-time = "2026-01-26T02:44:50.544Z" }, + { url = "https://files.pythonhosted.org/packages/c8/ed/e192291dbbe51a8290c5686f482084d31bcd9d09af24f63358c3d42fd284/multidict-6.7.1-cp313-cp313t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:0b4c48648d7649c9335cf1927a8b87fa692de3dcb15faa676c6a6f1f1aabda43", size = 228596, upload-time = "2026-01-26T02:44:51.951Z" }, + { url = "https://files.pythonhosted.org/packages/1e/7e/3562a15a60cf747397e7f2180b0a11dc0c38d9175a650e75fa1b4d325e15/multidict-6.7.1-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:98bc624954ec4d2c7cb074b8eefc2b5d0ce7d482e410df446414355d158fe4ca", size = 257492, upload-time = "2026-01-26T02:44:53.902Z" }, + { url = "https://files.pythonhosted.org/packages/24/02/7d0f9eae92b5249bb50ac1595b295f10e263dd0078ebb55115c31e0eaccd/multidict-6.7.1-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:1b99af4d9eec0b49927b4402bcbb58dea89d3e0db8806a4086117019939ad3dd", size = 255899, upload-time = "2026-01-26T02:44:55.316Z" }, + { url = "https://files.pythonhosted.org/packages/00/e3/9b60ed9e23e64c73a5cde95269ef1330678e9c6e34dd4eb6b431b85b5a10/multidict-6.7.1-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6aac4f16b472d5b7dc6f66a0d49dd57b0e0902090be16594dc9ebfd3d17c47e7", size = 247970, upload-time = "2026-01-26T02:44:56.783Z" }, + { url = "https://files.pythonhosted.org/packages/3e/06/538e58a63ed5cfb0bd4517e346b91da32fde409d839720f664e9a4ae4f9d/multidict-6.7.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:21f830fe223215dffd51f538e78c172ed7c7f60c9b96a2bf05c4848ad49921c3", size = 245060, upload-time = "2026-01-26T02:44:58.195Z" }, + { url = "https://files.pythonhosted.org/packages/b2/2f/d743a3045a97c895d401e9bd29aaa09b94f5cbdf1bd561609e5a6c431c70/multidict-6.7.1-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:f5dd81c45b05518b9aa4da4aa74e1c93d715efa234fd3e8a179df611cc85e5f4", size = 235888, upload-time = "2026-01-26T02:44:59.57Z" }, + { url = "https://files.pythonhosted.org/packages/38/83/5a325cac191ab28b63c52f14f1131f3b0a55ba3b9aa65a6d0bf2a9b921a0/multidict-6.7.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:eb304767bca2bb92fb9c5bd33cedc95baee5bb5f6c88e63706533a1c06ad08c8", size = 243554, upload-time = "2026-01-26T02:45:01.054Z" }, + { url = "https://files.pythonhosted.org/packages/20/1f/9d2327086bd15da2725ef6aae624208e2ef828ed99892b17f60c344e57ed/multidict-6.7.1-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:c9035dde0f916702850ef66460bc4239d89d08df4d02023a5926e7446724212c", size = 252341, upload-time = "2026-01-26T02:45:02.484Z" }, + { url = "https://files.pythonhosted.org/packages/e8/2c/2a1aa0280cf579d0f6eed8ee5211c4f1730bd7e06c636ba2ee6aafda302e/multidict-6.7.1-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:af959b9beeb66c822380f222f0e0a1889331597e81f1ded7f374f3ecb0fd6c52", size = 246391, upload-time = "2026-01-26T02:45:03.862Z" }, + { url = "https://files.pythonhosted.org/packages/e5/03/7ca022ffc36c5a3f6e03b179a5ceb829be9da5783e6fe395f347c0794680/multidict-6.7.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:41f2952231456154ee479651491e94118229844dd7226541788be783be2b5108", size = 243422, upload-time = "2026-01-26T02:45:05.296Z" }, + { url = "https://files.pythonhosted.org/packages/dc/1d/b31650eab6c5778aceed46ba735bd97f7c7d2f54b319fa916c0f96e7805b/multidict-6.7.1-cp313-cp313t-win32.whl", hash = "sha256:df9f19c28adcb40b6aae30bbaa1478c389efd50c28d541d76760199fc1037c32", size = 47770, upload-time = "2026-01-26T02:45:06.754Z" }, + { url = "https://files.pythonhosted.org/packages/ac/5b/2d2d1d522e51285bd61b1e20df8f47ae1a9d80839db0b24ea783b3832832/multidict-6.7.1-cp313-cp313t-win_amd64.whl", hash = "sha256:d54ecf9f301853f2c5e802da559604b3e95bb7a3b01a9c295c6ee591b9882de8", size = 53109, upload-time = "2026-01-26T02:45:08.044Z" }, + { url = "https://files.pythonhosted.org/packages/3d/a3/cc409ba012c83ca024a308516703cf339bdc4b696195644a7215a5164a24/multidict-6.7.1-cp313-cp313t-win_arm64.whl", hash = "sha256:5a37ca18e360377cfda1d62f5f382ff41f2b8c4ccb329ed974cc2e1643440118", size = 45573, upload-time = "2026-01-26T02:45:09.349Z" }, + { url = "https://files.pythonhosted.org/packages/91/cc/db74228a8be41884a567e88a62fd589a913708fcf180d029898c17a9a371/multidict-6.7.1-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:8f333ec9c5eb1b7105e3b84b53141e66ca05a19a605368c55450b6ba208cb9ee", size = 75190, upload-time = "2026-01-26T02:45:10.651Z" }, + { url = "https://files.pythonhosted.org/packages/d5/22/492f2246bb5b534abd44804292e81eeaf835388901f0c574bac4eeec73c5/multidict-6.7.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:a407f13c188f804c759fc6a9f88286a565c242a76b27626594c133b82883b5c2", size = 44486, upload-time = "2026-01-26T02:45:11.938Z" }, + { url = "https://files.pythonhosted.org/packages/f1/4f/733c48f270565d78b4544f2baddc2fb2a245e5a8640254b12c36ac7ac68e/multidict-6.7.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:0e161ddf326db5577c3a4cc2d8648f81456e8a20d40415541587a71620d7a7d1", size = 43219, upload-time = "2026-01-26T02:45:14.346Z" }, + { url = "https://files.pythonhosted.org/packages/24/bb/2c0c2287963f4259c85e8bcbba9182ced8d7fca65c780c38e99e61629d11/multidict-6.7.1-cp314-cp314-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:1e3a8bb24342a8201d178c3b4984c26ba81a577c80d4d525727427460a50c22d", size = 245132, upload-time = "2026-01-26T02:45:15.712Z" }, + { url = "https://files.pythonhosted.org/packages/a7/f9/44d4b3064c65079d2467888794dea218d1601898ac50222ab8a9a8094460/multidict-6.7.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:97231140a50f5d447d3164f994b86a0bed7cd016e2682f8650d6a9158e14fd31", size = 252420, upload-time = "2026-01-26T02:45:17.293Z" }, + { url = "https://files.pythonhosted.org/packages/8b/13/78f7275e73fa17b24c9a51b0bd9d73ba64bb32d0ed51b02a746eb876abe7/multidict-6.7.1-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:6b10359683bd8806a200fd2909e7c8ca3a7b24ec1d8132e483d58e791d881048", size = 233510, upload-time = "2026-01-26T02:45:19.356Z" }, + { url = "https://files.pythonhosted.org/packages/4b/25/8167187f62ae3cbd52da7893f58cb036b47ea3fb67138787c76800158982/multidict-6.7.1-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:283ddac99f7ac25a4acadbf004cb5ae34480bbeb063520f70ce397b281859362", size = 264094, upload-time = "2026-01-26T02:45:20.834Z" }, + { url = "https://files.pythonhosted.org/packages/a1/e7/69a3a83b7b030cf283fb06ce074a05a02322359783424d7edf0f15fe5022/multidict-6.7.1-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:538cec1e18c067d0e6103aa9a74f9e832904c957adc260e61cd9d8cf0c3b3d37", size = 260786, upload-time = "2026-01-26T02:45:22.818Z" }, + { url = "https://files.pythonhosted.org/packages/fe/3b/8ec5074bcfc450fe84273713b4b0a0dd47c0249358f5d82eb8104ffe2520/multidict-6.7.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7eee46ccb30ff48a1e35bb818cc90846c6be2b68240e42a78599166722cea709", size = 248483, upload-time = "2026-01-26T02:45:24.368Z" }, + { url = "https://files.pythonhosted.org/packages/48/5a/d5a99e3acbca0e29c5d9cba8f92ceb15dce78bab963b308ae692981e3a5d/multidict-6.7.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:fa263a02f4f2dd2d11a7b1bb4362aa7cb1049f84a9235d31adf63f30143469a0", size = 248403, upload-time = "2026-01-26T02:45:25.982Z" }, + { url = "https://files.pythonhosted.org/packages/35/48/e58cd31f6c7d5102f2a4bf89f96b9cf7e00b6c6f3d04ecc44417c00a5a3c/multidict-6.7.1-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:2e1425e2f99ec5bd36c15a01b690a1a2456209c5deed58f95469ffb46039ccbb", size = 240315, upload-time = "2026-01-26T02:45:27.487Z" }, + { url = "https://files.pythonhosted.org/packages/94/33/1cd210229559cb90b6786c30676bb0c58249ff42f942765f88793b41fdce/multidict-6.7.1-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:497394b3239fc6f0e13a78a3e1b61296e72bf1c5f94b4c4eb80b265c37a131cd", size = 245528, upload-time = "2026-01-26T02:45:28.991Z" }, + { url = "https://files.pythonhosted.org/packages/64/f2/6e1107d226278c876c783056b7db43d800bb64c6131cec9c8dfb6903698e/multidict-6.7.1-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:233b398c29d3f1b9676b4b6f75c518a06fcb2ea0b925119fb2c1bc35c05e1601", size = 258784, upload-time = "2026-01-26T02:45:30.503Z" }, + { url = "https://files.pythonhosted.org/packages/4d/c1/11f664f14d525e4a1b5327a82d4de61a1db604ab34c6603bb3c2cc63ad34/multidict-6.7.1-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:93b1818e4a6e0930454f0f2af7dfce69307ca03cdcfb3739bf4d91241967b6c1", size = 251980, upload-time = "2026-01-26T02:45:32.603Z" }, + { url = "https://files.pythonhosted.org/packages/e1/9f/75a9ac888121d0c5bbd4ecf4eead45668b1766f6baabfb3b7f66a410e231/multidict-6.7.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:f33dc2a3abe9249ea5d8360f969ec7f4142e7ac45ee7014d8f8d5acddf178b7b", size = 243602, upload-time = "2026-01-26T02:45:34.043Z" }, + { url = "https://files.pythonhosted.org/packages/9a/e7/50bf7b004cc8525d80dbbbedfdc7aed3e4c323810890be4413e589074032/multidict-6.7.1-cp314-cp314-win32.whl", hash = "sha256:3ab8b9d8b75aef9df299595d5388b14530839f6422333357af1339443cff777d", size = 40930, upload-time = "2026-01-26T02:45:36.278Z" }, + { url = "https://files.pythonhosted.org/packages/e0/bf/52f25716bbe93745595800f36fb17b73711f14da59ed0bb2eba141bc9f0f/multidict-6.7.1-cp314-cp314-win_amd64.whl", hash = "sha256:5e01429a929600e7dab7b166062d9bb54a5eed752384c7384c968c2afab8f50f", size = 45074, upload-time = "2026-01-26T02:45:37.546Z" }, + { url = "https://files.pythonhosted.org/packages/97/ab/22803b03285fa3a525f48217963da3a65ae40f6a1b6f6cf2768879e208f9/multidict-6.7.1-cp314-cp314-win_arm64.whl", hash = "sha256:4885cb0e817aef5d00a2e8451d4665c1808378dc27c2705f1bf4ef8505c0d2e5", size = 42471, upload-time = "2026-01-26T02:45:38.889Z" }, + { url = "https://files.pythonhosted.org/packages/e0/6d/f9293baa6146ba9507e360ea0292b6422b016907c393e2f63fc40ab7b7b5/multidict-6.7.1-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:0458c978acd8e6ea53c81eefaddbbee9c6c5e591f41b3f5e8e194780fe026581", size = 82401, upload-time = "2026-01-26T02:45:40.254Z" }, + { url = "https://files.pythonhosted.org/packages/7a/68/53b5494738d83558d87c3c71a486504d8373421c3e0dbb6d0db48ad42ee0/multidict-6.7.1-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:c0abd12629b0af3cf590982c0b413b1e7395cd4ec026f30986818ab95bfaa94a", size = 48143, upload-time = "2026-01-26T02:45:41.635Z" }, + { url = "https://files.pythonhosted.org/packages/37/e8/5284c53310dcdc99ce5d66563f6e5773531a9b9fe9ec7a615e9bc306b05f/multidict-6.7.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:14525a5f61d7d0c94b368a42cff4c9a4e7ba2d52e2672a7b23d84dc86fb02b0c", size = 46507, upload-time = "2026-01-26T02:45:42.99Z" }, + { url = "https://files.pythonhosted.org/packages/e4/fc/6800d0e5b3875568b4083ecf5f310dcf91d86d52573160834fb4bfcf5e4f/multidict-6.7.1-cp314-cp314t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:17307b22c217b4cf05033dabefe68255a534d637c6c9b0cc8382718f87be4262", size = 239358, upload-time = "2026-01-26T02:45:44.376Z" }, + { url = "https://files.pythonhosted.org/packages/41/75/4ad0973179361cdf3a113905e6e088173198349131be2b390f9fa4da5fc6/multidict-6.7.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:7a7e590ff876a3eaf1c02a4dfe0724b6e69a9e9de6d8f556816f29c496046e59", size = 246884, upload-time = "2026-01-26T02:45:47.167Z" }, + { url = "https://files.pythonhosted.org/packages/c3/9c/095bb28b5da139bd41fb9a5d5caff412584f377914bd8787c2aa98717130/multidict-6.7.1-cp314-cp314t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:5fa6a95dfee63893d80a34758cd0e0c118a30b8dcb46372bf75106c591b77889", size = 225878, upload-time = "2026-01-26T02:45:48.698Z" }, + { url = "https://files.pythonhosted.org/packages/07/d0/c0a72000243756e8f5a277b6b514fa005f2c73d481b7d9e47cd4568aa2e4/multidict-6.7.1-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:a0543217a6a017692aa6ae5cc39adb75e587af0f3a82288b1492eb73dd6cc2a4", size = 253542, upload-time = "2026-01-26T02:45:50.164Z" }, + { url = "https://files.pythonhosted.org/packages/c0/6b/f69da15289e384ecf2a68837ec8b5ad8c33e973aa18b266f50fe55f24b8c/multidict-6.7.1-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:f99fe611c312b3c1c0ace793f92464d8cd263cc3b26b5721950d977b006b6c4d", size = 252403, upload-time = "2026-01-26T02:45:51.779Z" }, + { url = "https://files.pythonhosted.org/packages/a2/76/b9669547afa5a1a25cd93eaca91c0da1c095b06b6d2d8ec25b713588d3a1/multidict-6.7.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9004d8386d133b7e6135679424c91b0b854d2d164af6ea3f289f8f2761064609", size = 244889, upload-time = "2026-01-26T02:45:53.27Z" }, + { url = "https://files.pythonhosted.org/packages/7e/a9/a50d2669e506dad33cfc45b5d574a205587b7b8a5f426f2fbb2e90882588/multidict-6.7.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:e628ef0e6859ffd8273c69412a2465c4be4a9517d07261b33334b5ec6f3c7489", size = 241982, upload-time = "2026-01-26T02:45:54.919Z" }, + { url = "https://files.pythonhosted.org/packages/c5/bb/1609558ad8b456b4827d3c5a5b775c93b87878fd3117ed3db3423dfbce1b/multidict-6.7.1-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:841189848ba629c3552035a6a7f5bf3b02eb304e9fea7492ca220a8eda6b0e5c", size = 232415, upload-time = "2026-01-26T02:45:56.981Z" }, + { url = "https://files.pythonhosted.org/packages/d8/59/6f61039d2aa9261871e03ab9dc058a550d240f25859b05b67fd70f80d4b3/multidict-6.7.1-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:ce1bbd7d780bb5a0da032e095c951f7014d6b0a205f8318308140f1a6aba159e", size = 240337, upload-time = "2026-01-26T02:45:58.698Z" }, + { url = "https://files.pythonhosted.org/packages/a1/29/fdc6a43c203890dc2ae9249971ecd0c41deaedfe00d25cb6564b2edd99eb/multidict-6.7.1-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:b26684587228afed0d50cf804cc71062cc9c1cdf55051c4c6345d372947b268c", size = 248788, upload-time = "2026-01-26T02:46:00.862Z" }, + { url = "https://files.pythonhosted.org/packages/a9/14/a153a06101323e4cf086ecee3faadba52ff71633d471f9685c42e3736163/multidict-6.7.1-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:9f9af11306994335398293f9958071019e3ab95e9a707dc1383a35613f6abcb9", size = 242842, upload-time = "2026-01-26T02:46:02.824Z" }, + { url = "https://files.pythonhosted.org/packages/41/5f/604ae839e64a4a6efc80db94465348d3b328ee955e37acb24badbcd24d83/multidict-6.7.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:b4938326284c4f1224178a560987b6cf8b4d38458b113d9b8c1db1a836e640a2", size = 240237, upload-time = "2026-01-26T02:46:05.898Z" }, + { url = "https://files.pythonhosted.org/packages/5f/60/c3a5187bf66f6fb546ff4ab8fb5a077cbdd832d7b1908d4365c7f74a1917/multidict-6.7.1-cp314-cp314t-win32.whl", hash = "sha256:98655c737850c064a65e006a3df7c997cd3b220be4ec8fe26215760b9697d4d7", size = 48008, upload-time = "2026-01-26T02:46:07.468Z" }, + { url = "https://files.pythonhosted.org/packages/0c/f7/addf1087b860ac60e6f382240f64fb99f8bfb532bb06f7c542b83c29ca61/multidict-6.7.1-cp314-cp314t-win_amd64.whl", hash = "sha256:497bde6223c212ba11d462853cfa4f0ae6ef97465033e7dc9940cdb3ab5b48e5", size = 53542, upload-time = "2026-01-26T02:46:08.809Z" }, + { url = "https://files.pythonhosted.org/packages/4c/81/4629d0aa32302ef7b2ec65c75a728cc5ff4fa410c50096174c1632e70b3e/multidict-6.7.1-cp314-cp314t-win_arm64.whl", hash = "sha256:2bbd113e0d4af5db41d5ebfe9ccaff89de2120578164f86a5d17d5a576d1e5b2", size = 44719, upload-time = "2026-01-26T02:46:11.146Z" }, + { url = "https://files.pythonhosted.org/packages/81/08/7036c080d7117f28a4af526d794aab6a84463126db031b007717c1a6676e/multidict-6.7.1-py3-none-any.whl", hash = "sha256:55d97cc6dae627efa6a6e548885712d4864b81110ac76fa4e534c03819fa4a56", size = 12319, upload-time = "2026-01-26T02:46:44.004Z" }, +] + +[[package]] +name = "nbclient" +version = "0.10.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-client" }, + { name = "jupyter-core" }, + { name = "nbformat" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/56/91/1c1d5a4b9a9ebba2b4e32b8c852c2975c872aec1fe42ab5e516b2cecd193/nbclient-0.10.4.tar.gz", hash = "sha256:1e54091b16e6da39e297b0ece3e10f6f29f4ac4e8ee515d29f8a7099bd6553c9", size = 62554, upload-time = "2025-12-23T07:45:46.369Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/83/a0/5b0c2f11142ed1dddec842457d3f65eaf71a0080894eb6f018755b319c3a/nbclient-0.10.4-py3-none-any.whl", hash = "sha256:9162df5a7373d70d606527300a95a975a47c137776cd942e52d9c7e29ff83440", size = 25465, upload-time = "2025-12-23T07:45:44.51Z" }, +] + +[[package]] +name = "nbconvert" +version = "7.17.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "beautifulsoup4" }, + { name = "bleach", extra = ["css"] }, + { name = "defusedxml" }, + { name = "jinja2" }, + { name = "jupyter-core" }, + { name = "jupyterlab-pygments" }, + { name = "markupsafe" }, + { name = "mistune" }, + { name = "nbclient" }, + { name = "nbformat" }, + { name = "packaging" }, + { name = "pandocfilters" }, + { name = "pygments" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/01/b1/708e53fe2e429c103c6e6e159106bcf0357ac41aa4c28772bd8402339051/nbconvert-7.17.1.tar.gz", hash = "sha256:34d0d0a7e73ce3cbab6c5aae8f4f468797280b01fd8bd2ca746da8569eddd7d2", size = 865311, upload-time = "2026-04-08T00:44:14.914Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/67/f8/bb0a9d5f46819c821dc1f004aa2cc29b1d91453297dbf5ff20470f00f193/nbconvert-7.17.1-py3-none-any.whl", hash = "sha256:aa85c087b435e7bf1ffd03319f658e285f2b89eccab33bc1ba7025495ab3e7c8", size = 261927, upload-time = "2026-04-08T00:44:12.845Z" }, +] + +[[package]] +name = "nbformat" +version = "5.10.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "fastjsonschema" }, + { name = "jsonschema" }, + { name = "jupyter-core" }, + { name = "traitlets" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/6d/fd/91545e604bc3dad7dca9ed03284086039b294c6b3d75c0d2fa45f9e9caf3/nbformat-5.10.4.tar.gz", hash = "sha256:322168b14f937a5d11362988ecac2a4952d3d8e3a2cbeb2319584631226d5b3a", size = 142749, upload-time = "2024-04-04T11:20:37.371Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a9/82/0340caa499416c78e5d8f5f05947ae4bc3cba53c9f038ab6e9ed964e22f1/nbformat-5.10.4-py3-none-any.whl", hash = "sha256:3b48d6c8fbca4b299bf3982ea7db1af21580e4fec269ad087b9e81588891200b", size = 78454, upload-time = "2024-04-04T11:20:34.895Z" }, +] + +[[package]] +name = "nest-asyncio" +version = "1.6.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/83/f8/51569ac65d696c8ecbee95938f89d4abf00f47d58d48f6fbabfe8f0baefe/nest_asyncio-1.6.0.tar.gz", hash = "sha256:6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe", size = 7418, upload-time = "2024-01-21T14:25:19.227Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl", hash = "sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c", size = 5195, upload-time = "2024-01-21T14:25:17.223Z" }, +] + +[[package]] +name = "networkx" +version = "3.6.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/6a/51/63fe664f3908c97be9d2e4f1158eb633317598cfa6e1fc14af5383f17512/networkx-3.6.1.tar.gz", hash = "sha256:26b7c357accc0c8cde558ad486283728b65b6a95d85ee1cd66bafab4c8168509", size = 2517025, upload-time = "2025-12-08T17:02:39.908Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9e/c9/b2622292ea83fbb4ec318f5b9ab867d0a28ab43c5717bb85b0a5f6b3b0a4/networkx-3.6.1-py3-none-any.whl", hash = "sha256:d47fbf302e7d9cbbb9e2555a0d267983d2aa476bac30e90dfbe5669bd57f3762", size = 2068504, upload-time = "2025-12-08T17:02:38.159Z" }, +] + +[[package]] +name = "notebook" +version = "7.5.6" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-server" }, + { name = "jupyterlab" }, + { name = "jupyterlab-server" }, + { name = "notebook-shim" }, + { name = "tornado" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/2a/c2/cf59bd2e6f2c8b976b52477e3e53bf6f97bc714ed046a51821afb428eaee/notebook-7.5.6.tar.gz", hash = "sha256:621174aade80108f0020b0f00738000b215f75fa3cd90771ad7aa0f24536a4e1", size = 14170814, upload-time = "2026-04-30T11:46:26.613Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e9/d6/1fd0646b9bbd9efbb0b8ae21b2325fbef515769a5621c03e31d8eb8da587/notebook-7.5.6-py3-none-any.whl", hash = "sha256:4dde3f8fb55fa8fb7946d58c6e869ce9baf46d00fc070664f62604569d0faca0", size = 14581730, upload-time = "2026-04-30T11:46:22.342Z" }, +] + +[[package]] +name = "notebook-shim" +version = "0.2.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jupyter-server" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/54/d2/92fa3243712b9a3e8bafaf60aac366da1cada3639ca767ff4b5b3654ec28/notebook_shim-0.2.4.tar.gz", hash = "sha256:b4b2cfa1b65d98307ca24361f5b30fe785b53c3fd07b7a47e89acb5e6ac638cb", size = 13167, upload-time = "2024-02-14T23:35:18.353Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f9/33/bd5b9137445ea4b680023eb0469b2bb969d61303dedb2aac6560ff3d14a1/notebook_shim-0.2.4-py3-none-any.whl", hash = "sha256:411a5be4e9dc882a074ccbcae671eda64cceb068767e9a3419096986560e1cef", size = 13307, upload-time = "2024-02-14T23:35:16.286Z" }, +] + +[[package]] +name = "numba" +version = "0.65.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "llvmlite" }, + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f6/c5/db2ac3685833d626c0dcae6bd2330cd68433e1fd248d15f70998160d3ad7/numba-0.65.1.tar.gz", hash = "sha256:19357146c32fe9ed25059ab915e8465fb13951cf6b0aace3826b76886373ab23", size = 2765600, upload-time = "2026-04-24T02:02:56.551Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/79/37/14a4579049c1eb673afd0de0cb4842982acd55b9ce2643e763db858bcea0/numba-0.65.1-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:1735c15c1134a5108b4d6a5c77fc0947924ea066a738dc09a52008c13df9cad3", size = 2681344, upload-time = "2026-04-24T02:02:33.65Z" }, + { url = "https://files.pythonhosted.org/packages/a0/22/b8d873f6466b20aa563fc9b33acd48dec89a07803ddaa2f1c8ca1cd33126/numba-0.65.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:c09f49117ef255e1f1c6dad0c7a1ed39868243862a73be5706793241a3755f1b", size = 3810619, upload-time = "2026-04-24T02:02:36.041Z" }, + { url = "https://files.pythonhosted.org/packages/62/08/e16a8b5d9a018962ebb5c66be662317cde32b9f5dab08441f90bed5522fb/numba-0.65.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:594a8680b3fadac99e97e489b1fd89007177e5336713745c3b769528c635a464", size = 3509783, upload-time = "2026-04-24T02:02:38.245Z" }, + { url = "https://files.pythonhosted.org/packages/fd/a5/03c970d57f4c1741354837353ce39fb5206952ae1dba8922d29c86f64805/numba-0.65.1-cp313-cp313-win_amd64.whl", hash = "sha256:85be74c0d036842699a30058f82fb88fc5ffdc59f7615cab5792ea92914c9b62", size = 2750534, upload-time = "2026-04-24T02:02:39.903Z" }, + { url = "https://files.pythonhosted.org/packages/4f/2e/8aed9b726d9ba5f11ad287645fd479e88278db3060a25cb1225d730eb2b7/numba-0.65.1-cp314-cp314-macosx_12_0_arm64.whl", hash = "sha256:33f5eb68eb1c843511615d14663ce60258525d6a4c65ab040e2c2b0c4cf17450", size = 2681554, upload-time = "2026-04-24T02:02:41.812Z" }, + { url = "https://files.pythonhosted.org/packages/87/96/f3eb235fafa82a34e2ab5dd7dc9ffff998ebf5f0bbc23fa56a96aeb44da6/numba-0.65.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:71e73029bf53a62cc6afcf96be4bd942290d8b4c55f0a454fb536158115790f7", size = 3779602, upload-time = "2026-04-24T02:02:43.726Z" }, + { url = "https://files.pythonhosted.org/packages/09/90/b0f09b48752d23640b8284f22aa597737e8adaddc7fbfacc4708b7f73a4c/numba-0.65.1-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3a07635e0be926b9bdbffb09137c230fb13f6ec0e564914ba937cee12ce3eb35", size = 3479532, upload-time = "2026-04-24T02:02:45.427Z" }, + { url = "https://files.pythonhosted.org/packages/56/46/3f7fc04fb853559e74b210e0b62c19974ec844cefec611f9e535f4da3761/numba-0.65.1-cp314-cp314-win_amd64.whl", hash = "sha256:2a20fcdabdefbdacf88d85caf70c3b18c4bcb7ebb8f82e6a19486383dd26ab63", size = 2752637, upload-time = "2026-04-24T02:02:47.664Z" }, + { url = "https://files.pythonhosted.org/packages/81/7b/c1a341a9067367778f4152a5f01061cf281fb09582c92c510ec4918cabf6/numba-0.65.1-cp314-cp314t-macosx_12_0_arm64.whl", hash = "sha256:548dd4b3a4508d5062768d1514b2cd7b015f9a25ec7af651c50dee243965e652", size = 2684600, upload-time = "2026-04-24T02:02:49.653Z" }, + { url = "https://files.pythonhosted.org/packages/03/36/98ddbcf3e4f04a6dd07e1c67249955920579ba4af6bb6868e3088f4ed282/numba-0.65.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:78abc28feff2c2ff8307fff3975b6438352759c9acb797ecd6b1fb6e7e39e31d", size = 3817198, upload-time = "2026-04-24T02:02:51.266Z" }, + { url = "https://files.pythonhosted.org/packages/a3/83/0dad21057ece5a835599f5d24099b091703995e23dbbf894f259e91c010b/numba-0.65.1-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ee7676cb389555805f9b9a1840cbcd1ea6c8bd5376ab6918e3a29c5ea1dbda20", size = 3533862, upload-time = "2026-04-24T02:02:52.987Z" }, + { url = "https://files.pythonhosted.org/packages/32/36/8be7118ffd4c8440881046eac3d0982cc5ab42909508cf5d67024d62a2e4/numba-0.65.1-cp314-cp314t-win_amd64.whl", hash = "sha256:20609346e3bd75204950dcbbfe383a8d7dbf4902f442aedbf00f97fef4aa8f38", size = 2758237, upload-time = "2026-04-24T02:02:54.612Z" }, +] + +[[package]] +name = "numpy" +version = "2.4.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d0/ad/fed0499ce6a338d2a03ebae59cd15093910c8875328855781952abf6c2fe/numpy-2.4.6.tar.gz", hash = "sha256:f3a3570c4a2a16746ac2c31a7c7c7b0c186b95ce902e33db6f28094ed7387dda", size = 20735807, upload-time = "2026-05-18T23:37:14.07Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fb/82/bdab26d7438c6791ca31b7c024ca37c1eab8b726ba236129005cd4a06e45/numpy-2.4.6-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:511dbaf848decaaaf4b4ca48032619fb3138710c4bf7da7617765edad1ef96b0", size = 16684648, upload-time = "2026-05-18T23:34:29.41Z" }, + { url = "https://files.pythonhosted.org/packages/1b/30/a80189bcc7f5e4258b3fbc3968d909d1756f54d023299ecc39ad6fdb9ef8/numpy-2.4.6-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:bf162abab1c1a736333192707cef898e735a5ca00f38f27eeedf44b39d9e85eb", size = 14693902, upload-time = "2026-05-18T23:34:33.013Z" }, + { url = "https://files.pythonhosted.org/packages/97/12/70b5d0d7c15e1ebb8a6a84a8caa1d19e181d84fb58bb6d70aca29099dec1/numpy-2.4.6-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:043191bfa8eab18c776647b62723ac9dddece59743b13f49b2016094129c2b3f", size = 5198992, upload-time = "2026-05-18T23:34:36.132Z" }, + { url = "https://files.pythonhosted.org/packages/ba/8c/ebd2a8f8a83541f8d38cc5667e8c2b69cecfd30da6e45693e8158857d44b/numpy-2.4.6-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:6180d8b35af935aed8ece3a85e0a43f87393ae0ac87c8d2c8bd2c993f7270ef3", size = 6546944, upload-time = "2026-05-18T23:34:38.484Z" }, + { url = "https://files.pythonhosted.org/packages/bb/c5/7b863a97a91671a0338f4253bd3b5a3d3852f0692dae91711c9f4a10e787/numpy-2.4.6-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:72fbe16c6fac95aedf5937fa873445cec2110be35d8a4e9433d7501fd98dae6b", size = 15669392, upload-time = "2026-05-18T23:34:41.257Z" }, + { url = "https://files.pythonhosted.org/packages/a5/9d/3584b9984ca4c047aea75214ce1a4c4c73d849bd71b604264b7f5653f8a8/numpy-2.4.6-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a7830bab239b79cda9c08c2da014761cafb48da6150e1da17ac06283f43b6089", size = 16633220, upload-time = "2026-05-18T23:34:45.075Z" }, + { url = "https://files.pythonhosted.org/packages/05/ae/7c67fba23bd98caec7c99261f3a16072ade14813486b0282cb29846de832/numpy-2.4.6-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:ef4aea96ce4d3b074422cb4f2f64e216bf9e213004bb58ecfdf50ea02ea8eb9a", size = 17020800, upload-time = "2026-05-18T23:34:49.065Z" }, + { url = "https://files.pythonhosted.org/packages/d9/5d/3b6725cb31d983c5e66916f5d36f6d7e5521129e4c4404d64f918292a5b6/numpy-2.4.6-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:dfa20cc6ca228e6b155b11da03825975ce66aea520985dbbddf0f2a5a495c605", size = 18357600, upload-time = "2026-05-18T23:34:52.709Z" }, + { url = "https://files.pythonhosted.org/packages/f7/da/2ccc6c2fe8898dee01d90c75c5f5f914a23daf99e3e0f59516a08760c8b5/numpy-2.4.6-cp313-cp313-win32.whl", hash = "sha256:56b39e5e0622a09a25bf5baf62f4bcf0cb8a41ae6e2819cf49bbc5a74c083f91", size = 5961134, upload-time = "2026-05-18T23:34:55.618Z" }, + { url = "https://files.pythonhosted.org/packages/b5/cd/9cc4dc876fb065d5c220aae4d5e14826b2715331bb7618ce1fb07a679d99/numpy-2.4.6-cp313-cp313-win_amd64.whl", hash = "sha256:c4fc99836233ea196540b17ab0983aff60ed07941751930f5f4d05bc3b3b7359", size = 12318598, upload-time = "2026-05-18T23:34:58.928Z" }, + { url = "https://files.pythonhosted.org/packages/39/1e/c0bcba1f8694116485fe28fd1be698c278fcda4141c5b0e53a2aed8b12a8/numpy-2.4.6-cp313-cp313-win_arm64.whl", hash = "sha256:a7c711e21628b52034bb5ab8d1bce291f752fcc5e92accc615778acee1ff4778", size = 10222272, upload-time = "2026-05-18T23:35:02.167Z" }, + { url = "https://files.pythonhosted.org/packages/63/6d/cc5619247c8f4204e507f5883528372e4ac4bb189e579fb859a12e480b1f/numpy-2.4.6-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:112b06a867b235ef466ed3508ddf0238050df9c727cafb5301ac385b899189a1", size = 14821197, upload-time = "2026-05-18T23:35:05.468Z" }, + { url = "https://files.pythonhosted.org/packages/00/58/f1c39161c87d9e9bed660f1ed4bafc0e403d5ec9650b6dd77aead07d489b/numpy-2.4.6-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:eaf7fa2de5c0be8ae6ff8e9bea2ccd725e980541244521d8d4b5f3354a27babe", size = 5326287, upload-time = "2026-05-18T23:35:08.693Z" }, + { url = "https://files.pythonhosted.org/packages/af/57/3917ab0fd97f271a8694513581b8a36c655f111c446852c302f04ccdb6fc/numpy-2.4.6-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:7265a2f3d436e54ef9f2b52b5c937e6be778781bd97a590319d7348f1c1ca997", size = 6646763, upload-time = "2026-05-18T23:35:11.459Z" }, + { url = "https://files.pythonhosted.org/packages/eb/0f/037e64c494b67581ae18193d770adef354c41f3f2c8ebf865602d949bf8f/numpy-2.4.6-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f74a575920ab21fe304421a3fc28793d82e299cae9eccb37084e9fc7f3617c20", size = 15728070, upload-time = "2026-05-18T23:35:14.79Z" }, + { url = "https://files.pythonhosted.org/packages/21/a6/5d2bae9c9542eb4df16dc9c46dc79c186e9bad53805dfa5399a6023c6db0/numpy-2.4.6-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ede83e07a75dd06bc501566c1eca2afc0d61677c1472ac9ad93fdee6e638a48d", size = 16681752, upload-time = "2026-05-18T23:35:18.836Z" }, + { url = "https://files.pythonhosted.org/packages/92/14/23d1dfb410ae362cd59ce53e936b1513d545eb40db3949ced632e19a459e/numpy-2.4.6-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:68bb27509ac1b9a3443094260f6326150663b06abe40b73a2f81160623da5b67", size = 17086024, upload-time = "2026-05-18T23:35:22.52Z" }, + { url = "https://files.pythonhosted.org/packages/4b/6e/23595a2c642cdf3bc567877064bdd7f91c8b0038a4453cf2daf7248eafe9/numpy-2.4.6-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:a0df0043bdb289bde1f62da130d20df23d58b45429f752bc7a8fc5325a225ecd", size = 18403398, upload-time = "2026-05-18T23:35:26.398Z" }, + { url = "https://files.pythonhosted.org/packages/8a/90/0ac3bc947217e66dec77e7cbc6a1979d1af70b6461b82f620d3bccd5e4c8/numpy-2.4.6-cp313-cp313t-win32.whl", hash = "sha256:29a287e0cf63ff528da061de6b9f64a4618da591ca1046aafc54062e40ca7eab", size = 6084971, upload-time = "2026-05-18T23:35:29.387Z" }, + { url = "https://files.pythonhosted.org/packages/77/71/5673e351671a1d2bd6063b91b44f70c0affea7d1516fa7a6572941ba4aa1/numpy-2.4.6-cp313-cp313t-win_amd64.whl", hash = "sha256:25c692919ac5a01f170a3bfcd62d745b24fd095c353d50812637d6fcab442e75", size = 12458532, upload-time = "2026-05-18T23:35:32.175Z" }, + { url = "https://files.pythonhosted.org/packages/3f/88/19d3503c5046e688f049274b27a3ef3d771152fa80d3ba3d01a3dff61abe/numpy-2.4.6-cp313-cp313t-win_arm64.whl", hash = "sha256:1e978ec1e8bd0e0e4de6bb75de9d30cbb74db6b6a2bb727618613703ca0167dd", size = 10291881, upload-time = "2026-05-18T23:35:35.465Z" }, + { url = "https://files.pythonhosted.org/packages/f8/91/3ab2044d05fd16d343c5ac2e69b127f1b2854040dd20b193257c78028bd3/numpy-2.4.6-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:06ca2f61ec4385a07a6977c55ba998a4466c123642b4a32694d3128fce18c079", size = 16683458, upload-time = "2026-05-18T23:35:38.353Z" }, + { url = "https://files.pythonhosted.org/packages/8e/62/764ce66fa4147ae6d73071a3abf804ffe606f174618697c571acdf26a7c9/numpy-2.4.6-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:38efbc8de75c7a0fc1ac190162d892787f3f47b57cc291231aafee36b80982b7", size = 14704559, upload-time = "2026-05-18T23:35:42.14Z" }, + { url = "https://files.pythonhosted.org/packages/60/61/23f27c172f022e04025b7dc2367f4d63c1a398120607ec896228649a6f48/numpy-2.4.6-cp314-cp314-macosx_14_0_arm64.whl", hash = "sha256:d581b735e177fdcdce6fed8e7e8880a3fb6ee4e3653a3ac6af01c6f4c03effc5", size = 5209716, upload-time = "2026-05-18T23:35:45.377Z" }, + { url = "https://files.pythonhosted.org/packages/03/71/21cf70dc6ea3e3acb95fc53a265b2fc248b981f0194ceb5b475271b8809d/numpy-2.4.6-cp314-cp314-macosx_14_0_x86_64.whl", hash = "sha256:0a041d3d761dc3c35cc56ce0351506a02bcbc25f7b169f652435141a17db9096", size = 6543947, upload-time = "2026-05-18T23:35:47.926Z" }, + { url = "https://files.pythonhosted.org/packages/d5/91/64288395ee1799bd2e0b04a305dce9666da90c961e1f3fe982a05ee1c036/numpy-2.4.6-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:40fdc1ae7125e518ea98e53e69a4ebc27e1fd50510c47b7ea130cf21e5e1d42b", size = 15685197, upload-time = "2026-05-18T23:35:50.863Z" }, + { url = "https://files.pythonhosted.org/packages/f3/eb/ebffaa97dc55502df69584a8f0dcf07f69a3e0b3e2323670a2722db9aa39/numpy-2.4.6-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a2c306dea656c12c68f51f4cea133cbe78ca7435eb28c735eac1d3ebe73be6e8", size = 16638245, upload-time = "2026-05-18T23:35:54.752Z" }, + { url = "https://files.pythonhosted.org/packages/b8/0b/54f9da33128d7e350fab89c7455902eeae70349ee52bddb448dc4a576f45/numpy-2.4.6-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:33111801a01c12a8a1e3721f0a9232f8cfc8ae2c6b7098167e6f623c6073f402", size = 17036587, upload-time = "2026-05-18T23:35:58.355Z" }, + { url = "https://files.pythonhosted.org/packages/b6/f0/fdebc1052db1cc37c64beb22072d67cd6d1c71adca1299f53dec2b5e20d3/numpy-2.4.6-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:ae506e6902902557576a26ff33eda8695e7ecb3cb36c3b573a0765dee114ebdb", size = 18363226, upload-time = "2026-05-18T23:36:02.845Z" }, + { url = "https://files.pythonhosted.org/packages/aa/b4/298628d98c72b57e57f7165ae6a481a1deaf6f3c28262a6e4c739c275930/numpy-2.4.6-cp314-cp314-win32.whl", hash = "sha256:aaf159caa35993cb1f56fb9b8e4610d35758e7ca005412eb1daa856a78c9c4b1", size = 6010196, upload-time = "2026-05-18T23:36:05.92Z" }, + { url = "https://files.pythonhosted.org/packages/df/ac/46de6dda46478f7942f839e094970be2d4a861e005c4b3bf07c92e291a09/numpy-2.4.6-cp314-cp314-win_amd64.whl", hash = "sha256:b507f5c4c1d508876d1819b6bf9a49d365b96320b5d4993426b33a23ca4b8261", size = 12450334, upload-time = "2026-05-18T23:36:09.107Z" }, + { url = "https://files.pythonhosted.org/packages/78/92/b8b798ac784102c0da830d2257d59358e3d3d90d1e2b3f2575dad976c5cf/numpy-2.4.6-cp314-cp314-win_arm64.whl", hash = "sha256:6f41ae150c4e32db4f3310cdaf64b1593a03dbabe29eec77fc9b50fe64061df6", size = 10495678, upload-time = "2026-05-18T23:36:12.766Z" }, + { url = "https://files.pythonhosted.org/packages/30/34/ec28d1aa8115971537c01469ab2011ee96827930f0a124de1000cc2a7ed7/numpy-2.4.6-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:ece3d2cfe132e7d51f44a832b303895e6f2d499c5e74dfbdb06ee246147a304a", size = 14823672, upload-time = "2026-05-18T23:36:16.473Z" }, + { url = "https://files.pythonhosted.org/packages/16/bd/f6d1fede4e54e8042a7ff97bb495510f3c220f94bcd9e8b228e87c92cc0d/numpy-2.4.6-cp314-cp314t-macosx_14_0_arm64.whl", hash = "sha256:e3e5193ef5a3dc73bceee50f7fdc2c90dbb76c42df8d8fae3d1067a583df579e", size = 5328731, upload-time = "2026-05-18T23:36:19.767Z" }, + { url = "https://files.pythonhosted.org/packages/f4/f0/e105b9e2fd728a9910103884decd6951d9dd73896b914a98d9a231de02ee/numpy-2.4.6-cp314-cp314t-macosx_14_0_x86_64.whl", hash = "sha256:17f9ade344e7d9b464a084d69bcf18fc691cb1db67c62ed80820bf4926d78f0e", size = 6649805, upload-time = "2026-05-18T23:36:22.266Z" }, + { url = "https://files.pythonhosted.org/packages/82/dd/1206a7ca6ab15e3f02069707ca96222e202af681bb73756da7527f3cb837/numpy-2.4.6-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:9cd5ffd25db4e7ba6a375693b3fc0fc1791ec636c17db3720da19bde7180ec43", size = 15730496, upload-time = "2026-05-18T23:36:25.713Z" }, + { url = "https://files.pythonhosted.org/packages/51/e7/38d3ea825dcab85a591734decb2f6c67caa7c8367d374df1a1c3842f9b07/numpy-2.4.6-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7d92c3819208a60205a12a245c91ad70cb0a85336659b19b834205573ac8456e", size = 16679616, upload-time = "2026-05-18T23:36:29.652Z" }, + { url = "https://files.pythonhosted.org/packages/93/b7/caabfdf53edf663e0b4eb74d7d405d83baef09eb5e83bcd32d601d72b93e/numpy-2.4.6-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:e85b752a1e912b70eaad4fafbd4d1238007ab221de2009b9a2f5ae7461239895", size = 17085145, upload-time = "2026-05-18T23:36:33.449Z" }, + { url = "https://files.pythonhosted.org/packages/f9/45/68d7c33a6bcf3e5aa3bdbd57a367e6f615286dfd6482f97e8ffeb734306e/numpy-2.4.6-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:29cb7f67d10b479ff07c17d33e39f78c07f71c40ef30d63c153d340e96cd3fb4", size = 18403813, upload-time = "2026-05-18T23:36:37.369Z" }, + { url = "https://files.pythonhosted.org/packages/9c/50/0753655aa844c99cd9e018aacf76f130f1bd81d881bb74bc0aef5d73a8ba/numpy-2.4.6-cp314-cp314t-win32.whl", hash = "sha256:260a5d70215b61ab4fadf5c7baacd64821842975eea312125ed3c39a6391b063", size = 6156982, upload-time = "2026-05-18T23:36:40.817Z" }, + { url = "https://files.pythonhosted.org/packages/b2/d4/7c67becf668f973cb490cec3e98dfd799d866f9c989a54d355672cfa0db6/numpy-2.4.6-cp314-cp314t-win_amd64.whl", hash = "sha256:81a1cca95ed5bb92aa8b10dd2cdc9a0d3853a50fad926c28b5d7e8ea54389627", size = 12638908, upload-time = "2026-05-18T23:36:43.996Z" }, + { url = "https://files.pythonhosted.org/packages/43/bb/e1c71a4295b1b1d1393d50dbb4f2a36283c6859d9d3892e84f00ec5a91d5/numpy-2.4.6-cp314-cp314t-win_arm64.whl", hash = "sha256:0c9136e14ed34a9e343a31c533d78a9813a69a3148332bce5e9821cb2f996e66", size = 10565867, upload-time = "2026-05-18T23:36:47.114Z" }, +] + +[[package]] +name = "nvidia-cublas" +version = "13.1.1.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "nvidia-cuda-nvrtc", marker = "sys_platform != 'emscripten' and sys_platform != 'win32'" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/a7/a1/0bd24ee8c8d03adac032fd2909426a00c88f8c57961b1277ded97f91119f/nvidia_cublas-13.1.1.3-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:b7a210458267ac818974c53038fbec2e969d5c99f305ab15c72522fa9f001dd5", size = 542848918, upload-time = "2026-04-08T18:46:22.985Z" }, + { url = "https://files.pythonhosted.org/packages/3b/cd/154ca20c38269e05eff77c1464e6c1da89f50a6390b565e9d82e06bc11e1/nvidia_cublas-13.1.1.3-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:37936a16db8fe4ac1f065c2139360608a543a09275cb1a1af612e08cfa065436", size = 423138758, upload-time = "2026-04-08T18:46:58.655Z" }, +] + +[[package]] +name = "nvidia-cuda-cupti" +version = "13.0.85" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2a/2a/80353b103fc20ce05ef51e928daed4b6015db4aaa9162ed0997090fe2250/nvidia_cuda_cupti-13.0.85-py3-none-manylinux_2_25_aarch64.whl", hash = "sha256:796bd679890ee55fb14a94629b698b6db54bcfd833d391d5e94017dd9d7d3151", size = 10310827, upload-time = "2025-09-04T08:26:42.012Z" }, + { url = "https://files.pythonhosted.org/packages/33/6d/737d164b4837a9bbd202f5ae3078975f0525a55730fe871d8ed4e3b952b0/nvidia_cuda_cupti-13.0.85-py3-none-manylinux_2_25_x86_64.whl", hash = "sha256:4eb01c08e859bf924d222250d2e8f8b8ff6d3db4721288cf35d14252a4d933c8", size = 10715597, upload-time = "2025-09-04T08:26:51.312Z" }, +] + +[[package]] +name = "nvidia-cuda-nvrtc" +version = "13.0.88" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c3/68/483a78f5e8f31b08fb1bb671559968c0ca3a065ac7acabfc7cee55214fd6/nvidia_cuda_nvrtc-13.0.88-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl", hash = "sha256:ad9b6d2ead2435f11cbb6868809d2adeeee302e9bb94bcf0539c7a40d80e8575", size = 90215200, upload-time = "2025-09-04T08:28:44.204Z" }, + { url = "https://files.pythonhosted.org/packages/b7/dc/6bb80850e0b7edd6588d560758f17e0550893a1feaf436807d64d2da040f/nvidia_cuda_nvrtc-13.0.88-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d27f20a0ca67a4bb34268a5e951033496c5b74870b868bacd046b1b8e0c3267b", size = 43015449, upload-time = "2025-09-04T08:28:20.239Z" }, +] + +[[package]] +name = "nvidia-cuda-runtime" +version = "13.0.96" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/87/4f/17d7b9b8e285199c58ce28e31b5c5bbaa4d8271af06a89b6405258245de2/nvidia_cuda_runtime-13.0.96-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ef9bcbe90493a2b9d810e43d249adb3d02e98dd30200d86607d8d02687c43f55", size = 2261060, upload-time = "2025-10-09T08:55:15.78Z" }, + { url = "https://files.pythonhosted.org/packages/2e/24/d1558f3b68b1d26e706813b1d10aa1d785e4698c425af8db8edc3dced472/nvidia_cuda_runtime-13.0.96-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:7f82250d7782aa23b6cfe765ecc7db554bd3c2870c43f3d1821f1d18aebf0548", size = 2243632, upload-time = "2025-10-09T08:55:36.117Z" }, +] + +[[package]] +name = "nvidia-cudnn-cu13" +version = "9.20.0.48" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "nvidia-cublas", marker = "sys_platform != 'emscripten' and sys_platform != 'win32'" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/56/c5/83384d846b2fd17c44bd499b36c75a45ed4f095fbbb2252294e89cea5c5c/nvidia_cudnn_cu13-9.20.0.48-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:e31454ae00094b0c55319d9d15b6fa2fc50a9e1c0f5c8c80fb75258234e731e1", size = 444574296, upload-time = "2026-03-09T19:28:27.751Z" }, + { url = "https://files.pythonhosted.org/packages/6e/5e/edb9c0ae051602c3ccaffe424256463636d639e27d7f302dde9975ef9e7a/nvidia_cudnn_cu13-9.20.0.48-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:0c45dd8eeb50b603f07995b1b300c62ffe6a1980482b82b3bcf94a4ca9d49304", size = 366173588, upload-time = "2026-03-09T19:29:34.474Z" }, +] + +[[package]] +name = "nvidia-cufft" +version = "12.0.0.61" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "nvidia-nvjitlink", marker = "sys_platform != 'emscripten' and sys_platform != 'win32'" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/8b/ae/f417a75c0259e85c1d2f83ca4e960289a5f814ed0cea74d18c353d3e989d/nvidia_cufft-12.0.0.61-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:2708c852ef8cd89d1d2068bdbece0aa188813a0c934db3779b9b1faa8442e5f5", size = 214053554, upload-time = "2025-09-04T08:31:38.196Z" }, + { url = "https://files.pythonhosted.org/packages/a8/2f/7b57e29836ea8714f81e9898409196f47d772d5ddedddf1592eadb8ab743/nvidia_cufft-12.0.0.61-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:6c44f692dce8fd5ffd3e3df134b6cdb9c2f72d99cf40b62c32dde45eea9ddad3", size = 214085489, upload-time = "2025-09-04T08:31:56.044Z" }, +] + +[[package]] +name = "nvidia-cufile" +version = "1.15.1.6" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3f/70/4f193de89a48b71714e74602ee14d04e4019ad36a5a9f20c425776e72cd6/nvidia_cufile-1.15.1.6-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:08a3ecefae5a01c7f5117351c64f17c7c62efa5fffdbe24fc7d298da19cd0b44", size = 1223672, upload-time = "2025-09-04T08:32:22.779Z" }, + { url = "https://files.pythonhosted.org/packages/ab/73/cc4a14c9813a8a0d509417cf5f4bdaba76e924d58beb9864f5a7baceefbf/nvidia_cufile-1.15.1.6-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:bdc0deedc61f548bddf7733bdc216456c2fdb101d020e1ab4b88d232d5e2f6d1", size = 1136992, upload-time = "2025-09-04T08:32:14.119Z" }, +] + +[[package]] +name = "nvidia-curand" +version = "10.4.0.35" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1e/72/7c2ae24fb6b63a32e6ae5d241cc65263ea18d08802aaae087d9f013335a2/nvidia_curand-10.4.0.35-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:133df5a7509c3e292aaa2b477afd0194f06ce4ea24d714d616ff36439cee349a", size = 61962106, upload-time = "2025-08-04T10:21:41.128Z" }, + { url = "https://files.pythonhosted.org/packages/a5/9f/be0a41ca4a4917abf5cb9ae0daff1a6060cc5de950aec0396de9f3b52bc5/nvidia_curand-10.4.0.35-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:1aee33a5da6e1db083fe2b90082def8915f30f3248d5896bcec36a579d941bfc", size = 59544258, upload-time = "2025-08-04T10:22:03.992Z" }, +] + +[[package]] +name = "nvidia-cusolver" +version = "12.0.4.66" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "nvidia-cublas", marker = "sys_platform != 'emscripten' and sys_platform != 'win32'" }, + { name = "nvidia-cusparse", marker = "sys_platform != 'emscripten' and sys_platform != 'win32'" }, + { name = "nvidia-nvjitlink", marker = "sys_platform != 'emscripten' and sys_platform != 'win32'" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/c8/c3/b30c9e935fc01e3da443ec0116ed1b2a009bb867f5324d3f2d7e533e776b/nvidia_cusolver-12.0.4.66-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:02c2457eaa9e39de20f880f4bd8820e6a1cfb9f9a34f820eb12a155aa5bc92d2", size = 223467760, upload-time = "2025-09-04T08:33:04.222Z" }, + { url = "https://files.pythonhosted.org/packages/5f/67/cba3777620cdacb99102da4042883709c41c709f4b6323c10781a9c3aa34/nvidia_cusolver-12.0.4.66-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:0a759da5dea5c0ea10fd307de75cdeb59e7ea4fcb8add0924859b944babf1112", size = 200941980, upload-time = "2025-09-04T08:33:22.767Z" }, +] + +[[package]] +name = "nvidia-cusparse" +version = "12.6.3.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "nvidia-nvjitlink", marker = "sys_platform != 'emscripten' and sys_platform != 'win32'" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/f8/94/5c26f33738ae35276672f12615a64bd008ed5be6d1ebcb23579285d960a9/nvidia_cusparse-12.6.3.3-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:80bcc4662f23f1054ee334a15c72b8940402975e0eab63178fc7e670aa59472c", size = 162155568, upload-time = "2025-09-04T08:33:42.864Z" }, + { url = "https://files.pythonhosted.org/packages/fa/18/623c77619c31d62efd55302939756966f3ecc8d724a14dab2b75f1508850/nvidia_cusparse-12.6.3.3-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:2b3c89c88d01ee0e477cb7f82ef60a11a4bcd57b6b87c33f789350b59759360b", size = 145942937, upload-time = "2025-09-04T08:33:58.029Z" }, +] + +[[package]] +name = "nvidia-cusparselt-cu13" +version = "0.8.1" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/46/e1/cdc1797eadf82d3a9a575a19b33fdc871a97edbec42c00b5b5e914f4aff4/nvidia_cusparselt_cu13-0.8.1-py3-none-manylinux2014_aarch64.whl", hash = "sha256:4dca476c50bf4780d46cd0bfbd82e2bc10a08e4fef7950917ce8d7578d22a23f", size = 221051344, upload-time = "2025-09-05T18:49:51.289Z" }, + { url = "https://files.pythonhosted.org/packages/34/7d/2661f2fb3ac4302f3a246f5fc030213ac60c1fe0bce84f9783dbd831dbb7/nvidia_cusparselt_cu13-0.8.1-py3-none-manylinux2014_x86_64.whl", hash = "sha256:786ce87568c303fadb5afcc7102d454cd3040d75f6f8626f5db460d1871f4dd0", size = 170148586, upload-time = "2025-09-05T18:50:50.248Z" }, +] + +[[package]] +name = "nvidia-nccl-cu13" +version = "2.29.7" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/72/0d/daf50d44177ee0cbc7ff0a0c91eb5ff676c82be42f9a970bc7597f440c3a/nvidia_nccl_cu13-2.29.7-py3-none-manylinux_2_18_aarch64.whl", hash = "sha256:674a12383e3c38a1bcccae7d4f3633b37852230b6047883cb2f4c2d1b36d9bf5", size = 206014712, upload-time = "2026-03-03T05:34:20.843Z" }, + { url = "https://files.pythonhosted.org/packages/67/f4/58e4e91b6919367c7aafb8e36fce9aad1a3047e536bf7e2fd560927d3a4c/nvidia_nccl_cu13-2.29.7-py3-none-manylinux_2_18_x86_64.whl", hash = "sha256:edd81538446786ec3b73972543e53bb43bcaf0bfc8ef76cb679fcc390ffe136d", size = 205976000, upload-time = "2026-03-03T05:36:24.472Z" }, +] + +[[package]] +name = "nvidia-nvjitlink" +version = "13.0.88" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/56/7a/123e033aaff487c77107195fa5a2b8686795ca537935a24efae476c41f05/nvidia_nvjitlink-13.0.88-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl", hash = "sha256:13a74f429e23b921c1109976abefacc69835f2f433ebd323d3946e11d804e47b", size = 40713933, upload-time = "2025-09-04T08:35:43.553Z" }, + { url = "https://files.pythonhosted.org/packages/ab/2c/93c5250e64df4f894f1cbb397c6fd71f79813f9fd79d7cd61de3f97b3c2d/nvidia_nvjitlink-13.0.88-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:e931536ccc7d467a98ba1d8b89ff7fa7f1fa3b13f2b0069118cd7f47bff07d0c", size = 38768748, upload-time = "2025-09-04T08:35:20.008Z" }, +] + +[[package]] +name = "nvidia-nvshmem-cu13" +version = "3.4.5" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/dc/0f/05cc9c720236dcd2db9c1ab97fff629e96821be2e63103569da0c9b72f19/nvidia_nvshmem_cu13-3.4.5-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:6dc2a197f38e5d0376ad52cd1a2a3617d3cdc150fd5966f4aee9bcebb1d68fe9", size = 60215947, upload-time = "2025-09-06T00:32:20.022Z" }, + { url = "https://files.pythonhosted.org/packages/3c/35/a9bf80a609e74e3b000fef598933235c908fcefcef9026042b8e6dfde2a9/nvidia_nvshmem_cu13-3.4.5-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:290f0a2ee94c9f3687a02502f3b9299a9f9fe826e6d0287ee18482e78d495b80", size = 60412546, upload-time = "2025-09-06T00:32:41.564Z" }, +] + +[[package]] +name = "nvidia-nvtx" +version = "13.0.85" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c2/f3/d86c845465a2723ad7e1e5c36dcd75ddb82898b3f53be47ebd429fb2fa5d/nvidia_nvtx-13.0.85-py3-none-manylinux1_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:4936d1d6780fbe68db454f5e72a42ff64d1fd6397df9f363ae786930fd5c1cd4", size = 148047, upload-time = "2025-09-04T08:29:01.761Z" }, + { url = "https://files.pythonhosted.org/packages/a8/64/3708a90d1ebe202ffdeb7185f878a3c84d15c2b2c31858da2ce0583e2def/nvidia_nvtx-13.0.85-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:cb7780edb6b14107373c835bf8b72e7a178bac7367e23da7acb108f973f157a6", size = 148878, upload-time = "2025-09-04T08:28:53.627Z" }, +] + +[[package]] +name = "omegaconf" +version = "2.3.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "antlr4-python3-runtime" }, + { name = "pyyaml" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/09/48/6388f1bb9da707110532cb70ec4d2822858ddfb44f1cdf1233c20a80ea4b/omegaconf-2.3.0.tar.gz", hash = "sha256:d5d4b6d29955cc50ad50c46dc269bcd92c6e00f5f90d23ab5fee7bfca4ba4cc7", size = 3298120, upload-time = "2022-12-08T20:59:22.753Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e3/94/1843518e420fa3ed6919835845df698c7e27e183cb997394e4a670973a65/omegaconf-2.3.0-py3-none-any.whl", hash = "sha256:7b4df175cdb08ba400f45cae3bdcae7ba8365db4d165fc65fd04b050ab63b46b", size = 79500, upload-time = "2022-12-08T20:59:19.686Z" }, +] + +[[package]] +name = "onnxruntime" +version = "1.26.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "flatbuffers" }, + { name = "numpy" }, + { name = "packaging" }, + { name = "protobuf" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/cf/a2/c801242685e0ce48a4ca51dfafbb588765e0446397e123be53ba5598f3f5/onnxruntime-1.26.0-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:ccce19c5f771b8268902f77d9fed9e88f9499465d6780808faa6611a789d33f0", size = 18016563, upload-time = "2026-05-08T19:07:28.081Z" }, + { url = "https://files.pythonhosted.org/packages/e2/64/0492c0b1db04e29b2630c87cfa36f9d6872b1ca8614b90c5cad58fac7d76/onnxruntime-1.26.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bdbed8cf3b672b66acb032f33a253bc27f42bce6ece48ae3fab4fa483a5e96e0", size = 16052634, upload-time = "2026-05-08T19:07:16.885Z" }, + { url = "https://files.pythonhosted.org/packages/3d/26/4d09ddc755a84fc8d5e192991626b0e0680e8f6c5d58f4f1d05c42bc48cf/onnxruntime-1.26.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c07af6fc6d5557835f2b6ee7a96d8b3235d0c57a8e230efdedaee106a8a3cbc6", size = 18185632, upload-time = "2026-05-08T19:07:38.756Z" }, + { url = "https://files.pythonhosted.org/packages/77/89/3e52249aa08fa301e217ecba07b5246a8338fa2b401e109326e3fc5be0f9/onnxruntime-1.26.0-cp313-cp313-win_amd64.whl", hash = "sha256:61bec80655efa460591c2bc655392d57d2650ce85533a6b9b3b7a790d7ea7916", size = 13026751, upload-time = "2026-05-08T19:08:06.2Z" }, + { url = "https://files.pythonhosted.org/packages/06/b3/c1c8782b14af6797c303de132d6eef26a9fb80dfacd3750ce57911d11c6b/onnxruntime-1.26.0-cp313-cp313-win_arm64.whl", hash = "sha256:a6677545ff451e3539a02746d2f207d8c5baa4a0a818886bb9d6a6eb9511ee89", size = 12796807, upload-time = "2026-05-08T19:07:54.879Z" }, + { url = "https://files.pythonhosted.org/packages/c3/f5/47b0676408abec652c14b84d7173e389837832d850c24f87184277313e8d/onnxruntime-1.26.0-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5e016edc15d3c19f36807e1c6b10be5b27807688c32720f91b5ae480a95215d0", size = 16057265, upload-time = "2026-05-08T19:07:19.603Z" }, + { url = "https://files.pythonhosted.org/packages/3b/45/33ab6deeef010ca844c877dd618cebc079590bbe52d2a3678e7223b1b908/onnxruntime-1.26.0-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f5fc48a91a046a6a5c9b147f83fb41d65d24d24923373b222cdd248f0f4f4aac", size = 18197590, upload-time = "2026-05-08T19:07:41.422Z" }, + { url = "https://files.pythonhosted.org/packages/40/89/17546c1c20f6bfc3ae41c22152378a26edfea918af3129e2139dcd7c99f3/onnxruntime-1.26.0-cp314-cp314-macosx_14_0_arm64.whl", hash = "sha256:33a791f31432a3af1a96db5e54818b37aba5e5eefc2e6af5794c10a9118a9993", size = 18019724, upload-time = "2026-05-08T19:07:30.723Z" }, + { url = "https://files.pythonhosted.org/packages/bb/24/89457a35f6af29538a76647f2c18c3a28277e6c19234c847e7b4b7c19860/onnxruntime-1.26.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e90c00732c4553618103149d93f688e8c3063017938f8983e21a71d9f3b6d22e", size = 16054821, upload-time = "2026-05-08T19:07:22.348Z" }, + { url = "https://files.pythonhosted.org/packages/12/f9/15b2e1815cf570d238e0135529f80d2dce64e8e8818a1489cae83823c5c6/onnxruntime-1.26.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:01498e80ba8988428d08c2d51b1338f89e3de2a93e6ffe555f79c68f26a5c06b", size = 18185815, upload-time = "2026-05-08T19:07:44.179Z" }, + { url = "https://files.pythonhosted.org/packages/d7/65/2e11055faf015e4b07f45b513fa49b391baf2e19d92d77d73ebee13c1004/onnxruntime-1.26.0-cp314-cp314-win_amd64.whl", hash = "sha256:7ead61450d8405167c87dd3a31d8da1d576b490a57dab1aa8b82a7da6825f5aa", size = 13349887, upload-time = "2026-05-08T19:08:08.671Z" }, + { url = "https://files.pythonhosted.org/packages/19/e4/0f9d1a5718b1781c610c1e354765a3820597081754277a6a9a2b50705702/onnxruntime-1.26.0-cp314-cp314-win_arm64.whl", hash = "sha256:31d71a53490e46910877d0902b5ad99c69a5955e5c7ea6c82863519410e1ba7c", size = 13140121, upload-time = "2026-05-08T19:07:57.804Z" }, + { url = "https://files.pythonhosted.org/packages/1c/42/3b8e635f067d06d9f45bede470b8d539d101a4166c272213158dfd08b6ce/onnxruntime-1.26.0-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d7b6d258fb78fdfcf049795bcfaa74dcb90ae7baa277afd21e6fd28b83f2c496", size = 16057240, upload-time = "2026-05-08T19:07:25.163Z" }, + { url = "https://files.pythonhosted.org/packages/93/99/f2be40a31b908d96b861ae0ce98582fa376c18a7f816b9d5eb4cd6aa0a4c/onnxruntime-1.26.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4eefd386a45202aefb7a5132b94f32df9d506c9edcc7faf2fc60d65183f4b183", size = 18197382, upload-time = "2026-05-08T19:07:46.965Z" }, +] + +[[package]] +name = "opentelemetry-api" +version = "1.42.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/b4/1c/125e1c936c0873796771b7f04f6c93b9f1bf5d424cea90fda94a99f61da8/opentelemetry_api-1.42.1.tar.gz", hash = "sha256:56c63bea9f77b62856be8c47600474acad853b2924b99b1687c4cb6297166716", size = 72296, upload-time = "2026-05-21T16:32:49.335Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a3/ca/9520cc1f3dfbbd03ac5903bbf55833e257bc64b1cf30fa8b0d6df374d821/opentelemetry_api-1.42.1-py3-none-any.whl", hash = "sha256:51a69edacadbc03a8950ace1c4c21099cacc538820ac2c9e36277e78cebba714", size = 61311, upload-time = "2026-05-21T16:32:28.822Z" }, +] + +[[package]] +name = "opentelemetry-sdk" +version = "1.42.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "opentelemetry-api" }, + { name = "opentelemetry-semantic-conventions" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/40/f7/b390bd9bfd703bf98a68fea1f27786c6872331fd617164a54b8a59bdc008/opentelemetry_sdk-1.42.1.tar.gz", hash = "sha256:8c834e8f8c9ba4171d4ec843d0cb8a67e4c7394d3f9e9297e582cbd9456ddbf7", size = 239262, upload-time = "2026-05-21T16:33:04.641Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8f/6b/4287766cfbde577ae2272e8884abac325aeaac0d64f41c61d5b8cc595105/opentelemetry_sdk-1.42.1-py3-none-any.whl", hash = "sha256:083cd4bbfaa5aa7b5a9e552430d9951219967cfb27aa61feb13a77aba1fc839d", size = 170907, upload-time = "2026-05-21T16:32:45.894Z" }, +] + +[[package]] +name = "opentelemetry-semantic-conventions" +version = "0.63b1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "opentelemetry-api" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/93/99/4d7dd6df64795951413ce6e815f8cf1eb191daf7196ae86574589643d5f3/opentelemetry_semantic_conventions-0.63b1.tar.gz", hash = "sha256:3daf963611334b365e98a57438183eb012d3bfb40b2d931a9af613476b8701a9", size = 148340, upload-time = "2026-05-21T16:33:05.455Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cb/7a/7fe66f5f3682b1dd47d88cc4e11f1c6c0966b737de2d16671146e23c39a5/opentelemetry_semantic_conventions-0.63b1-py3-none-any.whl", hash = "sha256:dfe5ef4dee82586b746f522b818ceb298d00b3d59f660042bd79404bff8d0682", size = 203713, upload-time = "2026-05-21T16:32:47.016Z" }, +] + +[[package]] +name = "packaging" +version = "26.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d7/f1/e7a6dd94a8d4a5626c03e4e99c87f241ba9e350cd9e6d75123f992427270/packaging-26.2.tar.gz", hash = "sha256:ff452ff5a3e828ce110190feff1178bb1f2ea2281fa2075aadb987c2fb221661", size = 228134, upload-time = "2026-04-24T20:15:23.917Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/df/b2/87e62e8c3e2f4b32e5fe99e0b86d576da1312593b39f47d8ceef365e95ed/packaging-26.2-py3-none-any.whl", hash = "sha256:5fc45236b9446107ff2415ce77c807cee2862cb6fac22b8a73826d0693b0980e", size = 100195, upload-time = "2026-04-24T20:15:22.081Z" }, +] + +[[package]] +name = "pandas" +version = "3.0.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, + { name = "python-dateutil" }, + { name = "tzdata", marker = "sys_platform == 'emscripten' or sys_platform == 'win32'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f8/87/4341c6252d1c47b08768c3d25ac487362bf403f0313ddae4a2a26c9b1b4c/pandas-3.0.3.tar.gz", hash = "sha256:696a4a00a2a2a35d4e5deb3fc946641b96c944f02230e4f76137fe35d806c4fc", size = 4651414, upload-time = "2026-05-11T18:54:29.21Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c5/90/62d8302883c44308c477e222c3daf7c813a34c8e96985882fbd53d964352/pandas-3.0.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:67b3b64c11910cfa29f4e94a14d3bff9ee693b6fc76055e7cad549cee0aec5fa", size = 10331071, upload-time = "2026-05-11T18:52:58.838Z" }, + { url = "https://files.pythonhosted.org/packages/7f/ae/6a6493c783a101f165e4356953ba3c74d6f77f0042fa7d753da9dfbb640c/pandas-3.0.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:39436b377d56d2a2e52d0395bdbee171f01068e99af5250509aceeb929f765c7", size = 9875690, upload-time = "2026-05-11T18:53:01.431Z" }, + { url = "https://files.pythonhosted.org/packages/62/7c/5df8e9f56c69a2769fbe9382a5ef8f2658c007e376434e1e2cbb57ad895f/pandas-3.0.3-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d4be06d68f9ddcfc645b87534911da79a8fbffc7573c80e0edcf42a5020624d8", size = 10381634, upload-time = "2026-05-11T18:53:04.393Z" }, + { url = "https://files.pythonhosted.org/packages/99/68/1237369725aa617bb358263d535803e3053fdbc593513ec5ed9c9896b5b6/pandas-3.0.3-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a4eeb6830daf35a71cc09649bd823e2b542dac246cdee9614c6e4bd65028cd6a", size = 10891243, upload-time = "2026-05-11T18:53:07.643Z" }, + { url = "https://files.pythonhosted.org/packages/25/93/77d108e8af7222b4a503ebde0e30215b1c2e4f8e53a526431890f22d5586/pandas-3.0.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:1928e07221f82db493cd4af1e23c1bfca524a19a4699887975bff68f49a72bfb", size = 11388659, upload-time = "2026-05-11T18:53:10.634Z" }, + { url = "https://files.pythonhosted.org/packages/d0/bd/eff5b4399f332ac386c853f6cd2bd3fa2ca0061b9f36ecd9c4d7c4265649/pandas-3.0.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:51b1fe551acb77dac643c6fda86084d8d446c10fe64b06a9cc29c4cc8540e7f2", size = 11942880, upload-time = "2026-05-11T18:53:13.536Z" }, + { url = "https://files.pythonhosted.org/packages/2c/20/559ace4200982c3887d0b86bfd0d856a2143ef8ddab63cc07934951a964c/pandas-3.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:a82d532a3351d435432cd913edbccaf8b8e01d4dd0e5ced5a8d2e8ecd94c7e44", size = 9757091, upload-time = "2026-05-11T18:53:16.306Z" }, + { url = "https://files.pythonhosted.org/packages/3a/66/69055a09fe200f29f922a3eeec4804611900b95f52d932ece3393c3c0c19/pandas-3.0.3-cp313-cp313-win_arm64.whl", hash = "sha256:275c14e0fce14a2ec20eee474aecd305478ea3c1e6f6a9d8fe219a165542717e", size = 9057282, upload-time = "2026-05-11T18:53:18.768Z" }, + { url = "https://files.pythonhosted.org/packages/57/0e/efe801b0e6811e8e650cd21b7f2608e30f08a7067e2bf6e8752b0d56ee3c/pandas-3.0.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:46997386d528eb40376ecd6b033cf4a8a1e5282580f68f43de875b78cba2199d", size = 10767016, upload-time = "2026-05-11T18:53:21.227Z" }, + { url = "https://files.pythonhosted.org/packages/ea/dc/eb55135a1d5f0f0519f28da1f609a206d2cad1f9c35c32d51e38dd7261ae/pandas-3.0.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:261e308dfb22448384b7580cf719d2f998fe2966c92893c3e77d14008af1f066", size = 10420210, upload-time = "2026-05-11T18:53:23.982Z" }, + { url = "https://files.pythonhosted.org/packages/c6/3e/b1d5d955ce33ffecb407465a60bc32769d74fcf68224b7ae67ae11d4dea4/pandas-3.0.3-cp313-cp313t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:dd1a5d1def6a46002e964510bdc67c368aa0951df5d1d9f8365336f5a1f490cd", size = 10336126, upload-time = "2026-05-11T18:53:26.731Z" }, + { url = "https://files.pythonhosted.org/packages/f5/76/a01261711ab60a22d71b862f0de20e4c504bf80457270ad8cb42110f6abc/pandas-3.0.3-cp313-cp313t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d72828c20c6d6e83e1e22a6a3b47b326b71664112fa9705dcbccfd7a39b62085", size = 10728051, upload-time = "2026-05-11T18:53:29.125Z" }, + { url = "https://files.pythonhosted.org/packages/e9/21/ea191195e587b18cf682e97f433f81b2d0fbe341380e80a3e0d6e4403c8e/pandas-3.0.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:d26cbe1fcfc12e8fd900e2454163e466b2d3af84f7c75481df7683ffc073d870", size = 11350796, upload-time = "2026-05-11T18:53:32.056Z" }, + { url = "https://files.pythonhosted.org/packages/64/69/f0eaaf54939f0e8c6768fd06be9af2cef9b36048b96dfb9e1b2c685a807e/pandas-3.0.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:3e91cec1879ada0624fc3dc9953c5cbd60208e59c0db28f540c5d6d47502422f", size = 11799741, upload-time = "2026-05-11T18:53:34.985Z" }, + { url = "https://files.pythonhosted.org/packages/45/a4/865e0e510cae5fc2194de4db28be638952de942571ba9125934fd9c01d47/pandas-3.0.3-cp313-cp313t-win_amd64.whl", hash = "sha256:08d789b41f87e0905880e293cedf6197ce71fe67cc081358b1e148a491b9bd13", size = 10499958, upload-time = "2026-05-11T18:53:37.857Z" }, + { url = "https://files.pythonhosted.org/packages/86/54/effdcc3c0ff7a08037889200e148ebe94c16c4f653be078c7b3675955df1/pandas-3.0.3-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:3650109c0f22879df8bd6179ab9ee3d7f1d1d4e7e0094a3f0032d9f51e2e64ac", size = 10336065, upload-time = "2026-05-11T18:53:41.099Z" }, + { url = "https://files.pythonhosted.org/packages/68/10/bf2d6738d72748b961a3751ab89522d58c54efc36a8e1a12161216cd45cf/pandas-3.0.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:bab900348131a7db1f69a7309ef141fd5680f1487094193bcbbb61791573bf8f", size = 9926101, upload-time = "2026-05-11T18:53:43.515Z" }, + { url = "https://files.pythonhosted.org/packages/ae/e9/e35cf11c8a136e757b956f5f0efdcaa50aecde85ea055f1898dfc68262f3/pandas-3.0.3-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ba7e08b9ac1d54569cd1e256e3668975ed624d6826f7b68df0342b012007bddb", size = 10457553, upload-time = "2026-05-11T18:53:46.394Z" }, + { url = "https://files.pythonhosted.org/packages/58/3b/1cdec6772bdbaf7b25dab360c59f03cadf05492dd724c6540af905389b07/pandas-3.0.3-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9d71c63ae4ebdbf70209742096f1fc46a83a0613c99d4b23766cced9ff8cd62a", size = 10914065, upload-time = "2026-05-11T18:53:49.134Z" }, + { url = "https://files.pythonhosted.org/packages/c4/c2/1ef644445fcd72e3627bceec77e3560636f87ddce4ed841afe76b83b5bf9/pandas-3.0.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:e3a2ec42c98ffa2565a67e08e218d06d72576d758d90facb7c00805194d8f360", size = 11459188, upload-time = "2026-05-11T18:53:52.527Z" }, + { url = "https://files.pythonhosted.org/packages/7e/49/4d8d4f42cbc9c4adc7a1870f269c02cbd6cd40d059622c06fb298addcbad/pandas-3.0.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:335f62418ed562cfc3c49e9e196375c28b729dcef8543abf4f9438e381bf3c76", size = 11982966, upload-time = "2026-05-11T18:53:55.043Z" }, + { url = "https://files.pythonhosted.org/packages/38/55/792619469bab9882d8bbd5865d45a72f6478762d04a9af4bf0d08c503e95/pandas-3.0.3-cp314-cp314-win_amd64.whl", hash = "sha256:3c20a521bbb85902f79f7270c80a59e1b5452d96d170c034f207181870f97ac5", size = 9876755, upload-time = "2026-05-11T18:53:58.067Z" }, + { url = "https://files.pythonhosted.org/packages/2a/af/33c469653b0ba03b50c3a98192d4c07f0c75c66b263ceb097fce0ee97d31/pandas-3.0.3-cp314-cp314-win_arm64.whl", hash = "sha256:a2d2dff8a04f3917b55ab3910c32990f8ddf7eceba114947838cefa976a68977", size = 9198658, upload-time = "2026-05-11T18:54:00.733Z" }, + { url = "https://files.pythonhosted.org/packages/a2/fa/b8c257bd76b8bd060c3a9151c1fca05e9b9c5e3af5d0f549c0356f6d143d/pandas-3.0.3-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:0d589105b3c14645af1738ff279b2995102d8f7a03b0a66dc8d95550eb513e04", size = 10787242, upload-time = "2026-05-11T18:54:03.564Z" }, + { url = "https://files.pythonhosted.org/packages/54/eb/f19206ffb0bf1919002969aa448b4702c6594845156a6f8050674855aac3/pandas-3.0.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:13fc1e853d9e04743d11ba75a985ccbc2a317fe07d8af61e445a6fd24dacd6a6", size = 10436369, upload-time = "2026-05-11T18:54:06.311Z" }, + { url = "https://files.pythonhosted.org/packages/fd/24/c7c39fb4fe22b71a0c2d78bf0c585c600092d85f94f086d2b3b2f6ca27e2/pandas-3.0.3-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:819959dab7bbd0049c15623fbac4e29a191b9528160a61fb1032242d8ced2d9c", size = 10358306, upload-time = "2026-05-11T18:54:09.085Z" }, + { url = "https://files.pythonhosted.org/packages/16/ec/dd2a9eb7fa1204df88c0864164e35b228ac581062ac612ba0a67fd812e4c/pandas-3.0.3-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:60ae316d3fd75d1858d450d0db0103ea2be3e7d4a95ec2f064f7e2ae63f7b028", size = 10758394, upload-time = "2026-05-11T18:54:11.956Z" }, + { url = "https://files.pythonhosted.org/packages/95/6e/00c61ea8e85b4f6d8d35e11852a1a4998fc7fafc91c6a602d1cc9c972d64/pandas-3.0.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:bd3a518890b400d32f9023722dc9a9a5c969f00b415419a3c06c043f09bb5d7d", size = 11375717, upload-time = "2026-05-11T18:54:14.539Z" }, + { url = "https://files.pythonhosted.org/packages/31/89/8fc1c268969fac43688d65fd92e67df24bd128d53cb4d2eee534cd307399/pandas-3.0.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:9c39be2d709d01fa972a0cabc522389fceca4f3969332ba25a7d6c5802cf976a", size = 11828897, upload-time = "2026-05-11T18:54:17.146Z" }, + { url = "https://files.pythonhosted.org/packages/56/3b/e7d20dea247a3e6dc0bd8a6953854afbedc03951def4e7371e05e7263e25/pandas-3.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:4db8c527972a821cf5286b40ccc57642a39bc62e62022b42f99f8a67fca8c3a1", size = 10900855, upload-time = "2026-05-11T18:54:19.72Z" }, + { url = "https://files.pythonhosted.org/packages/0f/54/68a0978d1ef8502b8492099beaa6e7a0c1b32e3b5d4f677f5810cb08711c/pandas-3.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:b2c95f8bfc1ee412bf482605d7bfd30c12d1d26bd59fdd91efeef1d4718decb1", size = 9466464, upload-time = "2026-05-11T18:54:22.754Z" }, +] + +[[package]] +name = "pandocfilters" +version = "1.5.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/70/6f/3dd4940bbe001c06a65f88e36bad298bc7a0de5036115639926b0c5c0458/pandocfilters-1.5.1.tar.gz", hash = "sha256:002b4a555ee4ebc03f8b66307e287fa492e4a77b4ea14d3f934328297bb4939e", size = 8454, upload-time = "2024-01-18T20:08:13.726Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ef/af/4fbc8cab944db5d21b7e2a5b8e9211a03a79852b1157e2c102fcc61ac440/pandocfilters-1.5.1-py2.py3-none-any.whl", hash = "sha256:93be382804a9cdb0a7267585f157e5d1731bbe5545a85b268d6f5fe6232de2bc", size = 8663, upload-time = "2024-01-18T20:08:11.28Z" }, +] + +[[package]] +name = "parso" +version = "0.8.7" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/30/4b/90c937815137d43ce71ba043cd3566221e9df6b9c805f24b5d138c9d40a7/parso-0.8.7.tar.gz", hash = "sha256:eaaac4c9fdd5e9e8852dc778d2d7405897ec510f2a298071453e5e3a07914bb1", size = 401824, upload-time = "2026-05-01T23:13:02.138Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/99/5d/8268b644392ee874ee82a635cd0df1773de230bde356c38de28e298392cc/parso-0.8.7-py2.py3-none-any.whl", hash = "sha256:a8926eb2a1b915486941fdbd31e86a4baf88fe8c210f25f2f35ecec5b574ca1c", size = 107025, upload-time = "2026-05-01T23:12:58.867Z" }, +] + +[[package]] +name = "pexpect" +version = "4.9.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "ptyprocess", marker = "sys_platform != 'emscripten' and sys_platform != 'win32'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/42/92/cc564bf6381ff43ce1f4d06852fc19a2f11d180f23dc32d9588bee2f149d/pexpect-4.9.0.tar.gz", hash = "sha256:ee7d41123f3c9911050ea2c2dac107568dc43b2d3b0c7557a33212c398ead30f", size = 166450, upload-time = "2023-11-25T09:07:26.339Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl", hash = "sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523", size = 63772, upload-time = "2023-11-25T06:56:14.81Z" }, +] + +[[package]] +name = "pillow" +version = "12.2.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/8c/21/c2bcdd5906101a30244eaffc1b6e6ce71a31bd0742a01eb89e660ebfac2d/pillow-12.2.0.tar.gz", hash = "sha256:a830b1a40919539d07806aa58e1b114df53ddd43213d9c8b75847eee6c0182b5", size = 46987819, upload-time = "2026-04-01T14:46:17.687Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/4a/01/53d10cf0dbad820a8db274d259a37ba50b88b24768ddccec07355382d5ad/pillow-12.2.0-cp313-cp313-ios_13_0_arm64_iphoneos.whl", hash = "sha256:8297651f5b5679c19968abefd6bb84d95fe30ef712eb1b2d9b2d31ca61267f4c", size = 4100837, upload-time = "2026-04-01T14:43:41.506Z" }, + { url = "https://files.pythonhosted.org/packages/0f/98/f3a6657ecb698c937f6c76ee564882945f29b79bad496abcba0e84659ec5/pillow-12.2.0-cp313-cp313-ios_13_0_arm64_iphonesimulator.whl", hash = "sha256:50d8520da2a6ce0af445fa6d648c4273c3eeefbc32d7ce049f22e8b5c3daecc2", size = 4176528, upload-time = "2026-04-01T14:43:43.773Z" }, + { url = "https://files.pythonhosted.org/packages/69/bc/8986948f05e3ea490b8442ea1c1d4d990b24a7e43d8a51b2c7d8b1dced36/pillow-12.2.0-cp313-cp313-ios_13_0_x86_64_iphonesimulator.whl", hash = "sha256:766cef22385fa1091258ad7e6216792b156dc16d8d3fa607e7545b2b72061f1c", size = 3640401, upload-time = "2026-04-01T14:43:45.87Z" }, + { url = "https://files.pythonhosted.org/packages/34/46/6c717baadcd62bc8ed51d238d521ab651eaa74838291bda1f86fe1f864c9/pillow-12.2.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:5d2fd0fa6b5d9d1de415060363433f28da8b1526c1c129020435e186794b3795", size = 5308094, upload-time = "2026-04-01T14:43:48.438Z" }, + { url = "https://files.pythonhosted.org/packages/71/43/905a14a8b17fdb1ccb58d282454490662d2cb89a6bfec26af6d3520da5ec/pillow-12.2.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:56b25336f502b6ed02e889f4ece894a72612fe885889a6e8c4c80239ff6e5f5f", size = 4695402, upload-time = "2026-04-01T14:43:51.292Z" }, + { url = "https://files.pythonhosted.org/packages/73/dd/42107efcb777b16fa0393317eac58f5b5cf30e8392e266e76e51cff28c3d/pillow-12.2.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:f1c943e96e85df3d3478f7b691f229887e143f81fedab9b20205349ab04d73ed", size = 6280005, upload-time = "2026-04-01T14:43:54.242Z" }, + { url = "https://files.pythonhosted.org/packages/a8/68/b93e09e5e8549019e61acf49f65b1a8530765a7f812c77a7461bca7e4494/pillow-12.2.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:03f6fab9219220f041c74aeaa2939ff0062bd5c364ba9ce037197f4c6d498cd9", size = 8090669, upload-time = "2026-04-01T14:43:57.335Z" }, + { url = "https://files.pythonhosted.org/packages/4b/6e/3ccb54ce8ec4ddd1accd2d89004308b7b0b21c4ac3d20fa70af4760a4330/pillow-12.2.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5cdfebd752ec52bf5bb4e35d9c64b40826bc5b40a13df7c3cda20a2c03a0f5ed", size = 6395194, upload-time = "2026-04-01T14:43:59.864Z" }, + { url = "https://files.pythonhosted.org/packages/67/ee/21d4e8536afd1a328f01b359b4d3997b291ffd35a237c877b331c1c3b71c/pillow-12.2.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:eedf4b74eda2b5a4b2b2fb4c006d6295df3bf29e459e198c90ea48e130dc75c3", size = 7082423, upload-time = "2026-04-01T14:44:02.74Z" }, + { url = "https://files.pythonhosted.org/packages/78/5f/e9f86ab0146464e8c133fe85df987ed9e77e08b29d8d35f9f9f4d6f917ba/pillow-12.2.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:00a2865911330191c0b818c59103b58a5e697cae67042366970a6b6f1b20b7f9", size = 6505667, upload-time = "2026-04-01T14:44:05.381Z" }, + { url = "https://files.pythonhosted.org/packages/ed/1e/409007f56a2fdce61584fd3acbc2bbc259857d555196cedcadc68c015c82/pillow-12.2.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:1e1757442ed87f4912397c6d35a0db6a7b52592156014706f17658ff58bbf795", size = 7208580, upload-time = "2026-04-01T14:44:08.39Z" }, + { url = "https://files.pythonhosted.org/packages/23/c4/7349421080b12fb35414607b8871e9534546c128a11965fd4a7002ccfbee/pillow-12.2.0-cp313-cp313-win32.whl", hash = "sha256:144748b3af2d1b358d41286056d0003f47cb339b8c43a9ea42f5fea4d8c66b6e", size = 6375896, upload-time = "2026-04-01T14:44:11.197Z" }, + { url = "https://files.pythonhosted.org/packages/3f/82/8a3739a5e470b3c6cbb1d21d315800d8e16bff503d1f16b03a4ec3212786/pillow-12.2.0-cp313-cp313-win_amd64.whl", hash = "sha256:390ede346628ccc626e5730107cde16c42d3836b89662a115a921f28440e6a3b", size = 7081266, upload-time = "2026-04-01T14:44:13.947Z" }, + { url = "https://files.pythonhosted.org/packages/c3/25/f968f618a062574294592f668218f8af564830ccebdd1fa6200f598e65c5/pillow-12.2.0-cp313-cp313-win_arm64.whl", hash = "sha256:8023abc91fba39036dbce14a7d6535632f99c0b857807cbbbf21ecc9f4717f06", size = 2463508, upload-time = "2026-04-01T14:44:16.312Z" }, + { url = "https://files.pythonhosted.org/packages/4d/a4/b342930964e3cb4dce5038ae34b0eab4653334995336cd486c5a8c25a00c/pillow-12.2.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:042db20a421b9bafecc4b84a8b6e444686bd9d836c7fd24542db3e7df7baad9b", size = 5309927, upload-time = "2026-04-01T14:44:18.89Z" }, + { url = "https://files.pythonhosted.org/packages/9f/de/23198e0a65a9cf06123f5435a5d95cea62a635697f8f03d134d3f3a96151/pillow-12.2.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:dd025009355c926a84a612fecf58bb315a3f6814b17ead51a8e48d3823d9087f", size = 4698624, upload-time = "2026-04-01T14:44:21.115Z" }, + { url = "https://files.pythonhosted.org/packages/01/a6/1265e977f17d93ea37aa28aa81bad4fa597933879fac2520d24e021c8da3/pillow-12.2.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:88ddbc66737e277852913bd1e07c150cc7bb124539f94c4e2df5344494e0a612", size = 6321252, upload-time = "2026-04-01T14:44:23.663Z" }, + { url = "https://files.pythonhosted.org/packages/3c/83/5982eb4a285967baa70340320be9f88e57665a387e3a53a7f0db8231a0cd/pillow-12.2.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:d362d1878f00c142b7e1a16e6e5e780f02be8195123f164edf7eddd911eefe7c", size = 8126550, upload-time = "2026-04-01T14:44:26.772Z" }, + { url = "https://files.pythonhosted.org/packages/4e/48/6ffc514adce69f6050d0753b1a18fd920fce8cac87620d5a31231b04bfc5/pillow-12.2.0-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:2c727a6d53cb0018aadd8018c2b938376af27914a68a492f59dfcaca650d5eea", size = 6433114, upload-time = "2026-04-01T14:44:29.615Z" }, + { url = "https://files.pythonhosted.org/packages/36/a3/f9a77144231fb8d40ee27107b4463e205fa4677e2ca2548e14da5cf18dce/pillow-12.2.0-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:efd8c21c98c5cc60653bcb311bef2ce0401642b7ce9d09e03a7da87c878289d4", size = 7115667, upload-time = "2026-04-01T14:44:32.773Z" }, + { url = "https://files.pythonhosted.org/packages/c1/fc/ac4ee3041e7d5a565e1c4fd72a113f03b6394cc72ab7089d27608f8aaccb/pillow-12.2.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:9f08483a632889536b8139663db60f6724bfcb443c96f1b18855860d7d5c0fd4", size = 6538966, upload-time = "2026-04-01T14:44:35.252Z" }, + { url = "https://files.pythonhosted.org/packages/c0/a8/27fb307055087f3668f6d0a8ccb636e7431d56ed0750e07a60547b1e083e/pillow-12.2.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:dac8d77255a37e81a2efcbd1fc05f1c15ee82200e6c240d7e127e25e365c39ea", size = 7238241, upload-time = "2026-04-01T14:44:37.875Z" }, + { url = "https://files.pythonhosted.org/packages/ad/4b/926ab182c07fccae9fcb120043464e1ff1564775ec8864f21a0ebce6ac25/pillow-12.2.0-cp313-cp313t-win32.whl", hash = "sha256:ee3120ae9dff32f121610bb08e4313be87e03efeadfc6c0d18f89127e24d0c24", size = 6379592, upload-time = "2026-04-01T14:44:40.336Z" }, + { url = "https://files.pythonhosted.org/packages/c2/c4/f9e476451a098181b30050cc4c9a3556b64c02cf6497ea421ac047e89e4b/pillow-12.2.0-cp313-cp313t-win_amd64.whl", hash = "sha256:325ca0528c6788d2a6c3d40e3568639398137346c3d6e66bb61db96b96511c98", size = 7085542, upload-time = "2026-04-01T14:44:43.251Z" }, + { url = "https://files.pythonhosted.org/packages/00/a4/285f12aeacbe2d6dc36c407dfbbe9e96d4a80b0fb710a337f6d2ad978c75/pillow-12.2.0-cp313-cp313t-win_arm64.whl", hash = "sha256:2e5a76d03a6c6dcef67edabda7a52494afa4035021a79c8558e14af25313d453", size = 2465765, upload-time = "2026-04-01T14:44:45.996Z" }, + { url = "https://files.pythonhosted.org/packages/bf/98/4595daa2365416a86cb0d495248a393dfc84e96d62ad080c8546256cb9c0/pillow-12.2.0-cp314-cp314-ios_13_0_arm64_iphoneos.whl", hash = "sha256:3adc9215e8be0448ed6e814966ecf3d9952f0ea40eb14e89a102b87f450660d8", size = 4100848, upload-time = "2026-04-01T14:44:48.48Z" }, + { url = "https://files.pythonhosted.org/packages/0b/79/40184d464cf89f6663e18dfcf7ca21aae2491fff1a16127681bf1fa9b8cf/pillow-12.2.0-cp314-cp314-ios_13_0_arm64_iphonesimulator.whl", hash = "sha256:6a9adfc6d24b10f89588096364cc726174118c62130c817c2837c60cf08a392b", size = 4176515, upload-time = "2026-04-01T14:44:51.353Z" }, + { url = "https://files.pythonhosted.org/packages/b0/63/703f86fd4c422a9cf722833670f4f71418fb116b2853ff7da722ea43f184/pillow-12.2.0-cp314-cp314-ios_13_0_x86_64_iphonesimulator.whl", hash = "sha256:6a6e67ea2e6feda684ed370f9a1c52e7a243631c025ba42149a2cc5934dec295", size = 3640159, upload-time = "2026-04-01T14:44:53.588Z" }, + { url = "https://files.pythonhosted.org/packages/71/e0/fb22f797187d0be2270f83500aab851536101b254bfa1eae10795709d283/pillow-12.2.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:2bb4a8d594eacdfc59d9e5ad972aa8afdd48d584ffd5f13a937a664c3e7db0ed", size = 5312185, upload-time = "2026-04-01T14:44:56.039Z" }, + { url = "https://files.pythonhosted.org/packages/ba/8c/1a9e46228571de18f8e28f16fabdfc20212a5d019f3e3303452b3f0a580d/pillow-12.2.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:80b2da48193b2f33ed0c32c38140f9d3186583ce7d516526d462645fd98660ae", size = 4695386, upload-time = "2026-04-01T14:44:58.663Z" }, + { url = "https://files.pythonhosted.org/packages/70/62/98f6b7f0c88b9addd0e87c217ded307b36be024d4ff8869a812b241d1345/pillow-12.2.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:22db17c68434de69d8ecfc2fe821569195c0c373b25cccb9cbdacf2c6e53c601", size = 6280384, upload-time = "2026-04-01T14:45:01.5Z" }, + { url = "https://files.pythonhosted.org/packages/5e/03/688747d2e91cfbe0e64f316cd2e8005698f76ada3130d0194664174fa5de/pillow-12.2.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:7b14cc0106cd9aecda615dd6903840a058b4700fcb817687d0ee4fc8b6e389be", size = 8091599, upload-time = "2026-04-01T14:45:04.5Z" }, + { url = "https://files.pythonhosted.org/packages/f6/35/577e22b936fcdd66537329b33af0b4ccfefaeabd8aec04b266528cddb33c/pillow-12.2.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8cbeb542b2ebc6fcdacabf8aca8c1a97c9b3ad3927d46b8723f9d4f033288a0f", size = 6396021, upload-time = "2026-04-01T14:45:07.117Z" }, + { url = "https://files.pythonhosted.org/packages/11/8d/d2532ad2a603ca2b93ad9f5135732124e57811d0168155852f37fbce2458/pillow-12.2.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4bfd07bc812fbd20395212969e41931001fd59eb55a60658b0e5710872e95286", size = 7083360, upload-time = "2026-04-01T14:45:09.763Z" }, + { url = "https://files.pythonhosted.org/packages/5e/26/d325f9f56c7e039034897e7380e9cc202b1e368bfd04d4cbe6a441f02885/pillow-12.2.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:9aba9a17b623ef750a4d11b742cbafffeb48a869821252b30ee21b5e91392c50", size = 6507628, upload-time = "2026-04-01T14:45:12.378Z" }, + { url = "https://files.pythonhosted.org/packages/5f/f7/769d5632ffb0988f1c5e7660b3e731e30f7f8ec4318e94d0a5d674eb65a4/pillow-12.2.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:deede7c263feb25dba4e82ea23058a235dcc2fe1f6021025dc71f2b618e26104", size = 7209321, upload-time = "2026-04-01T14:45:15.122Z" }, + { url = "https://files.pythonhosted.org/packages/6a/7a/c253e3c645cd47f1aceea6a8bacdba9991bf45bb7dfe927f7c893e89c93c/pillow-12.2.0-cp314-cp314-win32.whl", hash = "sha256:632ff19b2778e43162304d50da0181ce24ac5bb8180122cbe1bf4673428328c7", size = 6479723, upload-time = "2026-04-01T14:45:17.797Z" }, + { url = "https://files.pythonhosted.org/packages/cd/8b/601e6566b957ca50e28725cb6c355c59c2c8609751efbecd980db44e0349/pillow-12.2.0-cp314-cp314-win_amd64.whl", hash = "sha256:4e6c62e9d237e9b65fac06857d511e90d8461a32adcc1b9065ea0c0fa3a28150", size = 7217400, upload-time = "2026-04-01T14:45:20.529Z" }, + { url = "https://files.pythonhosted.org/packages/d6/94/220e46c73065c3e2951bb91c11a1fb636c8c9ad427ac3ce7d7f3359b9b2f/pillow-12.2.0-cp314-cp314-win_arm64.whl", hash = "sha256:b1c1fbd8a5a1af3412a0810d060a78b5136ec0836c8a4ef9aa11807f2a22f4e1", size = 2554835, upload-time = "2026-04-01T14:45:23.162Z" }, + { url = "https://files.pythonhosted.org/packages/b6/ab/1b426a3974cb0e7da5c29ccff4807871d48110933a57207b5a676cccc155/pillow-12.2.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:57850958fe9c751670e49b2cecf6294acc99e562531f4bd317fa5ddee2068463", size = 5314225, upload-time = "2026-04-01T14:45:25.637Z" }, + { url = "https://files.pythonhosted.org/packages/19/1e/dce46f371be2438eecfee2a1960ee2a243bbe5e961890146d2dee1ff0f12/pillow-12.2.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:d5d38f1411c0ed9f97bcb49b7bd59b6b7c314e0e27420e34d99d844b9ce3b6f3", size = 4698541, upload-time = "2026-04-01T14:45:28.355Z" }, + { url = "https://files.pythonhosted.org/packages/55/c3/7fbecf70adb3a0c33b77a300dc52e424dc22ad8cdc06557a2e49523b703d/pillow-12.2.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:5c0a9f29ca8e79f09de89293f82fc9b0270bb4af1d58bc98f540cc4aedf03166", size = 6322251, upload-time = "2026-04-01T14:45:30.924Z" }, + { url = "https://files.pythonhosted.org/packages/1c/3c/7fbc17cfb7e4fe0ef1642e0abc17fc6c94c9f7a16be41498e12e2ba60408/pillow-12.2.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:1610dd6c61621ae1cf811bef44d77e149ce3f7b95afe66a4512f8c59f25d9ebe", size = 8127807, upload-time = "2026-04-01T14:45:33.908Z" }, + { url = "https://files.pythonhosted.org/packages/ff/c3/a8ae14d6defd2e448493ff512fae903b1e9bd40b72efb6ec55ce0048c8ce/pillow-12.2.0-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0a34329707af4f73cf1782a36cd2289c0368880654a2c11f027bcee9052d35dd", size = 6433935, upload-time = "2026-04-01T14:45:36.623Z" }, + { url = "https://files.pythonhosted.org/packages/6e/32/2880fb3a074847ac159d8f902cb43278a61e85f681661e7419e6596803ed/pillow-12.2.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8e9c4f5b3c546fa3458a29ab22646c1c6c787ea8f5ef51300e5a60300736905e", size = 7116720, upload-time = "2026-04-01T14:45:39.258Z" }, + { url = "https://files.pythonhosted.org/packages/46/87/495cc9c30e0129501643f24d320076f4cc54f718341df18cc70ec94c44e1/pillow-12.2.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:fb043ee2f06b41473269765c2feae53fc2e2fbf96e5e22ca94fb5ad677856f06", size = 6540498, upload-time = "2026-04-01T14:45:41.879Z" }, + { url = "https://files.pythonhosted.org/packages/18/53/773f5edca692009d883a72211b60fdaf8871cbef075eaa9d577f0a2f989e/pillow-12.2.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:f278f034eb75b4e8a13a54a876cc4a5ab39173d2cdd93a638e1b467fc545ac43", size = 7239413, upload-time = "2026-04-01T14:45:44.705Z" }, + { url = "https://files.pythonhosted.org/packages/c9/e4/4b64a97d71b2a83158134abbb2f5bd3f8a2ea691361282f010998f339ec7/pillow-12.2.0-cp314-cp314t-win32.whl", hash = "sha256:6bb77b2dcb06b20f9f4b4a8454caa581cd4dd0643a08bacf821216a16d9c8354", size = 6482084, upload-time = "2026-04-01T14:45:47.568Z" }, + { url = "https://files.pythonhosted.org/packages/ba/13/306d275efd3a3453f72114b7431c877d10b1154014c1ebbedd067770d629/pillow-12.2.0-cp314-cp314t-win_amd64.whl", hash = "sha256:6562ace0d3fb5f20ed7290f1f929cae41b25ae29528f2af1722966a0a02e2aa1", size = 7225152, upload-time = "2026-04-01T14:45:50.032Z" }, + { url = "https://files.pythonhosted.org/packages/ff/6e/cf826fae916b8658848d7b9f38d88da6396895c676e8086fc0988073aaf8/pillow-12.2.0-cp314-cp314t-win_arm64.whl", hash = "sha256:aa88ccfe4e32d362816319ed727a004423aab09c5cea43c01a4b435643fa34eb", size = 2556579, upload-time = "2026-04-01T14:45:52.529Z" }, +] + +[[package]] +name = "platformdirs" +version = "4.9.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/9f/4a/0883b8e3802965322523f0b200ecf33d31f10991d0401162f4b23c698b42/platformdirs-4.9.6.tar.gz", hash = "sha256:3bfa75b0ad0db84096ae777218481852c0ebc6c727b3168c1b9e0118e458cf0a", size = 29400, upload-time = "2026-04-09T00:04:10.812Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/75/a6/a0a304dc33b49145b21f4808d763822111e67d1c3a32b524a1baf947b6e1/platformdirs-4.9.6-py3-none-any.whl", hash = "sha256:e61adb1d5e5cb3441b4b7710bea7e4c12250ca49439228cc1021c00dcfac0917", size = 21348, upload-time = "2026-04-09T00:04:09.463Z" }, +] + +[[package]] +name = "pooch" +version = "1.9.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "packaging" }, + { name = "platformdirs" }, + { name = "requests" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/83/43/85ef45e8b36c6a48546af7b266592dc32d7f67837a6514d111bced6d7d75/pooch-1.9.0.tar.gz", hash = "sha256:de46729579b9857ffd3e741987a2f6d5e0e03219892c167c6578c0091fb511ed", size = 61788, upload-time = "2026-01-30T19:15:09.649Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2a/2d/d4bf65e47cea8ff2c794a600c4fd1273a7902f268757c531e0ee9f18aa58/pooch-1.9.0-py3-none-any.whl", hash = "sha256:f265597baa9f760d25ceb29d0beb8186c243d6607b0f60b83ecf14078dbc703b", size = 67175, upload-time = "2026-01-30T19:15:08.36Z" }, +] + +[[package]] +name = "prometheus-client" +version = "0.25.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1b/fb/d9aa83ffe43ce1f19e557c0971d04b90561b0cfd50762aafb01968285553/prometheus_client-0.25.0.tar.gz", hash = "sha256:5e373b75c31afb3c86f1a52fa1ad470c9aace18082d39ec0d2f918d11cc9ba28", size = 86035, upload-time = "2026-04-09T19:53:42.359Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8d/9b/d4b1e644385499c8346fa9b622a3f030dce14cd6ef8a1871c221a17a67e7/prometheus_client-0.25.0-py3-none-any.whl", hash = "sha256:d5aec89e349a6ec230805d0df882f3807f74fd6c1a2fa86864e3c2279059fed1", size = 64154, upload-time = "2026-04-09T19:53:41.324Z" }, +] + +[[package]] +name = "prompt-toolkit" +version = "3.0.52" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "wcwidth" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a1/96/06e01a7b38dce6fe1db213e061a4602dd6032a8a97ef6c1a862537732421/prompt_toolkit-3.0.52.tar.gz", hash = "sha256:28cde192929c8e7321de85de1ddbe736f1375148b02f2e17edd840042b1be855", size = 434198, upload-time = "2025-08-27T15:24:02.057Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl", hash = "sha256:9aac639a3bbd33284347de5ad8d68ecc044b91a762dc39b7c21095fcd6a19955", size = 391431, upload-time = "2025-08-27T15:23:59.498Z" }, +] + +[[package]] +name = "propcache" +version = "0.5.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ec/44/c87281c333769159c50594f22610f77398a47ccbfbbf23074e744e86f87c/propcache-0.5.2.tar.gz", hash = "sha256:01c4fc7480cd0598bb4b57022df55b9ca296da7fc5a8760bd8451a7e63a7d427", size = 50208, upload-time = "2026-05-08T21:02:12.199Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c5/09/f049e45385503fe67db75a6b6186a7b9f0c3930366dc960522c312a825b1/propcache-0.5.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:099aaf4b4d1a02265b92a977edf00b5c4f63b3b17ac6de39b0d637c9cac0188a", size = 94457, upload-time = "2026-05-08T21:00:36.355Z" }, + { url = "https://files.pythonhosted.org/packages/6b/65/83d1d05655baf63113731bd5a1008435e14f8d1e5a06cbe4ec5b23ad7a31/propcache-0.5.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:68ce1c44c7a813a7f71ea04315a8c7b330b63db99d059a797a4651bb6f69f117", size = 53835, upload-time = "2026-05-08T21:00:38.072Z" }, + { url = "https://files.pythonhosted.org/packages/a9/12/a6ba6482bb5ea3260c000c9b20881c95fa11c6b30173715668259f844ed7/propcache-0.5.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:fc299c129490f55f254cd90be0deca4764e36e9a7c08b4aa588479a3bbed3098", size = 54545, upload-time = "2026-05-08T21:00:39.319Z" }, + { url = "https://files.pythonhosted.org/packages/a9/19/7fa086f5764c59ec8a8e157cd93aa8497acc00aba9dcdec56bfffb32602d/propcache-0.5.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a6ae2198be502c10f09b2516e7b5d019816924bc3183a43ce792a7bd6625e6f4", size = 59886, upload-time = "2026-05-08T21:00:40.621Z" }, + { url = "https://files.pythonhosted.org/packages/a1/e4/5d7663dc8235956c8f5281698a3af1d351d8820341ddd890f59d9a9127f2/propcache-0.5.2-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:6041d31504dc1779d700e1edcfb08eea334b357620b06681a4eabb57a74e574e", size = 63261, upload-time = "2026-05-08T21:00:41.775Z" }, + { url = "https://files.pythonhosted.org/packages/4a/4a/15a03adee24d6350da4292caeac44c34c033d2afe5e87eb370f38854560f/propcache-0.5.2-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:f7eabc04151c78a9f4d5bbb5f1faf571e4defeb4b585e0fe95b60ff2dbe4d3d7", size = 64184, upload-time = "2026-05-08T21:00:43.018Z" }, + { url = "https://files.pythonhosted.org/packages/8b/c6/979176efdaa3d239e36d503d5af63a0a773b36662ed8f52e5b6a6d9fd40e/propcache-0.5.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4db0ba63d693afd40d249bd93f842b5f144f8fcbb83de05660373bcf30517b1d", size = 61534, upload-time = "2026-05-08T21:00:44.507Z" }, + { url = "https://files.pythonhosted.org/packages/c8/22/63e8cd1bae4c2d2be6493b6b7d10566ddafad88137cfbc99964a1119853c/propcache-0.5.2-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:1dbcf7675229b35d31abb6547d8ebc8c27a830ac3f9a794edff6254873ec7c0a", size = 61500, upload-time = "2026-05-08T21:00:45.796Z" }, + { url = "https://files.pythonhosted.org/packages/60/5a/28e5d9acbac1cc9ccb67045e8c1b943aa8d79fdf39c93bd73cacd68008ea/propcache-0.5.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:d310c013aad2c72f1c3f2f8dd3279d460a858c551f97aeb8c63e4693cca7b4d2", size = 59994, upload-time = "2026-05-08T21:00:47.093Z" }, + { url = "https://files.pythonhosted.org/packages/f3/40/db650677f554a95b9c01a7c9d93d629e93a15562f5deb4573c9ee136fed2/propcache-0.5.2-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:06187263ddad280d05b4d8a8b3bb7d164cbebd469236544a42e6d9b28ac6a4fa", size = 56884, upload-time = "2026-05-08T21:00:48.376Z" }, + { url = "https://files.pythonhosted.org/packages/80/45/70b39b89516ff8b96bf732fa6fded8cef20f293cb1508690101c3c07ec51/propcache-0.5.2-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:3115559b8effafd63b142ea5ed53d63a16ea6469cbc63dce4ee194b42db5d853", size = 63464, upload-time = "2026-05-08T21:00:49.954Z" }, + { url = "https://files.pythonhosted.org/packages/f9/e2/fa59d3a89eac5534293124af4f1d0d0ada091ce4a0ab4610ce03fd2bdd8d/propcache-0.5.2-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:c60462af8e6dc30c35407c7237ea908d777b22862bbee27bc4699c0d8bcdc45a", size = 61588, upload-time = "2026-05-08T21:00:51.281Z" }, + { url = "https://files.pythonhosted.org/packages/0b/97/efb547a55c4bc7381cfb202d6a2239ac621045277bc1ea5dfd3a7f0516c0/propcache-0.5.2-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:40314bca9ac559716fe374094fc81c11dcc34b64fd6c585360f5775690505704", size = 64667, upload-time = "2026-05-08T21:00:52.602Z" }, + { url = "https://files.pythonhosted.org/packages/92/56/f5c7d9b4b7595d5127da38974d791b2153f3d1eae6c674af3583ace92ad3/propcache-0.5.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:cfa21e036ce1e1db2be04ba3b85d2df1bb1702fa01932d984c5464c665228ff4", size = 62463, upload-time = "2026-05-08T21:00:54.303Z" }, + { url = "https://files.pythonhosted.org/packages/bd/3b/484a3a65fc9f9f60c41dcd17b428bace5389544e2c680994534a20755066/propcache-0.5.2-cp313-cp313-win32.whl", hash = "sha256:f156a3529f38063b6dbaf356e15602a7f95f8055b1295a438433a6386f10463d", size = 38621, upload-time = "2026-05-08T21:00:55.808Z" }, + { url = "https://files.pythonhosted.org/packages/1c/fd/3f0f10dba4dabad3bf53102be007abf55481067952bde0fdddff439e7c61/propcache-0.5.2-cp313-cp313-win_amd64.whl", hash = "sha256:dfed59d0a5aeb01e242e66ff0300bc4a265a7c05f612d30016f0b60b1017d757", size = 41649, upload-time = "2026-05-08T21:00:57.061Z" }, + { url = "https://files.pythonhosted.org/packages/90/ec/6ce619cc32bb500a482f811f9cd509368b4e58e638d13f2c68f370d6b475/propcache-0.5.2-cp313-cp313-win_arm64.whl", hash = "sha256:ba338430e87ceb9c8f0cf754de38a9860560261e56c00376debd628698a7364f", size = 37636, upload-time = "2026-05-08T21:00:58.646Z" }, + { url = "https://files.pythonhosted.org/packages/1b/82/c1d268bbbf2ef981c5bf0fbbe746db617c66e3bcefe431a1aa8943fbe23a/propcache-0.5.2-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:a592f5f3da71c8691c788c13cb6734b6d17663d2e1cb8caddf0673d01ef8847d", size = 98872, upload-time = "2026-05-08T21:00:59.889Z" }, + { url = "https://files.pythonhosted.org/packages/f4/d4/52c871e73e864e6b34c0e2d58ac1ec5ccd149497ddc7ad2137ae98323a35/propcache-0.5.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:6a997d0489e9668a384fcfd5061b857aa5361de73191cac204d04b889cfbbafa", size = 56257, upload-time = "2026-05-08T21:01:01.195Z" }, + { url = "https://files.pythonhosted.org/packages/67/f0/9b90ca2a210b3d09bcfcd96ecd0f55545c091535abce2a45de2775cfd357/propcache-0.5.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:10734b5484ea113152ee25a91dccedf81631791805d2c9ccb054958e51842c94", size = 56696, upload-time = "2026-05-08T21:01:02.941Z" }, + { url = "https://files.pythonhosted.org/packages/9d/0e/6e9d4ba07c8e56e21ddec1e75f12148142b21ca83a51871babce095334f4/propcache-0.5.2-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:cafca7e56c12bb02ae16d283742bef25a61122e9dab2b5b3f2ccbe589ce32164", size = 62378, upload-time = "2026-05-08T21:01:04.475Z" }, + { url = "https://files.pythonhosted.org/packages/65/19/c10badaa463dde8a27ce884f8ee2ec37e6035b7c9f5ff0c8f74f06f08dac/propcache-0.5.2-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:f064f8d2b59177878b7615df1735cd8fe3462ed6be8c7b217d17a276489c2b7f", size = 65283, upload-time = "2026-05-08T21:01:05.959Z" }, + { url = "https://files.pythonhosted.org/packages/b0/b6/93bea99ca80e19cef6512a8580e5b7857bbe09422d9daa7fd4ef5723306c/propcache-0.5.2-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:f78abfa8dfc32376fd1aacf597b2f2fbbe0ea751419aee718af5d4f82537ef8c", size = 66616, upload-time = "2026-05-08T21:01:07.228Z" }, + { url = "https://files.pythonhosted.org/packages/83/e4/5c7462e50625f051f37fb38b8224f7639f667184bbd34424ec83819bb1b7/propcache-0.5.2-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f7467da8a9822bf1a55336f877340c5bcbd3c482afc43a99771169f74a26dedc", size = 63773, upload-time = "2026-05-08T21:01:08.514Z" }, + { url = "https://files.pythonhosted.org/packages/ca/b6/99238894047b13c823be25027e736626cd414a52a5e30d2c3347c2733529/propcache-0.5.2-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:a6ddc6ac9e25de626c1f129c1b467d7ecd33ce2237d3fd0c4e429feef0a7ee1f", size = 63664, upload-time = "2026-05-08T21:01:09.874Z" }, + { url = "https://files.pythonhosted.org/packages/85/1e/a3a1a63116a2b8edb415a8bb9a6f0c34bd03830b1e18e8ce2904e1dc1cf4/propcache-0.5.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:2f22cbbac9e26a8e864c0985ff1268d5d939d53d9d9411a9824279097e03a2cb", size = 62643, upload-time = "2026-05-08T21:01:11.132Z" }, + { url = "https://files.pythonhosted.org/packages/e4/03/893cf147de2fc6543c5eaa07ad833170e7e2a2385725bbebe8c0503723bb/propcache-0.5.2-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:fc76378c62a0f04d0cd82fbb1a2cd2d7e28fcb40d5873f28a6c44e388aaa2751", size = 59595, upload-time = "2026-05-08T21:01:12.387Z" }, + { url = "https://files.pythonhosted.org/packages/86/3b/04c1a2e12c57766568ba75ba72b3bf2042818d4c1425fab6fc07155c7cff/propcache-0.5.2-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:acd2c8edba48e31e58a363b8cf4e5c7db3b04b3f9e371f601df30d9b0d244836", size = 65711, upload-time = "2026-05-08T21:01:13.676Z" }, + { url = "https://files.pythonhosted.org/packages/1c/34/80f8d0099f8d6bacc4de1624c85672681c8cd1149ca2da0e38fd120b817f/propcache-0.5.2-cp313-cp313t-musllinux_1_2_riscv64.whl", hash = "sha256:452b5065457eb9991ec5eb38ff41d6cd4c991c9ac7c531c4d5849ae473a9a13f", size = 64247, upload-time = "2026-05-08T21:01:14.936Z" }, + { url = "https://files.pythonhosted.org/packages/f3/1a/8b08f3a5f1037e9e370c55883ceeeee0f6dd0416fb2d2d67b8bfc91f2a79/propcache-0.5.2-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:3430bb2bfe1331885c427745a751e774ee679fd4344f80b97bf879815fe8fa55", size = 67102, upload-time = "2026-05-08T21:01:16.281Z" }, + { url = "https://files.pythonhosted.org/packages/34/68/8bdb7bb7756d76e005490649d10e4a8369e610c74d619f71e1aedf889e9c/propcache-0.5.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:cef6cea3922890dd6c9654971001fa797b526c16ab5e1e46c05fd6f877be7568", size = 64964, upload-time = "2026-05-08T21:01:17.57Z" }, + { url = "https://files.pythonhosted.org/packages/0a/aa/50fb0b5d3968b61a510926ff8b8465f1d6e976b3ab74496d7a4b9fc42515/propcache-0.5.2-cp313-cp313t-win32.whl", hash = "sha256:72d61e16dd78228b58c5d47be830ff3da7e5f139abdf0aef9d86cde1c5cf2191", size = 42546, upload-time = "2026-05-08T21:01:18.946Z" }, + { url = "https://files.pythonhosted.org/packages/ae/4c/0ddbae64321bd4a95bcbfc19307238016b5b1fee645c84626c8d539e5b74/propcache-0.5.2-cp313-cp313t-win_amd64.whl", hash = "sha256:0958834041a0166d343b8d2cedcd8bcbaeb4fdbe0cf08320c5379f143c3be6e7", size = 46330, upload-time = "2026-05-08T21:01:20.162Z" }, + { url = "https://files.pythonhosted.org/packages/00/d9/9cddc8efb78d8af264c5ec9f6d10b62f57c515feda8d321595f56010fb23/propcache-0.5.2-cp313-cp313t-win_arm64.whl", hash = "sha256:6de8bd93ddde9b992cf2b2e0d796d501a19026b5b9fd87356d7d0779531a8d96", size = 40521, upload-time = "2026-05-08T21:01:21.399Z" }, + { url = "https://files.pythonhosted.org/packages/e2/ea/23ee535d90ce8bcc465a3028eb3cc0ce3bd1005f4bb27710b30587de798d/propcache-0.5.2-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:46088abff4cba581dea21ae0467a480526cb25aa5f3c269e909f800328bc3999", size = 94662, upload-time = "2026-05-08T21:01:22.683Z" }, + { url = "https://files.pythonhosted.org/packages/b5/06/c5a52f419b5d8972f8d46a7577476090d8e3263ff589ce40b5ca4968d5be/propcache-0.5.2-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:fc88b26f08d634f7bc819a7852e5214f5802641ab8d9fd5326892292eee1993e", size = 53928, upload-time = "2026-05-08T21:01:23.986Z" }, + { url = "https://files.pythonhosted.org/packages/63/b1/4260d67d6bd85e58a66b72d54ce15d5de789b6f3870cc6bedf8ff9667401/propcache-0.5.2-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:97797ebb098e670a2f92dd66f32897e30d7615b14e7f59711de23e30a9072539", size = 54650, upload-time = "2026-05-08T21:01:25.305Z" }, + { url = "https://files.pythonhosted.org/packages/70/06/2f46c318e3307cd7a6a7481def374ce838c0fe20084b39dd54b0879d0e99/propcache-0.5.2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ba57fffe4ac99c5d30076161b5866336d97600769bad35cc68f7774b15298a4e", size = 59912, upload-time = "2026-05-08T21:01:26.545Z" }, + { url = "https://files.pythonhosted.org/packages/4c/29/fe1aebec2ce57ab985a9c382bded1124431f85078113aa222c5d278430d4/propcache-0.5.2-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:583c19759d9eec1e5b69e2fbef36a7d9c326041be9746cb822d335c8cedc2979", size = 63300, upload-time = "2026-05-08T21:01:27.937Z" }, + { url = "https://files.pythonhosted.org/packages/b4/18/2334b26768b6c82be8c69e83671b767d5ef426aa09b0cba6c2ea47816774/propcache-0.5.2-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d0326e2e5e1f3163fa306c834e48e8d490e5fae607a097a40c0648109b47ba80", size = 64208, upload-time = "2026-05-08T21:01:29.484Z" }, + { url = "https://files.pythonhosted.org/packages/2b/76/7f1bfd6afff4c5e38e36a3c6d68eb5f4b7311ea80baf693db78d95b603c4/propcache-0.5.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e00820e192c8dbebcafb383ebbf99030895f09905e7a0eb2e0340a0bcc2bc825", size = 61633, upload-time = "2026-05-08T21:01:31.068Z" }, + { url = "https://files.pythonhosted.org/packages/c4/46/b3ff8aba2b4953a3e50de2cf72f1b5748b8eca93b15f3dc2c84339084c09/propcache-0.5.2-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:c66afea89b1e43725731d2004732a046fe6fe955d51f952c3e95a7314a284a39", size = 61724, upload-time = "2026-05-08T21:01:32.374Z" }, + { url = "https://files.pythonhosted.org/packages/c5/01/814cfcafbcff954f94c01cf30e097ddc88a076b5440fbcf4570753437d40/propcache-0.5.2-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:d4dc37dec6c6cdad0b57881a5658fd14fbf53e333b1a86cf86559f190e1d9ec4", size = 60069, upload-time = "2026-05-08T21:01:33.67Z" }, + { url = "https://files.pythonhosted.org/packages/da/68/5c6f7622d510cc666a300687e06fd060c1a43361c0c9b20d284f06d8096a/propcache-0.5.2-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:5570dbcc97571c15f68068e529c92715a12f8d54030e272d264b377e22bd17a5", size = 57099, upload-time = "2026-05-08T21:01:34.915Z" }, + { url = "https://files.pythonhosted.org/packages/55/27/9cb0b4c679124085327957d42521c99dba04c88c90c3e55a6f0b633ebccc/propcache-0.5.2-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:f814362777a9f841adddb200ecdf8f5cb1e5a3c4b7a86378edbd6ccb26edd702", size = 63391, upload-time = "2026-05-08T21:01:36.231Z" }, + { url = "https://files.pythonhosted.org/packages/f0/9d/7258aaa5bdf60fc6f27591eef6fe52768cb0beda7140be477c8b12c9794a/propcache-0.5.2-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:196913dea116aeb5a2ba95af4ddcb7ea85559ae07d8eee8751688310d09168c3", size = 61626, upload-time = "2026-05-08T21:01:37.545Z" }, + { url = "https://files.pythonhosted.org/packages/8e/0d/41c602003e8a9b16fe1e7eadf62c7bfba9d5474370b24200bf48b315f45f/propcache-0.5.2-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:6e7b8719005dd1175be4ab1cd25e9b98659a5e0347331506ec6760d2773a7fb5", size = 64781, upload-time = "2026-05-08T21:01:38.83Z" }, + { url = "https://files.pythonhosted.org/packages/8b/f3/38e66b1856e9bd079deea015bc4a55f7767c0e4db2f7dcf69e7e680ba4ce/propcache-0.5.2-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:51f96d685ab16e88cab128cd37a52c5da540809c8b879fa047731bfcb4ad35a4", size = 62570, upload-time = "2026-05-08T21:01:40.415Z" }, + { url = "https://files.pythonhosted.org/packages/95/ca/bbfe9b910ce57dde8bb4876b4520fc02a4e89497c10de26be936758a3aaa/propcache-0.5.2-cp314-cp314-win32.whl", hash = "sha256:cc6fc3cc62e8501d3ed62894425040d2728ecddb1ed072737a5c70bd537aa9f0", size = 39436, upload-time = "2026-05-08T21:01:41.654Z" }, + { url = "https://files.pythonhosted.org/packages/61/d2/45c9defbaa1ea297035d9d4cce9e8f80daafbf19319c6007f157c6256ea9/propcache-0.5.2-cp314-cp314-win_amd64.whl", hash = "sha256:81e3a30b0bb60caa22033dd0f8a3618d1d67356212514f62c57db75cb0ef410c", size = 42373, upload-time = "2026-05-08T21:01:43.041Z" }, + { url = "https://files.pythonhosted.org/packages/44/68/9ea5103f41d5217d7d6ec24db90018e23aebec070c3f9a6e54d12b841fd8/propcache-0.5.2-cp314-cp314-win_arm64.whl", hash = "sha256:0d2c9bf8528f135dbb805ce027567e09164f7efa51a2be07458a2c0420f292d0", size = 38554, upload-time = "2026-05-08T21:01:44.336Z" }, + { url = "https://files.pythonhosted.org/packages/8a/81/fadf555f42d3b762eea8a53950b0489fdc0aa9da5f8ed9e10ce0a4e01b48/propcache-0.5.2-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:4bc8ff1feffc6a61c7002ffe84634c41b822e104990ae009f44a0834430070bb", size = 99395, upload-time = "2026-05-08T21:01:45.883Z" }, + { url = "https://files.pythonhosted.org/packages/f5/c9/c61e134a686949cf7971af3a390148b1156f7be81c73bc0cd12c873e2d48/propcache-0.5.2-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:79aa3ff0a9b566633b642fa9caf7e21ed1c13d6feca718187873f199e1514078", size = 56653, upload-time = "2026-05-08T21:01:47.307Z" }, + { url = "https://files.pythonhosted.org/packages/cb/73/daf935ea7048ddd7ec8eec5345b4a40b619d2d178b3c0a0900796bc3c794/propcache-0.5.2-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:1b31822f4474c4036bae62de9402710051d431a606d6a0f907fec79935a071aa", size = 56914, upload-time = "2026-05-08T21:01:48.573Z" }, + { url = "https://files.pythonhosted.org/packages/79/9f/aba959b435ea18617edd7cf0a7ad0b9c574b8fc7e3d2cd55fb59cb255d33/propcache-0.5.2-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:13fef48778b5a2a756523fdb781326b028ca75e32858b04f2cdd19f394564917", size = 62567, upload-time = "2026-05-08T21:01:49.903Z" }, + { url = "https://files.pythonhosted.org/packages/6c/a1/859942de9a791ff42f6141736f5b37749b8f53e65edfa49638c67dd67e6a/propcache-0.5.2-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:8b73ab70f1a3351fbc71f663b3e645af6dd0329100c353081cf69c37433fc6fe", size = 65542, upload-time = "2026-05-08T21:01:51.204Z" }, + { url = "https://files.pythonhosted.org/packages/b5/61/315bc0fd6c0fc7f80a528b8afd209e5fc4a875ea79571b91b8f50f442907/propcache-0.5.2-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:5538d2c13d93e4698af7e092b57bc7298fd35d1d58e656ae18f23ee0d0378e03", size = 66845, upload-time = "2026-05-08T21:01:52.539Z" }, + { url = "https://files.pythonhosted.org/packages/47/f7/9f8122e3132e8e354ac41975ef8f1099be7d5a16bc7ae562734e993665c0/propcache-0.5.2-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:cd645f03898405cabe694fb8bc35241e3a9c332ec85627584fe3de201452b335", size = 63985, upload-time = "2026-05-08T21:01:53.847Z" }, + { url = "https://files.pythonhosted.org/packages/c8/54/c317819ec157cbf6f35df9df9657a6f82daf34d5faf15948b2f639c2192e/propcache-0.5.2-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:a473b3440261e0c60706e732b2ed2f517857344fc21bf48fdfe211e2d98eb285", size = 63999, upload-time = "2026-05-08T21:01:55.179Z" }, + { url = "https://files.pythonhosted.org/packages/5a/56/387e3f7dfce0a9233df41fb888aa1c30222cb4bbbf09537c02dd9bd85fe2/propcache-0.5.2-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:7afa37062e6650640e932e4cc9297d81f9f42d9944029cc386b8247dea4da837", size = 62779, upload-time = "2026-05-08T21:01:57.489Z" }, + { url = "https://files.pythonhosted.org/packages/a1/9c/596784cb5824ed61ee960d3f8655a3f0993e107c6e98ab6c818b7fb92ccb/propcache-0.5.2-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:8a90efd5777e996e42d568db9ac740b944d691e565cbfd31b2f7832f9184b2b8", size = 59796, upload-time = "2026-05-08T21:01:58.736Z" }, + { url = "https://files.pythonhosted.org/packages/c2/3d/1a6cfa1726a48542c1e8784a0761421476a5b68e09b7f36bf95eb954aaba/propcache-0.5.2-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:f19bb891234d72535764d703bfed1153cc34f4214d5bd7150aee1eec9e8f4366", size = 66023, upload-time = "2026-05-08T21:02:00.228Z" }, + { url = "https://files.pythonhosted.org/packages/e4/0e/05fd6990369477076e4e280bcb970de760fddf0161a46e988bc95f7940ec/propcache-0.5.2-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:32775082acd2d807ee3db715c7770d38767b817870acfa08c29e057f3c4d5b56", size = 64448, upload-time = "2026-05-08T21:02:01.888Z" }, + { url = "https://files.pythonhosted.org/packages/cd/86/5f8da315a4309c62c10c0b2516b17492d5d3bbe1bb862b96604db67e2a37/propcache-0.5.2-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:9282fb1a3bccd038da9f768b927b24a0c753e466c086b7c4f3c6982851eefb2d", size = 67329, upload-time = "2026-05-08T21:02:03.484Z" }, + { url = "https://files.pythonhosted.org/packages/da/d3/3368efe79ab21f0cdf86ef49895811c9cc933131d4cde1f28a624e22e712/propcache-0.5.2-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:cc49723e2f60d6b32a0f0b08a3fd6d13203c07f1cd9566cfce0f12a917c967a2", size = 65172, upload-time = "2026-05-08T21:02:04.745Z" }, + { url = "https://files.pythonhosted.org/packages/d5/07/127e8b0bacfb325396196f9d976a22453049b89b9b2b08477cc3145faa44/propcache-0.5.2-cp314-cp314t-win32.whl", hash = "sha256:2d7aa89ebca5acc98cba9d1472d976e394782f587bad6661003602a619fd1821", size = 43813, upload-time = "2026-05-08T21:02:06.025Z" }, + { url = "https://files.pythonhosted.org/packages/88/fb/46dad6c0ae49ed230ab1b16c890c2b6314e2403e6c412976f4a72d64a527/propcache-0.5.2-cp314-cp314t-win_amd64.whl", hash = "sha256:d447bb0b3054be5818458fbb171208b1d9ff11eba14e18ca18b90cbb45767370", size = 47764, upload-time = "2026-05-08T21:02:07.353Z" }, + { url = "https://files.pythonhosted.org/packages/e7/c4/a47d0a63aa309d10d59ede6e9d4cff03a344a79d1f0f4cd0cd74997b53e0/propcache-0.5.2-cp314-cp314t-win_arm64.whl", hash = "sha256:fe67a3d11cd9b4efabfa45c3d00ffba2b26811442a73a581a94b67c2b5faccf6", size = 41140, upload-time = "2026-05-08T21:02:09.065Z" }, + { url = "https://files.pythonhosted.org/packages/3a/ed/1cdcab6ba3d6ab7feca11fc14f0eeea80755bb53ef4e892079f31b10a25f/propcache-0.5.2-py3-none-any.whl", hash = "sha256:be1ddfcbb376e3de5d2e2db1d58d6d67463e6b4f9f040c000de8e300295465fe", size = 14036, upload-time = "2026-05-08T21:02:10.673Z" }, +] + +[[package]] +name = "protobuf" +version = "7.35.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/60/fd/5b1491d9e4b586d621c54f4c36b888714164b6875f8d6afa3f9072906a51/protobuf-7.35.0.tar.gz", hash = "sha256:a2efd84605f41e559f1881b0912b44099d0a2ac9bf46b3474823f10fb393b0e6", size = 458677, upload-time = "2026-05-19T23:02:29.197Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/83/ee/93d06e358a4aa32280b00e722d3ea0a1f25fc3cc5778d80581c9cca2c10e/protobuf-7.35.0-cp310-abi3-macosx_10_9_universal2.whl", hash = "sha256:66be6c513931c794fa92c080ffee41671390da3d79da219cf9c0c0907f035dda", size = 433225, upload-time = "2026-05-19T23:02:19.884Z" }, + { url = "https://files.pythonhosted.org/packages/8b/39/1c76c2da93f3c507e958e0aecee2391cc44d4625de6c728bbc555195b5a8/protobuf-7.35.0-cp310-abi3-manylinux2014_aarch64.whl", hash = "sha256:fcbe42a4ac09d3ec9c987ddfcd956afd0b15f1ff613bd8371bde9405ffd5c8e5", size = 328847, upload-time = "2026-05-19T23:02:22.3Z" }, + { url = "https://files.pythonhosted.org/packages/91/1a/39f7ce90a238c1a987a4d81ec26379e02ca0aff367de68e4a1fa474215b9/protobuf-7.35.0-cp310-abi3-manylinux2014_s390x.whl", hash = "sha256:4cbf5cc286130e06a6c9bbefac442431173906dfcc979712183d4adcc01b37ee", size = 344030, upload-time = "2026-05-19T23:02:23.591Z" }, + { url = "https://files.pythonhosted.org/packages/70/5b/6baf9008817964454055ff3fe65f1de0b5f1e26c80c82f7fb108b7cd4ea3/protobuf-7.35.0-cp310-abi3-manylinux2014_x86_64.whl", hash = "sha256:6c0f98f10c8a05ea30f8993dfef2de093d27b490fdae78bb60c8343795d55011", size = 327130, upload-time = "2026-05-19T23:02:24.637Z" }, + { url = "https://files.pythonhosted.org/packages/8e/e5/e46adb0badc388bfb84877a5f9f026aff63f60e611016cf64dbe77e05446/protobuf-7.35.0-cp310-abi3-win32.whl", hash = "sha256:4c4617b83ade0e279d1d2bfe04025a1adb87f9ed657de038620dc0ff959357f6", size = 428946, upload-time = "2026-05-19T23:02:25.741Z" }, + { url = "https://files.pythonhosted.org/packages/a7/ab/547fbd9e16d879dd13c167478f8ae0a83a428008ca07a5e06acdc23ad473/protobuf-7.35.0-cp310-abi3-win_amd64.whl", hash = "sha256:f05bcadf9a2a6b8dda047007075135fb7d08c73d9177aabc067e1be46881a201", size = 439996, upload-time = "2026-05-19T23:02:26.808Z" }, + { url = "https://files.pythonhosted.org/packages/b8/ef/50433d346c56657a70d27f156c7b349ac59a068b01de4eb796e747eecc43/protobuf-7.35.0-py3-none-any.whl", hash = "sha256:c13f325cf242bad135c350629eeb5d54b24228eb472fb3e2e9ebbd4c5dc20ca0", size = 171659, upload-time = "2026-05-19T23:02:27.842Z" }, +] + +[[package]] +name = "psutil" +version = "7.2.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/aa/c6/d1ddf4abb55e93cebc4f2ed8b5d6dbad109ecb8d63748dd2b20ab5e57ebe/psutil-7.2.2.tar.gz", hash = "sha256:0746f5f8d406af344fd547f1c8daa5f5c33dbc293bb8d6a16d80b4bb88f59372", size = 493740, upload-time = "2026-01-28T18:14:54.428Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/51/08/510cbdb69c25a96f4ae523f733cdc963ae654904e8db864c07585ef99875/psutil-7.2.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:2edccc433cbfa046b980b0df0171cd25bcaeb3a68fe9022db0979e7aa74a826b", size = 130595, upload-time = "2026-01-28T18:14:57.293Z" }, + { url = "https://files.pythonhosted.org/packages/d6/f5/97baea3fe7a5a9af7436301f85490905379b1c6f2dd51fe3ecf24b4c5fbf/psutil-7.2.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e78c8603dcd9a04c7364f1a3e670cea95d51ee865e4efb3556a3a63adef958ea", size = 131082, upload-time = "2026-01-28T18:14:59.732Z" }, + { url = "https://files.pythonhosted.org/packages/37/d6/246513fbf9fa174af531f28412297dd05241d97a75911ac8febefa1a53c6/psutil-7.2.2-cp313-cp313t-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1a571f2330c966c62aeda00dd24620425d4b0cc86881c89861fbc04549e5dc63", size = 181476, upload-time = "2026-01-28T18:15:01.884Z" }, + { url = "https://files.pythonhosted.org/packages/b8/b5/9182c9af3836cca61696dabe4fd1304e17bc56cb62f17439e1154f225dd3/psutil-7.2.2-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:917e891983ca3c1887b4ef36447b1e0873e70c933afc831c6b6da078ba474312", size = 184062, upload-time = "2026-01-28T18:15:04.436Z" }, + { url = "https://files.pythonhosted.org/packages/16/ba/0756dca669f5a9300d0cbcbfae9a4c30e446dfc7440ffe43ded5724bfd93/psutil-7.2.2-cp313-cp313t-win_amd64.whl", hash = "sha256:ab486563df44c17f5173621c7b198955bd6b613fb87c71c161f827d3fb149a9b", size = 139893, upload-time = "2026-01-28T18:15:06.378Z" }, + { url = "https://files.pythonhosted.org/packages/1c/61/8fa0e26f33623b49949346de05ec1ddaad02ed8ba64af45f40a147dbfa97/psutil-7.2.2-cp313-cp313t-win_arm64.whl", hash = "sha256:ae0aefdd8796a7737eccea863f80f81e468a1e4cf14d926bd9b6f5f2d5f90ca9", size = 135589, upload-time = "2026-01-28T18:15:08.03Z" }, + { url = "https://files.pythonhosted.org/packages/81/69/ef179ab5ca24f32acc1dac0c247fd6a13b501fd5534dbae0e05a1c48b66d/psutil-7.2.2-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:eed63d3b4d62449571547b60578c5b2c4bcccc5387148db46e0c2313dad0ee00", size = 130664, upload-time = "2026-01-28T18:15:09.469Z" }, + { url = "https://files.pythonhosted.org/packages/7b/64/665248b557a236d3fa9efc378d60d95ef56dd0a490c2cd37dafc7660d4a9/psutil-7.2.2-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:7b6d09433a10592ce39b13d7be5a54fbac1d1228ed29abc880fb23df7cb694c9", size = 131087, upload-time = "2026-01-28T18:15:11.724Z" }, + { url = "https://files.pythonhosted.org/packages/d5/2e/e6782744700d6759ebce3043dcfa661fb61e2fb752b91cdeae9af12c2178/psutil-7.2.2-cp314-cp314t-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1fa4ecf83bcdf6e6c8f4449aff98eefb5d0604bf88cb883d7da3d8d2d909546a", size = 182383, upload-time = "2026-01-28T18:15:13.445Z" }, + { url = "https://files.pythonhosted.org/packages/57/49/0a41cefd10cb7505cdc04dab3eacf24c0c2cb158a998b8c7b1d27ee2c1f5/psutil-7.2.2-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e452c464a02e7dc7822a05d25db4cde564444a67e58539a00f929c51eddda0cf", size = 185210, upload-time = "2026-01-28T18:15:16.002Z" }, + { url = "https://files.pythonhosted.org/packages/dd/2c/ff9bfb544f283ba5f83ba725a3c5fec6d6b10b8f27ac1dc641c473dc390d/psutil-7.2.2-cp314-cp314t-win_amd64.whl", hash = "sha256:c7663d4e37f13e884d13994247449e9f8f574bc4655d509c3b95e9ec9e2b9dc1", size = 141228, upload-time = "2026-01-28T18:15:18.385Z" }, + { url = "https://files.pythonhosted.org/packages/f2/fc/f8d9c31db14fcec13748d373e668bc3bed94d9077dbc17fb0eebc073233c/psutil-7.2.2-cp314-cp314t-win_arm64.whl", hash = "sha256:11fe5a4f613759764e79c65cf11ebdf26e33d6dd34336f8a337aa2996d71c841", size = 136284, upload-time = "2026-01-28T18:15:19.912Z" }, + { url = "https://files.pythonhosted.org/packages/e7/36/5ee6e05c9bd427237b11b3937ad82bb8ad2752d72c6969314590dd0c2f6e/psutil-7.2.2-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:ed0cace939114f62738d808fdcecd4c869222507e266e574799e9c0faa17d486", size = 129090, upload-time = "2026-01-28T18:15:22.168Z" }, + { url = "https://files.pythonhosted.org/packages/80/c4/f5af4c1ca8c1eeb2e92ccca14ce8effdeec651d5ab6053c589b074eda6e1/psutil-7.2.2-cp36-abi3-macosx_11_0_arm64.whl", hash = "sha256:1a7b04c10f32cc88ab39cbf606e117fd74721c831c98a27dc04578deb0c16979", size = 129859, upload-time = "2026-01-28T18:15:23.795Z" }, + { url = "https://files.pythonhosted.org/packages/b5/70/5d8df3b09e25bce090399cf48e452d25c935ab72dad19406c77f4e828045/psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:076a2d2f923fd4821644f5ba89f059523da90dc9014e85f8e45a5774ca5bc6f9", size = 155560, upload-time = "2026-01-28T18:15:25.976Z" }, + { url = "https://files.pythonhosted.org/packages/63/65/37648c0c158dc222aba51c089eb3bdfa238e621674dc42d48706e639204f/psutil-7.2.2-cp36-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b0726cecd84f9474419d67252add4ac0cd9811b04d61123054b9fb6f57df6e9e", size = 156997, upload-time = "2026-01-28T18:15:27.794Z" }, + { url = "https://files.pythonhosted.org/packages/8e/13/125093eadae863ce03c6ffdbae9929430d116a246ef69866dad94da3bfbc/psutil-7.2.2-cp36-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:fd04ef36b4a6d599bbdb225dd1d3f51e00105f6d48a28f006da7f9822f2606d8", size = 148972, upload-time = "2026-01-28T18:15:29.342Z" }, + { url = "https://files.pythonhosted.org/packages/04/78/0acd37ca84ce3ddffaa92ef0f571e073faa6d8ff1f0559ab1272188ea2be/psutil-7.2.2-cp36-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:b58fabe35e80b264a4e3bb23e6b96f9e45a3df7fb7eed419ac0e5947c61e47cc", size = 148266, upload-time = "2026-01-28T18:15:31.597Z" }, + { url = "https://files.pythonhosted.org/packages/b4/90/e2159492b5426be0c1fef7acba807a03511f97c5f86b3caeda6ad92351a7/psutil-7.2.2-cp37-abi3-win_amd64.whl", hash = "sha256:eb7e81434c8d223ec4a219b5fc1c47d0417b12be7ea866e24fb5ad6e84b3d988", size = 137737, upload-time = "2026-01-28T18:15:33.849Z" }, + { url = "https://files.pythonhosted.org/packages/8c/c7/7bb2e321574b10df20cbde462a94e2b71d05f9bbda251ef27d104668306a/psutil-7.2.2-cp37-abi3-win_arm64.whl", hash = "sha256:8c233660f575a5a89e6d4cb65d9f938126312bca76d8fe087b947b3a1aaac9ee", size = 134617, upload-time = "2026-01-28T18:15:36.514Z" }, +] + +[[package]] +name = "ptyprocess" +version = "0.7.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/20/e5/16ff212c1e452235a90aeb09066144d0c5a6a8c0834397e03f5224495c4e/ptyprocess-0.7.0.tar.gz", hash = "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220", size = 70762, upload-time = "2020-12-28T15:15:30.155Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35", size = 13993, upload-time = "2020-12-28T15:15:28.35Z" }, +] + +[[package]] +name = "pure-eval" +version = "0.2.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/cd/05/0a34433a064256a578f1783a10da6df098ceaa4a57bbeaa96a6c0352786b/pure_eval-0.2.3.tar.gz", hash = "sha256:5f4e983f40564c576c7c8635ae88db5956bb2229d7e9237d03b3c0b0190eaf42", size = 19752, upload-time = "2024-07-21T12:58:21.801Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl", hash = "sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0", size = 11842, upload-time = "2024-07-21T12:58:20.04Z" }, +] + +[[package]] +name = "pyarrow" +version = "24.0.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/91/13/13e1069b351bdc3881266e11147ffccf687505dbb0ea74036237f5d454a5/pyarrow-24.0.0.tar.gz", hash = "sha256:85fe721a14dd823aca09127acbb06c3ca723efbd436c004f16bca601b04dcc83", size = 1180261, upload-time = "2026-04-21T10:51:25.837Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6f/d3/a1abf004482026ddc17f4503db227787fa3cfe41ec5091ff20e4fea55e57/pyarrow-24.0.0-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:02b001b3ed4723caa44f6cd1af2d5c86aa2cf9971dacc2ffa55b21237713dfba", size = 34976759, upload-time = "2026-04-21T10:48:07.258Z" }, + { url = "https://files.pythonhosted.org/packages/4f/4a/34f0a36d28a2dd32225301b79daad44e243dc1a2bb77d43b60749be255c4/pyarrow-24.0.0-cp313-cp313-macosx_12_0_x86_64.whl", hash = "sha256:04920d6a71aabd08a0417709efce97d45ea8e6fb733d9ca9ecffb13c67839f68", size = 36658471, upload-time = "2026-04-21T10:48:13.347Z" }, + { url = "https://files.pythonhosted.org/packages/1f/78/543b94712ae8bb1a6023bcc1acf1a740fbff8286747c289cd9468fced2a5/pyarrow-24.0.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:a964266397740257f16f7bb2e4f08a0c81454004beab8ff59dd531b73610e9f2", size = 45675981, upload-time = "2026-04-21T10:48:20.201Z" }, + { url = "https://files.pythonhosted.org/packages/84/9f/8fb7c222b100d314137fa40ec050de56cd8c6d957d1cfff685ce72f15b17/pyarrow-24.0.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:6f066b179d68c413374294bc1735f68475457c933258df594443bb9d88ddc2a0", size = 48859172, upload-time = "2026-04-21T10:48:27.541Z" }, + { url = "https://files.pythonhosted.org/packages/a7/d3/1ea72538e6c8b3b475ed78d1049a2c518e655761ea50fe1171fc855fcab7/pyarrow-24.0.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:1183baeb14c5f587b1ec52831e665718ce632caab84b7cd6b85fd44f96114495", size = 49385733, upload-time = "2026-04-21T10:48:34.7Z" }, + { url = "https://files.pythonhosted.org/packages/c3/be/c3d8b06a1ba35f2260f8e1f771abbee7d5e345c0937aab90675706b1690a/pyarrow-24.0.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:806f24b4085453c197a5078218d1ee08783ebbba271badd153d1ae22a3ee804f", size = 51934335, upload-time = "2026-04-21T10:48:42.099Z" }, + { url = "https://files.pythonhosted.org/packages/9c/62/89e07a1e7329d2cde3e3c6994ba0839a24977a2beda8be6005ea3d860b99/pyarrow-24.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:e4505fc6583f7b05ab854934896bcac8253b04ac1171a77dfb73efef92076d91", size = 27271748, upload-time = "2026-04-21T10:49:42.532Z" }, + { url = "https://files.pythonhosted.org/packages/17/1a/cff3a59f80b5b1658549d46611b67163f65e0664431c076ad728bf9d5af4/pyarrow-24.0.0-cp313-cp313t-macosx_12_0_arm64.whl", hash = "sha256:1a4e45017efbf115032e4475ee876d525e0e36c742214fbe405332480ecd6275", size = 35238554, upload-time = "2026-04-21T10:48:48.526Z" }, + { url = "https://files.pythonhosted.org/packages/a8/99/cce0f42a327bfef2c420fb6078a3eb834826e5d6697bf3009fe11d2ad051/pyarrow-24.0.0-cp313-cp313t-macosx_12_0_x86_64.whl", hash = "sha256:7986f1fa71cee060ad00758bcc79d3a93bab8559bf978fab9e53472a2e25a17b", size = 36782301, upload-time = "2026-04-21T10:48:55.181Z" }, + { url = "https://files.pythonhosted.org/packages/2a/66/8e560d5ff6793ca29aca213c53eec0dd482dd46cb93b2819e5aab52e4252/pyarrow-24.0.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:d3e0b61e8efb24ed38898e5cdc5fffa9124be480008d401a1f8071500494ae42", size = 45721929, upload-time = "2026-04-21T10:49:03.676Z" }, + { url = "https://files.pythonhosted.org/packages/27/0c/a26e25505d030716e078d9f16eb74973cbf0b33b672884e9f9da1c83b871/pyarrow-24.0.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:55a3bc1e3df3b5567b7d27ef551b2283f0c68a5e86f1cd56abc569da4f31335b", size = 48825365, upload-time = "2026-04-21T10:49:11.714Z" }, + { url = "https://files.pythonhosted.org/packages/5f/eb/771f9ecb0c65e73fe9dccdd1717901b9594f08c4515d000c7c62df573811/pyarrow-24.0.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:641f795b361874ac9da5294f8f443dfdbee355cf2bd9e3b8d97aaac2306b9b37", size = 49451819, upload-time = "2026-04-21T10:49:21.474Z" }, + { url = "https://files.pythonhosted.org/packages/48/da/61ae89a88732f5a785646f3ec6125dbb640fa98a540eb2b9889caa561403/pyarrow-24.0.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:8adc8e6ce5fccf5dc707046ae4914fd537def529709cc0d285d37a7f9cd442ca", size = 51909252, upload-time = "2026-04-21T10:49:31.164Z" }, + { url = "https://files.pythonhosted.org/packages/cb/1a/8dd5cafab7b66573fa91c03d06d213356ad4edd71813aa75e08ce2b3a844/pyarrow-24.0.0-cp313-cp313t-win_amd64.whl", hash = "sha256:9b18371ad2f44044b81a8d23bc2d8a9b6a6226dca775e8e16cfee640473d6c5d", size = 27388127, upload-time = "2026-04-21T10:49:37.334Z" }, + { url = "https://files.pythonhosted.org/packages/ad/80/d022a34ff05d2cbedd8ccf841fc1f532ecfa9eb5ed1711b56d0e0ea71fc9/pyarrow-24.0.0-cp314-cp314-macosx_12_0_arm64.whl", hash = "sha256:1cc9057f0319e26333b357e17f3c2c022f1a83739b48a88b25bfd5fa2dc18838", size = 35007997, upload-time = "2026-04-21T10:49:48.796Z" }, + { url = "https://files.pythonhosted.org/packages/1a/ff/f01485fda6f4e5d441afb8dd5e7681e4db18826c1e271852f5d3957d6a80/pyarrow-24.0.0-cp314-cp314-macosx_12_0_x86_64.whl", hash = "sha256:e6f1278ee4785b6db21229374a1c9e54ec7c549de5d1efc9630b6207de7e170b", size = 36678720, upload-time = "2026-04-21T10:49:55.858Z" }, + { url = "https://files.pythonhosted.org/packages/9e/c2/2d2d5fea814237923f71b36495211f20b43a1576f9a4d6da7e751a64ec6f/pyarrow-24.0.0-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:adbbedc55506cbdabb830890444fb856bfb0060c46c6f8026c6c2f2cf86ae795", size = 45741852, upload-time = "2026-04-21T10:50:04.624Z" }, + { url = "https://files.pythonhosted.org/packages/8e/3a/28ba9c1c1ebdbb5f1b94dfebb46f207e52e6a554b7fe4132540fde29a3a0/pyarrow-24.0.0-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:ae8a1145af31d903fa9bb166824d7abe9b4681a000b0159c9fb99c11bc11ad26", size = 48889852, upload-time = "2026-04-21T10:50:12.293Z" }, + { url = "https://files.pythonhosted.org/packages/df/51/4a389acfd31dca009f8fb82d7f510bb4130f2b3a8e18cf00194d0687d8ac/pyarrow-24.0.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:d7027eba1df3b2069e2e8d80f644fa0918b68c46432af3d088ddd390d063ecde", size = 49445207, upload-time = "2026-04-21T10:50:20.677Z" }, + { url = "https://files.pythonhosted.org/packages/19/4b/0bab2b23d2ae901b1b9a03c0efd4b2d070256f8ce3fc43f6e58c167b2081/pyarrow-24.0.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:e56a1ffe9bf7b727432b89104cc0849c21582949dd7bdcb34f17b2001a351a76", size = 51954117, upload-time = "2026-04-21T10:50:29.14Z" }, + { url = "https://files.pythonhosted.org/packages/29/88/f4e9145da0417b3d2c12035a8492b35ff4a3dbc653e614fcfb51d9dedb38/pyarrow-24.0.0-cp314-cp314-win_amd64.whl", hash = "sha256:38be1808cdd068605b787e6ca9119b27eb275a0234e50212c3492331680c3b1e", size = 28001155, upload-time = "2026-04-21T10:51:22.337Z" }, + { url = "https://files.pythonhosted.org/packages/79/4f/46a49a63f43526da895b1a45bbb51d5baf8e4d77159f8528fc3e5490007f/pyarrow-24.0.0-cp314-cp314t-macosx_12_0_arm64.whl", hash = "sha256:418e48ce50a45a6a6c73c454677203a9c75c966cb1e92ca3370959185f197a05", size = 35250387, upload-time = "2026-04-21T10:50:35.552Z" }, + { url = "https://files.pythonhosted.org/packages/a0/da/d5e0cd5ef00796922404806d5f00325cdadc3441ce2c13fe7115f2df9a64/pyarrow-24.0.0-cp314-cp314t-macosx_12_0_x86_64.whl", hash = "sha256:2f16197705a230a78270cdd4ea8a1d57e86b2fdcbc34a1f6aebc72e65c986f9a", size = 36797102, upload-time = "2026-04-21T10:50:42.417Z" }, + { url = "https://files.pythonhosted.org/packages/34/c7/5904145b0a593a05236c882933d439b5720f0a145381179063722fbfc123/pyarrow-24.0.0-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:fb24ac194bfc5e86839d7dcd52092ee31e5fe6733fe11f5e3b06ef0812b20072", size = 45745118, upload-time = "2026-04-21T10:50:49.324Z" }, + { url = "https://files.pythonhosted.org/packages/13/d3/cca42fe166d1c6e4d5b80e530b7949104d10e17508a90ae202dac205ce2a/pyarrow-24.0.0-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:9700ebd9a51f5895ce75ff4ac4b3c47a7d4b42bc618be8e713e5d56bacf5f931", size = 48844765, upload-time = "2026-04-21T10:50:55.579Z" }, + { url = "https://files.pythonhosted.org/packages/b0/49/942c3b79878ba928324d1e17c274ed84581db8c0a749b24bcf4cbdf15bd3/pyarrow-24.0.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:d8ddd2768da81d3ee08cfea9b597f4abb4e8e1dc8ae7e204b608d23a0d3ab699", size = 49471890, upload-time = "2026-04-21T10:51:02.439Z" }, + { url = "https://files.pythonhosted.org/packages/76/97/ff71431000a75d84135a1ace5ca4ba11726a231a8007bbb320a4c54075d5/pyarrow-24.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:61a3d7eaa97a14768b542f3d284dc6400dd2470d9f080708b13cd46b6ae18136", size = 51932250, upload-time = "2026-04-21T10:51:10.576Z" }, + { url = "https://files.pythonhosted.org/packages/51/be/6f79d55816d5c22557cf27533543d5d70dfe692adfbee4b99f2760674f38/pyarrow-24.0.0-cp314-cp314t-win_amd64.whl", hash = "sha256:c91d00057f23b8d353039520dc3a6c09d8608164c692e9f59a175a42b2ae0c19", size = 28131282, upload-time = "2026-04-21T10:51:16.815Z" }, +] + +[[package]] +name = "pycparser" +version = "3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1b/7d/92392ff7815c21062bea51aa7b87d45576f649f16458d78b7cf94b9ab2e6/pycparser-3.0.tar.gz", hash = "sha256:600f49d217304a5902ac3c37e1281c9fe94e4d0489de643a9504c5cdfdfc6b29", size = 103492, upload-time = "2026-01-21T14:26:51.89Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0c/c3/44f3fbbfa403ea2a7c779186dc20772604442dde72947e7d01069cbe98e3/pycparser-3.0-py3-none-any.whl", hash = "sha256:b727414169a36b7d524c1c3e31839a521725078d7b2ff038656844266160a992", size = 48172, upload-time = "2026-01-21T14:26:50.693Z" }, +] + +[[package]] +name = "pycrdt" +version = "0.12.50" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/5d/bd/6e049694ad7fed0baf45a62629ff2c7aa1c26e0581a4d4987e0fd39fe951/pycrdt-0.12.50.tar.gz", hash = "sha256:506d4bc00d7d566de4018dca52998ab7cf97c787363bc59440d3a3bb3336d1a0", size = 84528, upload-time = "2026-03-16T09:39:15.924Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d1/ea/cdc543c51971c513f3b23c34d17ae672dd2fab40977b8d94344c6e8099be/pycrdt-0.12.50-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:f75c95335cacc459dbb3c4e55afbd231f8befd333c617ffad1bbe348018021de", size = 1721432, upload-time = "2026-03-16T09:38:16.738Z" }, + { url = "https://files.pythonhosted.org/packages/b6/30/cde0c58cdfb0f2e4d523443637b11b9bb5963024f5f3cd9e889b8195eab4/pycrdt-0.12.50-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3842dff93946c1b46ea8c508f7d79f07f0a8c54fe8f8e83e6cbb1f9f35a62899", size = 944575, upload-time = "2026-03-16T09:38:18.574Z" }, + { url = "https://files.pythonhosted.org/packages/df/a8/b36e98bca96b9c9b3d554ce6984128dff076a47cb350462efb122a09613e/pycrdt-0.12.50-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fba48534acb7ba22a975c38ff531178d25a01c29d5d4ec2ecfe1c45754cde181", size = 962165, upload-time = "2026-03-16T09:38:20.112Z" }, + { url = "https://files.pythonhosted.org/packages/69/c2/38e0055416466feb9b33cfc96a95c3bd3985cdb547fdc0e556d8903e074f/pycrdt-0.12.50-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a5ca809926c3e08965b201b277c26d319c47078ba4b22178976f0455b351155b", size = 1135011, upload-time = "2026-03-16T09:38:21.952Z" }, + { url = "https://files.pythonhosted.org/packages/fe/5f/9597d1b2fcd8f1bff78308352dc8568012e1e2c2ef44a0e5ca11cd04aa81/pycrdt-0.12.50-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:bffe6a7e6a59ea1c74a53a0ffa2fee27ff54e454cff333ef952922535c7c8ffa", size = 987535, upload-time = "2026-03-16T09:38:23.459Z" }, + { url = "https://files.pythonhosted.org/packages/ed/f8/882da205925f147610ca790304a025232c164256421655e19cd9eabfca06/pycrdt-0.12.50-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:688d8cb017a729719be8f9ecf488daba24781c05a1635f725ca257aa9a90acfd", size = 956238, upload-time = "2026-03-16T09:38:25.473Z" }, + { url = "https://files.pythonhosted.org/packages/78/91/6cf0db29eebdafe8d3a27ec0a9ece583acab0959d0de22968fcc43f51d75/pycrdt-0.12.50-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:71f9dfc24636dc9789246dae4c8db39f5b9b419c1a1f6f53b782ae22e8febbef", size = 1046621, upload-time = "2026-03-16T09:38:27.349Z" }, + { url = "https://files.pythonhosted.org/packages/b4/40/f1e79a74c12439a595f1986a403e08a35abedce5929c4f464be5f2ec8109/pycrdt-0.12.50-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a33635da609afe467e4ae644766416454535161ec7e1427294a59ed8a5e80015", size = 1121675, upload-time = "2026-03-16T09:38:28.991Z" }, + { url = "https://files.pythonhosted.org/packages/03/7f/b966b7c489e306070eef305b3f591e7ce7a34ee445cb55d1b8fd4fa6e338/pycrdt-0.12.50-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:f48c78ef3710c033d07d5de326362826eda8fa941859f06c146007d6122b3bb4", size = 1235939, upload-time = "2026-03-16T09:38:30.721Z" }, + { url = "https://files.pythonhosted.org/packages/c7/7a/0a4a74c68349ee72c3e92baad0cb9fbc6a94f2c122a228489357b8ad3507/pycrdt-0.12.50-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:c714c1582b804bd296f9b8530353bfab54386a145164e9693443e38b23392d69", size = 1222964, upload-time = "2026-03-16T09:38:32.323Z" }, + { url = "https://files.pythonhosted.org/packages/be/54/c96b470ebc5eaf355beeb8ffaf0235976e3e1fb9d4bc8a1169138c7e5063/pycrdt-0.12.50-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:d88a146090d9d6fc64687574c6014b26be1673b8b54b450fca23f115068c2852", size = 1165811, upload-time = "2026-03-16T09:38:34.05Z" }, + { url = "https://files.pythonhosted.org/packages/78/e4/070a16212142bda9cb585571066e1aa48ffcdc2ffb3540759d96dcebd141/pycrdt-0.12.50-cp313-cp313-win32.whl", hash = "sha256:a149f0f080f19b1c9a5614885e134ebbe159ee8add9fce96b81fcb3ea261df94", size = 695256, upload-time = "2026-03-16T09:38:35.705Z" }, + { url = "https://files.pythonhosted.org/packages/03/63/e0beaeabc4bb32901cff77ac9bc0edfa1b2e81a739cc5cd3990896759f94/pycrdt-0.12.50-cp313-cp313-win_amd64.whl", hash = "sha256:96db3bff011f0f85e2c95ad3337abf9553dc08d2cafb2bba6ee4b30b53a585d0", size = 748447, upload-time = "2026-03-16T09:38:37.483Z" }, + { url = "https://files.pythonhosted.org/packages/f7/5d/ae92c859ec5ee4f63d2df3702ce7a782cb054d1cef9a72d17b15a0f787f9/pycrdt-0.12.50-cp314-cp314-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:382cf259b848db979f2cc8f37c8b1c20c46de8df10142383e8502c8eb40589ba", size = 1720667, upload-time = "2026-03-16T09:38:39.222Z" }, + { url = "https://files.pythonhosted.org/packages/f9/d7/03d5a6d806eec5cc880d17d88a2f8868bd3ddf20aea988ce9238d433cfb4/pycrdt-0.12.50-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:022450e769b8ec37027504602f3dcfc4171d0d27ebe0f04c28d9eb5a3641fdff", size = 946541, upload-time = "2026-03-16T09:38:40.918Z" }, + { url = "https://files.pythonhosted.org/packages/9a/af/4700d71886afeb406b5b6d16d36dbd15fd0d3caa37af60894aca75dc8f3e/pycrdt-0.12.50-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:41c5470f1fe5426e81986664e786508935d00050f061a5eb341af596c67c0bc7", size = 960844, upload-time = "2026-03-16T09:38:42.605Z" }, + { url = "https://files.pythonhosted.org/packages/e9/95/b3640697e6e7dd6675e8fb41c95fba89d84cf435249ed0b8c310ae7eaa10/pycrdt-0.12.50-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bccb80466c7bcaafa1591cdd44b4f4302993324dd09b16a1c4b05f6153a0a458", size = 1136447, upload-time = "2026-03-16T09:38:44.254Z" }, + { url = "https://files.pythonhosted.org/packages/f8/50/fec4bf7fdd8b82e295be28c890a856a2d80e94d4d49098e660bb2c4520bd/pycrdt-0.12.50-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b7b2061ad56d4305fce05ddfa269a662e1137997494f74f3f0633052f8beccd4", size = 986746, upload-time = "2026-03-16T09:38:45.88Z" }, + { url = "https://files.pythonhosted.org/packages/70/40/3f82b3bc35adc4ad194a2a397d0518892516e2c40663035401eca05d9bec/pycrdt-0.12.50-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b1d6a3aa808e3996cec15c2ec7d1613c39d872627eb1953877d21720e91b002", size = 957198, upload-time = "2026-03-16T09:38:47.609Z" }, + { url = "https://files.pythonhosted.org/packages/5e/5c/dfd19e979812e455add5942857a08ce2c28547fb68824dda44d4eb83c08b/pycrdt-0.12.50-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:8ba83048dc394e8c0d0edf5fdee073eba5d566f372bd3cc24dc8f0f4c24a36d4", size = 1048567, upload-time = "2026-03-16T09:38:49.882Z" }, + { url = "https://files.pythonhosted.org/packages/ac/02/153f511fb0f0dd32d889aede169ea0eda52d62935728b685b6815425ce9d/pycrdt-0.12.50-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:8fbf1f7b6c8200193b602ed3307b526a9cf3db7acb63191632f77d071fb595ec", size = 1122383, upload-time = "2026-03-16T09:38:51.581Z" }, + { url = "https://files.pythonhosted.org/packages/ea/fa/3fcdb4502ced4b7795516acbb12997ec7aaf726187e360494182f533a1a1/pycrdt-0.12.50-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:6776ad64c8a6b270683cdecd1327289587160228401af454f570a9d971eec9a3", size = 1235274, upload-time = "2026-03-16T09:38:53.598Z" }, + { url = "https://files.pythonhosted.org/packages/69/e9/1a50a55b2b2424646e61b648a1bee42f73c1830479cb8095df428bb56b2a/pycrdt-0.12.50-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:f4218a1e568f9b33fd676adc1d3a92fdf4c1c5b6ec3c885f227db7b7fb680b3b", size = 1224841, upload-time = "2026-03-16T09:38:55.528Z" }, + { url = "https://files.pythonhosted.org/packages/a4/62/bd919a4cf7265b4b01c2365820a5423dbe9744880a83a680339a1bf34875/pycrdt-0.12.50-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:cde948e70e3e246638e5cd8b0156c714961fba41cd44374e7c5066e797e8ec3f", size = 1168590, upload-time = "2026-03-16T09:38:57.478Z" }, + { url = "https://files.pythonhosted.org/packages/d0/b3/d0b97dbaf7c60c6e3f6d5c9ae2cd8cca3655d8fa397c41c24c44d92dc8d2/pycrdt-0.12.50-cp314-cp314-win32.whl", hash = "sha256:1d42d7f29c1e8459cd80aefd37595e8c7062817f48c59c5e5568401527718d19", size = 694709, upload-time = "2026-03-16T09:38:59.68Z" }, + { url = "https://files.pythonhosted.org/packages/72/fc/acdb8c238f9f4a6c2757b7c2cfdb39aa3c779ac465e0b6c6862c564e6350/pycrdt-0.12.50-cp314-cp314-win_amd64.whl", hash = "sha256:a4d294295120e33fef32d51e1a7a92eab444d20c07d5bde55a5a75afe58a5d41", size = 747251, upload-time = "2026-03-16T09:39:01.435Z" }, +] + +[[package]] +name = "pycrdt-store" +version = "0.1.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "pycrdt" }, + { name = "sqlite-anyio" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/35/61/dfecafdc0c23f56d5bacc67de620b77a68f86085df21a8007628d6045248/pycrdt_store-0.1.3.tar.gz", hash = "sha256:12a0e263b2c07eb18bbe7203c828b88ba953cb93094ad37d22aeb6c619df2ef0", size = 14847, upload-time = "2025-12-11T13:29:11.454Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b9/2d/85a1b3d6e65048c0553e0d06e21b235610ff4db0ea94cbae1bd34de385d7/pycrdt_store-0.1.3-py3-none-any.whl", hash = "sha256:2e74afc856c162706d178d23d57fd3706accbe79d849e73dd413646a7025afba", size = 11948, upload-time = "2025-12-11T13:29:10.522Z" }, +] + +[[package]] +name = "pycrdt-websocket" +version = "0.16.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "pycrdt" }, + { name = "pycrdt-store" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/4f/91/a412af8792af22e7e67a7424e7b6c64baada4897777fed885a2cb825155d/pycrdt_websocket-0.16.0.tar.gz", hash = "sha256:89d4d830f41028c55cc9877635f73f94f49131ca73ffac7353d0be421150d0fd", size = 23152, upload-time = "2025-06-11T07:15:54.298Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f4/b7/a1dd4d149fa6279f321bd7dacab66ac31e728fbae175a7d75cf8211b1f30/pycrdt_websocket-0.16.0-py3-none-any.whl", hash = "sha256:4b9ffe47c40867b7e637922680e93471fd801b6e8d6c9f6aa688fd2a17351141", size = 14568, upload-time = "2025-06-11T07:15:52.364Z" }, +] + +[[package]] +name = "pydantic" +version = "2.13.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "annotated-types" }, + { name = "pydantic-core" }, + { name = "typing-extensions" }, + { name = "typing-inspection" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/18/a5/b60d21ac674192f8ab0ba4e9fd860690f9b4a6e51ca5df118733b487d8d6/pydantic-2.13.4.tar.gz", hash = "sha256:c40756b57adaa8b1efeeced5c196f3f3b7c435f90e84ea7f443901bec8099ef6", size = 844775, upload-time = "2026-05-06T13:43:05.343Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fd/7b/122376b1fd3c62c1ed9dc80c931ace4844b3c55407b6fb2d199377c9736f/pydantic-2.13.4-py3-none-any.whl", hash = "sha256:45a282cde31d808236fd7ea9d919b128653c8b38b393d1c4ab335c62924d9aba", size = 472262, upload-time = "2026-05-06T13:43:02.641Z" }, +] + +[[package]] +name = "pydantic-core" +version = "2.46.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/9d/56/921726b776ace8d8f5db44c4ef961006580d91dc52b803c489fafd1aa249/pydantic_core-2.46.4.tar.gz", hash = "sha256:62f875393d7f270851f20523dd2e29f082bcc82292d66db2b64ea71f64b6e1c1", size = 471464, upload-time = "2026-05-06T13:37:06.98Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/51/a2/5d30b469c5267a17b39dec53208222f76a8d351dfac4af661888c5aee77d/pydantic_core-2.46.4-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:5d5902252db0d3cedf8d4a1bc68f70eeb430f7e4c7104c8c476753519b423008", size = 2106306, upload-time = "2026-05-06T13:37:48.029Z" }, + { url = "https://files.pythonhosted.org/packages/c1/81/4fa520eaffa8bd7d1525e644cd6d39e7d60b1592bc5b516693c7340b50f1/pydantic_core-2.46.4-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:c94f0688e7b8d0a67abf40e57a7eaaecd17cc9586706a31b76c031f63df052b4", size = 1951906, upload-time = "2026-05-06T13:37:17.012Z" }, + { url = "https://files.pythonhosted.org/packages/03/d5/fd02da45b659668b05923b17ba3a0100a0a3d5541e3bd8fcc4ecb711309e/pydantic_core-2.46.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f027324c56cd5406ca49c124b0db10e56c69064fec039acc571c29020cc87c76", size = 1976802, upload-time = "2026-05-06T13:37:35.113Z" }, + { url = "https://files.pythonhosted.org/packages/21/f2/95727e1368be3d3ed485eaab7adbd7dda408f33f7a36e8b48e0144002b91/pydantic_core-2.46.4-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e739fee756ba1010f8bcccb534252e85a35fe45ae92c295a06059ce58b74ccd3", size = 2052446, upload-time = "2026-05-06T13:37:12.313Z" }, + { url = "https://files.pythonhosted.org/packages/9c/86/5d99feea3f77c7234b8718075b23db11532773c1a0dbd9b9490215dc2eeb/pydantic_core-2.46.4-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9d56801be94b86a9da183e5f3766e6310752b99ff647e38b09a9500d88e46e76", size = 2232757, upload-time = "2026-05-06T13:39:01.149Z" }, + { url = "https://files.pythonhosted.org/packages/d2/3a/508ac615935ef7588cf6d9e9b91309fdc2da751af865e02a9098de88258c/pydantic_core-2.46.4-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2412e734dcb48da14d4e4006b82b46b74f2518b8a26ee7e58c6844a6cd6d03c4", size = 2309275, upload-time = "2026-05-06T13:37:41.406Z" }, + { url = "https://files.pythonhosted.org/packages/07/f8/41db9de19d7987d6b04715a02b3b40aea467000275d9d758ffaa31af7d50/pydantic_core-2.46.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9551187363ffc0de2a00b2e47c25aeaeb1020b69b668762966df15fc5659dd5a", size = 2094467, upload-time = "2026-05-06T13:39:18.847Z" }, + { url = "https://files.pythonhosted.org/packages/2c/e2/f35033184cb11d0052daf4416e8e10a502ea2ac006fc4f459aee872727d1/pydantic_core-2.46.4-cp313-cp313-manylinux_2_31_riscv64.whl", hash = "sha256:0186750b482eefa11d7f435892b09c5c606193ef3375bcf94aa00ae6bfb66262", size = 2134417, upload-time = "2026-05-06T13:40:17.944Z" }, + { url = "https://files.pythonhosted.org/packages/7e/7b/6ceeb1cc90e193862f444ebe373d8fdf613f0a82572dde03fb10734c6c71/pydantic_core-2.46.4-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5855698a4856556d86e8e6cd8434bc3ac0314ee8e12089ae0e143f64c6256e4e", size = 2179782, upload-time = "2026-05-06T13:40:32.618Z" }, + { url = "https://files.pythonhosted.org/packages/5a/f2/c8d7773ede6af08036423a00ae0ceffce266c3c52a096c435d68c896083f/pydantic_core-2.46.4-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:cbaf13819775b7f769bf4a1f066cb6df7a28d4480081a589828ef190226881cd", size = 2188782, upload-time = "2026-05-06T13:36:51.018Z" }, + { url = "https://files.pythonhosted.org/packages/59/31/0c864784e31f09f05cdd87606f08923b9c9e7f6e51dd27f20f62f975ce9f/pydantic_core-2.46.4-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:633147d34cf4550417f12e2b1a0383973bdf5cdfde212cb09e9a581cf10820be", size = 2328334, upload-time = "2026-05-06T13:40:37.764Z" }, + { url = "https://files.pythonhosted.org/packages/c2/eb/4f6c8a41efa30baa755590f4141abf3a8c370fab610915733e74134a7270/pydantic_core-2.46.4-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:82cf5301172168103724d49a1444d3378cb20cdee30b116a1bd6031236298a5d", size = 2372986, upload-time = "2026-05-06T13:39:34.152Z" }, + { url = "https://files.pythonhosted.org/packages/5b/24/b375a480d53113860c299764bfe9f349a3dc9108b3adc0d7f0d786492ebf/pydantic_core-2.46.4-cp313-cp313-win32.whl", hash = "sha256:9fa8ae11da9e2b3126c6426f147e0fba88d96d65921799bb30c6abd1cb2c97fb", size = 1973693, upload-time = "2026-05-06T13:37:55.072Z" }, + { url = "https://files.pythonhosted.org/packages/7e/e8/cff247591966f2d22ec8c003cd7587e27b7ba7b81ab2fb888e3ab75dc285/pydantic_core-2.46.4-cp313-cp313-win_amd64.whl", hash = "sha256:6b3ace8194b0e5204818c92802dcdca7fc6d88aabbb799d7c795540d9cd6d292", size = 2071819, upload-time = "2026-05-06T13:38:49.139Z" }, + { url = "https://files.pythonhosted.org/packages/c6/1a/f4aee670d5670e9e148e0c82c7db98d780be566c6e6a97ee8035528ca0b3/pydantic_core-2.46.4-cp313-cp313-win_arm64.whl", hash = "sha256:184c081504d17f1c1066e430e117142b2c77d9448a97f7b65c6ac9fd9aee238d", size = 2027411, upload-time = "2026-05-06T13:40:45.796Z" }, + { url = "https://files.pythonhosted.org/packages/8d/74/228a26ddad29c6672b805d9fd78e8d251cd04004fa7eed0e622096cd0250/pydantic_core-2.46.4-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:428e04521a40150c85216fc8b85e8d39fece235a9cf5e383761238c7fa9b96fb", size = 2102079, upload-time = "2026-05-06T13:38:41.019Z" }, + { url = "https://files.pythonhosted.org/packages/ad/1f/8970b150a4b4365623ae00fc88603491f763c627311ae8031e3111356d6e/pydantic_core-2.46.4-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:23ace664830ee0bfe014a0c7bc248b1f7f25ed7ad103852c317624a1083af462", size = 1952179, upload-time = "2026-05-06T13:36:59.812Z" }, + { url = "https://files.pythonhosted.org/packages/95/30/5211a831ae054928054b2f79731661087a2bc5c01e825c672b3a4a8f1b3e/pydantic_core-2.46.4-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ce5c1d2a8b27468f433ca974829c44060b8097eedc39933e3c206a90ee49c4a9", size = 1978926, upload-time = "2026-05-06T13:37:39.933Z" }, + { url = "https://files.pythonhosted.org/packages/57/e9/689668733b1eb67adeef047db3c2e8788fcf65a7fd9c9e2b46b7744fe245/pydantic_core-2.46.4-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7283d57845ecf5a163403eb0702dfc220cc4fbdd18919cb5ccea4f95ee1cdab4", size = 2046785, upload-time = "2026-05-06T13:38:01.995Z" }, + { url = "https://files.pythonhosted.org/packages/60/d9/6715260422ff50a2109878fd24d948a6c3446bb2664f34ee78cd972b3acd/pydantic_core-2.46.4-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8daafc69c93ee8a0204506a3b6b30f586ef54028f52aeeeb5c4cfc5184fd5914", size = 2228733, upload-time = "2026-05-06T13:40:50.371Z" }, + { url = "https://files.pythonhosted.org/packages/18/ae/fdb2f64316afca925640f8e70bb1a564b0ec2721c1389e25b8eb4bf9a299/pydantic_core-2.46.4-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cd2213145bcc2ba85884d0ac63d222fece9209678f77b9b4d76f054c561adb28", size = 2307534, upload-time = "2026-05-06T13:37:21.531Z" }, + { url = "https://files.pythonhosted.org/packages/89/1d/8eff589b45bb8190a9d12c49cfad0f176a5cbd1534908a6b5125e2886239/pydantic_core-2.46.4-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7a5f930472650a82629163023e630d160863fce524c616f4e5186e5de9d9a49b", size = 2099732, upload-time = "2026-05-06T13:39:31.942Z" }, + { url = "https://files.pythonhosted.org/packages/06/d5/ee5a3366637fee41dee51a1fc91562dcf12ddbc68fda34e6b253da2324bb/pydantic_core-2.46.4-cp314-cp314-manylinux_2_31_riscv64.whl", hash = "sha256:c1b3f518abeca3aa13c712fd202306e145abf59a18b094a6bafb2d2bbf59192c", size = 2129627, upload-time = "2026-05-06T13:37:25.033Z" }, + { url = "https://files.pythonhosted.org/packages/94/33/2414be571d2c6a6c4d08be21f9292b6d3fdb08949a97b6dfe985017821db/pydantic_core-2.46.4-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1a7dd0b3ee80d90150e3495a3a13ac34dbcbfd4f012996a6a1d8900e91b5c0fb", size = 2179141, upload-time = "2026-05-06T13:37:14.046Z" }, + { url = "https://files.pythonhosted.org/packages/7b/79/7daa95be995be0eecc4cf75064cb33f9bbbfe3fe0158caf2f0d4a996a5c7/pydantic_core-2.46.4-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:3fb702cd90b0446a3a1c5e470bfa0dd23c0233b676a9099ddcc964fa6ca13898", size = 2184325, upload-time = "2026-05-06T13:36:53.615Z" }, + { url = "https://files.pythonhosted.org/packages/9f/cb/d0a382f5c0de8a222dc61c65348e0ce831b1f68e0a018450d31c2cace3a5/pydantic_core-2.46.4-cp314-cp314-musllinux_1_1_armv7l.whl", hash = "sha256:b8458003118a712e66286df6a707db01c52c0f52f7db8e4a38f0da1d3b94fc4e", size = 2323990, upload-time = "2026-05-06T13:40:29.971Z" }, + { url = "https://files.pythonhosted.org/packages/05/db/d9ba624cc4a5aced1598e88c04fdbd8310c8a69b9d38b9a3d39ce3a61ed7/pydantic_core-2.46.4-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:372429a130e469c9cd698925ce5fc50940b7a1336b0d82038e63d5bbc4edc519", size = 2369978, upload-time = "2026-05-06T13:37:23.027Z" }, + { url = "https://files.pythonhosted.org/packages/f2/20/d15df15ba918c423461905802bfd2981c3af0bfa0e40d05e13edbfa48bc3/pydantic_core-2.46.4-cp314-cp314-win32.whl", hash = "sha256:85bb3611ff1802f3ee7fdd7dbff26b56f343fb432d57a4728fdd49b6ef35e2f4", size = 1966354, upload-time = "2026-05-06T13:38:03.499Z" }, + { url = "https://files.pythonhosted.org/packages/fc/b6/6b8de4c0a7d7ab3004c439c80c5c1e0a3e8d78bbae19379b01960383d9e5/pydantic_core-2.46.4-cp314-cp314-win_amd64.whl", hash = "sha256:811ff8e9c313ab425368bcbb36e5c4ebd7108c2bbf4e4089cfbb0b01eff63fac", size = 2072238, upload-time = "2026-05-06T13:39:40.807Z" }, + { url = "https://files.pythonhosted.org/packages/32/36/51eb763beec1f4cf59b1db243a7dcc39cbb41230f050a09b9d69faaf0a48/pydantic_core-2.46.4-cp314-cp314-win_arm64.whl", hash = "sha256:bfec22eab3c8cc2ceec0248aec886624116dc079afa027ecc8ad4a7e62010f8a", size = 2018251, upload-time = "2026-05-06T13:37:26.72Z" }, + { url = "https://files.pythonhosted.org/packages/e8/91/855af51d625b23aa987116a19e231d2aaef9c4a415273ddc189b79a45fee/pydantic_core-2.46.4-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:af8244b2bef6aaad6d92cda81372de7f8c8d36c9f0c3ea36e827c60e7d9467a0", size = 2099593, upload-time = "2026-05-06T13:39:47.682Z" }, + { url = "https://files.pythonhosted.org/packages/fb/1b/8784a54c65edb5f49f0a14d6977cf1b209bba85a4c77445b255c2de58ab3/pydantic_core-2.46.4-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:5a4330cdbc57162e4b3aa303f588ba752257694c9c9be3e7ebb11b4aca659b5d", size = 1935226, upload-time = "2026-05-06T13:40:40.428Z" }, + { url = "https://files.pythonhosted.org/packages/e8/e7/1955d28d1afc56dd4b3ad7cc0cf39df1b9852964cf16e5d13912756d6d6b/pydantic_core-2.46.4-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:29c61fc04a3d840155ff08e475a04809278972fe6aef51e2720554e96367e34b", size = 1974605, upload-time = "2026-05-06T13:37:32.029Z" }, + { url = "https://files.pythonhosted.org/packages/93/e2/3fedbf0ba7a22850e6e9fd78117f1c0f10f950182344d8a6c535d468fdd8/pydantic_core-2.46.4-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c50f2528cf200c5eed56faf3f4e22fcd5f38c157a8b78576e6ba3168ec35f000", size = 2030777, upload-time = "2026-05-06T13:38:55.239Z" }, + { url = "https://files.pythonhosted.org/packages/f8/61/46be275fcaaba0b4f5b9669dd852267ce1ff616592dccf7a7845588df091/pydantic_core-2.46.4-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0cbe8b01f948de4286c74cdd6c667aceb38f5c1e26f0693b3983d9d74887c65e", size = 2236641, upload-time = "2026-05-06T13:37:08.096Z" }, + { url = "https://files.pythonhosted.org/packages/60/db/12e93e46a8bac9988be3c016860f83293daea8c716c029c9ace279036f2f/pydantic_core-2.46.4-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:617d7e2ca7dcb8c5cf6bcb8c59b8832c94b36196bbf1cbd1bfb56ed341905edd", size = 2286404, upload-time = "2026-05-06T13:40:20.221Z" }, + { url = "https://files.pythonhosted.org/packages/e2/4a/4d8b19008f38d31c53b8219cfedc2e3d5de5fe99d90076b7e767de29274f/pydantic_core-2.46.4-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7027560ee92211647d0d34e3f7cd6f50da56399d26a9c8ad0da286d3869a53f3", size = 2109219, upload-time = "2026-05-06T13:38:12.153Z" }, + { url = "https://files.pythonhosted.org/packages/88/70/3cbc40978fefb7bb09c6708d40d4ad1a5d70fd7213c3d17f971de868ec1f/pydantic_core-2.46.4-cp314-cp314t-manylinux_2_31_riscv64.whl", hash = "sha256:f99626688942fb746e545232e7726926f3be91b5975f8b55327665fafda991c7", size = 2110594, upload-time = "2026-05-06T13:40:02.971Z" }, + { url = "https://files.pythonhosted.org/packages/9d/20/b8d36736216e29491125531685b2f9e61aa5b4b2599893f8268551da3338/pydantic_core-2.46.4-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:fc3e9034a63de20e15e8ade85358bc6efc614008cab72898b4b4952bea0509ff", size = 2159542, upload-time = "2026-05-06T13:39:27.506Z" }, + { url = "https://files.pythonhosted.org/packages/1d/a2/367df868eb584dacf6bf82a389272406d7178e301c4ac82545ab98bc2dd9/pydantic_core-2.46.4-cp314-cp314t-musllinux_1_1_aarch64.whl", hash = "sha256:97e7cf2be5c77b7d1a9713a05605d49460d02c6078d38d8bef3cbe323c548424", size = 2168146, upload-time = "2026-05-06T13:38:31.93Z" }, + { url = "https://files.pythonhosted.org/packages/c1/b8/4460f77f7e201893f649a29ab355dddd3beee8a97bcb1a320db414f9a06e/pydantic_core-2.46.4-cp314-cp314t-musllinux_1_1_armv7l.whl", hash = "sha256:3bf92c5d0e00fefaab325a4d27828fe6b6e2a21848686b5b60d2d9eeb09d76c6", size = 2306309, upload-time = "2026-05-06T13:37:44.717Z" }, + { url = "https://files.pythonhosted.org/packages/64/c4/be2639293acd87dc8ddbcec41a73cee9b2ebf996fe6d892a1a74e88ad3f7/pydantic_core-2.46.4-cp314-cp314t-musllinux_1_1_x86_64.whl", hash = "sha256:3ecbc122d18468d06ca279dc26a8c2e2d5acb10943bb35e36ae92096dc3b5565", size = 2369736, upload-time = "2026-05-06T13:37:05.645Z" }, + { url = "https://files.pythonhosted.org/packages/30/a6/9f9f380dbb301f67023bf8f707aaa75daadf84f7152d95c410fd7e81d994/pydantic_core-2.46.4-cp314-cp314t-win32.whl", hash = "sha256:e846ae7835bf0703ae43f534ab79a867146dadd59dc9ca5c8b53d5c8f7c9ef02", size = 1955575, upload-time = "2026-05-06T13:38:51.116Z" }, + { url = "https://files.pythonhosted.org/packages/40/1f/f1eb9eb350e795d1af8586289746f5c5677d16043040d63710e22abc43c9/pydantic_core-2.46.4-cp314-cp314t-win_amd64.whl", hash = "sha256:2108ba5c1c1eca18030634489dc544844144ee36357f2f9f780b93e7ddbb44b5", size = 2051624, upload-time = "2026-05-06T13:38:21.672Z" }, + { url = "https://files.pythonhosted.org/packages/f6/d2/42dd53d0a85c27606f316d3aa5d2869c4e8470a5ed6dec30e4a1abe19192/pydantic_core-2.46.4-cp314-cp314t-win_arm64.whl", hash = "sha256:4fcbe087dbc2068af7eda3aa87634eba216dbda64d1ae73c8684b621d33f6596", size = 2017325, upload-time = "2026-05-06T13:40:52.723Z" }, +] + +[[package]] +name = "pydantic-settings" +version = "2.14.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pydantic" }, + { name = "python-dotenv" }, + { name = "typing-inspection" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/07/60/1d1e59c9c90d54591469ada7d268251f71c24bdb765f1a8a832cee8c6653/pydantic_settings-2.14.1.tar.gz", hash = "sha256:e874d3bec7e787b0c9958277956ed9b4dd5de6a80e162188fdaff7c5e26fd5fa", size = 235551, upload-time = "2026-05-08T13:40:06.542Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ae/8d/f1af3832f5e6eb13ba94ee809e72b8ecb5eef226d27ee0bef7d963d943c7/pydantic_settings-2.14.1-py3-none-any.whl", hash = "sha256:6e3c7edfd8277687cdc598f56e5cff0e9bfff0910a3749deaa8d4401c3a2b9de", size = 60964, upload-time = "2026-05-08T13:40:04.958Z" }, +] + +[[package]] +name = "pygments" +version = "2.20.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/c3/b2/bc9c9196916376152d655522fdcebac55e66de6603a76a02bca1b6414f6c/pygments-2.20.0.tar.gz", hash = "sha256:6757cd03768053ff99f3039c1a36d6c0aa0b263438fcab17520b30a303a82b5f", size = 4955991, upload-time = "2026-03-29T13:29:33.898Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl", hash = "sha256:81a9e26dd42fd28a23a2d169d86d7ac03b46e2f8b59ed4698fb4785f946d0176", size = 1231151, upload-time = "2026-03-29T13:29:30.038Z" }, +] + +[[package]] +name = "pyjwt" +version = "2.13.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/3b/81/58d0ac84e1ef3a3843791d6954d94c0b33d526c75eeb1efbce9d0a4c4077/pyjwt-2.13.0.tar.gz", hash = "sha256:41571c89ca91598c79e8ef18a2d07367d4810fbbd6f637794879baf1b7703423", size = 107515, upload-time = "2026-05-21T19:54:36.618Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a3/5e/ecf12fdb62546d64385c158514e9b2b671f7832108ef2ecd2020ce0af2d1/pyjwt-2.13.0-py3-none-any.whl", hash = "sha256:66adcc2aff09b3f1bbd95fc1e1577df8ac8723c978552fd43304c8a290ac5728", size = 31274, upload-time = "2026-05-21T19:54:35.362Z" }, +] + +[package.optional-dependencies] +crypto = [ + { name = "cryptography" }, +] + +[[package]] +name = "pymatting" +version = "1.1.15" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numba" }, + { name = "numpy" }, + { name = "pillow" }, + { name = "scipy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/9a/f5/83955aa915ea5e04cecb32612d419e8341604d0b898c2ebe4277adbc4c6b/pymatting-1.1.15.tar.gz", hash = "sha256:67cbadd68d04696357461ad1861bcb3c2adc9ec5fcd38d524db606addabe745a", size = 44424, upload-time = "2026-01-26T09:27:22.395Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c7/59/87a27f2539b0a9436853484e80f6a3ef96c30caa0316dce85f1f29d9e953/pymatting-1.1.15-py3-none-any.whl", hash = "sha256:1bd7f04651f1e02b390b88b84cf97c7f4c871ad8568945e4303746bf3ab48ecc", size = 54862, upload-time = "2026-01-26T09:27:20.856Z" }, +] + +[[package]] +name = "pyparsing" +version = "3.3.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f3/91/9c6ee907786a473bf81c5f53cf703ba0957b23ab84c264080fb5a450416f/pyparsing-3.3.2.tar.gz", hash = "sha256:c777f4d763f140633dcb6d8a3eda953bf7a214dc4eff598413c070bcdc117cbc", size = 6851574, upload-time = "2026-01-21T03:57:59.36Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/10/bd/c038d7cc38edc1aa5bf91ab8068b63d4308c66c4c8bb3cbba7dfbc049f9c/pyparsing-3.3.2-py3-none-any.whl", hash = "sha256:850ba148bd908d7e2411587e247a1e4f0327839c40e2e5e6d05a007ecc69911d", size = 122781, upload-time = "2026-01-21T03:57:55.912Z" }, +] + +[[package]] +name = "python-dateutil" +version = "2.9.0.post0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "six" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3", size = 342432, upload-time = "2024-03-01T18:36:20.211Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427", size = 229892, upload-time = "2024-03-01T18:36:18.57Z" }, +] + +[[package]] +name = "python-dotenv" +version = "1.2.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/82/ed/0301aeeac3e5353ef3d94b6ec08bbcabd04a72018415dcb29e588514bba8/python_dotenv-1.2.2.tar.gz", hash = "sha256:2c371a91fbd7ba082c2c1dc1f8bf89ca22564a087c2c287cd9b662adde799cf3", size = 50135, upload-time = "2026-03-01T16:00:26.196Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/0b/d7/1959b9648791274998a9c3526f6d0ec8fd2233e4d4acce81bbae76b44b2a/python_dotenv-1.2.2-py3-none-any.whl", hash = "sha256:1d8214789a24de455a8b8bd8ae6fe3c6b69a5e3d64aa8a8e5d68e694bbcb285a", size = 22101, upload-time = "2026-03-01T16:00:25.09Z" }, +] + +[[package]] +name = "python-json-logger" +version = "4.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f7/ff/3cc9165fd44106973cd7ac9facb674a65ed853494592541d339bdc9a30eb/python_json_logger-4.1.0.tar.gz", hash = "sha256:b396b9e3ed782b09ff9d6e4f1683d46c83ad0d35d2e407c09a9ebbf038f88195", size = 17573, upload-time = "2026-03-29T04:39:56.805Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/27/be/0631a861af4d1c875f096c07d34e9a63639560a717130e7a87cbc82b7e3f/python_json_logger-4.1.0-py3-none-any.whl", hash = "sha256:132994765cf75bf44554be9aa49b06ef2345d23661a96720262716438141b6b2", size = 15021, upload-time = "2026-03-29T04:39:55.266Z" }, +] + +[[package]] +name = "python-multipart" +version = "0.0.29" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/4e/fe/70bd71a6738b09a0bdf6480ca6436b167469ca4578b2a0efbe390b4b0e70/python_multipart-0.0.29.tar.gz", hash = "sha256:643e93849196645e2dbdd81a0f8829a23123ad7f797a84a364c6fb3563f18904", size = 45678, upload-time = "2026-05-17T17:29:47.654Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/8f/cb/769cfc37177252872a45a71f3fbdde9d51b471a3f3c14bfe95dde3407386/python_multipart-0.0.29-py3-none-any.whl", hash = "sha256:2ddcc971cef266225f54f552d8fa10bcfbb1f14446caec199060daac59ff2d69", size = 29640, upload-time = "2026-05-17T17:29:45.69Z" }, +] + +[[package]] +name = "pywin32" +version = "311" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a5/be/3fd5de0979fcb3994bfee0d65ed8ca9506a8a1260651b86174f6a86f52b3/pywin32-311-cp313-cp313-win32.whl", hash = "sha256:f95ba5a847cba10dd8c4d8fefa9f2a6cf283b8b88ed6178fa8a6c1ab16054d0d", size = 8705700, upload-time = "2025-07-14T20:13:26.471Z" }, + { url = "https://files.pythonhosted.org/packages/e3/28/e0a1909523c6890208295a29e05c2adb2126364e289826c0a8bc7297bd5c/pywin32-311-cp313-cp313-win_amd64.whl", hash = "sha256:718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d", size = 9494700, upload-time = "2025-07-14T20:13:28.243Z" }, + { url = "https://files.pythonhosted.org/packages/04/bf/90339ac0f55726dce7d794e6d79a18a91265bdf3aa70b6b9ca52f35e022a/pywin32-311-cp313-cp313-win_arm64.whl", hash = "sha256:7b4075d959648406202d92a2310cb990fea19b535c7f4a78d3f5e10b926eeb8a", size = 8709318, upload-time = "2025-07-14T20:13:30.348Z" }, + { url = "https://files.pythonhosted.org/packages/c9/31/097f2e132c4f16d99a22bfb777e0fd88bd8e1c634304e102f313af69ace5/pywin32-311-cp314-cp314-win32.whl", hash = "sha256:b7a2c10b93f8986666d0c803ee19b5990885872a7de910fc460f9b0c2fbf92ee", size = 8840714, upload-time = "2025-07-14T20:13:32.449Z" }, + { url = "https://files.pythonhosted.org/packages/90/4b/07c77d8ba0e01349358082713400435347df8426208171ce297da32c313d/pywin32-311-cp314-cp314-win_amd64.whl", hash = "sha256:3aca44c046bd2ed8c90de9cb8427f581c479e594e99b5c0bb19b29c10fd6cb87", size = 9656800, upload-time = "2025-07-14T20:13:34.312Z" }, + { url = "https://files.pythonhosted.org/packages/c0/d2/21af5c535501a7233e734b8af901574572da66fcc254cb35d0609c9080dd/pywin32-311-cp314-cp314-win_arm64.whl", hash = "sha256:a508e2d9025764a8270f93111a970e1d0fbfc33f4153b388bb649b7eec4f9b42", size = 8932540, upload-time = "2025-07-14T20:13:36.379Z" }, +] + +[[package]] +name = "pywinpty" +version = "3.0.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/f7/54/37c7370ba91f579235049dc26cd2c5e657d2a943e01820844ffc81f32176/pywinpty-3.0.3.tar.gz", hash = "sha256:523441dc34d231fb361b4b00f8c99d3f16de02f5005fd544a0183112bcc22412", size = 31309, upload-time = "2026-02-04T21:51:09.524Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e5/cb/58d6ed3fd429c96a90ef01ac9a617af10a6d41469219c25e7dc162abbb71/pywinpty-3.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:9c91dbb026050c77bdcef964e63a4f10f01a639113c4d3658332614544c467ab", size = 2112686, upload-time = "2026-02-04T21:52:03.035Z" }, + { url = "https://files.pythonhosted.org/packages/fd/50/724ed5c38c504d4e58a88a072776a1e880d970789deaeb2b9f7bd9a5141a/pywinpty-3.0.3-cp313-cp313-win_arm64.whl", hash = "sha256:fe1f7911805127c94cf51f89ab14096c6f91ffdcacf993d2da6082b2142a2523", size = 234591, upload-time = "2026-02-04T21:52:29.821Z" }, + { url = "https://files.pythonhosted.org/packages/f7/ad/90a110538696b12b39fd8758a06d70ded899308198ad2305ac68e361126e/pywinpty-3.0.3-cp313-cp313t-win_amd64.whl", hash = "sha256:3f07a6cf1c1d470d284e614733c3d0f726d2c85e78508ea10a403140c3c0c18a", size = 2112360, upload-time = "2026-02-04T21:55:33.397Z" }, + { url = "https://files.pythonhosted.org/packages/44/0f/7ffa221757a220402bc79fda44044c3f2cc57338d878ab7d622add6f4581/pywinpty-3.0.3-cp313-cp313t-win_arm64.whl", hash = "sha256:15c7c0b6f8e9d87aabbaff76468dabf6e6121332c40fc1d83548d02a9d6a3759", size = 233107, upload-time = "2026-02-04T21:51:45.455Z" }, + { url = "https://files.pythonhosted.org/packages/28/88/2ff917caff61e55f38bcdb27de06ee30597881b2cae44fbba7627be015c4/pywinpty-3.0.3-cp314-cp314-win_amd64.whl", hash = "sha256:d4b6b7b0fe0cdcd02e956bd57cfe9f4e5a06514eecf3b5ae174da4f951b58be9", size = 2113282, upload-time = "2026-02-04T21:52:08.188Z" }, + { url = "https://files.pythonhosted.org/packages/63/32/40a775343ace542cc43ece3f1d1fce454021521ecac41c4c4573081c2336/pywinpty-3.0.3-cp314-cp314-win_arm64.whl", hash = "sha256:34789d685fc0d547ce0c8a65e5a70e56f77d732fa6e03c8f74fefb8cbb252019", size = 234207, upload-time = "2026-02-04T21:51:58.687Z" }, + { url = "https://files.pythonhosted.org/packages/8d/54/5d5e52f4cb75028104ca6faf36c10f9692389b1986d34471663b4ebebd6d/pywinpty-3.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:0c37e224a47a971d1a6e08649a1714dac4f63c11920780977829ed5c8cadead1", size = 2112910, upload-time = "2026-02-04T21:52:30.976Z" }, + { url = "https://files.pythonhosted.org/packages/0a/44/dcd184824e21d4620b06c7db9fbb15c3ad0a0f1fa2e6de79969fb82647ec/pywinpty-3.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:c4e9c3dff7d86ba81937438d5819f19f385a39d8f592d4e8af67148ceb4f6ab5", size = 233425, upload-time = "2026-02-04T21:51:56.754Z" }, +] + +[[package]] +name = "pyyaml" +version = "6.0.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/05/8e/961c0007c59b8dd7729d542c61a4d537767a59645b82a0b521206e1e25c2/pyyaml-6.0.3.tar.gz", hash = "sha256:d76623373421df22fb4cf8817020cbb7ef15c725b9d5e45f17e189bfc384190f", size = 130960, upload-time = "2025-09-25T21:33:16.546Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d1/11/0fd08f8192109f7169db964b5707a2f1e8b745d4e239b784a5a1dd80d1db/pyyaml-6.0.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:8da9669d359f02c0b91ccc01cac4a67f16afec0dac22c2ad09f46bee0697eba8", size = 181669, upload-time = "2025-09-25T21:32:23.673Z" }, + { url = "https://files.pythonhosted.org/packages/b1/16/95309993f1d3748cd644e02e38b75d50cbc0d9561d21f390a76242ce073f/pyyaml-6.0.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:2283a07e2c21a2aa78d9c4442724ec1eb15f5e42a723b99cb3d822d48f5f7ad1", size = 173252, upload-time = "2025-09-25T21:32:25.149Z" }, + { url = "https://files.pythonhosted.org/packages/50/31/b20f376d3f810b9b2371e72ef5adb33879b25edb7a6d072cb7ca0c486398/pyyaml-6.0.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ee2922902c45ae8ccada2c5b501ab86c36525b883eff4255313a253a3160861c", size = 767081, upload-time = "2025-09-25T21:32:26.575Z" }, + { url = "https://files.pythonhosted.org/packages/49/1e/a55ca81e949270d5d4432fbbd19dfea5321eda7c41a849d443dc92fd1ff7/pyyaml-6.0.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a33284e20b78bd4a18c8c2282d549d10bc8408a2a7ff57653c0cf0b9be0afce5", size = 841159, upload-time = "2025-09-25T21:32:27.727Z" }, + { url = "https://files.pythonhosted.org/packages/74/27/e5b8f34d02d9995b80abcef563ea1f8b56d20134d8f4e5e81733b1feceb2/pyyaml-6.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0f29edc409a6392443abf94b9cf89ce99889a1dd5376d94316ae5145dfedd5d6", size = 801626, upload-time = "2025-09-25T21:32:28.878Z" }, + { url = "https://files.pythonhosted.org/packages/f9/11/ba845c23988798f40e52ba45f34849aa8a1f2d4af4b798588010792ebad6/pyyaml-6.0.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f7057c9a337546edc7973c0d3ba84ddcdf0daa14533c2065749c9075001090e6", size = 753613, upload-time = "2025-09-25T21:32:30.178Z" }, + { url = "https://files.pythonhosted.org/packages/3d/e0/7966e1a7bfc0a45bf0a7fb6b98ea03fc9b8d84fa7f2229e9659680b69ee3/pyyaml-6.0.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:eda16858a3cab07b80edaf74336ece1f986ba330fdb8ee0d6c0d68fe82bc96be", size = 794115, upload-time = "2025-09-25T21:32:31.353Z" }, + { url = "https://files.pythonhosted.org/packages/de/94/980b50a6531b3019e45ddeada0626d45fa85cbe22300844a7983285bed3b/pyyaml-6.0.3-cp313-cp313-win32.whl", hash = "sha256:d0eae10f8159e8fdad514efdc92d74fd8d682c933a6dd088030f3834bc8e6b26", size = 137427, upload-time = "2025-09-25T21:32:32.58Z" }, + { url = "https://files.pythonhosted.org/packages/97/c9/39d5b874e8b28845e4ec2202b5da735d0199dbe5b8fb85f91398814a9a46/pyyaml-6.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c", size = 154090, upload-time = "2025-09-25T21:32:33.659Z" }, + { url = "https://files.pythonhosted.org/packages/73/e8/2bdf3ca2090f68bb3d75b44da7bbc71843b19c9f2b9cb9b0f4ab7a5a4329/pyyaml-6.0.3-cp313-cp313-win_arm64.whl", hash = "sha256:5498cd1645aa724a7c71c8f378eb29ebe23da2fc0d7a08071d89469bf1d2defb", size = 140246, upload-time = "2025-09-25T21:32:34.663Z" }, + { url = "https://files.pythonhosted.org/packages/9d/8c/f4bd7f6465179953d3ac9bc44ac1a8a3e6122cf8ada906b4f96c60172d43/pyyaml-6.0.3-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:8d1fab6bb153a416f9aeb4b8763bc0f22a5586065f86f7664fc23339fc1c1fac", size = 181814, upload-time = "2025-09-25T21:32:35.712Z" }, + { url = "https://files.pythonhosted.org/packages/bd/9c/4d95bb87eb2063d20db7b60faa3840c1b18025517ae857371c4dd55a6b3a/pyyaml-6.0.3-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:34d5fcd24b8445fadc33f9cf348c1047101756fd760b4dacb5c3e99755703310", size = 173809, upload-time = "2025-09-25T21:32:36.789Z" }, + { url = "https://files.pythonhosted.org/packages/92/b5/47e807c2623074914e29dabd16cbbdd4bf5e9b2db9f8090fa64411fc5382/pyyaml-6.0.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:501a031947e3a9025ed4405a168e6ef5ae3126c59f90ce0cd6f2bfc477be31b7", size = 766454, upload-time = "2025-09-25T21:32:37.966Z" }, + { url = "https://files.pythonhosted.org/packages/02/9e/e5e9b168be58564121efb3de6859c452fccde0ab093d8438905899a3a483/pyyaml-6.0.3-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:b3bc83488de33889877a0f2543ade9f70c67d66d9ebb4ac959502e12de895788", size = 836355, upload-time = "2025-09-25T21:32:39.178Z" }, + { url = "https://files.pythonhosted.org/packages/88/f9/16491d7ed2a919954993e48aa941b200f38040928474c9e85ea9e64222c3/pyyaml-6.0.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c458b6d084f9b935061bc36216e8a69a7e293a2f1e68bf956dcd9e6cbcd143f5", size = 794175, upload-time = "2025-09-25T21:32:40.865Z" }, + { url = "https://files.pythonhosted.org/packages/dd/3f/5989debef34dc6397317802b527dbbafb2b4760878a53d4166579111411e/pyyaml-6.0.3-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:7c6610def4f163542a622a73fb39f534f8c101d690126992300bf3207eab9764", size = 755228, upload-time = "2025-09-25T21:32:42.084Z" }, + { url = "https://files.pythonhosted.org/packages/d7/ce/af88a49043cd2e265be63d083fc75b27b6ed062f5f9fd6cdc223ad62f03e/pyyaml-6.0.3-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:5190d403f121660ce8d1d2c1bb2ef1bd05b5f68533fc5c2ea899bd15f4399b35", size = 789194, upload-time = "2025-09-25T21:32:43.362Z" }, + { url = "https://files.pythonhosted.org/packages/23/20/bb6982b26a40bb43951265ba29d4c246ef0ff59c9fdcdf0ed04e0687de4d/pyyaml-6.0.3-cp314-cp314-win_amd64.whl", hash = "sha256:4a2e8cebe2ff6ab7d1050ecd59c25d4c8bd7e6f400f5f82b96557ac0abafd0ac", size = 156429, upload-time = "2025-09-25T21:32:57.844Z" }, + { url = "https://files.pythonhosted.org/packages/f4/f4/a4541072bb9422c8a883ab55255f918fa378ecf083f5b85e87fc2b4eda1b/pyyaml-6.0.3-cp314-cp314-win_arm64.whl", hash = "sha256:93dda82c9c22deb0a405ea4dc5f2d0cda384168e466364dec6255b293923b2f3", size = 143912, upload-time = "2025-09-25T21:32:59.247Z" }, + { url = "https://files.pythonhosted.org/packages/7c/f9/07dd09ae774e4616edf6cda684ee78f97777bdd15847253637a6f052a62f/pyyaml-6.0.3-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:02893d100e99e03eda1c8fd5c441d8c60103fd175728e23e431db1b589cf5ab3", size = 189108, upload-time = "2025-09-25T21:32:44.377Z" }, + { url = "https://files.pythonhosted.org/packages/4e/78/8d08c9fb7ce09ad8c38ad533c1191cf27f7ae1effe5bb9400a46d9437fcf/pyyaml-6.0.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:c1ff362665ae507275af2853520967820d9124984e0f7466736aea23d8611fba", size = 183641, upload-time = "2025-09-25T21:32:45.407Z" }, + { url = "https://files.pythonhosted.org/packages/7b/5b/3babb19104a46945cf816d047db2788bcaf8c94527a805610b0289a01c6b/pyyaml-6.0.3-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6adc77889b628398debc7b65c073bcb99c4a0237b248cacaf3fe8a557563ef6c", size = 831901, upload-time = "2025-09-25T21:32:48.83Z" }, + { url = "https://files.pythonhosted.org/packages/8b/cc/dff0684d8dc44da4d22a13f35f073d558c268780ce3c6ba1b87055bb0b87/pyyaml-6.0.3-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a80cb027f6b349846a3bf6d73b5e95e782175e52f22108cfa17876aaeff93702", size = 861132, upload-time = "2025-09-25T21:32:50.149Z" }, + { url = "https://files.pythonhosted.org/packages/b1/5e/f77dc6b9036943e285ba76b49e118d9ea929885becb0a29ba8a7c75e29fe/pyyaml-6.0.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:00c4bdeba853cc34e7dd471f16b4114f4162dc03e6b7afcc2128711f0eca823c", size = 839261, upload-time = "2025-09-25T21:32:51.808Z" }, + { url = "https://files.pythonhosted.org/packages/ce/88/a9db1376aa2a228197c58b37302f284b5617f56a5d959fd1763fb1675ce6/pyyaml-6.0.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:66e1674c3ef6f541c35191caae2d429b967b99e02040f5ba928632d9a7f0f065", size = 805272, upload-time = "2025-09-25T21:32:52.941Z" }, + { url = "https://files.pythonhosted.org/packages/da/92/1446574745d74df0c92e6aa4a7b0b3130706a4142b2d1a5869f2eaa423c6/pyyaml-6.0.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:16249ee61e95f858e83976573de0f5b2893b3677ba71c9dd36b9cf8be9ac6d65", size = 829923, upload-time = "2025-09-25T21:32:54.537Z" }, + { url = "https://files.pythonhosted.org/packages/f0/7a/1c7270340330e575b92f397352af856a8c06f230aa3e76f86b39d01b416a/pyyaml-6.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:4ad1906908f2f5ae4e5a8ddfce73c320c2a1429ec52eafd27138b7f1cbe341c9", size = 174062, upload-time = "2025-09-25T21:32:55.767Z" }, + { url = "https://files.pythonhosted.org/packages/f1/12/de94a39c2ef588c7e6455cfbe7343d3b2dc9d6b6b2f40c4c6565744c873d/pyyaml-6.0.3-cp314-cp314t-win_arm64.whl", hash = "sha256:ebc55a14a21cb14062aa4162f906cd962b28e2e9ea38f9b4391244cd8de4ae0b", size = 149341, upload-time = "2025-09-25T21:32:56.828Z" }, +] + +[[package]] +name = "pyzmq" +version = "27.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cffi", marker = "implementation_name == 'pypy'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/04/0b/3c9baedbdf613ecaa7aa07027780b8867f57b6293b6ee50de316c9f3222b/pyzmq-27.1.0.tar.gz", hash = "sha256:ac0765e3d44455adb6ddbf4417dcce460fc40a05978c08efdf2948072f6db540", size = 281750, upload-time = "2025-09-08T23:10:18.157Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/92/e7/038aab64a946d535901103da16b953c8c9cc9c961dadcbf3609ed6428d23/pyzmq-27.1.0-cp312-abi3-macosx_10_15_universal2.whl", hash = "sha256:452631b640340c928fa343801b0d07eb0c3789a5ffa843f6e1a9cee0ba4eb4fc", size = 1306279, upload-time = "2025-09-08T23:08:03.807Z" }, + { url = "https://files.pythonhosted.org/packages/e8/5e/c3c49fdd0f535ef45eefcc16934648e9e59dace4a37ee88fc53f6cd8e641/pyzmq-27.1.0-cp312-abi3-manylinux2014_i686.manylinux_2_17_i686.whl", hash = "sha256:1c179799b118e554b66da67d88ed66cd37a169f1f23b5d9f0a231b4e8d44a113", size = 895645, upload-time = "2025-09-08T23:08:05.301Z" }, + { url = "https://files.pythonhosted.org/packages/f8/e5/b0b2504cb4e903a74dcf1ebae157f9e20ebb6ea76095f6cfffea28c42ecd/pyzmq-27.1.0-cp312-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3837439b7f99e60312f0c926a6ad437b067356dc2bc2ec96eb395fd0fe804233", size = 652574, upload-time = "2025-09-08T23:08:06.828Z" }, + { url = "https://files.pythonhosted.org/packages/f8/9b/c108cdb55560eaf253f0cbdb61b29971e9fb34d9c3499b0e96e4e60ed8a5/pyzmq-27.1.0-cp312-abi3-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:43ad9a73e3da1fab5b0e7e13402f0b2fb934ae1c876c51d0afff0e7c052eca31", size = 840995, upload-time = "2025-09-08T23:08:08.396Z" }, + { url = "https://files.pythonhosted.org/packages/c2/bb/b79798ca177b9eb0825b4c9998c6af8cd2a7f15a6a1a4272c1d1a21d382f/pyzmq-27.1.0-cp312-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:0de3028d69d4cdc475bfe47a6128eb38d8bc0e8f4d69646adfbcd840facbac28", size = 1642070, upload-time = "2025-09-08T23:08:09.989Z" }, + { url = "https://files.pythonhosted.org/packages/9c/80/2df2e7977c4ede24c79ae39dcef3899bfc5f34d1ca7a5b24f182c9b7a9ca/pyzmq-27.1.0-cp312-abi3-musllinux_1_2_i686.whl", hash = "sha256:cf44a7763aea9298c0aa7dbf859f87ed7012de8bda0f3977b6fb1d96745df856", size = 2021121, upload-time = "2025-09-08T23:08:11.907Z" }, + { url = "https://files.pythonhosted.org/packages/46/bd/2d45ad24f5f5ae7e8d01525eb76786fa7557136555cac7d929880519e33a/pyzmq-27.1.0-cp312-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:f30f395a9e6fbca195400ce833c731e7b64c3919aa481af4d88c3759e0cb7496", size = 1878550, upload-time = "2025-09-08T23:08:13.513Z" }, + { url = "https://files.pythonhosted.org/packages/e6/2f/104c0a3c778d7c2ab8190e9db4f62f0b6957b53c9d87db77c284b69f33ea/pyzmq-27.1.0-cp312-abi3-win32.whl", hash = "sha256:250e5436a4ba13885494412b3da5d518cd0d3a278a1ae640e113c073a5f88edd", size = 559184, upload-time = "2025-09-08T23:08:15.163Z" }, + { url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl", hash = "sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf", size = 619480, upload-time = "2025-09-08T23:08:17.192Z" }, + { url = "https://files.pythonhosted.org/packages/78/c2/c012beae5f76b72f007a9e91ee9401cb88c51d0f83c6257a03e785c81cc2/pyzmq-27.1.0-cp312-abi3-win_arm64.whl", hash = "sha256:75a2f36223f0d535a0c919e23615fc85a1e23b71f40c7eb43d7b1dedb4d8f15f", size = 552993, upload-time = "2025-09-08T23:08:18.926Z" }, + { url = "https://files.pythonhosted.org/packages/60/cb/84a13459c51da6cec1b7b1dc1a47e6db6da50b77ad7fd9c145842750a011/pyzmq-27.1.0-cp313-cp313-android_24_arm64_v8a.whl", hash = "sha256:93ad4b0855a664229559e45c8d23797ceac03183c7b6f5b4428152a6b06684a5", size = 1122436, upload-time = "2025-09-08T23:08:20.801Z" }, + { url = "https://files.pythonhosted.org/packages/dc/b6/94414759a69a26c3dd674570a81813c46a078767d931a6c70ad29fc585cb/pyzmq-27.1.0-cp313-cp313-android_24_x86_64.whl", hash = "sha256:fbb4f2400bfda24f12f009cba62ad5734148569ff4949b1b6ec3b519444342e6", size = 1156301, upload-time = "2025-09-08T23:08:22.47Z" }, + { url = "https://files.pythonhosted.org/packages/a5/ad/15906493fd40c316377fd8a8f6b1f93104f97a752667763c9b9c1b71d42d/pyzmq-27.1.0-cp313-cp313t-macosx_10_15_universal2.whl", hash = "sha256:e343d067f7b151cfe4eb3bb796a7752c9d369eed007b91231e817071d2c2fec7", size = 1341197, upload-time = "2025-09-08T23:08:24.286Z" }, + { url = "https://files.pythonhosted.org/packages/14/1d/d343f3ce13db53a54cb8946594e567410b2125394dafcc0268d8dda027e0/pyzmq-27.1.0-cp313-cp313t-manylinux2014_i686.manylinux_2_17_i686.whl", hash = "sha256:08363b2011dec81c354d694bdecaef4770e0ae96b9afea70b3f47b973655cc05", size = 897275, upload-time = "2025-09-08T23:08:26.063Z" }, + { url = "https://files.pythonhosted.org/packages/69/2d/d83dd6d7ca929a2fc67d2c3005415cdf322af7751d773524809f9e585129/pyzmq-27.1.0-cp313-cp313t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d54530c8c8b5b8ddb3318f481297441af102517602b569146185fa10b63f4fa9", size = 660469, upload-time = "2025-09-08T23:08:27.623Z" }, + { url = "https://files.pythonhosted.org/packages/3e/cd/9822a7af117f4bc0f1952dbe9ef8358eb50a24928efd5edf54210b850259/pyzmq-27.1.0-cp313-cp313t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6f3afa12c392f0a44a2414056d730eebc33ec0926aae92b5ad5cf26ebb6cc128", size = 847961, upload-time = "2025-09-08T23:08:29.672Z" }, + { url = "https://files.pythonhosted.org/packages/9a/12/f003e824a19ed73be15542f172fd0ec4ad0b60cf37436652c93b9df7c585/pyzmq-27.1.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:c65047adafe573ff023b3187bb93faa583151627bc9c51fc4fb2c561ed689d39", size = 1650282, upload-time = "2025-09-08T23:08:31.349Z" }, + { url = "https://files.pythonhosted.org/packages/d5/4a/e82d788ed58e9a23995cee70dbc20c9aded3d13a92d30d57ec2291f1e8a3/pyzmq-27.1.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:90e6e9441c946a8b0a667356f7078d96411391a3b8f80980315455574177ec97", size = 2024468, upload-time = "2025-09-08T23:08:33.543Z" }, + { url = "https://files.pythonhosted.org/packages/d9/94/2da0a60841f757481e402b34bf4c8bf57fa54a5466b965de791b1e6f747d/pyzmq-27.1.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:add071b2d25f84e8189aaf0882d39a285b42fa3853016ebab234a5e78c7a43db", size = 1885394, upload-time = "2025-09-08T23:08:35.51Z" }, + { url = "https://files.pythonhosted.org/packages/4f/6f/55c10e2e49ad52d080dc24e37adb215e5b0d64990b57598abc2e3f01725b/pyzmq-27.1.0-cp313-cp313t-win32.whl", hash = "sha256:7ccc0700cfdf7bd487bea8d850ec38f204478681ea02a582a8da8171b7f90a1c", size = 574964, upload-time = "2025-09-08T23:08:37.178Z" }, + { url = "https://files.pythonhosted.org/packages/87/4d/2534970ba63dd7c522d8ca80fb92777f362c0f321900667c615e2067cb29/pyzmq-27.1.0-cp313-cp313t-win_amd64.whl", hash = "sha256:8085a9fba668216b9b4323be338ee5437a235fe275b9d1610e422ccc279733e2", size = 641029, upload-time = "2025-09-08T23:08:40.595Z" }, + { url = "https://files.pythonhosted.org/packages/f6/fa/f8aea7a28b0641f31d40dea42d7ef003fded31e184ef47db696bc74cd610/pyzmq-27.1.0-cp313-cp313t-win_arm64.whl", hash = "sha256:6bb54ca21bcfe361e445256c15eedf083f153811c37be87e0514934d6913061e", size = 561541, upload-time = "2025-09-08T23:08:42.668Z" }, + { url = "https://files.pythonhosted.org/packages/87/45/19efbb3000956e82d0331bafca5d9ac19ea2857722fa2caacefb6042f39d/pyzmq-27.1.0-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:ce980af330231615756acd5154f29813d553ea555485ae712c491cd483df6b7a", size = 1341197, upload-time = "2025-09-08T23:08:44.973Z" }, + { url = "https://files.pythonhosted.org/packages/48/43/d72ccdbf0d73d1343936296665826350cb1e825f92f2db9db3e61c2162a2/pyzmq-27.1.0-cp314-cp314t-manylinux2014_i686.manylinux_2_17_i686.whl", hash = "sha256:1779be8c549e54a1c38f805e56d2a2e5c009d26de10921d7d51cfd1c8d4632ea", size = 897175, upload-time = "2025-09-08T23:08:46.601Z" }, + { url = "https://files.pythonhosted.org/packages/2f/2e/a483f73a10b65a9ef0161e817321d39a770b2acf8bcf3004a28d90d14a94/pyzmq-27.1.0-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:7200bb0f03345515df50d99d3db206a0a6bee1955fbb8c453c76f5bf0e08fb96", size = 660427, upload-time = "2025-09-08T23:08:48.187Z" }, + { url = "https://files.pythonhosted.org/packages/f5/d2/5f36552c2d3e5685abe60dfa56f91169f7a2d99bbaf67c5271022ab40863/pyzmq-27.1.0-cp314-cp314t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:01c0e07d558b06a60773744ea6251f769cd79a41a97d11b8bf4ab8f034b0424d", size = 847929, upload-time = "2025-09-08T23:08:49.76Z" }, + { url = "https://files.pythonhosted.org/packages/c4/2a/404b331f2b7bf3198e9945f75c4c521f0c6a3a23b51f7a4a401b94a13833/pyzmq-27.1.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:80d834abee71f65253c91540445d37c4c561e293ba6e741b992f20a105d69146", size = 1650193, upload-time = "2025-09-08T23:08:51.7Z" }, + { url = "https://files.pythonhosted.org/packages/1c/0b/f4107e33f62a5acf60e3ded67ed33d79b4ce18de432625ce2fc5093d6388/pyzmq-27.1.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:544b4e3b7198dde4a62b8ff6685e9802a9a1ebf47e77478a5eb88eca2a82f2fd", size = 2024388, upload-time = "2025-09-08T23:08:53.393Z" }, + { url = "https://files.pythonhosted.org/packages/0d/01/add31fe76512642fd6e40e3a3bd21f4b47e242c8ba33efb6809e37076d9b/pyzmq-27.1.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:cedc4c68178e59a4046f97eca31b148ddcf51e88677de1ef4e78cf06c5376c9a", size = 1885316, upload-time = "2025-09-08T23:08:55.702Z" }, + { url = "https://files.pythonhosted.org/packages/c4/59/a5f38970f9bf07cee96128de79590bb354917914a9be11272cfc7ff26af0/pyzmq-27.1.0-cp314-cp314t-win32.whl", hash = "sha256:1f0b2a577fd770aa6f053211a55d1c47901f4d537389a034c690291485e5fe92", size = 587472, upload-time = "2025-09-08T23:08:58.18Z" }, + { url = "https://files.pythonhosted.org/packages/70/d8/78b1bad170f93fcf5e3536e70e8fadac55030002275c9a29e8f5719185de/pyzmq-27.1.0-cp314-cp314t-win_amd64.whl", hash = "sha256:19c9468ae0437f8074af379e986c5d3d7d7bfe033506af442e8c879732bedbe0", size = 661401, upload-time = "2025-09-08T23:08:59.802Z" }, + { url = "https://files.pythonhosted.org/packages/81/d6/4bfbb40c9a0b42fc53c7cf442f6385db70b40f74a783130c5d0a5aa62228/pyzmq-27.1.0-cp314-cp314t-win_arm64.whl", hash = "sha256:dc5dbf68a7857b59473f7df42650c621d7e8923fb03fa74a526890f4d33cc4d7", size = 575170, upload-time = "2025-09-08T23:09:01.418Z" }, +] + +[[package]] +name = "referencing" +version = "0.37.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "attrs" }, + { name = "rpds-py" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/22/f5/df4e9027acead3ecc63e50fe1e36aca1523e1719559c499951bb4b53188f/referencing-0.37.0.tar.gz", hash = "sha256:44aefc3142c5b842538163acb373e24cce6632bd54bdb01b21ad5863489f50d8", size = 78036, upload-time = "2025-10-13T15:30:48.871Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2c/58/ca301544e1fa93ed4f80d724bf5b194f6e4b945841c5bfd555878eea9fcb/referencing-0.37.0-py3-none-any.whl", hash = "sha256:381329a9f99628c9069361716891d34ad94af76e461dcb0335825aecc7692231", size = 26766, upload-time = "2025-10-13T15:30:47.625Z" }, +] + +[[package]] +name = "regex" +version = "2026.5.9" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/dc/0e/49aee608ad09480e7fd276898c99ec6192985fa331abe4eb3a986094490b/regex-2026.5.9.tar.gz", hash = "sha256:a8234aa23ec39894bfe4a3f1b85616a7032481964a13ac6fc9f10de4f6fca270", size = 416074, upload-time = "2026-05-09T23:15:19.37Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/aa/da/797e91ecec6f84135da778ddce78c20e0af5d2a15c26f87a81bc3eadb6db/regex-2026.5.9-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:d626b84406444b165fc0ba981604edea39f0588ff1f92baa23fe50799ea9afdb", size = 490303, upload-time = "2026-05-09T23:13:04.382Z" }, + { url = "https://files.pythonhosted.org/packages/44/da/bf30abaaa737b58f4a4b8c4a03659e02fd92092c822e0197ed9e0daab917/regex-2026.5.9-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:d7bdc0ab8f3dd7e1b4f9ab88634e13374669db86bb3c72e8292f07ae313f539f", size = 292019, upload-time = "2026-05-09T23:13:06.022Z" }, + { url = "https://files.pythonhosted.org/packages/2d/e7/d0eaf5713828417b9e5648cf81fa9bacd4961f6ab98c380c2034f8716e35/regex-2026.5.9-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a8820737949116ffff55fe18f9fc644530063ba6ebfcb8314239416e78f1347c", size = 289468, upload-time = "2026-05-09T23:13:08.214Z" }, + { url = "https://files.pythonhosted.org/packages/d3/9b/b3fdd62b003baa1a9b593cd8c8699c9651c2e80cc21a5c715707983c42d7/regex-2026.5.9-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:aa0fbdbac82cb3e4450d0ccde7d7a35607f4cb2dd9fba4b8b69bfaf8c9fa6aed", size = 796749, upload-time = "2026-05-09T23:13:10.573Z" }, + { url = "https://files.pythonhosted.org/packages/d4/30/66ab84588765f5b4b271a9ca09ef7ce2b87caa95176ec3d2ad65d7bc4902/regex-2026.5.9-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:57e8915c7986aa33d25e4d3629cef711cd2863f2961b10409f0c04cb8b7d9020", size = 865445, upload-time = "2026-05-09T23:13:12.523Z" }, + { url = "https://files.pythonhosted.org/packages/1a/89/f05169e8588aac365f35ffc7f3bc3184f095ef4cfded7cfaa3c7fd5dbd89/regex-2026.5.9-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:508f56a89ba9cb26e4168cbc37dbd60a28d82430a9e18ad1d25fe0883c314ca2", size = 912322, upload-time = "2026-05-09T23:13:14.281Z" }, + { url = "https://files.pythonhosted.org/packages/30/e1/c93444052cf41581f3c884ab3fb5823daf0992f11cd4388d4275ca610558/regex-2026.5.9-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b6d189041f15691cfa2b6c4290448ec221244d225b3f5fe9e7771b34ffcdf6e2", size = 801269, upload-time = "2026-05-09T23:13:16.569Z" }, + { url = "https://files.pythonhosted.org/packages/50/fe/0cf96b882f540e62e8b9956599798203d599c44cf4c77917ca27400ff69b/regex-2026.5.9-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:e82db382b44d0111b22601c509c89f64434816c9e0eef9d1989cda8cc6ff1c04", size = 777085, upload-time = "2026-05-09T23:13:18.675Z" }, + { url = "https://files.pythonhosted.org/packages/23/5c/d78d4924e7fc875557b9e9b768423925fdfaac5549d06da7810019a9bd26/regex-2026.5.9-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:2acfb48634f64996b57f90f39afa692ff362162722581921fe92239a59960f3c", size = 785153, upload-time = "2026-05-09T23:13:20.525Z" }, + { url = "https://files.pythonhosted.org/packages/bf/e0/5214774090e7b4524dcea3e3c4aa74141d43043f8beb49c1599db1c8b53a/regex-2026.5.9-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:d29eebfc9525db68cad3c97eedd7f754fa265aa5cd0cf4f863b2421e1b48fc9f", size = 860164, upload-time = "2026-05-09T23:13:22.263Z" }, + { url = "https://files.pythonhosted.org/packages/6e/e1/4a57a83350319b1271f0d7a249b8672513ed928b237a741631270de6caea/regex-2026.5.9-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:debb893095e944091c16e641a6e33c1b0f4cb61ab945ec5afbf53ce7068834d8", size = 765731, upload-time = "2026-05-09T23:13:24.277Z" }, + { url = "https://files.pythonhosted.org/packages/12/f4/499e74a20c156fc75836ee04a72a38d1a063978f600937f9760467beb1b0/regex-2026.5.9-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:d659eee77986549c9ea45b861c7567e44d6287c3dc9a4565478853f7b9fe2ff6", size = 852062, upload-time = "2026-05-09T23:13:26.125Z" }, + { url = "https://files.pythonhosted.org/packages/5b/92/7eebc0d0a01e78629695f342ba17e0deaff8fb45e79cc0d7b98287da6e3e/regex-2026.5.9-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:2efa205e6d98b24d1f3ab395c11aa15cdf10935bca283d0285e0499c284fba21", size = 789577, upload-time = "2026-05-09T23:13:27.814Z" }, + { url = "https://files.pythonhosted.org/packages/05/a4/018e71f7d2ad48c1ebe6d3ae0026f9b7cb4802fd15c7cc02fdf724355102/regex-2026.5.9-cp313-cp313-win32.whl", hash = "sha256:f3844f134e834076677dd369976e9f5068679fcb8e50102fdf6b7ac96a3ec127", size = 266691, upload-time = "2026-05-09T23:13:29.549Z" }, + { url = "https://files.pythonhosted.org/packages/e6/1d/861a93719fb9ee7dbfc3761b3797b7a3e112a5d42c6129459d2d741be9b5/regex-2026.5.9-cp313-cp313-win_amd64.whl", hash = "sha256:3527bb4942d2c14552155406cdedd906567456821848aed1cb4933a391bf5eca", size = 277747, upload-time = "2026-05-09T23:13:31.859Z" }, + { url = "https://files.pythonhosted.org/packages/d9/c6/0a2436ae4da1ba76e51cb98943c6838a9a721faa40ebe2dce07694ae34e3/regex-2026.5.9-cp313-cp313-win_arm64.whl", hash = "sha256:56a33f191f17d8c417f99945ebdc1e691d3af9605d86ec68c7e54a57e3e17af6", size = 270500, upload-time = "2026-05-09T23:13:33.525Z" }, + { url = "https://files.pythonhosted.org/packages/e8/e9/d21346f7b60ed58789371358ed66b09d00f832e1bd7c06e55d9da5679882/regex-2026.5.9-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:01f28d868834624c934b8d2e0aa1c8341337e37831f4a012f18a5afcba4cbaf3", size = 494172, upload-time = "2026-05-09T23:13:35.935Z" }, + { url = "https://files.pythonhosted.org/packages/c4/43/fd1177a2032037c681baecdb3422ee4e1424aec4e4f470ef47793d325274/regex-2026.5.9-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:48036f6374aaa79eb3b754ec29c61d1c6b1606749d705a13f8854fa2539671f6", size = 293952, upload-time = "2026-05-09T23:13:38.307Z" }, + { url = "https://files.pythonhosted.org/packages/f2/7d/9fbf919768368d3f8a4f6c692cf2aa61e482b2b81ec6a298ace4cbf02480/regex-2026.5.9-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:b96350aa424e79d4fd6b567b344dcbe2b2d6bfc48dfe7717587e1fa6d43da6ff", size = 292314, upload-time = "2026-05-09T23:13:40.353Z" }, + { url = "https://files.pythonhosted.org/packages/e2/6c/e41bfeecb589716843e7c4df09ba46ff2a42961457afece19059d85caeef/regex-2026.5.9-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8f3af7a4903c5c04a11a196a5aa75cdd7dd3f8508132f9fb3259d9f5908e3b88", size = 811681, upload-time = "2026-05-09T23:13:42.543Z" }, + { url = "https://files.pythonhosted.org/packages/87/83/a5c1c525fba0aa656e88ad0face0b1829788ef4c2fb6b26df58aa1151b84/regex-2026.5.9-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:7e87577720152d2caae19fe2baaf1f8d5ca12091e9e229f03915c37d1e4b9178", size = 871135, upload-time = "2026-05-09T23:13:44.326Z" }, + { url = "https://files.pythonhosted.org/packages/18/d4/80882e799e440dd878b0979cbebf8fa4d54624a332c83037c7a701649e3f/regex-2026.5.9-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:c8b9b9d294cfea3cd19c718ade7cc93492b2c4991abd9a68d0b3477ae6d8e100", size = 917265, upload-time = "2026-05-09T23:13:47.295Z" }, + { url = "https://files.pythonhosted.org/packages/ae/ff/8db60211e2286e396aad7dc7725356c502bff0901ea05bd6cdc2e1a042b9/regex-2026.5.9-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:728d8bfd28a8845c8b6bc5dc7ce010453d206396786c0765c2740cb65f37791e", size = 816311, upload-time = "2026-05-09T23:13:49.885Z" }, + { url = "https://files.pythonhosted.org/packages/4c/47/742ef579c61730f8d268e5cf1f9ce0e37e2ea041ad0f5644724f2378e463/regex-2026.5.9-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:7e30b874d341fac767d7df5a0870540541c2c054b80cfaac116e8d367a8a7ff2", size = 785498, upload-time = "2026-05-09T23:13:52.25Z" }, + { url = "https://files.pythonhosted.org/packages/7f/ab/cb0999802dcb0fb95b1ab005e8d4163d8afdd67efc2cb6b6630ac13f8cb1/regex-2026.5.9-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:fd190e88a895a8901325fad284a3f74ea52b1da8525b76cc811fa9b1edf0ce2b", size = 801348, upload-time = "2026-05-09T23:13:54.127Z" }, + { url = "https://files.pythonhosted.org/packages/7d/62/8ca59a24c55bc34d166eefaf3717bd77772f329fdbf984d86581e0a3571c/regex-2026.5.9-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:8e76e8161ad00694cfce6767d5dea860c6391ac5b83e5c3a39661e696f11fc7e", size = 866493, upload-time = "2026-05-09T23:13:56.067Z" }, + { url = "https://files.pythonhosted.org/packages/8d/3d/30f2ae62cef3278bb5bb821f467277a55fb73f01032cf85997e15e8289a8/regex-2026.5.9-cp313-cp313t-musllinux_1_2_riscv64.whl", hash = "sha256:ddda5340e6c01a293027dd46232fa79eaff1b48058ce7a98f572b6445b088041", size = 772811, upload-time = "2026-05-09T23:13:57.867Z" }, + { url = "https://files.pythonhosted.org/packages/d8/ae/7d2089bcd78ad0c0161bc684339df50032acb438a7bd3305e7ddb1193cec/regex-2026.5.9-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:205109e96b3cf5adf8f4cd62bedde9487feb282b9497a3535451e5a24cd706a0", size = 856584, upload-time = "2026-05-09T23:13:59.679Z" }, + { url = "https://files.pythonhosted.org/packages/a9/29/92ff47f75990131ea4f24ba17819e5a9d141e10819807e09addd73409af6/regex-2026.5.9-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:dfbe4579b9f08036aa7d101d1835437a20783574ac66327e6b29b4018a138081", size = 803453, upload-time = "2026-05-09T23:14:01.978Z" }, + { url = "https://files.pythonhosted.org/packages/04/99/eff29f1037dcab36702c9ee5d6858cf1ce2336ea8ea2987f64245b99ea5e/regex-2026.5.9-cp313-cp313t-win32.whl", hash = "sha256:ed2c9e8068b614c574d8d30e543d617cf5379b0535d46f97ef00e904745a08b5", size = 269951, upload-time = "2026-05-09T23:14:03.661Z" }, + { url = "https://files.pythonhosted.org/packages/0e/9d/8870b8981d27b22cda77bb26a5ac7ebfa9c7d9e0dea195a834a82380e748/regex-2026.5.9-cp313-cp313t-win_amd64.whl", hash = "sha256:b46b0f094dc1d3b90356c85a0bd2c9bafc4a6a190b9d6f8ddd5a033b6e088ed4", size = 281240, upload-time = "2026-05-09T23:14:05.56Z" }, + { url = "https://files.pythonhosted.org/packages/72/b1/3379415e8f135c13ac551353397cc4fe97b4978f3cac73c5fcbcded548b8/regex-2026.5.9-cp313-cp313t-win_arm64.whl", hash = "sha256:872acc074bd29ffc9913ecdfedf6ea77502312ca44a4aa0d3779089c6069d8de", size = 272383, upload-time = "2026-05-09T23:14:07.843Z" }, + { url = "https://files.pythonhosted.org/packages/13/3e/9c3cd292d8808b3645a2ce517e200179b6d0e903f176300bd8b542e14de5/regex-2026.5.9-cp314-cp314-macosx_10_13_universal2.whl", hash = "sha256:1bd7587a2948b4085195d5a3374eaf4a425dc3e55784c038175355ecf3bbbf8a", size = 490376, upload-time = "2026-05-09T23:14:09.64Z" }, + { url = "https://files.pythonhosted.org/packages/60/70/d43ee8a2ca0a8b68d167f21658b85520ac0574617c7f320367c5047f7556/regex-2026.5.9-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:dea2e88e1cce4522496cce630e11e67b98b7076620bc4336c3f674bc21a375f4", size = 291964, upload-time = "2026-05-09T23:14:11.424Z" }, + { url = "https://files.pythonhosted.org/packages/21/91/9d50b433828d8e74196904e168a43abf1e6e88b2a15d47ed742456720c37/regex-2026.5.9-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:2099f7e7ff7b6aa3192312650a56e91cc091e49d50b04e4f6f8b6e28b3b27f1c", size = 289682, upload-time = "2026-05-09T23:14:13.123Z" }, + { url = "https://files.pythonhosted.org/packages/3e/d2/b835e3cafbb9d977736912436259ff551d60919f7d7b3d37d46659c63564/regex-2026.5.9-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ecd353045824e4477562a2ac718c25799cdaaa41f7aa925a806a8a3e6848a5b9", size = 796996, upload-time = "2026-05-09T23:14:14.923Z" }, + { url = "https://files.pythonhosted.org/packages/2c/a6/9f992d00019166b9de01c546dd4549bc679f2a68df11b877740b0760b7c2/regex-2026.5.9-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:65c8c8c37377794bd5b2f3ebe51919042bf17aec802e23c833d89782ed0c78af", size = 866089, upload-time = "2026-05-09T23:14:17.757Z" }, + { url = "https://files.pythonhosted.org/packages/e0/08/4d32af657e049b19cb62b02e46e38fe1518797bfb2203ee93a510b21b0dc/regex-2026.5.9-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:5b73ab8afcf66c622db143d1c6fda4e58e4d537ee4f125229ad47b1ab80f34c0", size = 911530, upload-time = "2026-05-09T23:14:20.353Z" }, + { url = "https://files.pythonhosted.org/packages/d9/27/2af43dd1dc201d1fecefda64a45f4ad0995855b92724f795a777b402ee69/regex-2026.5.9-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0de5cf193997384ed2ca6f1cd4f78055b255d93d82d5a8cd6ba0d11c10b167e4", size = 800643, upload-time = "2026-05-09T23:14:22.265Z" }, + { url = "https://files.pythonhosted.org/packages/a4/dd/23a249047013b5321d4a60c4d2437462086f601b061776a525e5fba2a59f/regex-2026.5.9-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:d641a8c9a61618047796d572a39a79b26167b0411d2c3031937b2fe2d081e2cf", size = 777223, upload-time = "2026-05-09T23:14:24.179Z" }, + { url = "https://files.pythonhosted.org/packages/94/6a/e85ed9538cd19586d0465076a4578a12e093ce776d15f3f8ce92733a8dd6/regex-2026.5.9-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:24b2355ef5cc9aa5b8f07d17704face1c166fdcc2290fa7bd6e6c925655a8346", size = 785760, upload-time = "2026-05-09T23:14:26.065Z" }, + { url = "https://files.pythonhosted.org/packages/2a/c4/f25473209438638e947c55f9156fd8f236f74169229028cc99116380868e/regex-2026.5.9-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:a24852d3c29ad9e47593593d8a247c44ccc3d0548ef12c822d6ed0810affe676", size = 860891, upload-time = "2026-05-09T23:14:28.17Z" }, + { url = "https://files.pythonhosted.org/packages/f9/f7/f4f86e3c74419c37370e91f150ae0c2ef7d34b2e0e4cdd5da046a02e4022/regex-2026.5.9-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:916714069da19329ef7de197dcbc77bb3104145c7c2c864dbfbe318f46b88b14", size = 765891, upload-time = "2026-05-09T23:14:30.06Z" }, + { url = "https://files.pythonhosted.org/packages/26/70/704d8e13765939146b1cd0ef4e2feb71d7929727d2290f026eed10095955/regex-2026.5.9-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:fa411799ca8da32a8d38d020a88faa5b6f91657d284761352940ecf9f7c3bbdd", size = 851380, upload-time = "2026-05-09T23:14:32.123Z" }, + { url = "https://files.pythonhosted.org/packages/26/29/1a13582a8460038edc38e49f64ceb0dd7c60f5caba77571f4bf6601965d9/regex-2026.5.9-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:1e6da47d679b7010ef27556b6e0f99771b744936db1792a10ceac6547ae1503e", size = 789350, upload-time = "2026-05-09T23:14:34.799Z" }, + { url = "https://files.pythonhosted.org/packages/73/56/3dcafe34fc72e271d62ad9a291801e88a1457bb251c132f15fcc2e5aad1a/regex-2026.5.9-cp314-cp314-win32.whl", hash = "sha256:98bd73080e8756255137e1bd3f3f00295bbc5aa383c0e0f973920e9134d7c4ad", size = 272130, upload-time = "2026-05-09T23:14:36.729Z" }, + { url = "https://files.pythonhosted.org/packages/d0/9c/02eebf0be95efe416c664db7fb8b6b05b7a0b06a7544f2884f2558b0526f/regex-2026.5.9-cp314-cp314-win_amd64.whl", hash = "sha256:ff8d372ac2acdc048d1c19916f27ee61bc5722728458ba6ca5052f2c72d51763", size = 280999, upload-time = "2026-05-09T23:14:39.126Z" }, + { url = "https://files.pythonhosted.org/packages/70/5a/1dd1abee76cb7a846a0bcf42fdc87e5720c3c33c24f3e37814310a513d9f/regex-2026.5.9-cp314-cp314-win_arm64.whl", hash = "sha256:e1d93bf647916292e8edcec150c07ddf3dc50179ccaf770c04a7f9e452155372", size = 273500, upload-time = "2026-05-09T23:14:41.059Z" }, + { url = "https://files.pythonhosted.org/packages/86/c1/c5f619b0057a7965cb78ec559c1d7a45ce8c99a35bea95483d64959a93d9/regex-2026.5.9-cp314-cp314t-macosx_10_13_universal2.whl", hash = "sha256:83d0ee4a57d1c87cb549e195ec300b8f0ec3a82eba66d835e4e2ed8634fe4499", size = 494269, upload-time = "2026-05-09T23:14:42.869Z" }, + { url = "https://files.pythonhosted.org/packages/05/2c/5d01f1aee33de4bbe60c8452945bfc8477ca7c5ae4450f6bfe711036cb36/regex-2026.5.9-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:d3d7eb5c9a7f6df82ed3cfac9beb93882a5cbcb5b8b157b56cb2b3b276574ac1", size = 293954, upload-time = "2026-05-09T23:14:44.822Z" }, + { url = "https://files.pythonhosted.org/packages/7a/fe/e8988b2ae2108c6ef71bd4aa8d87fbe257976dd0810e826cd75f701c68b6/regex-2026.5.9-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:075160bf16658e16d35233300b8453aac25de4cbea808d22348b6979668e924d", size = 292405, upload-time = "2026-05-09T23:14:47.211Z" }, + { url = "https://files.pythonhosted.org/packages/79/34/d2b0937faa7859263f7f0a3c6b103a1296306be6952dc173d0154e9a2f49/regex-2026.5.9-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:45375819235558a4ff1c4971dc32881f022613abdb180128f5cb4768c1765a1c", size = 811855, upload-time = "2026-05-09T23:14:49.21Z" }, + { url = "https://files.pythonhosted.org/packages/80/fe/daf53a47457a8486db66c66c01ceb9c2303eecee3f87197f1e77eb1a736d/regex-2026.5.9-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:ead4b163ac30a29574510cd4b3e2e985ac5290c05fc7095557d6a5f403fc31b5", size = 871189, upload-time = "2026-05-09T23:14:51.555Z" }, + { url = "https://files.pythonhosted.org/packages/1c/75/058fc4470cbfbf57d800aff1a0022b929a3f9fa553ee10a0cdf2070eb31f/regex-2026.5.9-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:8c6e4218fbdfbcd4f6c19efca40930d24a621bf4b48cb76bc6640543bd28ef20", size = 917485, upload-time = "2026-05-09T23:14:53.633Z" }, + { url = "https://files.pythonhosted.org/packages/88/e7/179cfda3a28bc843b5c6cfe7f79f23489c791ed95f151083803660878432/regex-2026.5.9-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6351571c8a42b505eb555c0dc47d740d0fb66977dc142919eea6f4325b7c56a0", size = 816369, upload-time = "2026-05-09T23:14:56.198Z" }, + { url = "https://files.pythonhosted.org/packages/41/90/6f0cc422071688266d344fca8462d787cba0a2c144acb25721f9a61ec265/regex-2026.5.9-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:002205cafd2a9e78c6290c7d1df277bf3277b3b7a30e0b4bb0dac2e2e3f7cb2d", size = 785869, upload-time = "2026-05-09T23:14:58.602Z" }, + { url = "https://files.pythonhosted.org/packages/02/67/a31f1760f09c27b251ef39e9beb541f462cf977381d067faa764c2c0e393/regex-2026.5.9-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:8abd33fef90b2a9efac5557d6033ca82d1195ed3a15fea5af15ba7b463c6a63b", size = 801427, upload-time = "2026-05-09T23:15:00.642Z" }, + { url = "https://files.pythonhosted.org/packages/e3/c4/1a80654597b6bc1e1ea0494824c31200e8a956abe290afae9b19a166a148/regex-2026.5.9-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:31037c82eccb44b7ea2e9e221d7c01429430e989a1f4b91ea5a855f6017b509a", size = 866482, upload-time = "2026-05-09T23:15:03.384Z" }, + { url = "https://files.pythonhosted.org/packages/d1/11/960724e06482c08466ff5611e242e86f80062949cdf6b4b9cc317b9dd93d/regex-2026.5.9-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:5604dfd046dc37eca90250fc3be938b076c8059fa772ac0ed6f499b0f0fb0415", size = 773022, upload-time = "2026-05-09T23:15:05.625Z" }, + { url = "https://files.pythonhosted.org/packages/50/a8/a9979c3e7918280e93159ebcab5ef1a65116dd4f3bd6091be0eae4a126e8/regex-2026.5.9-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:0e1b1b4e496afbb24f4a62aba855ee4f88f25578927697b340702e48c9ee6bc2", size = 856642, upload-time = "2026-05-09T23:15:07.966Z" }, + { url = "https://files.pythonhosted.org/packages/fe/d4/a9b732f2f0072c0ab12227483abb24fffcb9f73f8a2b203df0a6d0434735/regex-2026.5.9-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:be3372b9df6ddecff6486d37e19095a7b4973137caf5512407a89f4455361f41", size = 803552, upload-time = "2026-05-09T23:15:10.215Z" }, + { url = "https://files.pythonhosted.org/packages/d5/fe/1b3113817447a1d4155e4ac76d2e072f42c0bcba2f43fa8a0e756ea2cd91/regex-2026.5.9-cp314-cp314t-win32.whl", hash = "sha256:3ddd90103f9e5c471c49c7852ecc1fe27c7e45eb99e977aefe7caa4e779f4f58", size = 275746, upload-time = "2026-05-09T23:15:12.609Z" }, + { url = "https://files.pythonhosted.org/packages/92/73/93d42045302636c91f2e5ef588b65b84b01428f28ec77de256b1dfdfbe5c/regex-2026.5.9-cp314-cp314t-win_amd64.whl", hash = "sha256:ca518ed29c46eecba6010b15f1b9a479314d2de409536e71b6a13aa04e3b8a77", size = 285685, upload-time = "2026-05-09T23:15:15.086Z" }, + { url = "https://files.pythonhosted.org/packages/da/80/35b4c33c804a165a7f55289afda3ea9e3eb6d15800341a2d66455c0f1f30/regex-2026.5.9-cp314-cp314t-win_arm64.whl", hash = "sha256:5e41809d2683fcde7d5a8c87a6567ba1fb1ce0de9f31bff578de00a4b2d76daa", size = 275713, upload-time = "2026-05-09T23:15:16.98Z" }, +] + +[[package]] +name = "rembg" +version = "2.0.75" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jsonschema" }, + { name = "numpy" }, + { name = "pillow" }, + { name = "pooch" }, + { name = "pymatting" }, + { name = "scikit-image" }, + { name = "scipy" }, + { name = "tqdm" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/21/1c/4d9a81d452d44d914e8ab3e964809ff2388f6919324f005513aa61e1c378/rembg-2.0.75.tar.gz", hash = "sha256:e2143fb5838c8b2238fa45d765ce18d0710801d5aef73f2c4ac9377991d1f526", size = 30148, upload-time = "2026-04-08T11:45:15.42Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f4/09/60b6d1e6b07520a133ec4522cf7c1a6d684301b64bc7a7b96aad6baa1e21/rembg-2.0.75-py3-none-any.whl", hash = "sha256:536cc7aec597e6e17d805992f9014e6082b5bef76b1b68034d746e0690af3a94", size = 45011, upload-time = "2026-04-08T11:45:16.533Z" }, +] + +[package.optional-dependencies] +cpu = [ + { name = "onnxruntime" }, +] + +[[package]] +name = "requests" +version = "2.34.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "certifi" }, + { name = "charset-normalizer" }, + { name = "idna" }, + { name = "urllib3" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/ac/c3/e2a2b89f2d3e2179abd6d00ebd70bff6273f37fb3e0cc209f48b39d00cbf/requests-2.34.2.tar.gz", hash = "sha256:f288924cae4e29463698d6d60bc6a4da69c89185ad1e0bcc4104f584e960b9ed", size = 142856, upload-time = "2026-05-14T19:25:27.735Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a0/f4/c67b0b3f1b9245e8d266f0f112c500d50e5b4e83cb6f3b71b6528104182a/requests-2.34.2-py3-none-any.whl", hash = "sha256:2a0d60c172f83ac6ab31e4554906c0f3b3588d37b5cb939b1c061f4907e278e0", size = 73075, upload-time = "2026-05-14T19:25:26.443Z" }, +] + +[[package]] +name = "rfc3339-validator" +version = "0.1.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "six" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/28/ea/a9387748e2d111c3c2b275ba970b735e04e15cdb1eb30693b6b5708c4dbd/rfc3339_validator-0.1.4.tar.gz", hash = "sha256:138a2abdf93304ad60530167e51d2dfb9549521a836871b88d7f4695d0022f6b", size = 5513, upload-time = "2021-05-12T16:37:54.178Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7b/44/4e421b96b67b2daff264473f7465db72fbdf36a07e05494f50300cc7b0c6/rfc3339_validator-0.1.4-py2.py3-none-any.whl", hash = "sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa", size = 3490, upload-time = "2021-05-12T16:37:52.536Z" }, +] + +[[package]] +name = "rfc3986-validator" +version = "0.1.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/da/88/f270de456dd7d11dcc808abfa291ecdd3f45ff44e3b549ffa01b126464d0/rfc3986_validator-0.1.1.tar.gz", hash = "sha256:3d44bde7921b3b9ec3ae4e3adca370438eccebc676456449b145d533b240d055", size = 6760, upload-time = "2019-10-28T16:00:19.144Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9e/51/17023c0f8f1869d8806b979a2bffa3f861f26a3f1a66b094288323fba52f/rfc3986_validator-0.1.1-py2.py3-none-any.whl", hash = "sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9", size = 4242, upload-time = "2019-10-28T16:00:13.976Z" }, +] + +[[package]] +name = "rfc3987-syntax" +version = "1.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "lark" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/2c/06/37c1a5557acf449e8e406a830a05bf885ac47d33270aec454ef78675008d/rfc3987_syntax-1.1.0.tar.gz", hash = "sha256:717a62cbf33cffdd16dfa3a497d81ce48a660ea691b1ddd7be710c22f00b4a0d", size = 14239, upload-time = "2025-07-18T01:05:05.015Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7e/71/44ce230e1b7fadd372515a97e32a83011f906ddded8d03e3c6aafbdedbb7/rfc3987_syntax-1.1.0-py3-none-any.whl", hash = "sha256:6c3d97604e4c5ce9f714898e05401a0445a641cfa276432b0a648c80856f6a3f", size = 8046, upload-time = "2025-07-18T01:05:03.843Z" }, +] + +[[package]] +name = "rich" +version = "15.0.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "markdown-it-py" }, + { name = "pygments" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c0/8f/0722ca900cc807c13a6a0c696dacf35430f72e0ec571c4275d2371fca3e9/rich-15.0.0.tar.gz", hash = "sha256:edd07a4824c6b40189fb7ac9bc4c52536e9780fbbfbddf6f1e2502c31b068c36", size = 230680, upload-time = "2026-04-12T08:24:00.75Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/82/3b/64d4899d73f91ba49a8c18a8ff3f0ea8f1c1d75481760df8c68ef5235bf5/rich-15.0.0-py3-none-any.whl", hash = "sha256:33bd4ef74232fb73fe9279a257718407f169c09b78a87ad3d296f548e27de0bb", size = 310654, upload-time = "2026-04-12T08:24:02.83Z" }, +] + +[[package]] +name = "rpds-py" +version = "0.30.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/20/af/3f2f423103f1113b36230496629986e0ef7e199d2aa8392452b484b38ced/rpds_py-0.30.0.tar.gz", hash = "sha256:dd8ff7cf90014af0c0f787eea34794ebf6415242ee1d6fa91eaba725cc441e84", size = 69469, upload-time = "2025-11-30T20:24:38.837Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ed/dc/d61221eb88ff410de3c49143407f6f3147acf2538c86f2ab7ce65ae7d5f9/rpds_py-0.30.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:f83424d738204d9770830d35290ff3273fbb02b41f919870479fab14b9d303b2", size = 374887, upload-time = "2025-11-30T20:22:41.812Z" }, + { url = "https://files.pythonhosted.org/packages/fd/32/55fb50ae104061dbc564ef15cc43c013dc4a9f4527a1f4d99baddf56fe5f/rpds_py-0.30.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:e7536cd91353c5273434b4e003cbda89034d67e7710eab8761fd918ec6c69cf8", size = 358904, upload-time = "2025-11-30T20:22:43.479Z" }, + { url = "https://files.pythonhosted.org/packages/58/70/faed8186300e3b9bdd138d0273109784eea2396c68458ed580f885dfe7ad/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2771c6c15973347f50fece41fc447c054b7ac2ae0502388ce3b6738cd366e3d4", size = 389945, upload-time = "2025-11-30T20:22:44.819Z" }, + { url = "https://files.pythonhosted.org/packages/bd/a8/073cac3ed2c6387df38f71296d002ab43496a96b92c823e76f46b8af0543/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:0a59119fc6e3f460315fe9d08149f8102aa322299deaa5cab5b40092345c2136", size = 407783, upload-time = "2025-11-30T20:22:46.103Z" }, + { url = "https://files.pythonhosted.org/packages/77/57/5999eb8c58671f1c11eba084115e77a8899d6e694d2a18f69f0ba471ec8b/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:76fec018282b4ead0364022e3c54b60bf368b9d926877957a8624b58419169b7", size = 515021, upload-time = "2025-11-30T20:22:47.458Z" }, + { url = "https://files.pythonhosted.org/packages/e0/af/5ab4833eadc36c0a8ed2bc5c0de0493c04f6c06de223170bd0798ff98ced/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:692bef75a5525db97318e8cd061542b5a79812d711ea03dbc1f6f8dbb0c5f0d2", size = 414589, upload-time = "2025-11-30T20:22:48.872Z" }, + { url = "https://files.pythonhosted.org/packages/b7/de/f7192e12b21b9e9a68a6d0f249b4af3fdcdff8418be0767a627564afa1f1/rpds_py-0.30.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9027da1ce107104c50c81383cae773ef5c24d296dd11c99e2629dbd7967a20c6", size = 394025, upload-time = "2025-11-30T20:22:50.196Z" }, + { url = "https://files.pythonhosted.org/packages/91/c4/fc70cd0249496493500e7cc2de87504f5aa6509de1e88623431fec76d4b6/rpds_py-0.30.0-cp313-cp313-manylinux_2_31_riscv64.whl", hash = "sha256:9cf69cdda1f5968a30a359aba2f7f9aa648a9ce4b580d6826437f2b291cfc86e", size = 408895, upload-time = "2025-11-30T20:22:51.87Z" }, + { url = "https://files.pythonhosted.org/packages/58/95/d9275b05ab96556fefff73a385813eb66032e4c99f411d0795372d9abcea/rpds_py-0.30.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a4796a717bf12b9da9d3ad002519a86063dcac8988b030e405704ef7d74d2d9d", size = 422799, upload-time = "2025-11-30T20:22:53.341Z" }, + { url = "https://files.pythonhosted.org/packages/06/c1/3088fc04b6624eb12a57eb814f0d4997a44b0d208d6cace713033ff1a6ba/rpds_py-0.30.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:5d4c2aa7c50ad4728a094ebd5eb46c452e9cb7edbfdb18f9e1221f597a73e1e7", size = 572731, upload-time = "2025-11-30T20:22:54.778Z" }, + { url = "https://files.pythonhosted.org/packages/d8/42/c612a833183b39774e8ac8fecae81263a68b9583ee343db33ab571a7ce55/rpds_py-0.30.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ba81a9203d07805435eb06f536d95a266c21e5b2dfbf6517748ca40c98d19e31", size = 599027, upload-time = "2025-11-30T20:22:56.212Z" }, + { url = "https://files.pythonhosted.org/packages/5f/60/525a50f45b01d70005403ae0e25f43c0384369ad24ffe46e8d9068b50086/rpds_py-0.30.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:945dccface01af02675628334f7cf49c2af4c1c904748efc5cf7bbdf0b579f95", size = 563020, upload-time = "2025-11-30T20:22:58.2Z" }, + { url = "https://files.pythonhosted.org/packages/0b/5d/47c4655e9bcd5ca907148535c10e7d489044243cc9941c16ed7cd53be91d/rpds_py-0.30.0-cp313-cp313-win32.whl", hash = "sha256:b40fb160a2db369a194cb27943582b38f79fc4887291417685f3ad693c5a1d5d", size = 223139, upload-time = "2025-11-30T20:23:00.209Z" }, + { url = "https://files.pythonhosted.org/packages/f2/e1/485132437d20aa4d3e1d8b3fb5a5e65aa8139f1e097080c2a8443201742c/rpds_py-0.30.0-cp313-cp313-win_amd64.whl", hash = "sha256:806f36b1b605e2d6a72716f321f20036b9489d29c51c91f4dd29a3e3afb73b15", size = 240224, upload-time = "2025-11-30T20:23:02.008Z" }, + { url = "https://files.pythonhosted.org/packages/24/95/ffd128ed1146a153d928617b0ef673960130be0009c77d8fbf0abe306713/rpds_py-0.30.0-cp313-cp313-win_arm64.whl", hash = "sha256:d96c2086587c7c30d44f31f42eae4eac89b60dabbac18c7669be3700f13c3ce1", size = 230645, upload-time = "2025-11-30T20:23:03.43Z" }, + { url = "https://files.pythonhosted.org/packages/ff/1b/b10de890a0def2a319a2626334a7f0ae388215eb60914dbac8a3bae54435/rpds_py-0.30.0-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:eb0b93f2e5c2189ee831ee43f156ed34e2a89a78a66b98cadad955972548be5a", size = 364443, upload-time = "2025-11-30T20:23:04.878Z" }, + { url = "https://files.pythonhosted.org/packages/0d/bf/27e39f5971dc4f305a4fb9c672ca06f290f7c4e261c568f3dea16a410d47/rpds_py-0.30.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:922e10f31f303c7c920da8981051ff6d8c1a56207dbdf330d9047f6d30b70e5e", size = 353375, upload-time = "2025-11-30T20:23:06.342Z" }, + { url = "https://files.pythonhosted.org/packages/40/58/442ada3bba6e8e6615fc00483135c14a7538d2ffac30e2d933ccf6852232/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cdc62c8286ba9bf7f47befdcea13ea0e26bf294bda99758fd90535cbaf408000", size = 383850, upload-time = "2025-11-30T20:23:07.825Z" }, + { url = "https://files.pythonhosted.org/packages/14/14/f59b0127409a33c6ef6f5c1ebd5ad8e32d7861c9c7adfa9a624fc3889f6c/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:47f9a91efc418b54fb8190a6b4aa7813a23fb79c51f4bb84e418f5476c38b8db", size = 392812, upload-time = "2025-11-30T20:23:09.228Z" }, + { url = "https://files.pythonhosted.org/packages/b3/66/e0be3e162ac299b3a22527e8913767d869e6cc75c46bd844aa43fb81ab62/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1f3587eb9b17f3789ad50824084fa6f81921bbf9a795826570bda82cb3ed91f2", size = 517841, upload-time = "2025-11-30T20:23:11.186Z" }, + { url = "https://files.pythonhosted.org/packages/3d/55/fa3b9cf31d0c963ecf1ba777f7cf4b2a2c976795ac430d24a1f43d25a6ba/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:39c02563fc592411c2c61d26b6c5fe1e51eaa44a75aa2c8735ca88b0d9599daa", size = 408149, upload-time = "2025-11-30T20:23:12.864Z" }, + { url = "https://files.pythonhosted.org/packages/60/ca/780cf3b1a32b18c0f05c441958d3758f02544f1d613abf9488cd78876378/rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:51a1234d8febafdfd33a42d97da7a43f5dcb120c1060e352a3fbc0c6d36e2083", size = 383843, upload-time = "2025-11-30T20:23:14.638Z" }, + { url = "https://files.pythonhosted.org/packages/82/86/d5f2e04f2aa6247c613da0c1dd87fcd08fa17107e858193566048a1e2f0a/rpds_py-0.30.0-cp313-cp313t-manylinux_2_31_riscv64.whl", hash = "sha256:eb2c4071ab598733724c08221091e8d80e89064cd472819285a9ab0f24bcedb9", size = 396507, upload-time = "2025-11-30T20:23:16.105Z" }, + { url = "https://files.pythonhosted.org/packages/4b/9a/453255d2f769fe44e07ea9785c8347edaf867f7026872e76c1ad9f7bed92/rpds_py-0.30.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6bdfdb946967d816e6adf9a3d8201bfad269c67efe6cefd7093ef959683c8de0", size = 414949, upload-time = "2025-11-30T20:23:17.539Z" }, + { url = "https://files.pythonhosted.org/packages/a3/31/622a86cdc0c45d6df0e9ccb6becdba5074735e7033c20e401a6d9d0e2ca0/rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:c77afbd5f5250bf27bf516c7c4a016813eb2d3e116139aed0096940c5982da94", size = 565790, upload-time = "2025-11-30T20:23:19.029Z" }, + { url = "https://files.pythonhosted.org/packages/1c/5d/15bbf0fb4a3f58a3b1c67855ec1efcc4ceaef4e86644665fff03e1b66d8d/rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:61046904275472a76c8c90c9ccee9013d70a6d0f73eecefd38c1ae7c39045a08", size = 590217, upload-time = "2025-11-30T20:23:20.885Z" }, + { url = "https://files.pythonhosted.org/packages/6d/61/21b8c41f68e60c8cc3b2e25644f0e3681926020f11d06ab0b78e3c6bbff1/rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:4c5f36a861bc4b7da6516dbdf302c55313afa09b81931e8280361a4f6c9a2d27", size = 555806, upload-time = "2025-11-30T20:23:22.488Z" }, + { url = "https://files.pythonhosted.org/packages/f9/39/7e067bb06c31de48de3eb200f9fc7c58982a4d3db44b07e73963e10d3be9/rpds_py-0.30.0-cp313-cp313t-win32.whl", hash = "sha256:3d4a69de7a3e50ffc214ae16d79d8fbb0922972da0356dcf4d0fdca2878559c6", size = 211341, upload-time = "2025-11-30T20:23:24.449Z" }, + { url = "https://files.pythonhosted.org/packages/0a/4d/222ef0b46443cf4cf46764d9c630f3fe4abaa7245be9417e56e9f52b8f65/rpds_py-0.30.0-cp313-cp313t-win_amd64.whl", hash = "sha256:f14fc5df50a716f7ece6a80b6c78bb35ea2ca47c499e422aa4463455dd96d56d", size = 225768, upload-time = "2025-11-30T20:23:25.908Z" }, + { url = "https://files.pythonhosted.org/packages/86/81/dad16382ebbd3d0e0328776d8fd7ca94220e4fa0798d1dc5e7da48cb3201/rpds_py-0.30.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:68f19c879420aa08f61203801423f6cd5ac5f0ac4ac82a2368a9fcd6a9a075e0", size = 362099, upload-time = "2025-11-30T20:23:27.316Z" }, + { url = "https://files.pythonhosted.org/packages/2b/60/19f7884db5d5603edf3c6bce35408f45ad3e97e10007df0e17dd57af18f8/rpds_py-0.30.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:ec7c4490c672c1a0389d319b3a9cfcd098dcdc4783991553c332a15acf7249be", size = 353192, upload-time = "2025-11-30T20:23:29.151Z" }, + { url = "https://files.pythonhosted.org/packages/bf/c4/76eb0e1e72d1a9c4703c69607cec123c29028bff28ce41588792417098ac/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f251c812357a3fed308d684a5079ddfb9d933860fc6de89f2b7ab00da481e65f", size = 384080, upload-time = "2025-11-30T20:23:30.785Z" }, + { url = "https://files.pythonhosted.org/packages/72/87/87ea665e92f3298d1b26d78814721dc39ed8d2c74b86e83348d6b48a6f31/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ac98b175585ecf4c0348fd7b29c3864bda53b805c773cbf7bfdaffc8070c976f", size = 394841, upload-time = "2025-11-30T20:23:32.209Z" }, + { url = "https://files.pythonhosted.org/packages/77/ad/7783a89ca0587c15dcbf139b4a8364a872a25f861bdb88ed99f9b0dec985/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3e62880792319dbeb7eb866547f2e35973289e7d5696c6e295476448f5b63c87", size = 516670, upload-time = "2025-11-30T20:23:33.742Z" }, + { url = "https://files.pythonhosted.org/packages/5b/3c/2882bdac942bd2172f3da574eab16f309ae10a3925644e969536553cb4ee/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4e7fc54e0900ab35d041b0601431b0a0eb495f0851a0639b6ef90f7741b39a18", size = 408005, upload-time = "2025-11-30T20:23:35.253Z" }, + { url = "https://files.pythonhosted.org/packages/ce/81/9a91c0111ce1758c92516a3e44776920b579d9a7c09b2b06b642d4de3f0f/rpds_py-0.30.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47e77dc9822d3ad616c3d5759ea5631a75e5809d5a28707744ef79d7a1bcfcad", size = 382112, upload-time = "2025-11-30T20:23:36.842Z" }, + { url = "https://files.pythonhosted.org/packages/cf/8e/1da49d4a107027e5fbc64daeab96a0706361a2918da10cb41769244b805d/rpds_py-0.30.0-cp314-cp314-manylinux_2_31_riscv64.whl", hash = "sha256:b4dc1a6ff022ff85ecafef7979a2c6eb423430e05f1165d6688234e62ba99a07", size = 399049, upload-time = "2025-11-30T20:23:38.343Z" }, + { url = "https://files.pythonhosted.org/packages/df/5a/7ee239b1aa48a127570ec03becbb29c9d5a9eb092febbd1699d567cae859/rpds_py-0.30.0-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:4559c972db3a360808309e06a74628b95eaccbf961c335c8fe0d590cf587456f", size = 415661, upload-time = "2025-11-30T20:23:40.263Z" }, + { url = "https://files.pythonhosted.org/packages/70/ea/caa143cf6b772f823bc7929a45da1fa83569ee49b11d18d0ada7f5ee6fd6/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:0ed177ed9bded28f8deb6ab40c183cd1192aa0de40c12f38be4d59cd33cb5c65", size = 565606, upload-time = "2025-11-30T20:23:42.186Z" }, + { url = "https://files.pythonhosted.org/packages/64/91/ac20ba2d69303f961ad8cf55bf7dbdb4763f627291ba3d0d7d67333cced9/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:ad1fa8db769b76ea911cb4e10f049d80bf518c104f15b3edb2371cc65375c46f", size = 591126, upload-time = "2025-11-30T20:23:44.086Z" }, + { url = "https://files.pythonhosted.org/packages/21/20/7ff5f3c8b00c8a95f75985128c26ba44503fb35b8e0259d812766ea966c7/rpds_py-0.30.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:46e83c697b1f1c72b50e5ee5adb4353eef7406fb3f2043d64c33f20ad1c2fc53", size = 553371, upload-time = "2025-11-30T20:23:46.004Z" }, + { url = "https://files.pythonhosted.org/packages/72/c7/81dadd7b27c8ee391c132a6b192111ca58d866577ce2d9b0ca157552cce0/rpds_py-0.30.0-cp314-cp314-win32.whl", hash = "sha256:ee454b2a007d57363c2dfd5b6ca4a5d7e2c518938f8ed3b706e37e5d470801ed", size = 215298, upload-time = "2025-11-30T20:23:47.696Z" }, + { url = "https://files.pythonhosted.org/packages/3e/d2/1aaac33287e8cfb07aab2e6b8ac1deca62f6f65411344f1433c55e6f3eb8/rpds_py-0.30.0-cp314-cp314-win_amd64.whl", hash = "sha256:95f0802447ac2d10bcc69f6dc28fe95fdf17940367b21d34e34c737870758950", size = 228604, upload-time = "2025-11-30T20:23:49.501Z" }, + { url = "https://files.pythonhosted.org/packages/e8/95/ab005315818cc519ad074cb7784dae60d939163108bd2b394e60dc7b5461/rpds_py-0.30.0-cp314-cp314-win_arm64.whl", hash = "sha256:613aa4771c99f03346e54c3f038e4cc574ac09a3ddfb0e8878487335e96dead6", size = 222391, upload-time = "2025-11-30T20:23:50.96Z" }, + { url = "https://files.pythonhosted.org/packages/9e/68/154fe0194d83b973cdedcdcc88947a2752411165930182ae41d983dcefa6/rpds_py-0.30.0-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:7e6ecfcb62edfd632e56983964e6884851786443739dbfe3582947e87274f7cb", size = 364868, upload-time = "2025-11-30T20:23:52.494Z" }, + { url = "https://files.pythonhosted.org/packages/83/69/8bbc8b07ec854d92a8b75668c24d2abcb1719ebf890f5604c61c9369a16f/rpds_py-0.30.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:a1d0bc22a7cdc173fedebb73ef81e07faef93692b8c1ad3733b67e31e1b6e1b8", size = 353747, upload-time = "2025-11-30T20:23:54.036Z" }, + { url = "https://files.pythonhosted.org/packages/ab/00/ba2e50183dbd9abcce9497fa5149c62b4ff3e22d338a30d690f9af970561/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d08f00679177226c4cb8c5265012eea897c8ca3b93f429e546600c971bcbae7", size = 383795, upload-time = "2025-11-30T20:23:55.556Z" }, + { url = "https://files.pythonhosted.org/packages/05/6f/86f0272b84926bcb0e4c972262f54223e8ecc556b3224d281e6598fc9268/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5965af57d5848192c13534f90f9dd16464f3c37aaf166cc1da1cae1fd5a34898", size = 393330, upload-time = "2025-11-30T20:23:57.033Z" }, + { url = "https://files.pythonhosted.org/packages/cb/e9/0e02bb2e6dc63d212641da45df2b0bf29699d01715913e0d0f017ee29438/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9a4e86e34e9ab6b667c27f3211ca48f73dba7cd3d90f8d5b11be56e5dbc3fb4e", size = 518194, upload-time = "2025-11-30T20:23:58.637Z" }, + { url = "https://files.pythonhosted.org/packages/ee/ca/be7bca14cf21513bdf9c0606aba17d1f389ea2b6987035eb4f62bd923f25/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e5d3e6b26f2c785d65cc25ef1e5267ccbe1b069c5c21b8cc724efee290554419", size = 408340, upload-time = "2025-11-30T20:24:00.2Z" }, + { url = "https://files.pythonhosted.org/packages/c2/c7/736e00ebf39ed81d75544c0da6ef7b0998f8201b369acf842f9a90dc8fce/rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:626a7433c34566535b6e56a1b39a7b17ba961e97ce3b80ec62e6f1312c025551", size = 383765, upload-time = "2025-11-30T20:24:01.759Z" }, + { url = "https://files.pythonhosted.org/packages/4a/3f/da50dfde9956aaf365c4adc9533b100008ed31aea635f2b8d7b627e25b49/rpds_py-0.30.0-cp314-cp314t-manylinux_2_31_riscv64.whl", hash = "sha256:acd7eb3f4471577b9b5a41baf02a978e8bdeb08b4b355273994f8b87032000a8", size = 396834, upload-time = "2025-11-30T20:24:03.687Z" }, + { url = "https://files.pythonhosted.org/packages/4e/00/34bcc2565b6020eab2623349efbdec810676ad571995911f1abdae62a3a0/rpds_py-0.30.0-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:fe5fa731a1fa8a0a56b0977413f8cacac1768dad38d16b3a296712709476fbd5", size = 415470, upload-time = "2025-11-30T20:24:05.232Z" }, + { url = "https://files.pythonhosted.org/packages/8c/28/882e72b5b3e6f718d5453bd4d0d9cf8df36fddeb4ddbbab17869d5868616/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:74a3243a411126362712ee1524dfc90c650a503502f135d54d1b352bd01f2404", size = 565630, upload-time = "2025-11-30T20:24:06.878Z" }, + { url = "https://files.pythonhosted.org/packages/3b/97/04a65539c17692de5b85c6e293520fd01317fd878ea1995f0367d4532fb1/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:3e8eeb0544f2eb0d2581774be4c3410356eba189529a6b3e36bbbf9696175856", size = 591148, upload-time = "2025-11-30T20:24:08.445Z" }, + { url = "https://files.pythonhosted.org/packages/85/70/92482ccffb96f5441aab93e26c4d66489eb599efdcf96fad90c14bbfb976/rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:dbd936cde57abfee19ab3213cf9c26be06d60750e60a8e4dd85d1ab12c8b1f40", size = 556030, upload-time = "2025-11-30T20:24:10.956Z" }, + { url = "https://files.pythonhosted.org/packages/20/53/7c7e784abfa500a2b6b583b147ee4bb5a2b3747a9166bab52fec4b5b5e7d/rpds_py-0.30.0-cp314-cp314t-win32.whl", hash = "sha256:dc824125c72246d924f7f796b4f63c1e9dc810c7d9e2355864b3c3a73d59ade0", size = 211570, upload-time = "2025-11-30T20:24:12.735Z" }, + { url = "https://files.pythonhosted.org/packages/d0/02/fa464cdfbe6b26e0600b62c528b72d8608f5cc49f96b8d6e38c95d60c676/rpds_py-0.30.0-cp314-cp314t-win_amd64.whl", hash = "sha256:27f4b0e92de5bfbc6f86e43959e6edd1425c33b5e69aab0984a72047f2bcf1e3", size = 226532, upload-time = "2025-11-30T20:24:14.634Z" }, +] + +[[package]] +name = "safetensors" +version = "0.7.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/29/9c/6e74567782559a63bd040a236edca26fd71bc7ba88de2ef35d75df3bca5e/safetensors-0.7.0.tar.gz", hash = "sha256:07663963b67e8bd9f0b8ad15bb9163606cd27cc5a1b96235a50d8369803b96b0", size = 200878, upload-time = "2025-11-19T15:18:43.199Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/fa/47/aef6c06649039accf914afef490268e1067ed82be62bcfa5b7e886ad15e8/safetensors-0.7.0-cp38-abi3-macosx_10_12_x86_64.whl", hash = "sha256:c82f4d474cf725255d9e6acf17252991c3c8aac038d6ef363a4bf8be2f6db517", size = 467781, upload-time = "2025-11-19T15:18:35.84Z" }, + { url = "https://files.pythonhosted.org/packages/e8/00/374c0c068e30cd31f1e1b46b4b5738168ec79e7689ca82ee93ddfea05109/safetensors-0.7.0-cp38-abi3-macosx_11_0_arm64.whl", hash = "sha256:94fd4858284736bb67a897a41608b5b0c2496c9bdb3bf2af1fa3409127f20d57", size = 447058, upload-time = "2025-11-19T15:18:34.416Z" }, + { url = "https://files.pythonhosted.org/packages/f1/06/578ffed52c2296f93d7fd2d844cabfa92be51a587c38c8afbb8ae449ca89/safetensors-0.7.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e07d91d0c92a31200f25351f4acb2bc6aff7f48094e13ebb1d0fb995b54b6542", size = 491748, upload-time = "2025-11-19T15:18:09.79Z" }, + { url = "https://files.pythonhosted.org/packages/ae/33/1debbbb70e4791dde185edb9413d1fe01619255abb64b300157d7f15dddd/safetensors-0.7.0-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8469155f4cb518bafb4acf4865e8bb9d6804110d2d9bdcaa78564b9fd841e104", size = 503881, upload-time = "2025-11-19T15:18:16.145Z" }, + { url = "https://files.pythonhosted.org/packages/8e/1c/40c2ca924d60792c3be509833df711b553c60effbd91da6f5284a83f7122/safetensors-0.7.0-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:54bef08bf00a2bff599982f6b08e8770e09cc012d7bba00783fc7ea38f1fb37d", size = 623463, upload-time = "2025-11-19T15:18:21.11Z" }, + { url = "https://files.pythonhosted.org/packages/9b/3a/13784a9364bd43b0d61eef4bea2845039bc2030458b16594a1bd787ae26e/safetensors-0.7.0-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:42cb091236206bb2016d245c377ed383aa7f78691748f3bb6ee1bfa51ae2ce6a", size = 532855, upload-time = "2025-11-19T15:18:25.719Z" }, + { url = "https://files.pythonhosted.org/packages/a0/60/429e9b1cb3fc651937727befe258ea24122d9663e4d5709a48c9cbfceecb/safetensors-0.7.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dac7252938f0696ddea46f5e855dd3138444e82236e3be475f54929f0c510d48", size = 507152, upload-time = "2025-11-19T15:18:33.023Z" }, + { url = "https://files.pythonhosted.org/packages/3c/a8/4b45e4e059270d17af60359713ffd83f97900d45a6afa73aaa0d737d48b6/safetensors-0.7.0-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1d060c70284127fa805085d8f10fbd0962792aed71879d00864acda69dbab981", size = 541856, upload-time = "2025-11-19T15:18:31.075Z" }, + { url = "https://files.pythonhosted.org/packages/06/87/d26d8407c44175d8ae164a95b5a62707fcc445f3c0c56108e37d98070a3d/safetensors-0.7.0-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:cdab83a366799fa730f90a4ebb563e494f28e9e92c4819e556152ad55e43591b", size = 674060, upload-time = "2025-11-19T15:18:37.211Z" }, + { url = "https://files.pythonhosted.org/packages/11/f5/57644a2ff08dc6325816ba7217e5095f17269dada2554b658442c66aed51/safetensors-0.7.0-cp38-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:672132907fcad9f2aedcb705b2d7b3b93354a2aec1b2f706c4db852abe338f85", size = 771715, upload-time = "2025-11-19T15:18:38.689Z" }, + { url = "https://files.pythonhosted.org/packages/86/31/17883e13a814bd278ae6e266b13282a01049b0c81341da7fd0e3e71a80a3/safetensors-0.7.0-cp38-abi3-musllinux_1_2_i686.whl", hash = "sha256:5d72abdb8a4d56d4020713724ba81dac065fedb7f3667151c4a637f1d3fb26c0", size = 714377, upload-time = "2025-11-19T15:18:40.162Z" }, + { url = "https://files.pythonhosted.org/packages/4a/d8/0c8a7dc9b41dcac53c4cbf9df2b9c83e0e0097203de8b37a712b345c0be5/safetensors-0.7.0-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:b0f6d66c1c538d5a94a73aa9ddca8ccc4227e6c9ff555322ea40bdd142391dd4", size = 677368, upload-time = "2025-11-19T15:18:41.627Z" }, + { url = "https://files.pythonhosted.org/packages/05/e5/cb4b713c8a93469e3c5be7c3f8d77d307e65fe89673e731f5c2bfd0a9237/safetensors-0.7.0-cp38-abi3-win32.whl", hash = "sha256:c74af94bf3ac15ac4d0f2a7c7b4663a15f8c2ab15ed0fc7531ca61d0835eccba", size = 326423, upload-time = "2025-11-19T15:18:45.74Z" }, + { url = "https://files.pythonhosted.org/packages/5d/e6/ec8471c8072382cb91233ba7267fd931219753bb43814cbc71757bfd4dab/safetensors-0.7.0-cp38-abi3-win_amd64.whl", hash = "sha256:d1239932053f56f3456f32eb9625590cc7582e905021f94636202a864d470755", size = 341380, upload-time = "2025-11-19T15:18:44.427Z" }, +] + +[[package]] +name = "scikit-image" +version = "0.26.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "imageio" }, + { name = "lazy-loader" }, + { name = "networkx" }, + { name = "numpy" }, + { name = "packaging" }, + { name = "pillow" }, + { name = "scipy" }, + { name = "tifffile" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a1/b4/2528bb43c67d48053a7a649a9666432dc307d66ba02e3a6d5c40f46655df/scikit_image-0.26.0.tar.gz", hash = "sha256:f5f970ab04efad85c24714321fcc91613fcb64ef2a892a13167df2f3e59199fa", size = 22729739, upload-time = "2025-12-20T17:12:21.824Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/4f/48/02357ffb2cca35640f33f2cfe054a4d6d5d7a229b88880a64f1e45c11f4e/scikit_image-0.26.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a2e852eccf41d2d322b8e60144e124802873a92b8d43a6f96331aa42888491c7", size = 12346329, upload-time = "2025-12-20T17:11:11.599Z" }, + { url = "https://files.pythonhosted.org/packages/67/b9/b792c577cea2c1e94cda83b135a656924fc57c428e8a6d302cd69aac1b60/scikit_image-0.26.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:98329aab3bc87db352b9887f64ce8cdb8e75f7c2daa19927f2e121b797b678d5", size = 12031726, upload-time = "2025-12-20T17:11:13.871Z" }, + { url = "https://files.pythonhosted.org/packages/07/a9/9564250dfd65cb20404a611016db52afc6268b2b371cd19c7538ea47580f/scikit_image-0.26.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:915bb3ba66455cf8adac00dc8fdf18a4cd29656aec7ddd38cb4dda90289a6f21", size = 13094910, upload-time = "2025-12-20T17:11:16.2Z" }, + { url = "https://files.pythonhosted.org/packages/a3/b8/0d8eeb5a9fd7d34ba84f8a55753a0a3e2b5b51b2a5a0ade648a8db4a62f7/scikit_image-0.26.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b36ab5e778bf50af5ff386c3ac508027dc3aaeccf2161bdf96bde6848f44d21b", size = 13660939, upload-time = "2025-12-20T17:11:18.464Z" }, + { url = "https://files.pythonhosted.org/packages/2f/d6/91d8973584d4793d4c1a847d388e34ef1218d835eeddecfc9108d735b467/scikit_image-0.26.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:09bad6a5d5949c7896c8347424c4cca899f1d11668030e5548813ab9c2865dcb", size = 14138938, upload-time = "2025-12-20T17:11:20.919Z" }, + { url = "https://files.pythonhosted.org/packages/39/9a/7e15d8dc10d6bbf212195fb39bdeb7f226c46dd53f9c63c312e111e2e175/scikit_image-0.26.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:aeb14db1ed09ad4bee4ceb9e635547a8d5f3549be67fc6c768c7f923e027e6cd", size = 14752243, upload-time = "2025-12-20T17:11:23.347Z" }, + { url = "https://files.pythonhosted.org/packages/8f/58/2b11b933097bc427e42b4a8b15f7de8f24f2bac1fd2779d2aea1431b2c31/scikit_image-0.26.0-cp313-cp313-win_amd64.whl", hash = "sha256:ac529eb9dbd5954f9aaa2e3fe9a3fd9661bfe24e134c688587d811a0233127f1", size = 11906770, upload-time = "2025-12-20T17:11:25.297Z" }, + { url = "https://files.pythonhosted.org/packages/ad/ec/96941474a18a04b69b6f6562a5bd79bd68049fa3728d3b350976eccb8b93/scikit_image-0.26.0-cp313-cp313-win_arm64.whl", hash = "sha256:a2d211bc355f59725efdcae699b93b30348a19416cc9e017f7b2fb599faf7219", size = 11342506, upload-time = "2025-12-20T17:11:27.399Z" }, + { url = "https://files.pythonhosted.org/packages/03/e5/c1a9962b0cf1952f42d32b4a2e48eed520320dbc4d2ff0b981c6fa508b6b/scikit_image-0.26.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:9eefb4adad066da408a7601c4c24b07af3b472d90e08c3e7483d4e9e829d8c49", size = 12663278, upload-time = "2025-12-20T17:11:29.358Z" }, + { url = "https://files.pythonhosted.org/packages/ae/97/c1a276a59ce8e4e24482d65c1a3940d69c6b3873279193b7ebd04e5ee56b/scikit_image-0.26.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:6caec76e16c970c528d15d1c757363334d5cb3069f9cea93d2bead31820511f3", size = 12405142, upload-time = "2025-12-20T17:11:31.282Z" }, + { url = "https://files.pythonhosted.org/packages/d4/4a/f1cbd1357caef6c7993f7efd514d6e53d8fd6f7fe01c4714d51614c53289/scikit_image-0.26.0-cp313-cp313t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a07200fe09b9d99fcdab959859fe0f7db8df6333d6204344425d476850ce3604", size = 12942086, upload-time = "2025-12-20T17:11:33.683Z" }, + { url = "https://files.pythonhosted.org/packages/5b/6f/74d9fb87c5655bd64cf00b0c44dc3d6206d9002e5f6ba1c9aeb13236f6bf/scikit_image-0.26.0-cp313-cp313t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:92242351bccf391fc5df2d1529d15470019496d2498d615beb68da85fe7fdf37", size = 13265667, upload-time = "2025-12-20T17:11:36.11Z" }, + { url = "https://files.pythonhosted.org/packages/a7/73/faddc2413ae98d863f6fa2e3e14da4467dd38e788e1c23346cf1a2b06b97/scikit_image-0.26.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:52c496f75a7e45844d951557f13c08c81487c6a1da2e3c9c8a39fcde958e02cc", size = 14001966, upload-time = "2025-12-20T17:11:38.55Z" }, + { url = "https://files.pythonhosted.org/packages/02/94/9f46966fa042b5d57c8cd641045372b4e0df0047dd400e77ea9952674110/scikit_image-0.26.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:20ef4a155e2e78b8ab973998e04d8a361d49d719e65412405f4dadd9155a61d9", size = 14359526, upload-time = "2025-12-20T17:11:41.087Z" }, + { url = "https://files.pythonhosted.org/packages/5d/b4/2840fe38f10057f40b1c9f8fb98a187a370936bf144a4ac23452c5ef1baf/scikit_image-0.26.0-cp313-cp313t-win_amd64.whl", hash = "sha256:c9087cf7d0e7f33ab5c46d2068d86d785e70b05400a891f73a13400f1e1faf6a", size = 12287629, upload-time = "2025-12-20T17:11:43.11Z" }, + { url = "https://files.pythonhosted.org/packages/22/ba/73b6ca70796e71f83ab222690e35a79612f0117e5aaf167151b7d46f5f2c/scikit_image-0.26.0-cp313-cp313t-win_arm64.whl", hash = "sha256:27d58bc8b2acd351f972c6508c1b557cfed80299826080a4d803dd29c51b707e", size = 11647755, upload-time = "2025-12-20T17:11:45.279Z" }, + { url = "https://files.pythonhosted.org/packages/51/44/6b744f92b37ae2833fd423cce8f806d2368859ec325a699dc30389e090b9/scikit_image-0.26.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:63af3d3a26125f796f01052052f86806da5b5e54c6abef152edb752683075a9c", size = 12365810, upload-time = "2025-12-20T17:11:47.357Z" }, + { url = "https://files.pythonhosted.org/packages/40/f5/83590d9355191f86ac663420fec741b82cc547a4afe7c4c1d986bf46e4db/scikit_image-0.26.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:ce00600cd70d4562ed59f80523e18cdcc1fae0e10676498a01f73c255774aefd", size = 12075717, upload-time = "2025-12-20T17:11:49.483Z" }, + { url = "https://files.pythonhosted.org/packages/72/48/253e7cf5aee6190459fe136c614e2cbccc562deceb4af96e0863f1b8ee29/scikit_image-0.26.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6381edf972b32e4f54085449afde64365a57316637496c1325a736987083e2ab", size = 13161520, upload-time = "2025-12-20T17:11:51.58Z" }, + { url = "https://files.pythonhosted.org/packages/73/c3/cec6a3cbaadfdcc02bd6ff02f3abfe09eaa7f4d4e0a525a1e3a3f4bce49c/scikit_image-0.26.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c6624a76c6085218248154cc7e1500e6b488edcd9499004dd0d35040607d7505", size = 13684340, upload-time = "2025-12-20T17:11:53.708Z" }, + { url = "https://files.pythonhosted.org/packages/d4/0d/39a776f675d24164b3a267aa0db9f677a4cb20127660d8bf4fd7fef66817/scikit_image-0.26.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:f775f0e420faac9c2aa6757135f4eb468fb7b70e0b67fa77a5e79be3c30ee331", size = 14203839, upload-time = "2025-12-20T17:11:55.89Z" }, + { url = "https://files.pythonhosted.org/packages/ee/25/2514df226bbcedfe9b2caafa1ba7bc87231a0c339066981b182b08340e06/scikit_image-0.26.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:ede4d6d255cc5da9faeb2f9ba7fedbc990abbc652db429f40a16b22e770bb578", size = 14770021, upload-time = "2025-12-20T17:11:58.014Z" }, + { url = "https://files.pythonhosted.org/packages/8d/5b/0671dc91c0c79340c3fe202f0549c7d3681eb7640fe34ab68a5f090a7c7f/scikit_image-0.26.0-cp314-cp314-win_amd64.whl", hash = "sha256:0660b83968c15293fd9135e8d860053ee19500d52bf55ca4fb09de595a1af650", size = 12023490, upload-time = "2025-12-20T17:12:00.013Z" }, + { url = "https://files.pythonhosted.org/packages/65/08/7c4cb59f91721f3de07719085212a0b3962e3e3f2d1818cbac4eeb1ea53e/scikit_image-0.26.0-cp314-cp314-win_arm64.whl", hash = "sha256:b8d14d3181c21c11170477a42542c1addc7072a90b986675a71266ad17abc37f", size = 11473782, upload-time = "2025-12-20T17:12:01.983Z" }, + { url = "https://files.pythonhosted.org/packages/49/41/65c4258137acef3d73cb561ac55512eacd7b30bb4f4a11474cad526bc5db/scikit_image-0.26.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:cde0bbd57e6795eba83cb10f71a677f7239271121dc950bc060482834a668ad1", size = 12686060, upload-time = "2025-12-20T17:12:03.886Z" }, + { url = "https://files.pythonhosted.org/packages/e7/32/76971f8727b87f1420a962406388a50e26667c31756126444baf6668f559/scikit_image-0.26.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:163e9afb5b879562b9aeda0dd45208a35316f26cc7a3aed54fd601604e5cf46f", size = 12422628, upload-time = "2025-12-20T17:12:05.921Z" }, + { url = "https://files.pythonhosted.org/packages/37/0d/996febd39f757c40ee7b01cdb861867327e5c8e5f595a634e8201462d958/scikit_image-0.26.0-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:724f79fd9b6cb6f4a37864fe09f81f9f5d5b9646b6868109e1b100d1a7019e59", size = 12962369, upload-time = "2025-12-20T17:12:07.912Z" }, + { url = "https://files.pythonhosted.org/packages/48/b4/612d354f946c9600e7dea012723c11d47e8d455384e530f6daaaeb9bf62c/scikit_image-0.26.0-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:3268f13310e6857508bd87202620df996199a016a1d281b309441d227c822394", size = 13272431, upload-time = "2025-12-20T17:12:10.255Z" }, + { url = "https://files.pythonhosted.org/packages/0a/6e/26c00b466e06055a086de2c6e2145fe189ccdc9a1d11ccc7de020f2591ad/scikit_image-0.26.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:fac96a1f9b06cd771cbbb3cd96c5332f36d4efd839b1d8b053f79e5887acde62", size = 14016362, upload-time = "2025-12-20T17:12:12.793Z" }, + { url = "https://files.pythonhosted.org/packages/47/88/00a90402e1775634043c2a0af8a3c76ad450866d9fa444efcc43b553ba2d/scikit_image-0.26.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:2c1e7bd342f43e7a97e571b3f03ba4c1293ea1a35c3f13f41efdc8a81c1dc8f2", size = 14364151, upload-time = "2025-12-20T17:12:14.909Z" }, + { url = "https://files.pythonhosted.org/packages/da/ca/918d8d306bd43beacff3b835c6d96fac0ae64c0857092f068b88db531a7c/scikit_image-0.26.0-cp314-cp314t-win_amd64.whl", hash = "sha256:b702c3bb115e1dcf4abf5297429b5c90f2189655888cbed14921f3d26f81d3a4", size = 12413484, upload-time = "2025-12-20T17:12:17.046Z" }, + { url = "https://files.pythonhosted.org/packages/dc/cd/4da01329b5a8d47ff7ec3c99a2b02465a8017b186027590dc7425cee0b56/scikit_image-0.26.0-cp314-cp314t-win_arm64.whl", hash = "sha256:0608aa4a9ec39e0843de10d60edb2785a30c1c47819b67866dd223ebd149acaf", size = 11769501, upload-time = "2025-12-20T17:12:19.339Z" }, +] + +[[package]] +name = "scipy" +version = "1.17.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/7a/97/5a3609c4f8d58b039179648e62dd220f89864f56f7357f5d4f45c29eb2cc/scipy-1.17.1.tar.gz", hash = "sha256:95d8e012d8cb8816c226aef832200b1d45109ed4464303e997c5b13122b297c0", size = 30573822, upload-time = "2026-02-23T00:26:24.851Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/76/27/07ee1b57b65e92645f219b37148a7e7928b82e2b5dbeccecb4dff7c64f0b/scipy-1.17.1-cp313-cp313-macosx_10_14_x86_64.whl", hash = "sha256:5e3c5c011904115f88a39308379c17f91546f77c1667cea98739fe0fccea804c", size = 31590199, upload-time = "2026-02-23T00:19:17.192Z" }, + { url = "https://files.pythonhosted.org/packages/ec/ae/db19f8ab842e9b724bf5dbb7db29302a91f1e55bc4d04b1025d6d605a2c5/scipy-1.17.1-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:6fac755ca3d2c3edcb22f479fceaa241704111414831ddd3bc6056e18516892f", size = 28154001, upload-time = "2026-02-23T00:19:22.241Z" }, + { url = "https://files.pythonhosted.org/packages/5b/58/3ce96251560107b381cbd6e8413c483bbb1228a6b919fa8652b0d4090e7f/scipy-1.17.1-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:7ff200bf9d24f2e4d5dc6ee8c3ac64d739d3a89e2326ba68aaf6c4a2b838fd7d", size = 20325719, upload-time = "2026-02-23T00:19:26.329Z" }, + { url = "https://files.pythonhosted.org/packages/b2/83/15087d945e0e4d48ce2377498abf5ad171ae013232ae31d06f336e64c999/scipy-1.17.1-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:4b400bdc6f79fa02a4d86640310dde87a21fba0c979efff5248908c6f15fad1b", size = 22683595, upload-time = "2026-02-23T00:19:30.304Z" }, + { url = "https://files.pythonhosted.org/packages/b4/e0/e58fbde4a1a594c8be8114eb4aac1a55bcd6587047efc18a61eb1f5c0d30/scipy-1.17.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:2b64ca7d4aee0102a97f3ba22124052b4bd2152522355073580bf4845e2550b6", size = 32896429, upload-time = "2026-02-23T00:19:35.536Z" }, + { url = "https://files.pythonhosted.org/packages/f5/5f/f17563f28ff03c7b6799c50d01d5d856a1d55f2676f537ca8d28c7f627cd/scipy-1.17.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:581b2264fc0aa555f3f435a5944da7504ea3a065d7029ad60e7c3d1ae09c5464", size = 35203952, upload-time = "2026-02-23T00:19:42.259Z" }, + { url = "https://files.pythonhosted.org/packages/8d/a5/9afd17de24f657fdfe4df9a3f1ea049b39aef7c06000c13db1530d81ccca/scipy-1.17.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:beeda3d4ae615106d7094f7e7cef6218392e4465cc95d25f900bebabfded0950", size = 34979063, upload-time = "2026-02-23T00:19:47.547Z" }, + { url = "https://files.pythonhosted.org/packages/8b/13/88b1d2384b424bf7c924f2038c1c409f8d88bb2a8d49d097861dd64a57b2/scipy-1.17.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6609bc224e9568f65064cfa72edc0f24ee6655b47575954ec6339534b2798369", size = 37598449, upload-time = "2026-02-23T00:19:53.238Z" }, + { url = "https://files.pythonhosted.org/packages/35/e5/d6d0e51fc888f692a35134336866341c08655d92614f492c6860dc45bb2c/scipy-1.17.1-cp313-cp313-win_amd64.whl", hash = "sha256:37425bc9175607b0268f493d79a292c39f9d001a357bebb6b88fdfaff13f6448", size = 36510943, upload-time = "2026-02-23T00:20:50.89Z" }, + { url = "https://files.pythonhosted.org/packages/2a/fd/3be73c564e2a01e690e19cc618811540ba5354c67c8680dce3281123fb79/scipy-1.17.1-cp313-cp313-win_arm64.whl", hash = "sha256:5cf36e801231b6a2059bf354720274b7558746f3b1a4efb43fcf557ccd484a87", size = 24545621, upload-time = "2026-02-23T00:20:55.871Z" }, + { url = "https://files.pythonhosted.org/packages/6f/6b/17787db8b8114933a66f9dcc479a8272e4b4da75fe03b0c282f7b0ade8cd/scipy-1.17.1-cp313-cp313t-macosx_10_14_x86_64.whl", hash = "sha256:d59c30000a16d8edc7e64152e30220bfbd724c9bbb08368c054e24c651314f0a", size = 31936708, upload-time = "2026-02-23T00:19:58.694Z" }, + { url = "https://files.pythonhosted.org/packages/38/2e/524405c2b6392765ab1e2b722a41d5da33dc5c7b7278184a8ad29b6cb206/scipy-1.17.1-cp313-cp313t-macosx_12_0_arm64.whl", hash = "sha256:010f4333c96c9bb1a4516269e33cb5917b08ef2166d5556ca2fd9f082a9e6ea0", size = 28570135, upload-time = "2026-02-23T00:20:03.934Z" }, + { url = "https://files.pythonhosted.org/packages/fd/c3/5bd7199f4ea8556c0c8e39f04ccb014ac37d1468e6cfa6a95c6b3562b76e/scipy-1.17.1-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:2ceb2d3e01c5f1d83c4189737a42d9cb2fc38a6eeed225e7515eef71ad301dce", size = 20741977, upload-time = "2026-02-23T00:20:07.935Z" }, + { url = "https://files.pythonhosted.org/packages/d9/b8/8ccd9b766ad14c78386599708eb745f6b44f08400a5fd0ade7cf89b6fc93/scipy-1.17.1-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:844e165636711ef41f80b4103ed234181646b98a53c8f05da12ca5ca289134f6", size = 23029601, upload-time = "2026-02-23T00:20:12.161Z" }, + { url = "https://files.pythonhosted.org/packages/6d/a0/3cb6f4d2fb3e17428ad2880333cac878909ad1a89f678527b5328b93c1d4/scipy-1.17.1-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:158dd96d2207e21c966063e1635b1063cd7787b627b6f07305315dd73d9c679e", size = 33019667, upload-time = "2026-02-23T00:20:17.208Z" }, + { url = "https://files.pythonhosted.org/packages/f3/c3/2d834a5ac7bf3a0c806ad1508efc02dda3c8c61472a56132d7894c312dea/scipy-1.17.1-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:74cbb80d93260fe2ffa334efa24cb8f2f0f622a9b9febf8b483c0b865bfb3475", size = 35264159, upload-time = "2026-02-23T00:20:23.087Z" }, + { url = "https://files.pythonhosted.org/packages/4d/77/d3ed4becfdbd217c52062fafe35a72388d1bd82c2d0ba5ca19d6fcc93e11/scipy-1.17.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:dbc12c9f3d185f5c737d801da555fb74b3dcfa1a50b66a1a93e09190f41fab50", size = 35102771, upload-time = "2026-02-23T00:20:28.636Z" }, + { url = "https://files.pythonhosted.org/packages/bd/12/d19da97efde68ca1ee5538bb261d5d2c062f0c055575128f11a2730e3ac1/scipy-1.17.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:94055a11dfebe37c656e70317e1996dc197e1a15bbcc351bcdd4610e128fe1ca", size = 37665910, upload-time = "2026-02-23T00:20:34.743Z" }, + { url = "https://files.pythonhosted.org/packages/06/1c/1172a88d507a4baaf72c5a09bb6c018fe2ae0ab622e5830b703a46cc9e44/scipy-1.17.1-cp313-cp313t-win_amd64.whl", hash = "sha256:e30bdeaa5deed6bc27b4cc490823cd0347d7dae09119b8803ae576ea0ce52e4c", size = 36562980, upload-time = "2026-02-23T00:20:40.575Z" }, + { url = "https://files.pythonhosted.org/packages/70/b0/eb757336e5a76dfa7911f63252e3b7d1de00935d7705cf772db5b45ec238/scipy-1.17.1-cp313-cp313t-win_arm64.whl", hash = "sha256:a720477885a9d2411f94a93d16f9d89bad0f28ca23c3f8daa521e2dcc3f44d49", size = 24856543, upload-time = "2026-02-23T00:20:45.313Z" }, + { url = "https://files.pythonhosted.org/packages/cf/83/333afb452af6f0fd70414dc04f898647ee1423979ce02efa75c3b0f2c28e/scipy-1.17.1-cp314-cp314-macosx_10_14_x86_64.whl", hash = "sha256:a48a72c77a310327f6a3a920092fa2b8fd03d7deaa60f093038f22d98e096717", size = 31584510, upload-time = "2026-02-23T00:21:01.015Z" }, + { url = "https://files.pythonhosted.org/packages/ed/a6/d05a85fd51daeb2e4ea71d102f15b34fedca8e931af02594193ae4fd25f7/scipy-1.17.1-cp314-cp314-macosx_12_0_arm64.whl", hash = "sha256:45abad819184f07240d8a696117a7aacd39787af9e0b719d00285549ed19a1e9", size = 28170131, upload-time = "2026-02-23T00:21:05.888Z" }, + { url = "https://files.pythonhosted.org/packages/db/7b/8624a203326675d7746a254083a187398090a179335b2e4a20e2ddc46e83/scipy-1.17.1-cp314-cp314-macosx_14_0_arm64.whl", hash = "sha256:3fd1fcdab3ea951b610dc4cef356d416d5802991e7e32b5254828d342f7b7e0b", size = 20342032, upload-time = "2026-02-23T00:21:09.904Z" }, + { url = "https://files.pythonhosted.org/packages/c9/35/2c342897c00775d688d8ff3987aced3426858fd89d5a0e26e020b660b301/scipy-1.17.1-cp314-cp314-macosx_14_0_x86_64.whl", hash = "sha256:7bdf2da170b67fdf10bca777614b1c7d96ae3ca5794fd9587dce41eb2966e866", size = 22678766, upload-time = "2026-02-23T00:21:14.313Z" }, + { url = "https://files.pythonhosted.org/packages/ef/f2/7cdb8eb308a1a6ae1e19f945913c82c23c0c442a462a46480ce487fdc0ac/scipy-1.17.1-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:adb2642e060a6549c343603a3851ba76ef0b74cc8c079a9a58121c7ec9fe2350", size = 32957007, upload-time = "2026-02-23T00:21:19.663Z" }, + { url = "https://files.pythonhosted.org/packages/0b/2e/7eea398450457ecb54e18e9d10110993fa65561c4f3add5e8eccd2b9cd41/scipy-1.17.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:eee2cfda04c00a857206a4330f0c5e3e56535494e30ca445eb19ec624ae75118", size = 35221333, upload-time = "2026-02-23T00:21:25.278Z" }, + { url = "https://files.pythonhosted.org/packages/d9/77/5b8509d03b77f093a0d52e606d3c4f79e8b06d1d38c441dacb1e26cacf46/scipy-1.17.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:d2650c1fb97e184d12d8ba010493ee7b322864f7d3d00d3f9bb97d9c21de4068", size = 35042066, upload-time = "2026-02-23T00:21:31.358Z" }, + { url = "https://files.pythonhosted.org/packages/f9/df/18f80fb99df40b4070328d5ae5c596f2f00fffb50167e31439e932f29e7d/scipy-1.17.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:08b900519463543aa604a06bec02461558a6e1cef8fdbb8098f77a48a83c8118", size = 37612763, upload-time = "2026-02-23T00:21:37.247Z" }, + { url = "https://files.pythonhosted.org/packages/4b/39/f0e8ea762a764a9dc52aa7dabcfad51a354819de1f0d4652b6a1122424d6/scipy-1.17.1-cp314-cp314-win_amd64.whl", hash = "sha256:3877ac408e14da24a6196de0ddcace62092bfc12a83823e92e49e40747e52c19", size = 37290984, upload-time = "2026-02-23T00:22:35.023Z" }, + { url = "https://files.pythonhosted.org/packages/7c/56/fe201e3b0f93d1a8bcf75d3379affd228a63d7e2d80ab45467a74b494947/scipy-1.17.1-cp314-cp314-win_arm64.whl", hash = "sha256:f8885db0bc2bffa59d5c1b72fad7a6a92d3e80e7257f967dd81abb553a90d293", size = 25192877, upload-time = "2026-02-23T00:22:39.798Z" }, + { url = "https://files.pythonhosted.org/packages/96/ad/f8c414e121f82e02d76f310f16db9899c4fcde36710329502a6b2a3c0392/scipy-1.17.1-cp314-cp314t-macosx_10_14_x86_64.whl", hash = "sha256:1cc682cea2ae55524432f3cdff9e9a3be743d52a7443d0cba9017c23c87ae2f6", size = 31949750, upload-time = "2026-02-23T00:21:42.289Z" }, + { url = "https://files.pythonhosted.org/packages/7c/b0/c741e8865d61b67c81e255f4f0a832846c064e426636cd7de84e74d209be/scipy-1.17.1-cp314-cp314t-macosx_12_0_arm64.whl", hash = "sha256:2040ad4d1795a0ae89bfc7e8429677f365d45aa9fd5e4587cf1ea737f927b4a1", size = 28585858, upload-time = "2026-02-23T00:21:47.706Z" }, + { url = "https://files.pythonhosted.org/packages/ed/1b/3985219c6177866628fa7c2595bfd23f193ceebbe472c98a08824b9466ff/scipy-1.17.1-cp314-cp314t-macosx_14_0_arm64.whl", hash = "sha256:131f5aaea57602008f9822e2115029b55d4b5f7c070287699fe45c661d051e39", size = 20757723, upload-time = "2026-02-23T00:21:52.039Z" }, + { url = "https://files.pythonhosted.org/packages/c0/19/2a04aa25050d656d6f7b9e7b685cc83d6957fb101665bfd9369ca6534563/scipy-1.17.1-cp314-cp314t-macosx_14_0_x86_64.whl", hash = "sha256:9cdc1a2fcfd5c52cfb3045feb399f7b3ce822abdde3a193a6b9a60b3cb5854ca", size = 23043098, upload-time = "2026-02-23T00:21:56.185Z" }, + { url = "https://files.pythonhosted.org/packages/86/f1/3383beb9b5d0dbddd030335bf8a8b32d4317185efe495374f134d8be6cce/scipy-1.17.1-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6e3dcd57ab780c741fde8dc68619de988b966db759a3c3152e8e9142c26295ad", size = 33030397, upload-time = "2026-02-23T00:22:01.404Z" }, + { url = "https://files.pythonhosted.org/packages/41/68/8f21e8a65a5a03f25a79165ec9d2b28c00e66dc80546cf5eb803aeeff35b/scipy-1.17.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a9956e4d4f4a301ebf6cde39850333a6b6110799d470dbbb1e25326ac447f52a", size = 35281163, upload-time = "2026-02-23T00:22:07.024Z" }, + { url = "https://files.pythonhosted.org/packages/84/8d/c8a5e19479554007a5632ed7529e665c315ae7492b4f946b0deb39870e39/scipy-1.17.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:a4328d245944d09fd639771de275701ccadf5f781ba0ff092ad141e017eccda4", size = 35116291, upload-time = "2026-02-23T00:22:12.585Z" }, + { url = "https://files.pythonhosted.org/packages/52/52/e57eceff0e342a1f50e274264ed47497b59e6a4e3118808ee58ddda7b74a/scipy-1.17.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:a77cbd07b940d326d39a1d1b37817e2ee4d79cb30e7338f3d0cddffae70fcaa2", size = 37682317, upload-time = "2026-02-23T00:22:18.513Z" }, + { url = "https://files.pythonhosted.org/packages/11/2f/b29eafe4a3fbc3d6de9662b36e028d5f039e72d345e05c250e121a230dd4/scipy-1.17.1-cp314-cp314t-win_amd64.whl", hash = "sha256:eb092099205ef62cd1782b006658db09e2fed75bffcae7cc0d44052d8aa0f484", size = 37345327, upload-time = "2026-02-23T00:22:24.442Z" }, + { url = "https://files.pythonhosted.org/packages/07/39/338d9219c4e87f3e708f18857ecd24d22a0c3094752393319553096b98af/scipy-1.17.1-cp314-cp314t-win_arm64.whl", hash = "sha256:200e1050faffacc162be6a486a984a0497866ec54149a01270adc8a59b7c7d21", size = 25489165, upload-time = "2026-02-23T00:22:29.563Z" }, +] + +[[package]] +name = "send2trash" +version = "2.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/c5/f0/184b4b5f8d00f2a92cf96eec8967a3d550b52cf94362dad1100df9e48d57/send2trash-2.1.0.tar.gz", hash = "sha256:1c72b39f09457db3c05ce1d19158c2cbef4c32b8bedd02c155e49282b7ea7459", size = 17255, upload-time = "2026-01-14T06:27:36.056Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1c/78/504fdd027da3b84ff1aecd9f6957e65f35134534ccc6da8628eb71e76d3f/send2trash-2.1.0-py3-none-any.whl", hash = "sha256:0da2f112e6d6bb22de6aa6daa7e144831a4febf2a87261451c4ad849fe9a873c", size = 17610, upload-time = "2026-01-14T06:27:35.218Z" }, +] + +[[package]] +name = "setuptools" +version = "81.0.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0d/1c/73e719955c59b8e424d015ab450f51c0af856ae46ea2da83eba51cc88de1/setuptools-81.0.0.tar.gz", hash = "sha256:487b53915f52501f0a79ccfd0c02c165ffe06631443a886740b91af4b7a5845a", size = 1198299, upload-time = "2026-02-06T21:10:39.601Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e1/e3/c164c88b2e5ce7b24d667b9bd83589cf4f3520d97cad01534cd3c4f55fdb/setuptools-81.0.0-py3-none-any.whl", hash = "sha256:fdd925d5c5d9f62e4b74b30d6dd7828ce236fd6ed998a08d81de62ce5a6310d6", size = 1062021, upload-time = "2026-02-06T21:10:37.175Z" }, +] + +[[package]] +name = "shellingham" +version = "1.5.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/58/15/8b3609fd3830ef7b27b655beb4b4e9c62313a4e8da8c676e142cc210d58e/shellingham-1.5.4.tar.gz", hash = "sha256:8dbca0739d487e5bd35ab3ca4b36e11c4078f3a234bfce294b0a0291363404de", size = 10310, upload-time = "2023-10-24T04:13:40.426Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e0/f9/0595336914c5619e5f28a1fb793285925a8cd4b432c9da0a987836c7f822/shellingham-1.5.4-py2.py3-none-any.whl", hash = "sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686", size = 9755, upload-time = "2023-10-24T04:13:38.866Z" }, +] + +[[package]] +name = "six" +version = "1.17.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81", size = 34031, upload-time = "2024-12-04T17:35:28.174Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", size = 11050, upload-time = "2024-12-04T17:35:26.475Z" }, +] + +[[package]] +name = "soupsieve" +version = "2.8.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/47/2c/0a5f6f8ee0d5589e48c7640213ed5175d52cf540a06725b628cc1a45d6ce/soupsieve-2.8.4.tar.gz", hash = "sha256:e121fd02e975c695e4e9e8774a5ee35d74714b59307868dcc5319ad2d9e3328e", size = 121110, upload-time = "2026-05-24T13:55:57.154Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5e/f5/0c41cb68dcae6b7de4fac4188a3a9589e21fb31df21ea3a2e888db95e6c9/soupsieve-2.8.4-py3-none-any.whl", hash = "sha256:e7e6b0769c8f51ed59acab6e994b00621096cfb1c640a7509295987388fbaf65", size = 37304, upload-time = "2026-05-24T13:55:55.406Z" }, +] + +[[package]] +name = "spike-image-to-3d" +version = "0.1.0" +source = { virtual = "." } +dependencies = [ + { name = "accelerate" }, + { name = "diffusers" }, + { name = "einops" }, + { name = "huggingface-hub" }, + { name = "jupyter" }, + { name = "jupyter-collaboration" }, + { name = "jupyter-mcp-server" }, + { name = "jupyterlab" }, + { name = "matplotlib" }, + { name = "numpy" }, + { name = "omegaconf" }, + { name = "pandas" }, + { name = "pillow" }, + { name = "rembg", extra = ["cpu"] }, + { name = "safetensors" }, + { name = "torch" }, + { name = "torchvision" }, + { name = "transformers" }, + { name = "trimesh" }, + { name = "xatlas" }, +] + +[package.metadata] +requires-dist = [ + { name = "accelerate", specifier = ">=1.13.0" }, + { name = "diffusers", specifier = ">=0.37.1" }, + { name = "einops", specifier = ">=0.8.2" }, + { name = "huggingface-hub", specifier = "<1" }, + { name = "jupyter", specifier = ">=1.1.1" }, + { name = "jupyter-collaboration", specifier = ">=4.4.0" }, + { name = "jupyter-mcp-server", specifier = ">=1.0.2" }, + { name = "jupyterlab", specifier = ">=4.5.7" }, + { name = "matplotlib", specifier = ">=3.10.9" }, + { name = "numpy", specifier = ">=2.4.6" }, + { name = "omegaconf", specifier = ">=2.3.0" }, + { name = "pandas", specifier = ">=3.0.3" }, + { name = "pillow", specifier = ">=12.2.0" }, + { name = "rembg", extras = ["cpu"], specifier = ">=2.0.75" }, + { name = "safetensors", specifier = ">=0.7.0" }, + { name = "torch", specifier = ">=2.12.0" }, + { name = "torchvision", specifier = ">=0.27.0" }, + { name = "transformers", specifier = "==4.46.3" }, + { name = "trimesh", specifier = ">=4.12.2" }, + { name = "xatlas", specifier = ">=0.0.11" }, +] + +[[package]] +name = "sqlite-anyio" +version = "0.2.8" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/20/a3/7830c95b37f1268dbb47e559d1f1ae027f3a4c36b1f7fc1b2dc5de1c5073/sqlite_anyio-0.2.8.tar.gz", hash = "sha256:d68b51a18c01a7dfa9cedbc319871ce77ab3ed0822518fb32810bb465b52d761", size = 3271, upload-time = "2026-03-02T10:37:43.466Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7e/aa/182981b92659df83c3eb7d6f8fb0874984d72ad688fa4054cb96bc044bb0/sqlite_anyio-0.2.8-py3-none-any.whl", hash = "sha256:bbdfefb144aed2633d2618ee1508edd3abe67a00389379360949da4671640d86", size = 4041, upload-time = "2026-03-02T10:37:42.246Z" }, +] + +[[package]] +name = "sse-starlette" +version = "3.4.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, + { name = "starlette" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f7/2b/58abc2d1fd397e7dde08e947e05c884d8ef2f78d5e2588c17a12d42d6994/sse_starlette-3.4.4.tar.gz", hash = "sha256:07e0fa0460138baf25cdd5fb28683472c3995dc1642225191b3832d62526bcb0", size = 31819, upload-time = "2026-05-12T17:37:17.019Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/dc/67/805710444ea8cc75fbf70b920ed431a560c4bf9c57f7d5a3117213189399/sse_starlette-3.4.4-py3-none-any.whl", hash = "sha256:3f4dd50d8aed2771a091f3a83000323fc3844541c16b4fe585ae2420cc6df973", size = 16514, upload-time = "2026-05-12T17:37:15.601Z" }, +] + +[[package]] +name = "stack-data" +version = "0.6.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "asttokens" }, + { name = "executing" }, + { name = "pure-eval" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/28/e3/55dcc2cfbc3ca9c29519eb6884dd1415ecb53b0e934862d3559ddcb7e20b/stack_data-0.6.3.tar.gz", hash = "sha256:836a778de4fec4dcd1dcd89ed8abff8a221f58308462e1c4aa2a3cf30148f0b9", size = 44707, upload-time = "2023-09-30T13:58:05.479Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl", hash = "sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695", size = 24521, upload-time = "2023-09-30T13:58:03.53Z" }, +] + +[[package]] +name = "starlette" +version = "1.1.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "anyio" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/95/66/4d20cdf39a8d6a51e663b7038e3b828ff211d3891a43a713fe7e4643f3a8/starlette-1.1.0.tar.gz", hash = "sha256:e83c7fe0ddecd8719c5b840080325aec0260acec86e9832899e377b91d65e90f", size = 2660060, upload-time = "2026-05-23T16:55:41.376Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/93/79/920b8e0a8b20f793e8d64855095cb8febabf6175b8550b6f7a547d813891/starlette-1.1.0-py3-none-any.whl", hash = "sha256:7f0dfd38e428aad5cb6f9f667f0ca1d2d8ca3f3385dccac8305f79ec98458382", size = 72899, upload-time = "2026-05-23T16:55:39.201Z" }, +] + +[[package]] +name = "sympy" +version = "1.14.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "mpmath" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/83/d3/803453b36afefb7c2bb238361cd4ae6125a569b4db67cd9e79846ba2d68c/sympy-1.14.0.tar.gz", hash = "sha256:d3d3fe8df1e5a0b42f0e7bdf50541697dbe7d23746e894990c030e2b05e72517", size = 7793921, upload-time = "2025-04-27T18:05:01.611Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl", hash = "sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5", size = 6299353, upload-time = "2025-04-27T18:04:59.103Z" }, +] + +[[package]] +name = "terminado" +version = "0.18.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "ptyprocess", marker = "os_name != 'nt'" }, + { name = "pywinpty", marker = "os_name == 'nt'" }, + { name = "tornado" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/8a/11/965c6fd8e5cc254f1fe142d547387da17a8ebfd75a3455f637c663fb38a0/terminado-0.18.1.tar.gz", hash = "sha256:de09f2c4b85de4765f7714688fff57d3e75bad1f909b589fde880460c753fd2e", size = 32701, upload-time = "2024-03-12T14:34:39.026Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/6a/9e/2064975477fdc887e47ad42157e214526dcad8f317a948dee17e1659a62f/terminado-0.18.1-py3-none-any.whl", hash = "sha256:a4468e1b37bb318f8a86514f65814e1afc977cf29b3992a4500d9dd305dcceb0", size = 14154, upload-time = "2024-03-12T14:34:36.569Z" }, +] + +[[package]] +name = "tifffile" +version = "2026.5.15" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/40/66/0aef917d525767a40edebe088f8ed6a4417e6eb489c58f6805bfa872636b/tifffile-2026.5.15.tar.gz", hash = "sha256:ee4f3e07ee0d8ff4745a8c735ac2b72caa3173c7d6059b00fdc3ff492a0b635b", size = 429998, upload-time = "2026-05-15T20:04:55.896Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1f/6e/7d8850ff112f8f80d394ca45e89b975a3a43559d47af3137b767669b3294/tifffile-2026.5.15-py3-none-any.whl", hash = "sha256:6715515a53cabc0cefc5c9f13a0ae2c250e63e2ca784ce02d0b6c333810c2a17", size = 266665, upload-time = "2026-05-15T20:04:54.227Z" }, +] + +[[package]] +name = "tinycss2" +version = "1.4.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "webencodings" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/7a/fd/7a5ee21fd08ff70d3d33a5781c255cbe779659bd03278feb98b19ee550f4/tinycss2-1.4.0.tar.gz", hash = "sha256:10c0972f6fc0fbee87c3edb76549357415e94548c1ae10ebccdea16fb404a9b7", size = 87085, upload-time = "2024-10-24T14:58:29.895Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e6/34/ebdc18bae6aa14fbee1a08b63c015c72b64868ff7dae68808ab500c492e2/tinycss2-1.4.0-py3-none-any.whl", hash = "sha256:3a49cf47b7675da0b15d0c6e1df8df4ebd96e9394bb905a5775adb0d884c5289", size = 26610, upload-time = "2024-10-24T14:58:28.029Z" }, +] + +[[package]] +name = "tokenizers" +version = "0.20.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "huggingface-hub" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/da/25/b1681c1c30ea3ea6e584ae3fffd552430b12faa599b558c4c4783f56d7ff/tokenizers-0.20.3.tar.gz", hash = "sha256:2278b34c5d0dd78e087e1ca7f9b1dcbf129d80211afa645f214bd6e051037539", size = 340513, upload-time = "2024-11-05T17:34:10.403Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/07/19/36e9eaafb229616cb8502b42030fa7fe347550e76cb618de71b498fc3222/tokenizers-0.20.3-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:e0b630e0b536ef0e3c8b42c685c1bc93bd19e98c0f1543db52911f8ede42cf84", size = 2666813, upload-time = "2024-11-05T17:31:32.783Z" }, + { url = "https://files.pythonhosted.org/packages/b9/c7/e2ce1d4f756c8a62ef93fdb4df877c2185339b6d63667b015bf70ea9d34b/tokenizers-0.20.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a02d160d2b19bcbfdf28bd9a4bf11be4cb97d0499c000d95d4c4b1a4312740b6", size = 2555354, upload-time = "2024-11-05T17:31:34.208Z" }, + { url = "https://files.pythonhosted.org/packages/7c/cf/5309c2d173a6a67f9ec8697d8e710ea32418de6fd8541778032c202a1c3e/tokenizers-0.20.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0e3d80d89b068bc30034034b5319218c7c0a91b00af19679833f55f3becb6945", size = 2897745, upload-time = "2024-11-05T17:31:35.733Z" }, + { url = "https://files.pythonhosted.org/packages/2c/e5/af3078e32f225e680e69d61f78855880edb8d53f5850a1834d519b2b103f/tokenizers-0.20.3-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:174a54910bed1b089226512b4458ea60d6d6fd93060254734d3bc3540953c51c", size = 2794385, upload-time = "2024-11-05T17:31:37.497Z" }, + { url = "https://files.pythonhosted.org/packages/0b/a7/bc421fe46650cc4eb4a913a236b88c243204f32c7480684d2f138925899e/tokenizers-0.20.3-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:098b8a632b8656aa5802c46689462c5c48f02510f24029d71c208ec2c822e771", size = 3084580, upload-time = "2024-11-05T17:31:39.456Z" }, + { url = "https://files.pythonhosted.org/packages/c6/22/97e1e95ee81f75922c9f569c23cb2b1fdc7f5a7a29c4c9fae17e63f751a6/tokenizers-0.20.3-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:78c8c143e3ae41e718588281eb3e212c2b31623c9d6d40410ec464d7d6221fb5", size = 3093581, upload-time = "2024-11-05T17:31:41.224Z" }, + { url = "https://files.pythonhosted.org/packages/d5/14/f0df0ee3b9e516121e23c0099bccd7b9f086ba9150021a750e99b16ce56f/tokenizers-0.20.3-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2b26b0aadb18cd8701077362ba359a06683662d5cafe3e8e8aba10eb05c037f1", size = 3385934, upload-time = "2024-11-05T17:31:43.811Z" }, + { url = "https://files.pythonhosted.org/packages/66/52/7a171bd4929e3ffe61a29b4340fe5b73484709f92a8162a18946e124c34c/tokenizers-0.20.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:07d7851a72717321022f3774e84aa9d595a041d643fafa2e87fbc9b18711dac0", size = 2997311, upload-time = "2024-11-05T17:31:46.224Z" }, + { url = "https://files.pythonhosted.org/packages/7c/64/f1993bb8ebf775d56875ca0d50a50f2648bfbbb143da92fe2e6ceeb4abd5/tokenizers-0.20.3-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:bd44e48a430ada902c6266a8245f5036c4fe744fcb51f699999fbe82aa438797", size = 8988601, upload-time = "2024-11-05T17:31:47.907Z" }, + { url = "https://files.pythonhosted.org/packages/d6/3f/49fa63422159bbc2f2a4ac5bfc597d04d4ec0ad3d2ef46649b5e9a340e37/tokenizers-0.20.3-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:a4c186bb006ccbe1f5cc4e0380d1ce7806f5955c244074fd96abc55e27b77f01", size = 9303950, upload-time = "2024-11-05T17:31:50.674Z" }, + { url = "https://files.pythonhosted.org/packages/66/11/79d91aeb2817ad1993ef61c690afe73e6dbedbfb21918b302ef5a2ba9bfb/tokenizers-0.20.3-cp313-none-win32.whl", hash = "sha256:6e19e0f1d854d6ab7ea0c743d06e764d1d9a546932be0a67f33087645f00fe13", size = 2188941, upload-time = "2024-11-05T17:31:53.334Z" }, + { url = "https://files.pythonhosted.org/packages/c2/ff/ac8410f868fb8b14b5e619efa304aa119cb8a40bd7df29fc81a898e64f99/tokenizers-0.20.3-cp313-none-win_amd64.whl", hash = "sha256:d50ede425c7e60966a9680d41b58b3a0950afa1bb570488e2972fa61662c4273", size = 2380269, upload-time = "2024-11-05T17:31:54.796Z" }, +] + +[[package]] +name = "torch" +version = "2.12.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "cuda-bindings", marker = "sys_platform == 'linux'" }, + { name = "cuda-toolkit", extra = ["cudart", "cufft", "cufile", "cupti", "curand", "cusolver", "cusparse", "nvjitlink", "nvrtc", "nvtx"], marker = "sys_platform == 'linux'" }, + { name = "filelock" }, + { name = "fsspec" }, + { name = "jinja2" }, + { name = "networkx" }, + { name = "nvidia-cublas", marker = "sys_platform == 'linux'" }, + { name = "nvidia-cudnn-cu13", marker = "sys_platform == 'linux'" }, + { name = "nvidia-cusparselt-cu13", marker = "sys_platform == 'linux'" }, + { name = "nvidia-nccl-cu13", marker = "sys_platform == 'linux'" }, + { name = "nvidia-nvshmem-cu13", marker = "sys_platform == 'linux'" }, + { name = "setuptools" }, + { name = "sympy" }, + { name = "triton", marker = "sys_platform == 'linux'" }, + { name = "typing-extensions" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/86/ca/01896c80ba921676aa45886b2c5b8d774912de2a1f719de48169c6f755cd/torch-2.12.0-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:90dd587a5f61bfe1307148b581e2084fc5bc4a06e2b90a20e9a36b81087ff16b", size = 88009511, upload-time = "2026-05-13T14:54:47.411Z" }, + { url = "https://files.pythonhosted.org/packages/a5/04/52bdaf4787eab6ac7d7f5851dff934e4def0bc8ead9c8fd2b69b3e529699/torch-2.12.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:864392c73b7654f4d2b3ae712f607937d0dbb1101c4555fbb41848106b297f39", size = 426383231, upload-time = "2026-05-13T14:53:32.129Z" }, + { url = "https://files.pythonhosted.org/packages/49/8a/94bdecd13f5aaa90d45920b89789d9fe7c6f4af8c3cdd7ce01fcb59908fc/torch-2.12.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:5d6b560dfa7d56291c07d615c3bb73e8d9943d9b6d87f76cd0d9d570c4797fa6", size = 532269288, upload-time = "2026-05-13T14:53:49.423Z" }, + { url = "https://files.pythonhosted.org/packages/3e/2f/bdbaaa267de519ef1b73054bf590d8c93c37a266c9a4e24a01bd38b6918f/torch-2.12.0-cp313-cp313-win_amd64.whl", hash = "sha256:3fee918902090ade827643e758e98363278815de583c75d111fdd665ebffde9f", size = 122987706, upload-time = "2026-05-13T14:54:00.335Z" }, + { url = "https://files.pythonhosted.org/packages/9b/ad/e95e822f3538171e22640a7fbe839a1fdb666600bf6487025de2ff03b11a/torch-2.12.0-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:10ee1448a9f304d3b987eb4656f664ba6e4d7b410ca7a5a7c642199777a2cf88", size = 88319556, upload-time = "2026-05-13T14:54:05.574Z" }, + { url = "https://files.pythonhosted.org/packages/b7/07/055d06d985b445d67422d25b033c11cf55bbb81785d4c4e68e28bca5820e/torch-2.12.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:af68dbf403439cae9ceaeaaf92f8352b460787dcd27b92aa05c40dd4a19c0f1e", size = 426397656, upload-time = "2026-05-13T14:52:38.84Z" }, + { url = "https://files.pythonhosted.org/packages/43/94/b0b4fdc3014122e0a7302fb90086d352aa48f2576f0b252561ebb38c01a8/torch-2.12.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:a6a2eebb237d3b1d9ad3b378e86d9b9e0782afdea8b1e0eba6a13646b9b49c07", size = 532183124, upload-time = "2026-05-13T14:53:16.178Z" }, + { url = "https://files.pythonhosted.org/packages/d8/c8/052405e6ad05d3237bfe5a4df78f917773956f8e17813a2d44c059068b74/torch-2.12.0-cp313-cp313t-win_amd64.whl", hash = "sha256:2140e373e9a51a3e22ef62e8d14366d0b470d18f0adf19fdc757368077133a34", size = 123232462, upload-time = "2026-05-13T14:52:27.26Z" }, + { url = "https://files.pythonhosted.org/packages/67/dc/ac069f8d6e8be701535921141055293b0d4819d3d7f224a4612cf157c7f9/torch-2.12.0-cp314-cp314-macosx_14_0_arm64.whl", hash = "sha256:f7dfae4a519197dfa050e98d8e36378a0fb5899625a875c2b54445005a2e404e", size = 88027282, upload-time = "2026-05-13T14:53:05.258Z" }, + { url = "https://files.pythonhosted.org/packages/33/c3/1c1eb00e34555b536dddf792676026a988d710ed36981aa00499b36b0620/torch-2.12.0-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:891c769072637c74e9a5a77a3bc782894696d8ffec83b938df8536dee7f0ba78", size = 426386961, upload-time = "2026-05-13T14:51:28.406Z" }, + { url = "https://files.pythonhosted.org/packages/cd/d4/7e730dba0c7032a4154dc9056b76cf9625515e030e269cfbf8098fcfee7d/torch-2.12.0-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:e2ad3eb85d39c3cab62dfa93ed5a73516e6a53c6713cb97d004004fe089f0f1f", size = 532272265, upload-time = "2026-05-13T14:51:59.308Z" }, + { url = "https://files.pythonhosted.org/packages/f1/b4/92c80d1bbfee1c0036c06d1d2155a3065bd2423134c83bf8a47e65cd6b9b/torch-2.12.0-cp314-cp314-win_amd64.whl", hash = "sha256:c66696857e987efb8bc1777a37357ec4f60ab5e8af6250b83d6034437fa2d8f3", size = 122987138, upload-time = "2026-05-13T14:51:45.942Z" }, + { url = "https://files.pythonhosted.org/packages/7b/78/2e12b37ce50a19a037d7bc62d652a5a8f27385a7b05859d6bc9204f20cfe/torch-2.12.0-cp314-cp314t-macosx_14_0_arm64.whl", hash = "sha256:b4556715c8572758625d62b6e0ae3b1f76c440221913a6fb5e100f321fb4fb02", size = 88320100, upload-time = "2026-05-13T14:51:39.955Z" }, + { url = "https://files.pythonhosted.org/packages/56/5e/83c450ec7b0bb40a7b74611c1b5440f9260e33c54c90d556fd4a1f0fd955/torch-2.12.0-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:a43ac605a5e13116c72b64c359644cce0229f213dde48d2ae0ae5eb5becf7feb", size = 426391871, upload-time = "2026-05-13T14:52:14.989Z" }, + { url = "https://files.pythonhosted.org/packages/c9/e9/1a0b575d98d0afedd8f157d23fa3d2759421483660448e60d0a4b10b6daa/torch-2.12.0-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:6a7512adfdd7f6732e40de1c620831e3c75b39b98cef60b11d0c5f0a76473ec5", size = 532192241, upload-time = "2026-05-13T14:51:07.795Z" }, + { url = "https://files.pythonhosted.org/packages/88/21/afadd25ecd81b3cea1e11c73cf1ab41a983a50271548c3ec7ec3b9efc3e9/torch-2.12.0-cp314-cp314t-win_amd64.whl", hash = "sha256:5f96b63f8287f66a005dd1b5a6abba2920f11156c5e5c4d815f3e2050fd1aa16", size = 123231092, upload-time = "2026-05-13T14:51:18.854Z" }, +] + +[[package]] +name = "torchvision" +version = "0.27.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, + { name = "pillow" }, + { name = "torch" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/d8/ae/36547812e6e047c1d80bcacd1b17a340612b08a6e876e0aabf3d0b9228b0/torchvision-0.27.0-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:41d6dae73e1af09fa82ded597ae57f2a2314285acde54b25890a8f8e51b999d7", size = 1758826, upload-time = "2026-05-13T14:57:05.262Z" }, + { url = "https://files.pythonhosted.org/packages/ae/30/32c4ea842738728a14e3df8c576c62dedcf5ae5cb6a5c984c6429ebe7524/torchvision-0.27.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:70f071c6f74b60d5fe8851636d8d4cd5f4fa29d57fd9348a87a6f17b990b95ba", size = 7789501, upload-time = "2026-05-13T14:56:57.786Z" }, + { url = "https://files.pythonhosted.org/packages/f6/24/4d0d48684251bd0673f87d633d5d88ab00227983b00591156eed2f86c8d5/torchvision-0.27.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:aaafa6962c9d91f42503de1957d6fa349907d028c06f335bd95da7a5bc57147d", size = 7579868, upload-time = "2026-05-13T14:56:41.618Z" }, + { url = "https://files.pythonhosted.org/packages/ba/da/e6edd051d2ba25adf23b120fa97f458dff888d098c51e84724f17d2d1470/torchvision-0.27.0-cp313-cp313-win_amd64.whl", hash = "sha256:aee384a2782c89517c4ab9061d2720ba59fd2ffe5ef89d0a149cc2d43abdf521", size = 4092700, upload-time = "2026-05-13T14:57:09.729Z" }, + { url = "https://files.pythonhosted.org/packages/fa/23/95dfa40431360f42ca949bf861434bed51164adfa8fb9801e05bf3194f50/torchvision-0.27.0-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:c5121f1b9ab09a7f73e837871deb8321551f7eaeb19d87aa00de9191968eae44", size = 1845008, upload-time = "2026-05-13T14:57:03.768Z" }, + { url = "https://files.pythonhosted.org/packages/23/b9/9dbdf76b2b49a75ba8088df6f7c755bdb520afb6c6dbac0102b46cde5e99/torchvision-0.27.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:1c01f0d1091ae22b9dfc082b0a0fe5faaf053686a29b4fb082ba7691375c73cf", size = 7791430, upload-time = "2026-05-13T14:56:56.206Z" }, + { url = "https://files.pythonhosted.org/packages/5c/6a/e4a16cf2f3310c2ea7760dc5d9054496844391e0f4c1fae87fefac2f3d9e/torchvision-0.27.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:dadea3c5ecfd05bbb2a3312ab0374f213c58bf6459cb059122e2f4dfe13d10ed", size = 7668441, upload-time = "2026-05-13T14:57:02.127Z" }, + { url = "https://files.pythonhosted.org/packages/00/70/01b6461117a6a94b5af3f8ee166bb0f045056f3cf187750c110dabfdfffa/torchvision-0.27.0-cp313-cp313t-win_amd64.whl", hash = "sha256:a49e55055a39a8506fe7e59850522cab004efb2c3839f6057658889c1d69c815", size = 4141602, upload-time = "2026-05-13T14:56:53.449Z" }, + { url = "https://files.pythonhosted.org/packages/92/22/c0633677b3b3f3e69554a21ac087bf705f829c40cd5e3783507b8c006681/torchvision-0.27.0-cp314-cp314-macosx_14_0_arm64.whl", hash = "sha256:c1fac0fc2a7adf29481fc1938a0e7845c57ba1147a986784109c4d98f434ea8c", size = 1758818, upload-time = "2026-05-13T14:56:54.988Z" }, + { url = "https://files.pythonhosted.org/packages/48/e8/55f9d9667b56dae470e69e31beac9b00d458ea393feec1aae95cc4f3f1c9/torchvision-0.27.0-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:cbf89764fc76f3f17fbf80c12d5a89c691e91cb9d82c38412aaf0568655ffb19", size = 7789667, upload-time = "2026-05-13T14:56:48.858Z" }, + { url = "https://files.pythonhosted.org/packages/00/bc/6f8681daf3bbc4c315bb0005110f99d28e3ecd675bf9c8f2c0d393fbac7a/torchvision-0.27.0-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:91f61b9865423037c327eb56afa207cc72de874e458c361840db9dcf5ce0c0eb", size = 7579848, upload-time = "2026-05-13T14:56:38.209Z" }, + { url = "https://files.pythonhosted.org/packages/19/6c/8d8020e6bd1e46c53e487c9c4e9457a07f2ee28931028fb5d71e2da40adc/torchvision-0.27.0-cp314-cp314-win_amd64.whl", hash = "sha256:5bb82fc3c55daf1788621e504310b0a286f1069627a8742f692aebb075ef25a7", size = 4119284, upload-time = "2026-05-13T14:56:46.625Z" }, + { url = "https://files.pythonhosted.org/packages/8d/7e/e78c48662a8d551606efdbe11c6b9c1d6d2391b92cd0e4591b9e6a2412b8/torchvision-0.27.0-cp314-cp314t-macosx_14_0_arm64.whl", hash = "sha256:2c4099a15150143b9b034730b404a56d572efe0b79489b4c765d929cb4eac7f3", size = 1758828, upload-time = "2026-05-13T14:56:52.293Z" }, + { url = "https://files.pythonhosted.org/packages/21/dd/d03ee9f9ee7bf11a8c7c776fb8e7fd6102f59c013791a2a4e5175bd6cba7/torchvision-0.27.0-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:b4c6bb0a670dcba017b3643e21902c9b8a1cc1c127d602f1488fa29ec3c6e865", size = 7790618, upload-time = "2026-05-13T14:56:44.721Z" }, + { url = "https://files.pythonhosted.org/packages/39/08/4002336a74742be70728603ec1769feb2b55e0d19c532c9ec9f92008de76/torchvision-0.27.0-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:1c2db4bde82bc48ebff73436a6adf34d4f809448268a70d9a1285f5c8f92313d", size = 7580217, upload-time = "2026-05-13T14:56:43.274Z" }, + { url = "https://files.pythonhosted.org/packages/ed/cb/4dd4783eb3565f526ba6e64b6f6ca26c00eacc924cdfe60455db9d91b84b/torchvision-0.27.0-cp314-cp314t-win_amd64.whl", hash = "sha256:72bf547e58ddb948689734eed6f4b6a2031f979dba4fb08e3690688b392e929f", size = 4226392, upload-time = "2026-05-13T14:56:40.235Z" }, +] + +[[package]] +name = "tornado" +version = "6.5.6" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/50/57/6d7303a77ae439d9189108f76c0c4fd89ee5e2cc8387bffb55232565c4ed/tornado-6.5.6.tar.gz", hash = "sha256:9a365179fe8ff6b8766f602c0f67c185d778193e9bdd828b19f0b6ed7764177d", size = 518139, upload-time = "2026-05-27T15:35:54.646Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1b/0d/b4f481e18c5a51864e6d12b9a05ecf72919696680b747c958c3fc1f4fbae/tornado-6.5.6-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:65fcfaafb079435c2c19dc9e07c0f1cf0fa9051759ed0a7d0a3ba7ea7f64919c", size = 447737, upload-time = "2026-05-27T15:35:38.122Z" }, + { url = "https://files.pythonhosted.org/packages/9e/9c/5430c39fcab1144d35860f457b15e9c08b4bc7ac86764354204e983d6183/tornado-6.5.6-cp39-abi3-macosx_10_9_x86_64.whl", hash = "sha256:38bc01b4acacded2de63ae78023548e41ebe6fbed3ec05a796d7ae3ad893887e", size = 445899, upload-time = "2026-05-27T15:35:40.519Z" }, + { url = "https://files.pythonhosted.org/packages/8b/79/fa7e14a2f939c807a8d30619b4eb604eab219601b78792516ebe22d40cf9/tornado-6.5.6-cp39-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:b942e6a137fda31ff54bf8e6e2c8d1c37f1f50583f3ed53fb840b53b9601d104", size = 448964, upload-time = "2026-05-27T15:35:42.106Z" }, + { url = "https://files.pythonhosted.org/packages/a7/71/bd67d5f5199f937dafe03a49a37989f60f600ff6fef34c79412a829d97bd/tornado-6.5.6-cp39-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8666946e70171b8c3f1fc9b7876fac492e84822c4c7f3746f4e8f8bc9ac92a79", size = 449935, upload-time = "2026-05-27T15:35:43.906Z" }, + { url = "https://files.pythonhosted.org/packages/cc/a4/c24388c9cf5b3c3a513b56a158af9f23092c9a2810d789e294310797df21/tornado-6.5.6-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:1c34cfab7ad6d104f052f55de06d39bbafc5885cfeb4da688803308dbcfa90b7", size = 449767, upload-time = "2026-05-27T15:35:45.793Z" }, + { url = "https://files.pythonhosted.org/packages/a5/eb/6a07ad550c3f7b37244bd0becdf293ec3d3e961783d8b720a97df50de1b2/tornado-6.5.6-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:385f35e4e22fb52551dfcda4cdc8c30c61c2c001aef5ddad99cdfe116952efd3", size = 449174, upload-time = "2026-05-27T15:35:47.485Z" }, + { url = "https://files.pythonhosted.org/packages/bb/84/3469e098dccdb6763130e06aacd786bb4363fca7b590a55c101ddf34ed30/tornado-6.5.6-cp39-abi3-win32.whl", hash = "sha256:db475f1b67b2809b10bb16264829087724ca8d24fe4ed47f7b8675cae453ef86", size = 450230, upload-time = "2026-05-27T15:35:49.322Z" }, + { url = "https://files.pythonhosted.org/packages/d2/3c/273a04e0b9dd9016f1685cca0c1c8795a71ac88a34a8c889a0b443483226/tornado-6.5.6-cp39-abi3-win_amd64.whl", hash = "sha256:6739bf1e8eb09230f1280ddbd3236f0309db70f2c551a8dbc40f62babdf82f79", size = 450667, upload-time = "2026-05-27T15:35:51.194Z" }, + { url = "https://files.pythonhosted.org/packages/02/98/0cffe22a224f60c5fb1e3aa0b76f9da2e1ca78b0e9545e3d077c68ce60a7/tornado-6.5.6-cp39-abi3-win_arm64.whl", hash = "sha256:2543597b24a695d72338a9a77818362d72387c03ae173f1f169eadc5c91466ac", size = 449690, upload-time = "2026-05-27T15:35:52.902Z" }, +] + +[[package]] +name = "tqdm" +version = "4.67.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "colorama", marker = "sys_platform == 'win32'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/09/a9/6ba95a270c6f1fbcd8dac228323f2777d886cb206987444e4bce66338dd4/tqdm-4.67.3.tar.gz", hash = "sha256:7d825f03f89244ef73f1d4ce193cb1774a8179fd96f31d7e1dcde62092b960bb", size = 169598, upload-time = "2026-02-03T17:35:53.048Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/16/e1/3079a9ff9b8e11b846c6ac5c8b5bfb7ff225eee721825310c91b3b50304f/tqdm-4.67.3-py3-none-any.whl", hash = "sha256:ee1e4c0e59148062281c49d80b25b67771a127c85fc9676d3be5f243206826bf", size = 78374, upload-time = "2026-02-03T17:35:50.982Z" }, +] + +[[package]] +name = "traitlets" +version = "5.15.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1b/22/40f55b26baeab80c2d7b3f1db0682f8954e4617fee7d90ce634022ef05c6/traitlets-5.15.0.tar.gz", hash = "sha256:4fead733f81cf1c4c938e06f8ca4633896833c9d89eff878159457f4d4392971", size = 163197, upload-time = "2026-05-06T08:05:58.016Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/da/98/a9937a969d018a23badfea0b381f66783649d48e0ea6c41923265c3cbeb3/traitlets-5.15.0-py3-none-any.whl", hash = "sha256:fb36a18867a6803deab09f3c5e0fa81bb7b26a5c9e82501c9933f759166eff40", size = 85877, upload-time = "2026-05-06T08:05:55.853Z" }, +] + +[[package]] +name = "transformers" +version = "4.46.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "filelock" }, + { name = "huggingface-hub" }, + { name = "numpy" }, + { name = "packaging" }, + { name = "pyyaml" }, + { name = "regex" }, + { name = "requests" }, + { name = "safetensors" }, + { name = "tokenizers" }, + { name = "tqdm" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/37/5a/58f96c83e566f907ae39f16d4401bbefd8bb85c60bd1e6a95c419752ab90/transformers-4.46.3.tar.gz", hash = "sha256:8ee4b3ae943fe33e82afff8e837f4b052058b07ca9be3cb5b729ed31295f72cc", size = 8627944, upload-time = "2024-11-18T22:13:01.012Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/51/51/b87caa939fedf307496e4dbf412f4b909af3d9ca8b189fc3b65c1faa456f/transformers-4.46.3-py3-none-any.whl", hash = "sha256:a12ef6f52841fd190a3e5602145b542d03507222f2c64ebb7ee92e8788093aef", size = 10034536, upload-time = "2024-11-18T22:12:57.024Z" }, +] + +[[package]] +name = "trimesh" +version = "4.12.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/79/37/5cb90f04990260d2caceb6093560c6cefafca1ec522c1e43be01ca658244/trimesh-4.12.2.tar.gz", hash = "sha256:c8ca31571ac00b112e4e160e66a2d4c3491df321f056bd33806be0485d1af9d9", size = 842220, upload-time = "2026-05-01T00:57:43.333Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/05/98/716a473cfb24750858ddd5d14e6527539dd206583a46408d08eeb2844a75/trimesh-4.12.2-py3-none-any.whl", hash = "sha256:b5b5afa63c5272345f2858f7676bc8c217dc8a89f4fadf6193fe10a81b5ff2aa", size = 741043, upload-time = "2026-05-01T00:57:40.763Z" }, +] + +[[package]] +name = "triton" +version = "3.7.0" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/01/e1/a59a583de59b8f62c495d67c80ee3ea97d09e91ac80c4c6e76456ed8d8ac/triton-3.7.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:abdf6beaa89b1bcfb9a43cd990536ce66091a997841a4814b260b7bee4c88c3c", size = 188503209, upload-time = "2026-05-07T19:05:17.935Z" }, + { url = "https://files.pythonhosted.org/packages/30/b1/b7507bb9815d403927c8dd51d4158ed2e11751a92dbc118a044f247b6848/triton-3.7.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a35d7afe3f3f058e7ec49fcce09794049e0ffc5c59019ac25ec3413741b8c4e7", size = 201453566, upload-time = "2026-05-07T18:46:20.427Z" }, + { url = "https://files.pythonhosted.org/packages/a6/8f/0bea7a6a0c989315c9135a1d7fb37e41905cfb3a17cbc1f10044ebd4cc3a/triton-3.7.0-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:cc1d61c172d257db80ddf42595131fb196ad2e9bdd751e90fe2ef13531734e8b", size = 188612899, upload-time = "2026-05-07T19:05:24.955Z" }, + { url = "https://files.pythonhosted.org/packages/e1/02/d96f57828d0912aec733b9bc7e0e7dbfd2c6f079a8fa433ac25cb93d1a30/triton-3.7.0-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:70fb9bbdc9f400afc54bbf6eb2670af28829a6ae3996863317964783141daf56", size = 201553816, upload-time = "2026-05-07T18:46:27.49Z" }, + { url = "https://files.pythonhosted.org/packages/40/fb/82a802dac4689f2a2fb2e69302e6a138eecc3e175bbe976ba3cfc717683a/triton-3.7.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c4a44a8476d0d3571eac4e4d1048e1ff75aad81a09ff4602ccfc56c6dea1672e", size = 188507879, upload-time = "2026-05-07T19:05:32.209Z" }, + { url = "https://files.pythonhosted.org/packages/8f/af/9904ec6d3c93d9b24e5ec360445bbdf758b7f00bfbeedb89cb0eb64eb8bb/triton-3.7.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b9b85e72968a9d8bba5ddb24e9b64aaabaf48affb042f2755cb7cfa92b7531ce", size = 201460637, upload-time = "2026-05-07T18:46:34.749Z" }, + { url = "https://files.pythonhosted.org/packages/a1/f9/4835a8ea746b88727d8899f4e3ccce4f9cacb38abfc3bb0a638266c53111/triton-3.7.0-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:18a160de426fd99f92b0baf509045360afbd3bfaa0b4a5171dde800ec9f09684", size = 188608706, upload-time = "2026-05-07T19:05:39.218Z" }, + { url = "https://files.pythonhosted.org/packages/c1/68/fa86e5a39608000f645535b2c124920126327ab731f8c4fafd5b07ff8d4b/triton-3.7.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ce061073102714b725f3660ec6939d94a1da7984b3aa99c921417cae273672f5", size = 201546766, upload-time = "2026-05-07T18:46:42.088Z" }, +] + +[[package]] +name = "typer" +version = "0.25.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "annotated-doc" }, + { name = "click" }, + { name = "rich" }, + { name = "shellingham" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/e4/51/9aed62104cea109b820bbd6c14245af756112017d309da813ef107d42e7e/typer-0.25.1.tar.gz", hash = "sha256:9616eb8853a09ffeabab1698952f33c6f29ffdbceb4eaeecf571880e8d7664cc", size = 122276, upload-time = "2026-04-30T19:32:16.964Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3f/f9/2b3ff4e56e5fa7debfaf9eb135d0da96f3e9a1d5b27222223c7296336e5f/typer-0.25.1-py3-none-any.whl", hash = "sha256:75caa44ed46a03fb2dab8808753ffacdbfea88495e74c85a28c5eefcf5f39c89", size = 58409, upload-time = "2026-04-30T19:32:18.271Z" }, +] + +[[package]] +name = "typing-extensions" +version = "4.15.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/72/94/1a15dd82efb362ac84269196e94cf00f187f7ed21c242792a923cdb1c61f/typing_extensions-4.15.0.tar.gz", hash = "sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466", size = 109391, upload-time = "2025-08-25T13:49:26.313Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl", hash = "sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548", size = 44614, upload-time = "2025-08-25T13:49:24.86Z" }, +] + +[[package]] +name = "typing-inspection" +version = "0.4.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "typing-extensions" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/55/e3/70399cb7dd41c10ac53367ae42139cf4b1ca5f36bb3dc6c9d33acdb43655/typing_inspection-0.4.2.tar.gz", hash = "sha256:ba561c48a67c5958007083d386c3295464928b01faa735ab8547c5692e87f464", size = 75949, upload-time = "2025-10-01T02:14:41.687Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/dc/9b/47798a6c91d8bdb567fe2698fe81e0c6b7cb7ef4d13da4114b41d239f65d/typing_inspection-0.4.2-py3-none-any.whl", hash = "sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7", size = 14611, upload-time = "2025-10-01T02:14:40.154Z" }, +] + +[[package]] +name = "tzdata" +version = "2026.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ba/19/1b9b0e29f30c6d35cb345486df41110984ea67ae69dddbc0e8a100999493/tzdata-2026.2.tar.gz", hash = "sha256:9173fde7d80d9018e02a662e168e5a2d04f87c41ea174b139fbef642eda62d10", size = 198254, upload-time = "2026-04-24T15:22:08.651Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/ce/e4/dccd7f47c4b64213ac01ef921a1337ee6e30e8c6466046018326977efd95/tzdata-2026.2-py2.py3-none-any.whl", hash = "sha256:bbe9af844f658da81a5f95019480da3a89415801f6cc966806612cc7169bffe7", size = 349321, upload-time = "2026-04-24T15:22:05.876Z" }, +] + +[[package]] +name = "uri-template" +version = "1.3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/31/c7/0336f2bd0bcbada6ccef7aaa25e443c118a704f828a0620c6fa0207c1b64/uri-template-1.3.0.tar.gz", hash = "sha256:0e00f8eb65e18c7de20d595a14336e9f337ead580c70934141624b6d1ffdacc7", size = 21678, upload-time = "2023-06-21T01:49:05.374Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e7/00/3fca040d7cf8a32776d3d81a00c8ee7457e00f80c649f1e4a863c8321ae9/uri_template-1.3.0-py3-none-any.whl", hash = "sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363", size = 11140, upload-time = "2023-06-21T01:49:03.467Z" }, +] + +[[package]] +name = "urllib3" +version = "2.7.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/53/0c/06f8b233b8fd13b9e5ee11424ef85419ba0d8ba0b3138bf360be2ff56953/urllib3-2.7.0.tar.gz", hash = "sha256:231e0ec3b63ceb14667c67be60f2f2c40a518cb38b03af60abc813da26505f4c", size = 433602, upload-time = "2026-05-07T16:13:18.596Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7f/3e/5db95bcf282c52709639744ca2a8b149baccf648e39c8cc87553df9eae0c/urllib3-2.7.0-py3-none-any.whl", hash = "sha256:9fb4c81ebbb1ce9531cce37674bbc6f1360472bc18ca9a553ede278ef7276897", size = 131087, upload-time = "2026-05-07T16:13:17.151Z" }, +] + +[[package]] +name = "uvicorn" +version = "0.48.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "click" }, + { name = "h11" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/e6/bf/f6544ba992ddb9a6077343a576f9844f7f8f06ab819aefd00206e9255f18/uvicorn-0.48.0.tar.gz", hash = "sha256:a5504207195d08c2511bf9125ede5ac4a4b71725d519e758d01dcf0bc2d31c37", size = 91074, upload-time = "2026-05-24T12:08:41.925Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/01/be/72532be3da7acc5fdfbccdb95215cd04f995a0886532a5b423f929cda4cc/uvicorn-0.48.0-py3-none-any.whl", hash = "sha256:48097851328b87ec36117d3d575234519eb58c2b22d79666e9bbc6c49a761dad", size = 71410, upload-time = "2026-05-24T12:08:40.258Z" }, +] + +[[package]] +name = "wcwidth" +version = "0.7.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2c/ee/afaf0f85a9a18fe47a67f1e4422ed6cf1fe642f0ae0a2f81166231303c52/wcwidth-0.7.0.tar.gz", hash = "sha256:90e3a7ea092341c44b99562e75d09e4d5160fe7a3974c6fb842a101a95e7eed0", size = 182132, upload-time = "2026-05-02T16:04:12.653Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/41/52/e465037f5375f43533d1a80b6923955201596a99142ed524d77b571a1418/wcwidth-0.7.0-py3-none-any.whl", hash = "sha256:5d69154c429a82910e241c738cd0e2976fac8a2dd47a1a805f4afed1c0f136f2", size = 110825, upload-time = "2026-05-02T16:04:11.033Z" }, +] + +[[package]] +name = "webcolors" +version = "25.10.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/1d/7a/eb316761ec35664ea5174709a68bbd3389de60d4a1ebab8808bfc264ed67/webcolors-25.10.0.tar.gz", hash = "sha256:62abae86504f66d0f6364c2a8520de4a0c47b80c03fc3a5f1815fedbef7c19bf", size = 53491, upload-time = "2025-10-31T07:51:03.977Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e2/cc/e097523dd85c9cf5d354f78310927f1656c422bd7b2613b2db3e3f9a0f2c/webcolors-25.10.0-py3-none-any.whl", hash = "sha256:032c727334856fc0b968f63daa252a1ac93d33db2f5267756623c210e57a4f1d", size = 14905, upload-time = "2025-10-31T07:51:01.778Z" }, +] + +[[package]] +name = "webencodings" +version = "0.5.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0b/02/ae6ceac1baeda530866a85075641cec12989bd8d31af6d5ab4a3e8c92f47/webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923", size = 9721, upload-time = "2017-04-05T20:21:34.189Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f4/24/2a3e3df732393fed8b3ebf2ec078f05546de641fe1b667ee316ec1dcf3b7/webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78", size = 11774, upload-time = "2017-04-05T20:21:32.581Z" }, +] + +[[package]] +name = "websocket-client" +version = "1.9.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/2c/41/aa4bf9664e4cda14c3b39865b12251e8e7d239f4cd0e3cc1b6c2ccde25c1/websocket_client-1.9.0.tar.gz", hash = "sha256:9e813624b6eb619999a97dc7958469217c3176312b3a16a4bd1bc7e08a46ec98", size = 70576, upload-time = "2025-10-07T21:16:36.495Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/34/db/b10e48aa8fff7407e67470363eac595018441cf32d5e1001567a7aeba5d2/websocket_client-1.9.0-py3-none-any.whl", hash = "sha256:af248a825037ef591efbf6ed20cc5faa03d3b47b9e5a2230a529eeee1c1fc3ef", size = 82616, upload-time = "2025-10-07T21:16:34.951Z" }, +] + +[[package]] +name = "websockets" +version = "16.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/04/24/4b2031d72e840ce4c1ccb255f693b15c334757fc50023e4db9537080b8c4/websockets-16.0.tar.gz", hash = "sha256:5f6261a5e56e8d5c42a4497b364ea24d94d9563e8fbd44e78ac40879c60179b5", size = 179346, upload-time = "2026-01-10T09:23:47.181Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/cc/9c/baa8456050d1c1b08dd0ec7346026668cbc6f145ab4e314d707bb845bf0d/websockets-16.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:878b336ac47938b474c8f982ac2f7266a540adc3fa4ad74ae96fea9823a02cc9", size = 177364, upload-time = "2026-01-10T09:22:59.333Z" }, + { url = "https://files.pythonhosted.org/packages/7e/0c/8811fc53e9bcff68fe7de2bcbe75116a8d959ac699a3200f4847a8925210/websockets-16.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:52a0fec0e6c8d9a784c2c78276a48a2bdf099e4ccc2a4cad53b27718dbfd0230", size = 175039, upload-time = "2026-01-10T09:23:01.171Z" }, + { url = "https://files.pythonhosted.org/packages/aa/82/39a5f910cb99ec0b59e482971238c845af9220d3ab9fa76dd9162cda9d62/websockets-16.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:e6578ed5b6981005df1860a56e3617f14a6c307e6a71b4fff8c48fdc50f3ed2c", size = 175323, upload-time = "2026-01-10T09:23:02.341Z" }, + { url = "https://files.pythonhosted.org/packages/bd/28/0a25ee5342eb5d5f297d992a77e56892ecb65e7854c7898fb7d35e9b33bd/websockets-16.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:95724e638f0f9c350bb1c2b0a7ad0e83d9cc0c9259f3ea94e40d7b02a2179ae5", size = 184975, upload-time = "2026-01-10T09:23:03.756Z" }, + { url = "https://files.pythonhosted.org/packages/f9/66/27ea52741752f5107c2e41fda05e8395a682a1e11c4e592a809a90c6a506/websockets-16.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c0204dc62a89dc9d50d682412c10b3542d748260d743500a85c13cd1ee4bde82", size = 186203, upload-time = "2026-01-10T09:23:05.01Z" }, + { url = "https://files.pythonhosted.org/packages/37/e5/8e32857371406a757816a2b471939d51c463509be73fa538216ea52b792a/websockets-16.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:52ac480f44d32970d66763115edea932f1c5b1312de36df06d6b219f6741eed8", size = 185653, upload-time = "2026-01-10T09:23:06.301Z" }, + { url = "https://files.pythonhosted.org/packages/9b/67/f926bac29882894669368dc73f4da900fcdf47955d0a0185d60103df5737/websockets-16.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6e5a82b677f8f6f59e8dfc34ec06ca6b5b48bc4fcda346acd093694cc2c24d8f", size = 184920, upload-time = "2026-01-10T09:23:07.492Z" }, + { url = "https://files.pythonhosted.org/packages/3c/a1/3d6ccdcd125b0a42a311bcd15a7f705d688f73b2a22d8cf1c0875d35d34a/websockets-16.0-cp313-cp313-win32.whl", hash = "sha256:abf050a199613f64c886ea10f38b47770a65154dc37181bfaff70c160f45315a", size = 178255, upload-time = "2026-01-10T09:23:09.245Z" }, + { url = "https://files.pythonhosted.org/packages/6b/ae/90366304d7c2ce80f9b826096a9e9048b4bb760e44d3b873bb272cba696b/websockets-16.0-cp313-cp313-win_amd64.whl", hash = "sha256:3425ac5cf448801335d6fdc7ae1eb22072055417a96cc6b31b3861f455fbc156", size = 178689, upload-time = "2026-01-10T09:23:10.483Z" }, + { url = "https://files.pythonhosted.org/packages/f3/1d/e88022630271f5bd349ed82417136281931e558d628dd52c4d8621b4a0b2/websockets-16.0-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:8cc451a50f2aee53042ac52d2d053d08bf89bcb31ae799cb4487587661c038a0", size = 177406, upload-time = "2026-01-10T09:23:12.178Z" }, + { url = "https://files.pythonhosted.org/packages/f2/78/e63be1bf0724eeb4616efb1ae1c9044f7c3953b7957799abb5915bffd38e/websockets-16.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:daa3b6ff70a9241cf6c7fc9e949d41232d9d7d26fd3522b1ad2b4d62487e9904", size = 175085, upload-time = "2026-01-10T09:23:13.511Z" }, + { url = "https://files.pythonhosted.org/packages/bb/f4/d3c9220d818ee955ae390cf319a7c7a467beceb24f05ee7aaaa2414345ba/websockets-16.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:fd3cb4adb94a2a6e2b7c0d8d05cb94e6f1c81a0cf9dc2694fb65c7e8d94c42e4", size = 175328, upload-time = "2026-01-10T09:23:14.727Z" }, + { url = "https://files.pythonhosted.org/packages/63/bc/d3e208028de777087e6fb2b122051a6ff7bbcca0d6df9d9c2bf1dd869ae9/websockets-16.0-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:781caf5e8eee67f663126490c2f96f40906594cb86b408a703630f95550a8c3e", size = 185044, upload-time = "2026-01-10T09:23:15.939Z" }, + { url = "https://files.pythonhosted.org/packages/ad/6e/9a0927ac24bd33a0a9af834d89e0abc7cfd8e13bed17a86407a66773cc0e/websockets-16.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:caab51a72c51973ca21fa8a18bd8165e1a0183f1ac7066a182ff27107b71e1a4", size = 186279, upload-time = "2026-01-10T09:23:17.148Z" }, + { url = "https://files.pythonhosted.org/packages/b9/ca/bf1c68440d7a868180e11be653c85959502efd3a709323230314fda6e0b3/websockets-16.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:19c4dc84098e523fd63711e563077d39e90ec6702aff4b5d9e344a60cb3c0cb1", size = 185711, upload-time = "2026-01-10T09:23:18.372Z" }, + { url = "https://files.pythonhosted.org/packages/c4/f8/fdc34643a989561f217bb477cbc47a3a07212cbda91c0e4389c43c296ebf/websockets-16.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:a5e18a238a2b2249c9a9235466b90e96ae4795672598a58772dd806edc7ac6d3", size = 184982, upload-time = "2026-01-10T09:23:19.652Z" }, + { url = "https://files.pythonhosted.org/packages/dd/d1/574fa27e233764dbac9c52730d63fcf2823b16f0856b3329fc6268d6ae4f/websockets-16.0-cp314-cp314-win32.whl", hash = "sha256:a069d734c4a043182729edd3e9f247c3b2a4035415a9172fd0f1b71658a320a8", size = 177915, upload-time = "2026-01-10T09:23:21.458Z" }, + { url = "https://files.pythonhosted.org/packages/8a/f1/ae6b937bf3126b5134ce1f482365fde31a357c784ac51852978768b5eff4/websockets-16.0-cp314-cp314-win_amd64.whl", hash = "sha256:c0ee0e63f23914732c6d7e0cce24915c48f3f1512ec1d079ed01fc629dab269d", size = 178381, upload-time = "2026-01-10T09:23:22.715Z" }, + { url = "https://files.pythonhosted.org/packages/06/9b/f791d1db48403e1f0a27577a6beb37afae94254a8c6f08be4a23e4930bc0/websockets-16.0-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:a35539cacc3febb22b8f4d4a99cc79b104226a756aa7400adc722e83b0d03244", size = 177737, upload-time = "2026-01-10T09:23:24.523Z" }, + { url = "https://files.pythonhosted.org/packages/bd/40/53ad02341fa33b3ce489023f635367a4ac98b73570102ad2cdd770dacc9a/websockets-16.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:b784ca5de850f4ce93ec85d3269d24d4c82f22b7212023c974c401d4980ebc5e", size = 175268, upload-time = "2026-01-10T09:23:25.781Z" }, + { url = "https://files.pythonhosted.org/packages/74/9b/6158d4e459b984f949dcbbb0c5d270154c7618e11c01029b9bbd1bb4c4f9/websockets-16.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:569d01a4e7fba956c5ae4fc988f0d4e187900f5497ce46339c996dbf24f17641", size = 175486, upload-time = "2026-01-10T09:23:27.033Z" }, + { url = "https://files.pythonhosted.org/packages/e5/2d/7583b30208b639c8090206f95073646c2c9ffd66f44df967981a64f849ad/websockets-16.0-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:50f23cdd8343b984957e4077839841146f67a3d31ab0d00e6b824e74c5b2f6e8", size = 185331, upload-time = "2026-01-10T09:23:28.259Z" }, + { url = "https://files.pythonhosted.org/packages/45/b0/cce3784eb519b7b5ad680d14b9673a31ab8dcb7aad8b64d81709d2430aa8/websockets-16.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:152284a83a00c59b759697b7f9e9cddf4e3c7861dd0d964b472b70f78f89e80e", size = 186501, upload-time = "2026-01-10T09:23:29.449Z" }, + { url = "https://files.pythonhosted.org/packages/19/60/b8ebe4c7e89fb5f6cdf080623c9d92789a53636950f7abacfc33fe2b3135/websockets-16.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:bc59589ab64b0022385f429b94697348a6a234e8ce22544e3681b2e9331b5944", size = 186062, upload-time = "2026-01-10T09:23:31.368Z" }, + { url = "https://files.pythonhosted.org/packages/88/a8/a080593f89b0138b6cba1b28f8df5673b5506f72879322288b031337c0b8/websockets-16.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:32da954ffa2814258030e5a57bc73a3635463238e797c7375dc8091327434206", size = 185356, upload-time = "2026-01-10T09:23:32.627Z" }, + { url = "https://files.pythonhosted.org/packages/c2/b6/b9afed2afadddaf5ebb2afa801abf4b0868f42f8539bfe4b071b5266c9fe/websockets-16.0-cp314-cp314t-win32.whl", hash = "sha256:5a4b4cc550cb665dd8a47f868c8d04c8230f857363ad3c9caf7a0c3bf8c61ca6", size = 178085, upload-time = "2026-01-10T09:23:33.816Z" }, + { url = "https://files.pythonhosted.org/packages/9f/3e/28135a24e384493fa804216b79a6a6759a38cc4ff59118787b9fb693df93/websockets-16.0-cp314-cp314t-win_amd64.whl", hash = "sha256:b14dc141ed6d2dde437cddb216004bcac6a1df0935d79656387bd41632ba0bbd", size = 178531, upload-time = "2026-01-10T09:23:35.016Z" }, + { url = "https://files.pythonhosted.org/packages/6f/28/258ebab549c2bf3e64d2b0217b973467394a9cea8c42f70418ca2c5d0d2e/websockets-16.0-py3-none-any.whl", hash = "sha256:1637db62fad1dc833276dded54215f2c7fa46912301a24bd94d45d46a011ceec", size = 171598, upload-time = "2026-01-10T09:23:45.395Z" }, +] + +[[package]] +name = "widgetsnbextension" +version = "4.0.15" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/bd/f4/c67440c7fb409a71b7404b7aefcd7569a9c0d6bd071299bf4198ae7a5d95/widgetsnbextension-4.0.15.tar.gz", hash = "sha256:de8610639996f1567952d763a5a41af8af37f2575a41f9852a38f947eb82a3b9", size = 1097402, upload-time = "2025-11-01T21:15:55.178Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3f/0e/fa3b193432cfc60c93b42f3be03365f5f909d2b3ea410295cf36df739e31/widgetsnbextension-4.0.15-py3-none-any.whl", hash = "sha256:8156704e4346a571d9ce73b84bee86a29906c9abfd7223b7228a28899ccf3366", size = 2196503, upload-time = "2025-11-01T21:15:53.565Z" }, +] + +[[package]] +name = "xatlas" +version = "0.0.11" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/7c/fe/32adb4dbdf5485c185de9b62b83d434f12ca5be8a000d9882c871808987b/xatlas-0.0.11.tar.gz", hash = "sha256:72f0bc6c42c19252be87e947d9dfe251c8d6c6943fd43e3d173ddc6b1afad693", size = 7718208, upload-time = "2025-07-04T16:46:43.315Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f6/e7/1dd383c0d28e396f16eee548e2b3f9f4cec8d3ab3db004c8bbcf57a44939/xatlas-0.0.11-cp313-cp313-macosx_10_14_x86_64.whl", hash = "sha256:7d41023193a433ea783df563ccde2bb8bb039dca0896469a3cb32e58db9763da", size = 223491, upload-time = "2025-07-04T16:45:50.239Z" }, + { url = "https://files.pythonhosted.org/packages/4e/64/ccc8ec8aa31eaa09b8b2b8922c50d97af8d41a24254499f5eaf926352c26/xatlas-0.0.11-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:70a459492c0ffcf7e37a77ac37f8a4483acd87aee07de9600e4f056e56c326dd", size = 201092, upload-time = "2025-07-04T16:45:51.224Z" }, + { url = "https://files.pythonhosted.org/packages/f7/9f/2bd9b63d24751db2ba6c85944e09be2bc897aaace224d22dbc764a19487f/xatlas-0.0.11-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7739f75c588808a0ad0b3a730661143dddddceec84401451989b829d9986df94", size = 268197, upload-time = "2025-07-04T16:45:52.673Z" }, + { url = "https://files.pythonhosted.org/packages/85/84/df846c46097331af6a10d3675edefc2ab893cb784c02fc7ab1e8cc580457/xatlas-0.0.11-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1c2ba5ca5e26dba5e9a04aab98ee5de0e5a0e8c87a1feae83da11052b83d86dd", size = 260836, upload-time = "2025-07-04T16:45:53.718Z" }, + { url = "https://files.pythonhosted.org/packages/ec/9a/962bc0ddcce7c81e9f08b020132d8b0143f18d8ee49744aca669a2fe1a1b/xatlas-0.0.11-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:494206aa15a28f44691acd1575344181717b300e5602187e7db04fa72e0d1e9b", size = 1414366, upload-time = "2025-07-04T16:45:54.942Z" }, + { url = "https://files.pythonhosted.org/packages/11/15/fe587b62db22b9d5220576995de67d7d00f0d3b8a6d461cc670831820676/xatlas-0.0.11-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:ff4c084c1f2cccbc781302484613c4d87fcbab1fa4972a4e84194acb18bbf9d9", size = 1291580, upload-time = "2025-07-04T16:45:56.18Z" }, + { url = "https://files.pythonhosted.org/packages/73/c6/8eba622eead5571c73fb997095ab156ba40f8e99471b9b37053d32a338d4/xatlas-0.0.11-cp313-cp313-win32.whl", hash = "sha256:12d5f37f60bc6a82e538dc553eb3ebe85fd622ecb9b6d32505db4c3ea1202706", size = 185822, upload-time = "2025-07-04T16:45:57.222Z" }, + { url = "https://files.pythonhosted.org/packages/8c/91/116e12b0b7bce720eea981b06b39150ceaef49b044bd3b535316443cfd05/xatlas-0.0.11-cp313-cp313-win_amd64.whl", hash = "sha256:81431d19c3a11dc3fbae95460cd6b16239636b21fa7c30bd5796976a03844ede", size = 207911, upload-time = "2025-07-04T16:45:58.526Z" }, +] + +[[package]] +name = "yarl" +version = "1.24.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "idna" }, + { name = "multidict" }, + { name = "propcache" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/79/12/1e8f37460ea0f7eb59c221fdaf0ed75e7ac43e97f8093b9c6f411df50a78/yarl-1.24.2.tar.gz", hash = "sha256:9ac374123c6fd7abf64d1fec93962b0bd4ee2c19751755a762a72dd96c0378f8", size = 210798, upload-time = "2026-05-19T21:31:05.599Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/82/62/fcf0ce677f17e5c471c06311dd25964be38a4c586993632910d2e75278bc/yarl-1.24.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:491ac9141decf49ee8030199e1ee251cdff0e131f25678817ff6aa5f837a3536", size = 128978, upload-time = "2026-05-19T21:29:23.83Z" }, + { url = "https://files.pythonhosted.org/packages/d3/58/8e63299bb71ed61a834121d9d3fe6c9fcf2a6a5d09754ff4f20f2d20baf5/yarl-1.24.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:e89418f65eda18f99030386305bd44d7d504e328a7945db1ead514fbe03a0607", size = 91733, upload-time = "2026-05-19T21:29:25.375Z" }, + { url = "https://files.pythonhosted.org/packages/c1/24/16748d5dab6daec8b0ed81ccec639a1cded0f18dcc62a4f696b4fe366c37/yarl-1.24.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:cdfcce633b4a4bb8281913c57fcafd4b5933fbc19111a5e3930bbd299d6102f1", size = 91113, upload-time = "2026-05-19T21:29:26.928Z" }, + { url = "https://files.pythonhosted.org/packages/1b/66/b63fff7b71211e866624b21432d5943cbb633eb0c2872d9ee3070648f22c/yarl-1.24.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:863297ddede92ee49024e9a9b11ecb59f310ca85b60d8537f56bed9bbb5b1986", size = 103899, upload-time = "2026-05-19T21:29:28.842Z" }, + { url = "https://files.pythonhosted.org/packages/9d/ac/ba1974b8533909636f7733fe86cf677e3619527c3c2fa913e0ea89c48757/yarl-1.24.2-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:374423f70754a2c96942ede36a29d37dc6b0cb8f92f8d009ddf3ed78d3da5488", size = 97862, upload-time = "2026-05-19T21:29:31.086Z" }, + { url = "https://files.pythonhosted.org/packages/1b/a5/123ac993b5c2ba6f554a140305620cb8f150fa543711bbc49be3ec0a65a4/yarl-1.24.2-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:33a29b5d00ccbf3219bb3e351d7875739c19481e030779f48cc46a7a71681a9b", size = 111060, upload-time = "2026-05-19T21:29:32.657Z" }, + { url = "https://files.pythonhosted.org/packages/23/37/c472d3af3509688392134a88a825276770a187f1daa4de3f6dc0a327a751/yarl-1.24.2-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a9532c57211730c515341af11fef6e9b61d157487272a096d0c04da445642592", size = 110613, upload-time = "2026-05-19T21:29:34.379Z" }, + { url = "https://files.pythonhosted.org/packages/df/88/09c28dad91e662ccfaa1b78f1c57badde74fc9d0b23e74aef644750ecd73/yarl-1.24.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:91e72cf093fd833483a97ee648e0c053c7c629f51ff4a0e7edd84f806b0c5617", size = 107012, upload-time = "2026-05-19T21:29:36.216Z" }, + { url = "https://files.pythonhosted.org/packages/07/ab/9d4f69d571a94f4d112fa7e2e007200f5a54d319f58c82ac7b7baa61f5c6/yarl-1.24.2-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:b3177bc0a768ef3bacceb4f272632990b7bea352f1b2f1eee9d6d6ff16516f92", size = 105887, upload-time = "2026-05-19T21:29:38.746Z" }, + { url = "https://files.pythonhosted.org/packages/8e/9a/000b2b66c0d772a499fc531d21dab92dfeb73b640a12eed6ba89f49bb2d0/yarl-1.24.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e196952aacaf3b232e265ff02980b64d483dc0972bd49bcb061171ff22ac203a", size = 103620, upload-time = "2026-05-19T21:29:40.368Z" }, + { url = "https://files.pythonhosted.org/packages/41/7c/7c1050f73450fbdaa3f0c72017059f00ce5e13366692f3dba25275a1083d/yarl-1.24.2-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:204e7a61ce99919c0de1bf904ab5d7aa188a129ea8f690a8f76cfb6e2844dc44", size = 100599, upload-time = "2026-05-19T21:29:42.66Z" }, + { url = "https://files.pythonhosted.org/packages/ec/b1/29e5756b3926705f5f6089bd5b9f50a56eaac550da6e260bf713ead44d04/yarl-1.24.2-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:4b156914620f0b9d78dc1adb3751141daee561cfec796088abb89ed49d220f1a", size = 110604, upload-time = "2026-05-19T21:29:44.632Z" }, + { url = "https://files.pythonhosted.org/packages/a3/4b/8415bc96e9b150cde942fbac9a8182985e58f40ce5c54c34ed015407d3ee/yarl-1.24.2-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:8372a2b976cf70654b2be6619ab6068acabb35f724c0fda7b277fbf53d66a5cf", size = 105161, upload-time = "2026-05-19T21:29:46.755Z" }, + { url = "https://files.pythonhosted.org/packages/8b/d4/cde059abfa229553b7298a2eadde2752e723d50aeedaef86ce59da2718ee/yarl-1.24.2-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:f9a1e9b622ca284143aab5d885848686dcd85453bb1ca9abcdb7503e64dc0056", size = 110619, upload-time = "2026-05-19T21:29:48.972Z" }, + { url = "https://files.pythonhosted.org/packages/e7/2c/d6a6c9a61549f7b6c7e6dc6937d195bcf069582b47b7200dcd0e7b256acf/yarl-1.24.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:810e19b685c8c3c5862f6a38160a1f4e4c0916c9390024ec347b6157a45a0992", size = 107362, upload-time = "2026-05-19T21:29:51Z" }, + { url = "https://files.pythonhosted.org/packages/92/dd/3ae5fe417e9d1c353a548553326eb9935e76b6b727161563b424cc296df3/yarl-1.24.2-cp313-cp313-win_amd64.whl", hash = "sha256:7d37fb7c38f2b6edab0f845c4f85148d4c44204f52bc127021bd2bc9fdbf1656", size = 92667, upload-time = "2026-05-19T21:29:52.743Z" }, + { url = "https://files.pythonhosted.org/packages/10/cc/a7beb239f78f27fca1b053c8e8595e4179c02e62249b4687ec218c370c50/yarl-1.24.2-cp313-cp313-win_arm64.whl", hash = "sha256:1e831894be7c2954240e49791fa4b50c05a0dc881de2552cfe3ffd8631c7f461", size = 87069, upload-time = "2026-05-19T21:29:54.442Z" }, + { url = "https://files.pythonhosted.org/packages/40/0e/e08087695fc12789263821c5dc0f8dc52b5b17efd0887cacf419f8a43ba3/yarl-1.24.2-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:f9312b3c02d9b3d23840f67952913c9c8721d7f1b7db305289faefa878f364c2", size = 129670, upload-time = "2026-05-19T21:29:56.631Z" }, + { url = "https://files.pythonhosted.org/packages/3a/98/ab4b5ed1b1b5cd973c8a3eb994c3a6aefb6ce6d399e21bb5f0316c33815c/yarl-1.24.2-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:a4f4d6cd615823bfc7fb7e9b5987c3f41666371d870d51058f77e2680fbe9630", size = 91916, upload-time = "2026-05-19T21:29:58.645Z" }, + { url = "https://files.pythonhosted.org/packages/ba/b1/5297bb6a7df4782f7605bffc43b31f5044070935fbbcaa6c705a07e6ac65/yarl-1.24.2-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:0c3063e5c0a8e8e62fae6c2596fa01da1561e4cd1da6fec5789f5cf99a8aefd8", size = 91625, upload-time = "2026-05-19T21:30:00.412Z" }, + { url = "https://files.pythonhosted.org/packages/02/a7/45baabfff76829264e623b185cff0c340d7e11bf3e1cd9ea37e7d17934bd/yarl-1.24.2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:fecd17873a096036c1c87ab3486f1aef7f269ada7f23f7f856f93b1cc7744f14", size = 104574, upload-time = "2026-05-19T21:30:02.544Z" }, + { url = "https://files.pythonhosted.org/packages/f3/40/3a5ab144d3d650ca37d4f4b57e56169be8af3ca34c448793e064b30baaed/yarl-1.24.2-cp314-cp314-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:a46d1ab4ba4d32e6dc80daf8a28ce0bd83d08df52fbc32f3e288663427734535", size = 97534, upload-time = "2026-05-19T21:30:04.319Z" }, + { url = "https://files.pythonhosted.org/packages/9c/b5/5658fef3681fb5776b4513b052bec750009f47b3a592251c705d75375798/yarl-1.24.2-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:73e68edf6dfd5f73f9ca127d84e2a6f9213c65bdffb736bda19524c0564fcd14", size = 111481, upload-time = "2026-05-19T21:30:05.988Z" }, + { url = "https://files.pythonhosted.org/packages/4c/06/fdcd7dde037f00866dce123ed4ba23dba94beb56fc4cf561668d27be37f2/yarl-1.24.2-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a296ca617f2d25fbceafb962b88750d627e5984e75732c712154d058ae8d79a3", size = 111529, upload-time = "2026-05-19T21:30:07.738Z" }, + { url = "https://files.pythonhosted.org/packages/c2/53/d81269aaafccea0d33396c03035de997b743f11e648e6e27a0df99c72980/yarl-1.24.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e51b2cf5ec89a8b8470177641ed62a3ba22d74e1e898e06ad53aa77972487208", size = 107338, upload-time = "2026-05-19T21:30:09.713Z" }, + { url = "https://files.pythonhosted.org/packages/ae/04/23049463f729bd899df203a7960505a75333edd499cda8aa1d5a82b64df5/yarl-1.24.2-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:310fc687f7b2044ec54e372c8cbe923bb88f5c37bded0d3079e5791c2fc3cf50", size = 106147, upload-time = "2026-05-19T21:30:11.365Z" }, + { url = "https://files.pythonhosted.org/packages/14/18/04a4b5830b43ed5e4c5015b40e9f6241ad91487d71611061b4e111d6ac80/yarl-1.24.2-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:297a2fe352ecf858b30a98f87948746ec16f001d279f84aebdbd3bd965e2f1bd", size = 104272, upload-time = "2026-05-19T21:30:12.978Z" }, + { url = "https://files.pythonhosted.org/packages/5a/f7/8cffdf319aee7a7c1dbd07b61d91c3e3fda460c7a93b5f93e445f3806c4c/yarl-1.24.2-cp314-cp314-musllinux_1_2_armv7l.whl", hash = "sha256:2a263e76b97bc42bdcd7c5f4953dec1f7cd62a1112fa7f869e57255229390d67", size = 99962, upload-time = "2026-05-19T21:30:15.001Z" }, + { url = "https://files.pythonhosted.org/packages/d7/39/b3cce3b7dbef64ac700ad4cea156a207d01bede0f507587616c364b5468e/yarl-1.24.2-cp314-cp314-musllinux_1_2_ppc64le.whl", hash = "sha256:822519b64cf0b474f1a0aaef1dc621438ea46bb77c94df97a5b4d213a7d8a8b1", size = 111063, upload-time = "2026-05-19T21:30:16.683Z" }, + { url = "https://files.pythonhosted.org/packages/a1/ea/100818505e7ebf165c7242ff17fdf7d9fee79e27234aeca871c1082920d7/yarl-1.24.2-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:b6067060d9dc594899ba83e6db6c48c68d1e494a6dab158156ed86977ca7bcb1", size = 105438, upload-time = "2026-05-19T21:30:18.769Z" }, + { url = "https://files.pythonhosted.org/packages/8f/d2/e075a0b32aa6625087de9e653087df0759fed5de4a435fef594181102a77/yarl-1.24.2-cp314-cp314-musllinux_1_2_s390x.whl", hash = "sha256:0063adad533e57171b79db3943b229d40dfafeeee579767f96541f106bac5f1b", size = 111458, upload-time = "2026-05-19T21:30:21.024Z" }, + { url = "https://files.pythonhosted.org/packages/e6/5c/ceea7ba98b65c8eb8d947fdc52f9bedfcd43c6a57c9e3c90c17be8f324a3/yarl-1.24.2-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:ee8e3fb34513e8dc082b586ef4910c98335d43a6fab688cd44d4851bacfce3e8", size = 107589, upload-time = "2026-05-19T21:30:23.412Z" }, + { url = "https://files.pythonhosted.org/packages/fa/d9/5582d57e2b2db9b85eb6663a22efdd78e08805f3f5389566e9fcad254d1b/yarl-1.24.2-cp314-cp314-win_amd64.whl", hash = "sha256:afb00d7fd8e0f285ca29a44cc50df2d622ff2f7a6d933fa641577b5f9d5f3db0", size = 94424, upload-time = "2026-05-19T21:30:25.425Z" }, + { url = "https://files.pythonhosted.org/packages/92/10/7dc07a0e22806a9280f42a57361395506e800c64e22737cd7b0886feab42/yarl-1.24.2-cp314-cp314-win_arm64.whl", hash = "sha256:68cf6eacd6028ef1142bc4b48376b81566385ca6f9e7dde3b0fa91be08ffcb57", size = 88690, upload-time = "2026-05-19T21:30:27.623Z" }, + { url = "https://files.pythonhosted.org/packages/9e/13/d5b8e2c8667db955bcb3de233f18798fefe7edf1d7429c2c9d4f9c401114/yarl-1.24.2-cp314-cp314t-macosx_10_15_universal2.whl", hash = "sha256:221ce1dd921ac4f603957f17d7c18c5cc0797fbb52f156941f92e04605d1d67b", size = 136248, upload-time = "2026-05-19T21:30:29.297Z" }, + { url = "https://files.pythonhosted.org/packages/de/46/a4a97c05c9c9b8fd266bb2a0df12992c7fbd02391eb9640583411b6dab32/yarl-1.24.2-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:5f3224db28173a00d7afacdee07045cc4673dfab2b15492c7ae10deddbece761", size = 95084, upload-time = "2026-05-19T21:30:31.031Z" }, + { url = "https://files.pythonhosted.org/packages/95/b2/845cf2074a015e6fe0d0808cf1a2d9e868386c4220d657ebd8302b199043/yarl-1.24.2-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:c557165320d6244ebe3a02431b2a201a20080e02f41f0cfa0ccc47a183765da8", size = 95272, upload-time = "2026-05-19T21:30:33.062Z" }, + { url = "https://files.pythonhosted.org/packages/fe/16/e69d4aa244aef45235ddfebc0e04036a6829842bc5a6a795aedc6c998d23/yarl-1.24.2-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:904065e6e85b1fa54d0d87438bd58c14c0bad97aad654ad1077fd9d87e8478ed", size = 101497, upload-time = "2026-05-19T21:30:34.842Z" }, + { url = "https://files.pythonhosted.org/packages/15/94/c07107715d621076863ee88b3ddf183fa5e9d4aba5769623c9979828410a/yarl-1.24.2-cp314-cp314t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:8cec2a38d70edc10e0e856ceda886af5327a017ccbde8e1de1bd44d300357543", size = 94002, upload-time = "2026-05-19T21:30:37.724Z" }, + { url = "https://files.pythonhosted.org/packages/a9/35/fc1bbdd895b5e4010b8fdd037f7ed3aa289d3863e08231b30231ca9a0815/yarl-1.24.2-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:e7484b9361ed222ee1ca5b4337aa4cbdcc4618ce5aff57d9ef1582fd95893fc0", size = 106524, upload-time = "2026-05-19T21:30:40.196Z" }, + { url = "https://files.pythonhosted.org/packages/1f/f2/32b66d0a4ba47c296cf86d03e2c67bff58399fe6d6d84d5205c04c66cc6d/yarl-1.24.2-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:84f9670b89f34db07f81e53aee83e0b938a3412329d51c8f922488be7fcc4024", size = 106165, upload-time = "2026-05-19T21:30:41.888Z" }, + { url = "https://files.pythonhosted.org/packages/95/47/37cb5ff50c5e825d4d38e81bb04d1b7e96bf960f7ab89f9850b162f3f114/yarl-1.24.2-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:abb2759733d63a28b4956500a5dd57140f26486c92b2caedfb964ab7d9b79dbf", size = 103010, upload-time = "2026-05-19T21:30:43.985Z" }, + { url = "https://files.pythonhosted.org/packages/6f/d2/4597912315096f7bb359e46e13bf8b60994fcbb2db29b804c0902ef4eff5/yarl-1.24.2-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:081c2bf54efe03774d0311172bc04fedf9ca01e644d4cd8c805688e527209bdc", size = 101128, upload-time = "2026-05-19T21:30:46.291Z" }, + { url = "https://files.pythonhosted.org/packages/b9/d5/c8e86e120521e646013d02a8e3b8884392e28494be8f392366e50d208efc/yarl-1.24.2-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:86746bef442aa479107fe28132e1277237f9c24c2f00b0b0cf22b3ee0904f2bb", size = 101382, upload-time = "2026-05-19T21:30:48.085Z" }, + { url = "https://files.pythonhosted.org/packages/fa/98/70b229236118f89dbeb739b76f10225bbf53b5497725502594c9a01d699a/yarl-1.24.2-cp314-cp314t-musllinux_1_2_armv7l.whl", hash = "sha256:2d07d21d0bc4b17558e8de0b02fbfdf1e347d3bb3699edd00bb92e7c57925420", size = 95964, upload-time = "2026-05-19T21:30:49.785Z" }, + { url = "https://files.pythonhosted.org/packages/87/f8/56c386981e3c8648d279fdef2397ffec577e8320fd5649745e34d54faeb7/yarl-1.24.2-cp314-cp314t-musllinux_1_2_ppc64le.whl", hash = "sha256:4fb1ac3fc5fecd8ae7453ea237e4d22b49befa70266dfe1629924245c21a0c7f", size = 106204, upload-time = "2026-05-19T21:30:51.862Z" }, + { url = "https://files.pythonhosted.org/packages/1a/1e/765afe97811ca35933e2a7de70ac57b1997ea2e4ee895719ee7a231fb7e5/yarl-1.24.2-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:4da31a5512ed1729ca8d8aacde3f7faeb8843cde3165d6bcf7f88f74f17bb8aa", size = 101510, upload-time = "2026-05-19T21:30:53.62Z" }, + { url = "https://files.pythonhosted.org/packages/ee/78/393913f4b9039e1edd09ae8a9bbb9d539be909a8abf6d8a2084585bed4b7/yarl-1.24.2-cp314-cp314t-musllinux_1_2_s390x.whl", hash = "sha256:533ded4dceb5f1f3da7906244f4e82cf46cfd40d84c69a1faf5ac506aa65ecbe", size = 105584, upload-time = "2026-05-19T21:30:55.962Z" }, + { url = "https://files.pythonhosted.org/packages/78/87/deb17b7049bbe74ea11a713b86f8f27800cc1c8648b0b797243ebb4830ba/yarl-1.24.2-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:7b3a85525f6e7eeabcfdd372862b21ee1915db1b498a04e8bf0e389b607ff0bd", size = 103410, upload-time = "2026-05-19T21:30:57.962Z" }, + { url = "https://files.pythonhosted.org/packages/8f/be/f9f7594e23b5b93affff0318e4593c1920331bcaefda326cabcad94296a1/yarl-1.24.2-cp314-cp314t-win_amd64.whl", hash = "sha256:a7624b1ca46ca5d7b864ef0d2f8efe3091454085ee1855b4e992314529972215", size = 102980, upload-time = "2026-05-19T21:30:59.735Z" }, + { url = "https://files.pythonhosted.org/packages/65/a4/ba80dccd3593ff1f01051a818694d07b58cb8232677ee9a22a5a1f93a9fc/yarl-1.24.2-cp314-cp314t-win_arm64.whl", hash = "sha256:e434a45ce2e7a947f951fc5a8944c8cc080b7e59f9c50ae80fd39107cf88126d", size = 91219, upload-time = "2026-05-19T21:31:01.934Z" }, + { url = "https://files.pythonhosted.org/packages/fd/4d/4b880086bd0d3e034d25647be1d830afc3e3f610e98c4ab3490af6b1b6d5/yarl-1.24.2-py3-none-any.whl", hash = "sha256:2783d9226db8797636cd6896e4de81feed252d1db72265686c9558d97a4d94b9", size = 53576, upload-time = "2026-05-19T21:31:03.909Z" }, +] + +[[package]] +name = "zipp" +version = "4.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/b9/d8/eab98a517c14134c0b2eb4e2387bc5f457334293ec5d2dd3857ec2966802/zipp-4.1.0.tar.gz", hash = "sha256:4cb57381f544315db7688e976e922a2b18cdb513d21cc194eb42232ba2a3e602", size = 26214, upload-time = "2026-05-18T20:08:57.967Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3a/13/547360d81e6d88d58492968ffda9f9542854f11310ee556fef14260cc886/zipp-4.1.0-py3-none-any.whl", hash = "sha256:25ad4e16390cd314347dd8f1de67a2ac538ae658ed4ab9db16029c07c188e97f", size = 10238, upload-time = "2026-05-18T20:08:57.045Z" }, +]

rx3be13-3IgVd=wwxK}J#b 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 J2NCu9e*i mesh # existente + "hunyuan3d_mv": multi_view -> mesh # NUEVO default multi-lado + "trellis_mv": multi_view(N) -> mesh+3DGS # opcional, flag high-VRAM +} +``` + +## Pipeline UI propuesto + +``` +Mode toggle: [ Single image ] [ Multi-side ] + +Multi-side: drop zones etiquetadas + [ FRONT* ] [ BACK ] [ LEFT ] [ RIGHT ] (+TOP) + * front obligatorio; resto opcional + [ Backend: Hunyuan3D-2mv v ] [ Generate ] + | POST {front, back?, left?, right?, top?} + v +Backend dispatcher: + 1. Validar: >=1 imagen, front presente + 2. Preprocess cada vista: bg removal + center + square pad (reusar paso TripoSR) + 3. Route: 1 img -> triposr ; >=2 labeled -> hunyuan3d_mv(image={front,left,back}) + 4. (opt) texture pass Hunyuan3D-Paint + 5. Export .glb -> path + thumbnail + v + Viewer 3D existente + download +``` + +Notas: +- **Reusar bg-removal/centering de TripoSR** por vista — Hunyuan3D-2mv espera inputs limpios, centrados, orientacion canonica. +- **Mapear labels UI -> claves canonicas** (`front`/`left`/`back`). Poses fijas → el etiquetado ES la pose, sin estimar camara. Por eso gana a EscherNet/TRELLIS (que necesitan poses o mas compute). +- Fallback front-only → TripoSR. +- Gate TRELLIS por `torch.cuda.mem_get_info`. + +## Fuentes + +Hunyuan3D-2/2mv: github.com/Tencent-Hunyuan/Hunyuan3D-2 · huggingface.co/tencent/Hunyuan3D-2mv · arxiv 2501.12202 +TRELLIS: github.com/microsoft/TRELLIS +EscherNet: github.com/kxhit/EscherNet · kxhit.github.io/EscherNet +InstantMesh: github.com/TencentARC/InstantMesh · arxiv 2404.07191 +Unique3D: github.com/AiuniAI/Unique3D +CRM: github.com/thu-ml/CRM · arxiv 2403.05034 +Wonder3D: github.com/xxlong0/Wonder3D +SV3D: huggingface.co/stabilityai/sv3d +Zero123++: github.com/SUDO-AI-3D/zero123plus +LGM: me.kiui.moe/lgm · arxiv 2402.05054 +GRM: arxiv 2403.14621 +GS-LRM: arxiv 2404.19702 +Long-LRM: arxiv 2410.12781 +MV-Adapter: github.com/huanngzh/MV-Adapter · arxiv 2412.03632 +TripoSR: github.com/VAST-AI-Research/TripoSR · arxiv 2403.02151 diff --git a/README.md b/README.md new file mode 100644 index 0000000..e69de29 diff --git a/analysis.md b/analysis.md new file mode 100644 index 0000000..0e48533 --- /dev/null +++ b/analysis.md @@ -0,0 +1,17 @@ +--- +name: spike_image_to_3d +lang: py +domain: datascience +description: "Benchmark single-image-to-3D: TripoSR, SF3D, Hunyuan3D-2, Trellis, InstantMesh, Wonder3D — latencia, VRAM, calidad mesh, licencias" +tags: [ml, 3d, image-to-3d, benchmark, mesh, gaussian-splatting] +uses_functions: [] +uses_types: [] +framework: "jupyterlab" +entry_point: "notebooks/main.ipynb" +dir_path: "projects/imagegen/analysis/spike_image_to_3d" +repo_url: "" +--- + +## Notas + +Benchmark single-image-to-3D: TripoSR, SF3D, Hunyuan3D-2, Trellis, InstantMesh, Wonder3D — latencia, VRAM, calidad mesh, licencias diff --git a/main.py b/main.py new file mode 100644 index 0000000..e264dfe --- /dev/null +++ b/main.py @@ -0,0 +1,6 @@ +def main(): + print("Hello from spike-image-to-3d!") + + +if __name__ == "__main__": + main() diff --git a/notebooks/.ipynb_checkpoints/01_panorama_image_to_3d-checkpoint.ipynb b/notebooks/.ipynb_checkpoints/01_panorama_image_to_3d-checkpoint.ipynb new file mode 100644 index 0000000..507dce0 --- /dev/null +++ b/notebooks/.ipynb_checkpoints/01_panorama_image_to_3d-checkpoint.ipynb @@ -0,0 +1,230 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "aabd4af1", + "metadata": {}, + "source": [ + "# 01 — Panorama single-image-to-3D (2024-2026)\n", + "\n", + "**Objetivo:** mapear modelos open source serios para generar 3D (mesh / gaussians / NeRF) desde **una sola imagen**. Sirve de base para:\n", + "\n", + "1. Decidir cual integramos primero en el backend Python de `image_to_3d_studio`.\n", + "2. Documentar trade-offs (latencia, VRAM, calidad, licencia) que el bucle reactivo del registry pueda referenciar.\n", + "3. Generar contratos / wrappers comunes en `projects/imagegen/`.\n", + "\n", + "**Hardware target:** WSL2 Linux + CUDA (RTX local).\n", + "\n", + "**Vault de outputs:** `projects/imagegen/vaults/imagegen_models/` (mismo que diffusion 2D)." + ] + }, + { + "cell_type": "markdown", + "id": "5f7f4a7c", + "metadata": {}, + "source": [ + "## Taxonomia\n", + "\n", + "Los modelos varian en 3 ejes:\n", + "\n", + "| Eje | Opciones | Notas |\n", + "|---|---|---|\n", + "| **Representacion 3D** | mesh (GLB/OBJ), 3D gaussians (PLY), NeRF, SDF/voxel, multi-view RGB | Mesh = mas portable. Gaussians = render rapido pero pipeline raro. |\n", + "| **Pipeline** | feed-forward 1-pass, multi-view diffusion + reconstruction, optimization per-image | 1-pass = segundos. Multi-view = decenas de segundos. Optim = minutos. |\n", + "| **Texturizado** | albedo baked, PBR (albedo+normal+roughness), sin textura | Hunyuan3D-2 y Trellis = textura aparte. TripoSR = baked vertex color basico. |\n", + "\n", + "**Familias principales:**\n", + "\n", + "1. **LRM-likes** (feed-forward triplane→mesh): TripoSR, SF3D, OpenLRM, InstantMesh-recon. Rapidos.\n", + "2. **Multi-view diffusion + recon**: Zero123++, Wonder3D, SyncDreamer, InstantMesh. Mejor calidad geometrica con vistas multiples consistentes.\n", + "3. **Latent 3D structures** (Microsoft Trellis): structured latents (sparse voxels + features) → decoded a mesh/gaussian/NeRF.\n", + "4. **3D-native diffusion**: Hunyuan3D-2, Shap-E, Direct3D. Diffusion entrenado directamente en representacion 3D.\n", + "5. **3D Gaussian feed-forward**: LGM, GRM, GS-LRM. Bueno para gaussians, conversion a mesh pierde calidad." + ] + }, + { + "cell_type": "markdown", + "id": "6112267f", + "metadata": {}, + "source": [ + "## Tabla comparativa\n", + "\n", + "| Modelo | Autor / año | Repr. | Latencia GPU* | VRAM | Licencia | Repo | Output nativo |\n", + "|---|---|---|---|---|---|---|---|\n", + "| **TripoSR** | Stability+Tripo 2024-03 | mesh | ~0.5s | ~6 GB | MIT | github.com/VAST-AI-Research/TripoSR | OBJ (vertex color) |\n", + "| **SF3D (StableFast3D)** | Stability 2024-08 | mesh PBR | ~0.5s | ~7 GB | SAIL-1.0 (no comercial) | github.com/Stability-AI/stable-fast-3d | GLB (PBR baked) |\n", + "| **InstantMesh** | Tencent 2024-04 | mesh | ~10s | ~12 GB | Apache 2.0 | github.com/TencentARC/InstantMesh | OBJ + textura |\n", + "| **Wonder3D** | HKU 2024-01 | mesh + normals | ~3min (optim) | ~16 GB | AGPL-3.0 | github.com/xxlong0/Wonder3D | OBJ |\n", + "| **Trellis** | Microsoft 2024-12 | mesh / 3DGS / RF | ~30-60s | ~16 GB | MIT (modelo: research-only) | github.com/microsoft/TRELLIS | GLB / PLY |\n", + "| **Hunyuan3D-2** | Tencent 2025-01 | mesh + textura | ~25s mesh + ~20s tex | ~12 GB mesh / ~24 GB full | Tencent Community (uso libre <100M MAU) | github.com/Tencent/Hunyuan3D-2 | GLB con PBR |\n", + "\n", + "*Latencia aproximada en RTX 4090, batch=1, sin optimizaciones extra (FP16 por defecto).\n", + "\n", + "**Lectura rapida:**\n", + "\n", + "- **Velocidad** → TripoSR / SF3D (sub-segundo).\n", + "- **Calidad mesh** → Hunyuan3D-2 (mejor textura), Trellis (mejor geometria limpia).\n", + "- **Mas balance / variedad de outputs** → Trellis (mesh+gaussian+NeRF del mismo modelo).\n", + "- **Mas restrictivo legalmente** → SF3D (no comercial), Wonder3D (AGPL contagia).\n", + "- **Mas seguro para producto** → TripoSR (MIT), InstantMesh (Apache 2.0), Trellis (MIT codigo).\n", + "- **Mejor textura PBR** → Hunyuan3D-2, SF3D." + ] + }, + { + "cell_type": "markdown", + "id": "9d5dfabe", + "metadata": {}, + "source": [ + "## Decision de roadmap (propuesta)\n", + "\n", + "**Fase A — backend Python con TripoSR.** Razones:\n", + "\n", + "- MIT, sin friccion legal.\n", + "- Sub-segundo en GPU, perfecto para iterar UI C++.\n", + "- VRAM baja, libera GPU para diffusion 2D paralelo.\n", + "- Output OBJ trivial de convertir a GLB con `trimesh`.\n", + "\n", + "**Fase B — anadir Hunyuan3D-2 (calidad).** Razones:\n", + "\n", + "- SOTA open en textura.\n", + "- Licencia community OK para uso personal.\n", + "- Necesita VRAM, pero el RTX lo aguanta.\n", + "\n", + "**Fase C — anadir Trellis (variedad output).** Razones:\n", + "\n", + "- MIT codigo (modelo solo research, OK para nosotros).\n", + "- Mismo modelo da mesh + 3DGS + NeRF → util para experimentar con gaussians sin re-instalar nada.\n", + "- Pesado pero VRAM razonable.\n", + "\n", + "**Aplazado:**\n", + "\n", + "- **SF3D** — licencia no comercial nos bloquearia despues.\n", + "- **Wonder3D** — AGPL contagia el repo entero.\n", + "- **InstantMesh** — buen Apache pero queda eclipsado por Trellis y Hunyuan3D-2." + ] + }, + { + "cell_type": "markdown", + "id": "79b13fbf", + "metadata": {}, + "source": [ + "## Contrato compartido (propuesta tipo del registry)\n", + "\n", + "Espejo del `GenerationConfig_py_ml` de diffusion 2D:\n", + "\n", + "```python\n", + "@dataclass\n", + "class ImageTo3DConfig:\n", + " model_id: str # 'triposr' | 'hunyuan3d-2' | 'trellis'\n", + " image_path: str # o bytes\n", + " seed: int = 0\n", + " foreground_ratio: float = 0.85 # bbox crop antes de inferir\n", + " mc_resolution: int = 256 # marching cubes (TripoSR / Trellis)\n", + " texture: bool = True # Hunyuan3D-2: skip texture pass si False\n", + " output_format: str = 'glb' # 'glb' | 'obj' | 'ply'\n", + " output_path: str = '' # vault destino\n", + "```\n", + "\n", + "Cuando estabilice, se promueve a `python/types/ml/image_to_3d_config.py` + `.md` y se anade `tags: [image-to-3d, imagegen]`." + ] + }, + { + "cell_type": "markdown", + "id": "ac91228a", + "metadata": {}, + "source": [ + "## Integracion con app C++\n", + "\n", + "Arquitectura:\n", + "\n", + "```\n", + "image_to_3d_studio (C++/ImGui)\n", + " POST /generate (model_id, image bytes, config) →\n", + " backend FastAPI (uvicorn, 127.0.0.1:8600)\n", + " dispatcher(model_id)\n", + " → triposr_backend() / triposr / 3.10+\n", + " → hunyuan3d_backend() / hunyuan3d-2\n", + " → trellis_backend() / TRELLIS\n", + " ← bytes GLB (Content-Type: model/gltf-binary)\n", + " C++ guarda en local_files/cache/{hash}.glb\n", + " Viewer GLB (tinygltf + OpenGL) en panel ImGui via FBO\n", + "```\n", + "\n", + "Aislamiento: cada modelo en su `.venv` separado dentro de `backend/envs//` para evitar conflictos de torch/CUDA. El dispatcher arranca el subproceso correcto bajo demanda." + ] + }, + { + "cell_type": "markdown", + "id": "e9949f01", + "metadata": {}, + "source": [ + "## Verificacion entorno\n", + "\n", + "Comprobar que torch + CUDA funcionan antes de cargar modelos pesados." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c506c304", + "metadata": {}, + "outputs": [], + "source": [ + "import torch\n", + "print(f'torch: {torch.__version__}')\n", + "print(f'cuda available: {torch.cuda.is_available()}')\n", + "if torch.cuda.is_available():\n", + " print(f'device: {torch.cuda.get_device_name(0)}')\n", + " print(f'vram total: {torch.cuda.get_device_properties(0).total_memory / 1e9:.1f} GB')\n", + " print(f'cuda runtime: {torch.version.cuda}')\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "518eb741", + "metadata": {}, + "outputs": [], + "source": [ + "# Acceso al registry desde el kernel\n", + "fn_search('imagegen')[:5]\n" + ] + }, + { + "cell_type": "markdown", + "id": "bcbd7d5d", + "metadata": {}, + "source": [ + "## Pasos siguientes\n", + "\n", + "- **02_smoke_triposr.ipynb** — clonar TripoSR, generar 1 mesh, medir latencia/VRAM, dump GLB en vault.\n", + "- **03_smoke_hunyuan3d.ipynb** — repetir con Hunyuan3D-2.\n", + "- **04_smoke_trellis.ipynb** — repetir con Trellis (probar los 3 outputs).\n", + "- **05_benchmark.ipynb** — set fijo de 10 imagenes, cruzar metricas (latencia, VRAM peak, mesh stats: #vertices, manifoldness, area, watertight).\n", + "- Promover contrato `ImageTo3DConfig` a `python/types/ml/`.\n", + "- Refactor backend `image_to_3d_studio/backend/` con dispatcher final." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.13.7" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/notebooks/.ipynb_checkpoints/02_smoke_triposr-checkpoint.ipynb b/notebooks/.ipynb_checkpoints/02_smoke_triposr-checkpoint.ipynb new file mode 100644 index 0000000..78c1e75 --- /dev/null +++ b/notebooks/.ipynb_checkpoints/02_smoke_triposr-checkpoint.ipynb @@ -0,0 +1,304 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "c9b49319", + "metadata": {}, + "source": [ + "# 02 — Smoke TripoSR\n", + "\n", + "**Objetivo:** validar pipeline single-image-to-3D end-to-end con el modelo mas barato (MIT, sub-segundo, ~6 GB VRAM). Antes de pelearnos con Hunyuan3D-2 y Trellis, confirmar:\n", + "\n", + "1. Repo upstream clona y compila sin drama.\n", + "2. Modelo se descarga (HF hub) y carga en GPU.\n", + "3. Inferencia genera mesh valido (watertight, manifold-ish).\n", + "4. Latencia + VRAM peak coinciden con lo prometido (~0.5s / ~6 GB).\n", + "5. Export GLB usable por el viewer C++.\n", + "\n", + "**Output:** GLB en `vaults/imagegen_models/image_to_3d/triposr/smoke_.glb`.\n", + "\n", + "## Plan\n", + "\n", + "- Seccion A: setup (clone repo + install deps + descarga checkpoint).\n", + "- Seccion B: imagen sample (de cualquier vault o descargada).\n", + "- Seccion C: inferencia + medicion (warm-up + 3 runs).\n", + "- Seccion D: mesh stats (vertices, faces, watertight, bounds).\n", + "- Seccion E: export GLB con trimesh + verificacion." + ] + }, + { + "cell_type": "markdown", + "id": "a943b390", + "metadata": {}, + "source": [ + "## A. Setup\n", + "\n", + "TripoSR vive en `github.com/VAST-AI-Research/TripoSR`. Clonamos a `sources/` (gitignored, fuera del repo del analysis). Deps extra: `rembg` (segmentacion background), `omegaconf`." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4e94d4d4", + "metadata": {}, + "outputs": [], + "source": [ + "import os, sys, subprocess, pathlib\n", + "\n", + "REGISTRY_ROOT = pathlib.Path(os.environ['FN_REGISTRY_ROOT'])\n", + "SOURCES_DIR = REGISTRY_ROOT / 'sources' / 'TripoSR'\n", + "VAULT_DIR = pathlib.Path.home() / 'vaults' / 'imagegen_models' / 'image_to_3d' / 'triposr'\n", + "VAULT_DIR.mkdir(parents=True, exist_ok=True)\n", + "\n", + "if not SOURCES_DIR.exists():\n", + " SOURCES_DIR.parent.mkdir(parents=True, exist_ok=True)\n", + " subprocess.run(['git', 'clone', '--depth=1',\n", + " 'https://github.com/VAST-AI-Research/TripoSR.git',\n", + " str(SOURCES_DIR)], check=True)\n", + "\n", + "# Anadir al sys.path para importar el paquete tsr/\n", + "if str(SOURCES_DIR) not in sys.path:\n", + " sys.path.insert(0, str(SOURCES_DIR))\n", + "\n", + "print('SOURCES_DIR:', SOURCES_DIR)\n", + "print('VAULT_DIR: ', VAULT_DIR)\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "66dbea10", + "metadata": {}, + "outputs": [], + "source": [ + "# Deps extra del repo. Las instalamos en el .venv del analysis con uv.\n", + "# omegaconf, einops, rembg vienen en su requirements.txt. xatlas para UV unwrap (opcional).\n", + "import subprocess\n", + "subprocess.run(['uv', 'add', 'omegaconf', 'einops', 'rembg[gpu]', 'xatlas', 'onnxruntime-gpu'],\n", + " cwd=str(REGISTRY_ROOT / 'projects' / 'imagegen' / 'analysis' / 'spike_image_to_3d'),\n", + " check=True)\n", + "print('deps OK')\n" + ] + }, + { + "cell_type": "markdown", + "id": "776fe837", + "metadata": {}, + "source": [ + "## B. Imagen sample\n", + "\n", + "Usamos `examples/chair.png` del propio repo (incluido en el clone)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "3ab0f81e", + "metadata": {}, + "outputs": [], + "source": [ + "from PIL import Image\n", + "sample_path = SOURCES_DIR / 'examples' / 'chair.png'\n", + "assert sample_path.exists(), f'sample faltante: {sample_path}'\n", + "img = Image.open(sample_path).convert('RGB')\n", + "print('imagen:', img.size, img.mode)\n", + "img.thumbnail((256, 256))\n", + "img\n" + ] + }, + { + "cell_type": "markdown", + "id": "1aeb1dda", + "metadata": {}, + "source": [ + "## C. Inferencia + medicion\n", + "\n", + "TripoSR API minimo: `TSR.from_pretrained(repo, ...)` → `model(image)` → mesh. El repo guia con `run.py`." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "eda8e7d2", + "metadata": {}, + "outputs": [], + "source": [ + "import time, torch\n", + "from tsr.system import TSR\n", + "from tsr.utils import remove_background, resize_foreground\n", + "from rembg import new_session\n", + "\n", + "DEVICE = 'cuda' if torch.cuda.is_available() else 'cpu'\n", + "print('device:', DEVICE)\n", + "\n", + "# Carga (la primera vez descarga ~1.2 GB desde HF)\n", + "t0 = time.perf_counter()\n", + "model = TSR.from_pretrained(\n", + " 'stabilityai/TripoSR',\n", + " config_name='config.yaml',\n", + " weight_name='model.ckpt',\n", + ")\n", + "model.renderer.set_chunk_size(8192)\n", + "model.to(DEVICE)\n", + "print(f'load: {time.perf_counter() - t0:.2f}s')\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "34911de7", + "metadata": {}, + "outputs": [], + "source": [ + "# Pre-procesado: quitar fondo (necesario para TripoSR — espera foreground sobre canvas vacio)\n", + "rembg_session = new_session()\n", + "raw = Image.open(sample_path)\n", + "fg = remove_background(raw, rembg_session)\n", + "fg = resize_foreground(fg, 0.85)\n", + "fg.thumbnail((384, 384))\n", + "fg\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f646c3c5", + "metadata": {}, + "outputs": [], + "source": [ + "# Warm-up (compilacion CUDA + cache) + 3 runs medidos\n", + "torch.cuda.reset_peak_memory_stats()\n", + "_ = model([fg], device=DEVICE)\n", + "torch.cuda.synchronize()\n", + "\n", + "runs = []\n", + "for i in range(3):\n", + " torch.cuda.reset_peak_memory_stats()\n", + " t0 = time.perf_counter()\n", + " scene_codes = model([fg], device=DEVICE)\n", + " torch.cuda.synchronize()\n", + " dt = time.perf_counter() - t0\n", + " peak = torch.cuda.max_memory_allocated() / 1e9\n", + " runs.append({'idx': i, 'inference_s': dt, 'vram_peak_gb': peak})\n", + "\n", + "import pandas as pd\n", + "pd.DataFrame(runs)\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "8150499f", + "metadata": {}, + "outputs": [], + "source": [ + "# Extraer mesh (marching cubes en la representacion triplane)\n", + "t0 = time.perf_counter()\n", + "meshes = model.extract_mesh(scene_codes, resolution=256)\n", + "dt_mesh = time.perf_counter() - t0\n", + "mesh = meshes[0]\n", + "print(f'extract_mesh: {dt_mesh:.2f}s')\n", + "print(f'vertices: {len(mesh.vertices):,}')\n", + "print(f'faces: {len(mesh.faces):,}')\n" + ] + }, + { + "cell_type": "markdown", + "id": "339bc8f9", + "metadata": {}, + "source": [ + "## D. Mesh stats\n", + "\n", + "Pasamos por `trimesh` para validar manifoldness y exportar a GLB con normales." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "daffd271", + "metadata": {}, + "outputs": [], + "source": [ + "import trimesh, numpy as np\n", + "tm = trimesh.Trimesh(vertices=np.asarray(mesh.vertices),\n", + " faces=np.asarray(mesh.faces),\n", + " process=True)\n", + "stats = {\n", + " 'n_vertices': len(tm.vertices),\n", + " 'n_faces': len(tm.faces),\n", + " 'watertight': bool(tm.is_watertight),\n", + " 'volume': float(tm.volume) if tm.is_watertight else None,\n", + " 'area': float(tm.area),\n", + " 'bounds_min': tm.bounds[0].tolist(),\n", + " 'bounds_max': tm.bounds[1].tolist(),\n", + " 'euler': int(tm.euler_number),\n", + "}\n", + "stats\n" + ] + }, + { + "cell_type": "markdown", + "id": "9a21c430", + "metadata": {}, + "source": [ + "## E. Export GLB\n", + "\n", + "Convencion: `/triposr/smoke_.glb`. Verificamos que `trimesh.load` lo lee de vuelta sin warnings." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "78614388", + "metadata": {}, + "outputs": [], + "source": [ + "from datetime import datetime\n", + "out_path = VAULT_DIR / f'smoke_{datetime.now():%Y%m%d_%H%M%S}.glb'\n", + "tm.export(out_path)\n", + "print('saved:', out_path, '-', out_path.stat().st_size, 'bytes')\n", + "\n", + "# Round-trip verification\n", + "roundtrip = trimesh.load(out_path, force='mesh')\n", + "print('roundtrip:', len(roundtrip.vertices), 'verts /', len(roundtrip.faces), 'faces')\n" + ] + }, + { + "cell_type": "markdown", + "id": "0b2f2d9f", + "metadata": {}, + "source": [ + "## Conclusion + handoff a backend\n", + "\n", + "Si las metricas confirman lo prometido (latencia <2s end-to-end, VRAM peak <8 GB, mesh manifold):\n", + "\n", + "1. Funcion del registry candidata: `triposr_infer_py_ml(image_bytes, seed, mc_resolution) -> bytes (GLB)`. Stub si no quieres atar deps al registry.\n", + "2. Backend dispatcher en `apps/image_to_3d_studio/backend/` puede importar directamente desde `sources/TripoSR` (no atado al registry).\n", + "3. Cliente C++ envia POST `/generate?model=triposr` con la imagen, recibe bytes GLB y los guarda en `local_files/cache/`.\n", + "\n", + "Si no cumple (lento / VRAM mayor / mesh roto): debug pre-procesado (rembg buena? foreground bien cropeado?), probar `chunk_size` mas grande, validar checkpoint." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.13.7" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/notebooks/01_panorama_image_to_3d.ipynb b/notebooks/01_panorama_image_to_3d.ipynb new file mode 100644 index 0000000..507dce0 --- /dev/null +++ b/notebooks/01_panorama_image_to_3d.ipynb @@ -0,0 +1,230 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "aabd4af1", + "metadata": {}, + "source": [ + "# 01 — Panorama single-image-to-3D (2024-2026)\n", + "\n", + "**Objetivo:** mapear modelos open source serios para generar 3D (mesh / gaussians / NeRF) desde **una sola imagen**. Sirve de base para:\n", + "\n", + "1. Decidir cual integramos primero en el backend Python de `image_to_3d_studio`.\n", + "2. Documentar trade-offs (latencia, VRAM, calidad, licencia) que el bucle reactivo del registry pueda referenciar.\n", + "3. Generar contratos / wrappers comunes en `projects/imagegen/`.\n", + "\n", + "**Hardware target:** WSL2 Linux + CUDA (RTX local).\n", + "\n", + "**Vault de outputs:** `projects/imagegen/vaults/imagegen_models/` (mismo que diffusion 2D)." + ] + }, + { + "cell_type": "markdown", + "id": "5f7f4a7c", + "metadata": {}, + "source": [ + "## Taxonomia\n", + "\n", + "Los modelos varian en 3 ejes:\n", + "\n", + "| Eje | Opciones | Notas |\n", + "|---|---|---|\n", + "| **Representacion 3D** | mesh (GLB/OBJ), 3D gaussians (PLY), NeRF, SDF/voxel, multi-view RGB | Mesh = mas portable. Gaussians = render rapido pero pipeline raro. |\n", + "| **Pipeline** | feed-forward 1-pass, multi-view diffusion + reconstruction, optimization per-image | 1-pass = segundos. Multi-view = decenas de segundos. Optim = minutos. |\n", + "| **Texturizado** | albedo baked, PBR (albedo+normal+roughness), sin textura | Hunyuan3D-2 y Trellis = textura aparte. TripoSR = baked vertex color basico. |\n", + "\n", + "**Familias principales:**\n", + "\n", + "1. **LRM-likes** (feed-forward triplane→mesh): TripoSR, SF3D, OpenLRM, InstantMesh-recon. Rapidos.\n", + "2. **Multi-view diffusion + recon**: Zero123++, Wonder3D, SyncDreamer, InstantMesh. Mejor calidad geometrica con vistas multiples consistentes.\n", + "3. **Latent 3D structures** (Microsoft Trellis): structured latents (sparse voxels + features) → decoded a mesh/gaussian/NeRF.\n", + "4. **3D-native diffusion**: Hunyuan3D-2, Shap-E, Direct3D. Diffusion entrenado directamente en representacion 3D.\n", + "5. **3D Gaussian feed-forward**: LGM, GRM, GS-LRM. Bueno para gaussians, conversion a mesh pierde calidad." + ] + }, + { + "cell_type": "markdown", + "id": "6112267f", + "metadata": {}, + "source": [ + "## Tabla comparativa\n", + "\n", + "| Modelo | Autor / año | Repr. | Latencia GPU* | VRAM | Licencia | Repo | Output nativo |\n", + "|---|---|---|---|---|---|---|---|\n", + "| **TripoSR** | Stability+Tripo 2024-03 | mesh | ~0.5s | ~6 GB | MIT | github.com/VAST-AI-Research/TripoSR | OBJ (vertex color) |\n", + "| **SF3D (StableFast3D)** | Stability 2024-08 | mesh PBR | ~0.5s | ~7 GB | SAIL-1.0 (no comercial) | github.com/Stability-AI/stable-fast-3d | GLB (PBR baked) |\n", + "| **InstantMesh** | Tencent 2024-04 | mesh | ~10s | ~12 GB | Apache 2.0 | github.com/TencentARC/InstantMesh | OBJ + textura |\n", + "| **Wonder3D** | HKU 2024-01 | mesh + normals | ~3min (optim) | ~16 GB | AGPL-3.0 | github.com/xxlong0/Wonder3D | OBJ |\n", + "| **Trellis** | Microsoft 2024-12 | mesh / 3DGS / RF | ~30-60s | ~16 GB | MIT (modelo: research-only) | github.com/microsoft/TRELLIS | GLB / PLY |\n", + "| **Hunyuan3D-2** | Tencent 2025-01 | mesh + textura | ~25s mesh + ~20s tex | ~12 GB mesh / ~24 GB full | Tencent Community (uso libre <100M MAU) | github.com/Tencent/Hunyuan3D-2 | GLB con PBR |\n", + "\n", + "*Latencia aproximada en RTX 4090, batch=1, sin optimizaciones extra (FP16 por defecto).\n", + "\n", + "**Lectura rapida:**\n", + "\n", + "- **Velocidad** → TripoSR / SF3D (sub-segundo).\n", + "- **Calidad mesh** → Hunyuan3D-2 (mejor textura), Trellis (mejor geometria limpia).\n", + "- **Mas balance / variedad de outputs** → Trellis (mesh+gaussian+NeRF del mismo modelo).\n", + "- **Mas restrictivo legalmente** → SF3D (no comercial), Wonder3D (AGPL contagia).\n", + "- **Mas seguro para producto** → TripoSR (MIT), InstantMesh (Apache 2.0), Trellis (MIT codigo).\n", + "- **Mejor textura PBR** → Hunyuan3D-2, SF3D." + ] + }, + { + "cell_type": "markdown", + "id": "9d5dfabe", + "metadata": {}, + "source": [ + "## Decision de roadmap (propuesta)\n", + "\n", + "**Fase A — backend Python con TripoSR.** Razones:\n", + "\n", + "- MIT, sin friccion legal.\n", + "- Sub-segundo en GPU, perfecto para iterar UI C++.\n", + "- VRAM baja, libera GPU para diffusion 2D paralelo.\n", + "- Output OBJ trivial de convertir a GLB con `trimesh`.\n", + "\n", + "**Fase B — anadir Hunyuan3D-2 (calidad).** Razones:\n", + "\n", + "- SOTA open en textura.\n", + "- Licencia community OK para uso personal.\n", + "- Necesita VRAM, pero el RTX lo aguanta.\n", + "\n", + "**Fase C — anadir Trellis (variedad output).** Razones:\n", + "\n", + "- MIT codigo (modelo solo research, OK para nosotros).\n", + "- Mismo modelo da mesh + 3DGS + NeRF → util para experimentar con gaussians sin re-instalar nada.\n", + "- Pesado pero VRAM razonable.\n", + "\n", + "**Aplazado:**\n", + "\n", + "- **SF3D** — licencia no comercial nos bloquearia despues.\n", + "- **Wonder3D** — AGPL contagia el repo entero.\n", + "- **InstantMesh** — buen Apache pero queda eclipsado por Trellis y Hunyuan3D-2." + ] + }, + { + "cell_type": "markdown", + "id": "79b13fbf", + "metadata": {}, + "source": [ + "## Contrato compartido (propuesta tipo del registry)\n", + "\n", + "Espejo del `GenerationConfig_py_ml` de diffusion 2D:\n", + "\n", + "```python\n", + "@dataclass\n", + "class ImageTo3DConfig:\n", + " model_id: str # 'triposr' | 'hunyuan3d-2' | 'trellis'\n", + " image_path: str # o bytes\n", + " seed: int = 0\n", + " foreground_ratio: float = 0.85 # bbox crop antes de inferir\n", + " mc_resolution: int = 256 # marching cubes (TripoSR / Trellis)\n", + " texture: bool = True # Hunyuan3D-2: skip texture pass si False\n", + " output_format: str = 'glb' # 'glb' | 'obj' | 'ply'\n", + " output_path: str = '' # vault destino\n", + "```\n", + "\n", + "Cuando estabilice, se promueve a `python/types/ml/image_to_3d_config.py` + `.md` y se anade `tags: [image-to-3d, imagegen]`." + ] + }, + { + "cell_type": "markdown", + "id": "ac91228a", + "metadata": {}, + "source": [ + "## Integracion con app C++\n", + "\n", + "Arquitectura:\n", + "\n", + "```\n", + "image_to_3d_studio (C++/ImGui)\n", + " POST /generate (model_id, image bytes, config) →\n", + " backend FastAPI (uvicorn, 127.0.0.1:8600)\n", + " dispatcher(model_id)\n", + " → triposr_backend() / triposr / 3.10+\n", + " → hunyuan3d_backend() / hunyuan3d-2\n", + " → trellis_backend() / TRELLIS\n", + " ← bytes GLB (Content-Type: model/gltf-binary)\n", + " C++ guarda en local_files/cache/{hash}.glb\n", + " Viewer GLB (tinygltf + OpenGL) en panel ImGui via FBO\n", + "```\n", + "\n", + "Aislamiento: cada modelo en su `.venv` separado dentro de `backend/envs//` para evitar conflictos de torch/CUDA. El dispatcher arranca el subproceso correcto bajo demanda." + ] + }, + { + "cell_type": "markdown", + "id": "e9949f01", + "metadata": {}, + "source": [ + "## Verificacion entorno\n", + "\n", + "Comprobar que torch + CUDA funcionan antes de cargar modelos pesados." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c506c304", + "metadata": {}, + "outputs": [], + "source": [ + "import torch\n", + "print(f'torch: {torch.__version__}')\n", + "print(f'cuda available: {torch.cuda.is_available()}')\n", + "if torch.cuda.is_available():\n", + " print(f'device: {torch.cuda.get_device_name(0)}')\n", + " print(f'vram total: {torch.cuda.get_device_properties(0).total_memory / 1e9:.1f} GB')\n", + " print(f'cuda runtime: {torch.version.cuda}')\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "518eb741", + "metadata": {}, + "outputs": [], + "source": [ + "# Acceso al registry desde el kernel\n", + "fn_search('imagegen')[:5]\n" + ] + }, + { + "cell_type": "markdown", + "id": "bcbd7d5d", + "metadata": {}, + "source": [ + "## Pasos siguientes\n", + "\n", + "- **02_smoke_triposr.ipynb** — clonar TripoSR, generar 1 mesh, medir latencia/VRAM, dump GLB en vault.\n", + "- **03_smoke_hunyuan3d.ipynb** — repetir con Hunyuan3D-2.\n", + "- **04_smoke_trellis.ipynb** — repetir con Trellis (probar los 3 outputs).\n", + "- **05_benchmark.ipynb** — set fijo de 10 imagenes, cruzar metricas (latencia, VRAM peak, mesh stats: #vertices, manifoldness, area, watertight).\n", + "- Promover contrato `ImageTo3DConfig` a `python/types/ml/`.\n", + "- Refactor backend `image_to_3d_studio/backend/` con dispatcher final." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.13.7" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/notebooks/02_smoke_triposr.ipynb b/notebooks/02_smoke_triposr.ipynb new file mode 100644 index 0000000..062309e --- /dev/null +++ b/notebooks/02_smoke_triposr.ipynb @@ -0,0 +1,423 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "7c80f1ed", + "metadata": {}, + "source": [ + "# 02 — Smoke TripoSR\n", + "\n", + "Validar pipeline single-image-to-3D end-to-end con TripoSR (MIT, ~6 GB VRAM).\n", + "\n", + "Output: GLB en `vaults/imagegen_models/image_to_3d/triposr/`." + ] + }, + { + "cell_type": "markdown", + "id": "9b87f78b", + "metadata": {}, + "source": [ + "## A. Setup" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "0c2159df", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "SOURCES_DIR: /home/lucas/fn_registry/sources/TripoSR\n", + "VAULT_DIR: /home/lucas/vaults/imagegen_models/image_to_3d/triposr\n" + ] + } + ], + "source": [ + "import os, sys, subprocess, pathlib\n", + "\n", + "REGISTRY_ROOT = pathlib.Path(os.environ['FN_REGISTRY_ROOT'])\n", + "SOURCES_DIR = REGISTRY_ROOT / 'sources' / 'TripoSR'\n", + "VAULT_DIR = pathlib.Path.home() / 'vaults' / 'imagegen_models' / 'image_to_3d' / 'triposr'\n", + "VAULT_DIR.mkdir(parents=True, exist_ok=True)\n", + "\n", + "if not SOURCES_DIR.exists():\n", + " SOURCES_DIR.parent.mkdir(parents=True, exist_ok=True)\n", + " subprocess.run(['git', 'clone', '--depth=1',\n", + " 'https://github.com/VAST-AI-Research/TripoSR.git',\n", + " str(SOURCES_DIR)], check=True)\n", + "\n", + "if str(SOURCES_DIR) not in sys.path:\n", + " sys.path.insert(0, str(SOURCES_DIR))\n", + "\n", + "print('SOURCES_DIR:', SOURCES_DIR)\n", + "print('VAULT_DIR: ', VAULT_DIR)" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "d049648f", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "deps OK (omegaconf, einops, rembg[cpu], xatlas, onnxruntime already in venv)\n" + ] + } + ], + "source": [ + "print('deps OK (omegaconf, einops, rembg[cpu], xatlas, onnxruntime already in venv)')" + ] + }, + { + "cell_type": "markdown", + "id": "df57ddfc", + "metadata": {}, + "source": [ + "## B. Imagen sample" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "1d8ad619", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "imagen: (512, 512) RGB\n" + ] + }, + { + "data": { + "image/jpeg": "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6d6r6JeiWziDH5k/dtz+X6fyrXlUPbtICc4xis3ojdatMpWLOt1wFGTg4FcfeuXvrhyACZGOFGB19K7WzUfahnpn+tcRcusl1M6AhGdioPUDNECavQiooorQyCiiigAooooAKKKKACiiigAooooAKKKKACiiigByErIpUkEEEEHpXf34xesOuCRn8a8+6HIrvrlmaRGZizFQSx6k+tZ1Dal1MLxGTNe2VvhUGz75z/E2OfYYroJjFZwpATtjgQAk8dK5fxLJu1CJcY2QgdevJP8AWsp55ZM+ZK7Z67mJppXSJcrNjru4a6u5Z2GDIxbHp7VDRRVmYUUUUAFFFFABRRRQBoaRd/Z7rYx+SXAPsex/z611dvMGhljz1GRXCVt6HezPdPFIxcGNiCeoNTJaFwetjoLeQRTtIRkICxH0rhScsT712ycib3jb+VcRUwKq9AooorQyCiiigAooooAKKKKACiiigAooooAKKKKACiiigAru7wNFJCGRoyUQ7G6jIB5rhoiqyoWXcoYErnGR6V32tTzf2iUkkZxuyNy4PP15rOfQ1pdTlfEJB1FcMp/dLnGePz/pWTWt4hIN+mFwPLHf3NZNWtjOW4UUUUxBRRRQAUUUUAFFFFABWjojlNRACg7kYEntxnP6VnVreHmcX77FJJiPI7cg0nsVHdG/C4LOD02Hn8K4qu2tbgm46YGc4Cgc+ma4yYgzyFV2gscL6c9KmBdTcZRRRVmQUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAAOCDXd3lx9vWC4diVkjVgCc4yOnPvmuEq9Dq1zDbrDkMq8Lu6qPSk1cqMrD9blEmolQOI1C/wBf61nU53aR2dzlmOSabTJYUUUUAFFFFABRRRQAUUUUAFanh+bytWQZUb1ZMn1x/wDWxWXTo5GikWRDhlIYH3FDGtDs49sErytwqAsw+nNcbLIZZnkIALsWIHTmr0+sXE8LxkKu8YYj0rOpJWKnK4UUUUyAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA//Z", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAIAAADTED8xAAB9v0lEQVR4Ae29Z6xl2ZXfd3O+98VKXdXVic1ucprDIMYZipkaSxQ0GlmCIHkEGLAkCIIhfzRkw5Zgyf5i2BBsBVsYARMAC5JHljTDySTF2GSzOWyy2WTH6sr55Xdz9O+3zq3q6uqihkGiqs6757537zn77HT2+a+111p77b0zmcWxaIFFCyxaYNECixZYtMCiBRYtsGiBRQssWmDRAosWWLTAogUWLbBogUULLFpg0QKLFli0wKIFFi2waIFFCyxaYNECixZYtMCiBRYtsGiBRQssWmDRAosWWLTAogUWLbBogUULLFpg0QKLFli0wKIFFi2waIFFCyxaYNECixZYtMCiBRYtsGiBRQvczS2QvZsr9x+jbuVKJTOdzmYznzybyWZznEw5nc1K+fwom+11u/8xyl3keXe2wMEigMcfPP6x975vc3uj2+3ORuN8LlcqlfOFwjCfKc0KDy6v7pZLz3znuWwhn8llssXi8eMPXL169emnn4ZQkvfHb9BMttvvTSeTu/Ol/oC1qtbrucwseQoeL5fLveunnphMhgMejafMZi9tbF25vjGbwh9SexwgAlhaqv23f/Mv779ytbO71R9Ptgbjdn+QnQ5BAF1CPpfN5gulQrFSreWLxUKhmC+V6o0GnUW3180XirlcPkdosVgpVYv5/Mvnzl2+fCWbg1ByfEsg+Ww+WyBludkk2rXr1//wm39I8MyeZn7MuODyBjnFDS+SHoleiY/d0yxDx0TcWVKxLP1TEteYN6kxyXRmRHqw+ERxETC/+Z53v/f4idWtzb3paDgdDqfjcY470wl/737nu0qzUaezM+r3M+PxOJuvtNb39zrDwaA3HO10OqPJZLs/OPX8i/tJvZMs0/V989Wk67Hu9DQf+uAH/sLHP5EZDM6feu76xla2Us0Uittbm9Nxb9jtjUYjgEyfEOAEUjnYO2iDL+ZzeTA3E7Y5gUm0bLYMxotFoE8MIhTyhSn/hUIpk4N+ioXcdDrZ73by2Ry0lU9AD4FQsWye2BCTiM4Tki9msuPJGPKZFWfFfHEwHE+mk2q+MJpNx8NRrVgqlYrQaIG0dE3TCbKa/HlmdQkbTycw8jx0kJ1xQtopBM3fZJyZjmu1eqaYmfYHQBz0k574k9FoMhzB6eXuPOR0UqjUi/c9OskVh73u5YuXTl+6POb5c9n7arXOq6c/s719pxZNQ5itekCOyaB7/er5Qqk1qa9tn79039Ly8tJytVK5cP5MpVQGdABBRAFyFYQpqA0mDKImEoTsGG1BZjjKZPpcxAHwFBGCPGDUJDUylCPUs3QQ9hDeNiD+s5NsTtKR3XNTtg+iOTe/LHCFqDI70oeayW4SLOQzBb7meSqjcZ/DKnOPHwiEEyoQX9YjO0OhgWSoeBKtAMXxJKAbiqKyZpjLNlca9z8xq9Rn49FWt3vx2kYmVygX8xDS9mxaeNMj5We+NRiPLSB1xwEigPF4tLdxtbP3aq7RWjl8pLW62mwtZ/K565X63mgAsMajTH8yKQpn0CLQhVgAbQz4pvD67DRLzyD0wT0EAd6A/yQ7hQHDfPmfBqbBGHcm3J9mCyTIZkb0CLlsNRIPc1kyLIPKbDYgKzGNA81glbKhB74ndCaiX5wCe3qLhNIS/p9QExWoEDefm0gDKC/AOYdyg0KPUF+kwrkcSIekqC45FagJdc+RuWIVXVa+0mi86Y+VW2szuoXp5OyFS9SkUqsSi8tSNrPUbEitKT0OEAFc3+62O93e3mZ76/rSkROPvu2dg04HEahcLI2noAtmrAiBaIH0IPi5RNAAl+BGxGs9AuGajUQlIVn6Bn6hkXEWISToZQKdcF+wgkFwBu7IZQaGZ9kBMJWsSDsbBtOnjAJikmFe56eBfnKYzgoUzyElcsfbQSMCPWLnYOdU2grZkYD87BgKCBFL2skX1Gzo0Ky7yi4iEOKRvRjdW3QUlHb4TT+99uhbR8MR0c698vLVre1yvVYsFHnCETQ7m+VLIa1RZBqPA0QAFy9d7D/xwJV2r9Nub7a77/3QR9cO3/edbz/TH40RSXqDHjxeoOYAiFxXEOfk0oRKCQmOQKYSToIFhR9i8g23JkyEBm14aqC37ELQE5JbwctFs4D1UDQhT2EK4U3zk1kxS5cCdEnOHyewbckAUglNXEID56grCCr0Ktqy8qjldgzSBBqGSnyhWKqgx9s5oBeMhv3xoNDvZ0fDyWRMAN0Xem+htXr8Le/Mlqul0mg6Hr300ovoPCRtawueNWpVtP6dwTakkzxw+r4PEAHA0TvD/WyhAHeEBr74md//xJ/8M8MB+ue4kMt1M4XMbARLB4vATYhCBqQBVZncVMl5zotDAgHZ4I00QSfZXEkGDMzVb1F6OfGP/zhBPeYOrJkroWokDtUAUlFWQmehvE4ydisQDsHgjfIViqAW4lI0yQBloVTm4LtQLCvGgH5Kp7hiMUxZxWK5UqoA6xIPMRoNet1OZ3dnb/N6Z2dj0N4Z9TrowSgHhx9+vLq0jNmnUCmffunMy6dPF8qVqxubl65cefzB+0vFQrNefe7VK6MR9UnncYAIYDAYn768+cDyaqfbrxfLp57/7uEjx2D6iL7AC6xgGcnORrDfTB6ZRyYfQn5uikUH3qqcIcox3QA1wVYoisl8IVcs5bD8EFAqYQnClporinhwXyoWgwoKpkAsgWEDZTIgCzAuquXuSibIXXQ1IarTrcjZJR4Rr5EJOjERYZpiC+VSEQIokn2Ju9quoFPz4kpjLeN95UqV+zwFWY76g+4eGtDlrUvntq5d6OxuDPa2q8XqkQffTNnq1bPZd77znf12J98fnr92rYwOwXPnM9DYq2fOpxP78VQHiAB43ldOX3nkZ49ipwRMiLYvfPdbJ46fHI1HvO1KoTAplibjAVgIkRwmnAX4gXpEc3GvdA24GSIQ2ACeQTSGC4ITEw5UySiQLlCVv0lgCMWBTboRBJkxmTqCZifDN0HQmZaaiaYZ3wchxI7MyAFpRqEE4YYci0VqlMHsORorq0E5aO3mn4dEqTlnk2IRxEN7mSI9CbRB/xEkVCzVGq3R8tpoMFB3GfRrq0ery6t0gJDi9a3N5198CWLe7/XHs+nJw4fQv+EN13Z2+4PhggBS0gKDwaA72gMH11H1ipX9vb3+0g6SNnI8wnOlXO6MepnpSECCr+DPSkGKP8hBytwZ7P2hfE6RSugkEA2IOh6DbLoNzOpZjZwgNu8QlhBFv07EJbm96KYwdQ00UU7DYG8IuimZjMCabJzywLLifW4CCTEmIBEU8iPJgHNYe4EeILqZPp2KIpK5Kx2VMS9RNqelbJGeDCHKou09QjOAqSMHQllLJx7AUjuZDIjxyksvbu/slMoVOgryXmk0qiVyL16+uoGqkJLXf6fHOFg9AHLvt5/f+8j7Htnc29sfDMuz6c7edh6JR6Ekz9jWuFgZ94M9h8obDBoZQcNJXgkFNHHBCOkU+04B4YGugVEkMQqvl1fTAYD/2RjAFmaQQT4/y6O7Qhaye6glD+qz/PKjzB+OSfYJmGmymbEDa0EAdhqapfIlhsjMujSdjvNjuyAKNgNSorxgQcJuJIEqWTFiBjVThTHxx6PJuKidVeHIQTQraO+HgX+WL1SW147B/q3FaPTyyy9LVHSD43EZQsNqS89SLG6mdwgsIYeDRQA8887udqVaP3po/ezFK1udUaHYO9KqTkFKsQAui6UyGqP8GLYephyYK50AEHIwjAPgaZyZFrB8YiTMTJB01JcZXIquJD+jg4Cx0wOgO08RnhgjgCrAqGyfOGAf05InGGIctbU4wDrFQI95Uq03OLamI8A6CcY9LYyQbYDwBLIrwLbHhekYhKIeOwpgd0WHQV+TKRdzGHoA8mA0yo5GEBqkBAXY4fBEGJUYKBhPKkur5WpjMma4ebKxvXn5ytVWo9XtDyCCtaWlyZhRD6yopStXr/rU6T0OHAHgBvcr/+L//egH3n380Pqp4XivNzjaKk9Hg0ylhKVSHlksYzKH14eSqh0T9CDEIEqLXC6VdoIFZychkSN/0IxCWiav/jzJ4nJApzGjF4AwUCpk0t7VhKq2C+zg4Ij+DDZh9slM6FXG/Ekzmn3sAFBC+cCIJ/nipAj7H8P+p4XxFFrV1WEWwhUR0ashAMbJUFNMVCgOxyVUGw/pkMIZveZgLJAxjul0MJo0jxyy00GXyEzPnT83HI7Wl5Y73W61WqnVa/RpR5eXt7/9XLrlH5rlwBEAzwwCXr5w9S/9mT9V/Naz25vXq4A5M4Jfar2xScqjcQ+IAllgleiqielTKUNyUIHlEOKCm7jxD6/lBKogjrIScbmVE62yZjQJD+hB8QdjPLK1aMQ3R/cciIFvGDXCF31KSECqwkhF0zzqAVQjwdBLISYxQsX4FxVB3kJ+ivgF9XTLLeLRMOGBhhiuIBJMVYpbUD7GUAyi/UGf2tSaS+PhECV6NBq+eupVlYdqpVwqHaoeatUbK+trG/3tL168EFVO81e8yTQ/4J2fDcSsLi//heP3zY6uDLvb7cFgb5QrV2uIJKCjN0RGgCXLqQEP8DGXGArQcyH8C4pgU6GDPqOArgmfRhjR5oI44ol8mLsQUZiDGO0NOdwvswPC0gDoVwqfaBfCDARTD7UA5BKfjgBbE2RJMRieEi0DVRgXbi2wDGgQy46FpwHp1mz+5ZiD5id6E3sKRK3hqNPvD9Gxx+P+qM8gwdvf8Z48JtRp5vLlS//i3/ybZnNpdXWNAa+l1fXeYPDCyy9++9nnoI07N1+KQg9iD8DrA9Sod7+yvf0z+Tc/cXSpmJ12h4MhnFiZJre8tASSlEhg0uPxwHAZtYwUtg/rx4oIKw9eLmWIQBAr/MF5sG/IIVi0vUVgX6DSCRiK2E4a87GfITCsQPY1DjcjJxXoSCLHTGGAyQatFm2AIFNDXQ57SVpGAuaRP0RixhbPl7KTntnFEoPB1RJjApXV9XXEG4bPGPGA9hTWeL5Z5qVTL+9ubqBNdyvloyfuP3vp0leefHJ/fz9FIP/3PcoBJYCkSXqZzOnre48dWylXiquzzPXuaJwpKLIjGyB5wznh1PJW7SwgDVjqqSMORdoc94E5mL0DYQgScQTDpk8wDt8kInmoyyaUJcP1pQfV5ygETh1OF3QPWoSUqfBmxo4ahOO3WYFu/OfI1kIT8EMAUU70NFSPoQl0+RIjFaVKscxgF6iv4ttJzSQbuoUp6nSJjodSev3emTNniNHvdq4PBtc2N7/6zWf+fXhJ3b0DTQC8zQvXrmenDyC6rFWL4+HgwgBjD4rkGLebxx57EyyfbgBOPej1UCrHw3F3QH+A3Ix1BdwCVr3vUQfoKwYZBAaDiR/HHLScGwqzB8BQFyMF9iO4kAprzpCyADGoJ6Ijt8YhpohHjWCctobmzDAFhlpkKtRibiGGhTZAdwDFYa+E4SMUafhX/4B0EH7oSBgfwwybYbAOia7RrG1t7/S7/eWlNRWTTG5zc2N7axt6QFCqVqsXNrct/yAdB50AsHtW1w7Prp0bTGfMb8n2UGFzCD86GBRyKytrzBpBbMCAguwAiMEZJIE4Dg0APFRK8IdaqR6rv3O23enA8XvdHp3EaDgc42uEwAHBAGV0XEyQTMtC0BkxDRN2nkEMYcgAZRR+DoWgY5AtNKC9HwcNBnQRZnDWq5Rq+Xy9XCJyqV6F9kqVCsIMMg0mfbTfZrNFF4MbM5aeWrOJ+F6vN5HYVKgBNDOeK+V2u8Pw8ZJWTgaTqdD08qVLKAaWMsuUq+XGSjNz+iDB/2BagW59w91e/xvPvfie40uzwbBagMVOO47qTof9fntzW3fIQqlaa2YHQ/TRbrtdyWf7w3G2DGPF3jJrVauTfL7WYHKtEgkfoIY4pJiv5JNDnKk36r1Op1qvQQblcnVnZ7vVauqZPB43Ws1Op9NsNne3t+qNZqVa6ff7AHRjc3N9bY3zcqUOTCezcb1a6/W6zVaz3+vWGrVBbwDXhwK63U6t3ujs7dWarf293dby8v72drlazff6UMig0y1IJxW6A2YAX7u2ceXK9ZP3PaDQlUXQG168eIma85fYnl586dVbG+cgnB/0HgCsKxzDdce4GRSb5WknBo8QaUK2mR09evS+Bx7G8AI3RYpg6Apej0EdDooohASDaqxhkZujCYafQbcHoOgxlPsrxV6vx/x5EuCOCdvud3u1en13a3t5dQUfG0R95J5+p1ur1fo9hqBngx6gr1AQfQjZDkfOacSAWSpWen2c9rcbzdbmxm6j3uh2+khDw8Gk3kD3qBXLtVojW6o0Vw+TogF29RWlGytDrDno+fq1y7u726UwVDm0ncnstfehNHqqIN7cXg9j2OAggP7WZzzoBEBbvLrTffOxVlk1N9+qFq52HD1Fdtjt9FY0mveRT5CUMGpGMLIM8oLKMEK6o6whrfuDgISMjihPVlghtcZkwljpidK8KUmR1+CJwMMcGaawaPWPXKAhzfz69EMAUCMBFAEjJz4mS2IpFYX0j5lT/ZlpxEr50e2EQKURCyU73jD1Up+ZjOlJEMwQjbq9XoV5j6GnoCdc23B1DOKjTqC+X7y6Cd1G0gP0tSCAzPnz56ePHMZBACg0sJ7AvwHAdDJAWEdXnU3woKvPWqANno6XA4G6HhBHNIJ7oMevsjYBykH8OVnLBN5EmZAyTBZkAz4jNj8ZZgCHbROkcl8NGngKXbRSIkF4JKFmjnVFhnxDSErwlKcoEx54YU2CeoI6ky81bCrLUyAabW5cH/T2u/vdQyeP0rcp/k+nGxvXYziZwQBG/4qt1ZXMuQsHCPvxqAsCwL+zkK9Xs+09zCLVfI41T0A+OBsiowyG21sb64eOwkenev9rs48PwosAY4QXqDLvNigCQgBX2mOUqXN6RNgvwMn5AsfYe4SxCfkPKvCXe375p3kT9UAHtnLZFxQyUpCcMc0ELRkPJK84otvhHBoR/BDcHP0Uqwg3YNZne3dnB82b5R7QySGi8ZjJmAzBjbaRf8gN2ssyUWz8wounkkwP1PeCAEBVflBqFLJ76rW5TK2U3x6wRIrOMwglYFZ9YDxl6SwigFVECKUICQDXOMAJmmKiMIm15OgHjQEfvpogHu+boI+sM9JJTw7AMNAMMeg9kdORLvDLEAFmqEm20vA6CQwZya6EhISA/rgTlGQXYycTfkigX5mJ+AzbITaNWO+Hde46aM/40e3u7TAGJj2iwOQy+EXs7e6SiTbXWZbxZmQkMz5gh33pAT+G/d4LL7zErC7Blck0WHUHUMF6x5P9/TZ+NawThelTNVf8BTBl1x6gHUbLLWgEVSEZFiCxB5omXybTEIqzJ4QEwUhMBN68hwHUGbpce+CEgTqbUJcQl16kNHIyxyg9yT8ClZoiTvIOg0CoEtXFBDvoDwZ9au9gxmS0v7/XWlpmMMPCp5P2/n6331deoweYTR995OE6i0YevGPRA4jWEdDGS348hBdWihCAErmqKOjEOX44ALygFngopkMf2kB1m8BtXthKMBzK+a4FgeoLpnBZgzdLL0TIMoMLl88Zy2fB4bGOwrVNot4cgo0umwymlSp1BnNJJZtXoqHPMXuIAFIjXB8IUnETXOeyrOUQspXyk/QhKTlSB7lBajj6MyAA4fE8e9v7h9ePQBc8FKl3d7YZ7kAr4alYFunpZ7+zfyAXRV0QgEzvvs3d8onVLoJ9LlNhNCCX7Qn3GWxyNEYJHiAxy41B2FzM5lQDPUwe2yUXMFnHXmczfDXhsMwyDGkpPEMtQVkFKE9HaNUilaCE6+O1AKS5D2yx/Dj+FRFuEJU8X8TL/zW5RrhMm0Sq16FtWwLJiCOz14mJuTD6Q9MzMeMxn0OP7/VZ6AFZfwjlQki7u7tU1xEwvouF9n47CCNyOkhfCwLwbX9+a+vw7MHizEWjSoynlvIdKWCGlzw4mrCUyJDOAfwkIJfri3u5s99cKyOpoToHANPjhMFbjZTA3WTw5eDhFAURMNKWYf4Lg8C6gE6cegWOicNQrEuzgGNUCZEe2nE4pKIk0PEU7IlY5kRBqqRDEvFYRQVSnJUnU2QdrTvKZGbiAagnKL4ZxH08HfR40wdbaWxnb8cc+dAzzWY7e/sHCfavPeuCAGyLNo5uldKsPVBsz6MH57a6QIN5Wh5w/W6/uw6+RTF81lvAiC8FFdeVGBKTaEW0yaLSOvPHNOfYZ/ghCBSagGM6G8bUFCwzXI2LOlkgAJWqdQyigNauxwIiLWfKQV4Da6AN9PHit8RCsVmtzPslaFWLrUUZScXE3gD2zz+E1G3voc2rfTBNLJMZjPrtfdYt5dR/Um1ubVriwTsWSrDvHKxcbneYwgsWaJEq8nggF/aPHgwXBXDEgRdDAqGa8u3cQsyWQJtB3MuXLuDjIIMWiKIvwBiAYnZhQDcA7EQwDrqUTpelenBNa7NqFQNbTEgHiPJntAzBnBCCOSUMHV7OkHJngF2nA0dvd9r0OIgw1tXDLosJjowL6G1H7DjownCGoLYNloRwqi8d0HTY7aIh+yQ+Z6ZUY5TvgCLhgD72bZwOkfnS5R28fcAdmMCFICCltDIYuhIDejCIklSC+QN6DsgEEcTBsczs2rVrg+4ABQDfOAJjaFf7DbiEgwProApzRQcgApgG/WfPvnL96iXsj+Vmi3KJLZZh4H5JKREQ+OcrQD0Y9vf2treuXWnv75APEbjDj5Ei4pB4hDjT0i6HXquzv3/50sWhtiwNUtzaabfR66Nvckh7Z581UZNO57aGSf/lggDm7xjbDwfYAYI153cJVgYCcM7Z29xRwkF3jAEvool7Rk9ZvhNBP59fP3zk0cfecujo4eZSi2mFaLLSgPK+7FygqQ+EwMF6tBqc8tVKFas8SvaVKxdd/xwTpOX7OoigcK4SMAc1w9L8SQJINaNRr7139dK5i6dPYeDH845UFADYKU7rk+fO6IfTc45+Uamw/m2TlYzAP/MwoaN2ex9SgEChHypz/foGvUX6wX6nJ1zoAPNWqa4cZpnBWaYLZHE/YFXkgXx02usNXJXfSeXDulw6vBJCwmE8Scw6SSt/8sGHIA8WLMT/DM6NzKNTqQxcIJOObNWhoTFAiSt/sXjyoTch9LOC29LKOvAW9nQpcnQpxoPkN36lhsTCCi3h3DYcVGs1MoT8wHn0HspKTiowKlWI7gDET8eb27tXrly6b/04EhPh1AXXILO3BOQ4tskpJQUdwO8FAcxf+tPfeu6xn31rXUxMkYjLhdweXH/CEmyTnd29peUWzgTgClJg9XBAFCw6uPacBsA/XgZOC0AKIib5IIoE43eAFiJwyPUGn8eZGfQ+8fZ3VZmNVmJ+FrqpclEeGSXUgKAczkghTKklhDYrlGpNqCjzpre87ZFHH19ZXUfSTyQmmDmHshNJQgdQ4GEEIJfHTfTQOiu95ZjWSRQsW+1+D5rhjyRMFVtimfiDeiwIYP7mcfscMMuEFZhZaKqQq2Kd7w4RW7CEwmW1hWIMBYfY3XUmEzyYbIL1ijxygQEzrgRvHgx7yDTKLMrnrCYnU4a1izntPLpe5rB+KviwJAXDvyN2hiGHAK/fWv0jQEEooTJu033gajfJFRrNEycfLFdq4Ft6gcsj0ATLd74jdOelofxBVxvXrjIpmKXTx1M8WzEEDUe9IbWhFEbj+v3Bsy++Mm+Fg/ez0AHm7xw4Lh8+IpQ1hGZxieMG6EPo7vd6iPV4xgFLI2j4Ec3GAHZKHuIuUMj0GNakmgx7LKwSmi94U5SSN8OYOQHHpGOclsVrQa2WSeeKaWliAI1sKJS/AHQUR8IIUdJyUbfpyqEjeEfD3k0VB3VA4grsa+Sx5yIfKHAyZZINlYV6qQ4aBLUc4B1BbybFhsKQxdsj/as/0IZ3PBYEMG8WBJlhhuUwkVMQ4GeIQDQN0gYwY1bk/i6bzE2YAoNRhT+wqDSvaV+hmwNcgl52nuTDgK6edDHminuDeivYxEYZpnpSTocD1naWQAKRgp5OQM7t0BW4xHRPHRSb7EQkCcsMY1RraYUZ97oPSVGwf9dWceKZFENiQtzVwtFgaMHuaryxtUHXJMGwLhZEQKfGaACpyWE6bbXq+MPeERwHIXBBAPO3zI4BX3nqKYQTr2eQghDnFKAxLwuhqNtt41WjTmsE5Z+IGGJO4B9EwmBhuoAP7wLsldpsZO4a5Dn1T5RDKEjerPXJr52KxAP5IM0r/yeX4pikXCDc+8d47XCI4YgVPM3E/oWipB14P4YmDtVtPfCiN4psCIZICcDDIsQlSmSGAPt9qZXoPZTLXt/uUJQPdSCPg0v6b3zdZcZinWPFjjGI+jB5AKKlEK7Oev8ycceaFMX5x4sNG5EhN44giCAPGDejwmBuOGTfVPAnPlUfWCi3MB0Myo0m2eCGpqRCPxPzwqABysKLmvylC6CtlQdCjOkv0V3UWy24PIkgTSjT1Hq2YfGUjkC3AJcQpF1yoNqIYyxmoVYB6O1Vpj2mYtq5BBkX8levX6dDuPEQB+53QQCvvXKHwRTUwZA7kQI9kcK46XB4/dr1Vr0FCxc2QBaLDeRBJyErVlBRWw0WnMBXFQFcs5QnrjgovnB9Qcf+GyPmdjH7nnBuyIVFKhqyyE2qQnwxjsMok8kkBqYZ6LDKXGGzkjCopkSSpOHCehMeg1yQJYn9k2LH/R6TIVWFzVHnDOeIER8SoUb0dyy6/loTHLyzBQG89s5P3v9IsToe9DuYOUFeMZ9TpIF1jiesGIsFpjPo1xU/UGX5cAsGrBRhRwGXt2/wkB6CLmT5KLf4PYD/IUt1VrKjMVsSkRRFwFQiF/hOsJYGrdFZQBCs/IxeLGzJ0jn7GmxmpWqVb2gBDYFEZiAFRFcRNCkdGMIR92ezRqO+cf0Km8lIEfYQku2IDS+kRmhG02q5dBCnAdx86wsd4GZTZH77qac2XdVHd0vapQzwVHmxBE07uBPs7WCoAUfJODCQ5I+ZjwF7M1FWEfxMsVK+CPTKYIE7667ttXexJtGDsGIhHqGST+jEnGK7ZPGtJIhTBJLeCL8KZ3NhUxXT0ykmIwz5nDFgGzQD8WnmAe8SB8w/MhD9Ckf2ZdRl0N2/evkSg9OSSghLxEcF9jZ5zVzekX25rf1BPRY9wGtvHiezor7DfoAPFn8YJiZRpZVZtl6rxbTaIWKD0HPdfwUJASnsJBWRHdJPkkti9ARqG9cuMTmLSI2m7N99KHMK5KRWoJlnISaFNL2FC6Lgg+2WvrVqFWGqXNVVLsBt7ZIyoTeV2RuX3A/tIWLZl9BplNcOre5s7Knm2uXQe9AV8ThWlPjMBKi2Wq81wcE7k8EtjqQFcKspNdmEK8OkdpwjVT/tAnBrxgAz6LQ78lcYvxZJl6idhKlUHIFMICWoQKdEEdg2NXfa+3vnzp+/dPHKeMikGW7n2FSDzkLyiFQYhjCwIixhL0JbIJC/cZ/57EzS6kB+rG7L/ALzcpOmEN7FuuiXYCjO/oDDHLmMMTAiZ0fd/qmXToF47mFn5YNmwEgw1bOMbIZlUV45dXBHwXhDCwJIwO83wvqrO5vgBrxAArj1yMhdylNrI7jpdJhP4qpBRBZfTiBT1wWcAXwHCSQaWXJsWldgzyI2bKwtLa8jardWVhpLLZzg8JogdeA2mVKjGQcKUEzHXsqsRdbemoz3drY3N64yBs3qbgCcviXJHKUV+IfF1KFcy2P0OspVPlNP8AIP51KldPz4cSe8hzOf6TCbOkPAh6D+KBhcGvugHgsCeO3NI3Scu9iBtcNXGRCrFNlyQnzBOPEXwH0N2SKxzctrZaiI1Z7xD6K4FomiLOkGFJ/g9Kzl9tCDD7/rfR+478T9rNcJMI2DLqEUomJKBkyjjF+YupjW1jkcttu7Z06/zIgaOwJAMIQLX3i58A2Mk968tGk6OZg4ylCKVRSAyajd7Z8+c8bRBEbHwj6KrxIaeTyVqVTZJcWDeyx0gNe9+9giBpiJKSZGCg25OUvZjrY2N5fYU5rxXVVkpH3de5T4E8wTkjBV8wtbEKII/UEsvXjsxIlqowlLZn4xZh1jKu6EyK+0pGQC2URP4t4AJdYEajaXV1e12nAdqriijpJLUqDlWU91cXf5Iz34D7JAYbHa1j2bO3ToCJsY9ycdikD7ZicOjvn9bKZaLEs4B/hYEMDrXn6tzNa/BfaXw7Ge2fHIQImcjeSztLIsv9d5QeYKimXaYhMAyfLBsVCSdlwfAoGGE/KADFwulwsCGbRqd3Q/tvvgSloQtgFJ+hDyQ8EoVmrlWuWhev29R4+z8i7EQk9iaQF3kkSJCmCkR4KxpIQawvbvUDQsn+L6g43rG0cPHaPa0AuV7Ok+N9dVKK5x6BDdC7spva4VDtLFggBe97ZPPvw4i0D3+11gDvtGWUU7RchnHGr7+gazChExQK5wDQYMEEVlIBgiCGjKp+0ZMOQznBC9CEJ/DHwpcILVXqddqLBHqyJTCFHQhuO9pCc6e7ogmrO5y5FjS+yHBMdHgpd+PChYdSAknTAhAeroGCw7YkCWVI9vN/0u5NfW1uk2FNYkMmc18Gic849+8p3nvoOe/bomOGAXvpLFcbMF/u2/+8LW7j7sGoYKb8AQJOScRQ7nnGmd1JHG0QCEd+4Zj9vSgfEgCuEY+COAXkFJh1BYMsmYC89IAov54I/Q7cKIkcjxlkPf5dw45JlHRGJluWmt0YQmwCuUg58QCznQY1AYpKWIH7UKg0+gnhI0cybkZJ2IS2eyt7vD4nD2WdyPilIB1Y6ocaKLk97sDuqx6AFe9+bhzWBnlHFWACowS6SwVhtyjrvmzWbMLZQDc8iGJQykF+ggkdGDCJS/xaWLVrE/pFhFqBG7ykgm4Rr+znrl49kQa2vCzfOkoMfhBgLYaNRoLaMP6HlBqiQhO6iGvUkCkP+rGVA4slZiN6UmSVdEGY7QhSSGeGOJatgO2RGOLQtKsFsiGt9W6kAfix7gda8fPbVSqyXAQPLBDgTSbCOcontdlllOHGlMA3SAIF+RQcB0jibYbRAJztGwf6yq4hU9F8UXIIYMzgYwUAd0YRC9RH/IHjPOvAG6OIq6QgTWehLHn9kh64dXBbQHpr3Fr5xchPPvaZRj0agf2QySFBtzMM+HAWy6h6gccwU0Ac2Nr0wvYC3sg30c9Oe/7e3jEHrs4ceQVEAX2MYpmgjAC0EEyLPfHIHAC/yB+4SDSgdEkmjii7u4kxIJaSeicQfQAnRGEFQtHEUOUmBlRQQSZxCwYkMPezwkR2dSabSCMChEEgH3ZEb/owwUh6k1ZUoIEiKdhf8YUOl1PItuCdUF5wnWKSpRAoSXUCcCXNz1uUv5/KEq65Ae6GNBAK97/SwY+Dtf/HKZ2fFinC26QocFZxNnx7PBBGqAtzDIIH74owA0pwBlEkV6BtSQ9hM2jICEzMG5TDsORHhkFagCbs+AMiTQ2d+jc0HWB9BsxwSGJRHRDzHx8Y/kkhj+nBKMs20YMCMjJC0IITF/kj2v07SWR8czZucl8oRqCJYOmTsTq6H4zEh05eoD9z34uuc/eBcLHeB17xzk9Dud6aE6QEYEiXVygYoQRpJm+2t2foEdB6sH7i6tDPrhuv5m2UmMNfgHcHsukWNEr9K/NMI4FFIKkUeJYYgQ5mERNphevXwRjFabzWqtwXwXXfy1h6Jd3HAYIp2OD+Tn+AHkRZ9RmZahT5i+ZED2li+FgHcohPGKWrXBcoi1CnspdaFMkkMrfUayfSAHsLfb+1/67suve/6Dd7HoAW5/58Uc6zWE5MOWAK73r5wBdsFoaL7CmKCAlJAT1HxyrA/HSm8b3c7+cOSia0QQx3J9Bn1l5iz/aWhkGCnYP4mlcMFslt2KIBrGjEOuEakUSUrzUNqHUJS7ZOHjYa/PynBb27vbkCtKcCjHMSYAjSoE6akEaZB0v9vDjATFWkXUEDoFN0GKzoQlrBkWiPVRbm+Cg3S96AFuf9tL68tsMs3WYJhlhFKYzEEhdsgui0WvMRIc3FYqgZm7vQrxYPWvvPzCoNdZWl6rNZaKbKkaSmlifo8uQZoBh+G9I7vOsjJKJrO8dvihbP6Bhx46fvKh0LchM+SVoBLzgGRURzyVhdunsJ8xK1v1N67V6rXSoaPIP5AWJIJtX6mMuAwmsOo68dhyr1xq7+wiyTm+rcJB9iov5KzhKM68OqjHggBuf/MvXdx4uHEfiAHf7E2Nc0RfNwPAw4JAgFbUgkgOhXX+OUID9TeW72dXdsZ+SULjwvgJTXAM3sAcUAZ2jDcTn3HiSrW2trqeR/LR79oBr2RYNyAv+iUFu4QgAYggxJzRYHT98hVyeO/h+6iTMj8sH38fC1YtsIfJMx+SnfGGDuaFXsESvvRjpEqeYGovcdApYEEAQvnW4+zZc6OHDjEEhjcEOyXpwwAYZzinqdeyyj5qqPwWcNNFQAbcRhQpFB565LH23k6t0YL7IoEQJZE8AL0nij8qqeQV/Ypn6AnmQ3ZKJsr4ik4QEnYekcn6u/Yb1sDbfsgJ784KOwHn8xtXr5IJk48n6NKhj0QsYpJs2mnvQ4i4/O9TENyf/Tmcd5/0Lu5OuVytYwhldJhUB/ZYEMDtrx5ggUCQCDeGsytMj8K5YDxmWlgyYAXs5uahRNbnezZrLa02W8sgFTWUQeNpEY0UgURX5yjDbychCvMcMwzg/XJuIhBLXVbJhI4GxUC9GR0A0uEwOb2RqxUBXtatYMvr1nR6gn097n+gXG8o9VBVfYjcU74fwwPZPM4Whd6gX2DZ9iAs6AzblJE5KGk6rdcbPKyXB/iAJS2O17dANjeqlpCogQme+06LAe7aN8cIRIgYbLsLiLTDg1vs+vxw7bdOcshEaKDYgEClmAywQR+sy0NHgS5LYXoJOW7r/gNIVthslM2VTxz8Yj8OCEe/CDoRhBkysgDow4XhGCar1OrNpeXH3/bOBx55TNme2GrbZDz/QshhNQm2RnVImGz5ivwoly4AaiEeVHr/mx4t16qvf/gDd7XoAW5/5eCsVmBt3I5oQhBiYqRw1wzElu7D3oBdVWWpsl0lIYHnr3w2YdegFugrdSPPx1qI2G7oDTQ9gmwEItbEjYUhOAHclAjGMa5CPuAcRzY2EfPc/MiY3TaQtvLUAXJCdcCQCZHVm83JBBOPllZJK+hQEpNm7E6azYZOq1mXzTK3cD2S/iJX5un8/u/+7vbWVgQc3K8FAdz+7kXUdFINwLEzO3AXMRrgcQl192wkaQIEGZgKFSCykF7k6hKGPQMr7OryL5XYW4DQUEQ5YYJvKYglPOfIR45MYoYKGGGQehC0DCAf6UcCsQoRDTJgunCtVkuYu52Jdk584cLJzW7D2QV41DG+JnHEHEtD8Sp1hIEqmhskh4AkwRzsY0EAt79/mPak3Jz1O0AE5bWsPScOpmINBzjYwKXBDZyWj7YeMSue/ALwfEWPAWrZL8N9u2TheKENc2OnyKDASg8QBzegIxYNAvtcsFukVKDWTbjUEvqCkj8EZc4k8ATqYhMCakOfEegfE8LKvkpCdiHSC8JSyGw5l/WdTUsMGFD/8IST0ngg6WAhAC+aIAH3Ld+Mnp48+YDmwoA0qwMFA9ZEw0SZ9h4rLEykCfAv5Dy4CilIth43+LUviMnvBrHFGNu6tPd3Yc6oqqCfg3zCM04pBh5OZvyZqVw5hKsYArMAeg3z41BtyMdOkjlkeyUrxHpVB6mQhJELJaJXMKMg3IfGjhJQXUQgx/IgVQ/7Ews56MeCB9yOgP3d3c9+9nPMZmf0ig8dAJZ1eC8sn6U98V+gHxD53EpEF4EZgBdVMlZjo4bGd7JfxplXXr509gyIL5TLxCAvcoh+BABLBopdSEqE8ssBNBPUBkFQQOw7T1UdCmZlIRDfh8CSZHyjOqORWymrRjg91fbGBnKRZEY6JjOo987xTyeF/adUO9BLYiUvfkEAtxMA8Ov1B9g/ZakKOWqqHmEIYnAVTHOLAC3qfkB68FWwbx8QFhmgGLcYKsAfkx0oGs0ldoJxHeYY6qJU5HHKCp4tI7dbCHYOYXADEAfLJ0O9IpILCYSMFY0Ac3Bw0R41TdaJUAyzN2Bv48bSUilfQvCPePQh7o5KPkkFGD1YX16//eEP3vVCB7jDOwdhwliETcsJ9kEziB9Num12nGa3ublxH9kdFjJBZsdgJPdP5AtAKnBRn/nBFvrmtz4BqMmDdQmBteI8URwU4Dev9AKOJTaic9fRKahLDVg68qAu2HHIrkCBYFj6gNrUCeK+3hB2WVLK1HUdS8XOznavx1x4JSrroQiktTQ+ago1RKkDfywI4A4QYF1zfSanM1Z2xvOBToBFZSEAOCjjUOWKw7cyWlHsH7ciF868I0BFXNj8k2usmEAU5aFUYnVouT5pKSLSkcw+BjuTchOBqh/SG4MM0gDgtyikFoOU3cnZLoG8pQlUX5TsSGNpqtZWnsV06/V6+9q2ROI/sxGgkahWdrbX7Tz3wkF3BaUxFgRAI9x+FColzCjApTDDIC82BWCWsTB899u7e3sMxTZqDZi6FiFuGANoKWG7zC1zG2G3YJdggaeAL1iJKqCx2YwSYdyUmFdh9mGZ0bMCpx4KUpHQaScIih9lLgUyqDHysTeRzhIytK8yJvsq8WNlXFZ9hN9ol73AJBVGtUkdEpC5QDvUBHXi9ic/eNcLArjDOy/UGP9FpsabR2MJ55jmEUqUQ7LZcgFv0SKyuAuwBe5kz8l5Ispgqic8MIuogrA+JyAoAOYdrF2pR/gLcb7c1AWJyCTKNvO8Ea3g+KggjqupHjPGbDkTd9Sj3lATlxTEMa+Ao8UOQKNSRKVDxYAgkdPoPfSLlnIsmYTxdYfnP0hBCwK4w9t+sLRWY3aL0Jrg0uC2SXjzh9vMcODi+qzczBpv8nZ4ekBKAM5BGHI4gcLehdyEvQBFSA96Cg6ciC4AETCSg251DBNDZxCD3kg5NuBgXxe7HwCdZY4CzkDE4ZTxgjAxkaMUQA5JEYo3OUQ07D45tgBj2gwEhMKAUhEykxYmCSbpfKBKaebAHwsCuAMELveHRxqsYq6owDqE4BElANghxGB1Z4s5+gUQjCgj2IWUEoiIAuViDL6LkCLgFFw06qChuvindOC3zJdQEkQfALbBvB54IN4ld5lgYLlMzQnagJQAfT5XKLGFcXZYLBuAXqH/m4q0Zd9g5yz4jLF1NO6xHrXeDyFTMdzGGeMAZkQXw9K/JlscCx3gThj4wte+9uCH34UnDQwZoScQCf7VRwmr1Kq9Lqu7YdHnmGBchM+yeCjTJVnSH/bd6/fZfHfYHxCZKVesA8dMYgDLbElQ3u/19dQfDZmqgl8F5FEs4ik3QWHt9HqNRgOvZfRXjKLVRg212+XRQW0uV+ZgFJnBhAqmqQzKOEtLAPwSnkuU5IAdvzj/ZBksY2eAWqW4k8+zubGLLUqS0iE5SXNObHBCwp2e/mCFLXqAO7xvLPfYEcejgThD/IDrqjTSAWTZXYJ5Ydsb1/m+eu1qrVJBJ4ZMuvsdFuFBRa5Wym3OCwWWU69WSvgOCUrYuXydldoKJbyL5NzZdrBvUMiOwTiFgs5+T4eGfndQbzZYw5Yp+HQoo6pbO2qKymbZVh4ZrNVq7m/vrh1e39vZwS0Ukz8bDlvLTL7VaLIWBaWXXeU0z2ITyv4stKUvE2f2Tgnu2TYmObnD8x+koAUB3OltqycGd9Q1JzYKCEMlbHZ3r/3MN59jMBjhejAQmkj28Gks9+id+CYoGgEzVVyUh2DMXAF9p+niW4oUU4YG5gybgnL5ntNu8v3tXShkskuSAtYblIshzs95CKnL8DMdTs41omeVfHXUY4mu1miAf0+Zbxf+GffZ2snZj9u7ISoVcKpmfma309PRyIk1esKpAvAg2JHAPnu5LnqAhRn0TvA3TNFeJZYT5QuslPwzZtXrD3vDXYV9uSkmT+w34Mrl/B0dU+jGo4G0UgBCRgIyZBjAjYwi+qQlg2HR/mAW9dJSIkLI9ZZISJ614ti7uIRRk7mYDG6VWbGlWqrWmBPDgg/lGmNZ1UONJe07FM9qEczMb3fwf+sPusNul/0hyZpdb1BF+uEIARFK21CX1bZDOODHoge4AwAC2oySxjKaMYMRuCZ9AqABTiJIrhrTZkKXdTA4jPKiO7FORsZaYTQIBcXM5W8sm0QS9FqK5mf+qqImRiW1WqkPV1GMsVjxi7GTmFti5/LoFhQvfaoXQxdlPEzRA9DQ6SyYWjNpj3Ms6cJoBHYnaTEGImLTPbIlNTSHjSiRiO7w/AcpSDa0ON7YAlO2ZYcli10ZOYeAE7EybFm1HgmaeqIFwxRpvyGkA9oweE4iEbkrEEXsKEnl2amSLuvpVJsb8SJnaSD0hSzDWqjgKreG2HM410wFwurQzTCPbIySYa/UZxkL1OvRgKXf6ItCNbeXUkuP3Te0QlFocpDuIx951/Jy40bAwf1d9AB3ePdArVSvsdAPAFemB+sCWJz6HcZONGKnrmtnZAktHXOYbYKUzR9SBmZ84hk/QGcPwL9TAzwTv3YMsvvoDkwTE74MweLKQDQjygy8OY9LYkOLZWJLgR8ikIGpzULWrtDlpsNUB39/6EJvOf6silyfYumufBDqI/un58iVzl34/HC4Fw90oL8WBHCH1w+rrRXyXWQSZoTZAwS7j+FZXSuBsGjWrKhR3xA+Qg+0ATB/+aajgAiwHQXyomtIyMESuQTKABVUhl+DkZGqNFRGAkAOaiObwG54UMDGmdabY7kTvJWYo8wKu2gf7PwCiUxcVYWrhLJYwc46MgjGPc6gNCg2+jEqx3DCl7/YYWrDHR7+gAXxFhbH7S2ALb/Mviw68Ih1YIhvNJHAC+BMgC8E4b6I19IB3FZ5g7tJXpEo0CvQwR1MX8ElzgLWniWUQlxT8R/eP8o7UkX0INSApACcu9IFiyBKeJbJH6IO67Yr8zgzhp6Au2IaIYlBCWvPB6K0r3AgLCmRrOgHarWFK6jvatED2Aq3HYz1vnzq0noB+z0qKExUdAI5TjgTd4KdL5TUCCGCAgtoA+3CjFDuAGjalxMT+i0ReOap0QB6Qh6EEArEg+kbSBTyJAdYFF2Eekgw8oio8wMH9cgJ/hGIR1SSBiTD6KRIhUwWReMKEVbaGAVQALMGJPHnwB8LArgDBFhZ9uzZM0cffSA3xiMaW4yzWMAcuFTCSIQeyUA5hLlX2Fvg2sy6TXAMwGCxIjth+oE4AwFxIvDgX0Sx0oD4DmIgLekZEND1CHTyxR8Uwq6pElNRXsUNp83kxzMYPPwe92xcgzCADlnCyzkCdg0So4khBnN0TRc6A4kriM5aUpWEPO7w8AcsaEEAd37hbFIBikEoUIQGAKWr/Qf4scxX2bi9Ua/my8cefOC3fv/3sLqL4sBwsGmR70RKrJSabJwdGfxWechMmJiihBMfrTPgVp7OLfi8Jh/Ysz47mUql+olPfnS4fWlnf9ZjSQrce/qjQndYLA5K1cFSs8WepwWm6jN0zSIU5IFHNHQi1lWQqRGZsgg1ZXLLR42KsPaWkzMXx0IE+n4YkIUKRnwzgUywckVwEcqtLz7zXCz9kyt945ubG5sh5ny/nH7c8NPXthjV1dIUioZghi4zGXbAPnny/v7e3rDfw22O7unYsWMP3ndfe283POvysy5qvKTHeu0OWUifXJqaoehmpen1gT8WPcD3gYBACdkEL4Ysu526QKIiy8zNFY/ed+zUq6dN2Wl/n/T/wYK/39pV7IDN363F5L/3QrlUQiemnvhQfOr976hhDFWPQYyzP1Co8pmy9Ua9efxw5tlv35r8YJ4vCODO7z3EhxjwQu4Prx4Igg4BLlyqVh9+ZG1OAHdOnVlbW2OzGW5WazUGaB1SC7YNWQUjNtmt50k28xBFLSUqVNpsN9h4cvuP+kYrYQ+bJFalxYoPikL2F8g+mrQgYxzx8tDB3n77m3/4nT8qvwNxf0EAd37NicgMEPEl0MKjRA4fNbjf7Q5z0wY6QKX6qU99qt1ul8ruJeagLQw2h89m9a//9b/+1FNfQ5b/qUcf63Z3CuUKzmcVxwQY/aVnyeK1jCKMzK59RuCHxR7pKjExIXZNxjuDQf5b3/7shfPdkOmpB/YcGDzbheUL1RdffOGb33yGpKRlwGu/P4d+8jwf/chHl7Kj9u4OvtzUGf6PHMeS7PxDEZTzw1DWnZsoHaELArjze8SoDjoHriybw28YFl5vsM5Iq9ZorK6v/8xHPrrKVnbZ2bFDhxmIcsZAYN9fzZc5XBI+/sGfdTwXLp47BHlomkm4vpjVPIqPGmeJsxARtFl6RA+hKj07xsVjj75VtVWllqWBIIG5pTOT7bRZjH3X6KPxYHfn33z+8w6DjTPD/f3T167t7u60KiwON2HiJlSLd4SudfgO8Y1RlW0PQhtOijzI3wsCuMPbR1JYWllZWltdW145dOzo2vrhUmu5ubK2vLyM5z3uZ05aFKMyXyeneBq4lrtywSLmLK8rbAFvEhK4jkhRoE5qkSpMM3FKZkZFbhHupKMENpx0CqYxPTTzWJJjDuVS+ejhw0xNxoqUPXbkv3nirZ4zIIZLaL9/bWvzu08/dfXCRVSIve3N3sAh4nKxECPD2XxJw+7ioAUWzXALDLLZ9bW1P/fzP//xj3z4rW97gjV8Gs0mvpawTfACvLTEKAmJzCSZ4J+3YcjtXCUIdRkflzeBAAjB6ikbjz9xDjtn1eYICHn/Bua5F9dILXgyDKWFpBxXkuCmSVgaSFlsxlxNDqLYdXjCIAB3JRE+dEOQQ284xOHh2qVLr7z0wve+98LOxgZdU65YKC01/+BLX2duzTz3A/yzIABfPhD/2M/8zF/5xf/iHe99z/r6GgyWAVZYN/xyDsJAIiBOGHYMYwl+LhNPnhvtGDzc8Pldwg2CHkSlnBuRJKQdQpT7BXzQUCwzoa0+PBaIbZFRbCA6rrgmB2ss4lVJVFEiamQbPnlxSZmUCMEk0RlkaO+3L5w789y3vvXSCy+wqu6//YPPmc+BP268uIPaECtLS3/253/+kx/60Ec//CHGt3pu8ov/AaCEh3rIZUUwIUIKuAtprvF6S9hzNKHyin5wxiUaEOdmxDAv0xtCACf2FUYNNDvYFhnqyGlMtW1yIGZkIrwjlTWJPfBQHgiB4xuJ0Bj/0lvJVdv5oHUYmECfMgzkIBGlMqXzyuXLV69e+9LXv/Hp3/zNbbSIg33Q5Af0WF9b/4t//s/9tV/8KycefGCSywzwJkB8AKKCUw8I8KUzsWgFPeBHfNIJoPveaDLHyMSxreh/ANOIopXr0DQ5c/USFgsiNucMaFlEIh3J8gP3RjeSfYXilrC3CgnN3OT7UQG7AeCPp0RyRu74ZpM3uDebEIPMgMFhFYOgFXqfIBVz1Usim9k6d+Fffvq3//m/+v+YrU+yg3n4Jg7agQr7c5/4+D/63/+31vLSECt9OI0BNfAE+gN0sufAumCO9hGbMGY+wBRLCtHEvZgNABuJhVISYlBMJwJAV1iST4eRh2GE8M8hT4w/TIi5cUgtZhSwZzk6pgSIXyNEkWaW3DUAhBPZ1eMSpdiYmjkD10akGthKCZbYOAkCkDbCtKWqAAUwmYEupVD88lef/PV/9S+ffvrbcyIzgwN02OwH6vj4xz72N//G3/jA+9+Dkw4295ALXHIBZq/YE1Arsp+cyAe+njg3BT6azAewiyCm6gCIKqrLqnAmLD/YddKkoteIweI551DaQVAxMfMXdS6V/QdM4/xmCqkqqUnQgR2IKrBx/bbOnpCFP65VjbhvGod7eQZCUJG5SzRgnnQUCFTRCWje5Z76A1TAdH4st73eN771nX/9+3/w+c9/3hodpOMAmUFZLAT0/+N/9H+stFosJQIycK6Uv98QSMCr01qAX16AA8HEAxp0K/0nQBd+LlulsUWvfVMLVsFuXiQMwHkDHZefwDVUZHwTe4e4fiWHE1WgAC+9i4gfWPcmlyri5uKQGUMHfnOZcZYwZiKqyxqIEAabLjF9B6FLYqAovOLowwC5REegvYGWqVhvV5HJ7Q30jHAuQbH0rve/5/G3//Sw13vyqaeSWh2Q7xsvIe2Py6JSv/SP/+HP/Wd/wsFWl8iUHXsE7AApqAUmsEnXJ4zFpEBsrCkyFXAJiud0IT45xL34N4uALDTCOYhzMUJDYnpYwraBuPkGLwd5Mm0ii0lOzUFlFW8FuxSK06kTI6X5QGZEcUANdBPPTb+SrOXkdlD2TuRvNHOLL/IiX4LMWSsqpwo9mo6sRmRlJ+CcHkKYVMBiEoPBpz//hV/+lV/b3NykSgfhsOlTf3wMseev/Vef+MTHcd8HD7LhkPUBEugBIgrr4oVzefFrCOYeFwFNgA6ZhNidIHbedGJUAjAqdAXCuAE0JQxncplrRJDGuFZW8ZDZo5UaOa7jW1wS27rMScJL8+M7SA03f55BAlChSGQo7pmCgihC02ekEOVxw8QJrfAskkSSEL2EOxysVe3BpGaXVmHvmd7g7/xPf/8b3/hDy0n7MX8bKX7Mj3/847/0f/+T+1ZX9gZ9QKL+KpaFGtJF4quQYBaEBRjBBO2RcGgRFPKPZANXBj8KNhFFG4/5iOIEbWacZOG3EBfHM0sBlyFdMb/RWTXUAaHIbTbm3UEkiPKBZ4D9BmatglAma05JGxlLThzwfkKtUNTAZ4Pk5kTCvaCoBPTsdeAKK1KdNyIFlQs/UZRoP0SEBvCtYMLAf/f3/ucvfP4LKQZG8mi0V2qPROj/pX/yD5darSHWfeAaEotw8aHFqF83/z0N40/gJoEhOANkAesAvucK2kE/MnzxlNyBnGCjwaeJr/hu/mYTxZGS8pW9OKHd51QnnBVl4m4CciQotRFrGQpAnFk3s0qKg6qU/k1pGgtNBsWoCkrwXGxLciVdjBLMswHpydODdxWHkIhuzvIkfyeLTac77b3f++3P/J//9J9GuaZI5ZFaAsDW+Wu/8it/4k98DFmBdTHxUgvODdjVN4EPUIo3iq4aaBLFoFI0JwCFPQf8AppJkCniH1cFcsXnB4MjISYRhcKRvIPtYiByHoodhtYe7oMti7X4UEfNOCjBpFaMqhkL+SbEE9M43MaPlQPoCXIJIAIfxHcCeUBYOnvbM5RGYcZOkijvc0aAJQbb1xBkKsiFe4pQ6glyf+sO8jmsLJ1BAQvZdPbP/+1v/vKv/tre3i65pvLwpafy+Lmf++T/82u/KnP1/UsFwkmBJFAmJDgRHECEA4EEGCqTyC+DPYMRXJznw1IIQrHnBDARX3MEc0r+lhCB3ADe2ltk/1JEZG4gYS6i6BYyjq9FCnGvDEOJxueuWWGEdb8jY3BEmCRh3hAAgXkknOjNKMgyjOQj8HSSBqVYvuHqvpxEHzOvThISKaIHsFAoge9EDcDfGv9WHwp1YjRuLS19+atf/9v//f/Qbu9bndQd0cipe6pPfvKTv/xL/1et3uAt4gMP4w1uKBAFh0DkCHwGUMRgBAV8wGLIFSRGYhHx3g4mKizMIegpoEY+QWNGCYAHqxZVSY6miOhkRrEKQIH0xECE/EM4CdGuBa6p0FKCkXshEQjfuDGnXixFmfEN+xKlcTvMO5RJdOk5askpFzJ6wqU6qxR1vJEb5JGMl8UzGUpXgI2MpVakAQLoKIbDerX26c9+/u/8nb9rm6XuSCEBrKwsf+Ppp46urekdD+/n/QMuQQRAJIAETWCCD9Ku8oZA1ygCguj9uREs2SSiROR4kDTWWuDafAAMGOPMUbPkNoEGyEAhr6T3AJIK6zE5PRGwLMi+JTG5Ruamsj7kI42EOSnGtqy1eRse7D0ikGH0KiFTRThRBLyRCRTuXJLEAWBvWCeeNHoHnwtyI5rPwGoXDn+oQoSNVYqPlXZxrTY6ejF+o//j3/9fvvrVFA4R2LhpOlB8f/mf/dIv/PyfZu1Xny1A4Vu0ExAd0d3HqRw3uC7R4kzge2q4MeMAOoSKzjlvTUBBEFnFOMGNmJYGwqQlV1DxMnoPYiaSvGhl8JgVDOHMopNrg8hcyowCiWCVI6aVMcWNIx7CygRZh8qtAx4xAPfNeAF1r4gWZJzci/t0QT4P57aAZz5YWJaU+wmADAL0asJw/yGPwilLDjHH4O/9r//gy1/+crTHjSrd+7832+3ef5R4go999KOf/le/DsL0jgmhGGiEcUYc8959f/zzrTFkhgkcvkiI0n/AIgQDZSRxHF5xiacYuIBnB+qNRw7RGwBhAMSlPpiiSuZt16AkY3lJriFhcyv6h4hI3JBYLCpGeamemXFJlWXeoRXMwerDeTf59a6xqKSrh3IqyXDTomO4jM4nCfLbpDmellREUgOBnBPlnzTR6XmLzSuDP4B4xCqmno3Gk0x/OIAqYi1Gto79S7/4X25v75A+NUeqXCEqlcrf+lv/da5cwLcTK41WSNlciL/yNYAqwhKuRjinXNj1c+K/aMFIwhE4JMKMPYwEWNwjOXcC1klqMUkJuLWZLwcgE+JIVhYa+RLmQZ4K4uLV/DgU7R0ps5YEka19Ave5F3WOMiNn0qvIA29JKolvVA1A/PoAfNB2lOll63zFk5KVdSQ51YlTizUBhftlx2Nt+LHvovpqTMYhIjM6WXlrNlRww2WwOJt95I//8X/9G79JwtQcqSIA9g561zt+Wr7FG/W9x6sG4Vo1kHRnbFHNi7d3F+OeAhVftv4FggwDi3b9QDl4cQQg3OvpDRgt1u9NMRpmT4aK1+CFoLDkmFeCKEI55Z8/yEl8ibcA5TSD0w5GHrUOy/YOMdgEkkykGaojAAO+1si05AMqSW914y5Px5vTayPoLUA96xs5pCuzmtMW1TbYdLJ9lkQkjqmISWGShWVGhSEhK8lurITTVBzsVFl0oZU4n07/81/4M5/74hd3UzSLIFUE8Gc/9acPH1ofjOGMdOkAHdjSk2vcFuuM+gBvGTyYZWcXmDSdggseZpw0Ls1wyxFR8Y33mBFeO8KWAgFJQ2JdQLEgJ7/E5+BEMHFLkT/Bl8XGiIHap50DyzpwFpikGFo/wZa7kXmISbKe52Og6OWbYFFJSTixRrgdF95BJgqxB0Llvh0Lv9ZPHyHok4NYVM8zzmXwSRFElBTInE+kQe2WSCKYuHQpmWLRNYCdPJkdTMZra0sf/tAHf+M3foti03GkhwCQfz71yU+4rqAvkc2kcfwZjvRtcX6jggwvklUSxIZuL75naACEcgKpxCriGj3BjdqtPv2AGhqQYEJuQUQmLdnzTRjpnBuP1OQ4kgAjc444ISmXit3UB1xaMNlIGuQdkbUveQkeTRNsX4FM8rUIkhBscaI0zFPAGDTz5w3KmyKWIJrP8St2zZAvUvoM9i44e0PcyPUydsKplanjC0WFuBPWi2CUIsKgGEqHzIhLRdyqOJcbjCjEZ2YV0j/2znf87u99ZjhIyRya9BAAL/Xxd/w0W18BZl5qt90G3hCBiyYLacf8me8ICgMYCcMGDSELAWcB7b9f8ktOFLKBENRDLPInDsFQjJgOQIA9bpCJyU0ssmSopMC1E9oISYncJJEANLGVx+lt9M6QGZOjsI6k5jMWsmYfdSCutyjCiDNmfrFyaBIbbAJDchbQyHXyeimNaQzAnZyogLo50pB1zHlL6Yt8qbS0FNuHzfL6CEVNIOnIm1LMkhhu78cOrSUm11MnNlZ680MPRvWodxqO9BDABz/4wfX1Q/D44WjI0iCdvZ1ssTAaDeGcCDjBfGGKQhm3CHDGIbMTloTZIYgwcUccBZsYkIrxgYQw5o7HIfpHCAiD2KQJ05pOVAW6uDJfCMC7/lsEAcHvIa+Qh8A64hpdlvCmMgkNGdm6RGwzSXBsftJZ0EySVcA4ykUWsu8A07JungK7jRQLAUs/ajVWjTnBEpv4p0i6BEmGkriK8WsdRtQe6NmQBqkIKgNrxAgSpg3ARkhYLuYff/yxZ771LW/f+0d6COBd73pXo9Xc290dM2zDDqZ0170h5/YIgF4QAisAIb8UV3wIFVOBDm7zC2LksmrNOE6aIgBu3JCIgKaxAQmXxI09ixRsDOWjJUfwRmkMkHkSjJ+odAuAEZORXQT5mY+UQVlWC2MtMR0vS6YEhL2SOGBRfh354Mnjxt3Qszq0vJyizQeTf2QO1uNJky9lHmncSIF6C8ISBWPnDkoIp9yMJbrYV0+tmqiUONRP1rMcg8LTwoCtWKHgaMpWs/HYow8vCMB3d1cdShYwVAT/wYB1/7q9br/ToYaBkBASZM6+b14+wYoUgVsicEP0Gar1H+7HJYzQQKAWqACmwZhNxTEmS+GtpG7KCCV+gi1CktAkc+9bOldsJAbvDROQCZ3mIjr9C5O+ZKaMFOkD93Jp9WczJCNVc5+C7AyRrc/JgxoFAUtQZAv6WdId4jEqTx6EFg9lhmalYGZ6j6QOPioNxN0pfUVSRnFaYhQMbUoSmE57g/573/f+3/it303H4oop6QGY8PXhD324N8QCxJyOcZfNcrd3Nnc26/VGERmWt8wrTwRu36poEhMYYeTZcESxzj+SkCfgITMrs+GQCKP3J2gOI0Rs0cmRBCjqzIknsiQ7uTgdQsDQkvgLPYE97lzdMO6hWkhm4hkdRe7Pf4y8CV5SGUHsWhHiSAKA0inIkhR5EyxquQpRzfEAVQ+fM+kKVAlEddTTx4jIxIHPwyogGlg+z2svweFypcxD02eWCaEUjvmMOtDZYE7oQAAjl6hjk0puPPTgyUQush3u8SM9BHDy/hPM6HMVTK097Bk9ZOF8BexKJSQBuKYw8mWDtsAW+AD9QEe5QXxwiM9gizMWmw0umbxhACOkuW+kOBFbCv5Jnt4FfGzXiDQi5XBQSmQrYClIY5G3JEhOuAlXjh7AxN4yYmD4Zv9kZKtBnQUlJUd/EPXgURSETMHTRfXt2TSYQtYjKhn4j+eJR6EyoTL7BHyspI5MIc5lBDiZ+xfLBTgSjHCE711x3EeYHKohl/LQf3dvl9aNZ7rnv1JCALwzh35BP9aeEITYUgIosIsue72IOdCF3K5f2xziIAbMgWFHT0WV71IszzEtM+WSYEXtAAwRxErACpCRrQSAYR5cAiYtj+IwTPtK/JJZAseElUswxmTMgcQQgKkCxOSpZh5SCqpFVIyCpKIQ9K0GVYvoY7i0cUPut8uyVo5mJBlGUWywTVWiZ4vaYt7l0bkFutGITREHIdRRsqIgn1HVGUp1MJF1sHv9UqWItWqEPXkyZedJomFuYheChx566HvPP8/VvX6khAB4DYjW6GtARmsF0qojAJlhvz+pVHnzQgsBRIQHlII78sbDvk3PDjYT/VFcJCDQSVJkAEcXTVEpdKMkcB1YJ1rkRDKFIlOJKnBsONFEGYBKoEiQuNOqGshMIgSNJIIWd4gxsexg+WKfEzsYdVY7regg6GQIgmghAGgUWYWI/LPnI2WjkABxCqUOuAMpL3FbRcUqQUWjPP0TB+TgHYJ9csrw1CpwotHYq7BxZXL0A+TPsyRY4WZrufXud797QQA27d1z+ELD1Ig84FvFelgoor3RJziaAxrmrzd+gtcDhBtvHsmCVxwCBJiQKcJ0ATR4EGGARL4OHRgUUAz7D1ATfRz82gEEYSk8a/EBtcFbBZ+r91gEfZGZE2Qx4gwCk8jIhlTIbC6qZQUIsEOKLEE7NQ0SCnUlgh1UNtQ8ZuxrH1Ru5j6UpQew55kYS+ORpfhUposfIkIYhnlDUSsKlaNE7dSErCeR6LjMxswhg8jgnv9KTQ8ArBzwgvmLoXyJdf1hjgQgrRYKVYVkX7NczvfKK3UQWHyKP14/TFbg+2ITPVJggwmOAJ+wkEoApugRMCQwP78SIBg5CMnIQSFgUCAjnQkiiwU9QpTKBQFYOrkRaE18CmWeqBkXQjgZlQh5LB7BFEnNKZRaUx9FKjqPqFXUhIyQqXxoSrcyQXhRfJCBajlyUwhNpKWCQYcadqlOEJ/Ng0w5xh/CDpKOxRa0hzFnZpwmj3yvf6eEAHhv0WsjEmiq44CljscD4MHcDsxAgkAYBG/mghcZQSJJHIe7pEgNLIehEnQo4hOBd09S/2WGCQHEtdmaq+iVu/uXhIQJJwQSjDSabUwe+ROJqwRplmel7BYgM2oHZEMzN9ACA+pEi5qYC6HBsFFboFPoysrJrFVeJVg1YDFNaLB1b4nc+ZNixpLRRzUtIh4tHpr5zZAFMZMP0ezpqJtl+i+FUiMqkM/jeEJgCo6UEADvGECEYioS2QnFnU3ln2AfWajE2DCUgJ2T7wRb/PBWkewZJLuFgdvVyzVhrTrTJFDx7UecGFIlV7HwGttHYaRAgUXWKIrkHOJEAVEBFYBgcCTkpbQbcJIMhGoccW5ySkmmDnPhHcqyugL2JjaJI1BDKiHrYOPmZiHRywHd5CmivxLvQe0m02YaOJ/nb3GWw+XQL8riIL4dJJ0po3IEcknNaU5uF1FIJtN22zGWFBwpIQA65WKxFC5vvCehj6EaRuWspvCOFsvYKBFdMRMFtnzXvmZeqil8+SG0JC81uGQomHJroSMywISJOJEIyIEr0iKqgCoyiD81V+8QW7uonyACkyUpBBVxuDa56ck2bgfcoivw0iwUT4iVJE4CuQDfSc5kaGnUL5h+nHtBnxB19OnMxpq9liRJYaaGve6galKXzaJtgD+uiSNJSfjYnrKYmy9cuPC6ZPfshS2ZgmN3Z+dXf/VXyuUKfCvZ3gtQ8SLZymg6wUFOiOAJh0CUwJS3mwAnGLNXGAq5JR9lONUOgAsyg4ObBFDHSCrIEw5JapiHZGB/kQAvwBSAEnfmZsw45KDkSaDMmOoEMAN+BMpxSaw7A6mCGpJSeDVGZjKNRIBJ3giGRXhSKq8w5PHI05x9n375KFHXSBBcPB4ykvMlVVBzL+MkMi8ErQQNkD6oiqf0UaR0MqGye+39p9KyhGhKegBeYM9hL14crxNFAKMIe6fHpnXAjlDCQ6LlRHTMO3TRJcMMsccXbQCwkQbEELfUYrkMQIbGmfQg0EF49ZgZ2Snni2k/kWlkBL3JTSPAOx7K4KYxiRSUxJaGIiu9l4VbYoMJQd+qhIbjgHFCgCa8cXjm40WuxvVhaAT+w4KTXCa5q9+Ts7JhCD+GkiAuPeGwcMxoUiLykozfqrkDJje5x8p2dLdslswCw5Hg3v5KSQ/ASygWGfGFvQIBoA/2C6USO6IXsnlfGfAEVzBXdGRera/XqM7PCtau6A8QyCHs+MBd9UAeL+Obw5TfQPQcMPHmLS8KJQU4AS2yULEExpCYY7cvroAUDBUcRyxumicXlCJbjSysAyZ6K+itCAZyHhFB/zweIy4pRYgTKTTsaYE7gWk7E0e3rTpzYmyRuGVcOLq5zrOmQfhIbsYJnwhGLaIhKM6Y6tk+lFIalKM8hpKNtEkzmCQFR0p6AN7Es88+u9fp8OYQWlTXtN1psMMQSo8Qg0SahIQlzJsEvMFsdpQwPzhuBHBb6AiSwJW0IrXMQSQDNlmCI1CgagxI5rmBFmMAIXIjH2gHHQOi88pMZL0w/kAgd0U+lSMbi5W6PLjgxs3tM6Iu5uaNJCN+ApdRL+kKac/cCTZ/bgcfD3K1NNKBX0sxJo/Aie3kU/oEJCbYDOw4iELFwbyPQzRPfMr44Ss36+870zMdR3oI4Ctf+tL2+Quto4fwg+YNVssV3x8jwmyLxc5fSEVagdQpAQDvO2GygkAUyO84fNlGEDBegxBiSAGAQ4wATcdZOVGfQHYH30YkKlFEdILjAEgUYW7cA6akR/6hCDOBN1MLhX9va7APoEko4aInNiPTyFLMxmWUFNyazIlJJHoVUiXKMkEi0zRmmyThmycgXIusEX0AApNDJxBDkz6QMFKaoRK/pz47i7bTj8JXmBywu7X90itnE0XlRh738G96CKA/GPz67/zmX/2rf3XGjKlCoVKrscIZiEcYgvH3uh3cudCPxWkcIdskgBEMQIJXnrBJ3/n8NO6YJEGMgr6gA8cmcq2ROamIOv9FNSeBGwyzwtDDJOHR4CosTtOkeG6BNIpFUbd80kFPUVJESCp6g3bMlCiRPR4cJg9eTRYOzyV9Dii3styiuHgYrsw3PiDYupiP2VhPiUE2zxn1A/CEawDQ94LAucbOJARuFgv5q5evPv+9589f3cQ72grd+0d6CIC3VqkvnfrOs7lScf3osc6g3+t1sPqjq3U6l3e3dvAO5a2iHuAhp0qH/DMYFAssVOVoMZ5eTP3O85KLxWG3VyiX8jl2Wh9pSJrNikU8kTOTwZAT8sfDolIqIV8Nuv1cCd8F3CfH5MzQE9bXUuQpwnWrHFeKBbzpiwxPFxI/0RlQwpQ+Y6JtnoWc9a9I6GqOOMCL5lAq8M0f5IxvKyjFzjsYudwLfZITWXCjLhQYf8BTrVgoTJmnyLgto7a4AI6GlUptOmAO86TUqPf7rIYxpuaT4RiuTv2Z4EJSl1EZjSu1iomm2Wq5XCz7UFoP8vnxcOyIeqXCSDDN0u50Tp869eLzrzSq9WuXrtKp3vvg9wnSQwA8zFe+/OSJWv7KlUtvfuKnW6ur1Wq9s9/euHbtySe/ttRq0ANsbO8urywBd7BebzXbe21eNZ/2/h64lxVPp/Vmg7WfVtdWhj38iGbVWrnb61UqiFTlvd09RkCrtfrOzm69UamVK0xAKwKRTAZIcaPXY2mSaWt5tbO/B4dttlo7O1trKyvdfr/X6bWWWoN+F95bbTR6nQ5wbSytDNttpjDkqrXxaMhEntbKSq/dhSpYlbY/GHU6ndX1tV5nn6me1Uptv9tFTWVvv163B2HXanViQgCVep0pi9azWqMdtrao/+qg1+t1u2uHj+7v77H3y8rqKs8FpdUb9Z3NrVq1CrDbu3s0CB0jPU+9htcgz1svlUtQ1AMPPzLqDzZfeeXI0SOjafbpr/9hpzvg8Xf7g/PXroqdVBx2g6k5SqXiP/i7f3vS2wO4/dF0c3d/Y3Nj3O9c29jEgxdBaDBiT7gsiB8N+pVyRRkJN7VCgWnERZxbECVk5AW2TGUauNOLh0MSIlfjEckgQ6fXh0kjB2MEVNZAmBkO4KwkHMKGiyWC9J4pFjHMIySUymWQWqvX0Hdhw61mHQqhY2q2mqTdb+9XQWE2s7fXXlpZZt5Jr9MFwfpimonMeDQcl6uV4aBvTaiSwxLjaqXMLBU0mlKlSufR7fXBNIv34LMMq6YHYE4c9i9kP2Jh2SpXq91uB77OLeiEPq1Av4GDMz3XdFYpl3p95gJM6/X6oI//c5n77KrdWlmGhuuVXL1a3exOi6UKtAb1Nlea//zXP83zpgM2qeoBeHM7+92VamXS3ymORsuFaX29WZjWHj+6HiPAzhjUZgMNaPDMo3ciUdjfI4owDqXDMPopcWcDpHQE5+k4y/gCkgSSsdYk8DfDpwKgoxe67y9SDpK+IjX6dugNOGYqdCtZK8LMraKz6XJDm1SjQT+D3IKoPTuyirhR5D98MZCJdGCmHtSEPHMs88b8SVd0UUDnH5JDPEmU34iA65/zf6yqIjvFKR3pB6W2TYIyS1ogalGNSoPKE4NH6odr6hRH/wyL1YWgVk08HjK5coWCCtnp0dV6dtJXKxjltnuDfGONWXb5UunRx9/y7PPPpUb+gYZTRQBM4PjKM8/+qT/+vtMXLp49cxqcgj8wqmnfl6+FL8b2OVUNBSglvh0zyJdpC4CkcI1eqw6YeNgj4IN+VMwi00QEeozagjMF9jCQg8XQZEWoarH6KGd+dFC1bGhJhAbgyJBlsAgFdNQB+6wkAdnMbTvzKVqxnIQWHkmItKTm4GHEcFz7TFTMuYuIbgQJcSvPCIYEwFViYzITqhHZkAfNYiZkZQasMAc7UKugMhXOmfNg9WJKMQ8+nfbzxXyuvbK8unb4WGt5rVxtJXWxPvf+kSoC4LV+6cmvveXRB3HCGcxye7v7gBDUiEWOwKLXmUzfmcOTerFQRZopFkqFfLKuIIwZ5gwAwtIPy1ZsILEo5o4clEtNNckRo0ZCah6APi2WEoZtwXYWJIjSuTYvMGqFXBZOTEZ9iGl4gm8DDSZdkq+3pEzEJQ6+onCrqqFSJPuJqvFN9S2CaniYSWRrXkmJ/CR1oltzFSJdlhLCHvLcFqDtl0gEU1J5qXLy/odQbJhRsbe7/eqrpyPjlHyligB838PB2rC7VSzWSuWrvQ0Rwiv1dc4PzsBHZzTZ6fbZu45RYmbNl5GYHTjT2Bes0X4gSUOgFnoYf8CFxIQnmYBjoiVClZAyZ0sjJ5PE3XkmkUCxhyMgxpcATZBMGUF2ccfQSC0VGSNicUbdok7cTOqQ5O2FVBCY5iv5zLMif8kWlm9k/iPPpGNRIkK3gf6b1RLn2lWJ5AMljywZ0bU88djJldVD6BW0zbg7fP573zNWWo60EcB0MNx65vnMWx7m5VVQRiGAAAUI8QAdDuYD53x3wL64Qy4BHz5DpZjhEdzTeIKGH0FiBgSEyT/yCDR5g6sEu8FxI2COzoAhxRg/4feeJYfJOPgRtZZi5YJxU1QwaqoRSY0UxRvJBBZnmXGVJDOp+UVNIu+omPQi0Sa3YpBDInNgIrLkyRDPutPpcj5fx5E2hKjQQHDttkfgcVAmWBwagy/9JRZctJHf+cznsA1Epin5ShsB4Atx6tjxdy8tI9di1xQGga8AVGBELOnnE2sA5oqZaTGbKeWzFRZoRp8VM4GROfJEHQKP4Aaigk14cUJIcibQQlQA6IYDLyLwHwe/ScSE9SqUQ3IBc0kzqmVEMqGmHnYeVsJa3DzMk0NqNW5c3Piak2o8l3cjr4gfHVoEeUn1LAH2T3pOVGawNMEkSFMC6cg86s7RMjyIQ8aJcERqlIrZb3/ms6+8+uqNYlPymzYC4LV84Utffsv6pzSjAOe8Y5lot+BSaARLBAax5GvOqTDCQsLgRwupSyJDB+JPiTzwRNLwnnNcNDyqEz4acQJ25mBfQfw5UhPwChyPhEeDO4lLFIeoHWATy4mwbmHcE/9WCSk8oZMIRSYhPMT6qC1oFZ9m7wm2LPJMpsCj8cvBrawx0K19GgnL0snUKsSjQbpowLB27hNgspyCkKxBarBGGAAgCUyov/17v58+9NO2KSQAxn+qzUbYZmRgPGTyNj1LQKPdBXRg6gHZclU+yEX0ARAGrz/wYThY0YI0Bwj8GkaYw5FOA1ECvvBaA1QuWZusMYEJKco0bZiPojewJs4VMxXZ21GUApnkxiU5eJKkCZZOLea0YAIqaMKkx/DKzoq87Ih4hZGhuoclq5fwlZSi/09SWTIX+jy21lR5QaKNEJFwb/KJno4Q87H+LAVgGLzkXFpmwMSTvfaVQgLQiJ7N4wKHBwFLnYERIOEr55hiaNe6DfAxL7KMCkOgFWzpOD0QKpucKAEHuIN6CBM3Jhcl84M1p+gTiEXPoizEPb0e5gbQAG6kIkpASW58QzpCtFBMQhUxA1EHLXJbwwvMWx49zzOAD0qFYyDWylgPPTYj47BtkgFwtwBq4rdF83xEDeI12BIFN7m7ipEDGi6zxdAGq+jy50KPFMMtI2IWinNnlkJppJ9M8C1PxwSA+Su88ZNCAoBdFUuFBx442Ww2ePGCjxce5nkGaH3x48mVrd3cfn+1Va+Visv16nKzvlavNNgMAtWB7bTgoKQI9LrFvKn1YAM7JsfBDupR9ghju2YWjfHa3sUuZx4SiHCleK4SdBohuU5ALiaTkOiLSSLYI3qSGPTL0IP8JCWjg2xvJr2BfkhBFIncExHt1nwMmbf3zERuH0WHq6kq7wT6n7B8GEPgGIKi20D6p/pBLSRxWwHn1OEQBRd5+0/91Je/9rUbsEnPbwoJ4APvfvf5K5cvnT9PT8+sAB0VeJFyQLkrB1Ae5PI4vLTKefwLgA4rX17vzPbzY5RBlELUACQh/eJIXkCXdqxXDwExhDe0GgEOFXzh/gZEoARGFZS2KQKkJUWpPYs6//gooythByq9JCtqQhK9Lx2fEqyi2aGvSIDhxUtSGM1gF71Qd6ACbjUZI9PeJjNINNLOoR51kDqkGPIzAn8QMOosf9KnglSuXqusLrfoM+kBySkOOxgajcT4SOxcv1yBi/Tb6UH9LU+SQgJgX0P8IPY7nXa36zpB/MlWlebBGNLxYDQt1luPv+2J/e2d0dbGIIcPZWWUKez3J9Mum6H0G+XyUq0G64SCeoMRbDLUaUUjBH3XWiQ7oA8kOUSKOAshniIUjgJJoh/HTCrgiBoxiBZ4JiPRRzytjZwnNSOlyI4AexgEGCAJ4vFLzRcwVpkF9y3ORF5DC/FM5CN16/CjZ0ceF9fhEMu9JAXOJWGjW7EKrqPTWX+SKXU6zUqtUKtd39zBRyi6GnkFMa2vNClJ0J9Wl9YuX90kJH2HzZe+Y6le+9B739Xb3kS+bff6yDy8ex8VxVcZJnPs/gdevXTlwqVLOIWpPPq+ZYB8ON77xFs/8PjDIB/gnLt6fbs7ABAox4BvdXmp0Fx59dyZMe6cgx4CEjmDF1d+Dlkc2lCO0PfIrN73Mx948/H7O5cvXqAquMHhsdYo9AaTYgHf5OrMFWdVRNAH9Mouuq99GWskc27LbEw0xaH1wQcePHv69Fe++lWxKZgpy5EMoE+l9ZiAFKZu704vgRN1oVyt1SprKy0XyYgFUnG6rjbqpJacJpNKrfr86fMvnzqF1gLaV9ZX8Z6q5CZlh5qjEOkk1GgUBtyXmsvjfOkLT3+DZ0ofVFLYA/CSdjvdjZ3O/euHrl+/ol9/cDUFCzzMmCxWKDeqlfPnL8xndSipvPZqkQpqVVZ9wsFecOF0CeyQh+G+qMd49n/2d36X+QA/IBSu/sHnQdd0MOhDPckCiXnVUDVuuxOYPrCMzOTtnCj0a8lUWkIoZwmqp/DHa+/v/4AlJtHe9pbHHz16uIfvp3QLbYbrkUIaC8bkj9136ObKnleuXssfWmutNGbsAADTDxUGT8EM/lEFuodGc3X905/7fCrRT1ulkwDwYf7kxz/6tre//Ytf+NJTX/gMqzjxWkEdvu/rKyvwt97+PszujpBqLrU+8YkPX/zudzAHYZlhhxklBwUJyYi5ZkDkjgnvGAhwf1js3pYP3vy3hfwgl6+cOXtydVn5x9ihI2j21SLGvIjNa9dvZoJ554H77+9tXnXaDY4hGlA1ndFedDQMoVTKxeNHDr964eLNJGk6SScB8N5nnfaZF79bzmaPrK0xY0XNFemgVkfGyJWylXoDhnvHFznud7cvv4xQBGq0bDJw6qHcThdyeHXdFUHu+tXxIfhyvdHf2VY7gQK4dl1o6QGrJ+vm8UhJCzD35ZFja1fG3fUjR9hT6tzZs72+ykOzWm+trMFK2GpwZXkpk1IC8L2m76iWSqvl8qkXvvfyt77eb+/x+rF5o97u7+xsb24wEYxJYcfpCu50ME4wbJfADSBQimekSdlHeajEJEmGlj292w8qvtfrMRAO+DXk02tRa0CPh/94/La3PVZRzPNA1bmyuVmt1hAImU2z3KQLbKzw16gVGfjr4y40nZUY+kvnkcYeIJf/i3/+F7q97UsvvcDMJkycuL0hzAABDqZrMUaGaeb4ifvObWzwdm9/sYCd6TFOO0dYV3pGNRQ9iNHl0lPfeLrdbt+e5O675hEvX7705vuOMchl3fXl8/mT7qyzt8vkRmarEcggWL8z6Y36+xcv8bQ8rzp8Jrfb6UP4yIGPrax/8G3vOPXSqd174cF/2FeRwh7gXY+d/Ng73/JTP/XEX/zFX/zUn/2Fn37nO48dO760tFpvtOrN5VpreXl5tV6prjQr9uxvOIAAvDAAH5O/xA0OBdokmRx4/4MPviHFXRpQLOvlzQum/liaNLbi6AYxzLL1cv3D73lvUu9jh1aqtRLD4s1alWaB2plEBtvfh2vMMliU9nZ3Rt39T3zoQ3fpc/541UphD7DWWnrxe8+uHzl+5Njx6n6nUm8dP1nJFkudbpelU7CyjAbMzO0iJj3yyJs2t56+rQFh+uyzWnbUIAsGQA+KI1NrQQ7W+N5+97b4d+3li6+efWhtPWxZ6rQaATi0ZeUYI7m+sw1/x1y7XK+dXFtaf/TBSa5w6eKV8+fPdQf9GnM1C4Xlam1tbbVYrfcGvbPnzty1T/rjVCyFBDCYZc+ev/Stb39X7xplH/ifMw8BMXvGMO4POyyz3VUu+81vfvONbYfOiHlciYkJta4sLQ8lGrhhcYevPvnVNya5S0MmU9etGPWdzKkWjGE3r5dHNjsYDN/3vvc/98KpXbZVHo23trfR+FlL5ujxY/1Bd3df7s/4ebJITKVSZjWKj3zs4y9fuMwixHfpw/6o1UohARTqy8V6Y7K5DV55kZPReKBIo0dxpcR6WTVmADPGuVRmwkyRCLc1HaE5B48hGUQgvOnUALD/wEQff+yxL37jme17BAT90fDFC+cfPLzK8kdKurABxokhZrSaXP7Cq6+waArB2UK5M57unL949uJFrEQQSjI5Bj2APdZY94XukrG1r33tq/t7P9xYxG0Ne3deplAHQL1jDR8YGEvfVMsMjcr1sd9jygTYjPk7HXgy3u+6kOgb38pH3/Pu5XrdoVzXOAm/MpDA1Nhy+Qtf+zrc8Y1J7s4QpZ5SkaUcUAKc9o4l7LWK6g/7yPHjBIwm7IzBYjD6y7GLCJ1Dp9vb73X3WcJlMOwOWB6JdcQy7b1d2uS1DNJylkICgMej/BXzhTLQZ/GF3LSSx5VNbwVWQNG5LZOBzSPWaOJ5w7G5t8OmuNyz96AHYAxYppmpFIr1EdbUewkEL758Gpdwpw7Qi+GszfPGUIAiXWa2vL6MUkBzVAr5SoyXIxlWizhhcFmoFgp1Wgk/jXAgt+tI45FCAvjs5z5Lxx22e/ZOdEMr/DmhBKe9awf0Naoa6m52BwLAOIil3FsaQZWYScFEmcJ41H/l5XsLA4Vi4eE3v3mA+KaHUpg3bxABi3+dvP8kvaJraZWZC+QsGXgCQx5K/84N4jc868Ir4w4tdW+1xfepbQoJoNvpwul5jci3OJahvuLcrO2Dl+2fZkH1Wr49ed1RbzTe9/73jYe6+jgAxA+piZjN9kqVr+HXeU8d++32cy+/tFSvu4FweMIl+Pe5WBMpM33TIw8z8R2tqCShe/h8tI1Df/Z7upYm529oq3uqJb5vZVNIALwxdACwHq8QSZj3iHu//Aw0g2VuBKjv0CjcwBca3k9axB2hoO3cVLVWiynkd0hzFwchsO32hplyGYu+jteTZFPJeY2xcbXq5aMnHyiVKwnXTwQk2D+tRXM5PY22CxZwhxHDu/jBf/Cq3WNv9Ad8MMZ/bqzzw1gm8I0XyRtFEJKxxYBodPm3ZciSsxsXzwetZPChjhTyf+ZM4UWB/nxb/Lv/8utPf4MpDeDY6fwQQGAcNyCImlGRw4ePQudoOzIIOwHNvTy1U4JoJR4vWACXuEal8kghAaDqlhrL8Qbl3LxO+Xm8yIT3RzeQKRcrWjhff3ygUGiClZjREn7QisZQD2tDb21u3otrYsK5z1++lmVtH4SgmA5884kRihgFu3jhwm6vS6PRFjYWf+gAoS9JDhHCesDVcjrdgW5HwM3WuXdPWMb58H0nqT/rznLAuRj/n2MdNHPpaiiz1tIqFtLbHrP+6KPsLQMSoBnWwpV8nHdiqs3de8AF6LbH4RIJcHO/65Qbnpk+IKQgHifYO53C7ND6mp2igr6THpwUHUYjkJGg3xYrFhutlTdmnoKQFBLA9vbWp3/z0wwCJL25Q1j25BzB3vjxBbMSchnN4NZXCLUM61UXf9YPlEFkuD/pXJ5kks+fv3ivOsRfunwZrUju74ZRw2gJh/YQ8cejwVKjUS1VsQpHEyEa0Sae8uxB/14wtII/1a1tlZrz1yEgHU9Fp9/tdFCFeXXxUmFwoQrL6KCF5I2Wn3zyK7cNbS61Wn/ygz/L5C3ePQ5hGPzlhjGFanOHYSDT3osHktvZ8xeYxoAUhCcsVIAxi6fhhx7hELM8V1dtFJHPIYPQgUQKINDJoEwqffXK5Xvx2f/IOqeQAHhmbdgx7M+vLC2BriuS81p9yxj34oW/DtOdbueVV15IqIZ+ACmICe98sSkMQwOhQf6R7Xk3RoD6Xzp7PlPA5TMGwu0E6BanLArELRwlEnWffo/m0NAbyI/OT2LAjNBtt7/21XvHCeqHeQnpJIByuYrexttLRnfQYvnjwzvGtMlLZbVxSeH1x6Nrh+w1glwG4t8IJGGjihdeeOn1ce+xK4b2OgA7n2eRCXxhsfvQoeEVoue/lM1OZMWCeoDPDx3QVjaE/EGDEdKSG+Gk8UgnAawfOVqoVGF4glzJhw5fS6iwF+CGwtJve6GHjh1hlVzuoy7SA0g/riKa77aZBP+DzoK/Lc+75BIp6NkXXmQzHB6ec7ZC0ifKTRLYRAmicEGLhOBhAdFmNhP/nvPPxes6y7vksf4DVCOdBHBha8sdUuFeUABvTs9ODUBAX0s+C0djKi2Wbm0/+oURGw7h7ZPNup2qvpCuPVKslK/v7esccY8fe/vtbLHsUAhOfiPWcxkx35mZD2AcTsF8+OAUwj2hANUADtqFTTILLGQqHaTvSCcB4LXPDom8MiyYfAcR+C552qI9eobZHuxUd+vrpIt/68MPwhx5z8yiZEUS7gKOXLG407lnJsHc+kS3ncPxt9uXy7WywAbyUDqrI44GbACo6d/B8tdBPJylaDr5hg5ybxgzuS3/e/QynQTAwC1jwcz9C3bmj+9RQMeyhplpqVo78eAjt76z+44edY/IEH6YRuBoEClQl0vVCxcv3RrzXj1HFT51mc6Q5kDkQfrnG1U/pDsuaRwJAJuvDAPJn0/8cMoKkWE6vlcf/d9T73QSAA/MDABmP+kBrCjjcJiCLKf+5zZ3tn/rd37n1nY5fnhNv193mR4PlX+I7hyAF0+dYoL5rTHv3fNOd3hucztfYm9wSSDBONu2ahkF+fJ4nttHlxRiRCCuIY9uLC587z769615OgmA/po9etF8A8l0A7p1wdeY2+4Dy+GyOI3ebJW1ldW3nDwx7PfARX80ifEvFqZ1aagXX3lZqKTlYP9MllDUJoD9hyObZQPj4Wigyh/P6Bg4j6vk723+GEVuXX+xMLm3zQDxcHf4SicBIP+wr7pwZ2ZvaAC8UCxA2H3YxTHpEMLYPW+Rn/nZn6lV2AlrPJhMWPyQqDgN4E+6295nH/Y7NNs9G8SO9pevbTMpFLUeGQiAo/kz90uWIPOXCjhLaJ5vyKKUz/y7M6M9dpBM45FOAuAFMn8lmBqvDT7O4ft1IEzu5vyAeNfzV3rt7On2zjaCATMAoQF2YWetWVaJ2rp4zXnx6TouXb7GMOGAZ2RhYPqCzKzT6ToPOMRDF6qWW8gfoARajb6gjUacrka4+TTpJABG+LHdawCKtyo/8wU6KTCBM+ui3WrWuL61XT9yX6HR7DDo5XKI43F2+Mqlqy+ev1f9f26+4Dee9Af9S5tbjJR32fLFvWFyGEOHA/iFXELJJzoCNKggg5CFEnnpjXnd+yEpXBWCl4IAtPTIw+evnOdcx554s7xP2D7qMPSQc9cLXvj8ePXipT988dXpaLC5sUE/UMr2epPdsxfCe/5GnDT9Xrx6dXXl0SnT3YejSujELP3QqFdoIjwB5Re2lZRgy/H7WlOlqRl8lnQSQHtv74uf/czxVq2jQE9n7jJXAB9x3hWPsXrvdBjsvfVlPvnkk7depvscTeDZ77240qqv1+rVerVUzrMoXJ/Vg1yy3YNRRA1nc/kApSmdkgJPmk4CwMbNqqDZpTpPCPDZTShxZCmg9jm1aTZYXpsybzhV+q3A/cEPeP/VjZ2N7G7+8rVCqfSJ9/+xfA/zL6xCtp9Ijvxy4ayIXDpxwgOmlrKz+L3wcPE6oxdP+nKXSmYTxIe2Nqtv8AXyxR+wY+4gzbYx1ZrzxTyU/cW95lD+JAYbM6VHagmA2V6JudOX6Wv0wDkOgzc3/uDUq3t3/Rr/SZ1/At/DweD5F15ALY6yNBdIBME8oAD2AGSbjJ9ANf6TFJFaAsDSF9I/CoDmPTWAcPPkG/W3XSqk1a73I8AItj+EHdBScgqaLXrL6DftEmix1OI/vSKQMxkTcVZ+lrxMOJn6HaYg9kj9EYCS4iRsm8BC2DRPWAZk+FrMboaklwJSK9sx0ul8J728gq8FeO3XdQLQ1JdiNP8Ij5aI/yTEIUp2ETKPbCO2yXF2REqP1IpAyLW6OyZeL04BF/G6xwXy07jM64+F0BLbBofRgIZC6QX/SePZfvSaDhin80gtAYxY54YVjwP3rmsSB9eod9o0Cqx9sjhea4FSs8UC2tj+GfNF+KHZQhWAFKalfIFddV6Lmq6z1BJAs9liXUsGdORdcDCGBjwN6Zb1D1M6w/VHBuf6iRPwBVwHaSWmCIeImAwe0ouOc93Oj5zzXZ4wtQRQqSyxEm7YfmT+UAAbw0ACujf0+svXN+7yF/MTrh4D4Rs72/iNsHCEc4TtKNGd5B+MFnYr8y0lf8K1+gkUl1olmA2qM7WWk3vxgGAC/HSqP69eQXkmAw42N38CjXsPFcGuYVgNsuEewpoRyD8MACMI5dg7NVNt1BxTT+WR2h7gmWeeyRWrzZVVNkuc5XNTVrfJF9kHbpYvLJ048Za//JdT+Tp/5Idi2KTRbFZr1QoL5rGEAH0mfQFcYzwpVNgvJ7WjJqntAU6cOLG0tLxx6TxrgLD8B3Y81oVgFXymQ12+eunLv/+5HxkrqUyImQxXuF6XmTFaRJkXyt5K7IqZc0Od7NUrV1L51DxUOnsAxm0+8oH3vflNby6z/cl0kowJ86xM7xqzEFp/eOLQWgwQp/W1/tDPdWRpqYTSC39gqhB76pQroH80ne33BvudzjLdQkrHwtJJALVa5d1ve9POxXMPLDfe8sCJlUa9nM/D/uuVcqlU7nT2jx1eZ63MHxomKU0A1h9/9OFGo3bk6LFiLJfEqhrY0NhicLlaZjnFtz/2KJsNpvLp00kAw8H45e++cvHiGaRYBvmZIM8LZfMrPF5YDI2d8sb9XjI0lsqX+sM+FHsKtsqldnufOUJHjxxZXVmuFvNry60HTz6wvro6Yy3F8eDo0aM/bLb3RPx0kvU73vGO4aBz8eJFJkbiEzFi28fxJFcstRpLSyvr/T6ybvueeD0/mUpi86SN2rt7QJ1l5YesnNhlilifrVFjY23GU6Yn1tbOnneGXcqOdBJAs4FJo1kqlYrwfDc8ZXhHl8bJaNhv76AM1Gu1W6dEpuyl/rCPg7mThfHYXhkdaW9na8DWqi6NyrK5o2qtUY9B4nHiJvfDZn3Xx0+nCPTkV79SrparS0t53mqpVGE7pFKhOJsOh7399i7v+8Lmrg7AiyNagDnxL5y5kEdQZMnIQhHtCGMom2KUiuWCq4LmO5PxtZ29VLZWOnsA5gL0i+1DR05c39zeZ+0DuoFY9aOYyVWKFcb8WQ0KMlgcN1tgNhjmCuX9/j7L4KEJOAjMSEB2WsoNm+XxxdPnT585ezNymk7S2QMMu+NzT57eunph0G2zxic7BbDKOctBMyjGbnAoBZr7UmrX+xHQyUywtUaD0S52UUZW7PaGeyhJjAW4RAQ7zE8ee+QRDAk/Qs53f5J0EkClVn3/h95z9Nh9K6us+Mly4Fj/3f+dBZBZ9Lbd7h5eO1Qsle7+1/OTqSHQfqxSWj68evjwYbQjNoRknbxGrdqsVdkwodPujvfaJ9YP/WQq8xMuJZ0EQCNudjvLh9afeMe7V9aPlGv1SrXOyNfO7t7e3i53R/0+PfxPuK3v2uJYJPWZYr4YK2SxJTAcg/Fgl1PFfQRDQpk7mdWl5bu2/j9OxdKpA/AGd7Z2Xv7ucwM2ghuPUIJZIZT1scpIQdUaG6PjERTTJH+cpktPWkxAy9X6sNvDera/t8dcSCbI4xA6Go2LhTGrrBYxji630vPAtzxJSnuA6bTJwv7NJmskDns9DNsT9rxgfSxGw1jmIF+8eG2Dt3tLOxzoU/bO2NvbH44m2AuaEEG9xkIobJMzGA27agLTQqk83zAmde2Uzh6AVS+/eursoyeOjafbWTZDyhZwB2IjuGSpCDZMYnBgMRJ8E8zIPN0+neWs026zMDCDAIV8toTvCD4SiEClIlvmPPXU12/GT9NJOnsALJzPnzk/xZWxXBvNcux4Tbce85yQ/GcsiH8+jYOaPw4uXz13gX0RcBKhpWD/7KHGx81mg2vs7u+74Wwaj3Q+FW/q2rVrODbqzat2l3MoWP92ZsNPq/X6YgzgNjCXSqNHHt3L5oowfTZRxlamtywKMWfFwqWLl9lb8rYk6bhMLQEA+CubW7xO3yNKsdCfsQo+TO3UmbOLYeDb4NvuTp7+drdaqxRBPPzCbeIZDXNpIDypru/s3BY/NZepJQA41rWNzXKljKcXnH+k7KNT0AyaqFS09C2OW1oA9vDquV3WEnMdUHiGKpLLArkwUDa7nV4CSKcSnLzZ3W5Pxdd3CfhdGoLdXpj2evrMmSTC4vvWFtja3mQ7MPtJ4c/aAbSZBLF7y2Zqt8ZPx3lqewBez3e/971Xz57LFov4Qg+nk85g0OcbR4iUirM/JiIZKT/Fjjg5XEWcFs90MJfWy2QvX76CnfTHzPyuTZ50c3dt9X7ciqHQPXL//UeOHdnY3Fxaap29cOnSlasLA+j3a9Yj64feevxYL7ZOwghUyRauj4avnDm7IIDv12L3Rjjb/fIKmRrGTI97o8b/6WqJElxvNmmrMiuibLevxwqr/+mqsyh50QKLFli0wKIFFi2waIFFCyxaYNECixZYtMCiBRYtsGiBRQssWmDRAosWWLTAogUWLbBogUULLFpg0QKLFli0wKIFFi2waIFFCyxaYNECixZYtMCiBRYtsGiBRQssWmDRAosWWLTAogUWLbBogUULLFpg0QKLFli0wKIFFi2waIFFCyxaYNECixY44C3w/wNA8fTTj5VflAAAAABJRU5ErkJggg==", + "text/plain": [ + "" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from PIL import Image\n", + "sample_path = SOURCES_DIR / 'examples' / 'chair.png'\n", + "assert sample_path.exists(), f'sample faltante: {sample_path}'\n", + "img = Image.open(sample_path).convert('RGB')\n", + "print('imagen:', img.size, img.mode)\n", + "img.thumbnail((256, 256))\n", + "img" + ] + }, + { + "cell_type": "markdown", + "id": "4655363d", + "metadata": {}, + "source": [ + "## C. Inferencia + medicion" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "b74bdd6c", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\u001b[0;93m2026-05-28 22:42:08.349174846 [W:onnxruntime:Default, device_discovery.cc:283 GetGpuDevices] Failed to detect devices under \"/sys/class/drm/card0\": device_discovery.cc:93 ReadFileContents Failed to open file: \"/sys/class/drm/card0/device/vendor\"\u001b[m\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "device: cuda\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "load: 5.52s\n" + ] + } + ], + "source": [ + "import time, torch\n", + "from tsr.system import TSR\n", + "\n", + "DEVICE = 'cuda' if torch.cuda.is_available() else 'cpu'\n", + "print('device:', DEVICE)\n", + "\n", + "t0 = time.perf_counter()\n", + "model = TSR.from_pretrained('stabilityai/TripoSR', config_name='config.yaml', weight_name='model.ckpt')\n", + "model.renderer.set_chunk_size(8192)\n", + "model.to(DEVICE)\n", + "print(f'load: {time.perf_counter() - t0:.2f}s')" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "44f7763f", + "metadata": {}, + "outputs": [ + { + "data": { + "image/jpeg": "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/iObiHzj6V2egrjTFPqxNcZH9/8ACu30YY0qH3yf1qYbmlXYZrMwS3SPPLnJ+grmYYzd3qRj+NgPwroNY0+7upA8G1ht27ScYqLSNGntLrz7kpkLhVU55qrNsz5ko2NxVCKFHQDApaKKszCiiigAooooAKKKKACiiigAooooAbJGssbRuMqwII9q8+uYHsbya2b+BsD3HY16HXOeKNNkmRLy3jZ5E+V1UZJX1pNFRdjHEgksffBBqg33vwFTWxkVZEdGUEZ5BGKgY8j6CsXudEdjrPDQ+WY+wrfrC8ND9zN/wGt2tY7GFT4goooqiAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACuf8TDiE/wCy39K6Cuf8T8RwH2YVM9i6fxHMRn5/zru9LGNMtx/sZrgkb5z9K9BsBt0+3H/TMfyqKe5pV2LFFFFamAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAZfiAZ0iQ+jA1w56j6V3mtru0e4z2AP61weeBWU9zelsdh4a/49pT7r/KtysXw1/x4yH/bH8q2quOxlP4mFFFFUSFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAVkeIbczWUZRQ8gY4XvjFa9c34nR4zHOspUEYwG5qZ7F07c2pyyqyytuXkV6Fpk6XGm28kZ+XYB9COK88gk/f7iDJ/vDNd/o0Kw6XCF/jG8/jUwKqF+iiitDIKKKKACiiigAooooAKKKKACiiigAooooAKKKKAKGsso0m4B5LLtUeprgCj79u3BHUCu58RQedpLsH2mNg/XGa4Z7x/MB+0EFenY1nPc2p7HYeFnH2KWMhldXyQ30rermvCymR5p95b5QGJPU10tXHYznuFFFFMkKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigArC8RughEctukgZflfcQyn2rdrJ8Qxb9O34+41TJXRUHZnCpGyynbuAzzuGa9A0RHj0iASMScZGewzxXDRgyzpEvV2CgV6PGgjiRB0UAClFFVGOoooqzMKKKKACiiigAooooAKKKKACiiigAooooAKKKKAKGs4/syQlQRkZyM456159OgW4LDaRnjYK9LuYhPbSxH+NSK88mQJIQeo4NRI1p7HQeFQ3nzMNwQoMg+ua6isTwzDssHl/vtgfQVt1S2IluFFFFMkKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigApskaSxtHIoZG4IPenUUAUINF0+2nE0VsokByCSTir9FFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFZFx4csLm4MzeapY5IVsA1r0UDTsRwQR20CwwrtRRgCpKKKBBRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAH/2Q==", + "image/png": "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", + "text/plain": [ + "" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from tsr.utils import remove_background, resize_foreground\n", + "from rembg import new_session\n", + "import numpy as np\n", + "\n", + "rembg_session = new_session()\n", + "raw = Image.open(sample_path)\n", + "fg = remove_background(raw, rembg_session)\n", + "fg = resize_foreground(fg, 0.85)\n", + "\n", + "# Composite RGBA -> RGB sobre gris 0.5 (preprocesado canonico TripoSR run.py).\n", + "# Sin esto el tokenizer DINO recibe 4 canales y peta (expected 3).\n", + "arr = np.array(fg).astype(np.float32) / 255.0\n", + "arr = arr[:, :, :3] * arr[:, :, 3:4] + (1 - arr[:, :, 3:4]) * 0.5\n", + "fg = Image.fromarray((arr * 255.0).astype(np.uint8))\n", + "\n", + "fg_disp = fg.copy(); fg_disp.thumbnail((384, 384))\n", + "fg_disp" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "e5f8382b", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "