{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Sketch Recognition using Simple Neural Network (NN)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"> - 🤖 See [full list of Machine Learning Experiments](https://github.com/trekhleb/machine-learning-experiments) on **GitHub**
\n",
"> - ▶️ **Interactive Demo**: [try this model and other machine learning experiments in action](https://trekhleb.github.io/machine-learning-experiments/)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Experiment overview"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"In this experiment we will build a [Multilayer Perceptron](https://en.wikipedia.org/wiki/Multilayer_perceptron) (MLP) model using [Tensorflow](https://www.tensorflow.org/) to recognize handwritten sketches by using a [quick-draw dataset](https://github.com/googlecreativelab/quickdraw-dataset).\n",
"\n",
"A **multilayer perceptron** (MLP) is a class of feedforward artificial neural network. An MLP consists of, at least, three layers of nodes: an input layer, a hidden layer and an output layer. Except for the input nodes, each node is a neuron that uses a nonlinear activation function. MLP utilizes a supervised learning technique called backpropagation for training. Its multiple layers and non-linear activation distinguish MLP from a linear perceptron. It can distinguish data that is not linearly separable.\n",
"\n",
"![sketch_recognition_mlp.png](../../demos/src/images/sketch_recognition_mlp.png)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Import dependencies"
]
},
{
"cell_type": "code",
"execution_count": 325,
"metadata": {},
"outputs": [],
"source": [
"# Selecting Tensorflow version v2 (the command is relevant for Colab only).\n",
"# %tensorflow_version 2.x"
]
},
{
"cell_type": "code",
"execution_count": 673,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Python version: 3.7.6\n",
"Tensorflow version: 2.1.0\n",
"Keras version: 2.2.4-tf\n"
]
}
],
"source": [
"import tensorflow as tf\n",
"import tensorflow_datasets as tfds\n",
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"import math\n",
"import datetime\n",
"import platform\n",
"import pathlib\n",
"import random\n",
"\n",
"print('Python version:', platform.python_version())\n",
"print('Tensorflow version:', tf.__version__)\n",
"print('Keras version:', tf.keras.__version__)"
]
},
{
"cell_type": "code",
"execution_count": 674,
"metadata": {},
"outputs": [],
"source": [
"cache_dir = 'tmp';"
]
},
{
"cell_type": "code",
"execution_count": 675,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"mkdir: tmp: File exists\r\n"
]
}
],
"source": [
"# Create cache folder.\n",
"!mkdir tmp"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Load dataset"
]
},
{
"cell_type": "code",
"execution_count": 676,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['abstract_reasoning',\n",
" 'aeslc',\n",
" 'aflw2k3d',\n",
" 'amazon_us_reviews',\n",
" 'arc',\n",
" 'bair_robot_pushing_small',\n",
" 'big_patent',\n",
" 'bigearthnet',\n",
" 'billsum',\n",
" 'binarized_mnist',\n",
" 'binary_alpha_digits',\n",
" 'c4',\n",
" 'caltech101',\n",
" 'caltech_birds2010',\n",
" 'caltech_birds2011',\n",
" 'cars196',\n",
" 'cassava',\n",
" 'cats_vs_dogs',\n",
" 'celeb_a',\n",
" 'celeb_a_hq',\n",
" 'chexpert',\n",
" 'cifar10',\n",
" 'cifar100',\n",
" 'cifar10_1',\n",
" 'cifar10_corrupted',\n",
" 'citrus_leaves',\n",
" 'cityscapes',\n",
" 'civil_comments',\n",
" 'clevr',\n",
" 'cmaterdb',\n",
" 'cnn_dailymail',\n",
" 'coco',\n",
" 'coil100',\n",
" 'colorectal_histology',\n",
" 'colorectal_histology_large',\n",
" 'cos_e',\n",
" 'curated_breast_imaging_ddsm',\n",
" 'cycle_gan',\n",
" 'deep_weeds',\n",
" 'definite_pronoun_resolution',\n",
" 'diabetic_retinopathy_detection',\n",
" 'dmlab',\n",
" 'downsampled_imagenet',\n",
" 'dsprites',\n",
" 'dtd',\n",
" 'duke_ultrasound',\n",
" 'dummy_dataset_shared_generator',\n",
" 'dummy_mnist',\n",
" 'emnist',\n",
" 'esnli',\n",
" 'eurosat',\n",
" 'fashion_mnist',\n",
" 'flic',\n",
" 'flores',\n",
" 'food101',\n",
" 'gap',\n",
" 'gigaword',\n",
" 'glue',\n",
" 'groove',\n",
" 'higgs',\n",
" 'horses_or_humans',\n",
" 'i_naturalist2017',\n",
" 'image_label_folder',\n",
" 'imagenet2012',\n",
" 'imagenet2012_corrupted',\n",
" 'imagenet_resized',\n",
" 'imagenette',\n",
" 'imdb_reviews',\n",
" 'iris',\n",
" 'kitti',\n",
" 'kmnist',\n",
" 'lfw',\n",
" 'lm1b',\n",
" 'lost_and_found',\n",
" 'lsun',\n",
" 'malaria',\n",
" 'math_dataset',\n",
" 'mnist',\n",
" 'mnist_corrupted',\n",
" 'movie_rationales',\n",
" 'moving_mnist',\n",
" 'multi_news',\n",
" 'multi_nli',\n",
" 'multi_nli_mismatch',\n",
" 'newsroom',\n",
" 'nsynth',\n",
" 'omniglot',\n",
" 'open_images_v4',\n",
" 'oxford_flowers102',\n",
" 'oxford_iiit_pet',\n",
" 'para_crawl',\n",
" 'patch_camelyon',\n",
" 'pet_finder',\n",
" 'places365_small',\n",
" 'plant_leaves',\n",
" 'plant_village',\n",
" 'plantae_k',\n",
" 'quickdraw_bitmap',\n",
" 'reddit_tifu',\n",
" 'resisc45',\n",
" 'rock_paper_scissors',\n",
" 'rock_you',\n",
" 'scan',\n",
" 'scene_parse150',\n",
" 'scicite',\n",
" 'scientific_papers',\n",
" 'shapes3d',\n",
" 'smallnorb',\n",
" 'snli',\n",
" 'so2sat',\n",
" 'squad',\n",
" 'stanford_dogs',\n",
" 'stanford_online_products',\n",
" 'starcraft_video',\n",
" 'sun397',\n",
" 'super_glue',\n",
" 'svhn_cropped',\n",
" 'ted_hrlr_translate',\n",
" 'ted_multi_translate',\n",
" 'tf_flowers',\n",
" 'the300w_lp',\n",
" 'titanic',\n",
" 'trivia_qa',\n",
" 'uc_merced',\n",
" 'ucf101',\n",
" 'vgg_face2',\n",
" 'visual_domain_decathlon',\n",
" 'voc',\n",
" 'wider_face',\n",
" 'wikihow',\n",
" 'wikipedia',\n",
" 'wmt14_translate',\n",
" 'wmt15_translate',\n",
" 'wmt16_translate',\n",
" 'wmt17_translate',\n",
" 'wmt18_translate',\n",
" 'wmt19_translate',\n",
" 'wmt_t2t_translate',\n",
" 'wmt_translate',\n",
" 'xnli',\n",
" 'xsum']"
]
},
"execution_count": 676,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# List all available datasets to see how the wikipedia dataset is called.\n",
"tfds.list_builders()"
]
},
{
"cell_type": "code",
"execution_count": 677,
"metadata": {},
"outputs": [],
"source": [
"DATASET_NAME = 'quickdraw_bitmap'\n",
"\n",
"dataset, dataset_info = tfds.load(\n",
" name=DATASET_NAME,\n",
" data_dir=cache_dir,\n",
" with_info=True,\n",
" split=tfds.Split.TRAIN,\n",
")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Explore dataset"
]
},
{
"cell_type": "code",
"execution_count": 678,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"tfds.core.DatasetInfo(\n",
" name='quickdraw_bitmap',\n",
" version=3.0.0,\n",
" description='The Quick Draw Dataset is a collection of 50 million drawings across 345 categories, contributed by players of the game Quick, Draw!. The bitmap dataset contains these drawings converted from vector format into 28x28 grayscale images',\n",
" homepage='https://github.com/googlecreativelab/quickdraw-dataset',\n",
" features=FeaturesDict({\n",
" 'image': Image(shape=(28, 28, 1), dtype=tf.uint8),\n",
" 'label': ClassLabel(shape=(), dtype=tf.int64, num_classes=345),\n",
" }),\n",
" total_num_examples=50426266,\n",
" splits={\n",
" 'train': 50426266,\n",
" },\n",
" supervised_keys=('image', 'label'),\n",
" citation=\"\"\"@article{DBLP:journals/corr/HaE17,\n",
" author = {David Ha and\n",
" Douglas Eck},\n",
" title = {A Neural Representation of Sketch Drawings},\n",
" journal = {CoRR},\n",
" volume = {abs/1704.03477},\n",
" year = {2017},\n",
" url = {http://arxiv.org/abs/1704.03477},\n",
" archivePrefix = {arXiv},\n",
" eprint = {1704.03477},\n",
" timestamp = {Mon, 13 Aug 2018 16:48:30 +0200},\n",
" biburl = {https://dblp.org/rec/bib/journals/corr/HaE17},\n",
" bibsource = {dblp computer science bibliography, https://dblp.org}\n",
" }\"\"\",\n",
" redistribution_info=,\n",
")\n",
"\n"
]
}
],
"source": [
"print(dataset_info)"
]
},
{
"cell_type": "code",
"execution_count": 679,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"num_examples: 50426266\n",
"image_shape: (28, 28, 1)\n",
"num_classes: 345\n"
]
}
],
"source": [
"image_shape = dataset_info.features['image'].shape\n",
"num_classes = dataset_info.features['label'].num_classes\n",
"num_examples = dataset_info.splits['train'].num_examples\n",
"\n",
"print('num_examples: ', num_examples)\n",
"print('image_shape: ', image_shape)\n",
"print('num_classes: ', num_classes)"
]
},
{
"cell_type": "code",
"execution_count": 680,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"classes:\n",
"\n",
" ['aircraft carrier', 'airplane', 'alarm clock', 'ambulance', 'angel', 'animal migration', 'ant', 'anvil', 'apple', 'arm', 'asparagus', 'axe', 'backpack', 'banana', 'bandage', 'barn', 'baseball bat', 'baseball', 'basket', 'basketball', 'bat', 'bathtub', 'beach', 'bear', 'beard', 'bed', 'bee', 'belt', 'bench', 'bicycle', 'binoculars', 'bird', 'birthday cake', 'blackberry', 'blueberry', 'book', 'boomerang', 'bottlecap', 'bowtie', 'bracelet', 'brain', 'bread', 'bridge', 'broccoli', 'broom', 'bucket', 'bulldozer', 'bus', 'bush', 'butterfly', 'cactus', 'cake', 'calculator', 'calendar', 'camel', 'camera', 'camouflage', 'campfire', 'candle', 'cannon', 'canoe', 'car', 'carrot', 'castle', 'cat', 'ceiling fan', 'cell phone', 'cello', 'chair', 'chandelier', 'church', 'circle', 'clarinet', 'clock', 'cloud', 'coffee cup', 'compass', 'computer', 'cookie', 'cooler', 'couch', 'cow', 'crab', 'crayon', 'crocodile', 'crown', 'cruise ship', 'cup', 'diamond', 'dishwasher', 'diving board', 'dog', 'dolphin', 'donut', 'door', 'dragon', 'dresser', 'drill', 'drums', 'duck', 'dumbbell', 'ear', 'elbow', 'elephant', 'envelope', 'eraser', 'eye', 'eyeglasses', 'face', 'fan', 'feather', 'fence', 'finger', 'fire hydrant', 'fireplace', 'firetruck', 'fish', 'flamingo', 'flashlight', 'flip flops', 'floor lamp', 'flower', 'flying saucer', 'foot', 'fork', 'frog', 'frying pan', 'garden hose', 'garden', 'giraffe', 'goatee', 'golf club', 'grapes', 'grass', 'guitar', 'hamburger', 'hammer', 'hand', 'harp', 'hat', 'headphones', 'hedgehog', 'helicopter', 'helmet', 'hexagon', 'hockey puck', 'hockey stick', 'horse', 'hospital', 'hot air balloon', 'hot dog', 'hot tub', 'hourglass', 'house plant', 'house', 'hurricane', 'ice cream', 'jacket', 'jail', 'kangaroo', 'key', 'keyboard', 'knee', 'knife', 'ladder', 'lantern', 'laptop', 'leaf', 'leg', 'light bulb', 'lighter', 'lighthouse', 'lightning', 'line', 'lion', 'lipstick', 'lobster', 'lollipop', 'mailbox', 'map', 'marker', 'matches', 'megaphone', 'mermaid', 'microphone', 'microwave', 'monkey', 'moon', 'mosquito', 'motorbike', 'mountain', 'mouse', 'moustache', 'mouth', 'mug', 'mushroom', 'nail', 'necklace', 'nose', 'ocean', 'octagon', 'octopus', 'onion', 'oven', 'owl', 'paint can', 'paintbrush', 'palm tree', 'panda', 'pants', 'paper clip', 'parachute', 'parrot', 'passport', 'peanut', 'pear', 'peas', 'pencil', 'penguin', 'piano', 'pickup truck', 'picture frame', 'pig', 'pillow', 'pineapple', 'pizza', 'pliers', 'police car', 'pond', 'pool', 'popsicle', 'postcard', 'potato', 'power outlet', 'purse', 'rabbit', 'raccoon', 'radio', 'rain', 'rainbow', 'rake', 'remote control', 'rhinoceros', 'rifle', 'river', 'roller coaster', 'rollerskates', 'sailboat', 'sandwich', 'saw', 'saxophone', 'school bus', 'scissors', 'scorpion', 'screwdriver', 'sea turtle', 'see saw', 'shark', 'sheep', 'shoe', 'shorts', 'shovel', 'sink', 'skateboard', 'skull', 'skyscraper', 'sleeping bag', 'smiley face', 'snail', 'snake', 'snorkel', 'snowflake', 'snowman', 'soccer ball', 'sock', 'speedboat', 'spider', 'spoon', 'spreadsheet', 'square', 'squiggle', 'squirrel', 'stairs', 'star', 'steak', 'stereo', 'stethoscope', 'stitches', 'stop sign', 'stove', 'strawberry', 'streetlight', 'string bean', 'submarine', 'suitcase', 'sun', 'swan', 'sweater', 'swing set', 'sword', 'syringe', 't-shirt', 'table', 'teapot', 'teddy-bear', 'telephone', 'television', 'tennis racquet', 'tent', 'The Eiffel Tower', 'The Great Wall of China', 'The Mona Lisa', 'tiger', 'toaster', 'toe', 'toilet', 'tooth', 'toothbrush', 'toothpaste', 'tornado', 'tractor', 'traffic light', 'train', 'tree', 'triangle', 'trombone', 'truck', 'trumpet', 'umbrella', 'underwear', 'van', 'vase', 'violin', 'washing machine', 'watermelon', 'waterslide', 'whale', 'wheel', 'windmill', 'wine bottle', 'wine glass', 'wristwatch', 'yoga', 'zebra', 'zigzag']\n"
]
}
],
"source": [
"label_index_to_string = dataset_info.features['label'].int2str\n",
"\n",
"classes = []\n",
"\n",
"for class_index in range(num_classes):\n",
" classes.append(label_index_to_string(class_index))\n",
" \n",
"print('classes:\\n\\n', classes)"
]
},
{
"cell_type": "code",
"execution_count": 681,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n"
]
}
],
"source": [
"print(dataset)"
]
},
{
"cell_type": "code",
"execution_count": 682,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAgQAAAIFCAYAAACtXuUzAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nOzdd5xU1f3/8fdHiiiKSlEEFARUbIiiRGKvsRujxhijouZrid3YorFrTNSoiUbU2IjyC/YSVGLvWBCQooioIEiTJiAdz++PucS593OWvbvM9tfz8eDBnPeeuXOWvTN75s6HcyyEIAAA0LCtVtMDAAAANY8JAQAAYEIAAACYEAAAADEhAAAAYkIAAAAkNa5IZzPj/yjCCSFYTY9hVXBeowwzQghtanoQq4JzGzFlvWZzhQAA4ibU9ACA6sSEAAAAMCEAAAAVrCFoqBo1auSyDh06uKxTp07lZq1bt3Z9Jk6c6LJx48a5bPjw4an2Dz/84PoAAFAZXCEAAABMCAAAABMCAAAgJgQAAEC1rKjwoIMOctmZZ56Zai9evNj1mTp1qsvOP/98l2299dYuu+qqq1Ltbt26uT6xAsImTZq4rKplv8+nn37a9enfv7/L3n777SobE+qXWAHtmmuu6bJ58+ZVx3AAVCOuEAAAACYEAACACQEAAJBkIeTf+6KUG2VcffXVLrviiitc9tlnn6Xac+fOdX123HFHl5100kkuu+yyy1y22mrpOdFrr73m+owfPz5X9tVXX5Xbb8aMGa7Pxhtv7LKtttrKZYcffniqfcghh7g+66yzjsvOPvtsl91xxx0uqyw2N1q5Zs2auSxbL7Pbbru5Pj/96U9d1qpVK5etu+665Y6hefPmLmvatGm59ytL9nn56quvuj6vvPKKy15//XWXzZw5s9LjqGIfhRB2qOlBrAo2N0IMmxsBAIAyMSEAAABMCAAAABMCAACgaioqjO0COHbsWJc9/PDDLjvllFNS7WXLlrk+Q4YMcVls4aDu3bu7LFvQdPnll7s+ffv2dVltECsKu++++1x27LHHuuzXv/61ywYMGFCpcTTUosJYMV9sQazTTjvNZW3atEm1v/vuO9fn3XffdVlsZ8zvv//eZUuWLEm1ly5d6vrMnz/fZTHLly93We/evVPtPfbYw/Vp2bKly2I7dGZ38YwVI/7rX/9y2ahRo1xWYhQVol6iqBAAAJSJCQEAAGBCAAAAmBAAAABVU1Hh/fff77KjjjrKZbHV+bJFfj//+c9dn9huh7GdDWPf60svvZRq77fffq5PbNXDBx54wGW1QWy3utgqcl27dnXZpptummovWLAg12M2lKLC7K5/b7zxhuvTo0cPlz311FMu+9vf/pZqDx482PWJFeDVVtkVPyVpu+22c9nee+9dbrbLLru4PrHz+rzzznNZiQuAKSpEbrHnQPv27VPtvLvkZouCJWnSpEmVG1gERYUAAKBMTAgAAAATAgAAwIQAAACoiooKN9tss1R79OjRrs9NN93kstjWrtmCvn//+9+uT2zVvcWLF7sstvVwdhXFZ5991vWJbU2bXWlOiheC1Ab77ruvy1588UWX7b777qn2m2++mev49bGoMFYg9MQTT6Ta2S2MJenAAw902csvv7wqw2twWrRo4bLYCpxHHnmkyx566CGX9enTJ9WuQLFmgy0qXGuttVy2/vrrr/J4VoitzFnKItrY87djx44u23bbbV2WXdG2W7durs8mm2yS6/ixrc8rK7ZKabY4+a9//WuuY1FUCAAAysSEAAAAMCEAAABS46o46Lnnnptqx3Zju+OOO1z2+eefu+zOO+9Mtc855xzXZ8SIES6L1SgMHDjQZdkairvuusv1Ofjgg122ww7+o8XY7nS1wZgxY3L1y9ZT5K0hqI9iP9/solhnn32265O3XiD7Ge0RRxzh+mRrcaR4DU128RNJatu2bardoUMH12fttdcud5x5TZs2zWUvvPBCrn5Zc+bMcVlsIbMLLrjAZbHnfXZXxBtvvLHcMTQ0vXr1SrX/85//uD6lrCGoj+655x6Xvf3226n2okWLch0rVkdz8cUXu+y4445LtfPWEJSFKwQAAIAJAQAAYEIAAADEhAAAAKiKigp33nnnVPuVV15xfXr27Omy7G5ykl8MJuaDDz7INa7YrnNZb731lsuWLVvmsuwiPlLtLSr85ptvXBZbRKlz587VMZw6IVtgGRMrmoudw+eff77LLrroolQ7b4HfpZdemqtfVmzRl9jiMJW17rrruuyWW26p1LFiz9PYIkQ333yzy2I7JZ5yyimpNkWF3iWXXJJqx86XWHFydodUKb4zZV02b948l8X+LW644QaXjR8/vmTjOOyww1wWW8xvVXCFAAAA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NbAagkWLFrnstttuS7X/+te/uj5mfmOoNddc02Wrr766y84555xU+7TTTit3nABQX8ReP4877jiX7bXXXi7beeedXZZ97V1rrbVcnxYtWrgstpjQlClTXPbss8+m2rfeeqvr85///Mdl3bp1c1ldwxUCAADAhAAAADAhAAAAYkIAAADUwIoKFy5c6LJsQcqcOXNyHWv27Nm5+mV3T4wtTATUde3atXPZlltu6bI8xbiTJ092fd55551VGB2qU5cuXVLtf/7zn67Pnnvu6bJY0XcpF217/vnnXda8eXOXZQvBzzrrLNdn1KhRLlt//fW9/e0AACAASURBVPVdlt058fvvv3d9lixZ4gdbQ7hCAAAAmBAAAAAmBAAAQEwIAACAGlhR4eeff+6yrbfeukofM1tsFSsqAeq6/v37u2yPPfao1LGWL1/usq5du7ps/PjxlTo+Sif2M37uuedS7djPM1tsLcWLvo8//niXXX/99an2pptuWt4wJUmNGjVy2aGHHuqy7K6F/fr1c31iRZGxFRlnzZqVase+7759+7rsggsucFl14AoBAABgQgAAAJgQAAAAMSEAAABqYEWFH374octOPvnkVDu21WW2yESSvvzyS5dtsMEGLjvmmGNS7X/84x/ljhOoa1q3bu2ygQMHuuzyyy93Wffu3VPtWBFX27ZtXUZRYc2LFWVnV6P84YcfXJ9PPvnEZbEVDbMr/Un+5x4rKpw/f77LYsWNMZMmTUq1Y8WI8+bNc9nf//53l33zzTep9lFHHeX6nHTSSS6jqBAAANQYJgQAAIAJAQAAaGA1BA8++KDLdtttt1T72GOPdX3atGnjsqVLl7pswoQJLnvkkUdS7dhnqKh9Yp9d/uQnP0m1Bw0aVF3DqfXWXXddl3399dcuGz58uMt69+5d7vHHjRtXuYGhSk2fPr3cPqut5t93xmoP/va3v5VkTJJ0yCGHuOz111+v1LH23ntvl8XqCvLsWrjOOuu4bK+99nJZ7N8sVotRalwhAAAATAgAAAATAgAAICYEAABADayoMFbQtP3225d7v9giFLfffrvLLr300soNDLXOEUcc4bJ77rkn1W7VqpXrM3v27JKNIVaAtOGGG7ps/fXXd1l2IZ/Yolmx+2V35yyrXzaL3a9Pnz4u23fffV3WokWLVHvZsmWuz4033uiy7K53kvTFF1+4DFVn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\n",
"text/plain": [
"