k4d3 commited on
Commit
00b2f69
1 Parent(s): 698e846

add dataset_tools

Browse files

Signed-off-by: Balazs Horvath <[email protected]>

dataset_tools/Check for Duplicate Words Between Captions and Tags.ipynb ADDED
The diff for this file is too large to render. See raw diff
 
dataset_tools/Check for Transparency.ipynb ADDED
@@ -0,0 +1,83 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "## Check for Transparency\n",
8
+ "----\n",
9
+ "\n",
10
+ "The Python script recursively traverses a specified directory, identifying image files with extensions `.jpg`, `.jpeg`, and `.png`. For each identified image, it checks if it contains transparency by examining its mode with PIL."
11
+ ]
12
+ },
13
+ {
14
+ "cell_type": "code",
15
+ "execution_count": 2,
16
+ "metadata": {},
17
+ "outputs": [
18
+ {
19
+ "name": "stdout",
20
+ "output_type": "stream",
21
+ "text": [
22
+ "No transparent images in your dataset!\n"
23
+ ]
24
+ }
25
+ ],
26
+ "source": [
27
+ "import os\n",
28
+ "from PIL import Image\n",
29
+ "\n",
30
+ "def check_transparency(image_path):\n",
31
+ " try:\n",
32
+ " image = Image.open(image_path)\n",
33
+ " if image.mode == 'RGBA':\n",
34
+ " return True\n",
35
+ " except Exception as e:\n",
36
+ " print(f\"Error processing {image_path}: {e}\")\n",
37
+ " return False\n",
38
+ "\n",
39
+ "def main():\n",
40
+ " directory = r'C:\\Users\\kade\\Desktop\\training_dir_staging'\n",
41
+ " transparent_images = []\n",
42
+ "\n",
43
+ " for root, _, files in os.walk(directory):\n",
44
+ " for file in files:\n",
45
+ " if file.lower().endswith(('.jpg', '.jpeg', '.png')):\n",
46
+ " file_path = os.path.join(root, file)\n",
47
+ " if check_transparency(file_path):\n",
48
+ " transparent_images.append(file_path)\n",
49
+ "\n",
50
+ " if transparent_images:\n",
51
+ " print(\"Images with transparency:\")\n",
52
+ " for img in transparent_images:\n",
53
+ " print(img)\n",
54
+ " else:\n",
55
+ " print(\"No transparent images in your dataset!\")\n",
56
+ "\n",
57
+ "if __name__ == \"__main__\":\n",
58
+ " main()"
59
+ ]
60
+ }
61
+ ],
62
+ "metadata": {
63
+ "kernelspec": {
64
+ "display_name": "base",
65
+ "language": "python",
66
+ "name": "python3"
67
+ },
68
+ "language_info": {
69
+ "codemirror_mode": {
70
+ "name": "ipython",
71
+ "version": 3
72
+ },
73
+ "file_extension": ".py",
74
+ "mimetype": "text/x-python",
75
+ "name": "python",
76
+ "nbconvert_exporter": "python",
77
+ "pygments_lexer": "ipython3",
78
+ "version": "3.12.2"
79
+ }
80
+ },
81
+ "nbformat": 4,
82
+ "nbformat_minor": 2
83
+ }
dataset_tools/Concatenate Captions With Tags To txt.ipynb ADDED
@@ -0,0 +1,703 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "## Concatenate `.caption`s with `.tags` to `.txt`\n",
8
+ "----\n",
9
+ "\n",
10
+ "This Python script processes image files within a specified directory. For each image file, if corresponding tag and caption files exist, it combines the content of these files into a single text file (`.txt`). The content of the tag file (`.tags`) and caption file (`.caption`) are concatenated, with tags followed by a comma and then the caption.\n",
11
+ "\n",
12
+ "The script also performs specific modifications to the caption content:\n",
13
+ "\n",
14
+ "- Commas inside sentences are stripped.\n",
15
+ "- Each sentence is terminated with a period followed by a comma.\n",
16
+ "- Any parentheses in the tags are escaped with a backslash."
17
+ ]
18
+ },
19
+ {
20
+ "cell_type": "code",
21
+ "execution_count": 7,
22
+ "metadata": {},
23
+ "outputs": [
24
+ {
25
+ "name": "stdout",
26
+ "output_type": "stream",
27
+ "text": [
28
+ "Processed Aspekt.png successfully.\n",
29
+ "Processed BeckAndArco.png successfully.\n",
30
+ "Processed CAACAgEAAxUAAWDcC-RAMyhgCSdjHXALY3-AW04jAAJJAQACUzihRiT7YFrWoWOgIAQ.png successfully.\n",
31
+ "Processed CAACAgEAAxUAAWDcH6ECBkkGen9vu0nfz3nOhi4KAAKqAQACdX3pR00bYhmqsDSOIAQ.png successfully.\n",
32
+ "Processed CAACAgEAAxUAAWDcH6EHLyrFVV6KDt_ehvaTqEvCAAIuAQACJLbhR4tj2fapsvIsIAQ.png successfully.\n",
33
+ "Processed CAACAgEAAxUAAWDcH6Fvhv_5o8LmW4VwvgvHplQuAAJcAQACwNToRrdQ2H_0JmXkIAQ.png successfully.\n",
34
+ "Processed CAACAgEAAxUAAWDcH6FXpV9s5T9aqYxdwsq2CHK-AAJHAQAC9l3pRpKFNSJYMQzMIAQ.png successfully.\n",
35
+ "Processed CAACAgEAAxUAAWDcH6Gmc5IRiZOcEodSJMvwByT-AAJpAQACM3_oRttoMTyEb6hiIAQ.png successfully.\n",
36
+ "Warning: Tags file missing for CAACAgEAAxUAAWDcH6GPof0niWcvLa18a0an3y7pAAL2AAOhC0BHtJ4uQOzams0gBA.png\n",
37
+ "Warning: Caption file missing for CAACAgEAAxUAAWDcH6GPof0niWcvLa18a0an3y7pAAL2AAOhC0BHtJ4uQOzams0gBA.png\n",
38
+ "Warning: Tags file missing for CAACAgEAAxUAAWDcH6HJlQro8jRi6YhljooQxaVAAAJNAQACqIzoRlkjbJYGu5L1IAQ.png\n",
39
+ "Warning: Caption file missing for CAACAgEAAxUAAWDcH6HJlQro8jRi6YhljooQxaVAAAJNAQACqIzoRlkjbJYGu5L1IAQ.png\n",
40
+ "Warning: Tags file missing for CAACAgEAAxUAAWDcH6HX3_yt4_sdkAMPDE-8j57HAAJXAQAC5tjpRp4WfYQ82fHQIAQ.png\n",
41
+ "Warning: Caption file missing for CAACAgEAAxUAAWDcH6HX3_yt4_sdkAMPDE-8j57HAAJXAQAC5tjpRp4WfYQ82fHQIAQ.png\n",
42
+ "Warning: Tags file missing for CAACAgEAAxUAAWDR3f-rfzg3uLDp_UQtPzdCFBr8AAIyAAPjPnQj9X5nrJxfBBYfBA.png\n",
43
+ "Warning: Caption file missing for CAACAgEAAxUAAWDR3f-rfzg3uLDp_UQtPzdCFBr8AAIyAAPjPnQj9X5nrJxfBBYfBA.png\n",
44
+ "Warning: Tags file missing for CAACAgEAAxUAAWDR3f8YhZGGB5a4jn0OsZ_DDsdCAAIuAAPjPnQjYmocomYgQs4fBA.png\n",
45
+ "Warning: Caption file missing for CAACAgEAAxUAAWDR3f8YhZGGB5a4jn0OsZ_DDsdCAAIuAAPjPnQjYmocomYgQs4fBA.png\n",
46
+ "Warning: Tags file missing for CAACAgEAAxUAAWDR3f_mt1pICh0kkMEChTL4tLB2AAIzAAPjPnQjWkMrcKIhxuMfBA.png\n",
47
+ "Warning: Caption file missing for CAACAgEAAxUAAWDR3f_mt1pICh0kkMEChTL4tLB2AAIzAAPjPnQjWkMrcKIhxuMfBA.png\n",
48
+ "Warning: Tags file missing for CAACAgEAAxUAAWDTdOdajTYAAUlMeSk7xoVlEghmEgACPgADvpG7CZ17P6Aj_cp5HwQ.png\n",
49
+ "Warning: Caption file missing for CAACAgEAAxUAAWDTdOdajTYAAUlMeSk7xoVlEghmEgACPgADvpG7CZ17P6Aj_cp5HwQ.png\n",
50
+ "Warning: Tags file missing for CAACAgEAAxUAAWE7Bh6hnbi6iq43f-cvDzt6v91NAAJsAQAC6Ql0JFsPeucxX9A1IAQ.png\n",
51
+ "Warning: Caption file missing for CAACAgEAAxUAAWE7Bh6hnbi6iq43f-cvDzt6v91NAAJsAQAC6Ql0JFsPeucxX9A1IAQ.png\n",
52
+ "Warning: Tags file missing for CAACAgEAAxUAAWE7Bh6MR2e4JOInqY_QO1mVzx-xAAIMAgAC6Ql0JGmAQvmx1LW5IAQ.png\n",
53
+ "Warning: Caption file missing for CAACAgEAAxUAAWE7Bh6MR2e4JOInqY_QO1mVzx-xAAIMAgAC6Ql0JGmAQvmx1LW5IAQ.png\n",
54
+ "Warning: Tags file missing for CAACAgEAAxUAAWE7Bh7pmyQ4Fv_x9MDW_uBvuyFdAAJtAQAC6Ql0JG7FX_thTUBLIAQ.png\n",
55
+ "Warning: Caption file missing for CAACAgEAAxUAAWE7Bh7pmyQ4Fv_x9MDW_uBvuyFdAAJtAQAC6Ql0JG7FX_thTUBLIAQ.png\n",
56
+ "Warning: Tags file missing for CAACAgEAAxUAAWE7Bh7RX2H0FVS6o2ik9QzmJNPjAAINAgAC6Ql0JMKM1j9yWCR-IAQ.png\n",
57
+ "Warning: Caption file missing for CAACAgEAAxUAAWE7Bh7RX2H0FVS6o2ik9QzmJNPjAAINAgAC6Ql0JMKM1j9yWCR-IAQ.png\n",
58
+ "Warning: Tags file missing for CAACAgEAAxUAAWFH7AE5-fdbrERFOhnYrvSt6t3gAAJ_AQAC3qPwR-zE0ZrxvEzlIAQ.png\n",
59
+ "Warning: Caption file missing for CAACAgEAAxUAAWFH7AE5-fdbrERFOhnYrvSt6t3gAAJ_AQAC3qPwR-zE0ZrxvEzlIAQ.png\n",
60
+ "Warning: Tags file missing for CAACAgEAAxUAAWFH7AErFp00iaunAQiPzQ2FvQSPAALJAQACtX_xR_bgUCZs2Ww8IAQ.png\n",
61
+ "Warning: Caption file missing for CAACAgEAAxUAAWFH7AErFp00iaunAQiPzQ2FvQSPAALJAQACtX_xR_bgUCZs2Ww8IAQ.png\n",
62
+ "Warning: Tags file missing for CAACAgEAAxUAAWFH7AEVH_buD5sQh1dhoQYJFtJyAAJ9AQACupnwRw-X4hKABjBBIAQ.png\n",
63
+ "Warning: Caption file missing for CAACAgEAAxUAAWFH7AEVH_buD5sQh1dhoQYJFtJyAAJ9AQACupnwRw-X4hKABjBBIAQ.png\n",
64
+ "Warning: Tags file missing for CAACAgEAAxUAAWFH7AFfM6KTyVyTFtwmye6h8_oMAAI2AgACeCTxRyi-wCqjZBH5IAQ.png\n",
65
+ "Warning: Caption file missing for CAACAgEAAxUAAWFH7AFfM6KTyVyTFtwmye6h8_oMAAI2AgACeCTxRyi-wCqjZBH5IAQ.png\n",
66
+ "Warning: Tags file missing for CAACAgEAAxUAAWFH7AGAVBONYcuqhHTWGsYgnCZSAAJDAQACsk_5R2ygKezbUBTCIAQ.png\n",
67
+ "Warning: Caption file missing for CAACAgEAAxUAAWFH7AGAVBONYcuqhHTWGsYgnCZSAAJDAQACsk_5R2ygKezbUBTCIAQ.png\n",
68
+ "Warning: Tags file missing for CAACAgEAAxUAAWFH7AGgRDccu4nX57fVOMps8Zs_AAJIAgACDxjxR4d-wYqkYks2IAQ.png\n",
69
+ "Warning: Caption file missing for CAACAgEAAxUAAWFH7AGgRDccu4nX57fVOMps8Zs_AAJIAgACDxjxR4d-wYqkYks2IAQ.png\n",
70
+ "Warning: Tags file missing for CAACAgEAAxUAAWFH7AGuUyY6zTKHxCYk-GQfMJsSAALxAQAC0nDxRz97_4_z3n2XIAQ.png\n",
71
+ "Warning: Caption file missing for CAACAgEAAxUAAWFH7AGuUyY6zTKHxCYk-GQfMJsSAALxAQAC0nDxRz97_4_z3n2XIAQ.png\n",
72
+ "Warning: Tags file missing for CAACAgEAAxUAAWFIIWUF8dAjrT_wHknzD4gy7lxlAAIrAAO4BXszgWlJ6HHmI48gBA.png\n",
73
+ "Warning: Caption file missing for CAACAgEAAxUAAWFIIWUF8dAjrT_wHknzD4gy7lxlAAIrAAO4BXszgWlJ6HHmI48gBA.png\n",
74
+ "Warning: Tags file missing for CAACAgEAAxUAAWFIIWUT0gSlfYG9D4K5NAw2w4wMAALrAQACZhLZRMAOgnhxF_tXIAQ.png\n",
75
+ "Warning: Caption file missing for CAACAgEAAxUAAWFIIWUT0gSlfYG9D4K5NAw2w4wMAALrAQACZhLZRMAOgnhxF_tXIAQ.png\n",
76
+ "Warning: Tags file missing for CAACAgEAAxUAAWFIIWWMoXbpGA3AqCR6S9tZJyFSAALXAQAClXH4RdJA0iyIoKHdIAQ.png\n",
77
+ "Warning: Caption file missing for CAACAgEAAxUAAWFIIWWMoXbpGA3AqCR6S9tZJyFSAALXAQAClXH4RdJA0iyIoKHdIAQ.png\n",
78
+ "Warning: Tags file missing for CAACAgEAAxUAAWHM1d8nUpvZyMQ1Jks3oansJJy_AAKdAQACLHkxR78fw7vrv1wQIwQ.png\n",
79
+ "Warning: Caption file missing for CAACAgEAAxUAAWHM1d8nUpvZyMQ1Jks3oansJJy_AAKdAQACLHkxR78fw7vrv1wQIwQ.png\n",
80
+ "Warning: Tags file missing for CAACAgEAAxUAAWHM1d8xHjkSHq8Njr9Bl6RwEm-lAAI-AgAC4tY5R-GNIJrpVBqDIwQ.png\n",
81
+ "Warning: Caption file missing for CAACAgEAAxUAAWHM1d8xHjkSHq8Njr9Bl6RwEm-lAAI-AgAC4tY5R-GNIJrpVBqDIwQ.png\n",
82
+ "Warning: Tags file missing for CAACAgEAAxUAAWHM1d9KRMOUqsVvyGtYf-4_o4BqAAJ4AQACD-QwR6uootqbwnGhIwQ.png\n",
83
+ "Warning: Caption file missing for CAACAgEAAxUAAWHM1d9KRMOUqsVvyGtYf-4_o4BqAAJ4AQACD-QwR6uootqbwnGhIwQ.png\n",
84
+ "Warning: Tags file missing for CAACAgEAAxUAAWKLulEDomzz_AO4sENSAvEO4uM9AAITAAPAQ0hMH6XFXs4QrqUkBA.png\n",
85
+ "Warning: Caption file missing for CAACAgEAAxUAAWKLulEDomzz_AO4sENSAvEO4uM9AAITAAPAQ0hMH6XFXs4QrqUkBA.png\n",
86
+ "Warning: Tags file missing for CAACAgEAAxUAAWKLulEIhmGfRbGYAUqY_aq9aokKAAIRAAMpB0lMKeRIY9hVeHokBA.png\n",
87
+ "Warning: Caption file missing for CAACAgEAAxUAAWKLulEIhmGfRbGYAUqY_aq9aokKAAIRAAMpB0lMKeRIY9hVeHokBA.png\n",
88
+ "Warning: Tags file missing for CAACAgEAAxUAAWKLulEJGQSJ7Wo_bc2-bsBCggv1AAIMAAMkWkhMYPzqP_9bLi4kBA.png\n",
89
+ "Warning: Caption file missing for CAACAgEAAxUAAWKLulEJGQSJ7Wo_bc2-bsBCggv1AAIMAAMkWkhMYPzqP_9bLi4kBA.png\n",
90
+ "Warning: Tags file missing for CAACAgEAAxUAAWKLulElp4EF5yTSuHON-a9iu0aAAAIFAAOL4klM5mySPnwOhcckBA.png\n",
91
+ "Warning: Caption file missing for CAACAgEAAxUAAWKLulElp4EF5yTSuHON-a9iu0aAAAIFAAOL4klM5mySPnwOhcckBA.png\n",
92
+ "Warning: Tags file missing for CAACAgEAAxUAAWKLulF41LGfQvZv-pYHC5cc0iImAAIIAAMNC0FM4VZWfzgAAaqlJAQ.png\n",
93
+ "Warning: Caption file missing for CAACAgEAAxUAAWKLulF41LGfQvZv-pYHC5cc0iImAAIIAAMNC0FM4VZWfzgAAaqlJAQ.png\n",
94
+ "Warning: Tags file missing for CAACAgEAAxUAAWKLulFc8KhqegZI1C6A4_PRsAj9AAICAANwM0BMmxu7Bhu1KMIkBA.png\n",
95
+ "Warning: Caption file missing for CAACAgEAAxUAAWKLulFc8KhqegZI1C6A4_PRsAj9AAICAANwM0BMmxu7Bhu1KMIkBA.png\n",
96
+ "Warning: Tags file missing for CAACAgEAAxUAAWKLulFRJkWqXNSqNmWJZbU7DTsdAAIGAAMj8UhMtIE6ogUD2tgkBA.png\n",
97
+ "Warning: Caption file missing for CAACAgEAAxUAAWKLulFRJkWqXNSqNmWJZbU7DTsdAAIGAAMj8UhMtIE6ogUD2tgkBA.png\n",
98
+ "Warning: Tags file missing for CAACAgEAAxUAAWKLulG5NeloUVIROkLdma1HIAmRAAIGAAM9qEhMlF0Z9Hvp8t8kBA.png\n",
99
+ "Warning: Caption file missing for CAACAgEAAxUAAWKLulG5NeloUVIROkLdma1HIAmRAAIGAAM9qEhMlF0Z9Hvp8t8kBA.png\n",
100
+ "Warning: Tags file missing for CAACAgEAAxUAAWKLulH1D_-JbhqSHmbfw3-A4l7WAAIOAANrNEhMfE4tst0nqFAkBA.png\n",
101
+ "Warning: Caption file missing for CAACAgEAAxUAAWKLulH1D_-JbhqSHmbfw3-A4l7WAAIOAANrNEhMfE4tst0nqFAkBA.png\n",
102
+ "Warning: Tags file missing for CAACAgEAAxUAAWKLulHt3toF2ErX2NgldtFsJReHAAIYAAOXI0lMBJXEJboVDH4kBA.png\n",
103
+ "Warning: Caption file missing for CAACAgEAAxUAAWKLulHt3toF2ErX2NgldtFsJReHAAIYAAOXI0lMBJXEJboVDH4kBA.png\n",
104
+ "Warning: Tags file missing for CAACAgEAAxUAAWKS9EavJJ9PvUHieykK4sycGCHBAAJ0AQACDqIYRygL9mwg4NnWJAQ.png\n",
105
+ "Warning: Caption file missing for CAACAgEAAxUAAWKS9EavJJ9PvUHieykK4sycGCHBAAJ0AQACDqIYRygL9mwg4NnWJAQ.png\n",
106
+ "Warning: Tags file missing for CAACAgEAAxUAAWKS9EbunICCRgPt0MYm--wfpynNAAIQAwACXXUYR79eF_xK_xaaJAQ.png\n",
107
+ "Warning: Caption file missing for CAACAgEAAxUAAWKS9EbunICCRgPt0MYm--wfpynNAAIQAwACXXUYR79eF_xK_xaaJAQ.png\n",
108
+ "Warning: Tags file missing for CAACAgEAAxUAAWORcb1_nbaWnk79Ya-Jlm1C2PlfAAKXBAACH16YR02CUN0j931bKwQ.png\n",
109
+ "Warning: Caption file missing for CAACAgEAAxUAAWORcb1_nbaWnk79Ya-Jlm1C2PlfAAKXBAACH16YR02CUN0j931bKwQ.png\n",
110
+ "Warning: Tags file missing for CAACAgEAAxUAAWORcb2bT2w-zVDGAqMgaq1wcSOwAAK0AgACBNWQReqCVrN-uRQaKwQ.png\n",
111
+ "Warning: Caption file missing for CAACAgEAAxUAAWORcb2bT2w-zVDGAqMgaq1wcSOwAAK0AgACBNWQReqCVrN-uRQaKwQ.png\n",
112
+ "Warning: Tags file missing for CAACAgEAAxUAAWORcb2UvreFl32oUeBwlZ9orsi5AAKaAQACxkLYRkZIjvPYFnCdKwQ.png\n",
113
+ "Warning: Caption file missing for CAACAgEAAxUAAWORcb2UvreFl32oUeBwlZ9orsi5AAKaAQACxkLYRkZIjvPYFnCdKwQ.png\n",
114
+ "Warning: Tags file missing for CAACAgEAAxUAAWORcb3SCsMv9uX96KFkeMWxClq6AAIyAgACJVaZRWQsqXTWHku9KwQ.png\n",
115
+ "Warning: Caption file missing for CAACAgEAAxUAAWORcb3SCsMv9uX96KFkeMWxClq6AAIyAgACJVaZRWQsqXTWHku9KwQ.png\n",
116
+ "Warning: Tags file missing for CAACAgEAAxUAAWP-kzUakCvjYfqmGy2zRFwIBOIJAAIDAwACSiqZRpqcR_GqSZXJLgQ.png\n",
117
+ "Warning: Caption file missing for CAACAgEAAxUAAWP-kzUakCvjYfqmGy2zRFwIBOIJAAIDAwACSiqZRpqcR_GqSZXJLgQ.png\n",
118
+ "Warning: Tags file missing for CAACAgEAAxUAAWP-kzUnvo5IT27BTpK0HiM2OxR3AAKBAgACcJSYRj_SZHVTdIT-LgQ.png\n",
119
+ "Warning: Caption file missing for CAACAgEAAxUAAWP-kzUnvo5IT27BTpK0HiM2OxR3AAKBAgACcJSYRj_SZHVTdIT-LgQ.png\n",
120
+ "Warning: Tags file missing for CAACAgEAAxUAAWP-kzVmCxyT4PC1eAOIN2Wf3ILQAALHAgACuruZRpdNc3dn240qLgQ.png\n",
121
+ "Warning: Caption file missing for CAACAgEAAxUAAWP-kzVmCxyT4PC1eAOIN2Wf3ILQAALHAgACuruZRpdNc3dn240qLgQ.png\n",
122
+ "Warning: Tags file missing for CAACAgEAAxUAAWP-kzVTtzRwqjEMqQJyvkzq1W1gAAKxAgACu4CZRvBvxqACqpgaLgQ.png\n",
123
+ "Warning: Caption file missing for CAACAgEAAxUAAWP-kzVTtzRwqjEMqQJyvkzq1W1gAAKxAgACu4CZRvBvxqACqpgaLgQ.png\n",
124
+ "Warning: Tags file missing for CAACAgEAAxUAAWP-kzVYUGwzWMr2x3TFD-Q0CHLbAALjAwACMmmgRm_DU36eh3XHLgQ.png\n",
125
+ "Warning: Caption file missing for CAACAgEAAxUAAWP-kzVYUGwzWMr2x3TFD-Q0CHLbAALjAwACMmmgRm_DU36eh3XHLgQ.png\n",
126
+ "Processed CAACAgEAAxUAAWP-kzWlMHAtZpEPPPuEGOI2DuFiAAJCAgAC2tWhRusq-Cq3l32HLgQ.png successfully.\n",
127
+ "Warning: Tags file missing for CAACAgEAAxUAAWR-E9HXpjnsz-EzbfV7B65tT9FIAALbAwACNcHxRxPg7eZZowy5LwQ.png\n",
128
+ "Warning: Caption file missing for CAACAgEAAxUAAWR-E9HXpjnsz-EzbfV7B65tT9FIAALbAwACNcHxRxPg7eZZowy5LwQ.png\n",
129
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkw4rlV9ceT5sa4U3UoH3H4NAAIaAAO6XcgaNR-YR57KIqUvBA.png\n",
130
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkw4rlV9ceT5sa4U3UoH3H4NAAIaAAO6XcgaNR-YR57KIqUvBA.png\n",
131
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkw5pG8BeXPi_UfbWc8gbUTEAAIKAAO6XcganuzCkCuOMm8vBA.png\n",
132
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkw5pG8BeXPi_UfbWc8gbUTEAAIKAAO6XcganuzCkCuOMm8vBA.png\n",
133
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkw7noF7kyoJdG0CS_M48UR4AAIfAAO6Xcga6mcBo8URXxMvBA.png\n",
134
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkw7noF7kyoJdG0CS_M48UR4AAIfAAO6Xcga6mcBo8URXxMvBA.png\n",
135
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkwdX5mol1Xqv_I6ZXmX7qxUAAIVAAO6XcgaWrByHzSwCZsvBA.png\n",
136
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkwdX5mol1Xqv_I6ZXmX7qxUAAIVAAO6XcgaWrByHzSwCZsvBA.png\n",
137
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkwjd08z2Stg4_KDo5nfs_kSAAILAAO6XcgaQTDOocrTLKIvBA.png\n",
138
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkwjd08z2Stg4_KDo5nfs_kSAAILAAO6XcgaQTDOocrTLKIvBA.png\n",
139
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkwKCPGAvvPneaYwyIz9ScJkAAIhAAO6XcgaDxgfrx8-VMQvBA.png\n",
140
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkwKCPGAvvPneaYwyIz9ScJkAAIhAAO6XcgaDxgfrx8-VMQvBA.png\n",
141
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkwKsW6q8FDzJ5RO37Z91XzTAAIUAAO6XcgaLI-7asSSRwIvBA.png\n",
142
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkwKsW6q8FDzJ5RO37Z91XzTAAIUAAO6XcgaLI-7asSSRwIvBA.png\n",
143
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkwTRsblNmEbbnc-hdb7k6fqAAIcAAO6XcgalhQcgptbQeovBA.png\n",
144
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkwTRsblNmEbbnc-hdb7k6fqAAIcAAO6XcgalhQcgptbQeovBA.png\n",
145
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkwU6IIqxlon8l1YRL4lkP6-AAIRAAO6XcgadBKAOP2cUc0vBA.png\n",
146
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkwU6IIqxlon8l1YRL4lkP6-AAIRAAO6XcgadBKAOP2cUc0vBA.png\n",
147
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkwuU-F6Y9iUF3nSojeLWD9ZAAINAAO6Xcga2RjGU9TxG3MvBA.png\n",
148
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkwuU-F6Y9iUF3nSojeLWD9ZAAINAAO6Xcga2RjGU9TxG3MvBA.png\n",
149
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkwzo6zg5rraJe-3D-n7-lhtAAIMAAO6XcgaY-GtcllBobsvBA.png\n",
150
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkwzo6zg5rraJe-3D-n7-lhtAAIMAAO6XcgaY-GtcllBobsvBA.png\n",
151
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkxDHfE8ZGuVlkPAgLyzNRuUAAIOAAO6XcgaVEz5PpG1hDcvBA.png\n",
152
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkxDHfE8ZGuVlkPAgLyzNRuUAAIOAAO6XcgaVEz5PpG1hDcvBA.png\n",
153
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkxj-NR1mZxBn7l4bVHZWGL9AAIIAAO6Xcgaw6RhEj0pQ98vBA.png\n",
154
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkxj-NR1mZxBn7l4bVHZWGL9AAIIAAO6Xcgaw6RhEj0pQ98vBA.png\n",
155
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkxzadNSp_fyxjWbOlERlTENAAIWAAO6XcgaT4VBRjfiQrMvBA.png\n",
156
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkxzadNSp_fyxjWbOlERlTENAAIWAAO6XcgaT4VBRjfiQrMvBA.png\n",
157
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwky2uzWuVX_Z31_RqqZ3S2LLAAIbAAO6XcgaDJthxzhbiPQvBA.png\n",
158
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwky2uzWuVX_Z31_RqqZ3S2LLAAIbAAO6XcgaDJthxzhbiPQvBA.png\n",
159
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwky2v6MK8QGPbqGRXY_7Ff97AAIJAAO6XcgaeX7t7CnUP1svBA.png\n",
160
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwky2v6MK8QGPbqGRXY_7Ff97AAIJAAO6XcgaeX7t7CnUP1svBA.png\n",
161
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkyEfms6iPq5DS29Dd6D2z8cAAIPAAO6XcgaSD_BYsNul3QvBA.png\n",
162
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkyEfms6iPq5DS29Dd6D2z8cAAIPAAO6XcgaSD_BYsNul3QvBA.png\n",
163
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkyF0C8hg5V4gzf3ndkxR85jAAISAAO6Xcga_3S1kpeG4LQvBA.png\n",
164
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkyF0C8hg5V4gzf3ndkxR85jAAISAAO6Xcga_3S1kpeG4LQvBA.png\n",
165
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkyH33sfBFAx-udTNCmUeGywAAIdAAO6Xcga_ctijKR1SWQvBA.png\n",
166
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkyH33sfBFAx-udTNCmUeGywAAIdAAO6Xcga_ctijKR1SWQvBA.png\n",
167
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkykaxoUEqLzH4LQ_97kEjXEAAITAAO6XcgalElYoZSU-h4vBA.png\n",
168
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkykaxoUEqLzH4LQ_97kEjXEAAITAAO6XcgalElYoZSU-h4vBA.png\n",
169
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkyMiVj6YuoX4f1yksaw9XyaAAIHAAO6XcgaYS178gABwtHvLwQ.png\n",
170
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkyMiVj6YuoX4f1yksaw9XyaAAIHAAO6XcgaYS178gABwtHvLwQ.png\n",
171
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkyMLVRhyMBQuekl6MU232DLAAIYAAO6XcgaXuWrR0M7nusvBA.png\n",
172
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkyMLVRhyMBQuekl6MU232DLAAIYAAO6XcgaXuWrR0M7nusvBA.png\n",
173
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkyn8eJ-MwaRB-f2Ou7LxyT8AAIiAAO6XcgaE-dnsDfMxP0vBA.png\n",
174
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkyn8eJ-MwaRB-f2Ou7LxyT8AAIiAAO6XcgaE-dnsDfMxP0vBA.png\n",
175
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkysaopy3WbowTHE85MwgCBtAAIQAAO6XcgaM4nGd953zAgvBA.png\n",
176
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkysaopy3WbowTHE85MwgCBtAAIQAAO6XcgaM4nGd953zAgvBA.png\n",
177
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkyv8XFDUvDopgHaqfyF2Ap4AAIkAAO6XcgaegbweKIdMFovBA.png\n",
178
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkyv8XFDUvDopgHaqfyF2Ap4AAIkAAO6XcgaegbweKIdMFovBA.png\n",
179
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkz-wfHvOQif4He4CbowbLJ7AAIXAAO6Xcgar4TYt4Rpe80vBA.png\n",
180
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkz-wfHvOQif4He4CbowbLJ7AAIXAAO6Xcgar4TYt4Rpe80vBA.png\n",
181
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkzeeJGC64ZF_k6FCWDI13-2AAIgAAO6XcgacZW0m8P5TS8vBA.png\n",
182
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkzeeJGC64ZF_k6FCWDI13-2AAIgAAO6XcgacZW0m8P5TS8vBA.png\n",
183
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkzNSMfJYVDxbL0nz5TAec57AAIZAAO6Xcgafq6xhLNMpREvBA.png\n",
184
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkzNSMfJYVDxbL0nz5TAec57AAIZAAO6Xcgafq6xhLNMpREvBA.png\n",
185
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkzOMyLagJgU71zyU3sqe44NAAIjAAO6Xcga9LMZPXdT4fAvBA.png\n",
186
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkzOMyLagJgU71zyU3sqe44NAAIjAAO6Xcga9LMZPXdT4fAvBA.png\n",
187
+ "Warning: Tags file missing for CAACAgEAAxUAAWSbwkztm4XH8wc-ByvaBMG-nFU3AAIeAAO6XcgavKzzR2QciJkvBA.png\n",
188
+ "Warning: Caption file missing for CAACAgEAAxUAAWSbwkztm4XH8wc-ByvaBMG-nFU3AAIeAAO6XcgavKzzR2QciJkvBA.png\n",
189
+ "Warning: Tags file missing for CAACAgEAAxUAAWS_fA8UiecLy6US0JYAAcIsOIydfwACsQIAAo7XaURmftWN7HRPfC8E.png\n",
190
+ "Warning: Caption file missing for CAACAgEAAxUAAWS_fA8UiecLy6US0JYAAcIsOIydfwACsQIAAo7XaURmftWN7HRPfC8E.png\n",
191
+ "Warning: Tags file missing for CAACAgEAAxUAAWTm-yeGgksfp7EaSFOqsKXDZK9OAALLAgAC5mUBR50sbvWbHcsFMAQ.png\n",
192
+ "Warning: Caption file missing for CAACAgEAAxUAAWTm-yeGgksfp7EaSFOqsKXDZK9OAALLAgAC5mUBR50sbvWbHcsFMAQ.png\n",
193
+ "Warning: Tags file missing for CAACAgEAAxUAAWTm-yeV1H3a-uFPYwY-9mwm1N-UAAJEAwACF_QAAUdpKqLTGH2rUzAE.png\n",
194
+ "Warning: Caption file missing for CAACAgEAAxUAAWTm-yeV1H3a-uFPYwY-9mwm1N-UAAJEAwACF_QAAUdpKqLTGH2rUzAE.png\n",
195
+ "Warning: Tags file missing for CAACAgEAAxUAAWTm_XfgFuSKPA31_6CyojocUFAAAyUDAAL5MgABR3-WElC-epoyMAQ.png\n",
196
+ "Warning: Caption file missing for CAACAgEAAxUAAWTm_XfgFuSKPA31_6CyojocUFAAAyUDAAL5MgABR3-WElC-epoyMAQ.png\n",
197
+ "Warning: Tags file missing for CAACAgEAAxUAAWTm_XfHwVXKLVOJCRGH5nzwbHNqAAK6AgAC0p0BR7FaPllcQXVfMAQ.png\n",
198
+ "Warning: Caption file missing for CAACAgEAAxUAAWTm_XfHwVXKLVOJCRGH5nzwbHNqAAK6AgAC0p0BR7FaPllcQXVfMAQ.png\n",
199
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDsAAQY-fz77fmvBhMZzH3nkEgACNgAD7JKZCF9KatFJoFE8LQQ.png\n",
200
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDsAAQY-fz77fmvBhMZzH3nkEgACNgAD7JKZCF9KatFJoFE8LQQ.png\n",
201
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDsaiqHjVkEGMD67c3ib6tbIAAK-DgACssZgSBPTpgQ2UcPBLQQ.png\n",
202
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDsaiqHjVkEGMD67c3ib6tbIAAK-DgACssZgSBPTpgQ2UcPBLQQ.png\n",
203
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDsdLcoyLG7MSxvM_Yule07TAALEEQACI48QSVg1609hc02VLQQ.png\n",
204
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDsdLcoyLG7MSxvM_Yule07TAALEEQACI48QSVg1609hc02VLQQ.png\n",
205
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDsGSX1M_jZWo_rGJiGX0cIwAALTHQAC6WXhS_68PRxD7GiTLQQ.png\n",
206
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDsGSX1M_jZWo_rGJiGX0cIwAALTHQAC6WXhS_68PRxD7GiTLQQ.png\n",
207
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDsHvgoGhsel8VmKWT20N5cEAALTDAAC3AZhSMz7iB99mStuLQQ.png\n",
208
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDsHvgoGhsel8VmKWT20N5cEAALTDAAC3AZhSMz7iB99mStuLQQ.png\n",
209
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDsK1eBELiGnNOQXFc8JS0ZHAALzIwACF2PhSxJfrg2W6SRwLQQ.png\n",
210
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDsK1eBELiGnNOQXFc8JS0ZHAALzIwACF2PhSxJfrg2W6SRwLQQ.png\n",
211
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDslSciIv3MgX4jvqhcabWeKAAIsAAPskpkIyjIKrjeDXYUtBA.png\n",
212
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDslSciIv3MgX4jvqhcabWeKAAIsAAPskpkIyjIKrjeDXYUtBA.png\n",
213
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDsNSSPnr8RwUDym7BclED-oAAK6DAACYwhhSL8bXWZMZUzxLQQ.png\n",
214
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDsNSSPnr8RwUDym7BclED-oAAK6DAACYwhhSL8bXWZMZUzxLQQ.png\n",
215
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDsrY-gBaVUtdXaaWLVHvbYRAAIeFAACazUQSexiP7NcZBkiLQQ.png\n",
216
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDsrY-gBaVUtdXaaWLVHvbYRAAIeFAACazUQSexiP7NcZBkiLQQ.png\n",
217
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDsskEpo1X7laXuMMSvxBWAYAALrCwAClwZhSLUfezSbWEzJLQQ.png\n",
218
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDsskEpo1X7laXuMMSvxBWAYAALrCwAClwZhSLUfezSbWEzJLQQ.png\n",
219
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDsSKJsp2G6miXkQ5GplG__-AAKeJAACF_zhS9DW_2DnEHMdLQQ.png\n",
220
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDsSKJsp2G6miXkQ5GplG__-AAKeJAACF_zhS9DW_2DnEHMdLQQ.png\n",
221
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDsSkUjqAAH2ktgWHt0WQi3C3wACSQsAAnYGYEidYqpnORvlnS0E.png\n",
222
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDsSkUjqAAH2ktgWHt0WQi3C3wACSQsAAnYGYEidYqpnORvlnS0E.png\n",
223
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDstfTL2aMlrq1OjlWZ9ExDdAAJpJwACsurhS9z9AAFoBULEfS0E.png\n",
224
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDstfTL2aMlrq1OjlWZ9ExDdAAJpJwACsurhS9z9AAFoBULEfS0E.png\n",
225
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDsxDvjnMC9It_Yzzosh0bDLAAIwAAPskpkIGMAAATnpr1aQLQQ.png\n",
226
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDsxDvjnMC9It_Yzzosh0bDLAAIwAAPskpkIGMAAATnpr1aQLQQ.png\n",
227
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDszAAHcC60k8I4wcwtbCPRBwAAC5RIAAjaZEUlBhVKZnz7bjC0E.png\n",
228
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDszAAHcC60k8I4wcwtbCPRBwAAC5RIAAjaZEUlBhVKZnz7bjC0E.png\n",
229
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDsZBeDvuWiGh9crSwEWwec4AAItAAPskpkIavk5TLTs5a4tBA.png\n",
230
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDsZBeDvuWiGh9crSwEWwec4AAItAAPskpkIavk5TLTs5a4tBA.png\n",
231
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDsZICfX5V1FrgafsK7N1JyhAAL0DwACuldgSHbONqMvfjFWLQQ.png\n",
232
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDsZICfX5V1FrgafsK7N1JyhAAL0DwACuldgSHbONqMvfjFWLQQ.png\n",
233
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDtC-NkLQ0nw0_02Eubqe7dgAAJnDgACj8FhSA_ZTILxfJLRLQQ.png\n",
234
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDtC-NkLQ0nw0_02Eubqe7dgAAJnDgACj8FhSA_ZTILxfJLRLQQ.png\n",
235
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDtFEc5FRNhnzNiDswNSLUP_AALbHwACXJrgS8Xk5QSyVR4wLQQ.png\n",
236
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDtFEc5FRNhnzNiDswNSLUP_AALbHwACXJrgS8Xk5QSyVR4wLQQ.png\n",
237
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDtJdN9kx4xmYSMvaisaZElIAAIxAAPskpkIz-hYgyb31JctBA.png\n",
238
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDtJdN9kx4xmYSMvaisaZElIAAIxAAPskpkIz-hYgyb31JctBA.png\n",
239
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDtJxS9wis66VzA2-1vhVbPVAALBDQACrCVhSK-GT62vBBoILQQ.png\n",
240
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDtJxS9wis66VzA2-1vhVbPVAALBDQACrCVhSK-GT62vBBoILQQ.png\n",
241
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDtlJGQFSdIYokZ4Xns8_LvgAAKnDwACiNAZSY4Sogr9B14LLQQ.png\n",
242
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDtlJGQFSdIYokZ4Xns8_LvgAAKnDwACiNAZSY4Sogr9B14LLQQ.png\n",
243
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDtOO02t5McrsfdaDOk54BADAALZFgACzmPhScFa0P40ppNxLQQ.png\n",
244
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDtOO02t5McrsfdaDOk54BADAALZFgACzmPhScFa0P40ppNxLQQ.png\n",
245
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDtR2wGcIGzPWnCmNPC2aAxrAAIzKAACzgAB4Etg2LZFuElqAAEtBA.png\n",
246
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDtR2wGcIGzPWnCmNPC2aAxrAAIzKAACzgAB4Etg2LZFuElqAAEtBA.png\n",
247
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDtsQEszljQamKu1KdsIfhE2AAJPCwACXK9hSGl2JGk6Lr2ULQQ.png\n",
248
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDtsQEszljQamKu1KdsIfhE2AAJPCwACXK9hSGl2JGk6Lr2ULQQ.png\n",
249
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDtTZV7izc89IMz04UfnA1vtAAI0AAPskpkIuUIxCIAzbv8tBA.png\n",
250
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDtTZV7izc89IMz04UfnA1vtAAI0AAPskpkIuUIxCIAzbv8tBA.png\n",
251
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDtY2fo0YN_WKGTKWVIleI0iAALXCwACLK5hSC7vfBx_p_DiLQQ.png\n",
252
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDtY2fo0YN_WKGTKWVIleI0iAALXCwACLK5hSC7vfBx_p_DiLQQ.png\n",
253
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDu07I9jDLrPxsoBTiiTzL7aAAIyAAPskpkIfHgwA9eHAAGaLQQ.png\n",
254
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDu07I9jDLrPxsoBTiiTzL7aAAIyAAPskpkIfHgwA9eHAAGaLQQ.png\n",
255
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDu1cuo2B0eehtp1seOC5u-XAAJiEwACvmUYSRPHK4TijlycLQQ.png\n",
256
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDu1cuo2B0eehtp1seOC5u-XAAJiEwACvmUYSRPHK4TijlycLQQ.png\n",
257
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDu2P507Zs-rU_M5hElpmFPCAAI5DAAC1NphSNHTjZEoqx1kLQQ.png\n",
258
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDu2P507Zs-rU_M5hElpmFPCAAI5DAAC1NphSNHTjZEoqx1kLQQ.png\n",
259
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDu58VAN2DIWmS298DvjXU1XAALGDQACqSBgSHfrXA93GnAHLQQ.png\n",
260
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDu58VAN2DIWmS298DvjXU1XAALGDQACqSBgSHfrXA93GnAHLQQ.png\n",
261
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDubzsQyEBnUCKce9m2mzLgHAAK_EQACJ8gQSUOUFPn2sx_zLQQ.png\n",
262
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDubzsQyEBnUCKce9m2mzLgHAAK_EQACJ8gQSUOUFPn2sx_zLQQ.png\n",
263
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDuEWM2c9qFwZVdt7obc4ms6AALKLAACfIHgS7aCZH9l8vyXLQQ.png\n",
264
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDuEWM2c9qFwZVdt7obc4ms6AALKLAACfIHgS7aCZH9l8vyXLQQ.png\n",
265
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDuk9aBvFvCPkL7Tx9OXMSgjAALvJAACWLLgS7fZrgyhwQAB4i0E.png\n",
266
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDuk9aBvFvCPkL7Tx9OXMSgjAALvJAACWLLgS7fZrgyhwQAB4i0E.png\n",
267
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDuKyPpmVeahInwJqyo-ce7tAALMEQACOxkQSaoxWaSPbDaILQQ.png\n",
268
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDuKyPpmVeahInwJqyo-ce7tAALMEQACOxkQSaoxWaSPbDaILQQ.png\n",
269
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDuLKYgTjTBeMn-qKceI8sdmAAK4KAACJbDhS0kyrJLts1VfLQQ.png\n",
270
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDuLKYgTjTBeMn-qKceI8sdmAAK4KAACJbDhS0kyrJLts1VfLQQ.png\n",
271
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDurxa15wKrpdTz7YcDQaNYsAAL7FAACcvcQSc8eFsO2P-qMLQQ.png\n",
272
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDurxa15wKrpdTz7YcDQaNYsAAL7FAACcvcQSc8eFsO2P-qMLQQ.png\n",
273
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDuSIvWGiak_c_dGr_KrlFXcAAIWDgACRAVgSBqT3rViIvQAAS0E.png\n",
274
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDuSIvWGiak_c_dGr_KrlFXcAAIWDgACRAVgSBqT3rViIvQAAS0E.png\n",
275
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDv5KTxCf8orCCIGTfdZ4troAAIvAAPskpkIXOzXfxv5c9otBA.png\n",
276
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDv5KTxCf8orCCIGTfdZ4troAAIvAAPskpkIXOzXfxv5c9otBA.png\n",
277
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDv9wgrHJjWCqwvew2KwUJUYAAILEQACUoIYSRZrf6ijm48yLQQ.png\n",
278
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDv9wgrHJjWCqwvew2KwUJUYAAILEQACUoIYSRZrf6ijm48yLQQ.png\n",
279
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDvAwK92k-vwi-425GhsDJZnAAKJDgACy7FhSD3CHoDBy-N3LQQ.png\n",
280
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDvAwK92k-vwi-425GhsDJZnAAKJDgACy7FhSD3CHoDBy-N3LQQ.png\n",
281
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDvF9wGWFE06Q98Kcajq_G-oAAI1AAPskpkIaSQDZmYbuA8tBA.png\n",
282
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDvF9wGWFE06Q98Kcajq_G-oAAI1AAPskpkIaSQDZmYbuA8tBA.png\n",
283
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDvFgYN0c-BMopR_zr9AF3pbAAIzAAPskpkIwtKPvixBnyYtBA.png\n",
284
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDvFgYN0c-BMopR_zr9AF3pbAAIzAAPskpkIwtKPvixBnyYtBA.png\n",
285
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDvfqc2Ip6Ugr1DgECtEaqvaAAKFCwACT65hSHyNfSYQSVj5LQQ.png\n",
286
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDvfqc2Ip6Ugr1DgECtEaqvaAAKFCwACT65hSHyNfSYQSVj5LQQ.png\n",
287
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDvIOo0xiAP3CR-WAcqcnSDAAAI0IgACSRrgS4P7o8y-IjZqLQQ.png\n",
288
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDvIOo0xiAP3CR-WAcqcnSDAAAI0IgACSRrgS4P7o8y-IjZqLQQ.png\n",
289
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDvk877TCwGlSieaC2kISv1LAAJjDAACAb9gSIU9hc-07plQLQQ.png\n",
290
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDvk877TCwGlSieaC2kISv1LAAJjDAACAb9gSIU9hc-07plQLQQ.png\n",
291
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDvLCYquPd4cim70V91lwWBWAALBFAACiEwRSaMaHieO-Vc2LQQ.png\n",
292
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDvLCYquPd4cim70V91lwWBWAALBFAACiEwRSaMaHieO-Vc2LQQ.png\n",
293
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDvNaW_NAxWub3z1hiTbwaRZAAIiHwACGRHhSxqCy7HLyk_KLQQ.png\n",
294
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDvNaW_NAxWub3z1hiTbwaRZAAIiHwACGRHhSxqCy7HLyk_KLQQ.png\n",
295
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDvnflY_RDV2P97cWqn5uczOAAIuAAPskpkIZSLJ6UU9UzstBA.png\n",
296
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDvnflY_RDV2P97cWqn5uczOAAIuAAPskpkIZSLJ6UU9UzstBA.png\n",
297
+ "Warning: Tags file missing for CAACAgIAAxUAAWPEVDvRYSb5M-4_nd8ZchYmDIczAAKGJAACI63gSwogj88WrWEmLQQ.png\n",
298
+ "Warning: Caption file missing for CAACAgIAAxUAAWPEVDvRYSb5M-4_nd8ZchYmDIczAAKGJAACI63gSwogj88WrWEmLQQ.png\n",
299
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4o8rIKJ10f9O9k_3TReuPF1AAIOAANBBI8pCYy93nFcBKAfBA.png\n",
300
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4o8rIKJ10f9O9k_3TReuPF1AAIOAANBBI8pCYy93nFcBKAfBA.png\n",
301
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4odRYqMG4JTwRjm1o7GnNgJAAJVAANBBI8pWG_FAc1CdCkfBA.png\n",
302
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4odRYqMG4JTwRjm1o7GnNgJAAJVAANBBI8pWG_FAc1CdCkfBA.png\n",
303
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4oe0bCKOetlKhjQJSE15AABCgACNQADQQSPKV7PCg6dx3_zHwQ.png\n",
304
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4oe0bCKOetlKhjQJSE15AABCgACNQADQQSPKV7PCg6dx3_zHwQ.png\n",
305
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4oEWqlTDz4v9tcmo3evxFwWAAImAANBBI8pbxnKG7pOe6wfBA.png\n",
306
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4oEWqlTDz4v9tcmo3evxFwWAAImAANBBI8pbxnKG7pOe6wfBA.png\n",
307
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4oh1UtvE0VrxyFgOl_NuN3EAAINAANBBI8p3M8Sqi_268sfBA.png\n",
308
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4oh1UtvE0VrxyFgOl_NuN3EAAINAANBBI8p3M8Sqi_268sfBA.png\n",
309
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4omzRx4q19VuY8rJp37sNv3AAIwAANBBI8plNusVc6AcvMfBA.png\n",
310
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4omzRx4q19VuY8rJp37sNv3AAIwAANBBI8plNusVc6AcvMfBA.png\n",
311
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4on76WWtKfzTKTTjSjn9y6fAAInAANBBI8p4AaxwzUbehMfBA.png\n",
312
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4on76WWtKfzTKTTjSjn9y6fAAInAANBBI8p4AaxwzUbehMfBA.png\n",
313
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4onuJzYIiQSOiX_AQZJ1l6VAAI2AANBBI8p1w_7smfq9QIfBA.png\n",
314
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4onuJzYIiQSOiX_AQZJ1l6VAAI2AANBBI8p1w_7smfq9QIfBA.png\n",
315
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4oQbuJMTR3bxqBNaQrElwpLAAKEAANBBI8pinQNjU6m44QfBA.png\n",
316
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4oQbuJMTR3bxqBNaQrElwpLAAKEAANBBI8pinQNjU6m44QfBA.png\n",
317
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4oT9J8MXuVFeBoxRY4Wk1jTAAIpAANBBI8pRDsK-lUq3esfBA.png\n",
318
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4oT9J8MXuVFeBoxRY4Wk1jTAAIpAANBBI8pRDsK-lUq3esfBA.png\n",
319
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4oTBQjMibhsOFS8fGlmRi9jAAIlAANBBI8p-mXXjEMIPoofBA.png\n",
320
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4oTBQjMibhsOFS8fGlmRi9jAAIlAANBBI8p-mXXjEMIPoofBA.png\n",
321
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4oTjDIMcWXTo71fTMq2ygg2AAIbAANBBI8p_o66WiefLggfBA.png\n",
322
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4oTjDIMcWXTo71fTMq2ygg2AAIbAANBBI8p_o66WiefLggfBA.png\n",
323
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4oTQnRZyFAr5lOsEZPqVgU6AAI0AANBBI8pnRDkGreTndsfBA.png\n",
324
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4oTQnRZyFAr5lOsEZPqVgU6AAI0AANBBI8pnRDkGreTndsfBA.png\n",
325
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4oTV_2oeDkhbirI97ThZTuiAAI5AANBBI8pecVFWdwsbR4fBA.png\n",
326
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4oTV_2oeDkhbirI97ThZTuiAAI5AANBBI8pecVFWdwsbR4fBA.png\n",
327
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4oUPDXFQ9xY8BZaryeDv3kIAAItAANBBI8pbCFj7voGQsEfBA.png\n",
328
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4oUPDXFQ9xY8BZaryeDv3kIAAItAANBBI8pbCFj7voGQsEfBA.png\n",
329
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4p1p-SdcdnuzZb1WMfw5goIAAI9AANBBI8pcuAbWnmeuH8fBA.png\n",
330
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4p1p-SdcdnuzZb1WMfw5goIAAI9AANBBI8pcuAbWnmeuH8fBA.png\n",
331
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4pB7HyRK8_w92xpKc2MoQ4fAAILAANBBI8pmT_2fIikiOkfBA.png\n",
332
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4pB7HyRK8_w92xpKc2MoQ4fAAILAANBBI8pmT_2fIikiOkfBA.png\n",
333
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4pBDQsRz8iVAAG7znH08ouCXwACFgADQQSPKdYFZMUwIY7eHwQ.png\n",
334
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4pBDQsRz8iVAAG7znH08ouCXwACFgADQQSPKdYFZMUwIY7eHwQ.png\n",
335
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4pciiLXRmG929X6AAE96W_GdgACHQADQQSPKS-_HQMuMuqiHwQ.png\n",
336
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4pciiLXRmG929X6AAE96W_GdgACHQADQQSPKS-_HQMuMuqiHwQ.png\n",
337
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4pdTNacv7CIjGRJGBF2QA8AAxEAA0EEjylx8a0bi4zUfB8E.png\n",
338
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4pdTNacv7CIjGRJGBF2QA8AAxEAA0EEjylx8a0bi4zUfB8E.png\n",
339
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4phHMHoSadLQQMSU-dF9Bp6AAJZAANBBI8pYNqpbLHbVJAfBA.png\n",
340
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4phHMHoSadLQQMSU-dF9Bp6AAJZAANBBI8pYNqpbLHbVJAfBA.png\n",
341
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4pleLRHz7teeQS9SK05ZJsOAAKFAANBBI8pkdpfU5lAcIsfBA.png\n",
342
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4pleLRHz7teeQS9SK05ZJsOAAKFAANBBI8pkdpfU5lAcIsfBA.png\n",
343
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4pLHgYT0sXa3S67KHcu2yfbAAJWAANBBI8pNje8bsmT7R4fBA.png\n",
344
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4pLHgYT0sXa3S67KHcu2yfbAAJWAANBBI8pNje8bsmT7R4fBA.png\n",
345
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4pMzFDmjHf_xxbN-0qt6qaaAAKHAANBBI8p-NkdI61Wc64fBA.png\n",
346
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4pMzFDmjHf_xxbN-0qt6qaaAAKHAANBBI8p-NkdI61Wc64fBA.png\n",
347
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4pQW1Mc0kxM_EbxeVsVwnbxAAJ_AANBBI8pXKAAAaYBfLdmHwQ.png\n",
348
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4pQW1Mc0kxM_EbxeVsVwnbxAAJ_AANBBI8pXKAAAaYBfLdmHwQ.png\n",
349
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4pTZuIwNhjePW-8OYQI1G_8AAJaAANBBI8ps8RvZQABKjM8HwQ.png\n",
350
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4pTZuIwNhjePW-8OYQI1G_8AAJaAANBBI8ps8RvZQABKjM8HwQ.png\n",
351
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4pU55hBWUHDJsrurMYmy22qAAISAANBBI8pYViCMam4I5cfBA.png\n",
352
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4pU55hBWUHDJsrurMYmy22qAAISAANBBI8pYViCMam4I5cfBA.png\n",
353
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4pW30sa5gnNljK4Qh9V1eeQAAIUAANBBI8pAd0KtNaKW8cfBA.png\n",
354
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4pW30sa5gnNljK4Qh9V1eeQAAIUAANBBI8pAd0KtNaKW8cfBA.png\n",
355
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4pxix6K5EmRr5sz_GsPx1WVAAIuAANBBI8pk7Zucv8wmTIfBA.png\n",
356
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4pxix6K5EmRr5sz_GsPx1WVAAIuAANBBI8pk7Zucv8wmTIfBA.png\n",
357
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4pYxSshrZ9YW7uhpjgH7fTPAAJcAANBBI8prso4sFJJ4zAfBA.png\n",
358
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4pYxSshrZ9YW7uhpjgH7fTPAAJcAANBBI8prso4sFJJ4zAfBA.png\n",
359
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4pzjBbMIy9gUK9GiVZh01kOAAKGAANBBI8p8_BOKAQ-QZ4fBA.png\n",
360
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4pzjBbMIy9gUK9GiVZh01kOAAKGAANBBI8p8_BOKAQ-QZ4fBA.png\n",
361
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4pzyUuICRYYvvr9y7Tg1kIbAAIMAANBBI8pTrJO4Zf3oMEfBA.png\n",
362
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4pzyUuICRYYvvr9y7Tg1kIbAAIMAANBBI8pTrJO4Zf3oMEfBA.png\n",
363
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4q3BuZhJNvSJFJDAyURGIycAAI8AANBBI8pWcWzjUYB2i8fBA.png\n",
364
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4q3BuZhJNvSJFJDAyURGIycAAI8AANBBI8pWcWzjUYB2i8fBA.png\n",
365
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4q3R9XmVPZG3C6Ygdu8aVYgAAJ-AANBBI8pRWwqoIxXcMYfBA.png\n",
366
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4q3R9XmVPZG3C6Ygdu8aVYgAAJ-AANBBI8pRWwqoIxXcMYfBA.png\n",
367
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4q9SaymeqjVlER_CgheQ9L0AAIZAANBBI8puSS9Wks4cNofBA.png\n",
368
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4q9SaymeqjVlER_CgheQ9L0AAIZAANBBI8puSS9Wks4cNofBA.png\n",
369
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4qCM3lBTlS3wv5PZiAY3yu1AAJdAANBBI8p3coC7GuLGr0fBA.png\n",
370
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4qCM3lBTlS3wv5PZiAY3yu1AAJdAANBBI8p3coC7GuLGr0fBA.png\n",
371
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4qdj_XNNlft2hTFG8GYW3gYAAKDAANBBI8pcTXTxQdA2xYfBA.png\n",
372
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4qdj_XNNlft2hTFG8GYW3gYAAKDAANBBI8pcTXTxQdA2xYfBA.png\n",
373
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4qDUQ5_Qy5_YcCRlpFe34-8AAI6AANBBI8ptxOBq0FmuhEfBA.png\n",
374
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4qDUQ5_Qy5_YcCRlpFe34-8AAI6AANBBI8ptxOBq0FmuhEfBA.png\n",
375
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4qg1sbu5-yEydwhwXsBiBkNAAIyAANBBI8phe7AL-LagXcfBA.png\n",
376
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4qg1sbu5-yEydwhwXsBiBkNAAIyAANBBI8phe7AL-LagXcfBA.png\n",
377
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4qGyNhu9YPJtJNbT-_qMgM9AAIVAANBBI8pRD8RPrU0ddMfBA.png\n",
378
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4qGyNhu9YPJtJNbT-_qMgM9AAIVAANBBI8pRD8RPrU0ddMfBA.png\n",
379
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4qipUmxGrBRG98ySKM16MIAA14AA0EEjyl5LXFbWyWz0R8E.png\n",
380
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4qipUmxGrBRG98ySKM16MIAA14AA0EEjyl5LXFbWyWz0R8E.png\n",
381
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4qjaO0uMEq3j5Y4kWq9MMKbAAIsAANBBI8pnBWaXwABn0iqHwQ.png\n",
382
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4qjaO0uMEq3j5Y4kWq9MMKbAAIsAANBBI8pnBWaXwABn0iqHwQ.png\n",
383
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4qK5_f9L97ZGJOl4-0DlH3GAAIhAANBBI8puz4iDxHA2VwfBA.png\n",
384
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4qK5_f9L97ZGJOl4-0DlH3GAAIhAANBBI8puz4iDxHA2VwfBA.png\n",
385
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4qmM2a3083_J0_j_3mwLuaqAAJXAANBBI8pqzCv0PPo0vYfBA.png\n",
386
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4qmM2a3083_J0_j_3mwLuaqAAJXAANBBI8pqzCv0PPo0vYfBA.png\n",
387
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4qmZlL4HiMYqyONVFi_Xvt_AAIkAANBBI8pSSRPC-FQEPwfBA.png\n",
388
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4qmZlL4HiMYqyONVFi_Xvt_AAIkAANBBI8pSSRPC-FQEPwfBA.png\n",
389
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4qRjS7j3Feda5cgmSoP5LwJAAKCAANBBI8psYSyoB13HIgfBA.png\n",
390
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4qRjS7j3Feda5cgmSoP5LwJAAKCAANBBI8psYSyoB13HIgfBA.png\n",
391
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4qxi1vW9xFLmDSjFcZNhRaXAAI7AANBBI8p0E6g8L5TvcQfBA.png\n",
392
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4qxi1vW9xFLmDSjFcZNhRaXAAI7AANBBI8p0E6g8L5TvcQfBA.png\n",
393
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4r1vVh6Hkp5O1rKoYTptm8vAAIPAANBBI8pw_9pHX7FN0MfBA.png\n",
394
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4r1vVh6Hkp5O1rKoYTptm8vAAIPAANBBI8pw_9pHX7FN0MfBA.png\n",
395
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4r4LPBGUURbRQKpFdDVayhAAAJYAANBBI8pfEZtXPgOuF4fBA.png\n",
396
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4r4LPBGUURbRQKpFdDVayhAAAJYAANBBI8pfEZtXPgOuF4fBA.png\n",
397
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4r5ZybDC6Q-u85jS7j4-2HOAAIrAANBBI8pOZr9k1agWegfBA.png\n",
398
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4r5ZybDC6Q-u85jS7j4-2HOAAIrAANBBI8pOZr9k1agWegfBA.png\n",
399
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4r6-su20V-ke5cfXJuhURBEAAIYAANBBI8pDfr4aUhtPoUfBA.png\n",
400
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4r6-su20V-ke5cfXJuhURBEAAIYAANBBI8pDfr4aUhtPoUfBA.png\n",
401
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4r8YX1yEh9SpuBN1BCjtFLoAAIvAANBBI8pDo33GIcBfFAfBA.png\n",
402
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4r8YX1yEh9SpuBN1BCjtFLoAAIvAANBBI8pDo33GIcBfFAfBA.png\n",
403
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4r8zQe9aLseMTdZL0Pf-1BuAAIoAANBBI8pvD92OhWGxK4fBA.png\n",
404
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4r8zQe9aLseMTdZL0Pf-1BuAAIoAANBBI8pvD92OhWGxK4fBA.png\n",
405
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4raC-WMfjtAOejcPZYeqI45AAKBAANBBI8pt3oUA5x5ZowfBA.png\n",
406
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4raC-WMfjtAOejcPZYeqI45AAKBAANBBI8pt3oUA5x5ZowfBA.png\n",
407
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4rb1BOdu_zzW5-OZvKijVeaAAIaAANBBI8pptGlvVBcVkIfBA.png\n",
408
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4rb1BOdu_zzW5-OZvKijVeaAAIaAANBBI8pptGlvVBcVkIfBA.png\n",
409
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4rC67EiJF9qJr4FscYVF8HpAAIxAANBBI8pUqelRZFWzIYfBA.png\n",
410
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4rC67EiJF9qJr4FscYVF8HpAAIxAANBBI8pUqelRZFWzIYfBA.png\n",
411
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4rEfkYesu52CkRrudtcDPTdAAIQAANBBI8pLzZtanK6UrkfBA.png\n",
412
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4rEfkYesu52CkRrudtcDPTdAAIQAANBBI8pLzZtanK6UrkfBA.png\n",
413
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4rGVxgxnu9GkI2W98vtikMrAAI3AANBBI8pnHomZSe5VMUfBA.png\n",
414
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4rGVxgxnu9GkI2W98vtikMrAAI3AANBBI8pnHomZSe5VMUfBA.png\n",
415
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4ri3Av3JrzwJCUJPlxa2FXgAAIgAANBBI8pJ0HKDyxOk1YfBA.png\n",
416
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4ri3Av3JrzwJCUJPlxa2FXgAAIgAANBBI8pJ0HKDyxOk1YfBA.png\n",
417
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4ri9L4J-bGMobm_tsUgmMpaAAIqAANBBI8pMg4awZgpbeMfBA.png\n",
418
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4ri9L4J-bGMobm_tsUgmMpaAAIqAANBBI8pMg4awZgpbeMfBA.png\n",
419
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4rjAQUZLgxPzylo0Drpc4tyAAIXAANBBI8p70JNJes4qJIfBA.png\n",
420
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4rjAQUZLgxPzylo0Drpc4tyAAIXAANBBI8p70JNJes4qJIfBA.png\n",
421
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4rJEj7J-YutbxRgXbgRciRXAAITAANBBI8prB6c7AqdBIIfBA.png\n",
422
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4rJEj7J-YutbxRgXbgRciRXAAITAANBBI8prB6c7AqdBIIfBA.png\n",
423
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4rnnk0UCW6--Qi5tGBnX9_0AAI4AANBBI8pcGMILuq54_UfBA.png\n",
424
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4rnnk0UCW6--Qi5tGBnX9_0AAI4AANBBI8pcGMILuq54_UfBA.png\n",
425
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4rpyU5asx952b5mEJsO15ZqAAIzAANBBI8pxeNFanxRHUcfBA.png\n",
426
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4rpyU5asx952b5mEJsO15ZqAAIzAANBBI8pxeNFanxRHUcfBA.png\n",
427
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4rTh1lf5Qcn42bU1u6OYfHnAAIiAANBBI8pFjwQpwFS2msfBA.png\n",
428
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4rTh1lf5Qcn42bU1u6OYfHnAAIiAANBBI8pFjwQpwFS2msfBA.png\n",
429
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4rUC7wE02pCmnhW4Tg_z5UyAAIjAANBBI8plb-6CTwxDvIfBA.png\n",
430
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4rUC7wE02pCmnhW4Tg_z5UyAAIjAANBBI8plb-6CTwxDvIfBA.png\n",
431
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4rVgPriAvX_LoFRt8z2bu7-AAKAAANBBI8puD-rIc7fBosfBA.png\n",
432
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4rVgPriAvX_LoFRt8z2bu7-AAKAAANBBI8puD-rIc7fBosfBA.png\n",
433
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4rXoOMn5sjDq9NYqPssNPhBAAIeAANBBI8pIOMc2v2XSjgfBA.png\n",
434
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4rXoOMn5sjDq9NYqPssNPhBAAIeAANBBI8pIOMc2v2XSjgfBA.png\n",
435
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4rYZJDtM0KiDFuqU8RRnx1IAAJbAANBBI8pd9DAsXZFgOMfBA.png\n",
436
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4rYZJDtM0KiDFuqU8RRnx1IAAJbAANBBI8pd9DAsXZFgOMfBA.png\n",
437
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTd4rztQKJ02KlC0xtxFOkGU9nAAIcAANBBI8pg71wEMvkoycfBA.png\n",
438
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTd4rztQKJ02KlC0xtxFOkGU9nAAIcAANBBI8pg71wEMvkoycfBA.png\n",
439
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvog9GmIrFZlV-zBnL3xj8ZtAAL4BwAC0SShUwZotdV14eXTHwQ.png\n",
440
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvog9GmIrFZlV-zBnL3xj8ZtAAL4BwAC0SShUwZotdV14eXTHwQ.png\n",
441
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvoitsW-U1GKzfSxaJ3K7p0SAAJ2CgACFNmgUzN71U3UdjGlHwQ.png\n",
442
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvoitsW-U1GKzfSxaJ3K7p0SAAJ2CgACFNmgUzN71U3UdjGlHwQ.png\n",
443
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvoSeDWizcI1rQxsjncK1qHrAAJLCAACFzuoUwnpuoEjrJA0HwQ.png\n",
444
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvoSeDWizcI1rQxsjncK1qHrAAJLCAACFzuoUwnpuoEjrJA0HwQ.png\n",
445
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvp7hhsEFEyAep0UdwVXDUQFAALFBwACI7TYU1Xg9yLFZ5pwHwQ.png\n",
446
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvp7hhsEFEyAep0UdwVXDUQFAALFBwACI7TYU1Xg9yLFZ5pwHwQ.png\n",
447
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvpbm7uK26ULWN-i320AAYkycAACIwwAArIN0FN6fdNS34DSgR8E.png\n",
448
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvpbm7uK26ULWN-i320AAYkycAACIwwAArIN0FN6fdNS34DSgR8E.png\n",
449
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvpi8TxyViAQ2oKssBd2VnIaAAJ6CAACCTTYU1_TpyeKu7T0HwQ.png\n",
450
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvpi8TxyViAQ2oKssBd2VnIaAAJ6CAACCTTYU1_TpyeKu7T0HwQ.png\n",
451
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvpJOi2IFxhBNapovsXuHXa9AAKrCgACUsbRU6Ao7E30qmJaHwQ.png\n",
452
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvpJOi2IFxhBNapovsXuHXa9AAKrCgACUsbRU6Ao7E30qmJaHwQ.png\n",
453
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvpnwvqLsNbzQlybuVvxrjxFAAKaCAACHj_QUyXkv7g-DyyvHwQ.png\n",
454
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvpnwvqLsNbzQlybuVvxrjxFAAKaCAACHj_QUyXkv7g-DyyvHwQ.png\n",
455
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvpWgIdo4MOC-hAugSWoKNjkAAKnCAACVDfYUxNV92mq8vGDHwQ.png\n",
456
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvpWgIdo4MOC-hAugSWoKNjkAAKnCAACVDfYUxNV92mq8vGDHwQ.png\n",
457
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvpZCGSke-GZy1YH7O4uFDIGAAITCAACs2qoUy_cI-sng66_HwQ.png\n",
458
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvpZCGSke-GZy1YH7O4uFDIGAAITCAACs2qoUy_cI-sng66_HwQ.png\n",
459
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvq1rn2Eww-IeE1klRlJkJK-AAJSCgACSMGgU3UeQzDjygmcHwQ.png\n",
460
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvq1rn2Eww-IeE1klRlJkJK-AAJSCgACSMGgU3UeQzDjygmcHwQ.png\n",
461
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvqUzHfGvXvAEUT_zR3U2lQAA-gIAAKBeKhTeqPs1ybXmqgfBA.png\n",
462
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvqUzHfGvXvAEUT_zR3U2lQAA-gIAAKBeKhTeqPs1ybXmqgfBA.png\n",
463
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvr0ThIYtfmhoRea6D_qywAB_wACRQ0AApdZoVMMc19yMSl0NB8E.png\n",
464
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvr0ThIYtfmhoRea6D_qywAB_wACRQ0AApdZoVMMc19yMSl0NB8E.png\n",
465
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvr37M2_9DVtMl3bL4Hl34FdAAIJDAAC8MqhU6FPY4s5SjWrHwQ.png\n",
466
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvr37M2_9DVtMl3bL4Hl34FdAAIJDAAC8MqhU6FPY4s5SjWrHwQ.png\n",
467
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvrb3rGZuGkmvUXxEi0eVkuoAAJ_CgACNwyhUw4YK-n_itKRHwQ.png\n",
468
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvrb3rGZuGkmvUXxEi0eVkuoAAJ_CgACNwyhUw4YK-n_itKRHwQ.png\n",
469
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvrjFMHvRNBoDSTZ8ubNI63VAAKyFQACiRugU1qHKmNJ0w1tHwQ.png\n",
470
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvrjFMHvRNBoDSTZ8ubNI63VAAKyFQACiRugU1qHKmNJ0w1tHwQ.png\n",
471
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvrVKhmAZdtBzlvTZlAdqjt9AAILCgACpCnZUzKsugmk18fKHwQ.png\n",
472
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvrVKhmAZdtBzlvTZlAdqjt9AAILCgACpCnZUzKsugmk18fKHwQ.png\n",
473
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvrWuA5Ef_O0xg5dFLT72OKZAAKkCAACo43RUztfC-7Mfi7GHwQ.png\n",
474
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvrWuA5Ef_O0xg5dFLT72OKZAAKkCAACo43RUztfC-7Mfi7GHwQ.png\n",
475
+ "Warning: Tags file missing for CAACAgQAAxUAAWDTdvrXQbcQbROIz75PbiIdZ6Z3AALOCQACKSSoU1XGqQ01l1u2HwQ.png\n",
476
+ "Warning: Caption file missing for CAACAgQAAxUAAWDTdvrXQbcQbROIz75PbiIdZ6Z3AALOCQACKSSoU1XGqQ01l1u2HwQ.png\n",
477
+ "Warning: Tags file missing for CAACAgQAAxUAAWFII2whcPCb8fgeCFupyWchqLM-AAIpAwAC8cCUCUHb29sKklYdIAQ.png\n",
478
+ "Warning: Caption file missing for CAACAgQAAxUAAWFII2whcPCb8fgeCFupyWchqLM-AAIpAwAC8cCUCUHb29sKklYdIAQ.png\n",
479
+ "Warning: Tags file missing for CAACAgQAAxUAAWFII2wv3-U9VsjaOmlFFyhS9jhVAAInAwAC8cCUCbQZBeTjtii8IAQ.png\n",
480
+ "Warning: Caption file missing for CAACAgQAAxUAAWFII2wv3-U9VsjaOmlFFyhS9jhVAAInAwAC8cCUCbQZBeTjtii8IAQ.png\n",
481
+ "Warning: Tags file missing for CAACAgQAAxUAAWFIIVQG6QS2VmhitLBFzPVUGjAiAAIPAAPhgOIcWx-D6ml4AAGdIAQ.png\n",
482
+ "Warning: Caption file missing for CAACAgQAAxUAAWFIIVQG6QS2VmhitLBFzPVUGjAiAAIPAAPhgOIcWx-D6ml4AAGdIAQ.png\n",
483
+ "Warning: Tags file missing for CAACAgQAAxUAAWFIIVR-2Z4GBoAfL_0-BIx9ut3EAAIMAAPhgOIcLFs6iz-IXi8gBA.png\n",
484
+ "Warning: Caption file missing for CAACAgQAAxUAAWFIIVR-2Z4GBoAfL_0-BIx9ut3EAAIMAAPhgOIcLFs6iz-IXi8gBA.png\n",
485
+ "Warning: Tags file missing for CAACAgQAAxUAAWFIIVSFc2wSzVIbfzqmqiOCcqIgAAINAAPhgOIcHTIFJD4R4PAgBA.png\n",
486
+ "Warning: Caption file missing for CAACAgQAAxUAAWFIIVSFc2wSzVIbfzqmqiOCcqIgAAINAAPhgOIcHTIFJD4R4PAgBA.png\n",
487
+ "Warning: Tags file missing for CAACAgQAAxUAAWFIIVT6G2Zu0hKtRPHbY0SR2eDxAAILAAPhgOIcDJyMwuV7REUgBA.png\n",
488
+ "Warning: Caption file missing for CAACAgQAAxUAAWFIIVT6G2Zu0hKtRPHbY0SR2eDxAAILAAPhgOIcDJyMwuV7REUgBA.png\n",
489
+ "Warning: Tags file missing for CAACAgQAAxUAAWFIIVT9vhDtxOiWaRZa8mYAAUTyuAACDgAD4YDiHKtuj-GoerDDIAQ.png\n",
490
+ "Warning: Caption file missing for CAACAgQAAxUAAWFIIVT9vhDtxOiWaRZa8mYAAUTyuAACDgAD4YDiHKtuj-GoerDDIAQ.png\n",
491
+ "Warning: Tags file missing for CAACAgQAAxUAAWFIIVToyVqIdH9HypyqxZ24sJJnAAIQAAPhgOIcJhaRN2xHgawgBA.png\n",
492
+ "Warning: Caption file missing for CAACAgQAAxUAAWFIIVToyVqIdH9HypyqxZ24sJJnAAIQAAPhgOIcJhaRN2xHgawgBA.png\n",
493
+ "Warning: Tags file missing for CAACAgQAAxUAAWIi_gdBXbxnTDqmeg2GdyF6Iu6fAAJHCwACN_NpUTulV756qUZhIwQ.png\n",
494
+ "Warning: Caption file missing for CAACAgQAAxUAAWIi_gdBXbxnTDqmeg2GdyF6Iu6fAAJHCwACN_NpUTulV756qUZhIwQ.png\n",
495
+ "Warning: Tags file missing for CAACAgQAAxUAAWIi_gdd3JcFgUHXwNdJeNDNdkVqAAKECgACTKxoUXCka4rhmyrBIwQ.png\n",
496
+ "Warning: Caption file missing for CAACAgQAAxUAAWIi_gdd3JcFgUHXwNdJeNDNdkVqAAKECgACTKxoUXCka4rhmyrBIwQ.png\n",
497
+ "Warning: Tags file missing for CAACAgQAAxUAAWIi_gdeQOu5SfgbRhSjWNcpEt_7AAIDCgACUo9oUVj0WvyQlqwBIwQ.png\n",
498
+ "Warning: Caption file missing for CAACAgQAAxUAAWIi_gdeQOu5SfgbRhSjWNcpEt_7AAIDCgACUo9oUVj0WvyQlqwBIwQ.png\n",
499
+ "Warning: Tags file missing for CAACAgQAAxUAAWIi_gdGRl3_I5FAriw2sFr2-WyNAAKkCgACHk9oUd7hTzv27l5NIwQ.png\n",
500
+ "Warning: Caption file missing for CAACAgQAAxUAAWIi_gdGRl3_I5FAriw2sFr2-WyNAAKkCgACHk9oUd7hTzv27l5NIwQ.png\n",
501
+ "Warning: Tags file missing for CAACAgQAAxUAAWIi_geE9l_85GN13C2i5BX4CW6aAAJTCwACStdpUTv5aQABCL1INyME.png\n",
502
+ "Warning: Caption file missing for CAACAgQAAxUAAWIi_geE9l_85GN13C2i5BX4CW6aAAJTCwACStdpUTv5aQABCL1INyME.png\n",
503
+ "Warning: Tags file missing for CAACAgQAAxUAAWIi_gf-soqBePbcYNhrqCKVxE2dAALjCQACEAxoUfbsUStmpEztIwQ.png\n",
504
+ "Warning: Caption file missing for CAACAgQAAxUAAWIi_gf-soqBePbcYNhrqCKVxE2dAALjCQACEAxoUfbsUStmpEztIwQ.png\n",
505
+ "Warning: Tags file missing for CAACAgQAAxUAAWJHUcoF5JLPg-vPgZiXUzDZnzKaAAJXCwACfynpUnvPh7Zm5AzgIwQ.png\n",
506
+ "Warning: Caption file missing for CAACAgQAAxUAAWJHUcoF5JLPg-vPgZiXUzDZnzKaAAJXCwACfynpUnvPh7Zm5AzgIwQ.png\n",
507
+ "Warning: Tags file missing for CAACAgQAAxUAAWJHUcoYNXnluRMAAUh98gsRqlQXhAACgQ0AAm01sVA0pyC_mgr8BCME.png\n",
508
+ "Warning: Caption file missing for CAACAgQAAxUAAWJHUcoYNXnluRMAAUh98gsRqlQXhAACgQ0AAm01sVA0pyC_mgr8BCME.png\n",
509
+ "Warning: Tags file missing for CAACAgQAAxUAAWJHUcp5hBVhklRQjn2Wns3shoaTAALaCgACRl_hUn42bt6EBUL0IwQ.png\n",
510
+ "Warning: Caption file missing for CAACAgQAAxUAAWJHUcp5hBVhklRQjn2Wns3shoaTAALaCgACRl_hUn42bt6EBUL0IwQ.png\n",
511
+ "Warning: Tags file missing for CAACAgQAAxUAAWJHUcrx3YLYJKpS0bYSbyFO0yGSAAKWCgACEiewUF0idwTJdvEwIwQ.png\n",
512
+ "Warning: Caption file missing for CAACAgQAAxUAAWJHUcrx3YLYJKpS0bYSbyFO0yGSAAKWCgACEiewUF0idwTJdvEwIwQ.png\n",
513
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZE66xWFogdvUDH5Ib_kv_veAAKTDgACY4YYUNYzVmpEZ4FOJAQ.png\n",
514
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZE66xWFogdvUDH5Ib_kv_veAAKTDgACY4YYUNYzVmpEZ4FOJAQ.png\n",
515
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZE9UhoJsRMVcQJ8qKGMtKCrAAIoCwACLEu5UhQwYj4vbcfiJAQ.png\n",
516
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZE9UhoJsRMVcQJ8qKGMtKCrAAIoCwACLEu5UhQwYj4vbcfiJAQ.png\n",
517
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZEcgkIAAc8KcwKxFdMSXoV3YgACmgwAAmoxMVMY_vl1JhoLbyQE.png\n",
518
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZEcgkIAAc8KcwKxFdMSXoV3YgACmgwAAmoxMVMY_vl1JhoLbyQE.png\n",
519
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZEO66-RN7bXtNyV-nY3IK99AAL1CwAC4CnIUDjqGdtJnK7gJAQ.png\n",
520
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZEO66-RN7bXtNyV-nY3IK99AAL1CwAC4CnIUDjqGdtJnK7gJAQ.png\n",
521
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZEO9s5jkscYy1YNKw504g56AALQCwACxgngUQ4JM9alJln4JAQ.png\n",
522
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZEO9s5jkscYy1YNKw504g56AALQCwACxgngUQ4JM9alJln4JAQ.png\n",
523
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZEXFaGvXPFhHMCddB5yi05nAAIQCwACu-7JUFBSrjHLeRm1JAQ.png\n",
524
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZEXFaGvXPFhHMCddB5yi05nAAIQCwACu-7JUFBSrjHLeRm1JAQ.png\n",
525
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZF2KLpWVe8nDq8WFCc7e_q_AALBCgACCJC5UthNWkayQMqZJAQ.png\n",
526
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZF2KLpWVe8nDq8WFCc7e_q_AALBCgACCJC5UthNWkayQMqZJAQ.png\n",
527
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZF7gdyukNMzAAEWDjhaeb-wvgACmgoAAmfeGFApvkLctdtBtCQE.png\n",
528
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZF7gdyukNMzAAEWDjhaeb-wvgACmgoAAmfeGFApvkLctdtBtCQE.png\n",
529
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZF7w9Wip-s4JBTru1Qq2Vr5AAJ8CQACkdvIUKZsdi9RDS6UJAQ.png\n",
530
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZF7w9Wip-s4JBTru1Qq2Vr5AAJ8CQACkdvIUKZsdi9RDS6UJAQ.png\n",
531
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZF8IQytpLLjrYvRlXlXs--yAAIMCQACx4bJUHE_WxEhfWVBJAQ.png\n",
532
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZF8IQytpLLjrYvRlXlXs--yAAIMCQACx4bJUHE_WxEhfWVBJAQ.png\n",
533
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZFae9FnPKEkk7Z5RJ_cb3cNAAK2CwACimEJUEKUIjZaaX-IJAQ.png\n",
534
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZFae9FnPKEkk7Z5RJ_cb3cNAAK2CwACimEJUEKUIjZaaX-IJAQ.png\n",
535
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZFd67845VCqzW_vv1xSFijvAAIJCwACX-S5UqC3EZIBWR4ZJAQ.png\n",
536
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZFd67845VCqzW_vv1xSFijvAAIJCwACX-S5UqC3EZIBWR4ZJAQ.png\n",
537
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZFhyde2jduFUoCP3YYT-r33AAIJDQACsqaZUiPFknLuBH8QJAQ.png\n",
538
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZFhyde2jduFUoCP3YYT-r33AAIJDQACsqaZUiPFknLuBH8QJAQ.png\n",
539
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZFqepPLpjEAAal5myHYnRWbFQACTAoAAsCfmVKXnzuioeDo7CQE.png\n",
540
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZFqepPLpjEAAal5myHYnRWbFQACTAoAAsCfmVKXnzuioeDo7CQE.png\n",
541
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZFRQQHYqFoJaxrmaw8Su4KaAAKVCgAC-nrgUaNhFURHjYLvJAQ.png\n",
542
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZFRQQHYqFoJaxrmaw8Su4KaAAKVCgAC-nrgUaNhFURHjYLvJAQ.png\n",
543
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZFXKRhtONLScKDF_d_sBJ6EAAIvEAACBwThUXwMvYhSrH8NJAQ.png\n",
544
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZFXKRhtONLScKDF_d_sBJ6EAAIvEAACBwThUXwMvYhSrH8NJAQ.png\n",
545
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZGGSKUZbcQUwhNTuc902LB_AAKzCQACrrwZUDxEZxZtvwuYJAQ.png\n",
546
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZGGSKUZbcQUwhNTuc902LB_AAKzCQACrrwZUDxEZxZtvwuYJAQ.png\n",
547
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZGmHNtVOvP49Y0B3y1WMvWPAAKqDAAC0RwAAVCWNsOpm_b5eCQE.png\n",
548
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZGmHNtVOvP49Y0B3y1WMvWPAAKqDAAC0RwAAVCWNsOpm_b5eCQE.png\n",
549
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZGQtcKuaMAjl8J2eCdgQrkkAAJECQACX7iZUnq0-SVkL3sRJAQ.png\n",
550
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZGQtcKuaMAjl8J2eCdgQrkkAAJECQACX7iZUnq0-SVkL3sRJAQ.png\n",
551
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZGVzXpahRtoSoOKfIiEtGuSAAIGCwACv6spUjB5rHSyqm1NJAQ.png\n",
552
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZGVzXpahRtoSoOKfIiEtGuSAAIGCwACv6spUjB5rHSyqm1NJAQ.png\n",
553
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZH6p1pR-1sHJ7C-IuH7wKKsAAKWCwACCR_YUTYhwCtob1JQJAQ.png\n",
554
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZH6p1pR-1sHJ7C-IuH7wKKsAAKWCwACCR_YUTYhwCtob1JQJAQ.png\n",
555
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZH6qFgRbdTrs6xUpoTziHjLAAKuCQACJVGYUkyjy-U5jX-bJAQ.png\n",
556
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZH6qFgRbdTrs6xUpoTziHjLAAKuCQACJVGYUkyjy-U5jX-bJAQ.png\n",
557
+ "Warning: Tags file missing for CAACAgQAAxUAAWKBiZHogw9z8VcRfs3SzeN6ZzT2AAK6CQACYczIUBszy7T60UN7JAQ.png\n",
558
+ "Warning: Caption file missing for CAACAgQAAxUAAWKBiZHogw9z8VcRfs3SzeN6ZzT2AAK6CQACYczIUBszy7T60UN7JAQ.png\n",
559
+ "Warning: Tags file missing for CAACAgQAAxUAAWL2HZEG5vkZDNb6kDQiO_oAAZ-4gAACugoAAsH9cFN_JFMHbmkg3CkE.png\n",
560
+ "Warning: Caption file missing for CAACAgQAAxUAAWL2HZEG5vkZDNb6kDQiO_oAAZ-4gAACugoAAsH9cFN_JFMHbmkg3CkE.png\n",
561
+ "Warning: Tags file missing for CAACAgQAAxUAAWL2HZGaQRfaHEoiZBah6LalGAhWAAIqDAACRCZpU22SoVyY5nTCKQQ.png\n",
562
+ "Warning: Caption file missing for CAACAgQAAxUAAWL2HZGaQRfaHEoiZBah6LalGAhWAAIqDAACRCZpU22SoVyY5nTCKQQ.png\n",
563
+ "Warning: Tags file missing for CAACAgQAAxUAAWL2HZGHKBy9xxYhayCVpKpYy_gyAALrBgACKhgGA7W2MbfWrI1HKQQ.png\n",
564
+ "Warning: Caption file missing for CAACAgQAAxUAAWL2HZGHKBy9xxYhayCVpKpYy_gyAALrBgACKhgGA7W2MbfWrI1HKQQ.png\n",
565
+ "Warning: Tags file missing for CAACAgQAAxUAAWL2HZGzoMS9MNJwrU9FkE8xQB5bAALqBgACKhgGA5d-zEi36mr9KQQ.png\n",
566
+ "Warning: Caption file missing for CAACAgQAAxUAAWL2HZGzoMS9MNJwrU9FkE8xQB5bAALqBgACKhgGA5d-zEi36mr9KQQ.png\n",
567
+ "Warning: Tags file missing for CAACAgQAAxUAAWL2HZHo0Fpvy3_G4pfalEwM235zAAIzCgACipFoUw4nJpwB7HqrKQQ.png\n",
568
+ "Warning: Caption file missing for CAACAgQAAxUAAWL2HZHo0Fpvy3_G4pfalEwM235zAAIzCgACipFoUw4nJpwB7HqrKQQ.png\n",
569
+ "Warning: Tags file missing for CAACAgQAAxUAAWL2HZHvbMmFAsPl6BMeOTsdh1_GAAK7CgAClCFoU9wa9uAUvFlIKQQ.png\n",
570
+ "Warning: Caption file missing for CAACAgQAAxUAAWL2HZHvbMmFAsPl6BMeOTsdh1_GAAK7CgAClCFoU9wa9uAUvFlIKQQ.png\n",
571
+ "Warning: Tags file missing for CAACAgQAAxUAAWOCu2111TXt9Cb__qNSOLvK4MRAAAK4AAMzr7oHDp-Z9y6oJh8rBA.png\n",
572
+ "Warning: Caption file missing for CAACAgQAAxUAAWOCu2111TXt9Cb__qNSOLvK4MRAAAK4AAMzr7oHDp-Z9y6oJh8rBA.png\n",
573
+ "Warning: Tags file missing for CAACAgQAAxUAAWOCu21FidayIkjss6kTZ05_V6ogAAK9AAMzr7oH3ed-w6OMsLcrBA.png\n",
574
+ "Warning: Caption file missing for CAACAgQAAxUAAWOCu21FidayIkjss6kTZ05_V6ogAAK9AAMzr7oH3ed-w6OMsLcrBA.png\n",
575
+ "Warning: Tags file missing for CAACAgQAAxUAAWOCu22rfakH_-riLcjCEW7YJmtgAAK7AAMzr7oHfDi3R-It5eErBA.png\n",
576
+ "Warning: Caption file missing for CAACAgQAAxUAAWOCu22rfakH_-riLcjCEW7YJmtgAAK7AAMzr7oHfDi3R-It5eErBA.png\n",
577
+ "Warning: Tags file missing for CAACAgQAAxUAAWOCu22z3Ht34aNLfgQrywaCg1ixAAK8AAMzr7oH3moRXEazlzwrBA.png\n",
578
+ "Warning: Caption file missing for CAACAgQAAxUAAWOCu22z3Ht34aNLfgQrywaCg1ixAAK8AAMzr7oH3moRXEazlzwrBA.png\n",
579
+ "Warning: Tags file missing for CAACAgQAAxUAAWOCu23QWj6IpuMBccAlaWtTf_pXAAK6AAMzr7oHx-SCpovImTgrBA.png\n",
580
+ "Warning: Caption file missing for CAACAgQAAxUAAWOCu23QWj6IpuMBccAlaWtTf_pXAAK6AAMzr7oHx-SCpovImTgrBA.png\n",
581
+ "Warning: Tags file missing for CAACAgUAAxUAAWDTcR00nQV-nio-obEepwji9sVlAAITBwACrI3WApYaA7IKCJIHHwQ.png\n",
582
+ "Warning: Caption file missing for CAACAgUAAxUAAWDTcR00nQV-nio-obEepwji9sVlAAITBwACrI3WApYaA7IKCJIHHwQ.png\n",
583
+ "Warning: Tags file missing for CAACAgUAAxUAAWOCzQc7NXEyDPfUBH0uDPTR58NcAAICAwACFbXpVkEMr1pU2KSVKwQ.png\n",
584
+ "Warning: Caption file missing for CAACAgUAAxUAAWOCzQc7NXEyDPfUBH0uDPTR58NcAAICAwACFbXpVkEMr1pU2KSVKwQ.png\n",
585
+ "Warning: Tags file missing for CAACAgUAAxUAAWOCzQfHdt5Pf0O6hqRz2lIjPzoXAAKvAgAClrPpVlYIryhi8ylGKwQ.png\n",
586
+ "Warning: Caption file missing for CAACAgUAAxUAAWOCzQfHdt5Pf0O6hqRz2lIjPzoXAAKvAgAClrPpVlYIryhi8ylGKwQ.png\n",
587
+ "Warning: Tags file missing for Caz.png\n",
588
+ "Warning: Caption file missing for Caz.png\n",
589
+ "Warning: Tags file missing for Dally.png\n",
590
+ "Warning: Caption file missing for Dally.png\n",
591
+ "Warning: Tags file missing for Dem.png\n",
592
+ "Warning: Caption file missing for Dem.png\n",
593
+ "Warning: Tags file missing for Emarl.png\n",
594
+ "Warning: Caption file missing for Emarl.png\n",
595
+ "Warning: Tags file missing for Farfalle.png\n",
596
+ "Warning: Caption file missing for Farfalle.png\n",
597
+ "Warning: Tags file missing for Fialovy.png\n",
598
+ "Warning: Caption file missing for Fialovy.png\n",
599
+ "Warning: Tags file missing for GenericDefault.png\n",
600
+ "Warning: Caption file missing for GenericDefault.png\n",
601
+ "Warning: Tags file missing for Koiley.png\n",
602
+ "Warning: Caption file missing for Koiley.png\n",
603
+ "Warning: Tags file missing for Kyto.png\n",
604
+ "Warning: Caption file missing for Kyto.png\n",
605
+ "Warning: Tags file missing for Lyx.png\n",
606
+ "Warning: Caption file missing for Lyx.png\n",
607
+ "Warning: Tags file missing for Mango.png\n",
608
+ "Warning: Caption file missing for Mango.png\n",
609
+ "Warning: Tags file missing for Meeps.png\n",
610
+ "Warning: Caption file missing for Meeps.png\n",
611
+ "Warning: Tags file missing for Midnight.png\n",
612
+ "Warning: Caption file missing for Midnight.png\n",
613
+ "Warning: Tags file missing for Movi.png\n",
614
+ "Warning: Caption file missing for Movi.png\n",
615
+ "Warning: Tags file missing for Neev.png\n",
616
+ "Warning: Caption file missing for Neev.png\n",
617
+ "Warning: Tags file missing for Otter.png\n",
618
+ "Warning: Caption file missing for Otter.png\n",
619
+ "Warning: Tags file missing for Raditas.png\n",
620
+ "Warning: Caption file missing for Raditas.png\n",
621
+ "Warning: Tags file missing for Raijen.png\n",
622
+ "Warning: Caption file missing for Raijen.png\n",
623
+ "Warning: Tags file missing for Rogue.png\n",
624
+ "Warning: Caption file missing for Rogue.png\n",
625
+ "Processed Seven.png successfully.\n",
626
+ "Processed Sevrah.png successfully.\n",
627
+ "Processed Soukuugo.png successfully.\n",
628
+ "Warning: Tags file missing for West2.png\n",
629
+ "Warning: Caption file missing for West2.png\n"
630
+ ]
631
+ }
632
+ ],
633
+ "source": [
634
+ "import os\n",
635
+ "\n",
636
+ "def process_image_files(directory):\n",
637
+ " \"\"\"\n",
638
+ " Process image files in the given directory. For each image file (.jpeg, .jpg, .png),\n",
639
+ " if corresponding tags and caption files exist, combine the tags (.tags) and caption (.caption)\n",
640
+ " into a single text file (.txt) with tags followed by caption separated by a comma. Additionally,\n",
641
+ " the caption will have the following modifications:\n",
642
+ " - Each sentence will have commas inside sentences stripped from them.\n",
643
+ " - Each sentence will end with a period followed by a comma.\n",
644
+ " - Any parentheses in the tags will be escaped with a backslash.\n",
645
+ "\n",
646
+ " Parameters:\n",
647
+ " directory (str): The directory path containing image files and associated tags\n",
648
+ " and caption files.\n",
649
+ " \"\"\"\n",
650
+ " for root, dirs, files in os.walk(directory):\n",
651
+ " for file in files:\n",
652
+ " if file.lower().endswith(('.jpeg', '.jpg', '.png')):\n",
653
+ " image_name, _ = os.path.splitext(file)\n",
654
+ " tags_file = os.path.join(root, image_name + '.tags')\n",
655
+ " caption_file = os.path.join(root, image_name + '.caption')\n",
656
+ " txt_file = os.path.join(root, image_name + '.txt')\n",
657
+ " \n",
658
+ " if os.path.exists(tags_file) and os.path.exists(caption_file):\n",
659
+ " with open(tags_file, 'r') as f:\n",
660
+ " tags = f.read().strip()\n",
661
+ " tags = tags.replace('(', '\\\\(').replace(')', '\\\\)')\n",
662
+ " with open(caption_file, 'r') as f:\n",
663
+ " caption = f.read().strip()\n",
664
+ " caption = caption.replace(', ', ' ')\n",
665
+ " caption = caption.replace('.', '.,')\n",
666
+ " caption = caption.rstrip(',')\n",
667
+ " \n",
668
+ " with open(txt_file, 'w') as f:\n",
669
+ " f.write(tags + ', ' + caption)\n",
670
+ " print(f\"Processed {file} successfully.\")\n",
671
+ " else:\n",
672
+ " if not os.path.exists(tags_file):\n",
673
+ " print(f\"Warning: Tags file missing for {file}\")\n",
674
+ " if not os.path.exists(caption_file):\n",
675
+ " print(f\"Warning: Caption file missing for {file}\")\n",
676
+ "\n",
677
+ "directory = r'C:\\Users\\kade\\Desktop\\training_dir_staging'\n",
678
+ "process_image_files(directory)"
679
+ ]
680
+ }
681
+ ],
682
+ "metadata": {
683
+ "kernelspec": {
684
+ "display_name": "base",
685
+ "language": "python",
686
+ "name": "python3"
687
+ },
688
+ "language_info": {
689
+ "codemirror_mode": {
690
+ "name": "ipython",
691
+ "version": 3
692
+ },
693
+ "file_extension": ".py",
694
+ "mimetype": "text/x-python",
695
+ "name": "python",
696
+ "nbconvert_exporter": "python",
697
+ "pygments_lexer": "ipython3",
698
+ "version": "3.12.2"
699
+ }
700
+ },
701
+ "nbformat": 4,
702
+ "nbformat_minor": 2
703
+ }
dataset_tools/Convert WebP to PNG.ipynb ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "## Convert `.webp` to `.png`\n",
8
+ "----\n",
9
+ "\n",
10
+ "This script converts all WebP images in a specified directory and its subdirectories to PNG format. It utilizes the `os` module to navigate through the directory structure and the `PIL` (Python Imaging Library) module's `Image` class to handle image processing. The function `convert_webp_to_png(directory)` takes a directory path as input, iterates through all files in that directory (including subdirectories), identifies WebP files based on their extension, converts them to PNG format, and saves the converted images in the same location. If conversion is successful, it also removes the original WebP files. If any errors occur during conversion, it prints an error message with details."
11
+ ]
12
+ },
13
+ {
14
+ "cell_type": "code",
15
+ "execution_count": null,
16
+ "metadata": {},
17
+ "outputs": [],
18
+ "source": [
19
+ "import os\n",
20
+ "from PIL import Image\n",
21
+ "\n",
22
+ "def convert_webp_to_png(directory):\n",
23
+ " for root, dirs, files in os.walk(directory):\n",
24
+ " for file in files:\n",
25
+ " if file.lower().endswith('.webp'):\n",
26
+ " webp_path = os.path.join(root, file)\n",
27
+ " png_path = os.path.splitext(webp_path)[0] + '.png'\n",
28
+ " try:\n",
29
+ " with Image.open(webp_path) as img:\n",
30
+ " img.save(png_path, format='PNG')\n",
31
+ "\n",
32
+ " os.remove(webp_path)\n",
33
+ " print(f\"Converted {webp_path} to {png_path}\")\n",
34
+ " except Exception as e:\n",
35
+ " print(f\"Error converting {webp_path}: {e}\")\n",
36
+ "\n",
37
+ "#directory = r'E:\\training_dir'\n",
38
+ "#directory = r'C:\\Users\\kade\\Desktop\\training_dir_staging'\n",
39
+ "directory = r'C:\\Users\\kade\\Desktop\\ayaya'\n",
40
+ "convert_webp_to_png(directory)"
41
+ ]
42
+ }
43
+ ],
44
+ "metadata": {
45
+ "language_info": {
46
+ "name": "python"
47
+ }
48
+ },
49
+ "nbformat": 4,
50
+ "nbformat_minor": 2
51
+ }
dataset_tools/Duplicate Checker.ipynb ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "## Duplicate checker\n",
8
+ "----\n",
9
+ "\n",
10
+ "This Python script checks for duplicate tags within text files (`.txt`) in a specified directory and its subdirectories. It reads each text file, splits its content into tags separated by commas, and identifies any duplicates. If duplicates are found, it prints out a message indicating the file where the duplicates were found and the duplicate tags themselves. Finally, the `check_tags_in_directory` function iterates through the directory and calls `check_duplicate_tags` for each text file found."
11
+ ]
12
+ },
13
+ {
14
+ "cell_type": "code",
15
+ "execution_count": null,
16
+ "metadata": {},
17
+ "outputs": [],
18
+ "source": [
19
+ "import os\n",
20
+ "\n",
21
+ "def check_duplicate_tags(file_path):\n",
22
+ " with open(file_path, 'r') as file:\n",
23
+ " tags = file.read().split(', ')\n",
24
+ " duplicates = set()\n",
25
+ " unique_tags = set()\n",
26
+ " for tag in tags:\n",
27
+ " if tag in unique_tags:\n",
28
+ " duplicates.add(tag)\n",
29
+ " else:\n",
30
+ " unique_tags.add(tag)\n",
31
+ " if duplicates:\n",
32
+ " print(f\"Duplicate tags found in {file_path}: {', '.join(duplicates)}\")\n",
33
+ "\n",
34
+ "def check_tags_in_directory(directory):\n",
35
+ " for root, _, files in os.walk(directory):\n",
36
+ " for file_name in files:\n",
37
+ " if file_name.endswith('.txt'):\n",
38
+ " file_path = os.path.join(root, file_name)\n",
39
+ " check_duplicate_tags(file_path)\n",
40
+ "\n",
41
+ "if __name__ == \"__main__\":\n",
42
+ " directory_path = r'C:\\Users\\kade\\Desktop\\training_dir_staging'\n",
43
+ " check_tags_in_directory(directory_path)\n"
44
+ ]
45
+ }
46
+ ],
47
+ "metadata": {
48
+ "language_info": {
49
+ "name": "python"
50
+ }
51
+ },
52
+ "nbformat": 4,
53
+ "nbformat_minor": 2
54
+ }
dataset_tools/Escape Parentheses.ipynb ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "## Escape parentheses\n",
8
+ "----\n",
9
+ "\n",
10
+ "Recursively escape unescaped parentheses in all `.txt` files within the specified directory and its subdirectories. "
11
+ ]
12
+ },
13
+ {
14
+ "cell_type": "code",
15
+ "execution_count": null,
16
+ "metadata": {},
17
+ "outputs": [],
18
+ "source": [
19
+ "import os\n",
20
+ "import re\n",
21
+ "\n",
22
+ "def escape_parentheses(file_path):\n",
23
+ " with open(file_path, 'r') as file:\n",
24
+ " content = file.read()\n",
25
+ "\n",
26
+ " # Escape unescaped parentheses\n",
27
+ " content = re.sub(r'(?<!\\\\)([()])', r'\\\\\\1', content)\n",
28
+ "\n",
29
+ " with open(file_path, 'w') as file:\n",
30
+ " file.write(content)\n",
31
+ "\n",
32
+ "def process_directory(directory):\n",
33
+ " for root, dirs, files in os.walk(directory):\n",
34
+ " for file in files:\n",
35
+ " if file.endswith(\".txt\"):\n",
36
+ " file_path = os.path.join(root, file)\n",
37
+ " escape_parentheses(file_path)\n",
38
+ "\n",
39
+ " # Recurse into subdirectories\n",
40
+ " process_directory(os.path.join(root, file))\n",
41
+ "\n",
42
+ "directory_path = r'C:\\Users\\kade\\Desktop\\training_dir_staging'\n",
43
+ "process_directory(directory_path)"
44
+ ]
45
+ }
46
+ ],
47
+ "metadata": {
48
+ "language_info": {
49
+ "name": "python"
50
+ }
51
+ },
52
+ "nbformat": 4,
53
+ "nbformat_minor": 2
54
+ }
dataset_tools/Find Missing tags and captions.ipynb ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "## Find Missing `.tags` and `.caption`s\n",
8
+ "----\n",
9
+ "\n",
10
+ "This Python script iterates through a specified directory and its subdirectories to find image files (with extensions `.png`, `.jpg`, or `.jpeg`). For each image file found, it checks if corresponding caption and tags files exist. If either the caption file or the tags file is missing for an image file, the script adds the file paths of the missing files to a list. Finally, if any missing files are found, it prints out their paths; otherwise, it prints \"No missing files found.\""
11
+ ]
12
+ },
13
+ {
14
+ "cell_type": "code",
15
+ "execution_count": null,
16
+ "metadata": {},
17
+ "outputs": [],
18
+ "source": [
19
+ "import os\n",
20
+ "\n",
21
+ "def find_missing_files(directory):\n",
22
+ " missing_files = []\n",
23
+ " for root, dirs, files in os.walk(directory):\n",
24
+ " for file in files:\n",
25
+ " if file.lower().endswith(('.png', '.jpg', '.jpeg')):\n",
26
+ " file_name, file_extension = os.path.splitext(file)\n",
27
+ " caption_file = os.path.join(root, file_name + \".caption\")\n",
28
+ " tags_file = os.path.join(root, file_name + \".tags\")\n",
29
+ " if not os.path.exists(caption_file):\n",
30
+ " missing_files.append(caption_file)\n",
31
+ " if not os.path.exists(tags_file):\n",
32
+ " missing_files.append(tags_file)\n",
33
+ " return missing_files\n",
34
+ "\n",
35
+ "if __name__ == \"__main__\":\n",
36
+ " directory = r\"C:\\Users\\kade\\Desktop\\training_dir_staging\"\n",
37
+ " missing_files = find_missing_files(directory)\n",
38
+ " if missing_files:\n",
39
+ " print(\"Missing files:\")\n",
40
+ " for file in missing_files:\n",
41
+ " print(file)\n",
42
+ " else:\n",
43
+ " print(\"No missing files found.\")"
44
+ ]
45
+ }
46
+ ],
47
+ "metadata": {
48
+ "language_info": {
49
+ "name": "python"
50
+ }
51
+ },
52
+ "nbformat": 4,
53
+ "nbformat_minor": 2
54
+ }
dataset_tools/Insert Tag.ipynb ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "## Insert tag\n",
8
+ "----\n",
9
+ "\n",
10
+ "This script recursively inserts a specified tag at the beginning of each line in both `.txt` and `.tags` files within a given directory and its subdirectories."
11
+ ]
12
+ },
13
+ {
14
+ "cell_type": "code",
15
+ "execution_count": null,
16
+ "metadata": {},
17
+ "outputs": [],
18
+ "source": [
19
+ "import os\n",
20
+ "\n",
21
+ "# Function to insert a specified tag in text files in subdirectories\n",
22
+ "def insert_tag_in_files(directory, tag_to_insert):\n",
23
+ " try:\n",
24
+ " for entry in os.listdir(directory):\n",
25
+ " entry_path = os.path.join(directory, entry)\n",
26
+ "\n",
27
+ " if os.path.isdir(entry_path):\n",
28
+ " insert_tag_in_files(entry_path, tag_to_insert)\n",
29
+ "\n",
30
+ " elif os.path.isfile(entry_path) and (entry.endswith(\".txt\") or entry.endswith(\".tags\")):\n",
31
+ " with open(entry_path, 'r', encoding='utf-8') as f:\n",
32
+ " content = f.read()\n",
33
+ "\n",
34
+ " # Insert the specified tag\n",
35
+ " content = tag_to_insert + ', ' + content\n",
36
+ "\n",
37
+ " # Write back to the file\n",
38
+ " with open(entry_path, 'w', encoding='utf-8') as f:\n",
39
+ " f.write(content)\n",
40
+ "\n",
41
+ " except Exception as e:\n",
42
+ " print(f\"Error processing directory {directory}: {e}\\n\")\n",
43
+ "\n",
44
+ "directory_path = r'C:\\Users\\kade\\Desktop\\training_dir_staging'\n",
45
+ "\n",
46
+ "# Execute the function with the desired tag\n",
47
+ "insert_tag_in_files(directory_path, 'furrysticker')"
48
+ ]
49
+ }
50
+ ],
51
+ "metadata": {
52
+ "language_info": {
53
+ "name": "python"
54
+ }
55
+ },
56
+ "nbformat": 4,
57
+ "nbformat_minor": 2
58
+ }
dataset_tools/Kill Transparency with Black.ipynb ADDED
@@ -0,0 +1,66 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "## Kill Transparency with Black\n",
8
+ "----\n",
9
+ "\n",
10
+ "This Python script utilizes the PIL (Python Imaging Library) to recursively traverse a specified directory, identifying image files with extensions `.jpg`, `.jpeg`, or `.png`, and adds a black layer behind the main layer of each image, effectively removing any existing transparency, before overwriting the original files with the modified versions."
11
+ ]
12
+ },
13
+ {
14
+ "cell_type": "code",
15
+ "execution_count": null,
16
+ "metadata": {},
17
+ "outputs": [],
18
+ "source": [
19
+ "import os\n",
20
+ "from PIL import Image\n",
21
+ "\n",
22
+ "def add_black_layer(image_path):\n",
23
+ " try:\n",
24
+ " with Image.open(image_path) as img:\n",
25
+ " black_layer = Image.new('RGB', img.size, (0, 0, 0))\n",
26
+ " black_layer.paste(img, (0, 0), img)\n",
27
+ " black_layer.save(image_path)\n",
28
+ " print(f\"Black layer added to and overwritten {image_path}\")\n",
29
+ " except Exception as e:\n",
30
+ " print(f\"Error processing {image_path}: {e}\")\n",
31
+ "\n",
32
+ "def process_directory(directory):\n",
33
+ " for root, dirs, files in os.walk(directory):\n",
34
+ " for file in files:\n",
35
+ " if file.lower().endswith(('.jpg', '.jpeg', '.png')):\n",
36
+ " file_path = os.path.join(root, file)\n",
37
+ " add_black_layer(file_path)\n",
38
+ "\n",
39
+ "if __name__ == \"__main__\":\n",
40
+ " directory = r'C:\\Users\\kade\\Desktop\\training_dir_staging'\n",
41
+ " process_directory(directory)"
42
+ ]
43
+ }
44
+ ],
45
+ "metadata": {
46
+ "kernelspec": {
47
+ "display_name": "base",
48
+ "language": "python",
49
+ "name": "python3"
50
+ },
51
+ "language_info": {
52
+ "codemirror_mode": {
53
+ "name": "ipython",
54
+ "version": 3
55
+ },
56
+ "file_extension": ".py",
57
+ "mimetype": "text/x-python",
58
+ "name": "python",
59
+ "nbconvert_exporter": "python",
60
+ "pygments_lexer": "ipython3",
61
+ "version": "3.12.2"
62
+ }
63
+ },
64
+ "nbformat": 4,
65
+ "nbformat_minor": 2
66
+ }
dataset_tools/Newlines to Commas.ipynb ADDED
@@ -0,0 +1,53 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "## Newlines to commas\n",
8
+ "----\n",
9
+ "\n",
10
+ "Recursively modify the content of `.txt` files in the specified directory and its subdirectories by replacing newlines with commas and spaces. "
11
+ ]
12
+ },
13
+ {
14
+ "cell_type": "code",
15
+ "execution_count": null,
16
+ "metadata": {},
17
+ "outputs": [],
18
+ "source": [
19
+ "import os\n",
20
+ "\n",
21
+ "def process_directory(directory):\n",
22
+ " for root, dirs, files in os.walk(directory):\n",
23
+ " for filename in files:\n",
24
+ " if filename.endswith(\".txt\"):\n",
25
+ " file_path = os.path.join(root, filename)\n",
26
+ " \n",
27
+ " # Read the content of the file\n",
28
+ " with open(file_path, 'r') as file:\n",
29
+ " content = file.read()\n",
30
+ " \n",
31
+ " # Replace newline with a comma and space\n",
32
+ " modified_content = content.replace('\\n', ', ')\n",
33
+ " \n",
34
+ " # Write the modified content back to the file\n",
35
+ " with open(file_path, 'w') as file:\n",
36
+ " file.write(modified_content)\n",
37
+ "\n",
38
+ "# Directory path\n",
39
+ "directory_path = r'C:\\Users\\kade\\Desktop\\training_dir_staging'\n",
40
+ "\n",
41
+ "# Recursively process the directory and its subdirectories\n",
42
+ "process_directory(directory_path)"
43
+ ]
44
+ }
45
+ ],
46
+ "metadata": {
47
+ "language_info": {
48
+ "name": "python"
49
+ }
50
+ },
51
+ "nbformat": 4,
52
+ "nbformat_minor": 2
53
+ }
dataset_tools/Remove Extra File Extension before txt.ipynb ADDED
@@ -0,0 +1,55 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "## Remove extra file extension before `.txt`\n",
8
+ "----\n",
9
+ "\n",
10
+ "Recursively renames `.txt` files with additional image extensions before in the filename in the specified directory and its subdirectories."
11
+ ]
12
+ },
13
+ {
14
+ "cell_type": "code",
15
+ "execution_count": null,
16
+ "metadata": {},
17
+ "outputs": [],
18
+ "source": [
19
+ "import os\n",
20
+ "\n",
21
+ "def rename_files(directory_path):\n",
22
+ " for root, dirs, files in os.walk(directory_path):\n",
23
+ " for filename in files:\n",
24
+ " if filename.endswith('.txt'):\n",
25
+ " # Extract the base name without extension\n",
26
+ " base_name, extension = os.path.splitext(filename)\n",
27
+ "\n",
28
+ " # Check if the file has an additional image extension\n",
29
+ " if base_name.endswith(('.png', '.jpg', '.jpeg', '.webp', '.gif')):\n",
30
+ " # Construct the new filename with only the txt extension\n",
31
+ " new_filename = base_name[:-4] + '.txt'\n",
32
+ "\n",
33
+ " # Construct the full file paths\n",
34
+ " old_path = os.path.join(root, filename)\n",
35
+ " new_path = os.path.join(root, new_filename)\n",
36
+ "\n",
37
+ " # Rename the file\n",
38
+ " os.rename(old_path, new_path)\n",
39
+ "\n",
40
+ "# Specify the directory path\n",
41
+ "directory_path = r'C:\\Users\\kade\\Desktop\\training_dir_staging'\n",
42
+ "\n",
43
+ "# Call the function to recursively rename files\n",
44
+ "rename_files(directory_path)"
45
+ ]
46
+ }
47
+ ],
48
+ "metadata": {
49
+ "language_info": {
50
+ "name": "python"
51
+ }
52
+ },
53
+ "nbformat": 4,
54
+ "nbformat_minor": 2
55
+ }
dataset_tools/Remove Tags.ipynb ADDED
@@ -0,0 +1,170 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "## Remove tags ⚠️\n",
8
+ "----\n",
9
+ "\n",
10
+ "This script is designed to remove specific tags from text files (*.txt) located within a given directory and its subdirectories. It iterates through each file, reads its content, removes specified tags, and then overwrites the file with the modified content.\n",
11
+ "\n",
12
+ "The tags to be removed are specified in the `tags_to_remove` list within the `remove_tags` function. These tags include various strings, such as certain species names, phrases like \"unavailable at source,\" years from 1996 to 2024, and phrases like \"generation X pokemon.\" The script constructs regular expressions to match both escaped and non-escaped occurrences of parentheses in the tags.\n",
13
+ "\n",
14
+ "The `remove_tags` function takes a file path as input and returns a list of removal actions performed, indicating which tags were removed from which files.\n",
15
+ "\n",
16
+ "The `process_directory` function recursively processes all files within a specified directory and its subdirectories. For each file with a \".txt\" extension, it calls the `remove_tags` function to remove tags and accumulates removal actions. Finally, it prints out all removal actions performed.\n",
17
+ "\n",
18
+ "To utilize the script, provide the path to the directory containing the text files that need tag removal. Upon execution, the script will modify the files in place, removing the specified tags, and output a log of removal actions."
19
+ ]
20
+ },
21
+ {
22
+ "cell_type": "code",
23
+ "execution_count": null,
24
+ "metadata": {},
25
+ "outputs": [],
26
+ "source": [
27
+ "import os\n",
28
+ "import re\n",
29
+ "\n",
30
+ "def remove_tags(file_path):\n",
31
+ " with open(file_path, 'r', encoding='utf-8') as file:\n",
32
+ " content = file.read()\n",
33
+ "\n",
34
+ " tags_to_remove = [\n",
35
+ " \"creative commons\",\n",
36
+ " \"cc-by-nc-nd\",\n",
37
+ " \"pal (species)\",\n",
38
+ " \"pocketpair\",\n",
39
+ " \"unavailable at source\",\n",
40
+ " \"partially\",\n",
41
+ " \"pokemon (species)\",\n",
42
+ " \"generation\",\n",
43
+ " \"pokephilia\",\n",
44
+ " \"pokemon\",\n",
45
+ " \"nintendo\",\n",
46
+ " \"eeveelution\",\n",
47
+ " \"uncensored\",\n",
48
+ " \"translated\",\n",
49
+ " \"partially translated\",\n",
50
+ " \"translation request\",\n",
51
+ " \"16 10\",\n",
52
+ " \"16 9\",\n",
53
+ " \"10 16\",\n",
54
+ " \"9 16\",\n",
55
+ " \"6 5\",\n",
56
+ " \"5 6\",\n",
57
+ " \"5 4\",\n",
58
+ " \"4 3\",\n",
59
+ " \"4 5\",\n",
60
+ " \"3 4\",\n",
61
+ " \"3 2\",\n",
62
+ " \"2 3\",\n",
63
+ " \"2 1\",\n",
64
+ " \"1 2\",\n",
65
+ " \"1 1\",\n",
66
+ " \"4k\",\n",
67
+ " \"absurd res\",\n",
68
+ " \"hi res\",\n",
69
+ " \"elden ring\",\n",
70
+ " \"fromsoftware\",\n",
71
+ " \"canid\",\n",
72
+ " \"canis\",\n",
73
+ " \"mammal\",\n",
74
+ " \"unwanted erection\",\n",
75
+ " \"lighting\",\n",
76
+ " \"shaded\",\n",
77
+ " \"widescreen\"\n",
78
+ " ]\n",
79
+ "\n",
80
+ " for gen in range(1, 10):\n",
81
+ " tags_to_remove.append(f\"generation {gen} pokemon\")\n",
82
+ "\n",
83
+ " for year in range(1996, 2025):\n",
84
+ " tags_to_remove.append(str(year))\n",
85
+ "\n",
86
+ " removal_actions = []\n",
87
+ "\n",
88
+ " for tag in tags_to_remove:\n",
89
+ " # Construct regular expression to match both escaped and non-escaped occurrences of parentheses\n",
90
+ " pattern = re.compile(re.escape(tag.replace('(', '\\(').replace(')', '\\)')) + r'|' + tag.replace('(', '\\(').replace(')', '\\)'))\n",
91
+ " if pattern.search(content):\n",
92
+ " content = pattern.sub('', content)\n",
93
+ " removal_actions.append(f'Removed tag \"{tag}\" from file: {file_path}')\n",
94
+ "\n",
95
+ " with open(file_path, 'w', encoding='utf-8') as file:\n",
96
+ " file.write(content)\n",
97
+ "\n",
98
+ " return removal_actions\n",
99
+ "\n",
100
+ "def process_directory(directory):\n",
101
+ " all_removal_actions = []\n",
102
+ "\n",
103
+ " for root, dirs, files in os.walk(directory):\n",
104
+ " for file in files:\n",
105
+ " if file.endswith(\".txt\"):\n",
106
+ " file_path = os.path.join(root, file)\n",
107
+ " removal_actions = remove_tags(file_path)\n",
108
+ " all_removal_actions.extend(removal_actions)\n",
109
+ "\n",
110
+ " for action in all_removal_actions:\n",
111
+ " print(action)\n",
112
+ "\n",
113
+ "# Provide the path to the directory\n",
114
+ "directory_path = r'C:\\Users\\kade\\Desktop\\training_dir_staging'\n",
115
+ "\n",
116
+ "# Recursively remove tags from *.txt files in the specified directory and print removal actions\n",
117
+ "process_directory(directory_path)"
118
+ ]
119
+ },
120
+ {
121
+ "cell_type": "markdown",
122
+ "metadata": {},
123
+ "source": [
124
+ "### Replace `, ,` with `,` after that mess. 😼\n",
125
+ "----"
126
+ ]
127
+ },
128
+ {
129
+ "cell_type": "code",
130
+ "execution_count": null,
131
+ "metadata": {},
132
+ "outputs": [],
133
+ "source": [
134
+ "import os\n",
135
+ "\n",
136
+ "# Start directory\n",
137
+ "start_dir = r'C:\\Users\\kade\\Desktop\\training_dir_staging'\n",
138
+ "\n",
139
+ "# Function to replace text in *.txt files\n",
140
+ "def replace_text_in_files(directory):\n",
141
+ " while True: # Run indefinitely until no more matches are found\n",
142
+ " found_match = False # Flag to track if any match is found\n",
143
+ " for root, dirs, files in os.walk(directory):\n",
144
+ " for file in files:\n",
145
+ " if file.endswith(\".txt\"):\n",
146
+ " file_path = os.path.join(root, file)\n",
147
+ " with open(file_path, 'r', encoding='utf-8') as f:\n",
148
+ " content = f.read()\n",
149
+ " # Replace ', ,' with ','\n",
150
+ " updated_content = content.replace(', ,', ',').replace(', ,', ',')\n",
151
+ " if updated_content != content:\n",
152
+ " found_match = True # Set the flag to True if any match is found\n",
153
+ " with open(file_path, 'w', encoding='utf-8') as f:\n",
154
+ " f.write(updated_content)\n",
155
+ " if not found_match: # If no match is found, break the loop\n",
156
+ " break\n",
157
+ "\n",
158
+ "# Run the function\n",
159
+ "replace_text_in_files(start_dir)"
160
+ ]
161
+ }
162
+ ],
163
+ "metadata": {
164
+ "language_info": {
165
+ "name": "python"
166
+ }
167
+ },
168
+ "nbformat": 4,
169
+ "nbformat_minor": 2
170
+ }
dataset_tools/Rename images and captions to MD5.ipynb ADDED
@@ -0,0 +1,91 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "## Rename images and captions to MD5\n",
8
+ "\n",
9
+ "This Python script recursively traverses a specified directory, identifies image files with extensions .jpg, .jpeg, or .png, calculates their MD5 hash values, and renames them accordingly. Additionally, it renames accompanying text files (.txt, .caption, .tags) to match the new filename while preserving their original content associations."
10
+ ]
11
+ },
12
+ {
13
+ "cell_type": "code",
14
+ "execution_count": 10,
15
+ "metadata": {},
16
+ "outputs": [
17
+ {
18
+ "ename": "FileExistsError",
19
+ "evalue": "[WinError 183] Cannot create a file when that file already exists: 'C:\\\\Users\\\\kade\\\\Desktop\\\\1_by_spaceengine\\\\crop_p_color2_enhanced_release_small.png' -> 'C:\\\\Users\\\\kade\\\\Desktop\\\\1_by_spaceengine\\\\584a8f97df450c7742ecc1df77ed37fe.png'",
20
+ "output_type": "error",
21
+ "traceback": [
22
+ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
23
+ "\u001b[1;31mFileExistsError\u001b[0m Traceback (most recent call last)",
24
+ "Cell \u001b[1;32mIn[10], line 34\u001b[0m\n\u001b[0;32m 31\u001b[0m directory \u001b[38;5;241m=\u001b[39m \u001b[38;5;124mr\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mC:\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mUsers\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mkade\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124mDesktop\u001b[39m\u001b[38;5;124m\\\u001b[39m\u001b[38;5;124m1_by_spaceengine\u001b[39m\u001b[38;5;124m'\u001b[39m\n\u001b[0;32m 33\u001b[0m \u001b[38;5;66;03m# Call the function to rename files\u001b[39;00m\n\u001b[1;32m---> 34\u001b[0m \u001b[43mrename_files\u001b[49m\u001b[43m(\u001b[49m\u001b[43mdirectory\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 36\u001b[0m \u001b[38;5;28mprint\u001b[39m(\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mFiles renamed successfully!\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n",
25
+ "Cell \u001b[1;32mIn[10], line 22\u001b[0m, in \u001b[0;36mrename_files\u001b[1;34m(directory)\u001b[0m\n\u001b[0;32m 20\u001b[0m new_file_name \u001b[38;5;241m=\u001b[39m md5(file_path) \u001b[38;5;241m+\u001b[39m file_ext\u001b[38;5;241m.\u001b[39mlower()\n\u001b[0;32m 21\u001b[0m \u001b[38;5;66;03m# Rename image file\u001b[39;00m\n\u001b[1;32m---> 22\u001b[0m \u001b[43mos\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mrename\u001b[49m\u001b[43m(\u001b[49m\u001b[43mfile_path\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mos\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mpath\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mjoin\u001b[49m\u001b[43m(\u001b[49m\u001b[43mroot\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mnew_file_name\u001b[49m\u001b[43m)\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m 23\u001b[0m \u001b[38;5;66;03m# Rename accompanying text files\u001b[39;00m\n\u001b[0;32m 24\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m ext \u001b[38;5;129;01min\u001b[39;00m (\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m.txt\u001b[39m\u001b[38;5;124m'\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124m.caption\u001b[39m\u001b[38;5;124m'\u001b[39m, \u001b[38;5;124m'\u001b[39m\u001b[38;5;124m.tags\u001b[39m\u001b[38;5;124m'\u001b[39m):\n",
26
+ "\u001b[1;31mFileExistsError\u001b[0m: [WinError 183] Cannot create a file when that file already exists: 'C:\\\\Users\\\\kade\\\\Desktop\\\\1_by_spaceengine\\\\crop_p_color2_enhanced_release_small.png' -> 'C:\\\\Users\\\\kade\\\\Desktop\\\\1_by_spaceengine\\\\584a8f97df450c7742ecc1df77ed37fe.png'"
27
+ ]
28
+ }
29
+ ],
30
+ "source": [
31
+ "import os\n",
32
+ "import hashlib\n",
33
+ "\n",
34
+ "def md5(file_path):\n",
35
+ " \"\"\"Calculate MD5 hash of a file.\"\"\"\n",
36
+ " hash_md5 = hashlib.md5()\n",
37
+ " with open(file_path, \"rb\") as f:\n",
38
+ " for chunk in iter(lambda: f.read(4096), b\"\"):\n",
39
+ " hash_md5.update(chunk)\n",
40
+ " return hash_md5.hexdigest()\n",
41
+ "\n",
42
+ "def rename_files(directory):\n",
43
+ " \"\"\"Recursively rename image and accompanying text files.\"\"\"\n",
44
+ " for root, _, files in os.walk(directory):\n",
45
+ " for file in files:\n",
46
+ " file_path = os.path.join(root, file)\n",
47
+ " file_name, file_ext = os.path.splitext(file)\n",
48
+ " if file_ext.lower() in ('.jpg', '.jpeg', '.png'):\n",
49
+ " # Calculate MD5 hash\n",
50
+ " new_file_name = md5(file_path) + file_ext.lower()\n",
51
+ " # Rename image file\n",
52
+ " os.rename(file_path, os.path.join(root, new_file_name))\n",
53
+ " # Rename accompanying text files\n",
54
+ " for ext in ('.txt', '.caption', '.tags'):\n",
55
+ " txt_file = os.path.join(root, file_name + ext)\n",
56
+ " if os.path.exists(txt_file):\n",
57
+ " new_txt_file = os.path.join(root, new_file_name.replace(file_ext.lower(), '') + ext)\n",
58
+ " os.rename(txt_file, new_txt_file)\n",
59
+ "\n",
60
+ "# Specify the directory\n",
61
+ "directory = r'C:\\Users\\kade\\Desktop\\1_by_spaceengine'\n",
62
+ "\n",
63
+ "# Call the function to rename files\n",
64
+ "rename_files(directory)\n",
65
+ "\n",
66
+ "print(\"Files renamed successfully!\")"
67
+ ]
68
+ }
69
+ ],
70
+ "metadata": {
71
+ "kernelspec": {
72
+ "display_name": "base",
73
+ "language": "python",
74
+ "name": "python3"
75
+ },
76
+ "language_info": {
77
+ "codemirror_mode": {
78
+ "name": "ipython",
79
+ "version": 3
80
+ },
81
+ "file_extension": ".py",
82
+ "mimetype": "text/x-python",
83
+ "name": "python",
84
+ "nbconvert_exporter": "python",
85
+ "pygments_lexer": "ipython3",
86
+ "version": "3.12.3"
87
+ }
88
+ },
89
+ "nbformat": 4,
90
+ "nbformat_minor": 2
91
+ }
dataset_tools/Replace Tags and Remove Duplicates.ipynb ADDED
@@ -0,0 +1,66 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "## Replace tags and remove duplicates\n",
8
+ "----\n",
9
+ "\n",
10
+ "This Python script recursively processes text files within a specified directory, replacing occurrences of certain words or phrases with new ones.\n",
11
+ "\n",
12
+ "It utilizes regular expressions to perform search and replace operations. The main function, `process_files`, accepts a directory path along with old and new tags to be replaced. It searches for `.txt` and `.tags` within the directory and its subdirectories, reads the content of each file, performs replacements based on the provided tags, and then writes the modified content back to the files."
13
+ ]
14
+ },
15
+ {
16
+ "cell_type": "code",
17
+ "execution_count": null,
18
+ "metadata": {},
19
+ "outputs": [],
20
+ "source": [
21
+ "import os\n",
22
+ "import re\n",
23
+ "\n",
24
+ "def process_files(directory, old_tag, new_tag):\n",
25
+ " try:\n",
26
+ " for entry in os.listdir(directory):\n",
27
+ " entry_path = os.path.join(directory, entry)\n",
28
+ "\n",
29
+ " if os.path.isdir(entry_path):\n",
30
+ " process_files(entry_path, old_tag, new_tag)\n",
31
+ "\n",
32
+ " elif os.path.isfile(entry_path) and (entry.endswith(\".txt\") or entry.endswith(\".tags\")):\n",
33
+ " with open(entry_path, 'r', encoding='utf-8') as f:\n",
34
+ " content = f.read()\n",
35
+ "\n",
36
+ " if old_tag:\n",
37
+ " content = re.sub(r'\\b' + re.escape(old_tag) + r'\\b', new_tag, content)\n",
38
+ "\n",
39
+ " tag_pattern = re.compile(r'(\\b\\w+\\b)(?:(?:,|\\s)+\\1)+')\n",
40
+ " content = re.sub(tag_pattern, r'\\1', content)\n",
41
+ "\n",
42
+ " with open(entry_path, 'w', encoding='utf-8') as f:\n",
43
+ " f.write(content)\n",
44
+ "\n",
45
+ " except Exception as e:\n",
46
+ " print(f\"Error processing directory {directory}: {e}\\n\")\n",
47
+ "\n",
48
+ "# Directory path\n",
49
+ "directory_path = r'C:\\Users\\kade\\Desktop\\training_dir_staging'\n",
50
+ "\n",
51
+ "process_files(directory_path, 'transparent background', 'black background')\n",
52
+ "\n",
53
+ "#process_files(directory_path, 'safe', 'rating_safe')\n",
54
+ "#process_files(directory_path, 'questionable', 'rating_questionable')\n",
55
+ "#process_files(directory_path, 'explicit', 'rating_explicit')\n"
56
+ ]
57
+ }
58
+ ],
59
+ "metadata": {
60
+ "language_info": {
61
+ "name": "python"
62
+ }
63
+ },
64
+ "nbformat": 4,
65
+ "nbformat_minor": 2
66
+ }
dataset_tools/Replace Underscore with Spaces.ipynb ADDED
@@ -0,0 +1,62 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "metadata": {},
6
+ "source": [
7
+ "## Replace underscores with spaces\n",
8
+ "----\n",
9
+ "\n",
10
+ "Recursively replaces underscores with spaces in the content of text files in the specified directory and its subdirectories,\n",
11
+ "excluding specified tags."
12
+ ]
13
+ },
14
+ {
15
+ "cell_type": "code",
16
+ "execution_count": null,
17
+ "metadata": {},
18
+ "outputs": [],
19
+ "source": [
20
+ "import os\n",
21
+ "\n",
22
+ "excluded_tags = [\n",
23
+ " \"rating_safe\",\n",
24
+ " \"rating_explicit\",\n",
25
+ " \"rating_questionable\"\n",
26
+ "]\n",
27
+ "\n",
28
+ "def replace_underscores_with_spaces(directory_path):\n",
29
+ " for root, dirs, files in os.walk(directory_path):\n",
30
+ " for filename in files:\n",
31
+ " if filename.endswith(\".txt\"):\n",
32
+ " file_path = os.path.join(root, filename)\n",
33
+ "\n",
34
+ " # Read the content of the file\n",
35
+ " with open(file_path, 'r') as file:\n",
36
+ " content = file.read()\n",
37
+ "\n",
38
+ " # Replace underscores with spaces, excluding specific tags\n",
39
+ " for tag in excluded_tags:\n",
40
+ " replacement = tag.replace('_', ' ')\n",
41
+ " content = content.replace(replacement, tag)\n",
42
+ "\n",
43
+ " # Write the modified content back to the file\n",
44
+ " with open(file_path, 'w') as file:\n",
45
+ " file.write(content)\n",
46
+ "\n",
47
+ "# Specify the directory path\n",
48
+ "directory_path = r'C:\\Users\\kade\\Desktop\\training_dir_staging'\n",
49
+ "\n",
50
+ "# Call the function to recursively replace underscores with spaces (excluding specified tags)\n",
51
+ "replace_underscores_with_spaces(directory_path)"
52
+ ]
53
+ }
54
+ ],
55
+ "metadata": {
56
+ "language_info": {
57
+ "name": "python"
58
+ }
59
+ },
60
+ "nbformat": 4,
61
+ "nbformat_minor": 2
62
+ }
dataset_tools/Tag Counter.ipynb ADDED
The diff for this file is too large to render. See raw diff
 
dataset_tools/e621 JSON to txt.ipynb ADDED
The diff for this file is too large to render. See raw diff