{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"name":"DL_VisConvFilters.ipynb","provenance":[],"collapsed_sections":[],"authorship_tag":"ABX9TyO4J4fZQ+67TYL9JtUaHI9E"},"kernelspec":{"name":"python3","display_name":"Python 3"}},"cells":[{"cell_type":"code","metadata":{"id":"UHPvoxzRJ6M5","executionInfo":{"status":"ok","timestamp":1648436975667,"user_tz":240,"elapsed":7,"user":{"displayName":"Guray Erus","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GiGnBNnSM10DAl86Xzx2wV9MnzBNDvcAv6FeVBn=s64","userId":"15374812584437350386"}}},"source":[""],"execution_count":null,"outputs":[]},{"cell_type":"markdown","metadata":{"id":"VtsiB3I2CIA1"},"source":["## Visualization of Convolutional Filters\n","\n","From: https://machinelearningmastery.com/how-to-visualize-filters-and-feature-maps-in-convolutional-neural-networks/"]},{"cell_type":"code","metadata":{"id":"FO_hmBhICGY1","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1648437000718,"user_tz":240,"elapsed":25055,"user":{"displayName":"Guray Erus","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GiGnBNnSM10DAl86Xzx2wV9MnzBNDvcAv6FeVBn=s64","userId":"15374812584437350386"}},"outputId":"0cb246de-dac4-4a31-840e-3800fb7f522d"},"source":["%tensorflow_version 1.x\n","\n","# load vgg model\n","from keras.applications.vgg16 import VGG16\n","# load the model\n","model = VGG16()\n","\n","from keras.applications.vgg16 import preprocess_input\n"],"execution_count":1,"outputs":[{"output_type":"stream","name":"stdout","text":["TensorFlow 1.x selected.\n"]},{"output_type":"stream","name":"stderr","text":["Using TensorFlow backend.\n"]},{"output_type":"stream","name":"stdout","text":["WARNING:tensorflow:From /tensorflow-1.15.2/python3.7/tensorflow_core/python/ops/resource_variable_ops.py:1630: calling BaseResourceVariable.__init__ (from tensorflow.python.ops.resource_variable_ops) with constraint is deprecated and will be removed in a future version.\n","Instructions for updating:\n","If using Keras pass *_constraint arguments to layers.\n","WARNING:tensorflow:From /tensorflow-1.15.2/python3.7/keras/backend/tensorflow_backend.py:4070: The name tf.nn.max_pool is deprecated. Please use tf.nn.max_pool2d instead.\n","\n","Downloading data from https://github.com/fchollet/deep-learning-models/releases/download/v0.1/vgg16_weights_tf_dim_ordering_tf_kernels.h5\n","553467904/553467096 [==============================] - 13s 0us/step\n"]}]},{"cell_type":"code","metadata":{"id":"fC6xRdfPB-_N","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1648437000719,"user_tz":240,"elapsed":19,"user":{"displayName":"Guray Erus","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GiGnBNnSM10DAl86Xzx2wV9MnzBNDvcAv6FeVBn=s64","userId":"15374812584437350386"}},"outputId":"47984f17-b022-4a01-9e18-b525f93f1eef"},"source":["# summarize the model\n","model.summary()"],"execution_count":2,"outputs":[{"output_type":"stream","name":"stdout","text":["Model: \"vgg16\"\n","_________________________________________________________________\n","Layer (type) Output Shape Param # \n","=================================================================\n","input_1 (InputLayer) (None, 224, 224, 3) 0 \n","_________________________________________________________________\n","block1_conv1 (Conv2D) (None, 224, 224, 64) 1792 \n","_________________________________________________________________\n","block1_conv2 (Conv2D) (None, 224, 224, 64) 36928 \n","_________________________________________________________________\n","block1_pool (MaxPooling2D) (None, 112, 112, 64) 0 \n","_________________________________________________________________\n","block2_conv1 (Conv2D) (None, 112, 112, 128) 73856 \n","_________________________________________________________________\n","block2_conv2 (Conv2D) (None, 112, 112, 128) 147584 \n","_________________________________________________________________\n","block2_pool (MaxPooling2D) (None, 56, 56, 128) 0 \n","_________________________________________________________________\n","block3_conv1 (Conv2D) (None, 56, 56, 256) 295168 \n","_________________________________________________________________\n","block3_conv2 (Conv2D) (None, 56, 56, 256) 590080 \n","_________________________________________________________________\n","block3_conv3 (Conv2D) (None, 56, 56, 256) 590080 \n","_________________________________________________________________\n","block3_pool (MaxPooling2D) (None, 28, 28, 256) 0 \n","_________________________________________________________________\n","block4_conv1 (Conv2D) (None, 28, 28, 512) 1180160 \n","_________________________________________________________________\n","block4_conv2 (Conv2D) (None, 28, 28, 512) 2359808 \n","_________________________________________________________________\n","block4_conv3 (Conv2D) (None, 28, 28, 512) 2359808 \n","_________________________________________________________________\n","block4_pool (MaxPooling2D) (None, 14, 14, 512) 0 \n","_________________________________________________________________\n","block5_conv1 (Conv2D) (None, 14, 14, 512) 2359808 \n","_________________________________________________________________\n","block5_conv2 (Conv2D) (None, 14, 14, 512) 2359808 \n","_________________________________________________________________\n","block5_conv3 (Conv2D) (None, 14, 14, 512) 2359808 \n","_________________________________________________________________\n","block5_pool (MaxPooling2D) (None, 7, 7, 512) 0 \n","_________________________________________________________________\n","flatten (Flatten) (None, 25088) 0 \n","_________________________________________________________________\n","fc1 (Dense) (None, 4096) 102764544 \n","_________________________________________________________________\n","fc2 (Dense) (None, 4096) 16781312 \n","_________________________________________________________________\n","predictions (Dense) (None, 1000) 4097000 \n","=================================================================\n","Total params: 138,357,544\n","Trainable params: 138,357,544\n","Non-trainable params: 0\n","_________________________________________________________________\n"]}]},{"cell_type":"code","metadata":{"id":"uR0LzSey__-I","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1648437000950,"user_tz":240,"elapsed":237,"user":{"displayName":"Guray Erus","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GiGnBNnSM10DAl86Xzx2wV9MnzBNDvcAv6FeVBn=s64","userId":"15374812584437350386"}},"outputId":"2e86905b-0226-4442-ee0b-a8a87e03526e"},"source":["# summarize filter shapes\n","for layer in model.layers:\n"," # check for convolutional layer\n"," if 'conv' not in layer.name:\n"," continue\n"," # get filter weights\n"," filters, biases = layer.get_weights()\n"," print(layer.name, filters.shape)\n"],"execution_count":3,"outputs":[{"output_type":"stream","name":"stdout","text":["block1_conv1 (3, 3, 3, 64)\n","block1_conv2 (3, 3, 64, 64)\n","block2_conv1 (3, 3, 64, 128)\n","block2_conv2 (3, 3, 128, 128)\n","block3_conv1 (3, 3, 128, 256)\n","block3_conv2 (3, 3, 256, 256)\n","block3_conv3 (3, 3, 256, 256)\n","block4_conv1 (3, 3, 256, 512)\n","block4_conv2 (3, 3, 512, 512)\n","block4_conv3 (3, 3, 512, 512)\n","block5_conv1 (3, 3, 512, 512)\n","block5_conv2 (3, 3, 512, 512)\n","block5_conv3 (3, 3, 512, 512)\n"]}]},{"cell_type":"code","metadata":{"id":"Ie4GSjXHBb9z","executionInfo":{"status":"ok","timestamp":1648437000951,"user_tz":240,"elapsed":6,"user":{"displayName":"Guray Erus","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GiGnBNnSM10DAl86Xzx2wV9MnzBNDvcAv6FeVBn=s64","userId":"15374812584437350386"}}},"source":["# retrieve weights from the second hidden layer\n","filters, biases = model.layers[1].get_weights()"],"execution_count":4,"outputs":[]},{"cell_type":"code","metadata":{"id":"pHuOphUjBhov","executionInfo":{"status":"ok","timestamp":1648437000951,"user_tz":240,"elapsed":5,"user":{"displayName":"Guray Erus","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GiGnBNnSM10DAl86Xzx2wV9MnzBNDvcAv6FeVBn=s64","userId":"15374812584437350386"}}},"source":["# normalize filter values to 0-1 so we can visualize them\n","f_min, f_max = filters.min(), filters.max()\n","filters = (filters - f_min) / (f_max - f_min)"],"execution_count":5,"outputs":[]},{"cell_type":"code","metadata":{"id":"O3HdVwa-Blu3","colab":{"base_uri":"https://localhost:8080/","height":252},"executionInfo":{"status":"ok","timestamp":1648437001522,"user_tz":240,"elapsed":575,"user":{"displayName":"Guray Erus","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GiGnBNnSM10DAl86Xzx2wV9MnzBNDvcAv6FeVBn=s64","userId":"15374812584437350386"}},"outputId":"ed884da5-7f77-47ff-c306-aa9d308083ca"},"source":["import matplotlib.pyplot as plt\n","\n","# plot first few filters\n","n_filters, ix = 6, 1\n","for i in range(n_filters):\n","\t# get the filter\n","\tf = filters[:, :, :, i]\n","\t# plot each channel separately\n","\tfor j in range(3):\n","\t\t# specify subplot and turn of axis\n","\t\tax = plt.subplot(n_filters, 3, ix)\n","\t\tax.set_xticks([])\n","\t\tax.set_yticks([])\n","\t\t# plot filter channel in grayscale\n","\t\tplt.imshow(f[:, :, j], cmap='gray')\n","\t\tix += 1\n","# show the figure\n","plt.show()"],"execution_count":6,"outputs":[{"output_type":"display_data","data":{"text/plain":["
"],"image/png":"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\n"},"metadata":{}}]},{"cell_type":"code","metadata":{"id":"eHY9znZQCxYz","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1648437016893,"user_tz":240,"elapsed":15375,"user":{"displayName":"Guray Erus","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GiGnBNnSM10DAl86Xzx2wV9MnzBNDvcAv6FeVBn=s64","userId":"15374812584437350386"}},"outputId":"a4342f01-7da4-4454-afb5-897980770f29"},"source":["from google.colab import drive\n","drive.mount('/content/drive')"],"execution_count":7,"outputs":[{"output_type":"stream","name":"stdout","text":["Mounted at /content/drive\n"]}]},{"cell_type":"code","metadata":{"id":"blLDO3xfDcoP","executionInfo":{"status":"ok","timestamp":1648437016894,"user_tz":240,"elapsed":6,"user":{"displayName":"Guray Erus","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GiGnBNnSM10DAl86Xzx2wV9MnzBNDvcAv6FeVBn=s64","userId":"15374812584437350386"}}},"source":["# plot feature map of first conv layer for given image\n","from keras.applications.vgg16 import preprocess_input\n","from keras.preprocessing.image import load_img\n","from keras.preprocessing.image import img_to_array\n","from keras.models import Model\n","import matplotlib.pyplot as plt\n","from numpy import expand_dims\n"],"execution_count":8,"outputs":[]},{"cell_type":"code","metadata":{"id":"B8CQ1xygKEsr","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1648437020371,"user_tz":240,"elapsed":3481,"user":{"displayName":"Guray Erus","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GiGnBNnSM10DAl86Xzx2wV9MnzBNDvcAv6FeVBn=s64","userId":"15374812584437350386"}},"outputId":"508ee852-9397-465a-d25a-7e13dc62df84"},"source":["# load the model\n","model = VGG16()\n","# redefine model to output right after the first hidden layer\n","model = Model(inputs=model.inputs, outputs=model.layers[15].output)\n","model.summary()"],"execution_count":9,"outputs":[{"output_type":"stream","name":"stdout","text":["Model: \"model_1\"\n","_________________________________________________________________\n","Layer (type) Output Shape Param # \n","=================================================================\n","input_2 (InputLayer) (None, 224, 224, 3) 0 \n","_________________________________________________________________\n","block1_conv1 (Conv2D) (None, 224, 224, 64) 1792 \n","_________________________________________________________________\n","block1_conv2 (Conv2D) (None, 224, 224, 64) 36928 \n","_________________________________________________________________\n","block1_pool (MaxPooling2D) (None, 112, 112, 64) 0 \n","_________________________________________________________________\n","block2_conv1 (Conv2D) (None, 112, 112, 128) 73856 \n","_________________________________________________________________\n","block2_conv2 (Conv2D) (None, 112, 112, 128) 147584 \n","_________________________________________________________________\n","block2_pool (MaxPooling2D) (None, 56, 56, 128) 0 \n","_________________________________________________________________\n","block3_conv1 (Conv2D) (None, 56, 56, 256) 295168 \n","_________________________________________________________________\n","block3_conv2 (Conv2D) (None, 56, 56, 256) 590080 \n","_________________________________________________________________\n","block3_conv3 (Conv2D) (None, 56, 56, 256) 590080 \n","_________________________________________________________________\n","block3_pool (MaxPooling2D) (None, 28, 28, 256) 0 \n","_________________________________________________________________\n","block4_conv1 (Conv2D) (None, 28, 28, 512) 1180160 \n","_________________________________________________________________\n","block4_conv2 (Conv2D) (None, 28, 28, 512) 2359808 \n","_________________________________________________________________\n","block4_conv3 (Conv2D) (None, 28, 28, 512) 2359808 \n","_________________________________________________________________\n","block4_pool (MaxPooling2D) (None, 14, 14, 512) 0 \n","_________________________________________________________________\n","block5_conv1 (Conv2D) (None, 14, 14, 512) 2359808 \n","=================================================================\n","Total params: 9,995,072\n","Trainable params: 9,995,072\n","Non-trainable params: 0\n","_________________________________________________________________\n"]}]},{"cell_type":"code","metadata":{"id":"fqOhRiHuJ34j","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1648437069099,"user_tz":240,"elapsed":387,"user":{"displayName":"Guray Erus","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GiGnBNnSM10DAl86Xzx2wV9MnzBNDvcAv6FeVBn=s64","userId":"15374812584437350386"}},"outputId":"49ce0490-cd94-4ac7-e1ca-bcbf4dde8100"},"source":["# load the image with the required shape\n","img = load_img('/content/drive/MyDrive/CommonFiles/MUSA650-Data/bird.jpg', target_size=(224, 224))\n","\n","# convert the image to an array\n","img = img_to_array(img)\n","\n","# expand dimensions so that it represents a single 'sample'\n","img = expand_dims(img, axis=0)\n","\n","img.shape"],"execution_count":11,"outputs":[{"output_type":"execute_result","data":{"text/plain":["(1, 224, 224, 3)"]},"metadata":{},"execution_count":11}]},{"cell_type":"code","metadata":{"id":"XywWuE_eFc7H","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1648437075063,"user_tz":240,"elapsed":81,"user":{"displayName":"Guray Erus","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GiGnBNnSM10DAl86Xzx2wV9MnzBNDvcAv6FeVBn=s64","userId":"15374812584437350386"}},"outputId":"1f4a9e91-a58c-4669-c81e-b1a8a5d9ffdd"},"source":["# prepare the image (e.g. scale pixel values for the vgg)\n","img = preprocess_input(img)\n","img.shape"],"execution_count":12,"outputs":[{"output_type":"execute_result","data":{"text/plain":["(1, 224, 224, 3)"]},"metadata":{},"execution_count":12}]},{"cell_type":"code","metadata":{"id":"IP0guqGiM33B","colab":{"base_uri":"https://localhost:8080/","height":304},"executionInfo":{"status":"ok","timestamp":1648437077643,"user_tz":240,"elapsed":435,"user":{"displayName":"Guray Erus","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GiGnBNnSM10DAl86Xzx2wV9MnzBNDvcAv6FeVBn=s64","userId":"15374812584437350386"}},"outputId":"7789d9a8-26c3-460f-88bb-220c9ae4ceb4"},"source":["plt.imshow(img.squeeze())"],"execution_count":13,"outputs":[{"output_type":"stream","name":"stderr","text":["Clipping input data to the valid range for imshow with RGB data ([0..1] for floats or [0..255] for integers).\n"]},{"output_type":"execute_result","data":{"text/plain":[""]},"metadata":{},"execution_count":13},{"output_type":"display_data","data":{"text/plain":["
"],"image/png":"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NW0ab731Fn/+GcaffzbizBnw9m4B+wKB+nBTDbiAa5mjXCiDbRVzOvbMpOTLuDFJwC8XsAWgBvCCyxkyyKmh4Go70zBYMI4ePZphFKRx48baunWrJGnp0qUaMmSI/vjjDzvgoUPS//6XYxzPSIr4618VERGhWbNmafny5erRo4fmz5+v5cuXKzU1VZ07d1ZaWpqWL1+uiIgIdejQQViWHBERateunUqXLq01a9YoKipKERGP6Ik+sVrz3XcqHRGhxo0bi4gIMfwDwd8F+zIb7J6VeED2NODcGvWmSmyWKC3RXvZy43k1AvpJzEnfPyyoInvVgfWmYTCbK3YBkBGBAnJC+/fbY//r1aunnTt3asOGDQoPD9dTTz2lDz74QKNHj8717JckhT/7rALDw8X06Zq8fr169uyp8PBjWrx4izp27Kjw8HDdlpioNRs2qHXr1goPD5dlWVqzZo3d2u7rq4D167V582adPHlS3bt31/ppP2mmX7htI7BlS/HeeyK4t3gmWgw9JPrKntu/XuKfEiGXKNTNJKIlyuYRxpJY7dp2SLRwFwEfQbigoREBIwI3FseP/6l69VCtWrX0xx9/aMuWLXrooYe0bds2ff7553rmmWcUGRkpSfr444/11VdfSbJn9f0s6Z7nnhOTJmnCtm1qeM89CmvSRAsXLtRNN3VSgwZN5LFmjdZu2ya/li3VuEmTjC42y9oup9Opbdu2aduOHVp3/rw6dOig5ORkLVmyRE3q1lUd6qlp0236csoUUeMRuzA+IjFNorPr7S6JIZcQgHRX31XIA/II09htO0himWQbH9kmmGG6CI0I3GDExOjPWrVUtWpVLVq0SHXr1lWvXr00bdo0DRo0SOfPn9exY8ckSV988YVGjBihoUOHqu633ypo6FBVrFtXEydOVLs+fVS1bl3NnTtXe8LC1LFGDXl6emr16tUKatlSderWlWXZi4emmxXbs8de0S8pKUl169ZV8+bNtWHDBtWtW1c1b71VNffs0ezZ8+XrW1dVqvQWEX+KPRJREucljkj8P9mmwMpcpgggUVuX/hRIdw5XeCQ4JNt8GmpFK/3Z9c/i/OWKBSMCNyDRJ07o5goVtGbNGlWqVEmNGjXSnDlzdN999+nEiROSpKlTp+q1117T6NGjVbp0aQUFBYmyZTX644919913KyQkRNOnT1erVq100003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\n"},"metadata":{"needs_background":"light"}}]},{"cell_type":"code","metadata":{"id":"klzILcjHGajL","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1648437084278,"user_tz":240,"elapsed":794,"user":{"displayName":"Guray Erus","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GiGnBNnSM10DAl86Xzx2wV9MnzBNDvcAv6FeVBn=s64","userId":"15374812584437350386"}},"outputId":"bbd62b20-da7a-4b90-80bf-1145617bcd01"},"source":["# get feature map for first hidden layer\n","feature_maps = model.predict(img)"],"execution_count":14,"outputs":[{"output_type":"stream","name":"stdout","text":["WARNING:tensorflow:From /tensorflow-1.15.2/python3.7/keras/backend/tensorflow_backend.py:422: The name tf.global_variables is deprecated. Please use tf.compat.v1.global_variables instead.\n","\n"]}]},{"cell_type":"code","metadata":{"id":"ZkuzMTxiJ43g","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1648437103580,"user_tz":240,"elapsed":80,"user":{"displayName":"Guray Erus","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GiGnBNnSM10DAl86Xzx2wV9MnzBNDvcAv6FeVBn=s64","userId":"15374812584437350386"}},"outputId":"780ba496-6e5c-4760-b920-03e47b5a7ae3"},"source":["feature_maps.shape"],"execution_count":15,"outputs":[{"output_type":"execute_result","data":{"text/plain":["(1, 14, 14, 512)"]},"metadata":{},"execution_count":15}]},{"cell_type":"code","metadata":{"id":"4buGpLK7GtkJ","colab":{"base_uri":"https://localhost:8080/","height":850},"executionInfo":{"status":"ok","timestamp":1648437109195,"user_tz":240,"elapsed":2388,"user":{"displayName":"Guray Erus","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GiGnBNnSM10DAl86Xzx2wV9MnzBNDvcAv6FeVBn=s64","userId":"15374812584437350386"}},"outputId":"132c9201-37b4-4ba4-9ac4-00ddb21dc83a"},"source":["square = 8\n","ix = 1\n","plt.figure(figsize=(15,15))\n","for _ in range(square):\n","\tfor _ in range(square):\n","\t\t# specify subplot and turn of axis\n","\t\tax = plt.subplot(square, square, ix)\n","\t\tax.set_xticks([])\n","\t\tax.set_yticks([])\n","\t\t# plot filter channel in grayscale\n","\t\tplt.imshow(feature_maps[0, :, :, ix-1], cmap='gray')\n","\t\tix += 1\n","# show the figure\n","plt.show()"],"execution_count":16,"outputs":[{"output_type":"display_data","data":{"text/plain":["
"],"image/png":"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0RQnnXRSNO/s7IzmqfdJqktZCCGUSqVonrpuNEKtzn3NsG3btmj+qU99KnnMokWLGrWcMaWnpyeaP/7449E81aVyOKQ6yo1kqc/a3r17k8ekrgWx7pxFW7FiRSHjHHXUUcltW7dujeapLropnlABAABkUlABAABkUlABAABkUlABAABkUlABAABk0uUPRrkFCxZE876+vmi+b9++Bq6mtldeeaVpc7+dUqkU7eiX6riWY8OGDYWM89GPfrSQcSjONddcE83/+Z//OXnMypUro/ntt98ezRcvXhzNa3XjSnXw6urqSh4zVtU6V9RnypQp0XzNmjXRPPV9RX0qlUo0P3jw4DCv5J1JdUBNXTPf/e53J8fauXNnNK/3NfGECgAAIJOCCgAAIJOCCgAAIJOCCgAAIJOCCgAAIJMufzBKTJgwIZr39vZG81QXr1T3pV27duUtrA79/f0NnyNXpVKJdkiaOnVqcv+UWl3X6rFkyZJofuqppyaPefTRRwuZm7izzjormqc68OW4//77o/nEiROjea1OlENDQ9G82V3+2traonmtdTW6Q+nChQuT21Ld6VJSP8do6mY3Z86c5LaOjo5oPhzfM7S+l19+OZrHOvGGEML06dOTYxV13fCECgAAIJOCCgAAIJOCCgAAIJOCCgAAIJOCCgAAIJMuf9BCyuX070BmzJgRzWfOnBnNJ0+eHM1TXXKWLVuWnHv//v3JbaNFqVSKdh6bNm1adP+9e/c2eklh48aN0fxv//ZvGz73WHfsscdG8w984APRfDi6Kx48eDCaHzhwIHnMSP3sDg4ORvNGd/Krpd5OfiGEcMopp0TzVJey0dTl75hjjkluW79+/TCuhLc0s4tvkWpd02Jq3b+kOp3WyxMqAACATAoqAACATAoqAACATAoqAACATAoqAACATAoqAACATNqmQwuZPXt2ctukSZOi+YoVK6J5Ua1Cx4pyuRx6enqq8lSb41dffbXRSwo7d+5s+BytqlQqVWWVSqWw8c8///xo/uSTT0bz1atXFzZ3yksvvRTNc1r4p/6swkg2ffr0aP7EE09E80WLFjVyOSGEEJ5++umGzxF7r4dQ7Ps9x5tvvpnclro+pv40iO+r+pTL5dDd3V2V19tufLTYsGFDw+fwhAoAACCTggoAACCTggoAACCTggoAACCTggoAACCTLn/QRKlOPPv27YvuX6tz3HB0lRvLKpVKOHToUFX++uuvN2E1vJ2iOpydccYZ0fyKK66I5pdcckk037p1azSfMWNGcu5t27a9zep+XpGdBI8++uhoPhxd63Jt3749ml911VXDvJLhNWXKlGhedBfQiRMnhve+971V+UMPPRTdP+f9eNppp0XzZ555JpqnuqyOdUNDQ8n7iFZy+umnR/PHH398mFfy9jyhAgAAyKSgAgAAyKSgAgAAyKSgAgAAyKSgAgAAyKTL3zCLdXq64IILmrASRoLx48eHJUuWVOUbN26M7v/KK680eklNtXjx4uS2IjuY5RgcHAy7d++uynWZan2TJ09Obrvuuuuiear734c//OFofuutt0bzuXPnJuf+4Ac/GM1vv/325DExEyZMSG7r6emJ5l1dXXXNMZI99thjzV5CQxXdzS9l6tSp4fLLL6/KU13+cjzxxBOFjUXr+/GPfxzNr7766mj+L//yL9G8ra0tOcfg4GD9C4vwhAoAACCTggoAACCTggoAACCTggoAACCTggoAACBTXV3+pk+fHi666KKq/LbbbitsQaPdzJkzq7L2ds0Wx6rBwcHQ29tblY/2bn4psc/HW5rd5a9UKkU/q6lub8PRWeyEE06I5gsWLEgec++99zZoNa0r1r3xLR/60IcaOnetDoOpDnz1SnUeDCGE//3f/43mK1asKGTuoqW6e4UQwjnnnBPNP/axjzVqOWPKwMBA2LFjR7OXwRjy1a9+NZqPHz++rnGOOOKI5LYpU6ZE85UrV9Y1hydUAAAAmRRUAAAAmRRUAAAAmRRUAAAAmRRUAAAAmRRUAAAAmerq133w4MGwdu3aRq1lTCiVSs1eAiPIgQMHwrPPPtvsZQy7pUuXRvNrrrkmecwf/dEfRfPly5dH8xtuuKH+hdUwZ86c8Id/+IdV+Z/+6Z9G97/55puTY7300kvR/J577onms2fPjuY33nhjNN+wYUNy7u3bt0fzJ598MnlMzPz585PbNm7cWNdYY9mjjz6atS0m9Sc4du3alTxmzZo10byolu1Fu/XWW5PbUp+Ten3mM5+J5jfddFMh47eqLVu2hGuvvbbZy2AMSf1ZkqlTp0bzW265JZovWbIkOcdll10WzWPfr6tWrUqO4wkVAABAJgUVAABAJgUVAABAJgUVAABAJgUVAABAprq6/A0MDISdO3dW5XfccUd0/49//OPJsS699NJo/u1vf7ueJUFLmzx5cjjzzDOr8h/84AeFzfGJT3wimqe6vX3/+98vbO7TTz89mp900knRPNWxL4R017zh6pxZKpWiXdQeeuih6P6bNm1KjvXKK69E846Ojmi+cOHCaP7ggw9G869+9avJufv7+5PbYsaPHx/N3/ve9yaPGald/ubNmxfNU+ejll/5lV+J5qeeemo0/+///u9oXqtr1I4dO+paU7kc/x1p7Hv77Vx++eXRvFaXvRzt7e1hypQpVXnq+lTLd77znSKWNOa7+Y1VqY5yjz322DCvpLWlXscFCxbUtX8IIcydOzeaX3zxxXWtqdb15GMf+1g0//znP1+VDQ4OJsfxhAoAACCTggoAACCTggoAACCTggoAACCTggoAACBTqVKpHP7OpdK2EMLIbN/U2uZXKpUZRQ7oXDVMoefKeWoo56p1OFetw7lqHc5V63CuWkPyPNVVUAEAAPAz/skfAABAJgUVAABAJgUVAABAJgUVAABAJgUVAABAJgUVAABAJgUVAABAJgUVAABAJgUVAABAJgUVAABAJgUVAABAJgUVAABAJgUVAABAJgUVAABAJgUVAABApvZ6di6VSpVGLWSsq1QqpSLHK5VKlVKpesiOjo7U/smxDh06VNcxqbxSib99yuV0XZ9ab1tbWzQfGhqqa+5a8+/bty81VmHnymeqobZXKpUZRQ1WKpUqsfdKrfdWSs4xo1zh5yqRR/d3PupS6LmaNm1aZf78+VX5Cy+8EN1/YGAgOVbqWp7K29vrugWqOXfquyf1nhs3blxdc4cQwsGDB6P5SSedFM2ffvrpYflcUYhh+b5KvU85fKl7wPquJrSMUqkUvWDPnTs3un+tombLli3JOWJSRVDqpqW7uzs595w5c6J5T09PNO/r64vmtb4Iu7q6ovny5cuTx9ASNhY5WLlcDhMmTKjKU79wqPXF1d/fX9i6Gm2YipBCz1VK6ga6lc7HCFDouZo/f35YtmxZVX7iiSdG99+1a1dyrM7Ozmg+adKkaD516tRonvrs7tixIzn3/v37o3nq+/DYY49NjpWyfv36aL5ixYpoXiqVCv9cxa4HfiFRiMK/r2L3VqlfFPPO+Sd/AAAAmRRUAAAAmRRUAAAAmRRUAAAAmUZtU4pU15sQQli5cmUhcyxcuDC5bc2aNdF8yZIlVdmLL75YyHr+f5VKJdqgYd26dYXP9U7t2bMnue3oo4+O5qkOSan/tFvrPzL7T5ocjra2tjBlypSqfPPmzdH9R8t/1B4tP0cImk+MRK+++mr40pe+VJVv2rSpsDm2b98ezZv5fZhq9pTjN3/zNwsb6+2MpuvBaDZu3Lho45PU/W+s4dJb3CMdHk+oAAAAMimoAAAAMimoAAAAMimoAAAAMimoAAAAMo3aLn9FdfKrJdXJL4T/2xEsJtbZp1Gdp8rl6np52rRp0X1LpVJynDfeeKOwNdVr9uzZ0fz555+P5jmdk+bNmxfNX3nllbrHGg1S3X6+/vWvJ4+56KKLovmkSZOi+YEDB+peV7NVKpWWXDeMZP39/eHVV18tZKzU925HR0c0j3XCbUWx7qOMbX19feGnP/3pYe+f+q4OId1VOdU9eeLEidG8vT1eckyePDk590jsTJ3iCRUAAEAmBRUAAEAmBRUAAEAmBRUAAEAmBRUAAEAmBRUAAECmUds2vdkGBwej+bZt24Zl/nK5HHp6eqryVIv2rq6uRi8pyz333NPwOVKtP8eqk08+OZpfcsklyWMeeeSRaD6a2owPDAyEnTt3VuWr7oObAAAWHElEQVSVSqUJqxk+Z511VjRftWpV8pjdu3dH80b9iYjR6qMf/Wg0T732w/HnQop28ODBsH79+kLGSn3vpnIYrSqVSl3X2+3btye3pdqmd3Z2RvPYvWcIIfT29kbzVmqNXosnVAAAAJkUVAAAAJkUVAAAAJkUVAAAAJkUVAAAAJma1uXvhBNOiOYvvPDCMK9keMW6ojSi81W5XI52Zunr64vuf/DgwcLX0Cra2tqiealUqspGe0e3EELYv39/NI+9HmPNaO4WNmXKlGi+bNmyaH7aaaclx1q7dm00r9VJaqyaNGlScts3v/nNaH7LLbdE809/+tOFrGm4NetzNWvWrGj+/ve/P5rffffdjVxOtvHjxzd7CXVLfe8Ox3vh8ccfj+ann356w+ceqWq97uVy/NlL6n2XuldIdX8dLTyhAgAAyKSgAgAAyKSgAgAAyKSgAgAAyKSgAgAAyNS0Ln+bN29u1tRNFeuKsnfv3mGbP9V9ZWBgYNjWUIRdu3ZF81Snslq6u7ujeW9vb1XWaq9TCCG0t8c/5qkOPevXr2/kchihUp+pn/70p9F8NHc8HE579uxJbhsLnTU7OjrC3Llzq/LU9SnVhbSW1PfC1VdfHc2//OUv1z1HUWLded+S6sbbip/FWMfjEEI4cOBAIeOfffbZyW2pLo5jWeo+KIR0J9LUZ3G03N/HuhsODQ2l92/kYgAAAEYzBRUAAEAmBRUAAEAmBRUAAEAmBRUAAECmpnX52717d7OmbqojjzyyKluzZk3h81QqlWg3klQ3oFT3oGZLdbmaPHlyYXNUKpXDnnskd91Kre2kk06K5rEONiGEsGLFisLWROv78Ic/HM0nTJiQPKYVu47RHOVyOXR1dVXlqetZR0dHcqzp06dH89///d/PW1wTzJo1K7lt06ZN0bxW57FmqvV92d/f39C5P/nJTya3ffCDH2zo3K0o1XUxhHTnydHSzS+lra2tKkvdL4bgCRUAAEA2BRUAAEAmBRUAAEAmBRUAAEAmBRUAAECmpnX5G6tiHXw2btxY+DxDQ0Nh//79VfmBAwei+8e6mYwEqY4qv/iLv9jwOVJd8EaqmTNnRvNU56sNGzY0cDWMVP/4j/8Yzb/yla9E81QX0iVLlhS2prEs1uHuLX19fcO4kubo7+8Pb7zxRlW+b9++usdKXQNT3xff//73656j0VKd/Gppte/vEEIYGBgoZI7Udeiuu+5KHnPvvfcWMvdoUus99Oqrrw7jSlpXa90xAgAAjCAKKgAAgEwKKgAAgEwKKgAAgEwKKgAAgEwKKgAAgEwt0zb9oosuiub33HPPMK/knXnPe95TlT3//POFz1OpVJIt0mMGBwcLX0MjrVy5srCxjjvuuGi+bt26qmzbtm2FzZtjypQpyW0zZsyI5g8//HA07+/vL2RNjDy1WnH/1V/9VTR//fXX65pjz549yW2tdj1pprHQGr2WQ4cOhc2bNxcyVupPRNxxxx3RfCS2Tc/xxBNPNHsJTfPss89G89deey15TKlUiua12ry3mlKpFDo6Og57/1pt7Ou5lxxNxo0bV5XV+m7zhAoAACCTggoAACCTggoAACCTggoAACCTggoAACBTy3T5S3XzS3Vlufzyy5Nj3XXXXYWsKcdLL71UlY31Lk85enp6onlvb2/dY5177rmHvW+tzmZF6uzsjOa/+qu/mjzmgQceiOa6+Y1e5513XjR/8MEHk8fU280vJdYFE+pVbzeyWh566KFCxmk1zzzzTLOXMOKceuqpyW2p78T77ruvUcsZdqVSKXofkeoA6z60WqzzYa1OkJ5QAQAAZFJQAQAAZFJQAQAAZFJQAQAAZFJQAQAAZGqZLn9z586N5hdddFE0/973vtfI5WQbqetqNTnd/FJSnfsee+yxwuZISXW4+u3f/u3o/u3t6Y/sjh07CltXUVI/x5133jnMK2ltZ5xxRjSv1c2vXqn3VqzTEcVJdSwNISS7302cODGab9q0qZA1Dae+vr7w/PPPN3sZjDL/+Z//2ewlNFW5XA7jx4+vyk8//fTo/qlrSggh/PCHP4zm27dvz1tci6i386EnVAAAAJkUVAAAAJkUVAAAAJkUVAAAAJkUVAAAAJlapstfW1tbNNc1j3fq4YcfbtrckydPDmeffXZV3tnZGd3/Jz/5SXKsVCe4lFSHnqVLl0bzb3zjG8mxfu/3fi+ar169uq411ZLq6HnttddG8/e///2Fzd1sRXacTL2OqU5OORYvXhzNy+X47/BWrVpV2NytJqdj6c6dOxuwkuZIdTo9dOhQE1ZDkY488sjkts2bNw/jSsaeiRMnhl/+5V+uyr/5zW9G9691HTr33HOj+Wjv8lcvT6gAAAAyKagAAAAyKagAAAAyKagAAAAyKagAAAAyKagAAAAyNbRt+he+8IXktpNPPjmaX3jhhdF89+7dRSwJqjz77LNNm7ujoyPMmTOnKl+7dm10/+OPPz451pYtW6L5Aw88EM2nTZsWzd/znvdE81S77RBCuPXWW6N5vS3pp06dWtf+IYQwbty4uo8Zy+65555CxjnvvPOS21It/P/u7/6ukLlHgvHjx0fz/fv3D/NKWlulUtEifZTSGr15yuVy9Lvx+eefj+7/xS9+MTnWU089Vdi6Gu2CCy6I5qn7oCJ5QgUAAJBJQQUAAJBJQQUAAJBJQQUAAJBJQQUAAJCpVKlUDn/nUunwd26yVJepEEJ47LHHhnElh6dSqZSKHK+VzlWOK664Ipr/27/9W8PnLvJctdJ5am9PNwUdGBgoZI6FCxcmt61Zsyaat7W1RfPBwcGnK5XK0kIWFlrrXBWpXI7/3m3ZsmXJY5544oloft1116UOKfRcdXZ2VmbPnl2V79ixI7r/vn37kmPNmzcvmqe6/PX29kbzGTNmRPPU+zeE9Hu+yK63s2bNiuZbt25NHeJz1Tqcq9bRcufqpJNOiuadnZ3RfMWKFXXP0dXVFc1T3Yh37doVzVetWlX33Cmpe0BPqAAAADIpqAAAADIpqAAAADIpqAAAADIpqAAAADLV2+VvWwhhY+OWM2bNr1Qq8RZQmZyrhin0XDlPDeVctQ7nqnU4V63DuWodzlVrSJ6nugoqAAAAfsY/+QMAAMikoAIAAMikoAIAAMikoAIAAMikoAIAAMikoAIAAMikoAIAAMikoAIAAMikoAIAAMikoAIAAMikoAIAAMikoAIAAMikoAIAAMikoAIAAMikoAIAAMikoAIAAMjUXs/OpVKp0qiFjHWVSqVU5HjOVeMUea7GjRtX6e7ursr7+vqi+7e1tSXHKpfjvx9JHZPav1KJv3UGBweTcw8NDUXzUin+UrW3xy89tX6+zs7OaD5x4sRo/tJLL22vVCozkgPWyWeqoZyr1uFc1SF1nU1dG1PX0hDS1+YaCj1X5XK5Ert2p9Zc6zuDKj5XLSJ1D1hXQQUUq7u7O5x99tlV+erVq6P7p4qHEELo6emp65iurq5o3t/fH813796dnHv//v11zTF16tRoPmXKlOQcRxxxRDSPvX4hhHDeeedtTA7GSONctQ7nKiJVIE2YMCGap36p1Nvbm5wjdW2uodBz1d7eHmbNmlWVp67/O3bsKHL60c7nqsX5J38AAACZFFQAAACZFFQAAACZ/B8qaKLe3t7w6KOPVuU7d+6M7p/6d/chhDAwMFDYulrJzTff3OwlACNA6v9mzp07N5rPnj07mqf+r1Lq/0mFEMKcOXPqWtP06dOj+RtvvJGc48knn4zmzzzzTPKYIvX09IT3ve99VXnq9Vq+fHlyrNTPWaspB4xknlABAABkUlABAABkUlABAABkUlABAABkUlABAABk0uUPmqhSqUQ7JI0bN67uscZql7/Ozs5mL6FpyuX478Quvvji5DHvfve7o/myZcui+Y9//ONoXqsbl05dNMOOHTuieep6mnqfHjp0KJqfdtppybnPO++8aH799ddH80984hPRfMqUKck5enp6onmq+2ClUkmOlaNUKkWvt0cddVR0/8HBweRYqe+rRx55JJqnfpa+vr7kHDCcPKECAADIpKACAADIpKACAADIpKACAADIpKACAADIpKACAADINCbbpn/oQx+K5v/zP/8Tzbdv397I5TCGDQ0Nhd7e3mYv4+ek2pCnWgkX6dhjj01uW79+fTQfjnUVraOjI5qn2jun2g+n8hkzZiTnnjlzZjR/9NFH65oDWt3Bgwejeepas2bNmuRY3/jGN+qa+wMf+EA0T7UNDyGErq6uaF50e/SU3t7e6H1S6ppS6zpU78/S1tZ2GCtktEm9T6688spo/k//9E8NXE1tnlABAABkUlABAABkUlABAABkUlABAABkUlABAABkGrVd/pYuXZrcduedd0bzq6++Opp/5zvfKWRNFOfSSy+N5t/+9reHeSUjR6lUiub1doA6+eSTo/mTTz5Z95rqddxxxyW3rV27Nprv37+/UctpmKGhoWje398fzVPdyFKa2emI4qQ6wd13333DvJLGam8//FuRgYGBusdPdVLds2dPNE99Pot05plnRvPvfve7yWOa3XHz0KFDYd26dVV5LAshhGOOOSY5Vuq63dfXl7c4RqVPfvKT0fzv//7vo3mqS+bq1auLWlKSJ1QAAACZFFQAAACZFFQAAACZFFQAAACZFFQAAACZ6u7yVy5X12DD0RGnXrW6hU2ePDmap7qkMfKM1W5+sc/fW+r9HKY+By+++GI0/93f/d3kWF/72tfqmvsXfuEXovmuXbvqGieEvK5fzZY6j6kuf4xNo62bX0ypVAodHR3RvCh79+4tbKyipDo4pq7LIaS7fRbV4bVota7NzV4brSHVDTLVGXT8+PGNXE5NnlABAABkUlABAABkUlABAABkUlABAABkUlABAABkqrvL30iT6uhRq1vYLbfcEs23bdtWyJqozznnnJPc9vzzz0fzsXqucjojpbpGTZs2LZqvW7cumj/xxBPJOebPnx/NU13rUp0EFyxYkJxjNNHND2obHByM5rW6eKWuj0V1+Ut1Jw0hfU1Luf/++6P5iSeemDwm9bOP1I55qa6EIaS7t8H/b8OGDdF8+fLl0fxd73pXA1dTmydUAAAAmRRUAAAAmRRUAAAAmRRUAAAAmRRUAAAAmeru8jc0NNSIdWRLdTDbuHFj8pivfe1r0bynp6eQNVGfWh37lixZEs23bNkSzVetWlXImkaqnG5OkyZNiuapbn4p11xzTXLbU089Fc1ff/31aL5v375oPla7N8JYVs99xbhx45LbUtfHVLe5Q4cOHfa8IdTfyS9HX19fclu53Fq/A9+6dWvD5/jzP//zaP7lL3+54XPTeKl7gmeeeSaaHzhwoJHLqam1Pp0AAAAjiIIKAAAgk4IKAAAgk4IKAAAgk4IKAAAgk4IKAAAgU91t05ulu7s7mg8ODkbz1atXJ8dKtWidNm1a/QvjHUu19Q4hhFmzZtWVj/a26bUsXrw4mtf6LMQsWrQomt9///3JY+69995oft1110XznTt3RvMVK1a8zeqA0aRcLkf/ZMnAwEB0/wkTJiTHSm3bvn173uKaIHVtDKG5LaFHquOPP77ZS+AdWrp0aXLbZZddFs1TfxqpmfeAnlABAABkUlABAABkUlABAABkUlABAABkUlABAABkapkuf+VyvPZLdb1JdfILIYS2trZo/uabb9a/sDp1dnZWZf39/Q2fdySr1dkt1v0phBAeeOCBRi2nZb300kt17X/BBRdE89TnINXJr5Ybbrih7mNofSeeeGI0f+WVV6L57t27G7mcEe0zn/lMctuFF14YzZctWxbNv/CFLxSxpGHV2dkZjjjiiKp85cqV0f1H+3ulvT19WzaW7xVmzJgRza+44ophXgm55s2bF82/9a1vJY855phjovlVV10VzXft2lX/wgriCRUAAEAmBRUAAEAmBRUAAEAmBRUAAEAmBRUAAECmlunyt2/fvsLGinXaCyHdGfDgwYOFzX3o0KHCxhotar2+f/zHfxzNR0uXv/Hjx0c7oqXeo4899lhyrFqdLWN+9KMfRfPzzz+/rnFq6erqiuaTJ0+O5lu3bq17jlRHueeff77usWopl8uhu7u7Ki/y2jRaFP3ajwYXX3xxNP/sZz+bPObII4+M5s8++2whaxoJ+vv7w6uvvtrsZYwYxx57bHLbk08+OYwrqdbZ2Rnmzp1blW/YsKHhc2/btq3hc9BYr7/+ejR/+eWXk8c899xz0fz2228vZE1F8oQKAAAgk4IKAAAgk4IKAAAgk4IKAAAgk4IKAAAgU8t0+SvSgQMHovmECROieU6Xv9mzZ0fzVJeTsez6669PbrvxxhuHcSXDr7u7O5xwwglV+bJly+oe67d+67ei+fHHHx/NN2/eHM0ff/zxuudOWbx4cTR/8cUXC5vjyiuvjOZ/8id/UtgcIfzfLoo6+rW21PuxltWrVxcy99133x3N77vvvuQxF1xwQTRft25dIWsaCQYGBsL27dubvYwR44knnqj7mNh3SAghvPDCC+90OT9nYGCgrm57tb7bb7jhhmheqVTqXhetob+/P5rfdtttyWP6+voatZzCeUIFAACQSUEFAACQSUEFAACQSUEFAACQSUEFAACQSUEFAACQadS2Te/q6kpua2tri+adnZ3RPNUqefz48ck53ve+90XzVOvcsSzVPnUsGBoaCr29vVX51q1bo/tPmjQpOdaqVaui+Q9/+MNo/rnPfe4wVvjOPPvssw2f48wzz2z4HCGEUC6XQ3d3d1We00r9K1/5SjT/sz/7s7ry5cuXR/PU9SeEEE488cRofsUVVySPaTVtbW2hp6enKj/99NOj+8+cOTM51n/9139F81Sr7ylTpkTz2HpCCGHOnDnJuXft2lXX3DmuvfbaaH7nnXdG89dee62wualW694l1UI69SdfitbR0RGOPPLIqjz1pzn++q//utFLYhT493//92YvoRCeUAEAAGRSUAEAAGRSUAEAAGRSUAEAAGRSUAEAAGQatV3+SqVScluqK1eq+1+5HK87+/v7k3OsX7++xurgZ2Lv1euvvz6677333pscJ9XxbfHixdF8x44dh7G6n7nwwguT21JdCVNryrFo0aJoPhydBEMIYe7cueGzn/1sVZ7q9nnrrbcmxxo3blw0T3XxSnV3fOSRR+rKx4pUN7JUN7TUtT+EEH7pl34pmm/atCmap74Xzj333Gi+ZcuW5NxPPfVUNH/99deTx8RMnTo1ue3QoUPRvNZrUqS2trZoZ8TUuvbu3dvoJSV/9sHBwcLmSF03XnjhheQxRx99dDTfvHlzIWt6O5MnTw6/9mu/VpW3txd3K/mRj3wkmqfmuOuuu6J5rXtAaARPqAAAADIpqAAAADIpqAAAADIpqAAAADIpqAAAADKVKpXK4e9cKm0LIWxs3HLGrPmVSmVGkQM6Vw1T6LlynhrKuWodzlXrcK5ah3PVOpyr1pA8T3UVVAAAAPyMf/IHAACQSUEFAACQSUEFAACQSUEFAACQSUEFAACQSUEFAACQSUEFAACQSUEFAACQSUEFAACQ6f8AxkSmATkJ8iMAAAAASUVORK5CYII=\n"},"metadata":{}}]}]}