dgenerate-ultralytics-headless 8.3.235__tar.gz → 8.3.236__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.
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/PKG-INFO +1 -1
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/dgenerate_ultralytics_headless.egg-info/PKG-INFO +1 -1
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/tests/test_exports.py +15 -1
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/__init__.py +1 -1
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/engine/exporter.py +96 -2
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/nn/autobackend.py +35 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/checks.py +41 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/torch_utils.py +1 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/LICENSE +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/README.md +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/dgenerate_ultralytics_headless.egg-info/SOURCES.txt +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/dgenerate_ultralytics_headless.egg-info/dependency_links.txt +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/dgenerate_ultralytics_headless.egg-info/entry_points.txt +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/dgenerate_ultralytics_headless.egg-info/requires.txt +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/dgenerate_ultralytics_headless.egg-info/top_level.txt +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/pyproject.toml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/setup.cfg +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/tests/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/tests/conftest.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/tests/test_cli.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/tests/test_cuda.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/tests/test_engine.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/tests/test_integrations.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/tests/test_python.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/tests/test_solutions.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/assets/bus.jpg +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/assets/zidane.jpg +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/Argoverse.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/DOTAv1.5.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/DOTAv1.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/HomeObjects-3K.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/ImageNet.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/SKU-110K.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/VOC.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/african-wildlife.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/brain-tumor.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/carparts-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/coco.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/coco128-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/coco128.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/coco8-grayscale.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/coco8-multispectral.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/coco8.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/construction-ppe.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/crack-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/dog-pose.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/dota8-multispectral.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/dota8.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/hand-keypoints.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/kitti.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/lvis.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/medical-pills.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/open-images-v7.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/package-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/signature.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/datasets/xView.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/default.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/11/yolo11-cls-resnet18.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/11/yolo11-cls.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/11/yolo11-obb.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/11/yolo11-pose.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/11/yolo11-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/11/yolo11.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/11/yoloe-11-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/11/yoloe-11.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/12/yolo12-cls.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/12/yolo12-obb.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/12/yolo12-pose.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/12/yolo12-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/12/yolo12.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v10/yolov10b.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v10/yolov10l.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v10/yolov10m.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v10/yolov10n.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v10/yolov10s.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v10/yolov10x.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yoloe-v8-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yoloe-v8.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8-ghost.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8-obb.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8-p2.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8-world.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8-worldv2.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v9/yolov9c-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v9/yolov9c.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v9/yolov9e-seg.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v9/yolov9e.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v9/yolov9m.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v9/yolov9s.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/models/v9/yolov9t.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/trackers/botsort.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/data/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/data/annotator.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/data/augment.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/data/base.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/data/build.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/data/converter.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/data/dataset.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/data/loaders.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/data/scripts/download_weights.sh +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/data/scripts/get_coco.sh +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/data/scripts/get_coco128.sh +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/data/scripts/get_imagenet.sh +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/data/split.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/data/split_dota.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/data/utils.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/engine/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/engine/model.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/engine/predictor.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/engine/results.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/engine/trainer.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/engine/tuner.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/engine/validator.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/hub/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/hub/auth.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/hub/google/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/hub/session.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/hub/utils.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/fastsam/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/fastsam/model.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/fastsam/predict.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/fastsam/utils.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/fastsam/val.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/nas/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/nas/model.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/nas/predict.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/nas/val.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/rtdetr/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/rtdetr/model.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/rtdetr/predict.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/rtdetr/train.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/rtdetr/val.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/sam/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/sam/amg.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/sam/build.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/sam/model.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/sam/modules/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/sam/modules/blocks.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/sam/modules/decoders.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/sam/modules/encoders.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/sam/modules/memory_attention.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/sam/modules/sam.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/sam/modules/tiny_encoder.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/sam/modules/transformer.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/sam/modules/utils.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/sam/predict.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/utils/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/utils/loss.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/utils/ops.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/classify/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/classify/predict.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/classify/train.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/classify/val.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/detect/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/detect/predict.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/detect/train.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/detect/val.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/model.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/obb/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/obb/predict.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/obb/train.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/obb/val.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/pose/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/pose/predict.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/pose/train.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/pose/val.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/segment/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/segment/predict.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/segment/train.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/segment/val.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/world/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/world/train.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/world/train_world.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/yoloe/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/yoloe/predict.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/yoloe/train.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/yoloe/train_seg.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/models/yolo/yoloe/val.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/nn/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/nn/modules/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/nn/modules/activation.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/nn/modules/block.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/nn/modules/conv.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/nn/modules/head.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/nn/modules/transformer.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/nn/modules/utils.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/nn/tasks.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/nn/text_model.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/py.typed +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/ai_gym.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/analytics.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/config.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/distance_calculation.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/heatmap.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/instance_segmentation.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/object_blurrer.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/object_counter.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/object_cropper.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/parking_management.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/queue_management.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/region_counter.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/security_alarm.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/similarity_search.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/solutions.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/speed_estimation.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/streamlit_inference.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/templates/similarity-search.html +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/trackzone.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/solutions/vision_eye.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/trackers/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/trackers/basetrack.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/trackers/bot_sort.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/trackers/byte_tracker.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/trackers/track.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/trackers/utils/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/trackers/utils/gmc.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/trackers/utils/kalman_filter.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/trackers/utils/matching.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/autobatch.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/autodevice.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/benchmarks.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/callbacks/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/callbacks/base.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/callbacks/clearml.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/callbacks/comet.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/callbacks/dvc.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/callbacks/hub.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/callbacks/mlflow.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/callbacks/neptune.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/callbacks/platform.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/callbacks/raytune.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/callbacks/tensorboard.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/callbacks/wb.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/cpu.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/dist.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/downloads.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/errors.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/events.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/export/__init__.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/export/engine.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/export/imx.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/export/tensorflow.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/files.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/git.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/instance.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/logger.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/loss.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/metrics.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/nms.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/ops.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/patches.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/plotting.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/tal.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/tqdm.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/triton.py +0 -0
- {dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/ultralytics/utils/tuner.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dgenerate-ultralytics-headless
|
|
3
|
-
Version: 8.3.
|
|
3
|
+
Version: 8.3.236
|
|
4
4
|
Summary: Automatically built Ultralytics package with python-opencv-headless dependency instead of python-opencv
|
|
5
5
|
Author-email: Glenn Jocher <glenn.jocher@ultralytics.com>, Jing Qiu <jing.qiu@ultralytics.com>
|
|
6
6
|
Maintainer-email: Ultralytics <hello@ultralytics.com>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: dgenerate-ultralytics-headless
|
|
3
|
-
Version: 8.3.
|
|
3
|
+
Version: 8.3.236
|
|
4
4
|
Summary: Automatically built Ultralytics package with python-opencv-headless dependency instead of python-opencv
|
|
5
5
|
Author-email: Glenn Jocher <glenn.jocher@ultralytics.com>, Jing Qiu <jing.qiu@ultralytics.com>
|
|
6
6
|
Maintainer-email: Ultralytics <hello@ultralytics.com>
|
|
@@ -13,7 +13,7 @@ from tests import MODEL, SOURCE
|
|
|
13
13
|
from ultralytics import YOLO
|
|
14
14
|
from ultralytics.cfg import TASK2DATA, TASK2MODEL, TASKS
|
|
15
15
|
from ultralytics.utils import ARM64, IS_RASPBERRYPI, LINUX, MACOS, WINDOWS, checks
|
|
16
|
-
from ultralytics.utils.torch_utils import TORCH_1_11, TORCH_1_13, TORCH_2_1, TORCH_2_9
|
|
16
|
+
from ultralytics.utils.torch_utils import TORCH_1_11, TORCH_1_13, TORCH_2_1, TORCH_2_8, TORCH_2_9
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
def test_export_torchscript():
|
|
@@ -259,6 +259,20 @@ def test_export_imx():
|
|
|
259
259
|
YOLO(file)(SOURCE, imgsz=32)
|
|
260
260
|
|
|
261
261
|
|
|
262
|
+
@pytest.mark.slow
|
|
263
|
+
@pytest.mark.skipif(not TORCH_2_8, reason="Axelera export requires torch>=2.8.0")
|
|
264
|
+
@pytest.mark.skipif(not LINUX, reason="Axelera export only supported on Linux")
|
|
265
|
+
@pytest.mark.skipif(not checks.IS_PYTHON_3_10, reason="Axelera export requires Python 3.10")
|
|
266
|
+
def test_export_axelera():
|
|
267
|
+
"""Test YOLO export to Axelera format."""
|
|
268
|
+
model = YOLO(MODEL)
|
|
269
|
+
# For faster testing, use a smaller calibration dataset
|
|
270
|
+
# 32 image size crashes axelera export, so use 64
|
|
271
|
+
file = model.export(format="axelera", imgsz=64, data="coco8.yaml")
|
|
272
|
+
assert Path(file).exists(), f"Axelera export failed, directory not found: {file}"
|
|
273
|
+
shutil.rmtree(file, ignore_errors=True) # cleanup
|
|
274
|
+
|
|
275
|
+
|
|
262
276
|
@pytest.mark.skipif(not checks.IS_PYTHON_MINIMUM_3_10 or not TORCH_2_9, reason="Requires Python>=3.10 and Torch>=2.9.0")
|
|
263
277
|
@pytest.mark.skipif(WINDOWS, reason="Skipping test on Windows")
|
|
264
278
|
def test_export_executorch():
|
|
@@ -21,6 +21,7 @@ NCNN | `ncnn` | yolo11n_ncnn_model/
|
|
|
21
21
|
IMX | `imx` | yolo11n_imx_model/
|
|
22
22
|
RKNN | `rknn` | yolo11n_rknn_model/
|
|
23
23
|
ExecuTorch | `executorch` | yolo11n_executorch_model/
|
|
24
|
+
Axelera | `axelera` | yolo11n_axelera_model/
|
|
24
25
|
|
|
25
26
|
Requirements:
|
|
26
27
|
$ pip install "ultralytics[export]"
|
|
@@ -50,6 +51,7 @@ Inference:
|
|
|
50
51
|
yolo11n_imx_model # IMX
|
|
51
52
|
yolo11n_rknn_model # RKNN
|
|
52
53
|
yolo11n_executorch_model # ExecuTorch
|
|
54
|
+
yolo11n_axelera_model # Axelera
|
|
53
55
|
|
|
54
56
|
TensorFlow.js:
|
|
55
57
|
$ cd .. && git clone https://github.com/zldrobit/tfjs-yolov5-example.git && cd tfjs-yolov5-example
|
|
@@ -103,7 +105,9 @@ from ultralytics.utils import (
|
|
|
103
105
|
get_default_args,
|
|
104
106
|
)
|
|
105
107
|
from ultralytics.utils.checks import (
|
|
108
|
+
IS_PYTHON_3_10,
|
|
106
109
|
IS_PYTHON_MINIMUM_3_9,
|
|
110
|
+
check_apt_requirements,
|
|
107
111
|
check_imgsz,
|
|
108
112
|
check_requirements,
|
|
109
113
|
check_version,
|
|
@@ -161,6 +165,7 @@ def export_formats():
|
|
|
161
165
|
["IMX", "imx", "_imx_model", True, True, ["int8", "fraction", "nms"]],
|
|
162
166
|
["RKNN", "rknn", "_rknn_model", False, False, ["batch", "name"]],
|
|
163
167
|
["ExecuTorch", "executorch", "_executorch_model", True, False, ["batch"]],
|
|
168
|
+
["Axelera", "axelera", "_axelera_model", False, False, ["batch", "int8"]],
|
|
164
169
|
]
|
|
165
170
|
return dict(zip(["Format", "Argument", "Suffix", "CPU", "GPU", "Arguments"], zip(*x)))
|
|
166
171
|
|
|
@@ -340,6 +345,7 @@ class Exporter:
|
|
|
340
345
|
imx,
|
|
341
346
|
rknn,
|
|
342
347
|
executorch,
|
|
348
|
+
axelera,
|
|
343
349
|
) = flags # export booleans
|
|
344
350
|
|
|
345
351
|
is_tf_format = any((saved_model, pb, tflite, edgetpu, tfjs))
|
|
@@ -361,6 +367,14 @@ class Exporter:
|
|
|
361
367
|
# Argument compatibility checks
|
|
362
368
|
fmt_keys = fmts_dict["Arguments"][flags.index(True) + 1]
|
|
363
369
|
validate_args(fmt, self.args, fmt_keys)
|
|
370
|
+
if axelera:
|
|
371
|
+
if not IS_PYTHON_3_10:
|
|
372
|
+
SystemError("Axelera export only supported on Python 3.10.")
|
|
373
|
+
if not self.args.int8:
|
|
374
|
+
LOGGER.warning("Setting int8=True for Axelera mixed-precision export.")
|
|
375
|
+
self.args.int8 = True
|
|
376
|
+
if model.task not in {"detect"}:
|
|
377
|
+
raise ValueError("Axelera export only supported for detection models.")
|
|
364
378
|
if imx:
|
|
365
379
|
if not self.args.int8:
|
|
366
380
|
LOGGER.warning("IMX export requires int8=True, setting int8=True.")
|
|
@@ -426,7 +440,10 @@ class Exporter:
|
|
|
426
440
|
)
|
|
427
441
|
model.clip_model = None # openvino int8 export error: https://github.com/ultralytics/ultralytics/pull/18445
|
|
428
442
|
if self.args.int8 and not self.args.data:
|
|
429
|
-
|
|
443
|
+
if axelera:
|
|
444
|
+
self.args.data = "coco128.yaml" # Axelera default to coco128.yaml
|
|
445
|
+
else:
|
|
446
|
+
self.args.data = DEFAULT_CFG.data or TASK2DATA[getattr(model, "task", "detect")] # assign default data
|
|
430
447
|
LOGGER.warning(
|
|
431
448
|
f"INT8 export requires a missing 'data' arg for calibration. Using default 'data={self.args.data}'."
|
|
432
449
|
)
|
|
@@ -565,6 +582,8 @@ class Exporter:
|
|
|
565
582
|
f[14] = self.export_rknn()
|
|
566
583
|
if executorch:
|
|
567
584
|
f[15] = self.export_executorch()
|
|
585
|
+
if axelera:
|
|
586
|
+
f[16] = self.export_axelera()
|
|
568
587
|
|
|
569
588
|
# Finish
|
|
570
589
|
f = [str(x) for x in f if x] # filter out '' and None
|
|
@@ -610,7 +629,9 @@ class Exporter:
|
|
|
610
629
|
f"The calibration dataset ({n} images) must have at least as many images as the batch size "
|
|
611
630
|
f"('batch={self.args.batch}')."
|
|
612
631
|
)
|
|
613
|
-
elif n <
|
|
632
|
+
elif self.args.format == "axelera" and n < 100:
|
|
633
|
+
LOGGER.warning(f"{prefix} >100 images required for Axelera calibration, found {n} images.")
|
|
634
|
+
elif self.args.format != "axelera" and n < 300:
|
|
614
635
|
LOGGER.warning(f"{prefix} >300 images recommended for INT8 calibration, found {n} images.")
|
|
615
636
|
return build_dataloader(dataset, batch=self.args.batch, workers=0, drop_last=True) # required for batch loading
|
|
616
637
|
|
|
@@ -1080,6 +1101,79 @@ class Exporter:
|
|
|
1080
1101
|
f = saved_model / f"{self.file.stem}_float32.tflite"
|
|
1081
1102
|
return str(f)
|
|
1082
1103
|
|
|
1104
|
+
@try_export
|
|
1105
|
+
def export_axelera(self, prefix=colorstr("Axelera:")):
|
|
1106
|
+
"""YOLO Axelera export."""
|
|
1107
|
+
os.environ["PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION"] = "python"
|
|
1108
|
+
try:
|
|
1109
|
+
from axelera import compiler
|
|
1110
|
+
except ImportError:
|
|
1111
|
+
check_apt_requirements(
|
|
1112
|
+
["libllvm14", "libgirepository1.0-dev", "pkg-config", "libcairo2-dev", "build-essential", "cmake"]
|
|
1113
|
+
)
|
|
1114
|
+
|
|
1115
|
+
check_requirements(
|
|
1116
|
+
"axelera-voyager-sdk==1.5.2",
|
|
1117
|
+
cmds="--extra-index-url https://software.axelera.ai/artifactory/axelera-runtime-pypi "
|
|
1118
|
+
"--extra-index-url https://software.axelera.ai/artifactory/axelera-dev-pypi",
|
|
1119
|
+
)
|
|
1120
|
+
|
|
1121
|
+
from axelera import compiler
|
|
1122
|
+
from axelera.compiler import CompilerConfig
|
|
1123
|
+
|
|
1124
|
+
self.args.opset = 17
|
|
1125
|
+
onnx_path = self.export_onnx()
|
|
1126
|
+
model_name = f"{Path(onnx_path).stem}"
|
|
1127
|
+
export_path = Path(f"{model_name}_axelera_model")
|
|
1128
|
+
export_path.mkdir(exist_ok=True)
|
|
1129
|
+
|
|
1130
|
+
def transform_fn(data_item) -> np.ndarray:
|
|
1131
|
+
data_item: torch.Tensor = data_item["img"] if isinstance(data_item, dict) else data_item
|
|
1132
|
+
assert data_item.dtype == torch.uint8, "Input image must be uint8 for the quantization preprocessing"
|
|
1133
|
+
im = data_item.numpy().astype(np.float32) / 255.0 # uint8 to fp16/32 and 0 - 255 to 0.0 - 1.0
|
|
1134
|
+
return np.expand_dims(im, 0) if im.ndim == 3 else im
|
|
1135
|
+
|
|
1136
|
+
if "C2PSA" in self.model.__str__(): # YOLO11
|
|
1137
|
+
config = CompilerConfig(
|
|
1138
|
+
quantization_scheme="per_tensor_min_max",
|
|
1139
|
+
ignore_weight_buffers=False,
|
|
1140
|
+
resources_used=0.25,
|
|
1141
|
+
aipu_cores_used=1,
|
|
1142
|
+
multicore_mode="batch",
|
|
1143
|
+
output_axm_format=True,
|
|
1144
|
+
model_name=model_name,
|
|
1145
|
+
)
|
|
1146
|
+
else: # YOLOv8
|
|
1147
|
+
config = CompilerConfig(
|
|
1148
|
+
tiling_depth=6,
|
|
1149
|
+
split_buffer_promotion=True,
|
|
1150
|
+
resources_used=0.25,
|
|
1151
|
+
aipu_cores_used=1,
|
|
1152
|
+
multicore_mode="batch",
|
|
1153
|
+
output_axm_format=True,
|
|
1154
|
+
model_name=model_name,
|
|
1155
|
+
)
|
|
1156
|
+
|
|
1157
|
+
qmodel = compiler.quantize(
|
|
1158
|
+
model=onnx_path,
|
|
1159
|
+
calibration_dataset=self.get_int8_calibration_dataloader(prefix),
|
|
1160
|
+
config=config,
|
|
1161
|
+
transform_fn=transform_fn,
|
|
1162
|
+
)
|
|
1163
|
+
|
|
1164
|
+
compiler.compile(model=qmodel, config=config, output_dir=export_path)
|
|
1165
|
+
|
|
1166
|
+
axm_name = f"{model_name}.axm"
|
|
1167
|
+
axm_src = Path(axm_name)
|
|
1168
|
+
axm_dst = export_path / axm_name
|
|
1169
|
+
|
|
1170
|
+
if axm_src.exists():
|
|
1171
|
+
axm_src.replace(axm_dst)
|
|
1172
|
+
|
|
1173
|
+
YAML.save(export_path / "metadata.yaml", self.metadata)
|
|
1174
|
+
|
|
1175
|
+
return export_path
|
|
1176
|
+
|
|
1083
1177
|
@try_export
|
|
1084
1178
|
def export_executorch(self, prefix=colorstr("ExecuTorch:")):
|
|
1085
1179
|
"""Exports a model to ExecuTorch (.pte) format into a dedicated directory and saves the required metadata,
|
|
@@ -95,6 +95,7 @@ class AutoBackend(nn.Module):
|
|
|
95
95
|
| RKNN | *_rknn_model/ |
|
|
96
96
|
| Triton Inference | triton://model |
|
|
97
97
|
| ExecuTorch | *.pte |
|
|
98
|
+
| Axelera | *_axelera_model/ |
|
|
98
99
|
|
|
99
100
|
Attributes:
|
|
100
101
|
model (torch.nn.Module): The loaded YOLO model.
|
|
@@ -122,6 +123,7 @@ class AutoBackend(nn.Module):
|
|
|
122
123
|
rknn (bool): Whether the model is an RKNN model.
|
|
123
124
|
triton (bool): Whether the model is a Triton Inference Server model.
|
|
124
125
|
pte (bool): Whether the model is a PyTorch ExecuTorch model.
|
|
126
|
+
axelera (bool): Whether the model is an Axelera model.
|
|
125
127
|
|
|
126
128
|
Methods:
|
|
127
129
|
forward: Run inference on an input image.
|
|
@@ -176,6 +178,7 @@ class AutoBackend(nn.Module):
|
|
|
176
178
|
imx,
|
|
177
179
|
rknn,
|
|
178
180
|
pte,
|
|
181
|
+
axelera,
|
|
179
182
|
triton,
|
|
180
183
|
) = self._model_type("" if nn_module else model)
|
|
181
184
|
fp16 &= pt or jit or onnx or xml or engine or nn_module or triton # FP16
|
|
@@ -570,6 +573,33 @@ class AutoBackend(nn.Module):
|
|
|
570
573
|
rknn_model.init_runtime()
|
|
571
574
|
metadata = w.parent / "metadata.yaml"
|
|
572
575
|
|
|
576
|
+
# Axelera
|
|
577
|
+
elif axelera:
|
|
578
|
+
import os
|
|
579
|
+
|
|
580
|
+
if not os.environ.get("AXELERA_RUNTIME_DIR"):
|
|
581
|
+
LOGGER.warning(
|
|
582
|
+
"Axelera runtime environment is not activated."
|
|
583
|
+
"\nPlease run: source /opt/axelera/sdk/latest/axelera_activate.sh"
|
|
584
|
+
"\n\nIf this fails, verify driver installation: https://docs.ultralytics.com/integrations/axelera/#axelera-driver-installation"
|
|
585
|
+
)
|
|
586
|
+
try:
|
|
587
|
+
from axelera.runtime import op
|
|
588
|
+
except ImportError:
|
|
589
|
+
check_requirements(
|
|
590
|
+
"axelera_runtime2==0.1.2",
|
|
591
|
+
cmds="--extra-index-url https://software.axelera.ai/artifactory/axelera-runtime-pypi",
|
|
592
|
+
)
|
|
593
|
+
from axelera.runtime import op
|
|
594
|
+
|
|
595
|
+
w = Path(w)
|
|
596
|
+
if (found := next(w.rglob("*.axm"), None)) is None:
|
|
597
|
+
raise FileNotFoundError(f"No .axm file found in: {w}")
|
|
598
|
+
w = found
|
|
599
|
+
|
|
600
|
+
ax_model = op.load(str(w))
|
|
601
|
+
metadata = w.parent / "metadata.yaml"
|
|
602
|
+
|
|
573
603
|
# ExecuTorch
|
|
574
604
|
elif pte:
|
|
575
605
|
LOGGER.info(f"Loading {w} for ExecuTorch inference...")
|
|
@@ -796,6 +826,11 @@ class AutoBackend(nn.Module):
|
|
|
796
826
|
im = im if isinstance(im, (list, tuple)) else [im]
|
|
797
827
|
y = self.rknn_model.inference(inputs=im)
|
|
798
828
|
|
|
829
|
+
# Axelera
|
|
830
|
+
elif self.axelera:
|
|
831
|
+
im = im.cpu()
|
|
832
|
+
y = self.ax_model(im)
|
|
833
|
+
|
|
799
834
|
# ExecuTorch
|
|
800
835
|
elif self.pte:
|
|
801
836
|
y = self.model.execute([im])
|
|
@@ -350,6 +350,46 @@ def check_python(minimum: str = "3.8.0", hard: bool = True, verbose: bool = Fals
|
|
|
350
350
|
return check_version(PYTHON_VERSION, minimum, name="Python", hard=hard, verbose=verbose)
|
|
351
351
|
|
|
352
352
|
|
|
353
|
+
@TryExcept()
|
|
354
|
+
def check_apt_requirements(requirements):
|
|
355
|
+
"""Check if apt packages are installed and install missing ones.
|
|
356
|
+
|
|
357
|
+
Args:
|
|
358
|
+
requirements: List of apt package names to check and install
|
|
359
|
+
"""
|
|
360
|
+
prefix = colorstr("red", "bold", "apt requirements:")
|
|
361
|
+
# Check which packages are missing
|
|
362
|
+
missing_packages = []
|
|
363
|
+
for package in requirements:
|
|
364
|
+
try:
|
|
365
|
+
# Use dpkg -l to check if package is installed
|
|
366
|
+
result = subprocess.run(["dpkg", "-l", package], capture_output=True, text=True, check=False)
|
|
367
|
+
# Check if package is installed (look for "ii" status)
|
|
368
|
+
if result.returncode != 0 or not any(
|
|
369
|
+
line.startswith("ii") and package in line for line in result.stdout.splitlines()
|
|
370
|
+
):
|
|
371
|
+
missing_packages.append(package)
|
|
372
|
+
except Exception:
|
|
373
|
+
# If check fails, assume package is not installed
|
|
374
|
+
missing_packages.append(package)
|
|
375
|
+
|
|
376
|
+
# Install missing packages if any
|
|
377
|
+
if missing_packages:
|
|
378
|
+
LOGGER.info(
|
|
379
|
+
f"{prefix} Ultralytics requirement{'s' * (len(missing_packages) > 1)} {missing_packages} not found, attempting AutoUpdate..."
|
|
380
|
+
)
|
|
381
|
+
# Optionally update package list first
|
|
382
|
+
if is_sudo_available():
|
|
383
|
+
subprocess.run(["sudo", "apt", "update"], check=False)
|
|
384
|
+
|
|
385
|
+
# Build and run the install command
|
|
386
|
+
cmd = (["sudo"] if is_sudo_available() else []) + ["apt", "install", "-y"] + missing_packages
|
|
387
|
+
result = subprocess.run(cmd, check=True, capture_output=True, text=True)
|
|
388
|
+
|
|
389
|
+
LOGGER.info(f"{prefix} AutoUpdate success ✅")
|
|
390
|
+
LOGGER.warning(f"{prefix} {colorstr('bold', 'Restart runtime or rerun command for updates to take effect')}\n")
|
|
391
|
+
|
|
392
|
+
|
|
353
393
|
@TryExcept()
|
|
354
394
|
def check_requirements(requirements=ROOT.parent / "requirements.txt", exclude=(), install=True, cmds=""):
|
|
355
395
|
"""Check if installed dependencies meet Ultralytics YOLO models requirements and attempt to auto-update if needed.
|
|
@@ -948,6 +988,7 @@ check_torchvision() # check torch-torchvision compatibility
|
|
|
948
988
|
# Define constants
|
|
949
989
|
IS_PYTHON_3_8 = PYTHON_VERSION.startswith("3.8")
|
|
950
990
|
IS_PYTHON_3_9 = PYTHON_VERSION.startswith("3.9")
|
|
991
|
+
IS_PYTHON_3_10 = PYTHON_VERSION.startswith("3.10")
|
|
951
992
|
IS_PYTHON_3_12 = PYTHON_VERSION.startswith("3.12")
|
|
952
993
|
IS_PYTHON_3_13 = PYTHON_VERSION.startswith("3.13")
|
|
953
994
|
|
|
@@ -44,6 +44,7 @@ TORCH_1_13 = check_version(TORCH_VERSION, "1.13.0")
|
|
|
44
44
|
TORCH_2_0 = check_version(TORCH_VERSION, "2.0.0")
|
|
45
45
|
TORCH_2_1 = check_version(TORCH_VERSION, "2.1.0")
|
|
46
46
|
TORCH_2_4 = check_version(TORCH_VERSION, "2.4.0")
|
|
47
|
+
TORCH_2_8 = check_version(TORCH_VERSION, "2.8.0")
|
|
47
48
|
TORCH_2_9 = check_version(TORCH_VERSION, "2.9.0")
|
|
48
49
|
TORCHVISION_0_10 = check_version(TORCHVISION_VERSION, "0.10.0")
|
|
49
50
|
TORCHVISION_0_11 = check_version(TORCHVISION_VERSION, "0.11.0")
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/pyproject.toml
RENAMED
|
File without changes
|
|
File without changes
|
{dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/tests/__init__.py
RENAMED
|
File without changes
|
{dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/tests/conftest.py
RENAMED
|
File without changes
|
{dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/tests/test_cli.py
RENAMED
|
File without changes
|
{dgenerate_ultralytics_headless-8.3.235 → dgenerate_ultralytics_headless-8.3.236}/tests/test_cuda.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
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
|