synapse-sdk 1.0.0a17__tar.gz → 1.0.0a18__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of synapse-sdk might be problematic. Click here for more details.
- {synapse_sdk-1.0.0a17/synapse_sdk.egg-info → synapse_sdk-1.0.0a18}/PKG-INFO +1 -1
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/base.py +5 -5
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/neural_net/actions/deployment.py +6 -1
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18/synapse_sdk.egg-info}/PKG-INFO +1 -1
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/.github/workflows/lint.yml +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/.github/workflows/pypi-publish.yml +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/.gitignore +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/.pre-commit-config.yaml +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/LICENSE +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/README.md +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/locale/en/LC_MESSAGES/messages.mo +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/locale/en/LC_MESSAGES/messages.po +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/locale/ko/LC_MESSAGES/messages.mo +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/locale/ko/LC_MESSAGES/messages.po +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/pyproject.toml +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/requirements.txt +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/setup.cfg +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/cli/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/cli/create_plugin.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/clients/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/clients/agent/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/clients/agent/core.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/clients/agent/ray.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/clients/agent/service.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/clients/backend/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/clients/backend/annotation.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/clients/backend/dataset.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/clients/backend/integration.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/clients/backend/ml.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/clients/base.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/clients/exceptions.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/clients/ray/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/clients/ray/core.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/clients/ray/serve.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/clients/utils.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/i18n.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/loggers.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/data_validation/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/data_validation/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/data_validation/actions/validation.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/data_validation/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/data_validation/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/data_validation/templates/plugin/validation.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/decorators.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/export/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/export/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/export/actions/export.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/import/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/import/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/import/actions/import.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/neural_net/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/neural_net/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/neural_net/actions/inference.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/neural_net/actions/test.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/neural_net/actions/train.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/neural_net/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/neural_net/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/neural_net/templates/plugin/inference.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/neural_net/templates/plugin/test.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/neural_net/templates/plugin/train.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/post_annotation/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/post_annotation/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/post_annotation/actions/post_annotation.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/post_annotation/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/post_annotation/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/post_annotation/templates/plugin/post_annotation.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/pre_annotation/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/pre_annotation/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/pre_annotation/actions/pre_annotation.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/pre_annotation/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/pre_annotation/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/pre_annotation/templates/plugin/pre_annotation.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/registry.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/smart_tool/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/smart_tool/actions/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/smart_tool/actions/auto_label.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/smart_tool/templates/config.yaml +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/smart_tool/templates/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/smart_tool/templates/plugin/auto_label.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/templates.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/cli/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/cli/publish.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/cli/run.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/enums.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/exceptions.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/models.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/templates/cookiecutter.json +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/templates/hooks/post_gen_project.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/templates/hooks/pre_prompt.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.env +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.env.dist +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.gitignore +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.pre-commit-config.yaml +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/README.md +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/config.yaml +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/main.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/plugin/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/pyproject.toml +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/requirements.txt +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/upload.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/utils.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/shared/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/shared/enums.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/utils/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/utils/debug.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/utils/file.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/utils/module_loading.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/utils/pydantic/__init__.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/utils/pydantic/config.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/utils/pydantic/errors.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/utils/pydantic/validators.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/utils/storage.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/utils/string.py +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk.egg-info/SOURCES.txt +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk.egg-info/dependency_links.txt +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk.egg-info/entry_points.txt +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk.egg-info/requires.txt +0 -0
- {synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk.egg-info/top_level.txt +0 -0
|
@@ -147,7 +147,8 @@ class Action:
|
|
|
147
147
|
return self.start_by_restapi()
|
|
148
148
|
else:
|
|
149
149
|
result = self.start()
|
|
150
|
-
self.
|
|
150
|
+
if self.job_id:
|
|
151
|
+
self.post_action_by_job(result)
|
|
151
152
|
return result
|
|
152
153
|
return getattr(self, f'start_by_{self.method.value}')()
|
|
153
154
|
|
|
@@ -227,10 +228,9 @@ class Action:
|
|
|
227
228
|
raise ActionError('Unable to connect to serve application')
|
|
228
229
|
|
|
229
230
|
def post_action_by_job(self, result):
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
self.client.update_job(self.job_id, data={'result': result or {}, 'console_logs': logs})
|
|
231
|
+
job_client = self.get_job_client()
|
|
232
|
+
logs = job_client.get_job_logs(self.job_id).split('\n')
|
|
233
|
+
self.client.update_job(self.job_id, data={'result': result or {}, 'console_logs': logs})
|
|
234
234
|
|
|
235
235
|
def get_job_client(self):
|
|
236
236
|
from ray.dashboard.modules.job.sdk import JobSubmissionClient
|
|
@@ -11,7 +11,12 @@ class DeploymentAction(Action):
|
|
|
11
11
|
method = RunMethod.JOB
|
|
12
12
|
|
|
13
13
|
def get_actor_options(self):
|
|
14
|
-
|
|
14
|
+
options = {'runtime_env': self.get_runtime_env()}
|
|
15
|
+
for option in ['num_cpus', 'num_gpus']:
|
|
16
|
+
option_value = self.params.get(option)
|
|
17
|
+
if option_value:
|
|
18
|
+
options[option] = option_value
|
|
19
|
+
return options
|
|
15
20
|
|
|
16
21
|
def start(self):
|
|
17
22
|
from ray import serve
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/export/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/import/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/neural_net/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/categories/smart_tool/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/templates/cookiecutter.json
RENAMED
|
File without changes
|
|
File without changes
|
{synapse_sdk-1.0.0a17 → synapse_sdk-1.0.0a18}/synapse_sdk/plugins/templates/hooks/pre_prompt.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|