supervisely 6.73.316__tar.gz → 6.73.317__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.
- {supervisely-6.73.316/supervisely.egg-info → supervisely-6.73.317}/PKG-INFO +1 -1
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/inference.py +341 -88
 - {supervisely-6.73.316 → supervisely-6.73.317/supervisely.egg-info}/PKG-INFO +1 -1
 - {supervisely-6.73.316 → supervisely-6.73.317}/LICENSE +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/README.md +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/pyproject.toml +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/setup.cfg +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/setup.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/README.md +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/_utils.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/annotation/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/annotation/annotation.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/annotation/annotation_transforms.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/annotation/json_geometries_map.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/annotation/label.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/annotation/obj_class.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/annotation/obj_class_collection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/annotation/obj_class_mapper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/annotation/renamer.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/annotation/tag.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/annotation/tag_collection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/annotation/tag_meta.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/annotation/tag_meta_collection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/annotation/tag_meta_mapper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/advanced_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/agent_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/annotation_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/app_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/dataset_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/entity_annotation/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/entity_annotation/entity_annotation_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/entity_annotation/figure_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/entity_annotation/object_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/entity_annotation/tag_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/file_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/github_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/image_annotation_tool_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/image_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/import_storage_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/issues_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/labeling_job_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/module_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/neural_network_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/object_class_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/plugin_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/pointcloud/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/pointcloud/pointcloud_annotation_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/pointcloud/pointcloud_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/pointcloud/pointcloud_episode_annotation_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/pointcloud/pointcloud_episode_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/pointcloud/pointcloud_episode_object_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/pointcloud/pointcloud_episode_tag_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/pointcloud/pointcloud_figure_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/pointcloud/pointcloud_object_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/pointcloud/pointcloud_tag_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/project_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/project_class_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/remote_storage_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/report_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/role_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/storage_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/task_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/team_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/user_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/video/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/video/video_annotation_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/video/video_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/video/video_figure_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/video/video_frame_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/video/video_object_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/video/video_tag_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/video_annotation_tool_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/volume/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/volume/volume_annotation_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/volume/volume_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/volume/volume_figure_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/volume/volume_object_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/volume/volume_tag_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/api/workspace_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/content.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/development/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/development/development.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/development/sly-net.sh +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/exceptions.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/export_template.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/fastapi/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/fastapi/custom_static_files.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/fastapi/dialog_window.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/fastapi/index.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/fastapi/no_html_main.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/fastapi/offline.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/fastapi/request.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/fastapi/subapp.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/fastapi/templating.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/fastapi/utils.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/fastapi/websocket.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/import_template.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/jinja2.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/singleton.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/v1/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/v1/app_config.md +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/v1/app_service.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/v1/constants.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/v1/sly-icon-example.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/v1/widgets/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/v1/widgets/chart.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/v1/widgets/compare_gallery.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/v1/widgets/empty_grid_gallery.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/v1/widgets/grid_gallery.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/v1/widgets/predictions_dynamics_gallery.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/v1/widgets/progress_bar.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/v1/widgets/single_image_gallery.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/agent_selector/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/agent_selector/agent_selector.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/agent_selector/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/apexchart/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/apexchart/apexchart.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/apexchart/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/augmentations/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/augmentations/augmentations.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/augmentations/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/badge/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/badge/badge.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/badge/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/binded_input_number/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/binded_input_number/binded_input_number.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/binded_input_number/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/bokeh/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/bokeh/bokeh.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/bokeh/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/button/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/button/button.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/button/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/button/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/card/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/card/card.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/card/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/card/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/carousel/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/carousel/carousel.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/carousel/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/cascader/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/cascader/cascader.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/cascader/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/checkbox/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/checkbox/checkbox.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/checkbox/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/checkbox_field/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/checkbox_field/checkbox_field.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/checkbox_field/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/circle_progress/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/circle_progress/circle_progress.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/circle_progress/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/class_balance/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/class_balance/class_balance.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/class_balance/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_color_mapping/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_color_mapping/classes_color_mapping.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_color_mapping/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_color_mapping/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_list_preview/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_list_preview/classes_list_preview.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_list_preview/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_list_preview/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_list_selector/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_list_selector/classes_list_selector.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_list_selector/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_list_selector/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_mapping/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_mapping/classes_mapping.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_mapping/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_mapping_preview/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_mapping_preview/classes_mapping_preview.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_mapping_preview/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_mapping_preview/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_table/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_table/classes_table.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_table/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classes_table/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classic_table/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classic_table/classic_table.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/classic_table/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/collapse/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/collapse/collapse.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/collapse/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/color_picker/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/color_picker/color_picker.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/color_picker/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/color_picker/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/compare_annotations/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/compare_annotations/compare_annotations.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/confusion_matrix/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/confusion_matrix/confusion_matrix.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/confusion_matrix/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/container/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/container/container.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/container/old_container.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/container/old_template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/container/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/container/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/copy_to_clipboard/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/copy_to_clipboard/copy_to_clipboard.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/copy_to_clipboard/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/custom_models_selector/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/custom_models_selector/custom_models_selector.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/custom_models_selector/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/custom_models_selector/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/dataset_thumbnail/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/dataset_thumbnail/dataset_thumbnail.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/dataset_thumbnail/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/date_picker/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/date_picker/date_picker.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/date_picker/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/datetime_picker/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/datetime_picker/datetime_picker.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/datetime_picker/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/destination_project/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/destination_project/destination_project.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/destination_project/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/dialog/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/dialog/dialog.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/dialog/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/done_label/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/done_label/done_label.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/done_label/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/draggable/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/draggable/draggable.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/draggable/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/draggable/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/dropdown/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/dropdown/dropdown.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/dropdown/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/editor/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/editor/editor.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/editor/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/element_button/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/element_button/element_button.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/element_button/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/element_button/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/element_tag/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/element_tag/element_tag.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/element_tag/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/element_tags_list/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/element_tags_list/element_tags_list.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/element_tags_list/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/empty/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/empty/empty.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/empty/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/experiment_selector/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/experiment_selector/experiment_selector.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/experiment_selector/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/experiment_selector/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/fast_table/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/fast_table/fast_table.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/fast_table/script.js +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/fast_table/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/fast_table/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/field/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/field/field.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/field/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/field/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/file_storage_upload/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/file_storage_upload/file_storage_upload.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/file_storage_upload/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/file_thumbnail/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/file_thumbnail/file_thumbnail.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/file_thumbnail/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/file_viewer/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/file_viewer/file_viewer.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/file_viewer/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/flexbox/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/flexbox/flexbox.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/flexbox/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/folder_thumbnail/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/folder_thumbnail/folder_thumbnail.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/folder_thumbnail/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/grid/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/grid/grid.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/grid/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/grid_chart/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/grid_chart/grid_chart.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/grid_chart/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/grid_gallery/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/grid_gallery/grid_gallery.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/grid_gallery/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/grid_gallery/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/grid_gallery_v2/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/grid_gallery_v2/grid_gallery_v2.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/grid_gallery_v2/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/grid_plot/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/grid_plot/grid_plot.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/grid_plot/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/heatmap_chart/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/heatmap_chart/heatmap_chart.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/icons/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/icons/icons.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/icons/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/identity/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/identity/identity.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/identity/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/iframe/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/iframe/iframe.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/iframe/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image/image.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image_annotation_preview/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image_annotation_preview/image_annotation_preview.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image_annotation_preview/script.js +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image_annotation_preview/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image_annotation_preview/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image_pair_sequence/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image_pair_sequence/image_pair_sequence.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image_pair_sequence/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image_region_selector/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image_region_selector/image_region_selector.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image_region_selector/script.js +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image_region_selector/styles.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image_region_selector/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image_slider/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image_slider/image_slider.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/image_slider/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/input/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/input/input.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/input/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/input_number/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/input_number/input_number.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/input_number/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/input_tag/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/input_tag/input_tag.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/input_tag/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/labeled_image/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/labeled_image/labeled_image.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/line_chart/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/line_chart/line_chart.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/line_plot/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/line_plot/line_plot.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/line_plot/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/markdown/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/markdown/markdown.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/markdown/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/markdown/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/match_datasets/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/match_datasets/match_datasets.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/match_datasets/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/match_tags_or_classes/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/match_tags_or_classes/match_tags_or_classes.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/match_tags_or_classes/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/members_list_preview/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/members_list_preview/members_list_preview.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/members_list_preview/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/members_list_selector/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/members_list_selector/members_list_selector.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/members_list_selector/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/members_list_selector/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/menu/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/menu/menu.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/menu/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/model_info/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/model_info/model_info.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/model_info/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/nodes_flow/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/nodes_flow/nodes_flow.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/nodes_flow/option_components.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/nodes_flow/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/notification_box/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/notification_box/notification_box.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/notification_box/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/notification_box/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/object_class_view/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/object_class_view/object_class_view.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/object_class_view/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/object_class_view/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/object_classes_list/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/object_classes_list/object_classes_list.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/object_classes_list/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/one_of/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/one_of/one_of.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/one_of/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/pagination/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/pagination/pagination.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/pagination/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/pie_chart/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/pie_chart/pie_chart.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/pretrained_models_selector/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/pretrained_models_selector/pretrained_models_selector.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/pretrained_models_selector/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/pretrained_models_selector/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/project_selector/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/project_selector/project_selector.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/project_selector/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/project_selector/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/project_thumbnail/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/project_thumbnail/project_thumbnail.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/project_thumbnail/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/project_thumbnail/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/radio_group/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/radio_group/radio_group.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/radio_group/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/radio_table/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/radio_table/radio_table.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/radio_table/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/radio_table/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/radio_tabs/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/radio_tabs/radio_tabs.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/radio_tabs/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/radio_tabs/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/random_splits_table/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/random_splits_table/random_splits_table.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/random_splits_table/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/rate/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/rate/rate.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/rate/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/reloadable_area/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/reloadable_area/reloadable_area.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/reloadable_area/script.js +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/reloadable_area/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/report_thumbnail/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/report_thumbnail/report_thumbnail.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/report_thumbnail/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/run_app_button/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/run_app_button/run_app_button.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/run_app_button/script.js +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/run_app_button/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/scatter_chart/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/scatter_chart/scatter_chart.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select/select.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_app_session/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_app_session/select_app_session.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_app_session/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_cuda/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_cuda/select_cuda.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_cuda/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_dataset/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_dataset/select_dataset.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_dataset/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_dataset_tree/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_dataset_tree/select_dataset_tree.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_dataset_tree/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_item/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_item/select_item.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_item/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_project/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_project/select_project.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_project/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_sly_utils.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_tag_meta/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_tag_meta/select_tag_meta.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_tag_meta/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_team/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_team/select_team.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_team/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_workspace/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_workspace/select_workspace.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/select_workspace/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/sidebar/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/sidebar/sidebar.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/sidebar/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/sidebar/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/slider/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/slider/slider.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/slider/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/sly_tqdm/README.md +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/sly_tqdm/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/sly_tqdm/sly_tqdm.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/sly_tqdm/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/sly_tqdm/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/stepper/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/stepper/stepper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/stepper/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/switch/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/switch/switch.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/switch/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/table/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/table/table.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/table/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tabs/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tabs/tabs.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tabs/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tabs_dynamic/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tabs_dynamic/tabs_dynamic.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tabs_dynamic/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tag_meta_view/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tag_meta_view/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tag_meta_view/tag_meta_view.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tag_meta_view/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tag_metas_list/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tag_metas_list/tag_metas_list.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tag_metas_list/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tags_list_preview/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tags_list_preview/tags_list_preview.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tags_list_preview/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tags_list_selector/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tags_list_selector/style.css +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tags_list_selector/tags_list_selector.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tags_list_selector/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tags_table/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tags_table/tags_table.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tags_table/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/task_logs/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/task_logs/task_logs.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/task_logs/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/team_files_selector/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/team_files_selector/team_files_selector.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/team_files_selector/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/text/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/text/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/text/text.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/textarea/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/textarea/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/textarea/textarea.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/time_picker/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/time_picker/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/time_picker/time_picker.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/timeline/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/timeline/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/timeline/timeline.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tooltip/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tooltip/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tooltip/tooltip.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/train_val_splits/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/train_val_splits/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/train_val_splits/train_val_splits.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/transfer/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/transfer/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/transfer/transfer.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tree_select/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tree_select/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/tree_select/tree_select.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/treemap_chart/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/treemap_chart/treemap_chart.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/video/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/video/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/video/video.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/video_player/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/video_player/script.js +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/video_player/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/video_player/video_player.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/video_thumbnail/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/video_thumbnail/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/video_thumbnail/video_thumbnail.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets/widget.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/app/widgets_context.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/aug/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/aug/aug.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/aug/imgaug_utils.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/cli/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/cli/cli.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/cli/project/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/cli/project/project_download.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/cli/project/project_get.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/cli/project/project_upload.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/cli/release/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/cli/release/release.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/cli/release/run.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/cli/task/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/cli/task/task_set.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/cli/teamfiles/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/cli/teamfiles/teamfiles_download.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/cli/teamfiles/teamfiles_remove.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/cli/teamfiles/teamfiles_upload.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/collection/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/collection/key_indexed_collection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/collection/str_enum.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/base_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/cityscapes/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/cityscapes/cityscapes_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/cityscapes/cityscapes_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/coco/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/coco/coco_anntotation_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/coco/coco_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/coco/coco_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/csv/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/csv/csv_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/csv/csv_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/high_color/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/high_color/high_color_depth.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/high_color/high_color_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/image_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/image_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/label_me/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/label_me/label_me_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/label_me/label_me_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/label_studio/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/label_studio/label_studio_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/label_studio/label_studio_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/masks/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/masks/image_with_masks_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/masks/images_with_masks_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/medical2d/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/medical2d/medical2d_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/medical2d/medical2d_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/multi_view/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/multi_view/multi_view.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/multispectral/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/multispectral/multispectral_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/pascal_voc/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/pascal_voc/pascal_voc_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/pascal_voc/pascal_voc_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/pdf/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/pdf/pdf_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/pdf/pdf_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/sly/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/sly/fast_sly_image_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/sly/sly_image_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/sly/sly_image_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/yolo/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/yolo/yolo_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/image/yolo/yolo_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/bag/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/bag/bag_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/bag/bag_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/kitti_3d/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/kitti_3d/kitti_3d_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/kitti_3d/kitti_3d_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/las/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/las/las_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/las/las_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/lyft/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/lyft/lyft_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/lyft/lyft_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/nuscenes_conv/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/nuscenes_conv/nuscenes_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/ply/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/ply/ply_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/ply/ply_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/pointcloud_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/sly/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/sly/sly_pointcloud_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud/sly/sly_pointcloud_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud_episodes/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud_episodes/bag/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud_episodes/bag/bag_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud_episodes/lyft/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud_episodes/lyft/lyft_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud_episodes/nuscenes_conv/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud_episodes/nuscenes_conv/nuscenes_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud_episodes/nuscenes_conv/nuscenes_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud_episodes/pointcloud_episodes_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud_episodes/sly/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud_episodes/sly/sly_pointcloud_episodes_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/pointcloud_episodes/sly/sly_pointcloud_episodes_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/video/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/video/davis/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/video/davis/davis_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/video/mot/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/video/mot/mot_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/video/sly/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/video/sly/sly_video_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/video/sly/sly_video_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/video/video_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/volume/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/volume/dicom/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/volume/dicom/dicom_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/volume/dicom/dicom_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/volume/sly/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/volume/sly/sly_volume_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/volume/sly/sly_volume_helper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/convert/volume/volume_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/decorators/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/decorators/inference.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/decorators/profile.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/delme_fastapi_helpers/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/export/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/export/pascal_voc.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/function_wrapper.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/alpha_mask.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/any_geometry.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/bitmap.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/bitmap_base.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/closed_surface_mesh.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/constants.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/conversions.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/cuboid.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/cuboid_2d.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/cuboid_3d.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/geometry.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/graph.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/helpers.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/image_rotator.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/main_tests.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/mask_3d.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/multichannel_bitmap.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/point.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/point_3d.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/point_location.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/pointcloud.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/polygon.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/polyline.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/rectangle.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/sliding_windows.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/sliding_windows_fuzzy.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/validation.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/geometry/vector_geometry.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/imaging/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/imaging/_video.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/imaging/color.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/imaging/colors.json.gz +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/imaging/font.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/imaging/image.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/io/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/io/docker_utils.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/io/env.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/io/exception_handlers.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/io/fs.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/io/fs_cache.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/io/github_utils.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/io/json.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/io/multipart_stream_decoder.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/io/network_exceptions.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/labeling_jobs/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/labeling_jobs/constants.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/labeling_jobs/utils.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/metric/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/metric/classification_metrics.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/metric/common.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/metric/confusion_matrix_metric.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/metric/iou_metric.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/metric/map_metric.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/metric/matching.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/metric/metric_base.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/metric/metrics_tests.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/metric/pixel_accuracy.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/metric/precision_recall_metric.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/metric/projects_applier.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/artifacts/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/artifacts/artifacts.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/artifacts/detectron2.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/artifacts/hrda.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/artifacts/mmclassification.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/artifacts/mmdetection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/artifacts/mmsegmentation.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/artifacts/ritm.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/artifacts/rtdetr.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/artifacts/unet.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/artifacts/utils.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/artifacts/yolov5.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/artifacts/yolov8.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/base_benchmark.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/base_evaluator.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/base_visualizer.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/base_visualizer.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/detection_visualization/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/detection_visualization/text_templates.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/avg_precision_by_class.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/calibration_score.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/explore_predictions.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/localization_accuracy.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/outcome_counts.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/overview.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/pr_curve.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/precision_recal_f1.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/detection_visualization/vis_metrics/speedtest.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/detection_visualization/visualizer.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/model_comparison.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/semantic_segmentation/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/semantic_segmentation/text_templates.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/semantic_segmentation/vis_metrics/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/semantic_segmentation/vis_metrics/classwise_error_analysis.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/semantic_segmentation/vis_metrics/explore_predictions.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/semantic_segmentation/vis_metrics/frequently_confused.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/semantic_segmentation/vis_metrics/iou_eou.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/semantic_segmentation/vis_metrics/overview.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/semantic_segmentation/vis_metrics/renormalized_error_ou.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/semantic_segmentation/vis_metrics/speedtest.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/comparison/semantic_segmentation/visualizer.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/cv_tasks.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/instance_segmentation/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/instance_segmentation/benchmark.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/instance_segmentation/evaluation_params.yaml +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/instance_segmentation/evaluator.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/instance_segmentation/text_templates.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/instance_segmentation/visualizer.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/base_vis_metric.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/benchmark.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/evaluation_params.yaml +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/evaluator.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/metric_provider.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/text_templates.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/confidence_distribution.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/confidence_score.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/confusion_matrix.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/explore_predictions.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/f1_score_at_different_iou.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/frequently_confused.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/iou_distribution.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/key_metrics.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/model_predictions.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/outcome_counts.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/outcome_counts_per_class.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/overview.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/pr_curve.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/pr_curve_by_class.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/precision.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/precision_avg_per_class.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/recall.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/recall_vs_precision.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/reliability_diagram.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/vis_metrics/speedtest.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/object_detection/visualizer.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/base_vis_metric.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/benchmark.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/evaluation_params.yaml +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/evaluator.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/metric_provider.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/text_templates.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/acknowledgement.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/classwise_error_analysis.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/confusion_matrix.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/explore_predictions.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/frequently_confused.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/iou_eou.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/key_metrics.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/model_predictions.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/overview.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/renormalized_error_ou.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/speedtest.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/vis_metrics/vis_texts.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/semantic_segmentation/visualizer.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/utils/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/utils/detection/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/utils/detection/calculate_metrics.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/utils/detection/coco_eval.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/utils/detection/metrics.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/utils/detection/sly2coco.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/utils/detection/utlis.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/utils/semantic_segmentation/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/utils/semantic_segmentation/calculate_metrics.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/utils/semantic_segmentation/evaluator.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/utils/semantic_segmentation/loader.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/utils/semantic_segmentation/utils.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/evaluation_result.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/renderer.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/report_template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/vis_click_data.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/chart/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/chart/chart.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/chart/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/collapse/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/collapse/collapse.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/container/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/container/container.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/gallery/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/gallery/gallery.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/gallery/template.html +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/markdown/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/markdown/markdown.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/notification/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/notification/notification.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/radio_group/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/radio_group/radio_group.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/sidebar/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/sidebar/sidebar.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/table/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/table/table.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/benchmark/visualization/widgets/widget.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/experiments.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/cache.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/gui/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/gui/gui.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/gui/serving_gui.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/gui/serving_gui_template.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/instance_segmentation/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/instance_segmentation/dashboard/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/instance_segmentation/dashboard/classes_ui.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/instance_segmentation/dashboard/deploy_ui.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/instance_segmentation/dashboard/main_ui.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/instance_segmentation/dashboard/preview.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/instance_segmentation/dashboard/preview_image.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/instance_segmentation/instance_segmentation.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/interactive_segmentation/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/interactive_segmentation/functional.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/interactive_segmentation/interactive_segmentation.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/object_detection/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/object_detection/object_detection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/object_detection_3d/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/object_detection_3d/object_detection_3d.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/pose_estimation/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/pose_estimation/pose_estimation.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/prompt_based_object_detection/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/prompt_based_object_detection/propmt_based_object_detection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/promptable_segmentation/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/promptable_segmentation/promptable_segmentation.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/salient_object_segmentation/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/salient_object_segmentation/salient_object_segmentation.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/semantic_segmentation/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/semantic_segmentation/semantic_segmentation.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/session.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/tracking/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/tracking/base_tracking.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/tracking/bbox_tracking.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/tracking/functional.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/tracking/mask_tracking.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/tracking/object_tracking_3d.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/tracking/point_tracking.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/tracking/tracker3d_interface.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/tracking/tracker_interface.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/inference/video_inference.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/config.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/dataset.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/hosted/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/hosted/class_indexing.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/hosted/constants.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/hosted/deploy.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/hosted/inference_batch.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/hosted/inference_batch_multiprocess.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/hosted/inference_modes.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/hosted/inference_single_image.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/hosted/legacy/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/hosted/legacy/inference_config.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/hosted/pytorch/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/hosted/pytorch/constants.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/hosted/pytorch/inference_applier.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/hosted/pytorch/trainer.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/hosted/trainer.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/inference/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/inference/rest_client.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/inference/rest_constants.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/inference/rest_server.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/pytorch/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/pytorch/cuda.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/pytorch/dataset.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/pytorch/inference.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/pytorch/metrics.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/pytorch/weights.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/raw_to_labels.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/training/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/legacy/training/eval_planner.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/prediction_dto.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/task_type.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/bot_sort/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/bot_sort/basetrack.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/bot_sort/bot_sort.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/bot_sort/fast_reid_interface.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/bot_sort/matching.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/bot_sort/sly_tracker.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/deep_sort/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/deep_sort/deep_sort/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/deep_sort/deep_sort/detection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/deep_sort/deep_sort/iou_matching.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/deep_sort/deep_sort/kalman_filter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/deep_sort/deep_sort/linear_assignment.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/deep_sort/deep_sort/nn_matching.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/deep_sort/deep_sort/track.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/deep_sort/deep_sort/tracker.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/deep_sort/deep_sort.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/deep_sort/generate_clip_detections.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/deep_sort/preprocessing.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/deep_sort/sly_tracker.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/tracker.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/utils/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/utils/gmc.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/tracker/utils/kalman_filter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/training/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/training/gui/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/training/gui/classes_selector.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/training/gui/gui.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/training/gui/hyperparameters_selector.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/training/gui/input_selector.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/training/gui/model_selector.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/training/gui/train_val_splits_selector.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/training/gui/training_artifacts.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/training/gui/training_logs.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/training/gui/training_process.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/training/gui/utils.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/training/loggers/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/training/loggers/base_train_logger.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/training/loggers/tensorboard_logger.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/training/train_app.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/nn/utils.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/output/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud/pointcloud.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_annotation/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_annotation/constants.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_annotation/pointcloud_annotation.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_annotation/pointcloud_episode_annotation.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_annotation/pointcloud_episode_frame.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_annotation/pointcloud_episode_frame_collection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_annotation/pointcloud_episode_object.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_annotation/pointcloud_episode_object_collection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_annotation/pointcloud_episode_tag.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_annotation/pointcloud_episode_tag_collection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_annotation/pointcloud_figure.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_annotation/pointcloud_object.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_annotation/pointcloud_object_collection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_annotation/pointcloud_tag.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_annotation/pointcloud_tag_collection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_episodes/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pointcloud_episodes/pointcloud_episodes.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/project/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/project/data_version.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/project/download.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/project/pointcloud_episode_project.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/project/pointcloud_project.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/project/project.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/project/project_meta.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/project/project_settings.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/project/project_type.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/project/readme_template.md +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/project/upload.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/project/video_project.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/project/volume_project.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pyscripts_utils/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/pyscripts_utils/utils.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/report/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/report/table.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/script/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/script/utils.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/sly_logger.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/task/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/task/paths.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/task/progress.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/task/task_logger.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/team_files/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/team_files/team_files_path.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/tiny_timer.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/user/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/user/user.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/video/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/video/import_utils.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/video/video.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/video_annotation/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/video_annotation/constants.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/video_annotation/frame.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/video_annotation/frame_collection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/video_annotation/key_id_map.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/video_annotation/video_annotation.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/video_annotation/video_figure.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/video_annotation/video_object.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/video_annotation/video_object_collection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/video_annotation/video_tag.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/video_annotation/video_tag_collection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/volume/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/volume/nrrd_encoder.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/volume/nrrd_loader.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/volume/stl_converter.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/volume/volume.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/volume_annotation/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/volume_annotation/constants.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/volume_annotation/plane.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/volume_annotation/slice.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/volume_annotation/volume_annotation.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/volume_annotation/volume_figure.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/volume_annotation/volume_object.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/volume_annotation/volume_object_collection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/volume_annotation/volume_tag.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/volume_annotation/volume_tag_collection.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/worker_api/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/worker_api/agent_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/worker_api/agent_rpc.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/worker_api/chunking.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/worker_api/interfaces.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/worker_api/retriers.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/worker_api/rpc_servicer.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/worker_proto/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/worker_proto/worker_api_pb2.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/worker_proto/worker_api_pb2_grpc.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely.egg-info/SOURCES.txt +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely.egg-info/dependency_links.txt +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely.egg-info/entry_points.txt +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely.egg-info/requires.txt +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely.egg-info/top_level.txt +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/supervisely_lib/__init__.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/tests/test-api-file-list.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/tests/test_api_video.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/tests/test_async_file_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/tests/test_async_image_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/tests/test_async_pcd_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/tests/test_async_project.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/tests/test_async_project_video.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/tests/test_async_video_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/tests/test_async_volume_api.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/tests/test_output.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/tests/test_setup.py +0 -0
 - {supervisely-6.73.316 → supervisely-6.73.317}/tests/test_video_rotations.py +0 -0
 
| 
         @@ -66,6 +66,7 @@ from supervisely.decorators.inference import ( 
     | 
|
| 
       66 
66 
     | 
    
         
             
            )
         
     | 
| 
       67 
67 
     | 
    
         
             
            from supervisely.geometry.any_geometry import AnyGeometry
         
     | 
| 
       68 
68 
     | 
    
         
             
            from supervisely.imaging.color import get_predefined_colors
         
     | 
| 
      
 69 
     | 
    
         
            +
            from supervisely.io.fs import list_files
         
     | 
| 
       69 
70 
     | 
    
         
             
            from supervisely.nn.inference.cache import InferenceImageCache
         
     | 
| 
       70 
71 
     | 
    
         
             
            from supervisely.nn.prediction_dto import Prediction
         
     | 
| 
       71 
72 
     | 
    
         
             
            from supervisely.nn.utils import (
         
     | 
| 
         @@ -80,6 +81,7 @@ from supervisely.project.download import download_to_cache, read_from_cached_pro 
     | 
|
| 
       80 
81 
     | 
    
         
             
            from supervisely.project.project_meta import ProjectMeta
         
     | 
| 
       81 
82 
     | 
    
         
             
            from supervisely.sly_logger import logger
         
     | 
| 
       82 
83 
     | 
    
         
             
            from supervisely.task.progress import Progress
         
     | 
| 
      
 84 
     | 
    
         
            +
            from supervisely.video.video import ALLOWED_VIDEO_EXTENSIONS
         
     | 
| 
       83 
85 
     | 
    
         | 
| 
       84 
86 
     | 
    
         
             
            try:
         
     | 
| 
       85 
87 
     | 
    
         
             
                from typing import Literal
         
     | 
| 
         @@ -112,8 +114,8 @@ class Inference: 
     | 
|
| 
       112 
114 
     | 
    
         
             
                    use_serving_gui_template: Optional[bool] = False,
         
     | 
| 
       113 
115 
     | 
    
         
             
                ):
         
     | 
| 
       114 
116 
     | 
    
         | 
| 
      
 117 
     | 
    
         
            +
                    self.pretrained_models = self._load_models_json_file(self.MODELS) if self.MODELS else None
         
     | 
| 
       115 
118 
     | 
    
         
             
                    self._args, self._is_local_deploy = self._parse_local_deploy_args()
         
     | 
| 
       116 
     | 
    
         
            -
             
     | 
| 
       117 
119 
     | 
    
         
             
                    if model_dir is None:
         
     | 
| 
       118 
120 
     | 
    
         
             
                        if self._is_local_deploy is True:
         
     | 
| 
       119 
121 
     | 
    
         
             
                            try:
         
     | 
| 
         @@ -143,7 +145,6 @@ class Inference: 
     | 
|
| 
       143 
145 
     | 
    
         
             
                    self._autostart_delay_time = 5 * 60  # 5 min
         
     | 
| 
       144 
146 
     | 
    
         
             
                    self._tracker = None
         
     | 
| 
       145 
147 
     | 
    
         
             
                    self._hardware: str = None
         
     | 
| 
       146 
     | 
    
         
            -
                    self.pretrained_models = self._load_models_json_file(self.MODELS) if self.MODELS else None
         
     | 
| 
       147 
148 
     | 
    
         
             
                    if custom_inference_settings is None:
         
     | 
| 
       148 
149 
     | 
    
         
             
                        if self.INFERENCE_SETTINGS is not None:
         
     | 
| 
       149 
150 
     | 
    
         
             
                            custom_inference_settings = self.INFERENCE_SETTINGS
         
     | 
| 
         @@ -169,7 +170,6 @@ class Inference: 
     | 
|
| 
       169 
170 
     | 
    
         
             
                    self.load_model = LOAD_MODEL_DECORATOR(self.load_model)
         
     | 
| 
       170 
171 
     | 
    
         | 
| 
       171 
172 
     | 
    
         
             
                    if self._is_local_deploy:
         
     | 
| 
       172 
     | 
    
         
            -
                        # self._args = self._parse_local_deploy_args()
         
     | 
| 
       173 
173 
     | 
    
         
             
                        self._use_gui = False
         
     | 
| 
       174 
174 
     | 
    
         
             
                        deploy_params, need_download = self._get_deploy_params_from_args()
         
     | 
| 
       175 
175 
     | 
    
         
             
                        if need_download:
         
     | 
| 
         @@ -379,7 +379,8 @@ class Inference: 
     | 
|
| 
       379 
379 
     | 
    
         | 
| 
       380 
380 
     | 
    
         
             
                    if isinstance(self.gui, GUI.ServingGUITemplate):
         
     | 
| 
       381 
381 
     | 
    
         
             
                        self._app_layout = Container(
         
     | 
| 
       382 
     | 
    
         
            -
                            [self._user_layout_card, self._api_request_model_layout, self.get_ui()], 
     | 
| 
      
 382 
     | 
    
         
            +
                            [self._user_layout_card, self._api_request_model_layout, self.get_ui()],
         
     | 
| 
      
 383 
     | 
    
         
            +
                            gap=5,
         
     | 
| 
       383 
384 
     | 
    
         
             
                        )
         
     | 
| 
       384 
385 
     | 
    
         
             
                        return
         
     | 
| 
       385 
386 
     | 
    
         | 
| 
         @@ -399,7 +400,8 @@ class Inference: 
     | 
|
| 
       399 
400 
     | 
    
         
             
                        )
         
     | 
| 
       400 
401 
     | 
    
         | 
| 
       401 
402 
     | 
    
         
             
                    self._app_layout = Container(
         
     | 
| 
       402 
     | 
    
         
            -
                        [self._user_layout_card, self._api_request_model_layout, self.get_ui()], 
     | 
| 
      
 403 
     | 
    
         
            +
                        [self._user_layout_card, self._api_request_model_layout, self.get_ui()],
         
     | 
| 
      
 404 
     | 
    
         
            +
                        gap=5,
         
     | 
| 
       403 
405 
     | 
    
         
             
                    )
         
     | 
| 
       404 
406 
     | 
    
         | 
| 
       405 
407 
     | 
    
         
             
                def support_custom_models(self) -> bool:
         
     | 
| 
         @@ -609,7 +611,9 @@ class Inference: 
     | 
|
| 
       609 
611 
     | 
    
         
             
                                    ) as download_pbar:
         
     | 
| 
       610 
612 
     | 
    
         
             
                                        self.gui.download_progress.show()
         
     | 
| 
       611 
613 
     | 
    
         
             
                                        sly_fs.download(
         
     | 
| 
       612 
     | 
    
         
            -
                                            url=file_url, 
     | 
| 
      
 614 
     | 
    
         
            +
                                            url=file_url,
         
     | 
| 
      
 615 
     | 
    
         
            +
                                            save_path=file_path,
         
     | 
| 
      
 616 
     | 
    
         
            +
                                            progress=download_pbar.update,
         
     | 
| 
       613 
617 
     | 
    
         
             
                                        )
         
     | 
| 
       614 
618 
     | 
    
         
             
                                else:
         
     | 
| 
       615 
619 
     | 
    
         
             
                                    sly_fs.download(url=file_url, save_path=file_path)
         
     | 
| 
         @@ -887,7 +891,14 @@ class Inference: 
     | 
|
| 
       887 
891 
     | 
    
         
             
                @property
         
     | 
| 
       888 
892 
     | 
    
         
             
                def api(self) -> Api:
         
     | 
| 
       889 
893 
     | 
    
         
             
                    if self._api is None:
         
     | 
| 
       890 
     | 
    
         
            -
                         
     | 
| 
      
 894 
     | 
    
         
            +
                        if (
         
     | 
| 
      
 895 
     | 
    
         
            +
                            self._is_local_deploy
         
     | 
| 
      
 896 
     | 
    
         
            +
                            and os.getenv("SERVER_ADDRESS") is None
         
     | 
| 
      
 897 
     | 
    
         
            +
                            and os.getenv("API_TOKEN") is None
         
     | 
| 
      
 898 
     | 
    
         
            +
                        ):
         
     | 
| 
      
 899 
     | 
    
         
            +
                            return None
         
     | 
| 
      
 900 
     | 
    
         
            +
                        else:
         
     | 
| 
      
 901 
     | 
    
         
            +
                            self._api = Api()
         
     | 
| 
       891 
902 
     | 
    
         
             
                    return self._api
         
     | 
| 
       892 
903 
     | 
    
         | 
| 
       893 
904 
     | 
    
         
             
                @property
         
     | 
| 
         @@ -2372,7 +2383,7 @@ class Inference: 
     | 
|
| 
       2372 
2383 
     | 
    
         
             
                    logger.debug("Scheduled task.", extra={"inference_request_uuid": inference_request_uuid})
         
     | 
| 
       2373 
2384 
     | 
    
         | 
| 
       2374 
2385 
     | 
    
         
             
                def serve(self):
         
     | 
| 
       2375 
     | 
    
         
            -
                    if not self._use_gui:
         
     | 
| 
      
 2386 
     | 
    
         
            +
                    if not self._use_gui and not self._is_local_deploy:
         
     | 
| 
       2376 
2387 
     | 
    
         
             
                        Progress("Deploying model ...", 1)
         
     | 
| 
       2377 
2388 
     | 
    
         | 
| 
       2378 
2389 
     | 
    
         
             
                    if is_debug_with_sly_net():
         
     | 
| 
         @@ -2390,6 +2401,21 @@ class Inference: 
     | 
|
| 
       2390 
2401 
     | 
    
         
             
                        if not self._is_local_deploy:
         
     | 
| 
       2391 
2402 
     | 
    
         
             
                            self._task_id = sly_env.task_id() if is_production() else None
         
     | 
| 
       2392 
2403 
     | 
    
         | 
| 
      
 2404 
     | 
    
         
            +
                    if self._is_local_deploy:
         
     | 
| 
      
 2405 
     | 
    
         
            +
                        # Predict and shutdown
         
     | 
| 
      
 2406 
     | 
    
         
            +
                        if self._args.mode == "predict" and any(
         
     | 
| 
      
 2407 
     | 
    
         
            +
                            [
         
     | 
| 
      
 2408 
     | 
    
         
            +
                                self._args.input,
         
     | 
| 
      
 2409 
     | 
    
         
            +
                                self._args.project_id,
         
     | 
| 
      
 2410 
     | 
    
         
            +
                                self._args.dataset_id,
         
     | 
| 
      
 2411 
     | 
    
         
            +
                                self._args.image_id,
         
     | 
| 
      
 2412 
     | 
    
         
            +
                            ]
         
     | 
| 
      
 2413 
     | 
    
         
            +
                        ):
         
     | 
| 
      
 2414 
     | 
    
         
            +
             
     | 
| 
      
 2415 
     | 
    
         
            +
                            self._parse_inference_settings_from_args()
         
     | 
| 
      
 2416 
     | 
    
         
            +
                            self._inference_by_local_deploy_args()
         
     | 
| 
      
 2417 
     | 
    
         
            +
                            exit(0)
         
     | 
| 
      
 2418 
     | 
    
         
            +
             
     | 
| 
       2393 
2419 
     | 
    
         
             
                    if isinstance(self.gui, GUI.InferenceGUI):
         
     | 
| 
       2394 
2420 
     | 
    
         
             
                        self._app = Application(layout=self.get_ui())
         
     | 
| 
       2395 
2421 
     | 
    
         
             
                    elif isinstance(self.gui, GUI.ServingGUI):
         
     | 
| 
         @@ -2402,22 +2428,6 @@ class Inference: 
     | 
|
| 
       2402 
2428 
     | 
    
         
             
                    server = self._app.get_server()
         
     | 
| 
       2403 
2429 
     | 
    
         
             
                    self._app.set_ready_check_function(self.is_model_deployed)
         
     | 
| 
       2404 
2430 
     | 
    
         | 
| 
       2405 
     | 
    
         
            -
                    if self._is_local_deploy:
         
     | 
| 
       2406 
     | 
    
         
            -
                        # Predict and shutdown
         
     | 
| 
       2407 
     | 
    
         
            -
                        if any(
         
     | 
| 
       2408 
     | 
    
         
            -
                            [
         
     | 
| 
       2409 
     | 
    
         
            -
                                self._args.predict_project,
         
     | 
| 
       2410 
     | 
    
         
            -
                                self._args.predict_dataset,
         
     | 
| 
       2411 
     | 
    
         
            -
                                self._args.predict_dir,
         
     | 
| 
       2412 
     | 
    
         
            -
                                self._args.predict_image,
         
     | 
| 
       2413 
     | 
    
         
            -
                            ]
         
     | 
| 
       2414 
     | 
    
         
            -
                        ):
         
     | 
| 
       2415 
     | 
    
         
            -
                            self._inference_by_local_deploy_args()
         
     | 
| 
       2416 
     | 
    
         
            -
                            # Gracefully shut down the server
         
     | 
| 
       2417 
     | 
    
         
            -
                            self._app.shutdown()
         
     | 
| 
       2418 
     | 
    
         
            -
                            exit(0)
         
     | 
| 
       2419 
     | 
    
         
            -
                    # else: run server after endpoints
         
     | 
| 
       2420 
     | 
    
         
            -
             
     | 
| 
       2421 
2431 
     | 
    
         
             
                    @call_on_autostart()
         
     | 
| 
       2422 
2432 
     | 
    
         
             
                    def autostart_func():
         
     | 
| 
       2423 
2433 
     | 
    
         
             
                        gpu_count = get_gpu_count()
         
     | 
| 
         @@ -2924,6 +2934,10 @@ class Inference: 
     | 
|
| 
       2924 
2934 
     | 
    
         
             
                def _parse_local_deploy_args(self):
         
     | 
| 
       2925 
2935 
     | 
    
         
             
                    parser = argparse.ArgumentParser(description="Run Inference Serving")
         
     | 
| 
       2926 
2936 
     | 
    
         | 
| 
      
 2937 
     | 
    
         
            +
                    # Positional args
         
     | 
| 
      
 2938 
     | 
    
         
            +
                    parser.add_argument("mode", choices=["deploy", "predict"], help="Mode of operation")
         
     | 
| 
      
 2939 
     | 
    
         
            +
                    parser.add_argument("input", nargs="?", type=str, help="Local path to input data")
         
     | 
| 
      
 2940 
     | 
    
         
            +
             
     | 
| 
       2927 
2941 
     | 
    
         
             
                    # Deploy args
         
     | 
| 
       2928 
2942 
     | 
    
         
             
                    parser.add_argument(
         
     | 
| 
       2929 
2943 
     | 
    
         
             
                        "--model",
         
     | 
| 
         @@ -2940,51 +2954,129 @@ class Inference: 
     | 
|
| 
       2940 
2954 
     | 
    
         
             
                    parser.add_argument(
         
     | 
| 
       2941 
2955 
     | 
    
         
             
                        "--runtime",
         
     | 
| 
       2942 
2956 
     | 
    
         
             
                        type=str,
         
     | 
| 
       2943 
     | 
    
         
            -
                        choices=[ 
     | 
| 
      
 2957 
     | 
    
         
            +
                        choices=[
         
     | 
| 
      
 2958 
     | 
    
         
            +
                            RuntimeType.PYTORCH,
         
     | 
| 
      
 2959 
     | 
    
         
            +
                            RuntimeType.ONNXRUNTIME,
         
     | 
| 
      
 2960 
     | 
    
         
            +
                            RuntimeType.TENSORRT,
         
     | 
| 
      
 2961 
     | 
    
         
            +
                        ],
         
     | 
| 
       2944 
2962 
     | 
    
         
             
                        default=RuntimeType.PYTORCH,
         
     | 
| 
       2945 
2963 
     | 
    
         
             
                        help="Runtime type for inference (default: PYTORCH)",
         
     | 
| 
       2946 
2964 
     | 
    
         
             
                    )
         
     | 
| 
       2947 
2965 
     | 
    
         
             
                    # -------------------------- #
         
     | 
| 
       2948 
2966 
     | 
    
         | 
| 
       2949 
     | 
    
         
            -
                    #  
     | 
| 
       2950 
     | 
    
         
            -
                    parser.add_argument("--predict-project", type=int, required=False, help="ID of the project")
         
     | 
| 
      
 2967 
     | 
    
         
            +
                    # Remote predict
         
     | 
| 
       2951 
2968 
     | 
    
         
             
                    parser.add_argument(
         
     | 
| 
       2952 
     | 
    
         
            -
                        "-- 
     | 
| 
      
 2969 
     | 
    
         
            +
                        "--project_id",
         
     | 
| 
      
 2970 
     | 
    
         
            +
                        type=int,
         
     | 
| 
      
 2971 
     | 
    
         
            +
                        required=False,
         
     | 
| 
      
 2972 
     | 
    
         
            +
                        help="Project ID on Supervisely instance",
         
     | 
| 
      
 2973 
     | 
    
         
            +
                    )
         
     | 
| 
      
 2974 
     | 
    
         
            +
                    parser.add_argument(
         
     | 
| 
      
 2975 
     | 
    
         
            +
                        "--dataset_id",
         
     | 
| 
       2953 
2976 
     | 
    
         
             
                        type=lambda x: [int(i) for i in x.split(",")] if "," in x else int(x),
         
     | 
| 
       2954 
2977 
     | 
    
         
             
                        required=False,
         
     | 
| 
       2955 
     | 
    
         
            -
                        help="ID of the dataset or a comma-separated list of dataset IDs",
         
     | 
| 
      
 2978 
     | 
    
         
            +
                        help="ID of the dataset or a comma-separated list of dataset IDs e.g. '505,506,507'",
         
     | 
| 
       2956 
2979 
     | 
    
         
             
                    )
         
     | 
| 
       2957 
2980 
     | 
    
         
             
                    parser.add_argument(
         
     | 
| 
       2958 
     | 
    
         
            -
                        "-- 
     | 
| 
       2959 
     | 
    
         
            -
                        type= 
     | 
| 
      
 2981 
     | 
    
         
            +
                        "--image_id",
         
     | 
| 
      
 2982 
     | 
    
         
            +
                        type=int,
         
     | 
| 
       2960 
2983 
     | 
    
         
             
                        required=False,
         
     | 
| 
       2961 
     | 
    
         
            -
                        help=" 
     | 
| 
      
 2984 
     | 
    
         
            +
                        help="Image ID on Supervisely instance",
         
     | 
| 
       2962 
2985 
     | 
    
         
             
                    )
         
     | 
| 
      
 2986 
     | 
    
         
            +
                    # -------------------------- #
         
     | 
| 
      
 2987 
     | 
    
         
            +
             
     | 
| 
      
 2988 
     | 
    
         
            +
                    # Output args
         
     | 
| 
       2963 
2989 
     | 
    
         
             
                    parser.add_argument(
         
     | 
| 
       2964 
     | 
    
         
            -
                        "-- 
     | 
| 
      
 2990 
     | 
    
         
            +
                        "--output",
         
     | 
| 
       2965 
2991 
     | 
    
         
             
                        type=str,
         
     | 
| 
       2966 
2992 
     | 
    
         
             
                        required=False,
         
     | 
| 
       2967 
     | 
    
         
            -
                        help=" 
     | 
| 
      
 2993 
     | 
    
         
            +
                        help="Path to local directory where predictions will be saved. Default: './predictions'",
         
     | 
| 
      
 2994 
     | 
    
         
            +
                    )
         
     | 
| 
      
 2995 
     | 
    
         
            +
                    parser.add_argument(
         
     | 
| 
      
 2996 
     | 
    
         
            +
                        "--upload",
         
     | 
| 
      
 2997 
     | 
    
         
            +
                        required=False,
         
     | 
| 
      
 2998 
     | 
    
         
            +
                        action="store_true",
         
     | 
| 
      
 2999 
     | 
    
         
            +
                        help="Upload predictions to Supervisely instance. Works only with: '--project_id', '--dataset_id', '--image_id'. For project and dataset predictions a new project will be created. Default: False",
         
     | 
| 
       2968 
3000 
     | 
    
         
             
                    )
         
     | 
| 
       2969 
3001 
     | 
    
         
             
                    # -------------------------- #
         
     | 
| 
       2970 
3002 
     | 
    
         | 
| 
       2971 
     | 
    
         
            -
                    #  
     | 
| 
       2972 
     | 
    
         
            -
                    parser.add_argument( 
     | 
| 
       2973 
     | 
    
         
            -
             
     | 
| 
      
 3003 
     | 
    
         
            +
                    # Other args
         
     | 
| 
      
 3004 
     | 
    
         
            +
                    parser.add_argument(
         
     | 
| 
      
 3005 
     | 
    
         
            +
                        "--settings",
         
     | 
| 
      
 3006 
     | 
    
         
            +
                        type=str,
         
     | 
| 
      
 3007 
     | 
    
         
            +
                        required=False,
         
     | 
| 
      
 3008 
     | 
    
         
            +
                        nargs="*",
         
     | 
| 
      
 3009 
     | 
    
         
            +
                        help="Path to the settings JSON/YAML file or key=value pairs",
         
     | 
| 
      
 3010 
     | 
    
         
            +
                    )
         
     | 
| 
      
 3011 
     | 
    
         
            +
                    parser.add_argument(
         
     | 
| 
      
 3012 
     | 
    
         
            +
                        "--draw",
         
     | 
| 
      
 3013 
     | 
    
         
            +
                        required=False,
         
     | 
| 
      
 3014 
     | 
    
         
            +
                        action="store_true",
         
     | 
| 
      
 3015 
     | 
    
         
            +
                        help="Generate new images with visualized predictions. Default: False",
         
     | 
| 
      
 3016 
     | 
    
         
            +
                    )
         
     | 
| 
       2974 
3017 
     | 
    
         
             
                    # -------------------------- #
         
     | 
| 
       2975 
3018 
     | 
    
         | 
| 
       2976 
3019 
     | 
    
         
             
                    # Parse arguments
         
     | 
| 
       2977 
3020 
     | 
    
         
             
                    args, _ = parser.parse_known_args()
         
     | 
| 
       2978 
3021 
     | 
    
         
             
                    if args.model is None:
         
     | 
| 
       2979 
     | 
    
         
            -
                         
     | 
| 
       2980 
     | 
    
         
            -
             
     | 
| 
       2981 
     | 
    
         
            -
             
     | 
| 
       2982 
     | 
    
         
            -
                         
     | 
| 
       2983 
     | 
    
         
            -
             
     | 
| 
       2984 
     | 
    
         
            -
                        if  
     | 
| 
       2985 
     | 
    
         
            -
                             
     | 
| 
      
 3022 
     | 
    
         
            +
                        if len(self.pretrained_models) == 0:
         
     | 
| 
      
 3023 
     | 
    
         
            +
                            raise ValueError("No pretrained models found.")
         
     | 
| 
      
 3024 
     | 
    
         
            +
             
     | 
| 
      
 3025 
     | 
    
         
            +
                        model = self.pretrained_models[0]
         
     | 
| 
      
 3026 
     | 
    
         
            +
                        model_name = model.get("meta", {}).get("model_name", None)
         
     | 
| 
      
 3027 
     | 
    
         
            +
                        if model_name is None:
         
     | 
| 
      
 3028 
     | 
    
         
            +
                            raise ValueError("No model name found in the first pretrained model.")
         
     | 
| 
      
 3029 
     | 
    
         
            +
             
     | 
| 
      
 3030 
     | 
    
         
            +
                        args.model = model_name
         
     | 
| 
      
 3031 
     | 
    
         
            +
                        logger.info(
         
     | 
| 
      
 3032 
     | 
    
         
            +
                            f"Argument '--model' is not provided. Model: '{model_name}' will be deployed."
         
     | 
| 
      
 3033 
     | 
    
         
            +
                        )
         
     | 
| 
      
 3034 
     | 
    
         
            +
                    if args.mode not in ["deploy", "predict"]:
         
     | 
| 
      
 3035 
     | 
    
         
            +
                        raise ValueError("Invalid operation. Only 'deploy' or 'predict' is supported.")
         
     | 
| 
      
 3036 
     | 
    
         
            +
                    if args.output is None:
         
     | 
| 
      
 3037 
     | 
    
         
            +
                        args.output = "./predictions"
         
     | 
| 
      
 3038 
     | 
    
         
            +
                    if isinstance(args.dataset_id, int):
         
     | 
| 
      
 3039 
     | 
    
         
            +
                        args.dataset_id = [args.dataset_id]
         
     | 
| 
      
 3040 
     | 
    
         
            +
             
     | 
| 
       2986 
3041 
     | 
    
         
             
                    return args, True
         
     | 
| 
       2987 
3042 
     | 
    
         | 
| 
      
 3043 
     | 
    
         
            +
                def _parse_inference_settings_from_args(self):
         
     | 
| 
      
 3044 
     | 
    
         
            +
                    def parse_value(value: str):
         
     | 
| 
      
 3045 
     | 
    
         
            +
                        if value.lower() in ("true", "false"):
         
     | 
| 
      
 3046 
     | 
    
         
            +
                            return value.lower() == "true"
         
     | 
| 
      
 3047 
     | 
    
         
            +
                        if value.lower() == ("none", "null"):
         
     | 
| 
      
 3048 
     | 
    
         
            +
                            return None
         
     | 
| 
      
 3049 
     | 
    
         
            +
                        if value.isdigit():
         
     | 
| 
      
 3050 
     | 
    
         
            +
                            return int(value)
         
     | 
| 
      
 3051 
     | 
    
         
            +
                        if "." in value:
         
     | 
| 
      
 3052 
     | 
    
         
            +
                            parts = value.split(".")
         
     | 
| 
      
 3053 
     | 
    
         
            +
                            if len(parts) == 2 and parts[0].isdigit() and parts[1].isdigit():
         
     | 
| 
      
 3054 
     | 
    
         
            +
                                return float(value)
         
     | 
| 
      
 3055 
     | 
    
         
            +
                        return value
         
     | 
| 
      
 3056 
     | 
    
         
            +
             
     | 
| 
      
 3057 
     | 
    
         
            +
                    args = self._args
         
     | 
| 
      
 3058 
     | 
    
         
            +
                    # Parse settings argument
         
     | 
| 
      
 3059 
     | 
    
         
            +
                    settings_dict = {}
         
     | 
| 
      
 3060 
     | 
    
         
            +
                    if args.settings:
         
     | 
| 
      
 3061 
     | 
    
         
            +
                        is_settings_file = args.settings[0].endswith((".json", ".yaml", ".yml"))
         
     | 
| 
      
 3062 
     | 
    
         
            +
                        if len(args.settings) == 1 and is_settings_file:
         
     | 
| 
      
 3063 
     | 
    
         
            +
                            args.settings = args.settings[0]
         
     | 
| 
      
 3064 
     | 
    
         
            +
                        else:
         
     | 
| 
      
 3065 
     | 
    
         
            +
                            for setting in args.settings:
         
     | 
| 
      
 3066 
     | 
    
         
            +
                                if "=" in setting:
         
     | 
| 
      
 3067 
     | 
    
         
            +
                                    key, value = setting.split("=", 1)
         
     | 
| 
      
 3068 
     | 
    
         
            +
                                    settings_dict[key] = parse_value(value)
         
     | 
| 
      
 3069 
     | 
    
         
            +
                                elif ":" in setting:
         
     | 
| 
      
 3070 
     | 
    
         
            +
                                    key, value = setting.split(":", 1)
         
     | 
| 
      
 3071 
     | 
    
         
            +
                                    settings_dict[key] = parse_value(value)
         
     | 
| 
      
 3072 
     | 
    
         
            +
                                else:
         
     | 
| 
      
 3073 
     | 
    
         
            +
                                    raise ValueError(
         
     | 
| 
      
 3074 
     | 
    
         
            +
                                        f"Invalid setting: '{setting}'. Please use key value pairs separated by '=', e.g. conf=0.4'"
         
     | 
| 
      
 3075 
     | 
    
         
            +
                                    )
         
     | 
| 
      
 3076 
     | 
    
         
            +
                            args.settings = settings_dict
         
     | 
| 
      
 3077 
     | 
    
         
            +
                    args.settings = self._read_settings(args.settings)
         
     | 
| 
      
 3078 
     | 
    
         
            +
                    self._validate_settings(args.settings)
         
     | 
| 
      
 3079 
     | 
    
         
            +
             
     | 
| 
       2988 
3080 
     | 
    
         
             
                def _get_pretrained_model_params_from_args(self):
         
     | 
| 
       2989 
3081 
     | 
    
         
             
                    model_files = None
         
     | 
| 
       2990 
3082 
     | 
    
         
             
                    model_source = None
         
     | 
| 
         @@ -3119,64 +3211,225 @@ class Inference: 
     | 
|
| 
       3119 
3211 
     | 
    
         
             
                    self._uvicorn_server = uvicorn.Server(config)
         
     | 
| 
       3120 
3212 
     | 
    
         
             
                    self._uvicorn_server.run()
         
     | 
| 
       3121 
3213 
     | 
    
         | 
| 
      
 3214 
     | 
    
         
            +
                def _read_settings(self, settings: Union[str, Dict[str, Any]]):
         
     | 
| 
      
 3215 
     | 
    
         
            +
                    if isinstance(settings, dict):
         
     | 
| 
      
 3216 
     | 
    
         
            +
                        return settings
         
     | 
| 
      
 3217 
     | 
    
         
            +
             
     | 
| 
      
 3218 
     | 
    
         
            +
                    settings_path = settings
         
     | 
| 
      
 3219 
     | 
    
         
            +
                    if settings_path is None:
         
     | 
| 
      
 3220 
     | 
    
         
            +
                        return {}
         
     | 
| 
      
 3221 
     | 
    
         
            +
                    if settings_path.endswith(".json"):
         
     | 
| 
      
 3222 
     | 
    
         
            +
                        return sly_json.load_json_file(settings_path)
         
     | 
| 
      
 3223 
     | 
    
         
            +
                    elif settings_path.endswith(".yaml") or settings_path.endswith(".yml"):
         
     | 
| 
      
 3224 
     | 
    
         
            +
                        with open(settings_path, "r") as f:
         
     | 
| 
      
 3225 
     | 
    
         
            +
                            return yaml.safe_load(f)
         
     | 
| 
      
 3226 
     | 
    
         
            +
                    raise ValueError("Settings file should be in JSON or YAML format")
         
     | 
| 
      
 3227 
     | 
    
         
            +
             
     | 
| 
      
 3228 
     | 
    
         
            +
                def _validate_settings(self, settings: dict):
         
     | 
| 
      
 3229 
     | 
    
         
            +
                    default_settings = self.custom_inference_settings_dict
         
     | 
| 
      
 3230 
     | 
    
         
            +
                    if settings == {}:
         
     | 
| 
      
 3231 
     | 
    
         
            +
                        self._args.settings = default_settings
         
     | 
| 
      
 3232 
     | 
    
         
            +
                        return
         
     | 
| 
      
 3233 
     | 
    
         
            +
                    for key, value in settings.items():
         
     | 
| 
      
 3234 
     | 
    
         
            +
                        if key not in default_settings and key != "classes":
         
     | 
| 
      
 3235 
     | 
    
         
            +
                            acceptable_keys = ", ".join(default_settings.keys()) + ", 'classes'"
         
     | 
| 
      
 3236 
     | 
    
         
            +
                            raise ValueError(
         
     | 
| 
      
 3237 
     | 
    
         
            +
                                f"Inference settings doesn't have key: '{key}'. Available keys are: '{acceptable_keys}'"
         
     | 
| 
      
 3238 
     | 
    
         
            +
                            )
         
     | 
| 
      
 3239 
     | 
    
         
            +
             
     | 
| 
       3122 
3240 
     | 
    
         
             
                def _inference_by_local_deploy_args(self):
         
     | 
| 
       3123 
     | 
    
         
            -
                     
     | 
| 
       3124 
     | 
    
         
            -
             
     | 
| 
       3125 
     | 
    
         
            -
             
     | 
| 
       3126 
     | 
    
         
            -
                         
     | 
| 
       3127 
     | 
    
         
            -
             
     | 
| 
       3128 
     | 
    
         
            -
                         
     | 
| 
       3129 
     | 
    
         
            -
                         
     | 
| 
       3130 
     | 
    
         
            -
             
     | 
| 
       3131 
     | 
    
         
            -
             
     | 
| 
       3132 
     | 
    
         
            -
             
     | 
| 
       3133 
     | 
    
         
            -
             
     | 
| 
       3134 
     | 
    
         
            -
             
     | 
| 
       3135 
     | 
    
         
            -
                             
     | 
| 
       3136 
     | 
    
         
            -
                        )
         
     | 
| 
      
 3241 
     | 
    
         
            +
                    missing_env_message = "Set 'SERVER_ADDRESS' and 'API_TOKEN' environment variables to predict data on Supervisely platform."
         
     | 
| 
      
 3242 
     | 
    
         
            +
             
     | 
| 
      
 3243 
     | 
    
         
            +
                    def predict_project_id_by_args(
         
     | 
| 
      
 3244 
     | 
    
         
            +
                        api: Api,
         
     | 
| 
      
 3245 
     | 
    
         
            +
                        project_id: int,
         
     | 
| 
      
 3246 
     | 
    
         
            +
                        dataset_ids: List[int] = None,
         
     | 
| 
      
 3247 
     | 
    
         
            +
                        output_dir: str = "./predictions",
         
     | 
| 
      
 3248 
     | 
    
         
            +
                        settings: str = None,
         
     | 
| 
      
 3249 
     | 
    
         
            +
                        draw: bool = False,
         
     | 
| 
      
 3250 
     | 
    
         
            +
                        upload: bool = False,
         
     | 
| 
      
 3251 
     | 
    
         
            +
                    ):
         
     | 
| 
      
 3252 
     | 
    
         
            +
                        if self.api is None:
         
     | 
| 
      
 3253 
     | 
    
         
            +
                            raise ValueError(missing_env_message)
         
     | 
| 
       3137 
3254 
     | 
    
         | 
| 
       3138 
     | 
    
         
            -
             
     | 
| 
      
 3255 
     | 
    
         
            +
                        if dataset_ids:
         
     | 
| 
      
 3256 
     | 
    
         
            +
                            logger.info(f"Predicting datasets: '{dataset_ids}'")
         
     | 
| 
      
 3257 
     | 
    
         
            +
                        else:
         
     | 
| 
      
 3258 
     | 
    
         
            +
                            logger.info(f"Predicting project: '{project_id}'")
         
     | 
| 
      
 3259 
     | 
    
         
            +
             
     | 
| 
      
 3260 
     | 
    
         
            +
                        if draw:
         
     | 
| 
      
 3261 
     | 
    
         
            +
                            raise ValueError("Draw visualization is not supported for project inference")
         
     | 
| 
      
 3262 
     | 
    
         
            +
             
     | 
| 
      
 3263 
     | 
    
         
            +
                        state = {"projectId": project_id, "dataset_ids": dataset_ids, "settings": settings}
         
     | 
| 
      
 3264 
     | 
    
         
            +
                        if upload:
         
     | 
| 
      
 3265 
     | 
    
         
            +
                            source_project = api.project.get_info_by_id(project_id)
         
     | 
| 
      
 3266 
     | 
    
         
            +
                            workspace_id = source_project.workspace_id
         
     | 
| 
      
 3267 
     | 
    
         
            +
                            output_project = api.project.create(
         
     | 
| 
      
 3268 
     | 
    
         
            +
                                workspace_id,
         
     | 
| 
      
 3269 
     | 
    
         
            +
                                f"{source_project.name} predicted",
         
     | 
| 
      
 3270 
     | 
    
         
            +
                                change_name_if_conflict=True,
         
     | 
| 
      
 3271 
     | 
    
         
            +
                            )
         
     | 
| 
      
 3272 
     | 
    
         
            +
                            state["output_project_id"] = output_project.id
         
     | 
| 
      
 3273 
     | 
    
         
            +
                        results = self._inference_project_id(api=self.api, state=state)
         
     | 
| 
      
 3274 
     | 
    
         
            +
             
     | 
| 
      
 3275 
     | 
    
         
            +
                        dataset_infos = api.dataset.get_list(project_id)
         
     | 
| 
      
 3276 
     | 
    
         
            +
                        datasets_map = {dataset_info.id: dataset_info.name for dataset_info in dataset_infos}
         
     | 
| 
      
 3277 
     | 
    
         
            +
             
     | 
| 
      
 3278 
     | 
    
         
            +
                        if not upload:
         
     | 
| 
      
 3279 
     | 
    
         
            +
                            for prediction in results:
         
     | 
| 
      
 3280 
     | 
    
         
            +
                                dataset_name = datasets_map[prediction["dataset_id"]]
         
     | 
| 
      
 3281 
     | 
    
         
            +
                                image_name = prediction["image_name"]
         
     | 
| 
      
 3282 
     | 
    
         
            +
                                pred_dir = os.path.join(output_dir, dataset_name)
         
     | 
| 
      
 3283 
     | 
    
         
            +
                                pred_path = os.path.join(pred_dir, f"{image_name}.json")
         
     | 
| 
      
 3284 
     | 
    
         
            +
                                ann_json = prediction["annotation"]
         
     | 
| 
      
 3285 
     | 
    
         
            +
                                if not sly_fs.dir_exists(pred_dir):
         
     | 
| 
      
 3286 
     | 
    
         
            +
                                    sly_fs.mkdir(pred_dir)
         
     | 
| 
      
 3287 
     | 
    
         
            +
                                sly_json.dump_json_file(ann_json, pred_path)
         
     | 
| 
      
 3288 
     | 
    
         
            +
             
     | 
| 
      
 3289 
     | 
    
         
            +
                    def predict_dataset_id_by_args(
         
     | 
| 
      
 3290 
     | 
    
         
            +
                        api: Api,
         
     | 
| 
      
 3291 
     | 
    
         
            +
                        dataset_ids: List[int],
         
     | 
| 
      
 3292 
     | 
    
         
            +
                        output_dir: str = "./predictions",
         
     | 
| 
      
 3293 
     | 
    
         
            +
                        settings: str = None,
         
     | 
| 
      
 3294 
     | 
    
         
            +
                        draw: bool = False,
         
     | 
| 
      
 3295 
     | 
    
         
            +
                        upload: bool = False,
         
     | 
| 
      
 3296 
     | 
    
         
            +
                    ):
         
     | 
| 
      
 3297 
     | 
    
         
            +
                        if draw:
         
     | 
| 
      
 3298 
     | 
    
         
            +
                            raise ValueError("Draw visualization is not supported for dataset inference")
         
     | 
| 
      
 3299 
     | 
    
         
            +
                        if self.api is None:
         
     | 
| 
      
 3300 
     | 
    
         
            +
                            raise ValueError(missing_env_message)
         
     | 
| 
       3139 
3301 
     | 
    
         
             
                        dataset_infos = [api.dataset.get_info_by_id(dataset_id) for dataset_id in dataset_ids]
         
     | 
| 
       3140 
3302 
     | 
    
         
             
                        project_ids = list(set([dataset_info.project_id for dataset_info in dataset_infos]))
         
     | 
| 
       3141 
3303 
     | 
    
         
             
                        if len(project_ids) > 1:
         
     | 
| 
       3142 
3304 
     | 
    
         
             
                            raise ValueError("All datasets should belong to the same project")
         
     | 
| 
       3143 
     | 
    
         
            -
                         
     | 
| 
      
 3305 
     | 
    
         
            +
                        predict_project_id_by_args(
         
     | 
| 
      
 3306 
     | 
    
         
            +
                            api, project_ids[0], dataset_ids, output_dir, settings, draw, upload
         
     | 
| 
      
 3307 
     | 
    
         
            +
                        )
         
     | 
| 
      
 3308 
     | 
    
         
            +
             
     | 
| 
      
 3309 
     | 
    
         
            +
                    def predict_image_id_by_args(
         
     | 
| 
      
 3310 
     | 
    
         
            +
                        api: Api,
         
     | 
| 
      
 3311 
     | 
    
         
            +
                        image_id: int,
         
     | 
| 
      
 3312 
     | 
    
         
            +
                        output_dir: str = "./predictions",
         
     | 
| 
      
 3313 
     | 
    
         
            +
                        settings: str = None,
         
     | 
| 
      
 3314 
     | 
    
         
            +
                        draw: bool = False,
         
     | 
| 
      
 3315 
     | 
    
         
            +
                        upload: bool = False,
         
     | 
| 
      
 3316 
     | 
    
         
            +
                    ):
         
     | 
| 
      
 3317 
     | 
    
         
            +
                        if self.api is None:
         
     | 
| 
      
 3318 
     | 
    
         
            +
                            raise ValueError(missing_env_message)
         
     | 
| 
      
 3319 
     | 
    
         
            +
             
     | 
| 
      
 3320 
     | 
    
         
            +
                        logger.info(f"Predicting image: '{image_id}'")
         
     | 
| 
       3144 
3321 
     | 
    
         | 
| 
       3145 
     | 
    
         
            -
                    def predict_image_by_args(api: Api, image: Union[str, int]):
         
     | 
| 
       3146 
3322 
     | 
    
         
             
                        def predict_image_np(image_np):
         
     | 
| 
       3147 
     | 
    
         
            -
                            settings = self._get_inference_settings({})
         
     | 
| 
       3148 
3323 
     | 
    
         
             
                            anns, _ = self._inference_auto([image_np], settings)
         
     | 
| 
       3149 
3324 
     | 
    
         
             
                            if len(anns) == 0:
         
     | 
| 
       3150 
3325 
     | 
    
         
             
                                return Annotation(img_size=image_np.shape[:2])
         
     | 
| 
       3151 
3326 
     | 
    
         
             
                            ann = anns[0]
         
     | 
| 
       3152 
3327 
     | 
    
         
             
                            return ann
         
     | 
| 
       3153 
3328 
     | 
    
         | 
| 
       3154 
     | 
    
         
            -
                         
     | 
| 
       3155 
     | 
    
         
            -
             
     | 
| 
       3156 
     | 
    
         
            -
             
     | 
| 
       3157 
     | 
    
         
            -
             
     | 
| 
       3158 
     | 
    
         
            -
                         
     | 
| 
       3159 
     | 
    
         
            -
                             
     | 
| 
       3160 
     | 
    
         
            -
             
     | 
| 
       3161 
     | 
    
         
            -
             
     | 
| 
       3162 
     | 
    
         
            -
             
     | 
| 
       3163 
     | 
    
         
            -
             
     | 
| 
       3164 
     | 
    
         
            -
             
     | 
| 
       3165 
     | 
    
         
            -
                                 
     | 
| 
       3166 
     | 
    
         
            -
             
     | 
| 
       3167 
     | 
    
         
            -
             
     | 
| 
       3168 
     | 
    
         
            -
             
     | 
| 
       3169 
     | 
    
         
            -
             
     | 
| 
       3170 
     | 
    
         
            -
                                 
     | 
| 
       3171 
     | 
    
         
            -
             
     | 
| 
       3172 
     | 
    
         
            -
             
     | 
| 
       3173 
     | 
    
         
            -
                         
     | 
| 
       3174 
     | 
    
         
            -
             
     | 
| 
       3175 
     | 
    
         
            -
             
     | 
| 
       3176 
     | 
    
         
            -
                     
     | 
| 
       3177 
     | 
    
         
            -
                         
     | 
| 
       3178 
     | 
    
         
            -
             
     | 
| 
       3179 
     | 
    
         
            -
                         
     | 
| 
      
 3329 
     | 
    
         
            +
                        image_np = api.image.download_np(image_id)
         
     | 
| 
      
 3330 
     | 
    
         
            +
                        ann = predict_image_np(image_np)
         
     | 
| 
      
 3331 
     | 
    
         
            +
             
     | 
| 
      
 3332 
     | 
    
         
            +
                        image_info = None
         
     | 
| 
      
 3333 
     | 
    
         
            +
                        if not upload:
         
     | 
| 
      
 3334 
     | 
    
         
            +
                            ann_json = ann.to_json()
         
     | 
| 
      
 3335 
     | 
    
         
            +
                            image_info = api.image.get_info_by_id(image_id)
         
     | 
| 
      
 3336 
     | 
    
         
            +
                            dataset_info = api.dataset.get_info_by_id(image_info.dataset_id)
         
     | 
| 
      
 3337 
     | 
    
         
            +
                            pred_dir = os.path.join(output_dir, dataset_info.name)
         
     | 
| 
      
 3338 
     | 
    
         
            +
                            pred_path = os.path.join(pred_dir, f"{image_info.name}.json")
         
     | 
| 
      
 3339 
     | 
    
         
            +
                            if not sly_fs.dir_exists(pred_dir):
         
     | 
| 
      
 3340 
     | 
    
         
            +
                                sly_fs.mkdir(pred_dir)
         
     | 
| 
      
 3341 
     | 
    
         
            +
                            sly_json.dump_json_file(ann_json, pred_path)
         
     | 
| 
      
 3342 
     | 
    
         
            +
             
     | 
| 
      
 3343 
     | 
    
         
            +
                        if draw:
         
     | 
| 
      
 3344 
     | 
    
         
            +
                            if image_info is None:
         
     | 
| 
      
 3345 
     | 
    
         
            +
                                image_info = api.image.get_info_by_id(image_id)
         
     | 
| 
      
 3346 
     | 
    
         
            +
                            vis_path = os.path.join(output_dir, dataset_info.name, f"{image_info.name}.png")
         
     | 
| 
      
 3347 
     | 
    
         
            +
                            ann.draw_pretty(image_np, output_path=vis_path)
         
     | 
| 
      
 3348 
     | 
    
         
            +
                        if upload:
         
     | 
| 
      
 3349 
     | 
    
         
            +
                            api.annotation.upload_ann(image_id, ann)
         
     | 
| 
      
 3350 
     | 
    
         
            +
             
     | 
| 
      
 3351 
     | 
    
         
            +
                    def predict_local_data_by_args(
         
     | 
| 
      
 3352 
     | 
    
         
            +
                        input_path: str,
         
     | 
| 
      
 3353 
     | 
    
         
            +
                        settings: str = None,
         
     | 
| 
      
 3354 
     | 
    
         
            +
                        output_dir: str = "./predictions",
         
     | 
| 
      
 3355 
     | 
    
         
            +
                        draw: bool = False,
         
     | 
| 
      
 3356 
     | 
    
         
            +
                    ):
         
     | 
| 
      
 3357 
     | 
    
         
            +
                        logger.info(f"Predicting '{input_path}'")
         
     | 
| 
      
 3358 
     | 
    
         
            +
             
     | 
| 
      
 3359 
     | 
    
         
            +
                        def postprocess_image(image_path: str, ann: Annotation, pred_dir: str = None):
         
     | 
| 
      
 3360 
     | 
    
         
            +
                            image_name = sly_fs.get_file_name_with_ext(image_path)
         
     | 
| 
      
 3361 
     | 
    
         
            +
                            if pred_dir is not None:
         
     | 
| 
      
 3362 
     | 
    
         
            +
                                pred_dir = os.path.join(output_dir, pred_dir)
         
     | 
| 
      
 3363 
     | 
    
         
            +
                                pred_ann_path = os.path.join(pred_dir, f"{image_name}.json")
         
     | 
| 
      
 3364 
     | 
    
         
            +
                            else:
         
     | 
| 
      
 3365 
     | 
    
         
            +
                                pred_dir = output_dir
         
     | 
| 
      
 3366 
     | 
    
         
            +
                                pred_ann_path = os.path.join(pred_dir, f"{image_name}.json")
         
     | 
| 
      
 3367 
     | 
    
         
            +
             
     | 
| 
      
 3368 
     | 
    
         
            +
                            if not os.path.exists(pred_dir):
         
     | 
| 
      
 3369 
     | 
    
         
            +
                                sly_fs.mkdir(pred_dir)
         
     | 
| 
      
 3370 
     | 
    
         
            +
                            sly_json.dump_json_file(ann.to_json(), pred_ann_path)
         
     | 
| 
      
 3371 
     | 
    
         
            +
                            if draw:
         
     | 
| 
      
 3372 
     | 
    
         
            +
                                image = sly_image.read(image_path)
         
     | 
| 
      
 3373 
     | 
    
         
            +
                                ann.draw_pretty(image, output_path=os.path.join(pred_dir, image_name))
         
     | 
| 
      
 3374 
     | 
    
         
            +
             
     | 
| 
      
 3375 
     | 
    
         
            +
                        # 1. Input Directory
         
     | 
| 
      
 3376 
     | 
    
         
            +
                        if os.path.isdir(input_path):
         
     | 
| 
      
 3377 
     | 
    
         
            +
                            pred_dir = os.path.basename(input_path)
         
     | 
| 
      
 3378 
     | 
    
         
            +
                            images = list_files(input_path, valid_extensions=sly_image.SUPPORTED_IMG_EXTS)
         
     | 
| 
      
 3379 
     | 
    
         
            +
                            anns, _ = self._inference_auto(images, settings)
         
     | 
| 
      
 3380 
     | 
    
         
            +
                            for image_path, ann in zip(images, anns):
         
     | 
| 
      
 3381 
     | 
    
         
            +
                                postprocess_image(image_path, ann, pred_dir)
         
     | 
| 
      
 3382 
     | 
    
         
            +
                        # 2. Input File
         
     | 
| 
      
 3383 
     | 
    
         
            +
                        elif os.path.isfile(input_path):
         
     | 
| 
      
 3384 
     | 
    
         
            +
                            if input_path.endswith(tuple(sly_image.SUPPORTED_IMG_EXTS)):
         
     | 
| 
      
 3385 
     | 
    
         
            +
                                image_np = sly_image.read(input_path)
         
     | 
| 
      
 3386 
     | 
    
         
            +
                                anns, _ = self._inference_auto([image_np], settings)
         
     | 
| 
      
 3387 
     | 
    
         
            +
                                ann = anns[0]
         
     | 
| 
      
 3388 
     | 
    
         
            +
                                postprocess_image(input_path, ann)
         
     | 
| 
      
 3389 
     | 
    
         
            +
                            elif input_path.endswith(tuple(ALLOWED_VIDEO_EXTENSIONS)):
         
     | 
| 
      
 3390 
     | 
    
         
            +
                                raise NotImplementedError("Video inference is not implemented yet")
         
     | 
| 
      
 3391 
     | 
    
         
            +
                            else:
         
     | 
| 
      
 3392 
     | 
    
         
            +
                                raise ValueError(
         
     | 
| 
      
 3393 
     | 
    
         
            +
                                    f"Unsupported input format: '{input_path}'. Expect image or directory with images"
         
     | 
| 
      
 3394 
     | 
    
         
            +
                                )
         
     | 
| 
      
 3395 
     | 
    
         
            +
                        else:
         
     | 
| 
      
 3396 
     | 
    
         
            +
                            raise ValueError(f"Please provide a valid input path: '{input_path}'")
         
     | 
| 
      
 3397 
     | 
    
         
            +
             
     | 
| 
      
 3398 
     | 
    
         
            +
                    if self._args.project_id is not None:
         
     | 
| 
      
 3399 
     | 
    
         
            +
                        predict_project_id_by_args(
         
     | 
| 
      
 3400 
     | 
    
         
            +
                            self.api,
         
     | 
| 
      
 3401 
     | 
    
         
            +
                            self._args.project_id,
         
     | 
| 
      
 3402 
     | 
    
         
            +
                            None,
         
     | 
| 
      
 3403 
     | 
    
         
            +
                            self._args.output,
         
     | 
| 
      
 3404 
     | 
    
         
            +
                            self._args.settings,
         
     | 
| 
      
 3405 
     | 
    
         
            +
                            self._args.draw,
         
     | 
| 
      
 3406 
     | 
    
         
            +
                            self._args.upload,
         
     | 
| 
      
 3407 
     | 
    
         
            +
                        )
         
     | 
| 
      
 3408 
     | 
    
         
            +
                    elif self._args.dataset_id is not None:
         
     | 
| 
      
 3409 
     | 
    
         
            +
                        predict_dataset_id_by_args(
         
     | 
| 
      
 3410 
     | 
    
         
            +
                            self.api,
         
     | 
| 
      
 3411 
     | 
    
         
            +
                            self._args.dataset_id,
         
     | 
| 
      
 3412 
     | 
    
         
            +
                            self._args.output,
         
     | 
| 
      
 3413 
     | 
    
         
            +
                            self._args.settings,
         
     | 
| 
      
 3414 
     | 
    
         
            +
                            self._args.draw,
         
     | 
| 
      
 3415 
     | 
    
         
            +
                            self._args.upload,
         
     | 
| 
      
 3416 
     | 
    
         
            +
                        )
         
     | 
| 
      
 3417 
     | 
    
         
            +
                    elif self._args.image_id is not None:
         
     | 
| 
      
 3418 
     | 
    
         
            +
                        predict_image_id_by_args(
         
     | 
| 
      
 3419 
     | 
    
         
            +
                            self.api,
         
     | 
| 
      
 3420 
     | 
    
         
            +
                            self._args.image_id,
         
     | 
| 
      
 3421 
     | 
    
         
            +
                            self._args.output,
         
     | 
| 
      
 3422 
     | 
    
         
            +
                            self._args.settings,
         
     | 
| 
      
 3423 
     | 
    
         
            +
                            self._args.draw,
         
     | 
| 
      
 3424 
     | 
    
         
            +
                            self._args.upload,
         
     | 
| 
      
 3425 
     | 
    
         
            +
                        )
         
     | 
| 
      
 3426 
     | 
    
         
            +
                    elif self._args.input is not None:
         
     | 
| 
      
 3427 
     | 
    
         
            +
                        predict_local_data_by_args(
         
     | 
| 
      
 3428 
     | 
    
         
            +
                            self._args.input,
         
     | 
| 
      
 3429 
     | 
    
         
            +
                            self._args.settings,
         
     | 
| 
      
 3430 
     | 
    
         
            +
                            self._args.output,
         
     | 
| 
      
 3431 
     | 
    
         
            +
                            self._args.draw,
         
     | 
| 
      
 3432 
     | 
    
         
            +
                        )
         
     | 
| 
       3180 
3433 
     | 
    
         | 
| 
       3181 
3434 
     | 
    
         
             
                def _add_workflow_input(self, model_source: str, model_files: dict, model_info: dict):
         
     | 
| 
       3182 
3435 
     | 
    
         
             
                    if model_source == ModelSource.PRETRAINED:
         
     | 
| 
         
            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
         
     | 
    
        {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/annotation/annotation_transforms.py
    RENAMED
    
    | 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
    
        {supervisely-6.73.316 → supervisely-6.73.317}/supervisely/annotation/obj_class_collection.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
         
     |