From afafd63d84f278a6ab201385d978c9ea882ecd4e Mon Sep 17 00:00:00 2001 From: Neil Band <20114038+nband@users.noreply.github.com> Date: Thu, 22 Dec 2022 20:51:52 -0600 Subject: [PATCH 1/8] tf cast fix --- .../diabetic_retinopathy_detection/utils/metric_utils.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/baselines/diabetic_retinopathy_detection/utils/metric_utils.py b/baselines/diabetic_retinopathy_detection/utils/metric_utils.py index 60699628c..c2b123e7b 100644 --- a/baselines/diabetic_retinopathy_detection/utils/metric_utils.py +++ b/baselines/diabetic_retinopathy_detection/utils/metric_utils.py @@ -207,10 +207,10 @@ def log_epoch_metrics(metrics, eval_results, use_tpu, dataset_splits): train_columns = ['Train Loss (NLL+L2)', 'Accuracy', 'AUPRC', 'AUROC'] train_metrics = ['loss', 'accuracy', 'auprc', 'auroc'] train_values = [ - metrics['train/loss'].result(), - metrics['train/accuracy'].result() * 100, - metrics['train/auprc'].result() * 100, - metrics['train/auroc'].result() * 100 + metrics['train/loss'].numpy().result(), + metrics['train/accuracy'].numpy().result() * 100, + metrics['train/auprc'].numpy().result() * 100, + metrics['train/auroc'].numpy().result() * 100 ] if not use_tpu: train_columns.append('ECE') From 6e080cd64e87a87e94dda2e9f96be0a3bfe3b738 Mon Sep 17 00:00:00 2001 From: Neil Band <20114038+nband@users.noreply.github.com> Date: Thu, 22 Dec 2022 23:46:49 -0600 Subject: [PATCH 2/8] typo --- .../diabetic_retinopathy_detection/utils/metric_utils.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/baselines/diabetic_retinopathy_detection/utils/metric_utils.py b/baselines/diabetic_retinopathy_detection/utils/metric_utils.py index c2b123e7b..7368682d7 100644 --- a/baselines/diabetic_retinopathy_detection/utils/metric_utils.py +++ b/baselines/diabetic_retinopathy_detection/utils/metric_utils.py @@ -207,10 +207,10 @@ def log_epoch_metrics(metrics, eval_results, use_tpu, dataset_splits): train_columns = ['Train Loss (NLL+L2)', 'Accuracy', 'AUPRC', 'AUROC'] train_metrics = ['loss', 'accuracy', 'auprc', 'auroc'] train_values = [ - metrics['train/loss'].numpy().result(), - metrics['train/accuracy'].numpy().result() * 100, - metrics['train/auprc'].numpy().result() * 100, - metrics['train/auroc'].numpy().result() * 100 + metrics['train/loss'].result().numpy(), + metrics['train/accuracy'].result().numpy() * 100, + metrics['train/auprc'].result().numpy() * 100, + metrics['train/auroc'].result().numpy() * 100 ] if not use_tpu: train_columns.append('ECE') From 98287f0000a97f01f1b5388028a94404846d0f97 Mon Sep 17 00:00:00 2001 From: Neil Band <20114038+nband@users.noreply.github.com> Date: Fri, 23 Dec 2022 11:04:16 -0600 Subject: [PATCH 3/8] update readme to py3.10 --- baselines/diabetic_retinopathy_detection/README.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/baselines/diabetic_retinopathy_detection/README.md b/baselines/diabetic_retinopathy_detection/README.md index b042b0611..25a5f5068 100644 --- a/baselines/diabetic_retinopathy_detection/README.md +++ b/baselines/diabetic_retinopathy_detection/README.md @@ -27,11 +27,9 @@ Bayesian deep learning seeks to equip deep neural networks with the ability to p Set up and activate the Python environment by executing ``` -conda create -n ub python=3.8 +conda create -n ub python=3.10 conda activate ub python3 -m pip install -e .[models,jax,tensorflow,torch,retinopathy] # In uncertainty-baselines root directory -pip install "git+https://github.com/google-research/robustness_metrics.git#egg=robustness_metrics" -pip install 'git+https://github.com/google/edward2.git' ``` ## Data Installation From 1a78b717420c8553c77b0315908f335e1aa072b5 Mon Sep 17 00:00:00 2001 From: Neil Band <20114038+nband@users.noreply.github.com> Date: Wed, 4 Jan 2023 15:04:06 -0600 Subject: [PATCH 4/8] improve RETINA data loading README and data packaging scripts --- .../diabetic_retinopathy_detection/README.md | 116 +- .../data_load_scripts/aptos_metadata.csv | 3663 +++++++++++++++++ .../data_load_scripts/load_aptos.py | 46 + ...iabetic_retinopathy_severity_shift_mild.py | 98 + .../load_ub_diabetic_retinopathy_detection.py | 48 + 5 files changed, 3899 insertions(+), 72 deletions(-) create mode 100644 baselines/diabetic_retinopathy_detection/data_load_scripts/aptos_metadata.csv create mode 100644 baselines/diabetic_retinopathy_detection/data_load_scripts/load_aptos.py create mode 100644 baselines/diabetic_retinopathy_detection/data_load_scripts/load_diabetic_retinopathy_severity_shift_mild.py create mode 100644 baselines/diabetic_retinopathy_detection/data_load_scripts/load_ub_diabetic_retinopathy_detection.py diff --git a/baselines/diabetic_retinopathy_detection/README.md b/baselines/diabetic_retinopathy_detection/README.md index 25a5f5068..7a5180a49 100644 --- a/baselines/diabetic_retinopathy_detection/README.md +++ b/baselines/diabetic_retinopathy_detection/README.md @@ -34,82 +34,54 @@ python3 -m pip install -e .[models,jax,tensorflow,torch,retinopathy] # In uncer ## Data Installation -Because the data is distributed through Kaggle, we need to take a manual route to downloading. - -1. Download from Kaggle: https://www.kaggle.com/c/diabetic-retinopathy-detection - -2. Extract everything to ``$DATA_DIR/downloads/manual``; your directory should look like - -``sample/ sampleSubmission.csv test/ train/ trainLabels.csv`` - -3. Confirm successful download of files - -You should have 35,126 training images and 53,576 test images, which should be located in manual/train and manual/test. - -You may check this with the command - -`ls -1 | wc -l` - -4. Manual loading -- this is not contained in standard execution of diabetic-retinopathy model execution (yet) - -I suggest doing this loading in a `screen` session, in case it fails -- it takes a while. - -I suggest doing this in an ipython shell! - -``$ ipython`` - -**Train loading:** - -First, we initialize a DiabeticRetinopathyDetectionDataset object. - -``` -import uncertainty_baselines as ub - -data_dir = $DATA_DIR - -dataset_train_builder = ub.datasets.get( - "ub_diabetic_retinopathy_detection", - split='train', - data_dir=data_dir, download_data=True) -``` - -We then need to shuffle and package our data into TF objects: - -``` -dataset_train_builder._dataset_builder.download_and_prepare(download_dir=f'{data_dir}/downloads/') -``` - -Rinse and repeat for test data: - -``` -dataset_test_builder = ub.datasets.get( - "ub_diabetic_retinopathy_detection", - split='test', - data_dir=data_dir, download_data=True) -dataset_test_builder._dataset_builder.download_and_prepare(download_dir=f'{data_dir}/downloads/') -``` - -**Install / Download for Severity and Country Shifts** - -Severity Shift depends on precisely the same data as the original Diabetic Retinopathy dataset, so we do not need to go back to step 1. - -We can package the Severity Shift splits into TF objects by substituting "ub_diabetic_retinopathy_detection" with "diabetic_retinopathy_severity_shift_mild", and using the following arguments for `split`: - ``` -train -in_domain_validation -ood_validation -in_domain_test -ood_test -``` - -On the other hand, to download the (much smaller) APTOS dataset, we do need to repeat steps from step 1, downloading from https://www.kaggle.com/c/aptos2019-blindness-detection. Note that APTOS only includes "validation" and "test" splits. - -**Additional Splits for Exploration** +The below instructions will install and preprocess the data needed to train and evaluate models on the Country and Severity Shifts. + +The EyePACS dataset (used in Country and Severity Shift) and the APTOS 2019 dataset (used in Country Shift) are distributed through Kaggle, which requires us to manually download the data and place it in the correct directory. + +1. Download the raw datasets from Kaggle: + * [EyePACS](https://www.kaggle.com/c/diabetic-retinopathy-detection) + * [APTOS 2019](https://www.kaggle.com/c/aptos2019-blindness-detection) + +2. Extract the EyePACS dataset to ``$DATA_DIR/downloads/manual``. The directory structure should look like this: + + ``sample/ sampleSubmission.csv test/ train/ trainLabels.csv`` + +3. Extract the APTOS dataset to ``$DATA_DIR/aptos/manual``. The directory structure should look like this: + + ``sample_submission.csv test.csv test_images/ train.csv train_images/`` + +4. Confirm successful download of files. The following commands should print out the number of files in the directories: + ``` + $ ls -1 $DATA_DIR/downloads/manual/train | wc -l + 35126 + $ ls -1 $DATA_DIR/downloads/manual/test | wc -l + 53576 + $ ls -1 $DATA_DIR/aptos/manual/train_images | wc -l + 3662 + $ ls -1 $DATA_DIR/aptos/manual/test_images | wc -l + 1928 + ``` + +5. Manual shuffling and packaging of TF dataset objects. I suggest using the following commands in a `tmux` or `screen` session, in case of network failure; they take a while. + ``` + conda activate ub + + # Standard EyePACS dataset + python baselines/diabetic_retinopathy_detection/data_load_scripts/load_ub_diabetic_retinopathy_detection.py --data_dir=$DATA_DIR + + # Country Shift: APTOS distributionally shifted validation and test sets + python baselines/diabetic_retinopathy_detection/data_load_scripts/load_aptos.py --data_dir=$DATA_DIR + + # Severity Shift splits as used in RETINA paper + python baselines/diabetic_retinopathy_detection/data_load_scripts/load_diabetic_retinopathy_severity_shift_mild.py --data_dir=$DATA_DIR + ``` + +### Additional Splits for Exploration There are several additional splits available for experimenting with other partitions of the severity levels into binary classification, and with other preprocessing configurations. See the following files for details on available splits: * [uncertainty_baselines/datasets/diabetic_retinopathy_detection.py](uncertainty_baselines/datasets/diabetic_retinopathy_detection.py): standard EyePACS dataset -* [uncertainty_baselines/datasets/diabetic_retinopathy_severity_shift_mild.py](uncertainty_baselines/datasets/diabetic_retinopathy_severity_shift_mild.py): Severity Shift with the binary decision threshold between no and mild DR, and {moderate, severe, proliferative} DR as out-of-distribution +* [uncertainty_baselines/datasets/diabetic_retinopathy_severity_shift_mild.py](uncertainty_baselines/datasets/diabetic_retinopathy_severity_shift_mild.py): Severity Shift with the binary decision threshold between no and mild DR, and {moderate, severe, proliferative} DR as out-of-distribution (used in the paper) * [uncertainty_baselines/datasets/diabetic_retinopathy_severity_shift_moderate.py](uncertainty_baselines/datasets/diabetic_retinopathy_severity_shift_moderate.py): Severity Shift with the binary decision threshold between mild and moderate DR, and {severe, proliferative} DR as out-of-distribution * [uncertainty_baselines/datasets/aptos.py](uncertainty_baselines/datasets/aptos.py): APTOS distributionally shifted evaluation dataset, partitioned into "validation" and "test" splits diff --git a/baselines/diabetic_retinopathy_detection/data_load_scripts/aptos_metadata.csv b/baselines/diabetic_retinopathy_detection/data_load_scripts/aptos_metadata.csv new file mode 100644 index 000000000..c87d92114 --- /dev/null +++ b/baselines/diabetic_retinopathy_detection/data_load_scripts/aptos_metadata.csv @@ -0,0 +1,3663 @@ +id_code,diagnosis +000c1434d8d7,2 +001639a390f0,4 +0024cdab0c1e,1 +002c21358ce6,0 +005b95c28852,0 +0083ee8054ee,4 +0097f532ac9f,0 +00a8624548a9,2 +00b74780d31d,2 +00cb6555d108,1 +00cc2b75cddd,0 +00e4ddff966a,2 +00f6c1be5a33,0 +0104b032c141,3 +0124dffecf29,1 +0125fbd2e791,0 +012a242ac6ff,2 +014508ccb9cb,0 +0151781fe50b,0 +0161338f53cc,2 +0180bfa26c0b,2 +0182152c50de,0 +01b3aed3ed4c,1 +01c7808d901d,2 +01d9477b1171,0 +01eb826f6467,2 +01f7bb8be950,0 +0212dd31f623,0 +022f820027b8,0 +0231642cf1c2,0 +0232dfea7547,0 +02358b47ea89,0 +0243404e8a00,4 +025a169a0bb0,2 +02685f13cefd,4 +026dcd9af143,2 +02cd34a85b24,0 +02da652c74b8,0 +02dda30d3acf,4 +0304bedad8fe,0 +0318598cfd16,4 +032d7b0b4bf6,2 +033f2b43de6d,2 +034cb07a550f,4 +03676c71ed1b,2 +0369f3efe69b,1 +03747397839f,2 +03a7f4a5786f,4 +03b373718013,0 +03c85870824c,3 +03e25101e8e8,1 +03fd50da928d,2 +03ff7d159f10,2 +0415fc68b176,2 +041f09eec1e8,2 +0423237770a7,0 +042470a92154,3 +04579e31e4be,0 +04a6fc58dabc,2 +04ac765f91a1,1 +04aef84a2cc1,0 +04d029cfb612,2 +04efb1a284cc,0 +050bb1eafa76,0 +05113073b268,0 +05195a3db5e2,0 +0519b934f6b1,2 +052d9a3fe55a,2 +05339950962e,0 +054b1b305160,0 +0551676cc2aa,0 +059bc89df7f4,1 +05a5183c92d0,1 +05b1bb2bdb81,0 +05cd0178ccfe,3 +05e9126dfa5c,0 +06024377d573,2 +060e00d1e2ab,0 +064af6592ba6,2 +06586082a24d,0 +0684311afdfc,1 +069f43616fab,3 +06b71823f9cd,1 +06be1092a062,0 +07083738b75e,2 +0709652336e2,0 +070d4ce5fd90,0 +070f67572d03,3 +07122e268a1d,4 +071435a218ec,2 +07419eddd6be,2 +07596907347b,0 +0773a1c326ad,0 +07751b94a88a,0 +0790515cf5af,0 +07929d32b5b3,1 +07a0be6b347f,0 +07a0e34c8d20,3 +07a1c7073982,1 +07a2b8cabf6b,0 +07a3be30563b,2 +07d8db76b301,2 +07e827469099,0 +07f5d7baf907,0 +08037e4490e5,0 +080ee76c958c,4 +080f66eedfb9,4 +084c02cf077f,0 +0851d6a69589,0 +086d41d17da8,1 +08752092140d,2 +08a3875063c3,4 +08b6e3240858,0 +08bef347f40d,0 +08c17a2d95b7,2 +08c60c647673,0 +08ee569d4721,0 +08f8838d69bb,0 +09237bf783a4,0 +0924cec998fa,0 +093a42649c29,3 +093cf723fede,0 +094858f005ab,2 +0953c0ac1735,2 +096436d68d06,0 +09662e462531,0 +0981195eb9fb,4 +099021fac3c9,0 +09934421c79e,0 +09935d72892b,1 +09c8323c612e,0 +09eeafa9656a,2 +09f1111a388a,0 +09f6ab477654,2 +0a09aa7356c0,2 +0a1076183736,2 +0a3202889f4d,1 +0a38b552372d,0 +0a4e1a29ffff,0 +0a61bddab956,1 +0a74c92e287c,0 +0a85a1e8f9e9,0 +0a902c80d5da,0 +0a9ec1e99ce4,2 +0abf0c485f66,0 +0ac436400db4,2 +0ad7f631dedb,1 +0ada12c0e78f,4 +0ae2dd2e09ea,0 +0af296d2f04a,2 +0afbeeef0ff7,0 +0afdfe5f422c,2 +0b00f8a77510,0 +0b2ea8f268cf,0 +0b3efe669365,0 +0b64a0a06f9a,0 +0b8bdec9d869,0 +0babc12807b2,0 +0bf37ca3156a,4 +0c2e2369dfff,2 +0c38940e1f80,0 +0c43c79e8cfb,0 +0c55d58bebaf,2 +0c76fd494af6,2 +0c7e82daf5a0,2 +0c917c372572,3 +0ca0aee4d57e,2 +0cae727cf119,0 +0cb14014117d,3 +0cb6b898389f,0 +0cbcc7b23613,0 +0cd31078cd08,0 +0ce062f26edc,0 +0ceb222f6629,4 +0cecc2864b7f,0 +0d0a21fd354f,2 +0d0b8fc9ab5c,0 +0d310aba6373,1 +0d744aed4d64,0 +0d8f60ed9280,0 +0d9a9896f801,0 +0da09e3ce8f1,2 +0da321efbce6,0 +0da632ca45e0,0 +0daddc45d832,0 +0db1d8dcf219,0 +0dbaa09a458c,2 +0dbe6c26cedc,0 +0dc031c94225,1 +0dc8d25b3f69,3 +0dce95217626,1 +0e0003ddd8df,0 +0e0fc1d9810c,4 +0e3572b5884a,0 +0e43c8298fc0,0 +0e75d51152fc,2 +0e82bcacc475,4 +0e94cd271c00,0 +0eb52045349f,1 +0eced86c9db8,0 +0edadb2aa127,3 +0ef4c61dc056,0 +0efc93ec838b,2 +0eff8eacb2f7,2 +0f364b7d4384,0 +0f495d87656a,1 +0f6e645466a2,0 +0f882877bf13,3 +0f96c358a250,3 +0fb1053285cf,1 +0fb560f9adb2,2 +0fbbd665431f,0 +0fc6829da85b,0 +0fcfc6301f3d,2 +0fd16b64697e,2 +0fe31196e0e8,0 +0fffa73e2402,2 +1002b5151b8e,0 +1002f3fe38f0,0 +1006345f70b7,2 +101b9ebfc720,1 +103abbd8b63e,0 +103f97a2ab15,0 +107aea0d9289,1 +10a5026eb8e6,0 +10bf25731c08,0 +10de500cf0c5,0 +10ecc5292ab1,2 +10eefba568dd,2 +10f10fd30718,0 +10f36b0239fb,1 +10f6ef37fe43,0 +10fca1abf338,4 +1116271db4ea,1 +111898ab463d,1 +1120f6d08d95,2 +11242a67122d,4 +1124ffcd76c2,2 +115e42dd6a81,2 +1177d583c807,2 +11b220a397b8,0 +11b5c77fbf79,2 +11d8e5eaee5b,0 +12025b34deb8,2 +12058bbb8299,0 +1269ab57c2e6,2 +12a82fc7d73e,2 +12ab2f6397f0,0 +12ae44be0d38,0 +12b57dac703e,0 +12bc439d373a,0 +12ce6a1a1f31,1 +12e3f5f2cb17,1 +12e6e66c80a7,2 +12ef75375322,0 +13063d1bc4ea,2 +13073f075a56,0 +135575dc57c9,2 +13ab8db8c700,1 +13c191b59ed0,0 +13d014ccd136,0 +13d411c85ffd,0 +13d71389563f,2 +1409ab48175a,0 +1411c8ab7161,2 +1414128bead0,2 +141735b57ec0,2 +1438288bb2e1,2 +143db89c11c8,0 +144a1a426137,2 +144b01e7b993,2 +14515b8f19b6,2 +14c3b41d289c,0 +14e3f84445f7,3 +14ee87d6cc42,2 +1509d097b69a,0 +150f92b45349,0 +150fc7127582,0 +152db3de8120,0 +1541226c5d72,2 +15528e740543,2 +155e2df6bfcf,0 +157d17349cc6,2 +1594ca6c30d3,2 +15b21c80cc31,0 +15bed5adde74,3 +15c24478ac72,0 +15cc2aef772a,1 +15cd5f52d300,2 +15e24b73d4a7,0 +15e96e848b46,4 +15f440753916,3 +15f8d769935c,0 +1601c939412f,0 +16060f05d047,0 +1608c82a263f,0 +1623e8e3adc4,3 +1632c4311fc9,2 +1633f8291a80,0 +1638404f385c,4 +164cd5a3a6cd,0 +165634a6167e,0 +165c548185f8,0 +165cd2070ebd,4 +166068a24416,3 +16ce555748d8,4 +17188c13e635,2 +172df1330a60,1 +174db0854291,0 +175dd560810a,2 +1782142e17d9,0 +178412895d5e,0 +17d7d6b092f4,0 +17d997fe1090,0 +17e6116b89b3,0 +17eb5d4ad740,2 +17eff993386f,1 +17f6c7072f61,0 +180afe1d5ef7,2 +18323d8f2470,2 +1844a039b4ea,2 +184a185e7447,0 +18621b9ca978,0 +1864d3411143,0 +186c1835eec5,0 +187f6ccda87a,4 +188219f2d9c6,0 +188a9323be03,2 +1891698febce,0 +189cbbc9e5e3,0 +18af532e7e1e,2 +18b06f56ab27,1 +18b7e34eab8f,0 +18b99159a14f,0 +18cde9649e90,0 +18ce0cdc473d,0 +18d8fdb140b7,2 +18f1f979d30d,2 +190a309f2cc5,0 +19113e5f45ec,2 +191348830ddf,2 +191a711852bd,3 +191cf5668f33,0 +19244004583f,3 +1943983492e5,2 +194814669fee,1 +19545647508e,0 +1968183f0e61,2 +196e6a186452,2 +19722bff5a09,1 +197af0de76e2,0 +19b0e3c734f5,0 +19e350c7c83c,1 +19ef4d292196,4 +1a03a7970337,1 +1a0dbc6c0cda,0 +1a19f2ef4472,0 +1a1b4b2450ca,2 +1a1e974a7dbf,0 +1a369baf9ee6,2 +1a7e3356b39c,4 +1a90fad9ffa2,4 +1ab3f1c71a5f,3 +1ab8d3431ffc,0 +1ade1e949383,2 +1ae3c58759fb,0 +1ae8c165fd53,2 +1b329a127307,1 +1b32e1d775ea,4 +1b3647865779,0 +1b398c0494d1,0 +1b4625877527,2 +1b495ac025b7,3 +1b862fb6f65d,0 +1b8701231c8f,0 +1b8ad0afe9fb,2 +1bb0ddfe753a,1 +1bea04b2bb2d,2 +1bf30c84bbad,4 +1c0cf251b426,1 +1c0e5dd1b14c,2 +1c13a1483f4a,0 +1c3a6b4449e9,1 +1c47815f4a6b,0 +1c4d87baaffc,2 +1c4f3aa4df06,4 +1c578b72d7b3,2 +1c5ad36fb799,2 +1c5e6cdc7ee1,2 +1c6d119c3d70,2 +1c7a013eeba7,0 +1c9521878baf,3 +1c9c583c10bf,0 +1ca35d483772,0 +1ca62b3e4fd3,0 +1ca91751be4d,0 +1caba2fb38f6,0 +1cb6961d141c,0 +1cb814ed6332,2 +1cc58b15f466,0 +1d0b93317aa8,0 +1d11794057ff,1 +1d14dd912671,2 +1d2472849dce,0 +1d29cb2f4296,0 +1d37f1c8b6d8,0 +1d3e9b939732,0 +1d46f1326394,0 +1d55e689cf84,2 +1d674e2e32e0,1 +1d74c4713e21,0 +1da25637859b,2 +1da4a17c18c9,0 +1db0393cdbc1,0 +1db18bdd43aa,2 +1db6bb46c102,0 +1dbdc32c17db,2 +1dd9adcbfff4,2 +1df0431bfa73,0 +1df0a4c23c95,0 +1df1530b9b8d,0 +1df3e03a8f5f,1 +1dfbede13143,2 +1dfe599d12a9,0 +1e036f2e7095,0 +1e143fa3de57,2 +1e1fb019710d,2 +1e4650743fa2,2 +1e4b3b823b95,2 +1e742358e0b9,0 +1e7ccd4a1c87,0 +1e8a1fdee5b9,1 +1e8c31e29dd3,0 +1e9224ccca95,4 +1ec95179cdfe,0 +1ee1eb7943db,2 +1ee355480567,0 +1eee55494271,0 +1efa5d443707,4 +1f07dae3cadb,2 +1f0e223b8055,2 +1f15ca672675,0 +1f31701dd61b,0 +1f3f32efaf20,0 +1f4bf8e28b41,2 +1f4fb37e0854,0 +1f543a86c4d4,2 +1f5496352859,0 +1f63d44d9e3c,2 +1f9ccda4ddf2,0 +1faf8664816c,0 +1fb455685328,0 +1fd5d860d4d7,4 +1fddd7c98fd2,0 +1ffaa51a6245,2 +200d947f75db,1 +2017cd92c63d,4 +201f6e10c108,0 +201f882365d3,0 +203275daf46d,2 +20404ec7b518,2 +20688cb25704,2 +207a580de0ea,2 +207dd0487264,0 +20c883d3bd38,2 +20d5fdd450ae,4 +20f86e068276,0 +21037f5c7790,0 +210bfe0127c6,0 +211518c46162,4 +2131aa3a1e6f,2 +215d2b7c3fde,0 +217dad18a5ed,2 +218c822a3dd9,0 +21abd36095a1,4 +21d18b022429,4 +22098b1fe461,1 +2209daf71aab,0 +2221cf5c7935,0 +222d0ac042b4,2 +222f3ee3a1e8,4 +22325552a4e3,1 +2241b7e90782,2 +22449af52060,0 +224bb938e2dd,2 +224c14366e11,0 +226c6ceb9185,0 +22895c89792f,4 +22a6da005395,1 +22ce8ef69357,2 +22d843b2bbd1,0 +23148a40ecb0,2 +23175b7ef453,2 +232549883508,2 +233d948e2544,0 +234399352d36,2 +236f56771ec6,2 +2376e5415458,2 +237aa50edc34,0 +237c078d00fc,3 +2399d68d407f,0 +239f2c348ea4,2 +23d7ca170bdb,2 +23fca0693e2a,2 +2408799a09b2,0 +240b25a7debe,0 +242fc19be06f,0 +2463bb04ebc3,2 +246e4506824a,2 +247ac63e5510,4 +247e98aba610,4 +248139c423c4,1 +248dec89b3a2,0 +24b87f744598,3 +24b943fe725e,1 +24de56d433cd,0 +24f271c87e73,0 +24f3e70f0419,0 +25002fe43f92,2 +252305189b3a,0 +2532613a584a,2 +253e96488cfb,0 +254052cf3e48,4 +2585bbc91909,0 +259d30f693b6,1 +25a0a1e41afd,0 +25b0e72705a8,3 +25b4080f598b,0 +25d069089c5e,4 +25dc1b41ed9c,2 +25e9fd872182,1 +2608e1dac5b1,2 +260a455692b5,0 +261c6bd63bff,2 +2628305cbb29,4 +262ad704319c,4 +263d8851e33b,0 +26453eb7e989,2 +26463a5fb949,4 +2665f72e2dd3,3 +266fbefa58fb,0 +2682e6da9050,0 +26999ebc21de,2 +269b44e628eb,3 +269f0792f11f,2 +26cd40b57ad1,0 +26d60db3bbfd,0 +26d9576e8043,0 +26e231747848,2 +26fc2358a38d,0 +2700754f71e9,2 +272d9c043c81,2 +2735be026d44,2 +274f4de2a59d,0 +274f5029189b,1 +276b14f72328,0 +2776d70724d3,2 +278aa860dffd,1 +27933cdbe0cc,0 +27b68863349f,2 +27bab1432f61,2 +27e2be850a99,4 +27e4c800a449,1 +27f82ada84ac,0 +27fca9f12b3c,2 +281d7b7c7676,4 +2821998fc002,0 +282bc792d23a,2 +283c3aeba594,0 +28503940d10b,0 +286e9981dd9b,0 +28751f290ba3,0 +28824d12d31d,2 +289a47dcbb82,0 +28a4d00927b7,2 +28dc010a0780,0 +28f73575e1f2,0 +28f93cad89c5,2 +28f98cfe3858,1 +290ecdba359f,2 +29192375ab1b,0 +291e2ff3d834,2 +291f581d365e,0 +2923971566fe,0 +2927665214e1,0 +29580bed2f7d,2 +295fdc964f6e,2 +2967e578939f,2 +2974c6ad1d58,0 +299086c6d1b5,3 +2994f17f58a5,1 +29a13e666266,0 +29b52f64d2db,1 +29bc0e721cfe,4 +29d059522fa1,0 +29f44aea93a4,2 +29f9e1ac9507,0 +2a08ed6bbcbc,1 +2a099b247b10,2 +2a2274bcb00a,0 +2a2a6435f7f3,0 +2a3378bcfbcc,2 +2a3a1ed1c285,2 +2a4520f1f9a3,0 +2a47e5b21791,2 +2a5a8b744f08,2 +2a7373eeb352,0 +2a8a9e957a6c,1 +2a93334f663a,0 +2af1bf226f51,2 +2b074afdf626,2 +2b07790a2422,2 +2b10f138e67d,0 +2b21d293fdf2,2 +2b2f5a0f880d,0 +2b3a4a81d748,0 +2b48daf24be0,3 +2b4c7b5f1f1e,0 +2b5bb6d33959,0 +2b88cb6e31cd,2 +2ba0b0d9bda2,2 +2bb063318cf1,3 +2bb3c492d6d3,0 +2bbcfdc477db,4 +2bbd1f99ecc3,3 +2bd4d4fbed5c,2 +2c1d5be654dd,2 +2c2aa057afc5,2 +2c77bf969079,0 +2c8101f14723,0 +2c827005b8f8,0 +2c9dfc270f1b,0 +2cacdb0dffae,0 +2cbfc6182ba2,2 +2cceb07ff706,2 +2cdcc910778d,0 +2cef97083e6f,2 +2cf18033da31,0 +2cfe8703f265,0 +2d04cead4d3a,0 +2d07162a13b1,0 +2d3f4094c08a,0 +2d552318eb07,2 +2d558de2cabe,0 +2d7666b8884f,1 +2d870833c0c9,2 +2d9d97a6e713,1 +2da82d14e1b7,0 +2db0cd3e30da,0 +2dc647e00ad3,0 +2dd28ac497d2,0 +2df07eb5779f,4 +2e26762daed5,2 +2e79041ef722,2 +2eba4279e503,0 +2ecbc2e3f239,1 +2ef10194e80d,0 +2ef4a04aed1b,0 +2ef955d6d9ff,0 +2f143453bb71,0 +2f284b6a1940,4 +2f2e1949ad56,1 +2f42e20db938,3 +2f4e81787d9b,1 +2f5c9cdfb333,2 +2f7789c1e046,4 +2f7fbdcc9a4b,0 +2f81ee5f2926,0 +2f8d14a7d390,0 +2f9b66784109,2 +2fb3a8606a77,2 +2fde69f20585,4 +2fdfb80ea53c,0 +2fdffb6160a6,2 +2fe06bedb2c4,4 +2fefb720869a,0 +300305ce82d2,2 +30263a7d5609,0 +302bcdb635ff,2 +3044022c6969,1 +306c841af3fc,0 +3079490a4b9c,0 +308f7fce6f0d,2 +30941b65348b,1 +30cab14951ac,1 +30db694bee42,0 +310c27067ac0,2 +312694ea8e6a,4 +3128eb593012,2 +3132556f5352,0 +31360e44ac64,0 +31452ad8808c,2 +314862758acf,2 +315c1a0d87fd,0 +31616ff6b53b,3 +3178559fbf57,0 +318eb706a134,0 +31b5d6fb0256,2 +31cb39681f6a,1 +3206171db5be,4 +3218a6d8eb2c,3 +3232b34cbe99,0 +3246f07e65b4,2 +3254e48c8aa0,0 +3286073a976e,0 +328d141ed3aa,0 +32a3eb37ff40,2 +32d7d360d891,0 +32ed318235b8,0 +33105f9b3a04,1 +331121c65e88,0 +331b87d1b9d1,2 +3323fd59782e,0 +3325b1fe55d2,0 +33596a635b53,0 +33778d136069,3 +338326891d84,0 +33b893e18eb3,1 +33b91def2035,0 +33b978734eab,0 +33d72035c27a,0 +33e7bf536fc5,0 +33e8e26a75d4,2 +33ffddea8c6e,1 +3402124408ea,2 +3428230bf1bd,2 +342edf9b889d,0 +3435fd8675a2,3 +345b1f0abbba,0 +3461dc601cc2,1 +34723fae6475,2 +348598d01e18,0 +3486f7096276,0 +349f3c0ac83e,2 +34a7dbd3f05c,0 +34acae864963,0 +351e842842a2,0 +352e4a939242,3 +35362d43e753,0 +354b8911d6ed,2 +356304d15a5c,0 +35777eb7859d,0 +357f02a779d7,0 +3580a545016d,0 +358d2224de73,1 +3599029efeb3,0 +359bab5d784b,0 +35aa7f5c2ec0,1 +35ac70c0d08f,0 +35beb47fe159,0 +35cd9832fc0a,0 +35d6c4c50072,1 +35df2bc6ae95,0 +3601dac9bed7,0 +36041171f441,1 +360832d84ce0,0 +362c4a96cebb,2 +365f8c01d994,1 +36677b70b1ef,1 +367c7049929c,2 +36865bbc64d6,3 +369229040a34,0 +3694e8c8e09a,0 +36a1e3c780a0,2 +36b5b3c9fb32,3 +36e4b704b905,0 +36ec36c301c1,2 +370f575adb23,0 +3710ff45299c,0 +3730c322d35b,0 +3732de8b416f,0 +374535e0adb8,4 +3748349334f6,2 +378963f9df22,4 +3796af4d987a,4 +37c4dfe03aba,4 +37c523296d42,0 +37de05ef12a5,2 +38055d8b9f08,3 +3810040096cb,4 +3823acc4e464,0 +382752f6694a,1 +38373431d996,0 +383e72af1955,3 +384631079d1e,1 +38487e1a5b1f,2 +384db24ebbd7,0 +384e6c915722,0 +387138ddf43d,0 +388279491b5d,0 +388f12e8df0b,2 +389552047476,0 +38b9bb961847,1 +38c7153457e2,0 +38e0e28d35d3,1 +38e111cac46f,2 +38f1901f214a,0 +38fe9f854046,2 +3908b3cfd620,0 +39134907127a,2 +393fa5a023a5,0 +39923b29988a,2 +39aa3cd93c50,3 +39b5b05d6cd9,2 +39f8935185e6,0 +39fd8ef3a45c,0 +3a122851e526,2 +3a1d3ce00f0c,2 +3a1ecf5e2839,4 +3a4cfea0a766,0 +3a61e690f4bb,2 +3a643599f852,0 +3a6e9730b298,4 +3aa2b1ce6700,2 +3abac0961bfd,0 +3ac3fbfca7d4,4 +3ac92ac3d65a,0 +3af9aaa880e9,0 +3b018e8b7303,3 +3b0190bbe615,0 +3b10191dfd25,0 +3b185ac445d0,4 +3b232b394e4f,4 +3b2b91590590,0 +3b4a5fcbe5e0,4 +3b58b02c89ed,2 +3b5dffe159b6,0 +3b73a3a4a734,1 +3b9817a39adf,0 +3b9c1f42c2f2,2 +3bf2deaa5ef0,0 +3bf3085ac167,0 +3c1efa38d0da,2 +3c28fd846b43,0 +3c311c9109b0,2 +3c326543fff6,0 +3c42512c81e0,0 +3c53198519f7,2 +3c726de3ee90,1 +3c72f580d4ba,1 +3c78bfca247b,4 +3c9529918097,0 +3ca12e02dd4e,0 +3ca637fddd56,4 +3ca8be3b40d6,0 +3cab32dd6ef9,0 +3ccf96c1dd6d,4 +3cd801ffdbf0,2 +3cd9713c0ecb,0 +3cdda8b3df19,2 +3cdef7c591cc,0 +3ce2f8a77a32,0 +3d2ecffe0386,0 +3d3e288d490e,2 +3d663a6a50a3,2 +3dbc90c7ee7d,1 +3dbfbc11e105,2 +3ddb86eb530e,2 +3de8ad4151e1,1 +3dec415b188a,0 +3dfc50108072,2 +3e1f8fecb06f,2 +3e3a3955b9c5,3 +3e61703b5ab2,0 +3e6bfc4d5c65,2 +3e86335bc2fd,2 +3ee17aa12e46,1 +3ee4841936ef,4 +3f0d3629d69e,0 +3f3de2a6b0f5,2 +3f44d749cd0b,0 +3f47f83217b5,2 +3f49f8d100e9,3 +3f5b4c2948e8,2 +3f6bccf21ce8,0 +3f6c627e2ff2,0 +3f73c91b7e32,1 +3f752fcccec0,4 +3f82631e9080,0 +3f8d5c940ba4,2 +3f98be586fe3,0 +3fa4f4d77177,3 +3fc219927a97,2 +3fd45879afe6,0 +3fd7df6099e3,2 +3fe282197c1c,0 +3ffa14d60b24,2 +40140a925c43,2 +401fdfd0db07,0 +4029d70e9d8a,1 +4036471a1bb7,0 +404ede327e98,0 +405085b53d7b,0 +40527a5e95dd,2 +405b4f78658f,3 +408ea9d5e082,4 +40c24aded50c,0 +40dd4e6e4444,0 +40e9b5630438,1 +41345cec5957,0 +4134b290f5f3,0 +4145dcb25053,0 +4158c340fa49,0 +415d5c5e785f,0 +415f2d2bd2a1,0 +417f408ee8e0,2 +4189d4e631ec,2 +419406328dcd,2 +41960d5f58c2,0 +41ab357d103f,0 +4205e9deb058,0 +4210809074c1,0 +423abbaa5fad,2 +4242c0d87f57,2 +4246ed634f25,2 +4276b82e4489,0 +4289af3afbd2,2 +4294a14c656a,3 +42985aa2e32f,0 +42a67337fa8e,2 +42a850acd2ac,2 +42af7282349b,0 +42b08dca9b2f,2 +42b93b574f23,2 +42b9c1977681,0 +42c65af5ab16,0 +42cc993f23a9,3 +4318b6adeb97,0 +4350a1b2f3cb,0 +435414ccccf7,0 +435d900fa7b2,2 +4360a112db10,3 +436e1793d240,2 +436e7a7af761,0 +436fa3fd145a,0 +437900a99871,2 +437cbec4a3f8,2 +43823561c3f0,0 +4384fa687afa,2 +4393c5bc576a,1 +43bc7c066dfb,0 +43ddd0ab0cc4,2 +43e9c66eb0f3,0 +43f22d1be8dd,0 +43fb6eda9b97,2 +4403538fb50f,0 +4409965eb2a4,0 +441117562359,2 +441848e0f308,0 +441affbe99aa,2 +44271f3cb18f,0 +445a8a6da55c,0 +4462fba1d2a1,4 +4464bb62bf20,0 +4478b870e549,2 +44855f666225,2 +44878f34e31f,0 +4489d421e5aa,2 +44976c3b11a6,0 +44a4d04162cc,0 +44a86263117b,0 +44c869174e3a,2 +44e0d56e9d42,2 +44e951e45dca,2 +44ecf3f4efa5,4 +44f4ae58990e,2 +44f7f3ef9d50,0 +4528fbbd43a3,0 +45369821d6a3,0 +453a1e2754b2,2 +453d553b0a94,2 +454792eb6e05,0 +454a944eb557,0 +4554062fa836,0 +45693d027798,0 +457c7c927e27,3 +45ae04cfde5d,2 +45c39ab9e797,2 +45e4b7eada54,1 +460893cd86e3,2 +461fa5292fda,0 +462937ece243,0 +465c618f7b23,2 +4661006f3ba6,1 +467b7d9d811c,2 +4689b739d240,4 +46923eea9a4e,2 +46acc506fa61,0 +46c1548d730e,2 +46cdc8b685bd,4 +46d3316c4857,4 +46f56c38051f,2 +4704dbb59536,0 +4731e708ede3,0 +475300735b7f,0 +47536db39f00,0 +475c7ded0f7a,2 +478fc46eaa49,0 +47b756014447,2 +47d1603a555b,1 +47e51065b819,2 +4818672273af,2 +482088e6be44,0 +4826d10030b3,0 +484dbeb9bf2a,0 +48543037d0b3,2 +4860f7813654,0 +486e852a3b4d,0 +48a45619d1a3,0 +48afe8c47454,2 +48c49f662f7d,2 +48c72dec46e5,2 +48fda42bd5d4,2 +4926dea289f8,0 +4927945ecfed,0 +49386d603494,1 +493d99f030e2,0 +49419f8d5cb4,2 +494fc9c745a3,1 +495106ae3b68,0 +495255c7492f,1 +4958bfcc9f38,0 +496155f71d0a,0 +4982378d72f9,0 +498f143c0374,3 +499c8df39222,4 +49a4765f8822,2 +49c5e7f6b8d2,1 +49d69c4c6290,2 +49e4b95ee2dc,0 +49eb73968c44,0 +4a05f81b3aba,0 +4a0890b08532,2 +4a0bba3b7d83,2 +4a1afe4044f4,0 +4a213b405ee4,1 +4a3da369b227,4 +4a44cc840ebe,2 +4a4cb731f91a,0 +4a558a1cd243,2 +4a589edaea60,0 +4a5a6efc0bef,0 +4a693dd3921a,4 +4a7dc013e802,4 +4a96c28f3f07,0 +4aa07d720638,1 +4aa3d771c5e4,0 +4ab8c0cece7f,0 +4abca30b676b,4 +4ad6109706e8,2 +4ad8d3ec8789,0 +4b1001050f1d,2 +4b237b958555,0 +4b422b48d0d4,2 +4b5ffea77373,2 +4b618537d52f,3 +4b6895d0cf8d,0 +4b6cb0bcfd44,0 +4bcee3cbe232,0 +4bd5d0b30198,0 +4bd941611343,4 +4beeca5cc859,0 +4c129470cec4,1 +4c17e85686f0,0 +4c389d033cb0,0 +4c3c1ed09771,1 +4c52922f3bfd,2 +4c53cc97ea13,0 +4c570172778b,3 +4c5ab774a381,0 +4c60b10a3a6a,3 +4c60f6fcea75,0 +4c635a01593d,0 +4c6c5a1bf5ab,0 +4c78d9d18da9,2 +4c9f0fdaaef7,3 +4cae247d9909,1 +4ccee4db09b6,0 +4ccfa0b4e96c,4 +4cddfc22b0ad,0 +4cde86044ad1,0 +4ce74e5eb51d,2 +4cf4d528c08e,0 +4cfd22ae43d4,0 +4d009cebabc9,2 +4d167ca69ea8,0 +4d17559ac1e2,0 +4d1cf360b2d7,2 +4d1e7def7624,0 +4d21ce39c905,2 +4d3de40ced3a,0 +4d47300e3ddb,3 +4d7d6928534a,1 +4d9fc85a8259,3 +4da2961e62fe,1 +4da6e2089d57,2 +4dbce359d0e1,2 +4dc2211a1c31,4 +4dd14c380696,0 +4dd4a4bf2421,0 +4dd5d5ccddcf,1 +4dd71fc7f22b,4 +4dd7b322f342,0 +4dd9d29eae5d,1 +4df6a81b476e,3 +4e0656629d02,1 +4e1e252317b5,0 +4e231670b48c,0 +4e43d05cc2ef,2 +4e4a6224a04e,0 +4e54ccfd49b2,0 +4e6071b73120,1 +4e7694eebb91,2 +4e82c3c8d31f,1 +4e8585a96739,0 +4e85aa647534,0 +4eabad7948cf,0 +4eaf2f81819d,0 +4ec7796df40e,0 +4ecd1fdd1435,1 +4ed31cc07366,2 +4ee1ad981a6d,2 +4ef0b485a7da,2 +4ef16a53d899,0 +4ef7144e24ff,1 +4f0866b90c27,3 +4f20f9a9a65b,2 +4f46d7ee61ed,2 +4f5dd7660b17,0 +4f60129e9a5b,2 +4f6abc40c72d,0 +4f7755e74a9e,1 +4fa26d065ad3,1 +4faf4063db8c,0 +4fd5ec0dca09,0 +4fecf87184e6,3 +4fef9ed8a4c5,3 +4ffa38550c95,0 +500aad15b7c8,0 +501c319f7a9f,0 +504a69096fcb,0 +5056fa7d505f,0 +5069feccd866,0 +5077cdb88aed,0 +5078caaf1f57,0 +50840c36f0b4,1 +5090917a2676,1 +50915e2329a1,0 +50916d67bb51,0 +50a2aef380c8,3 +50d8249f7bc9,0 +50d8a8fb7737,2 +50ddd7d976df,0 +50f5201fd18a,0 +51030843fde2,2 +510aa0a898fa,2 +51131b48f9d4,1 +511fd66b2df8,0 +51269b77d312,3 +513b0a4651fa,1 +51405d042000,2 +5152bf091152,2 +5173d54fc214,2 +5188a8afa879,2 +518e880613de,4 +519c6e8f78dc,0 +51a078d6d43a,0 +51a1d162e223,4 +51aa3361294c,0 +51af8a689511,0 +51af8c112682,4 +51cd8d2057fa,0 +51cfeccaf40d,2 +51d0034d177d,2 +51d574513bcb,2 +51d780864365,2 +51da6aebba8f,3 +51e656e5a541,0 +521b5377a727,0 +521d3e264d71,2 +52230bbef30e,2 +523b3f0fc646,1 +523d0c2cb4d6,2 +523ff163211b,2 +524f240e0c90,2 +5257cb536da2,0 +525acfea47e8,2 +525d0dd8dc45,0 +5264a54e1830,0 +5265dc9acdf8,2 +527bea76116c,2 +52886bed8a07,2 +5288f7441f64,0 +5293576816aa,0 +529906ff9dfa,0 +5299a532f0e0,0 +52ae917fcea4,1 +52dbec057cc8,2 +52ddde91a349,0 +52edbe29d655,0 +530d78467615,2 +531b39880c32,1 +5321ab64f9ea,0 +53273d664cd8,0 +5327f88a1919,2 +53327edb9e4d,0 +5347b4c8e9b3,1 +535682537302,0 +53704c80f0d8,1 +537e50fdf22e,3 +537e5c578f40,0 +53c874dbc594,0 +53ddae6a619e,0 +53f6c1c65c04,1 +54038e56131d,0 +540e4973829e,0 +541db13517e2,2 +542964865b1e,0 +54334705a34d,0 +5445255635f0,0 +545df1bbcd61,1 +547b37da9223,2 +5486da4273d7,2 +549381330191,0 +54b322c66d01,0 +54bbe3da103e,2 +54bdcdecd8f3,0 +54cab3596214,2 +54dc6e8107cd,2 +54f57cf26126,0 +55034b1dbff2,2 +55092c0071eb,2 +5511f114e7ee,0 +5548a7961a3e,1 +555d0bef3c5b,0 +55968f0e63c4,0 +55eac26bd383,1 +55eb405ec71e,4 +55f7f018c61c,0 +55fd453001cc,2 +5633ced07d8e,1 +565f3404f9b2,0 +5671eb95512b,1 +568455854a11,0 +56e56aa08362,2 +5712e2aa73a2,1 +571bbdbf585e,0 +5723d0ec895e,2 +5728b8aa98ef,0 +573ea80a53be,0 +57469423a012,2 +576e189d23d4,4 +57760be09c03,2 +5777ef74c9ec,1 +578109578b46,1 +57a5e4274275,0 +57a5f1015504,2 +57a710de68a4,0 +57ce57a8cfb0,2 +57db4781e7ec,0 +57f5ad4b5b29,0 +57f933d3d7c7,2 +58059e73d2d4,0 +5814cbd2e9bf,0 +58184d6fd087,1 +582115961a3d,1 +582f739b8f62,2 +58529a8638d0,2 +586f5c56081e,0 +587146a55885,1 +5879285f9d8d,1 +5889a0c75cac,0 +58a9e0d7f7af,0 +58af2c054ced,0 +58b866484a05,4 +58c12863f33d,0 +58ccba7eec9c,1 +58eb3809f456,0 +58f07741ee3b,0 +5905a9b06a73,2 +594f69b503ad,2 +595446774178,1 +596f4fdb0004,0 +598b8f5b3822,0 +59928f999ae7,0 +599498e9e4bc,0 +5995321563b7,0 +599b89048034,2 +59bd19c1c5bb,0 +59e5212f7139,1 +59ee65760535,2 +59f3f70abddd,2 +59fee5bc3479,4 +5a03fe3ed15c,2 +5a091e8cd95c,1 +5a0fe0ee4301,0 +5a11d21c2828,2 +5a179c123fd8,0 +5a27b9b2a9c1,0 +5a2c27b95c7c,2 +5a36cea278ae,2 +5a444c32cd9a,0 +5a5d3798c357,2 +5a93c0f783c4,0 +5ac7a414560e,0 +5ad3dabeb2cd,0 +5b068765e846,1 +5b0e53f53ef3,1 +5b1c4cefeb24,0 +5b2648ad455e,0 +5b301a6d1ac7,2 +5b32ece9c627,0 +5b3d41626ec5,0 +5b3e7197ac1c,3 +5b47043942f4,0 +5b5b80a3edee,4 +5b644a403e1f,2 +5b72ff04333d,1 +5b76117c4bcb,4 +5b804948e35f,1 +5b994ff78547,0 +5ba156a35ff2,0 +5baed382f062,0 +5bda2ed09e62,4 +5bea250d8bf5,0 +5bf3357a2823,0 +5bf6f2958e53,0 +5c6194562ed2,2 +5c7ab966a3ee,4 +5c817060c0ed,0 +5c8482926a08,2 +5c85d22bd0de,0 +5ca73d28f17f,0 +5ca779ace6e7,0 +5cab3ef4b31c,1 +5cbe88914a72,0 +5cc6dea19614,2 +5cde55f745af,2 +5ce5eeaf757a,0 +5cf9127f251a,2 +5d024177e214,2 +5d3c8c1f57da,0 +5d4e5fd34d91,0 +5d5b5da5f939,0 +5d6239c0fd39,0 +5d74f98d62be,4 +5d9c841eb245,0 +5db2e3a4594a,0 +5db895d3f1fc,0 +5dc23e440de3,2 +5dd2e26fc244,4 +5de4615a5161,0 +5e18af29d812,2 +5e505e25cd3e,0 +5e5275ddee29,0 +5e52c9fe676f,2 +5e7630f8438e,2 +5e7cc6ab4ac4,2 +5e7db41b3bee,4 +5e97cb2b0888,0 +5ea9e447bb62,0 +5ead17e894ae,0 +5eb311bcb5f9,2 +5eb8fb1aad41,0 +5ed6dc419e4d,2 +5efa24b03d5e,1 +5f13e8a07344,3 +5f4a8c074bd5,0 +5f51192841f7,0 +5f6db235c04d,0 +5f70ad48a525,2 +5fcff7280019,0 +6028a575dc27,1 +6061f5b7378d,3 +606daaf0bfc7,0 +6089fa333013,3 +609be3ca5ddf,0 +60aa4e649abf,0 +60e269e3e188,2 +60edda7b4871,0 +60eeae3ba23d,2 +60f15dd68d30,4 +6107a2e9f60e,0 +6110ecb3bb1c,0 +612f2df37a1d,4 +613028ede6a0,4 +613bacb35c05,1 +6155cf375354,0 +6165081b9021,1 +6180920bc224,0 +6181aa9f75f4,3 +6194e0fff071,4 +61a62b1dcc36,0 +61ac9b0dc6b9,2 +61bbc11fe503,4 +61bbe8db6f3a,1 +61c2fbd16e38,2 +61c667663f2f,0 +61d9c88a3a4b,0 +61da799bf0aa,0 +61e301bd3c25,4 +61f403fdb434,4 +62318d514160,4 +624fb7317106,2 +6253f23229b1,3 +628b581aa905,0 +6294b378d09f,0 +6298468d7d75,1 +62ab144d5cee,2 +62b4be2799ca,0 +62b826899151,0 +62cc7ddb53b6,2 +62e6f814c8f5,2 +62ecdc90dd42,2 +6324d77cf926,0 +63363410389a,1 +633fe9dbaf39,0 +6363b360aefb,2 +6377e23928f6,1 +639915f58a2f,0 +63a03880939c,1 +63b4d030b016,4 +63b71347e95d,0 +63c0eafd6aa9,0 +63c3c571b8ee,2 +63c7b0265775,0 +63d217b059b6,2 +63e041a757eb,0 +64678182d8a8,1 +64a13949e879,2 +64ac539f58cb,0 +64b9206afb3f,0 +64bad93fde3f,4 +64c6c6ee0d98,0 +64eb5a79dfdd,1 +64fedbf97473,4 +650104ede84c,0 +6504b703c429,0 +650fbed3fdca,2 +6531070bf03c,2 +653534ded339,2 +655cafb4c932,1 +657859f893d9,2 +658ad9f09f5d,0 +65a3b13ad9a0,0 +65a7fe9482fe,0 +65c958379680,4 +65cf00be6fb4,0 +65dda202653d,0 +65e120143825,4 +65e51e18242b,1 +65e530ee2e79,2 +65e6f1bd9875,0 +65f5d2a6eb7e,0 +65f69234c8a7,0 +6630f8675a97,4 +66366a90d1ef,0 +66375b3c64db,4 +66393d8c60ba,0 +663a923d5398,2 +66460ecab347,0 +664b1f9a2087,4 +6653ad026901,0 +665ce639a331,1 +6666c4f18396,2 +668a319c2d23,0 +668e853258cd,2 +66a0bf258013,4 +66b88a4bc474,0 +66bae1ba227f,2 +66bfec8d6bcd,0 +66cd9c28e636,1 +66d2ca47aa44,2 +6733544ae7a6,2 +6735931000ec,3 +674057ab250c,2 +675de69373f8,0 +6762b2b48ea5,1 +677f087cd697,1 +67844c46bc61,2 +67c03349bb31,2 +67d8f94f04e0,0 +67ed8cc78b97,0 +67f5d89da548,1 +6810410187a0,2 +681c3c115684,2 +682312e82ee3,0 +683023cda6a5,0 +68332fdcaa70,1 +684dd88a0d49,0 +6852f4531591,0 +686ed1dbae20,2 +687759336b0d,3 +6889bc64ab09,2 +68987fb159ab,0 +68ddb15a74de,0 +691eeb59b4cb,0 +692e946b1f85,0 +69591ebb198d,2 +6966abf40b8c,0 +697538183db5,3 +6987804eb464,2 +698d6e422a80,2 +69b3a00927fc,0 +69c4cbb630de,0 +69df7ade0575,2 +69f43381317b,0 +69fff98cb32a,4 +6a244e855d0e,3 +6a2642131e4a,0 +6a2c3f4ef329,0 +6a57a3db3eff,0 +6a905a7202d2,0 +6a91eb157f47,2 +6af071b0ac6e,0 +6b00cb764237,1 +6b07971c3bf6,1 +6b128e648646,3 +6b30767595d8,0 +6b3860e8f64f,0 +6b664ed2a938,0 +6b66b0e86f7e,0 +6b7cf869622a,2 +6b869f37cdf3,2 +6b91e99c9408,0 +6ba5ed791444,2 +6baafa56895c,3 +6bb30ec3231a,0 +6bcce181be65,0 +6bf26b777e3a,0 +6bf2a81a5d91,0 +6c00dd8bf708,0 +6c250a30593b,4 +6c2555a9cae4,2 +6c30dd481717,0 +6c315ad3d07f,2 +6c3589d7ed8d,0 +6c3745a222da,4 +6c4ec95dd8ba,0 +6c6505a0c637,0 +6c6efb6b1358,1 +6c9c902a97de,0 +6cb96a6fb029,0 +6cb98da77e3e,2 +6cbc3dad809c,2 +6ccfdb031184,0 +6cd606dc52e9,4 +6cdd0f985270,1 +6cee2e148520,0 +6cfb7b44ef6f,4 +6cffc6c6851a,0 +6d0c0531083f,3 +6d10709053ae,0 +6d259b5b4c76,4 +6d292ca4c9ad,1 +6d3d1fe6c32a,2 +6d454444f17c,2 +6d4f6c9a8406,0 +6d5a8362dd1e,0 +6d6be4cfc73f,0 +6d6fcf49e515,0 +6d7d26025122,4 +6d9effbcde78,0 +6daef3e5ca22,4 +6dc0281f11e3,0 +6dc07f968794,0 +6dcde47060f9,2 +6de39b94f634,0 +6df8b7b6e837,0 +6dfd80748e72,2 +6e018411ba4a,0 +6e092b306fe1,2 +6e092caa065f,0 +6e0f78e188ff,0 +6e1db8711879,0 +6e3526053de0,0 +6e44f6d04fc9,0 +6e68e742f5bc,2 +6e73acb2cf60,4 +6e861bc3bd7b,0 +6e92b1c5ac8e,3 +6ea07d19b4ce,1 +6efa36d59ada,3 +6f0463c1ff18,2 +6f0e5848d9ce,0 +6f3b62e5b7f5,0 +6f460f9968c7,0 +6f4719c6bb4b,4 +6f4e0538d1e4,2 +6f689fced922,0 +6f923b60934b,4 +6fb656d506b2,3 +6fbaaf8eb67a,0 +6fe4751a3b42,0 +6fe67482bfae,4 +6fe67fd7f5d1,0 +7005be54cab1,1 +702de9dcde32,4 +705f508d1e42,0 +709784f7fcc2,2 +70d0392397de,0 +70d657f8f503,4 +70ed3ec68b94,2 +70f5caf5f305,2 +7102f29e052e,2 +710b05a96e0f,4 +7116128c65ab,1 +711d1480d2e3,2 +7131bf4c9e6f,0 +7179f85bfd6f,0 +71a39c660432,3 +71c1a3cdbe47,1 +71c22da3d6c6,0 +71e4130bf5c8,2 +71e43b4f8ba6,0 +71f6a6e4620a,1 +720b5f62ce80,0 +721214151233,0 +7214fc7cbe03,0 +7247a2c97f71,2 +72595230840c,3 +72606afaf3da,0 +7269a1d84a57,0 +726dff37edc0,0 +7270367410a1,4 +72a867980067,0 +72c31aa48e2c,0 +72d98188648f,4 +731b19a460ad,2 +7335a2d43ada,1 +7347bd23ba80,0 +7347f5133a6a,1 +7350c50667c5,2 +7356dd08b0ae,2 +735836b1ffa6,0 +737ef6226677,0 +73881f55a3ec,1 +73a07e2ea23e,0 +73ba798fee25,0 +73d40ce06a67,0 +73e83a07a16d,2 +73ef3c3dcbe4,0 +74211a2b6dcf,0 +7427dedafccf,1 +7435e9a3e36e,0 +74418f620068,2 +7455e2b5fc57,2 +74898f372d2b,0 +74eee788edee,3 +750e0168399d,0 +75238d945315,0 +7525ebb3434d,3 +7526c59c36d3,0 +7526cf435753,0 +75369248dba0,0 +753b14c27c83,4 +7550966ef777,2 +7569ac24762e,0 +756b0d6488bb,1 +757572337fd0,2 +757e39293591,0 +75a071608ea6,0 +75a4343b12f9,0 +75a7bc945b7d,2 +75c180e04f65,0 +75ed83dbccce,0 +76095c338728,0 +760b6f4c6d82,2 +762d6e5d5068,3 +7635921c5efb,0 +763ad1236efe,0 +76516f828d88,0 +7663aba8d762,2 +767d777ee889,0 +76b950c6ed5e,0 +76bc31e0d3be,0 +76be29bb30b2,1 +76c0c7e1b6cb,2 +76cab26493f1,0 +76cb010f7aa0,0 +76cfe8967f7d,2 +76df141d966b,0 +76e589911303,1 +76e5b50f95a7,0 +76e6a9238570,2 +76f3473df8a6,0 +76fe19ff64fb,2 +772af553b8b7,3 +7743f4e04a6d,2 +77543f66a84a,2 +77a1f1398fdb,0 +77a9538b8362,1 +77ab222bf85c,0 +77acc2cafee1,0 +77b7b71ebcc3,0 +77baa08a1345,2 +77e15f213b04,0 +77e7c7a160c8,2 +77f69c7ff324,2 +780be525036d,0 +780f9c237c56,0 +780f9daaa24b,0 +7828dd083cdc,0 +7831ce1d895e,0 +784d6d302f98,0 +785777558f05,4 +7877be80901c,2 +788ddb0b70b7,3 +78937523f7a8,0 +789434d095d1,4 +789c60cba801,0 +789f0ec1eab8,0 +78a577c3e0bf,2 +78b3f819dcc5,4 +78bcdffb8785,1 +78d53c82a23e,2 +79059d0592c4,2 +79540be95177,2 +799214e8b07c,0 +799cb4c816ae,2 +79ade634c633,0 +79be2ff796bf,2 +79cbae28d8b2,0 +79ce83c07588,1 +79d44db3da2d,4 +7a06ea127e02,0 +7a0cff4c24b2,2 +7a12f49e29df,0 +7a238a1d3cf3,4 +7a39c91416e2,0 +7a3ea1779b13,1 +7a42443ed106,0 +7a46cfa69bae,0 +7a6495a39d87,0 +7a6e384a0846,3 +7a77c3eb468c,0 +7a9f45fdf29b,0 +7aabd768abff,0 +7ad0c4975890,0 +7adfb8fc0621,0 +7ae69d22075a,1 +7af4d8704032,0 +7b20210d9120,1 +7b211d8bd249,4 +7b29e3783919,3 +7b49041cbf17,3 +7b691d9ced34,0 +7b87b0015282,0 +7b8c78b41c0d,2 +7b9d519cbd66,0 +7ba6b23c4b46,0 +7bc00e58d419,0 +7bc2e0fa3f72,2 +7bc4dd99eee5,4 +7bda86d95c5b,2 +7be1b9aa78aa,0 +7bf981d9c7fe,1 +7c2e852171c0,0 +7c2f820a6425,2 +7c3747c0b2c3,0 +7c52fe73e748,2 +7c629b491d1a,4 +7c6594b50690,0 +7c90ab025331,4 +7cc4b7aabe04,4 +7ccb267fd394,1 +7ccf9d25dc48,0 +7ce671f952be,0 +7d0a871c45db,0 +7d11dbc1e738,0 +7d1b40fdbd86,2 +7d1da90d3ca9,2 +7d261f986bef,2 +7d37a2939f12,2 +7d3835e4e63a,3 +7d48f8cdfb69,0 +7d626a7ffe76,4 +7d8f67cadc29,2 +7d94a000c2d0,0 +7da558d92100,0 +7ddcfcea7369,0 +7dee6bf8b9c1,2 +7e0598cc88a0,4 +7e160c8b611e,3 +7e4019ac7f5a,4 +7e5a76c4e103,0 +7e6e90a93aa5,2 +7e70344b0c25,0 +7e77b61e1639,0 +7e9081e95bf6,0 +7e9458de5707,2 +7e980424868e,0 +7ea756985353,1 +7ec0e61a7e29,0 +7ec1ffe8220b,2 +7ed4128b2a4e,0 +7ee6de71c140,0 +7eeb191ad06b,0 +7eee3d1f1268,0 +7ef5ff774a48,1 +7efc91af4ae6,4 +7f0ffeb0a333,0 +7f1f3269f546,0 +7f2123bc89a3,0 +7f2cce721e19,0 +7f39c36469b5,0 +7f43becd3e83,0 +7f60f2a083d3,1 +7f6690fa390a,0 +7f6ce40f306b,2 +7f84284598f5,2 +7fc3a8bb40de,0 +7fdb177b8f7d,0 +7fe7309d0b4f,0 +8000a6b97a84,2 +8010c931321f,0 +803120c5d287,2 +807135cbc438,2 +80964d8e0863,4 +80a02014b418,1 +80b5697f2a5e,0 +80b5a9519aec,2 +80c67efc8101,0 +80ca40196225,3 +80d24897669f,1 +80dbeb0fdc75,0 +80e6e425f966,0 +80e7cc0a0649,3 +80ed04a84a16,0 +80f6b30ece8c,0 +80feb1f7ca5e,2 +810d3779abd9,3 +810ed108f5b7,0 +8114d6a160df,1 +812d5adafaf2,2 +81371b0c01ad,0 +81704925f759,0 +8185ce1cdcef,0 +81914ceb4e74,0 +8191ae701985,0 +81b0a2651c45,2 +81bc03e2ff2b,2 +81d79d53ed7b,0 +8201cab8322d,3 +82088c6734e6,0 +821789e9053f,1 +8241e43408a8,0 +8273fdb4405e,1 +82910bba4753,2 +82ac8463fadd,1 +82bb8a01935f,4 +82d364726a58,0 +82deb07a6618,2 +82e5bc01f8a4,0 +82f2784ead76,2 +83038ca49b6d,0 +830e297965a1,0 +8329e80c10ac,0 +8344c783da65,0 +83517eaeccb9,0 +835b9f6e12ba,0 +837acf120946,0 +838b3e4d0bb4,0 +838c87c63422,4 +83a63c4a3e4a,0 +83b61051737f,2 +83d6e40c869f,2 +83d81ba5959c,0 +83df53d58f28,0 +83e529e95b0e,1 +83fda7c0500b,0 +840527bc6628,2 +840a06a9c690,0 +8421107255ae,2 +842d697884f6,2 +8433a032b96c,0 +8446826853d0,2 +8448af27ba07,0 +847b04287c9c,0 +848e66b9e199,0 +849a91e9ab28,1 +84a72e15b23c,1 +84b472c49cfa,0 +84b4da14bc23,0 +84b79243e430,0 +84b88e8d3bca,0 +84c663f39632,4 +84e8c62165b5,2 +851e40a21f81,0 +8543a801dce0,2 +855f0a5442b6,2 +8564b7aa3c1a,0 +857002ed4e49,2 +857230f64a2e,4 +8596a24a14bd,4 +85cbb84ac8e0,4 +85cc6d636898,2 +85f99e7e4052,0 +85fce24084da,2 +86410aa13b3e,0 +8650d32f4a9e,0 +8660e1864665,0 +86722fcd802c,2 +8676427e4625,1 +8688f3d0fcaf,3 +8693ab1fd2be,0 +869bbd3170cc,2 +86b3a7929bec,2 +86baef833ae0,2 +86d58f850a0c,0 +86d6808f0609,3 +86e7f98f73f1,2 +86fbac86ed3e,2 +870f433e8f37,0 +870fbe6eaa68,0 +8714d17bb6da,1 +87295c5fa1cc,0 +873dcc0b468f,4 +873fe0404d6e,2 +874f8c1929f6,0 +875a2fc5fe23,4 +875d2ffcbf47,0 +876deb29f000,0 +876e1dd12d38,2 +87774aafe068,4 +8785b71238d8,4 +878a3a097436,2 +878e356c8fc9,0 +879744b9dc65,2 +87a9f4d20f07,0 +87b1938994b5,2 +87b671c6d4c5,0 +87d46b1cc4e9,0 +880edb2cdb69,0 +881ec6186e68,0 +882a71de424e,2 +883c6a184f16,0 +883ddb650967,0 +8846b09384a4,0 +885fa5fc5da8,0 +8860c7b11530,2 +8871e6a26596,2 +887c26fc0e1f,4 +88e4399d207c,0 +88e5051f65bd,0 +8906c9ed54a2,0 +891329021e12,0 +891392c9683c,2 +894a37fc3738,0 +8958a4d17b7e,3 +895fe2bfc5b6,0 +896ad584a841,0 +898f0bc8acfa,0 +89b044cbaf85,2 +89b725411cee,2 +89d2a7403a06,2 +89d9c071a56f,1 +89ed6a0dd53f,1 +89ee1fa16f90,2 +89fc080f7e83,2 +8a01daa423f7,1 +8a234d68b27e,3 +8a25a080f28f,1 +8a3eb86ae4bd,0 +8a482c024fc2,0 +8a67f1efa315,2 +8a759f94613a,2 +8a7765e785fb,0 +8a81f62320d6,0 +8a87dd2a784e,0 +8a8a251770cd,0 +8a9bef2fbd4e,3 +8aa3c4681542,0 +8aab201c0691,2 +8ab3faa3701f,0 +8ab8d9b3ce3f,2 +8ac0c44bbf24,4 +8acdf12f412a,0 +8acffaf1f4b9,2 +8ae049175db6,4 +8af50c9d0a86,0 +8af6a4e5396f,4 +8b079e79035f,0 +8b26d3cd61e8,2 +8b568d47a1fd,0 +8b58f9a338e8,0 +8b76c3c5cb3e,3 +8b8fe3fc8950,0 +8bad12d70368,4 +8bbd7835e9aa,1 +8bc6716c2238,1 +8bdb891661a8,2 +8be6629a6039,0 +8bed09514c3b,4 +8bf05909e1e1,0 +8bf2d925dc0c,0 +8c0d05233238,3 +8c29a76fa08c,0 +8c2f0f04e1ed,1 +8c4ceddeb1c6,0 +8c7c26c52a6c,4 +8c84e96d9b01,0 +8c87bd748996,2 +8cb6b0efaaac,2 +8cb6b5b2f19c,2 +8ceff4c4c860,0 +8d13c46e7d75,0 +8d3d67661620,2 +8d4d14a4ab07,0 +8d4ff745a409,0 +8d62ba9cb22a,2 +8d7bb0649a02,2 +8d8aca52c07b,4 +8d9516ea3587,0 +8dafa62f9322,0 +8db2ce991101,4 +8dba09a4e5ed,2 +8dc22e65c06f,1 +8dfa629ca74e,2 +8dfff47b06b7,2 +8e20b8fac7c3,2 +8e2a3978c244,0 +8e3b79e1f1f7,2 +8e4a354e3da2,0 +8e63fc4ab532,2 +8e67f2d7e0ee,0 +8e6df9eedcd8,0 +8e76054f0831,0 +8e7981855125,0 +8ead17dfb6a6,0 +8ead8f37423c,0 +8eb3337a54e9,2 +8ed586c43023,0 +8ee50c26fc13,0 +8eeac97f02f0,4 +8ef2eb8c51c4,1 +8f06ca4642bd,0 +8f10e41a2f02,0 +8f14bca04b47,0 +8f1e7433a95d,2 +8f2996b8d855,1 +8f318a978844,4 +8f9819752ca0,0 +8fbb2ca39911,0 +8fc09fecd22f,1 +8fd7ad26e691,4 +8ff2733f6aef,2 +8ff863f8874f,1 +8ffa608170d3,0 +901a3552fe26,0 +902dc5a91a3f,0 +9033f1493da1,2 +9039cbfcbb2f,0 +9041eb43456e,2 +904b03ad5594,0 +905cc86bf100,4 +906d02fb822d,0 +907aaff827e5,2 +9095d43fb132,0 +90960ddf4d14,0 +90a786abe58e,0 +90a9a41eec6d,0 +90b8bf342032,3 +90bde2ff8953,0 +90c982cc2d96,1 +910bfd38e2f5,3 +9122b31414d3,0 +912fbe06407e,0 +913490237ad4,3 +913b1890ed1e,2 +916915f01e17,0 +916ec976ff30,3 +917f76f360b6,2 +91a88d3b0358,2 +91b6ebaa3678,3 +91b7a4179ecf,0 +91cbe1c775ef,2 +91cf56d3d1af,3 +91e2c2890c9f,2 +91e82fe4e434,0 +91e8af9ceee9,2 +91f3c4c1e72b,0 +921433215353,2 +922586d86cd8,0 +9232dc06cfdc,0 +92587e494d51,0 +9274e75dc4d5,0 +9287e57326d0,0 +92889b863ae6,0 +929cd3867815,2 +92b0d27fc0ec,2 +92d8a7c8e718,2 +92d9e9f08709,1 +92e3d608fd3c,0 +92f313287a29,2 +92fcf50b3562,0 +930fee99213a,0 +932181b93b2f,2 +934104859e68,0 +93421787f520,0 +936299166bea,0 +937bc1b924b1,0 +93802d1e3c41,0 +93a1b984de84,0 +93be637084a2,1 +93d6d20a5ee3,0 +94076a9fb9b5,0 +94111ed3d276,1 +94145d1f42cf,0 +941d874c8afb,0 +942f544c4e15,0 +94372043d55b,1 +944a233fbf8e,1 +946545473380,0 +949710bead24,0 +94a67ec0714f,2 +94b1d8ad35ec,1 +94b9ccc73bb9,0 +94dcb491143f,2 +94ef1d14597f,4 +94f9ecf4b8d2,0 +9519a590985d,0 +956765d5f46d,0 +9568eb7e9c08,2 +958c1fa044ba,0 +959bb2d01091,0 +959dc602febc,2 +95a4cc805c7b,1 +95e732e043a1,4 +962c0fc85e13,0 +962cf85e4f6d,2 +966c07831334,0 +96793edb1003,0 +9688c6ef5dc5,0 +969f92a390db,0 +96a9706b8534,1 +96b5474ae604,0 +96c3e3db68bc,2 +96c699221180,0 +96ce10a1dbd7,0 +96d48b073f18,2 +96ea316ed0ab,0 +971bb98ab935,0 +973b0facfa9b,0 +974c7d7b9c64,0 +975252e325e3,2 +976082127e2a,0 +977e1ca77653,1 +9782c0489eca,1 +9785805af1b8,2 +97a235367f9d,0 +97a5ad7548b7,2 +97bf61736b86,2 +97c6cb55866d,0 +97d02a9b94f7,0 +97da093947e8,4 +97f290d31813,0 +97fdee242fea,0 +98104c8c67eb,2 +98277aeb96a7,0 +9837048b85dc,2 +983c98354e9c,0 +98441214557f,0 +9858cc2ae073,0 +9859e2a6cc24,4 +9870ce41cac4,0 +9878db94d9f3,3 +98d41bce73a8,0 +98e44127872f,0 +98e8adcf085c,2 +98f48850ebce,2 +98f7136d2e7a,2 +98fbe56dcc2c,1 +9904939ab83d,2 +9910c827e2fe,0 +99132193eaa0,1 +991a0b7a8c87,0 +99240ee00485,0 +992599744a23,0 +992b9a07b25f,0 +996f57c86ba5,3 +996f9bba4ef0,0 +9985375d709f,0 +999115d9386b,2 +999ad827ed35,0 +99c626e58464,0 +99c6a123ed6a,0 +99e8bf998285,2 +99ecdb41d5e7,1 +9a1029536d78,0 +9a159d4674cd,0 +9a28d4e8aef0,2 +9a3109657ac1,1 +9a326446c431,0 +9a3c03a5ad0f,2 +9a496b1e20f9,4 +9a4f370d341b,2 +9a56cfb980ec,0 +9a78c6a7b1c2,2 +9a7bd084395e,2 +9a94e0316ee3,3 +9a9b21215c55,2 +9ab18a4a957f,0 +9ac2e3e9fca5,0 +9ac41b9a809e,0 +9ad92f1c1542,2 +9ae54843c69a,0 +9b093fe95d6b,3 +9b0eb9f41da4,2 +9b32e8ef0ca0,2 +9b418ce42c13,2 +9b4fc15df3c8,0 +9b57e43b44e7,0 +9b70f84400af,0 +9b7b6e4db1d5,2 +9b95d6203406,2 +9ba469af2980,0 +9bafbbd152d2,3 +9bbb6c455913,0 +9bd008aab548,0 +9be0683649ff,0 +9be71d6d7e59,0 +9bf060db8376,3 +9c088d2d1559,2 +9c14ce27cbfc,0 +9c514d2d5b3f,0 +9c52b87d01f1,3 +9c5dd3612f0c,2 +9c6512166557,0 +9c72ed6befa0,4 +9c893e16c055,0 +9cc6b1f9bcbd,4 +9ce46d400cd6,0 +9cedf5c7016b,2 +9cf7c1349673,0 +9d1feed37610,0 +9d62478042b6,0 +9d74428188bb,2 +9d75de31f1b8,0 +9d98a0b585f2,2 +9d9bfefa809c,2 +9da74370835a,2 +9dab2e6ba44b,2 +9de9421f17e3,0 +9df31421cdd2,2 +9e2058917304,0 +9e2a8135f471,0 +9e2ba2b979f1,0 +9e3510963315,4 +9e5737f771c3,0 +9e5ec293267c,2 +9e7a63b2fc6a,0 +9e99ae6ee7af,0 +9eaac43744f5,2 +9eaf735cf01f,1 +9ed666e982cd,1 +9ed6c2b25767,0 +9f1b14dfa14c,0 +9f1efb799b7b,2 +9f285b3e57ed,0 +9f37c98b8187,3 +9f4132bd6ed6,2 +9f436886e056,2 +9f5a8665cf2e,2 +9f8112c710be,0 +9f935fb38440,0 +9fa02dfb5553,0 +9faad91b6578,2 +9fab29e69a6b,4 +9fefe2b44795,3 +a00b4cb250a7,1 +a01024054596,1 +a015ce4f51ad,2 +a01c590c444f,2 +a0267206d51e,2 +a02dfd67a925,0 +a0445785e2f7,0 +a04fb36db784,2 +a06a63d866b2,0 +a06b353e7bed,0 +a06e41bd2634,2 +a06e5ac695ce,0 +a07d571bf7ba,0 +a07d9a5045cb,0 +a07efb1ecfc0,0 +a08a0133754a,0 +a0a0cd8af5a6,2 +a0adbe677508,0 +a0b7ad98df57,0 +a0cd7bffdaa0,4 +a0d04a19cf40,2 +a0e635689259,0 +a0fd94e2ad76,0 +a11bf2edd470,4 +a11c62cb3f86,0 +a125377fb985,2 +a12ca80bb8c7,0 +a14bbd9a583e,3 +a14fcf84bfe1,3 +a150ff5dfe07,2 +a15470303941,2 +a15590a7d774,2 +a15652b22ab8,2 +a1822dd8d05d,0 +a182b5b191de,4 +a1872f9c0cba,0 +a188c60b93fb,0 +a19507501b40,2 +a19ecd0a706e,1 +a1b12fdce6c3,2 +a1b28bcbce00,0 +a1e236fbc863,0 +a1eb88562239,0 +a1edf0e66592,0 +a1faeb4d5f10,0 +a2163f0c2af5,0 +a21b37719f9b,2 +a247961a5cd9,0 +a2696f444ecb,1 +a26f50218b84,0 +a2811f512c1c,0 +a28bfb772f50,1 +a2ad3da4c7d6,2 +a2b97d98f130,0 +a2b995b81692,0 +a2d349f567a6,2 +a2ddabee14e9,4 +a2dff8dbc9f8,0 +a30a143a53a3,0 +a3132c8828e4,0 +a32886cb31ab,1 +a32b5ce3d48a,4 +a3475dc3ac80,2 +a34fc5376669,0 +a3706ce27869,2 +a3802934bad7,2 +a384e688e228,0 +a386ec9aabde,2 +a3957df90a78,2 +a3ad6c2db6f1,1 +a3b2e93d058b,2 +a3bd2e034614,0 +a3d2a0c4cd17,1 +a3fcf42ff56d,4 +a4012932e18d,0 +a419fcb2dfb5,0 +a4359815f152,2 +a44345b27804,0 +a443c4fd489c,1 +a45c30da0c72,0 +a45d77edf8d9,2 +a47432cd41e7,1 +a476fd984005,2 +a47878630dc2,2 +a484bdf85b4c,0 +a49b0b4484ea,2 +a4b8de38eac1,3 +a4d41c495666,2 +a4d4b69f7404,3 +a4ee03ecff60,0 +a505981d1cab,2 +a528be013a04,0 +a53d6d2472a6,0 +a56230242a95,2 +a56729de89e9,2 +a5a2a7003d60,1 +a5bb85afc6e8,0 +a5c9a8c726b2,4 +a61723fc38c2,0 +a627eb8c08c5,0 +a62e995f167c,0 +a62ea0043aa7,2 +a6356a3c5d11,0 +a64273801bde,2 +a646c084928c,0 +a654b25124c3,0 +a664d2055886,2 +a66c3165876f,2 +a673193cd5a9,0 +a6731dd737af,0 +a688f20f8895,2 +a6b6d27c1b32,0 +a6c9e96a10d7,2 +a6d45de20e4d,4 +a70d0f12a641,0 +a721efb1e049,2 +a73c3d516c59,0 +a73d012c4c38,0 +a75bab2463d4,1 +a76132e79688,0 +a763661f98a5,3 +a7673ac44509,0 +a76b69e443ce,4 +a77dbec966d4,1 +a77eb914b383,0 +a790a3b36390,2 +a7b03e58a6e1,0 +a7b0d0c51731,2 +a7b7dc8788b9,2 +a7c10ca6c117,0 +a7ec056502e7,1 +a804cef3e51f,2 +a80dab8eddf4,3 +a81b06f50612,4 +a821b6ecef33,0 +a8263d248523,0 +a82a12ad3fb1,0 +a8582e346df0,1 +a85cda5f725d,0 +a86128b601a7,0 +a8652b2de23f,2 +a86c6283fd78,2 +a879c3569552,2 +a87f53bc984a,2 +a88365134c3c,0 +a8854768549f,0 +a88f68b0b114,2 +a8a6588c8eb7,0 +a8aed92940fb,0 +a8b3c0961d42,0 +a8b637abd96b,0 +a8c54e2a4b79,1 +a8c950a99107,1 +a8c9fcdbc0be,0 +a8dea22ef903,0 +a8e08e7fe016,2 +a8e88d4891c4,3 +a8eb35b3bcd2,2 +a93f1ea3ff4a,2 +a94da3d3b5c0,0 +a95858e052d6,1 +a95d9d61ddd4,0 +a963ac561580,0 +a96ff96bbae5,0 +a987aa7aac37,0 +a9a28c37c8c4,2 +a9a3225cf4b5,0 +a9b3177f01c0,0 +a9bc2f892cb3,0 +a9c7b83caf81,2 +a9d0c900b6a9,2 +a9dc80cba9a4,0 +a9e3d186cd1b,0 +a9e984b57556,3 +aa0afc41ed19,2 +aa10a4b2e709,0 +aa31bc6b8f4d,2 +aa4407aab872,0 +aa5ce75edcf5,2 +aa60813e1a8d,0 +aa6242f9e08c,0 +aa6673241154,4 +aa841de1ee82,2 +aa8a1e814811,0 +aa94cc4bfd84,0 +aa9b8f05f4bf,2 +aa9cfe639ef1,2 +aaaadb174012,0 +aabd867043cf,0 +aad0c0ee9268,2 +aae8f9f3ef8c,3 +aafb0c944f14,0 +aafe980edd0c,0 +ab03d50bba2f,0 +ab1c20a94f3f,4 +ab32db41c409,0 +ab3c505b624f,0 +ab50123abadb,2 +ab653b8554c0,0 +ab686895533e,0 +ab724603ee93,0 +ab78a66dee6a,0 +ab7991df166b,0 +ab88081e5654,0 +aba3063c5413,3 +ababe19ed448,1 +abbb8791785e,0 +abdb365cacbc,1 +abe940882578,0 +abf09c44d5f4,2 +abf0f56c6f12,2 +ac0a48ccbf70,0 +ac1667fac512,0 +ac17cc18a994,0 +ac2c814949f9,2 +ac5b5dddf91b,2 +ac720570dd0f,2 +ac81fc200162,0 +aca88f566228,2 +acc9f29538c4,2 +ace2281f00c4,0 +ace287a5c991,0 +acf976efd7ce,0 +ad029ba7fa8b,0 +ad12cde115ab,0 +ad1aa75d5630,0 +ad1f7445b1a8,1 +ad20080452de,0 +ad2f0b9d059c,3 +ad312ca98202,0 +ad3fc5076852,1 +ad570b850a4f,2 +ad6b07d5c338,0 +ad93d88c87ea,0 +ad944bd56bb6,0 +adb56cecafaf,3 +add1d681d712,2 +addf66a50f42,0 +ae1344610ebe,2 +ae20112e7a1e,0 +ae2c3f6312ef,0 +ae2e888905ba,0 +ae49cc60f251,0 +ae57c8630249,0 +ae58ccb5905e,0 +ae5d31979f19,0 +ae61e19fb766,0 +ae8424cdb029,2 +ae8472f8d310,1 +ae94ce412de9,0 +ae975c43bd8b,0 +aea59ebec445,3 +aeab0a63bcaf,0 +aeb6f4fd2eed,0 +aebe87a423c8,0 +aec51513cf45,0 +aeccef0bdc26,0 +aed4e743c230,2 +aeed1f251ceb,4 +aef9016557ca,2 +af133a85ea0c,1 +af345c68e836,0 +af3b0115aad1,3 +af5a0bc4e1fa,0 +af6166d57f13,0 +af6a1508cd95,0 +af7a36454670,0 +af828dab3ffc,2 +af831c158744,2 +af87d48ffe01,0 +af8aa32beee4,2 +afc345cc9145,0 +afc744fad65e,0 +b019a49787c1,3 +b033ab4fb723,2 +b05922e7abd3,0 +b0619ca93a5f,0 +b06dabab4f09,2 +b07bc463b718,1 +b085caa513a8,0 +b086c7cd3868,0 +b09101adb478,0 +b0acd3593310,0 +b0b3b16fc305,0 +b0c9a492e068,0 +b0cc9f8d06e4,2 +b0d35981708b,2 +b0d6417bad3e,2 +b0eeae01b8ab,2 +b0f0fa677d5f,0 +b0f8613305a3,0 +b10fca20c885,0 +b1197f2cc9b3,1 +b11dcdcbc8c8,0 +b13d72ceea26,2 +b16dd4483ca5,0 +b17f0b81dab3,1 +b187b3c93afb,2 +b191ba0a2b12,3 +b1b3e7d0a5f3,4 +b1c6f0997e27,0 +b1f4122fd36a,2 +b200c23b299b,0 +b21abe5d9722,0 +b22354b5f94b,1 +b22cc1bf0b8a,0 +b2748ac28fc1,2 +b294927b14b0,0 +b2aaa81cc8f0,2 +b2b79b37d314,0 +b2b7ccd34cbd,0 +b2ffa3e18559,3 +b310bd564329,3 +b351ae99413a,0 +b35cad8fe2d7,0 +b376def52ccc,2 +b37aae3c8fe1,4 +b3819a805dca,4 +b3a994760537,0 +b3c0c3330278,2 +b3d12069e1c5,2 +b3d135bd3bb5,3 +b3f31c371e59,0 +b402b18d99a5,2 +b402daa0864c,2 +b43440c6ebe4,0 +b460ca9fa26f,0 +b468ebf5cb11,2 +b46b09a45f39,0 +b498b84d383f,2 +b49b2fac2514,4 +b4b04d81acbb,0 +b4e15102cd7a,0 +b4f41b5bf0ef,1 +b50b30aa6e6c,1 +b5204c0decc7,0 +b532dedd928c,0 +b549af91bd30,0 +b553e7909535,0 +b55d2ddb3e75,4 +b56340f472d2,1 +b574d229ec4c,2 +b576c5269ad1,1 +b5834ee64541,3 +b598bc9753c2,0 +b5a3ca5c0a80,0 +b5b913358b32,0 +b5bf7b84fc66,0 +b5c80d0ed0ff,2 +b5e6ae31493c,0 +b60dbf9f0744,2 +b6304c545f95,2 +b640e3bdff75,1 +b64e1eef3d63,0 +b65ff67743b2,2 +b665041e1633,2 +b66f23ffa730,0 +b67ae80f7eba,0 +b69c224edd6e,0 +b6a0e348a01e,1 +b6bf847fbcb2,0 +b6bfe9db60e5,3 +b6d9974443ce,0 +b6fd109b1bc9,0 +b70cb31b9abb,4 +b70e7c26f51e,0 +b71428739d4e,1 +b7278b4f2448,1 +b72a86d61959,0 +b72f59b85f7c,0 +b73d0bcd3d33,0 +b746a6681ba9,2 +b74de20d73de,0 +b759cbef90c5,0 +b762c29cf2f3,2 +b77b88926843,0 +b77b8a1f09f1,4 +b7983cb3f270,0 +b7a1bb106051,0 +b7aca95b97b9,0 +b7bd4a6627b6,0 +b7ce561a7328,0 +b7e0f95353f2,3 +b7f0bc7d399e,0 +b8297a2291f5,0 +b82d5f1f1145,2 +b82dfa63a75f,0 +b835b6e31a59,0 +b83a6eca125f,2 +b842b43cb7fb,0 +b86fb2d5be1a,0 +b87f9c59748b,4 +b89938407ee6,2 +b8ac328009e0,2 +b8dab47a260e,0 +b8e20c076b03,0 +b8e9a8f4617d,0 +b8ebedd382de,1 +b8f1b30877db,2 +b8fb9f55cd6d,2 +b90bc89ce8d8,4 +b9127e38d9b9,2 +b91ef82e723a,2 +b927a9238434,2 +b92eacd1392a,0 +b94c58d063bf,1 +b9519abce0c1,0 +b95d4dd8e5e2,2 +b960142a8de7,3 +b963a11638f2,0 +b96b518596b3,4 +b98f77098b9d,2 +b99794a0beed,2 +b99afe7137fb,4 +b99c825b93c5,2 +b9b6ee2b9453,2 +b9b99dad668d,1 +b9bc81fcb075,0 +b9c7c5182075,0 +b9d0b83d70c3,0 +b9fe7da14a32,0 +ba0107fb1bfd,0 +ba08cee68c71,4 +ba25f947f4ec,2 +ba2624883599,2 +ba2ea9182090,0 +ba4d2c4b3039,4 +ba4e62c11cc0,0 +ba735b286d62,4 +baaca2f7e1f0,0 +bab776139279,0 +bac1744955c2,0 +bacfa2b8e706,0 +bacfb1029f6b,1 +badb5ff8d3c7,0 +bb08949dd70a,0 +bb11db08584a,1 +bb2f89488ecd,0 +bb45257258cc,1 +bb5083fae98f,3 +bb733062f494,2 +bb752b179751,0 +bb783d8e496f,1 +bb7e0a2544cd,3 +bb85097857fa,0 +bb9a3d835a94,1 +bba38f2294a3,4 +bc23f74e14dd,2 +bc34ed91c9bc,4 +bc34f52c37c7,0 +bc73ce76ec43,1 +bc7bf19b84e3,0 +bc8c6a778cde,0 +bc92a61a1f9c,0 +bca2bdc15fc5,2 +bcb0498ed2c1,0 +bcc762618e7d,2 +bcd503c726ba,4 +bcdc8db5423b,2 +bd06028eb7dd,0 +bd269a1f0e4d,1 +bd34a0639575,0 +bd375ba756b1,0 +bd500a73beae,0 +bd5013540a13,4 +bd9904495ccd,4 +bda7ff3b1562,2 +bda8c973b09d,2 +bda91b76095b,0 +bdb98063fe84,2 +bdc6c60e9133,0 +bde1063a5dd7,0 +bdf47b9f10c4,0 +bdff5d8bddf8,4 +be161517d3ac,2 +be197b663520,0 +be21d8b60e2a,2 +be3a7d9e981e,0 +be521870a0ea,0 +be68322c7223,2 +be6cbf6e5b10,0 +be7bc89f5fec,2 +be7f791a7877,0 +be8697eb2078,0 +beb00fa6e7c9,0 +beb2ad14fd2d,0 +bebb3f167654,1 +bebfbd907cac,0 +bec0acd539b2,3 +bed8296c8dfe,0 +beeca5f14618,0 +bf18ff30a8f6,1 +bf1b7e21e774,2 +bf6cbccacf39,0 +bf7047dc683c,2 +bf7221a016b5,0 +bf7b4eae7ad0,0 +bf8092e4001d,3 +bf811911acf9,0 +bf87aedf2489,0 +bf9cba745efc,2 +bfa30ebf63a8,0 +bfaa0080ab61,2 +bfb578c0e8d8,0 +bfd5c0e55420,2 +bfda2fd0533a,2 +bfdee9be1f1d,4 +bfe467b7e997,2 +bfefa7344e7d,4 +bff51afc76d4,0 +bffca6eeb2bf,0 +c013e869acce,0 +c01eae4b4939,4 +c0202976c670,2 +c027e5482e8c,1 +c05b7b4c22fe,2 +c06024f05a16,0 +c096131ad065,0 +c0968d41eb93,1 +c0a0828e01b4,3 +c0a117de7d0a,0 +c0e15e8e2b46,1 +c0e509786f7f,4 +c0f15fe3b4b7,1 +c102db7634d8,1 +c12e9ca420a5,0 +c1437a7a52c9,0 +c1799a6f5c65,4 +c1819db0aece,0 +c1896142a20a,4 +c18a006f7f1d,0 +c1c8550508e0,2 +c1e6fa1ad314,1 +c1ebe785503a,1 +c21eb81de9fc,0 +c23ff6dcf15e,0 +c24bcf7a1bc4,0 +c252da9b41d8,2 +c25e02b39c01,0 +c261b1aaa828,2 +c26f98f58350,0 +c280730cc211,2 +c2a58b2cfd0b,0 +c2d2b4f536da,2 +c2f3281cf528,0 +c31651ea04c6,3 +c334f8688b77,0 +c365c598ad4e,0 +c373b73a80c8,0 +c3789c1dab96,0 +c38dec54a9f7,0 +c3a82acb7d7a,3 +c3aa424eff9a,0 +c3acf47700ea,2 +c3b15bf9b4bc,0 +c3c8fdda50c0,0 +c3cd0200df79,3 +c3d12a23f451,4 +c3e02d4a1798,2 +c406325360b1,2 +c40976189f22,1 +c446985355f1,0 +c48ae5da188e,2 +c4a8f2fcf6e8,1 +c4aef0d88d1b,0 +c4e8b1ec8893,2 +c52bb7343387,2 +c5431b81cbc9,2 +c546670d9684,0 +c561bcd519e9,2 +c56293f53191,0 +c568e5245ea5,2 +c56e65f74187,1 +c57c164bca05,0 +c58971bcebb2,0 +c58e5c0c5b33,0 +c597ef460944,0 +c5a0e84e955d,0 +c5a6f432a1ec,0 +c5a9ebef1517,3 +c5ad60521f8c,2 +c5b58cc992af,0 +c5ba9e455d5e,3 +c5bec7f1e5f3,0 +c5e238aa18be,4 +c613db1cab27,2 +c6229222bf22,0 +c62585bd68fb,4 +c62cef02efa2,0 +c639d837f5e4,0 +c64c0966b4cf,0 +c67117c6ab3b,3 +c68dfa021d62,2 +c6916bc42016,0 +c6a145742708,4 +c6a2975228af,2 +c6a8f8f998a2,0 +c6c2bad91f23,2 +c6d4e4a3bd4c,0 +c6e1e9fbf39b,2 +c6f5b5b5be41,0 +c704bd669f36,0 +c70d09370109,2 +c739ff9580d3,1 +c73c5f6ef664,2 +c755a0c4edcc,0 +c76664770c07,3 +c7b622ec8104,1 +c7c0470bcf87,2 +c7c3d363bc86,0 +c7d0deb71576,0 +c7e827fc7f41,2 +c80b0f27541a,0 +c80f79579fed,2 +c81c6911f5e0,0 +c85b79d70079,0 +c87493ed320c,2 +c8823cdaf7fa,2 +c8905b8d5cf1,2 +c8a3eb9a5b52,2 +c8d2d32f7f29,4 +c8fc0df22999,1 +c90c6b94cf40,0 +c947bb6cf9f6,0 +c9485c38fdd5,1 +c94f37085d0f,0 +c96f743915b5,1 +c97472ef2c66,0 +c98f623d08d1,0 +c9c563864ab1,0 +c9d42d7534e0,2 +c9e697117f3f,0 +c9ea9d5eab65,3 +c9f0dc2c8b43,2 +ca05f7e7801b,0 +ca0f1a17c8e5,2 +ca1036496659,1 +ca25745942b0,1 +ca2b54b95ade,0 +ca30a97e9d13,1 +ca360bec5851,2 +ca63fe4f4b52,1 +ca6842bfcbc9,1 +ca7140ecf389,1 +ca7570c5925c,2 +ca7f5caddf96,2 +ca891d37a43c,2 +ca9c912ebad7,2 +cab3dfa7962d,1 +cac40227d3b2,2 +cac80797770f,2 +cad5b1a82e60,0 +cadde4030858,0 +cae33655ca00,0 +cae51154e1ce,1 +caec68f11c86,2 +cb02bb47fdc5,0 +cb0cc98d7e35,0 +cb2201c226d6,0 +cb28adab4e8a,0 +cb2f3c5d71a7,1 +cb39761f0712,0 +cb547e723a16,4 +cb602182cde3,2 +cb68fce07789,0 +cb75210abebe,2 +cbc23af521f3,0 +cbc2e57447c2,2 +cbd0870aa933,4 +cbe633765ea7,0 +cbf0394039f8,2 +cc12453ea915,1 +cc1eebed9276,2 +cc3d2e961768,4 +cc671a73e1cb,0 +cc839823755b,2 +cc9270f06b65,1 +cc964bf04dbc,0 +cca626a0e19a,2 +ccd34029493d,2 +ccd6dcb2f568,0 +ccea49708830,0 +cd01672507c9,0 +cd01f4f83336,0 +cd1c98ec48b1,0 +cd29c88c9e36,2 +cd314653a4d8,0 +cd3fd04d72f5,2 +cd45bfa07d41,1 +cd48cfab4e44,0 +cd4e7f9fa1a9,2 +cd54d022e37d,4 +cd563556cb57,0 +cd5714db652d,1 +cd66754e1b3b,0 +cd8da43e3069,0 +cd93a472e5cd,4 +cd941e5bc659,0 +cd972e5639e0,4 +cd9e2190c73f,2 +ce207b69ff37,3 +ce6f33a81ad5,0 +ce754234d760,0 +ce887b196c23,2 +ce8d2efd9d4f,0 +ceaa5803d780,2 +ceb32a193eff,0 +ceb601fe8dba,2 +cec299c2a2d5,0 +cf0575534cec,1 +cf0824f53dd9,2 +cf1b9d26d38d,4 +cf603a9ef2d5,1 +cf6551521a35,0 +cf8ae5501bd6,0 +cf8f1bc7a215,0 +cfb17a7cc8d4,0 +cfd1bd0fcbb4,1 +cfdbaef73a8b,0 +cfed7c1172ec,0 +cff262ed8f4c,0 +cffc50047828,0 +d0079cc188e9,3 +d02b79fc3200,0 +d035c2bd9104,3 +d06ccd0cf4b8,1 +d0926ed2c8e5,0 +d0b132d2c7ec,4 +d0d59ed675b5,1 +d0ffa0425ef1,3 +d10d315f123f,2 +d10ef306996b,4 +d141728fa392,2 +d144144a2f3f,2 +d15ca3469b87,2 +d160ebef4117,0 +d16398c971e9,3 +d16e39b9d6f0,0 +d16e59a2b33a,0 +d18aea8238a0,2 +d18b1d8ac4de,2 +d18e5b68f6d2,2 +d18f6431ebce,0 +d1a24527a15d,4 +d1a60c3b9fe5,0 +d1afdb8cf70d,0 +d1b279cc02ae,0 +d1ca85af57c9,0 +d1cad012a254,1 +d1cf31577a59,0 +d1f1ea894da1,2 +d1f7ea924a01,0 +d1fa0f744620,0 +d1fb4efb117c,2 +d25b8a8ad3c4,2 +d264396d8d1a,2 +d26bb2ed6e71,0 +d26bc6e1230d,0 +d271d3a2b552,4 +d27ac9e54901,0 +d28bd830c171,2 +d2901144070c,4 +d29096bd94aa,2 +d29b37d110f3,0 +d2afca74cbc3,0 +d2c2f02bb313,4 +d2c5fb82fe5f,0 +d2c6b99ef62c,2 +d2cd47ed2c1d,0 +d2d523e9f669,0 +d2dc86021c67,0 +d2fb715b0c41,0 +d2ffe9287dc7,3 +d30d079e6f9a,0 +d332d7b8a26e,0 +d364423ec6f9,2 +d38cf0f4a9af,0 +d39752cb6e57,0 +d3be5346684b,2 +d3d578fe433f,2 +d3de0d313d61,1 +d3dfd0a2dee6,0 +d3e56584a481,0 +d3e884109b45,3 +d41b33fcb94f,2 +d436c06f0490,0 +d4583e9525dc,0 +d473f6fafba0,2 +d48178e4a49b,4 +d4bc001f7224,0 +d4be0403e6ab,2 +d4f32b9c07df,1 +d516f77d4516,0 +d51b3fe0fa1b,4 +d51c2153d151,0 +d51e5d7484ea,0 +d567a1a22d33,1 +d56d32a1d62d,0 +d57d1be1bbd1,0 +d5a39339ff3d,2 +d5ad3362424c,0 +d5b4705ac2ee,1 +d5c63a8d9e94,0 +d6130f2ec903,0 +d6228d951958,2 +d6283ded6aea,2 +d659d7fd5ccf,4 +d667af5742f6,0 +d66b6f333dc7,1 +d66ccb75ada1,1 +d67374d3fa2a,2 +d6803e467592,0 +d69698f838db,0 +d6b109c82067,0 +d6dbb0820ea5,0 +d6df4fe492ec,0 +d6e26fe51dce,1 +d6f36ec5564a,0 +d6f6bdfd8011,0 +d7078e8b0349,0 +d74ccc796517,0 +d774692d9919,0 +d78b7401096f,0 +d7a01fca9838,0 +d7ab5c040294,0 +d7ac4a0c9760,0 +d7bc00091cfc,0 +d7bc62d60e8c,0 +d7e5fe5245e0,0 +d801c0a66738,1 +d803598dabda,4 +d807c53c1399,0 +d81338217fc5,2 +d81b6ed83bc2,2 +d838d5b9f571,0 +d83c3efade75,2 +d83d0695e215,2 +d8404680bba6,2 +d844a7252f4e,0 +d85588ff2ebd,1 +d85a842d20bd,2 +d85d052900b4,1 +d85ea1220a03,4 +d865997a6280,0 +d866c26d76f0,0 +d868acdccb5b,3 +d871895742b1,0 +d881c04f01fe,0 +d88806d9ece9,2 +d88c4843aec3,0 +d8cdb7d7283a,2 +d8da9de62743,0 +d911dd40c63b,0 +d91273efb92a,2 +d91635f380b4,0 +d9311f7497cb,2 +d93b61dc8f64,0 +d94e10f42861,2 +d952dbfb0fe4,2 +d95959798b57,2 +d968a983d4d2,2 +d97911a32918,0 +d990a3f0cbdb,2 +d994203deb64,2 +d99b0f7dd9b9,0 +d99dd99be001,0 +d9a475dfe59a,2 +d9ad2a0ec026,0 +d9ba044671e1,4 +d9bbdc33db83,2 +d9c9b9786da3,0 +d9d2631f043c,0 +d9e58e4d8689,0 +da0a1043abf7,2 +da0a83f074f3,0 +da1fb35f5df9,1 +da2bdf4236ac,0 +da3a2275c850,0 +da44f80b422b,2 +da6389d129aa,0 +da6bbb76d562,0 +da8900ac7f29,2 +da9262d9f5d9,0 +da949aa67a4f,0 +da9574d35b82,0 +da9fe02dead3,0 +daad7b617f21,0 +dad71ba27a9b,4 +daeaa5d8cf70,2 +daff5427c9b2,0 +db3cd58aa315,0 +db49cdf1ea64,2 +db4ed1e07aa3,1 +db52626d450c,0 +db6207e62c7b,0 +db690e2d02f8,1 +dbb2c63f6f08,3 +dbd062558b81,1 +dbee04ae6426,2 +dbfd238b3468,3 +dc0eea0b68a7,0 +dc0f6e5b489b,0 +dc3c0d8ee20b,2 +dc6fa1b38b83,2 +dcc6c0ad5cad,0 +dccdf750c962,0 +dce73d90c00c,0 +dcf109df1a2b,0 +dd02d60bef14,0 +dd110d2b8c21,2 +dd19428c3d29,1 +dd285d9e97fe,0 +dd3176bacfe2,0 +dd3dad6ca78f,3 +dd90c321d7bc,0 +ddb222ff7c1d,0 +dde43aa22ae6,2 +de16416220de,4 +de18071c36e6,0 +de2eb5c8aa83,0 +de38adaae009,0 +de4cdabbce6d,0 +de50dfa745f8,2 +de55ed25e0e8,0 +de57c9e9fa93,0 +de6210f88536,0 +de730033c683,0 +de778495a1cd,2 +dea7538bb91a,0 +dec5595e6154,0 +dee1031a76ae,0 +dee31065f8fe,0 +dee687c6e88a,2 +df0886f1e76b,0 +df3adfd6ba36,2 +df4913ca3712,4 +df4aec4a0eaf,4 +df5ce3ea7820,2 +df6d13d04da1,0 +df8365d6ac33,2 +df841a0440d8,2 +df84e7113003,4 +df9cb3729eb1,0 +dfc7ec7db0e0,0 +dfea19863428,0 +e019b3e0f33d,4 +e01b7bac822b,0 +e0313be77035,0 +e037643244b7,4 +e03a74e7d74f,0 +e03e70bc8bba,2 +e04f3c6619a3,0 +e067b06fd655,0 +e06cccc08c59,0 +e06d3d4733f0,2 +e07045d7c5f7,1 +e0863b353093,2 +e087bd4b88f2,0 +e0b5a982a018,3 +e0d229db881a,0 +e10190a9d52f,2 +e12b67835e03,2 +e12d41e7b221,2 +e12df54e0d1e,0 +e12f9f19d1be,0 +e13412678eff,3 +e135d7ba9a0e,0 +e1418d28d668,2 +e150935f66a6,2 +e160a3b19911,0 +e16af45285e5,0 +e16fc934069f,2 +e17507a4a1f5,2 +e1900014dabf,3 +e19936582c61,3 +e1ab92228e60,0 +e1b8acb1cea1,0 +e1c02f6c3362,0 +e1dc02a3dc2a,0 +e1e490773462,2 +e1fb532f55df,3 +e2161692a0b4,2 +e2265c383348,0 +e229aca862c7,2 +e23add229074,4 +e246cd89e1cc,0 +e251bdf05b85,0 +e25ccfe38e44,1 +e265c870f9b3,2 +e26bcae6c67b,0 +e26d8718ca58,1 +e2856afe62c5,2 +e29e54ff921e,0 +e2a233493b90,1 +e2a47a74e6e1,2 +e2c39ed0c941,0 +e2c3b037413b,0 +e2ec22b3d07e,0 +e30a890600e1,0 +e31c42a8652b,2 +e322acd46152,0 +e32a359be36d,3 +e32dc722eca5,4 +e33766353db2,0 +e34fa07bd64d,2 +e387311a840e,2 +e38f3a65b02b,1 +e39b627cf648,4 +e3a7671f787b,2 +e3ab63dc9a60,4 +e3b47ed5b511,0 +e3cd96cb094c,0 +e3e490babc0c,2 +e3ec668f6fad,4 +e4151feb8443,2 +e4210e7fe587,3 +e42d9a94a66d,0 +e4730ddde408,4 +e47452069ea1,0 +e47770a2e5d1,0 +e499434242cc,2 +e4a44f9158dc,0 +e4ae1ee6aada,0 +e4b0df29b96f,0 +e4c799738a19,0 +e4d3d437b0a8,0 +e4dcca36ceb4,0 +e4e343eaae2a,2 +e4f12411fd85,4 +e50b0174690d,0 +e5197d77ec68,0 +e529c5757d64,0 +e52ed5c29c5e,3 +e540d2e35d15,2 +e55188915f9d,1 +e580676516b0,1 +e582e56e7942,0 +e594c19e2e1d,0 +e599151ca14b,2 +e59c5f345bb0,0 +e5d56f4f359b,2 +e5de79795c1d,0 +e5f332efcbc7,0 +e5f73f2855c0,0 +e60e4edb3ca9,0 +e62490b7d0e9,4 +e632e38fd2d4,0 +e6552b7432b3,0 +e65a2ff90494,2 +e65f94ad9be3,2 +e663c6627a95,2 +e66855a5c583,0 +e66ad813a508,0 +e68746d426b2,0 +e68bdd36e589,0 +e69b48516577,0 +e6a58edc5b42,2 +e6a5e4718873,0 +e6a6acf7fca1,2 +e6f0ce5bf282,2 +e724866f5084,2 +e7291472109b,0 +e740af6ac6ea,4 +e756495c11cb,2 +e7578d8dba72,0 +e76a9cbb2a8c,3 +e77a93c3d9a9,0 +e79e10907295,0 +e7a372a1c3a4,2 +e7a7187066ad,2 +e7b5dd5bab1f,0 +e7d2c2c3b30f,4 +e7defafeb957,2 +e7fc93ac5b6d,2 +e811f39a1243,2 +e81f4a2fbbdc,0 +e821c1b6417a,4 +e82232a3c28b,0 +e83d315d8f98,2 +e85d410d6836,2 +e868c3da340b,2 +e893e86dde94,0 +e8d1c6c07cf2,3 +e8ddfc9709ce,0 +e8e44b3160e3,0 +e907d23cce3d,0 +e9129ce55fd7,2 +e9286ddf6ffe,1 +e933923aab15,0 +e93394175a19,3 +e96099b961b4,2 +e966850247f4,0 +e9678824215d,0 +e96bd80a8a53,1 +e97ecf4355cb,0 +e9ab8413e771,4 +e9ce5bf645ab,0 +e9f3c85a2a02,0 +e9f82b5bbaf4,2 +e9faf0296643,0 +e9ff9352ccb3,1 +ea05c22d92e9,2 +ea15a290eb96,1 +ea1d045f9fea,2 +ea4ce9516144,0 +ea4dcb055139,2 +ea588d1e5d96,2 +ea5c42a78979,0 +ea68b58a6e8f,0 +ea6a53e54d0f,0 +ea7e21bab610,0 +ea9c41e1ced0,0 +ea9e0fb6fb0b,2 +eaa0dfbd5024,4 +eabc7c716255,0 +eabf421f94d0,0 +ead23cc922ed,1 +eadc57064154,4 +eadfc8809ec8,2 +eae70f527755,0 +eae901557a84,2 +eb050765b323,0 +eb175669d789,0 +eb1ad14dd281,2 +eb1d37b71fd1,4 +eb32a815f78c,2 +eb6b1f1c09db,0 +eba3acc42197,1 +ebd96d853918,0 +ebe0175e530c,4 +ebf4b22240f4,0 +ec01f0862669,0 +ec0c9f817b03,0 +ec363f48867b,0 +ec4649213ccf,1 +ec57cc20d776,0 +ec6659926105,0 +ec6f1797a25a,0 +ecad6845f630,0 +ecb4500285ed,0 +ed246ae1ed08,4 +ed2c06fcc573,2 +ed2c52c14493,0 +ed2ef440d22c,0 +ed3a0fc5b546,4 +ed3ce1674761,0 +ed648b9bcd95,0 +ed6704e3b72e,3 +ed6bd9293a89,0 +ed88faaa325a,2 +eda1d75cbcf0,0 +eda29a9d78f3,0 +edceb0657d77,0 +ee02294cc3d9,2 +ee059945b08a,2 +ee1ec90b980f,4 +ee2c2a5f7d0e,2 +ee36ca728641,0 +ee3f5cf52188,0 +ee3fe7809e6a,0 +ee6e39319b39,2 +ee74c3b177e0,2 +ee77763a6afb,0 +ee78ce914066,1 +eeaea2c5ff34,0 +eeb231c3ef1f,1 +eebd1e195952,0 +eed4afc8ec83,1 +eedae6b28f96,0 +ef247f28004f,0 +ef26625121b3,4 +ef4121e9bb67,0 +ef476be214d4,0 +ef48780f5d5f,0 +ef5155990874,0 +ef7a4ed8d5d1,2 +ef7eb85b75fc,0 +ef8109305128,1 +ef81cd8854cb,0 +ef8c39eb9157,0 +ef99c499d665,0 +efff2f1a35f5,2 +f002ce614c59,0 +f0098e9d4aee,4 +f00ce9b9d6f4,0 +f02057c41256,0 +f025f33b2c9b,4 +f0267c42907c,0 +f02956bd7c50,0 +f02babb3a023,0 +f03d3c4ce7fb,4 +f0546a45ef10,0 +f066db7a2efe,0 +f06e7a9df795,0 +f0800723bc63,2 +f080a22008be,3 +f0860c21533b,0 +f092febbf5c0,3 +f09cfc6a4dbd,0 +f09fd9433dff,0 +f0a2dc580009,0 +f0c0f7b5e820,2 +f0c13be90519,1 +f0e1201b5c1f,0 +f0f89314e860,4 +f18abfa690ab,2 +f1979147aad4,0 +f1a761c68559,2 +f1d719c97838,0 +f1dc26c4bfa3,4 +f2094a20b275,2 +f233638e0e90,0 +f23902998c21,2 +f252046c0fe6,0 +f26b02ead915,0 +f298b7d05958,0 +f2c0b41acd05,0 +f2d2a0c92034,4 +f2ee81781411,2 +f2f569a64949,0 +f30f203ef51e,2 +f35d80bb1a22,0 +f361060eda3e,0 +f366fb1cc475,0 +f36cb007a1ef,0 +f3a268d2726d,2 +f3a4751af42e,0 +f3a88d3026dc,2 +f3b27ac2d371,0 +f3b6b7ca1eb1,2 +f3bb996b45ce,0 +f3cd489acbee,2 +f42b693a9414,0 +f431f2e119d7,0 +f451eee2b66b,0 +f45f1485c940,2 +f460608cf4cc,2 +f47a2a4a0411,1 +f481f76a6b75,1 +f48241b0c995,0 +f4874247ede6,0 +f4c7ae514c54,0 +f4d3169b468a,0 +f4d3777f2710,2 +f4de9620e3f2,0 +f4df3d86688d,0 +f4e68b61f480,0 +f4ea2a2cfbb9,0 +f531232ecb55,0 +f549294e12e1,4 +f55e1d2a19e4,1 +f5650eb52640,1 +f56ff0440ed1,0 +f5733f77273d,0 +f576e45d1da2,3 +f57cf3b6f48e,0 +f580566e27f5,0 +f583a722434c,2 +f58cdfa968be,0 +f58d37d48e42,4 +f58f0b2fd718,0 +f5a8c6426a71,3 +f5c953bee7cd,0 +f5e6226bd2e0,4 +f5e9a307288c,2 +f61bf44c677c,2 +f62b8a076833,0 +f633c474e8b8,0 +f64214bed40e,3 +f64b6e85f1c9,0 +f66c4ee86629,0 +f68690db78d3,0 +f69400b316a7,2 +f69835dc7c50,4 +f6d760566a51,0 +f6f3ea0d2693,4 +f6f433f3306f,3 +f6f7dba7104d,1 +f7116e7b2f4e,0 +f71333204618,0 +f71aca5a7dc3,0 +f71bea807c96,0 +f72adcac5638,4 +f72ef9ceeaa8,1 +f7508f14dd7b,0 +f762c272c522,1 +f7735b6d47f7,0 +f7defe70afc3,0 +f7e9fa75c7c1,0 +f7edc074f06b,2 +f7fec8935126,1 +f80118bbda18,2 +f819c65b803c,0 +f8372e80f731,2 +f850cb51fdba,4 +f85c78201a50,0 +f85fd4fac887,0 +f86d1c404acb,0 +f8cf7ed8ef00,4 +f8d62557ad0c,0 +f8f5942b690e,0 +f8fc411092c7,2 +f901d460517c,3 +f90f8931a9bc,0 +f9156aeffc5e,3 +f91cfa82b9d4,0 +f920ccd926db,2 +f952ad2e4356,0 +f994a3b07935,0 +f999c6921e6d,2 +f9aa35187bf3,2 +f9d52509c571,0 +f9d8ff3e6592,0 +f9e1c439d4c8,0 +f9e779a13204,2 +f9ecf1795804,2 +fa0c87bd75ce,0 +fa3e544a7401,2 +fa573163dd8b,0 +fa59221cf464,4 +fa6f3d8bb1d5,0 +fa748b57262b,2 +fa7fa797c650,0 +fa9bece586fc,0 +fa9f1bc03f21,0 +fac399455195,2 +fb1b8771c70a,0 +fb61230b99dd,3 +fb696a8e055a,4 +fb6b8200b7f8,1 +fb767cea406c,0 +fb88783de055,0 +fb88d23fc5fe,0 +fba493e17448,2 +fbcbc81cf9be,0 +fbdc796290d4,0 +fbfa925506f6,0 +fc1b1841eadf,2 +fc4c2d35c6f8,2 +fc4d69128e7c,2 +fc603cbedb41,2 +fc782722a50c,0 +fc898dfeb24f,0 +fc8fce67fbf8,0 +fca1a8738b8a,0 +fca931da5c5e,1 +fcc32dffd24d,0 +fcc55ae641ae,2 +fcc6aa6755e6,3 +fce73678f650,0 +fce93caa4758,4 +fd079d2e93a2,0 +fd0a70082e7c,0 +fd48cf452e9d,2 +fd4c946c52bf,0 +fd62bd0db4f1,1 +fd87b6b2e664,0 +fda39982a810,3 +fdbc252813b1,0 +fdc685055659,0 +fdd18ccbbdc5,1 +fdd534271f3d,4 +fe06dad6851c,0 +fe0e2dee1834,0 +fe0fc67c7980,3 +fe2df69676cf,1 +fe37f4492920,2 +fe3b0e50be78,0 +fe3f62695b2d,0 +fe674c2f73f5,1 +fea14b3d44b0,1 +febfb20dc311,0 +fecf4c5ae84b,1 +fed5bb685832,0 +fefded6bf135,0 +ff03f74667df,0 +ff0740cb484a,2 +ff1e940105f9,0 +ff344e5c9341,2 +ff4832d55461,0 +ff4955e76894,0 +ff4cd992667b,0 +ff52392372d3,2 +ff59d44a70a7,0 +ff631653374e,0 +ff77e8e5b5f3,2 +ff8a0b45c789,4 +ffa47f6a7bf4,2 +ffc04fed30e6,0 +ffcf7b45f213,2 +ffd97f8cd5aa,0 +ffec9a18a3ce,2 diff --git a/baselines/diabetic_retinopathy_detection/data_load_scripts/load_aptos.py b/baselines/diabetic_retinopathy_detection/data_load_scripts/load_aptos.py new file mode 100644 index 000000000..6f7d5b519 --- /dev/null +++ b/baselines/diabetic_retinopathy_detection/data_load_scripts/load_aptos.py @@ -0,0 +1,46 @@ +""" +Loads and packages the data for the aptos dataset. +""" + +from absl import app +from absl import flags +from absl import logging + +import uncertainty_baselines as ub + +flags.DEFINE_string('data_dir', None, 'Path to training and testing data.') +FLAGS = flags.FLAGS + + +def main(argv): + del argv # unused arg + data_dir = FLAGS.data_dir + + # APTOS has two splits: validation and test. + + # Load `aptos` validation data + aptos_validation_builder = ub.datasets.get( + "aptos", + split='validation', + data_dir=data_dir, + download_data=True) + logging.info('Shuffling and packaging `aptos` validation data.') + aptos_validation_builder._dataset_builder.download_and_prepare( + download_dir=f'{data_dir}/aptos/') + + # Load `aptos` test data + aptos_test_builder = ub.datasets.get( + "aptos", + split='test', + data_dir=data_dir, + download_data=True) + logging.info('Shuffling and packaging `aptos` test data.') + aptos_test_builder._dataset_builder.download_and_prepare( + download_dir=f'{data_dir}/aptos/') + logging.info('Finished packaging `aptos` test data.') + + logging.info('Finished packaging `aptos` data.') + + +if __name__ == '__main__': + app.run(main) diff --git a/baselines/diabetic_retinopathy_detection/data_load_scripts/load_diabetic_retinopathy_severity_shift_mild.py b/baselines/diabetic_retinopathy_detection/data_load_scripts/load_diabetic_retinopathy_severity_shift_mild.py new file mode 100644 index 000000000..d1239e4da --- /dev/null +++ b/baselines/diabetic_retinopathy_detection/data_load_scripts/load_diabetic_retinopathy_severity_shift_mild.py @@ -0,0 +1,98 @@ +""" +Loads and packages the data for the +diabetic_retinopathy_severity_shift_mild dataset. +""" + +from absl import app +from absl import flags +from absl import logging + +import uncertainty_baselines as ub + +flags.DEFINE_string('data_dir', None, 'Path to training and testing data.') +FLAGS = flags.FLAGS + + +def main(argv): + del argv # unused arg + data_dir = FLAGS.data_dir + + # The DiabeticRetinopathySeverityShiftMild dataset has + # five splits: + # - train + # - in_domain_validation + # - ood_validation + # - in_domain_test + # - ood_test + + # Load `diabetic_retinopathy_severity_shift_mild` train data + dataset_train_builder = ub.datasets.get( + "diabetic_retinopathy_severity_shift_mild", + split='train', + data_dir=data_dir, + download_data=True) + logging.info( + 'Shuffling and packaging `diabetic_retinopathy_severity_shift_mild` ' + 'train data.') + dataset_train_builder._dataset_builder.download_and_prepare( + download_dir=f'{data_dir}/diabetic_retinopathy_severity_shift_mild/') + logging.info( + 'Finished packaging `diabetic_retinopathy_severity_shift_mild` ' + 'train data.') + + # Load `diabetic_retinopathy_severity_shift_mild` in_domain_validation data + dataset_in_domain_validation_builder = ub.datasets.get( + "diabetic_retinopathy_severity_shift_mild", + split='in_domain_validation', + data_dir=data_dir, + download_data=True) + logging.info( + 'Shuffling and packaging `diabetic_retinopathy_severity_shift_mild` in_domain_validation data.') + dataset_in_domain_validation_builder._dataset_builder.download_and_prepare( + download_dir=f'{data_dir}/diabetic_retinopathy_severity_shift_mild/') + logging.info( + 'Finished packaging `diabetic_retinopathy_severity_shift_mild` in_domain_validation data.') + + # Load `diabetic_retinopathy_severity_shift_mild` ood_validation data + dataset_ood_validation_builder = ub.datasets.get( + "diabetic_retinopathy_severity_shift_mild", + split='ood_validation', + data_dir=data_dir, + download_data=True) + logging.info( + 'Shuffling and packaging `diabetic_retinopathy_severity_shift_mild` ood_validation data.') + dataset_ood_validation_builder._dataset_builder.download_and_prepare( + download_dir=f'{data_dir}/diabetic_retinopathy_severity_shift_mild/') + logging.info( + 'Finished packaging `diabetic_retinopathy_severity_shift_mild` ood_validation data.') + + # Load `diabetic_retinopathy_severity_shift_mild` in_domain_test data + dataset_in_domain_test_builder = ub.datasets.get( + "diabetic_retinopathy_severity_shift_mild", + split='in_domain_test', + data_dir=data_dir, + download_data=True) + logging.info( + 'Shuffling and packaging `diabetic_retinopathy_severity_shift_mild` in_domain_test data.') + dataset_in_domain_test_builder._dataset_builder.download_and_prepare( + download_dir=f'{data_dir}/diabetic_retinopathy_severity_shift_mild/') + logging.info( + 'Finished packaging `diabetic_retinopathy_severity_shift_mild` in_domain_test data.') + + # Load `diabetic_retinopathy_severity_shift_mild` ood_test data + dataset_ood_test_builder = ub.datasets.get( + "diabetic_retinopathy_severity_shift_mild", + split='ood_test', + data_dir=data_dir, + download_data=True) + logging.info( + 'Shuffling and packaging `diabetic_retinopathy_severity_shift_mild` ood_test data.') + dataset_ood_test_builder._dataset_builder.download_and_prepare( + download_dir=f'{data_dir}/diabetic_retinopathy_severity_shift_mild/') + logging.info( + 'Finished packaging `diabetic_retinopathy_severity_shift_mild` ood_test data.') + + logging.info('Finished packaging `diabetic_retinopathy_severity_shift_mild` data.') + +if __name__ == '__main__': + app.run(main) diff --git a/baselines/diabetic_retinopathy_detection/data_load_scripts/load_ub_diabetic_retinopathy_detection.py b/baselines/diabetic_retinopathy_detection/data_load_scripts/load_ub_diabetic_retinopathy_detection.py new file mode 100644 index 000000000..1bf513ba7 --- /dev/null +++ b/baselines/diabetic_retinopathy_detection/data_load_scripts/load_ub_diabetic_retinopathy_detection.py @@ -0,0 +1,48 @@ +""" +Loads and packages the data for the ub_diabetic_retinopathy_detection dataset. +""" + +from absl import app +from absl import flags +from absl import logging + +import uncertainty_baselines as ub + +flags.DEFINE_string('data_dir', None, 'Path to training and testing data.') +FLAGS = flags.FLAGS + + +def main(argv): + del argv # unused arg + data_dir = FLAGS.data_dir + + # Load `ub_diabetic_retinopathy_detection` train data + dataset_train_builder = ub.datasets.get( + "ub_diabetic_retinopathy_detection", + split='train', + data_dir=data_dir, + download_data=True) + logging.info( + 'Shuffling and packaging `ub_diabetic_retinopathy_detection` train data.') + dataset_train_builder._dataset_builder.download_and_prepare( + download_dir=f'{data_dir}/downloads/') + logging.info( + 'Finished packaging `ub_diabetic_retinopathy_detection` train data.') + + # Load `ub_diabetic_retinopathy_detection` test data + dataset_test_builder = ub.datasets.get( + "ub_diabetic_retinopathy_detection", + split='test', + data_dir=data_dir, + download_data=True) + logging.info( + 'Shuffling and packaging `ub_diabetic_retinopathy_detection` test data.') + dataset_test_builder._dataset_builder.download_and_prepare( + download_dir=f'{data_dir}/downloads/') + logging.info( + 'Finished packaging `ub_diabetic_retinopathy_detection` test data.') + + logging.info('Finished packaging `ub_diabetic_retinopathy_detection` data.') + +if __name__ == '__main__': + app.run(main) From 5ed046f2332644c4fb541de07a1aa8f723011600 Mon Sep 17 00:00:00 2001 From: Neil Band <20114038+nband@users.noreply.github.com> Date: Wed, 4 Jan 2023 15:13:32 -0600 Subject: [PATCH 5/8] remove local metadata copy --- .../data_load_scripts/aptos_metadata.csv | 3663 ----------------- 1 file changed, 3663 deletions(-) delete mode 100644 baselines/diabetic_retinopathy_detection/data_load_scripts/aptos_metadata.csv diff --git a/baselines/diabetic_retinopathy_detection/data_load_scripts/aptos_metadata.csv b/baselines/diabetic_retinopathy_detection/data_load_scripts/aptos_metadata.csv deleted file mode 100644 index c87d92114..000000000 --- a/baselines/diabetic_retinopathy_detection/data_load_scripts/aptos_metadata.csv +++ /dev/null @@ -1,3663 +0,0 @@ -id_code,diagnosis -000c1434d8d7,2 -001639a390f0,4 -0024cdab0c1e,1 -002c21358ce6,0 -005b95c28852,0 -0083ee8054ee,4 -0097f532ac9f,0 -00a8624548a9,2 -00b74780d31d,2 -00cb6555d108,1 -00cc2b75cddd,0 -00e4ddff966a,2 -00f6c1be5a33,0 -0104b032c141,3 -0124dffecf29,1 -0125fbd2e791,0 -012a242ac6ff,2 -014508ccb9cb,0 -0151781fe50b,0 -0161338f53cc,2 -0180bfa26c0b,2 -0182152c50de,0 -01b3aed3ed4c,1 -01c7808d901d,2 -01d9477b1171,0 -01eb826f6467,2 -01f7bb8be950,0 -0212dd31f623,0 -022f820027b8,0 -0231642cf1c2,0 -0232dfea7547,0 -02358b47ea89,0 -0243404e8a00,4 -025a169a0bb0,2 -02685f13cefd,4 -026dcd9af143,2 -02cd34a85b24,0 -02da652c74b8,0 -02dda30d3acf,4 -0304bedad8fe,0 -0318598cfd16,4 -032d7b0b4bf6,2 -033f2b43de6d,2 -034cb07a550f,4 -03676c71ed1b,2 -0369f3efe69b,1 -03747397839f,2 -03a7f4a5786f,4 -03b373718013,0 -03c85870824c,3 -03e25101e8e8,1 -03fd50da928d,2 -03ff7d159f10,2 -0415fc68b176,2 -041f09eec1e8,2 -0423237770a7,0 -042470a92154,3 -04579e31e4be,0 -04a6fc58dabc,2 -04ac765f91a1,1 -04aef84a2cc1,0 -04d029cfb612,2 -04efb1a284cc,0 -050bb1eafa76,0 -05113073b268,0 -05195a3db5e2,0 -0519b934f6b1,2 -052d9a3fe55a,2 -05339950962e,0 -054b1b305160,0 -0551676cc2aa,0 -059bc89df7f4,1 -05a5183c92d0,1 -05b1bb2bdb81,0 -05cd0178ccfe,3 -05e9126dfa5c,0 -06024377d573,2 -060e00d1e2ab,0 -064af6592ba6,2 -06586082a24d,0 -0684311afdfc,1 -069f43616fab,3 -06b71823f9cd,1 -06be1092a062,0 -07083738b75e,2 -0709652336e2,0 -070d4ce5fd90,0 -070f67572d03,3 -07122e268a1d,4 -071435a218ec,2 -07419eddd6be,2 -07596907347b,0 -0773a1c326ad,0 -07751b94a88a,0 -0790515cf5af,0 -07929d32b5b3,1 -07a0be6b347f,0 -07a0e34c8d20,3 -07a1c7073982,1 -07a2b8cabf6b,0 -07a3be30563b,2 -07d8db76b301,2 -07e827469099,0 -07f5d7baf907,0 -08037e4490e5,0 -080ee76c958c,4 -080f66eedfb9,4 -084c02cf077f,0 -0851d6a69589,0 -086d41d17da8,1 -08752092140d,2 -08a3875063c3,4 -08b6e3240858,0 -08bef347f40d,0 -08c17a2d95b7,2 -08c60c647673,0 -08ee569d4721,0 -08f8838d69bb,0 -09237bf783a4,0 -0924cec998fa,0 -093a42649c29,3 -093cf723fede,0 -094858f005ab,2 -0953c0ac1735,2 -096436d68d06,0 -09662e462531,0 -0981195eb9fb,4 -099021fac3c9,0 -09934421c79e,0 -09935d72892b,1 -09c8323c612e,0 -09eeafa9656a,2 -09f1111a388a,0 -09f6ab477654,2 -0a09aa7356c0,2 -0a1076183736,2 -0a3202889f4d,1 -0a38b552372d,0 -0a4e1a29ffff,0 -0a61bddab956,1 -0a74c92e287c,0 -0a85a1e8f9e9,0 -0a902c80d5da,0 -0a9ec1e99ce4,2 -0abf0c485f66,0 -0ac436400db4,2 -0ad7f631dedb,1 -0ada12c0e78f,4 -0ae2dd2e09ea,0 -0af296d2f04a,2 -0afbeeef0ff7,0 -0afdfe5f422c,2 -0b00f8a77510,0 -0b2ea8f268cf,0 -0b3efe669365,0 -0b64a0a06f9a,0 -0b8bdec9d869,0 -0babc12807b2,0 -0bf37ca3156a,4 -0c2e2369dfff,2 -0c38940e1f80,0 -0c43c79e8cfb,0 -0c55d58bebaf,2 -0c76fd494af6,2 -0c7e82daf5a0,2 -0c917c372572,3 -0ca0aee4d57e,2 -0cae727cf119,0 -0cb14014117d,3 -0cb6b898389f,0 -0cbcc7b23613,0 -0cd31078cd08,0 -0ce062f26edc,0 -0ceb222f6629,4 -0cecc2864b7f,0 -0d0a21fd354f,2 -0d0b8fc9ab5c,0 -0d310aba6373,1 -0d744aed4d64,0 -0d8f60ed9280,0 -0d9a9896f801,0 -0da09e3ce8f1,2 -0da321efbce6,0 -0da632ca45e0,0 -0daddc45d832,0 -0db1d8dcf219,0 -0dbaa09a458c,2 -0dbe6c26cedc,0 -0dc031c94225,1 -0dc8d25b3f69,3 -0dce95217626,1 -0e0003ddd8df,0 -0e0fc1d9810c,4 -0e3572b5884a,0 -0e43c8298fc0,0 -0e75d51152fc,2 -0e82bcacc475,4 -0e94cd271c00,0 -0eb52045349f,1 -0eced86c9db8,0 -0edadb2aa127,3 -0ef4c61dc056,0 -0efc93ec838b,2 -0eff8eacb2f7,2 -0f364b7d4384,0 -0f495d87656a,1 -0f6e645466a2,0 -0f882877bf13,3 -0f96c358a250,3 -0fb1053285cf,1 -0fb560f9adb2,2 -0fbbd665431f,0 -0fc6829da85b,0 -0fcfc6301f3d,2 -0fd16b64697e,2 -0fe31196e0e8,0 -0fffa73e2402,2 -1002b5151b8e,0 -1002f3fe38f0,0 -1006345f70b7,2 -101b9ebfc720,1 -103abbd8b63e,0 -103f97a2ab15,0 -107aea0d9289,1 -10a5026eb8e6,0 -10bf25731c08,0 -10de500cf0c5,0 -10ecc5292ab1,2 -10eefba568dd,2 -10f10fd30718,0 -10f36b0239fb,1 -10f6ef37fe43,0 -10fca1abf338,4 -1116271db4ea,1 -111898ab463d,1 -1120f6d08d95,2 -11242a67122d,4 -1124ffcd76c2,2 -115e42dd6a81,2 -1177d583c807,2 -11b220a397b8,0 -11b5c77fbf79,2 -11d8e5eaee5b,0 -12025b34deb8,2 -12058bbb8299,0 -1269ab57c2e6,2 -12a82fc7d73e,2 -12ab2f6397f0,0 -12ae44be0d38,0 -12b57dac703e,0 -12bc439d373a,0 -12ce6a1a1f31,1 -12e3f5f2cb17,1 -12e6e66c80a7,2 -12ef75375322,0 -13063d1bc4ea,2 -13073f075a56,0 -135575dc57c9,2 -13ab8db8c700,1 -13c191b59ed0,0 -13d014ccd136,0 -13d411c85ffd,0 -13d71389563f,2 -1409ab48175a,0 -1411c8ab7161,2 -1414128bead0,2 -141735b57ec0,2 -1438288bb2e1,2 -143db89c11c8,0 -144a1a426137,2 -144b01e7b993,2 -14515b8f19b6,2 -14c3b41d289c,0 -14e3f84445f7,3 -14ee87d6cc42,2 -1509d097b69a,0 -150f92b45349,0 -150fc7127582,0 -152db3de8120,0 -1541226c5d72,2 -15528e740543,2 -155e2df6bfcf,0 -157d17349cc6,2 -1594ca6c30d3,2 -15b21c80cc31,0 -15bed5adde74,3 -15c24478ac72,0 -15cc2aef772a,1 -15cd5f52d300,2 -15e24b73d4a7,0 -15e96e848b46,4 -15f440753916,3 -15f8d769935c,0 -1601c939412f,0 -16060f05d047,0 -1608c82a263f,0 -1623e8e3adc4,3 -1632c4311fc9,2 -1633f8291a80,0 -1638404f385c,4 -164cd5a3a6cd,0 -165634a6167e,0 -165c548185f8,0 -165cd2070ebd,4 -166068a24416,3 -16ce555748d8,4 -17188c13e635,2 -172df1330a60,1 -174db0854291,0 -175dd560810a,2 -1782142e17d9,0 -178412895d5e,0 -17d7d6b092f4,0 -17d997fe1090,0 -17e6116b89b3,0 -17eb5d4ad740,2 -17eff993386f,1 -17f6c7072f61,0 -180afe1d5ef7,2 -18323d8f2470,2 -1844a039b4ea,2 -184a185e7447,0 -18621b9ca978,0 -1864d3411143,0 -186c1835eec5,0 -187f6ccda87a,4 -188219f2d9c6,0 -188a9323be03,2 -1891698febce,0 -189cbbc9e5e3,0 -18af532e7e1e,2 -18b06f56ab27,1 -18b7e34eab8f,0 -18b99159a14f,0 -18cde9649e90,0 -18ce0cdc473d,0 -18d8fdb140b7,2 -18f1f979d30d,2 -190a309f2cc5,0 -19113e5f45ec,2 -191348830ddf,2 -191a711852bd,3 -191cf5668f33,0 -19244004583f,3 -1943983492e5,2 -194814669fee,1 -19545647508e,0 -1968183f0e61,2 -196e6a186452,2 -19722bff5a09,1 -197af0de76e2,0 -19b0e3c734f5,0 -19e350c7c83c,1 -19ef4d292196,4 -1a03a7970337,1 -1a0dbc6c0cda,0 -1a19f2ef4472,0 -1a1b4b2450ca,2 -1a1e974a7dbf,0 -1a369baf9ee6,2 -1a7e3356b39c,4 -1a90fad9ffa2,4 -1ab3f1c71a5f,3 -1ab8d3431ffc,0 -1ade1e949383,2 -1ae3c58759fb,0 -1ae8c165fd53,2 -1b329a127307,1 -1b32e1d775ea,4 -1b3647865779,0 -1b398c0494d1,0 -1b4625877527,2 -1b495ac025b7,3 -1b862fb6f65d,0 -1b8701231c8f,0 -1b8ad0afe9fb,2 -1bb0ddfe753a,1 -1bea04b2bb2d,2 -1bf30c84bbad,4 -1c0cf251b426,1 -1c0e5dd1b14c,2 -1c13a1483f4a,0 -1c3a6b4449e9,1 -1c47815f4a6b,0 -1c4d87baaffc,2 -1c4f3aa4df06,4 -1c578b72d7b3,2 -1c5ad36fb799,2 -1c5e6cdc7ee1,2 -1c6d119c3d70,2 -1c7a013eeba7,0 -1c9521878baf,3 -1c9c583c10bf,0 -1ca35d483772,0 -1ca62b3e4fd3,0 -1ca91751be4d,0 -1caba2fb38f6,0 -1cb6961d141c,0 -1cb814ed6332,2 -1cc58b15f466,0 -1d0b93317aa8,0 -1d11794057ff,1 -1d14dd912671,2 -1d2472849dce,0 -1d29cb2f4296,0 -1d37f1c8b6d8,0 -1d3e9b939732,0 -1d46f1326394,0 -1d55e689cf84,2 -1d674e2e32e0,1 -1d74c4713e21,0 -1da25637859b,2 -1da4a17c18c9,0 -1db0393cdbc1,0 -1db18bdd43aa,2 -1db6bb46c102,0 -1dbdc32c17db,2 -1dd9adcbfff4,2 -1df0431bfa73,0 -1df0a4c23c95,0 -1df1530b9b8d,0 -1df3e03a8f5f,1 -1dfbede13143,2 -1dfe599d12a9,0 -1e036f2e7095,0 -1e143fa3de57,2 -1e1fb019710d,2 -1e4650743fa2,2 -1e4b3b823b95,2 -1e742358e0b9,0 -1e7ccd4a1c87,0 -1e8a1fdee5b9,1 -1e8c31e29dd3,0 -1e9224ccca95,4 -1ec95179cdfe,0 -1ee1eb7943db,2 -1ee355480567,0 -1eee55494271,0 -1efa5d443707,4 -1f07dae3cadb,2 -1f0e223b8055,2 -1f15ca672675,0 -1f31701dd61b,0 -1f3f32efaf20,0 -1f4bf8e28b41,2 -1f4fb37e0854,0 -1f543a86c4d4,2 -1f5496352859,0 -1f63d44d9e3c,2 -1f9ccda4ddf2,0 -1faf8664816c,0 -1fb455685328,0 -1fd5d860d4d7,4 -1fddd7c98fd2,0 -1ffaa51a6245,2 -200d947f75db,1 -2017cd92c63d,4 -201f6e10c108,0 -201f882365d3,0 -203275daf46d,2 -20404ec7b518,2 -20688cb25704,2 -207a580de0ea,2 -207dd0487264,0 -20c883d3bd38,2 -20d5fdd450ae,4 -20f86e068276,0 -21037f5c7790,0 -210bfe0127c6,0 -211518c46162,4 -2131aa3a1e6f,2 -215d2b7c3fde,0 -217dad18a5ed,2 -218c822a3dd9,0 -21abd36095a1,4 -21d18b022429,4 -22098b1fe461,1 -2209daf71aab,0 -2221cf5c7935,0 -222d0ac042b4,2 -222f3ee3a1e8,4 -22325552a4e3,1 -2241b7e90782,2 -22449af52060,0 -224bb938e2dd,2 -224c14366e11,0 -226c6ceb9185,0 -22895c89792f,4 -22a6da005395,1 -22ce8ef69357,2 -22d843b2bbd1,0 -23148a40ecb0,2 -23175b7ef453,2 -232549883508,2 -233d948e2544,0 -234399352d36,2 -236f56771ec6,2 -2376e5415458,2 -237aa50edc34,0 -237c078d00fc,3 -2399d68d407f,0 -239f2c348ea4,2 -23d7ca170bdb,2 -23fca0693e2a,2 -2408799a09b2,0 -240b25a7debe,0 -242fc19be06f,0 -2463bb04ebc3,2 -246e4506824a,2 -247ac63e5510,4 -247e98aba610,4 -248139c423c4,1 -248dec89b3a2,0 -24b87f744598,3 -24b943fe725e,1 -24de56d433cd,0 -24f271c87e73,0 -24f3e70f0419,0 -25002fe43f92,2 -252305189b3a,0 -2532613a584a,2 -253e96488cfb,0 -254052cf3e48,4 -2585bbc91909,0 -259d30f693b6,1 -25a0a1e41afd,0 -25b0e72705a8,3 -25b4080f598b,0 -25d069089c5e,4 -25dc1b41ed9c,2 -25e9fd872182,1 -2608e1dac5b1,2 -260a455692b5,0 -261c6bd63bff,2 -2628305cbb29,4 -262ad704319c,4 -263d8851e33b,0 -26453eb7e989,2 -26463a5fb949,4 -2665f72e2dd3,3 -266fbefa58fb,0 -2682e6da9050,0 -26999ebc21de,2 -269b44e628eb,3 -269f0792f11f,2 -26cd40b57ad1,0 -26d60db3bbfd,0 -26d9576e8043,0 -26e231747848,2 -26fc2358a38d,0 -2700754f71e9,2 -272d9c043c81,2 -2735be026d44,2 -274f4de2a59d,0 -274f5029189b,1 -276b14f72328,0 -2776d70724d3,2 -278aa860dffd,1 -27933cdbe0cc,0 -27b68863349f,2 -27bab1432f61,2 -27e2be850a99,4 -27e4c800a449,1 -27f82ada84ac,0 -27fca9f12b3c,2 -281d7b7c7676,4 -2821998fc002,0 -282bc792d23a,2 -283c3aeba594,0 -28503940d10b,0 -286e9981dd9b,0 -28751f290ba3,0 -28824d12d31d,2 -289a47dcbb82,0 -28a4d00927b7,2 -28dc010a0780,0 -28f73575e1f2,0 -28f93cad89c5,2 -28f98cfe3858,1 -290ecdba359f,2 -29192375ab1b,0 -291e2ff3d834,2 -291f581d365e,0 -2923971566fe,0 -2927665214e1,0 -29580bed2f7d,2 -295fdc964f6e,2 -2967e578939f,2 -2974c6ad1d58,0 -299086c6d1b5,3 -2994f17f58a5,1 -29a13e666266,0 -29b52f64d2db,1 -29bc0e721cfe,4 -29d059522fa1,0 -29f44aea93a4,2 -29f9e1ac9507,0 -2a08ed6bbcbc,1 -2a099b247b10,2 -2a2274bcb00a,0 -2a2a6435f7f3,0 -2a3378bcfbcc,2 -2a3a1ed1c285,2 -2a4520f1f9a3,0 -2a47e5b21791,2 -2a5a8b744f08,2 -2a7373eeb352,0 -2a8a9e957a6c,1 -2a93334f663a,0 -2af1bf226f51,2 -2b074afdf626,2 -2b07790a2422,2 -2b10f138e67d,0 -2b21d293fdf2,2 -2b2f5a0f880d,0 -2b3a4a81d748,0 -2b48daf24be0,3 -2b4c7b5f1f1e,0 -2b5bb6d33959,0 -2b88cb6e31cd,2 -2ba0b0d9bda2,2 -2bb063318cf1,3 -2bb3c492d6d3,0 -2bbcfdc477db,4 -2bbd1f99ecc3,3 -2bd4d4fbed5c,2 -2c1d5be654dd,2 -2c2aa057afc5,2 -2c77bf969079,0 -2c8101f14723,0 -2c827005b8f8,0 -2c9dfc270f1b,0 -2cacdb0dffae,0 -2cbfc6182ba2,2 -2cceb07ff706,2 -2cdcc910778d,0 -2cef97083e6f,2 -2cf18033da31,0 -2cfe8703f265,0 -2d04cead4d3a,0 -2d07162a13b1,0 -2d3f4094c08a,0 -2d552318eb07,2 -2d558de2cabe,0 -2d7666b8884f,1 -2d870833c0c9,2 -2d9d97a6e713,1 -2da82d14e1b7,0 -2db0cd3e30da,0 -2dc647e00ad3,0 -2dd28ac497d2,0 -2df07eb5779f,4 -2e26762daed5,2 -2e79041ef722,2 -2eba4279e503,0 -2ecbc2e3f239,1 -2ef10194e80d,0 -2ef4a04aed1b,0 -2ef955d6d9ff,0 -2f143453bb71,0 -2f284b6a1940,4 -2f2e1949ad56,1 -2f42e20db938,3 -2f4e81787d9b,1 -2f5c9cdfb333,2 -2f7789c1e046,4 -2f7fbdcc9a4b,0 -2f81ee5f2926,0 -2f8d14a7d390,0 -2f9b66784109,2 -2fb3a8606a77,2 -2fde69f20585,4 -2fdfb80ea53c,0 -2fdffb6160a6,2 -2fe06bedb2c4,4 -2fefb720869a,0 -300305ce82d2,2 -30263a7d5609,0 -302bcdb635ff,2 -3044022c6969,1 -306c841af3fc,0 -3079490a4b9c,0 -308f7fce6f0d,2 -30941b65348b,1 -30cab14951ac,1 -30db694bee42,0 -310c27067ac0,2 -312694ea8e6a,4 -3128eb593012,2 -3132556f5352,0 -31360e44ac64,0 -31452ad8808c,2 -314862758acf,2 -315c1a0d87fd,0 -31616ff6b53b,3 -3178559fbf57,0 -318eb706a134,0 -31b5d6fb0256,2 -31cb39681f6a,1 -3206171db5be,4 -3218a6d8eb2c,3 -3232b34cbe99,0 -3246f07e65b4,2 -3254e48c8aa0,0 -3286073a976e,0 -328d141ed3aa,0 -32a3eb37ff40,2 -32d7d360d891,0 -32ed318235b8,0 -33105f9b3a04,1 -331121c65e88,0 -331b87d1b9d1,2 -3323fd59782e,0 -3325b1fe55d2,0 -33596a635b53,0 -33778d136069,3 -338326891d84,0 -33b893e18eb3,1 -33b91def2035,0 -33b978734eab,0 -33d72035c27a,0 -33e7bf536fc5,0 -33e8e26a75d4,2 -33ffddea8c6e,1 -3402124408ea,2 -3428230bf1bd,2 -342edf9b889d,0 -3435fd8675a2,3 -345b1f0abbba,0 -3461dc601cc2,1 -34723fae6475,2 -348598d01e18,0 -3486f7096276,0 -349f3c0ac83e,2 -34a7dbd3f05c,0 -34acae864963,0 -351e842842a2,0 -352e4a939242,3 -35362d43e753,0 -354b8911d6ed,2 -356304d15a5c,0 -35777eb7859d,0 -357f02a779d7,0 -3580a545016d,0 -358d2224de73,1 -3599029efeb3,0 -359bab5d784b,0 -35aa7f5c2ec0,1 -35ac70c0d08f,0 -35beb47fe159,0 -35cd9832fc0a,0 -35d6c4c50072,1 -35df2bc6ae95,0 -3601dac9bed7,0 -36041171f441,1 -360832d84ce0,0 -362c4a96cebb,2 -365f8c01d994,1 -36677b70b1ef,1 -367c7049929c,2 -36865bbc64d6,3 -369229040a34,0 -3694e8c8e09a,0 -36a1e3c780a0,2 -36b5b3c9fb32,3 -36e4b704b905,0 -36ec36c301c1,2 -370f575adb23,0 -3710ff45299c,0 -3730c322d35b,0 -3732de8b416f,0 -374535e0adb8,4 -3748349334f6,2 -378963f9df22,4 -3796af4d987a,4 -37c4dfe03aba,4 -37c523296d42,0 -37de05ef12a5,2 -38055d8b9f08,3 -3810040096cb,4 -3823acc4e464,0 -382752f6694a,1 -38373431d996,0 -383e72af1955,3 -384631079d1e,1 -38487e1a5b1f,2 -384db24ebbd7,0 -384e6c915722,0 -387138ddf43d,0 -388279491b5d,0 -388f12e8df0b,2 -389552047476,0 -38b9bb961847,1 -38c7153457e2,0 -38e0e28d35d3,1 -38e111cac46f,2 -38f1901f214a,0 -38fe9f854046,2 -3908b3cfd620,0 -39134907127a,2 -393fa5a023a5,0 -39923b29988a,2 -39aa3cd93c50,3 -39b5b05d6cd9,2 -39f8935185e6,0 -39fd8ef3a45c,0 -3a122851e526,2 -3a1d3ce00f0c,2 -3a1ecf5e2839,4 -3a4cfea0a766,0 -3a61e690f4bb,2 -3a643599f852,0 -3a6e9730b298,4 -3aa2b1ce6700,2 -3abac0961bfd,0 -3ac3fbfca7d4,4 -3ac92ac3d65a,0 -3af9aaa880e9,0 -3b018e8b7303,3 -3b0190bbe615,0 -3b10191dfd25,0 -3b185ac445d0,4 -3b232b394e4f,4 -3b2b91590590,0 -3b4a5fcbe5e0,4 -3b58b02c89ed,2 -3b5dffe159b6,0 -3b73a3a4a734,1 -3b9817a39adf,0 -3b9c1f42c2f2,2 -3bf2deaa5ef0,0 -3bf3085ac167,0 -3c1efa38d0da,2 -3c28fd846b43,0 -3c311c9109b0,2 -3c326543fff6,0 -3c42512c81e0,0 -3c53198519f7,2 -3c726de3ee90,1 -3c72f580d4ba,1 -3c78bfca247b,4 -3c9529918097,0 -3ca12e02dd4e,0 -3ca637fddd56,4 -3ca8be3b40d6,0 -3cab32dd6ef9,0 -3ccf96c1dd6d,4 -3cd801ffdbf0,2 -3cd9713c0ecb,0 -3cdda8b3df19,2 -3cdef7c591cc,0 -3ce2f8a77a32,0 -3d2ecffe0386,0 -3d3e288d490e,2 -3d663a6a50a3,2 -3dbc90c7ee7d,1 -3dbfbc11e105,2 -3ddb86eb530e,2 -3de8ad4151e1,1 -3dec415b188a,0 -3dfc50108072,2 -3e1f8fecb06f,2 -3e3a3955b9c5,3 -3e61703b5ab2,0 -3e6bfc4d5c65,2 -3e86335bc2fd,2 -3ee17aa12e46,1 -3ee4841936ef,4 -3f0d3629d69e,0 -3f3de2a6b0f5,2 -3f44d749cd0b,0 -3f47f83217b5,2 -3f49f8d100e9,3 -3f5b4c2948e8,2 -3f6bccf21ce8,0 -3f6c627e2ff2,0 -3f73c91b7e32,1 -3f752fcccec0,4 -3f82631e9080,0 -3f8d5c940ba4,2 -3f98be586fe3,0 -3fa4f4d77177,3 -3fc219927a97,2 -3fd45879afe6,0 -3fd7df6099e3,2 -3fe282197c1c,0 -3ffa14d60b24,2 -40140a925c43,2 -401fdfd0db07,0 -4029d70e9d8a,1 -4036471a1bb7,0 -404ede327e98,0 -405085b53d7b,0 -40527a5e95dd,2 -405b4f78658f,3 -408ea9d5e082,4 -40c24aded50c,0 -40dd4e6e4444,0 -40e9b5630438,1 -41345cec5957,0 -4134b290f5f3,0 -4145dcb25053,0 -4158c340fa49,0 -415d5c5e785f,0 -415f2d2bd2a1,0 -417f408ee8e0,2 -4189d4e631ec,2 -419406328dcd,2 -41960d5f58c2,0 -41ab357d103f,0 -4205e9deb058,0 -4210809074c1,0 -423abbaa5fad,2 -4242c0d87f57,2 -4246ed634f25,2 -4276b82e4489,0 -4289af3afbd2,2 -4294a14c656a,3 -42985aa2e32f,0 -42a67337fa8e,2 -42a850acd2ac,2 -42af7282349b,0 -42b08dca9b2f,2 -42b93b574f23,2 -42b9c1977681,0 -42c65af5ab16,0 -42cc993f23a9,3 -4318b6adeb97,0 -4350a1b2f3cb,0 -435414ccccf7,0 -435d900fa7b2,2 -4360a112db10,3 -436e1793d240,2 -436e7a7af761,0 -436fa3fd145a,0 -437900a99871,2 -437cbec4a3f8,2 -43823561c3f0,0 -4384fa687afa,2 -4393c5bc576a,1 -43bc7c066dfb,0 -43ddd0ab0cc4,2 -43e9c66eb0f3,0 -43f22d1be8dd,0 -43fb6eda9b97,2 -4403538fb50f,0 -4409965eb2a4,0 -441117562359,2 -441848e0f308,0 -441affbe99aa,2 -44271f3cb18f,0 -445a8a6da55c,0 -4462fba1d2a1,4 -4464bb62bf20,0 -4478b870e549,2 -44855f666225,2 -44878f34e31f,0 -4489d421e5aa,2 -44976c3b11a6,0 -44a4d04162cc,0 -44a86263117b,0 -44c869174e3a,2 -44e0d56e9d42,2 -44e951e45dca,2 -44ecf3f4efa5,4 -44f4ae58990e,2 -44f7f3ef9d50,0 -4528fbbd43a3,0 -45369821d6a3,0 -453a1e2754b2,2 -453d553b0a94,2 -454792eb6e05,0 -454a944eb557,0 -4554062fa836,0 -45693d027798,0 -457c7c927e27,3 -45ae04cfde5d,2 -45c39ab9e797,2 -45e4b7eada54,1 -460893cd86e3,2 -461fa5292fda,0 -462937ece243,0 -465c618f7b23,2 -4661006f3ba6,1 -467b7d9d811c,2 -4689b739d240,4 -46923eea9a4e,2 -46acc506fa61,0 -46c1548d730e,2 -46cdc8b685bd,4 -46d3316c4857,4 -46f56c38051f,2 -4704dbb59536,0 -4731e708ede3,0 -475300735b7f,0 -47536db39f00,0 -475c7ded0f7a,2 -478fc46eaa49,0 -47b756014447,2 -47d1603a555b,1 -47e51065b819,2 -4818672273af,2 -482088e6be44,0 -4826d10030b3,0 -484dbeb9bf2a,0 -48543037d0b3,2 -4860f7813654,0 -486e852a3b4d,0 -48a45619d1a3,0 -48afe8c47454,2 -48c49f662f7d,2 -48c72dec46e5,2 -48fda42bd5d4,2 -4926dea289f8,0 -4927945ecfed,0 -49386d603494,1 -493d99f030e2,0 -49419f8d5cb4,2 -494fc9c745a3,1 -495106ae3b68,0 -495255c7492f,1 -4958bfcc9f38,0 -496155f71d0a,0 -4982378d72f9,0 -498f143c0374,3 -499c8df39222,4 -49a4765f8822,2 -49c5e7f6b8d2,1 -49d69c4c6290,2 -49e4b95ee2dc,0 -49eb73968c44,0 -4a05f81b3aba,0 -4a0890b08532,2 -4a0bba3b7d83,2 -4a1afe4044f4,0 -4a213b405ee4,1 -4a3da369b227,4 -4a44cc840ebe,2 -4a4cb731f91a,0 -4a558a1cd243,2 -4a589edaea60,0 -4a5a6efc0bef,0 -4a693dd3921a,4 -4a7dc013e802,4 -4a96c28f3f07,0 -4aa07d720638,1 -4aa3d771c5e4,0 -4ab8c0cece7f,0 -4abca30b676b,4 -4ad6109706e8,2 -4ad8d3ec8789,0 -4b1001050f1d,2 -4b237b958555,0 -4b422b48d0d4,2 -4b5ffea77373,2 -4b618537d52f,3 -4b6895d0cf8d,0 -4b6cb0bcfd44,0 -4bcee3cbe232,0 -4bd5d0b30198,0 -4bd941611343,4 -4beeca5cc859,0 -4c129470cec4,1 -4c17e85686f0,0 -4c389d033cb0,0 -4c3c1ed09771,1 -4c52922f3bfd,2 -4c53cc97ea13,0 -4c570172778b,3 -4c5ab774a381,0 -4c60b10a3a6a,3 -4c60f6fcea75,0 -4c635a01593d,0 -4c6c5a1bf5ab,0 -4c78d9d18da9,2 -4c9f0fdaaef7,3 -4cae247d9909,1 -4ccee4db09b6,0 -4ccfa0b4e96c,4 -4cddfc22b0ad,0 -4cde86044ad1,0 -4ce74e5eb51d,2 -4cf4d528c08e,0 -4cfd22ae43d4,0 -4d009cebabc9,2 -4d167ca69ea8,0 -4d17559ac1e2,0 -4d1cf360b2d7,2 -4d1e7def7624,0 -4d21ce39c905,2 -4d3de40ced3a,0 -4d47300e3ddb,3 -4d7d6928534a,1 -4d9fc85a8259,3 -4da2961e62fe,1 -4da6e2089d57,2 -4dbce359d0e1,2 -4dc2211a1c31,4 -4dd14c380696,0 -4dd4a4bf2421,0 -4dd5d5ccddcf,1 -4dd71fc7f22b,4 -4dd7b322f342,0 -4dd9d29eae5d,1 -4df6a81b476e,3 -4e0656629d02,1 -4e1e252317b5,0 -4e231670b48c,0 -4e43d05cc2ef,2 -4e4a6224a04e,0 -4e54ccfd49b2,0 -4e6071b73120,1 -4e7694eebb91,2 -4e82c3c8d31f,1 -4e8585a96739,0 -4e85aa647534,0 -4eabad7948cf,0 -4eaf2f81819d,0 -4ec7796df40e,0 -4ecd1fdd1435,1 -4ed31cc07366,2 -4ee1ad981a6d,2 -4ef0b485a7da,2 -4ef16a53d899,0 -4ef7144e24ff,1 -4f0866b90c27,3 -4f20f9a9a65b,2 -4f46d7ee61ed,2 -4f5dd7660b17,0 -4f60129e9a5b,2 -4f6abc40c72d,0 -4f7755e74a9e,1 -4fa26d065ad3,1 -4faf4063db8c,0 -4fd5ec0dca09,0 -4fecf87184e6,3 -4fef9ed8a4c5,3 -4ffa38550c95,0 -500aad15b7c8,0 -501c319f7a9f,0 -504a69096fcb,0 -5056fa7d505f,0 -5069feccd866,0 -5077cdb88aed,0 -5078caaf1f57,0 -50840c36f0b4,1 -5090917a2676,1 -50915e2329a1,0 -50916d67bb51,0 -50a2aef380c8,3 -50d8249f7bc9,0 -50d8a8fb7737,2 -50ddd7d976df,0 -50f5201fd18a,0 -51030843fde2,2 -510aa0a898fa,2 -51131b48f9d4,1 -511fd66b2df8,0 -51269b77d312,3 -513b0a4651fa,1 -51405d042000,2 -5152bf091152,2 -5173d54fc214,2 -5188a8afa879,2 -518e880613de,4 -519c6e8f78dc,0 -51a078d6d43a,0 -51a1d162e223,4 -51aa3361294c,0 -51af8a689511,0 -51af8c112682,4 -51cd8d2057fa,0 -51cfeccaf40d,2 -51d0034d177d,2 -51d574513bcb,2 -51d780864365,2 -51da6aebba8f,3 -51e656e5a541,0 -521b5377a727,0 -521d3e264d71,2 -52230bbef30e,2 -523b3f0fc646,1 -523d0c2cb4d6,2 -523ff163211b,2 -524f240e0c90,2 -5257cb536da2,0 -525acfea47e8,2 -525d0dd8dc45,0 -5264a54e1830,0 -5265dc9acdf8,2 -527bea76116c,2 -52886bed8a07,2 -5288f7441f64,0 -5293576816aa,0 -529906ff9dfa,0 -5299a532f0e0,0 -52ae917fcea4,1 -52dbec057cc8,2 -52ddde91a349,0 -52edbe29d655,0 -530d78467615,2 -531b39880c32,1 -5321ab64f9ea,0 -53273d664cd8,0 -5327f88a1919,2 -53327edb9e4d,0 -5347b4c8e9b3,1 -535682537302,0 -53704c80f0d8,1 -537e50fdf22e,3 -537e5c578f40,0 -53c874dbc594,0 -53ddae6a619e,0 -53f6c1c65c04,1 -54038e56131d,0 -540e4973829e,0 -541db13517e2,2 -542964865b1e,0 -54334705a34d,0 -5445255635f0,0 -545df1bbcd61,1 -547b37da9223,2 -5486da4273d7,2 -549381330191,0 -54b322c66d01,0 -54bbe3da103e,2 -54bdcdecd8f3,0 -54cab3596214,2 -54dc6e8107cd,2 -54f57cf26126,0 -55034b1dbff2,2 -55092c0071eb,2 -5511f114e7ee,0 -5548a7961a3e,1 -555d0bef3c5b,0 -55968f0e63c4,0 -55eac26bd383,1 -55eb405ec71e,4 -55f7f018c61c,0 -55fd453001cc,2 -5633ced07d8e,1 -565f3404f9b2,0 -5671eb95512b,1 -568455854a11,0 -56e56aa08362,2 -5712e2aa73a2,1 -571bbdbf585e,0 -5723d0ec895e,2 -5728b8aa98ef,0 -573ea80a53be,0 -57469423a012,2 -576e189d23d4,4 -57760be09c03,2 -5777ef74c9ec,1 -578109578b46,1 -57a5e4274275,0 -57a5f1015504,2 -57a710de68a4,0 -57ce57a8cfb0,2 -57db4781e7ec,0 -57f5ad4b5b29,0 -57f933d3d7c7,2 -58059e73d2d4,0 -5814cbd2e9bf,0 -58184d6fd087,1 -582115961a3d,1 -582f739b8f62,2 -58529a8638d0,2 -586f5c56081e,0 -587146a55885,1 -5879285f9d8d,1 -5889a0c75cac,0 -58a9e0d7f7af,0 -58af2c054ced,0 -58b866484a05,4 -58c12863f33d,0 -58ccba7eec9c,1 -58eb3809f456,0 -58f07741ee3b,0 -5905a9b06a73,2 -594f69b503ad,2 -595446774178,1 -596f4fdb0004,0 -598b8f5b3822,0 -59928f999ae7,0 -599498e9e4bc,0 -5995321563b7,0 -599b89048034,2 -59bd19c1c5bb,0 -59e5212f7139,1 -59ee65760535,2 -59f3f70abddd,2 -59fee5bc3479,4 -5a03fe3ed15c,2 -5a091e8cd95c,1 -5a0fe0ee4301,0 -5a11d21c2828,2 -5a179c123fd8,0 -5a27b9b2a9c1,0 -5a2c27b95c7c,2 -5a36cea278ae,2 -5a444c32cd9a,0 -5a5d3798c357,2 -5a93c0f783c4,0 -5ac7a414560e,0 -5ad3dabeb2cd,0 -5b068765e846,1 -5b0e53f53ef3,1 -5b1c4cefeb24,0 -5b2648ad455e,0 -5b301a6d1ac7,2 -5b32ece9c627,0 -5b3d41626ec5,0 -5b3e7197ac1c,3 -5b47043942f4,0 -5b5b80a3edee,4 -5b644a403e1f,2 -5b72ff04333d,1 -5b76117c4bcb,4 -5b804948e35f,1 -5b994ff78547,0 -5ba156a35ff2,0 -5baed382f062,0 -5bda2ed09e62,4 -5bea250d8bf5,0 -5bf3357a2823,0 -5bf6f2958e53,0 -5c6194562ed2,2 -5c7ab966a3ee,4 -5c817060c0ed,0 -5c8482926a08,2 -5c85d22bd0de,0 -5ca73d28f17f,0 -5ca779ace6e7,0 -5cab3ef4b31c,1 -5cbe88914a72,0 -5cc6dea19614,2 -5cde55f745af,2 -5ce5eeaf757a,0 -5cf9127f251a,2 -5d024177e214,2 -5d3c8c1f57da,0 -5d4e5fd34d91,0 -5d5b5da5f939,0 -5d6239c0fd39,0 -5d74f98d62be,4 -5d9c841eb245,0 -5db2e3a4594a,0 -5db895d3f1fc,0 -5dc23e440de3,2 -5dd2e26fc244,4 -5de4615a5161,0 -5e18af29d812,2 -5e505e25cd3e,0 -5e5275ddee29,0 -5e52c9fe676f,2 -5e7630f8438e,2 -5e7cc6ab4ac4,2 -5e7db41b3bee,4 -5e97cb2b0888,0 -5ea9e447bb62,0 -5ead17e894ae,0 -5eb311bcb5f9,2 -5eb8fb1aad41,0 -5ed6dc419e4d,2 -5efa24b03d5e,1 -5f13e8a07344,3 -5f4a8c074bd5,0 -5f51192841f7,0 -5f6db235c04d,0 -5f70ad48a525,2 -5fcff7280019,0 -6028a575dc27,1 -6061f5b7378d,3 -606daaf0bfc7,0 -6089fa333013,3 -609be3ca5ddf,0 -60aa4e649abf,0 -60e269e3e188,2 -60edda7b4871,0 -60eeae3ba23d,2 -60f15dd68d30,4 -6107a2e9f60e,0 -6110ecb3bb1c,0 -612f2df37a1d,4 -613028ede6a0,4 -613bacb35c05,1 -6155cf375354,0 -6165081b9021,1 -6180920bc224,0 -6181aa9f75f4,3 -6194e0fff071,4 -61a62b1dcc36,0 -61ac9b0dc6b9,2 -61bbc11fe503,4 -61bbe8db6f3a,1 -61c2fbd16e38,2 -61c667663f2f,0 -61d9c88a3a4b,0 -61da799bf0aa,0 -61e301bd3c25,4 -61f403fdb434,4 -62318d514160,4 -624fb7317106,2 -6253f23229b1,3 -628b581aa905,0 -6294b378d09f,0 -6298468d7d75,1 -62ab144d5cee,2 -62b4be2799ca,0 -62b826899151,0 -62cc7ddb53b6,2 -62e6f814c8f5,2 -62ecdc90dd42,2 -6324d77cf926,0 -63363410389a,1 -633fe9dbaf39,0 -6363b360aefb,2 -6377e23928f6,1 -639915f58a2f,0 -63a03880939c,1 -63b4d030b016,4 -63b71347e95d,0 -63c0eafd6aa9,0 -63c3c571b8ee,2 -63c7b0265775,0 -63d217b059b6,2 -63e041a757eb,0 -64678182d8a8,1 -64a13949e879,2 -64ac539f58cb,0 -64b9206afb3f,0 -64bad93fde3f,4 -64c6c6ee0d98,0 -64eb5a79dfdd,1 -64fedbf97473,4 -650104ede84c,0 -6504b703c429,0 -650fbed3fdca,2 -6531070bf03c,2 -653534ded339,2 -655cafb4c932,1 -657859f893d9,2 -658ad9f09f5d,0 -65a3b13ad9a0,0 -65a7fe9482fe,0 -65c958379680,4 -65cf00be6fb4,0 -65dda202653d,0 -65e120143825,4 -65e51e18242b,1 -65e530ee2e79,2 -65e6f1bd9875,0 -65f5d2a6eb7e,0 -65f69234c8a7,0 -6630f8675a97,4 -66366a90d1ef,0 -66375b3c64db,4 -66393d8c60ba,0 -663a923d5398,2 -66460ecab347,0 -664b1f9a2087,4 -6653ad026901,0 -665ce639a331,1 -6666c4f18396,2 -668a319c2d23,0 -668e853258cd,2 -66a0bf258013,4 -66b88a4bc474,0 -66bae1ba227f,2 -66bfec8d6bcd,0 -66cd9c28e636,1 -66d2ca47aa44,2 -6733544ae7a6,2 -6735931000ec,3 -674057ab250c,2 -675de69373f8,0 -6762b2b48ea5,1 -677f087cd697,1 -67844c46bc61,2 -67c03349bb31,2 -67d8f94f04e0,0 -67ed8cc78b97,0 -67f5d89da548,1 -6810410187a0,2 -681c3c115684,2 -682312e82ee3,0 -683023cda6a5,0 -68332fdcaa70,1 -684dd88a0d49,0 -6852f4531591,0 -686ed1dbae20,2 -687759336b0d,3 -6889bc64ab09,2 -68987fb159ab,0 -68ddb15a74de,0 -691eeb59b4cb,0 -692e946b1f85,0 -69591ebb198d,2 -6966abf40b8c,0 -697538183db5,3 -6987804eb464,2 -698d6e422a80,2 -69b3a00927fc,0 -69c4cbb630de,0 -69df7ade0575,2 -69f43381317b,0 -69fff98cb32a,4 -6a244e855d0e,3 -6a2642131e4a,0 -6a2c3f4ef329,0 -6a57a3db3eff,0 -6a905a7202d2,0 -6a91eb157f47,2 -6af071b0ac6e,0 -6b00cb764237,1 -6b07971c3bf6,1 -6b128e648646,3 -6b30767595d8,0 -6b3860e8f64f,0 -6b664ed2a938,0 -6b66b0e86f7e,0 -6b7cf869622a,2 -6b869f37cdf3,2 -6b91e99c9408,0 -6ba5ed791444,2 -6baafa56895c,3 -6bb30ec3231a,0 -6bcce181be65,0 -6bf26b777e3a,0 -6bf2a81a5d91,0 -6c00dd8bf708,0 -6c250a30593b,4 -6c2555a9cae4,2 -6c30dd481717,0 -6c315ad3d07f,2 -6c3589d7ed8d,0 -6c3745a222da,4 -6c4ec95dd8ba,0 -6c6505a0c637,0 -6c6efb6b1358,1 -6c9c902a97de,0 -6cb96a6fb029,0 -6cb98da77e3e,2 -6cbc3dad809c,2 -6ccfdb031184,0 -6cd606dc52e9,4 -6cdd0f985270,1 -6cee2e148520,0 -6cfb7b44ef6f,4 -6cffc6c6851a,0 -6d0c0531083f,3 -6d10709053ae,0 -6d259b5b4c76,4 -6d292ca4c9ad,1 -6d3d1fe6c32a,2 -6d454444f17c,2 -6d4f6c9a8406,0 -6d5a8362dd1e,0 -6d6be4cfc73f,0 -6d6fcf49e515,0 -6d7d26025122,4 -6d9effbcde78,0 -6daef3e5ca22,4 -6dc0281f11e3,0 -6dc07f968794,0 -6dcde47060f9,2 -6de39b94f634,0 -6df8b7b6e837,0 -6dfd80748e72,2 -6e018411ba4a,0 -6e092b306fe1,2 -6e092caa065f,0 -6e0f78e188ff,0 -6e1db8711879,0 -6e3526053de0,0 -6e44f6d04fc9,0 -6e68e742f5bc,2 -6e73acb2cf60,4 -6e861bc3bd7b,0 -6e92b1c5ac8e,3 -6ea07d19b4ce,1 -6efa36d59ada,3 -6f0463c1ff18,2 -6f0e5848d9ce,0 -6f3b62e5b7f5,0 -6f460f9968c7,0 -6f4719c6bb4b,4 -6f4e0538d1e4,2 -6f689fced922,0 -6f923b60934b,4 -6fb656d506b2,3 -6fbaaf8eb67a,0 -6fe4751a3b42,0 -6fe67482bfae,4 -6fe67fd7f5d1,0 -7005be54cab1,1 -702de9dcde32,4 -705f508d1e42,0 -709784f7fcc2,2 -70d0392397de,0 -70d657f8f503,4 -70ed3ec68b94,2 -70f5caf5f305,2 -7102f29e052e,2 -710b05a96e0f,4 -7116128c65ab,1 -711d1480d2e3,2 -7131bf4c9e6f,0 -7179f85bfd6f,0 -71a39c660432,3 -71c1a3cdbe47,1 -71c22da3d6c6,0 -71e4130bf5c8,2 -71e43b4f8ba6,0 -71f6a6e4620a,1 -720b5f62ce80,0 -721214151233,0 -7214fc7cbe03,0 -7247a2c97f71,2 -72595230840c,3 -72606afaf3da,0 -7269a1d84a57,0 -726dff37edc0,0 -7270367410a1,4 -72a867980067,0 -72c31aa48e2c,0 -72d98188648f,4 -731b19a460ad,2 -7335a2d43ada,1 -7347bd23ba80,0 -7347f5133a6a,1 -7350c50667c5,2 -7356dd08b0ae,2 -735836b1ffa6,0 -737ef6226677,0 -73881f55a3ec,1 -73a07e2ea23e,0 -73ba798fee25,0 -73d40ce06a67,0 -73e83a07a16d,2 -73ef3c3dcbe4,0 -74211a2b6dcf,0 -7427dedafccf,1 -7435e9a3e36e,0 -74418f620068,2 -7455e2b5fc57,2 -74898f372d2b,0 -74eee788edee,3 -750e0168399d,0 -75238d945315,0 -7525ebb3434d,3 -7526c59c36d3,0 -7526cf435753,0 -75369248dba0,0 -753b14c27c83,4 -7550966ef777,2 -7569ac24762e,0 -756b0d6488bb,1 -757572337fd0,2 -757e39293591,0 -75a071608ea6,0 -75a4343b12f9,0 -75a7bc945b7d,2 -75c180e04f65,0 -75ed83dbccce,0 -76095c338728,0 -760b6f4c6d82,2 -762d6e5d5068,3 -7635921c5efb,0 -763ad1236efe,0 -76516f828d88,0 -7663aba8d762,2 -767d777ee889,0 -76b950c6ed5e,0 -76bc31e0d3be,0 -76be29bb30b2,1 -76c0c7e1b6cb,2 -76cab26493f1,0 -76cb010f7aa0,0 -76cfe8967f7d,2 -76df141d966b,0 -76e589911303,1 -76e5b50f95a7,0 -76e6a9238570,2 -76f3473df8a6,0 -76fe19ff64fb,2 -772af553b8b7,3 -7743f4e04a6d,2 -77543f66a84a,2 -77a1f1398fdb,0 -77a9538b8362,1 -77ab222bf85c,0 -77acc2cafee1,0 -77b7b71ebcc3,0 -77baa08a1345,2 -77e15f213b04,0 -77e7c7a160c8,2 -77f69c7ff324,2 -780be525036d,0 -780f9c237c56,0 -780f9daaa24b,0 -7828dd083cdc,0 -7831ce1d895e,0 -784d6d302f98,0 -785777558f05,4 -7877be80901c,2 -788ddb0b70b7,3 -78937523f7a8,0 -789434d095d1,4 -789c60cba801,0 -789f0ec1eab8,0 -78a577c3e0bf,2 -78b3f819dcc5,4 -78bcdffb8785,1 -78d53c82a23e,2 -79059d0592c4,2 -79540be95177,2 -799214e8b07c,0 -799cb4c816ae,2 -79ade634c633,0 -79be2ff796bf,2 -79cbae28d8b2,0 -79ce83c07588,1 -79d44db3da2d,4 -7a06ea127e02,0 -7a0cff4c24b2,2 -7a12f49e29df,0 -7a238a1d3cf3,4 -7a39c91416e2,0 -7a3ea1779b13,1 -7a42443ed106,0 -7a46cfa69bae,0 -7a6495a39d87,0 -7a6e384a0846,3 -7a77c3eb468c,0 -7a9f45fdf29b,0 -7aabd768abff,0 -7ad0c4975890,0 -7adfb8fc0621,0 -7ae69d22075a,1 -7af4d8704032,0 -7b20210d9120,1 -7b211d8bd249,4 -7b29e3783919,3 -7b49041cbf17,3 -7b691d9ced34,0 -7b87b0015282,0 -7b8c78b41c0d,2 -7b9d519cbd66,0 -7ba6b23c4b46,0 -7bc00e58d419,0 -7bc2e0fa3f72,2 -7bc4dd99eee5,4 -7bda86d95c5b,2 -7be1b9aa78aa,0 -7bf981d9c7fe,1 -7c2e852171c0,0 -7c2f820a6425,2 -7c3747c0b2c3,0 -7c52fe73e748,2 -7c629b491d1a,4 -7c6594b50690,0 -7c90ab025331,4 -7cc4b7aabe04,4 -7ccb267fd394,1 -7ccf9d25dc48,0 -7ce671f952be,0 -7d0a871c45db,0 -7d11dbc1e738,0 -7d1b40fdbd86,2 -7d1da90d3ca9,2 -7d261f986bef,2 -7d37a2939f12,2 -7d3835e4e63a,3 -7d48f8cdfb69,0 -7d626a7ffe76,4 -7d8f67cadc29,2 -7d94a000c2d0,0 -7da558d92100,0 -7ddcfcea7369,0 -7dee6bf8b9c1,2 -7e0598cc88a0,4 -7e160c8b611e,3 -7e4019ac7f5a,4 -7e5a76c4e103,0 -7e6e90a93aa5,2 -7e70344b0c25,0 -7e77b61e1639,0 -7e9081e95bf6,0 -7e9458de5707,2 -7e980424868e,0 -7ea756985353,1 -7ec0e61a7e29,0 -7ec1ffe8220b,2 -7ed4128b2a4e,0 -7ee6de71c140,0 -7eeb191ad06b,0 -7eee3d1f1268,0 -7ef5ff774a48,1 -7efc91af4ae6,4 -7f0ffeb0a333,0 -7f1f3269f546,0 -7f2123bc89a3,0 -7f2cce721e19,0 -7f39c36469b5,0 -7f43becd3e83,0 -7f60f2a083d3,1 -7f6690fa390a,0 -7f6ce40f306b,2 -7f84284598f5,2 -7fc3a8bb40de,0 -7fdb177b8f7d,0 -7fe7309d0b4f,0 -8000a6b97a84,2 -8010c931321f,0 -803120c5d287,2 -807135cbc438,2 -80964d8e0863,4 -80a02014b418,1 -80b5697f2a5e,0 -80b5a9519aec,2 -80c67efc8101,0 -80ca40196225,3 -80d24897669f,1 -80dbeb0fdc75,0 -80e6e425f966,0 -80e7cc0a0649,3 -80ed04a84a16,0 -80f6b30ece8c,0 -80feb1f7ca5e,2 -810d3779abd9,3 -810ed108f5b7,0 -8114d6a160df,1 -812d5adafaf2,2 -81371b0c01ad,0 -81704925f759,0 -8185ce1cdcef,0 -81914ceb4e74,0 -8191ae701985,0 -81b0a2651c45,2 -81bc03e2ff2b,2 -81d79d53ed7b,0 -8201cab8322d,3 -82088c6734e6,0 -821789e9053f,1 -8241e43408a8,0 -8273fdb4405e,1 -82910bba4753,2 -82ac8463fadd,1 -82bb8a01935f,4 -82d364726a58,0 -82deb07a6618,2 -82e5bc01f8a4,0 -82f2784ead76,2 -83038ca49b6d,0 -830e297965a1,0 -8329e80c10ac,0 -8344c783da65,0 -83517eaeccb9,0 -835b9f6e12ba,0 -837acf120946,0 -838b3e4d0bb4,0 -838c87c63422,4 -83a63c4a3e4a,0 -83b61051737f,2 -83d6e40c869f,2 -83d81ba5959c,0 -83df53d58f28,0 -83e529e95b0e,1 -83fda7c0500b,0 -840527bc6628,2 -840a06a9c690,0 -8421107255ae,2 -842d697884f6,2 -8433a032b96c,0 -8446826853d0,2 -8448af27ba07,0 -847b04287c9c,0 -848e66b9e199,0 -849a91e9ab28,1 -84a72e15b23c,1 -84b472c49cfa,0 -84b4da14bc23,0 -84b79243e430,0 -84b88e8d3bca,0 -84c663f39632,4 -84e8c62165b5,2 -851e40a21f81,0 -8543a801dce0,2 -855f0a5442b6,2 -8564b7aa3c1a,0 -857002ed4e49,2 -857230f64a2e,4 -8596a24a14bd,4 -85cbb84ac8e0,4 -85cc6d636898,2 -85f99e7e4052,0 -85fce24084da,2 -86410aa13b3e,0 -8650d32f4a9e,0 -8660e1864665,0 -86722fcd802c,2 -8676427e4625,1 -8688f3d0fcaf,3 -8693ab1fd2be,0 -869bbd3170cc,2 -86b3a7929bec,2 -86baef833ae0,2 -86d58f850a0c,0 -86d6808f0609,3 -86e7f98f73f1,2 -86fbac86ed3e,2 -870f433e8f37,0 -870fbe6eaa68,0 -8714d17bb6da,1 -87295c5fa1cc,0 -873dcc0b468f,4 -873fe0404d6e,2 -874f8c1929f6,0 -875a2fc5fe23,4 -875d2ffcbf47,0 -876deb29f000,0 -876e1dd12d38,2 -87774aafe068,4 -8785b71238d8,4 -878a3a097436,2 -878e356c8fc9,0 -879744b9dc65,2 -87a9f4d20f07,0 -87b1938994b5,2 -87b671c6d4c5,0 -87d46b1cc4e9,0 -880edb2cdb69,0 -881ec6186e68,0 -882a71de424e,2 -883c6a184f16,0 -883ddb650967,0 -8846b09384a4,0 -885fa5fc5da8,0 -8860c7b11530,2 -8871e6a26596,2 -887c26fc0e1f,4 -88e4399d207c,0 -88e5051f65bd,0 -8906c9ed54a2,0 -891329021e12,0 -891392c9683c,2 -894a37fc3738,0 -8958a4d17b7e,3 -895fe2bfc5b6,0 -896ad584a841,0 -898f0bc8acfa,0 -89b044cbaf85,2 -89b725411cee,2 -89d2a7403a06,2 -89d9c071a56f,1 -89ed6a0dd53f,1 -89ee1fa16f90,2 -89fc080f7e83,2 -8a01daa423f7,1 -8a234d68b27e,3 -8a25a080f28f,1 -8a3eb86ae4bd,0 -8a482c024fc2,0 -8a67f1efa315,2 -8a759f94613a,2 -8a7765e785fb,0 -8a81f62320d6,0 -8a87dd2a784e,0 -8a8a251770cd,0 -8a9bef2fbd4e,3 -8aa3c4681542,0 -8aab201c0691,2 -8ab3faa3701f,0 -8ab8d9b3ce3f,2 -8ac0c44bbf24,4 -8acdf12f412a,0 -8acffaf1f4b9,2 -8ae049175db6,4 -8af50c9d0a86,0 -8af6a4e5396f,4 -8b079e79035f,0 -8b26d3cd61e8,2 -8b568d47a1fd,0 -8b58f9a338e8,0 -8b76c3c5cb3e,3 -8b8fe3fc8950,0 -8bad12d70368,4 -8bbd7835e9aa,1 -8bc6716c2238,1 -8bdb891661a8,2 -8be6629a6039,0 -8bed09514c3b,4 -8bf05909e1e1,0 -8bf2d925dc0c,0 -8c0d05233238,3 -8c29a76fa08c,0 -8c2f0f04e1ed,1 -8c4ceddeb1c6,0 -8c7c26c52a6c,4 -8c84e96d9b01,0 -8c87bd748996,2 -8cb6b0efaaac,2 -8cb6b5b2f19c,2 -8ceff4c4c860,0 -8d13c46e7d75,0 -8d3d67661620,2 -8d4d14a4ab07,0 -8d4ff745a409,0 -8d62ba9cb22a,2 -8d7bb0649a02,2 -8d8aca52c07b,4 -8d9516ea3587,0 -8dafa62f9322,0 -8db2ce991101,4 -8dba09a4e5ed,2 -8dc22e65c06f,1 -8dfa629ca74e,2 -8dfff47b06b7,2 -8e20b8fac7c3,2 -8e2a3978c244,0 -8e3b79e1f1f7,2 -8e4a354e3da2,0 -8e63fc4ab532,2 -8e67f2d7e0ee,0 -8e6df9eedcd8,0 -8e76054f0831,0 -8e7981855125,0 -8ead17dfb6a6,0 -8ead8f37423c,0 -8eb3337a54e9,2 -8ed586c43023,0 -8ee50c26fc13,0 -8eeac97f02f0,4 -8ef2eb8c51c4,1 -8f06ca4642bd,0 -8f10e41a2f02,0 -8f14bca04b47,0 -8f1e7433a95d,2 -8f2996b8d855,1 -8f318a978844,4 -8f9819752ca0,0 -8fbb2ca39911,0 -8fc09fecd22f,1 -8fd7ad26e691,4 -8ff2733f6aef,2 -8ff863f8874f,1 -8ffa608170d3,0 -901a3552fe26,0 -902dc5a91a3f,0 -9033f1493da1,2 -9039cbfcbb2f,0 -9041eb43456e,2 -904b03ad5594,0 -905cc86bf100,4 -906d02fb822d,0 -907aaff827e5,2 -9095d43fb132,0 -90960ddf4d14,0 -90a786abe58e,0 -90a9a41eec6d,0 -90b8bf342032,3 -90bde2ff8953,0 -90c982cc2d96,1 -910bfd38e2f5,3 -9122b31414d3,0 -912fbe06407e,0 -913490237ad4,3 -913b1890ed1e,2 -916915f01e17,0 -916ec976ff30,3 -917f76f360b6,2 -91a88d3b0358,2 -91b6ebaa3678,3 -91b7a4179ecf,0 -91cbe1c775ef,2 -91cf56d3d1af,3 -91e2c2890c9f,2 -91e82fe4e434,0 -91e8af9ceee9,2 -91f3c4c1e72b,0 -921433215353,2 -922586d86cd8,0 -9232dc06cfdc,0 -92587e494d51,0 -9274e75dc4d5,0 -9287e57326d0,0 -92889b863ae6,0 -929cd3867815,2 -92b0d27fc0ec,2 -92d8a7c8e718,2 -92d9e9f08709,1 -92e3d608fd3c,0 -92f313287a29,2 -92fcf50b3562,0 -930fee99213a,0 -932181b93b2f,2 -934104859e68,0 -93421787f520,0 -936299166bea,0 -937bc1b924b1,0 -93802d1e3c41,0 -93a1b984de84,0 -93be637084a2,1 -93d6d20a5ee3,0 -94076a9fb9b5,0 -94111ed3d276,1 -94145d1f42cf,0 -941d874c8afb,0 -942f544c4e15,0 -94372043d55b,1 -944a233fbf8e,1 -946545473380,0 -949710bead24,0 -94a67ec0714f,2 -94b1d8ad35ec,1 -94b9ccc73bb9,0 -94dcb491143f,2 -94ef1d14597f,4 -94f9ecf4b8d2,0 -9519a590985d,0 -956765d5f46d,0 -9568eb7e9c08,2 -958c1fa044ba,0 -959bb2d01091,0 -959dc602febc,2 -95a4cc805c7b,1 -95e732e043a1,4 -962c0fc85e13,0 -962cf85e4f6d,2 -966c07831334,0 -96793edb1003,0 -9688c6ef5dc5,0 -969f92a390db,0 -96a9706b8534,1 -96b5474ae604,0 -96c3e3db68bc,2 -96c699221180,0 -96ce10a1dbd7,0 -96d48b073f18,2 -96ea316ed0ab,0 -971bb98ab935,0 -973b0facfa9b,0 -974c7d7b9c64,0 -975252e325e3,2 -976082127e2a,0 -977e1ca77653,1 -9782c0489eca,1 -9785805af1b8,2 -97a235367f9d,0 -97a5ad7548b7,2 -97bf61736b86,2 -97c6cb55866d,0 -97d02a9b94f7,0 -97da093947e8,4 -97f290d31813,0 -97fdee242fea,0 -98104c8c67eb,2 -98277aeb96a7,0 -9837048b85dc,2 -983c98354e9c,0 -98441214557f,0 -9858cc2ae073,0 -9859e2a6cc24,4 -9870ce41cac4,0 -9878db94d9f3,3 -98d41bce73a8,0 -98e44127872f,0 -98e8adcf085c,2 -98f48850ebce,2 -98f7136d2e7a,2 -98fbe56dcc2c,1 -9904939ab83d,2 -9910c827e2fe,0 -99132193eaa0,1 -991a0b7a8c87,0 -99240ee00485,0 -992599744a23,0 -992b9a07b25f,0 -996f57c86ba5,3 -996f9bba4ef0,0 -9985375d709f,0 -999115d9386b,2 -999ad827ed35,0 -99c626e58464,0 -99c6a123ed6a,0 -99e8bf998285,2 -99ecdb41d5e7,1 -9a1029536d78,0 -9a159d4674cd,0 -9a28d4e8aef0,2 -9a3109657ac1,1 -9a326446c431,0 -9a3c03a5ad0f,2 -9a496b1e20f9,4 -9a4f370d341b,2 -9a56cfb980ec,0 -9a78c6a7b1c2,2 -9a7bd084395e,2 -9a94e0316ee3,3 -9a9b21215c55,2 -9ab18a4a957f,0 -9ac2e3e9fca5,0 -9ac41b9a809e,0 -9ad92f1c1542,2 -9ae54843c69a,0 -9b093fe95d6b,3 -9b0eb9f41da4,2 -9b32e8ef0ca0,2 -9b418ce42c13,2 -9b4fc15df3c8,0 -9b57e43b44e7,0 -9b70f84400af,0 -9b7b6e4db1d5,2 -9b95d6203406,2 -9ba469af2980,0 -9bafbbd152d2,3 -9bbb6c455913,0 -9bd008aab548,0 -9be0683649ff,0 -9be71d6d7e59,0 -9bf060db8376,3 -9c088d2d1559,2 -9c14ce27cbfc,0 -9c514d2d5b3f,0 -9c52b87d01f1,3 -9c5dd3612f0c,2 -9c6512166557,0 -9c72ed6befa0,4 -9c893e16c055,0 -9cc6b1f9bcbd,4 -9ce46d400cd6,0 -9cedf5c7016b,2 -9cf7c1349673,0 -9d1feed37610,0 -9d62478042b6,0 -9d74428188bb,2 -9d75de31f1b8,0 -9d98a0b585f2,2 -9d9bfefa809c,2 -9da74370835a,2 -9dab2e6ba44b,2 -9de9421f17e3,0 -9df31421cdd2,2 -9e2058917304,0 -9e2a8135f471,0 -9e2ba2b979f1,0 -9e3510963315,4 -9e5737f771c3,0 -9e5ec293267c,2 -9e7a63b2fc6a,0 -9e99ae6ee7af,0 -9eaac43744f5,2 -9eaf735cf01f,1 -9ed666e982cd,1 -9ed6c2b25767,0 -9f1b14dfa14c,0 -9f1efb799b7b,2 -9f285b3e57ed,0 -9f37c98b8187,3 -9f4132bd6ed6,2 -9f436886e056,2 -9f5a8665cf2e,2 -9f8112c710be,0 -9f935fb38440,0 -9fa02dfb5553,0 -9faad91b6578,2 -9fab29e69a6b,4 -9fefe2b44795,3 -a00b4cb250a7,1 -a01024054596,1 -a015ce4f51ad,2 -a01c590c444f,2 -a0267206d51e,2 -a02dfd67a925,0 -a0445785e2f7,0 -a04fb36db784,2 -a06a63d866b2,0 -a06b353e7bed,0 -a06e41bd2634,2 -a06e5ac695ce,0 -a07d571bf7ba,0 -a07d9a5045cb,0 -a07efb1ecfc0,0 -a08a0133754a,0 -a0a0cd8af5a6,2 -a0adbe677508,0 -a0b7ad98df57,0 -a0cd7bffdaa0,4 -a0d04a19cf40,2 -a0e635689259,0 -a0fd94e2ad76,0 -a11bf2edd470,4 -a11c62cb3f86,0 -a125377fb985,2 -a12ca80bb8c7,0 -a14bbd9a583e,3 -a14fcf84bfe1,3 -a150ff5dfe07,2 -a15470303941,2 -a15590a7d774,2 -a15652b22ab8,2 -a1822dd8d05d,0 -a182b5b191de,4 -a1872f9c0cba,0 -a188c60b93fb,0 -a19507501b40,2 -a19ecd0a706e,1 -a1b12fdce6c3,2 -a1b28bcbce00,0 -a1e236fbc863,0 -a1eb88562239,0 -a1edf0e66592,0 -a1faeb4d5f10,0 -a2163f0c2af5,0 -a21b37719f9b,2 -a247961a5cd9,0 -a2696f444ecb,1 -a26f50218b84,0 -a2811f512c1c,0 -a28bfb772f50,1 -a2ad3da4c7d6,2 -a2b97d98f130,0 -a2b995b81692,0 -a2d349f567a6,2 -a2ddabee14e9,4 -a2dff8dbc9f8,0 -a30a143a53a3,0 -a3132c8828e4,0 -a32886cb31ab,1 -a32b5ce3d48a,4 -a3475dc3ac80,2 -a34fc5376669,0 -a3706ce27869,2 -a3802934bad7,2 -a384e688e228,0 -a386ec9aabde,2 -a3957df90a78,2 -a3ad6c2db6f1,1 -a3b2e93d058b,2 -a3bd2e034614,0 -a3d2a0c4cd17,1 -a3fcf42ff56d,4 -a4012932e18d,0 -a419fcb2dfb5,0 -a4359815f152,2 -a44345b27804,0 -a443c4fd489c,1 -a45c30da0c72,0 -a45d77edf8d9,2 -a47432cd41e7,1 -a476fd984005,2 -a47878630dc2,2 -a484bdf85b4c,0 -a49b0b4484ea,2 -a4b8de38eac1,3 -a4d41c495666,2 -a4d4b69f7404,3 -a4ee03ecff60,0 -a505981d1cab,2 -a528be013a04,0 -a53d6d2472a6,0 -a56230242a95,2 -a56729de89e9,2 -a5a2a7003d60,1 -a5bb85afc6e8,0 -a5c9a8c726b2,4 -a61723fc38c2,0 -a627eb8c08c5,0 -a62e995f167c,0 -a62ea0043aa7,2 -a6356a3c5d11,0 -a64273801bde,2 -a646c084928c,0 -a654b25124c3,0 -a664d2055886,2 -a66c3165876f,2 -a673193cd5a9,0 -a6731dd737af,0 -a688f20f8895,2 -a6b6d27c1b32,0 -a6c9e96a10d7,2 -a6d45de20e4d,4 -a70d0f12a641,0 -a721efb1e049,2 -a73c3d516c59,0 -a73d012c4c38,0 -a75bab2463d4,1 -a76132e79688,0 -a763661f98a5,3 -a7673ac44509,0 -a76b69e443ce,4 -a77dbec966d4,1 -a77eb914b383,0 -a790a3b36390,2 -a7b03e58a6e1,0 -a7b0d0c51731,2 -a7b7dc8788b9,2 -a7c10ca6c117,0 -a7ec056502e7,1 -a804cef3e51f,2 -a80dab8eddf4,3 -a81b06f50612,4 -a821b6ecef33,0 -a8263d248523,0 -a82a12ad3fb1,0 -a8582e346df0,1 -a85cda5f725d,0 -a86128b601a7,0 -a8652b2de23f,2 -a86c6283fd78,2 -a879c3569552,2 -a87f53bc984a,2 -a88365134c3c,0 -a8854768549f,0 -a88f68b0b114,2 -a8a6588c8eb7,0 -a8aed92940fb,0 -a8b3c0961d42,0 -a8b637abd96b,0 -a8c54e2a4b79,1 -a8c950a99107,1 -a8c9fcdbc0be,0 -a8dea22ef903,0 -a8e08e7fe016,2 -a8e88d4891c4,3 -a8eb35b3bcd2,2 -a93f1ea3ff4a,2 -a94da3d3b5c0,0 -a95858e052d6,1 -a95d9d61ddd4,0 -a963ac561580,0 -a96ff96bbae5,0 -a987aa7aac37,0 -a9a28c37c8c4,2 -a9a3225cf4b5,0 -a9b3177f01c0,0 -a9bc2f892cb3,0 -a9c7b83caf81,2 -a9d0c900b6a9,2 -a9dc80cba9a4,0 -a9e3d186cd1b,0 -a9e984b57556,3 -aa0afc41ed19,2 -aa10a4b2e709,0 -aa31bc6b8f4d,2 -aa4407aab872,0 -aa5ce75edcf5,2 -aa60813e1a8d,0 -aa6242f9e08c,0 -aa6673241154,4 -aa841de1ee82,2 -aa8a1e814811,0 -aa94cc4bfd84,0 -aa9b8f05f4bf,2 -aa9cfe639ef1,2 -aaaadb174012,0 -aabd867043cf,0 -aad0c0ee9268,2 -aae8f9f3ef8c,3 -aafb0c944f14,0 -aafe980edd0c,0 -ab03d50bba2f,0 -ab1c20a94f3f,4 -ab32db41c409,0 -ab3c505b624f,0 -ab50123abadb,2 -ab653b8554c0,0 -ab686895533e,0 -ab724603ee93,0 -ab78a66dee6a,0 -ab7991df166b,0 -ab88081e5654,0 -aba3063c5413,3 -ababe19ed448,1 -abbb8791785e,0 -abdb365cacbc,1 -abe940882578,0 -abf09c44d5f4,2 -abf0f56c6f12,2 -ac0a48ccbf70,0 -ac1667fac512,0 -ac17cc18a994,0 -ac2c814949f9,2 -ac5b5dddf91b,2 -ac720570dd0f,2 -ac81fc200162,0 -aca88f566228,2 -acc9f29538c4,2 -ace2281f00c4,0 -ace287a5c991,0 -acf976efd7ce,0 -ad029ba7fa8b,0 -ad12cde115ab,0 -ad1aa75d5630,0 -ad1f7445b1a8,1 -ad20080452de,0 -ad2f0b9d059c,3 -ad312ca98202,0 -ad3fc5076852,1 -ad570b850a4f,2 -ad6b07d5c338,0 -ad93d88c87ea,0 -ad944bd56bb6,0 -adb56cecafaf,3 -add1d681d712,2 -addf66a50f42,0 -ae1344610ebe,2 -ae20112e7a1e,0 -ae2c3f6312ef,0 -ae2e888905ba,0 -ae49cc60f251,0 -ae57c8630249,0 -ae58ccb5905e,0 -ae5d31979f19,0 -ae61e19fb766,0 -ae8424cdb029,2 -ae8472f8d310,1 -ae94ce412de9,0 -ae975c43bd8b,0 -aea59ebec445,3 -aeab0a63bcaf,0 -aeb6f4fd2eed,0 -aebe87a423c8,0 -aec51513cf45,0 -aeccef0bdc26,0 -aed4e743c230,2 -aeed1f251ceb,4 -aef9016557ca,2 -af133a85ea0c,1 -af345c68e836,0 -af3b0115aad1,3 -af5a0bc4e1fa,0 -af6166d57f13,0 -af6a1508cd95,0 -af7a36454670,0 -af828dab3ffc,2 -af831c158744,2 -af87d48ffe01,0 -af8aa32beee4,2 -afc345cc9145,0 -afc744fad65e,0 -b019a49787c1,3 -b033ab4fb723,2 -b05922e7abd3,0 -b0619ca93a5f,0 -b06dabab4f09,2 -b07bc463b718,1 -b085caa513a8,0 -b086c7cd3868,0 -b09101adb478,0 -b0acd3593310,0 -b0b3b16fc305,0 -b0c9a492e068,0 -b0cc9f8d06e4,2 -b0d35981708b,2 -b0d6417bad3e,2 -b0eeae01b8ab,2 -b0f0fa677d5f,0 -b0f8613305a3,0 -b10fca20c885,0 -b1197f2cc9b3,1 -b11dcdcbc8c8,0 -b13d72ceea26,2 -b16dd4483ca5,0 -b17f0b81dab3,1 -b187b3c93afb,2 -b191ba0a2b12,3 -b1b3e7d0a5f3,4 -b1c6f0997e27,0 -b1f4122fd36a,2 -b200c23b299b,0 -b21abe5d9722,0 -b22354b5f94b,1 -b22cc1bf0b8a,0 -b2748ac28fc1,2 -b294927b14b0,0 -b2aaa81cc8f0,2 -b2b79b37d314,0 -b2b7ccd34cbd,0 -b2ffa3e18559,3 -b310bd564329,3 -b351ae99413a,0 -b35cad8fe2d7,0 -b376def52ccc,2 -b37aae3c8fe1,4 -b3819a805dca,4 -b3a994760537,0 -b3c0c3330278,2 -b3d12069e1c5,2 -b3d135bd3bb5,3 -b3f31c371e59,0 -b402b18d99a5,2 -b402daa0864c,2 -b43440c6ebe4,0 -b460ca9fa26f,0 -b468ebf5cb11,2 -b46b09a45f39,0 -b498b84d383f,2 -b49b2fac2514,4 -b4b04d81acbb,0 -b4e15102cd7a,0 -b4f41b5bf0ef,1 -b50b30aa6e6c,1 -b5204c0decc7,0 -b532dedd928c,0 -b549af91bd30,0 -b553e7909535,0 -b55d2ddb3e75,4 -b56340f472d2,1 -b574d229ec4c,2 -b576c5269ad1,1 -b5834ee64541,3 -b598bc9753c2,0 -b5a3ca5c0a80,0 -b5b913358b32,0 -b5bf7b84fc66,0 -b5c80d0ed0ff,2 -b5e6ae31493c,0 -b60dbf9f0744,2 -b6304c545f95,2 -b640e3bdff75,1 -b64e1eef3d63,0 -b65ff67743b2,2 -b665041e1633,2 -b66f23ffa730,0 -b67ae80f7eba,0 -b69c224edd6e,0 -b6a0e348a01e,1 -b6bf847fbcb2,0 -b6bfe9db60e5,3 -b6d9974443ce,0 -b6fd109b1bc9,0 -b70cb31b9abb,4 -b70e7c26f51e,0 -b71428739d4e,1 -b7278b4f2448,1 -b72a86d61959,0 -b72f59b85f7c,0 -b73d0bcd3d33,0 -b746a6681ba9,2 -b74de20d73de,0 -b759cbef90c5,0 -b762c29cf2f3,2 -b77b88926843,0 -b77b8a1f09f1,4 -b7983cb3f270,0 -b7a1bb106051,0 -b7aca95b97b9,0 -b7bd4a6627b6,0 -b7ce561a7328,0 -b7e0f95353f2,3 -b7f0bc7d399e,0 -b8297a2291f5,0 -b82d5f1f1145,2 -b82dfa63a75f,0 -b835b6e31a59,0 -b83a6eca125f,2 -b842b43cb7fb,0 -b86fb2d5be1a,0 -b87f9c59748b,4 -b89938407ee6,2 -b8ac328009e0,2 -b8dab47a260e,0 -b8e20c076b03,0 -b8e9a8f4617d,0 -b8ebedd382de,1 -b8f1b30877db,2 -b8fb9f55cd6d,2 -b90bc89ce8d8,4 -b9127e38d9b9,2 -b91ef82e723a,2 -b927a9238434,2 -b92eacd1392a,0 -b94c58d063bf,1 -b9519abce0c1,0 -b95d4dd8e5e2,2 -b960142a8de7,3 -b963a11638f2,0 -b96b518596b3,4 -b98f77098b9d,2 -b99794a0beed,2 -b99afe7137fb,4 -b99c825b93c5,2 -b9b6ee2b9453,2 -b9b99dad668d,1 -b9bc81fcb075,0 -b9c7c5182075,0 -b9d0b83d70c3,0 -b9fe7da14a32,0 -ba0107fb1bfd,0 -ba08cee68c71,4 -ba25f947f4ec,2 -ba2624883599,2 -ba2ea9182090,0 -ba4d2c4b3039,4 -ba4e62c11cc0,0 -ba735b286d62,4 -baaca2f7e1f0,0 -bab776139279,0 -bac1744955c2,0 -bacfa2b8e706,0 -bacfb1029f6b,1 -badb5ff8d3c7,0 -bb08949dd70a,0 -bb11db08584a,1 -bb2f89488ecd,0 -bb45257258cc,1 -bb5083fae98f,3 -bb733062f494,2 -bb752b179751,0 -bb783d8e496f,1 -bb7e0a2544cd,3 -bb85097857fa,0 -bb9a3d835a94,1 -bba38f2294a3,4 -bc23f74e14dd,2 -bc34ed91c9bc,4 -bc34f52c37c7,0 -bc73ce76ec43,1 -bc7bf19b84e3,0 -bc8c6a778cde,0 -bc92a61a1f9c,0 -bca2bdc15fc5,2 -bcb0498ed2c1,0 -bcc762618e7d,2 -bcd503c726ba,4 -bcdc8db5423b,2 -bd06028eb7dd,0 -bd269a1f0e4d,1 -bd34a0639575,0 -bd375ba756b1,0 -bd500a73beae,0 -bd5013540a13,4 -bd9904495ccd,4 -bda7ff3b1562,2 -bda8c973b09d,2 -bda91b76095b,0 -bdb98063fe84,2 -bdc6c60e9133,0 -bde1063a5dd7,0 -bdf47b9f10c4,0 -bdff5d8bddf8,4 -be161517d3ac,2 -be197b663520,0 -be21d8b60e2a,2 -be3a7d9e981e,0 -be521870a0ea,0 -be68322c7223,2 -be6cbf6e5b10,0 -be7bc89f5fec,2 -be7f791a7877,0 -be8697eb2078,0 -beb00fa6e7c9,0 -beb2ad14fd2d,0 -bebb3f167654,1 -bebfbd907cac,0 -bec0acd539b2,3 -bed8296c8dfe,0 -beeca5f14618,0 -bf18ff30a8f6,1 -bf1b7e21e774,2 -bf6cbccacf39,0 -bf7047dc683c,2 -bf7221a016b5,0 -bf7b4eae7ad0,0 -bf8092e4001d,3 -bf811911acf9,0 -bf87aedf2489,0 -bf9cba745efc,2 -bfa30ebf63a8,0 -bfaa0080ab61,2 -bfb578c0e8d8,0 -bfd5c0e55420,2 -bfda2fd0533a,2 -bfdee9be1f1d,4 -bfe467b7e997,2 -bfefa7344e7d,4 -bff51afc76d4,0 -bffca6eeb2bf,0 -c013e869acce,0 -c01eae4b4939,4 -c0202976c670,2 -c027e5482e8c,1 -c05b7b4c22fe,2 -c06024f05a16,0 -c096131ad065,0 -c0968d41eb93,1 -c0a0828e01b4,3 -c0a117de7d0a,0 -c0e15e8e2b46,1 -c0e509786f7f,4 -c0f15fe3b4b7,1 -c102db7634d8,1 -c12e9ca420a5,0 -c1437a7a52c9,0 -c1799a6f5c65,4 -c1819db0aece,0 -c1896142a20a,4 -c18a006f7f1d,0 -c1c8550508e0,2 -c1e6fa1ad314,1 -c1ebe785503a,1 -c21eb81de9fc,0 -c23ff6dcf15e,0 -c24bcf7a1bc4,0 -c252da9b41d8,2 -c25e02b39c01,0 -c261b1aaa828,2 -c26f98f58350,0 -c280730cc211,2 -c2a58b2cfd0b,0 -c2d2b4f536da,2 -c2f3281cf528,0 -c31651ea04c6,3 -c334f8688b77,0 -c365c598ad4e,0 -c373b73a80c8,0 -c3789c1dab96,0 -c38dec54a9f7,0 -c3a82acb7d7a,3 -c3aa424eff9a,0 -c3acf47700ea,2 -c3b15bf9b4bc,0 -c3c8fdda50c0,0 -c3cd0200df79,3 -c3d12a23f451,4 -c3e02d4a1798,2 -c406325360b1,2 -c40976189f22,1 -c446985355f1,0 -c48ae5da188e,2 -c4a8f2fcf6e8,1 -c4aef0d88d1b,0 -c4e8b1ec8893,2 -c52bb7343387,2 -c5431b81cbc9,2 -c546670d9684,0 -c561bcd519e9,2 -c56293f53191,0 -c568e5245ea5,2 -c56e65f74187,1 -c57c164bca05,0 -c58971bcebb2,0 -c58e5c0c5b33,0 -c597ef460944,0 -c5a0e84e955d,0 -c5a6f432a1ec,0 -c5a9ebef1517,3 -c5ad60521f8c,2 -c5b58cc992af,0 -c5ba9e455d5e,3 -c5bec7f1e5f3,0 -c5e238aa18be,4 -c613db1cab27,2 -c6229222bf22,0 -c62585bd68fb,4 -c62cef02efa2,0 -c639d837f5e4,0 -c64c0966b4cf,0 -c67117c6ab3b,3 -c68dfa021d62,2 -c6916bc42016,0 -c6a145742708,4 -c6a2975228af,2 -c6a8f8f998a2,0 -c6c2bad91f23,2 -c6d4e4a3bd4c,0 -c6e1e9fbf39b,2 -c6f5b5b5be41,0 -c704bd669f36,0 -c70d09370109,2 -c739ff9580d3,1 -c73c5f6ef664,2 -c755a0c4edcc,0 -c76664770c07,3 -c7b622ec8104,1 -c7c0470bcf87,2 -c7c3d363bc86,0 -c7d0deb71576,0 -c7e827fc7f41,2 -c80b0f27541a,0 -c80f79579fed,2 -c81c6911f5e0,0 -c85b79d70079,0 -c87493ed320c,2 -c8823cdaf7fa,2 -c8905b8d5cf1,2 -c8a3eb9a5b52,2 -c8d2d32f7f29,4 -c8fc0df22999,1 -c90c6b94cf40,0 -c947bb6cf9f6,0 -c9485c38fdd5,1 -c94f37085d0f,0 -c96f743915b5,1 -c97472ef2c66,0 -c98f623d08d1,0 -c9c563864ab1,0 -c9d42d7534e0,2 -c9e697117f3f,0 -c9ea9d5eab65,3 -c9f0dc2c8b43,2 -ca05f7e7801b,0 -ca0f1a17c8e5,2 -ca1036496659,1 -ca25745942b0,1 -ca2b54b95ade,0 -ca30a97e9d13,1 -ca360bec5851,2 -ca63fe4f4b52,1 -ca6842bfcbc9,1 -ca7140ecf389,1 -ca7570c5925c,2 -ca7f5caddf96,2 -ca891d37a43c,2 -ca9c912ebad7,2 -cab3dfa7962d,1 -cac40227d3b2,2 -cac80797770f,2 -cad5b1a82e60,0 -cadde4030858,0 -cae33655ca00,0 -cae51154e1ce,1 -caec68f11c86,2 -cb02bb47fdc5,0 -cb0cc98d7e35,0 -cb2201c226d6,0 -cb28adab4e8a,0 -cb2f3c5d71a7,1 -cb39761f0712,0 -cb547e723a16,4 -cb602182cde3,2 -cb68fce07789,0 -cb75210abebe,2 -cbc23af521f3,0 -cbc2e57447c2,2 -cbd0870aa933,4 -cbe633765ea7,0 -cbf0394039f8,2 -cc12453ea915,1 -cc1eebed9276,2 -cc3d2e961768,4 -cc671a73e1cb,0 -cc839823755b,2 -cc9270f06b65,1 -cc964bf04dbc,0 -cca626a0e19a,2 -ccd34029493d,2 -ccd6dcb2f568,0 -ccea49708830,0 -cd01672507c9,0 -cd01f4f83336,0 -cd1c98ec48b1,0 -cd29c88c9e36,2 -cd314653a4d8,0 -cd3fd04d72f5,2 -cd45bfa07d41,1 -cd48cfab4e44,0 -cd4e7f9fa1a9,2 -cd54d022e37d,4 -cd563556cb57,0 -cd5714db652d,1 -cd66754e1b3b,0 -cd8da43e3069,0 -cd93a472e5cd,4 -cd941e5bc659,0 -cd972e5639e0,4 -cd9e2190c73f,2 -ce207b69ff37,3 -ce6f33a81ad5,0 -ce754234d760,0 -ce887b196c23,2 -ce8d2efd9d4f,0 -ceaa5803d780,2 -ceb32a193eff,0 -ceb601fe8dba,2 -cec299c2a2d5,0 -cf0575534cec,1 -cf0824f53dd9,2 -cf1b9d26d38d,4 -cf603a9ef2d5,1 -cf6551521a35,0 -cf8ae5501bd6,0 -cf8f1bc7a215,0 -cfb17a7cc8d4,0 -cfd1bd0fcbb4,1 -cfdbaef73a8b,0 -cfed7c1172ec,0 -cff262ed8f4c,0 -cffc50047828,0 -d0079cc188e9,3 -d02b79fc3200,0 -d035c2bd9104,3 -d06ccd0cf4b8,1 -d0926ed2c8e5,0 -d0b132d2c7ec,4 -d0d59ed675b5,1 -d0ffa0425ef1,3 -d10d315f123f,2 -d10ef306996b,4 -d141728fa392,2 -d144144a2f3f,2 -d15ca3469b87,2 -d160ebef4117,0 -d16398c971e9,3 -d16e39b9d6f0,0 -d16e59a2b33a,0 -d18aea8238a0,2 -d18b1d8ac4de,2 -d18e5b68f6d2,2 -d18f6431ebce,0 -d1a24527a15d,4 -d1a60c3b9fe5,0 -d1afdb8cf70d,0 -d1b279cc02ae,0 -d1ca85af57c9,0 -d1cad012a254,1 -d1cf31577a59,0 -d1f1ea894da1,2 -d1f7ea924a01,0 -d1fa0f744620,0 -d1fb4efb117c,2 -d25b8a8ad3c4,2 -d264396d8d1a,2 -d26bb2ed6e71,0 -d26bc6e1230d,0 -d271d3a2b552,4 -d27ac9e54901,0 -d28bd830c171,2 -d2901144070c,4 -d29096bd94aa,2 -d29b37d110f3,0 -d2afca74cbc3,0 -d2c2f02bb313,4 -d2c5fb82fe5f,0 -d2c6b99ef62c,2 -d2cd47ed2c1d,0 -d2d523e9f669,0 -d2dc86021c67,0 -d2fb715b0c41,0 -d2ffe9287dc7,3 -d30d079e6f9a,0 -d332d7b8a26e,0 -d364423ec6f9,2 -d38cf0f4a9af,0 -d39752cb6e57,0 -d3be5346684b,2 -d3d578fe433f,2 -d3de0d313d61,1 -d3dfd0a2dee6,0 -d3e56584a481,0 -d3e884109b45,3 -d41b33fcb94f,2 -d436c06f0490,0 -d4583e9525dc,0 -d473f6fafba0,2 -d48178e4a49b,4 -d4bc001f7224,0 -d4be0403e6ab,2 -d4f32b9c07df,1 -d516f77d4516,0 -d51b3fe0fa1b,4 -d51c2153d151,0 -d51e5d7484ea,0 -d567a1a22d33,1 -d56d32a1d62d,0 -d57d1be1bbd1,0 -d5a39339ff3d,2 -d5ad3362424c,0 -d5b4705ac2ee,1 -d5c63a8d9e94,0 -d6130f2ec903,0 -d6228d951958,2 -d6283ded6aea,2 -d659d7fd5ccf,4 -d667af5742f6,0 -d66b6f333dc7,1 -d66ccb75ada1,1 -d67374d3fa2a,2 -d6803e467592,0 -d69698f838db,0 -d6b109c82067,0 -d6dbb0820ea5,0 -d6df4fe492ec,0 -d6e26fe51dce,1 -d6f36ec5564a,0 -d6f6bdfd8011,0 -d7078e8b0349,0 -d74ccc796517,0 -d774692d9919,0 -d78b7401096f,0 -d7a01fca9838,0 -d7ab5c040294,0 -d7ac4a0c9760,0 -d7bc00091cfc,0 -d7bc62d60e8c,0 -d7e5fe5245e0,0 -d801c0a66738,1 -d803598dabda,4 -d807c53c1399,0 -d81338217fc5,2 -d81b6ed83bc2,2 -d838d5b9f571,0 -d83c3efade75,2 -d83d0695e215,2 -d8404680bba6,2 -d844a7252f4e,0 -d85588ff2ebd,1 -d85a842d20bd,2 -d85d052900b4,1 -d85ea1220a03,4 -d865997a6280,0 -d866c26d76f0,0 -d868acdccb5b,3 -d871895742b1,0 -d881c04f01fe,0 -d88806d9ece9,2 -d88c4843aec3,0 -d8cdb7d7283a,2 -d8da9de62743,0 -d911dd40c63b,0 -d91273efb92a,2 -d91635f380b4,0 -d9311f7497cb,2 -d93b61dc8f64,0 -d94e10f42861,2 -d952dbfb0fe4,2 -d95959798b57,2 -d968a983d4d2,2 -d97911a32918,0 -d990a3f0cbdb,2 -d994203deb64,2 -d99b0f7dd9b9,0 -d99dd99be001,0 -d9a475dfe59a,2 -d9ad2a0ec026,0 -d9ba044671e1,4 -d9bbdc33db83,2 -d9c9b9786da3,0 -d9d2631f043c,0 -d9e58e4d8689,0 -da0a1043abf7,2 -da0a83f074f3,0 -da1fb35f5df9,1 -da2bdf4236ac,0 -da3a2275c850,0 -da44f80b422b,2 -da6389d129aa,0 -da6bbb76d562,0 -da8900ac7f29,2 -da9262d9f5d9,0 -da949aa67a4f,0 -da9574d35b82,0 -da9fe02dead3,0 -daad7b617f21,0 -dad71ba27a9b,4 -daeaa5d8cf70,2 -daff5427c9b2,0 -db3cd58aa315,0 -db49cdf1ea64,2 -db4ed1e07aa3,1 -db52626d450c,0 -db6207e62c7b,0 -db690e2d02f8,1 -dbb2c63f6f08,3 -dbd062558b81,1 -dbee04ae6426,2 -dbfd238b3468,3 -dc0eea0b68a7,0 -dc0f6e5b489b,0 -dc3c0d8ee20b,2 -dc6fa1b38b83,2 -dcc6c0ad5cad,0 -dccdf750c962,0 -dce73d90c00c,0 -dcf109df1a2b,0 -dd02d60bef14,0 -dd110d2b8c21,2 -dd19428c3d29,1 -dd285d9e97fe,0 -dd3176bacfe2,0 -dd3dad6ca78f,3 -dd90c321d7bc,0 -ddb222ff7c1d,0 -dde43aa22ae6,2 -de16416220de,4 -de18071c36e6,0 -de2eb5c8aa83,0 -de38adaae009,0 -de4cdabbce6d,0 -de50dfa745f8,2 -de55ed25e0e8,0 -de57c9e9fa93,0 -de6210f88536,0 -de730033c683,0 -de778495a1cd,2 -dea7538bb91a,0 -dec5595e6154,0 -dee1031a76ae,0 -dee31065f8fe,0 -dee687c6e88a,2 -df0886f1e76b,0 -df3adfd6ba36,2 -df4913ca3712,4 -df4aec4a0eaf,4 -df5ce3ea7820,2 -df6d13d04da1,0 -df8365d6ac33,2 -df841a0440d8,2 -df84e7113003,4 -df9cb3729eb1,0 -dfc7ec7db0e0,0 -dfea19863428,0 -e019b3e0f33d,4 -e01b7bac822b,0 -e0313be77035,0 -e037643244b7,4 -e03a74e7d74f,0 -e03e70bc8bba,2 -e04f3c6619a3,0 -e067b06fd655,0 -e06cccc08c59,0 -e06d3d4733f0,2 -e07045d7c5f7,1 -e0863b353093,2 -e087bd4b88f2,0 -e0b5a982a018,3 -e0d229db881a,0 -e10190a9d52f,2 -e12b67835e03,2 -e12d41e7b221,2 -e12df54e0d1e,0 -e12f9f19d1be,0 -e13412678eff,3 -e135d7ba9a0e,0 -e1418d28d668,2 -e150935f66a6,2 -e160a3b19911,0 -e16af45285e5,0 -e16fc934069f,2 -e17507a4a1f5,2 -e1900014dabf,3 -e19936582c61,3 -e1ab92228e60,0 -e1b8acb1cea1,0 -e1c02f6c3362,0 -e1dc02a3dc2a,0 -e1e490773462,2 -e1fb532f55df,3 -e2161692a0b4,2 -e2265c383348,0 -e229aca862c7,2 -e23add229074,4 -e246cd89e1cc,0 -e251bdf05b85,0 -e25ccfe38e44,1 -e265c870f9b3,2 -e26bcae6c67b,0 -e26d8718ca58,1 -e2856afe62c5,2 -e29e54ff921e,0 -e2a233493b90,1 -e2a47a74e6e1,2 -e2c39ed0c941,0 -e2c3b037413b,0 -e2ec22b3d07e,0 -e30a890600e1,0 -e31c42a8652b,2 -e322acd46152,0 -e32a359be36d,3 -e32dc722eca5,4 -e33766353db2,0 -e34fa07bd64d,2 -e387311a840e,2 -e38f3a65b02b,1 -e39b627cf648,4 -e3a7671f787b,2 -e3ab63dc9a60,4 -e3b47ed5b511,0 -e3cd96cb094c,0 -e3e490babc0c,2 -e3ec668f6fad,4 -e4151feb8443,2 -e4210e7fe587,3 -e42d9a94a66d,0 -e4730ddde408,4 -e47452069ea1,0 -e47770a2e5d1,0 -e499434242cc,2 -e4a44f9158dc,0 -e4ae1ee6aada,0 -e4b0df29b96f,0 -e4c799738a19,0 -e4d3d437b0a8,0 -e4dcca36ceb4,0 -e4e343eaae2a,2 -e4f12411fd85,4 -e50b0174690d,0 -e5197d77ec68,0 -e529c5757d64,0 -e52ed5c29c5e,3 -e540d2e35d15,2 -e55188915f9d,1 -e580676516b0,1 -e582e56e7942,0 -e594c19e2e1d,0 -e599151ca14b,2 -e59c5f345bb0,0 -e5d56f4f359b,2 -e5de79795c1d,0 -e5f332efcbc7,0 -e5f73f2855c0,0 -e60e4edb3ca9,0 -e62490b7d0e9,4 -e632e38fd2d4,0 -e6552b7432b3,0 -e65a2ff90494,2 -e65f94ad9be3,2 -e663c6627a95,2 -e66855a5c583,0 -e66ad813a508,0 -e68746d426b2,0 -e68bdd36e589,0 -e69b48516577,0 -e6a58edc5b42,2 -e6a5e4718873,0 -e6a6acf7fca1,2 -e6f0ce5bf282,2 -e724866f5084,2 -e7291472109b,0 -e740af6ac6ea,4 -e756495c11cb,2 -e7578d8dba72,0 -e76a9cbb2a8c,3 -e77a93c3d9a9,0 -e79e10907295,0 -e7a372a1c3a4,2 -e7a7187066ad,2 -e7b5dd5bab1f,0 -e7d2c2c3b30f,4 -e7defafeb957,2 -e7fc93ac5b6d,2 -e811f39a1243,2 -e81f4a2fbbdc,0 -e821c1b6417a,4 -e82232a3c28b,0 -e83d315d8f98,2 -e85d410d6836,2 -e868c3da340b,2 -e893e86dde94,0 -e8d1c6c07cf2,3 -e8ddfc9709ce,0 -e8e44b3160e3,0 -e907d23cce3d,0 -e9129ce55fd7,2 -e9286ddf6ffe,1 -e933923aab15,0 -e93394175a19,3 -e96099b961b4,2 -e966850247f4,0 -e9678824215d,0 -e96bd80a8a53,1 -e97ecf4355cb,0 -e9ab8413e771,4 -e9ce5bf645ab,0 -e9f3c85a2a02,0 -e9f82b5bbaf4,2 -e9faf0296643,0 -e9ff9352ccb3,1 -ea05c22d92e9,2 -ea15a290eb96,1 -ea1d045f9fea,2 -ea4ce9516144,0 -ea4dcb055139,2 -ea588d1e5d96,2 -ea5c42a78979,0 -ea68b58a6e8f,0 -ea6a53e54d0f,0 -ea7e21bab610,0 -ea9c41e1ced0,0 -ea9e0fb6fb0b,2 -eaa0dfbd5024,4 -eabc7c716255,0 -eabf421f94d0,0 -ead23cc922ed,1 -eadc57064154,4 -eadfc8809ec8,2 -eae70f527755,0 -eae901557a84,2 -eb050765b323,0 -eb175669d789,0 -eb1ad14dd281,2 -eb1d37b71fd1,4 -eb32a815f78c,2 -eb6b1f1c09db,0 -eba3acc42197,1 -ebd96d853918,0 -ebe0175e530c,4 -ebf4b22240f4,0 -ec01f0862669,0 -ec0c9f817b03,0 -ec363f48867b,0 -ec4649213ccf,1 -ec57cc20d776,0 -ec6659926105,0 -ec6f1797a25a,0 -ecad6845f630,0 -ecb4500285ed,0 -ed246ae1ed08,4 -ed2c06fcc573,2 -ed2c52c14493,0 -ed2ef440d22c,0 -ed3a0fc5b546,4 -ed3ce1674761,0 -ed648b9bcd95,0 -ed6704e3b72e,3 -ed6bd9293a89,0 -ed88faaa325a,2 -eda1d75cbcf0,0 -eda29a9d78f3,0 -edceb0657d77,0 -ee02294cc3d9,2 -ee059945b08a,2 -ee1ec90b980f,4 -ee2c2a5f7d0e,2 -ee36ca728641,0 -ee3f5cf52188,0 -ee3fe7809e6a,0 -ee6e39319b39,2 -ee74c3b177e0,2 -ee77763a6afb,0 -ee78ce914066,1 -eeaea2c5ff34,0 -eeb231c3ef1f,1 -eebd1e195952,0 -eed4afc8ec83,1 -eedae6b28f96,0 -ef247f28004f,0 -ef26625121b3,4 -ef4121e9bb67,0 -ef476be214d4,0 -ef48780f5d5f,0 -ef5155990874,0 -ef7a4ed8d5d1,2 -ef7eb85b75fc,0 -ef8109305128,1 -ef81cd8854cb,0 -ef8c39eb9157,0 -ef99c499d665,0 -efff2f1a35f5,2 -f002ce614c59,0 -f0098e9d4aee,4 -f00ce9b9d6f4,0 -f02057c41256,0 -f025f33b2c9b,4 -f0267c42907c,0 -f02956bd7c50,0 -f02babb3a023,0 -f03d3c4ce7fb,4 -f0546a45ef10,0 -f066db7a2efe,0 -f06e7a9df795,0 -f0800723bc63,2 -f080a22008be,3 -f0860c21533b,0 -f092febbf5c0,3 -f09cfc6a4dbd,0 -f09fd9433dff,0 -f0a2dc580009,0 -f0c0f7b5e820,2 -f0c13be90519,1 -f0e1201b5c1f,0 -f0f89314e860,4 -f18abfa690ab,2 -f1979147aad4,0 -f1a761c68559,2 -f1d719c97838,0 -f1dc26c4bfa3,4 -f2094a20b275,2 -f233638e0e90,0 -f23902998c21,2 -f252046c0fe6,0 -f26b02ead915,0 -f298b7d05958,0 -f2c0b41acd05,0 -f2d2a0c92034,4 -f2ee81781411,2 -f2f569a64949,0 -f30f203ef51e,2 -f35d80bb1a22,0 -f361060eda3e,0 -f366fb1cc475,0 -f36cb007a1ef,0 -f3a268d2726d,2 -f3a4751af42e,0 -f3a88d3026dc,2 -f3b27ac2d371,0 -f3b6b7ca1eb1,2 -f3bb996b45ce,0 -f3cd489acbee,2 -f42b693a9414,0 -f431f2e119d7,0 -f451eee2b66b,0 -f45f1485c940,2 -f460608cf4cc,2 -f47a2a4a0411,1 -f481f76a6b75,1 -f48241b0c995,0 -f4874247ede6,0 -f4c7ae514c54,0 -f4d3169b468a,0 -f4d3777f2710,2 -f4de9620e3f2,0 -f4df3d86688d,0 -f4e68b61f480,0 -f4ea2a2cfbb9,0 -f531232ecb55,0 -f549294e12e1,4 -f55e1d2a19e4,1 -f5650eb52640,1 -f56ff0440ed1,0 -f5733f77273d,0 -f576e45d1da2,3 -f57cf3b6f48e,0 -f580566e27f5,0 -f583a722434c,2 -f58cdfa968be,0 -f58d37d48e42,4 -f58f0b2fd718,0 -f5a8c6426a71,3 -f5c953bee7cd,0 -f5e6226bd2e0,4 -f5e9a307288c,2 -f61bf44c677c,2 -f62b8a076833,0 -f633c474e8b8,0 -f64214bed40e,3 -f64b6e85f1c9,0 -f66c4ee86629,0 -f68690db78d3,0 -f69400b316a7,2 -f69835dc7c50,4 -f6d760566a51,0 -f6f3ea0d2693,4 -f6f433f3306f,3 -f6f7dba7104d,1 -f7116e7b2f4e,0 -f71333204618,0 -f71aca5a7dc3,0 -f71bea807c96,0 -f72adcac5638,4 -f72ef9ceeaa8,1 -f7508f14dd7b,0 -f762c272c522,1 -f7735b6d47f7,0 -f7defe70afc3,0 -f7e9fa75c7c1,0 -f7edc074f06b,2 -f7fec8935126,1 -f80118bbda18,2 -f819c65b803c,0 -f8372e80f731,2 -f850cb51fdba,4 -f85c78201a50,0 -f85fd4fac887,0 -f86d1c404acb,0 -f8cf7ed8ef00,4 -f8d62557ad0c,0 -f8f5942b690e,0 -f8fc411092c7,2 -f901d460517c,3 -f90f8931a9bc,0 -f9156aeffc5e,3 -f91cfa82b9d4,0 -f920ccd926db,2 -f952ad2e4356,0 -f994a3b07935,0 -f999c6921e6d,2 -f9aa35187bf3,2 -f9d52509c571,0 -f9d8ff3e6592,0 -f9e1c439d4c8,0 -f9e779a13204,2 -f9ecf1795804,2 -fa0c87bd75ce,0 -fa3e544a7401,2 -fa573163dd8b,0 -fa59221cf464,4 -fa6f3d8bb1d5,0 -fa748b57262b,2 -fa7fa797c650,0 -fa9bece586fc,0 -fa9f1bc03f21,0 -fac399455195,2 -fb1b8771c70a,0 -fb61230b99dd,3 -fb696a8e055a,4 -fb6b8200b7f8,1 -fb767cea406c,0 -fb88783de055,0 -fb88d23fc5fe,0 -fba493e17448,2 -fbcbc81cf9be,0 -fbdc796290d4,0 -fbfa925506f6,0 -fc1b1841eadf,2 -fc4c2d35c6f8,2 -fc4d69128e7c,2 -fc603cbedb41,2 -fc782722a50c,0 -fc898dfeb24f,0 -fc8fce67fbf8,0 -fca1a8738b8a,0 -fca931da5c5e,1 -fcc32dffd24d,0 -fcc55ae641ae,2 -fcc6aa6755e6,3 -fce73678f650,0 -fce93caa4758,4 -fd079d2e93a2,0 -fd0a70082e7c,0 -fd48cf452e9d,2 -fd4c946c52bf,0 -fd62bd0db4f1,1 -fd87b6b2e664,0 -fda39982a810,3 -fdbc252813b1,0 -fdc685055659,0 -fdd18ccbbdc5,1 -fdd534271f3d,4 -fe06dad6851c,0 -fe0e2dee1834,0 -fe0fc67c7980,3 -fe2df69676cf,1 -fe37f4492920,2 -fe3b0e50be78,0 -fe3f62695b2d,0 -fe674c2f73f5,1 -fea14b3d44b0,1 -febfb20dc311,0 -fecf4c5ae84b,1 -fed5bb685832,0 -fefded6bf135,0 -ff03f74667df,0 -ff0740cb484a,2 -ff1e940105f9,0 -ff344e5c9341,2 -ff4832d55461,0 -ff4955e76894,0 -ff4cd992667b,0 -ff52392372d3,2 -ff59d44a70a7,0 -ff631653374e,0 -ff77e8e5b5f3,2 -ff8a0b45c789,4 -ffa47f6a7bf4,2 -ffc04fed30e6,0 -ffcf7b45f213,2 -ffd97f8cd5aa,0 -ffec9a18a3ce,2 From 93ef990bb76e4bce6f6faf53a3bf674367b59934 Mon Sep 17 00:00:00 2001 From: Neil Band <20114038+nband@users.noreply.github.com> Date: Thu, 5 Jan 2023 16:53:17 -0600 Subject: [PATCH 6/8] update aptos metadata path --- baselines/diabetic_retinopathy_detection/utils/eval_utils.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/baselines/diabetic_retinopathy_detection/utils/eval_utils.py b/baselines/diabetic_retinopathy_detection/utils/eval_utils.py index eac8ff763..e686b8915 100644 --- a/baselines/diabetic_retinopathy_detection/utils/eval_utils.py +++ b/baselines/diabetic_retinopathy_detection/utils/eval_utils.py @@ -542,8 +542,9 @@ def eval_model_numpy(datasets, np_input=np_input) if distribution_shift == 'aptos': - # TODO(nband): generalize - aptos_metadata_path = 'gs://ub-data/aptos/metadata.csv' + aptos_metadata_path = ( + 'gs://gresearch/reliable-deep-learning/data/baselines/' + 'diabetic_retinopathy_detection/aptos_metadata.csv') eval_results['ood_test_balanced'] = compute_rebalanced_aptos_dataset( aptos_dataset=eval_results['ood_test'], aptos_metadata_path=aptos_metadata_path, From bf38c5d46b61fc581acf6b32259f7be6c8772001 Mon Sep 17 00:00:00 2001 From: Neil Band <20114038+nband@users.noreply.github.com> Date: Fri, 24 Mar 2023 20:54:22 -0700 Subject: [PATCH 7/8] combine data prep scripts into one, improve naming of EyePACS data subdirectory --- .../diabetic_retinopathy_detection/README.md | 8 +- .../data_load_scripts/load_aptos.py | 46 --------- ...iabetic_retinopathy_severity_shift_mild.py | 98 ------------------- .../load_ub_diabetic_retinopathy_detection.py | 48 --------- .../prepare_retina_data.py | 71 ++++++++++++++ 5 files changed, 75 insertions(+), 196 deletions(-) delete mode 100644 baselines/diabetic_retinopathy_detection/data_load_scripts/load_aptos.py delete mode 100644 baselines/diabetic_retinopathy_detection/data_load_scripts/load_diabetic_retinopathy_severity_shift_mild.py delete mode 100644 baselines/diabetic_retinopathy_detection/data_load_scripts/load_ub_diabetic_retinopathy_detection.py create mode 100644 baselines/diabetic_retinopathy_detection/prepare_retina_data.py diff --git a/baselines/diabetic_retinopathy_detection/README.md b/baselines/diabetic_retinopathy_detection/README.md index 7a5180a49..203512d63 100644 --- a/baselines/diabetic_retinopathy_detection/README.md +++ b/baselines/diabetic_retinopathy_detection/README.md @@ -42,7 +42,7 @@ The EyePACS dataset (used in Country and Severity Shift) and the APTOS 2019 data * [EyePACS](https://www.kaggle.com/c/diabetic-retinopathy-detection) * [APTOS 2019](https://www.kaggle.com/c/aptos2019-blindness-detection) -2. Extract the EyePACS dataset to ``$DATA_DIR/downloads/manual``. The directory structure should look like this: +2. Extract the EyePACS dataset to ``$DATA_DIR/ub_diabetic_retinopathy_detection/manual``. The directory structure should look like this: ``sample/ sampleSubmission.csv test/ train/ trainLabels.csv`` @@ -52,9 +52,9 @@ The EyePACS dataset (used in Country and Severity Shift) and the APTOS 2019 data 4. Confirm successful download of files. The following commands should print out the number of files in the directories: ``` - $ ls -1 $DATA_DIR/downloads/manual/train | wc -l + $ ls -1 $DATA_DIR/ub_diabetic_retinopathy_detection/manual/train | wc -l 35126 - $ ls -1 $DATA_DIR/downloads/manual/test | wc -l + $ ls -1 $DATA_DIR/ub_diabetic_retinopathy_detection/manual/test | wc -l 53576 $ ls -1 $DATA_DIR/aptos/manual/train_images | wc -l 3662 @@ -62,7 +62,7 @@ The EyePACS dataset (used in Country and Severity Shift) and the APTOS 2019 data 1928 ``` -5. Manual shuffling and packaging of TF dataset objects. I suggest using the following commands in a `tmux` or `screen` session, in case of network failure; they take a while. +5. Manual shuffling and packaging of TF dataset objects. Consider running the following commands in a `tmux` or `screen` session, in case of a network failure. They take a while. ``` conda activate ub diff --git a/baselines/diabetic_retinopathy_detection/data_load_scripts/load_aptos.py b/baselines/diabetic_retinopathy_detection/data_load_scripts/load_aptos.py deleted file mode 100644 index 6f7d5b519..000000000 --- a/baselines/diabetic_retinopathy_detection/data_load_scripts/load_aptos.py +++ /dev/null @@ -1,46 +0,0 @@ -""" -Loads and packages the data for the aptos dataset. -""" - -from absl import app -from absl import flags -from absl import logging - -import uncertainty_baselines as ub - -flags.DEFINE_string('data_dir', None, 'Path to training and testing data.') -FLAGS = flags.FLAGS - - -def main(argv): - del argv # unused arg - data_dir = FLAGS.data_dir - - # APTOS has two splits: validation and test. - - # Load `aptos` validation data - aptos_validation_builder = ub.datasets.get( - "aptos", - split='validation', - data_dir=data_dir, - download_data=True) - logging.info('Shuffling and packaging `aptos` validation data.') - aptos_validation_builder._dataset_builder.download_and_prepare( - download_dir=f'{data_dir}/aptos/') - - # Load `aptos` test data - aptos_test_builder = ub.datasets.get( - "aptos", - split='test', - data_dir=data_dir, - download_data=True) - logging.info('Shuffling and packaging `aptos` test data.') - aptos_test_builder._dataset_builder.download_and_prepare( - download_dir=f'{data_dir}/aptos/') - logging.info('Finished packaging `aptos` test data.') - - logging.info('Finished packaging `aptos` data.') - - -if __name__ == '__main__': - app.run(main) diff --git a/baselines/diabetic_retinopathy_detection/data_load_scripts/load_diabetic_retinopathy_severity_shift_mild.py b/baselines/diabetic_retinopathy_detection/data_load_scripts/load_diabetic_retinopathy_severity_shift_mild.py deleted file mode 100644 index d1239e4da..000000000 --- a/baselines/diabetic_retinopathy_detection/data_load_scripts/load_diabetic_retinopathy_severity_shift_mild.py +++ /dev/null @@ -1,98 +0,0 @@ -""" -Loads and packages the data for the -diabetic_retinopathy_severity_shift_mild dataset. -""" - -from absl import app -from absl import flags -from absl import logging - -import uncertainty_baselines as ub - -flags.DEFINE_string('data_dir', None, 'Path to training and testing data.') -FLAGS = flags.FLAGS - - -def main(argv): - del argv # unused arg - data_dir = FLAGS.data_dir - - # The DiabeticRetinopathySeverityShiftMild dataset has - # five splits: - # - train - # - in_domain_validation - # - ood_validation - # - in_domain_test - # - ood_test - - # Load `diabetic_retinopathy_severity_shift_mild` train data - dataset_train_builder = ub.datasets.get( - "diabetic_retinopathy_severity_shift_mild", - split='train', - data_dir=data_dir, - download_data=True) - logging.info( - 'Shuffling and packaging `diabetic_retinopathy_severity_shift_mild` ' - 'train data.') - dataset_train_builder._dataset_builder.download_and_prepare( - download_dir=f'{data_dir}/diabetic_retinopathy_severity_shift_mild/') - logging.info( - 'Finished packaging `diabetic_retinopathy_severity_shift_mild` ' - 'train data.') - - # Load `diabetic_retinopathy_severity_shift_mild` in_domain_validation data - dataset_in_domain_validation_builder = ub.datasets.get( - "diabetic_retinopathy_severity_shift_mild", - split='in_domain_validation', - data_dir=data_dir, - download_data=True) - logging.info( - 'Shuffling and packaging `diabetic_retinopathy_severity_shift_mild` in_domain_validation data.') - dataset_in_domain_validation_builder._dataset_builder.download_and_prepare( - download_dir=f'{data_dir}/diabetic_retinopathy_severity_shift_mild/') - logging.info( - 'Finished packaging `diabetic_retinopathy_severity_shift_mild` in_domain_validation data.') - - # Load `diabetic_retinopathy_severity_shift_mild` ood_validation data - dataset_ood_validation_builder = ub.datasets.get( - "diabetic_retinopathy_severity_shift_mild", - split='ood_validation', - data_dir=data_dir, - download_data=True) - logging.info( - 'Shuffling and packaging `diabetic_retinopathy_severity_shift_mild` ood_validation data.') - dataset_ood_validation_builder._dataset_builder.download_and_prepare( - download_dir=f'{data_dir}/diabetic_retinopathy_severity_shift_mild/') - logging.info( - 'Finished packaging `diabetic_retinopathy_severity_shift_mild` ood_validation data.') - - # Load `diabetic_retinopathy_severity_shift_mild` in_domain_test data - dataset_in_domain_test_builder = ub.datasets.get( - "diabetic_retinopathy_severity_shift_mild", - split='in_domain_test', - data_dir=data_dir, - download_data=True) - logging.info( - 'Shuffling and packaging `diabetic_retinopathy_severity_shift_mild` in_domain_test data.') - dataset_in_domain_test_builder._dataset_builder.download_and_prepare( - download_dir=f'{data_dir}/diabetic_retinopathy_severity_shift_mild/') - logging.info( - 'Finished packaging `diabetic_retinopathy_severity_shift_mild` in_domain_test data.') - - # Load `diabetic_retinopathy_severity_shift_mild` ood_test data - dataset_ood_test_builder = ub.datasets.get( - "diabetic_retinopathy_severity_shift_mild", - split='ood_test', - data_dir=data_dir, - download_data=True) - logging.info( - 'Shuffling and packaging `diabetic_retinopathy_severity_shift_mild` ood_test data.') - dataset_ood_test_builder._dataset_builder.download_and_prepare( - download_dir=f'{data_dir}/diabetic_retinopathy_severity_shift_mild/') - logging.info( - 'Finished packaging `diabetic_retinopathy_severity_shift_mild` ood_test data.') - - logging.info('Finished packaging `diabetic_retinopathy_severity_shift_mild` data.') - -if __name__ == '__main__': - app.run(main) diff --git a/baselines/diabetic_retinopathy_detection/data_load_scripts/load_ub_diabetic_retinopathy_detection.py b/baselines/diabetic_retinopathy_detection/data_load_scripts/load_ub_diabetic_retinopathy_detection.py deleted file mode 100644 index 1bf513ba7..000000000 --- a/baselines/diabetic_retinopathy_detection/data_load_scripts/load_ub_diabetic_retinopathy_detection.py +++ /dev/null @@ -1,48 +0,0 @@ -""" -Loads and packages the data for the ub_diabetic_retinopathy_detection dataset. -""" - -from absl import app -from absl import flags -from absl import logging - -import uncertainty_baselines as ub - -flags.DEFINE_string('data_dir', None, 'Path to training and testing data.') -FLAGS = flags.FLAGS - - -def main(argv): - del argv # unused arg - data_dir = FLAGS.data_dir - - # Load `ub_diabetic_retinopathy_detection` train data - dataset_train_builder = ub.datasets.get( - "ub_diabetic_retinopathy_detection", - split='train', - data_dir=data_dir, - download_data=True) - logging.info( - 'Shuffling and packaging `ub_diabetic_retinopathy_detection` train data.') - dataset_train_builder._dataset_builder.download_and_prepare( - download_dir=f'{data_dir}/downloads/') - logging.info( - 'Finished packaging `ub_diabetic_retinopathy_detection` train data.') - - # Load `ub_diabetic_retinopathy_detection` test data - dataset_test_builder = ub.datasets.get( - "ub_diabetic_retinopathy_detection", - split='test', - data_dir=data_dir, - download_data=True) - logging.info( - 'Shuffling and packaging `ub_diabetic_retinopathy_detection` test data.') - dataset_test_builder._dataset_builder.download_and_prepare( - download_dir=f'{data_dir}/downloads/') - logging.info( - 'Finished packaging `ub_diabetic_retinopathy_detection` test data.') - - logging.info('Finished packaging `ub_diabetic_retinopathy_detection` data.') - -if __name__ == '__main__': - app.run(main) diff --git a/baselines/diabetic_retinopathy_detection/prepare_retina_data.py b/baselines/diabetic_retinopathy_detection/prepare_retina_data.py new file mode 100644 index 000000000..6524f74e2 --- /dev/null +++ b/baselines/diabetic_retinopathy_detection/prepare_retina_data.py @@ -0,0 +1,71 @@ +""" +Loads and packages the data for the RETINA Benchmark. +""" + +from absl import app +from absl import flags +from absl import logging + +import uncertainty_baselines as ub + +flags.DEFINE_string( + 'data_dir', None, + 'Path to data folder, which contain subfolders called ' + '`ub_diabetic_retinopathy_detection` and `aptos`, containing the raw data for ' + 'EyePACS and APTOS 2019 respectively. See README.md for further information.') +flags.DEFINE_string( + 'prepare_mode', 'all', 'Determine which dataset(s) to prepare.') +flags.register_validator( + 'prepare_mode', + lambda value: value in ['all', 'eyepacs', 'aptos', 'severity'], + message='--prepare_mode must be one of [all, eyepacs, aptos, severity].') +FLAGS = flags.FLAGS + +# Supported datasets. +_UB_DIABETIC_RETINOPATHY_DETECTION ="ub_diabetic_retinopathy_detection" +_APTOS = "aptos" +_DIABETIC_RETINOPATHY_SEVERITY_SHIFT_MILD = ( + "diabetic_retinopathy_severity_shift_mild") + +# Splits for each dataset. +_SPLITS = { + _UB_DIABETIC_RETINOPATHY_DETECTION: ['train', 'test'], + _APTOS: ['validation', 'test'], + _DIABETIC_RETINOPATHY_SEVERITY_SHIFT_MILD: [ + 'train', 'in_domain_validation', + 'ood_validation', 'in_domain_test', 'ood_test'] +} + +def _download_and_prepare_dataset( + dataset_name: str, + split: str, + data_dir: str +) -> None: + builder = ub.datasets.get(dataset_name=dataset_name, split=split, + data_dir=data_dir, download_data=True) + builder._dataset_builder.download_and_prepare( + download_dir=f'{data_dir}/{dataset_name}/') + +def main(argv): + del argv # unused arg + data_dir = FLAGS.data_dir + + if FLAGS.prepare_mode == 'all': + dataset_names = list(_SPLITS.keys()) + elif FLAGS.prepare_mode == 'eyepacs': + dataset_names = [_UB_DIABETIC_RETINOPATHY_DETECTION] + elif FLAGS.prepare_mode == 'aptos': + dataset_names = [_APTOS] + elif FLAGS.prepare_mode == 'severity': + dataset_names = [_DIABETIC_RETINOPATHY_SEVERITY_SHIFT_MILD] + else: + raise ValueError(f'Unknown prepare_mode: {FLAGS.prepare_mode}') + + for dataset_name in dataset_names: + for split in _SPLITS[dataset_name]: + _download_and_prepare_dataset( + dataset_name=dataset_name, split=split, data_dir=data_dir) + logging.info(f'Finished packaging `{dataset_name}` {split} data.') + +if __name__ == '__main__': + app.run(main) From 55480aaa80be722c24c4cfd4d11427f19eb41905 Mon Sep 17 00:00:00 2001 From: Neil Band <20114038+nband@users.noreply.github.com> Date: Fri, 28 Apr 2023 19:55:33 -0700 Subject: [PATCH 8/8] clean up data prep script, update README --- .../diabetic_retinopathy_detection/README.md | 10 ++-------- .../prepare_retina_data.py | 20 ++++++++----------- 2 files changed, 10 insertions(+), 20 deletions(-) diff --git a/baselines/diabetic_retinopathy_detection/README.md b/baselines/diabetic_retinopathy_detection/README.md index 203512d63..21998e73f 100644 --- a/baselines/diabetic_retinopathy_detection/README.md +++ b/baselines/diabetic_retinopathy_detection/README.md @@ -66,14 +66,8 @@ The EyePACS dataset (used in Country and Severity Shift) and the APTOS 2019 data ``` conda activate ub - # Standard EyePACS dataset - python baselines/diabetic_retinopathy_detection/data_load_scripts/load_ub_diabetic_retinopathy_detection.py --data_dir=$DATA_DIR - - # Country Shift: APTOS distributionally shifted validation and test sets - python baselines/diabetic_retinopathy_detection/data_load_scripts/load_aptos.py --data_dir=$DATA_DIR - - # Severity Shift splits as used in RETINA paper - python baselines/diabetic_retinopathy_detection/data_load_scripts/load_diabetic_retinopathy_severity_shift_mild.py --data_dir=$DATA_DIR + # --prepare_mode=all will load the EyePACS, Country Shift (APTOS 2019), and Severity Shift datasets. + python baselines/diabetic_retinopathy_detection/prepare_retina_data.py --data_dir=$DATA_DIR --prepare_mode=all ``` ### Additional Splits for Exploration diff --git a/baselines/diabetic_retinopathy_detection/prepare_retina_data.py b/baselines/diabetic_retinopathy_detection/prepare_retina_data.py index 6524f74e2..0b7dbad80 100644 --- a/baselines/diabetic_retinopathy_detection/prepare_retina_data.py +++ b/baselines/diabetic_retinopathy_detection/prepare_retina_data.py @@ -36,6 +36,13 @@ 'ood_validation', 'in_domain_test', 'ood_test'] } +_DATASET_NAMES_BY_MODE = { + 'all': list(_SPLITS.keys()), + 'eyepacs': [_UB_DIABETIC_RETINOPATHY_DETECTION], + 'aptos': [_APTOS], + 'severity': [_DIABETIC_RETINOPATHY_SEVERITY_SHIFT_MILD] +} + def _download_and_prepare_dataset( dataset_name: str, split: str, @@ -49,18 +56,7 @@ def _download_and_prepare_dataset( def main(argv): del argv # unused arg data_dir = FLAGS.data_dir - - if FLAGS.prepare_mode == 'all': - dataset_names = list(_SPLITS.keys()) - elif FLAGS.prepare_mode == 'eyepacs': - dataset_names = [_UB_DIABETIC_RETINOPATHY_DETECTION] - elif FLAGS.prepare_mode == 'aptos': - dataset_names = [_APTOS] - elif FLAGS.prepare_mode == 'severity': - dataset_names = [_DIABETIC_RETINOPATHY_SEVERITY_SHIFT_MILD] - else: - raise ValueError(f'Unknown prepare_mode: {FLAGS.prepare_mode}') - + dataset_names = _DATASET_NAMES_BY_MODE[FLAGS.prepare_mode] for dataset_name in dataset_names: for split in _SPLITS[dataset_name]: _download_and_prepare_dataset(