Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add mypy static type checker #96

Merged
merged 45 commits into from
Nov 29, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
039595d
chore: setup mypy
samuelrince Nov 22, 2024
cd6f4c5
refactor: check models is not none to init repository
samuelrince Nov 22, 2024
06a899b
refactor: make electricity mix default to WOR
samuelrince Nov 22, 2024
d0f28e5
refactor: remove incompatible type assignment for mistral
samuelrince Nov 22, 2024
4f6de6e
refactor: typing of class attributes for DAG
samuelrince Nov 22, 2024
edb9c4b
refactor: implement __radd__ for RangeValue
samuelrince Nov 22, 2024
0a2fe85
refactor: change comparison argument for impact model
samuelrince Nov 22, 2024
12da5a6
refactor: typing of internal results when computing llm impacts
samuelrince Nov 22, 2024
73a4eb2
refactor: accurate typing of add method for impacts
samuelrince Nov 22, 2024
a359f3d
fix: import issues of undefined objects or models
samuelrince Nov 22, 2024
a9ee4de
refactor: fix typing for model parameters in dag function
samuelrince Nov 22, 2024
991f02d
refactor: cannot use RangeValue as a min value
samuelrince Nov 22, 2024
f9565be
refactor: ignore wrapt is not typed
samuelrince Nov 22, 2024
2e0e003
refactor: prefer using official typing for Steam and AsyncStream
samuelrince Nov 22, 2024
481fbdc
refactor: remove try-catch on import error.
samuelrince Nov 22, 2024
db2f461
refactor: remove optional on electricity zone
samuelrince Nov 22, 2024
2caf422
refactor: use check on parameters instead of arch type
samuelrince Nov 22, 2024
e794e77
refactor: remove irrelevant fix
samuelrince Nov 22, 2024
9e753c6
refactor: cast type and add exception when computing multiple dags
samuelrince Nov 23, 2024
9a5e206
style: format function parameters
samuelrince Nov 23, 2024
1d4fed8
refactor: change imports for mistral v0
samuelrince Nov 23, 2024
8c39ee3
chore: run pre-commit
samuelrince Nov 23, 2024
bd53bf5
chore: configure mypy to ignore docs and tests
samuelrince Nov 23, 2024
c36d4a8
refactor: change imports for mistral v1
samuelrince Nov 23, 2024
799cdc7
refactor: rollback loading of Mistral instrumentor and add mypy ignor…
samuelrince Nov 23, 2024
7e31987
style: reorder imports
samuelrince Nov 23, 2024
816cbe7
refactor: change imports for anthropic
samuelrince Nov 23, 2024
506edc3
refactor: make impacts optional
samuelrince Nov 23, 2024
c6d1cc3
refactor: model_name is not optional
samuelrince Nov 23, 2024
ae10292
refactor: fix types with message streams
samuelrince Nov 23, 2024
c3218fe
refactor: change imports for google
samuelrince Nov 23, 2024
af94f8f
refactor: typing issue with generators
samuelrince Nov 23, 2024
964512e
refactor: change imports for cohere
samuelrince Nov 23, 2024
8c4efc3
refactor: make impacts optional
samuelrince Nov 23, 2024
d7edb74
refactor: change imports for litellm
samuelrince Nov 23, 2024
f6a78e6
refactor: typing issue with generators
samuelrince Nov 23, 2024
a88e916
refactor: change imports for huggingface hub
samuelrince Nov 23, 2024
85478ae
chore: run pre-commit
samuelrince Nov 23, 2024
9a1941f
tests: fix google
samuelrince Nov 23, 2024
7c1bacc
refactor: add py.typed file
samuelrince Nov 23, 2024
f14a894
fix: typo in exception
samuelrince Nov 23, 2024
ada6250
fix: use object for other type (similar to comparison)
samuelrince Nov 23, 2024
f83d487
Merge branch 'main' into refactor/mypy
samuelrince Nov 29, 2024
f2fa689
chore: poetry lock
samuelrince Nov 29, 2024
f2347d1
chore: setup mypy
samuelrince Nov 22, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
tests: fix google
  • Loading branch information
samuelrince committed Nov 23, 2024
commit 9a1941f8319c45ce2201cf3472ac304cdc10443d
85 changes: 34 additions & 51 deletions tests/cassettes/test_google/test_google_chat.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,68 +24,51 @@ interactions:
uri: https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?%24alt=json%3Benum-encoding%3Dint
response:
body:
string: "{\n \"candidates\": [\n {\n \"content\": {\n \"parts\":
[\n {\n \"text\": \"The old, dusty attic smelled of mothballs
and forgotten dreams. Lily, a freckled ten-year-old with a thirst for adventure,
rummaged through a chest filled with her grandmother's belongings. Beneath
layers of lace and faded photographs, she found it: a leather backpack, worn
and patched, with a tarnished silver buckle.\\n\\nAs Lily lifted the backpack,
a whisper of magic swirled around her. The air grew thick with the scent of
pine and a faint, sweet perfume. It was then she noticed the silver buckle
had become warm, pulsing with a faint light. When she touched it, the backpack
suddenly unzipped, revealing a shimmering, emerald green portal.\\n\\nHesitantly,
Lily peered through. The portal shimmered, revealing a world unlike any she
had ever seen: a vibrant rainforest, teeming with exotic creatures and towering
trees that reached for the sun. Curiosity gnawed at her. This had to be the
magic backpack her grandmother had always spoken of.\\n\\nIgnoring the butterflies
in her stomach, Lily stepped through the portal. The air felt warm and humid,
filled with the scent of exotic flowers. Around her, birds with iridescent
feathers sang melodies unknown to her world. Lily's heart thumped with exhilaration.
She was a explorer, a discoverer, a traveler in a land untouched by the ordinary.\\n\\nShe
spent the next few days exploring the magical rainforest. She met talking
monkeys who taught her to swing through the canopy, fireflies that lit up
the night with their bioluminescent glow, and butterflies whose wings shimmered
with rainbows. Each day brought new wonders and adventures.\\n\\nOne day,
while exploring a hidden grotto, Lily stumbled upon a small, wounded creature.
It had emerald green scales, a long, slender tail, and enormous eyes that
mirrored her own fear. Lily knew instantly she had to help. She carefully
carried the creature back to her backpack, which now had a new, unseen compartment
for its safekeeping.\\n\\nAs Lily stepped back through the portal, she noticed
the creature had healed. Its scales shone brighter, and its eyes held a spark
of gratitude. From then on, the creature, which she named Emerald, became
her constant companion.\\n\\nBack in her attic, Lily kept her adventures a
secret. She cherished the moments she spent in the magical rainforest, knowing
that a world of wonder and possibility existed beyond the ordinary. She learned
to appreciate the beauty of her own world, seeing it through new eyes, eyes
that had witnessed magic and understood its power.\\n\\nLily's life was never
the same. She carried with her the memory of the magic backpack, a reminder
that the impossible was always just a whisper away, a reminder that adventure,
wonder, and friendship could be found in the most unexpected places. And when
she needed a break from the ordinary, all she had to do was look at the worn,
patched backpack and remember the magic it held. \\n\"\n }\n ],\n
\ \"role\": \"model\"\n },\n \"finishReason\": 1,\n \"index\":
0,\n \"safetyRatings\": [\n {\n \"category\": 9,\n \"probability\":
1\n },\n {\n \"category\": 8,\n \"probability\":
1\n },\n {\n \"category\": 7,\n \"probability\":
1\n },\n {\n \"category\": 10,\n \"probability\":
1\n }\n ]\n }\n ],\n \"usageMetadata\": {\n \"promptTokenCount\":
9,\n \"candidatesTokenCount\": 594,\n \"totalTokenCount\": 603\n },\n
\ \"modelVersion\": \"gemini-1.5-flash-001\"\n}\n"
string: !!binary |
H4sIAAAAAAAC/2VXTW/cNhC9+1ewe0kLaA27jd24PSVFDwH6hSZoD00PlDiSmKVIlaR2sw4C9D/0
H/aX9M2Q2rXdADFskRrOvPfmDfXxQqlNp72xRmdKm2/UH3ii1Ef5yWvBZ/IZC+sjPJx1zOe95d/H
B79jS6YP/NLme6ejVged/LOsXAg76wfVh6i02SPuEulSvRmJdzxeVoY6bFCt7nYz/jdqjtRT1K07
quBJ5VFnhbw5cBdSVlOI8tSrkaI6EO2wUzsXDtp3OEa9xTm9I60mHXeUGxzSjTpk26l0nOYxeETu
cWLMFDkR4IITUqejIaNyJJ2QcGokWz7EaZw7hpmj/0QpO2zTU/ADHnejnWd+jXS3zEmCTSGPWwLS
XnHUPceyWSVU8u/f/yAfH7yh1EU7I4D2e5xzBqDXnMYQCa8fbB7VIUSvUFDmXFKOek5I5HVWPbks
D/xAAOGg46RyADgAKCzdePnOv/OvfY52WBCyPSKLpBa/pEU72Y7onDDqnaNNAANhgCRIsB2pz3u7
J5Ws2/PBo3UOO9JnXzSq8N2GZRgzggrqqI5ANrY0OINrYXA5Z0+IuESwkKhBIBK4A6IykCpNoK9Z
K9wiKlJqoRKVl26HLdYnawD+a2Q/64ESaIcIeiSEVcGIHA0aOqqgGsraOiFXJbCMV0B5msk5cAGq
xqKj1t7ruOqJcWOqUc0r8pzN6RGnIJFt8CwogUpqsdNUVNRXgqCcTEagf7MjvNEB63YB0Uu0YUkr
eMIQC4flWt5lVn3KqMMdG1lYVaHowwyiyODIg4h9xRbNY7kQMjGEqUQAWA1nDE0arruLemKN/rWI
5quyUcUc9UFQcggOqc5UBTpZbzW3LXcpCiogo5HiEfm5bQeyRIukJ8HDh8MW7/MpE/gD+l6JLpGH
VALGMzdoI4JDpHB/xI+cwScEsjaVNXKYMz1qRKooiJH8RXu076D3bCFHFvmBW4gRK2gCHxdYTlVv
8JEA7eRtsveskRCdqd5QskYcQKGyZraUsztZ0IeWYkQPENpbs+aKm0guECqJ4gBpD1RGNEurWaAt
InJ4trjO2amtvK5QAPDRQnMM+6Neg9VINV7v7YCECjq9dADbFkPPfdJXxoWGB6IbaEoZNsk4vVmM
Ic/K4Q5bGB6sBSOUPhJT9en3C6Lr0+Nv2aOKMOYQMxyYCm5M8KQHETIKdZNCqzPOPVKgmC38iEkS
cKXFVtK5iUs6rBfP8hXxVp5Q+ARi58WhdHly1t3KmEAaFscmNYEUqIqDh8rf45fS4itXDSLvSJKo
fPMCvBV0x0aMCmH9e34rWw/QeriEN+Ckw3aOlsrsGcnNa77YwEc/PnTgueEFgd9DNNxVUEMjjReW
mHhq/CzWgFnhTCTIwUBpng05LhPv4c16tXI12Ah7HoMKBy8OuaJ/HhKdnlAZhp943HnIlnbg7rfZ
Ausjkk2WLaWpskIiiRzMcNRxNZFEKDqvbPMoG3kJSU8C4YDwUAPcgxM9ly55lbZCKywW44jBVHs4
M/t0w+hBz5Cx3WvoQvQ7VDH3MK7eWd7GqhdOEvuBeXDE7PQRMytJnR1PwpnCzMlAqF0OsWjv1VIk
ac0RU6orpYia8xhlFBOr6SXm6jLNRzX4MEm3DTKEwATXuRL0LPE1JJH4VcuThWnveBBUgQOG0SYm
iLko6Z2Tbp29x2Ax5ToA5QVT8XwoVtHlmbJIE8E54roT3QXK5byH/VQdujxHGguYPso5rXbssLIB
2u4jX+qKEUm5tZvqZWpJlT8urbc8yOErjYyqOjtYRnvLMbDC296Hkoj9X6c2vNxSh2PUXHVSNuLR
JDmePKJivw7A9ijMQckGRsZi4LuPKdZ7RjItLQ820zxtaoRAb0xyX+xI5noR1GO4iyJacDFxT8mM
wC1HfAw30XIzwhihLsuVY9St9M1pxFQLK64goIqw+EoqMFZX1bi/ZDjogX2GwSwPars1qzHzZZz/
XBPFaY6JFDK8qfOtNEVlX+5JMhF6bosODsVUI/mnq6tP8Fh4yQqMQRrZK76+iH09cZQnMyHBlIAl
QpU8HswGrhjmg7tWvWpKqWUmsoNiOs2nquQuh6zQTyElKzXWy5jlFLzmGxWUsXnwXfHp9Pufzflr
JAZH/KkxBUNu3f5p3bABaDaNv2KgBo9t16cFvR9+CMMcQ8vfMtury5u766+ubu+ef313+9WL6+c3
txfroXLcZkmwoB9xgcS3kj59EW0QYZrz27Aj/x2PdazclUMefFk9Wr59vm7IAZemx2s3Ly5q+qWi
3yAKK6lvMNRRzPb68mbb4/I5bq+uvtxcfLr4D3fCOOLGDQAA
headers:
Alt-Svc:
- h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
Cache-Control:
- private
Content-Encoding:
- gzip
Content-Type:
- application/json; charset=UTF-8
Date:
- Mon, 28 Oct 2024 15:41:36 GMT
- Sat, 23 Nov 2024 14:52:15 GMT
Server:
- scaffolding on HTTPServer2
Server-Timing:
- gfet4t7; dur=3407
- gfet4t7; dur=5271
Transfer-Encoding:
- chunked
Vary:
Expand Down
97 changes: 44 additions & 53 deletions tests/cassettes/test_google/test_google_stream_chat.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,70 +24,61 @@ interactions:
uri: https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:streamGenerateContent?%24alt=json%3Benum-encoding%3Dint
response:
body:
string: "[{\n \"candidates\": [\n {\n \"content\": {\n \"parts\":
[\n {\n \"text\": \"Elara,\"\n }\n ],\n
\ \"role\": \"model\"\n },\n \"index\": 0,\n \"safetyRatings\":
[\n {\n \"category\": 9,\n \"probability\": 1\n },\n
\ {\n \"category\": 8,\n \"probability\": 1\n },\n
\ {\n \"category\": 7,\n \"probability\": 1\n },\n
\ {\n \"category\": 10,\n \"probability\": 1\n }\n
\ ]\n }\n ],\n \"usageMetadata\": {\n \"promptTokenCount\": 9,\n
\ \"candidatesTokenCount\": 3,\n \"totalTokenCount\": 12\n },\n \"modelVersion\":
\"gemini-1.5-flash-001\"\n}\n,\r\n{\n \"candidates\": [\n {\n \"content\":
{\n \"parts\": [\n {\n \"text\": \" a girl with
hair the color of spun gold and eyes like sparkling emeralds,\"\n }\n
\ ],\n \"role\": \"model\"\n },\n \"index\": 0,\n \"safetyRatings\":
[\n {\n \"category\": 9,\n \"probability\": 1\n },\n
\ {\n \"category\": 8,\n \"probability\": 1\n },\n
\ {\n \"category\": 7,\n \"probability\": 1\n },\n
\ {\n \"category\": 10,\n \"probability\": 1\n }\n
\ ]\n }\n ],\n \"usageMetadata\": {\n \"promptTokenCount\": 9,\n
\ \"candidatesTokenCount\": 19,\n \"totalTokenCount\": 28\n },\n \"modelVersion\":
\"gemini-1.5-flash-001\"\n}\n,\r\n{\n \"candidates\": [\n {\n \"content\":
{\n \"parts\": [\n {\n \"text\": \" had always
yearned for adventure. She devoured tales of daring explorers and fantastical
creatures,\"\n }\n ],\n \"role\": \"model\"\n },\n
\ \"index\": 0,\n \"safetyRatings\": [\n {\n \"category\":
9,\n \"probability\": 2\n },\n {\n \"category\":
8,\n \"probability\": 1\n },\n {\n \"category\":
7,\n \"probability\": 1\n },\n {\n \"category\":
10,\n \"probability\": 1\n }\n ]\n }\n ],\n \"usageMetadata\":
{\n \"promptTokenCount\": 9,\n \"candidatesTokenCount\": 37,\n \"totalTokenCount\":
46\n },\n \"modelVersion\": \"gemini-1.5-flash-001\"\n}\n,\r\n{\n \"candidates\":
[\n {\n \"content\": {\n \"parts\": [\n {\n \"text\":
\" her heart longing for something more than the quiet life of her village.
Her grandmother, a wizened woman with a mischievous twinkle in her eye, sensed
her\"\n }\n ],\n \"role\": \"model\"\n },\n \"index\":
0,\n \"safetyRatings\": [\n {\n \"category\": 9,\n \"probability\":
2\n },\n {\n \"category\": 8,\n \"probability\":
1\n },\n {\n \"category\": 7,\n \"probability\":
1\n },\n {\n \"category\": 10,\n \"probability\":
1\n }\n ]\n }\n ],\n \"usageMetadata\": {\n \"promptTokenCount\":
9,\n \"candidatesTokenCount\": 69,\n \"totalTokenCount\": 78\n },\n
\ \"modelVersion\": \"gemini-1.5-flash-001\"\n}\n,\r\n{\n \"candidates\":
[\n {\n \"finishReason\": 3,\n \"index\": 0,\n \"safetyRatings\":
[\n {\n \"category\": 9,\n \"probability\": 3\n },\n
\ {\n \"category\": 8,\n \"probability\": 1\n },\n
\ {\n \"category\": 7,\n \"probability\": 1\n },\n
\ {\n \"category\": 10,\n \"probability\": 1\n }\n
\ ]\n }\n ],\n \"usageMetadata\": {\n \"promptTokenCount\": 9,\n
\ \"candidatesTokenCount\": 69,\n \"totalTokenCount\": 78\n },\n \"modelVersion\":
\"gemini-1.5-flash-001\"\n}\n]"
string: !!binary |
H4sIAAAAAAAC/1SOMQvCMBCF9/6KcLOVKjjoKo5uxaU4HPaswTRXkisIpf/dJMW2ZjiO9768e9WQ
KQUPtLWuUcjDSVVBUWpIM3pshawE4ycFsUMnCzu9YbUHROgTP8HFwMoY5/2+WeIcG4psyzXN+ITG
mVDoPTZ0JcFQFOc60DluOyn5TfbMfSp6nKJBWND8O8EYU1o6dSPnNdt4uqFWW53vtof8adC/8qLY
QzZmXwAAAP//1NCxDYAwDATAHokdvqMhrENtyCMiWQmyA1G2ZwoKboSbx+HzIjFBE89TRS+3ofYr
7aKojfowdIqFonHBeiYlThoOS8zRUTanO+Ovj18AAAD//6JHGCvklwGDrSC/QKG4JLGoWAFolUJx
fnImMJhzU1MyE3UUXHNA8ZBSlJoIFFDIT1MozUutKMjJLwLyskrz0nNSIbpyK0sywNGTDFRaUloE
dO1QDnwAAAAA///UkrEOgzAMRH/FYkb8RjcmRhZLpMXCTaLENOLvOecjkDrH8Tvf3RPmT7TsUilz
dTUjnH2nYmcETa/Ruw+/QUAURk1sJyb4ips2iR9ahzmtAzqfvr38OZQc7GTVq8faUjkQEgRBZHUY
G0l1jon2L6/CsfMxx40B1cA/X47Xv87vBgAA///UlEEKwzAMBL+iB4Q+oO/IMRdFyK2IvTGyA3l+
ZR/6hEIPuiwIweyuflIeDuZyZWMnQxCzzhB9hh7sMWH2gXlnOWrMQq1ozoNvYkMfRiUSA7icmDWq
Bn1s2LC+9bs3o3DBtbAfvMezCyeTeev0yuPkQnqL1hBPj+utRAj+2r4PAAAA///UldENwyAQQ1dh
gI7TBUhC4VQC0QGV2un7jmSGSv0EWZxl+8wv7Ls5Kq9IS4S/SbYiXOFAFSZ/cJflidAujR2OcRHl
q7nq8CHbloHMpZRu8pOEbsaWSg+WCPRe54751qtN2eHKSGw9p6xZVtvPegSiouEVfL4emKjzSQAB
od+uEQR8XkaHUyFYFh6NvsgHDGEifpi/qEy6J7U29FBpnEGb9lpc9FsM/b/b+QsAAP//1JVBDoIw
FESv8mWjJnAITbiBSzYFfqBRWkMRw+19v8QrmLj7iyadZGbe/KbdVsc5rt7UwE+5iKnJ41bK6Iex
esa32hACbE0dTpbi9mJWzvdy9wu7GrPN2Q8azKqymITu2GOjhS4piG+V6qpBHyP5FS5MbulGhdcm
hJfh22wwQlZsfwHPw7Vqd1PUk86Dhm6TOnBtcrVFP90IoO5hTq+QCKcezk3x1/5/AAAA///UlksO
wjAMRK+SHRvOgcQJ2LBxaKAR6UdNCurteXZaARdAYp/EiubNjH+hfw1hgrZH6fK1CBWNbXGP6OnP
4iayXNXL6u8Q3vZL8Rrg5tSiHYrTCncjpJNRNbSTGLOZ5NljYc5gXnzM/djTFkkWGMlF9dWGuFkw
bK2wy279I3AeIa2FxkZLSXR2ENsSygAaWiZsyXmsjx+AKO/PVmCJWHHaKxuj4i4zUTID6dL5IenK
ETpv2aTjP/KwJpnV1V/j9AIAAP//1JeLCcMwDERX6QAdpHMkVh2DG4E/zfq5OzeQLFDIAAZhPe6d
/oHTyyrrQWOz+0nEc9bG+KtAAqRgi9w1tdGW4j0uKAqfpIZR+9TLhL5WWzEEuFyyjjouUYCkrymO
YAPHHoOtFbyxC8biQGxzD5fogWvSjAcjfeisc+sgoRzPH7GnoAvreQzLcaggIPum9y4Gs00M4jBQ
0jFFY9FBxhTNB8gqnGeiR9yGm99tOwAAAP//1JfLDcMwDENX8QDdp2fHH6RIYgm2gyDbl5RRHzpA
gQ4QQgFl8ukn5UTQgx/WSp9SGAzDWTbnVXEfp/hAHe0TVYLITqcy3Fgtplg37poBBcOAL+iv25TV
vyqzrqHz4k1kORZ+toj0xoJCnsBzEsjUKCnFsTUN5yAJqqIBAStnD1V0wu13HjlWKfiFzNz9Nhjq
afMFDymKRm7xIa3ZLDnjEdi5SRHPvNJVikG1XUn8h2Lvq6a/Xqk3AAAA///UV+0KgCAMfFaTpGhg
NKPX724ztRcI+iciOtztPr6xw6HUadSZX8h1MqV4i5D6sQQzqZ5SQwv9PY2aUCqzELqDOV8PDLZG
VDgqCPYBpOQ5SUcBdC0SccecJZ+HPlVRcKd8OWFG4HUn0IM33a0OHt2MjOCOpHoooC3S7CNqsUIA
klRabG/BgQbNUeI6CeJu1Fh4E5nw14C6AQAA///UmG0KgzAMhq+yA3ip0GW1bFlBLeLtffPRKTuA
4O9aKc3TPEkuyVGpirRvSf4+u9AQJkSYLZg4rC6zB9EHSat+LJCWeGUTtozbh8HgjFrDVedIOYm5
0fQshJYKV7hEU6bQoE8uSp9QLgkq1ILaRNmJ8hLuT4KD5bSJPct13N+8PWwnxf+UvgwTHvzraGWw
SYDA2euIZpAMnJk/L1Bp5fzvsLeGaQcAAP//1JjRDYMwEENXYQA26AJd4xSCgEZ3KBLN+tiGIlX8
V+o3EeKI82L7J2LC7ZbVmDTGIm6qqkslZU84vozKcrMXJlrUMtzLFHwjO+VlA8hOwwE3s64FonyA
R0rkumwCyME2t6D2LiVylNm306fZACGp7+xv9pjPZZ36LluaugUQc0jn2yrBfL9zodKfWM/MAM/m
idTzcfYDPnx1QCtuFTD1aBp/PAykWIkfVe2zRO0By/CkACmMmr84zl9LbQcAAP//1JlBDoMwDAS/
wo13tWAVS26gtTn01j/0h7yEtQ2oEfdKPeeSKJvd8eZHtZ7yfRKfxsdnObV44VKJwe4kEMxAkpfA
ZbMP72ZbrdrZrGGRqP1O6Dv6As7hbs5loV/g+At7eMxM9hU6wTjF5zsdnOxgoyWDOvXZBLtBXT1r
5+KgcMob2cHttUSUkNpWv5ZmeX+OhbC3bpzFIxMv74p4j4Td5kRhs/h4kSnPeflrba0AAAD//6JL
2oKkGVhS0iO/4wxToAQsIjKLM4JSE4vB3jOkOCwR/keRNjMxxRnYZqYmJAc3AAAA//+KBQAAAP//
AwCEykTNZR0AAA==
headers:
Alt-Svc:
- h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
Cache-Control:
- private
Content-Encoding:
- gzip
Content-Type:
- application/json; charset=UTF-8
Date:
- Mon, 28 Oct 2024 15:41:37 GMT
- Sat, 23 Nov 2024 14:52:16 GMT
Server:
- scaffolding on HTTPServer2
Server-Timing:
- gfet4t7; dur=1447
- gfet4t7; dur=892
Transfer-Encoding:
- chunked
Vary:
Expand Down