From 5358a3848268c21627a25e9edec8030dfcb73c8a Mon Sep 17 00:00:00 2001 From: MONA7584908095 <43202653+MONA7584908095@users.noreply.github.com> Date: Fri, 12 Oct 2018 21:00:41 +0530 Subject: [PATCH] i completed week 4 assignmntCreated using Colaboratory --- MONA7584908095.ipynb | 695 ++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 650 insertions(+), 45 deletions(-) diff --git a/MONA7584908095.ipynb b/MONA7584908095.ipynb index 0a721fb..743aa9e 100644 --- a/MONA7584908095.ipynb +++ b/MONA7584908095.ipynb @@ -5,7 +5,8 @@ "colab": { "name": "First_Date_with_TensorFlow.ipynb", "version": "0.3.2", - "provenance": [] + "provenance": [], + "include_colab_link": true }, "kernelspec": { "name": "python3", @@ -13,6 +14,16 @@ } }, "cells": [ + { + "cell_type": "markdown", + "metadata": { + "id": "view-in-github", + "colab_type": "text" + }, + "source": [ + "[View in Colaboratory](https://colab.research.google.com/github/MONA7584908095/Assignment-4/blob/MONA7584908095/MONA7584908095.ipynb)" + ] + }, { "metadata": { "id": "2XXfXed5YLbe", @@ -62,7 +73,7 @@ "# Essential imports\n", "import numpy as np\n", "import tensorflow as tf\n", - "import matplotlib.pyplot as plt" + "import matplotlib.pyplot as plt\n" ], "execution_count": 0, "outputs": [] @@ -88,7 +99,11 @@ "metadata": { "id": "vmMcjzTxbWzw", "colab_type": "code", - "colab": {} + "colab": { + "base_uri": "https://localhost:8080/", + "height": 68 + }, + "outputId": "614c7091-abf2-40d2-eab6-39d5820644b1" }, "cell_type": "code", "source": [ @@ -97,8 +112,18 @@ "print (t2)\n", "print (t3)" ], - "execution_count": 0, - "outputs": [] + "execution_count": 6, + "outputs": [ + { + "output_type": "stream", + "text": [ + "Tensor(\"Const_6:0\", shape=(), dtype=float32)\n", + "Tensor(\"Const_7:0\", shape=(2,), dtype=float32)\n", + "Tensor(\"Const_8:0\", shape=(2, 3, 2), dtype=float32)\n" + ], + "name": "stdout" + } + ] }, { "metadata": { @@ -118,7 +143,11 @@ "metadata": { "id": "ol6O5I7Tb2nb", "colab_type": "code", - "colab": {} + "colab": { + "base_uri": "https://localhost:8080/", + "height": 204 + }, + "outputId": "c46a5175-c42a-4552-aadf-23e1c51da427" }, "cell_type": "code", "source": [ @@ -130,8 +159,26 @@ "print (sess.run(t3))\n", "sess.close()" ], - "execution_count": 0, - "outputs": [] + "execution_count": 7, + "outputs": [ + { + "output_type": "stream", + "text": [ + "2.0\n", + "=======================\n", + "[1. 2.]\n", + "=======================\n", + "[[[1. 9.]\n", + " [2. 3.]\n", + " [4. 5.]]\n", + "\n", + " [[1. 9.]\n", + " [2. 3.]\n", + " [4. 5.]]]\n" + ], + "name": "stdout" + } + ] }, { "metadata": { @@ -177,7 +224,11 @@ "metadata": { "id": "FyVz0GNqgreZ", "colab_type": "code", - "colab": {} + "colab": { + "base_uri": "https://localhost:8080/", + "height": 51 + }, + "outputId": "4b771dd8-cc1f-4a56-8a7c-1aaf7f22ac44" }, "cell_type": "code", "source": [ @@ -193,8 +244,17 @@ "print ('Comp Graph 1 Alt: ', sess.run(comp_graph_1_alt))\n", "sess.close()" ], - "execution_count": 0, - "outputs": [] + "execution_count": 8, + "outputs": [ + { + "output_type": "stream", + "text": [ + "Comp Graph 1 : 7663\n", + "Comp Graph 1 Alt: 7663\n" + ], + "name": "stdout" + } + ] }, { "metadata": { @@ -212,7 +272,11 @@ "metadata": { "id": "4856BTvRhiBb", "colab_type": "code", - "colab": {} + "colab": { + "base_uri": "https://localhost:8080/", + "height": 68 + }, + "outputId": "e141d472-63f0-410d-ac5e-9bb5560a472c" }, "cell_type": "code", "source": [ @@ -231,8 +295,18 @@ "print ('Part 2 Result: ', part2_res)\n", "sess.close()" ], - "execution_count": 0, - "outputs": [] + "execution_count": 9, + "outputs": [ + { + "output_type": "stream", + "text": [ + "Complete Result: 3.5897436\n", + "Part 1 Result: -4.0\n", + "Part 2 Result: 3.5897436\n" + ], + "name": "stdout" + } + ] }, { "metadata": { @@ -257,18 +331,39 @@ "metadata": { "id": "-uHNe1BolJY0", "colab_type": "code", - "colab": {} + "colab": { + "base_uri": "https://localhost:8080/", + "height": 68 + }, + "outputId": "25b9fc44-bff9-4483-e803-1243ef315656" }, "cell_type": "code", "source": [ "# Build the graph\n", "# YOUR CODE HERE\n", + "cg_p1 = tf.divide( tf.multiply( tf.cast([9,10], dtype=tf.float32) , [7,8.65] ), 5.6) \n", + "cg_p2 = tf.add([7.65,9], [13.5,7.18])\n", + "cg = tf.minimum(cg_p1, cg_p2)\n", "\n", "# Execute \n", - "# YOUR CODE HERE" + "# YOUR CODE HERE\n", + "with tf.Session() as sess:\n", + " print('Left subtree', sess.run(cg_p1))\n", + " print('Right subtree', sess.run(cg_p2))\n", + " print('Result', sess.run(cg))" ], - "execution_count": 0, - "outputs": [] + "execution_count": 11, + "outputs": [ + { + "output_type": "stream", + "text": [ + "Left subtree [11.25 15.446429]\n", + "Right subtree [21.15 16.18]\n", + "Result [11.25 15.446429]\n" + ], + "name": "stdout" + } + ] }, { "metadata": { @@ -289,18 +384,46 @@ "metadata": { "id": "0ZhYwAlLmEvB", "colab_type": "code", - "colab": {} + "colab": { + "base_uri": "https://localhost:8080/", + "height": 102 + }, + "outputId": "3fce592d-a1ee-4235-fff7-6fe183fd814f" }, "cell_type": "code", "source": [ "# Build the graph\n", "# YOUR CODE HERE\n", + "m1 = tf.constant([[1.2, 3.4], [7.5, 8.6]], dtype=tf.float32)\n", + "m2 = tf.constant([[7, 9],[8, 6]], dtype=tf.float32)\n", + "m3 = tf.constant([[2.79, 3.81, 5.6], [7.3, 5.67, 8.9]], dtype=tf.float32)\n", + "m4 = tf.constant([[2.6, 18.1], [7.86, 9.81], [9.36, 10.41]], dtype=tf.float32)\n", + "\n", + "cg_p1 = tf.multiply( tf.reduce_mean(m1, axis=1) , m2 )\n", + "cg_p2 = tf.reduce_sum( tf.multiply(m3 , tf.transpose(m4)) )\n", + "cg = cg_p1 + cg_p2\n", "\n", "# Execute \n", - "# YOUR CODE HERE" + "# YOUR CODE HERE\n", + "with tf.Session() as sess:\n", + " print('Left subtree', sess.run(cg_p1))\n", + " print('Right subtree', sess.run(cg_p2))\n", + " print('Result', sess.run(cg))" ], - "execution_count": 0, - "outputs": [] + "execution_count": 12, + "outputs": [ + { + "output_type": "stream", + "text": [ + "Left subtree [[16.100002 72.450005]\n", + " [18.400002 48.300003]]\n", + "Right subtree 370.01828\n", + "Result [[386.1183 442.4683 ]\n", + " [388.41827 418.3183 ]]\n" + ], + "name": "stdout" + } + ] }, { "metadata": { @@ -318,18 +441,43 @@ "metadata": { "id": "GQWyCvsQmMcL", "colab_type": "code", - "colab": {} + "colab": { + "base_uri": "https://localhost:8080/", + "height": 102 + }, + "outputId": "ecd0f5ed-bf1f-4bf6-b447-a80bf6dd4fa0" }, "cell_type": "code", "source": [ "# Build the graph\n", "# YOUR CODE HERE\n", + "m1 = tf.constant([[7.36, 8.91, 10.41], [5.31, 9.38, 7.99]], dtype=tf.float32)\n", + "m2 = tf.constant([[7.99, 10.36], [5.36, 7.98], [8.91, 5.67]], dtype=tf.float32)\n", + "m3 = tf.constant([[1, 5.6, 6.1, 8], [0, 0, 7.98, 9], [0, 0, 7.6, 7], [0, 0, 0, 8.98]], dtype=tf.float32)\n", + "\n", + "cg_p1 = tf.divide( tf.add( 7.0, tf.reduce_sum( tf.multiply(m1 , tf.transpose(m2)) ) ), 19.6)\n", + "cg = tf.divide(cg_p1, m3)\n", "\n", "# Execute \n", - "# YOUR CODE HERE" + "# YOUR CODE HERE\n", + "with tf.Session() as sess:\n", + " print('Left subtree', sess.run(cg_p1))\n", + " print('Result', sess.run(cg))" ], - "execution_count": 0, - "outputs": [] + "execution_count": 13, + "outputs": [ + { + "output_type": "stream", + "text": [ + "Left subtree 19.463488\n", + "Result [[19.463488 3.475623 3.1907358 2.432936 ]\n", + " [ inf inf 2.4390335 2.1626098]\n", + " [ inf inf 2.5609853 2.7804983]\n", + " [ inf inf inf 2.1674263]]\n" + ], + "name": "stdout" + } + ] }, { "metadata": { @@ -388,7 +536,11 @@ "metadata": { "id": "1h1-D8K1uT48", "colab_type": "code", - "colab": {} + "colab": { + "base_uri": "https://localhost:8080/", + "height": 351 + }, + "outputId": "ad374b6f-0944-438c-9bb5-dca46322388f" }, "cell_type": "code", "source": [ @@ -396,8 +548,21 @@ "plt.plot(train_X[:10], train_Y[:10], 'g')\n", "plt.show()" ], - "execution_count": 0, - "outputs": [] + "execution_count": 16, + "outputs": [ + { + "output_type": "display_data", + "data": { + "image/png": "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\nZxP9VPwAAAAASUVORK5CYII=\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "tags": [] + } + } + ] }, { "metadata": { @@ -490,7 +655,11 @@ "metadata": { "id": "ttI7ZT-ozAm1", "colab_type": "code", - "colab": {} + "colab": { + "base_uri": "https://localhost:8080/", + "height": 721 + }, + "outputId": "50023731-d701-4f67-f100-e15cd0b67223" }, "cell_type": "code", "source": [ @@ -524,8 +693,49 @@ " plt.legend()\n", " plt.show()" ], - "execution_count": 0, - "outputs": [] + "execution_count": 21, + "outputs": [ + { + "output_type": "stream", + "text": [ + "Loss after epoch 0 is 48256.56\n", + "Loss after epoch 50 is 30.62622\n", + "Loss after epoch 100 is 30.615574\n", + "Loss after epoch 150 is 30.605051\n", + "Loss after epoch 200 is 30.594528\n", + "Loss after epoch 250 is 30.584011\n", + "Loss after epoch 300 is 30.57351\n", + "Loss after epoch 350 is 30.56305\n", + "Loss after epoch 400 is 30.55255\n", + "Loss after epoch 450 is 30.542055\n", + "Loss after epoch 500 is 30.531553\n", + "Loss after epoch 550 is 30.521067\n", + "Loss after epoch 600 is 30.510578\n", + "Loss after epoch 650 is 30.500105\n", + "Loss after epoch 700 is 30.48962\n", + "Loss after epoch 750 is 30.479153\n", + "Loss after epoch 800 is 30.46869\n", + "Loss after epoch 850 is 30.458225\n", + "Loss after epoch 900 is 30.447765\n", + "Loss after epoch 950 is 30.437313\n", + "Now testing the model in the test set\n", + "The final loss is: 38.58813\n" + ], + "name": "stdout" + }, + { + "output_type": "display_data", + "data": { + "image/png": "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\nOqdXxIkTJ8ThcEhnZ6dkZmbKF198ISIidrtdRERqamokMjJS2tvbRdM0efrpp8XpdOoZWUmD9djU\n1CTJycmiaZp0dnbKU089JW1tbXpGVs53Ozxz5oxcunRJRETKyspk+/btUl5eLq+//rrn+OLiYjl0\n6JBecZU1WI93NTY2SlJSkud2+r7BemxsbJQXX3xRREQ+/vhjPmQ9gME69OW+jOozZODOi4727duH\n/fv3Q9M0XL16FRs3bkRKSgpaWlqQnp6OqVOnYubMmZgyZQosFgvmz5+PhoYGvaMrxZsea2trER4e\nDovFApvNhlmzZsHpdOodXRnf7dBms2Hx4sWYPXs2ACA6OhpOpxMhISFoa2vz3KelpQUhISF6RVaS\nNz0CwPXr15GVlYX8/HzP7fQtb3qsqKjAl19+iZSUFGzfvh0VFRXYv3+/zsnV4U2HPt0XX/4mMdI6\nOzslKSnpnmdpd8/sRERSU1Olo6ND3G63pKamyuXLl0cqpvK87bG2tlZSUlLE7XaLy+WSxMREuXbt\n2khGVdZAHb7yyivS1NQkIiIHDx6Ubdu2SVdXl8TGxsqNGzfk1q1bnhd40R3e9igisnbtWjl79qwu\nOVU3lB7v4hny9w2lQ1/ty6h+UdfRo0fR0dGB7Oxsz58VFBRg2rRpPzp2y5YtyMzMhMFgQGRkJB57\n7LGRjKo0b3ucM2cOIiIikJaWBgBwOByYMWPGiGZV1UAdrly5EtnZ2bBYLLBardixYwcCAgKQm5uL\njIwMGAwGZGVleV7gRd732NjYiOrqapSWlnqOe/755xETE6NHbOV42yPd21A69NW+8L9fJCIiUsCo\nfw6ZiIhoLOAgExERKYCDTEREpAAOMhERkQI4yERERArgIBMRESmAg0xERKQADjIREZEC/ged+8Th\nwlNEYgAAAABJRU5ErkJggg==\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "tags": [] + } + } + ] }, { "metadata": { @@ -549,9 +759,38 @@ }, "cell_type": "code", "source": [ - "def linear_regression(learning_rate=0.000005, n_epochs=100, interval=50):\n", - " # YOUR CODE HERE\n", - " pass" + "def linear_regression(X_train, X_test, Y_train, Y_test, learning_rate=0.000005, n_epochs=100, interval=50):\n", + " x = tf.placeholder(tf.float32, name='x')\n", + " y = tf.placeholder(tf.float32, name='y')\n", + " \n", + " W = tf.Variable(0.0, name='weight_1')\n", + " b = tf.Variable(0.0, name='bias_1')\n", + "\n", + " pred_y = (W*x) + b\n", + " \n", + " loss = tf.reduce_mean(tf.square(y - pred_y))\n", + " \n", + " optimizer = tf.train.GradientDescentOptimizer(learning_rate=learning_rate).minimize(loss)\n", + " \n", + " with tf.Session() as sess:\n", + " sess.run(tf.global_variables_initializer())\n", + "\n", + " for epoch in range(n_epochs):\n", + " _, curr_loss = sess.run([optimizer, loss], feed_dict={x:X_train, y:Y_train})\n", + "\n", + " if epoch % interval == 0:\n", + " print ('Loss after epoch', epoch, ' is ', curr_loss)\n", + "\n", + " print ('Now testing the model in the test set')\n", + " final_preds, final_loss = sess.run([pred_y, loss], feed_dict={x:X_test, y:Y_test})\n", + "\n", + " print ('The final loss is: ', final_loss)\n", + "\n", + " # Plotting the final predictions against the true predictions\n", + " plt.plot(test_X[:10], test_Y[:10], 'g', label='True Function')\n", + " plt.plot(test_X[:10], final_preds[:10], 'r', label='Predicted Function')\n", + " plt.legend()\n", + " plt.show()" ], "execution_count": 0, "outputs": [] @@ -560,28 +799,91 @@ "metadata": { "id": "A6MaclhK4rc6", "colab_type": "code", - "colab": {} + "colab": { + "base_uri": "https://localhost:8080/", + "height": 415 + }, + "outputId": "491f71b8-e43e-47e6-a4ec-de49293f5d93" }, "cell_type": "code", "source": [ - "# Okay! Now let's tweak!\n", - "linear_regression(learning_rate=0.000034, n_epochs=500)" + "#test\n", + "linear_regression(train_X, test_X, train_Y, test_Y)" ], - "execution_count": 0, - "outputs": [] + "execution_count": 23, + "outputs": [ + { + "output_type": "stream", + "text": [ + "Loss after epoch 0 is 48256.56\n", + "Loss after epoch 50 is 30.62622\n", + "Now testing the model in the test set\n", + "The final loss is: 38.818714\n" + ], + "name": "stdout" + }, + { + "output_type": "display_data", + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeQAAAFKCAYAAADMuCxnAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4yLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvNQv5yAAAIABJREFUeJzs3Xd4U+X/xvF3VtOkLaNQKHvvKaAM\nRYYMRYYgoGyQKSCWFooDFLdQKFu2bAQFrYIIKoK4ESvI3hsKnXScJG2S8/uj2u9PRSjQ9qTp53Vd\nXLYk55w7D7V3zpMzdKqqqgghhBBCU3qtAwghhBBCClkIIYTwCFLIQgghhAeQQhZCCCE8gBSyEEII\n4QGkkIUQQggPYNRy47GxKbm6/qJFrSQmKrm6DW8nY5gzZBxzhozjvZMxzBl3O45BQQH/+ZhX7yEb\njQatI+R7MoY5Q8YxZ8g43jsZw5yRG+Po1YUshBBC5BdSyEIIIYQHkEIWQgghPIAUshBCCOEBpJCF\nEEIIDyCFLIQQQngAKWQhhBDCA2h6YRBPNG/eLI4fP0pCQjx2u53SpctQqFBh3n47IkfW37NnF0qU\nKIle/7/3QvPnL7nn9X7//bc0bdqC5OQbLF++mPDwl+95nUIIIfKOFPI/PPfceAC2bdvCmTOnGTs2\nJMe3MWPGXKxWa46uc8OGdTRqdD/FihWXMhZCiHxICjmboqP3sWHDWhRFYezY8YSFjeXzz3cCMHly\nOD169KZmzVq8/fZrpKSk4HK5CAmZSNWq1bK1/scff+Rf6/v9999IS0vlwoXzXL58iXHjwmje/EG2\nb/+cTZs2otPpePrpfmRkZHDkyCEmTBjHCy9M4bXXJrN8+Rqio/exZMl7GI1GgoJK8OKLr/D11zv4\n44/9JCUlcuHCefr2HUDnzk/k2rgJIYTIHo8u5Kk/TmbL6ai7Xl6v1+F2q3/7uy5VnmBqizfvan2n\nT5/igw8+xsfH56aPf/jhBzRt2oIuXZ7g7NkzzJkzg9mz37urbf3l+vVrzJgxl59//pFPP91MgwYN\nWblyGatWfUB6egZvvfUq774bybJli5gxYy43biRlLTtjxjvMmrWAkiWDiYycxldfbUen03H69CkW\nLXqfS5cu8uqrL0khCyHETRyNP8LFlPN0qPhYnmzPowvZ01StWu0/yxjg4ME/SEpKZMeObQA4HPab\nPm/ChHFZnyEXKVKUN9+c9p/rrF+/IQAlSpQgNTWVc+fOUr58RcxmX8xmX959N/KmyyUn30Cn01Gy\nZDAAjRo1Yf/+aKpXr0nduvUxGAwEBZUgLS319i9cCCEKEFVVef/QUl794SXMRl9ODr2AXpf7x0B7\ndCFPbfHmXe/NQuZdNXLyjlImk+mmf+90Ov983Mj48ROpW7f+Lddzu8+Q/1ofgMHwvwuYq6qKXm9A\nVd3ZSKtDVf83O5CRkYHuzx+of65TCCFEppT0ZEJ3jePT0x9TzLcY77VblidlDHLa013T6XTY7Xbs\ndjsnThwHoHbtuuzZsxuAs2fPsGHD2nta381UqFCRCxfOoygKDoeDkJDRqKqKTqfH5XJlPa9QoULo\ndDpiYmIA2L8/mpo1a93FKxVCiILhUNxB2n/Uik9Pf0zTUs3Z2ft72pR/JM+279F7yJ7siSd6MmLE\nICpWrEyNGplF17PnU7z11lRGjx6G2+0mJGTCPa3vZiwWC0OHjiIkZDQATz3VF51Ox333NWL06KG8\n/PLUrOeGh0/mtddexmAwUKZMWR55pANffvnF3b1gIYTwUqqqsvboKl76biIOl4Ox94Xw4gNTMBlu\nPiuaW3SqhnOWOTmdfDM5PWVdEMkY5gwZx5wh43jvZAz/LjUjlfBvx7PpxEaKmIsw/5HF2TqI627H\nMSgo4D8fkz1kIYQQBdKxhKMM3T6Ak0knaFSiMUs7rqJcQHnN8shnyEIIIQqcDcfW0XFTa04mnWBk\n/dF81n2HpmUMsocshBCiAFEyFF76biLrj60hwKcQ73dcSucqXbWOBUghCyGEKCBOJZ5k6I6BHE04\nTP2ghiztsJJKhStrHSuLTFkLIYTweh+f/Ij2m1pxNOEwQ+oOY2v3Lz2qjEH2kIUQQngxu9POlB9e\nZNXh5fiZ/Fnc/n26V+updaybylYh2+12OnfuzOjRo2nevDkvvvgiTqcTo9FIREQEQUFB1KlTh0aN\nGmUts3Llyr9dESq/uHr1CgMHPk2NGjUBSE9Pp1+/QbRq1eaO17V580aSkpJ4+OHW7Nmzm6FDR970\neX/dOvG/rgT2/505c4rIyOn/umVjq1ZNqVevQdb3xYoV47XX3rnjzP+0fft2Gjd+kJMnj9/yNQgh\nhKc5e+MMw3YM4mDcAWoF1mF5x9VULZq9G/5oIVuFvHDhQgoXLgzA7Nmz6d27N506dWLdunWsWLGC\n8PBw/P39WbNmTa6GzSvly1fIKrzk5BsMGdKPZs2aYzb73tX6qlWrQbVqNf7z8b9unZidQv4v/v7+\nOXJf5X9asmQJixc/eNvXIIQQnmTr6c94ftdoUtKT6VdrIG+3jMBitGgd65ZuW8inT5/m1KlTtG7d\nGoBXX30Vs9kMQNGiRTl8+HCuBtRaoUKFKVasOPHx8axYsRSj0URychKvv/4u06e/xZUrl3E6nQwb\nNorGje9n3769zJ07k8DAYhQrVpzSpcsQHb2Pjz/+kDffnH7LWyfOmbOQzz77hK+/3o5Op6dly9b0\n6dOf69evMWXKC5hMJqpWrZ7t7FevXmHy5EksX575Rmno0AG8+eY03n9/CcWLB3H8+FGuXYvhlVfe\npEaNmqxbt4rdu3ei0+kZNWosx44d4fjx47z00kR69nwq6zXs3PkVGzeuw2AwUKNGLUJCJrB8+eKb\n3ipSCCHyUrorndd/msKSPxZiNVqZ13YRT9Xsq3WsbLltIU+bNo0pU6YQFZV5G8S/borgcrlYv349\nY8aMATKndsPCwrh8+TIdO3ZkyJAh9xzOb+pkzFvu/vaL6HUE/uP2i44uT5A2Nfs3rLh69QrJyTco\nUaIkkHmN6EmTXmb79s8pVqw4L774CklJSTz//ChWrdrA4sXzmTLlDapVq86ECeMoXbpM1roUJe2W\nt06Mjb3O7t07ee+95QA8++xQ2rRpx8cfb+SRRzrQu3cf1q5dyalTJ+5+TP6Unp5OZOR8oqI2sX37\n51itVnbv3snixSu5cuUya9eu5IUXprB+/WrefjuC6Oh9f74GhSVLFrBixXqsVivh4eOzHvvnrSKl\nkIUQeeliygWG7xhE9PXfqF60Bss6rqZmYP65hv8tCzkqKoqGDRtSrly5v/29y+UiPDycZs2a0bx5\ncwDCw8Pp2rUrOp2O/v3706RJE+rVq3fLjRctasVovMXnzFYf0Ouy+VJuzvCP5a1WH6y3uHSZw+HH\nxYvnCQ3NvGmD2WxmxowISpUqiq+viWbNmhAUFMCpU0f57bffOHbsEABOZwaFC5u5di2GFi0aA/Dg\ng81xOBwUKWLFbDZx48Z1qlWrStmyQQAsX740M6NBT/Hi/hw+/BtXrlwiLOyvNzl27PYkrly5SPfu\nXQkKCqBt24eJjt77r8uvpaWlERo6Ouv76tWrM2TIEIxGfdZzjUY9gYF++PqaePjhFgQFBVC1akXO\nnDlBTMx5GjduRMmShSlZsjD33Tc9a11BQQFZryE1NY7KlStRoULmG5SWLVtw5co5/PzMNG/elKCg\nAGrUqITDYbvlJeIKIhmPnCHjeO+8cQy3HN/CoKhBJNoTGVB/AO89/h7+Pv65us2cHsdbFvLu3bu5\nePEiu3fvJiYmBh8fH4KDg4mKiqJChQqMHTs267l9+vTJ+rpZs2acOHHitoWcmKjcOl34K5l/7tJ/\nXmv0FtcfTUhIo1y5CkRGvvf3RWJTsNszUBQnsbEpOJ3Qt+8g2rd/NOs5N244AF3WNlNT7aSnp5OU\npOBwZHDjhh27Pf1fmVwuN3FxqSiKk6ZNWxAe/vLfHv9r2djYFBISUklPd/5rHX5+fv/KHBNzFafT\nnfVcuz2dhIQ07PYMUlMzc9y4YcNmSyctLZ20NMdNxys2NiXrNWT+93/bT0pKxWw2k5bmwGSyEBub\nQmJi2k0zFmRy/eCcIeN477xtDDNcGbz9y+ss2D8HX4Mvka3n0a/WQGw3VGzk3uvMjWtZ3/I85Nmz\nZ7N582Y+/PBDevXqxejRo4mLi8NkMjFu3Lis5505c4awsDBUVcXpdBIdHU21ap57JFtOqF27Lt9/\n/y0AiYkJLF68AIDixYO4cOEcqqry+++//W2Z2906sUaNWkRH/4bdbkdVVWbPnoHDYad8+QocO3YE\nIGt6ODusVj8SExNQVZX4+DiuXLn0n8+tUaMWBw8ewOl0kpAQz4svZt6p6p/3HilXrgKXLl1AUdIA\n+P33aGrUqJ3tTEIIkVOupF6m+6ePs2D/HCoXrsK2J3fSv/YgdLp7m1nVyh2fh7x+/XocDgcDBgwA\noEqVKkydOpXg4GB69uyJXq+nbdu21K9fP8fDepK2bdsRHf0ro0Y9g8vl4plnRgAwYsRoJk+eRHBw\nqazPnf9yu1snzpu3hN69+zBmzHD0ej0PP9was9mXXr36MGXKC+zZs4sqVbL/RqdQoUI0afIAw4YN\npGrVarc8SrpUqdJ07NiJsWNHoKoqI0dmTpvXqlWL4cMH8uyz47Jew5gxzxMW9hw6nZ769RvSoEFD\n9u375Y7GTwgh7sU3F75mzNfDibfH80TVHsxsPZcAn0Jax7oncvtFcUsyhjlDxjFnyDjeu/w+hi63\ni4hf32bWbzMw6U28/tA7DKkzLM/3iuX2i0IIIQqsa2kxjPpqKD9c+Y7yhSqyvMMqGpS4T+tYOUYK\nWQghhMf77tK3jPpqKLG26zxWqTNz275HYXMRrWPlKClkIYQQHsvldjE7egYRv76DXqfnjQffYUT9\n0fn2wK1bkUIWQgjhkWKVWEZ/PYxvL+2ijH9ZlnZYSZPgB7SOlWukkIUQQnicn6/8yIivhhCTdpX2\nFToy75FFBPoW0zpWrpJCFkII4THcqpv5v8/hnV9eB2BK89cZ03Acet0tL5vhFaSQhRBCeIQEezzP\n7RzFV+d3EOxXiiUdVtKsVHOtY+UZKWQhhBCa2xezl+FfDuZy6iVal2vLgkeWEmQN0jpWnvL+OQAh\nhBAeS1VVFh2YT9eoR7madoVJD7zMB49vLnBlDLKHLIQQQiM3HEk8/80Ytp3dQpClBIvaL6dl2VZa\nx9KMFLIQQog8d+D67wz9chAXks/xYOmWLOrwPiWtJW+/oBeTKWshhBB5RlVV3j+0lMc/bs/F5POE\nNp7IR10/LfBlDLKHLIQQIo+kpCcTtnscUac+pphvMRa0W0rb8u20juUxpJCFEELkKlVV+TVmL+O+\nGcWZG6d5ILgZSzqsoLR/Ga2jeRQpZCGEELki0Z7AphMbWXd0DUfiDwEw9r4QXnxgCiaDSeN0nkcK\nWQghRI5xq26+v7yHdUdWse3sVhwuB0a9kc6VuzGs3khalHlI64geSwpZCCHEPbuSepkNx9ax/tha\nLiSfA6Baker0qz2IXtWfLpDnFd8pKWQhhBB3JcOVwY5zX7D+6Gq+ufg1btWN1WilT83+9Ks1iPuD\nH/DK2yTmFilkIYQQd+Rk4gnWHV3Nh8c/IM4WC0Djkk3oW2sgT1TtQYBPIY0T5k9SyEIIIW4rLSON\nLaejWHtkFXtjfgagqLkoI+uPpm+tgdQqVlvjhPmfFLIQQoibUlWV36//xrqja/jk5CZSM1LQoaNV\n2Tb0rz2IRys9jtlg1jqm15BCFkII8TcJ9ng2Hc88XelowmEAyviXZWSD0fSp2Z/yhSponNA7SSEL\nIYTArbr57tK3rDu6im1ntpLuTsekN9GlyhP0qzWAVmXbYtAbtI7p1aSQhRCiALuccokNx9fxwdG1\nXEg5D0D1ojXoV2sQvWo8TXFLcY0TFhxSyEIIUcCku9LZce4L1h1dxa4LO1FRsRr96FtzAP1qD6RJ\nSTldSQtSyEIIUUCcSDjOtN83sGr/KuJscQA0Lnk//f48XcnfJ0DjhAWbFLIQQnix1IxUPjv1CeuO\nrubXmF8ACPQNZGSDMfSrNZCagbU0Tij+IoUshBBeRlVVoq/vY92R1XxyajNpGano0NG6XFtGNx1F\n82Jt5HQlDySFLIQQXiLeFs+mExtYd3Q1xxKOAlDWvxzPNhhLn1r9KRdQnqCgAGJjUzROKm5GClkI\nIfIxt+rm24u7WH90DV+c/d/pSl2rdKdvrQG0KttGTlfKJ6SQhRAiH7qUcpEPjq1lw7F1XEy5AECN\nojXpV3sgPavL6Ur5kRSyEELkI3annbDd49h0YmPW6Ur9ag2kX62BNC55v5yulI9JIQshRD6RlpHG\noC/6sufSLuoUq8eweiPpVrW7nK7kJaSQhRAiH7jhSKLP1p7su7aXRys9zpL2K/A1+modS+QgKWQh\nhPBwsUosvbc8weH4gzxZrTdz2y7EZDBpHUvkML3WAYQQQvy3yymX6Bb1KIfjDzKozlAWtFsiZeyl\npJCFEMJDnblxmi6fdORU0knG3hfC9Icj0evk17a3kilrIYTwQEfjj9BrSzeuK9d4qekrPN8oTI6g\n9nJSyEII4WGir+2jz9YnSXQk8k7LCIbWG6l1JJEHpJCFEMKD/HD5O/pvewqbU2Fu24U8XbOf1pFE\nHpFCFkIID/HVue0M3TEQl+piaYdVdKnSTetIIg9JIQshhAeIOrmZ0TuHY9KbWPPYRtqWb6d1JJHH\n5HA9IYTQ2Nojqxj51TNYjFY2domSMi6gpJCFEEJDiw7MJ3T3cxT1Lcon3bbSrFRzrSMJjciUtRBC\naEBVVWbse5eIX98h2K8UH3X5lBqBNbWOJTQkhSyEEHlMVVVe+fElFh9YQPlCFdnc9TMqFKqodSyh\nMSlkIYTIQy63i4nfhrD26CpqFK3Jh12iKOVfWutYwgNIIQshRB5Jd6UzducIok59TIOg+9jQ+WOK\nWYppHUt4CClkIYTIAzanjaHbB/D1hS9pVqoFazttpJC5sNaxhAeRQhZCiFyWkp7MgG1P8+OV72lb\nvh3vd1yL1WTVOpbwMFLIQgiRixLs8fTZ+iS/X4+mc+VuLGq/HB+Dj9axhAeS85CFECKXXEuLoXvU\n4/x+PZqna/ZjSYcVUsbiP2WrkO12O+3atePjjz/m6tWrDB48mP79+zN48GBiY2MB+Oyzz3jyySfp\n1asXH330Ua6GFkIIT3ch+TxdPunI0YQjDK83itltFmDUy6RkfmI4dBDTj9/n2fayVcgLFy6kcOHM\ngw9mz55N7969Wbt2Le3bt2fFihUoisKCBQtYuXIla9asYdWqVSQlJeVqcCGE8FSnEk/S9ZNHOZd8\nltDGE3nzoWnodTIhmV8Yo/dRqH9vAts+SOE+T4Kq5s12b/eE06dPc+rUKVq3bg3Aq6++itlsBqBo\n0aIcPnyYAwcOUK9ePQICAgBo1KgR0dHRtG3bNveSCyGEBzoY9wdPbXmCOFscrzR/g7H3Pa91JJFN\nxl9+xi9yGj67dgKQ8UAz0l56BXS6PNn+bd+yTZs2jRdeeCHre6vVisFgwOVysX79erp06UJcXByB\ngYFZzwkMDMyayhZCiIJi79Vf6B71OPG2eCJazZYyzg9UFdMP31H4yS4U7dIBn107SX+wJUkfbyVp\nyw4yWjyUZ1FuuYccFRVFw4YNKVeu3N/+3uVyER4eTrNmzWjevDlbtmz52+NqNnfvixa1YjQa7jDy\nnQkKCsjV9RcEMoY5Q8YxZ3jqOH595mt6b+2Gw+lgbY+19K3XV+tI/8lTxzBPqSp8/TW8/jp8/+fn\nxB06wJQp+Dz0ENk59C6nx/GWhbx7924uXrzI7t27iYmJwcfHh+DgYKKioqhQoQJjx44FoESJEsTF\nxWUtd/36dRo2bHjbjScmKvcY/9aCggKIjU3J1W14OxnDnCHjmDM8dRy3ndnKiC8Ho9PpWPHoOtoH\nd/LInOC5Y5hnVBWfnV9inTkN02/7AHC074gSGo6z8f2Zz8nG+NztON6qxG9ZyLNnz876et68eZQp\nU4a4uDhMJhPjxo3LeqxBgwZMnjyZ5ORkDAYD0dHRvPTSS3ccVAgh8puPjm9g3DfPYjb4srrTBzxc\ntrXWkcTNuN34bN+GdVYEpgO/A+B4rDNK6EScDe7TOFymOz4Gf/369TgcDgYMGABAlSpVmDp1KmFh\nYQwdOhSdTseYMWOyDvASQghvteLQMl7YE0Yhc2E+eHwTTYIf0DqS+Ce3G5+tn+IXGYHxyCFUnQ57\ntx4oIRNw1amrdbq/0anZ/cA3F+T2tEmBn5rJATKGOUPGMWd40jjOjZ7Fmz+/SnFLEB92iaJu8Xpa\nR8oWTxrDXOVyYY7ajHVWBMYTx1H1ehzde2YWcY17v+90nk9ZCyGE+DtVVXn7l9eZEz2TMv5l2dT1\nU6oUqaZ1LPGXjAzMmz/EOnsGxjOnUQ0G7E/3QwkJw1W5qtbpbkkKWQghssmtunnpu4m8f2gplQpX\nZnPXLZQNKHf7BUXuS0/Hd+N6rHMiMVw4h2oyYRswGOW58bgrVtI6XbZIIQshRDY43U5Cdo3hw+Mf\nUCuwDh92jaKktaTWsYTdju/6NVjnzcJw+RKqjw+2IcMyi7hs/nqzJIUshBC34XA5GPnlM2w7u4XG\nJZuw/vFNFPUNvP2CIvcoCpa1K7HMn4Mh5iqqry/KyNHYxjyPO7iU1unuihSyEELcQlpGGkO292P3\nxW94qMzDrH7sA/x95CwSzaSmYln1PtYFc9DHxaJa/VDGPI/y7HOoJUpone6eSCELIcR/SHbcoO/n\nvdgb8zMdKjzKso6r8TX6ah2rQNKlJOP7/lKsC+ehT0jA7R9AWsgEbCPHoBYrpnW8HCGFLIQQNxFn\ni+OpLd05GHeA7lWfZP4jSzAZTFrHKnB0SYlYli7CsnQh+qQk3IWLkDbhBWwjnkUtUlTreDlKClkI\nIf7hauoVen7WlZNJJxhQezDTH56FQZ+7190Xf6dLiMeyeAGWZUvQpyTjDgwk7aVXsD0zHLVQYa3j\n5QopZCGE+H/O3jhDr8+6cSHlPM82eI6pLd5El0e33xOgi43FunAelveXolPScBcPInX8G9gGDwV/\nf63j5SopZCGE+NOxhKP0+qwb15QYJj3wMqGNw6WM84j+WgyW+XOwrH4fnc2Gq2QwthcnYxswBKxW\nrePlCSlkIYQA9l+P5qkt3Ul0JPLmg+8yosForSMVCPrLl7DOm4XvutXoHA5cZcqijA3B3m8g+Bas\nA+ikkIUQBd5PV36g3+e9UZxpzG6zgL61BmgdyevpL5zHOicS3w1r0WVk4CpfEeX5UOxP9QWf7NyN\n2PtIIQshChxVVUl0JBCTFsMfsfsJ/3Y8LtXFkvYr6Fq1u9bxvJr+zGmsc2bi+9EGdE4nzspVUEIm\n4HiyN5gK9lHsUshCCK9id9qJSbua9edq2lWupl0hJu0KMWkxXE27wrW0GOwue9YyvgZfVj/2AY9U\n6KBhcu9mOHkC66wIzB9/hM7txlm9Bsr4iTi69QCjVBFIIQsh8gm36uZ62nUOxZ74s2Bj/vxvZuFe\nTb3KNeUqCfaE/1yHDh0lrCWpEViLUn6lCPYrRSm/0rSv+Gi+uX1ifmM4cjiziD/7BJ2q4qxVByV0\nIo7O3cAgp5L9f1LIQgjNKRkKMWlXsvZmr6Zd5dpfe7epmaV7TYkhw53xn+vwNwVQyq8UdYrXJ9ga\nTCm/0pTyL0WwX2mC/TK/L2EtiVEvv/bygvHgAawzp2PetgWAjHoNUELDSX/scdDrNU7nmeQnUwiR\na1xuF7G263+fOk69Sozyv6K9mnaV5PQb/7kOg85ASWsw9YMaUCGwPIHGIIL/395tqT8LV64v7RmM\n0fuwRk7H/OV2ADIaN8ks4nYdQU4huyUpZCFEjkh23GDxH+9xOO5Q1t7udeUaLtX1n8sUMRehjH8Z\nGvk1/rNc/9qjLZX5tX9pivsWz7pKVlBQALGxKXn1ksQdMP7yM36R0/DZtROAjKbNSQsNJ6N1Wyni\nbJJCFkLcE1VV2XRiI6/9NIXryjUAfPQ+BPuVonHJ+7P2YIP/nEIu5Veakn7BBFtLYTUVjAs+eC1V\nxfTj91hnTsPn+z0ApD/0MErYJDJaPCRFfIekkIUQd+1I/GFe2BPGz1d/xGK08MIDkxlQewjFLcXl\nClfeTFUxfbsLv5nTMP3yEwDprduSFjoJZ7PmGofLv6SQhRB3LNlxg+m/vs3yg0twqS46VerCGw+9\nQ7mA8lpHE7lJVfH5egfWyOmYftsHgKPDoyjjJ+JsfL/G4fI/KWQhRLapqspHJzbw2o9TiLVdp1Lh\nyrzTMoK25dtrHU3kJrcbn+3bMov4j/0AODp1QQmdiLN+Q43DeQ8pZCFEthyOO8QL34Xxy9WfsBgt\nvPjAFEbfNw6zwax1NJFbXC7MWz/FGhmB8ehhVJ0Oe7ceKOMn4qpdR+t0XkcKWQhxS8mOG0zb+xbv\nH1oq09MFhcuFOWoz1lkRGE8cR9XrsT/ZO7OIq9fQOp3XkkIWQtyUqqp8ePwDXv/pFWJt16lcuApv\nt4ygbfl2WkcTuSUjA/PmD7HOnoHxzGlUgwFbn/7Yng/FVbmq1um8nhSyEOJfDsUd5IU9YeyN+RmL\n0cLLTV9lVMOxMj3trdLT8d24HuucSAwXzqGaTNgGDEEZNx53hYpapyswpJCFEFluOJKypqfdqpvO\nlbvx+oNvUzagnNbRRG6w2/Fdtxrr/NkYLl9CNZuxPTMc5bnxuMuU1TpdgSOFLITArbqzpqfjbLFU\nKVKVtx+KoE35R7SOJnKDomBZswLL/DkYrsWgWiwoI0djG/M87uBSWqcrsKSQhSjg/v/0tNVolelp\nb5aaCisXUWx6BPq4WFSrH8rYEJRRY1FLlNA6XYEnhSxEASXT0wWHLiUZy/IlWBbNh4QE8A8gbfwE\nbCPGoBYrpnU88ScpZCEKGJmeLjh0SYlYlizEsnQR+htJuAsXgalTSeg7BLVIUa3jiX+QQhaiADkY\n9wcv7Anj15hfsBqtTG42lZENxsj0tJfRxcdjWbwAy7LF6FNTcAcGkvbSK9iGjqB45TKocscsjySF\nLEQBkGRP5N29b7Ly8HLcqpsnDaHkAAAgAElEQVQuVZ7g9RZvUyZAjqT1Jrrr17EunIdlxTJ0Shru\n4kGkhk3CNugZ8PfXOp64DSlkIbyYW3Wz8dh63vj5FeJscVQtUo23W0bQulxbraOJHKSPuYplwRws\nq1egs9lwlQzG9tIUbP0Hg1VucZlfSCEL4aUOxh5g0p4w9l3b++f09GuMajAGH4OP1tFEDtFfuoh1\n3ix8169B53DgKlMW5bnx2PsOAF9freOJOySFLISX+ef0dNcq3XmtxVsyPe1F9OfPYZ0bie+Gdegy\nMnCVr4jyfCj2p/qCj7zhyq+kkIXwEm7VzYZj63jz51ezpqffaTmDVuXaaB1N5BDDmVNYZ8/E/NEG\ndC4XzspVUEIm4HiyN5hMWscT90gKWQgv8EfsfibtCeO3a79iNfoxpfnrjKw/WqanvYThxHGssyIw\nf7IJnduNs3qNzCJ+4kkwyq9xbyH/kkLkY0n2RN7Z+wYrDy1HRaVblR689uBblPYvo3U0kQMMRw5n\nFvFnn6BTVZy165IWOpH0zt1Ar9c6nshhUshC5EN/TU+/8dMrxNvjqVakOu88PIOHy7bWOprIAcY/\n9mOdOR3zF1sByKjfECU0nPRHO0kRezEpZCHymczp6VB+u7YPq9GPV5q/wYj6z8r0tBcw/vYr1sjp\nmL/aAUBG4yaZRdyuI+h0GqcTuU0KWYh8ItGewDu/vMGqw++jovJE1R5MbSHT097A+PNP+EVOw2f3\nNwBkNG1OWtgkMlq1kSIuQKSQhfBwbtXN+qNrePPnV0mwJ1C9aA3ebhkh09P5napi+uE7rJHT8fl+\nDwDpDz2MEjaJjBYPSREXQFLIQniwA9d/54XvwmR62puoKqbd3+AXOR3TLz8BkN7mEdJCJ+Fs2kzj\ncEJLUshCeKBTiSdZeGAea4+skulpb6Gq+Hy9A2vkdEy/7QPA0eFRlNBwnI2aaBxOeAIpZCE8hNPt\nZMe5L1hxaBl7Lu0CoHrRGrzTcgYty7bSOJ24a243Pl98jnVWBKY/9gPg6NQFJXQizvoNNQ4nPIkU\nshAau5YWw9qjq1h9eAVX064A0KL0QwypO4xOlbpgMsgVmPIllwvz1k+xRkZgPHoYVafD/kQPlJCJ\nuGrX0Tqd8EBSyEJoQFVVfrryA+8fWsq2s1twup34mwJ4pu5wBtcdRs3AWlpHFHfL6cQctRnr7BkY\nTxxH1eux93wKJWQCruo1tE4nPJgUshB5KNlxg49ObGDloeUcTzwGQK3AOgypO4ye1Xvj7xOgcUJx\n1zIyMG/+EOusCIxnz6Aajdj69Mf2fCiuylW1TifyASlkIfLAH9f+YOaeOWw6sRHFmYZJb6JHtV4M\nrjuMpsHN0MkpLvlXejq+G9djnTMTw4XzqCYTtgFDUMaNx12hotbpRD4ihSxELnG4HGw9/SkrDi1j\nb8zPAJT1L8f4OhPoU2sAJawlNE4o7ondju+61Vjnz8Zw+RKq2Yxt6AiUsSG4y8itLsWdk0IWIodd\nTLnA6sMrWHd0FXG2OAAerfoo/aoPoV35Dhj0Bo0TinuiKFjWrMAyfw6GazGoFgvKyDHYxozDHVxK\n63QiH8tWIdvtdjp37szo0aPp0aMHq1evZtq0aezduxc/Pz8A6tSpQ6NGjbKWWblyJQaD/OIRBYNb\ndbP74k5WHFrGV+d34FbdFDUXZXTDcQysM4SmVRsSG5uidUxxL1JTsaxcjvW9uejjYlGtfihjQ1Ce\nfQ41KEjrdMILZKuQFy5cSOHChQGIiooiPj6eEiX+Pt3m7+/PmjVrcj6hEB4swR7PB0fXsfLwMs4n\nnwOgUYnGDK47jG5Ve2AxWrQNKO6ZLiUZy/IlWBbNR5+QgDugEGnjJ2AbMQa1WDGt4wkvcttCPn36\nNKdOnaJ169YAtGvXDn9/f7Zs2ZLb2YTwSKqq8vv131hxaBlRpzbjcDnwNfjSt+YABtcdSsMSjW6/\nEuHxdEmJWJYuwrJkIfobSbgLFyEt/CVsw0ehFi6idTzhhW5byNOmTWPKlClERUUBmXvCN5Oenk5Y\nWBiXL1+mY8eODBkyJGeTCqExJUMh6tRmVhxaxoHY3wGoXLgKg+sO5eka/SjiW1TjhCIn6OLjsSxe\ngGX5EvQpybgDA0l9+VXszwxHDSikdTzhxW5ZyFFRUTRs2JBy5crddkXh4eF07doVnU5H//79adKk\nCfXq1bvlMkWLWjEac/dz5qAgOa/zXhX0MTwRf4JF+xaxYv8KkuxJ6HV6nqj5BKObjOaRyo+g12Xv\nhvEFfRxzSq6N47VrMHMmvPcepKVByZLwyhT0o0bh7+/PzXdF8if5WcwZOT2Otyzk3bt3c/HiRXbv\n3k1MTAw+Pj4EBwfTokWLfz23T58+WV83a9aMEydO3LaQExOVu4ydPUFBAXIgzT0qqGN4s+tKB1lK\nENoknAG1BlMmIPO0lvi4tGytr6COY07LjXHUx1zFsmAOltUr0NlsuIJLYXtxCrb+g8FqBZsKNu/5\nt5OfxZxxt+N4qxK/ZSHPnj076+t58+ZRpkyZm5bxmTNnWLBgATNmzMDlchEdHc2jjz56x0GF0Nqt\nriv9WKXOcttDL6K/fAnrvFn4rluNzuHAVaYsynPjsfcdAL6+WscTBdAdn4e8cOFCfvzxR2JjYxk+\nfDgNGzYkPDyc4OBgevbsiV6vp23bttSvXz838gqR4/66rvSKQ8v4/Oxncl1pL6c/fw7r3Eh8N6xD\nl5GBq3xFlOdDsT/VF3zkDZfQjk5VVVWrjef2tIlMzdw7bx7DlPRkPjy+gZWHluX6daW9eRzz0r2M\no+HMKayzZ2L+aAM6lwtn5SooIRNwPNkbTAXnjlrys5gz8nzKWghvdDjuECsPL+ej4xv+33WlezK4\n7nC5rrQXMpw4jnVWBOZPNqFzu3FWr4ESGo6jWw+QixcJDyKFLAoEh8vB52c+Y8WhZfxy9ScAyviX\nJaROGH1rDZTrSnshw5HDmUX82SfoVBVn7bqkhU4kvXM30GfvyHgh8pIUsvAaTreTK6mXuZBynvM3\nznEh5Rznk89xPvk8p5JOcsORBECbco8wpO5w2lfoKNeV9kLGP/ZjnTkd8xdbAcio3xAlbBLpHR+T\nIhYeTQpZ5BuqqpJgT+B88lkuJJ/nfPI5LqSc51zyOS4kn+Ny6iWcbue/ljPqjZQLKE/fmgMYVPcZ\nKheuokF6kduMv/2KNXI65q92AJDRuElmET/SAeRjCJEPSCELj6JkKFxMufC30j2fcj7r67SM1Jsu\nV8JakoZBjahQqCIVClWgQqFKlC9UgQqFKlLKr7TsCXsx488/4Rc5DZ/d3wCQ3qwFSmg4Ga3aSBGL\nfEUKWeQpl9vF1bQrmXu3yec5n3yW8/9vb/e6cu2my/mZ/KlQqGJWyVYIqPDn9xUpF1Aeq8max69E\naEpVMf3wHdbI6fh8vweA9JatUMImkdHiIY3DCXF3pJBFjlJVlURHwv/2bv8q2+TMz3Mvp14iw53x\nr+UMOgNlA8rRsmxrKhaqSPmsws3c2w30DZSjn0VmEe/aid/MaZj2/gxAeptHSAudhLNpM43DCXFv\npJDFHbM77VnTyv8r3P/t5aakJ990ueKWIOoHNcgs2oCKf9vjLe1fBqNefhzFf1BVfL7eAXNmUGTv\nXgAcHR5FCQ3H2aiJxuGEyBnyG1Bkm1t1s2D/XKbvfQuHy/Gvx61G699KtnxABSoUrkT5gAqUK1Qe\nf5M3XZ5f5Am3G58vPsc6KwLTH/sBcDzeFSV0Is56DTQOJ0TOkkIW2RJvi2fszhHsvPAVJawlaV+h\n45+F+9f0ciWKW4rLtLLIGS4X5q2fYo2MwHj0MKpOh/2JHvi+PpXk4IpapxMiV0ghi9v6+cqPjPzq\nGa6mXaF1ubYseGQpQdYgrWMJb+R0Yo7ajHVWBMaTJ1D1euw9n0IJmYCreg18gwJALvsovJQUsvhP\nbtXN29+9zSu7XgHg5aav8lyj8dm+/68Q2ZaRgXnzh5lFfPYMqtGIrU9/lOfDcFeW88ZFwSCFLG4q\nVollzM7h7L74DaX8SrO4wwqalWqudSzhbdLT8d2wDuvcSAwXzqOaTNgGDEEZNx53hYpapxMiT0kh\ni3/54fJ3jPpqKNeUGDpV68TMhxZQzFJM61jCm9jt+K5bjXX+bAyXL6GazdiGjkAZG4K7TFmt0wmh\nCSlkkcXldjHrtwhm7HsXHTpeaf4Gr7Z/ifi4NK2jCW+hKFjWrMAyfw6GazGoFgvKyDHYxj6Pu2Sw\n1umE0JQUsgDgmnKN0V8P57tLuynjX5YlHVZwf3BT+bxY5IzUVCwrl2N9by76uFhUqx/K2BCUZ59D\nDZIDBIUAKWQB7Lm0m2e/Gkas7TodKz7G3LYLKeobqHUs4QV0yTewLF+CZfEC9AkJuAMKkTZ+ArYR\nY1CLyccgQvx/UsgFmMvtImLfO8zaF4FBb+D1B99mZP0xci6xuGe6pEQsSxZiWboI/Y0k3IWLkDbx\nRWzDR6EWKap1PCE8khRyARWTdpVRXw3lxyvfUy6gPEs6rKBxyfu1jiXyOV18PJbFC7AsW4w+NQV3\nYCCpL7+K/ZnhqAGFtI4nhEeTQi6AvrnwNWN3jiDOFsdjlTozp80CivjKXou4e7rr17EunIdlxTJ0\nShru4kGkhk3CNugZ8JdLpgqRHVLIBYjT7WTa3reYEz0Tk97EWw9NY1i9UTJFLe6aPuYqlvmzsaxZ\nic5mwxVcCttLU7D1HwxWuSWmEHdCCrmAuJJ6mZFfPcMvV3+iQqGKLO2wkoYlGmkdS+RT+ksXsc6b\nhe/6NegcDlxlyqI8Nx573wHg66t1PCHyJSnkAuDr8zsYu3MkCfYEulR5glmt51HIXFjrWCIf0p8/\nh3VuJL4b1qHLyMBVviJKSBj23n3Ax0freELka1LIXizDlcHbv7zOgv1z8NH78O7DMxlSZ5hMUYs7\nZjhzCuvsmZg/2oDO5cJZuQpKyAQcT/YGk0nreEJ4BSlkL3Up5SIjvhzCvmt7qVS4Mss6rKJekNw/\nVtwZw/FjWGdFYI7ajM7txlm9Bsr4iTieeBIMBq3jCeFVpJC90I5zX/DczpEkOZLoXvVJZrSeQ4CP\nnHIiss9w+FBmEW+JQqeqOGvXJS10Iumdu4Fert4mRG6QQvYi6a503vx5KosOzMdsMDOj1RwG1B4s\nU9Qi24x/7Mc6czrmL7YCkNHgPpTQcNI7PiZFLEQuk0L2EheSzzPiy8FEX/+NKkWqsqzDauoUr6t1\nLJFPGH/7FWvkdMxf7QAgo3ETlLBJpD/SAeQNnRB5QgrZC2w7s5Xnd43mhiOJntWfYnqrWfib5GIM\n4vaMP/+E38x38fl2FwDpzVqghIaT0aqNFLEQeUwKOR9zuBy8/uMUlh5chMVoYXabBfSp2V+mqMWt\nqSqmH77DOnMaPj98B0B6y1YoYZPIaPGQxuGEKLikkPOpczfOMvzLwRyI/Z3qRWuwtMMqahWrrXUs\n4clUFdOunfhFTse092cA0tu2Iy10Es4HmmocTgghhZwPbTkdRciusaSkJ/NUjb68+/BM/Ex+WscS\nnkpV8flqO9bI6ZiifwPA0fExlPETcTZqonE4IcRfpJDzEbvTzqs/vsSKQ8uwGq3MbbuQp2v20zqW\n8FRuNz5ffJ5ZxAcPAOB4vCtK6ESc9eScdCE8jRRyPnEm6RTDvxzCwbgD1AysxdIOq6gRWFPrWMIT\nuVyYt0RhnRWB8egRVJ0O+xM9UEIm4qpdR+t0Qoj/IIWcD3xychNhu58nNSOFfrUG8tZD07Ga5E46\n4h+cTsxRmzOL+OQJVL0ee6+nUUIm4KpWXet0QojbkEL2YDanjSnfv8jqI+9jNfrxXrul9Kz+lNax\nhKfJyMC8aSPW2TMwnj2DajRi6zsAZVwo7spVtE4nhMgmKWQPdSrxJMO+HMSR+EPULlaXZR1WUbVo\nNa1jCU/icOC7cT3WuZEYLpxHNZmwDXwGZdx43OUraJ1OCHGHpJA90KYTG5mwOwTFmcbA2s/wxkPv\nYDFatI4lPIXdju+61VjnzcJw5TKq2Yxt6AiUsSG4y5TVOp0Q4i5JIXsQJUPh5e/DWXd0Nf6mABa3\nf5/u1XpqHUt4CkXBsmYFlvlzMFyLQbVYUEaNxTZmHO6SwVqnE0LcIylkD3Ei4TjDvxzE0YQj1Cve\ngKUdVlC5SFWtYwlPkJqKZcUyrAvnoY+Lxe3nj/LceJRRY1GDgrROJ4TIIVLIHmDDsXW8sCcMxanw\nTN3hTG3xFr5GX61jCY3pkm9gWb4Ey6L56BMTcQcUIi10IrYRo1EDi2kdTwiRw6SQNXQp5SLT9r7F\nxuPrCfApxPKOq+lS5QmtYwmN6ZISsSxZiGXpIvQ3knAXKULapJexDRuJWriI1vGEELlECjkPqarK\n8cRjbDuzhW1nt/JH7H4AGgTdx5IOK6hUuLLGCYWWdPHxWBYvwLJsMfrUFNzFipH68qvYnxmOGlBI\n63hCiFwmhZzL3Kqb6Gv72HZ2K9vObOHMjdMAGPVGWpdry+OVu/J0zX6YDWaNkwqt6K5fx/reXCwr\nl6NT0nAHlSB1wgvYBj0DfnKNciEKCinkXJDuSueHy9/xxdmtfHH2c64pMQBYjVY6V+5Gp8qdaV+h\nI4XNMv1YkOmvXsGyYA6W1SvQ2e24SpVGmfwq9n6DwCKnuQlR0Egh55C0jDS+ufA1285s4avzO0hO\nvwFAoG8gT9fsR6dKXWhVro2cTyzQX7qIdd4sfNetRpeejqtsOZRxodj79AezzJQIUVBJId+DBHs8\nX57bzrYzW9h98RvsLjsAZfzL8lSNPnSq3IWmpZpj1MswC9CfO4t1biS+G9ejy8jAVaEiSsgE7L2e\nBh8freMJITQmTXGHLqVcZPvZz9l2dis/XfkBl+oCoEbRmnSq3JlOlbpQP6ghOp1O46TCUxhOn4SJ\ncwlcuxady4WzSlWUkAk4nuwNRvlfUAiRSX4b3IaqqpxIPJ51ZPSB2N+zHmtc8n4eq9SZxyt3pkoR\nuc60+DvD8WNYZ0VgjtoMbjeuGjVRQsNxdO0OBoPW8YQQHkYK+Sbcqpvfr//GtjNb2XZ2C6eTTgGZ\nR0a3KtuGTpW78Filxwn2K6VxUuGJDIcPZRbxlih0qoqzTj2MU18hsWV70Ou1jieE8FBSyH/KcGXw\nw5X/HRkdk3YVyDwy+vHKXelUKfPI6CK+RTVOKjyV8cDvWGdOx7z9cwAyGt6HEjqJ9I6PEVSiEMSm\naJxQCOHJCnQhp2WksevCTradzTwy+oYjCYCi5qI8VaMvnSp3oXW5tnJktLgl4769WCOnY/76SwAy\nGt+PMmES6W3bgxxLIITIpmwVst1up3PnzowePZoePXqwevVqpk2bxt69e/H788IFn332GatWrUKv\n19O7d2969eqVq8HvVqI9gR3nvmDb2a18e/EbbE4bkHlkdK/qT9GpchealWohR0aL2zL9/CPWmdPw\n+XYXAOnNH0QJDSfj4dZSxEKIO5at1lm4cCGFCxcGICoqivj4eEqUKJH1uKIoLFiwgE2bNmEymejZ\nsyft27enSBHPuPDF5ZRLWVPRP175PuvI6OpFa9CpUhc6Ve5Mg6D75MhocXuqiun7PVgjp+Pzw3cA\npLdsjRIWTkaLhzQOJ4TIz25byKdPn+bUqVO0bt0agHbt2uHv78+WLVuynnPgwAHq1atHQEAAAI0a\nNSI6Opq2bdvmTupsOJFwnKXHvuSjg5vY/7cjo5vwWKUudKrUmapF5chokU2qimnXTvxmTsP06y8A\nOB5pjxIajvP+phqHE0J4g9sW8rRp05gyZQpRUVEA+Pv7/+s5cXFxBAYGZn0fGBhIbGzsbTdetKgV\nozHnTv/49fKvfHz0Yz459gnH448DmUdGt6vcju41u9OtRjfKFCqTY9srKIKCArSOoB1Vha1b4Y03\n4NdfM/+ua1eYPBnz/fdzJ9fVKtDjmINkHO+djGHOyOlxvGUhR0VF0bBhQ8qVK3dHK1VVNVvPS0xU\n7mi9t/LR8Q2M2TkCAIvRQqdKXXi6QS+aBbb635HRDoiVI13vSFBQQMEcM7cbn21bsc6KwHTwAACO\nzt1IGz8RV736mc+5g3EpsOOYw2Qc752MYc6423G8VYnfspB3797NxYsX2b17NzExMfj4+BAcHEyL\nFi3+9rwSJUoQFxeX9f3169dp2LDhHQe9F42D7+fZBs/RrHQLWpVtg9VklR88cedcLsxborDOisB4\n9AiqToe9+5MoIRNx1aqtdTohhBe7ZSHPnj076+t58+ZRpkyZf5UxQIMGDZg8eTLJyckYDAaio6N5\n6aWXcj7tLVQuXIXXHnwrT7cpvIjTifmTTVhnz8B48gSqwYC919MoIRNwVauudTohRAFwx+f2LFy4\nkB9//JHY2FiGDx9Ow4YNCQ8PJywsjKFDh6LT6RgzZkzWAV5CeLSMDHw/2oB19gwM586iGo3Y+g1E\nGReKu1JlrdMJIQoQnZrdD3xzQW5PJ8uU9b3z2jF0OPDdsA7rvFkYLpxH9fHB3mcAynMhuMtXyPHN\nee045jEZx3snY5gz8vwzZCG8js2G77pVWOfPwXDlMqqvL8qwkdjGhuAuLUfgCyG0I4UsCoa0NCyr\nV2BZMAfD9WuoVivKqLHYxozDXTJY63RCCCGFLLybLjUF3/eXYV00D31cHG4/f5RxoSijxqIWL651\nPCGEyCKFLLySLvkGlmWLsSxegD4xEXdAIdJCJ2IbMRo1sJjW8YQQ4l+kkIVX0SUmYFmyEMvSReiT\nb+AuUoS0SS9jGzYStbBnXFtdCCFuRgpZeAVdXBzWxQvwXb4EfWoK7mLFSJ08FfuQYagBhbSOJ4QQ\ntyWFLPI13bVrWN+bi2XVcnSKgjuoBKkTX8Q2cAj8eWtQIYTID6SQRb6kv3oFy/zZWNasRGe34ypV\nGmXyVOz9BoHFonU8IYS4Y1LIIl/RX7yAdd4sfNevQZeejqtsOZRxodj79Afzndx7SQghPIsUssgX\n9OfOYp0bie+GdeicTlwVKqKETMDe62nw8dE6nhBC3DMpZOHRDKdPYp09E/OmjehcLpxVqqKMn4ij\nRy8wyo+vEMJ7yG804ZEMx49hnTUdc9TH6NxunDVqooSG4+jaHQwGreMJIUSOk0IWHsVw6CB+syLw\n2fopOlXFWaceaaHhpD/eBfR6reMJIUSukUIWHsF44HesM6dj3v45ABkN70MJnUR6x8dAp9M4nRBC\n5D4pZKEp4769WCOnY/76SwAymjyAEhZOetv2UsRCiAJFCllowvTzj1hnTsPn210ApDd/ECVsEhkt\nW0kRCyEKJClkkXdUFdP3e7BGTsfnh+8ASG/ZGiUsnIwWD2kcTgghtCWFLHKfqmLatRO/mdMw/foL\nAI5H2qOEhuO8v6nG4YQQwjNIIYvco6r4fLkda+Q0TL9HA+B4tBPK+Ik472uscTghhPAsUsgi57nd\n+GzbinVWBKaDBwBwdO5G2viJuOrV1zicEEJ4JilkkXNcLsxborDOisB49AiqToe9+5MoIRNx1aqt\ndTohhPBoUsji3jmdmD/ZhHX2DIwnT6AaDNh790EJmYCrajWt0wkhRL4ghSzuXkYG5k0b8ZsVgeHc\nWVSjEVu/gSjjQnFXqqx1OiGEyFekkMWdczjw3bAO67xZGC6cR/XxwTZoKMpzIbjLV9A6nRBC5EtS\nyCL77HZ8163COm82hiuXUX19UYaNxDY2BHfpMlqnE0KIfE0KWdyeomBZ/T6WBXMxXItBtVhQRo3F\nNmYc7pLBWqcTQgivIIUs/pMuNQVWLKRYRAT6uDjcfv4o40JRRo1FLV5c63hCCOFVpJDFv+iSb2BZ\nthjL4gWQmAiFCpMWGo5txLOogcW0jieEEF5JCllk0SUmYFmyEMvSReiTb+AuUgRef52EPoNRCxfR\nOp4QQng1KWSBLj4e66L5+C5fgj41BXexYqROfg37M8MoXqk0amyK1hGFEMLrSSEXYLpr17AunIdl\n5TJ0ioI7qASpE1/ENnAI+PlpHU8IIQoUKeQCSH/1Cpb5s7GsWYnObsdVqjTK5KnY+w0Ci0XreEII\nUSBJIRcg+osXsM6bhe/6NejS03GVK4/y3HjsffqD2ax1PCGEKNCkkAsA/dkzWOdG4rtxPTqnE1eF\niijjJ2Lv9TSYTFrHE0IIgRSyVzOcPol11gzMmz9E53LhrFoNJWQCjh69wCj/9EII4Unkt7IXMhw7\ninV2BOaoj9G53Thr1kIZPxFH1+5gMGgdTwghxE1IIXsRw6GD+M2KwGfrp+hUFWedeqSFhpP+eBfQ\n67WOJ4QQ4hakkL2AcX801sjpmLdvAyDjvkYooZNI7/Ao6HQapxNCCJEdUsj5mPHXXzKLeOdXAGQ0\neYC0CZPIaNNOilgIIfIZKeR8yPTTD1hnTsdnzy4A0ls8hBIaTkbLVlLEQgiRT0kh5xeqium7b7FG\nTsfnx+8BSH+4DUpYOBnNH9Q4nBBCiHslhezpVBXTrq/xmzEN0769ADjadUAZPxHn/U01DieEECKn\nSCF7KlXFZ8cXWCOnYdr/OwCORx9HCZ2Is2Gj/2vv3oOiuu8ogJ/dhXV3BZ+RRKOZZBonOj5rdBJq\nMS44BhWj1RWU0lSDaBVNeSiYtE41M2lEDBisUTS1Wm2jjU0dMnGSOLW0Wo3GaBM08jDS4GAVKSjC\n3WXl8u0fjuRRI2tc9v6A8/mLce+6Z86ox8u9uxgcjoiI/I2DrJrmZljffQeO3GwEn/4UYjKhcep0\nNKQuhz50mNHpiIiojXCQVaHr6FLwFzhysxFUfBZiNsMzwwUtZTn0QYONTkdERG2Mg2y0piZ0efst\nONavQ9C5MojFAk9cPLSUdOjfG2h0OiIiChAOslG8Xtje2g3Ha6/C8u9ySFAQ3Ak/hfZ8GpoffsTo\ndEREFGAc5EBrbITtzV1wbMiF5UIFxGqFe24itKWpaB7wkNHpiIjIIBzkQHG7YfvDDjg2rIflPxch\nNhu0pJ/BvSQFzX37GcXJpLwAAApxSURBVJ2OiIgMxkFuaw0NsP/+d7BvfA2WqssQhwPa4uehLVoK\nuf9+o9MREZEiOMhtxFR/HbZtb8CxeQPM1dVo7hoC7efp0BYmQ+67z+h4RESkGA6yn5muXYX9jXzY\nt7wOc20tmrt1R0N6JtwLFkF69jI6HhERKcqnQfZ4PIiJicHixYsRHh6OjIwM6LqOPn36IDs7G1ar\nFUOGDMGoUV9+gtT27dthsVjaLLhqTLU1sOe/Dvsb+TDXXUNzz55oWPFLuOcvhHTrbnQ8IiJSnE+D\nvGnTJnTvfnNU8vLyEB8fj0mTJiEnJwd79+5FfHw8QkJCsHPnzjYNqyJTdTUcm38D22+3wNxQj+b7\n7kP9ypfgmZcICQk1Oh4REbUT5tYO+Pzzz3Hu3DmMHz8eAHDs2DFERUUBAJxOJ44ePdqmAVVlunwZ\nXX/1C/QePRSOvBxI166of+nX+O9HRXAvTeEYExHRXWn1DDkrKwsrV67Evn37AAButxtWqxUA0Lt3\nb1y5cgUA4PV6kZ6ejsrKSjz99NOYN29eqy/es6cDQUFt+23tPn38PIyVlcDatcCWLYDHA/TvD2Rl\nwZKYiBC7HSH+fTUl+L3DToo9+gd7vHfs0D/83eMdB3nfvn0YOXIkBgwYcNvHRaTl64yMDDzzzDMw\nmUxISEjA6NGjMWzYnX8YQm2t9h0i+65Pn1BcuXLdL7+X+UIFHHm5sL25EyavF/qAh6A9nwbP7B8D\nXboA9U1AvX9eSyX+7LAzY4/+wR7vHTv0j+/a451G/I6DXFhYiAsXLqCwsBCXLl2C1WqFw+GAx+OB\nzWbD5cuXERYWBgCYM2dOy/OefPJJlJaWtjrI7YG5/DwceTmw7fkjTE1N0B9+BFrKMnhmzQaCg42O\nR0REHcQdB3n9+vUtX2/YsAEPPvggTp06hffffx/Tpk3DBx98gIiICJw/fx4bN27EunXroOs6Tp48\niejo6DYP35Ys58rgWL8OXf78J5h0HU2PDoSWuhyNP3IBQXy3GBER+dddL8vSpUuRmZmJPXv2oF+/\nfpg+fTqCg4PxwAMPwOVywWw2IzIyEsOHD2+LvG3OUnwWjvXZ6LLvbZiam9E0aDC0tAw0Tp0OdKK3\ncRERUWCZ5KsXggOsra9j3M33+C2ni9A1Nxtd3rl589qNocOhpWXAOzkGMLd6M3qHxetN/sEe/YM9\n3jt26B8Bv4bcGQT96yQcOWvR5b39AIAb3x8FLS0T3onRgMlkcDoiIuosOu0gB3107OYQ//UAAODG\nmCfQkJ6BG84JHGIiIgq4TjfIwUf/Ccera2H9x98AAN4f/BBaeiZu/HAch5iIiAzTOQZZBMGH/g5H\nzlpYjxwGAHjHOaGlZ+BG+FiDwxEREXX0QRZB8MED6LouC8EnjgMAGidMhJa6HE1jnjA4HBER0Zc6\n5iCLwPrBe8Br2ehx4gQAoDF6CrS05WgaOaqVJxMREQVexxrk5mZY330HjtxsBJ/+FDCZ0Dh1OhpS\nl0Mf2v4/NYyIiDquDjPIlrJSdEv8CYKKz0LMZnhmuGB7aRXqwh4yOhoREVGrOswgB50pgqWsFJ7Y\nOdBSlkF/dCBsfUIBvgGeiIjagQ4zyI3TZ6IxZho/Z5qIiNqljvWZkBxjIiJqpzrWIBMREbVTHGQi\nIiIFcJCJiIgUwEEmIiJSAAeZiIhIARxkIiIiBXCQiYiIFMBBJiIiUgAHmYiISAEcZCIiIgVwkImI\niBRgEhExOgQREVFnxzNkIiIiBXCQiYiIFMBBJiIiUgAHmYiISAEcZCIiIgVwkImIiBQQZHSAe7V2\n7Vp8/PHHaGpqwsKFCzFx4kQAwKFDhzB//nyUlJQAAIqLi/Hiiy8CAKKiopCcnGxYZhX52mNubi6O\nHTsGEcGECROQlJRkZGylfLPDgwcP4syZM+jRowcAIDExEePHj0dBQQF27NgBs9mM2NhYzJo1y+Dk\navG1x/3792Pbtm0wm80IDw9HamqqwcnV4muPt6SlpcFqtWLNmjUGJVaPrx36bV+kHTt69KjMnz9f\nRERqamrkqaeeEhERj8cjCQkJMnbs2JZjXS6XnD59WnRdl9TUVNE0zYjISvK1x5KSEomLixMREV3X\nJTo6WqqqqgzJrJrbdZiZmSkHDx782nENDQ0yceJEqaurE7fbLVOmTJHa2lojIivJ1x41TROn0ynX\nr1+X5uZmcblcUlZWZkRkJfna4y2HDx+WmTNnSmZmZiBjKu1uOvTXvrTrM+QxY8Zg+PDhAIBu3brB\n7XZD13Vs3rwZ8fHxyM7OBgBUV1dD0zQMGTIEAJCTk2NYZhX52mNoaCgaGxvh9Xqh6zrMZjPsdruR\n0ZXxbR1+0yeffIJhw4YhNDQUADBq1CicPHkSkZGRAc2rKl97tNvtKCgoQEhICACgR48euHr1akCz\nqszXHgHA6/Vi06ZNWLRoEQ4cOBDImErztUN/7ku7voZssVjgcDgAAHv37sW4ceNQUVGB4uJiTJo0\nqeW4yspKdO/eHStWrMDs2bOxfft2gxKrydce+/bti+joaDidTjidTsyePbvlH8TO7nYdWiwW7Nq1\nC88++yxSU1NRU1OD6upq9OrVq+V5vXr1wpUrV4yKrRxfewTQ8mevpKQElZWVGDFihGG5VXM3Pebn\n52POnDn8u/wNvnbo1325p3N6RRw4cEBcLpfU1dVJUlKSfPHFFyIi4nQ6RUTk1KlTEhERITU1NaJp\nmkydOlVKS0uNjKyk1nqsqKiQmTNniqZpUldXJ5MnT5bq6mojIyvnqx0eOXJEPvvsMxERyc/Pl9Wr\nV0tBQYG8/PLLLcfn5OTI7t27jYqrrNZ6vKW8vFxiYmJaHqeva63H8vJyWbBggYiIfPjhh/yW9W20\n1qE/96VdnyEDN2862rx5M7Zu3QpN03D+/HksW7YMsbGxqKqqQkJCAnr37o2BAweiZ8+esNvtePzx\nx1FWVmZ0dKX40mNRURFGjBgBu92O0NBQPPbYYygtLTU6ujK+2mFoaCjCw8MxePBgAEBkZCRKS0sR\nFhaG6urqludUVVUhLCzMqMhK8qVHALh06RKSk5OxZs2alsfpS770WFhYiIsXLyI2NharV69GYWEh\ntm7danBydfjSoV/3xZ//kwi0uro6iYmJ+daztFtndiIicXFxUltbK7quS1xcnJw9ezZQMZXna49F\nRUUSGxsruq6L1+uVKVOmyIULFwIZVVm363DJkiVSUVEhIiK7du2SVatWidvtlgkTJsi1a9ekvr6+\n5QYvusnXHkVEnnvuOTl+/LghOVV3Nz3ewjPkr7ubDv21L+36pq79+/ejtrYWKSkpLb+WlZWFfv36\n/d+xL7zwApKSkmAymRAREYFBgwYFMqrSfO1x6NChGDt2LOLj4wEALpcL/fv3D2hWVd2uwxkzZiAl\nJQV2ux0OhwOvvPIKbDYb0tPTkZiYCJPJhOTk5JYbvMj3HsvLy3HixAnk5eW1HDd37lxERUUZEVs5\nvvZI3+5uOvTXvvDHLxIRESmg3V9DJiIi6gg4yERERArgIBMRESmAg0xERKQADjIREZECOMhEREQK\n4CATEREpgINMRESkgP8BG7fPe5PPILoAAAAASUVORK5CYII=\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "tags": [] + } + } + ] }, { "metadata": { "id": "peoHmV2M40uU", "colab_type": "code", - "colab": {} + "colab": { + "base_uri": "https://localhost:8080/", + "height": 551 + }, + "outputId": "3a1a4ad8-52cf-44d7-a916-7587133c7ef5" }, "cell_type": "code", "source": [ - "linear_regression(learning_rate=0.0000006, n_epochs=1000)" + "# Okay! Now let's tweak!\n", + "linear_regression(train_X, test_X, train_Y, test_Y, learning_rate=0.000034, n_epochs=500)" ], - "execution_count": 0, - "outputs": [] + "execution_count": 24, + "outputs": [ + { + "output_type": "stream", + "text": [ + "Loss after epoch 0 is 48256.56\n", + "Loss after epoch 50 is 30.565125\n", + "Loss after epoch 100 is 30.49384\n", + "Loss after epoch 150 is 30.422688\n", + "Loss after epoch 200 is 30.351715\n", + "Loss after epoch 250 is 30.280897\n", + "Loss after epoch 300 is 30.210314\n", + "Loss after epoch 350 is 30.139835\n", + "Loss after epoch 400 is 30.069536\n", + "Loss after epoch 450 is 29.99944\n", + "Now testing the model in the test set\n", + "The final loss is: 37.979908\n" + ], + "name": "stdout" + }, + { + "output_type": "display_data", + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "tags": [] + } + } + ] }, { "metadata": { @@ -597,11 +899,314 @@ "metadata": { "id": "JKiHjGN15HPX", "colab_type": "code", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 2081 + }, + "outputId": "8e32ee9d-46ea-404b-db74-f1765b6a1b53" + }, + "cell_type": "code", + "source": [ + "linear_regression(train_X, test_X, train_Y, test_Y, learning_rate=0.00006, n_epochs=10000, interval = 100)" + ], + "execution_count": 25, + "outputs": [ + { + "output_type": "stream", + "text": [ + "Loss after epoch 0 is 48256.56\n", + "Loss after epoch 100 is 3.1771924e+16\n", + "Loss after epoch 200 is 2.0931644e+28\n", + "Loss after epoch 300 is inf\n", + "Loss after epoch 400 is inf\n", + "Loss after epoch 500 is inf\n", + "Loss after epoch 600 is nan\n", + "Loss after epoch 700 is nan\n", + "Loss after epoch 800 is nan\n", + "Loss after epoch 900 is nan\n", + "Loss after epoch 1000 is nan\n", + "Loss after epoch 1100 is nan\n", + "Loss after epoch 1200 is nan\n", + "Loss after epoch 1300 is nan\n", + "Loss after epoch 1400 is nan\n", + "Loss after epoch 1500 is nan\n", + "Loss after epoch 1600 is nan\n", + "Loss after epoch 1700 is nan\n", + "Loss after epoch 1800 is nan\n", + "Loss after epoch 1900 is nan\n", + "Loss after epoch 2000 is nan\n", + "Loss after epoch 2100 is nan\n", + "Loss after epoch 2200 is nan\n", + "Loss after epoch 2300 is nan\n", + "Loss after epoch 2400 is nan\n", + "Loss after epoch 2500 is nan\n", + "Loss after epoch 2600 is nan\n", + "Loss after epoch 2700 is nan\n", + "Loss after epoch 2800 is nan\n", + "Loss after epoch 2900 is nan\n", + "Loss after epoch 3000 is nan\n", + "Loss after epoch 3100 is nan\n", + "Loss after epoch 3200 is nan\n", + "Loss after epoch 3300 is nan\n", + "Loss after epoch 3400 is nan\n", + "Loss after epoch 3500 is nan\n", + "Loss after epoch 3600 is nan\n", + "Loss after epoch 3700 is nan\n", + "Loss after epoch 3800 is nan\n", + "Loss after epoch 3900 is nan\n", + "Loss after epoch 4000 is nan\n", + "Loss after epoch 4100 is nan\n", + "Loss after epoch 4200 is nan\n", + "Loss after epoch 4300 is nan\n", + "Loss after epoch 4400 is nan\n", + "Loss after epoch 4500 is nan\n", + "Loss after epoch 4600 is nan\n", + "Loss after epoch 4700 is nan\n", + "Loss after epoch 4800 is nan\n", + "Loss after epoch 4900 is nan\n", + "Loss after epoch 5000 is nan\n", + "Loss after epoch 5100 is nan\n", + "Loss after epoch 5200 is nan\n", + "Loss after epoch 5300 is nan\n", + "Loss after epoch 5400 is nan\n", + "Loss after epoch 5500 is nan\n", + "Loss after epoch 5600 is nan\n", + "Loss after epoch 5700 is nan\n", + "Loss after epoch 5800 is nan\n", + "Loss after epoch 5900 is nan\n", + "Loss after epoch 6000 is nan\n", + "Loss after epoch 6100 is nan\n", + "Loss after epoch 6200 is nan\n", + "Loss after epoch 6300 is nan\n", + "Loss after epoch 6400 is nan\n", + "Loss after epoch 6500 is nan\n", + "Loss after epoch 6600 is nan\n", + "Loss after epoch 6700 is nan\n", + "Loss after epoch 6800 is nan\n", + "Loss after epoch 6900 is nan\n", + "Loss after epoch 7000 is nan\n", + "Loss after epoch 7100 is nan\n", + "Loss after epoch 7200 is nan\n", + "Loss after epoch 7300 is nan\n", + "Loss after epoch 7400 is nan\n", + "Loss after epoch 7500 is nan\n", + "Loss after epoch 7600 is nan\n", + "Loss after epoch 7700 is nan\n", + "Loss after epoch 7800 is nan\n", + "Loss after epoch 7900 is nan\n", + "Loss after epoch 8000 is nan\n", + "Loss after epoch 8100 is nan\n", + "Loss after epoch 8200 is nan\n", + "Loss after epoch 8300 is nan\n", + "Loss after epoch 8400 is nan\n", + "Loss after epoch 8500 is nan\n", + "Loss after epoch 8600 is nan\n", + "Loss after epoch 8700 is nan\n", + "Loss after epoch 8800 is nan\n", + "Loss after epoch 8900 is nan\n", + "Loss after epoch 9000 is nan\n", + "Loss after epoch 9100 is nan\n", + "Loss after epoch 9200 is nan\n", + "Loss after epoch 9300 is nan\n", + "Loss after epoch 9400 is nan\n", + "Loss after epoch 9500 is nan\n", + "Loss after epoch 9600 is nan\n", + "Loss after epoch 9700 is nan\n", + "Loss after epoch 9800 is nan\n", + "Loss after epoch 9900 is nan\n", + "Now testing the model in the test set\n", + "The final loss is: nan\n" + ], + "name": "stdout" + }, + { + "output_type": "display_data", + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "tags": [] + } + } + ] + }, + { + "metadata": { + "id": "FEfREVqn5Yz4", + "colab_type": "code", + "colab": { + "base_uri": "https://localhost:8080/", + "height": 2081 + }, + "outputId": "9cdbce8e-8cf3-454a-c3d8-8da81f77fe03" + }, + "cell_type": "code", + "source": [ + "# YOUR CODE HERE\n", + "linear_regression(train_X, test_X, train_Y, test_Y, learning_rate=0.000055, n_epochs=50000, interval = 500)" + ], + "execution_count": 26, + "outputs": [ + { + "output_type": "stream", + "text": [ + "Loss after epoch 0 is 48256.56\n", + "Loss after epoch 500 is 29.501175\n", + "Loss after epoch 1000 is 28.409212\n", + "Loss after epoch 1500 is 27.359053\n", + "Loss after epoch 2000 is 26.349033\n", + "Loss after epoch 2500 is 25.37775\n", + "Loss after epoch 3000 is 24.443611\n", + "Loss after epoch 3500 is 23.545202\n", + "Loss after epoch 4000 is 22.68121\n", + "Loss after epoch 4500 is 21.850275\n", + "Loss after epoch 5000 is 21.051172\n", + "Loss after epoch 5500 is 20.282616\n", + "Loss after epoch 6000 is 19.54351\n", + "Loss after epoch 6500 is 18.832664\n", + "Loss after epoch 7000 is 18.149061\n", + "Loss after epoch 7500 is 17.491611\n", + "Loss after epoch 8000 is 16.859293\n", + "Loss after epoch 8500 is 16.251225\n", + "Loss after epoch 9000 is 15.666407\n", + "Loss after epoch 9500 is 15.103974\n", + "Loss after epoch 10000 is 14.563098\n", + "Loss after epoch 10500 is 14.04289\n", + "Loss after epoch 11000 is 13.542605\n", + "Loss after epoch 11500 is 13.061459\n", + "Loss after epoch 12000 is 12.598767\n", + "Loss after epoch 12500 is 12.1537285\n", + "Loss after epoch 13000 is 11.725763\n", + "Loss after epoch 13500 is 11.31416\n", + "Loss after epoch 14000 is 10.918336\n", + "Loss after epoch 14500 is 10.537654\n", + "Loss after epoch 15000 is 10.171534\n", + "Loss after epoch 15500 is 9.819419\n", + "Loss after epoch 16000 is 9.480796\n", + "Loss after epoch 16500 is 9.155142\n", + "Loss after epoch 17000 is 8.841929\n", + "Loss after epoch 17500 is 8.540734\n", + "Loss after epoch 18000 is 8.251055\n", + "Loss after epoch 18500 is 7.972448\n", + "Loss after epoch 19000 is 7.7045145\n", + "Loss after epoch 19500 is 7.446858\n", + "Loss after epoch 20000 is 7.1990557\n", + "Loss after epoch 20500 is 6.960713\n", + "Loss after epoch 21000 is 6.7315145\n", + "Loss after epoch 21500 is 6.5110793\n", + "Loss after epoch 22000 is 6.299089\n", + "Loss after epoch 22500 is 6.095203\n", + "Loss after epoch 23000 is 5.8991485\n", + "Loss after epoch 23500 is 5.7105656\n", + "Loss after epoch 24000 is 5.5292087\n", + "Loss after epoch 24500 is 5.354801\n", + "Loss after epoch 25000 is 5.1870646\n", + "Loss after epoch 25500 is 5.025736\n", + "Loss after epoch 26000 is 4.8706145\n", + "Loss after epoch 26500 is 4.7214184\n", + "Loss after epoch 27000 is 4.5779185\n", + "Loss after epoch 27500 is 4.43991\n", + "Loss after epoch 28000 is 4.307203\n", + "Loss after epoch 28500 is 4.1795607\n", + "Loss after epoch 29000 is 4.056808\n", + "Loss after epoch 29500 is 3.9387534\n", + "Loss after epoch 30000 is 3.8252265\n", + "Loss after epoch 30500 is 3.7160344\n", + "Loss after epoch 31000 is 3.6110191\n", + "Loss after epoch 31500 is 3.510037\n", + "Loss after epoch 32000 is 3.412907\n", + "Loss after epoch 32500 is 3.319502\n", + "Loss after epoch 33000 is 3.2296662\n", + "Loss after epoch 33500 is 3.143267\n", + "Loss after epoch 34000 is 3.0601897\n", + "Loss after epoch 34500 is 2.9802916\n", + "Loss after epoch 35000 is 2.9034429\n", + "Loss after epoch 35500 is 2.8295367\n", + "Loss after epoch 36000 is 2.7584524\n", + "Loss after epoch 36500 is 2.6900983\n", + "Loss after epoch 37000 is 2.6243591\n", + "Loss after epoch 37500 is 2.5611362\n", + "Loss after epoch 38000 is 2.5003335\n", + "Loss after epoch 38500 is 2.4418485\n", + "Loss after epoch 39000 is 2.385616\n", + "Loss after epoch 39500 is 2.331531\n", + "Loss after epoch 40000 is 2.2795122\n", + "Loss after epoch 40500 is 2.2294955\n", + "Loss after epoch 41000 is 2.1813877\n", + "Loss after epoch 41500 is 2.13511\n", + "Loss after epoch 42000 is 2.090617\n", + "Loss after epoch 42500 is 2.0478122\n", + "Loss after epoch 43000 is 2.0066652\n", + "Loss after epoch 43500 is 1.9670894\n", + "Loss after epoch 44000 is 1.9290122\n", + "Loss after epoch 44500 is 1.8924088\n", + "Loss after epoch 45000 is 1.8572068\n", + "Loss after epoch 45500 is 1.8233383\n", + "Loss after epoch 46000 is 1.7907797\n", + "Loss after epoch 46500 is 1.7594684\n", + "Loss after epoch 47000 is 1.7293344\n", + "Loss after epoch 47500 is 1.7003751\n", + "Loss after epoch 48000 is 1.6725253\n", + "Loss after epoch 48500 is 1.6457337\n", + "Loss after epoch 49000 is 1.6199591\n", + "Loss after epoch 49500 is 1.5951816\n", + "Now testing the model in the test set\n", + "The final loss is: 2.342177\n" + ], + "name": "stdout" + }, + { + "output_type": "display_data", + "data": { + "image/png": "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\nMrpb+bU5/tLRo0dp27YtAQEBALRv357Dhw/TtWvXas3rjpydodFoZNu2bZjNZgDq1avHtWvXqjWr\nO3N2jgDFxcUsX76csWPHkpqaWp0x3Z6zc3Rlx9To17QNBgMmkwmALVu28Mwzz3D+/HnS09Pp3bt3\n2XY//PADdevWJS4ujsGDB7NmzRqNErsnZ+d4991306tXL0JDQwkNDWXw4MFlfzRF+XM0GAysW7eO\n4cOHM2XKFK5evUpOTg4NGjQo+74GDRqQnZ2tVWy34uwMgbLfvRMnTvDDDz/Qrl07zXK7m1uZ48qV\nKxkyZIj8t1wOZ+fo0o65o7UBD5GamqrCwsJUXl6eGj16tDp37pxSSqnQ0FCllFJHjhxRnTt3Vlev\nXlVWq1U9//zz6uTJk1pGdkuVzfH8+fNqwIABymq1qry8PPXcc8+pnJwcLSO7pZ/Pcd++ferbb79V\nSim1cuVKNXfuXLVt2zb1+uuvl22flJSkNm3apFVct1TZDH9y5swZ1bdv37L7xY0qm+OZM2fUSy+9\npJRS6quvvpLl8V9R2Rxd2TE1+pk2/Hii1IoVK1i1ahVWq5XvvvuOl19+mfDwcC5fvkxkZCQNGzak\nRYsW1K9fH6PRyGOPPcapU6e0ju5WnJnjsWPHaNeuHUajkYCAAFq2bMnJkye1ju5Wfj7HgIAAOnTo\nQKtWrQDo2rUrJ0+eJCgoiJycnLLvuXz5MkFBQVpFdjvOzBAgKyuL8ePHk5CQUHa/+C9n5piWlsaF\nCxcIDw9n7ty5pKWlsWrVKo2Tuxdn5ujSjnHl/224m7y8PNW3b99ffbb30zNEpZQaNGiQys3NVXa7\nXQ0aNEgdP368umK6PWfneOzYMRUeHq7sdrsqLi5Wffr0UZmZmdUZ1a2VN8cJEyao8+fPK6WUWrdu\nnZozZ44qLCxU3bt3V9evX1cWi6XspDTh/AyVUuoPf/iDOnDggCY53d2tzPEn8kz7ZrcyR1d1TI0+\nEW379u3k5uYyefLksn9LTEykSZMmN207bdo0Ro8ejU6no3PnzgQHB1dnVLfm7BzbtGlDp06diIiI\nACAsLIx77rmnWrO6s/Lm2L9/fyZPnozRaMRkMhEfH4+fnx/R0dGMHDkSnU7H+PHjy05Kq+2cneGZ\nM2c4ePAgycnJZdtFRUXRrVs3LWK7HWfnKCp2K3N0VcfIpTmFEEIID1HjX9MWQgghagopbSGEEMJD\nSGkLIYQQHkJKWwghhPAQUtpCCCGEh5DSFkIIITyElLYQQgjhIaS0hRBCCA/x/28koccwP0ReAAAA\nAElFTkSuQmCC\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "tags": [] + } + } + ] + }, + { + "metadata": { + "id": "A8zPISQs5fO2", + "colab_type": "code", + "colab": {} + }, + "cell_type": "code", + "source": [ + "" + ], + "execution_count": 0, + "outputs": [] + }, + { + "metadata": { + "id": "MApGDUjx5fSm", + "colab_type": "code", + "colab": {} + }, + "cell_type": "code", + "source": [ + "" + ], + "execution_count": 0, + "outputs": [] + }, + { + "metadata": { + "id": "z7BL8_js5fNB", + "colab_type": "code", "colab": {} }, "cell_type": "code", "source": [ - "# YOUR CODE HERE" + "" ], "execution_count": 0, "outputs": []