├── .deepsource.toml ├── .github ├── FUNDING.yml └── workflows │ └── ci.yml ├── .gitignore ├── .isort.cfg ├── .pre-commit-config.yaml ├── .pylintrc ├── LICENSE ├── MANIFEST.in ├── README.md ├── __init__.py ├── iglovikov_helper_functions ├── __init__.py ├── config_parsing │ ├── __init__.py │ └── utils.py ├── data_processing │ ├── __init__.py │ ├── cityscapes │ │ ├── README.md │ │ ├── __init__.py │ │ └── parse_cityscapes.py │ ├── corrupt_dataset │ │ ├── README.md │ │ ├── __init__.py │ │ └── transform.py │ ├── extract_face_mask │ │ └── extract_masks.py │ ├── gleason2019 │ │ ├── __init__.py │ │ └── prepare_the_data.py │ ├── image_processing │ │ ├── __init__.py │ │ └── png2jpg.py │ ├── ms_celeb_1m │ │ ├── __init__.py │ │ ├── clean.py │ │ ├── crop_and_align.py │ │ └── parse_data.py │ ├── open_images │ │ ├── __init__.py │ │ └── instance2coco.py │ ├── prepare_cloths_segmentation │ │ ├── __init__.py │ │ └── prepare_imaterialist2019.py │ ├── prepare_people_segmentation │ │ ├── README.md │ │ ├── __init__.py │ │ ├── prepare_coco.py │ │ ├── prepare_matting.py │ │ ├── prepare_pascal_voc.py │ │ ├── prepare_supervisely.py │ │ └── prepare_vistas.py │ ├── to_coco │ │ ├── __init__.py │ │ ├── create_annotations_for_deepfake.sh │ │ ├── deepfake2coco.py │ │ └── n01x3_to_coco.py │ ├── waymo │ │ ├── README.md │ │ ├── __init__.py │ │ ├── fix_annotations.py │ │ └── to_coco.py │ └── wider_face │ │ ├── add_dlib_keypoints.py │ │ └── prepare_data.py ├── dl │ ├── __init__.py │ └── pytorch │ │ ├── __init__.py │ │ ├── add_weight_decay.py │ │ ├── clean_weights.py │ │ ├── lightning.py │ │ ├── optimizers.py │ │ └── utils.py ├── metrics │ ├── __init__.py │ ├── cityscapes_iou.py │ ├── coco_eval.py │ ├── iou.py │ └── map.py └── utils │ ├── __init__.py │ ├── array_utils.py │ ├── box_utils.py │ ├── general_utils.py │ ├── geometry_utils.py │ ├── image_utils.py │ ├── inpainting_utils.py │ ├── mask_utils.py │ ├── metrics.py │ └── tabular_utils.py ├── pyproject.toml ├── requirements.txt ├── setup.cfg ├── setup.py ├── tests ├── data │ ├── spacenet │ │ ├── 53.png │ │ └── SN6_Train_AOI_11_Rotterdam_Buildings_20190804120223_20190804120456_tile_53.geojson │ └── temp_config.py ├── test_array_utils.py ├── test_catalyst_tools.py ├── test_config_parsers.py ├── test_geometry_utils.py ├── test_img_utils.py ├── test_mask_utils.py └── test_tabular_utils.py ├── train.sh └── val.sh /.deepsource.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/.deepsource.toml -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/.github/FUNDING.yml -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/.gitignore -------------------------------------------------------------------------------- /.isort.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/.isort.cfg -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/.pre-commit-config.yaml -------------------------------------------------------------------------------- /.pylintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/.pylintrc -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/LICENSE -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | include README.md LICENSE 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/README.md -------------------------------------------------------------------------------- /__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/__init__.py: -------------------------------------------------------------------------------- 1 | __version__ = "0.0.53" 2 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/config_parsing/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/config_parsing/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/config_parsing/utils.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/cityscapes/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/cityscapes/README.md -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/cityscapes/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/cityscapes/parse_cityscapes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/cityscapes/parse_cityscapes.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/corrupt_dataset/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/corrupt_dataset/README.md -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/corrupt_dataset/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/corrupt_dataset/transform.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/corrupt_dataset/transform.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/extract_face_mask/extract_masks.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/extract_face_mask/extract_masks.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/gleason2019/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/gleason2019/prepare_the_data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/gleason2019/prepare_the_data.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/image_processing/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/image_processing/png2jpg.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/image_processing/png2jpg.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/ms_celeb_1m/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/ms_celeb_1m/clean.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/ms_celeb_1m/clean.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/ms_celeb_1m/crop_and_align.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/ms_celeb_1m/crop_and_align.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/ms_celeb_1m/parse_data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/ms_celeb_1m/parse_data.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/open_images/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/open_images/instance2coco.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/open_images/instance2coco.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/prepare_cloths_segmentation/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/prepare_cloths_segmentation/prepare_imaterialist2019.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/prepare_cloths_segmentation/prepare_imaterialist2019.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/prepare_people_segmentation/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/prepare_people_segmentation/README.md -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/prepare_people_segmentation/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/prepare_people_segmentation/prepare_coco.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/prepare_people_segmentation/prepare_coco.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/prepare_people_segmentation/prepare_matting.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/prepare_people_segmentation/prepare_matting.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/prepare_people_segmentation/prepare_pascal_voc.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/prepare_people_segmentation/prepare_pascal_voc.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/prepare_people_segmentation/prepare_supervisely.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/prepare_people_segmentation/prepare_supervisely.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/prepare_people_segmentation/prepare_vistas.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/prepare_people_segmentation/prepare_vistas.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/to_coco/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/to_coco/create_annotations_for_deepfake.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/to_coco/create_annotations_for_deepfake.sh -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/to_coco/deepfake2coco.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/to_coco/deepfake2coco.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/to_coco/n01x3_to_coco.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/to_coco/n01x3_to_coco.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/waymo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/waymo/README.md -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/waymo/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/waymo/fix_annotations.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/waymo/fix_annotations.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/waymo/to_coco.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/waymo/to_coco.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/wider_face/add_dlib_keypoints.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/wider_face/add_dlib_keypoints.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/data_processing/wider_face/prepare_data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/data_processing/wider_face/prepare_data.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/dl/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/dl/pytorch/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/dl/pytorch/add_weight_decay.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/dl/pytorch/add_weight_decay.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/dl/pytorch/clean_weights.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/dl/pytorch/clean_weights.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/dl/pytorch/lightning.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/dl/pytorch/lightning.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/dl/pytorch/optimizers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/dl/pytorch/optimizers.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/dl/pytorch/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/dl/pytorch/utils.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/metrics/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/metrics/cityscapes_iou.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/metrics/cityscapes_iou.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/metrics/coco_eval.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/metrics/coco_eval.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/metrics/iou.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/metrics/iou.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/metrics/map.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/metrics/map.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/utils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /iglovikov_helper_functions/utils/array_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/utils/array_utils.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/utils/box_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/utils/box_utils.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/utils/general_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/utils/general_utils.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/utils/geometry_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/utils/geometry_utils.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/utils/image_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/utils/image_utils.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/utils/inpainting_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/utils/inpainting_utils.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/utils/mask_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/utils/mask_utils.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/utils/metrics.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/utils/metrics.py -------------------------------------------------------------------------------- /iglovikov_helper_functions/utils/tabular_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/iglovikov_helper_functions/utils/tabular_utils.py -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/pyproject.toml -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/requirements.txt -------------------------------------------------------------------------------- /setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/setup.cfg -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/setup.py -------------------------------------------------------------------------------- /tests/data/spacenet/53.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/tests/data/spacenet/53.png -------------------------------------------------------------------------------- /tests/data/spacenet/SN6_Train_AOI_11_Rotterdam_Buildings_20190804120223_20190804120456_tile_53.geojson: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/tests/data/spacenet/SN6_Train_AOI_11_Rotterdam_Buildings_20190804120223_20190804120456_tile_53.geojson -------------------------------------------------------------------------------- /tests/data/temp_config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/tests/data/temp_config.py -------------------------------------------------------------------------------- /tests/test_array_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/tests/test_array_utils.py -------------------------------------------------------------------------------- /tests/test_catalyst_tools.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/tests/test_catalyst_tools.py -------------------------------------------------------------------------------- /tests/test_config_parsers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/tests/test_config_parsers.py -------------------------------------------------------------------------------- /tests/test_geometry_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/tests/test_geometry_utils.py -------------------------------------------------------------------------------- /tests/test_img_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/tests/test_img_utils.py -------------------------------------------------------------------------------- /tests/test_mask_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/tests/test_mask_utils.py -------------------------------------------------------------------------------- /tests/test_tabular_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/tests/test_tabular_utils.py -------------------------------------------------------------------------------- /train.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ternaus/iglovikov_helper_functions/HEAD/train.sh -------------------------------------------------------------------------------- /val.sh: -------------------------------------------------------------------------------- 1 | --------------------------------------------------------------------------------