Spaces:
Running
on
Zero
Running
on
Zero
Update
Browse files- README.md +1 -1
- pyproject.toml +1 -3
- requirements.txt +3 -7
- uv.lock +28 -31
README.md
CHANGED
@@ -4,7 +4,7 @@ emoji: 🏎️💨
|
|
4 |
colorFrom: yellow
|
5 |
colorTo: pink
|
6 |
sdk: gradio
|
7 |
-
sdk_version: 5.
|
8 |
app_file: app.py
|
9 |
pinned: false
|
10 |
license: mit
|
|
|
4 |
colorFrom: yellow
|
5 |
colorTo: pink
|
6 |
sdk: gradio
|
7 |
+
sdk_version: 5.31.0
|
8 |
app_file: app.py
|
9 |
pinned: false
|
10 |
license: mit
|
pyproject.toml
CHANGED
@@ -7,10 +7,8 @@ requires-python = ">=3.10"
|
|
7 |
dependencies = [
|
8 |
"accelerate>=1.7.0",
|
9 |
"diffusers>=0.33.1",
|
10 |
-
"gradio[mcp]
|
11 |
"hf-transfer>=0.1.9",
|
12 |
-
"hf-xet>=1.1.2",
|
13 |
-
"mcp==1.8.1",
|
14 |
"sentencepiece>=0.2.0",
|
15 |
"spaces>=0.36.0",
|
16 |
"torch==2.5.1",
|
|
|
7 |
dependencies = [
|
8 |
"accelerate>=1.7.0",
|
9 |
"diffusers>=0.33.1",
|
10 |
+
"gradio[mcp]>=5.31.0",
|
11 |
"hf-transfer>=0.1.9",
|
|
|
|
|
12 |
"sentencepiece>=0.2.0",
|
13 |
"spaces>=0.36.0",
|
14 |
"torch==2.5.1",
|
requirements.txt
CHANGED
@@ -44,7 +44,7 @@ fsspec==2025.5.0
|
|
44 |
# gradio-client
|
45 |
# huggingface-hub
|
46 |
# torch
|
47 |
-
gradio==5.
|
48 |
# via
|
49 |
# flux-1-schnell (pyproject.toml)
|
50 |
# spaces
|
@@ -58,8 +58,6 @@ h11==0.16.0
|
|
58 |
# uvicorn
|
59 |
hf-transfer==0.1.9
|
60 |
# via flux-1-schnell (pyproject.toml)
|
61 |
-
hf-xet==1.1.2
|
62 |
-
# via flux-1-schnell (pyproject.toml)
|
63 |
httpcore==1.0.9
|
64 |
# via httpx
|
65 |
httpx==0.28.1
|
@@ -96,10 +94,8 @@ markupsafe==3.0.2
|
|
96 |
# via
|
97 |
# gradio
|
98 |
# jinja2
|
99 |
-
mcp==1.
|
100 |
-
# via
|
101 |
-
# flux-1-schnell (pyproject.toml)
|
102 |
-
# gradio
|
103 |
mdurl==0.1.2
|
104 |
# via markdown-it-py
|
105 |
mpmath==1.3.0
|
|
|
44 |
# gradio-client
|
45 |
# huggingface-hub
|
46 |
# torch
|
47 |
+
gradio==5.31.0
|
48 |
# via
|
49 |
# flux-1-schnell (pyproject.toml)
|
50 |
# spaces
|
|
|
58 |
# uvicorn
|
59 |
hf-transfer==0.1.9
|
60 |
# via flux-1-schnell (pyproject.toml)
|
|
|
|
|
61 |
httpcore==1.0.9
|
62 |
# via httpx
|
63 |
httpx==0.28.1
|
|
|
94 |
# via
|
95 |
# gradio
|
96 |
# jinja2
|
97 |
+
mcp==1.9.0
|
98 |
+
# via gradio
|
|
|
|
|
99 |
mdurl==0.1.2
|
100 |
# via markdown-it-py
|
101 |
mpmath==1.3.0
|
uv.lock
CHANGED
@@ -171,14 +171,14 @@ wheels = [
|
|
171 |
|
172 |
[[package]]
|
173 |
name = "click"
|
174 |
-
version = "8.1
|
175 |
source = { registry = "https://pypi.org/simple" }
|
176 |
dependencies = [
|
177 |
{ name = "colorama", marker = "sys_platform == 'win32'" },
|
178 |
]
|
179 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
180 |
wheels = [
|
181 |
-
{ url = "https://files.pythonhosted.org/packages/
|
182 |
]
|
183 |
|
184 |
[[package]]
|
@@ -214,7 +214,7 @@ name = "exceptiongroup"
|
|
214 |
version = "1.3.0"
|
215 |
source = { registry = "https://pypi.org/simple" }
|
216 |
dependencies = [
|
217 |
-
{ name = "typing-extensions", marker = "python_full_version < '3.
|
218 |
]
|
219 |
sdist = { url = "https://files.pythonhosted.org/packages/0b/9f/a65090624ecf468cdca03533906e7c69ed7588582240cfe7cc9e770b50eb/exceptiongroup-1.3.0.tar.gz", hash = "sha256:b241f5885f560bc56a59ee63ca4c6a8bfa46ae4ad651af316d4e81817bb9fd88", size = 29749, upload-time = "2025-05-10T17:42:51.123Z" }
|
220 |
wheels = [
|
@@ -262,8 +262,6 @@ dependencies = [
|
|
262 |
{ name = "diffusers" },
|
263 |
{ name = "gradio", extra = ["mcp"] },
|
264 |
{ name = "hf-transfer" },
|
265 |
-
{ name = "hf-xet" },
|
266 |
-
{ name = "mcp" },
|
267 |
{ name = "sentencepiece" },
|
268 |
{ name = "spaces" },
|
269 |
{ name = "torch" },
|
@@ -275,10 +273,8 @@ dependencies = [
|
|
275 |
requires-dist = [
|
276 |
{ name = "accelerate", specifier = ">=1.7.0" },
|
277 |
{ name = "diffusers", specifier = ">=0.33.1" },
|
278 |
-
{ name = "gradio", extras = ["mcp"], specifier = "
|
279 |
{ name = "hf-transfer", specifier = ">=0.1.9" },
|
280 |
-
{ name = "hf-xet", specifier = ">=1.1.2" },
|
281 |
-
{ name = "mcp", specifier = "==1.8.1" },
|
282 |
{ name = "sentencepiece", specifier = ">=0.2.0" },
|
283 |
{ name = "spaces", specifier = ">=0.36.0" },
|
284 |
{ name = "torch", specifier = "==2.5.1" },
|
@@ -288,16 +284,16 @@ requires-dist = [
|
|
288 |
|
289 |
[[package]]
|
290 |
name = "fsspec"
|
291 |
-
version = "2025.5.
|
292 |
source = { registry = "https://pypi.org/simple" }
|
293 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
294 |
wheels = [
|
295 |
-
{ url = "https://files.pythonhosted.org/packages/
|
296 |
]
|
297 |
|
298 |
[[package]]
|
299 |
name = "gradio"
|
300 |
-
version = "5.
|
301 |
source = { registry = "https://pypi.org/simple" }
|
302 |
dependencies = [
|
303 |
{ name = "aiofiles" },
|
@@ -330,9 +326,9 @@ dependencies = [
|
|
330 |
{ name = "urllib3", marker = "sys_platform == 'emscripten'" },
|
331 |
{ name = "uvicorn", marker = "sys_platform != 'emscripten'" },
|
332 |
]
|
333 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
334 |
wheels = [
|
335 |
-
{ url = "https://files.pythonhosted.org/packages/
|
336 |
]
|
337 |
|
338 |
[package.optional-dependencies]
|
@@ -462,20 +458,21 @@ wheels = [
|
|
462 |
|
463 |
[[package]]
|
464 |
name = "huggingface-hub"
|
465 |
-
version = "0.
|
466 |
source = { registry = "https://pypi.org/simple" }
|
467 |
dependencies = [
|
468 |
{ name = "filelock" },
|
469 |
{ name = "fsspec" },
|
|
|
470 |
{ name = "packaging" },
|
471 |
{ name = "pyyaml" },
|
472 |
{ name = "requests" },
|
473 |
{ name = "tqdm" },
|
474 |
{ name = "typing-extensions" },
|
475 |
]
|
476 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
477 |
wheels = [
|
478 |
-
{ url = "https://files.pythonhosted.org/packages/
|
479 |
]
|
480 |
|
481 |
[[package]]
|
@@ -583,7 +580,7 @@ wheels = [
|
|
583 |
|
584 |
[[package]]
|
585 |
name = "mcp"
|
586 |
-
version = "1.
|
587 |
source = { registry = "https://pypi.org/simple" }
|
588 |
dependencies = [
|
589 |
{ name = "anyio" },
|
@@ -596,9 +593,9 @@ dependencies = [
|
|
596 |
{ name = "starlette" },
|
597 |
{ name = "uvicorn", marker = "sys_platform != 'emscripten'" },
|
598 |
]
|
599 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
600 |
wheels = [
|
601 |
-
{ url = "https://files.pythonhosted.org/packages/
|
602 |
]
|
603 |
|
604 |
[[package]]
|
@@ -1431,11 +1428,11 @@ wheels = [
|
|
1431 |
|
1432 |
[[package]]
|
1433 |
name = "setuptools"
|
1434 |
-
version = "80.
|
1435 |
source = { registry = "https://pypi.org/simple" }
|
1436 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
1437 |
wheels = [
|
1438 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1439 |
]
|
1440 |
|
1441 |
[[package]]
|
@@ -1634,7 +1631,7 @@ name = "triton"
|
|
1634 |
version = "3.1.0"
|
1635 |
source = { registry = "https://pypi.org/simple" }
|
1636 |
dependencies = [
|
1637 |
-
{ name = "filelock"
|
1638 |
]
|
1639 |
wheels = [
|
1640 |
{ url = "https://files.pythonhosted.org/packages/98/29/69aa56dc0b2eb2602b553881e34243475ea2afd9699be042316842788ff5/triton-3.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b0dd10a925263abbe9fa37dcde67a5e9b2383fc269fdf59f5657cac38c5d1d8", size = 209460013, upload-time = "2024-10-14T16:05:32.106Z" },
|
@@ -1644,7 +1641,7 @@ wheels = [
|
|
1644 |
|
1645 |
[[package]]
|
1646 |
name = "typer"
|
1647 |
-
version = "0.
|
1648 |
source = { registry = "https://pypi.org/simple" }
|
1649 |
dependencies = [
|
1650 |
{ name = "click" },
|
@@ -1652,9 +1649,9 @@ dependencies = [
|
|
1652 |
{ name = "shellingham" },
|
1653 |
{ name = "typing-extensions" },
|
1654 |
]
|
1655 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
1656 |
wheels = [
|
1657 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1658 |
]
|
1659 |
|
1660 |
[[package]]
|
@@ -1786,9 +1783,9 @@ wheels = [
|
|
1786 |
|
1787 |
[[package]]
|
1788 |
name = "zipp"
|
1789 |
-
version = "3.
|
1790 |
source = { registry = "https://pypi.org/simple" }
|
1791 |
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
1792 |
wheels = [
|
1793 |
-
{ url = "https://files.pythonhosted.org/packages/
|
1794 |
]
|
|
|
171 |
|
172 |
[[package]]
|
173 |
name = "click"
|
174 |
+
version = "8.2.1"
|
175 |
source = { registry = "https://pypi.org/simple" }
|
176 |
dependencies = [
|
177 |
{ name = "colorama", marker = "sys_platform == 'win32'" },
|
178 |
]
|
179 |
+
sdist = { url = "https://files.pythonhosted.org/packages/60/6c/8ca2efa64cf75a977a0d7fac081354553ebe483345c734fb6b6515d96bbc/click-8.2.1.tar.gz", hash = "sha256:27c491cc05d968d271d5a1db13e3b5a184636d9d930f148c50b038f0d0646202", size = 286342, upload-time = "2025-05-20T23:19:49.832Z" }
|
180 |
wheels = [
|
181 |
+
{ url = "https://files.pythonhosted.org/packages/85/32/10bb5764d90a8eee674e9dc6f4db6a0ab47c8c4d0d83c27f7c39ac415a4d/click-8.2.1-py3-none-any.whl", hash = "sha256:61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b", size = 102215, upload-time = "2025-05-20T23:19:47.796Z" },
|
182 |
]
|
183 |
|
184 |
[[package]]
|
|
|
214 |
version = "1.3.0"
|
215 |
source = { registry = "https://pypi.org/simple" }
|
216 |
dependencies = [
|
217 |
+
{ name = "typing-extensions", marker = "python_full_version < '3.12'" },
|
218 |
]
|
219 |
sdist = { url = "https://files.pythonhosted.org/packages/0b/9f/a65090624ecf468cdca03533906e7c69ed7588582240cfe7cc9e770b50eb/exceptiongroup-1.3.0.tar.gz", hash = "sha256:b241f5885f560bc56a59ee63ca4c6a8bfa46ae4ad651af316d4e81817bb9fd88", size = 29749, upload-time = "2025-05-10T17:42:51.123Z" }
|
220 |
wheels = [
|
|
|
262 |
{ name = "diffusers" },
|
263 |
{ name = "gradio", extra = ["mcp"] },
|
264 |
{ name = "hf-transfer" },
|
|
|
|
|
265 |
{ name = "sentencepiece" },
|
266 |
{ name = "spaces" },
|
267 |
{ name = "torch" },
|
|
|
273 |
requires-dist = [
|
274 |
{ name = "accelerate", specifier = ">=1.7.0" },
|
275 |
{ name = "diffusers", specifier = ">=0.33.1" },
|
276 |
+
{ name = "gradio", extras = ["mcp"], specifier = ">=5.31.0" },
|
277 |
{ name = "hf-transfer", specifier = ">=0.1.9" },
|
|
|
|
|
278 |
{ name = "sentencepiece", specifier = ">=0.2.0" },
|
279 |
{ name = "spaces", specifier = ">=0.36.0" },
|
280 |
{ name = "torch", specifier = "==2.5.1" },
|
|
|
284 |
|
285 |
[[package]]
|
286 |
name = "fsspec"
|
287 |
+
version = "2025.5.1"
|
288 |
source = { registry = "https://pypi.org/simple" }
|
289 |
+
sdist = { url = "https://files.pythonhosted.org/packages/00/f7/27f15d41f0ed38e8fcc488584b57e902b331da7f7c6dcda53721b15838fc/fsspec-2025.5.1.tar.gz", hash = "sha256:2e55e47a540b91843b755e83ded97c6e897fa0942b11490113f09e9c443c2475", size = 303033, upload-time = "2025-05-24T12:03:23.792Z" }
|
290 |
wheels = [
|
291 |
+
{ url = "https://files.pythonhosted.org/packages/bb/61/78c7b3851add1481b048b5fdc29067397a1784e2910592bc81bb3f608635/fsspec-2025.5.1-py3-none-any.whl", hash = "sha256:24d3a2e663d5fc735ab256263c4075f374a174c3410c0b25e5bd1970bceaa462", size = 199052, upload-time = "2025-05-24T12:03:21.66Z" },
|
292 |
]
|
293 |
|
294 |
[[package]]
|
295 |
name = "gradio"
|
296 |
+
version = "5.31.0"
|
297 |
source = { registry = "https://pypi.org/simple" }
|
298 |
dependencies = [
|
299 |
{ name = "aiofiles" },
|
|
|
326 |
{ name = "urllib3", marker = "sys_platform == 'emscripten'" },
|
327 |
{ name = "uvicorn", marker = "sys_platform != 'emscripten'" },
|
328 |
]
|
329 |
+
sdist = { url = "https://files.pythonhosted.org/packages/ac/43/cd6bd76630472671762a91165ddb29edd1d5f8ddf0ef2942eafbbdb5246b/gradio-5.31.0.tar.gz", hash = "sha256:fba0c84d69cf489938eb64bef4c19d53300eb9af62e8cc0b12e02ae9072b7623", size = 64778139, upload-time = "2025-05-22T19:44:53.367Z" }
|
330 |
wheels = [
|
331 |
+
{ url = "https://files.pythonhosted.org/packages/86/a5/630f31e90e1a39c8ec3d2a2404e3d4d6a27c9f15faca61cdd54458700757/gradio-5.31.0-py3-none-any.whl", hash = "sha256:4a31956c7290ce1277db07f15f197b602df2e7be147083136265d52e7887b156", size = 54197094, upload-time = "2025-05-22T19:44:47.607Z" },
|
332 |
]
|
333 |
|
334 |
[package.optional-dependencies]
|
|
|
458 |
|
459 |
[[package]]
|
460 |
name = "huggingface-hub"
|
461 |
+
version = "0.32.1"
|
462 |
source = { registry = "https://pypi.org/simple" }
|
463 |
dependencies = [
|
464 |
{ name = "filelock" },
|
465 |
{ name = "fsspec" },
|
466 |
+
{ name = "hf-xet", marker = "platform_machine == 'aarch64' or platform_machine == 'amd64' or platform_machine == 'arm64' or platform_machine == 'x86_64'" },
|
467 |
{ name = "packaging" },
|
468 |
{ name = "pyyaml" },
|
469 |
{ name = "requests" },
|
470 |
{ name = "tqdm" },
|
471 |
{ name = "typing-extensions" },
|
472 |
]
|
473 |
+
sdist = { url = "https://files.pythonhosted.org/packages/bf/4d/7a1f24199a4a6f1c8e47c3b5e0a7faf44e249fec5afb7e7f6000bb87e513/huggingface_hub-0.32.1.tar.gz", hash = "sha256:770acdae5ad973447074e10a98044306e567ff36012419ae80c051f446156551", size = 422371, upload-time = "2025-05-26T09:51:21.427Z" }
|
474 |
wheels = [
|
475 |
+
{ url = "https://files.pythonhosted.org/packages/5f/cd/4fbfa8e937b89272a75805dc895cf3c7f648e1ba6ee431f8f6bf27bc1255/huggingface_hub-0.32.1-py3-none-any.whl", hash = "sha256:b7e644f8ba6c6ad975c436960eacc026c83ba2c2bc5ae8b4e3f7ce2b292e6b11", size = 509412, upload-time = "2025-05-26T09:51:19.269Z" },
|
476 |
]
|
477 |
|
478 |
[[package]]
|
|
|
580 |
|
581 |
[[package]]
|
582 |
name = "mcp"
|
583 |
+
version = "1.9.0"
|
584 |
source = { registry = "https://pypi.org/simple" }
|
585 |
dependencies = [
|
586 |
{ name = "anyio" },
|
|
|
593 |
{ name = "starlette" },
|
594 |
{ name = "uvicorn", marker = "sys_platform != 'emscripten'" },
|
595 |
]
|
596 |
+
sdist = { url = "https://files.pythonhosted.org/packages/bc/8d/0f4468582e9e97b0a24604b585c651dfd2144300ecffd1c06a680f5c8861/mcp-1.9.0.tar.gz", hash = "sha256:905d8d208baf7e3e71d70c82803b89112e321581bcd2530f9de0fe4103d28749", size = 281432, upload-time = "2025-05-15T18:51:06.615Z" }
|
597 |
wheels = [
|
598 |
+
{ url = "https://files.pythonhosted.org/packages/a5/d5/22e36c95c83c80eb47c83f231095419cf57cf5cca5416f1c960032074c78/mcp-1.9.0-py3-none-any.whl", hash = "sha256:9dfb89c8c56f742da10a5910a1f64b0d2ac2c3ed2bd572ddb1cfab7f35957178", size = 125082, upload-time = "2025-05-15T18:51:04.916Z" },
|
599 |
]
|
600 |
|
601 |
[[package]]
|
|
|
1428 |
|
1429 |
[[package]]
|
1430 |
name = "setuptools"
|
1431 |
+
version = "80.9.0"
|
1432 |
source = { registry = "https://pypi.org/simple" }
|
1433 |
+
sdist = { url = "https://files.pythonhosted.org/packages/18/5d/3bf57dcd21979b887f014ea83c24ae194cfcd12b9e0fda66b957c69d1fca/setuptools-80.9.0.tar.gz", hash = "sha256:f36b47402ecde768dbfafc46e8e4207b4360c654f1f3bb84475f0a28628fb19c", size = 1319958, upload-time = "2025-05-27T00:56:51.443Z" }
|
1434 |
wheels = [
|
1435 |
+
{ url = "https://files.pythonhosted.org/packages/a3/dc/17031897dae0efacfea57dfd3a82fdd2a2aeb58e0ff71b77b87e44edc772/setuptools-80.9.0-py3-none-any.whl", hash = "sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922", size = 1201486, upload-time = "2025-05-27T00:56:49.664Z" },
|
1436 |
]
|
1437 |
|
1438 |
[[package]]
|
|
|
1631 |
version = "3.1.0"
|
1632 |
source = { registry = "https://pypi.org/simple" }
|
1633 |
dependencies = [
|
1634 |
+
{ name = "filelock" },
|
1635 |
]
|
1636 |
wheels = [
|
1637 |
{ url = "https://files.pythonhosted.org/packages/98/29/69aa56dc0b2eb2602b553881e34243475ea2afd9699be042316842788ff5/triton-3.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b0dd10a925263abbe9fa37dcde67a5e9b2383fc269fdf59f5657cac38c5d1d8", size = 209460013, upload-time = "2024-10-14T16:05:32.106Z" },
|
|
|
1641 |
|
1642 |
[[package]]
|
1643 |
name = "typer"
|
1644 |
+
version = "0.16.0"
|
1645 |
source = { registry = "https://pypi.org/simple" }
|
1646 |
dependencies = [
|
1647 |
{ name = "click" },
|
|
|
1649 |
{ name = "shellingham" },
|
1650 |
{ name = "typing-extensions" },
|
1651 |
]
|
1652 |
+
sdist = { url = "https://files.pythonhosted.org/packages/c5/8c/7d682431efca5fd290017663ea4588bf6f2c6aad085c7f108c5dbc316e70/typer-0.16.0.tar.gz", hash = "sha256:af377ffaee1dbe37ae9440cb4e8f11686ea5ce4e9bae01b84ae7c63b87f1dd3b", size = 102625, upload-time = "2025-05-26T14:30:31.824Z" }
|
1653 |
wheels = [
|
1654 |
+
{ url = "https://files.pythonhosted.org/packages/76/42/3efaf858001d2c2913de7f354563e3a3a2f0decae3efe98427125a8f441e/typer-0.16.0-py3-none-any.whl", hash = "sha256:1f79bed11d4d02d4310e3c1b7ba594183bcedb0ac73b27a9e5f28f6fb5b98855", size = 46317, upload-time = "2025-05-26T14:30:30.523Z" },
|
1655 |
]
|
1656 |
|
1657 |
[[package]]
|
|
|
1783 |
|
1784 |
[[package]]
|
1785 |
name = "zipp"
|
1786 |
+
version = "3.22.0"
|
1787 |
source = { registry = "https://pypi.org/simple" }
|
1788 |
+
sdist = { url = "https://files.pythonhosted.org/packages/12/b6/7b3d16792fdf94f146bed92be90b4eb4563569eca91513c8609aebf0c167/zipp-3.22.0.tar.gz", hash = "sha256:dd2f28c3ce4bc67507bfd3781d21b7bb2be31103b51a4553ad7d90b84e57ace5", size = 25257, upload-time = "2025-05-26T14:46:32.217Z" }
|
1789 |
wheels = [
|
1790 |
+
{ url = "https://files.pythonhosted.org/packages/ad/da/f64669af4cae46f17b90798a827519ce3737d31dbafad65d391e49643dc4/zipp-3.22.0-py3-none-any.whl", hash = "sha256:fe208f65f2aca48b81f9e6fd8cf7b8b32c26375266b009b413d45306b6148343", size = 9796, upload-time = "2025-05-26T14:46:30.775Z" },
|
1791 |
]
|