ultralytics 8.3.208__tar.gz → 8.3.210__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.
- {ultralytics-8.3.208 → ultralytics-8.3.210}/PKG-INFO +1 -1
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/__init__.py +1 -1
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/engine/exporter.py +5 -2
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/engine/trainer.py +4 -3
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/engine/tuner.py +1 -1
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/nn/tasks.py +16 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/benchmarks.py +36 -22
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics.egg-info/PKG-INFO +1 -1
- {ultralytics-8.3.208 → ultralytics-8.3.210}/LICENSE +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/README.md +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/pyproject.toml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/setup.cfg +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/tests/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/tests/conftest.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/tests/test_cli.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/tests/test_cuda.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/tests/test_engine.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/tests/test_exports.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/tests/test_integrations.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/tests/test_python.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/tests/test_solutions.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/assets/bus.jpg +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/assets/zidane.jpg +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/Argoverse.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/DOTAv1.5.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/DOTAv1.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/HomeObjects-3K.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/ImageNet.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/SKU-110K.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/VOC.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/african-wildlife.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/brain-tumor.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/carparts-seg.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/coco.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/coco128-seg.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/coco128.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/coco8-grayscale.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/coco8-multispectral.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/coco8.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/construction-ppe.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/crack-seg.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/dog-pose.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/dota8-multispectral.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/dota8.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/hand-keypoints.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/lvis.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/medical-pills.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/open-images-v7.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/package-seg.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/signature.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/xView.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/default.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/11/yolo11-cls-resnet18.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/11/yolo11-cls.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/11/yolo11-obb.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/11/yolo11-pose.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/11/yolo11-seg.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/11/yolo11.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/11/yoloe-11-seg.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/11/yoloe-11.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/12/yolo12-cls.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/12/yolo12-obb.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/12/yolo12-pose.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/12/yolo12-seg.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/12/yolo12.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v10/yolov10b.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v10/yolov10l.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v10/yolov10m.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v10/yolov10n.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v10/yolov10s.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v10/yolov10x.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yoloe-v8-seg.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yoloe-v8.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-ghost.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-obb.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-p2.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-world.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-worldv2.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v9/yolov9c-seg.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v9/yolov9c.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v9/yolov9e-seg.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v9/yolov9e.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v9/yolov9m.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v9/yolov9s.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v9/yolov9t.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/trackers/botsort.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/data/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/data/annotator.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/data/augment.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/data/base.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/data/build.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/data/converter.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/data/dataset.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/data/loaders.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/data/scripts/download_weights.sh +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/data/scripts/get_coco.sh +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/data/scripts/get_coco128.sh +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/data/scripts/get_imagenet.sh +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/data/split.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/data/split_dota.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/data/utils.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/engine/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/engine/model.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/engine/predictor.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/engine/results.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/engine/validator.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/hub/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/hub/auth.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/hub/google/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/hub/session.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/hub/utils.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/fastsam/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/fastsam/model.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/fastsam/predict.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/fastsam/utils.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/fastsam/val.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/nas/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/nas/model.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/nas/predict.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/nas/val.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/rtdetr/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/rtdetr/model.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/rtdetr/predict.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/rtdetr/train.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/rtdetr/val.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/sam/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/sam/amg.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/sam/build.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/sam/model.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/sam/modules/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/sam/modules/blocks.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/sam/modules/decoders.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/sam/modules/encoders.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/sam/modules/memory_attention.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/sam/modules/sam.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/sam/modules/tiny_encoder.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/sam/modules/transformer.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/sam/modules/utils.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/sam/predict.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/utils/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/utils/loss.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/utils/ops.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/classify/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/classify/predict.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/classify/train.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/classify/val.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/detect/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/detect/predict.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/detect/train.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/detect/val.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/model.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/obb/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/obb/predict.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/obb/train.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/obb/val.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/pose/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/pose/predict.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/pose/train.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/pose/val.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/segment/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/segment/predict.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/segment/train.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/segment/val.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/world/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/world/train.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/world/train_world.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/yoloe/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/yoloe/predict.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/yoloe/train.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/yoloe/train_seg.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/models/yolo/yoloe/val.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/nn/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/nn/autobackend.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/nn/modules/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/nn/modules/activation.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/nn/modules/block.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/nn/modules/conv.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/nn/modules/head.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/nn/modules/transformer.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/nn/modules/utils.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/nn/text_model.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/py.typed +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/ai_gym.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/analytics.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/config.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/distance_calculation.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/heatmap.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/instance_segmentation.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/object_blurrer.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/object_counter.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/object_cropper.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/parking_management.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/queue_management.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/region_counter.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/security_alarm.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/similarity_search.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/solutions.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/speed_estimation.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/streamlit_inference.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/templates/similarity-search.html +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/trackzone.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/solutions/vision_eye.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/trackers/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/trackers/basetrack.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/trackers/bot_sort.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/trackers/byte_tracker.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/trackers/track.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/trackers/utils/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/trackers/utils/gmc.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/trackers/utils/kalman_filter.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/trackers/utils/matching.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/autobatch.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/autodevice.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/callbacks/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/callbacks/base.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/callbacks/clearml.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/callbacks/comet.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/callbacks/dvc.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/callbacks/hub.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/callbacks/mlflow.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/callbacks/neptune.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/callbacks/platform.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/callbacks/raytune.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/callbacks/tensorboard.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/callbacks/wb.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/checks.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/cpu.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/dist.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/downloads.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/errors.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/events.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/export/__init__.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/export/imx.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/files.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/git.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/instance.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/logger.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/loss.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/metrics.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/nms.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/ops.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/patches.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/plotting.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/tal.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/torch_utils.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/tqdm.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/triton.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/utils/tuner.py +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics.egg-info/SOURCES.txt +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics.egg-info/dependency_links.txt +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics.egg-info/entry_points.txt +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics.egg-info/requires.txt +0 -0
- {ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: ultralytics
|
3
|
-
Version: 8.3.
|
3
|
+
Version: 8.3.210
|
4
4
|
Summary: Ultralytics YOLO 🚀 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
|
5
5
|
Author-email: Glenn Jocher <glenn.jocher@ultralytics.com>, Jing Qiu <jing.qiu@ultralytics.com>
|
6
6
|
Maintainer-email: Ultralytics <hello@ultralytics.com>
|
@@ -612,7 +612,7 @@ class Exporter:
|
|
612
612
|
"""Export YOLO model to ONNX format."""
|
613
613
|
requirements = ["onnx>=1.12.0"]
|
614
614
|
if self.args.simplify:
|
615
|
-
requirements += ["onnxslim>=0.1.
|
615
|
+
requirements += ["onnxslim>=0.1.71", "onnxruntime" + ("-gpu" if torch.cuda.is_available() else "")]
|
616
616
|
check_requirements(requirements)
|
617
617
|
import onnx # noqa
|
618
618
|
|
@@ -1014,7 +1014,7 @@ class Exporter:
|
|
1014
1014
|
"ai-edge-litert>=1.2.0" + (",<1.4.0" if MACOS else ""), # required by 'onnx2tf' package
|
1015
1015
|
"onnx>=1.12.0",
|
1016
1016
|
"onnx2tf>=1.26.3",
|
1017
|
-
"onnxslim>=0.1.
|
1017
|
+
"onnxslim>=0.1.71",
|
1018
1018
|
"onnxruntime-gpu" if cuda else "onnxruntime",
|
1019
1019
|
"protobuf>=5",
|
1020
1020
|
),
|
@@ -1039,6 +1039,9 @@ class Exporter:
|
|
1039
1039
|
attempt_download_asset(f"{onnx2tf_file}.zip", unzip=True, delete=True)
|
1040
1040
|
|
1041
1041
|
# Export to ONNX
|
1042
|
+
if "rtdetr" in self.model.model[-1]._get_name().lower():
|
1043
|
+
self.args.opset = self.args.opset or 19
|
1044
|
+
assert 16 <= self.args.opset <= 19, "RTDETR export requires opset>=16;<=19"
|
1042
1045
|
self.args.simplify = True
|
1043
1046
|
f_onnx = self.export_onnx()
|
1044
1047
|
|
@@ -420,9 +420,10 @@ class BaseTrainer:
|
|
420
420
|
self.loss = loss.sum()
|
421
421
|
if RANK != -1:
|
422
422
|
self.loss *= self.world_size
|
423
|
-
self.
|
424
|
-
(
|
425
|
-
|
423
|
+
if not self.loss.isfinite():
|
424
|
+
LOGGER.warning("Non-finite forward pass, skipping batch...")
|
425
|
+
continue
|
426
|
+
self.tloss = self.loss_items if self.tloss is None else (self.tloss * i + self.loss_items) / (i + 1)
|
426
427
|
|
427
428
|
# Backward
|
428
429
|
self.scaler.scale(self.loss).backward()
|
@@ -429,7 +429,7 @@ class Tuner:
|
|
429
429
|
x = np.loadtxt(self.tune_csv, ndmin=2, delimiter=",", skiprows=1)
|
430
430
|
fitness = x[:, 0] # first column
|
431
431
|
best_idx = fitness.argmax()
|
432
|
-
best_is_current = best_idx ==
|
432
|
+
best_is_current = best_idx == i
|
433
433
|
if best_is_current:
|
434
434
|
best_save_dir = str(save_dir)
|
435
435
|
best_metrics = {k: round(v, 5) for k, v in metrics.items()}
|
@@ -743,6 +743,22 @@ class RTDETRDetectionModel(DetectionModel):
|
|
743
743
|
"""
|
744
744
|
super().__init__(cfg=cfg, ch=ch, nc=nc, verbose=verbose)
|
745
745
|
|
746
|
+
def _apply(self, fn):
|
747
|
+
"""
|
748
|
+
Apply a function to all tensors in the model that are not parameters or registered buffers.
|
749
|
+
|
750
|
+
Args:
|
751
|
+
fn (function): The function to apply to the model.
|
752
|
+
|
753
|
+
Returns:
|
754
|
+
(RTDETRDetectionModel): An updated BaseModel object.
|
755
|
+
"""
|
756
|
+
self = super()._apply(fn)
|
757
|
+
m = self.model[-1]
|
758
|
+
m.anchors = fn(m.anchors)
|
759
|
+
m.valid_mask = fn(m.valid_mask)
|
760
|
+
return self
|
761
|
+
|
746
762
|
def init_criterion(self):
|
747
763
|
"""Initialize the loss criterion for the RTDETRDetectionModel."""
|
748
764
|
from ultralytics.models.utils.loss import RTDETRDetectionLoss
|
@@ -583,6 +583,11 @@ class ProfileModels:
|
|
583
583
|
run_times = self.iterative_sigma_clipping(np.array(run_times), sigma=2, max_iters=3) # sigma clipping
|
584
584
|
return np.mean(run_times), np.std(run_times)
|
585
585
|
|
586
|
+
@staticmethod
|
587
|
+
def check_dynamic(tensor_shape):
|
588
|
+
"""Check whether the tensor shape in the ONNX model is dynamic."""
|
589
|
+
return not all(isinstance(dim, int) and dim >= 0 for dim in tensor_shape)
|
590
|
+
|
586
591
|
def profile_onnx_model(self, onnx_file: str, eps: float = 1e-3):
|
587
592
|
"""
|
588
593
|
Profile an ONNX model, measuring average inference time and standard deviation across multiple runs.
|
@@ -604,27 +609,36 @@ class ProfileModels:
|
|
604
609
|
sess_options.intra_op_num_threads = 8 # Limit the number of threads
|
605
610
|
sess = ort.InferenceSession(onnx_file, sess_options, providers=["CPUExecutionProvider"])
|
606
611
|
|
607
|
-
|
608
|
-
|
609
|
-
|
610
|
-
|
611
|
-
|
612
|
-
|
613
|
-
|
614
|
-
|
615
|
-
|
616
|
-
|
617
|
-
|
618
|
-
|
619
|
-
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
612
|
+
input_data_dict = dict()
|
613
|
+
for input_tensor in sess.get_inputs():
|
614
|
+
input_type = input_tensor.type
|
615
|
+
if self.check_dynamic(input_tensor.shape):
|
616
|
+
if len(input_tensor.shape) != 4 and self.check_dynamic(input_tensor.shape[1:]):
|
617
|
+
raise ValueError(f"Unsupported dynamic shape {input_tensor.shape} of {input_tensor.name}")
|
618
|
+
input_shape = (
|
619
|
+
(1, 3, self.imgsz, self.imgsz) if len(input_tensor.shape) == 4 else (1, *input_tensor.shape[1:])
|
620
|
+
)
|
621
|
+
else:
|
622
|
+
input_shape = input_tensor.shape
|
623
|
+
|
624
|
+
# Mapping ONNX datatype to numpy datatype
|
625
|
+
if "float16" in input_type:
|
626
|
+
input_dtype = np.float16
|
627
|
+
elif "float" in input_type:
|
628
|
+
input_dtype = np.float32
|
629
|
+
elif "double" in input_type:
|
630
|
+
input_dtype = np.float64
|
631
|
+
elif "int64" in input_type:
|
632
|
+
input_dtype = np.int64
|
633
|
+
elif "int32" in input_type:
|
634
|
+
input_dtype = np.int32
|
635
|
+
else:
|
636
|
+
raise ValueError(f"Unsupported ONNX datatype {input_type}")
|
637
|
+
|
638
|
+
input_data = np.random.rand(*input_shape).astype(input_dtype)
|
639
|
+
input_name = input_tensor.name
|
640
|
+
input_data_dict.update({input_name: input_data})
|
625
641
|
|
626
|
-
input_data = np.random.rand(*input_shape).astype(input_dtype)
|
627
|
-
input_name = input_tensor.name
|
628
642
|
output_name = sess.get_outputs()[0].name
|
629
643
|
|
630
644
|
# Warmup runs
|
@@ -632,7 +646,7 @@ class ProfileModels:
|
|
632
646
|
for _ in range(3):
|
633
647
|
start_time = time.time()
|
634
648
|
for _ in range(self.num_warmup_runs):
|
635
|
-
sess.run([output_name],
|
649
|
+
sess.run([output_name], input_data_dict)
|
636
650
|
elapsed = time.time() - start_time
|
637
651
|
|
638
652
|
# Compute number of runs as higher of min_time or num_timed_runs
|
@@ -642,7 +656,7 @@ class ProfileModels:
|
|
642
656
|
run_times = []
|
643
657
|
for _ in TQDM(range(num_runs), desc=onnx_file):
|
644
658
|
start_time = time.time()
|
645
|
-
sess.run([output_name],
|
659
|
+
sess.run([output_name], input_data_dict)
|
646
660
|
run_times.append((time.time() - start_time) * 1000) # Convert to milliseconds
|
647
661
|
|
648
662
|
run_times = self.iterative_sigma_clipping(np.array(run_times), sigma=2, max_iters=5) # sigma clipping
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: ultralytics
|
3
|
-
Version: 8.3.
|
3
|
+
Version: 8.3.210
|
4
4
|
Summary: Ultralytics YOLO 🚀 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
|
5
5
|
Author-email: Glenn Jocher <glenn.jocher@ultralytics.com>, Jing Qiu <jing.qiu@ultralytics.com>
|
6
6
|
Maintainer-email: Ultralytics <hello@ultralytics.com>
|
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
|
{ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/coco8-multispectral.yaml
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/datasets/dota8-multispectral.yaml
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
|
{ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/11/yolo11-cls-resnet18.yaml
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
|
{ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml
RENAMED
File without changes
|
{ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml
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
|
{ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml
RENAMED
File without changes
|
{ultralytics-8.3.208 → ultralytics-8.3.210}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml
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
|