neobot commited on
Commit
0f705a4
·
1 Parent(s): 058b4ca

update files

Browse files
Files changed (3) hide show
  1. app.py +43 -3
  2. poetry.lock +1378 -6
  3. pyproject.toml +1 -0
app.py CHANGED
@@ -1,6 +1,46 @@
1
  import streamlit as st
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
 
3
- x = st.slider('Select a value')
4
- st.write(x, 'squared is', x * x)
5
 
6
- st.write("Secret:", st.secrets["test"])
 
1
  import streamlit as st
2
+ import openai
3
+ import pinecone
4
+
5
+ PINECONE_API_KEY = st.secrets["PINECONE_API_KEY"]
6
+ OPENAI_API_KEY = st.secrets["OPENAI_API_KEY"]
7
+ INDEX_NAME = 'realvest-data-v2'
8
+ EMBEDDING_MODEL = "text-embedding-ada-002" # OpenAI's best embeddings as of Apr 2023
9
+
10
+ ### Pinecone
11
+
12
+ # initialize connection to pinecone (get API key at app.pinecone.io)
13
+ pinecone.init(
14
+ api_key=PINECONE_API_KEY,
15
+ environment="us-central1-gcp" # may be different, check at app.pinecone.io
16
+ )
17
+
18
+ index = pinecone.Index(INDEX_NAME)
19
+
20
+ ### Main
21
+
22
+ # Create a text input field
23
+ query = st.text_input("What are you looking for?")
24
+
25
+ # Create a button
26
+ if st.button('Submit'):
27
+ # Display a response when the button is pressed
28
+ # st.text("Hi, {}".format(query))
29
+ print('click Submit')
30
+
31
+ ### text-embedding
32
+ res = openai.Embedding.create(model=EMBEDDING_MODEL, input=[query], api_key=OPENAI_API_KEY)
33
+ st.json(res)
34
+ xq = res['data'][0]['embedding']
35
+
36
+ ### query VectorDB
37
+ out = index.query(xq, top_k=3, include_metadata=True)
38
+
39
+ ### display
40
+ st.json(out)
41
+
42
+ # st.write(stats)
43
+
44
+ # from tqdm.autonotebook import tqdm
45
 
 
 
46
 
 
poetry.lock CHANGED
@@ -145,6 +145,139 @@ typing-extensions = {version = ">=4.0.1", markers = "python_version < \"3.11\""}
145
  dev = ["black (<24)", "hatch", "ipython", "m2r", "mypy", "pandas-stubs", "pytest", "pytest-cov", "ruff", "types-jsonschema", "types-setuptools", "vega-datasets", "vl-convert-python"]
146
  doc = ["docutils", "geopandas", "jinja2", "myst-parser", "numpydoc", "pillow", "pydata-sphinx-theme", "sphinx", "sphinx-copybutton", "sphinx-design", "sphinxext-altair"]
147
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
148
  [[package]]
149
  name = "async-timeout"
150
  version = "4.0.2"
@@ -174,6 +307,64 @@ docs = ["furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-
174
  tests = ["attrs[tests-no-zope]", "zope-interface"]
175
  tests-no-zope = ["cloudpickle", "hypothesis", "mypy (>=1.1.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"]
176
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
177
  [[package]]
178
  name = "blinker"
179
  version = "1.6.2"
@@ -207,6 +398,82 @@ files = [
207
  {file = "certifi-2023.5.7.tar.gz", hash = "sha256:0f0d56dc5a6ad56fd4ba36484d6cc34451e1c6548c61daad8c320169f91eddc7"},
208
  ]
209
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
210
  [[package]]
211
  name = "charset-normalizer"
212
  version = "3.1.0"
@@ -316,6 +583,25 @@ files = [
316
  {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"},
317
  ]
318
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
319
  [[package]]
320
  name = "dataclasses-json"
321
  version = "0.5.8"
@@ -335,6 +621,33 @@ typing-inspect = ">=0.4.0"
335
  [package.extras]
336
  dev = ["flake8", "hypothesis", "ipython", "mypy (>=0.710)", "portray", "pytest (>=7.2.0)", "simplejson", "types-dataclasses"]
337
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
338
  [[package]]
339
  name = "decorator"
340
  version = "5.1.1"
@@ -346,6 +659,17 @@ files = [
346
  {file = "decorator-5.1.1.tar.gz", hash = "sha256:637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330"},
347
  ]
348
 
 
 
 
 
 
 
 
 
 
 
 
349
  [[package]]
350
  name = "dnspython"
351
  version = "2.3.0"
@@ -366,6 +690,59 @@ idna = ["idna (>=2.1,<4.0)"]
366
  trio = ["trio (>=0.14,<0.23)"]
367
  wmi = ["wmi (>=1.5.1,<2.0.0)"]
368
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
369
  [[package]]
370
  name = "frozenlist"
371
  version = "1.3.3"
@@ -580,6 +957,111 @@ docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker
580
  perf = ["ipython"]
581
  testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)", "pytest-ruff"]
582
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
583
  [[package]]
584
  name = "jinja2"
585
  version = "3.1.2"
@@ -597,6 +1079,30 @@ MarkupSafe = ">=2.0"
597
  [package.extras]
598
  i18n = ["Babel (>=2.7)"]
599
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
600
  [[package]]
601
  name = "jsonschema"
602
  version = "4.17.3"
@@ -610,12 +1116,226 @@ files = [
610
 
611
  [package.dependencies]
612
  attrs = ">=17.4.0"
 
 
 
 
613
  pyrsistent = ">=0.14.0,<0.17.0 || >0.17.0,<0.17.1 || >0.17.1,<0.17.2 || >0.17.2"
 
 
 
 
614
 
615
  [package.extras]
616
  format = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3987", "uri-template", "webcolors (>=1.11)"]
617
  format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3986-validator (>0.1.0)", "uri-template", "webcolors (>=1.11)"]
618
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
619
  [[package]]
620
  name = "langchain"
621
  version = "0.0.213"
@@ -805,6 +1525,20 @@ files = [
805
  [package.dependencies]
806
  marshmallow = ">=2.0.0"
807
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
808
  [[package]]
809
  name = "mdurl"
810
  version = "0.1.2"
@@ -816,6 +1550,17 @@ files = [
816
  {file = "mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba"},
817
  ]
818
 
 
 
 
 
 
 
 
 
 
 
 
819
  [[package]]
820
  name = "multidict"
821
  version = "6.0.4"
@@ -900,16 +1645,125 @@ files = [
900
  ]
901
 
902
  [[package]]
903
- name = "mypy-extensions"
904
- version = "1.0.0"
905
- description = "Type system extensions for programs checked with the mypy type checker."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
906
  optional = false
907
  python-versions = ">=3.5"
908
  files = [
909
- {file = "mypy_extensions-1.0.0-py3-none-any.whl", hash = "sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"},
910
- {file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"},
 
 
 
 
 
 
 
 
 
 
 
911
  ]
912
 
 
 
 
 
 
 
913
  [[package]]
914
  name = "numexpr"
915
  version = "2.8.4"
@@ -1022,6 +1876,17 @@ files = [
1022
  [package.dependencies]
1023
  pydantic = ">=1.8.2"
1024
 
 
 
 
 
 
 
 
 
 
 
 
1025
  [[package]]
1026
  name = "packaging"
1027
  version = "23.1"
@@ -1100,6 +1965,57 @@ sql-other = ["SQLAlchemy (>=1.4.16)"]
1100
  test = ["hypothesis (>=6.34.2)", "pytest (>=7.0.0)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)"]
1101
  xml = ["lxml (>=4.6.3)"]
1102
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1103
  [[package]]
1104
  name = "pillow"
1105
  version = "9.5.0"
@@ -1204,6 +2120,49 @@ urllib3 = ">=1.21.1"
1204
  [package.extras]
1205
  grpc = ["googleapis-common-protos (>=1.53.0)", "grpc-gateway-protoc-gen-openapiv2 (==0.1.0)", "grpcio (>=1.44.0)", "lz4 (>=3.1.3)", "protobuf (>=3.19.5,<3.20.0)"]
1206
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1207
  [[package]]
1208
  name = "protobuf"
1209
  version = "4.23.3"
@@ -1226,6 +2185,32 @@ files = [
1226
  {file = "protobuf-4.23.3.tar.gz", hash = "sha256:7a92beb30600332a52cdadbedb40d33fd7c8a0d7f549c440347bc606fb3fe34b"},
1227
  ]
1228
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1229
  [[package]]
1230
  name = "psycopg2-binary"
1231
  version = "2.9.6"
@@ -1297,6 +2282,31 @@ files = [
1297
  {file = "psycopg2_binary-2.9.6-cp39-cp39-win_amd64.whl", hash = "sha256:f6a88f384335bb27812293fdb11ac6aee2ca3f51d3c7820fe03de0a304ab6249"},
1298
  ]
1299
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1300
  [[package]]
1301
  name = "pyarrow"
1302
  version = "12.0.1"
@@ -1334,6 +2344,17 @@ files = [
1334
  [package.dependencies]
1335
  numpy = ">=1.16.6"
1336
 
 
 
 
 
 
 
 
 
 
 
 
1337
  [[package]]
1338
  name = "pydantic"
1339
  version = "1.10.9"
@@ -1494,6 +2515,17 @@ files = [
1494
  [package.extras]
1495
  cli = ["click (>=5.0)"]
1496
 
 
 
 
 
 
 
 
 
 
 
 
1497
  [[package]]
1498
  name = "pytz"
1499
  version = "2023.3"
@@ -1519,6 +2551,44 @@ files = [
1519
  [package.dependencies]
1520
  tzdata = {version = "*", markers = "python_version >= \"3.6\""}
1521
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1522
  [[package]]
1523
  name = "pyyaml"
1524
  version = "6.0"
@@ -1568,6 +2638,95 @@ files = [
1568
  {file = "PyYAML-6.0.tar.gz", hash = "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"},
1569
  ]
1570
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1571
  [[package]]
1572
  name = "requests"
1573
  version = "2.31.0"
@@ -1589,6 +2748,31 @@ urllib3 = ">=1.21.1,<3"
1589
  socks = ["PySocks (>=1.5.6,!=1.5.7)"]
1590
  use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"]
1591
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1592
  [[package]]
1593
  name = "rich"
1594
  version = "13.4.2"
@@ -1607,6 +2791,22 @@ pygments = ">=2.13.0,<3.0.0"
1607
  [package.extras]
1608
  jupyter = ["ipywidgets (>=7.5.1,<9)"]
1609
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1610
  [[package]]
1611
  name = "six"
1612
  version = "1.16.0"
@@ -1629,6 +2829,28 @@ files = [
1629
  {file = "smmap-5.0.0.tar.gz", hash = "sha256:c840e62059cd3be204b0c9c9f74be2c09d5648eddd4580d9314c3ecde0b30936"},
1630
  ]
1631
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1632
  [[package]]
1633
  name = "sqlalchemy"
1634
  version = "2.0.17"
@@ -1707,6 +2929,25 @@ postgresql-psycopgbinary = ["psycopg[binary] (>=3.0.7)"]
1707
  pymysql = ["pymysql"]
1708
  sqlcipher = ["sqlcipher3-binary"]
1709
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1710
  [[package]]
1711
  name = "streamlit"
1712
  version = "1.23.1"
@@ -1761,6 +3002,44 @@ files = [
1761
  [package.extras]
1762
  doc = ["reno", "sphinx", "tornado (>=4.5)"]
1763
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1764
  [[package]]
1765
  name = "toml"
1766
  version = "0.10.2"
@@ -1772,6 +3051,17 @@ files = [
1772
  {file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"},
1773
  ]
1774
 
 
 
 
 
 
 
 
 
 
 
 
1775
  [[package]]
1776
  name = "toolz"
1777
  version = "0.12.0"
@@ -1823,6 +3113,21 @@ notebook = ["ipywidgets (>=6)"]
1823
  slack = ["slack-sdk"]
1824
  telegram = ["requests"]
1825
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1826
  [[package]]
1827
  name = "typing-extensions"
1828
  version = "4.6.3"
@@ -1878,6 +3183,20 @@ tzdata = {version = "*", markers = "platform_system == \"Windows\""}
1878
  [package.extras]
1879
  devenv = ["black", "check-manifest", "flake8", "pyroma", "pytest (>=4.3)", "pytest-cov", "pytest-mock (>=3.3)", "zest.releaser"]
1880
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1881
  [[package]]
1882
  name = "urllib3"
1883
  version = "2.0.3"
@@ -1950,6 +3269,59 @@ files = [
1950
  [package.extras]
1951
  watchmedo = ["PyYAML (>=3.10)"]
1952
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1953
  [[package]]
1954
  name = "win32-setctime"
1955
  version = "1.1.0"
@@ -2069,4 +3441,4 @@ testing = ["big-O", "flake8 (<5)", "jaraco.functools", "jaraco.itertools", "more
2069
  [metadata]
2070
  lock-version = "2.0"
2071
  python-versions = ">=3.9,<3.9.7 || >3.9.7,<4.0"
2072
- content-hash = "b1c68a5f6d6b921a344f7c7f4c4136abfc2b713897e32b86ece3831d545cdbc1"
 
145
  dev = ["black (<24)", "hatch", "ipython", "m2r", "mypy", "pandas-stubs", "pytest", "pytest-cov", "ruff", "types-jsonschema", "types-setuptools", "vega-datasets", "vl-convert-python"]
146
  doc = ["docutils", "geopandas", "jinja2", "myst-parser", "numpydoc", "pillow", "pydata-sphinx-theme", "sphinx", "sphinx-copybutton", "sphinx-design", "sphinxext-altair"]
147
 
148
+ [[package]]
149
+ name = "anyio"
150
+ version = "3.7.0"
151
+ description = "High level compatibility layer for multiple asynchronous event loop implementations"
152
+ optional = false
153
+ python-versions = ">=3.7"
154
+ files = [
155
+ {file = "anyio-3.7.0-py3-none-any.whl", hash = "sha256:eddca883c4175f14df8aedce21054bfca3adb70ffe76a9f607aef9d7fa2ea7f0"},
156
+ {file = "anyio-3.7.0.tar.gz", hash = "sha256:275d9973793619a5374e1c89a4f4ad3f4b0a5510a2b5b939444bee8f4c4d37ce"},
157
+ ]
158
+
159
+ [package.dependencies]
160
+ exceptiongroup = {version = "*", markers = "python_version < \"3.11\""}
161
+ idna = ">=2.8"
162
+ sniffio = ">=1.1"
163
+
164
+ [package.extras]
165
+ doc = ["Sphinx (>=6.1.0)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme", "sphinxcontrib-jquery"]
166
+ test = ["anyio[trio]", "coverage[toml] (>=4.5)", "hypothesis (>=4.0)", "mock (>=4)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (>=0.17)"]
167
+ trio = ["trio (<0.22)"]
168
+
169
+ [[package]]
170
+ name = "appnope"
171
+ version = "0.1.3"
172
+ description = "Disable App Nap on macOS >= 10.9"
173
+ optional = false
174
+ python-versions = "*"
175
+ files = [
176
+ {file = "appnope-0.1.3-py2.py3-none-any.whl", hash = "sha256:265a455292d0bd8a72453494fa24df5a11eb18373a60c7c0430889f22548605e"},
177
+ {file = "appnope-0.1.3.tar.gz", hash = "sha256:02bd91c4de869fbb1e1c50aafc4098827a7a54ab2f39d9dcba6c9547ed920e24"},
178
+ ]
179
+
180
+ [[package]]
181
+ name = "argon2-cffi"
182
+ version = "21.3.0"
183
+ description = "The secure Argon2 password hashing algorithm."
184
+ optional = false
185
+ python-versions = ">=3.6"
186
+ files = [
187
+ {file = "argon2-cffi-21.3.0.tar.gz", hash = "sha256:d384164d944190a7dd7ef22c6aa3ff197da12962bd04b17f64d4e93d934dba5b"},
188
+ {file = "argon2_cffi-21.3.0-py3-none-any.whl", hash = "sha256:8c976986f2c5c0e5000919e6de187906cfd81fb1c72bf9d88c01177e77da7f80"},
189
+ ]
190
+
191
+ [package.dependencies]
192
+ argon2-cffi-bindings = "*"
193
+
194
+ [package.extras]
195
+ dev = ["cogapp", "coverage[toml] (>=5.0.2)", "furo", "hypothesis", "pre-commit", "pytest", "sphinx", "sphinx-notfound-page", "tomli"]
196
+ docs = ["furo", "sphinx", "sphinx-notfound-page"]
197
+ tests = ["coverage[toml] (>=5.0.2)", "hypothesis", "pytest"]
198
+
199
+ [[package]]
200
+ name = "argon2-cffi-bindings"
201
+ version = "21.2.0"
202
+ description = "Low-level CFFI bindings for Argon2"
203
+ optional = false
204
+ python-versions = ">=3.6"
205
+ files = [
206
+ {file = "argon2-cffi-bindings-21.2.0.tar.gz", hash = "sha256:bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3"},
207
+ {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:ccb949252cb2ab3a08c02024acb77cfb179492d5701c7cbdbfd776124d4d2367"},
208
+ {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9524464572e12979364b7d600abf96181d3541da11e23ddf565a32e70bd4dc0d"},
209
+ {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b746dba803a79238e925d9046a63aa26bf86ab2a2fe74ce6b009a1c3f5c8f2ae"},
210
+ {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:58ed19212051f49a523abb1dbe954337dc82d947fb6e5a0da60f7c8471a8476c"},
211
+ {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:bd46088725ef7f58b5a1ef7ca06647ebaf0eb4baff7d1d0d177c6cc8744abd86"},
212
+ {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_i686.whl", hash = "sha256:8cd69c07dd875537a824deec19f978e0f2078fdda07fd5c42ac29668dda5f40f"},
213
+ {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:f1152ac548bd5b8bcecfb0b0371f082037e47128653df2e8ba6e914d384f3c3e"},
214
+ {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-win32.whl", hash = "sha256:603ca0aba86b1349b147cab91ae970c63118a0f30444d4bc80355937c950c082"},
215
+ {file = "argon2_cffi_bindings-21.2.0-cp36-abi3-win_amd64.whl", hash = "sha256:b2ef1c30440dbbcba7a5dc3e319408b59676e2e039e2ae11a8775ecf482b192f"},
216
+ {file = "argon2_cffi_bindings-21.2.0-cp38-abi3-macosx_10_9_universal2.whl", hash = "sha256:e415e3f62c8d124ee16018e491a009937f8cf7ebf5eb430ffc5de21b900dad93"},
217
+ {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:3e385d1c39c520c08b53d63300c3ecc28622f076f4c2b0e6d7e796e9f6502194"},
218
+ {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2c3e3cc67fdb7d82c4718f19b4e7a87123caf8a93fde7e23cf66ac0337d3cb3f"},
219
+ {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6a22ad9800121b71099d0fb0a65323810a15f2e292f2ba450810a7316e128ee5"},
220
+ {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f9f8b450ed0547e3d473fdc8612083fd08dd2120d6ac8f73828df9b7d45bb351"},
221
+ {file = "argon2_cffi_bindings-21.2.0-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:93f9bf70084f97245ba10ee36575f0c3f1e7d7724d67d8e5b08e61787c320ed7"},
222
+ {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:3b9ef65804859d335dc6b31582cad2c5166f0c3e7975f324d9ffaa34ee7e6583"},
223
+ {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d4966ef5848d820776f5f562a7d45fdd70c2f330c961d0d745b784034bd9f48d"},
224
+ {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:20ef543a89dee4db46a1a6e206cd015360e5a75822f76df533845c3cbaf72670"},
225
+ {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ed2937d286e2ad0cc79a7087d3c272832865f779430e0cc2b4f3718d3159b0cb"},
226
+ {file = "argon2_cffi_bindings-21.2.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:5e00316dabdaea0b2dd82d141cc66889ced0cdcbfa599e8b471cf22c620c329a"},
227
+ ]
228
+
229
+ [package.dependencies]
230
+ cffi = ">=1.0.1"
231
+
232
+ [package.extras]
233
+ dev = ["cogapp", "pre-commit", "pytest", "wheel"]
234
+ tests = ["pytest"]
235
+
236
+ [[package]]
237
+ name = "arrow"
238
+ version = "1.2.3"
239
+ description = "Better dates & times for Python"
240
+ optional = false
241
+ python-versions = ">=3.6"
242
+ files = [
243
+ {file = "arrow-1.2.3-py3-none-any.whl", hash = "sha256:5a49ab92e3b7b71d96cd6bfcc4df14efefc9dfa96ea19045815914a6ab6b1fe2"},
244
+ {file = "arrow-1.2.3.tar.gz", hash = "sha256:3934b30ca1b9f292376d9db15b19446088d12ec58629bc3f0da28fd55fb633a1"},
245
+ ]
246
+
247
+ [package.dependencies]
248
+ python-dateutil = ">=2.7.0"
249
+
250
+ [[package]]
251
+ name = "asttokens"
252
+ version = "2.2.1"
253
+ description = "Annotate AST trees with source code positions"
254
+ optional = false
255
+ python-versions = "*"
256
+ files = [
257
+ {file = "asttokens-2.2.1-py2.py3-none-any.whl", hash = "sha256:6b0ac9e93fb0335014d382b8fa9b3afa7df546984258005da0b9e7095b3deb1c"},
258
+ {file = "asttokens-2.2.1.tar.gz", hash = "sha256:4622110b2a6f30b77e1473affaa97e711bc2f07d3f10848420ff1898edbe94f3"},
259
+ ]
260
+
261
+ [package.dependencies]
262
+ six = "*"
263
+
264
+ [package.extras]
265
+ test = ["astroid", "pytest"]
266
+
267
+ [[package]]
268
+ name = "async-lru"
269
+ version = "2.0.2"
270
+ description = "Simple LRU cache for asyncio"
271
+ optional = false
272
+ python-versions = ">=3.8"
273
+ files = [
274
+ {file = "async-lru-2.0.2.tar.gz", hash = "sha256:3b87ec4f2460c52cc7916a0138cc606b584c75d1ef7d661853c95d1d3acb869a"},
275
+ {file = "async_lru-2.0.2-py3-none-any.whl", hash = "sha256:d7c2b873e9af5c5a1f0a87a6c145e7e0b4eb92342b7235dda9dd5b10e950d6e2"},
276
+ ]
277
+
278
+ [package.dependencies]
279
+ typing-extensions = ">=4.0.0"
280
+
281
  [[package]]
282
  name = "async-timeout"
283
  version = "4.0.2"
 
307
  tests = ["attrs[tests-no-zope]", "zope-interface"]
308
  tests-no-zope = ["cloudpickle", "hypothesis", "mypy (>=1.1.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"]
309
 
310
+ [[package]]
311
+ name = "babel"
312
+ version = "2.12.1"
313
+ description = "Internationalization utilities"
314
+ optional = false
315
+ python-versions = ">=3.7"
316
+ files = [
317
+ {file = "Babel-2.12.1-py3-none-any.whl", hash = "sha256:b4246fb7677d3b98f501a39d43396d3cafdc8eadb045f4a31be01863f655c610"},
318
+ {file = "Babel-2.12.1.tar.gz", hash = "sha256:cc2d99999cd01d44420ae725a21c9e3711b3aadc7976d6147f622d8581963455"},
319
+ ]
320
+
321
+ [[package]]
322
+ name = "backcall"
323
+ version = "0.2.0"
324
+ description = "Specifications for callback functions passed in to an API"
325
+ optional = false
326
+ python-versions = "*"
327
+ files = [
328
+ {file = "backcall-0.2.0-py2.py3-none-any.whl", hash = "sha256:fbbce6a29f263178a1f7915c1940bde0ec2b2a967566fe1c65c1dfb7422bd255"},
329
+ {file = "backcall-0.2.0.tar.gz", hash = "sha256:5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e"},
330
+ ]
331
+
332
+ [[package]]
333
+ name = "beautifulsoup4"
334
+ version = "4.12.2"
335
+ description = "Screen-scraping library"
336
+ optional = false
337
+ python-versions = ">=3.6.0"
338
+ files = [
339
+ {file = "beautifulsoup4-4.12.2-py3-none-any.whl", hash = "sha256:bd2520ca0d9d7d12694a53d44ac482d181b4ec1888909b035a3dbf40d0f57d4a"},
340
+ {file = "beautifulsoup4-4.12.2.tar.gz", hash = "sha256:492bbc69dca35d12daac71c4db1bfff0c876c00ef4a2ffacce226d4638eb72da"},
341
+ ]
342
+
343
+ [package.dependencies]
344
+ soupsieve = ">1.2"
345
+
346
+ [package.extras]
347
+ html5lib = ["html5lib"]
348
+ lxml = ["lxml"]
349
+
350
+ [[package]]
351
+ name = "bleach"
352
+ version = "6.0.0"
353
+ description = "An easy safelist-based HTML-sanitizing tool."
354
+ optional = false
355
+ python-versions = ">=3.7"
356
+ files = [
357
+ {file = "bleach-6.0.0-py3-none-any.whl", hash = "sha256:33c16e3353dbd13028ab4799a0f89a83f113405c766e9c122df8a06f5b85b3f4"},
358
+ {file = "bleach-6.0.0.tar.gz", hash = "sha256:1a1a85c1595e07d8db14c5f09f09e6433502c51c595970edc090551f0db99414"},
359
+ ]
360
+
361
+ [package.dependencies]
362
+ six = ">=1.9.0"
363
+ webencodings = "*"
364
+
365
+ [package.extras]
366
+ css = ["tinycss2 (>=1.1.0,<1.2)"]
367
+
368
  [[package]]
369
  name = "blinker"
370
  version = "1.6.2"
 
398
  {file = "certifi-2023.5.7.tar.gz", hash = "sha256:0f0d56dc5a6ad56fd4ba36484d6cc34451e1c6548c61daad8c320169f91eddc7"},
399
  ]
400
 
401
+ [[package]]
402
+ name = "cffi"
403
+ version = "1.15.1"
404
+ description = "Foreign Function Interface for Python calling C code."
405
+ optional = false
406
+ python-versions = "*"
407
+ files = [
408
+ {file = "cffi-1.15.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2"},
409
+ {file = "cffi-1.15.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:470c103ae716238bbe698d67ad020e1db9d9dba34fa5a899b5e21577e6d52ed2"},
410
+ {file = "cffi-1.15.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:9ad5db27f9cabae298d151c85cf2bad1d359a1b9c686a275df03385758e2f914"},
411
+ {file = "cffi-1.15.1-cp27-cp27m-win32.whl", hash = "sha256:b3bbeb01c2b273cca1e1e0c5df57f12dce9a4dd331b4fa1635b8bec26350bde3"},
412
+ {file = "cffi-1.15.1-cp27-cp27m-win_amd64.whl", hash = "sha256:e00b098126fd45523dd056d2efba6c5a63b71ffe9f2bbe1a4fe1716e1d0c331e"},
413
+ {file = "cffi-1.15.1-cp27-cp27mu-manylinux1_i686.whl", hash = "sha256:d61f4695e6c866a23a21acab0509af1cdfd2c013cf256bbf5b6b5e2695827162"},
414
+ {file = "cffi-1.15.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:ed9cb427ba5504c1dc15ede7d516b84757c3e3d7868ccc85121d9310d27eed0b"},
415
+ {file = "cffi-1.15.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:39d39875251ca8f612b6f33e6b1195af86d1b3e60086068be9cc053aa4376e21"},
416
+ {file = "cffi-1.15.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:285d29981935eb726a4399badae8f0ffdff4f5050eaa6d0cfc3f64b857b77185"},
417
+ {file = "cffi-1.15.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3eb6971dcff08619f8d91607cfc726518b6fa2a9eba42856be181c6d0d9515fd"},
418
+ {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:21157295583fe8943475029ed5abdcf71eb3911894724e360acff1d61c1d54bc"},
419
+ {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5635bd9cb9731e6d4a1132a498dd34f764034a8ce60cef4f5319c0541159392f"},
420
+ {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2012c72d854c2d03e45d06ae57f40d78e5770d252f195b93f581acf3ba44496e"},
421
+ {file = "cffi-1.15.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd86c085fae2efd48ac91dd7ccffcfc0571387fe1193d33b6394db7ef31fe2a4"},
422
+ {file = "cffi-1.15.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:fa6693661a4c91757f4412306191b6dc88c1703f780c8234035eac011922bc01"},
423
+ {file = "cffi-1.15.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:59c0b02d0a6c384d453fece7566d1c7e6b7bae4fc5874ef2ef46d56776d61c9e"},
424
+ {file = "cffi-1.15.1-cp310-cp310-win32.whl", hash = "sha256:cba9d6b9a7d64d4bd46167096fc9d2f835e25d7e4c121fb2ddfc6528fb0413b2"},
425
+ {file = "cffi-1.15.1-cp310-cp310-win_amd64.whl", hash = "sha256:ce4bcc037df4fc5e3d184794f27bdaab018943698f4ca31630bc7f84a7b69c6d"},
426
+ {file = "cffi-1.15.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:3d08afd128ddaa624a48cf2b859afef385b720bb4b43df214f85616922e6a5ac"},
427
+ {file = "cffi-1.15.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3799aecf2e17cf585d977b780ce79ff0dc9b78d799fc694221ce814c2c19db83"},
428
+ {file = "cffi-1.15.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a591fe9e525846e4d154205572a029f653ada1a78b93697f3b5a8f1f2bc055b9"},
429
+ {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3548db281cd7d2561c9ad9984681c95f7b0e38881201e157833a2342c30d5e8c"},
430
+ {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91fc98adde3d7881af9b59ed0294046f3806221863722ba7d8d120c575314325"},
431
+ {file = "cffi-1.15.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:94411f22c3985acaec6f83c6df553f2dbe17b698cc7f8ae751ff2237d96b9e3c"},
432
+ {file = "cffi-1.15.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:03425bdae262c76aad70202debd780501fabeaca237cdfddc008987c0e0f59ef"},
433
+ {file = "cffi-1.15.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:cc4d65aeeaa04136a12677d3dd0b1c0c94dc43abac5860ab33cceb42b801c1e8"},
434
+ {file = "cffi-1.15.1-cp311-cp311-win32.whl", hash = "sha256:a0f100c8912c114ff53e1202d0078b425bee3649ae34d7b070e9697f93c5d52d"},
435
+ {file = "cffi-1.15.1-cp311-cp311-win_amd64.whl", hash = "sha256:04ed324bda3cda42b9b695d51bb7d54b680b9719cfab04227cdd1e04e5de3104"},
436
+ {file = "cffi-1.15.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50a74364d85fd319352182ef59c5c790484a336f6db772c1a9231f1c3ed0cbd7"},
437
+ {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e263d77ee3dd201c3a142934a086a4450861778baaeeb45db4591ef65550b0a6"},
438
+ {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cec7d9412a9102bdc577382c3929b337320c4c4c4849f2c5cdd14d7368c5562d"},
439
+ {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4289fc34b2f5316fbb762d75362931e351941fa95fa18789191b33fc4cf9504a"},
440
+ {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:173379135477dc8cac4bc58f45db08ab45d228b3363adb7af79436135d028405"},
441
+ {file = "cffi-1.15.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:6975a3fac6bc83c4a65c9f9fcab9e47019a11d3d2cf7f3c0d03431bf145a941e"},
442
+ {file = "cffi-1.15.1-cp36-cp36m-win32.whl", hash = "sha256:2470043b93ff09bf8fb1d46d1cb756ce6132c54826661a32d4e4d132e1977adf"},
443
+ {file = "cffi-1.15.1-cp36-cp36m-win_amd64.whl", hash = "sha256:30d78fbc8ebf9c92c9b7823ee18eb92f2e6ef79b45ac84db507f52fbe3ec4497"},
444
+ {file = "cffi-1.15.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:198caafb44239b60e252492445da556afafc7d1e3ab7a1fb3f0584ef6d742375"},
445
+ {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5ef34d190326c3b1f822a5b7a45f6c4535e2f47ed06fec77d3d799c450b2651e"},
446
+ {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8102eaf27e1e448db915d08afa8b41d6c7ca7a04b7d73af6514df10a3e74bd82"},
447
+ {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5df2768244d19ab7f60546d0c7c63ce1581f7af8b5de3eb3004b9b6fc8a9f84b"},
448
+ {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a8c4917bd7ad33e8eb21e9a5bbba979b49d9a97acb3a803092cbc1133e20343c"},
449
+ {file = "cffi-1.15.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e2642fe3142e4cc4af0799748233ad6da94c62a8bec3a6648bf8ee68b1c7426"},
450
+ {file = "cffi-1.15.1-cp37-cp37m-win32.whl", hash = "sha256:e229a521186c75c8ad9490854fd8bbdd9a0c9aa3a524326b55be83b54d4e0ad9"},
451
+ {file = "cffi-1.15.1-cp37-cp37m-win_amd64.whl", hash = "sha256:a0b71b1b8fbf2b96e41c4d990244165e2c9be83d54962a9a1d118fd8657d2045"},
452
+ {file = "cffi-1.15.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:320dab6e7cb2eacdf0e658569d2575c4dad258c0fcc794f46215e1e39f90f2c3"},
453
+ {file = "cffi-1.15.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1e74c6b51a9ed6589199c787bf5f9875612ca4a8a0785fb2d4a84429badaf22a"},
454
+ {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a5c84c68147988265e60416b57fc83425a78058853509c1b0629c180094904a5"},
455
+ {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3b926aa83d1edb5aa5b427b4053dc420ec295a08e40911296b9eb1b6170f6cca"},
456
+ {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:87c450779d0914f2861b8526e035c5e6da0a3199d8f1add1a665e1cbc6fc6d02"},
457
+ {file = "cffi-1.15.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4f2c9f67e9821cad2e5f480bc8d83b8742896f1242dba247911072d4fa94c192"},
458
+ {file = "cffi-1.15.1-cp38-cp38-win32.whl", hash = "sha256:8b7ee99e510d7b66cdb6c593f21c043c248537a32e0bedf02e01e9553a172314"},
459
+ {file = "cffi-1.15.1-cp38-cp38-win_amd64.whl", hash = "sha256:00a9ed42e88df81ffae7a8ab6d9356b371399b91dbdf0c3cb1e84c03a13aceb5"},
460
+ {file = "cffi-1.15.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:54a2db7b78338edd780e7ef7f9f6c442500fb0d41a5a4ea24fff1c929d5af585"},
461
+ {file = "cffi-1.15.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:fcd131dd944808b5bdb38e6f5b53013c5aa4f334c5cad0c72742f6eba4b73db0"},
462
+ {file = "cffi-1.15.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7473e861101c9e72452f9bf8acb984947aa1661a7704553a9f6e4baa5ba64415"},
463
+ {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6c9a799e985904922a4d207a94eae35c78ebae90e128f0c4e521ce339396be9d"},
464
+ {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3bcde07039e586f91b45c88f8583ea7cf7a0770df3a1649627bf598332cb6984"},
465
+ {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:33ab79603146aace82c2427da5ca6e58f2b3f2fb5da893ceac0c42218a40be35"},
466
+ {file = "cffi-1.15.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5d598b938678ebf3c67377cdd45e09d431369c3b1a5b331058c338e201f12b27"},
467
+ {file = "cffi-1.15.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:db0fbb9c62743ce59a9ff687eb5f4afbe77e5e8403d6697f7446e5f609976f76"},
468
+ {file = "cffi-1.15.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:98d85c6a2bef81588d9227dde12db8a7f47f639f4a17c9ae08e773aa9c697bf3"},
469
+ {file = "cffi-1.15.1-cp39-cp39-win32.whl", hash = "sha256:40f4774f5a9d4f5e344f31a32b5096977b5d48560c5592e2f3d2c4374bd543ee"},
470
+ {file = "cffi-1.15.1-cp39-cp39-win_amd64.whl", hash = "sha256:70df4e3b545a17496c9b3f41f5115e69a4f2e77e94e1d2a8e1070bc0c38c8a3c"},
471
+ {file = "cffi-1.15.1.tar.gz", hash = "sha256:d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9"},
472
+ ]
473
+
474
+ [package.dependencies]
475
+ pycparser = "*"
476
+
477
  [[package]]
478
  name = "charset-normalizer"
479
  version = "3.1.0"
 
583
  {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"},
584
  ]
585
 
586
+ [[package]]
587
+ name = "comm"
588
+ version = "0.1.3"
589
+ description = "Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc."
590
+ optional = false
591
+ python-versions = ">=3.6"
592
+ files = [
593
+ {file = "comm-0.1.3-py3-none-any.whl", hash = "sha256:16613c6211e20223f215fc6d3b266a247b6e2641bf4e0a3ad34cb1aff2aa3f37"},
594
+ {file = "comm-0.1.3.tar.gz", hash = "sha256:a61efa9daffcfbe66fd643ba966f846a624e4e6d6767eda9cf6e993aadaab93e"},
595
+ ]
596
+
597
+ [package.dependencies]
598
+ traitlets = ">=5.3"
599
+
600
+ [package.extras]
601
+ lint = ["black (>=22.6.0)", "mdformat (>0.7)", "mdformat-gfm (>=0.3.5)", "ruff (>=0.0.156)"]
602
+ test = ["pytest"]
603
+ typing = ["mypy (>=0.990)"]
604
+
605
  [[package]]
606
  name = "dataclasses-json"
607
  version = "0.5.8"
 
621
  [package.extras]
622
  dev = ["flake8", "hypothesis", "ipython", "mypy (>=0.710)", "portray", "pytest (>=7.2.0)", "simplejson", "types-dataclasses"]
623
 
624
+ [[package]]
625
+ name = "debugpy"
626
+ version = "1.6.7"
627
+ description = "An implementation of the Debug Adapter Protocol for Python"
628
+ optional = false
629
+ python-versions = ">=3.7"
630
+ files = [
631
+ {file = "debugpy-1.6.7-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:b3e7ac809b991006ad7f857f016fa92014445085711ef111fdc3f74f66144096"},
632
+ {file = "debugpy-1.6.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e3876611d114a18aafef6383695dfc3f1217c98a9168c1aaf1a02b01ec7d8d1e"},
633
+ {file = "debugpy-1.6.7-cp310-cp310-win32.whl", hash = "sha256:33edb4afa85c098c24cc361d72ba7c21bb92f501104514d4ffec1fb36e09c01a"},
634
+ {file = "debugpy-1.6.7-cp310-cp310-win_amd64.whl", hash = "sha256:ed6d5413474e209ba50b1a75b2d9eecf64d41e6e4501977991cdc755dc83ab0f"},
635
+ {file = "debugpy-1.6.7-cp37-cp37m-macosx_10_15_x86_64.whl", hash = "sha256:38ed626353e7c63f4b11efad659be04c23de2b0d15efff77b60e4740ea685d07"},
636
+ {file = "debugpy-1.6.7-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:279d64c408c60431c8ee832dfd9ace7c396984fd7341fa3116aee414e7dcd88d"},
637
+ {file = "debugpy-1.6.7-cp37-cp37m-win32.whl", hash = "sha256:dbe04e7568aa69361a5b4c47b4493d5680bfa3a911d1e105fbea1b1f23f3eb45"},
638
+ {file = "debugpy-1.6.7-cp37-cp37m-win_amd64.whl", hash = "sha256:f90a2d4ad9a035cee7331c06a4cf2245e38bd7c89554fe3b616d90ab8aab89cc"},
639
+ {file = "debugpy-1.6.7-cp38-cp38-macosx_10_15_x86_64.whl", hash = "sha256:5224eabbbeddcf1943d4e2821876f3e5d7d383f27390b82da5d9558fd4eb30a9"},
640
+ {file = "debugpy-1.6.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bae1123dff5bfe548ba1683eb972329ba6d646c3a80e6b4c06cd1b1dd0205e9b"},
641
+ {file = "debugpy-1.6.7-cp38-cp38-win32.whl", hash = "sha256:9cd10cf338e0907fdcf9eac9087faa30f150ef5445af5a545d307055141dd7a4"},
642
+ {file = "debugpy-1.6.7-cp38-cp38-win_amd64.whl", hash = "sha256:aaf6da50377ff4056c8ed470da24632b42e4087bc826845daad7af211e00faad"},
643
+ {file = "debugpy-1.6.7-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:0679b7e1e3523bd7d7869447ec67b59728675aadfc038550a63a362b63029d2c"},
644
+ {file = "debugpy-1.6.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:de86029696e1b3b4d0d49076b9eba606c226e33ae312a57a46dca14ff370894d"},
645
+ {file = "debugpy-1.6.7-cp39-cp39-win32.whl", hash = "sha256:d71b31117779d9a90b745720c0eab54ae1da76d5b38c8026c654f4a066b0130a"},
646
+ {file = "debugpy-1.6.7-cp39-cp39-win_amd64.whl", hash = "sha256:c0ff93ae90a03b06d85b2c529eca51ab15457868a377c4cc40a23ab0e4e552a3"},
647
+ {file = "debugpy-1.6.7-py2.py3-none-any.whl", hash = "sha256:53f7a456bc50706a0eaabecf2d3ce44c4d5010e46dfc65b6b81a518b42866267"},
648
+ {file = "debugpy-1.6.7.zip", hash = "sha256:c4c2f0810fa25323abfdfa36cbbbb24e5c3b1a42cb762782de64439c575d67f2"},
649
+ ]
650
+
651
  [[package]]
652
  name = "decorator"
653
  version = "5.1.1"
 
659
  {file = "decorator-5.1.1.tar.gz", hash = "sha256:637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330"},
660
  ]
661
 
662
+ [[package]]
663
+ name = "defusedxml"
664
+ version = "0.7.1"
665
+ description = "XML bomb protection for Python stdlib modules"
666
+ optional = false
667
+ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
668
+ files = [
669
+ {file = "defusedxml-0.7.1-py2.py3-none-any.whl", hash = "sha256:a352e7e428770286cc899e2542b6cdaedb2b4953ff269a210103ec58f6198a61"},
670
+ {file = "defusedxml-0.7.1.tar.gz", hash = "sha256:1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69"},
671
+ ]
672
+
673
  [[package]]
674
  name = "dnspython"
675
  version = "2.3.0"
 
690
  trio = ["trio (>=0.14,<0.23)"]
691
  wmi = ["wmi (>=1.5.1,<2.0.0)"]
692
 
693
+ [[package]]
694
+ name = "exceptiongroup"
695
+ version = "1.1.1"
696
+ description = "Backport of PEP 654 (exception groups)"
697
+ optional = false
698
+ python-versions = ">=3.7"
699
+ files = [
700
+ {file = "exceptiongroup-1.1.1-py3-none-any.whl", hash = "sha256:232c37c63e4f682982c8b6459f33a8981039e5fb8756b2074364e5055c498c9e"},
701
+ {file = "exceptiongroup-1.1.1.tar.gz", hash = "sha256:d484c3090ba2889ae2928419117447a14daf3c1231d5e30d0aae34f354f01785"},
702
+ ]
703
+
704
+ [package.extras]
705
+ test = ["pytest (>=6)"]
706
+
707
+ [[package]]
708
+ name = "executing"
709
+ version = "1.2.0"
710
+ description = "Get the currently executing AST node of a frame, and other information"
711
+ optional = false
712
+ python-versions = "*"
713
+ files = [
714
+ {file = "executing-1.2.0-py2.py3-none-any.whl", hash = "sha256:0314a69e37426e3608aada02473b4161d4caf5a4b244d1d0c48072b8fee7bacc"},
715
+ {file = "executing-1.2.0.tar.gz", hash = "sha256:19da64c18d2d851112f09c287f8d3dbbdf725ab0e569077efb6cdcbd3497c107"},
716
+ ]
717
+
718
+ [package.extras]
719
+ tests = ["asttokens", "littleutils", "pytest", "rich"]
720
+
721
+ [[package]]
722
+ name = "fastjsonschema"
723
+ version = "2.17.1"
724
+ description = "Fastest Python implementation of JSON schema"
725
+ optional = false
726
+ python-versions = "*"
727
+ files = [
728
+ {file = "fastjsonschema-2.17.1-py3-none-any.whl", hash = "sha256:4b90b252628ca695280924d863fe37234eebadc29c5360d322571233dc9746e0"},
729
+ {file = "fastjsonschema-2.17.1.tar.gz", hash = "sha256:f4eeb8a77cef54861dbf7424ac8ce71306f12cbb086c45131bcba2c6a4f726e3"},
730
+ ]
731
+
732
+ [package.extras]
733
+ devel = ["colorama", "json-spec", "jsonschema", "pylint", "pytest", "pytest-benchmark", "pytest-cache", "validictory"]
734
+
735
+ [[package]]
736
+ name = "fqdn"
737
+ version = "1.5.1"
738
+ description = "Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers"
739
+ optional = false
740
+ python-versions = ">=2.7, !=3.0, !=3.1, !=3.2, !=3.3, !=3.4, <4"
741
+ files = [
742
+ {file = "fqdn-1.5.1-py3-none-any.whl", hash = "sha256:3a179af3761e4df6eb2e026ff9e1a3033d3587bf980a0b1b2e1e5d08d7358014"},
743
+ {file = "fqdn-1.5.1.tar.gz", hash = "sha256:105ed3677e767fb5ca086a0c1f4bb66ebc3c100be518f0e0d755d9eae164d89f"},
744
+ ]
745
+
746
  [[package]]
747
  name = "frozenlist"
748
  version = "1.3.3"
 
957
  perf = ["ipython"]
958
  testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)", "pytest-ruff"]
959
 
960
+ [[package]]
961
+ name = "ipykernel"
962
+ version = "6.23.3"
963
+ description = "IPython Kernel for Jupyter"
964
+ optional = false
965
+ python-versions = ">=3.8"
966
+ files = [
967
+ {file = "ipykernel-6.23.3-py3-none-any.whl", hash = "sha256:bc00662dc44d4975b668cdb5fefb725e38e9d8d6e28441a519d043f38994922d"},
968
+ {file = "ipykernel-6.23.3.tar.gz", hash = "sha256:dd4e18116357f36a1e459b3768412371bee764c51844cbf25c4ed1eb9cae4a54"},
969
+ ]
970
+
971
+ [package.dependencies]
972
+ appnope = {version = "*", markers = "platform_system == \"Darwin\""}
973
+ comm = ">=0.1.1"
974
+ debugpy = ">=1.6.5"
975
+ ipython = ">=7.23.1"
976
+ jupyter-client = ">=6.1.12"
977
+ jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0"
978
+ matplotlib-inline = ">=0.1"
979
+ nest-asyncio = "*"
980
+ packaging = "*"
981
+ psutil = "*"
982
+ pyzmq = ">=20"
983
+ tornado = ">=6.1"
984
+ traitlets = ">=5.4.0"
985
+
986
+ [package.extras]
987
+ cov = ["coverage[toml]", "curio", "matplotlib", "pytest-cov", "trio"]
988
+ docs = ["myst-parser", "pydata-sphinx-theme", "sphinx", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling", "trio"]
989
+ pyqt5 = ["pyqt5"]
990
+ pyside6 = ["pyside6"]
991
+ test = ["flaky", "ipyparallel", "pre-commit", "pytest (>=7.0)", "pytest-asyncio", "pytest-cov", "pytest-timeout"]
992
+
993
+ [[package]]
994
+ name = "ipython"
995
+ version = "8.14.0"
996
+ description = "IPython: Productive Interactive Computing"
997
+ optional = false
998
+ python-versions = ">=3.9"
999
+ files = [
1000
+ {file = "ipython-8.14.0-py3-none-any.whl", hash = "sha256:248aca623f5c99a6635bc3857677b7320b9b8039f99f070ee0d20a5ca5a8e6bf"},
1001
+ {file = "ipython-8.14.0.tar.gz", hash = "sha256:1d197b907b6ba441b692c48cf2a3a2de280dc0ac91a3405b39349a50272ca0a1"},
1002
+ ]
1003
+
1004
+ [package.dependencies]
1005
+ appnope = {version = "*", markers = "sys_platform == \"darwin\""}
1006
+ backcall = "*"
1007
+ colorama = {version = "*", markers = "sys_platform == \"win32\""}
1008
+ decorator = "*"
1009
+ jedi = ">=0.16"
1010
+ matplotlib-inline = "*"
1011
+ pexpect = {version = ">4.3", markers = "sys_platform != \"win32\""}
1012
+ pickleshare = "*"
1013
+ prompt-toolkit = ">=3.0.30,<3.0.37 || >3.0.37,<3.1.0"
1014
+ pygments = ">=2.4.0"
1015
+ stack-data = "*"
1016
+ traitlets = ">=5"
1017
+ typing-extensions = {version = "*", markers = "python_version < \"3.10\""}
1018
+
1019
+ [package.extras]
1020
+ all = ["black", "curio", "docrepr", "ipykernel", "ipyparallel", "ipywidgets", "matplotlib", "matplotlib (!=3.2.0)", "nbconvert", "nbformat", "notebook", "numpy (>=1.21)", "pandas", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "qtconsole", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "trio", "typing-extensions"]
1021
+ black = ["black"]
1022
+ doc = ["docrepr", "ipykernel", "matplotlib", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "typing-extensions"]
1023
+ kernel = ["ipykernel"]
1024
+ nbconvert = ["nbconvert"]
1025
+ nbformat = ["nbformat"]
1026
+ notebook = ["ipywidgets", "notebook"]
1027
+ parallel = ["ipyparallel"]
1028
+ qtconsole = ["qtconsole"]
1029
+ test = ["pytest (<7.1)", "pytest-asyncio", "testpath"]
1030
+ test-extra = ["curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.21)", "pandas", "pytest (<7.1)", "pytest-asyncio", "testpath", "trio"]
1031
+
1032
+ [[package]]
1033
+ name = "isoduration"
1034
+ version = "20.11.0"
1035
+ description = "Operations with ISO 8601 durations"
1036
+ optional = false
1037
+ python-versions = ">=3.7"
1038
+ files = [
1039
+ {file = "isoduration-20.11.0-py3-none-any.whl", hash = "sha256:b2904c2a4228c3d44f409c8ae8e2370eb21a26f7ac2ec5446df141dde3452042"},
1040
+ {file = "isoduration-20.11.0.tar.gz", hash = "sha256:ac2f9015137935279eac671f94f89eb00584f940f5dc49462a0c4ee692ba1bd9"},
1041
+ ]
1042
+
1043
+ [package.dependencies]
1044
+ arrow = ">=0.15.0"
1045
+
1046
+ [[package]]
1047
+ name = "jedi"
1048
+ version = "0.18.2"
1049
+ description = "An autocompletion tool for Python that can be used for text editors."
1050
+ optional = false
1051
+ python-versions = ">=3.6"
1052
+ files = [
1053
+ {file = "jedi-0.18.2-py2.py3-none-any.whl", hash = "sha256:203c1fd9d969ab8f2119ec0a3342e0b49910045abe6af0a3ae83a5764d54639e"},
1054
+ {file = "jedi-0.18.2.tar.gz", hash = "sha256:bae794c30d07f6d910d32a7048af09b5a39ed740918da923c6b780790ebac612"},
1055
+ ]
1056
+
1057
+ [package.dependencies]
1058
+ parso = ">=0.8.0,<0.9.0"
1059
+
1060
+ [package.extras]
1061
+ docs = ["Jinja2 (==2.11.3)", "MarkupSafe (==1.1.1)", "Pygments (==2.8.1)", "alabaster (==0.7.12)", "babel (==2.9.1)", "chardet (==4.0.0)", "commonmark (==0.8.1)", "docutils (==0.17.1)", "future (==0.18.2)", "idna (==2.10)", "imagesize (==1.2.0)", "mock (==1.0.1)", "packaging (==20.9)", "pyparsing (==2.4.7)", "pytz (==2021.1)", "readthedocs-sphinx-ext (==2.1.4)", "recommonmark (==0.5.0)", "requests (==2.25.1)", "six (==1.15.0)", "snowballstemmer (==2.1.0)", "sphinx (==1.8.5)", "sphinx-rtd-theme (==0.4.3)", "sphinxcontrib-serializinghtml (==1.1.4)", "sphinxcontrib-websupport (==1.2.4)", "urllib3 (==1.26.4)"]
1062
+ qa = ["flake8 (==3.8.3)", "mypy (==0.782)"]
1063
+ testing = ["Django (<3.1)", "attrs", "colorama", "docopt", "pytest (<7.0.0)"]
1064
+
1065
  [[package]]
1066
  name = "jinja2"
1067
  version = "3.1.2"
 
1079
  [package.extras]
1080
  i18n = ["Babel (>=2.7)"]
1081
 
1082
+ [[package]]
1083
+ name = "json5"
1084
+ version = "0.9.14"
1085
+ description = "A Python implementation of the JSON5 data format."
1086
+ optional = false
1087
+ python-versions = "*"
1088
+ files = [
1089
+ {file = "json5-0.9.14-py2.py3-none-any.whl", hash = "sha256:740c7f1b9e584a468dbb2939d8d458db3427f2c93ae2139d05f47e453eae964f"},
1090
+ {file = "json5-0.9.14.tar.gz", hash = "sha256:9ed66c3a6ca3510a976a9ef9b8c0787de24802724ab1860bc0153c7fdd589b02"},
1091
+ ]
1092
+
1093
+ [package.extras]
1094
+ dev = ["hypothesis"]
1095
+
1096
+ [[package]]
1097
+ name = "jsonpointer"
1098
+ version = "2.4"
1099
+ description = "Identify specific nodes in a JSON document (RFC 6901)"
1100
+ optional = false
1101
+ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, !=3.6.*"
1102
+ files = [
1103
+ {file = "jsonpointer-2.4-py2.py3-none-any.whl", hash = "sha256:15d51bba20eea3165644553647711d150376234112651b4f1811022aecad7d7a"},
1104
+ ]
1105
+
1106
  [[package]]
1107
  name = "jsonschema"
1108
  version = "4.17.3"
 
1116
 
1117
  [package.dependencies]
1118
  attrs = ">=17.4.0"
1119
+ fqdn = {version = "*", optional = true, markers = "extra == \"format-nongpl\""}
1120
+ idna = {version = "*", optional = true, markers = "extra == \"format-nongpl\""}
1121
+ isoduration = {version = "*", optional = true, markers = "extra == \"format-nongpl\""}
1122
+ jsonpointer = {version = ">1.13", optional = true, markers = "extra == \"format-nongpl\""}
1123
  pyrsistent = ">=0.14.0,<0.17.0 || >0.17.0,<0.17.1 || >0.17.1,<0.17.2 || >0.17.2"
1124
+ rfc3339-validator = {version = "*", optional = true, markers = "extra == \"format-nongpl\""}
1125
+ rfc3986-validator = {version = ">0.1.0", optional = true, markers = "extra == \"format-nongpl\""}
1126
+ uri-template = {version = "*", optional = true, markers = "extra == \"format-nongpl\""}
1127
+ webcolors = {version = ">=1.11", optional = true, markers = "extra == \"format-nongpl\""}
1128
 
1129
  [package.extras]
1130
  format = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3987", "uri-template", "webcolors (>=1.11)"]
1131
  format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3986-validator (>0.1.0)", "uri-template", "webcolors (>=1.11)"]
1132
 
1133
+ [[package]]
1134
+ name = "jupyter-client"
1135
+ version = "8.3.0"
1136
+ description = "Jupyter protocol implementation and client libraries"
1137
+ optional = false
1138
+ python-versions = ">=3.8"
1139
+ files = [
1140
+ {file = "jupyter_client-8.3.0-py3-none-any.whl", hash = "sha256:7441af0c0672edc5d28035e92ba5e32fadcfa8a4e608a434c228836a89df6158"},
1141
+ {file = "jupyter_client-8.3.0.tar.gz", hash = "sha256:3af69921fe99617be1670399a0b857ad67275eefcfa291e2c81a160b7b650f5f"},
1142
+ ]
1143
+
1144
+ [package.dependencies]
1145
+ importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""}
1146
+ jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0"
1147
+ python-dateutil = ">=2.8.2"
1148
+ pyzmq = ">=23.0"
1149
+ tornado = ">=6.2"
1150
+ traitlets = ">=5.3"
1151
+
1152
+ [package.extras]
1153
+ docs = ["ipykernel", "myst-parser", "pydata-sphinx-theme", "sphinx (>=4)", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"]
1154
+ test = ["coverage", "ipykernel (>=6.14)", "mypy", "paramiko", "pre-commit", "pytest", "pytest-cov", "pytest-jupyter[client] (>=0.4.1)", "pytest-timeout"]
1155
+
1156
+ [[package]]
1157
+ name = "jupyter-core"
1158
+ version = "5.3.1"
1159
+ description = "Jupyter core package. A base package on which Jupyter projects rely."
1160
+ optional = false
1161
+ python-versions = ">=3.8"
1162
+ files = [
1163
+ {file = "jupyter_core-5.3.1-py3-none-any.whl", hash = "sha256:ae9036db959a71ec1cac33081eeb040a79e681f08ab68b0883e9a676c7a90dce"},
1164
+ {file = "jupyter_core-5.3.1.tar.gz", hash = "sha256:5ba5c7938a7f97a6b0481463f7ff0dbac7c15ba48cf46fa4035ca6e838aa1aba"},
1165
+ ]
1166
+
1167
+ [package.dependencies]
1168
+ platformdirs = ">=2.5"
1169
+ pywin32 = {version = ">=300", markers = "sys_platform == \"win32\" and platform_python_implementation != \"PyPy\""}
1170
+ traitlets = ">=5.3"
1171
+
1172
+ [package.extras]
1173
+ docs = ["myst-parser", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-spelling", "traitlets"]
1174
+ test = ["ipykernel", "pre-commit", "pytest", "pytest-cov", "pytest-timeout"]
1175
+
1176
+ [[package]]
1177
+ name = "jupyter-events"
1178
+ version = "0.6.3"
1179
+ description = "Jupyter Event System library"
1180
+ optional = false
1181
+ python-versions = ">=3.7"
1182
+ files = [
1183
+ {file = "jupyter_events-0.6.3-py3-none-any.whl", hash = "sha256:57a2749f87ba387cd1bfd9b22a0875b889237dbf2edc2121ebb22bde47036c17"},
1184
+ {file = "jupyter_events-0.6.3.tar.gz", hash = "sha256:9a6e9995f75d1b7146b436ea24d696ce3a35bfa8bfe45e0c33c334c79464d0b3"},
1185
+ ]
1186
+
1187
+ [package.dependencies]
1188
+ jsonschema = {version = ">=3.2.0", extras = ["format-nongpl"]}
1189
+ python-json-logger = ">=2.0.4"
1190
+ pyyaml = ">=5.3"
1191
+ rfc3339-validator = "*"
1192
+ rfc3986-validator = ">=0.1.1"
1193
+ traitlets = ">=5.3"
1194
+
1195
+ [package.extras]
1196
+ cli = ["click", "rich"]
1197
+ docs = ["jupyterlite-sphinx", "myst-parser", "pydata-sphinx-theme", "sphinxcontrib-spelling"]
1198
+ test = ["click", "coverage", "pre-commit", "pytest (>=7.0)", "pytest-asyncio (>=0.19.0)", "pytest-console-scripts", "pytest-cov", "rich"]
1199
+
1200
+ [[package]]
1201
+ name = "jupyter-lsp"
1202
+ version = "2.2.0"
1203
+ description = "Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server"
1204
+ optional = false
1205
+ python-versions = ">=3.8"
1206
+ files = [
1207
+ {file = "jupyter-lsp-2.2.0.tar.gz", hash = "sha256:8ebbcb533adb41e5d635eb8fe82956b0aafbf0fd443b6c4bfa906edeeb8635a1"},
1208
+ {file = "jupyter_lsp-2.2.0-py3-none-any.whl", hash = "sha256:9e06b8b4f7dd50300b70dd1a78c0c3b0c3d8fa68e0f2d8a5d1fbab62072aca3f"},
1209
+ ]
1210
+
1211
+ [package.dependencies]
1212
+ importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""}
1213
+ jupyter-server = ">=1.1.2"
1214
+
1215
+ [[package]]
1216
+ name = "jupyter-server"
1217
+ version = "2.6.0"
1218
+ description = "The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications."
1219
+ optional = false
1220
+ python-versions = ">=3.8"
1221
+ files = [
1222
+ {file = "jupyter_server-2.6.0-py3-none-any.whl", hash = "sha256:19525a1515b5999618a91b3e99ec9f6869aa8c5ba73e0b6279fcda918b54ba36"},
1223
+ {file = "jupyter_server-2.6.0.tar.gz", hash = "sha256:ae4af349f030ed08dd78cb7ac1a03a92d886000380c9ea6283f3c542a81f4b06"},
1224
+ ]
1225
+
1226
+ [package.dependencies]
1227
+ anyio = ">=3.1.0"
1228
+ argon2-cffi = "*"
1229
+ jinja2 = "*"
1230
+ jupyter-client = ">=7.4.4"
1231
+ jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0"
1232
+ jupyter-events = ">=0.6.0"
1233
+ jupyter-server-terminals = "*"
1234
+ nbconvert = ">=6.4.4"
1235
+ nbformat = ">=5.3.0"
1236
+ overrides = "*"
1237
+ packaging = "*"
1238
+ prometheus-client = "*"
1239
+ pywinpty = {version = "*", markers = "os_name == \"nt\""}
1240
+ pyzmq = ">=24"
1241
+ send2trash = "*"
1242
+ terminado = ">=0.8.3"
1243
+ tornado = ">=6.2.0"
1244
+ traitlets = ">=5.6.0"
1245
+ websocket-client = "*"
1246
+
1247
+ [package.extras]
1248
+ docs = ["ipykernel", "jinja2", "jupyter-client", "jupyter-server", "myst-parser", "nbformat", "prometheus-client", "pydata-sphinx-theme", "send2trash", "sphinx-autodoc-typehints", "sphinxcontrib-github-alt", "sphinxcontrib-openapi (>=0.8.0)", "sphinxcontrib-spelling", "sphinxemoji", "tornado", "typing-extensions"]
1249
+ test = ["ipykernel", "pre-commit", "pytest (>=7.0)", "pytest-console-scripts", "pytest-jupyter[server] (>=0.4)", "pytest-timeout", "requests"]
1250
+
1251
+ [[package]]
1252
+ name = "jupyter-server-terminals"
1253
+ version = "0.4.4"
1254
+ description = "A Jupyter Server Extension Providing Terminals."
1255
+ optional = false
1256
+ python-versions = ">=3.8"
1257
+ files = [
1258
+ {file = "jupyter_server_terminals-0.4.4-py3-none-any.whl", hash = "sha256:75779164661cec02a8758a5311e18bb8eb70c4e86c6b699403100f1585a12a36"},
1259
+ {file = "jupyter_server_terminals-0.4.4.tar.gz", hash = "sha256:57ab779797c25a7ba68e97bcfb5d7740f2b5e8a83b5e8102b10438041a7eac5d"},
1260
+ ]
1261
+
1262
+ [package.dependencies]
1263
+ pywinpty = {version = ">=2.0.3", markers = "os_name == \"nt\""}
1264
+ terminado = ">=0.8.3"
1265
+
1266
+ [package.extras]
1267
+ docs = ["jinja2", "jupyter-server", "mistune (<3.0)", "myst-parser", "nbformat", "packaging", "pydata-sphinx-theme", "sphinxcontrib-github-alt", "sphinxcontrib-openapi", "sphinxcontrib-spelling", "sphinxemoji", "tornado"]
1268
+ test = ["coverage", "jupyter-server (>=2.0.0)", "pytest (>=7.0)", "pytest-cov", "pytest-jupyter[server] (>=0.5.3)", "pytest-timeout"]
1269
+
1270
+ [[package]]
1271
+ name = "jupyterlab"
1272
+ version = "4.0.2"
1273
+ description = "JupyterLab computational environment"
1274
+ optional = false
1275
+ python-versions = ">=3.8"
1276
+ files = [
1277
+ {file = "jupyterlab-4.0.2-py3-none-any.whl", hash = "sha256:201b4f729a7dc5e22ca6c4dd8944cde792f1cb008d7c6b821e0a48d2502205c8"},
1278
+ {file = "jupyterlab-4.0.2.tar.gz", hash = "sha256:0a77898aebb55da391e5f57022774c089fb075e98803ff3d514a79b727dc934d"},
1279
+ ]
1280
+
1281
+ [package.dependencies]
1282
+ async-lru = ">=1.0.0"
1283
+ importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""}
1284
+ ipykernel = "*"
1285
+ jinja2 = ">=3.0.3"
1286
+ jupyter-core = "*"
1287
+ jupyter-lsp = ">=2.0.0"
1288
+ jupyter-server = ">=2.4.0,<3"
1289
+ jupyterlab-server = ">=2.19.0,<3"
1290
+ notebook-shim = ">=0.2"
1291
+ packaging = "*"
1292
+ tomli = {version = "*", markers = "python_version < \"3.11\""}
1293
+ tornado = ">=6.2.0"
1294
+ traitlets = "*"
1295
+
1296
+ [package.extras]
1297
+ dev = ["black[jupyter] (==23.3.0)", "build", "bump2version", "coverage", "hatch", "pre-commit", "pytest-cov", "ruff (==0.0.271)"]
1298
+ docs = ["jsx-lexer", "myst-parser", "pydata-sphinx-theme (>=0.13.0)", "pytest", "pytest-check-links", "pytest-tornasync", "sphinx (>=1.8)", "sphinx-copybutton"]
1299
+ docs-screenshots = ["altair (==5.0.1)", "ipython (==8.14.0)", "ipywidgets (==8.0.6)", "jupyterlab-geojson (==3.4.0)", "jupyterlab-language-pack-zh-cn (==4.0.post0)", "matplotlib (==3.7.1)", "nbconvert (>=7.0.0)", "pandas (==2.0.2)", "scipy (==1.10.1)", "vega-datasets (==0.9.0)"]
1300
+ test = ["coverage", "pytest (>=7.0)", "pytest-check-links (>=0.7)", "pytest-console-scripts", "pytest-cov", "pytest-jupyter (>=0.5.3)", "pytest-timeout", "pytest-tornasync", "requests", "requests-cache", "virtualenv"]
1301
+
1302
+ [[package]]
1303
+ name = "jupyterlab-pygments"
1304
+ version = "0.2.2"
1305
+ description = "Pygments theme using JupyterLab CSS variables"
1306
+ optional = false
1307
+ python-versions = ">=3.7"
1308
+ files = [
1309
+ {file = "jupyterlab_pygments-0.2.2-py2.py3-none-any.whl", hash = "sha256:2405800db07c9f770863bcf8049a529c3dd4d3e28536638bd7c1c01d2748309f"},
1310
+ {file = "jupyterlab_pygments-0.2.2.tar.gz", hash = "sha256:7405d7fde60819d905a9fa8ce89e4cd830e318cdad22a0030f7a901da705585d"},
1311
+ ]
1312
+
1313
+ [[package]]
1314
+ name = "jupyterlab-server"
1315
+ version = "2.23.0"
1316
+ description = "A set of server components for JupyterLab and JupyterLab like applications."
1317
+ optional = false
1318
+ python-versions = ">=3.7"
1319
+ files = [
1320
+ {file = "jupyterlab_server-2.23.0-py3-none-any.whl", hash = "sha256:a5ea2c839336a8ba7c38c8e7b2f24cedf919f0d439f4d2e606d9322013a95788"},
1321
+ {file = "jupyterlab_server-2.23.0.tar.gz", hash = "sha256:83c01aa4ad9451cd61b383e634d939ff713850f4640c0056b2cdb2b6211a74c7"},
1322
+ ]
1323
+
1324
+ [package.dependencies]
1325
+ babel = ">=2.10"
1326
+ importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""}
1327
+ jinja2 = ">=3.0.3"
1328
+ json5 = ">=0.9.0"
1329
+ jsonschema = ">=4.17.3"
1330
+ jupyter-server = ">=1.21,<3"
1331
+ packaging = ">=21.3"
1332
+ requests = ">=2.28"
1333
+
1334
+ [package.extras]
1335
+ docs = ["autodoc-traits", "jinja2 (<3.2.0)", "mistune (<4)", "myst-parser", "pydata-sphinx-theme", "sphinx", "sphinx-copybutton", "sphinxcontrib-openapi (>0.8)"]
1336
+ openapi = ["openapi-core (>=0.16.1,<0.17.0)", "ruamel-yaml"]
1337
+ test = ["hatch", "ipykernel", "jupyterlab-server[openapi]", "openapi-spec-validator (>=0.5.1,<0.6.0)", "pytest (>=7.0)", "pytest-console-scripts", "pytest-cov", "pytest-jupyter[server] (>=0.6.2)", "pytest-timeout", "requests-mock", "sphinxcontrib-spelling", "strict-rfc3339", "werkzeug"]
1338
+
1339
  [[package]]
1340
  name = "langchain"
1341
  version = "0.0.213"
 
1525
  [package.dependencies]
1526
  marshmallow = ">=2.0.0"
1527
 
1528
+ [[package]]
1529
+ name = "matplotlib-inline"
1530
+ version = "0.1.6"
1531
+ description = "Inline Matplotlib backend for Jupyter"
1532
+ optional = false
1533
+ python-versions = ">=3.5"
1534
+ files = [
1535
+ {file = "matplotlib-inline-0.1.6.tar.gz", hash = "sha256:f887e5f10ba98e8d2b150ddcf4702c1e5f8b3a20005eb0f74bfdbd360ee6f304"},
1536
+ {file = "matplotlib_inline-0.1.6-py3-none-any.whl", hash = "sha256:f1f41aab5328aa5aaea9b16d083b128102f8712542f819fe7e6a420ff581b311"},
1537
+ ]
1538
+
1539
+ [package.dependencies]
1540
+ traitlets = "*"
1541
+
1542
  [[package]]
1543
  name = "mdurl"
1544
  version = "0.1.2"
 
1550
  {file = "mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba"},
1551
  ]
1552
 
1553
+ [[package]]
1554
+ name = "mistune"
1555
+ version = "3.0.1"
1556
+ description = "A sane and fast Markdown parser with useful plugins and renderers"
1557
+ optional = false
1558
+ python-versions = ">=3.7"
1559
+ files = [
1560
+ {file = "mistune-3.0.1-py3-none-any.whl", hash = "sha256:b9b3e438efbb57c62b5beb5e134dab664800bdf1284a7ee09e8b12b13eb1aac6"},
1561
+ {file = "mistune-3.0.1.tar.gz", hash = "sha256:e912116c13aa0944f9dc530db38eb88f6a77087ab128f49f84a48f4c05ea163c"},
1562
+ ]
1563
+
1564
  [[package]]
1565
  name = "multidict"
1566
  version = "6.0.4"
 
1645
  ]
1646
 
1647
  [[package]]
1648
+ name = "mypy-extensions"
1649
+ version = "1.0.0"
1650
+ description = "Type system extensions for programs checked with the mypy type checker."
1651
+ optional = false
1652
+ python-versions = ">=3.5"
1653
+ files = [
1654
+ {file = "mypy_extensions-1.0.0-py3-none-any.whl", hash = "sha256:4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d"},
1655
+ {file = "mypy_extensions-1.0.0.tar.gz", hash = "sha256:75dbf8955dc00442a438fc4d0666508a9a97b6bd41aa2f0ffe9d2f2725af0782"},
1656
+ ]
1657
+
1658
+ [[package]]
1659
+ name = "nbclient"
1660
+ version = "0.8.0"
1661
+ description = "A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor."
1662
+ optional = false
1663
+ python-versions = ">=3.8.0"
1664
+ files = [
1665
+ {file = "nbclient-0.8.0-py3-none-any.whl", hash = "sha256:25e861299e5303a0477568557c4045eccc7a34c17fc08e7959558707b9ebe548"},
1666
+ {file = "nbclient-0.8.0.tar.gz", hash = "sha256:f9b179cd4b2d7bca965f900a2ebf0db4a12ebff2f36a711cb66861e4ae158e55"},
1667
+ ]
1668
+
1669
+ [package.dependencies]
1670
+ jupyter-client = ">=6.1.12"
1671
+ jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0"
1672
+ nbformat = ">=5.1"
1673
+ traitlets = ">=5.4"
1674
+
1675
+ [package.extras]
1676
+ dev = ["pre-commit"]
1677
+ docs = ["autodoc-traits", "mock", "moto", "myst-parser", "nbclient[test]", "sphinx (>=1.7)", "sphinx-book-theme", "sphinxcontrib-spelling"]
1678
+ test = ["flaky", "ipykernel (>=6.19.3)", "ipython", "ipywidgets", "nbconvert (>=7.0.0)", "pytest (>=7.0)", "pytest-asyncio", "pytest-cov (>=4.0)", "testpath", "xmltodict"]
1679
+
1680
+ [[package]]
1681
+ name = "nbconvert"
1682
+ version = "7.6.0"
1683
+ description = "Converting Jupyter Notebooks"
1684
+ optional = false
1685
+ python-versions = ">=3.7"
1686
+ files = [
1687
+ {file = "nbconvert-7.6.0-py3-none-any.whl", hash = "sha256:5a445c6794b0791984bc5436608fe2c066cb43c83920c7bc91bde3b765e9a264"},
1688
+ {file = "nbconvert-7.6.0.tar.gz", hash = "sha256:24fcf27efdef2b51d7f090cc5ce5a9b178766a55be513c4ebab08c91899ab550"},
1689
+ ]
1690
+
1691
+ [package.dependencies]
1692
+ beautifulsoup4 = "*"
1693
+ bleach = "!=5.0.0"
1694
+ defusedxml = "*"
1695
+ importlib-metadata = {version = ">=3.6", markers = "python_version < \"3.10\""}
1696
+ jinja2 = ">=3.0"
1697
+ jupyter-core = ">=4.7"
1698
+ jupyterlab-pygments = "*"
1699
+ markupsafe = ">=2.0"
1700
+ mistune = ">=2.0.3,<4"
1701
+ nbclient = ">=0.5.0"
1702
+ nbformat = ">=5.7"
1703
+ packaging = "*"
1704
+ pandocfilters = ">=1.4.1"
1705
+ pygments = ">=2.4.1"
1706
+ tinycss2 = "*"
1707
+ traitlets = ">=5.1"
1708
+
1709
+ [package.extras]
1710
+ all = ["nbconvert[docs,qtpdf,serve,test,webpdf]"]
1711
+ docs = ["ipykernel", "ipython", "myst-parser", "nbsphinx (>=0.2.12)", "pydata-sphinx-theme", "sphinx (==5.0.2)", "sphinxcontrib-spelling"]
1712
+ qtpdf = ["nbconvert[qtpng]"]
1713
+ qtpng = ["pyqtwebengine (>=5.15)"]
1714
+ serve = ["tornado (>=6.1)"]
1715
+ test = ["ipykernel", "ipywidgets (>=7)", "pre-commit", "pytest", "pytest-dependency"]
1716
+ webpdf = ["pyppeteer (>=1,<1.1)"]
1717
+
1718
+ [[package]]
1719
+ name = "nbformat"
1720
+ version = "5.9.0"
1721
+ description = "The Jupyter Notebook format"
1722
+ optional = false
1723
+ python-versions = ">=3.8"
1724
+ files = [
1725
+ {file = "nbformat-5.9.0-py3-none-any.whl", hash = "sha256:8c8fa16d6d05062c26177754bfbfac22de644888e2ef69d27ad2a334cf2576e5"},
1726
+ {file = "nbformat-5.9.0.tar.gz", hash = "sha256:e98ebb6120c3efbafdee2a40af2a140cadee90bb06dd69a2a63d9551fcc7f976"},
1727
+ ]
1728
+
1729
+ [package.dependencies]
1730
+ fastjsonschema = "*"
1731
+ jsonschema = ">=2.6"
1732
+ jupyter-core = "*"
1733
+ traitlets = ">=5.1"
1734
+
1735
+ [package.extras]
1736
+ docs = ["myst-parser", "pydata-sphinx-theme", "sphinx", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"]
1737
+ test = ["pep440", "pre-commit", "pytest", "testpath"]
1738
+
1739
+ [[package]]
1740
+ name = "nest-asyncio"
1741
+ version = "1.5.6"
1742
+ description = "Patch asyncio to allow nested event loops"
1743
  optional = false
1744
  python-versions = ">=3.5"
1745
  files = [
1746
+ {file = "nest_asyncio-1.5.6-py3-none-any.whl", hash = "sha256:b9a953fb40dceaa587d109609098db21900182b16440652454a146cffb06e8b8"},
1747
+ {file = "nest_asyncio-1.5.6.tar.gz", hash = "sha256:d267cc1ff794403f7df692964d1d2a3fa9418ffea2a3f6859a439ff482fef290"},
1748
+ ]
1749
+
1750
+ [[package]]
1751
+ name = "notebook-shim"
1752
+ version = "0.2.3"
1753
+ description = "A shim layer for notebook traits and config"
1754
+ optional = false
1755
+ python-versions = ">=3.7"
1756
+ files = [
1757
+ {file = "notebook_shim-0.2.3-py3-none-any.whl", hash = "sha256:a83496a43341c1674b093bfcebf0fe8e74cbe7eda5fd2bbc56f8e39e1486c0c7"},
1758
+ {file = "notebook_shim-0.2.3.tar.gz", hash = "sha256:f69388ac283ae008cd506dda10d0288b09a017d822d5e8c7129a152cbd3ce7e9"},
1759
  ]
1760
 
1761
+ [package.dependencies]
1762
+ jupyter-server = ">=1.8,<3"
1763
+
1764
+ [package.extras]
1765
+ test = ["pytest", "pytest-console-scripts", "pytest-jupyter", "pytest-tornasync"]
1766
+
1767
  [[package]]
1768
  name = "numexpr"
1769
  version = "2.8.4"
 
1876
  [package.dependencies]
1877
  pydantic = ">=1.8.2"
1878
 
1879
+ [[package]]
1880
+ name = "overrides"
1881
+ version = "7.3.1"
1882
+ description = "A decorator to automatically detect mismatch when overriding a method."
1883
+ optional = false
1884
+ python-versions = ">=3.6"
1885
+ files = [
1886
+ {file = "overrides-7.3.1-py3-none-any.whl", hash = "sha256:6187d8710a935d09b0bcef8238301d6ee2569d2ac1ae0ec39a8c7924e27f58ca"},
1887
+ {file = "overrides-7.3.1.tar.gz", hash = "sha256:8b97c6c1e1681b78cbc9424b138d880f0803c2254c5ebaabdde57bb6c62093f2"},
1888
+ ]
1889
+
1890
  [[package]]
1891
  name = "packaging"
1892
  version = "23.1"
 
1965
  test = ["hypothesis (>=6.34.2)", "pytest (>=7.0.0)", "pytest-asyncio (>=0.17.0)", "pytest-xdist (>=2.2.0)"]
1966
  xml = ["lxml (>=4.6.3)"]
1967
 
1968
+ [[package]]
1969
+ name = "pandocfilters"
1970
+ version = "1.5.0"
1971
+ description = "Utilities for writing pandoc filters in python"
1972
+ optional = false
1973
+ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
1974
+ files = [
1975
+ {file = "pandocfilters-1.5.0-py2.py3-none-any.whl", hash = "sha256:33aae3f25fd1a026079f5d27bdd52496f0e0803b3469282162bafdcbdf6ef14f"},
1976
+ {file = "pandocfilters-1.5.0.tar.gz", hash = "sha256:0b679503337d233b4339a817bfc8c50064e2eff681314376a47cb582305a7a38"},
1977
+ ]
1978
+
1979
+ [[package]]
1980
+ name = "parso"
1981
+ version = "0.8.3"
1982
+ description = "A Python Parser"
1983
+ optional = false
1984
+ python-versions = ">=3.6"
1985
+ files = [
1986
+ {file = "parso-0.8.3-py2.py3-none-any.whl", hash = "sha256:c001d4636cd3aecdaf33cbb40aebb59b094be2a74c556778ef5576c175e19e75"},
1987
+ {file = "parso-0.8.3.tar.gz", hash = "sha256:8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0"},
1988
+ ]
1989
+
1990
+ [package.extras]
1991
+ qa = ["flake8 (==3.8.3)", "mypy (==0.782)"]
1992
+ testing = ["docopt", "pytest (<6.0.0)"]
1993
+
1994
+ [[package]]
1995
+ name = "pexpect"
1996
+ version = "4.8.0"
1997
+ description = "Pexpect allows easy control of interactive console applications."
1998
+ optional = false
1999
+ python-versions = "*"
2000
+ files = [
2001
+ {file = "pexpect-4.8.0-py2.py3-none-any.whl", hash = "sha256:0b48a55dcb3c05f3329815901ea4fc1537514d6ba867a152b581d69ae3710937"},
2002
+ {file = "pexpect-4.8.0.tar.gz", hash = "sha256:fc65a43959d153d0114afe13997d439c22823a27cefceb5ff35c2178c6784c0c"},
2003
+ ]
2004
+
2005
+ [package.dependencies]
2006
+ ptyprocess = ">=0.5"
2007
+
2008
+ [[package]]
2009
+ name = "pickleshare"
2010
+ version = "0.7.5"
2011
+ description = "Tiny 'shelve'-like database with concurrency support"
2012
+ optional = false
2013
+ python-versions = "*"
2014
+ files = [
2015
+ {file = "pickleshare-0.7.5-py2.py3-none-any.whl", hash = "sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56"},
2016
+ {file = "pickleshare-0.7.5.tar.gz", hash = "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca"},
2017
+ ]
2018
+
2019
  [[package]]
2020
  name = "pillow"
2021
  version = "9.5.0"
 
2120
  [package.extras]
2121
  grpc = ["googleapis-common-protos (>=1.53.0)", "grpc-gateway-protoc-gen-openapiv2 (==0.1.0)", "grpcio (>=1.44.0)", "lz4 (>=3.1.3)", "protobuf (>=3.19.5,<3.20.0)"]
2122
 
2123
+ [[package]]
2124
+ name = "platformdirs"
2125
+ version = "3.8.0"
2126
+ description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"."
2127
+ optional = false
2128
+ python-versions = ">=3.7"
2129
+ files = [
2130
+ {file = "platformdirs-3.8.0-py3-none-any.whl", hash = "sha256:ca9ed98ce73076ba72e092b23d3c93ea6c4e186b3f1c3dad6edd98ff6ffcca2e"},
2131
+ {file = "platformdirs-3.8.0.tar.gz", hash = "sha256:b0cabcb11063d21a0b261d557acb0a9d2126350e63b70cdf7db6347baea456dc"},
2132
+ ]
2133
+
2134
+ [package.extras]
2135
+ docs = ["furo (>=2023.5.20)", "proselint (>=0.13)", "sphinx (>=7.0.1)", "sphinx-autodoc-typehints (>=1.23,!=1.23.4)"]
2136
+ test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.3.1)", "pytest-cov (>=4.1)", "pytest-mock (>=3.10)"]
2137
+
2138
+ [[package]]
2139
+ name = "prometheus-client"
2140
+ version = "0.17.0"
2141
+ description = "Python client for the Prometheus monitoring system."
2142
+ optional = false
2143
+ python-versions = ">=3.6"
2144
+ files = [
2145
+ {file = "prometheus_client-0.17.0-py3-none-any.whl", hash = "sha256:a77b708cf083f4d1a3fb3ce5c95b4afa32b9c521ae363354a4a910204ea095ce"},
2146
+ {file = "prometheus_client-0.17.0.tar.gz", hash = "sha256:9c3b26f1535945e85b8934fb374678d263137b78ef85f305b1156c7c881cd11b"},
2147
+ ]
2148
+
2149
+ [package.extras]
2150
+ twisted = ["twisted"]
2151
+
2152
+ [[package]]
2153
+ name = "prompt-toolkit"
2154
+ version = "3.0.38"
2155
+ description = "Library for building powerful interactive command lines in Python"
2156
+ optional = false
2157
+ python-versions = ">=3.7.0"
2158
+ files = [
2159
+ {file = "prompt_toolkit-3.0.38-py3-none-any.whl", hash = "sha256:45ea77a2f7c60418850331366c81cf6b5b9cf4c7fd34616f733c5427e6abbb1f"},
2160
+ {file = "prompt_toolkit-3.0.38.tar.gz", hash = "sha256:23ac5d50538a9a38c8bde05fecb47d0b403ecd0662857a86f886f798563d5b9b"},
2161
+ ]
2162
+
2163
+ [package.dependencies]
2164
+ wcwidth = "*"
2165
+
2166
  [[package]]
2167
  name = "protobuf"
2168
  version = "4.23.3"
 
2185
  {file = "protobuf-4.23.3.tar.gz", hash = "sha256:7a92beb30600332a52cdadbedb40d33fd7c8a0d7f549c440347bc606fb3fe34b"},
2186
  ]
2187
 
2188
+ [[package]]
2189
+ name = "psutil"
2190
+ version = "5.9.5"
2191
+ description = "Cross-platform lib for process and system monitoring in Python."
2192
+ optional = false
2193
+ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
2194
+ files = [
2195
+ {file = "psutil-5.9.5-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:be8929ce4313f9f8146caad4272f6abb8bf99fc6cf59344a3167ecd74f4f203f"},
2196
+ {file = "psutil-5.9.5-cp27-cp27m-manylinux2010_i686.whl", hash = "sha256:ab8ed1a1d77c95453db1ae00a3f9c50227ebd955437bcf2a574ba8adbf6a74d5"},
2197
+ {file = "psutil-5.9.5-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:4aef137f3345082a3d3232187aeb4ac4ef959ba3d7c10c33dd73763fbc063da4"},
2198
+ {file = "psutil-5.9.5-cp27-cp27mu-manylinux2010_i686.whl", hash = "sha256:ea8518d152174e1249c4f2a1c89e3e6065941df2fa13a1ab45327716a23c2b48"},
2199
+ {file = "psutil-5.9.5-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:acf2aef9391710afded549ff602b5887d7a2349831ae4c26be7c807c0a39fac4"},
2200
+ {file = "psutil-5.9.5-cp27-none-win32.whl", hash = "sha256:5b9b8cb93f507e8dbaf22af6a2fd0ccbe8244bf30b1baad6b3954e935157ae3f"},
2201
+ {file = "psutil-5.9.5-cp27-none-win_amd64.whl", hash = "sha256:8c5f7c5a052d1d567db4ddd231a9d27a74e8e4a9c3f44b1032762bd7b9fdcd42"},
2202
+ {file = "psutil-5.9.5-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:3c6f686f4225553615612f6d9bc21f1c0e305f75d7d8454f9b46e901778e7217"},
2203
+ {file = "psutil-5.9.5-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7a7dd9997128a0d928ed4fb2c2d57e5102bb6089027939f3b722f3a210f9a8da"},
2204
+ {file = "psutil-5.9.5-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:89518112647f1276b03ca97b65cc7f64ca587b1eb0278383017c2a0dcc26cbe4"},
2205
+ {file = "psutil-5.9.5-cp36-abi3-win32.whl", hash = "sha256:104a5cc0e31baa2bcf67900be36acde157756b9c44017b86b2c049f11957887d"},
2206
+ {file = "psutil-5.9.5-cp36-abi3-win_amd64.whl", hash = "sha256:b258c0c1c9d145a1d5ceffab1134441c4c5113b2417fafff7315a917a026c3c9"},
2207
+ {file = "psutil-5.9.5-cp38-abi3-macosx_11_0_arm64.whl", hash = "sha256:c607bb3b57dc779d55e1554846352b4e358c10fff3abf3514a7a6601beebdb30"},
2208
+ {file = "psutil-5.9.5.tar.gz", hash = "sha256:5410638e4df39c54d957fc51ce03048acd8e6d60abc0f5107af51e5fb566eb3c"},
2209
+ ]
2210
+
2211
+ [package.extras]
2212
+ test = ["enum34", "ipaddress", "mock", "pywin32", "wmi"]
2213
+
2214
  [[package]]
2215
  name = "psycopg2-binary"
2216
  version = "2.9.6"
 
2282
  {file = "psycopg2_binary-2.9.6-cp39-cp39-win_amd64.whl", hash = "sha256:f6a88f384335bb27812293fdb11ac6aee2ca3f51d3c7820fe03de0a304ab6249"},
2283
  ]
2284
 
2285
+ [[package]]
2286
+ name = "ptyprocess"
2287
+ version = "0.7.0"
2288
+ description = "Run a subprocess in a pseudo terminal"
2289
+ optional = false
2290
+ python-versions = "*"
2291
+ files = [
2292
+ {file = "ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35"},
2293
+ {file = "ptyprocess-0.7.0.tar.gz", hash = "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220"},
2294
+ ]
2295
+
2296
+ [[package]]
2297
+ name = "pure-eval"
2298
+ version = "0.2.2"
2299
+ description = "Safely evaluate AST nodes without side effects"
2300
+ optional = false
2301
+ python-versions = "*"
2302
+ files = [
2303
+ {file = "pure_eval-0.2.2-py3-none-any.whl", hash = "sha256:01eaab343580944bc56080ebe0a674b39ec44a945e6d09ba7db3cb8cec289350"},
2304
+ {file = "pure_eval-0.2.2.tar.gz", hash = "sha256:2b45320af6dfaa1750f543d714b6d1c520a1688dec6fd24d339063ce0aaa9ac3"},
2305
+ ]
2306
+
2307
+ [package.extras]
2308
+ tests = ["pytest"]
2309
+
2310
  [[package]]
2311
  name = "pyarrow"
2312
  version = "12.0.1"
 
2344
  [package.dependencies]
2345
  numpy = ">=1.16.6"
2346
 
2347
+ [[package]]
2348
+ name = "pycparser"
2349
+ version = "2.21"
2350
+ description = "C parser in Python"
2351
+ optional = false
2352
+ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
2353
+ files = [
2354
+ {file = "pycparser-2.21-py2.py3-none-any.whl", hash = "sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9"},
2355
+ {file = "pycparser-2.21.tar.gz", hash = "sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206"},
2356
+ ]
2357
+
2358
  [[package]]
2359
  name = "pydantic"
2360
  version = "1.10.9"
 
2515
  [package.extras]
2516
  cli = ["click (>=5.0)"]
2517
 
2518
+ [[package]]
2519
+ name = "python-json-logger"
2520
+ version = "2.0.7"
2521
+ description = "A python library adding a json log formatter"
2522
+ optional = false
2523
+ python-versions = ">=3.6"
2524
+ files = [
2525
+ {file = "python-json-logger-2.0.7.tar.gz", hash = "sha256:23e7ec02d34237c5aa1e29a070193a4ea87583bb4e7f8fd06d3de8264c4b2e1c"},
2526
+ {file = "python_json_logger-2.0.7-py3-none-any.whl", hash = "sha256:f380b826a991ebbe3de4d897aeec42760035ac760345e57b812938dc8b35e2bd"},
2527
+ ]
2528
+
2529
  [[package]]
2530
  name = "pytz"
2531
  version = "2023.3"
 
2551
  [package.dependencies]
2552
  tzdata = {version = "*", markers = "python_version >= \"3.6\""}
2553
 
2554
+ [[package]]
2555
+ name = "pywin32"
2556
+ version = "306"
2557
+ description = "Python for Window Extensions"
2558
+ optional = false
2559
+ python-versions = "*"
2560
+ files = [
2561
+ {file = "pywin32-306-cp310-cp310-win32.whl", hash = "sha256:06d3420a5155ba65f0b72f2699b5bacf3109f36acbe8923765c22938a69dfc8d"},
2562
+ {file = "pywin32-306-cp310-cp310-win_amd64.whl", hash = "sha256:84f4471dbca1887ea3803d8848a1616429ac94a4a8d05f4bc9c5dcfd42ca99c8"},
2563
+ {file = "pywin32-306-cp311-cp311-win32.whl", hash = "sha256:e65028133d15b64d2ed8f06dd9fbc268352478d4f9289e69c190ecd6818b6407"},
2564
+ {file = "pywin32-306-cp311-cp311-win_amd64.whl", hash = "sha256:a7639f51c184c0272e93f244eb24dafca9b1855707d94c192d4a0b4c01e1100e"},
2565
+ {file = "pywin32-306-cp311-cp311-win_arm64.whl", hash = "sha256:70dba0c913d19f942a2db25217d9a1b726c278f483a919f1abfed79c9cf64d3a"},
2566
+ {file = "pywin32-306-cp312-cp312-win32.whl", hash = "sha256:383229d515657f4e3ed1343da8be101000562bf514591ff383ae940cad65458b"},
2567
+ {file = "pywin32-306-cp312-cp312-win_amd64.whl", hash = "sha256:37257794c1ad39ee9be652da0462dc2e394c8159dfd913a8a4e8eb6fd346da0e"},
2568
+ {file = "pywin32-306-cp312-cp312-win_arm64.whl", hash = "sha256:5821ec52f6d321aa59e2db7e0a35b997de60c201943557d108af9d4ae1ec7040"},
2569
+ {file = "pywin32-306-cp37-cp37m-win32.whl", hash = "sha256:1c73ea9a0d2283d889001998059f5eaaba3b6238f767c9cf2833b13e6a685f65"},
2570
+ {file = "pywin32-306-cp37-cp37m-win_amd64.whl", hash = "sha256:72c5f621542d7bdd4fdb716227be0dd3f8565c11b280be6315b06ace35487d36"},
2571
+ {file = "pywin32-306-cp38-cp38-win32.whl", hash = "sha256:e4c092e2589b5cf0d365849e73e02c391c1349958c5ac3e9d5ccb9a28e017b3a"},
2572
+ {file = "pywin32-306-cp38-cp38-win_amd64.whl", hash = "sha256:e8ac1ae3601bee6ca9f7cb4b5363bf1c0badb935ef243c4733ff9a393b1690c0"},
2573
+ {file = "pywin32-306-cp39-cp39-win32.whl", hash = "sha256:e25fd5b485b55ac9c057f67d94bc203f3f6595078d1fb3b458c9c28b7153a802"},
2574
+ {file = "pywin32-306-cp39-cp39-win_amd64.whl", hash = "sha256:39b61c15272833b5c329a2989999dcae836b1eed650252ab1b7bfbe1d59f30f4"},
2575
+ ]
2576
+
2577
+ [[package]]
2578
+ name = "pywinpty"
2579
+ version = "2.0.10"
2580
+ description = "Pseudo terminal support for Windows from Python."
2581
+ optional = false
2582
+ python-versions = ">=3.7"
2583
+ files = [
2584
+ {file = "pywinpty-2.0.10-cp310-none-win_amd64.whl", hash = "sha256:4c7d06ad10f6e92bc850a467f26d98f4f30e73d2fe5926536308c6ae0566bc16"},
2585
+ {file = "pywinpty-2.0.10-cp311-none-win_amd64.whl", hash = "sha256:7ffbd66310b83e42028fc9df7746118978d94fba8c1ebf15a7c1275fdd80b28a"},
2586
+ {file = "pywinpty-2.0.10-cp37-none-win_amd64.whl", hash = "sha256:38cb924f2778b5751ef91a75febd114776b3af0ae411bc667be45dd84fc881d3"},
2587
+ {file = "pywinpty-2.0.10-cp38-none-win_amd64.whl", hash = "sha256:902d79444b29ad1833b8d5c3c9aabdfd428f4f068504430df18074007c8c0de8"},
2588
+ {file = "pywinpty-2.0.10-cp39-none-win_amd64.whl", hash = "sha256:3c46aef80dd50979aff93de199e4a00a8ee033ba7a03cadf0a91fed45f0c39d7"},
2589
+ {file = "pywinpty-2.0.10.tar.gz", hash = "sha256:cdbb5694cf8c7242c2ecfaca35c545d31fa5d5814c3d67a4e628f803f680ebea"},
2590
+ ]
2591
+
2592
  [[package]]
2593
  name = "pyyaml"
2594
  version = "6.0"
 
2638
  {file = "PyYAML-6.0.tar.gz", hash = "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"},
2639
  ]
2640
 
2641
+ [[package]]
2642
+ name = "pyzmq"
2643
+ version = "25.1.0"
2644
+ description = "Python bindings for 0MQ"
2645
+ optional = false
2646
+ python-versions = ">=3.6"
2647
+ files = [
2648
+ {file = "pyzmq-25.1.0-cp310-cp310-macosx_10_15_universal2.whl", hash = "sha256:1a6169e69034eaa06823da6a93a7739ff38716142b3596c180363dee729d713d"},
2649
+ {file = "pyzmq-25.1.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:19d0383b1f18411d137d891cab567de9afa609b214de68b86e20173dc624c101"},
2650
+ {file = "pyzmq-25.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f1e931d9a92f628858a50f5bdffdfcf839aebe388b82f9d2ccd5d22a38a789dc"},
2651
+ {file = "pyzmq-25.1.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:97d984b1b2f574bc1bb58296d3c0b64b10e95e7026f8716ed6c0b86d4679843f"},
2652
+ {file = "pyzmq-25.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:154bddda2a351161474b36dba03bf1463377ec226a13458725183e508840df89"},
2653
+ {file = "pyzmq-25.1.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:cb6d161ae94fb35bb518b74bb06b7293299c15ba3bc099dccd6a5b7ae589aee3"},
2654
+ {file = "pyzmq-25.1.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:90146ab578931e0e2826ee39d0c948d0ea72734378f1898939d18bc9c823fcf9"},
2655
+ {file = "pyzmq-25.1.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:831ba20b660b39e39e5ac8603e8193f8fce1ee03a42c84ade89c36a251449d80"},
2656
+ {file = "pyzmq-25.1.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:3a522510e3434e12aff80187144c6df556bb06fe6b9d01b2ecfbd2b5bfa5c60c"},
2657
+ {file = "pyzmq-25.1.0-cp310-cp310-win32.whl", hash = "sha256:be24a5867b8e3b9dd5c241de359a9a5217698ff616ac2daa47713ba2ebe30ad1"},
2658
+ {file = "pyzmq-25.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:5693dcc4f163481cf79e98cf2d7995c60e43809e325b77a7748d8024b1b7bcba"},
2659
+ {file = "pyzmq-25.1.0-cp311-cp311-macosx_10_15_universal2.whl", hash = "sha256:13bbe36da3f8aaf2b7ec12696253c0bf6ffe05f4507985a8844a1081db6ec22d"},
2660
+ {file = "pyzmq-25.1.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:69511d604368f3dc58d4be1b0bad99b61ee92b44afe1cd9b7bd8c5e34ea8248a"},
2661
+ {file = "pyzmq-25.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4a983c8694667fd76d793ada77fd36c8317e76aa66eec75be2653cef2ea72883"},
2662
+ {file = "pyzmq-25.1.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:332616f95eb400492103ab9d542b69d5f0ff628b23129a4bc0a2fd48da6e4e0b"},
2663
+ {file = "pyzmq-25.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:58416db767787aedbfd57116714aad6c9ce57215ffa1c3758a52403f7c68cff5"},
2664
+ {file = "pyzmq-25.1.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:cad9545f5801a125f162d09ec9b724b7ad9b6440151b89645241d0120e119dcc"},
2665
+ {file = "pyzmq-25.1.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:d6128d431b8dfa888bf51c22a04d48bcb3d64431caf02b3cb943269f17fd2994"},
2666
+ {file = "pyzmq-25.1.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:2b15247c49d8cbea695b321ae5478d47cffd496a2ec5ef47131a9e79ddd7e46c"},
2667
+ {file = "pyzmq-25.1.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:442d3efc77ca4d35bee3547a8e08e8d4bb88dadb54a8377014938ba98d2e074a"},
2668
+ {file = "pyzmq-25.1.0-cp311-cp311-win32.whl", hash = "sha256:65346f507a815a731092421d0d7d60ed551a80d9b75e8b684307d435a5597425"},
2669
+ {file = "pyzmq-25.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:8b45d722046fea5a5694cba5d86f21f78f0052b40a4bbbbf60128ac55bfcc7b6"},
2670
+ {file = "pyzmq-25.1.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f45808eda8b1d71308c5416ef3abe958f033fdbb356984fabbfc7887bed76b3f"},
2671
+ {file = "pyzmq-25.1.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8b697774ea8273e3c0460cf0bba16cd85ca6c46dfe8b303211816d68c492e132"},
2672
+ {file = "pyzmq-25.1.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b324fa769577fc2c8f5efcd429cef5acbc17d63fe15ed16d6dcbac2c5eb00849"},
2673
+ {file = "pyzmq-25.1.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:5873d6a60b778848ce23b6c0ac26c39e48969823882f607516b91fb323ce80e5"},
2674
+ {file = "pyzmq-25.1.0-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:f0d9e7ba6a815a12c8575ba7887da4b72483e4cfc57179af10c9b937f3f9308f"},
2675
+ {file = "pyzmq-25.1.0-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:414b8beec76521358b49170db7b9967d6974bdfc3297f47f7d23edec37329b00"},
2676
+ {file = "pyzmq-25.1.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:01f06f33e12497dca86353c354461f75275a5ad9eaea181ac0dc1662da8074fa"},
2677
+ {file = "pyzmq-25.1.0-cp36-cp36m-win32.whl", hash = "sha256:b5a07c4f29bf7cb0164664ef87e4aa25435dcc1f818d29842118b0ac1eb8e2b5"},
2678
+ {file = "pyzmq-25.1.0-cp36-cp36m-win_amd64.whl", hash = "sha256:968b0c737797c1809ec602e082cb63e9824ff2329275336bb88bd71591e94a90"},
2679
+ {file = "pyzmq-25.1.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:47b915ba666c51391836d7ed9a745926b22c434efa76c119f77bcffa64d2c50c"},
2680
+ {file = "pyzmq-25.1.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5af31493663cf76dd36b00dafbc839e83bbca8a0662931e11816d75f36155897"},
2681
+ {file = "pyzmq-25.1.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5489738a692bc7ee9a0a7765979c8a572520d616d12d949eaffc6e061b82b4d1"},
2682
+ {file = "pyzmq-25.1.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:1fc56a0221bdf67cfa94ef2d6ce5513a3d209c3dfd21fed4d4e87eca1822e3a3"},
2683
+ {file = "pyzmq-25.1.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:75217e83faea9edbc29516fc90c817bc40c6b21a5771ecb53e868e45594826b0"},
2684
+ {file = "pyzmq-25.1.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:3830be8826639d801de9053cf86350ed6742c4321ba4236e4b5568528d7bfed7"},
2685
+ {file = "pyzmq-25.1.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:3575699d7fd7c9b2108bc1c6128641a9a825a58577775ada26c02eb29e09c517"},
2686
+ {file = "pyzmq-25.1.0-cp37-cp37m-win32.whl", hash = "sha256:95bd3a998d8c68b76679f6b18f520904af5204f089beebb7b0301d97704634dd"},
2687
+ {file = "pyzmq-25.1.0-cp37-cp37m-win_amd64.whl", hash = "sha256:dbc466744a2db4b7ca05589f21ae1a35066afada2f803f92369f5877c100ef62"},
2688
+ {file = "pyzmq-25.1.0-cp38-cp38-macosx_10_15_universal2.whl", hash = "sha256:3bed53f7218490c68f0e82a29c92335daa9606216e51c64f37b48eb78f1281f4"},
2689
+ {file = "pyzmq-25.1.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:eb52e826d16c09ef87132c6e360e1879c984f19a4f62d8a935345deac43f3c12"},
2690
+ {file = "pyzmq-25.1.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:ddbef8b53cd16467fdbfa92a712eae46dd066aa19780681a2ce266e88fbc7165"},
2691
+ {file = "pyzmq-25.1.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:9301cf1d7fc1ddf668d0abbe3e227fc9ab15bc036a31c247276012abb921b5ff"},
2692
+ {file = "pyzmq-25.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7e23a8c3b6c06de40bdb9e06288180d630b562db8ac199e8cc535af81f90e64b"},
2693
+ {file = "pyzmq-25.1.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:4a82faae00d1eed4809c2f18b37f15ce39a10a1c58fe48b60ad02875d6e13d80"},
2694
+ {file = "pyzmq-25.1.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:c8398a1b1951aaa330269c35335ae69744be166e67e0ebd9869bdc09426f3871"},
2695
+ {file = "pyzmq-25.1.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d40682ac60b2a613d36d8d3a0cd14fbdf8e7e0618fbb40aa9fa7b796c9081584"},
2696
+ {file = "pyzmq-25.1.0-cp38-cp38-win32.whl", hash = "sha256:33d5c8391a34d56224bccf74f458d82fc6e24b3213fc68165c98b708c7a69325"},
2697
+ {file = "pyzmq-25.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:c66b7ff2527e18554030319b1376d81560ca0742c6e0b17ff1ee96624a5f1afd"},
2698
+ {file = "pyzmq-25.1.0-cp39-cp39-macosx_10_15_universal2.whl", hash = "sha256:af56229ea6527a849ac9fb154a059d7e32e77a8cba27e3e62a1e38d8808cb1a5"},
2699
+ {file = "pyzmq-25.1.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:bdca18b94c404af6ae5533cd1bc310c4931f7ac97c148bbfd2cd4bdd62b96253"},
2700
+ {file = "pyzmq-25.1.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:0b6b42f7055bbc562f63f3df3b63e3dd1ebe9727ff0f124c3aa7bcea7b3a00f9"},
2701
+ {file = "pyzmq-25.1.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:4c2fc7aad520a97d64ffc98190fce6b64152bde57a10c704b337082679e74f67"},
2702
+ {file = "pyzmq-25.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:be86a26415a8b6af02cd8d782e3a9ae3872140a057f1cadf0133de685185c02b"},
2703
+ {file = "pyzmq-25.1.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:851fb2fe14036cfc1960d806628b80276af5424db09fe5c91c726890c8e6d943"},
2704
+ {file = "pyzmq-25.1.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:2a21fec5c3cea45421a19ccbe6250c82f97af4175bc09de4d6dd78fb0cb4c200"},
2705
+ {file = "pyzmq-25.1.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:bad172aba822444b32eae54c2d5ab18cd7dee9814fd5c7ed026603b8cae2d05f"},
2706
+ {file = "pyzmq-25.1.0-cp39-cp39-win32.whl", hash = "sha256:4d67609b37204acad3d566bb7391e0ecc25ef8bae22ff72ebe2ad7ffb7847158"},
2707
+ {file = "pyzmq-25.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:71c7b5896e40720d30cd77a81e62b433b981005bbff0cb2f739e0f8d059b5d99"},
2708
+ {file = "pyzmq-25.1.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:4cb27ef9d3bdc0c195b2dc54fcb8720e18b741624686a81942e14c8b67cc61a6"},
2709
+ {file = "pyzmq-25.1.0-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:0c4fc2741e0513b5d5a12fe200d6785bbcc621f6f2278893a9ca7bed7f2efb7d"},
2710
+ {file = "pyzmq-25.1.0-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:fc34fdd458ff77a2a00e3c86f899911f6f269d393ca5675842a6e92eea565bae"},
2711
+ {file = "pyzmq-25.1.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8751f9c1442624da391bbd92bd4b072def6d7702a9390e4479f45c182392ff78"},
2712
+ {file = "pyzmq-25.1.0-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:6581e886aec3135964a302a0f5eb68f964869b9efd1dbafdebceaaf2934f8a68"},
2713
+ {file = "pyzmq-25.1.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:5482f08d2c3c42b920e8771ae8932fbaa0a67dff925fc476996ddd8155a170f3"},
2714
+ {file = "pyzmq-25.1.0-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:5e7fbcafa3ea16d1de1f213c226005fea21ee16ed56134b75b2dede5a2129e62"},
2715
+ {file = "pyzmq-25.1.0-pp38-pypy38_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:adecf6d02b1beab8d7c04bc36f22bb0e4c65a35eb0b4750b91693631d4081c70"},
2716
+ {file = "pyzmq-25.1.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f6d39e42a0aa888122d1beb8ec0d4ddfb6c6b45aecb5ba4013c27e2f28657765"},
2717
+ {file = "pyzmq-25.1.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:7018289b402ebf2b2c06992813523de61d4ce17bd514c4339d8f27a6f6809492"},
2718
+ {file = "pyzmq-25.1.0-pp39-pypy39_pp73-macosx_10_9_x86_64.whl", hash = "sha256:9e68ae9864d260b18f311b68d29134d8776d82e7f5d75ce898b40a88df9db30f"},
2719
+ {file = "pyzmq-25.1.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e21cc00e4debe8f54c3ed7b9fcca540f46eee12762a9fa56feb8512fd9057161"},
2720
+ {file = "pyzmq-25.1.0-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2f666ae327a6899ff560d741681fdcdf4506f990595201ed39b44278c471ad98"},
2721
+ {file = "pyzmq-25.1.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2f5efcc29056dfe95e9c9db0dfbb12b62db9c4ad302f812931b6d21dd04a9119"},
2722
+ {file = "pyzmq-25.1.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:48e5e59e77c1a83162ab3c163fc01cd2eebc5b34560341a67421b09be0891287"},
2723
+ {file = "pyzmq-25.1.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:108c96ebbd573d929740d66e4c3d1bdf31d5cde003b8dc7811a3c8c5b0fc173b"},
2724
+ {file = "pyzmq-25.1.0.tar.gz", hash = "sha256:80c41023465d36280e801564a69cbfce8ae85ff79b080e1913f6e90481fb8957"},
2725
+ ]
2726
+
2727
+ [package.dependencies]
2728
+ cffi = {version = "*", markers = "implementation_name == \"pypy\""}
2729
+
2730
  [[package]]
2731
  name = "requests"
2732
  version = "2.31.0"
 
2748
  socks = ["PySocks (>=1.5.6,!=1.5.7)"]
2749
  use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"]
2750
 
2751
+ [[package]]
2752
+ name = "rfc3339-validator"
2753
+ version = "0.1.4"
2754
+ description = "A pure python RFC3339 validator"
2755
+ optional = false
2756
+ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
2757
+ files = [
2758
+ {file = "rfc3339_validator-0.1.4-py2.py3-none-any.whl", hash = "sha256:24f6ec1eda14ef823da9e36ec7113124b39c04d50a4d3d3a3c2859577e7791fa"},
2759
+ {file = "rfc3339_validator-0.1.4.tar.gz", hash = "sha256:138a2abdf93304ad60530167e51d2dfb9549521a836871b88d7f4695d0022f6b"},
2760
+ ]
2761
+
2762
+ [package.dependencies]
2763
+ six = "*"
2764
+
2765
+ [[package]]
2766
+ name = "rfc3986-validator"
2767
+ version = "0.1.1"
2768
+ description = "Pure python rfc3986 validator"
2769
+ optional = false
2770
+ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
2771
+ files = [
2772
+ {file = "rfc3986_validator-0.1.1-py2.py3-none-any.whl", hash = "sha256:2f235c432ef459970b4306369336b9d5dbdda31b510ca1e327636e01f528bfa9"},
2773
+ {file = "rfc3986_validator-0.1.1.tar.gz", hash = "sha256:3d44bde7921b3b9ec3ae4e3adca370438eccebc676456449b145d533b240d055"},
2774
+ ]
2775
+
2776
  [[package]]
2777
  name = "rich"
2778
  version = "13.4.2"
 
2791
  [package.extras]
2792
  jupyter = ["ipywidgets (>=7.5.1,<9)"]
2793
 
2794
+ [[package]]
2795
+ name = "send2trash"
2796
+ version = "1.8.2"
2797
+ description = "Send file to trash natively under Mac OS X, Windows and Linux"
2798
+ optional = false
2799
+ python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7"
2800
+ files = [
2801
+ {file = "Send2Trash-1.8.2-py3-none-any.whl", hash = "sha256:a384719d99c07ce1eefd6905d2decb6f8b7ed054025bb0e618919f945de4f679"},
2802
+ {file = "Send2Trash-1.8.2.tar.gz", hash = "sha256:c132d59fa44b9ca2b1699af5c86f57ce9f4c5eb56629d5d55fbb7a35f84e2312"},
2803
+ ]
2804
+
2805
+ [package.extras]
2806
+ nativelib = ["pyobjc-framework-Cocoa", "pywin32"]
2807
+ objc = ["pyobjc-framework-Cocoa"]
2808
+ win32 = ["pywin32"]
2809
+
2810
  [[package]]
2811
  name = "six"
2812
  version = "1.16.0"
 
2829
  {file = "smmap-5.0.0.tar.gz", hash = "sha256:c840e62059cd3be204b0c9c9f74be2c09d5648eddd4580d9314c3ecde0b30936"},
2830
  ]
2831
 
2832
+ [[package]]
2833
+ name = "sniffio"
2834
+ version = "1.3.0"
2835
+ description = "Sniff out which async library your code is running under"
2836
+ optional = false
2837
+ python-versions = ">=3.7"
2838
+ files = [
2839
+ {file = "sniffio-1.3.0-py3-none-any.whl", hash = "sha256:eecefdce1e5bbfb7ad2eeaabf7c1eeb404d7757c379bd1f7e5cce9d8bf425384"},
2840
+ {file = "sniffio-1.3.0.tar.gz", hash = "sha256:e60305c5e5d314f5389259b7f22aaa33d8f7dee49763119234af3755c55b9101"},
2841
+ ]
2842
+
2843
+ [[package]]
2844
+ name = "soupsieve"
2845
+ version = "2.4.1"
2846
+ description = "A modern CSS selector implementation for Beautiful Soup."
2847
+ optional = false
2848
+ python-versions = ">=3.7"
2849
+ files = [
2850
+ {file = "soupsieve-2.4.1-py3-none-any.whl", hash = "sha256:1c1bfee6819544a3447586c889157365a27e10d88cde3ad3da0cf0ddf646feb8"},
2851
+ {file = "soupsieve-2.4.1.tar.gz", hash = "sha256:89d12b2d5dfcd2c9e8c22326da9d9aa9cb3dfab0a83a024f05704076ee8d35ea"},
2852
+ ]
2853
+
2854
  [[package]]
2855
  name = "sqlalchemy"
2856
  version = "2.0.17"
 
2929
  pymysql = ["pymysql"]
2930
  sqlcipher = ["sqlcipher3-binary"]
2931
 
2932
+ [[package]]
2933
+ name = "stack-data"
2934
+ version = "0.6.2"
2935
+ description = "Extract data from python stack frames and tracebacks for informative displays"
2936
+ optional = false
2937
+ python-versions = "*"
2938
+ files = [
2939
+ {file = "stack_data-0.6.2-py3-none-any.whl", hash = "sha256:cbb2a53eb64e5785878201a97ed7c7b94883f48b87bfb0bbe8b623c74679e4a8"},
2940
+ {file = "stack_data-0.6.2.tar.gz", hash = "sha256:32d2dd0376772d01b6cb9fc996f3c8b57a357089dec328ed4b6553d037eaf815"},
2941
+ ]
2942
+
2943
+ [package.dependencies]
2944
+ asttokens = ">=2.1.0"
2945
+ executing = ">=1.2.0"
2946
+ pure-eval = "*"
2947
+
2948
+ [package.extras]
2949
+ tests = ["cython", "littleutils", "pygments", "pytest", "typeguard"]
2950
+
2951
  [[package]]
2952
  name = "streamlit"
2953
  version = "1.23.1"
 
3002
  [package.extras]
3003
  doc = ["reno", "sphinx", "tornado (>=4.5)"]
3004
 
3005
+ [[package]]
3006
+ name = "terminado"
3007
+ version = "0.17.1"
3008
+ description = "Tornado websocket backend for the Xterm.js Javascript terminal emulator library."
3009
+ optional = false
3010
+ python-versions = ">=3.7"
3011
+ files = [
3012
+ {file = "terminado-0.17.1-py3-none-any.whl", hash = "sha256:8650d44334eba354dd591129ca3124a6ba42c3d5b70df5051b6921d506fdaeae"},
3013
+ {file = "terminado-0.17.1.tar.gz", hash = "sha256:6ccbbcd3a4f8a25a5ec04991f39a0b8db52dfcd487ea0e578d977e6752380333"},
3014
+ ]
3015
+
3016
+ [package.dependencies]
3017
+ ptyprocess = {version = "*", markers = "os_name != \"nt\""}
3018
+ pywinpty = {version = ">=1.1.0", markers = "os_name == \"nt\""}
3019
+ tornado = ">=6.1.0"
3020
+
3021
+ [package.extras]
3022
+ docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"]
3023
+ test = ["pre-commit", "pytest (>=7.0)", "pytest-timeout"]
3024
+
3025
+ [[package]]
3026
+ name = "tinycss2"
3027
+ version = "1.2.1"
3028
+ description = "A tiny CSS parser"
3029
+ optional = false
3030
+ python-versions = ">=3.7"
3031
+ files = [
3032
+ {file = "tinycss2-1.2.1-py3-none-any.whl", hash = "sha256:2b80a96d41e7c3914b8cda8bc7f705a4d9c49275616e886103dd839dfc847847"},
3033
+ {file = "tinycss2-1.2.1.tar.gz", hash = "sha256:8cff3a8f066c2ec677c06dbc7b45619804a6938478d9d73c284b29d14ecb0627"},
3034
+ ]
3035
+
3036
+ [package.dependencies]
3037
+ webencodings = ">=0.4"
3038
+
3039
+ [package.extras]
3040
+ doc = ["sphinx", "sphinx_rtd_theme"]
3041
+ test = ["flake8", "isort", "pytest"]
3042
+
3043
  [[package]]
3044
  name = "toml"
3045
  version = "0.10.2"
 
3051
  {file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"},
3052
  ]
3053
 
3054
+ [[package]]
3055
+ name = "tomli"
3056
+ version = "2.0.1"
3057
+ description = "A lil' TOML parser"
3058
+ optional = false
3059
+ python-versions = ">=3.7"
3060
+ files = [
3061
+ {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"},
3062
+ {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"},
3063
+ ]
3064
+
3065
  [[package]]
3066
  name = "toolz"
3067
  version = "0.12.0"
 
3113
  slack = ["slack-sdk"]
3114
  telegram = ["requests"]
3115
 
3116
+ [[package]]
3117
+ name = "traitlets"
3118
+ version = "5.9.0"
3119
+ description = "Traitlets Python configuration system"
3120
+ optional = false
3121
+ python-versions = ">=3.7"
3122
+ files = [
3123
+ {file = "traitlets-5.9.0-py3-none-any.whl", hash = "sha256:9e6ec080259b9a5940c797d58b613b5e31441c2257b87c2e795c5228ae80d2d8"},
3124
+ {file = "traitlets-5.9.0.tar.gz", hash = "sha256:f6cde21a9c68cf756af02035f72d5a723bf607e862e7be33ece505abf4a3bad9"},
3125
+ ]
3126
+
3127
+ [package.extras]
3128
+ docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"]
3129
+ test = ["argcomplete (>=2.0)", "pre-commit", "pytest", "pytest-mock"]
3130
+
3131
  [[package]]
3132
  name = "typing-extensions"
3133
  version = "4.6.3"
 
3183
  [package.extras]
3184
  devenv = ["black", "check-manifest", "flake8", "pyroma", "pytest (>=4.3)", "pytest-cov", "pytest-mock (>=3.3)", "zest.releaser"]
3185
 
3186
+ [[package]]
3187
+ name = "uri-template"
3188
+ version = "1.3.0"
3189
+ description = "RFC 6570 URI Template Processor"
3190
+ optional = false
3191
+ python-versions = ">=3.7"
3192
+ files = [
3193
+ {file = "uri-template-1.3.0.tar.gz", hash = "sha256:0e00f8eb65e18c7de20d595a14336e9f337ead580c70934141624b6d1ffdacc7"},
3194
+ {file = "uri_template-1.3.0-py3-none-any.whl", hash = "sha256:a44a133ea12d44a0c0f06d7d42a52d71282e77e2f937d8abd5655b8d56fc1363"},
3195
+ ]
3196
+
3197
+ [package.extras]
3198
+ dev = ["flake8", "flake8-annotations", "flake8-bandit", "flake8-bugbear", "flake8-commas", "flake8-comprehensions", "flake8-continuation", "flake8-datetimez", "flake8-docstrings", "flake8-import-order", "flake8-literal", "flake8-modern-annotations", "flake8-noqa", "flake8-pyproject", "flake8-requirements", "flake8-typechecking-import", "flake8-use-fstring", "mypy", "pep8-naming", "types-PyYAML"]
3199
+
3200
  [[package]]
3201
  name = "urllib3"
3202
  version = "2.0.3"
 
3269
  [package.extras]
3270
  watchmedo = ["PyYAML (>=3.10)"]
3271
 
3272
+ [[package]]
3273
+ name = "wcwidth"
3274
+ version = "0.2.6"
3275
+ description = "Measures the displayed width of unicode strings in a terminal"
3276
+ optional = false
3277
+ python-versions = "*"
3278
+ files = [
3279
+ {file = "wcwidth-0.2.6-py2.py3-none-any.whl", hash = "sha256:795b138f6875577cd91bba52baf9e445cd5118fd32723b460e30a0af30ea230e"},
3280
+ {file = "wcwidth-0.2.6.tar.gz", hash = "sha256:a5220780a404dbe3353789870978e472cfe477761f06ee55077256e509b156d0"},
3281
+ ]
3282
+
3283
+ [[package]]
3284
+ name = "webcolors"
3285
+ version = "1.13"
3286
+ description = "A library for working with the color formats defined by HTML and CSS."
3287
+ optional = false
3288
+ python-versions = ">=3.7"
3289
+ files = [
3290
+ {file = "webcolors-1.13-py3-none-any.whl", hash = "sha256:29bc7e8752c0a1bd4a1f03c14d6e6a72e93d82193738fa860cbff59d0fcc11bf"},
3291
+ {file = "webcolors-1.13.tar.gz", hash = "sha256:c225b674c83fa923be93d235330ce0300373d02885cef23238813b0d5668304a"},
3292
+ ]
3293
+
3294
+ [package.extras]
3295
+ docs = ["furo", "sphinx", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-notfound-page", "sphinxext-opengraph"]
3296
+ tests = ["pytest", "pytest-cov"]
3297
+
3298
+ [[package]]
3299
+ name = "webencodings"
3300
+ version = "0.5.1"
3301
+ description = "Character encoding aliases for legacy web content"
3302
+ optional = false
3303
+ python-versions = "*"
3304
+ files = [
3305
+ {file = "webencodings-0.5.1-py2.py3-none-any.whl", hash = "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78"},
3306
+ {file = "webencodings-0.5.1.tar.gz", hash = "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"},
3307
+ ]
3308
+
3309
+ [[package]]
3310
+ name = "websocket-client"
3311
+ version = "1.6.1"
3312
+ description = "WebSocket client for Python with low level API options"
3313
+ optional = false
3314
+ python-versions = ">=3.7"
3315
+ files = [
3316
+ {file = "websocket-client-1.6.1.tar.gz", hash = "sha256:c951af98631d24f8df89ab1019fc365f2227c0892f12fd150e935607c79dd0dd"},
3317
+ {file = "websocket_client-1.6.1-py3-none-any.whl", hash = "sha256:f1f9f2ad5291f0225a49efad77abf9e700b6fef553900623060dad6e26503b9d"},
3318
+ ]
3319
+
3320
+ [package.extras]
3321
+ docs = ["Sphinx (>=3.4)", "sphinx-rtd-theme (>=0.5)"]
3322
+ optional = ["python-socks", "wsaccel"]
3323
+ test = ["websockets"]
3324
+
3325
  [[package]]
3326
  name = "win32-setctime"
3327
  version = "1.1.0"
 
3441
  [metadata]
3442
  lock-version = "2.0"
3443
  python-versions = ">=3.9,<3.9.7 || >3.9.7,<4.0"
3444
+ content-hash = "52d0a8d4a683e48b555a53fa9661712dea0072c617aa7f984b6cfd1b4019a570"
pyproject.toml CHANGED
@@ -17,6 +17,7 @@ tqdm = "^4.65.0"
17
  pandas = "^2.0.2"
18
  psycopg2-binary = "^2.9.6"
19
  PyYAML = "^6.0"
 
20
 
21
 
22
  [build-system]
 
17
  pandas = "^2.0.2"
18
  psycopg2-binary = "^2.9.6"
19
  PyYAML = "^6.0"
20
+ jupyterlab = "^4.0.2"
21
 
22
 
23
  [build-system]