Spaces:
Sleeping
Sleeping
Bor Hodošček
commited on
Commit
·
b0ccf42
1
Parent(s):
7fd756b
feat: up
Browse files
app.py
CHANGED
@@ -15,17 +15,17 @@
|
|
15 |
|
16 |
import marimo
|
17 |
|
18 |
-
__generated_with = "0.
|
19 |
app = marimo.App(width="full", app_title="Scattertext on Japanese novels")
|
20 |
|
21 |
with app.setup:
|
22 |
import marimo as mo
|
23 |
-
import itertools
|
24 |
import fugashi
|
25 |
import pandas as pd
|
26 |
import scipy
|
27 |
import numpy as np
|
28 |
import random
|
|
|
29 |
import scattertext as st
|
30 |
from sklearn.feature_extraction.text import CountVectorizer, TfidfVectorizer
|
31 |
|
@@ -37,10 +37,13 @@ with app.setup:
|
|
37 |
@app.cell
|
38 |
def function_export():
|
39 |
@mo.cache
|
40 |
-
def
|
41 |
-
"""
|
|
|
42 |
|
43 |
-
|
|
|
|
|
44 |
return [tagger.parse(txt).strip() for txt in texts]
|
45 |
|
46 |
@mo.cache
|
@@ -71,17 +74,23 @@ def function_export():
|
|
71 |
chunk_size: int = 2000,
|
72 |
) -> tuple[list[str], list[str], list[str]]:
|
73 |
"""Chunk each text into segments of chunk_size tokens, preserving category and filename."""
|
|
|
|
|
|
|
|
|
|
|
|
|
74 |
chunked_texts = []
|
75 |
chunked_cats = []
|
76 |
-
|
77 |
for text, cat, fname in zip(texts, categories, filenames):
|
78 |
tokens = text.split()
|
79 |
-
for
|
80 |
-
chunk = " ".join(tokens[
|
81 |
chunked_texts.append(chunk)
|
82 |
chunked_cats.append(cat)
|
83 |
-
|
84 |
-
return chunked_texts, chunked_cats,
|
85 |
|
86 |
@mo.cache
|
87 |
def train_scikit_cached(
|
@@ -98,15 +107,18 @@ def function_export():
|
|
98 |
chunk_texts_out, chunk_cats, chunk_fnames = chunk_texts(
|
99 |
texts, categories, filenames
|
100 |
)
|
|
|
101 |
tfv = TfidfVectorizer()
|
102 |
X_tfidf = tfv.fit_transform(chunk_texts_out)
|
103 |
-
|
|
|
|
|
104 |
y_codes = pd.Categorical(
|
105 |
chunk_cats, categories=pd.Categorical(chunk_cats).categories
|
106 |
).codes
|
107 |
|
108 |
scikit_corpus = st.CorpusFromScikit(
|
109 |
-
X=
|
110 |
y=y_codes,
|
111 |
feature_vocabulary=tfv.vocabulary_,
|
112 |
category_names=list(pd.Categorical(chunk_cats).categories),
|
@@ -210,6 +222,7 @@ def data_check(data_form, parse_texts):
|
|
210 |
mo.stop(data_form.value is None)
|
211 |
|
212 |
from pathlib import Path
|
|
|
213 |
|
214 |
validation_messages: list[str] = []
|
215 |
|
@@ -250,28 +263,17 @@ def data_check(data_form, parse_texts):
|
|
250 |
category_b_texts = [unno_1, unno_2]
|
251 |
category_b_names = ["Unno_J_Chikyuuyousa.txt", "Unno_J_Kaseiheidan.txt"]
|
252 |
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
[data_form.value["label_b"]]
|
265 |
-
* (
|
266 |
-
len(data_form.value["files_b"])
|
267 |
-
if data_form.value["files_b"]
|
268 |
-
else 2
|
269 |
-
)
|
270 |
-
),
|
271 |
-
"filename": itertools.chain(category_a_names, category_b_names),
|
272 |
-
"text": itertools.chain(category_a_texts, category_b_texts),
|
273 |
-
}
|
274 |
-
)
|
275 |
|
276 |
with mo.status.spinner("コーパスを形態素解析中..."):
|
277 |
data["text"] = parse_texts(list(data["text"]))
|
@@ -300,7 +302,7 @@ def data_check(data_form, parse_texts):
|
|
300 |
@app.cell
|
301 |
def sampling_controls_setup():
|
302 |
chunk_size = mo.ui.slider(
|
303 |
-
start=
|
304 |
stop=50_000,
|
305 |
value=2000,
|
306 |
step=500,
|
@@ -329,7 +331,7 @@ def _(build_corpus_cached, chunk_texts, data, sample_frac, sampling_form):
|
|
329 |
mo.stop(sampling_form.value is None)
|
330 |
|
331 |
with mo.status.spinner("コーパスをサンプリング中…"):
|
332 |
-
|
333 |
list(data.text),
|
334 |
list(data.category),
|
335 |
list(data.filename),
|
@@ -337,18 +339,18 @@ def _(build_corpus_cached, chunk_texts, data, sample_frac, sampling_form):
|
|
337 |
)
|
338 |
|
339 |
if sample_frac.value < 1.0:
|
340 |
-
N = len(
|
341 |
k = int(N * sampling_form.value["sample_frac"])
|
342 |
idx = random.sample(range(N), k)
|
343 |
-
|
344 |
cats = [cats[i] for i in idx]
|
345 |
fnames = [fnames[i] for i in idx]
|
346 |
|
347 |
corpus = build_corpus_cached(
|
348 |
-
|
349 |
cats,
|
350 |
)
|
351 |
-
return cats, corpus, fnames
|
352 |
|
353 |
|
354 |
@app.cell
|
@@ -423,13 +425,14 @@ def _(run_model):
|
|
423 |
|
424 |
|
425 |
@app.cell
|
426 |
-
def _(cats, fnames, run_model,
|
427 |
mo.stop(not run_model.value)
|
428 |
|
429 |
scikit_corpus, tfidf_X, vectorizer, chunk_cats, chunk_fnames = train_scikit_cached(
|
430 |
-
|
431 |
)
|
432 |
-
|
|
|
433 |
|
434 |
|
435 |
@app.cell
|
@@ -485,14 +488,12 @@ def hyperparameters(model_dropdown):
|
|
485 |
@app.cell
|
486 |
def _(
|
487 |
chunk_cats,
|
|
|
488 |
label_a,
|
489 |
label_b,
|
490 |
model_dropdown,
|
491 |
model_form,
|
492 |
-
roc_auc,
|
493 |
-
roc_df,
|
494 |
run_model,
|
495 |
-
tfidf_X,
|
496 |
vectorizer,
|
497 |
):
|
498 |
mo.stop(not run_model.value or not model_form.value)
|
@@ -501,20 +502,73 @@ def _(
|
|
501 |
from sklearn.ensemble import GradientBoostingClassifier, RandomForestClassifier
|
502 |
from sklearn.linear_model import LogisticRegression
|
503 |
from sklearn.metrics import (
|
504 |
-
auc,
|
505 |
classification_report,
|
506 |
confusion_matrix,
|
507 |
-
roc_curve,
|
508 |
)
|
509 |
from sklearn.model_selection import train_test_split
|
510 |
|
511 |
-
|
512 |
-
|
|
|
513 |
chunk_cats,
|
514 |
test_size=model_form.value["test_size"],
|
515 |
random_state=RANDOM_SEED,
|
516 |
)
|
517 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
518 |
name = model_dropdown.value
|
519 |
if name == "LogisticRegression":
|
520 |
clf = LogisticRegression(
|
@@ -609,6 +663,10 @@ def _(
|
|
609 |
|
610 |
mo.vstack(
|
611 |
[
|
|
|
|
|
|
|
|
|
612 |
mo.ui.altair_chart(imp_chart),
|
613 |
mo.ui.altair_chart(cm_chart),
|
614 |
# mo.ui.altair_chart(roc_chart), # Turned out to not be too informative as task is too easy?
|
|
|
15 |
|
16 |
import marimo
|
17 |
|
18 |
+
__generated_with = "0.14.10"
|
19 |
app = marimo.App(width="full", app_title="Scattertext on Japanese novels")
|
20 |
|
21 |
with app.setup:
|
22 |
import marimo as mo
|
|
|
23 |
import fugashi
|
24 |
import pandas as pd
|
25 |
import scipy
|
26 |
import numpy as np
|
27 |
import random
|
28 |
+
import io
|
29 |
import scattertext as st
|
30 |
from sklearn.feature_extraction.text import CountVectorizer, TfidfVectorizer
|
31 |
|
|
|
37 |
@app.cell
|
38 |
def function_export():
|
39 |
@mo.cache
|
40 |
+
def get_tagger() -> fugashi.Tagger:
|
41 |
+
"""Load and cache a single fugashi Tagger instance."""
|
42 |
+
return fugashi.Tagger("-Owakati -d ./unidic-novel -r ./unidic-novel/dicrc")
|
43 |
|
44 |
+
@mo.cache
|
45 |
+
def parse_texts(texts: list[str], tagger=get_tagger()) -> list[str]:
|
46 |
+
"""Tokenize a list of raw strings via fugashi (MeCab)."""
|
47 |
return [tagger.parse(txt).strip() for txt in texts]
|
48 |
|
49 |
@mo.cache
|
|
|
74 |
chunk_size: int = 2000,
|
75 |
) -> tuple[list[str], list[str], list[str]]:
|
76 |
"""Chunk each text into segments of chunk_size tokens, preserving category and filename."""
|
77 |
+
from pathlib import Path
|
78 |
+
|
79 |
+
def format_chunk_label(fname: str, category: str, idx: int) -> str:
|
80 |
+
stem = Path(fname).stem
|
81 |
+
return f"{stem}-{category}#{idx}"
|
82 |
+
|
83 |
chunked_texts = []
|
84 |
chunked_cats = []
|
85 |
+
chunked_labels = []
|
86 |
for text, cat, fname in zip(texts, categories, filenames):
|
87 |
tokens = text.split()
|
88 |
+
for block_idx, start in enumerate(range(0, len(tokens), chunk_size), start=1):
|
89 |
+
chunk = " ".join(tokens[start : start + chunk_size])
|
90 |
chunked_texts.append(chunk)
|
91 |
chunked_cats.append(cat)
|
92 |
+
chunked_labels.append(format_chunk_label(fname, cat, block_idx))
|
93 |
+
return chunked_texts, chunked_cats, chunked_labels
|
94 |
|
95 |
@mo.cache
|
96 |
def train_scikit_cached(
|
|
|
107 |
chunk_texts_out, chunk_cats, chunk_fnames = chunk_texts(
|
108 |
texts, categories, filenames
|
109 |
)
|
110 |
+
# fit TF-IDF once
|
111 |
tfv = TfidfVectorizer()
|
112 |
X_tfidf = tfv.fit_transform(chunk_texts_out)
|
113 |
+
# reuse the same vocabulary for raw counts
|
114 |
+
cv = CountVectorizer(vocabulary=tfv.vocabulary_)
|
115 |
+
X_count = cv.transform(chunk_texts_out)
|
116 |
y_codes = pd.Categorical(
|
117 |
chunk_cats, categories=pd.Categorical(chunk_cats).categories
|
118 |
).codes
|
119 |
|
120 |
scikit_corpus = st.CorpusFromScikit(
|
121 |
+
X=X_count,
|
122 |
y=y_codes,
|
123 |
feature_vocabulary=tfv.vocabulary_,
|
124 |
category_names=list(pd.Categorical(chunk_cats).categories),
|
|
|
222 |
mo.stop(data_form.value is None)
|
223 |
|
224 |
from pathlib import Path
|
225 |
+
import itertools
|
226 |
|
227 |
validation_messages: list[str] = []
|
228 |
|
|
|
263 |
category_b_texts = [unno_1, unno_2]
|
264 |
category_b_names = ["Unno_J_Chikyuuyousa.txt", "Unno_J_Kaseiheidan.txt"]
|
265 |
|
266 |
+
nA = len(data_form.value["files_a"]) or 2
|
267 |
+
nB = len(data_form.value["files_b"]) or 2
|
268 |
+
categories = [data_form.value["label_a"]] * nA + [data_form.value["label_b"]] * nB
|
269 |
+
filenames = itertools.chain(category_a_names, category_b_names)
|
270 |
+
texts = itertools.chain(category_a_texts, category_b_texts)
|
271 |
+
|
272 |
+
data = pd.DataFrame({
|
273 |
+
"category": categories,
|
274 |
+
"filename": filenames,
|
275 |
+
"text": texts,
|
276 |
+
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
277 |
|
278 |
with mo.status.spinner("コーパスを形態素解析中..."):
|
279 |
data["text"] = parse_texts(list(data["text"]))
|
|
|
302 |
@app.cell
|
303 |
def sampling_controls_setup():
|
304 |
chunk_size = mo.ui.slider(
|
305 |
+
start=50,
|
306 |
stop=50_000,
|
307 |
value=2000,
|
308 |
step=500,
|
|
|
331 |
mo.stop(sampling_form.value is None)
|
332 |
|
333 |
with mo.status.spinner("コーパスをサンプリング中…"):
|
334 |
+
chunked_texts, cats, fnames = chunk_texts(
|
335 |
list(data.text),
|
336 |
list(data.category),
|
337 |
list(data.filename),
|
|
|
339 |
)
|
340 |
|
341 |
if sample_frac.value < 1.0:
|
342 |
+
N = len(chunked_texts)
|
343 |
k = int(N * sampling_form.value["sample_frac"])
|
344 |
idx = random.sample(range(N), k)
|
345 |
+
chunked_texts = [chunked_texts[i] for i in idx]
|
346 |
cats = [cats[i] for i in idx]
|
347 |
fnames = [fnames[i] for i in idx]
|
348 |
|
349 |
corpus = build_corpus_cached(
|
350 |
+
chunked_texts,
|
351 |
cats,
|
352 |
)
|
353 |
+
return cats, chunked_texts, corpus, fnames
|
354 |
|
355 |
|
356 |
@app.cell
|
|
|
425 |
|
426 |
|
427 |
@app.cell
|
428 |
+
def _(cats, chunked_texts, fnames, run_model, train_scikit_cached):
|
429 |
mo.stop(not run_model.value)
|
430 |
|
431 |
scikit_corpus, tfidf_X, vectorizer, chunk_cats, chunk_fnames = train_scikit_cached(
|
432 |
+
chunked_texts, cats, fnames
|
433 |
)
|
434 |
+
# also send the raw text chunks onward for download
|
435 |
+
return chunk_cats, chunk_fnames, scikit_corpus, vectorizer
|
436 |
|
437 |
|
438 |
@app.cell
|
|
|
488 |
@app.cell
|
489 |
def _(
|
490 |
chunk_cats,
|
491 |
+
chunked_texts,
|
492 |
label_a,
|
493 |
label_b,
|
494 |
model_dropdown,
|
495 |
model_form,
|
|
|
|
|
496 |
run_model,
|
|
|
497 |
vectorizer,
|
498 |
):
|
499 |
mo.stop(not run_model.value or not model_form.value)
|
|
|
502 |
from sklearn.ensemble import GradientBoostingClassifier, RandomForestClassifier
|
503 |
from sklearn.linear_model import LogisticRegression
|
504 |
from sklearn.metrics import (
|
|
|
505 |
classification_report,
|
506 |
confusion_matrix,
|
|
|
507 |
)
|
508 |
from sklearn.model_selection import train_test_split
|
509 |
|
510 |
+
# split the raw text chunks and labels
|
511 |
+
texts_train, texts_test, y_train, y_test = train_test_split(
|
512 |
+
chunked_texts,
|
513 |
chunk_cats,
|
514 |
test_size=model_form.value["test_size"],
|
515 |
random_state=RANDOM_SEED,
|
516 |
)
|
517 |
|
518 |
+
# still need feature‐matrices for training the classifier
|
519 |
+
X_train = vectorizer.transform(texts_train)
|
520 |
+
X_test = vectorizer.transform(texts_test)
|
521 |
+
|
522 |
+
def get_train_data():
|
523 |
+
df = pd.DataFrame({
|
524 |
+
"text": texts_train,
|
525 |
+
"label": y_train,
|
526 |
+
})
|
527 |
+
print(df)
|
528 |
+
buf = io.BytesIO()
|
529 |
+
df.to_csv(buf, index=False)
|
530 |
+
return buf.getvalue()
|
531 |
+
|
532 |
+
download_training_dataset = mo.download(
|
533 |
+
data=get_train_data,
|
534 |
+
filename="train.csv",
|
535 |
+
mimetype="text/csv",
|
536 |
+
label="Download training data",
|
537 |
+
)
|
538 |
+
|
539 |
+
def get_test_data():
|
540 |
+
df = pd.DataFrame({
|
541 |
+
"text": texts_test,
|
542 |
+
"label": y_test,
|
543 |
+
})
|
544 |
+
buf = io.BytesIO()
|
545 |
+
df.to_csv(buf, index=False)
|
546 |
+
return buf.getvalue()
|
547 |
+
|
548 |
+
download_test_dataset = mo.download(
|
549 |
+
data=get_test_data,
|
550 |
+
filename="test.csv",
|
551 |
+
mimetype="text/csv",
|
552 |
+
label="Download test data",
|
553 |
+
)
|
554 |
+
|
555 |
+
def get_all_data():
|
556 |
+
# concatenate train and test text+labels
|
557 |
+
df_all = pd.DataFrame({
|
558 |
+
"text": texts_train + texts_test,
|
559 |
+
"label": list(y_train) + list(y_test),
|
560 |
+
})
|
561 |
+
buf = io.BytesIO()
|
562 |
+
df_all.to_csv(buf, index=False)
|
563 |
+
return buf.getvalue()
|
564 |
+
|
565 |
+
download_all_dataset = mo.download(
|
566 |
+
data=get_all_data,
|
567 |
+
filename="all_data.csv",
|
568 |
+
mimetype="text/csv",
|
569 |
+
label="Download full dataset",
|
570 |
+
)
|
571 |
+
|
572 |
name = model_dropdown.value
|
573 |
if name == "LogisticRegression":
|
574 |
clf = LogisticRegression(
|
|
|
663 |
|
664 |
mo.vstack(
|
665 |
[
|
666 |
+
mo.hstack(
|
667 |
+
[download_training_dataset, download_test_dataset, download_all_dataset],
|
668 |
+
align="start",
|
669 |
+
),
|
670 |
mo.ui.altair_chart(imp_chart),
|
671 |
mo.ui.altair_chart(cm_chart),
|
672 |
# mo.ui.altair_chart(roc_chart), # Turned out to not be too informative as task is too easy?
|
uv.lock
CHANGED
@@ -90,11 +90,11 @@ wheels = [
|
|
90 |
|
91 |
[[package]]
|
92 |
name = "certifi"
|
93 |
-
version = "2025.
|
94 |
source = { registry = "https://pypi.org/simple" }
|
95 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
96 |
wheels = [
|
97 |
-
{ url = "https://files.pythonhosted.org/packages/
|
98 |
]
|
99 |
|
100 |
[[package]]
|
@@ -356,51 +356,51 @@ wheels = [
|
|
356 |
|
357 |
[[package]]
|
358 |
name = "loro"
|
359 |
-
version = "1.5.
|
360 |
-
source = { registry = "https://pypi.org/simple" }
|
361 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
362 |
-
wheels = [
|
363 |
-
{ url = "https://files.pythonhosted.org/packages/
|
364 |
-
{ url = "https://files.pythonhosted.org/packages/
|
365 |
-
{ url = "https://files.pythonhosted.org/packages/
|
366 |
-
{ url = "https://files.pythonhosted.org/packages/
|
367 |
-
{ url = "https://files.pythonhosted.org/packages/
|
368 |
-
{ url = "https://files.pythonhosted.org/packages/
|
369 |
-
{ url = "https://files.pythonhosted.org/packages/
|
370 |
-
{ url = "https://files.pythonhosted.org/packages/
|
371 |
-
{ url = "https://files.pythonhosted.org/packages/
|
372 |
-
{ url = "https://files.pythonhosted.org/packages/
|
373 |
-
{ url = "https://files.pythonhosted.org/packages/
|
374 |
-
{ url = "https://files.pythonhosted.org/packages/
|
375 |
-
{ url = "https://files.pythonhosted.org/packages/
|
376 |
-
{ url = "https://files.pythonhosted.org/packages/
|
377 |
-
{ url = "https://files.pythonhosted.org/packages/
|
378 |
-
{ url = "https://files.pythonhosted.org/packages/
|
379 |
-
{ url = "https://files.pythonhosted.org/packages/
|
380 |
-
{ url = "https://files.pythonhosted.org/packages/
|
381 |
-
{ url = "https://files.pythonhosted.org/packages/
|
382 |
-
{ url = "https://files.pythonhosted.org/packages/
|
383 |
-
{ url = "https://files.pythonhosted.org/packages/
|
384 |
-
{ url = "https://files.pythonhosted.org/packages/
|
385 |
-
{ url = "https://files.pythonhosted.org/packages/
|
386 |
-
{ url = "https://files.pythonhosted.org/packages/
|
387 |
-
{ url = "https://files.pythonhosted.org/packages/
|
388 |
-
{ url = "https://files.pythonhosted.org/packages/
|
389 |
-
{ url = "https://files.pythonhosted.org/packages/
|
390 |
-
{ url = "https://files.pythonhosted.org/packages/
|
391 |
-
{ url = "https://files.pythonhosted.org/packages/
|
392 |
-
{ url = "https://files.pythonhosted.org/packages/
|
393 |
-
{ url = "https://files.pythonhosted.org/packages/
|
394 |
-
{ url = "https://files.pythonhosted.org/packages/
|
395 |
-
{ url = "https://files.pythonhosted.org/packages/
|
396 |
-
{ url = "https://files.pythonhosted.org/packages/4b/
|
397 |
-
{ url = "https://files.pythonhosted.org/packages/
|
398 |
-
{ url = "https://files.pythonhosted.org/packages/
|
399 |
]
|
400 |
|
401 |
[[package]]
|
402 |
name = "marimo"
|
403 |
-
version = "0.
|
404 |
source = { registry = "https://pypi.org/simple" }
|
405 |
dependencies = [
|
406 |
{ name = "click" },
|
@@ -420,9 +420,9 @@ dependencies = [
|
|
420 |
{ name = "uvicorn" },
|
421 |
{ name = "websockets" },
|
422 |
]
|
423 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
424 |
wheels = [
|
425 |
-
{ url = "https://files.pythonhosted.org/packages/
|
426 |
]
|
427 |
|
428 |
[[package]]
|
@@ -460,11 +460,11 @@ wheels = [
|
|
460 |
|
461 |
[[package]]
|
462 |
name = "markdown"
|
463 |
-
version = "3.8"
|
464 |
source = { registry = "https://pypi.org/simple" }
|
465 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
466 |
wheels = [
|
467 |
-
{ url = "https://files.pythonhosted.org/packages/
|
468 |
]
|
469 |
|
470 |
[[package]]
|
@@ -550,11 +550,11 @@ wheels = [
|
|
550 |
|
551 |
[[package]]
|
552 |
name = "narwhals"
|
553 |
-
version = "1.
|
554 |
source = { registry = "https://pypi.org/simple" }
|
555 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
556 |
wheels = [
|
557 |
-
{ url = "https://files.pythonhosted.org/packages/
|
558 |
]
|
559 |
|
560 |
[[package]]
|
@@ -606,7 +606,7 @@ wheels = [
|
|
606 |
|
607 |
[[package]]
|
608 |
name = "pandas"
|
609 |
-
version = "2.3.
|
610 |
source = { registry = "https://pypi.org/simple" }
|
611 |
dependencies = [
|
612 |
{ name = "numpy" },
|
@@ -614,28 +614,28 @@ dependencies = [
|
|
614 |
{ name = "pytz" },
|
615 |
{ name = "tzdata" },
|
616 |
]
|
617 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
618 |
-
wheels = [
|
619 |
-
{ url = "https://files.pythonhosted.org/packages/
|
620 |
-
{ url = "https://files.pythonhosted.org/packages/
|
621 |
-
{ url = "https://files.pythonhosted.org/packages/
|
622 |
-
{ url = "https://files.pythonhosted.org/packages/01/
|
623 |
-
{ url = "https://files.pythonhosted.org/packages/
|
624 |
-
{ url = "https://files.pythonhosted.org/packages/
|
625 |
-
{ url = "https://files.pythonhosted.org/packages/
|
626 |
-
{ url = "https://files.pythonhosted.org/packages/
|
627 |
-
{ url = "https://files.pythonhosted.org/packages/
|
628 |
-
{ url = "https://files.pythonhosted.org/packages/
|
629 |
-
{ url = "https://files.pythonhosted.org/packages/
|
630 |
-
{ url = "https://files.pythonhosted.org/packages/
|
631 |
-
{ url = "https://files.pythonhosted.org/packages/
|
632 |
-
{ url = "https://files.pythonhosted.org/packages/
|
633 |
-
{ url = "https://files.pythonhosted.org/packages/
|
634 |
-
{ url = "https://files.pythonhosted.org/packages/
|
635 |
-
{ url = "https://files.pythonhosted.org/packages/
|
636 |
-
{ url = "https://files.pythonhosted.org/packages/
|
637 |
-
{ url = "https://files.pythonhosted.org/packages/
|
638 |
-
{ url = "https://files.pythonhosted.org/packages/
|
639 |
]
|
640 |
|
641 |
[[package]]
|
@@ -794,24 +794,24 @@ wheels = [
|
|
794 |
|
795 |
[[package]]
|
796 |
name = "pygments"
|
797 |
-
version = "2.19.
|
798 |
source = { registry = "https://pypi.org/simple" }
|
799 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
800 |
wheels = [
|
801 |
-
{ url = "https://files.pythonhosted.org/packages/
|
802 |
]
|
803 |
|
804 |
[[package]]
|
805 |
name = "pymdown-extensions"
|
806 |
-
version = "10.
|
807 |
source = { registry = "https://pypi.org/simple" }
|
808 |
dependencies = [
|
809 |
{ name = "markdown" },
|
810 |
{ name = "pyyaml" },
|
811 |
]
|
812 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
813 |
wheels = [
|
814 |
-
{ url = "https://files.pythonhosted.org/packages/
|
815 |
]
|
816 |
|
817 |
[[package]]
|
@@ -905,51 +905,78 @@ wheels = [
|
|
905 |
|
906 |
[[package]]
|
907 |
name = "rpds-py"
|
908 |
-
version = "0.
|
909 |
-
source = { registry = "https://pypi.org/simple" }
|
910 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
911 |
-
wheels = [
|
912 |
-
{ url = "https://files.pythonhosted.org/packages/
|
913 |
-
{ url = "https://files.pythonhosted.org/packages/
|
914 |
-
{ url = "https://files.pythonhosted.org/packages/
|
915 |
-
{ url = "https://files.pythonhosted.org/packages/
|
916 |
-
{ url = "https://files.pythonhosted.org/packages/
|
917 |
-
{ url = "https://files.pythonhosted.org/packages/
|
918 |
-
{ url = "https://files.pythonhosted.org/packages/
|
919 |
-
{ url = "https://files.pythonhosted.org/packages/
|
920 |
-
{ url = "https://files.pythonhosted.org/packages/
|
921 |
-
{ url = "https://files.pythonhosted.org/packages/
|
922 |
-
{ url = "https://files.pythonhosted.org/packages/
|
923 |
-
{ url = "https://files.pythonhosted.org/packages/
|
924 |
-
{ url = "https://files.pythonhosted.org/packages/
|
925 |
-
{ url = "https://files.pythonhosted.org/packages/
|
926 |
-
{ url = "https://files.pythonhosted.org/packages/
|
927 |
-
{ url = "https://files.pythonhosted.org/packages/
|
928 |
-
{ url = "https://files.pythonhosted.org/packages/
|
929 |
-
{ url = "https://files.pythonhosted.org/packages/
|
930 |
-
{ url = "https://files.pythonhosted.org/packages/
|
931 |
-
{ url = "https://files.pythonhosted.org/packages/
|
932 |
-
{ url = "https://files.pythonhosted.org/packages/
|
933 |
-
{ url = "https://files.pythonhosted.org/packages/
|
934 |
-
{ url = "https://files.pythonhosted.org/packages/
|
935 |
-
{ url = "https://files.pythonhosted.org/packages/
|
936 |
-
{ url = "https://files.pythonhosted.org/packages/
|
937 |
-
{ url = "https://files.pythonhosted.org/packages/
|
938 |
-
{ url = "https://files.pythonhosted.org/packages/
|
939 |
-
{ url = "https://files.pythonhosted.org/packages/
|
940 |
-
{ url = "https://files.pythonhosted.org/packages/
|
941 |
-
{ url = "https://files.pythonhosted.org/packages/
|
942 |
-
{ url = "https://files.pythonhosted.org/packages/
|
943 |
-
{ url = "https://files.pythonhosted.org/packages/
|
944 |
-
{ url = "https://files.pythonhosted.org/packages/
|
945 |
-
{ url = "https://files.pythonhosted.org/packages/
|
946 |
-
{ url = "https://files.pythonhosted.org/packages/
|
947 |
-
{ url = "https://files.pythonhosted.org/packages/
|
948 |
-
{ url = "https://files.pythonhosted.org/packages/
|
949 |
-
{ url = "https://files.pythonhosted.org/packages/
|
950 |
-
{ url = "https://files.pythonhosted.org/packages/
|
951 |
-
{ url = "https://files.pythonhosted.org/packages/
|
952 |
-
{ url = "https://files.pythonhosted.org/packages/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
953 |
]
|
954 |
|
955 |
[[package]]
|
@@ -1075,14 +1102,14 @@ wheels = [
|
|
1075 |
|
1076 |
[[package]]
|
1077 |
name = "smart-open"
|
1078 |
-
version = "7.
|
1079 |
source = { registry = "https://pypi.org/simple" }
|
1080 |
dependencies = [
|
1081 |
{ name = "wrapt" },
|
1082 |
]
|
1083 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
1084 |
wheels = [
|
1085 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1086 |
]
|
1087 |
|
1088 |
[[package]]
|
@@ -1182,19 +1209,20 @@ wheels = [
|
|
1182 |
|
1183 |
[[package]]
|
1184 |
name = "starlette"
|
1185 |
-
version = "0.47.
|
1186 |
source = { registry = "https://pypi.org/simple" }
|
1187 |
dependencies = [
|
1188 |
{ name = "anyio" },
|
|
|
1189 |
]
|
1190 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
1191 |
wheels = [
|
1192 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1193 |
]
|
1194 |
|
1195 |
[[package]]
|
1196 |
name = "statsmodels"
|
1197 |
-
version = "0.14.
|
1198 |
source = { registry = "https://pypi.org/simple" }
|
1199 |
dependencies = [
|
1200 |
{ name = "numpy" },
|
@@ -1203,20 +1231,20 @@ dependencies = [
|
|
1203 |
{ name = "patsy" },
|
1204 |
{ name = "scipy" },
|
1205 |
]
|
1206 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
1207 |
wheels = [
|
1208 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1209 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1210 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1211 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1212 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1213 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1214 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1215 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1216 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1217 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1218 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1219 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1220 |
]
|
1221 |
|
1222 |
[[package]]
|
@@ -1302,11 +1330,11 @@ wheels = [
|
|
1302 |
|
1303 |
[[package]]
|
1304 |
name = "typing-extensions"
|
1305 |
-
version = "4.14.
|
1306 |
source = { registry = "https://pypi.org/simple" }
|
1307 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
1308 |
wheels = [
|
1309 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1310 |
]
|
1311 |
|
1312 |
[[package]]
|
@@ -1332,24 +1360,24 @@ wheels = [
|
|
1332 |
|
1333 |
[[package]]
|
1334 |
name = "urllib3"
|
1335 |
-
version = "2.
|
1336 |
source = { registry = "https://pypi.org/simple" }
|
1337 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
1338 |
wheels = [
|
1339 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1340 |
]
|
1341 |
|
1342 |
[[package]]
|
1343 |
name = "uvicorn"
|
1344 |
-
version = "0.
|
1345 |
source = { registry = "https://pypi.org/simple" }
|
1346 |
dependencies = [
|
1347 |
{ name = "click" },
|
1348 |
{ name = "h11" },
|
1349 |
]
|
1350 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
1351 |
wheels = [
|
1352 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1353 |
]
|
1354 |
|
1355 |
[[package]]
|
|
|
90 |
|
91 |
[[package]]
|
92 |
name = "certifi"
|
93 |
+
version = "2025.7.14"
|
94 |
source = { registry = "https://pypi.org/simple" }
|
95 |
+
sdist = { url = "https://files.pythonhosted.org/packages/b3/76/52c535bcebe74590f296d6c77c86dabf761c41980e1347a2422e4aa2ae41/certifi-2025.7.14.tar.gz", hash = "sha256:8ea99dbdfaaf2ba2f9bac77b9249ef62ec5218e7c2b2e903378ed5fccf765995", size = 163981, upload-time = "2025-07-14T03:29:28.449Z" }
|
96 |
wheels = [
|
97 |
+
{ url = "https://files.pythonhosted.org/packages/4f/52/34c6cf5bb9285074dc3531c437b3919e825d976fde097a7a73f79e726d03/certifi-2025.7.14-py3-none-any.whl", hash = "sha256:6b31f564a415d79ee77df69d757bb49a5bb53bd9f756cbbe24394ffd6fc1f4b2", size = 162722, upload-time = "2025-07-14T03:29:26.863Z" },
|
98 |
]
|
99 |
|
100 |
[[package]]
|
|
|
356 |
|
357 |
[[package]]
|
358 |
name = "loro"
|
359 |
+
version = "1.5.2"
|
360 |
+
source = { registry = "https://pypi.org/simple" }
|
361 |
+
sdist = { url = "https://files.pythonhosted.org/packages/a0/32/ce94b1fc342ac90d9ca21bc6e90c727990734a75505cb893b2a71a364faf/loro-1.5.2.tar.gz", hash = "sha256:70e52acb16474f7c1e52aea2a7fe2771516f1e9f73d4edfe40f3193b122402c7", size = 62538, upload-time = "2025-06-23T10:16:47.156Z" }
|
362 |
+
wheels = [
|
363 |
+
{ url = "https://files.pythonhosted.org/packages/65/99/da0f0619c47404b202d1d01ec8cf137fad28f042dd2d580c6c23feee7948/loro-1.5.2-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:d2029f53e0ecd27606a23d6ad7bd67ead8b8ee198dcb6047a74afbf3ddd032fb", size = 3098906, upload-time = "2025-06-23T10:12:34.455Z" },
|
364 |
+
{ url = "https://files.pythonhosted.org/packages/80/14/7ac37a8c320e6ad4212d0a983fdd934cbeb061b835c379c2b4a843837f75/loro-1.5.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:89bb0d461d53b9fe45a698a83093f1411118b7c5a1ab4ff9029fa7f65b595f99", size = 2882304, upload-time = "2025-06-23T10:12:12.27Z" },
|
365 |
+
{ url = "https://files.pythonhosted.org/packages/4a/07/eae924bc8c2a16bef8783698de5a15cb1a10d4d2d459142ed9ce3e265249/loro-1.5.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9a4325b0d4e6cedc5a3fb747b3300deeda1422b0d374d436395252398ebc59fc", size = 3110983, upload-time = "2025-06-23T10:06:43.895Z" },
|
366 |
+
{ url = "https://files.pythonhosted.org/packages/72/3d/f2de0cbf8de96e7a195c00cb9ef6df7b3d5ad44de34f9635a3494a5c4dba/loro-1.5.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7e85775c4a2d58ec4e416f89efcdd4fd9f54f4b06bf8a08f739c1eebb58a976e", size = 3203197, upload-time = "2025-06-23T10:07:43.591Z" },
|
367 |
+
{ url = "https://files.pythonhosted.org/packages/3d/55/a217e8159ade33234b099ba7268312254cfb4e70ebd2f192962a5643e1d4/loro-1.5.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:babea799d98e32779d05a6296d1ee1b0722816590ed486c5e41ebf7149349b80", size = 3581496, upload-time = "2025-06-23T10:08:42.312Z" },
|
368 |
+
{ url = "https://files.pythonhosted.org/packages/1c/59/ae4ea0b3508e43d10f53b4a6f9820b5934df0d83cdd10c59970e0c353515/loro-1.5.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0c0383bc8413f74696fc6e93ca07df7e60ac1bdfa79a117935b8db65aba31078", size = 3319790, upload-time = "2025-06-23T10:09:41.601Z" },
|
369 |
+
{ url = "https://files.pythonhosted.org/packages/55/ad/5ec1019094d1a2a431402dd0cbf438f35f7994913b6ff93790428ac862aa/loro-1.5.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9074f3ee314edf3aa074fb16bb78d880324c00b36991b2250ec3f8556e07830c", size = 3244562, upload-time = "2025-06-23T10:11:26.638Z" },
|
370 |
+
{ url = "https://files.pythonhosted.org/packages/be/e6/d242caee915de24c0dd11eb53e5d2930c5a3a5b0aaaf4265174eec8bb40d/loro-1.5.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f1ba327a35e05f7f9845606f504def3f68422c0f4b800c3e8ccc72551524cbc6", size = 3511329, upload-time = "2025-06-23T10:10:39.595Z" },
|
371 |
+
{ url = "https://files.pythonhosted.org/packages/25/32/a8fc357bb229e8786e30356dbedb79d8ff279466c999e6ffed127bca757a/loro-1.5.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:1e33c3d3a68c77a159e35aff659a7f5486f80be22b100708cf5a2d4d44f9baad", size = 3258089, upload-time = "2025-06-23T10:12:58.045Z" },
|
372 |
+
{ url = "https://files.pythonhosted.org/packages/0b/05/c41125aea23614548b14cc7860eaa997c92fbabdb3a7aef2ad56e7d1fa86/loro-1.5.2-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:d4a19a2ca0f3bdfe082ab9b2c80c41ea88cf15d00cec3f691783c01a2d042253", size = 3465736, upload-time = "2025-06-23T10:13:56.03Z" },
|
373 |
+
{ url = "https://files.pythonhosted.org/packages/e6/45/20a814b431ee8267da30fc866d1594ceafca4ab8ebf888cd396b41f7ecf1/loro-1.5.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:c50c640c82611440045a4a3ae0ca9e768c5f0e08c627ce7dd885d7c029833e4f", size = 3503325, upload-time = "2025-06-23T10:14:54.187Z" },
|
374 |
+
{ url = "https://files.pythonhosted.org/packages/b3/6b/bd6853b2a4f664f668e1846c806d589bb869afac8a39157cacd354f157b3/loro-1.5.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:9826bda03cb0b9a956e69576c73693ba94b4c1d2a2e6a759e65ad339d4f608d6", size = 3415236, upload-time = "2025-06-23T10:15:52.039Z" },
|
375 |
+
{ url = "https://files.pythonhosted.org/packages/84/f5/fbe7e31f269543d28b9f288cfa4de5ef80ee6bf73ff62b184c6512073b9e/loro-1.5.2-cp312-cp312-win32.whl", hash = "sha256:ca2a22bcdf2344c43c69882798ccca7167295d6836586495f9109dcbe195b13b", size = 2581189, upload-time = "2025-06-23T10:17:23.79Z" },
|
376 |
+
{ url = "https://files.pythonhosted.org/packages/ad/85/ad05385bb1451f5b64e5bb1818f43fae0f9c48201e4a95768d541c04bdc3/loro-1.5.2-cp312-cp312-win_amd64.whl", hash = "sha256:af2bf72f7b9e11f1c075e3abe5b8d9e366af1ebcce29585f050cdf23f24f6c74", size = 2744046, upload-time = "2025-06-23T10:16:52.737Z" },
|
377 |
+
{ url = "https://files.pythonhosted.org/packages/a4/09/061e8cecb42f99856580811156d7651d5e8172bb840224c7cd2eb94a8730/loro-1.5.2-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:dbb94c104e3aba4ea3f1118c72896de978e737bb066a35051bf49895e72540a7", size = 3098320, upload-time = "2025-06-23T10:12:36.2Z" },
|
378 |
+
{ url = "https://files.pythonhosted.org/packages/60/6e/96cb1a78869c8ae91e65d73ef4ee9f74bc16fd3baff5a7463f7702687dab/loro-1.5.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:847a10f493399f9b650b588b3d81893dfaa1e45e7091881268094f2b9f7df38b", size = 2882026, upload-time = "2025-06-23T10:12:14.078Z" },
|
379 |
+
{ url = "https://files.pythonhosted.org/packages/eb/e7/2a131e3e8072614af1cc2970efc1c30a812eb8b0f5286c7b6b390ae3fc9f/loro-1.5.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:902215b77b35e58286d907e8292f78b014cd9c55a46bc5deb944f555509b7747", size = 3110094, upload-time = "2025-06-23T10:06:45.986Z" },
|
380 |
+
{ url = "https://files.pythonhosted.org/packages/8c/63/34efc556a5a7663f045d64b9744c10f7b00386f252fac47c939f1c1795be/loro-1.5.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:19e8c9896348063721ef56631d2275c186faf63f6336079c57f41055c9cc1c30", size = 3202938, upload-time = "2025-06-23T10:07:45.751Z" },
|
381 |
+
{ url = "https://files.pythonhosted.org/packages/67/3f/5a37b5f1bec5d633f469754e26bf0ce77a26f7697cd95d0b4a51b9cd90be/loro-1.5.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91e75cd4b26506bb5b564ed24b433147fc8b77e8779b5736bc4f3bfddf270590", size = 3579945, upload-time = "2025-06-23T10:08:44.774Z" },
|
382 |
+
{ url = "https://files.pythonhosted.org/packages/78/b3/cd3202d6398524c5e1442688c6825e148eb953aa0de04952fd546c69a398/loro-1.5.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:41e54109599190dede34366476a8f42ae6e9fd7fd439823150e9f70e39d7d54e", size = 3318843, upload-time = "2025-06-23T10:09:43.448Z" },
|
383 |
+
{ url = "https://files.pythonhosted.org/packages/a5/65/8ed127c827ed9b540f5660e9c98265702dbfdd71ad59063bd3c799ca0dda/loro-1.5.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fd3f330795212f24b9dd710f952f7f7138ba86d6159f524025eb4627641ed4ef", size = 3243417, upload-time = "2025-06-23T10:11:28.604Z" },
|
384 |
+
{ url = "https://files.pythonhosted.org/packages/4e/29/6894f6db7a1eb7d5d2936b658b3a26c4ea8ce6b0563dde024b909a63289d/loro-1.5.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5ebdd716ce67c182f71a093c552f9a47428f7a3d93b038780bbb0f06779805d0", size = 3511123, upload-time = "2025-06-23T10:10:41.38Z" },
|
385 |
+
{ url = "https://files.pythonhosted.org/packages/17/26/230867103d5ec58ef18f8d0bc169a4defb4f865f9969247d4e9c723ae10e/loro-1.5.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a8ac5ff8b697e9a828fe4387da715d78d0f2afcf23bbd76f5089b4122f5e78a3", size = 3256828, upload-time = "2025-06-23T10:13:00.155Z" },
|
386 |
+
{ url = "https://files.pythonhosted.org/packages/79/8b/7aed297d9cc236e15674275364e37e938e9335c9dfad49ad35904fa8b1f3/loro-1.5.2-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:3dce7920c45c9c884246898805b270d63550a5dec61d3f33274010c40127a37c", size = 3464838, upload-time = "2025-06-23T10:13:57.76Z" },
|
387 |
+
{ url = "https://files.pythonhosted.org/packages/1d/c1/352fd39b61a842dc991bf95aaa75db34b6c353c1a3844da17e01f917deb5/loro-1.5.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:66afec16e22db99f1818906bc7cabda0cb077e0e493882b4c0983a8bc431413d", size = 3502790, upload-time = "2025-06-23T10:14:56.197Z" },
|
388 |
+
{ url = "https://files.pythonhosted.org/packages/2c/11/859dfc28b1397d731d2cc710dae0e7cb1cbeb45ab70ec518b4ed4f690a4c/loro-1.5.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9f052715922592f099e9b6553fccb48761c5ad83deefcb0df55effde309eb12d", size = 3414408, upload-time = "2025-06-23T10:15:54.225Z" },
|
389 |
+
{ url = "https://files.pythonhosted.org/packages/86/3e/fcd87311399e2eff892fb3a6b6f1d3307a2dfd99811fddf0889bee89d585/loro-1.5.2-cp313-cp313-win32.whl", hash = "sha256:978e9f6b0c9ad8c6b1ab70372eafbe00c41782522b216802cf961a81edd27561", size = 2580638, upload-time = "2025-06-23T10:17:25.89Z" },
|
390 |
+
{ url = "https://files.pythonhosted.org/packages/93/06/dd73ca0865630923f18fa4486e66a171a0a26ae8e7541f1c3d93100f1f5b/loro-1.5.2-cp313-cp313-win_amd64.whl", hash = "sha256:3ecebbf9f5f880c6ca9a1628e5f469d3d67b67c1fd50536c52c5f6eae01be549", size = 2743550, upload-time = "2025-06-23T10:16:54.883Z" },
|
391 |
+
{ url = "https://files.pythonhosted.org/packages/d2/70/9e5030bb9f1b86520f482605f660e5a192d6f5e56104fee122fe7d3dc72e/loro-1.5.2-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:354de426d6404cce252fb81be17a1589f1bd47197ba7f730f60fbb52452f49ab", size = 3106619, upload-time = "2025-06-23T10:06:47.811Z" },
|
392 |
+
{ url = "https://files.pythonhosted.org/packages/2b/37/43c8e3fa8c6239be1b22c0dfd779a4ab000682dddebc23becd057668c436/loro-1.5.2-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:18e3b6f07483c5553795fea05c8d318f96c018909dd390c68b81701afb12cac3", size = 3195270, upload-time = "2025-06-23T10:07:49.285Z" },
|
393 |
+
{ url = "https://files.pythonhosted.org/packages/b1/d6/8aaa433d08710cb1b95781d56efad366350082798463e35b5a6a4988b160/loro-1.5.2-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2298b96c5f533807373db27dbf5b10c88f1c5d9e0145feb952e7a813a81af645", size = 3575129, upload-time = "2025-06-23T10:08:46.435Z" },
|
394 |
+
{ url = "https://files.pythonhosted.org/packages/51/4e/44425f11da9b5278653c3ca01cdfd4da850f94ead5843d8134043ac825cf/loro-1.5.2-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0aa8edef791c1b46e19bf86ab17f9dbefc61b8f1fbecc49054d5eb880380d897", size = 3317031, upload-time = "2025-06-23T10:09:45.372Z" },
|
395 |
+
{ url = "https://files.pythonhosted.org/packages/3b/ae/af1713c7c3cc91a9d6cc1b812733665875eb30c22e4c9e0e213a9a69b1a2/loro-1.5.2-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:633c026cbb17c485de40f09aab13362f0c79140913dc67445606e3237092d70f", size = 3251501, upload-time = "2025-06-23T10:13:01.809Z" },
|
396 |
+
{ url = "https://files.pythonhosted.org/packages/4b/df/958e8abb78ca47ce06e0088bc5d44b5945ffbd08503936cbc0340b62a5f3/loro-1.5.2-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:903fed16d40b0373f747ecc398f5b86aaab16c37b4c670f580c2c5301bad4de5", size = 3456858, upload-time = "2025-06-23T10:13:59.614Z" },
|
397 |
+
{ url = "https://files.pythonhosted.org/packages/f1/f6/982af3432bde075f1fd3201de0e95f35a868f4e85cee36bb22bb0524b069/loro-1.5.2-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:2f9f77b1f582d86e1a57cdb38a43ea1a5861a6f0d73783335c2efdc3d1dcb793", size = 3494470, upload-time = "2025-06-23T10:14:58.001Z" },
|
398 |
+
{ url = "https://files.pythonhosted.org/packages/47/b3/a4725db48fb4c7637076023ccedf7dcb7f24a3d266208f2e2aafb8179861/loro-1.5.2-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:489230b2716c0a2ad50e205670abed029ba0787c028a62dd31226f7935f5d1fd", size = 3410923, upload-time = "2025-06-23T10:15:56.045Z" },
|
399 |
]
|
400 |
|
401 |
[[package]]
|
402 |
name = "marimo"
|
403 |
+
version = "0.14.10"
|
404 |
source = { registry = "https://pypi.org/simple" }
|
405 |
dependencies = [
|
406 |
{ name = "click" },
|
|
|
420 |
{ name = "uvicorn" },
|
421 |
{ name = "websockets" },
|
422 |
]
|
423 |
+
sdist = { url = "https://files.pythonhosted.org/packages/fa/93/d646fccda297843c41fa088e831212a425036e1cf7ea1c1fca41d7f7ad56/marimo-0.14.10.tar.gz", hash = "sha256:195247aabaccb7559532daa0313b7f47647ba78b98e151fe2b85df1f67bff79e", size = 29134153, upload-time = "2025-07-03T00:54:02.37Z" }
|
424 |
wheels = [
|
425 |
+
{ url = "https://files.pythonhosted.org/packages/cb/7a/296b66193a41a3024b56280b53e5066050fa0213469dd528bc1b322dac88/marimo-0.14.10-py3-none-any.whl", hash = "sha256:1fb78e272aaa25405f03ce9103972660ea694efc65e5b39b653d8291a9dea719", size = 29611482, upload-time = "2025-07-03T00:54:06.436Z" },
|
426 |
]
|
427 |
|
428 |
[[package]]
|
|
|
460 |
|
461 |
[[package]]
|
462 |
name = "markdown"
|
463 |
+
version = "3.8.2"
|
464 |
source = { registry = "https://pypi.org/simple" }
|
465 |
+
sdist = { url = "https://files.pythonhosted.org/packages/d7/c2/4ab49206c17f75cb08d6311171f2d65798988db4360c4d1485bd0eedd67c/markdown-3.8.2.tar.gz", hash = "sha256:247b9a70dd12e27f67431ce62523e675b866d254f900c4fe75ce3dda62237c45", size = 362071, upload-time = "2025-06-19T17:12:44.483Z" }
|
466 |
wheels = [
|
467 |
+
{ url = "https://files.pythonhosted.org/packages/96/2b/34cc11786bc00d0f04d0f5fdc3a2b1ae0b6239eef72d3d345805f9ad92a1/markdown-3.8.2-py3-none-any.whl", hash = "sha256:5c83764dbd4e00bdd94d85a19b8d55ccca20fe35b2e678a1422b380324dd5f24", size = 106827, upload-time = "2025-06-19T17:12:42.994Z" },
|
468 |
]
|
469 |
|
470 |
[[package]]
|
|
|
550 |
|
551 |
[[package]]
|
552 |
name = "narwhals"
|
553 |
+
version = "1.46.0"
|
554 |
source = { registry = "https://pypi.org/simple" }
|
555 |
+
sdist = { url = "https://files.pythonhosted.org/packages/06/7f/dd8c5f7978c3136de4d660877a5279e4688ad0c56dbc15ee003c2fe981cd/narwhals-1.46.0.tar.gz", hash = "sha256:fd7e53860b233c2b5566d8b4e1b3e8e9c01b5a87649a9f9a322742000f207a60", size = 512060, upload-time = "2025-07-07T11:34:44.391Z" }
|
556 |
wheels = [
|
557 |
+
{ url = "https://files.pythonhosted.org/packages/75/64/c46ba7517d90e330c4f35af1256d4b12ba037e2ef17d4aa4d4f11b4a143d/narwhals-1.46.0-py3-none-any.whl", hash = "sha256:f15d2255695d7e99f624f76aa5b765eb3fff8a509d3215049707af3a3feebc90", size = 373394, upload-time = "2025-07-07T11:34:42.251Z" },
|
558 |
]
|
559 |
|
560 |
[[package]]
|
|
|
606 |
|
607 |
[[package]]
|
608 |
name = "pandas"
|
609 |
+
version = "2.3.1"
|
610 |
source = { registry = "https://pypi.org/simple" }
|
611 |
dependencies = [
|
612 |
{ name = "numpy" },
|
|
|
614 |
{ name = "pytz" },
|
615 |
{ name = "tzdata" },
|
616 |
]
|
617 |
+
sdist = { url = "https://files.pythonhosted.org/packages/d1/6f/75aa71f8a14267117adeeed5d21b204770189c0a0025acbdc03c337b28fc/pandas-2.3.1.tar.gz", hash = "sha256:0a95b9ac964fe83ce317827f80304d37388ea77616b1425f0ae41c9d2d0d7bb2", size = 4487493, upload-time = "2025-07-07T19:20:04.079Z" }
|
618 |
+
wheels = [
|
619 |
+
{ url = "https://files.pythonhosted.org/packages/46/de/b8445e0f5d217a99fe0eeb2f4988070908979bec3587c0633e5428ab596c/pandas-2.3.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:689968e841136f9e542020698ee1c4fbe9caa2ed2213ae2388dc7b81721510d3", size = 11588172, upload-time = "2025-07-07T19:18:52.054Z" },
|
620 |
+
{ url = "https://files.pythonhosted.org/packages/1e/e0/801cdb3564e65a5ac041ab99ea6f1d802a6c325bb6e58c79c06a3f1cd010/pandas-2.3.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:025e92411c16cbe5bb2a4abc99732a6b132f439b8aab23a59fa593eb00704232", size = 10717365, upload-time = "2025-07-07T19:18:54.785Z" },
|
621 |
+
{ url = "https://files.pythonhosted.org/packages/51/a5/c76a8311833c24ae61a376dbf360eb1b1c9247a5d9c1e8b356563b31b80c/pandas-2.3.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9b7ff55f31c4fcb3e316e8f7fa194566b286d6ac430afec0d461163312c5841e", size = 11280411, upload-time = "2025-07-07T19:18:57.045Z" },
|
622 |
+
{ url = "https://files.pythonhosted.org/packages/da/01/e383018feba0a1ead6cf5fe8728e5d767fee02f06a3d800e82c489e5daaf/pandas-2.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7dcb79bf373a47d2a40cf7232928eb7540155abbc460925c2c96d2d30b006eb4", size = 11988013, upload-time = "2025-07-07T19:18:59.771Z" },
|
623 |
+
{ url = "https://files.pythonhosted.org/packages/5b/14/cec7760d7c9507f11c97d64f29022e12a6cc4fc03ac694535e89f88ad2ec/pandas-2.3.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:56a342b231e8862c96bdb6ab97170e203ce511f4d0429589c8ede1ee8ece48b8", size = 12767210, upload-time = "2025-07-07T19:19:02.944Z" },
|
624 |
+
{ url = "https://files.pythonhosted.org/packages/50/b9/6e2d2c6728ed29fb3d4d4d302504fb66f1a543e37eb2e43f352a86365cdf/pandas-2.3.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ca7ed14832bce68baef331f4d7f294411bed8efd032f8109d690df45e00c4679", size = 13440571, upload-time = "2025-07-07T19:19:06.82Z" },
|
625 |
+
{ url = "https://files.pythonhosted.org/packages/80/a5/3a92893e7399a691bad7664d977cb5e7c81cf666c81f89ea76ba2bff483d/pandas-2.3.1-cp312-cp312-win_amd64.whl", hash = "sha256:ac942bfd0aca577bef61f2bc8da8147c4ef6879965ef883d8e8d5d2dc3e744b8", size = 10987601, upload-time = "2025-07-07T19:19:09.589Z" },
|
626 |
+
{ url = "https://files.pythonhosted.org/packages/32/ed/ff0a67a2c5505e1854e6715586ac6693dd860fbf52ef9f81edee200266e7/pandas-2.3.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:9026bd4a80108fac2239294a15ef9003c4ee191a0f64b90f170b40cfb7cf2d22", size = 11531393, upload-time = "2025-07-07T19:19:12.245Z" },
|
627 |
+
{ url = "https://files.pythonhosted.org/packages/c7/db/d8f24a7cc9fb0972adab0cc80b6817e8bef888cfd0024eeb5a21c0bb5c4a/pandas-2.3.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:6de8547d4fdb12421e2d047a2c446c623ff4c11f47fddb6b9169eb98ffba485a", size = 10668750, upload-time = "2025-07-07T19:19:14.612Z" },
|
628 |
+
{ url = "https://files.pythonhosted.org/packages/0f/b0/80f6ec783313f1e2356b28b4fd8d2148c378370045da918c73145e6aab50/pandas-2.3.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:782647ddc63c83133b2506912cc6b108140a38a37292102aaa19c81c83db2928", size = 11342004, upload-time = "2025-07-07T19:19:16.857Z" },
|
629 |
+
{ url = "https://files.pythonhosted.org/packages/e9/e2/20a317688435470872885e7fc8f95109ae9683dec7c50be29b56911515a5/pandas-2.3.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2ba6aff74075311fc88504b1db890187a3cd0f887a5b10f5525f8e2ef55bfdb9", size = 12050869, upload-time = "2025-07-07T19:19:19.265Z" },
|
630 |
+
{ url = "https://files.pythonhosted.org/packages/55/79/20d746b0a96c67203a5bee5fb4e00ac49c3e8009a39e1f78de264ecc5729/pandas-2.3.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e5635178b387bd2ba4ac040f82bc2ef6e6b500483975c4ebacd34bec945fda12", size = 12750218, upload-time = "2025-07-07T19:19:21.547Z" },
|
631 |
+
{ url = "https://files.pythonhosted.org/packages/7c/0f/145c8b41e48dbf03dd18fdd7f24f8ba95b8254a97a3379048378f33e7838/pandas-2.3.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6f3bf5ec947526106399a9e1d26d40ee2b259c66422efdf4de63c848492d91bb", size = 13416763, upload-time = "2025-07-07T19:19:23.939Z" },
|
632 |
+
{ url = "https://files.pythonhosted.org/packages/b2/c0/54415af59db5cdd86a3d3bf79863e8cc3fa9ed265f0745254061ac09d5f2/pandas-2.3.1-cp313-cp313-win_amd64.whl", hash = "sha256:1c78cf43c8fde236342a1cb2c34bcff89564a7bfed7e474ed2fffa6aed03a956", size = 10987482, upload-time = "2025-07-07T19:19:42.699Z" },
|
633 |
+
{ url = "https://files.pythonhosted.org/packages/48/64/2fd2e400073a1230e13b8cd604c9bc95d9e3b962e5d44088ead2e8f0cfec/pandas-2.3.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:8dfc17328e8da77be3cf9f47509e5637ba8f137148ed0e9b5241e1baf526e20a", size = 12029159, upload-time = "2025-07-07T19:19:26.362Z" },
|
634 |
+
{ url = "https://files.pythonhosted.org/packages/d8/0a/d84fd79b0293b7ef88c760d7dca69828d867c89b6d9bc52d6a27e4d87316/pandas-2.3.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:ec6c851509364c59a5344458ab935e6451b31b818be467eb24b0fe89bd05b6b9", size = 11393287, upload-time = "2025-07-07T19:19:29.157Z" },
|
635 |
+
{ url = "https://files.pythonhosted.org/packages/50/ae/ff885d2b6e88f3c7520bb74ba319268b42f05d7e583b5dded9837da2723f/pandas-2.3.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:911580460fc4884d9b05254b38a6bfadddfcc6aaef856fb5859e7ca202e45275", size = 11309381, upload-time = "2025-07-07T19:19:31.436Z" },
|
636 |
+
{ url = "https://files.pythonhosted.org/packages/85/86/1fa345fc17caf5d7780d2699985c03dbe186c68fee00b526813939062bb0/pandas-2.3.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2f4d6feeba91744872a600e6edbbd5b033005b431d5ae8379abee5bcfa479fab", size = 11883998, upload-time = "2025-07-07T19:19:34.267Z" },
|
637 |
+
{ url = "https://files.pythonhosted.org/packages/81/aa/e58541a49b5e6310d89474333e994ee57fea97c8aaa8fc7f00b873059bbf/pandas-2.3.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:fe37e757f462d31a9cd7580236a82f353f5713a80e059a29753cf938c6775d96", size = 12704705, upload-time = "2025-07-07T19:19:36.856Z" },
|
638 |
+
{ url = "https://files.pythonhosted.org/packages/d5/f9/07086f5b0f2a19872554abeea7658200824f5835c58a106fa8f2ae96a46c/pandas-2.3.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:5db9637dbc24b631ff3707269ae4559bce4b7fd75c1c4d7e13f40edc42df4444", size = 13189044, upload-time = "2025-07-07T19:19:39.999Z" },
|
639 |
]
|
640 |
|
641 |
[[package]]
|
|
|
794 |
|
795 |
[[package]]
|
796 |
name = "pygments"
|
797 |
+
version = "2.19.2"
|
798 |
source = { registry = "https://pypi.org/simple" }
|
799 |
+
sdist = { url = "https://files.pythonhosted.org/packages/b0/77/a5b8c569bf593b0140bde72ea885a803b82086995367bf2037de0159d924/pygments-2.19.2.tar.gz", hash = "sha256:636cb2477cec7f8952536970bc533bc43743542f70392ae026374600add5b887", size = 4968631, upload-time = "2025-06-21T13:39:12.283Z" }
|
800 |
wheels = [
|
801 |
+
{ url = "https://files.pythonhosted.org/packages/c7/21/705964c7812476f378728bdf590ca4b771ec72385c533964653c68e86bdc/pygments-2.19.2-py3-none-any.whl", hash = "sha256:86540386c03d588bb81d44bc3928634ff26449851e99741617ecb9037ee5ec0b", size = 1225217, upload-time = "2025-06-21T13:39:07.939Z" },
|
802 |
]
|
803 |
|
804 |
[[package]]
|
805 |
name = "pymdown-extensions"
|
806 |
+
version = "10.16"
|
807 |
source = { registry = "https://pypi.org/simple" }
|
808 |
dependencies = [
|
809 |
{ name = "markdown" },
|
810 |
{ name = "pyyaml" },
|
811 |
]
|
812 |
+
sdist = { url = "https://files.pythonhosted.org/packages/1a/0a/c06b542ac108bfc73200677309cd9188a3a01b127a63f20cadc18d873d88/pymdown_extensions-10.16.tar.gz", hash = "sha256:71dac4fca63fabeffd3eb9038b756161a33ec6e8d230853d3cecf562155ab3de", size = 853197, upload-time = "2025-06-21T17:56:36.974Z" }
|
813 |
wheels = [
|
814 |
+
{ url = "https://files.pythonhosted.org/packages/98/d4/10bb14004d3c792811e05e21b5e5dcae805aacb739bd12a0540967b99592/pymdown_extensions-10.16-py3-none-any.whl", hash = "sha256:f5dd064a4db588cb2d95229fc4ee63a1b16cc8b4d0e6145c0899ed8723da1df2", size = 266143, upload-time = "2025-06-21T17:56:35.356Z" },
|
815 |
]
|
816 |
|
817 |
[[package]]
|
|
|
905 |
|
906 |
[[package]]
|
907 |
name = "rpds-py"
|
908 |
+
version = "0.26.0"
|
909 |
+
source = { registry = "https://pypi.org/simple" }
|
910 |
+
sdist = { url = "https://files.pythonhosted.org/packages/a5/aa/4456d84bbb54adc6a916fb10c9b374f78ac840337644e4a5eda229c81275/rpds_py-0.26.0.tar.gz", hash = "sha256:20dae58a859b0906f0685642e591056f1e787f3a8b39c8e8749a45dc7d26bdb0", size = 27385, upload-time = "2025-07-01T15:57:13.958Z" }
|
911 |
+
wheels = [
|
912 |
+
{ url = "https://files.pythonhosted.org/packages/ea/86/90eb87c6f87085868bd077c7a9938006eb1ce19ed4d06944a90d3560fce2/rpds_py-0.26.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:894514d47e012e794f1350f076c427d2347ebf82f9b958d554d12819849a369d", size = 363933, upload-time = "2025-07-01T15:54:15.734Z" },
|
913 |
+
{ url = "https://files.pythonhosted.org/packages/63/78/4469f24d34636242c924626082b9586f064ada0b5dbb1e9d096ee7a8e0c6/rpds_py-0.26.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:fc921b96fa95a097add244da36a1d9e4f3039160d1d30f1b35837bf108c21136", size = 350447, upload-time = "2025-07-01T15:54:16.922Z" },
|
914 |
+
{ url = "https://files.pythonhosted.org/packages/ad/91/c448ed45efdfdade82348d5e7995e15612754826ea640afc20915119734f/rpds_py-0.26.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3e1157659470aa42a75448b6e943c895be8c70531c43cb78b9ba990778955582", size = 384711, upload-time = "2025-07-01T15:54:18.101Z" },
|
915 |
+
{ url = "https://files.pythonhosted.org/packages/ec/43/e5c86fef4be7f49828bdd4ecc8931f0287b1152c0bb0163049b3218740e7/rpds_py-0.26.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:521ccf56f45bb3a791182dc6b88ae5f8fa079dd705ee42138c76deb1238e554e", size = 400865, upload-time = "2025-07-01T15:54:19.295Z" },
|
916 |
+
{ url = "https://files.pythonhosted.org/packages/55/34/e00f726a4d44f22d5c5fe2e5ddd3ac3d7fd3f74a175607781fbdd06fe375/rpds_py-0.26.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9def736773fd56b305c0eef698be5192c77bfa30d55a0e5885f80126c4831a15", size = 517763, upload-time = "2025-07-01T15:54:20.858Z" },
|
917 |
+
{ url = "https://files.pythonhosted.org/packages/52/1c/52dc20c31b147af724b16104500fba13e60123ea0334beba7b40e33354b4/rpds_py-0.26.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cdad4ea3b4513b475e027be79e5a0ceac8ee1c113a1a11e5edc3c30c29f964d8", size = 406651, upload-time = "2025-07-01T15:54:22.508Z" },
|
918 |
+
{ url = "https://files.pythonhosted.org/packages/2e/77/87d7bfabfc4e821caa35481a2ff6ae0b73e6a391bb6b343db2c91c2b9844/rpds_py-0.26.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:82b165b07f416bdccf5c84546a484cc8f15137ca38325403864bfdf2b5b72f6a", size = 386079, upload-time = "2025-07-01T15:54:23.987Z" },
|
919 |
+
{ url = "https://files.pythonhosted.org/packages/e3/d4/7f2200c2d3ee145b65b3cddc4310d51f7da6a26634f3ac87125fd789152a/rpds_py-0.26.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d04cab0a54b9dba4d278fe955a1390da3cf71f57feb78ddc7cb67cbe0bd30323", size = 421379, upload-time = "2025-07-01T15:54:25.073Z" },
|
920 |
+
{ url = "https://files.pythonhosted.org/packages/ae/13/9fdd428b9c820869924ab62236b8688b122baa22d23efdd1c566938a39ba/rpds_py-0.26.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:79061ba1a11b6a12743a2b0f72a46aa2758613d454aa6ba4f5a265cc48850158", size = 562033, upload-time = "2025-07-01T15:54:26.225Z" },
|
921 |
+
{ url = "https://files.pythonhosted.org/packages/f3/e1/b69686c3bcbe775abac3a4c1c30a164a2076d28df7926041f6c0eb5e8d28/rpds_py-0.26.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:f405c93675d8d4c5ac87364bb38d06c988e11028a64b52a47158a355079661f3", size = 591639, upload-time = "2025-07-01T15:54:27.424Z" },
|
922 |
+
{ url = "https://files.pythonhosted.org/packages/5c/c9/1e3d8c8863c84a90197ac577bbc3d796a92502124c27092413426f670990/rpds_py-0.26.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:dafd4c44b74aa4bed4b250f1aed165b8ef5de743bcca3b88fc9619b6087093d2", size = 557105, upload-time = "2025-07-01T15:54:29.93Z" },
|
923 |
+
{ url = "https://files.pythonhosted.org/packages/9f/c5/90c569649057622959f6dcc40f7b516539608a414dfd54b8d77e3b201ac0/rpds_py-0.26.0-cp312-cp312-win32.whl", hash = "sha256:3da5852aad63fa0c6f836f3359647870e21ea96cf433eb393ffa45263a170d44", size = 223272, upload-time = "2025-07-01T15:54:31.128Z" },
|
924 |
+
{ url = "https://files.pythonhosted.org/packages/7d/16/19f5d9f2a556cfed454eebe4d354c38d51c20f3db69e7b4ce6cff904905d/rpds_py-0.26.0-cp312-cp312-win_amd64.whl", hash = "sha256:cf47cfdabc2194a669dcf7a8dbba62e37a04c5041d2125fae0233b720da6f05c", size = 234995, upload-time = "2025-07-01T15:54:32.195Z" },
|
925 |
+
{ url = "https://files.pythonhosted.org/packages/83/f0/7935e40b529c0e752dfaa7880224771b51175fce08b41ab4a92eb2fbdc7f/rpds_py-0.26.0-cp312-cp312-win_arm64.whl", hash = "sha256:20ab1ae4fa534f73647aad289003f1104092890849e0266271351922ed5574f8", size = 223198, upload-time = "2025-07-01T15:54:33.271Z" },
|
926 |
+
{ url = "https://files.pythonhosted.org/packages/6a/67/bb62d0109493b12b1c6ab00de7a5566aa84c0e44217c2d94bee1bd370da9/rpds_py-0.26.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:696764a5be111b036256c0b18cd29783fab22154690fc698062fc1b0084b511d", size = 363917, upload-time = "2025-07-01T15:54:34.755Z" },
|
927 |
+
{ url = "https://files.pythonhosted.org/packages/4b/f3/34e6ae1925a5706c0f002a8d2d7f172373b855768149796af87bd65dcdb9/rpds_py-0.26.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:1e6c15d2080a63aaed876e228efe4f814bc7889c63b1e112ad46fdc8b368b9e1", size = 350073, upload-time = "2025-07-01T15:54:36.292Z" },
|
928 |
+
{ url = "https://files.pythonhosted.org/packages/75/83/1953a9d4f4e4de7fd0533733e041c28135f3c21485faaef56a8aadbd96b5/rpds_py-0.26.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:390e3170babf42462739a93321e657444f0862c6d722a291accc46f9d21ed04e", size = 384214, upload-time = "2025-07-01T15:54:37.469Z" },
|
929 |
+
{ url = "https://files.pythonhosted.org/packages/48/0e/983ed1b792b3322ea1d065e67f4b230f3b96025f5ce3878cc40af09b7533/rpds_py-0.26.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7da84c2c74c0f5bc97d853d9e17bb83e2dcafcff0dc48286916001cc114379a1", size = 400113, upload-time = "2025-07-01T15:54:38.954Z" },
|
930 |
+
{ url = "https://files.pythonhosted.org/packages/69/7f/36c0925fff6f660a80be259c5b4f5e53a16851f946eb080351d057698528/rpds_py-0.26.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4c5fe114a6dd480a510b6d3661d09d67d1622c4bf20660a474507aaee7eeeee9", size = 515189, upload-time = "2025-07-01T15:54:40.57Z" },
|
931 |
+
{ url = "https://files.pythonhosted.org/packages/13/45/cbf07fc03ba7a9b54662c9badb58294ecfb24f828b9732970bd1a431ed5c/rpds_py-0.26.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3100b3090269f3a7ea727b06a6080d4eb7439dca4c0e91a07c5d133bb1727ea7", size = 406998, upload-time = "2025-07-01T15:54:43.025Z" },
|
932 |
+
{ url = "https://files.pythonhosted.org/packages/6c/b0/8fa5e36e58657997873fd6a1cf621285ca822ca75b4b3434ead047daa307/rpds_py-0.26.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2c03c9b0c64afd0320ae57de4c982801271c0c211aa2d37f3003ff5feb75bb04", size = 385903, upload-time = "2025-07-01T15:54:44.752Z" },
|
933 |
+
{ url = "https://files.pythonhosted.org/packages/4b/f7/b25437772f9f57d7a9fbd73ed86d0dcd76b4c7c6998348c070d90f23e315/rpds_py-0.26.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5963b72ccd199ade6ee493723d18a3f21ba7d5b957017607f815788cef50eaf1", size = 419785, upload-time = "2025-07-01T15:54:46.043Z" },
|
934 |
+
{ url = "https://files.pythonhosted.org/packages/a7/6b/63ffa55743dfcb4baf2e9e77a0b11f7f97ed96a54558fcb5717a4b2cd732/rpds_py-0.26.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:9da4e873860ad5bab3291438525cae80169daecbfafe5657f7f5fb4d6b3f96b9", size = 561329, upload-time = "2025-07-01T15:54:47.64Z" },
|
935 |
+
{ url = "https://files.pythonhosted.org/packages/2f/07/1f4f5e2886c480a2346b1e6759c00278b8a69e697ae952d82ae2e6ee5db0/rpds_py-0.26.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:5afaddaa8e8c7f1f7b4c5c725c0070b6eed0228f705b90a1732a48e84350f4e9", size = 590875, upload-time = "2025-07-01T15:54:48.9Z" },
|
936 |
+
{ url = "https://files.pythonhosted.org/packages/cc/bc/e6639f1b91c3a55f8c41b47d73e6307051b6e246254a827ede730624c0f8/rpds_py-0.26.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4916dc96489616a6f9667e7526af8fa693c0fdb4f3acb0e5d9f4400eb06a47ba", size = 556636, upload-time = "2025-07-01T15:54:50.619Z" },
|
937 |
+
{ url = "https://files.pythonhosted.org/packages/05/4c/b3917c45566f9f9a209d38d9b54a1833f2bb1032a3e04c66f75726f28876/rpds_py-0.26.0-cp313-cp313-win32.whl", hash = "sha256:2a343f91b17097c546b93f7999976fd6c9d5900617aa848c81d794e062ab302b", size = 222663, upload-time = "2025-07-01T15:54:52.023Z" },
|
938 |
+
{ url = "https://files.pythonhosted.org/packages/e0/0b/0851bdd6025775aaa2365bb8de0697ee2558184c800bfef8d7aef5ccde58/rpds_py-0.26.0-cp313-cp313-win_amd64.whl", hash = "sha256:0a0b60701f2300c81b2ac88a5fb893ccfa408e1c4a555a77f908a2596eb875a5", size = 234428, upload-time = "2025-07-01T15:54:53.692Z" },
|
939 |
+
{ url = "https://files.pythonhosted.org/packages/ed/e8/a47c64ed53149c75fb581e14a237b7b7cd18217e969c30d474d335105622/rpds_py-0.26.0-cp313-cp313-win_arm64.whl", hash = "sha256:257d011919f133a4746958257f2c75238e3ff54255acd5e3e11f3ff41fd14256", size = 222571, upload-time = "2025-07-01T15:54:54.822Z" },
|
940 |
+
{ url = "https://files.pythonhosted.org/packages/89/bf/3d970ba2e2bcd17d2912cb42874107390f72873e38e79267224110de5e61/rpds_py-0.26.0-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:529c8156d7506fba5740e05da8795688f87119cce330c244519cf706a4a3d618", size = 360475, upload-time = "2025-07-01T15:54:56.228Z" },
|
941 |
+
{ url = "https://files.pythonhosted.org/packages/82/9f/283e7e2979fc4ec2d8ecee506d5a3675fce5ed9b4b7cb387ea5d37c2f18d/rpds_py-0.26.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:f53ec51f9d24e9638a40cabb95078ade8c99251945dad8d57bf4aabe86ecee35", size = 346692, upload-time = "2025-07-01T15:54:58.561Z" },
|
942 |
+
{ url = "https://files.pythonhosted.org/packages/e3/03/7e50423c04d78daf391da3cc4330bdb97042fc192a58b186f2d5deb7befd/rpds_py-0.26.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ab504c4d654e4a29558eaa5bb8cea5fdc1703ea60a8099ffd9c758472cf913f", size = 379415, upload-time = "2025-07-01T15:54:59.751Z" },
|
943 |
+
{ url = "https://files.pythonhosted.org/packages/57/00/d11ee60d4d3b16808432417951c63df803afb0e0fc672b5e8d07e9edaaae/rpds_py-0.26.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fd0641abca296bc1a00183fe44f7fced8807ed49d501f188faa642d0e4975b83", size = 391783, upload-time = "2025-07-01T15:55:00.898Z" },
|
944 |
+
{ url = "https://files.pythonhosted.org/packages/08/b3/1069c394d9c0d6d23c5b522e1f6546b65793a22950f6e0210adcc6f97c3e/rpds_py-0.26.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:69b312fecc1d017b5327afa81d4da1480f51c68810963a7336d92203dbb3d4f1", size = 512844, upload-time = "2025-07-01T15:55:02.201Z" },
|
945 |
+
{ url = "https://files.pythonhosted.org/packages/08/3b/c4fbf0926800ed70b2c245ceca99c49f066456755f5d6eb8863c2c51e6d0/rpds_py-0.26.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c741107203954f6fc34d3066d213d0a0c40f7bb5aafd698fb39888af277c70d8", size = 402105, upload-time = "2025-07-01T15:55:03.698Z" },
|
946 |
+
{ url = "https://files.pythonhosted.org/packages/1c/b0/db69b52ca07413e568dae9dc674627a22297abb144c4d6022c6d78f1e5cc/rpds_py-0.26.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fc3e55a7db08dc9a6ed5fb7103019d2c1a38a349ac41901f9f66d7f95750942f", size = 383440, upload-time = "2025-07-01T15:55:05.398Z" },
|
947 |
+
{ url = "https://files.pythonhosted.org/packages/4c/e1/c65255ad5b63903e56b3bb3ff9dcc3f4f5c3badde5d08c741ee03903e951/rpds_py-0.26.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9e851920caab2dbcae311fd28f4313c6953993893eb5c1bb367ec69d9a39e7ed", size = 412759, upload-time = "2025-07-01T15:55:08.316Z" },
|
948 |
+
{ url = "https://files.pythonhosted.org/packages/e4/22/bb731077872377a93c6e93b8a9487d0406c70208985831034ccdeed39c8e/rpds_py-0.26.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:dfbf280da5f876d0b00c81f26bedce274e72a678c28845453885a9b3c22ae632", size = 556032, upload-time = "2025-07-01T15:55:09.52Z" },
|
949 |
+
{ url = "https://files.pythonhosted.org/packages/e0/8b/393322ce7bac5c4530fb96fc79cc9ea2f83e968ff5f6e873f905c493e1c4/rpds_py-0.26.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:1cc81d14ddfa53d7f3906694d35d54d9d3f850ef8e4e99ee68bc0d1e5fed9a9c", size = 585416, upload-time = "2025-07-01T15:55:11.216Z" },
|
950 |
+
{ url = "https://files.pythonhosted.org/packages/49/ae/769dc372211835bf759319a7aae70525c6eb523e3371842c65b7ef41c9c6/rpds_py-0.26.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:dca83c498b4650a91efcf7b88d669b170256bf8017a5db6f3e06c2bf031f57e0", size = 554049, upload-time = "2025-07-01T15:55:13.004Z" },
|
951 |
+
{ url = "https://files.pythonhosted.org/packages/6b/f9/4c43f9cc203d6ba44ce3146246cdc38619d92c7bd7bad4946a3491bd5b70/rpds_py-0.26.0-cp313-cp313t-win32.whl", hash = "sha256:4d11382bcaf12f80b51d790dee295c56a159633a8e81e6323b16e55d81ae37e9", size = 218428, upload-time = "2025-07-01T15:55:14.486Z" },
|
952 |
+
{ url = "https://files.pythonhosted.org/packages/7e/8b/9286b7e822036a4a977f2f1e851c7345c20528dbd56b687bb67ed68a8ede/rpds_py-0.26.0-cp313-cp313t-win_amd64.whl", hash = "sha256:ff110acded3c22c033e637dd8896e411c7d3a11289b2edf041f86663dbc791e9", size = 231524, upload-time = "2025-07-01T15:55:15.745Z" },
|
953 |
+
{ url = "https://files.pythonhosted.org/packages/55/07/029b7c45db910c74e182de626dfdae0ad489a949d84a468465cd0ca36355/rpds_py-0.26.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:da619979df60a940cd434084355c514c25cf8eb4cf9a508510682f6c851a4f7a", size = 364292, upload-time = "2025-07-01T15:55:17.001Z" },
|
954 |
+
{ url = "https://files.pythonhosted.org/packages/13/d1/9b3d3f986216b4d1f584878dca15ce4797aaf5d372d738974ba737bf68d6/rpds_py-0.26.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:ea89a2458a1a75f87caabefe789c87539ea4e43b40f18cff526052e35bbb4fdf", size = 350334, upload-time = "2025-07-01T15:55:18.922Z" },
|
955 |
+
{ url = "https://files.pythonhosted.org/packages/18/98/16d5e7bc9ec715fa9668731d0cf97f6b032724e61696e2db3d47aeb89214/rpds_py-0.26.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:feac1045b3327a45944e7dcbeb57530339f6b17baff154df51ef8b0da34c8c12", size = 384875, upload-time = "2025-07-01T15:55:20.399Z" },
|
956 |
+
{ url = "https://files.pythonhosted.org/packages/f9/13/aa5e2b1ec5ab0e86a5c464d53514c0467bec6ba2507027d35fc81818358e/rpds_py-0.26.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b818a592bd69bfe437ee8368603d4a2d928c34cffcdf77c2e761a759ffd17d20", size = 399993, upload-time = "2025-07-01T15:55:21.729Z" },
|
957 |
+
{ url = "https://files.pythonhosted.org/packages/17/03/8021810b0e97923abdbab6474c8b77c69bcb4b2c58330777df9ff69dc559/rpds_py-0.26.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1a8b0dd8648709b62d9372fc00a57466f5fdeefed666afe3fea5a6c9539a0331", size = 516683, upload-time = "2025-07-01T15:55:22.918Z" },
|
958 |
+
{ url = "https://files.pythonhosted.org/packages/dc/b1/da8e61c87c2f3d836954239fdbbfb477bb7b54d74974d8f6fcb34342d166/rpds_py-0.26.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6d3498ad0df07d81112aa6ec6c95a7e7b1ae00929fb73e7ebee0f3faaeabad2f", size = 408825, upload-time = "2025-07-01T15:55:24.207Z" },
|
959 |
+
{ url = "https://files.pythonhosted.org/packages/38/bc/1fc173edaaa0e52c94b02a655db20697cb5fa954ad5a8e15a2c784c5cbdd/rpds_py-0.26.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:24a4146ccb15be237fdef10f331c568e1b0e505f8c8c9ed5d67759dac58ac246", size = 387292, upload-time = "2025-07-01T15:55:25.554Z" },
|
960 |
+
{ url = "https://files.pythonhosted.org/packages/7c/eb/3a9bb4bd90867d21916f253caf4f0d0be7098671b6715ad1cead9fe7bab9/rpds_py-0.26.0-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a9a63785467b2d73635957d32a4f6e73d5e4df497a16a6392fa066b753e87387", size = 420435, upload-time = "2025-07-01T15:55:27.798Z" },
|
961 |
+
{ url = "https://files.pythonhosted.org/packages/cd/16/e066dcdb56f5632713445271a3f8d3d0b426d51ae9c0cca387799df58b02/rpds_py-0.26.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:de4ed93a8c91debfd5a047be327b7cc8b0cc6afe32a716bbbc4aedca9e2a83af", size = 562410, upload-time = "2025-07-01T15:55:29.057Z" },
|
962 |
+
{ url = "https://files.pythonhosted.org/packages/60/22/ddbdec7eb82a0dc2e455be44c97c71c232983e21349836ce9f272e8a3c29/rpds_py-0.26.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:caf51943715b12af827696ec395bfa68f090a4c1a1d2509eb4e2cb69abbbdb33", size = 590724, upload-time = "2025-07-01T15:55:30.719Z" },
|
963 |
+
{ url = "https://files.pythonhosted.org/packages/2c/b4/95744085e65b7187d83f2fcb0bef70716a1ea0a9e5d8f7f39a86e5d83424/rpds_py-0.26.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:4a59e5bc386de021f56337f757301b337d7ab58baa40174fb150accd480bc953", size = 558285, upload-time = "2025-07-01T15:55:31.981Z" },
|
964 |
+
{ url = "https://files.pythonhosted.org/packages/37/37/6309a75e464d1da2559446f9c811aa4d16343cebe3dbb73701e63f760caa/rpds_py-0.26.0-cp314-cp314-win32.whl", hash = "sha256:92c8db839367ef16a662478f0a2fe13e15f2227da3c1430a782ad0f6ee009ec9", size = 223459, upload-time = "2025-07-01T15:55:33.312Z" },
|
965 |
+
{ url = "https://files.pythonhosted.org/packages/d9/6f/8e9c11214c46098b1d1391b7e02b70bb689ab963db3b19540cba17315291/rpds_py-0.26.0-cp314-cp314-win_amd64.whl", hash = "sha256:b0afb8cdd034150d4d9f53926226ed27ad15b7f465e93d7468caaf5eafae0d37", size = 236083, upload-time = "2025-07-01T15:55:34.933Z" },
|
966 |
+
{ url = "https://files.pythonhosted.org/packages/47/af/9c4638994dd623d51c39892edd9d08e8be8220a4b7e874fa02c2d6e91955/rpds_py-0.26.0-cp314-cp314-win_arm64.whl", hash = "sha256:ca3f059f4ba485d90c8dc75cb5ca897e15325e4e609812ce57f896607c1c0867", size = 223291, upload-time = "2025-07-01T15:55:36.202Z" },
|
967 |
+
{ url = "https://files.pythonhosted.org/packages/4d/db/669a241144460474aab03e254326b32c42def83eb23458a10d163cb9b5ce/rpds_py-0.26.0-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:5afea17ab3a126006dc2f293b14ffc7ef3c85336cf451564a0515ed7648033da", size = 361445, upload-time = "2025-07-01T15:55:37.483Z" },
|
968 |
+
{ url = "https://files.pythonhosted.org/packages/3b/2d/133f61cc5807c6c2fd086a46df0eb8f63a23f5df8306ff9f6d0fd168fecc/rpds_py-0.26.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:69f0c0a3df7fd3a7eec50a00396104bb9a843ea6d45fcc31c2d5243446ffd7a7", size = 347206, upload-time = "2025-07-01T15:55:38.828Z" },
|
969 |
+
{ url = "https://files.pythonhosted.org/packages/05/bf/0e8fb4c05f70273469eecf82f6ccf37248558526a45321644826555db31b/rpds_py-0.26.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:801a71f70f9813e82d2513c9a96532551fce1e278ec0c64610992c49c04c2dad", size = 380330, upload-time = "2025-07-01T15:55:40.175Z" },
|
970 |
+
{ url = "https://files.pythonhosted.org/packages/d4/a8/060d24185d8b24d3923322f8d0ede16df4ade226a74e747b8c7c978e3dd3/rpds_py-0.26.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:df52098cde6d5e02fa75c1f6244f07971773adb4a26625edd5c18fee906fa84d", size = 392254, upload-time = "2025-07-01T15:55:42.015Z" },
|
971 |
+
{ url = "https://files.pythonhosted.org/packages/b9/7b/7c2e8a9ee3e6bc0bae26bf29f5219955ca2fbb761dca996a83f5d2f773fe/rpds_py-0.26.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9bc596b30f86dc6f0929499c9e574601679d0341a0108c25b9b358a042f51bca", size = 516094, upload-time = "2025-07-01T15:55:43.603Z" },
|
972 |
+
{ url = "https://files.pythonhosted.org/packages/75/d6/f61cafbed8ba1499b9af9f1777a2a199cd888f74a96133d8833ce5eaa9c5/rpds_py-0.26.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9dfbe56b299cf5875b68eb6f0ebaadc9cac520a1989cac0db0765abfb3709c19", size = 402889, upload-time = "2025-07-01T15:55:45.275Z" },
|
973 |
+
{ url = "https://files.pythonhosted.org/packages/92/19/c8ac0a8a8df2dd30cdec27f69298a5c13e9029500d6d76718130f5e5be10/rpds_py-0.26.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ac64f4b2bdb4ea622175c9ab7cf09444e412e22c0e02e906978b3b488af5fde8", size = 384301, upload-time = "2025-07-01T15:55:47.098Z" },
|
974 |
+
{ url = "https://files.pythonhosted.org/packages/41/e1/6b1859898bc292a9ce5776016c7312b672da00e25cec74d7beced1027286/rpds_py-0.26.0-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:181ef9b6bbf9845a264f9aa45c31836e9f3c1f13be565d0d010e964c661d1e2b", size = 412891, upload-time = "2025-07-01T15:55:48.412Z" },
|
975 |
+
{ url = "https://files.pythonhosted.org/packages/ef/b9/ceb39af29913c07966a61367b3c08b4f71fad841e32c6b59a129d5974698/rpds_py-0.26.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:49028aa684c144ea502a8e847d23aed5e4c2ef7cadfa7d5eaafcb40864844b7a", size = 557044, upload-time = "2025-07-01T15:55:49.816Z" },
|
976 |
+
{ url = "https://files.pythonhosted.org/packages/2f/27/35637b98380731a521f8ec4f3fd94e477964f04f6b2f8f7af8a2d889a4af/rpds_py-0.26.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:e5d524d68a474a9688336045bbf76cb0def88549c1b2ad9dbfec1fb7cfbe9170", size = 585774, upload-time = "2025-07-01T15:55:51.192Z" },
|
977 |
+
{ url = "https://files.pythonhosted.org/packages/52/d9/3f0f105420fecd18551b678c9a6ce60bd23986098b252a56d35781b3e7e9/rpds_py-0.26.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:c1851f429b822831bd2edcbe0cfd12ee9ea77868f8d3daf267b189371671c80e", size = 554886, upload-time = "2025-07-01T15:55:52.541Z" },
|
978 |
+
{ url = "https://files.pythonhosted.org/packages/6b/c5/347c056a90dc8dd9bc240a08c527315008e1b5042e7a4cf4ac027be9d38a/rpds_py-0.26.0-cp314-cp314t-win32.whl", hash = "sha256:7bdb17009696214c3b66bb3590c6d62e14ac5935e53e929bcdbc5a495987a84f", size = 219027, upload-time = "2025-07-01T15:55:53.874Z" },
|
979 |
+
{ url = "https://files.pythonhosted.org/packages/75/04/5302cea1aa26d886d34cadbf2dc77d90d7737e576c0065f357b96dc7a1a6/rpds_py-0.26.0-cp314-cp314t-win_amd64.whl", hash = "sha256:f14440b9573a6f76b4ee4770c13f0b5921f71dde3b6fcb8dabbefd13b7fe05d7", size = 232821, upload-time = "2025-07-01T15:55:55.167Z" },
|
980 |
]
|
981 |
|
982 |
[[package]]
|
|
|
1102 |
|
1103 |
[[package]]
|
1104 |
name = "smart-open"
|
1105 |
+
version = "7.3.0.post1"
|
1106 |
source = { registry = "https://pypi.org/simple" }
|
1107 |
dependencies = [
|
1108 |
{ name = "wrapt" },
|
1109 |
]
|
1110 |
+
sdist = { url = "https://files.pythonhosted.org/packages/18/2b/5e7234c68ed5bc872ad6ae77b8a421c2ed70dcb1190b44dc1abdeed5e347/smart_open-7.3.0.post1.tar.gz", hash = "sha256:ce6a3d9bc1afbf6234ad13c010b77f8cd36d24636811e3c52c3b5160f5214d1e", size = 51557, upload-time = "2025-07-03T10:06:31.271Z" }
|
1111 |
wheels = [
|
1112 |
+
{ url = "https://files.pythonhosted.org/packages/08/5b/a2a3d4514c64818925f4e886d39981f1926eeb5288a4549c6b3c17ed66bb/smart_open-7.3.0.post1-py3-none-any.whl", hash = "sha256:c73661a2c24bf045c1e04e08fffc585b59af023fe783d57896f590489db66fb4", size = 61946, upload-time = "2025-07-03T10:06:29.599Z" },
|
1113 |
]
|
1114 |
|
1115 |
[[package]]
|
|
|
1209 |
|
1210 |
[[package]]
|
1211 |
name = "starlette"
|
1212 |
+
version = "0.47.1"
|
1213 |
source = { registry = "https://pypi.org/simple" }
|
1214 |
dependencies = [
|
1215 |
{ name = "anyio" },
|
1216 |
+
{ name = "typing-extensions", marker = "python_full_version < '3.13'" },
|
1217 |
]
|
1218 |
+
sdist = { url = "https://files.pythonhosted.org/packages/0a/69/662169fdb92fb96ec3eaee218cf540a629d629c86d7993d9651226a6789b/starlette-0.47.1.tar.gz", hash = "sha256:aef012dd2b6be325ffa16698f9dc533614fb1cebd593a906b90dc1025529a79b", size = 2583072, upload-time = "2025-06-21T04:03:17.337Z" }
|
1219 |
wheels = [
|
1220 |
+
{ url = "https://files.pythonhosted.org/packages/82/95/38ef0cd7fa11eaba6a99b3c4f5ac948d8bc6ff199aabd327a29cc000840c/starlette-0.47.1-py3-none-any.whl", hash = "sha256:5e11c9f5c7c3f24959edbf2dffdc01bba860228acf657129467d8a7468591527", size = 72747, upload-time = "2025-06-21T04:03:15.705Z" },
|
1221 |
]
|
1222 |
|
1223 |
[[package]]
|
1224 |
name = "statsmodels"
|
1225 |
+
version = "0.14.5"
|
1226 |
source = { registry = "https://pypi.org/simple" }
|
1227 |
dependencies = [
|
1228 |
{ name = "numpy" },
|
|
|
1231 |
{ name = "patsy" },
|
1232 |
{ name = "scipy" },
|
1233 |
]
|
1234 |
+
sdist = { url = "https://files.pythonhosted.org/packages/64/cc/8c1bf59bf8203dea1bf2ea811cfe667d7bcc6909c83d8afb02b08e30f50b/statsmodels-0.14.5.tar.gz", hash = "sha256:de260e58cccfd2ceddf835b55a357233d6ca853a1aa4f90f7553a52cc71c6ddf", size = 20525016, upload-time = "2025-07-07T12:14:23.195Z" }
|
1235 |
wheels = [
|
1236 |
+
{ url = "https://files.pythonhosted.org/packages/5f/a5/fcc4f5f16355660ce7a1742e28a43e3a9391b492fc4ff29fdd6893e81c05/statsmodels-0.14.5-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:37e7364a39f9aa3b51d15a208c2868b90aadb8412f868530f5cba9197cb00eaa", size = 10042891, upload-time = "2025-07-07T12:13:41.671Z" },
|
1237 |
+
{ url = "https://files.pythonhosted.org/packages/1c/6f/db0cf5efa48277ac6218d9b981c8fd5e63c4c43e0d9d65015fdc38eed0ef/statsmodels-0.14.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:4263d7f4d0f1d5ac6eb4db22e1ee34264a14d634b9332c975c9d9109b6b46e12", size = 9698912, upload-time = "2025-07-07T12:07:54.674Z" },
|
1238 |
+
{ url = "https://files.pythonhosted.org/packages/4a/93/4ddc3bc4a59c51e6a57c49df1b889882c40d9e141e855b3517f6a8de3232/statsmodels-0.14.5-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:86224f6e36f38486e471e75759d241fe2912d8bc25ab157d54ee074c6aedbf45", size = 10237801, upload-time = "2025-07-07T14:23:12.593Z" },
|
1239 |
+
{ url = "https://files.pythonhosted.org/packages/66/de/dc6bf2f6e8c8eb4c5815560ebdbdf2d69a767bc0f65fde34bc086cf5b36d/statsmodels-0.14.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c3dd760a6fa80cd5e0371685c697bb9c2c0e6e1f394d975e596a1e6d0bbb9372", size = 10424154, upload-time = "2025-07-07T14:23:25.365Z" },
|
1240 |
+
{ url = "https://files.pythonhosted.org/packages/16/4f/2d5a8d14bebdf2b03b3ea89b8c6a2c837bb406ba5b7a41add8bd303bce29/statsmodels-0.14.5-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:6264fb00e02f858b86bd01ef2dc05055a71d4a0cc7551b9976b07b0f0e6cf24f", size = 10652915, upload-time = "2025-07-07T14:23:39.337Z" },
|
1241 |
+
{ url = "https://files.pythonhosted.org/packages/df/4c/2feda3a9f0e17444a84ba5398ada6a4d2e1b8f832760048f04e2b8ea0c41/statsmodels-0.14.5-cp312-cp312-win_amd64.whl", hash = "sha256:b2ed065bfbaf8bb214c7201656df840457c2c8c65e1689e3eb09dc7440f9c61c", size = 9611236, upload-time = "2025-07-07T12:08:06.794Z" },
|
1242 |
+
{ url = "https://files.pythonhosted.org/packages/84/fd/4c374108cf108b3130240a5b45847a61f70ddf973429044a81a05189b046/statsmodels-0.14.5-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:906263134dd1a640e55ecb01fda4a9be7b9e08558dba9e4c4943a486fdb0c9c8", size = 10013958, upload-time = "2025-07-07T14:35:01.04Z" },
|
1243 |
+
{ url = "https://files.pythonhosted.org/packages/5a/36/bf3d7f0e36acd3ba9ec0babd79ace25506b6872780cbd710fb7cd31f0fa2/statsmodels-0.14.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:9118f76344f77cffbb3a9cbcff8682b325be5eed54a4b3253e09da77a74263d3", size = 9674243, upload-time = "2025-07-07T12:08:22.571Z" },
|
1244 |
+
{ url = "https://files.pythonhosted.org/packages/90/ce/a55a6f37b5277683ceccd965a5828b24672bbc427db6b3969ae0b0fc29fb/statsmodels-0.14.5-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:9dc4ee159070557c9a6c000625d85f653de437772fe7086857cff68f501afe45", size = 10219521, upload-time = "2025-07-07T14:23:52.646Z" },
|
1245 |
+
{ url = "https://files.pythonhosted.org/packages/1e/48/973da1ee8bc0743519759e74c3615b39acdc3faf00e0a0710f8c856d8c9d/statsmodels-0.14.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5a085d47c8ef5387279a991633883d0e700de2b0acc812d7032d165888627bef", size = 10453538, upload-time = "2025-07-07T14:24:06.959Z" },
|
1246 |
+
{ url = "https://files.pythonhosted.org/packages/c7/d6/18903fb707afd31cf1edaec5201964dbdacb2bfae9a22558274647a7c88f/statsmodels-0.14.5-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9f866b2ebb2904b47c342d00def83c526ef2eb1df6a9a3c94ba5fe63d0005aec", size = 10681584, upload-time = "2025-07-07T14:24:21.038Z" },
|
1247 |
+
{ url = "https://files.pythonhosted.org/packages/44/d6/80df1bbbfcdc50bff4152f43274420fa9856d56e234d160d6206eb1f5827/statsmodels-0.14.5-cp313-cp313-win_amd64.whl", hash = "sha256:2a06bca03b7a492f88c8106103ab75f1a5ced25de90103a89f3a287518017939", size = 9604641, upload-time = "2025-07-07T12:08:36.23Z" },
|
1248 |
]
|
1249 |
|
1250 |
[[package]]
|
|
|
1330 |
|
1331 |
[[package]]
|
1332 |
name = "typing-extensions"
|
1333 |
+
version = "4.14.1"
|
1334 |
source = { registry = "https://pypi.org/simple" }
|
1335 |
+
sdist = { url = "https://files.pythonhosted.org/packages/98/5a/da40306b885cc8c09109dc2e1abd358d5684b1425678151cdaed4731c822/typing_extensions-4.14.1.tar.gz", hash = "sha256:38b39f4aeeab64884ce9f74c94263ef78f3c22467c8724005483154c26648d36", size = 107673, upload-time = "2025-07-04T13:28:34.16Z" }
|
1336 |
wheels = [
|
1337 |
+
{ url = "https://files.pythonhosted.org/packages/b5/00/d631e67a838026495268c2f6884f3711a15a9a2a96cd244fdaea53b823fb/typing_extensions-4.14.1-py3-none-any.whl", hash = "sha256:d1e1e3b58374dc93031d6eda2420a48ea44a36c2b4766a4fdeb3710755731d76", size = 43906, upload-time = "2025-07-04T13:28:32.743Z" },
|
1338 |
]
|
1339 |
|
1340 |
[[package]]
|
|
|
1360 |
|
1361 |
[[package]]
|
1362 |
name = "urllib3"
|
1363 |
+
version = "2.5.0"
|
1364 |
source = { registry = "https://pypi.org/simple" }
|
1365 |
+
sdist = { url = "https://files.pythonhosted.org/packages/15/22/9ee70a2574a4f4599c47dd506532914ce044817c7752a79b6a51286319bc/urllib3-2.5.0.tar.gz", hash = "sha256:3fc47733c7e419d4bc3f6b3dc2b4f890bb743906a30d56ba4a5bfa4bbff92760", size = 393185, upload-time = "2025-06-18T14:07:41.644Z" }
|
1366 |
wheels = [
|
1367 |
+
{ url = "https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl", hash = "sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc", size = 129795, upload-time = "2025-06-18T14:07:40.39Z" },
|
1368 |
]
|
1369 |
|
1370 |
[[package]]
|
1371 |
name = "uvicorn"
|
1372 |
+
version = "0.35.0"
|
1373 |
source = { registry = "https://pypi.org/simple" }
|
1374 |
dependencies = [
|
1375 |
{ name = "click" },
|
1376 |
{ name = "h11" },
|
1377 |
]
|
1378 |
+
sdist = { url = "https://files.pythonhosted.org/packages/5e/42/e0e305207bb88c6b8d3061399c6a961ffe5fbb7e2aa63c9234df7259e9cd/uvicorn-0.35.0.tar.gz", hash = "sha256:bc662f087f7cf2ce11a1d7fd70b90c9f98ef2e2831556dd078d131b96cc94a01", size = 78473, upload-time = "2025-06-28T16:15:46.058Z" }
|
1379 |
wheels = [
|
1380 |
+
{ url = "https://files.pythonhosted.org/packages/d2/e2/dc81b1bd1dcfe91735810265e9d26bc8ec5da45b4c0f6237e286819194c3/uvicorn-0.35.0-py3-none-any.whl", hash = "sha256:197535216b25ff9b785e29a0b79199f55222193d47f820816e7da751e9bc8d4a", size = 66406, upload-time = "2025-06-28T16:15:44.816Z" },
|
1381 |
]
|
1382 |
|
1383 |
[[package]]
|