ultralytics 8.2.2__tar.gz → 8.2.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of ultralytics might be problematic. Click here for more details.
- {ultralytics-8.2.2/ultralytics.egg-info → ultralytics-8.2.4}/PKG-INFO +3 -2
- {ultralytics-8.2.2 → ultralytics-8.2.4}/README.md +1 -1
- {ultralytics-8.2.2 → ultralytics-8.2.4}/pyproject.toml +1 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/tests/test_python.py +1 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/__init__.py +1 -1
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/byte_tracker.py +2 -2
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/benchmarks.py +132 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4/ultralytics.egg-info}/PKG-INFO +3 -2
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics.egg-info/requires.txt +1 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/LICENSE +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/setup.cfg +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/tests/test_cli.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/tests/test_cuda.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/tests/test_engine.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/tests/test_explorer.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/tests/test_integrations.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/assets/bus.jpg +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/assets/zidane.jpg +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/Argoverse.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/DOTAv1.5.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/DOTAv1.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/GlobalWheat2020.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/ImageNet.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/Objects365.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/SKU-110K.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/VOC.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/VisDrone.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/african-wildlife.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/brain-tumor.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/carparts-seg.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/coco-pose.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/coco.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/coco128-seg.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/coco128.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/coco8-pose.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/coco8-seg.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/coco8.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/crack-seg.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/dota8.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/lvis.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/open-images-v7.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/package-seg.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/tiger-pose.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/datasets/xView.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/default.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/rt-detr/rtdetr-l.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/rt-detr/rtdetr-resnet50.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/rt-detr/rtdetr-x.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v3/yolov3-spp.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v3/yolov3-tiny.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v3/yolov3.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v5/yolov5-p6.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v5/yolov5.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v6/yolov6.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-cls-resnet101.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-cls-resnet50.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-cls.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-ghost-p2.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-ghost-p6.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-ghost.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-obb.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-p2.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-p6.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-pose-p6.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-pose.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-rtdetr.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-seg-p6.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-seg.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-world.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8-worldv2.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v8/yolov8.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v9/yolov9c-seg.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v9/yolov9c.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v9/yolov9e-seg.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/v9/yolov9e.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/trackers/botsort.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/cfg/trackers/bytetrack.yaml +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/annotator.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/augment.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/base.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/build.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/converter.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/dataset.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/explorer/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/explorer/explorer.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/explorer/gui/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/explorer/gui/dash.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/explorer/utils.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/loaders.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/split_dota.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/data/utils.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/engine/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/engine/exporter.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/engine/model.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/engine/predictor.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/engine/results.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/engine/trainer.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/engine/tuner.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/engine/validator.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/hub/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/hub/auth.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/hub/session.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/hub/utils.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/fastsam/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/fastsam/model.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/fastsam/predict.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/fastsam/prompt.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/fastsam/utils.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/fastsam/val.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/nas/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/nas/model.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/nas/predict.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/nas/val.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/rtdetr/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/rtdetr/model.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/rtdetr/predict.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/rtdetr/train.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/rtdetr/val.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/amg.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/build.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/model.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/modules/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/modules/decoders.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/modules/encoders.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/modules/sam.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/modules/tiny_encoder.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/modules/transformer.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/sam/predict.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/utils/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/utils/loss.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/utils/ops.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/classify/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/classify/predict.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/classify/train.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/classify/val.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/detect/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/detect/predict.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/detect/train.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/detect/val.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/model.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/obb/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/obb/predict.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/obb/train.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/obb/val.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/pose/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/pose/predict.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/pose/train.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/pose/val.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/segment/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/segment/predict.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/segment/train.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/segment/val.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/world/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/world/train.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/models/yolo/world/train_world.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/autobackend.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/modules/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/modules/block.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/modules/conv.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/modules/head.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/modules/transformer.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/modules/utils.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/nn/tasks.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/solutions/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/solutions/ai_gym.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/solutions/distance_calculation.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/solutions/heatmap.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/solutions/object_counter.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/solutions/queue_management.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/solutions/speed_estimation.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/basetrack.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/bot_sort.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/track.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/utils/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/utils/gmc.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/utils/kalman_filter.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/trackers/utils/matching.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/autobatch.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/__init__.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/base.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/clearml.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/comet.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/dvc.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/hub.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/mlflow.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/neptune.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/raytune.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/tensorboard.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/callbacks/wb.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/checks.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/dist.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/downloads.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/errors.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/files.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/instance.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/loss.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/metrics.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/ops.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/patches.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/plotting.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/tal.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/torch_utils.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/triton.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics/utils/tuner.py +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics.egg-info/SOURCES.txt +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics.egg-info/dependency_links.txt +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics.egg-info/entry_points.txt +0 -0
- {ultralytics-8.2.2 → ultralytics-8.2.4}/ultralytics.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: ultralytics
|
|
3
|
-
Version: 8.2.
|
|
3
|
+
Version: 8.2.4
|
|
4
4
|
Summary: Ultralytics YOLOv8 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
|
|
5
5
|
Author: Glenn Jocher, Ayush Chaurasia, Jing Qiu
|
|
6
6
|
Maintainer: Glenn Jocher, Ayush Chaurasia, Jing Qiu
|
|
@@ -51,6 +51,7 @@ Requires-Dist: pre-commit; extra == "dev"
|
|
|
51
51
|
Requires-Dist: pytest; extra == "dev"
|
|
52
52
|
Requires-Dist: pytest-cov; extra == "dev"
|
|
53
53
|
Requires-Dist: coverage[toml]; extra == "dev"
|
|
54
|
+
Requires-Dist: mkdocs>=1.6.0; extra == "dev"
|
|
54
55
|
Requires-Dist: mkdocs-material>=9.5.9; extra == "dev"
|
|
55
56
|
Requires-Dist: mkdocstrings[python]; extra == "dev"
|
|
56
57
|
Requires-Dist: mkdocs-jupyter; extra == "dev"
|
|
@@ -84,7 +85,7 @@ Requires-Dist: pycocotools>=2.0.7; extra == "extra"
|
|
|
84
85
|
<img width="100%" src="https://raw.githubusercontent.com/ultralytics/assets/main/yolov8/banner-yolov8.png" alt="YOLO Vision banner"></a>
|
|
85
86
|
</p>
|
|
86
87
|
|
|
87
|
-
[中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/) | [हिन्दी](https://docs.ultralytics.com/hi/) | [العربية](https://docs.ultralytics.com/ar/) <br>
|
|
88
|
+
[中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/) | [Türkçe](https://docs.ultralytics.com/tr/) | [Tiếng Việt](https://docs.ultralytics.com/vi/) | [हिन्दी](https://docs.ultralytics.com/hi/) | [العربية](https://docs.ultralytics.com/ar/) <br>
|
|
88
89
|
|
|
89
90
|
<div>
|
|
90
91
|
<a href="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml"><img src="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml/badge.svg" alt="Ultralytics CI"></a>
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<img width="100%" src="https://raw.githubusercontent.com/ultralytics/assets/main/yolov8/banner-yolov8.png" alt="YOLO Vision banner"></a>
|
|
5
5
|
</p>
|
|
6
6
|
|
|
7
|
-
[中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/) | [हिन्दी](https://docs.ultralytics.com/hi/) | [العربية](https://docs.ultralytics.com/ar/) <br>
|
|
7
|
+
[中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/) | [Türkçe](https://docs.ultralytics.com/tr/) | [Tiếng Việt](https://docs.ultralytics.com/vi/) | [हिन्दी](https://docs.ultralytics.com/hi/) | [العربية](https://docs.ultralytics.com/ar/) <br>
|
|
8
8
|
|
|
9
9
|
<div>
|
|
10
10
|
<a href="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml"><img src="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml/badge.svg" alt="Ultralytics CI"></a>
|
|
@@ -222,6 +222,7 @@ def test_export_openvino():
|
|
|
222
222
|
YOLO(f)(SOURCE) # exported model inference
|
|
223
223
|
|
|
224
224
|
|
|
225
|
+
@pytest.mark.skipif(not TORCH_1_9, reason="CoreML>=7.2 not supported with PyTorch<=1.8")
|
|
225
226
|
@pytest.mark.skipif(WINDOWS, reason="CoreML not supported on Windows") # RuntimeError: BlobWriter not loaded
|
|
226
227
|
@pytest.mark.skipif(IS_RASPBERRYPI, reason="CoreML not supported on Raspberry Pi")
|
|
227
228
|
@pytest.mark.skipif(checks.IS_PYTHON_3_12, reason="CoreML not supported in Python 3.12")
|
|
@@ -264,11 +264,11 @@ class BYTETracker:
|
|
|
264
264
|
bboxes = np.concatenate([bboxes, np.arange(len(bboxes)).reshape(-1, 1)], axis=-1)
|
|
265
265
|
cls = results.cls
|
|
266
266
|
|
|
267
|
-
remain_inds = scores
|
|
267
|
+
remain_inds = scores >= self.args.track_high_thresh
|
|
268
268
|
inds_low = scores > self.args.track_low_thresh
|
|
269
269
|
inds_high = scores < self.args.track_high_thresh
|
|
270
270
|
|
|
271
|
-
inds_second =
|
|
271
|
+
inds_second = inds_low & inds_high
|
|
272
272
|
dets_second = bboxes[inds_second]
|
|
273
273
|
dets = bboxes[remain_inds]
|
|
274
274
|
scores_keep = scores[remain_inds]
|
|
@@ -25,18 +25,23 @@ NCNN | `ncnn` | yolov8n_ncnn_model/
|
|
|
25
25
|
"""
|
|
26
26
|
|
|
27
27
|
import glob
|
|
28
|
+
import os
|
|
28
29
|
import platform
|
|
30
|
+
import re
|
|
31
|
+
import shutil
|
|
29
32
|
import time
|
|
30
33
|
from pathlib import Path
|
|
31
34
|
|
|
32
35
|
import numpy as np
|
|
33
36
|
import torch.cuda
|
|
37
|
+
import yaml
|
|
34
38
|
|
|
35
39
|
from ultralytics import YOLO, YOLOWorld
|
|
36
40
|
from ultralytics.cfg import TASK2DATA, TASK2METRIC
|
|
37
41
|
from ultralytics.engine.exporter import export_formats
|
|
38
42
|
from ultralytics.utils import ARM64, ASSETS, IS_JETSON, IS_RASPBERRYPI, LINUX, LOGGER, MACOS, TQDM, WEIGHTS_DIR
|
|
39
43
|
from ultralytics.utils.checks import IS_PYTHON_3_12, check_requirements, check_yolo
|
|
44
|
+
from ultralytics.utils.downloads import safe_download
|
|
40
45
|
from ultralytics.utils.files import file_size
|
|
41
46
|
from ultralytics.utils.torch_utils import select_device
|
|
42
47
|
|
|
@@ -152,6 +157,133 @@ def benchmark(
|
|
|
152
157
|
return df
|
|
153
158
|
|
|
154
159
|
|
|
160
|
+
class RF100Benchmark:
|
|
161
|
+
def __init__(self):
|
|
162
|
+
"""Function for initialization of RF100Benchmark."""
|
|
163
|
+
self.ds_names = []
|
|
164
|
+
self.ds_cfg_list = []
|
|
165
|
+
self.rf = None
|
|
166
|
+
self.val_metrics = ["class", "images", "targets", "precision", "recall", "map50", "map95"]
|
|
167
|
+
|
|
168
|
+
def set_key(self, api_key):
|
|
169
|
+
"""
|
|
170
|
+
Set Roboflow API key for processing.
|
|
171
|
+
|
|
172
|
+
Args:
|
|
173
|
+
api_key (str): The API key.
|
|
174
|
+
"""
|
|
175
|
+
|
|
176
|
+
check_requirements("roboflow")
|
|
177
|
+
from roboflow import Roboflow
|
|
178
|
+
|
|
179
|
+
self.rf = Roboflow(api_key=api_key)
|
|
180
|
+
|
|
181
|
+
def parse_dataset(self, ds_link_txt="datasets_links.txt"):
|
|
182
|
+
"""
|
|
183
|
+
Parse dataset links and downloads datasets.
|
|
184
|
+
|
|
185
|
+
Args:
|
|
186
|
+
ds_link_txt (str): Path to dataset_links file.
|
|
187
|
+
"""
|
|
188
|
+
|
|
189
|
+
(shutil.rmtree("rf-100"), os.mkdir("rf-100")) if os.path.exists("rf-100") else os.mkdir("rf-100")
|
|
190
|
+
os.chdir("rf-100")
|
|
191
|
+
os.mkdir("ultralytics-benchmarks")
|
|
192
|
+
safe_download("https://ultralytics.com/assets/datasets_links.txt")
|
|
193
|
+
|
|
194
|
+
with open(ds_link_txt, "r") as file:
|
|
195
|
+
for line in file:
|
|
196
|
+
try:
|
|
197
|
+
_, url, workspace, project, version = re.split("/+", line.strip())
|
|
198
|
+
self.ds_names.append(project)
|
|
199
|
+
proj_version = f"{project}-{version}"
|
|
200
|
+
if not Path(proj_version).exists():
|
|
201
|
+
self.rf.workspace(workspace).project(project).version(version).download("yolov8")
|
|
202
|
+
else:
|
|
203
|
+
print("Dataset already downloaded.")
|
|
204
|
+
self.ds_cfg_list.append(Path.cwd() / proj_version / "data.yaml")
|
|
205
|
+
except Exception:
|
|
206
|
+
continue
|
|
207
|
+
|
|
208
|
+
return self.ds_names, self.ds_cfg_list
|
|
209
|
+
|
|
210
|
+
def fix_yaml(self, path):
|
|
211
|
+
"""
|
|
212
|
+
Function to fix yaml train and val path.
|
|
213
|
+
|
|
214
|
+
Args:
|
|
215
|
+
path (str): YAML file path.
|
|
216
|
+
"""
|
|
217
|
+
|
|
218
|
+
with open(path, "r") as file:
|
|
219
|
+
yaml_data = yaml.safe_load(file)
|
|
220
|
+
yaml_data["train"] = "train/images"
|
|
221
|
+
yaml_data["val"] = "valid/images"
|
|
222
|
+
with open(path, "w") as file:
|
|
223
|
+
yaml.safe_dump(yaml_data, file)
|
|
224
|
+
|
|
225
|
+
def evaluate(self, yaml_path, val_log_file, eval_log_file, list_ind):
|
|
226
|
+
"""
|
|
227
|
+
Model evaluation on validation results.
|
|
228
|
+
|
|
229
|
+
Args:
|
|
230
|
+
yaml_path (str): YAML file path.
|
|
231
|
+
val_log_file (str): val_log_file path.
|
|
232
|
+
eval_log_file (str): eval_log_file path.
|
|
233
|
+
list_ind (int): Index for current dataset.
|
|
234
|
+
"""
|
|
235
|
+
skip_symbols = ["🚀", "⚠️", "💡", "❌"]
|
|
236
|
+
with open(yaml_path) as stream:
|
|
237
|
+
class_names = yaml.safe_load(stream)["names"]
|
|
238
|
+
with open(val_log_file, "r", encoding="utf-8") as f:
|
|
239
|
+
lines = f.readlines()
|
|
240
|
+
eval_lines = []
|
|
241
|
+
for line in lines:
|
|
242
|
+
if any(symbol in line for symbol in skip_symbols):
|
|
243
|
+
continue
|
|
244
|
+
entries = line.split(" ")
|
|
245
|
+
entries = list(filter(lambda val: val != "", entries))
|
|
246
|
+
entries = [e.strip("\n") for e in entries]
|
|
247
|
+
start_class = False
|
|
248
|
+
for e in entries:
|
|
249
|
+
if e == "all":
|
|
250
|
+
if "(AP)" not in entries:
|
|
251
|
+
if "(AR)" not in entries:
|
|
252
|
+
# parse all
|
|
253
|
+
eval = {}
|
|
254
|
+
eval["class"] = entries[0]
|
|
255
|
+
eval["images"] = entries[1]
|
|
256
|
+
eval["targets"] = entries[2]
|
|
257
|
+
eval["precision"] = entries[3]
|
|
258
|
+
eval["recall"] = entries[4]
|
|
259
|
+
eval["map50"] = entries[5]
|
|
260
|
+
eval["map95"] = entries[6]
|
|
261
|
+
eval_lines.append(eval)
|
|
262
|
+
|
|
263
|
+
if e in class_names:
|
|
264
|
+
eval = {}
|
|
265
|
+
eval["class"] = entries[0]
|
|
266
|
+
eval["images"] = entries[1]
|
|
267
|
+
eval["targets"] = entries[2]
|
|
268
|
+
eval["precision"] = entries[3]
|
|
269
|
+
eval["recall"] = entries[4]
|
|
270
|
+
eval["map50"] = entries[5]
|
|
271
|
+
eval["map95"] = entries[6]
|
|
272
|
+
eval_lines.append(eval)
|
|
273
|
+
map_val = 0.0
|
|
274
|
+
if len(eval_lines) > 1:
|
|
275
|
+
print("There's more dicts")
|
|
276
|
+
for lst in eval_lines:
|
|
277
|
+
if lst["class"] == "all":
|
|
278
|
+
map_val = lst["map50"]
|
|
279
|
+
else:
|
|
280
|
+
print("There's only one dict res")
|
|
281
|
+
map_val = [res["map50"] for res in eval_lines][0]
|
|
282
|
+
|
|
283
|
+
with open(eval_log_file, "a") as f:
|
|
284
|
+
f.write(f"{self.ds_names[list_ind]}: {map_val}\n")
|
|
285
|
+
|
|
286
|
+
|
|
155
287
|
class ProfileModels:
|
|
156
288
|
"""
|
|
157
289
|
ProfileModels class for profiling different models on ONNX and TensorRT.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: ultralytics
|
|
3
|
-
Version: 8.2.
|
|
3
|
+
Version: 8.2.4
|
|
4
4
|
Summary: Ultralytics YOLOv8 for SOTA object detection, multi-object tracking, instance segmentation, pose estimation and image classification.
|
|
5
5
|
Author: Glenn Jocher, Ayush Chaurasia, Jing Qiu
|
|
6
6
|
Maintainer: Glenn Jocher, Ayush Chaurasia, Jing Qiu
|
|
@@ -51,6 +51,7 @@ Requires-Dist: pre-commit; extra == "dev"
|
|
|
51
51
|
Requires-Dist: pytest; extra == "dev"
|
|
52
52
|
Requires-Dist: pytest-cov; extra == "dev"
|
|
53
53
|
Requires-Dist: coverage[toml]; extra == "dev"
|
|
54
|
+
Requires-Dist: mkdocs>=1.6.0; extra == "dev"
|
|
54
55
|
Requires-Dist: mkdocs-material>=9.5.9; extra == "dev"
|
|
55
56
|
Requires-Dist: mkdocstrings[python]; extra == "dev"
|
|
56
57
|
Requires-Dist: mkdocs-jupyter; extra == "dev"
|
|
@@ -84,7 +85,7 @@ Requires-Dist: pycocotools>=2.0.7; extra == "extra"
|
|
|
84
85
|
<img width="100%" src="https://raw.githubusercontent.com/ultralytics/assets/main/yolov8/banner-yolov8.png" alt="YOLO Vision banner"></a>
|
|
85
86
|
</p>
|
|
86
87
|
|
|
87
|
-
[中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/) | [हिन्दी](https://docs.ultralytics.com/hi/) | [العربية](https://docs.ultralytics.com/ar/) <br>
|
|
88
|
+
[中文](https://docs.ultralytics.com/zh/) | [한국어](https://docs.ultralytics.com/ko/) | [日本語](https://docs.ultralytics.com/ja/) | [Русский](https://docs.ultralytics.com/ru/) | [Deutsch](https://docs.ultralytics.com/de/) | [Français](https://docs.ultralytics.com/fr/) | [Español](https://docs.ultralytics.com/es/) | [Português](https://docs.ultralytics.com/pt/) | [Türkçe](https://docs.ultralytics.com/tr/) | [Tiếng Việt](https://docs.ultralytics.com/vi/) | [हिन्दी](https://docs.ultralytics.com/hi/) | [العربية](https://docs.ultralytics.com/ar/) <br>
|
|
88
89
|
|
|
89
90
|
<div>
|
|
90
91
|
<a href="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml"><img src="https://github.com/ultralytics/ultralytics/actions/workflows/ci.yaml/badge.svg" alt="Ultralytics CI"></a>
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
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.2.2 → ultralytics-8.2.4}/ultralytics/cfg/models/rt-detr/rtdetr-resnet101.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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|