diff --git a/02_classification.ipynb b/02_classification.ipynb index a4cf383581fb9a3d41b0b431b690cc06668ceb7a..82dbde2a298a0f91fc636e5c6307757c83d7889b 100644 --- a/02_classification.ipynb +++ b/02_classification.ipynb @@ -160,7 +160,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 3, "metadata": {}, "outputs": [ { @@ -272,7 +272,7 @@ "max 5.955 1.080 7.221 0.535 1.000" ] }, - "execution_count": 2, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" }, diff --git a/create_datasets.py.ipynb b/create_datasets.py.ipynb index 70eb58057b7a77734c79d0a0ec84880cf5ee2633..fc0384c35c53660723ac0ecba55685e7afdeb453 100644 --- a/create_datasets.py.ipynb +++ b/create_datasets.py.ipynb @@ -1538,6 +1538,362 @@ "outputs": [], "source": [] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# regression" + ] + }, + { + "cell_type": "code", + "execution_count": 449, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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oLU4/osiFZ+Ris1AxMvnHw/jDOcYeUUsPOL+/9HU1FT06NEj7O9TWFgYU98EYm08QOyNKRbGE6n4tIuFv3MwOP7IiXRsBiJe/v+Lh3HGwxipGZP1iYiIiKKECzEiIiKiKOFCjIiIiChKFH/961//Gu1BxLqUlBT07t0bKSkp0R4KgNgbDxB7Y4q18URCvP+dOf7kFi///8XDOONhjHRR3N81SURERBSvuDVJREREFCVciBERERFFCRdiRERERFHChRgRERFRlHAhRkRERBQlXIgRERERRQkXYkRERERRwoUYERERUZRwIUZEREQUJVyIEREREUUJF2JEREREUcKFGBEREVGUcCFGREREFCVciBERERFFCRdiRERERFHChRgRERFRlMT9QsxqteLMmTOwWq3RHgqRB8YnxSrGJlFsiPuFWEVFBQYMGICKiopoD4XIA+OTYhVjkyg2xP1CjIiIiChecSFGREREFCVciBERERFFCRdiRERERFHChRgRERFRlHAhRkRERBQlymgPgKi1JElGTb0ZFqsElVKENiMFoihEe1hERK3CuYwALsQozkiSjFMVRix78TNUGhqRn5OGkrt6o3OhhhMYEcUNzmVkx61Jiis19WbHxAUAlYZGLHvxM9TUm6M8MiKiwHEuIzsuxCiuWKySY+KyqzQ0wmKVojQiIqLW41xGdtyapLiiUorofUUBBvTsjKx0FWobLNj3+SmolPxOQUTxQ6UUkZ+T5rIYy89Ji+hcxhy12MCFGMWVrDQ1xg3qihUvH3bkVSya3AtZaepoD42IKGDajBSU3NXbI0dMm5ESkfdnjlrsCOvSu66uDsOHD8eZM2cAAAcPHsSIESMwaNAgPPXUU47jjh8/jqKiIgwePBgPPfQQrFZrOIdFcay2scmxCAOaL+WvePkwahubojwyIqLAiaKAzoUarJnTDy+UDMSaOf0iughijlrsCNtC7OjRoxg/fjxOnjwJADCZTFi8eDE2bNiA3bt349ixY/joo48AAPPmzcOSJUuwd+9eyLKMN954I1zDojjHvAoiShSiKCAnKxX5OenIyUqN6JUozqWxI2wLsTfeeAOPPPII8vPzAQBfffUVOnfujI4dO0KpVGLEiBHYs2cPfvnlF5hMJlx99dUAgNGjR2PPnj3hGhbFOXtehbNI51UQEcU7zqWxI2w5Yo8//rjLz5WV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unfvzoABA/jggw9ITEzk+PHj3HHHHWzfvp13332XNWvWoKoqF154IY888ojX+ZXBtOtErP7Sd5eJT/g/YqPsFCf+9lDQnTlOJ+5JaNLAblTvCF6AP37I+T71FI0twA+0maC4qu7cP2nuKlqCoovhxyd8N8u4nP3QplYcTXh5HtUUzNanR4X8vI4gULuK5Hg9tZajGHY/ibXUQrLRxNyRs3HqtVT4q/GqrcHpVNFoFK/5LeV3o91JmOu5FdueJmHCEvRGk78hiTYkWM/O5iZjGzdu5Nprr2Xq1Kl8/vnnHDhwgDfffJNnnnmGiy++mL///e/Mnj2bTZs2MWfOHObMmUP//v154403WLNmDddeey0AmzZt4v333+cvf/kLBoOBefPmsXDhQi644AL+7//+j7vuuov33nuPa6+9lp07d5Kdnc27777LqFGjOHz4MG+99Rbr1q0jNjaWp59+mpdffpnp06eH9Du060Ss/tK3o6rU/xEbVaVA8J05ev2Zb4TNLcCvL9A3hUqNgYThs6n0aH2RMHw2z205Js1dhRCtJtCcplaVYKl3PFH1jhWk3bSIGj9zbW3RCTQxcegSU7025r2x+QAAIABJREFUSylxif7bXag2bKUWWRFr44L17GzuLti+ffsyc+ZMDh06RL9+/ejXrx/bt2/n4osvBmDo0KEsXLiQX375BYvFQv/+/QEYN24cUFcj9v3337Nw4UJWrFhBfHw8lZWVfP311zzwwAPuz6mqqqK4uJisrCyee+45srOz2bZtG2vWrGHXrl0cOXKEG2+8EQCbzcYFF1wQ8u/QrhOx+rf2Sva/g2n4dPc3L53RhGn4dIo+esP9nEA7c4wJsTw27UoqiopITY7lVBML8KFe4qWLweGxVdvQszedBk0GRUuMU+Fvn1fQv/9cUuO11Ng1nHDEMfvWs4iL0cquSSFEq/E3pzkClE8oOi2mrLlYPI55c8215jH3uedAJT6ZzImL3efw1p9T7WWnOPnaQukj1sYF69nZXL/97W/Zvn07H330ETt27GDDhg2+n++nabzVaqWgoACAhIQElixZwpIlS/j973+PqqrExMSwefOZVfG8vDxSUlLo3bs3BQUFvP/++3Tt2pWMjAwcDgdDhw513xatrKzE4XCE/Du060Ss/q0964nDlBzY4a4JAw3l332OacRdoCigqpT+a487ofLsjRMbo9DJWYRj91KKE1IwjZiBZVtuwK3Z/nruKIrGZ4k246YHKdz5F+ylFmK79CSl9zBOvr7I/b7jhs9m6ZZjfHu07tBvc6ohtIPHhRAizOrPa4mK//KJk6eqQdHTZeTMunlRo+CoriB14CRQVewlBZza9SpqZQlp/W+l5IttmEbOxLL1uTOJ24gZaHQxxHbpifXEYekj1oY11LOzOZYtW4bZbGby5Mn06dOHUaNGkZCQwFdffcXFF1/Mjh076NKlC2eddRadO3fmk08+4aqrrmLz5s188cUXjB07lrPOOosBAwawe/duVq1axfz58/nVr37F5s2bGTVqFJ988gkLFy5k9+7daDQabrjhBhYvXsz8+fMB6NOnD3/961+58847SUtLY9GiRXTv3p2ZM2eG9Du060TMX5+wtH43o0tOQ6NRcDhsJHTrRd76JzwO574fjSHRp2/O8tsvwbC77n3spRaKPnyN9CG3E5PeFY0+JuBB3vV77qhV3ku0ij7O/Wd/dRKV21ewYNxjHCtTqKm10zk9QW5HCiFaXf15rc+FGUwafr5P+USnMfM46UhEUUCj2Mhbt9gruSp4dyWOyhJMw6fj1CjuL7TGK0aQPuR2FH0cak0FRR++hqOyhPRBU9yHf0sfsbapMT07G2vChAncd999vPPOO2i1Wh599FEyMzN5/PHHqa6uxmg0snLlSgCeeuopFi1axLJly0hNTWXZsmX89NNP7veaO3cuI0aMYOTIke7nvvTSS+j1elauXOk+enH48OG88sorDBw4EIBevXoxY8YMJk2ahKqqnH/++UybNi3k36FdJ2IajUJMvaMzvBKmilLyNz3lfd9601NkTlhMhZLo1TcnMVbjVRdmPXGY/PVL6DbjBZ9vaMF67iSq3ku0ak2F+5tCoDqJqqoaHlj9pTuhE0KI1lZ/XhvQuweL/lJ3jNukgXMxJ+uJM8SxcusPfPb1Vyy//RIKdntvarJsy3UnVpbtq+l8y0L3zzUaDXnrl/h8rhKXCEgfsbasoWtxc2RmZvLGG2/4PO7vFuV5553Hm2++6fWY2WymT5+662pqaiqffPKJ+2f+eoupqsq+ffu4/vrriYmJcT8+duxYxo4d26Tfod3fbHcdneG3T5hqR5uQQkb2XDJvfYyM7LloE1JAtfv0zSmucrh72rgEmhiC9dxxLdG6lOx/B9OIGeiMJndSVv8zCivs7veQ3mFCiEioP68lxevdZ+Q+8Nd/80OJjlkvfMlnX+cDdV9ePb9YxnbpSfqgKeg7dT0z1zpV95wXaP5zPS59xNq2oNfiNmTGjBls3Lgx5B2RoehwXy+8+oopOtIHT6Xg7eVeS+foYtDj3Tdnze5jzL/eewk+0MSg1ylceVEGo64wkxqvpbjKweYvCtDrFJ8lWkdlCUpSKhkTl4DTSUb2PPJP70LSGU0Yhs3mua3H3O8tvcOEEJFQv5dYeZXN/fde3VO4MFPn1UvMdaqINiGF1P63osQaKDh9B8I11zpqqtz1tq4vpV61t9nzUBKMdJmcI7smRVRYvXp12N+zQyVi/nqZmEbMQJuQ4q79smzLpcvkHIzxvodx1yR0DmlpNTlez+whGVg2nemtMztrHlaclFTUktypm9f75FdpWfj8ZxQUV3PlRRncO24xMVonKlqWv/29u1AfpHeYECIy6vcS++DAER6YfAXrd33r1eDa1Uts3RclTBg9n1hbBardSsHpBAvO3KbMnLAYjU5/Zj7UxbTI7SsholmHSsT89TLxrFlwPeZ02BvdC8yTs7oMyybv3jqWTU9S1n8uK9/5v9OF+ykoiobi8hoWvvgP97fMz77O5+5fylh+zzUYE2IZN/h8fvylzKvoX4r1hRCRoNcp3Jl1MXExOmpq7STG67lvzK8pWPugTy+x/x44n5j4RCyvL8U0cqbf+ldwopPbjaKD61CJWKBeJq5iUPCu+wrWCyxQe4pgn2NO1nsV7qcmxQWtJ2tOMijaFtVei6KLCf4cWy2KPvhz2hPXv0mw7vVFReVMemJPK46qY/Gc5zTAq9u+4fNv8t0/N6caWH3XpX7nu7PS49CiYi+1eG1KctEZTaA63J32heioOlQiFqiXiWqrcf85lILQYO0p6pIkjd/PiYvVA951XsHOcIPgyaBoPxo6VgjqjhZqr0cP+RPqv4loGf7mubtvuoyS8lq+O1oM1M1lqkbrd777pbCGX2UmozOaAjbTPrXrVUzD7pDeYKJD61BfQ1yF8q6dOa7EKzbzXLrNeIEuk3NC6tzsrz3FG+8dorasCGtxPk6cmIZP9/oc0/Dp1Njqki/PRMtVd2FONbh/JrcfhRCR5m+eW7X+S7Ku6+l+Tp8LM6jWGDBnz/Oa7xKGzybVnI5WpyUjey6OyhKKPnqD9CG30/WPq+g07E6KPnqD6sMHpDeY6PA61opYM3uZuHZcxttrmTX6XNbsrut436t7CtP6pVHw2kPubvll/7OL9EFTUOISUWsqKDmwg8ILb/RJtOT2oxAiGgUqmzAm1t0e73NhBjf/dy/uf+5j0pJimTHyIbqkxOJUtNhjEogpz+PEG0vRJqTQadQ96JPScdprsZeeonjvm1hPHJbeYEIQoURsz5495ObmUlVVxdVXX82CBQvYv38/OTk5WK1Whg4dyqxZs1rks129TBqr/o5L186gZVth0sBuVO8407iwZN8G0vrf6rUN25w9j1hDBsvv6eKTaMntRyFEtAlUNmFKMfDygkFogPl/+piC4moKiquZ8af/cR/BlqRWc+L0XKlNSEFjt3HytYVetyVLDuwgrd/N0htMdHitnogdO3aMRx55hA0bNpCens6kSZPYu3cvjzzyCGvXriUzM5M77riDvXv30q9fv2Z/ntcB235WwBr6uYu/HZfVO1YwaeBc0hN1qAkpXitg5f/eS+atj4MG9/vGSUGqEKKNqN+uwrWan240oCgaCoqr/K6YOVUVJ3ZMI2ei1lSgxCdj2fys9y7y7avJnLAYbVJKSPOvEO1Zqydiu3btYtiwYXTu3BmAlStXcuTIEXr06EG3bt0AGDlyJDt37vRJxMrKyigrK/N6LC8vL+Bn+esbljF2vrsOrKGfe71XgJ2QPbsk4tTqcdZbATONmIGq1ROblNLkfyvRtjQ2PoVoLU2JzYbKJvytmF15UQbx1fmc9GhK7XmMkYu91AKKgs1yPKT5V4j2rNUTsSNHjqDX67ntttuwWCz079+fnj17YjKdOdrCbDaTn5/v89o1a9aQm5sb8mf5W8XK37CULpNz0CWmNvhzT4F2XGr1dTshT/hpVthlck7IYxVtX2PjU4jW0tTYDFY24W/F7N5R51LwxgKvudBWfDJA6wo15PlXiPas1RMxh8PBwYMHWbt2LfHx8UyfPh2DweDzPNcp554mTZrE6NGjvR7Ly8tj/Pjxfj8r0CqWa5dOQz/3FOz0eHtZYcjvI9qvxsanEK2lJWLT34pZjFruMxeW7NuAOet+r+ONMrLnAk6ZN4UgAolYp06d6Nu3L2lpaQAMGDCAnTt3otVq3c8pKCjAbDb7vDY5OZnk5OSQPyvQKpZrl05DP/d6ryA7LhvzPqL9amx8CtFaWio266+Y2SuqfeZCR2UJqrX6TA2trQZtUrr7wG+ZN0VH1+o34vv378/HH39MWVkZDoeDffv2MWTIEH766SeOHDmCw+Fg27ZtXHPNNc3+rEB9w1y7dBr6eX2BTo9v7PsIIUR75HcuzJpL6RfbyN+4DMvW59AlpaONT5J5U4jTWv2rxyWXXMLUqVMZN24cNpuNq666iltuuYWzzz6bmTNnYrVa6devH0OGDGn2ZzXUN6y5fcVC/RwhRMtQ7bVBj0ByPaeh46OaqtbmIEavDdvz2jp/c6ESn4Rp2B04Hbf5zI0ybwoRoT5i2dnZZGdnez3Wt29ftmzZEvbPaqhvWFP7irXU+wghQhfqMUgj79sM0GDS1lgxeq37vYMJ9+dGM39zoRJgbpR5U4gOdsSREEIIIUQ0kURMCCGEECJCJBETQgghhIgQScSEEEIIISJEEjEhhBBCiAiRREwIIYQQIkI6XAtjp1PFUVkqfWuEECLMZH4VovE6VCLmdKrUFhz1OS8yxtxdJgshhGgGmV+FaJp2/1+HqtqxlZ7CVpyHvazQPUlA3QGz+RuW4qgsjfAohRCi7XA6VewVxdhKLdgrit0rYTK/CtF47XpFTFXt2PKPkr9pGfZSC10mPuF1wCzUTRZOhz1CIxRCiLYl0MqXEpfgf36trcHpVGVVTIgA2vV/GY7yEncSBuCoKnUfMOuiM5rQaNt1PiqEEGETaOULNH7n19qiE7IqJkQQ7ToRQ7V7fUMr2f8OpuHT3ZOF65ucNsEYqREKIUSb4nTY/a58oShkZM/1ml9Nw6dTsm+D3HUQIoj2vRSk6NAZTe5Jw3riMCUHdpA54XEA2dUjhBCNpNF6z6tw+s6CRoM2KZ30Ibej6ONQayoo+ugNHJUlctdBiCDadQaiTUohI8v7G1ra729Em5SK3mhCl5gqSZgQQjSCNsFIxtj5fu8saOOT0CWlY9n6HPkbl+GoLJG7DkI0oF1/TVEUHfqM7mROWAyqHRQd2qQUFKVd/9pCCNFiNBqFGHN3ukzO8dsvLNjPhBC+IpKRTJw4kcLCQnS6uo9/7LHHOHr0KM8//zw2m43Jkyczfvz4sHyWouhQjJ3C8l5CCCHqkjFdYmqjfyaE8NXqiZjT6eTHH3/ko48+cidi+fn5zJo1i7fffpuYmBhuvvlm+vTpw7nnntvawxNCCCGEaDWtnoj9+OOPaDQabr/9dgoLC7nxxhtJSEjgyiuvJCUlBYDBgwezc+dOZsyY0drDE0IIIYRoNa2eiJWVldG3b18WLVpETU0NEydOZOjQoZhMZ/rPmM1mvvrqK7+vLSsr83osLy+vxccsRCgkPkW0ktgUInq1eiJ22WWXcdlllwEQHx9PdnY2OTk5/PGPf/R6nkaj8XntmjVryM3NbZVxCtFYEp8iWklsChG9Wj0RO3jwIDabjb59+wJ1NWNnnXUWp06dcj+noKAAs9ns89pJkyYxevRor8d++eUXJk6cKN/uRMg6d+7srk8Mp+bEZ9euXcM+HhFdjh8/HtLzWiI+Ze4U4dBSc2dHp3E6nc7W/MAPP/yQVatWsW7dOmw2G+PGjeORRx7h/vvvZ+PGjRgMBm6++WYef/xxLr744gbf7+DBg2HbYSk6hg8++KDVEh+JT9FYrRWfEpuisVpz7uxIWj0RA3jmmWd47733UFWVcePGMWnSJLZu3cqf//xnbDYb2dnZ3H777SG9V01NDV9//TUmkwmtVhv2sebl5TF+/Hhef/11OnfuHPb3b+vjgegbU0Pjac1vdS0dny7R9v9BY8n4z2it+Gyt2AxFW/n/vy2MsyXHKCtiLSMi/6L33nsv9957r9djI0eOZOTIkY1+r7i4OC6//PJwDS2gzp07R9U3gWgbD0TfmKJhPK0Vny7R8Ds3h4y/9bR2bIairfz7tYVxtoUxijrS7lgIIYQQIkIkERNCCCGEiBBJxIQQQgghIkS7aNGiRZEeRLSLjY2lT58+xMbGRnooQPSNB6JvTNE2ntbQ1n9nGX/H1lb+/drCONvCGMUZEdk1KYQQQggh5NakEEIIIUTESCImhBBCCBEhkogJIYQQQkSIJGJCCCGEEBEiiZgQQgghRIRIIiaEEEIIESGSiAkhhBBCRIgkYkIIIYQQESKJmBBCCCFEhEgiJoQQQggRIZKICSGEEEJEiCRiQgghhBARIomYEEIIIUSESCImhBBCCBEhkogJIYQQQkSIJGJCCCGEEBHS5hMxu93O8ePHsdvtkR6KED4kPkW0ktgUIjq0+UQsLy+PAQMGkJeXF+mhCOFD4lNEK4lNIaJDm0/EhBBCCCHaKknEhBBCCCEiRBIxIYQQQogIkURMCCGEECJCJBETQgghhIgQXaQHIERjqaqT0korNruKXqdgTIhFUTSRHpbo4CQuz6i1OYjRa1vs+UK0J5KIiTZFVZ0cyStj8V8/p6C4GnOqgQV/6EOPzskd9qInIk/i0luMXsvI+zaH/PytT49qwdEIEd3k1qRoU0orre6LHUBBcTWL//o5pZXWCI9MdGQSl0KIpopIIrZ582aGDx/O8OHDefLJJwE4dOgQWVlZDB48mIceeki6PQu/bHbVfbFzKSiuxmZXIzQiISQuhRBN1+qJWHV1NU888QRr165l8+bNHDx4kP3793P//ffz8MMP89577+F0Onnrrbdae2iiDdDrFMypBq/HzKkG9DpZ3BWRI3EphGiqVp8lHA4HqqpSXV2N3W7Hbrej0+moqanh0ksvBWDMmDHs3LnT57VlZWUcP37c639yPEfHYkyIZcEf+rgveq5aHGNCbIRHJvHZkUVzXILEphDRrNWL9RMTE7nnnnsYOnQocXFxXHHFFej1ekwmk/s5JpOJ/Px8n9euWbOG3Nzc1hyuiDKKoqFH52SW33NN1O1Ok/jsuKI5LkFiU4ho1uqJ2LfffsumTZv48MMPSUpKYs6cOXzyySc+z9NofCewSZMmMXr0aK/H8vLyGD9+fIuNV0Sev7YAqUlxkR6WD4nP9inUthSKoonKuASJTSGiWasnYh9//DF9+/YlPT0dqLsN+fLLL3Pq1Cn3cywWC2az2ee1ycnJJCcnt9pYReS1pbYAEp/tT1uKv2AkNoWIXq1eI9arVy/2799PVVUVTqeTPXv2cMUVVxAbG8s///lPAN59912uueaa1h6aiELSFkBEksSfEKKltfqK2NVXX81//vMfxowZg16v5ze/+Q3Tpk1j0KBBLFiwgMrKSi644AImTpzY2kMTUUjaAohIkvgTQrS0iHTWnzZtGtOmTfN6rFevXmzcuDESwxFRzNUWwPNiKG0BRGuR+BNCtDQ54khENVdbgPo1OtHSFkC0bxJ/dZp7FuSah64jLS3J67GionImPbGnuUMTos2TRExEtWhvCyDaN4m/Os09OzItLYkfn8jyeuzshzaFZWxCtHWSiImoF81tAUT7J/EnhGhJUugghBBCCBEhsiImol6oDTWF8CRxI4RoCyQRE1GtvTTUFK1L4kYI0VbIrUkR1UJpqKmqTorLaygorqK4vAZVdUZquCJK+Iub13ceorC0WuJECBFVZEVMRLWGGmrKyofwp37cnNc9lZG/P4f5f/pY4kQIEVVkRUxENVdDTU+eDTXlCBrhT/24ybquJ6vWfylxIoSIOpKIiajmaqjpuqjWb6gpR9AIf+rHjTExRuJECBGV5NakiGoNNdSUI2iEP/XjRgMSJ0KIqCSzkIh6roaa5tR4UpPivGp6GloxEx2XZ9ykGw0SJ0KIqCQrYqJNkyNoRCgkToQQ0UoSMRER4Wy2KUfQiFCEK06kUawQIpwkEROtTlpOiLZKYlcIEW5SIyZanbScEG2VxK4QItwkEROtTlpOiLZKYlcIEW6SiIlW11CTVpBji0TkBIu9UGJXCCEaQ2YP0eoaajnhqsOZ8+w/uG3xLuY8+w+O5JVJMiZaXEOxJ+1ShBDhJsX6otU11EogUB3O8nuukd2RokU1FHvSBkMIEW6SiImICNZKQOpwRKSEEnvSLkUIEU6SiImo4NmbqaHjaKSPk2ipGAj3kVkSq0KIhkgiJiKufm+mPhdm8MDkK8h59QuvXk3GhFjp4yRaNAZcNWD137spNWASq+Gh2mtRdDENPiZEWyWJmIi4+nU5n3+TD8DSu67GCV4rCcXlNVI/1sG1ZA1hOGvApNYxPBRdDD8+keX12NkPbYrQaIQIP9k1KVpMqC0o/NXlfP5NPk7wOehb6sdES8eAqwask7FuZ+Sp0uomtVCRWBVChCIiK2J79uwhNzeXqqoqrr76ahYsWMD+/fvJycnBarUydOhQZs2aFYmhiTBpzG2ZxtTlhLuGR7Q9rRED4bitKLEqhAhFq88Ix44d45FHHmH16tVs3bqV//znP+zdu5cHH3yQ1atXs2PHDr7++mv27t3b2kMTYdSYo2Aa05tJ+jiJ1oiBcBxlJLEqhAhFq6+I7dq1i2HDhtG5c2cAVq5cyZEjR+jRowfdunUDYOTIkezcuZN+/fq19vBEmDTmtkxj6nKkj5NojRgIx21FiVUhRChaPRE7cuQIer2e2267DYvFQv/+/enZsycmk8n9HLPZTH5+vs9ry8rKKCsr83osLy+vxccsGq+xt2Ua05spWvs4SXy2npaOgXDdVoyWWJXYFCJ6tXoi5nA4OHjwIGvXriU+Pp7p06djMBh8nqfR+H5rXLNmDbm5ua0xTNFM4WwD0FZIfLYf7S1+JTaFiF6tnoh16tSJvn37kpaWBsCAAQPYuXMnWq3W/ZyCggLMZrPPaydNmsTo0aO9HsvLy2P8+PEtO2jRaB3xtozEZ/vR3uJXYlOI6NXqiVj//v2ZN28eZWVlJCQksG/fPoYMGcKLL77IkSNH6Nq1K9u2bSMrK8vntcnJySQnJ7f2kEUTRcttmdYi8dm+tKf4ldgUInq1eiJ2ySWXMHXqVMaNG4fNZuOqq67illtu4eyzz2bmzJlYrVb69evHkCFDWntoQgghhBCtKiJ9xLKzs8nOzvZ6rG/fvmzZsiUSwxFCCBEF5Ogi0RHJEUdCCCGighxnJDoiafEshBBCCBEhsiImWo2qOimttLaLXWgi/CQ+hBAdUZMTsd27dzNw4ECvx959911uuOGGZg9KtD/1z+7rc2EGU0f9BkWjQa+Xi25HF+rZjpKsCSHam0YnYnv27MFut7Ns2TJU9cxxH3a7nZUrV0oiJvzyPLvvvO6pjPz9OTz0/CdNPlBZtC+BznZcfs817hYS4TiIWwghok2jE7FDhw7x2WefUVhYyNq1a8+8kU7HbbfdFtbBifbD8+y+rOt6smr9l0EvuqJjCeVsx1CSNSGEaGsanYjddddd3HXXXbz++uvSlVmEzPPsvqR4fbMPVBbtSyhnO4bjIG4hhIg2Ta4Ry8rKYsuWLRQVFeF0Ot2PT5kyJSwDE+2L59l95VW2sByoLNqPUM52DNdB3EIIEU2anIjdd999nDx5kl//+td+D+gWwpPn2X2q6uShKVfwxCtftIsDlUXzhXK2Y3s7iFsIIaAZidj333/Pe++9h6LIt1ERGs+z+1KT4kI+UFl2ynUMDZ3tGO6DuCWuhBDRoMmJWHp6Ona7nZgYOY5CNF6oByrLTjnhKVwHcUtcCSGiRaMTsVdeeQUAk8nEhAkTGDBgAHq93v1zqRETgTRlBUJ2yolwqB97igaJqxay5qHrANj69KiQX1NrcxCj17bUkISIao1OxL7//nsAEhMTSUxM5Keffgr7oET709QVCNkpJ5rLX+w9OOUKUpPivGJL4io80tKSGn1eZIxey8j7NjcqeROivWh0IpaTk9MS4xDtXFNXtmSnnGguf7G35JUvuDPrYh596XP38ySuhBCR0OQaseuuu85rt6RGo8FgMNCzZ0/mz5+P2WwOywBF+9DUlS3ZKSeaK1DsdemU6E7yJa6EEJHS5ERs4MCBVFZWMn78eBRFYePGjVRWVnLeeeexcOFCXnjhhXCOU7RxTV3ZCvdOOdHxBIq9uFidxJUQIuKavA5/8OBBnnjiCS644AJ69erFggULOHz4MJMnT+aXX34J5xhFO+Ba2TKnGgAatQLh2ilnTo0nNSlOLpaiUQLFXkpirMSVECLimrwiVllZSUVFBYmJiQBUVFRQU1MTtoGJ9kVWtkSkSOwJIaJZs444uvHGGxkyZAhOp5P333+fsWPHsnbtWs4+++xwjlG0E+HqASVEY0nsCSGiVZMTsWnTpnHBBRewd+9edDodDz/8MFdeeSVff/01o0ePDucYhRBCCCHapUYnYj/88APnnHMO33zzDampqdxwww3un33zzTdcdNFFYR2gaBlOp4qjshSnw45Gq0ObYESjka37ou2RWBZCtGWNTsSWLVvGn//8Z2bOnOnzM41GwwcffBCWgYmW43Sq1BYcJX/DUuylFnRGExlj5xNj7i4XMNGmSCwLIdq6Ridif/7znwHYs2dP2AcjWoejstR94QKwl1rI37CULpNz0CWmRnh0QoROYrntUu21Xp30pau+6KiatWvy6aef5ocffuDZZ59lxYoVzJs3j4SEhHCOT7QAp8PuvnC52EstOB32CI1IiKaRWG67FF1Mo49CEqI9avLa/eLFi0lKSqKwsJDY2FgqKipYuHBhOMcmWohGq0NnNHk9pjOa0GibnJcL0SROp4q9ohhbqQV7RTFOZ+POepRYFkK0dU1OxA4dOsSsWbPQ6XQYDAaWL1/OoUOHQn79k08+yfz5893vlZWVxeDBg3nooYew2+XDfhAwAAAgAElEQVTbbEtS4pPIyJrrvoDpjCYysuaixCdFeGSiI3HVd5149QGO5f6RE68+QG3B0UYlY9oEIxlj53vH8tj5aBOMLTVsIYQIqyYnYori/VKHw+HzWCCffvop77zzjvvv999/Pw8//DDvvfceTqeTt956q6nDEiFQq8op2vcW6YOmkHnrY6QPmkLRvrdQq8ob/16qk+LyGgqKqygur0FVnS0wYtEeBarvclSWhvweGo1CjLk7XSbn0G3GC3SZnNNgob7ErBAimjR5/b5379489dRT1NTUsG/fPl5//XX69OnT4OtKSkpYuXIlf/zjH/n222/55ZdfqKmp4dJLLwVgzJgxrFq1inHjxjV1aKIBToed6sMHqD58wOtxh+0PlJfXhNx1XFWdHMkr8zmQu0fnZOlaLtxU1UlppdWnq3246rs0GiXkwnyJWSFEtGlyIta1a1fKy8tJSkrimWee4eqrr2b69OkNvm7hwoXMmjWLkydPAlBQUIDJdKbGw2QykZ+f7/e1ZWVllJWVeT2Wl5fX1F+hw3LV1XheBHVGE4dPVLDynf8N+cJUWml1X9AACoqrWfzXz1l+zzUdsou5xKevYIlPoDhsyfqujhqzEptCRK8mz3jff/89H330Ed27d2fw4MEMHjyY2NjgBzhv2LCBzMxM+vbty9tvvw2A0+l7W0Cj8Z8ArFmzhtzc3KYOuUPzanqpiyFj7Hyv3kuGYbN5buuxRl2YbHbVfUFzKSiuxmZvXMF1eyHx6StY4pOSaPSJw3DWd/lr9NpRY1ZiU4jo1eRE7PHHH8fpdPKvf/2LDz/8kFtuuQWz2cy6desCvmbHjh1YLBZGjRpFaWkpVVVVaDQaTp065X6OxWLBbDb7ff2kSZN8jk/Ky8tj/PjxTf01OgS/TS9veZguk3Nw2GwcPlHBc1uP8e3REiD0C5Nep2BONXhd2MypBvS6jtlIU+LTV7DEx7O+K9xd8QM1eo1N7NwhY1ZiU4jo1eRErLa2loMHD/Lxxx/zySefANCzZ8+gr3nllVfcf3777bf54osvyMnJYcSIEfzzn//kt7/9Le+++y7XXHON39cnJyeTnJzc1CF3WH6Lot98nC6Tc6jSJbPynf8NemEKVONjTIhlwR/6+Nx2MiYEXxltryQ+fWNFpw2erDemvqsxgjV67YgxK7EpRPRqciJ2+eWXYzQamTJlCs888wz/9V//1eRBLF++nAULFlBZWckFF1zAxIkTm/xewlewomhjUvBkqqHi5h6dk1l+zzU+SZroePzFyqPT+jYp8Wnu+ZHBYr5H504Ss0KIqNHkRCwnJ4d9+/bx5ptvsn//fq6++mquuuqqBlfFXMaMGcOYMWMA6NWrFxs3bmzqUEQDghVFN5RMNVTcrCiadl3kLELnL1YeefFTVtx7TaMSn3CcH9lQzEvMdiy1Ngcxem2kh+HW2PFE2/hFeDU5ERs+fDjDhw8H6s6dXL58OU8++WSjmrqKVqJRMI2YgWVbrvvCZhoxA0K4qHXU4mbReJ6xcl73VLKu60lSvB6rTaWT0RDyqlNzzo903Rp1qrGYs+dRsPHJFtkIICJv5H2bQ35utJ1jGaPXtunxi/BqciL26aefsm/fPvbt20dtbS0DBw5kyZIl4RybCBOnvZaiD18jfdAUlLhE1JoKij58DfOY+xq89Rioxken9Z/EBaonE+2fa/NGalIcE4adz6r1XzapV1ew24rB4qt+LF95UQb3jltMjNYZ1o0AQggRTk1OxJYtW8agQYN4+umn+fWvfx3OMYkQhVpHo9HqcFSWkL9xmfsx122ahm49ahW45+bLeHbdmYvqPTdfhr88TJpldmyuzRuFpdXuJAwa36sr2G3F6pJCasqrKKyws/mLAsYNPt8dX/Vj+bOv87n7l7K6z02UW5FCiOjU5ETM84gi0foaU0fjOo/PX78mW0lN0FuPVpvK37YfYuqo35AUr6e8ysbfth9i7sTLfcbUUZtlijquekNDrK5Zt7MDxau9ppLCdYuxl1pINpqYNmw2L753iOnZl5KaFCe30YUQbVLLtbAWLaoxdTTB+jU11AtMr1MoLq9hyatf+P25J7kQCkXREBujbVavLn/xikbhxCvzvOK9escKRvWf644v6WsnhGiLZIZqoxp7Tp+rX5PeaEKXmOpeNXPdTjKnGgB82gs09HNPrguhJ7kQdjyhxkyww7frx6vTXus33tMTde74akysCiFEtJAVsTbKXx2NoWdvQIOt1BJycXJD7Ssa0ytMGrwKCC1mGqonrF//qNHF+K0bS06Kx3A6vqSvnRCiLZJErBWoqh1HeQmodlB0KIlGnNUVfovs61+AlPgk1Kpyn+dWagwkj56PvroQRV9Xf6UxJHNy7YIm914KJNS+S3Ih7JgCxWyiakejd8Wsxuu5qs1K51gND95yPi9s+5Fvj5a46wmT47WoZYU4KkpwVJVS9q8PSet3Mxm3PEz+m4+facGSPQ+rPgF7lZWk+Lo4kx5hQoi2RhKxFqaqdmz5R8nftOxMgpR1P2XffEz551u8EibAtwA/ay5F+96i+vABr+c67CrYbBTu/ItXbzBtQgr2UkvIvZfCvdNRLoQdi99NIwFiFnzju8uIGTyQ1YOcTfDt0RIUVOyWE+RvPPPfi2n4dIr2rsM07A66TM7BVlvL0YJqFq4/QlH5Ye65+TLSkm106ZQoSb8Qos2R4p0W5igvcSdhcLqoftNTGC+57szfNyzFUVnqvwB/0zKSL+kPUJdklRdiL7GQ6KzE+sUmr+datuWS8rszB/sGqxnzrM8pLK12J0+unY6lldaW+QcR7UpDMdtQfFu25RJbU8ikgd0wpxowOCop+sdbpA+aQuatj5E+aAolB3aQfEl/nA475U4DM1b/izl/+RffHi2hoLiaZ9d9SV5hpcSsEKJNkhWxlqb6L6pHUbz+7kqYtAkpXo1XS/a/gxKXSGyXnqRdOw7L9tVeKwVqZQnWE4fd76PEJbrf19V7yWdIflbB7r7pMtbuOMR3R4tlp6MImdPp9IlX64nDXnFoL7Vgq61Fp1X8/reg6ONI1+u4+6bLcOIkpfcwnzjXGJLQaHXYbP535sbF6CRmhRBtkqyItRCnU8VeUQwaBZ3R5PUzndEEqur9dzSgaEkfPBVcyZNWR/rgqTidTlJ+N9p9cYLTqwnbV3utgOmMJlRbjfvPgY508dfva9X6L8m6ru6cUHOqAc8bPMF2t4m2yRWftlIL9opinE41pJ95/by8CLWylMJdr3DytYUU7nqFtGvHYejZG7Wmwv18ndHE0YJqHE7//y04FYW0ZAOZcTUoaCg5sMMnzrVxCWgTjAF35tbU2mV3rhCiTZIVsRbgWTejTUjxOecxI+t+Sv+1B8BdU3PqvZdI+d0YsNf61H0psXE4NRq/qwnaeKP7fUxZ89Anp9FtxgtBd00G6veVFK93r44FOjZGuuW3fcGaAYOfOkWPTR+er00fNIXCXa/4JE2dxy2icPerQF1cGobN5rmtR5iefTHGEfdRse1p93ubx8wBjUL+6w9jL7VQE2ClF01dSwt/O3PrasTiZHeuEKJNkkSsBXjWwthLLXXnPA65nZi0s3A6bFT89BUpvYeR8tvBoGgpObCD6sMHSB8wkbw3H/Opocm89TEw4Hf7vja5E2dNfx4UHbpEI1qttsHxBWp8mZocx9RRv2Hrvh+4a+ylgHTLb4+CNQMGgjYK9nytEpcY8LZ7Uv/JpA6YRK1Dw5o9Jygqt5JXVMPqPSf447AHyUzVo9fpQKNx7/R1vd6yfTXpg6a4j+Squ8WuB87szH3q7muotTnqGsjqFfeuSSGEaGskEWsB9ZutWk8cJn/9EjJvfYyTry0EID7zHE787SF3DUztsUPgVP03abXbsGx9zndlbex8dMlpIbWn8DwsOVav+F1VWPnG/1BcXuPV+0u65bc/geq6XHWKwRoFe8a2WlPh/0xIp0rR+kXuOB03fDZDfvcr/vzO13x3tIR7X/gSgDULB5HoKG1wpdffLXaNpi4p0+skCRNCtG2SiLWAQIcWu+pmdEYTjqpSwHsFwFFd7vd1juoyrCcOu1fW9Oln4VRi0CU23LAV/N9efHRaX566+xrsDhWdVkGrwNyJl/v0/pJjY9oXp1N113V5FsOXHNhRdzi8wxnwwG3wju2S/e9gGj7dq7A+I3sep3a96rXCVbl9BTHDHuK7o8Xu9zSnGkigBlvRiYArvf5uscutciFEeyNX0yYKVtCsTTCSccvDZNz0IJm3PkbGTQ9iHjOHkv3vnLnw7T9zaLprBcDpcGC6/h53QbPOaMJ0/T04HQ7gzMqapcTK9OcOcjS/IqTCeX+3Fx958VM0GjCnxtfV1yTGYU6NJzUpzuuCJsfGtC+OylLyNz7plSiVHNhBp//+A/baWvIKK0m8Yb5XDGaMnY8Sn3Q6zp1kZM9DZzRhPXGYkgM7yBy/iG4zXqDL5ByUBCPVhw94faa91II5JQZzqoFe3VNYfvsl5N55CQoOKg99hmn4dO/Py56LLjnN5zguCHyrXFpXCCHaKlkRa4Jgxc7ui4bdu9lqRvY8zNlzQVU59d5L7kJkOLMCoFXtFLz7jNdto6IP1pD+33/wem5xlaNRtVrNub0o3fLbl/q3zWO79CSl9zBOvrbQHauMuA/b0IeI1zlJS0lEn5SMzXLcHe+Gnr3JHL8IFK3PipW9otjvCpc+JoYVs64hpvwklo1LOemxGaX833vPxLytBm1SesCVXrlVLoRob2RFrAkCFTs7KksD/3zjk2g0GrRJKaT9/kbvFYCsuWiTUkDR4agsIX/jMk6+tpD8jctQElLQJhjdK2uJN8xnze5jQOgXoOYexu3qlu9vxUy0La5biy7+2qJUbHsaU5KeFe/+RKkah1pV7hXP1YcPcPL1RXXvVW/FSptgrKtdrLeipk0wkuCsxlJvNc6yLZeE868kf+MyLFufQ5eUjjY+KeD45WB5IUR7IytiTVB/VQFOFzTbarGVWkANUHTvsKNWlVO07y3vVa99b2EadgcoilfNjaFnb1KvHsvJ1x5xr1YkjrjP/Z6hXoDkMO72q/45jw0e9K5RvDZ9aOONfmM1xlrC/Osz0cUoOO0B4t3PqQ1Op4aaxM6Ybn0CxenAqeioJI6qiloSAzQ3jknv2mDLFReJZSFEeyOJWCO4Lnrgv5VEbeFx8tcvIeOmBwMWPDsddqoPH/Cpo3E6bkOj1VFyYIc7SdPGJ5O3/gmf1YpJA+ey8h1ryBcgub3YPoV0i7z+a+y1dZs+TseYEpfgf4NIVSmVu16pa2kRYPNJ/VMbPAvpU5PimDj8fJ5dd5CC4mquvCiD+0ef4/999DFBz0P1JLEshGhvZD0/RK6L3olXH6Dg7acxjZjhXVQ/YgYl+zYAULJvg8/PXbdn6t8acv1co9VRqTEQ03uMu1O5WlPpdwXh3MxElt9zTaN2isntxfanoVvk/mi03re/Ldv+5BvLpzeTuFa9/N1uNGfPQ2NI9npvz0L6rOt68uy6LykorqZX9xSm9Uuj8P2XfQvzA5z+EIzEshCiPZEVsRAFbNKa3hUUhYK3n3YX4LtaTWTe+hg41bqi5pg47GWFaLQ6Mm55mPw3H/daxdAmGLGW1PDUlpNMGjiX1HgtdkOc3xUEtDq/BfqevcJkpaD9C3iL3GEPeMtSiU8iI2uu+yB6R2UJSoKRzAmLcZSdwlFVStFHb2A9cdj9BUGjUdB16kb6uMWUlVdRVQvFdj3pZRZUjRaHosOqNaCqTnchfVK83v3nSQO7Ub2j7vPUyhLSB01BG29Em9wp5D54Ijqteeg60tIC1/QJIRrW4ROxUGtsnLZav01au01f7V5l8OSoLKH21DHy1y+pW0HIup+ygzupOfJvMsbOp8uUJ3Haa70+U69TKCq38sBf/w3Akjv70mX4bCq3r3AnbQnDZ1NFHPXTMOmv1PEE6len0eq8blkaevam06DJoGgBDWXf7POuUfzwdUzD70QTE0fh5md8viAAlFXZmLP6f0hLiuWBUV2oeHcJxz12Pjr1idToU+lzYQaff5NPeZXN3X8uNV6L9fQYrScOuzvmd5vxgiRhbVxaWhI/PpHl9djZD22K0GiEaJs6dCLWqBobRfG/OqUo7ls3nu9jGjGDog9fA+pWKQo2PUXnmx7i+Fd73EfG6OvdojQmxPLotL7kFVYSF6MjLTmO1z84znX961bIiqscPLflGPdP7Orzu8hRRB2Pv7jLyJ6L0+mkaO867KWWM+0pXj/T6b7ufEdwlBWe6apvv40Yc3e6TM7x+6XE1TZi1uhzqdi2zGfnY/qQ26koh6mjfsNPJ8r44puTPDbtd5RWWolPcOAIocZMCCE6oojMhLm5ufz9738HoF+/fsydO5f9+/eTk5OD1Wpl6NChzJo1q8XHEezMvfrFwxp9LOas+ynY9JTXRQ/AXlaErtNZ7osYTifF+zaQ8rvRXsfIoCjuz/G34wzqLnjPb/rK6+ihV7cfcnclD7RTUvordTwajYLe1JXMiYvBbqO26ASn/v4ijsoS98HZqf1u8WlPUfD2cveB3Z5d9TUaJWDRvKtthOfqlou91IKij8OUGItBW8Pquy7B5tTy7Oav+ezrfK68KIPZWfOwbHrS72qbEEJ0ZK2eiO3fv5+PP/6Yd955B41Gw9SpU9m2bRvLly9n7dq1ZGZmcscdd7B371769evXomOpf7sRXGc71vo+WXVQvG9DXX1LYipKXAKFH6yl+vABdy8wfUZ3FEWHrbyIpN/08zoX0jRiBpxeXQi0GlBS4buq9ey6L7kz62IefenzoFv15SiijsfpVLFZjmMvL3Q3D3axbF9Np2F3ojN28hvjrgO7LdtX19Uynn6/QLcKXW0jKsqKMfhZ3XIqCvHOagpee9Qd89OGzaakzEpJmRWrqiF9yO0o+jhUWw3o9C3wLyKEEG1Pq1+lTSYT8+fPJyYmBr1ezznnnMPPP/9Mjx496NatGzqdjpEjR7Jz586WH8zp242edEaTO2Hy5Go7kb9xGY6KYvLefNzdgsJeaiF/0zIc5SUUFFehOnEnYa6fW7bl4qgs8bsaoKpOistrsNba/a5qnWVO4uUFg4LulJSjiDoe14quoo/zm2zpkjthK87zG+PaxFQysueiTUjBXmrhxKsPUFtw1OuoLhfXJpCEOD2mTDPm00ccud7LNGIGusQ0CjZ537Ks3rGCSQO7MWlgN8reWUr++iV1jYrXLyH/zceD7u4UQoiOotVXxHr27On+888//8yOHTuYMGECJtOZi4XZbCY/P9/ntWVlZZSVlXk9lpeX16jP9yzOBzDf+ACOslPub+paQzLgm+h4Fka7VhM8uW432kotOJJi/F8YE1PpMjkn4CHGU0f9xu+qllbRYE6ND/p7SX+lyAtHfDaGa9ekWlPhv2hfp69rpVL/YO6s+7FsWVV3C3PEDJxOZ11CVl6IEmNAo49xx6jD4aCmtJia8ioKK+xs/qKAycMvqLsNb6sFjUKtRktlRZXfmE+N1wL4vZ0Z6Pa8CL/Wjk0hROgiVi17+PBh7rjjDubNm4dOp+Onn37y+rlG45tArFmzhtzc3EZ9jqracZSXgGoHXQxqVZlXcbM5637K/meX+xaj6fp73LVcnjwLowNd+FDtWN+YjTNQQ1d9rE8NjmeR/aY9h7n7pstYtf5LrxqxWH3jjiISkdGU+Gx0Z3wPGq0OQ8/eaGITfOoX626Fa3BUllD00RteZzk6rNXuViuWbbmYbphN2rXjvJO1sfPRm7pisxyj8PSxRMmnbze+uP0/TM++lNTUVIr/f3t3HhZlvT5+/D3MsCkKiGzHrSvzpHnMvDINJTmY+xLikphfFU37/sqly0oWwzY3Uqw0uyrTr55ztMwQUNSTlmZHhdwr7bhmbqmQIDvMDDPP7w+ckWUGQWFmoPv1FzPzzMz9fObDM/d81vwSXlv+H2aHP0RzC3X+VpEBZ7WTxe5MGaxvO/dSN4UQtmGXK+HRo0eZNWsWc+fOZejQoRw6dIibN2+aH8/MzMTPz6/K8yZNmkR4eHiF+27cuMH48eMtvo/RWIo+47J5zST/sXMrjKUxzWb06T+Z4nOHy7oQty4ncML8Kq+lUjndmVWmKPiPjiIjcUmFhC4nfQtwZ0HX8mPErA1OLj/I/szlW/xrxymmhnWhrb8H17MK8WvRBH2pkes3C9GoyxItjYz7cki1rZ/lZ+2qm3rh9dQYnFv8BScXtxolZE5NmtHiqWfJ2LwEdVMvfAZNw7lFIIbCXLK//QdOTb3wHx1NRuK7ZCQuMS/WaprNC2X/A2p3D26kvFdl0krA/8wns9LekMU73iMsNMo8CcRUf//x7RWihr9C8Y47S634jorGYPSioFiP3/DXyE9NkMH6dlLbuimEsB2bJ2LXr19n+vTpvP/++wQFBQHQtWtXfvvtNy5dukTr1q3Ztm0bo0aNqvLc5s2b07x58yr3W2PIzzEnYYDVsTRObh4VbmO0PNPQNKvsVn4JKYd/Z9Szb+GiVlCrNdzat4mCn/cAdxZ0Dfifd/jjVjEFWoWbqhYEKioqN/RVHmR/5vItVm85weLpwTzUxousnBIWrTtkbiGLjezBAwHNJRlzQLWun7fHeKmbellskapuqyKgbDPu2/W7NPcP85p1Pv0nm1u8nAa/YJ7NqyiQtWuN+TG43ZKrWN4b1WhlwVgfD415Eoip/p6+nMOSVJjULwofDw1enk15L/kcP5z8GYCObb2YOjCGB/yboHZ2rlXLn7h/ta2bQgjbsfmVcM2aNWi1WuLj4wkLCyMsLIykpCTi4+OZOXMmQ4YM4cEHH2TQoEH3/2aVNhk2dSmWp/H0xVhSUOG2ytnF8svdHlRfojXQ8YGWvPPFWcYsOsTlP4opuXSiwrGGwhyu/FHC/1v5I6999hNvrPqB3EJtlde0Nsi+pac7er3RnIRB2cD9xesOcSu/5N7KQzgU0xgvr17hVZaYuNtWReWfX175HxYaT19UTmoMBgWj0cj17BJce0VU3KpoVBQGJxeL/xc6g8ri/c2bNTFPAilff09fzuH95POUOHtSpGrCDyfvjPM8fTmH1z77iVw80Hh4SxImhBC32bxFLC4ujri4OIuPbd26tW7fzKniyuOFZ49UXQts1Byyb+8RWV2XiaWV62eN7ca/dpzikx2/MXdExa4Xj2GvsnjLnXFv1a3p5axx4sVRj+LmoqFEV2pubSg1KBZnUZYalTopHmFfpgkg1U3+qMnzK4+9Mv3g8B83D31edoX1uxj2KvrBr+PmZKTE6ESpqzs6nR6/UVHmWY8aT198Rkax/cccQodU7G70Gx2Ns6e3eRKItUkiuYVaWU5F1BtjqY7UZWEV7svOzmfSwj0Wj9fpDbg4q83PddJU/LFd+T6t3oDr7eNrorbH11b5+Osjntq+vqhbjXq0rJOHJ/6j5pBxO/Fq2ulJ81pgpoVW837ZT8uBz8PA56sdLG1p5foVXx5nalgXVm85QZG7n7kLyKA4sSz5HKcv39n2yM/b3cJczLLXfXNVepUvrISX+6BRqyx+mWlkJmSjYJoAUpqfZXWropo8v+LK+tE4NfXkL5GLMRgV/ri9pymUJXcF25ZRHBrFJ99eIeaZQLI/X0hp7h9oOzyB37g3ySsqJTNPz792ZtK3ezuWpJ69a5eipUkippayyltuyXIqoi44aVxqtbWSi7Oa4a+WjeFNXRZm8bmmx03HlL99N/dyfG2Uj98R4hF1q1EnYkpxAdnlEi91Uy+Kzx02r/9l4vXEkCrbDVVmbeX6B/5S1hrQzN2F/GIdemNZq8Cz/Tpy4fc885dQzKQnLI7rqm5F/BbN3IiN7MHiSmPEZGZk42CaAGJa06v85I+aDGavMIHk9qzLQpU7Wl1ZHWxiyLW6pMTUge0o3H5nV4nic4fRZ14kLzTKvNdpWJ+HyM7XomnmhbOnZ62WQpHlVIQQomYadyJ2exFWU+LlPzqqVi0PpoUs9aVGVGCxdcrNRY1nU9cK3ZZvTu3J1+kXmRrWhWZNnMkv0vPlN2f43/BHq7xHdSviazROPBDQnPjpwZQaFTROMmuyUVKMODX1InDCAkCp1TIWpgkkd7rO/2NO2lfOeNxifW/WrAmeHgYyq1n3y8/bHe/mbrw46lFaepYl/rfyS2qVVMlyKkIIcXeNOhGrPIYmJy25xstKVB4T1rOzf5XWKVNXS+VuSzcXDQd/yeDgLxUXpX0hvMrb3LULR6Nxwvcui7mKhqlWm87fhaWu843/uUZEpT0e3Ye8wvwN/2VSvzZW1/0yjX9cm3qS8YM60dTNpcr4yLgpPa3u8iCEEKLmGnUihsqpQuJlKMxB5eJWtkmyUn3LQ26hlg1fn6rQqvWfY1eInx6MAhVaBSp3L+YX6Ws8UFm6cP68arPp/N1Y6uJO+v4C4aED8J+wCIylKCq1eeziP76lyrpffqOj8XD3J356AE5OKqaPecziD43MW8Us+L+DJLzcR1q8hBDiPjXqREwp1ZH93foKg/Ozdq7Gb+Srdx0TZjQqDH+qfYVV7meN7YaTkwofT/dquy037znHyxHdWL7xznNfn9zDvPxF5URLunD+nKwtP3EvW/9Y6+LWlyrocMNZ44SHmzNj+5eNXTx9OYdV37vy8nMLcHVSUGnKfpS4WfhRUt04RkvK/2/IDwshhKheo07EVGoNhsIcMhKXmO+r6dYqRqNiTsLgzizJxdODycwuwqgorN5ygoO/ZFTptryVX0KL5m4sndWHUoMRo/HOsdKtI0ysLT9xL1v/WOrijo3swafJP5vr3cIXe7Nx1+kKrbwfpJxn+pjH8PYo+yFgKYmqbhxjZZaWeZH6LoQQ1jXqRMzi9P4abq2iKFhsBbiZU0z0yv3mFrKcfJ15LJilbkvTXnzSrSMqu5/6WVnlLm4VmJMwKKt32XklVsYulrVsWWEU60EAABKcSURBVEui2vg1q/FSFNKNKYQQtdOoEzFL0/trOhvN2dlyK0BugQ6ouI7YonWHOPhLBi+Eg1+lgfW17dYRfx73Uz8tKd/FnXmrqErClVugq7Zlq7okqqbjGKW+CyFE7TT6dRBM0/udPX1rtbWKpa2HZo3txuY9Zfv0PdzW27w599zIHvTs7G+xq8bUrVOerDAuTO61flbHaFRQAe/OCGZuZA8ebls28H/34Uu8PrlHle20TC1b1SVRpiTPz7sJ3s3crHYzSn0XQojaadQtYvfDWlfPmcu3eLitNxOGdKowkD82sgfN3KvuUSkrjAtbsrYVV+q+Xxk/qBNt/JpZbdmqzVgwa6S+C3uxtO2RQadF7VJW92T1eOGoJBGrRvmuHqNRYfygTvx2LY9RfTtUGci/eN0hi+NgZHkKYUvWtuKKnx6Mj6d7tTN06yKJkvou7MXatke12QpJCHuQRKyGyn/BlGgNtRoHI8tTCFux1r2oQI1Wwq+LJErquxBC1JwM3KgF0xeMm6taxsEIh3S/Y7RqOhZMCCFE3ZDM4R5YGsgv42CEI5C6KYQQDYt0Td4DGQcjHJXUTSGEaFgkEbtHMg5GOCqpm0II0XBI16QQQgghhJ1IIiaEEEIIYSeSiAkhhBBC2EmDHyNmMBgAuHHjhp0jEQ1FQEAAGo1tqr7UT1FbtqqftambrVu3ru9whJ1dvXr1rsfY8tr5Z6JSFEWxdxD348iRI4wfP97eYYgGZPfu3Tb7YpH6KWrLVvVT6qaoLVteO/9MGnwiVlJSwsmTJ/H19UWtVtf569+4cYPx48ezYcMGAgIC6vz1G3o84Hgx3S0eW/6qq+/6aeJon0FtSfx32Kp+2qpu1kRD+fwbQpz1GaO0iNWPBl+ibm5udO/evd7fJyAgwKF+CThaPOB4MTlCPLaqnyaOcM73Q+K3HVvXzZpoKOXXEOJsCDGKMjJYXwghhBDCTiQRE0IIIYSwE0nEhBBCCCHsRP3WW2+9Ze8gHJ2rqys9e/bE1dUxNk52tHjA8WJytHhsoaGfs8T/59ZQyq8hxNkQYhR3NPhZk0IIIYQQDZV0TQohhBBC2IkkYkIIIYQQdtLg1xGraytXruTf//43ACEhIURFRZGWlsbixYvRarUMHjyY2bNn2z2m2NhYjh49iru7OwAzZsygf//+Noln+fLl7Ny5E5VKxejRo5k8ebLdy8hSTPYso/q2Z88eVq5cSVFREcHBwcTFxdn9M6iNLVu2sGrVKgD69OlDdHQ0p06dIi4ujoKCArp3787bb7/tcItHFhQUEBERwSeffELr1q2tlnlDOBd7crRrmjUTJ04kKyvL/Nm98847XL58mY8//hi9Xk9kZKTddyf46quvWL9+vfn21atXCQsLo7i42OHKU1ihCLMDBw4oY8eOVbRaraLT6ZSJEycqqampSkhIiHL58mVFr9crU6ZMUfbu3WvXmHbt2qUMGzZMycjIsFkcJgcPHlQiIiIUvV6vFBcXK6GhocqpU6fsWkaWYvr111/tVkb17fLly0pwcLBy/fp1RafTKePGjVP27t1r18+gNoqKipQnnnhCycrKUvR6vTJ69GjlwIEDytChQ5Xjx48riqIosbGxyoYNG+wcaUU//vijMmzYMKVz587KlStXlOLiYqtl7ujnYk+Odk2zxmg0Kr1791b0er35vhs3biihoaHKrVu3lMLCQmX48OHKuXPn7BhlRWfPnlX69++vZGVlOVx5Cuuka7IcX19fYmJicHFxwdnZmfbt23Px4kXatWtHmzZt0Gg0DB8+nK+//tquMV27do1r164xb948hg8fzooVKzAajTaJp0ePHvzzn/9Eo9GQlZWFwWAgLy/PrmVkKSZXV1e7lVF9++abbxgyZAgBAQE4Ozvz/vvv4+7ubtfPoDYMBgNGo5Hi4mJKS0spLS1Fo9FQUlLCY489BsDIkSMdLv5Nmzbx5ptv4ufnB8DPP/9sscx///13hz8Xe3K0a5o1Fy5cQKVSMW3aNJ555hnWr19PWloaTz75JF5eXjRp0oSBAwc61Gf71ltvMXv2bNzc3ByuPIV1koiV06FDB/PF8+LFi+zYsQOVSoWvr6/5GD8/PzIyMuwa01NPPcWTTz7JokWL2LRpE0eOHCExMdFmMTk7O7NixQqGDh1KUFAQmZmZdi0jSzEZDAa7llF9unTpEgaDgeeff55nnnmGzz//3CE+g5ry8PDg5ZdfZvDgwfTp04dWrVrh7OxcIX5fX1+Hi3/hwoUVtgSyVuaV73fEc7EnR7ymWZKXl0dQUBAfffQR69atY+PGjVy7ds1h/8/S0tIoKSlh8ODBZGVlOVx5CuskEbPg3LlzTJkyhejoaNq2bVvlcZVKZdeYHnzwQT766CN8fHxwd3dnwoQJfP/99zaNZ9asWaSnp3P9+nUuXrxY5XF7lFH5mNLT0+1eRvXFYDCQnp7O0qVL2bRpEydOnODq1atVjrPHZ1ATp0+fZvPmzXz33Xfs378fJycnDhw4UOU4R43fRLGw8o9KpbJ6v6jI0a5plXXr1o0lS5bQpEkTWrRowejRo1mxYkWV4xzls924cSOTJ08GoE2bNg5XnsI6ScQqOXr0KJGRkbz66quEh4fj7+/PzZs3zY9nZmaauybsFdOZM2fYuXOn+XFFUWw2EPjXX3/l1KlTALi7uzNgwAAOHjxo1zKyFNOOHTvsVkb1rWXLlgQFBdGiRQvc3Nx4+umnOXDggN3raU3t37+foKAgfHx8cHFxYeTIkVXq0B9//OGw8ZtYuzZUvr8hnIutOdI1zZojR46Qnp5uvq0oCq1atXLI/zOdTsfhw4fp27cvgEOWp7BOErFyrl+/zvTp00lISGDo0KEAdO3ald9++83cHbRt2zb69Olj15gURWHRokXk5uai1+v58ssvbTYb5urVq8TFxaHT6dDpdOzevZuIiAi7lpGlmJ544gm7lVF9Cw0NZf/+/eTl5WEwGNi3bx+DBg2y62dQGx07diQtLY2ioiIURWHPnj306NEDV1dXjh49CkBKSorDxm9i7drQqlWrBncutuRo1zRr8vPzWbJkCVqtloKCApKTk1m6dCnp6elkZ2dTXFzMrl27HOKzPXPmDA888ABNmjQBHLM8hXWSIpezZs0atFot8fHx5vsiIiKIj49n5syZaLVaQkJCGDRokN1jeuGFFxg3bhylpaUMGDCAYcOG2SSekJAQfvrpJ0aMGIFarWbAgAEMHTqUFi1a2K2MLMU0Y8YMvL297VJG9a1r165MnTqV5557Dr1eT+/evRk3bhwPPvig3T6D2ggODua///0vI0eOxNnZmS5duvDCCy/Qv39/4uLiKCws5JFHHmHixIn2DrVarq6uVq8NCQkJDepcbMnRrmnWhIaGmq8rRqOR5557jscff5zZs2czceJE9Ho9o0eP5tFHH7VrnABXrlwhICDAfLtjx44OV57COtniSAghhBDCTqRrUgghhBDCTiQRE0IIIYSwE0nEhBBCCCHsRBIxIYQQQgg7kURMCCGEEMJOJBGrJydOnGDWrFk2f9/9+/cTGhrKqFGjKCkpsfn7iz+PgwcP1suU+J9//pk33nijXt9DCEumTZvG+fPnqz0mJiaGNWvWWHxs5cqVfPvtt/URmmjEJBGrJ126dLG4HUZ92759O2PGjGHz5s24ubnZ/P2FuF/nz593mP37xJ/LZ599xkMPPXTPzz948CClpaV1GJH4M5AFXetIYmIia9euxcnJCW9vb0aOHMnq1avZtm0bMTEx5OTkcOXKFf7+97/z0ksvsWDBAo4dO4ZaraZfv37Mnj2b2NhYOnTowPPPPw+U/fIy3e7bty/Dhg1j79695OTkMHPmTI4dO8Yvv/yCRqPh448/JjU1ld27d+Pq6kp+fj7R0dF8/PHH7Nq1C6PRSKtWrXjzzTfx9/dnwoQJeHp6cuHCBcaNG8eIESNYuHAhZ8+eRa/XExQURFRUFBqNxrzg5oEDB8jMzGTixIlERkYC8Omnn5KcnIxGo6Fdu3bEx8fTrFkzvvrqK7744guMRiNeXl7MmzeP9u3b2/ETEvVFp9ORkJDA4cOHMRgMPPLII8TFxeHh4UHfvn0JDw837wE6ePBgoqKiAFi1ahWJiYk0bdqU7t27s3v3bjZs2MCKFSvIz88nNjaWESNGUFRUxOzZs7lw4QJarZYFCxZU2HxbiPJGjBhBVFQUvXr1Yvv27cTExHD48GHc3NyIi4vjr3/9K1evXrVaX5cvX06XLl0s1s89e/YAcPz4cSIiIrh58yYdOnRg2bJlJCcnc/LkSZYsWYJarZaV7EWNSYtYHTh9+jQJCQmsXr2a1NRU+vbtyyeffFLhmJKSErZv386cOXNYsWIFWq2WHTt2kJKSwrFjxzh06NBd30er1bJ161ZiYmJ44403mDRpElu3biUwMJDk5GSmTp1K3759iYyMJDo6mpSUFM6ePctXX33Fli1bCAkJIS4uzvx6zZs3Z8eOHUyYMIFFixbRuXNnkpKSSElJ4datW6xduxYo+6L19vZm48aNrFixgmXLlqHVatm9ezdJSUl8+eWXbNu2jdatW7N+/XoOHTpESkoKGzZsICUlhalTpzJz5sy6LXThMFatWoVarSYpKYmtW7fi5+dHQkKC+fGioiI+//xzNm7cyPr167ly5Qr79u0jKSmJxMREkpKSKCwsBCAwMJBZs2bRvXt3Fi9eDMCNGzeIjIxky5YtRERE8OGHH9rlPEXD0K9fP/bt2wfAvn378PT05MiRIxiNRvbu3UteXl619dX0PEv10yQjI4O1a9eyc+dOMjIy2LVrF+PHj+dvf/sbUVFRkoSJWpEWsTqQnp5OcHAwgYGBAERGRtKpUyfmz59vPubxxx83/52WlkZsbCxqtRq1Ws369esBSE5OrvZ9BgwYAECbNm1o2bIlHTt2BKBt27bk5uZWOf67777jxIkTjBo1CgCj0UhxcbH58fKtCnv37uXEiRMkJiYCVBlf9vTTTwPQuXNndDodRUVFpKenM2jQIDw9PQGIjY0FYMmSJVy6dImIiAjz83Nzc8nJycHLy6vacxQNz969e8nPzyctLQ0AvV6Pj4+P+XFT3fH398fHx4fc3Fy+//57Bg0aRPPmzQEYP348P/zwg8XXb9OmDV27dgXKtm7ZvHlzfZ6OaOD69+/PK6+8QnR0NEeOHCEyMpIDBw7QtGlT2rZte9f6Cty1fvbr1w93d3cAOnToQHZ2to3OTjRGkojVAbVajUqlMt8uKSnhwoULFY4xbcYKoNFoKhx//fp13NzcUKlUlN9xSq/XV3gNFxcX89/Ozs53jctoNJr3JISylq3yCVv5mIxGI8uXLzd3H+bl5VWI0dXVFcB8n6IoVc47Ly+PvLw8jEYjYWFhzJkzx/zamZmZ5oRNNC5Go5G5c+cSEhICQGFhIVqt1vy4qe4A5jqu0Wgq1HW1Wm319cvX9cr/I0JU9vDDD6PX69m9ezft2rUjNDSU2bNno9FoGDBgAFu3bq22vgJ3rZ8azZ2vTqmT4n5J12Qd6NmzJ+np6WRmZgKwceNGli5davX4oKAgkpOTMRqN6HQ6Zs2axeHDh/H29ubkyZMAZGdnc+TIkfuKKzg4mMTERAoKCgBYvny5eXyOpWPXrVuHoijodDpefPFFc0udNb169eKbb74xv/6HH37IunXr6N27N9u3bzeXxxdffMGkSZPu61yE4woODmbDhg3odDqMRiPz5s3jvffeq/Y5ISEh7Nq1i/z8fABzSyyUfenJgGdxP/r160dCQgK9e/emffv2FBQUkJqaysCBA2tUX6urn9WRuivuhbSI1YGHH36YOXPmMHXqVAB8fX15++23+fTTTy0eP2PGDBYuXEhYWBgGg4EhQ4YwYMAAunTpwmuvvcbAgQNp3bo1PXr0uK+4xowZQ0ZGBs8++ywqlYrAwEDi4+MtHvv666+zcOFChg8fjl6vp1evXubzsSYkJITz588zbtw4AB566CHmz5+Ph4cH06ZNY8qUKahUKjw8PFi5cmWF1jPReLz00ku8++67hIeHYzAY6NSpEzExMdU+JygoiGeffZaxY8fi5uZGhw4dzF093bp144MPPmD69OlMnDjRFqcgGpn+/fuzZs0aevXqBZT9aDxz5gyBgYE1qq/V1c/qhIaG8u6776LX6wkPD6+XcxONj0qRNlUhhI2dOHGC48ePmxOttWvX8tNPP/HBBx/YOTIhpH4K25JETAhhcwUFBcydO5cLFy6YW2vnz5+Pv7+/vUMTQuqnsClJxIQQQggh7EQG6wshhBBC2IkkYkIIIYQQdiKJmBBCCCGEnUgiJoQQQghhJ5KICSGEEELYiSRiQgghhBB28v8BXlMR3bNX9DAAAAAASUVORK5CYII=\n", + "text/plain": [ + "<Figure size 619.85x540 with 12 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "np.random.seed(42)\n", + "N = 50\n", + "\n", + "data1 = np.random.random((N, 4)) + .8\n", + "\n", + "# sockeye, orange\n", + "data1[:, 0] += .2\n", + "data1[:, 0] *= 30\n", + "data1[:, 1] *= 40\n", + "data1[:, 1] += data1[:, 0] * 2.2\n", + "\n", + "# data1[:, 1] += 5 + 0.5 * data1[::-1, 0]\n", + "\n", + "data1[:, :2] += 10\n", + "\n", + "data1[:, 2] = 0\n", + "\n", + "data1[:, 3] += 10000 + data1[:, 0] ** 2.5 * data1[:, 1] / 3\n", + "data1[:, 3] *= 1 + .5 * (np.random.random((N,)) - .3)\n", + "\n", + "\n", + "# atlantic, blue\n", + "data2 = np.random.random((N, 4)) + 1.2\n", + "\n", + "data2[:, 0] -= .2\n", + "data2[:, 0] *= 20\n", + "data2[:, 1] *= 40\n", + "data2[:, 1] += data2[:, 0] * 2 \n", + "\n", + "data2[:, :2] += 15\n", + "data2[:, 2] = 1\n", + "\n", + "data2[:, 3] += 10000 + 40 * data2[:, 0] ** 1.5 * (data2[:, 1] ** .7 + 10) \n", + "data2[:, 3] *= 2 + .6 * (np.random.random((N,)) - .5)\n", + " \n", + "data = np.vstack((data1, data2))\n", + " \n", + "\n", + "data[:, 0] = np.round(data[:, 0], 0) / 2\n", + "data[:, 1] = np.round(data[:, 1], 0) / 2\n", + "data[:, 3] = np.round(data[:, 3] / 40500, 1)\n", + "\n", + "\n", + "sns.set(style=\"ticks\")\n", + "\n", + "\n", + "\n", + "import pandas as pd\n", + "\n", + "df = pd.DataFrame(data, columns=[\"circumference\", \"length\", \"kind\", \"weight\"])\n", + "df.head()\n", + "df[\"kind\"] = df[\"kind\"].apply(lambda x: \"sockeye\" if x else \"atlantic\")\n", + "df.describe()\n", + "# sns.pairplot(for_plot, hue=\"is_yummy\", diag_kind=\"hist\");\n", + "sns.pairplot(df, hue=\"kind\", diag_kind=\"hist\");\n", + "\n", + "\n", + "\n", + "df.to_csv(\"salmon.csv\", index=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 438, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>circumference</th>\n", + " <th>length</th>\n", + " <th>kind</th>\n", + " <th>weight</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>25.5</td>\n", + " <td>85.5</td>\n", + " <td>0</td>\n", + " <td>31.2</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>22.5</td>\n", + " <td>62.5</td>\n", + " <td>0</td>\n", + " <td>12.4</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>29.0</td>\n", + " <td>88.0</td>\n", + " <td>0</td>\n", + " <td>34.8</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>32.5</td>\n", + " <td>85.5</td>\n", + " <td>0</td>\n", + " <td>62.7</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>24.5</td>\n", + " <td>74.5</td>\n", + " <td>0</td>\n", + " <td>24.2</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " circumference length kind weight\n", + "0 25.5 85.5 0 31.2\n", + "1 22.5 62.5 0 12.4\n", + "2 29.0 88.0 0 34.8\n", + "3 32.5 85.5 0 62.7\n", + "4 24.5 74.5 0 24.2" + ] + }, + "execution_count": 438, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from sklearn.kernel_ridge import KernelRidge\n", + "\n", + "from sklearn.preprocessing import LabelEncoder\n", + "\n", + "df.iloc[:, 2] = LabelEncoder().fit_transform(df.iloc[:, 2])\n", + "df.head()" + ] + }, + { + "cell_type": "code", + "execution_count": 439, + "metadata": {}, + "outputs": [], + "source": [ + "regressor = KernelRidge(alpha=.01, kernel=\"rbf\")\n", + "\n", + "features = df.iloc[:, :-1]\n", + "values = df.iloc[:, -1]" + ] + }, + { + "cell_type": "code", + "execution_count": 440, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "KernelRidge(alpha=0.01, coef0=1, degree=3, gamma=None, kernel='rbf',\n", + " kernel_params=None)" + ] + }, + "execution_count": 440, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "regressor.fit(features, values)" + ] + }, + { + "cell_type": "code", + "execution_count": 441, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.022407497359739566" + ] + }, + "execution_count": 441, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.mean(np.abs(regressor.predict(features) - values) / values)" + ] + }, + { + "cell_type": "code", + "execution_count": 442, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.model_selection import GridSearchCV\n", + "from sklearn.metrics import explained_variance_score\n", + "\n", + "if 0:\n", + " kr = GridSearchCV(SVR(kernel='rbf'), cv=5,\n", + " param_grid={\"epsilon\": [1e-3, 1e-2, 1e-1, 1, 2],\n", + " \"gamma\": [.0001, .001],\n", + " \"C\": [40, 50, 100 , 200, 500]},\n", + " scoring=\"explained_variance\") # \"neg_mean_squared_error\")\n", + "\n", + "kr = GridSearchCV(KernelRidge(kernel='rbf'), cv=5,\n", + " param_grid={\"alpha\": [1e0, 0.1, 1e-2, 1e-3],\n", + " \"gamma\": np.logspace(-2, 2, 5)},\n", + " scoring=\"explained_variance\")" + ] + }, + { + "cell_type": "code", + "execution_count": 443, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "GridSearchCV(cv=5, error_score='raise-deprecating',\n", + " estimator=KernelRidge(alpha=1, coef0=1, degree=3, gamma=None, kernel='rbf',\n", + " kernel_params=None),\n", + " fit_params=None, iid='warn', n_jobs=None,\n", + " param_grid={'alpha': [1.0, 0.1, 0.01, 0.001], 'gamma': array([1.e-02, 1.e-01, 1.e+00, 1.e+01, 1.e+02])},\n", + " pre_dispatch='2*n_jobs', refit=True, return_train_score='warn',\n", + " scoring='explained_variance', verbose=0)" + ] + }, + "execution_count": 443, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "kr.fit(features, values)" + ] + }, + { + "cell_type": "code", + "execution_count": 444, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "KernelRidge(alpha=0.1, coef0=1, degree=3, gamma=0.01, kernel='rbf',\n", + " kernel_params=None)\n" + ] + }, + { + "data": { + "text/plain": [ + "0.7083110289328878" + ] + }, + "execution_count": 444, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "print(kr.best_estimator_)\n", + "kr.best_score_" + ] + }, + { + "cell_type": "code", + "execution_count": 445, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.13569593936797758" + ] + }, + "execution_count": 445, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "np.mean(np.abs(kr.best_estimator_.predict(features) - values) / values)\n", + " \n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": 379, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 432x288 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "plt.hist(np.abs(kr.best_estimator_.predict(features) - values) / values, bins=30);" + ] + }, { "cell_type": "code", "execution_count": null, diff --git a/images/neuralnets/800px-Colored_neural_network_wiki.png b/images/neuralnets/800px-Colored_neural_network_wiki.png new file mode 100644 index 0000000000000000000000000000000000000000..9069f1fb4d06f38c4b77746ceee809e75cc21720 Binary files /dev/null and b/images/neuralnets/800px-Colored_neural_network_wiki.png differ diff --git a/images/neuralnets/Colored_neural_network.svg b/images/neuralnets/Colored_neural_network.svg new file mode 100644 index 0000000000000000000000000000000000000000..004b4cc49427842e5bf26b6fb8433bb08c8ff495 --- /dev/null +++ b/images/neuralnets/Colored_neural_network.svg @@ -0,0 +1,309 @@ +<?xml version='1.0' encoding='ISO-8859-1'?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<!-- This file was generated by dvisvgm 1.0.11 () --> +<!-- Thu Feb 28 13:52:27 2013 --> +<svg height='284.528pt' version='1.1' viewBox='56.6209 54.0603 236.606 284.528' width='236.606pt' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'> +<defs> +<path d='M7.164 -7.284C7.164 -7.728 7.2 -7.848 8.064 -7.848H8.304V-8.196C8.016 -8.172 7.032 -8.172 6.684 -8.172C6.324 -8.172 5.34 -8.172 5.052 -8.196V-7.848H5.292C6.156 -7.848 6.192 -7.728 6.192 -7.284V-4.44H2.604V-7.284C2.604 -7.728 2.64 -7.848 3.504 -7.848H3.744V-8.196C3.456 -8.172 2.472 -8.172 2.124 -8.172C1.764 -8.172 0.78 -8.172 0.492 -8.196V-7.848H0.732C1.596 -7.848 1.632 -7.728 1.632 -7.284V-0.912C1.632 -0.468 1.596 -0.348 0.732 -0.348H0.492V0C0.78 -0.024 1.764 -0.024 2.112 -0.024C2.472 -0.024 3.456 -0.024 3.744 0V-0.348H3.504C2.64 -0.348 2.604 -0.468 2.604 -0.912V-4.092H6.192V-0.912C6.192 -0.468 6.156 -0.348 5.292 -0.348H5.052V0C5.34 -0.024 6.324 -0.024 6.672 -0.024C7.032 -0.024 8.016 -0.024 8.304 0V-0.348H8.064C7.2 -0.348 7.164 -0.468 7.164 -0.912V-7.284Z' id='g0-72'/> +<path d='M2.604 -7.284C2.604 -7.728 2.64 -7.848 3.54 -7.848H3.804V-8.196C3.516 -8.172 2.484 -8.172 2.124 -8.172S0.72 -8.172 0.432 -8.196V-7.848H0.696C1.596 -7.848 1.632 -7.728 1.632 -7.284V-0.912C1.632 -0.468 1.596 -0.348 0.696 -0.348H0.432V0C0.72 -0.024 1.752 -0.024 2.112 -0.024S3.516 -0.024 3.804 0V-0.348H3.54C2.64 -0.348 2.604 -0.468 2.604 -0.912V-7.284Z' id='g0-73'/> +<path d='M8.484 -4.068C8.484 -6.552 6.66 -8.448 4.572 -8.448C2.436 -8.448 0.648 -6.528 0.648 -4.068C0.648 -1.632 2.46 0.252 4.56 0.252C6.708 0.252 8.484 -1.656 8.484 -4.068ZM4.572 -0.024C3.348 -0.024 1.764 -1.176 1.764 -4.248C1.764 -7.188 3.432 -8.184 4.56 -8.184C5.748 -8.184 7.368 -7.152 7.368 -4.248C7.368 -1.128 5.736 -0.024 4.572 -0.024Z' id='g0-79'/> +<path d='M3.6 -8.196V-7.848C4.416 -7.848 4.512 -7.764 4.512 -7.176V-4.524C4.26 -4.872 3.744 -5.292 3.012 -5.292C1.62 -5.292 0.42 -4.116 0.42 -2.58C0.42 -1.056 1.56 0.12 2.88 0.12C3.792 0.12 4.32 -0.48 4.488 -0.708V0.12L6.18 0V-0.348C5.364 -0.348 5.268 -0.432 5.268 -1.02V-8.328L3.6 -8.196ZM4.488 -1.404C4.488 -1.188 4.488 -1.152 4.32 -0.888C4.032 -0.468 3.54 -0.12 2.94 -0.12C2.628 -0.12 1.332 -0.24 1.332 -2.568C1.332 -3.432 1.476 -3.912 1.74 -4.308C1.98 -4.68 2.46 -5.052 3.06 -5.052C3.804 -5.052 4.224 -4.512 4.344 -4.32C4.488 -4.116 4.488 -4.092 4.488 -3.876V-1.404Z' id='g0-100'/> +<path d='M4.596 -2.784C4.86 -2.784 4.884 -2.784 4.884 -3.012C4.884 -4.224 4.236 -5.352 2.784 -5.352C1.416 -5.352 0.36 -4.116 0.36 -2.628C0.36 -1.044 1.584 0.12 2.916 0.12C4.344 0.12 4.884 -1.176 4.884 -1.428C4.884 -1.5 4.824 -1.548 4.752 -1.548C4.656 -1.548 4.632 -1.488 4.608 -1.428C4.296 -0.42 3.492 -0.144 2.988 -0.144S1.272 -0.48 1.272 -2.556V-2.784H4.596ZM1.284 -3.012C1.38 -4.896 2.436 -5.112 2.772 -5.112C4.056 -5.112 4.128 -3.42 4.14 -3.012H1.284Z' id='g0-101'/> +<path d='M2.088 -7.392C2.088 -7.704 1.836 -7.98 1.5 -7.98C1.188 -7.98 0.924 -7.728 0.924 -7.404C0.924 -7.044 1.212 -6.816 1.5 -6.816C1.872 -6.816 2.088 -7.128 2.088 -7.392ZM0.432 -5.16V-4.812C1.2 -4.812 1.308 -4.74 1.308 -4.152V-0.888C1.308 -0.348 1.176 -0.348 0.396 -0.348V0C0.732 -0.024 1.308 -0.024 1.656 -0.024C1.788 -0.024 2.484 -0.024 2.892 0V-0.348C2.112 -0.348 2.064 -0.408 2.064 -0.876V-5.292L0.432 -5.16Z' id='g0-105'/> +<path d='M5.34 -2.916C5.34 -4.032 5.34 -4.368 5.064 -4.752C4.716 -5.22 4.152 -5.292 3.744 -5.292C2.58 -5.292 2.124 -4.296 2.028 -4.056H2.016V-5.292L0.384 -5.16V-4.812C1.2 -4.812 1.296 -4.728 1.296 -4.14V-0.888C1.296 -0.348 1.164 -0.348 0.384 -0.348V0C0.696 -0.024 1.344 -0.024 1.68 -0.024C2.028 -0.024 2.676 -0.024 2.988 0V-0.348C2.22 -0.348 2.076 -0.348 2.076 -0.888V-3.12C2.076 -4.38 2.904 -5.052 3.648 -5.052S4.56 -4.44 4.56 -3.708V-0.888C4.56 -0.348 4.428 -0.348 3.648 -0.348V0C3.96 -0.024 4.608 -0.024 4.944 -0.024C5.292 -0.024 5.94 -0.024 6.252 0V-0.348C5.652 -0.348 5.352 -0.348 5.34 -0.708V-2.916Z' id='g0-110'/> +<path d='M2.94 1.98C2.172 1.98 2.028 1.98 2.028 1.44V-0.648C2.244 -0.348 2.736 0.12 3.504 0.12C4.884 0.12 6.096 -1.044 6.096 -2.592C6.096 -4.116 4.968 -5.292 3.66 -5.292C2.604 -5.292 2.04 -4.536 2.004 -4.488V-5.292L0.336 -5.16V-4.812C1.176 -4.812 1.248 -4.728 1.248 -4.2V1.44C1.248 1.98 1.116 1.98 0.336 1.98V2.328C0.648 2.304 1.296 2.304 1.632 2.304C1.98 2.304 2.628 2.304 2.94 2.328V1.98ZM2.028 -3.828C2.028 -4.056 2.028 -4.068 2.16 -4.26C2.52 -4.8 3.108 -5.028 3.564 -5.028C4.464 -5.028 5.184 -3.936 5.184 -2.592C5.184 -1.164 4.368 -0.12 3.444 -0.12C3.072 -0.12 2.724 -0.276 2.484 -0.504C2.208 -0.78 2.028 -1.02 2.028 -1.356V-3.828Z' id='g0-112'/> +<path d='M2.016 -4.824H3.708V-5.172H2.016V-7.38H1.752C1.74 -6.252 1.308 -5.1 0.216 -5.064V-4.824H1.236V-1.488C1.236 -0.156 2.124 0.12 2.76 0.12C3.516 0.12 3.912 -0.624 3.912 -1.488V-2.172H3.648V-1.512C3.648 -0.648 3.3 -0.144 2.832 -0.144C2.016 -0.144 2.016 -1.26 2.016 -1.464V-4.824Z' id='g0-116'/> +<path d='M3.648 -5.16V-4.812C4.464 -4.812 4.56 -4.728 4.56 -4.14V-1.992C4.56 -0.972 4.02 -0.12 3.12 -0.12C2.136 -0.12 2.076 -0.684 2.076 -1.32V-5.292L0.384 -5.16V-4.812C1.296 -4.812 1.296 -4.776 1.296 -3.708V-1.908C1.296 -1.164 1.296 -0.732 1.656 -0.336C1.944 -0.024 2.436 0.12 3.048 0.12C3.252 0.12 3.636 0.12 4.044 -0.228C4.392 -0.504 4.584 -0.96 4.584 -0.96V0.12L6.252 0V-0.348C5.436 -0.348 5.34 -0.432 5.34 -1.02V-5.292L3.648 -5.16Z' id='g0-117'/> +</defs> +<g id='page1'> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 23.5515 0C 23.5515 -0.123316 23.5505 -0.24663 23.5486 -0.369931C 23.5467 -0.493232 23.5437 -0.616515 23.5399 -0.73977C 23.536 -0.863025 23.5312 -0.986248 23.5253 -1.10943C 23.5195 -1.23261 23.5128 -1.35574 23.505 -1.47881C 23.4973 -1.60188 23.4886 -1.72489 23.4789 -1.84783C 23.4692 -1.97076 23.4586 -2.09362 23.447 -2.21639C 23.4354 -2.33916 23.4228 -2.46184 23.4093 -2.58441C 23.3957 -2.70698 23.3812 -2.82944 23.3658 -2.95178C 23.3503 -3.07413 23.3339 -3.19635 23.3165 -3.31843C 23.2992 -3.44052 23.2808 -3.56247 23.2615 -3.68427C 23.2422 -3.80606 23.222 -3.92771 23.2008 -4.04919C 23.1796 -4.17067 23.1574 -4.29198 23.1343 -4.41311C 23.1112 -4.53424 23.0872 -4.65519 23.0622 -4.77594C 23.0372 -4.8967 23.0112 -5.01725 22.9843 -5.1376C 22.9574 -5.25795 22.9296 -5.37808 22.9008 -5.49799C 22.872 -5.6179 22.8422 -5.73758 22.8116 -5.85702C 22.7809 -5.97646 22.7493 -6.09566 22.7168 -6.2146C 22.6842 -6.33355 22.6508 -6.45224 22.6164 -6.57066C 22.5819 -6.68908 22.5466 -6.80722 22.5104 -6.92509C 22.4741 -7.04295 22.4369 -7.16053 22.3988 -7.27781C 22.3607 -7.39509 22.3217 -7.51207 22.2817 -7.62874C 22.2418 -7.74541 22.2009 -7.86176 22.1591 -7.97778C 22.1174 -8.09381 22.0747 -8.20951 22.0311 -8.32486C 21.9875 -8.44022 21.943 -8.55523 21.8976 -8.66988C 21.8522 -8.78454 21.8059 -8.89884 21.7587 -9.01277C 21.7116 -9.1267 21.6635 -9.24025 21.6145 -9.35343C 21.5655 -9.4666 21.5157 -9.57939 21.4649 -9.69178C 21.4142 -9.80417 21.3625 -9.91616 21.31 -10.0277C 21.2575 -10.1393 21.2041 -10.2505 21.1499 -10.3612C 21.0956 -10.472 21.0405 -10.5823 20.9845 -10.6922C 20.9286 -10.802 20.8717 -10.9115 20.814 -11.0204C 20.7563 -11.1294 20.6977 -11.238 20.6383 -11.346C 20.5789 -11.4541 20.5187 -11.5617 20.4576 -11.6688C 20.3965 -11.7759 20.3345 -11.8825 20.2718 -11.9887C 20.209 -12.0948 20.1454 -12.2005 20.081 -12.3056C 20.0165 -12.4108 19.9513 -12.5154 19.8852 -12.6195C 19.8191 -12.7236 19.7522 -12.8272 19.6845 -12.9303C 19.6168 -13.0334 19.5483 -13.1359 19.479 -13.2379C 19.4097 -13.3399 19.3396 -13.4413 19.2686 -13.5422C 19.1977 -13.6431 19.126 -13.7435 19.0536 -13.8432C 18.9811 -13.943 18.9078 -14.0422 18.8338 -14.1408C 18.7597 -14.2394 18.6849 -14.3374 18.6093 -14.4349C 18.5338 -14.5323 18.4574 -14.6292 18.3803 -14.7254C 18.3032 -14.8216 18.2253 -14.9173 18.1467 -15.0123C 18.0681 -15.1073 17.9888 -15.2017 17.9087 -15.2955C 17.8286 -15.3892 17.7478 -15.4824 17.6662 -15.5749C 17.5847 -15.6674 17.5024 -15.7592 17.4194 -15.8505C 17.3364 -15.9417 17.2527 -16.0322 17.1683 -16.1221C 17.0839 -16.212 16.9988 -16.3012 16.9129 -16.3898C 16.8271 -16.4783 16.7406 -16.5662 16.6534 -16.6534C 16.5662 -16.7406 16.4783 -16.8271 16.3898 -16.9129C 16.3012 -16.9988 16.212 -17.0839 16.1221 -17.1683C 16.0322 -17.2527 15.9417 -17.3364 15.8505 -17.4194C 15.7592 -17.5024 15.6674 -17.5847 15.5749 -17.6662C 15.4824 -17.7478 15.3892 -17.8286 15.2955 -17.9087C 15.2017 -17.9888 15.1073 -18.0681 15.0123 -18.1467C 14.9173 -18.2253 14.8216 -18.3032 14.7254 -18.3803C 14.6292 -18.4574 14.5323 -18.5338 14.4349 -18.6093C 14.3374 -18.6849 14.2394 -18.7597 14.1408 -18.8338C 14.0422 -18.9078 13.943 -18.9811 13.8432 -19.0536C 13.7435 -19.126 13.6431 -19.1977 13.5422 -19.2686C 13.4413 -19.3396 13.3399 -19.4097 13.2379 -19.479C 13.1359 -19.5483 13.0334 -19.6168 12.9303 -19.6845C 12.8272 -19.7522 12.7236 -19.8191 12.6195 -19.8852C 12.5154 -19.9513 12.4108 -20.0165 12.3056 -20.081C 12.2005 -20.1454 12.0948 -20.209 11.9887 -20.2718C 11.8825 -20.3345 11.7759 -20.3965 11.6688 -20.4576C 11.5617 -20.5187 11.4541 -20.5789 11.346 -20.6383C 11.238 -20.6977 11.1294 -20.7563 11.0204 -20.814C 10.9115 -20.8717 10.802 -20.9286 10.6922 -20.9845C 10.5823 -21.0405 10.472 -21.0956 10.3612 -21.1499C 10.2505 -21.2041 10.1393 -21.2575 10.0277 -21.31C 9.91616 -21.3625 9.80417 -21.4142 9.69178 -21.4649C 9.57939 -21.5157 9.4666 -21.5655 9.35343 -21.6145C 9.24025 -21.6635 9.1267 -21.7116 9.01277 -21.7587C 8.89884 -21.8059 8.78454 -21.8522 8.66988 -21.8976C 8.55523 -21.943 8.44022 -21.9875 8.32486 -22.0311C 8.20951 -22.0747 8.09381 -22.1174 7.97778 -22.1591C 7.86176 -22.2009 7.74541 -22.2418 7.62874 -22.2817C 7.51207 -22.3217 7.39509 -22.3607 7.27781 -22.3988C 7.16053 -22.4369 7.04295 -22.4741 6.92509 -22.5104C 6.80722 -22.5466 6.68908 -22.5819 6.57066 -22.6164C 6.45224 -22.6508 6.33355 -22.6842 6.2146 -22.7168C 6.09566 -22.7493 5.97646 -22.7809 5.85702 -22.8116C 5.73758 -22.8422 5.6179 -22.872 5.49799 -22.9008C 5.37808 -22.9296 5.25795 -22.9574 5.1376 -22.9843C 5.01725 -23.0112 4.8967 -23.0372 4.77594 -23.0622C 4.65519 -23.0872 4.53424 -23.1112 4.41311 -23.1343C 4.29198 -23.1574 4.17067 -23.1796 4.04919 -23.2008C 3.92771 -23.222 3.80606 -23.2422 3.68427 -23.2615C 3.56247 -23.2808 3.44052 -23.2992 3.31843 -23.3165C 3.19635 -23.3339 3.07413 -23.3503 2.95178 -23.3658C 2.82944 -23.3812 2.70698 -23.3957 2.58441 -23.4093C 2.46184 -23.4228 2.33916 -23.4354 2.21639 -23.447C 2.09362 -23.4586 1.97076 -23.4692 1.84783 -23.4789C 1.72489 -23.4886 1.60188 -23.4973 1.47881 -23.505C 1.35574 -23.5128 1.23261 -23.5195 1.10943 -23.5253C 0.986248 -23.5312 0.863025 -23.536 0.73977 -23.5399C 0.616515 -23.5437 0.493232 -23.5467 0.369931 -23.5486C 0.24663 -23.5505 0.123316 -23.5515 1.44207e-15 -23.5515C -0.123316 -23.5515 -0.24663 -23.5505 -0.369931 -23.5486C -0.493232 -23.5467 -0.616515 -23.5437 -0.73977 -23.5399C -0.863025 -23.536 -0.986248 -23.5312 -1.10943 -23.5253C -1.23261 -23.5195 -1.35574 -23.5128 -1.47881 -23.505C -1.60188 -23.4973 -1.72489 -23.4886 -1.84783 -23.4789C -1.97076 -23.4692 -2.09362 -23.4586 -2.21639 -23.447C -2.33916 -23.4354 -2.46184 -23.4228 -2.58441 -23.4093C -2.70698 -23.3957 -2.82944 -23.3812 -2.95178 -23.3658C -3.07413 -23.3503 -3.19635 -23.3339 -3.31843 -23.3165C -3.44052 -23.2992 -3.56247 -23.2808 -3.68427 -23.2615C -3.80606 -23.2422 -3.92771 -23.222 -4.04919 -23.2008C -4.17067 -23.1796 -4.29198 -23.1574 -4.41311 -23.1343C -4.53424 -23.1112 -4.65519 -23.0872 -4.77594 -23.0622C -4.8967 -23.0372 -5.01725 -23.0112 -5.1376 -22.9843C -5.25795 -22.9574 -5.37808 -22.9296 -5.49799 -22.9008C -5.6179 -22.872 -5.73758 -22.8422 -5.85702 -22.8116C -5.97646 -22.7809 -6.09566 -22.7493 -6.2146 -22.7168C -6.33355 -22.6842 -6.45224 -22.6508 -6.57066 -22.6164C -6.68908 -22.5819 -6.80722 -22.5466 -6.92509 -22.5104C -7.04295 -22.4741 -7.16053 -22.4369 -7.27781 -22.3988C -7.39509 -22.3607 -7.51207 -22.3217 -7.62874 -22.2817C -7.74541 -22.2418 -7.86176 -22.2009 -7.97778 -22.1591C -8.09381 -22.1174 -8.20951 -22.0747 -8.32486 -22.0311C -8.44022 -21.9875 -8.55523 -21.943 -8.66988 -21.8976C -8.78454 -21.8522 -8.89884 -21.8059 -9.01277 -21.7587C -9.1267 -21.7116 -9.24025 -21.6635 -9.35343 -21.6145C -9.4666 -21.5655 -9.57939 -21.5157 -9.69178 -21.4649C -9.80417 -21.4142 -9.91616 -21.3625 -10.0277 -21.31C -10.1393 -21.2575 -10.2505 -21.2041 -10.3612 -21.1499C -10.472 -21.0956 -10.5823 -21.0405 -10.6922 -20.9845C -10.802 -20.9286 -10.9115 -20.8717 -11.0204 -20.814C -11.1294 -20.7563 -11.238 -20.6977 -11.346 -20.6383C -11.4541 -20.5789 -11.5617 -20.5187 -11.6688 -20.4576C -11.7759 -20.3965 -11.8825 -20.3345 -11.9887 -20.2718C -12.0948 -20.209 -12.2005 -20.1454 -12.3056 -20.081C -12.4108 -20.0165 -12.5154 -19.9513 -12.6195 -19.8852C -12.7236 -19.8191 -12.8272 -19.7522 -12.9303 -19.6845C -13.0334 -19.6168 -13.1359 -19.5483 -13.2379 -19.479C -13.3399 -19.4097 -13.4413 -19.3396 -13.5422 -19.2686C -13.6431 -19.1977 -13.7435 -19.126 -13.8432 -19.0536C -13.943 -18.9811 -14.0422 -18.9078 -14.1408 -18.8338C -14.2394 -18.7597 -14.3374 -18.6849 -14.4349 -18.6093C -14.5323 -18.5338 -14.6292 -18.4574 -14.7254 -18.3803C -14.8216 -18.3032 -14.9173 -18.2253 -15.0123 -18.1467C -15.1073 -18.0681 -15.2017 -17.9888 -15.2955 -17.9087C -15.3892 -17.8286 -15.4824 -17.7478 -15.5749 -17.6662C -15.6674 -17.5847 -15.7592 -17.5024 -15.8505 -17.4194C -15.9417 -17.3364 -16.0322 -17.2527 -16.1221 -17.1683C -16.212 -17.0839 -16.3012 -16.9988 -16.3898 -16.9129C -16.4783 -16.8271 -16.5662 -16.7406 -16.6534 -16.6534C -16.7406 -16.5662 -16.8271 -16.4783 -16.9129 -16.3898C -16.9988 -16.3012 -17.0839 -16.212 -17.1683 -16.1221C -17.2527 -16.0322 -17.3364 -15.9417 -17.4194 -15.8505C -17.5024 -15.7592 -17.5847 -15.6674 -17.6662 -15.5749C -17.7478 -15.4824 -17.8286 -15.3892 -17.9087 -15.2955C -17.9888 -15.2017 -18.0681 -15.1073 -18.1467 -15.0123C -18.2253 -14.9173 -18.3032 -14.8216 -18.3803 -14.7254C -18.4574 -14.6292 -18.5338 -14.5323 -18.6093 -14.4349C -18.6849 -14.3374 -18.7597 -14.2394 -18.8338 -14.1408C -18.9078 -14.0422 -18.9811 -13.943 -19.0536 -13.8432C -19.126 -13.7435 -19.1977 -13.6431 -19.2686 -13.5422C -19.3396 -13.4413 -19.4097 -13.3399 -19.479 -13.2379C -19.5483 -13.1359 -19.6168 -13.0334 -19.6845 -12.9303C -19.7522 -12.8272 -19.8191 -12.7236 -19.8852 -12.6195C -19.9513 -12.5154 -20.0165 -12.4108 -20.081 -12.3056C -20.1454 -12.2005 -20.209 -12.0948 -20.2718 -11.9887C -20.3345 -11.8825 -20.3965 -11.7759 -20.4576 -11.6688C -20.5187 -11.5617 -20.5789 -11.4541 -20.6383 -11.346C -20.6977 -11.238 -20.7563 -11.1294 -20.814 -11.0204C -20.8717 -10.9115 -20.9286 -10.802 -20.9845 -10.6922C -21.0405 -10.5823 -21.0956 -10.472 -21.1499 -10.3612C -21.2041 -10.2505 -21.2575 -10.1393 -21.31 -10.0277C -21.3625 -9.91616 -21.4142 -9.80417 -21.4649 -9.69178C -21.5157 -9.57939 -21.5655 -9.4666 -21.6145 -9.35343C -21.6635 -9.24025 -21.7116 -9.1267 -21.7587 -9.01277C -21.8059 -8.89884 -21.8522 -8.78454 -21.8976 -8.66988C -21.943 -8.55523 -21.9875 -8.44022 -22.0311 -8.32486C -22.0747 -8.20951 -22.1174 -8.09381 -22.1591 -7.97778C -22.2009 -7.86176 -22.2418 -7.74541 -22.2817 -7.62874C -22.3217 -7.51207 -22.3607 -7.39509 -22.3988 -7.27781C -22.4369 -7.16053 -22.4741 -7.04295 -22.5104 -6.92509C -22.5466 -6.80722 -22.5819 -6.68908 -22.6164 -6.57066C -22.6508 -6.45224 -22.6842 -6.33355 -22.7168 -6.2146C -22.7493 -6.09566 -22.7809 -5.97646 -22.8116 -5.85702C -22.8422 -5.73758 -22.872 -5.6179 -22.9008 -5.49799C -22.9296 -5.37808 -22.9574 -5.25795 -22.9843 -5.1376C -23.0112 -5.01725 -23.0372 -4.8967 -23.0622 -4.77594C -23.0872 -4.65519 -23.1112 -4.53424 -23.1343 -4.41311C -23.1574 -4.29198 -23.1796 -4.17067 -23.2008 -4.04919C -23.222 -3.92771 -23.2422 -3.80606 -23.2615 -3.68427C -23.2808 -3.56247 -23.2992 -3.44052 -23.3165 -3.31843C -23.3339 -3.19635 -23.3503 -3.07413 -23.3658 -2.95178C -23.3812 -2.82944 -23.3957 -2.70698 -23.4093 -2.58441C -23.4228 -2.46184 -23.4354 -2.33916 -23.447 -2.21639C -23.4586 -2.09362 -23.4692 -1.97076 -23.4789 -1.84783C -23.4886 -1.72489 -23.4973 -1.60188 -23.505 -1.47881C -23.5128 -1.35574 -23.5195 -1.23261 -23.5253 -1.10943C -23.5312 -0.986248 -23.536 -0.863025 -23.5399 -0.73977C -23.5437 -0.616515 -23.5467 -0.493232 -23.5486 -0.369931C -23.5505 -0.24663 -23.5515 -0.123316 -23.5515 -2.88413e-15C -23.5515 0.123316 -23.5505 0.24663 -23.5486 0.369931C -23.5467 0.493232 -23.5437 0.616515 -23.5399 0.73977C -23.536 0.863025 -23.5312 0.986248 -23.5253 1.10943C -23.5195 1.23261 -23.5128 1.35574 -23.505 1.47881C -23.4973 1.60188 -23.4886 1.72489 -23.4789 1.84783C -23.4692 1.97076 -23.4586 2.09362 -23.447 2.21639C -23.4354 2.33916 -23.4228 2.46184 -23.4093 2.58441C -23.3957 2.70698 -23.3812 2.82944 -23.3658 2.95178C -23.3503 3.07413 -23.3339 3.19635 -23.3165 3.31843C -23.2992 3.44052 -23.2808 3.56247 -23.2615 3.68427C -23.2422 3.80606 -23.222 3.92771 -23.2008 4.04919C -23.1796 4.17067 -23.1574 4.29198 -23.1343 4.41311C -23.1112 4.53424 -23.0872 4.65519 -23.0622 4.77594C -23.0372 4.8967 -23.0112 5.01725 -22.9843 5.1376C -22.9574 5.25795 -22.9296 5.37808 -22.9008 5.49799C -22.872 5.6179 -22.8422 5.73758 -22.8116 5.85702C -22.7809 5.97646 -22.7493 6.09566 -22.7168 6.2146C -22.6842 6.33355 -22.6508 6.45224 -22.6164 6.57066C -22.5819 6.68908 -22.5466 6.80722 -22.5104 6.92509C -22.4741 7.04295 -22.4369 7.16053 -22.3988 7.27781C -22.3607 7.39509 -22.3217 7.51207 -22.2817 7.62874C -22.2418 7.74541 -22.2009 7.86176 -22.1591 7.97778C -22.1174 8.09381 -22.0747 8.20951 -22.0311 8.32486C -21.9875 8.44022 -21.943 8.55523 -21.8976 8.66988C -21.8522 8.78454 -21.8059 8.89884 -21.7587 9.01277C -21.7116 9.1267 -21.6635 9.24025 -21.6145 9.35343C -21.5655 9.4666 -21.5157 9.57939 -21.4649 9.69178C -21.4142 9.80417 -21.3625 9.91616 -21.31 10.0277C -21.2575 10.1393 -21.2041 10.2505 -21.1499 10.3612C -21.0956 10.472 -21.0405 10.5823 -20.9845 10.6922C -20.9286 10.802 -20.8717 10.9115 -20.814 11.0204C -20.7563 11.1294 -20.6977 11.238 -20.6383 11.346C -20.5789 11.4541 -20.5187 11.5617 -20.4576 11.6688C -20.3965 11.7759 -20.3345 11.8825 -20.2718 11.9887C -20.209 12.0948 -20.1454 12.2005 -20.081 12.3056C -20.0165 12.4108 -19.9513 12.5154 -19.8852 12.6195C -19.8191 12.7236 -19.7522 12.8272 -19.6845 12.9303C -19.6168 13.0334 -19.5483 13.1359 -19.479 13.2379C -19.4097 13.3399 -19.3396 13.4413 -19.2686 13.5422C -19.1977 13.6431 -19.126 13.7435 -19.0536 13.8432C -18.9811 13.943 -18.9078 14.0422 -18.8338 14.1408C -18.7597 14.2394 -18.6849 14.3374 -18.6093 14.4349C -18.5338 14.5323 -18.4574 14.6292 -18.3803 14.7254C -18.3032 14.8216 -18.2253 14.9173 -18.1467 15.0123C -18.0681 15.1073 -17.9888 15.2017 -17.9087 15.2955C -17.8286 15.3892 -17.7478 15.4824 -17.6662 15.5749C -17.5847 15.6674 -17.5024 15.7592 -17.4194 15.8505C -17.3364 15.9417 -17.2527 16.0322 -17.1683 16.1221C -17.0839 16.212 -16.9988 16.3012 -16.9129 16.3898C -16.8271 16.4783 -16.7406 16.5662 -16.6534 16.6534C -16.5662 16.7406 -16.4783 16.8271 -16.3898 16.9129C -16.3012 16.9988 -16.212 17.0839 -16.1221 17.1683C -16.0322 17.2527 -15.9417 17.3364 -15.8505 17.4194C -15.7592 17.5024 -15.6674 17.5847 -15.5749 17.6662C -15.4824 17.7478 -15.3892 17.8286 -15.2955 17.9087C -15.2017 17.9888 -15.1073 18.0681 -15.0123 18.1467C -14.9173 18.2253 -14.8216 18.3032 -14.7254 18.3803C -14.6292 18.4574 -14.5323 18.5338 -14.4349 18.6093C -14.3374 18.6849 -14.2394 18.7597 -14.1408 18.8338C -14.0422 18.9078 -13.943 18.9811 -13.8432 19.0536C -13.7435 19.126 -13.6431 19.1977 -13.5422 19.2686C -13.4413 19.3396 -13.3399 19.4097 -13.2379 19.479C -13.1359 19.5483 -13.0334 19.6168 -12.9303 19.6845C -12.8272 19.7522 -12.7236 19.8191 -12.6195 19.8852C -12.5154 19.9513 -12.4108 20.0165 -12.3056 20.081C -12.2005 20.1454 -12.0948 20.209 -11.9887 20.2718C -11.8825 20.3345 -11.7759 20.3965 -11.6688 20.4576C -11.5617 20.5187 -11.4541 20.5789 -11.346 20.6383C -11.238 20.6977 -11.1294 20.7563 -11.0204 20.814C -10.9115 20.8717 -10.802 20.9286 -10.6922 20.9845C -10.5823 21.0405 -10.472 21.0956 -10.3612 21.1499C -10.2505 21.2041 -10.1393 21.2575 -10.0277 21.31C -9.91616 21.3625 -9.80417 21.4142 -9.69178 21.4649C -9.57939 21.5157 -9.4666 21.5655 -9.35343 21.6145C -9.24025 21.6635 -9.1267 21.7116 -9.01277 21.7587C -8.89884 21.8059 -8.78454 21.8522 -8.66988 21.8976C -8.55523 21.943 -8.44022 21.9875 -8.32486 22.0311C -8.20951 22.0747 -8.09381 22.1174 -7.97778 22.1591C -7.86176 22.2009 -7.74541 22.2418 -7.62874 22.2817C -7.51207 22.3217 -7.39509 22.3607 -7.27781 22.3988C -7.16053 22.4369 -7.04295 22.4741 -6.92509 22.5104C -6.80722 22.5466 -6.68908 22.5819 -6.57066 22.6164C -6.45224 22.6508 -6.33355 22.6842 -6.2146 22.7168C -6.09566 22.7493 -5.97646 22.7809 -5.85702 22.8116C -5.73758 22.8422 -5.6179 22.872 -5.49799 22.9008C -5.37808 22.9296 -5.25795 22.9574 -5.1376 22.9843C -5.01725 23.0112 -4.8967 23.0372 -4.77594 23.0622C -4.65519 23.0872 -4.53424 23.1112 -4.41311 23.1343C -4.29198 23.1574 -4.17067 23.1796 -4.04919 23.2008C -3.92771 23.222 -3.80606 23.2422 -3.68427 23.2615C -3.56247 23.2808 -3.44052 23.2992 -3.31843 23.3165C -3.19635 23.3339 -3.07413 23.3503 -2.95178 23.3658C -2.82944 23.3812 -2.70698 23.3957 -2.58441 23.4093C -2.46184 23.4228 -2.33916 23.4354 -2.21639 23.447C -2.09362 23.4586 -1.97076 23.4692 -1.84783 23.4789C -1.72489 23.4886 -1.60188 23.4973 -1.47881 23.505C -1.35574 23.5128 -1.23261 23.5195 -1.10943 23.5253C -0.986248 23.5312 -0.863025 23.536 -0.73977 23.5399C -0.616515 23.5437 -0.493232 23.5467 -0.369931 23.5486C -0.24663 23.5505 -0.123316 23.5515 -4.3262e-15 23.5515C 0.123316 23.5515 0.24663 23.5505 0.369931 23.5486C 0.493232 23.5467 0.616515 23.5437 0.73977 23.5399C 0.863025 23.536 0.986248 23.5312 1.10943 23.5253C 1.23261 23.5195 1.35574 23.5128 1.47881 23.505C 1.60188 23.4973 1.72489 23.4886 1.84783 23.4789C 1.97076 23.4692 2.09362 23.4586 2.21639 23.447C 2.33916 23.4354 2.46184 23.4228 2.58441 23.4093C 2.70698 23.3957 2.82944 23.3812 2.95178 23.3658C 3.07413 23.3503 3.19635 23.3339 3.31843 23.3165C 3.44052 23.2992 3.56247 23.2808 3.68427 23.2615C 3.80606 23.2422 3.92771 23.222 4.04919 23.2008C 4.17067 23.1796 4.29198 23.1574 4.41311 23.1343C 4.53424 23.1112 4.65519 23.0872 4.77594 23.0622C 4.8967 23.0372 5.01725 23.0112 5.1376 22.9843C 5.25795 22.9574 5.37808 22.9296 5.49799 22.9008C 5.6179 22.872 5.73758 22.8422 5.85702 22.8116C 5.97646 22.7809 6.09566 22.7493 6.2146 22.7168C 6.33355 22.6842 6.45224 22.6508 6.57066 22.6164C 6.68908 22.5819 6.80722 22.5466 6.92509 22.5104C 7.04295 22.4741 7.16053 22.4369 7.27781 22.3988C 7.39509 22.3607 7.51207 22.3217 7.62874 22.2817C 7.74541 22.2418 7.86176 22.2009 7.97778 22.1591C 8.09381 22.1174 8.20951 22.0747 8.32486 22.0311C 8.44022 21.9875 8.55523 21.943 8.66988 21.8976C 8.78454 21.8522 8.89884 21.8059 9.01277 21.7587C 9.1267 21.7116 9.24025 21.6635 9.35343 21.6145C 9.4666 21.5655 9.57939 21.5157 9.69178 21.4649C 9.80417 21.4142 9.91616 21.3625 10.0277 21.31C 10.1393 21.2575 10.2505 21.2041 10.3612 21.1499C 10.472 21.0956 10.5823 21.0405 10.6922 20.9845C 10.802 20.9286 10.9115 20.8717 11.0204 20.814C 11.1294 20.7563 11.238 20.6977 11.346 20.6383C 11.4541 20.5789 11.5617 20.5187 11.6688 20.4576C 11.7759 20.3965 11.8825 20.3345 11.9887 20.2718C 12.0948 20.209 12.2005 20.1454 12.3056 20.081C 12.4108 20.0165 12.5154 19.9513 12.6195 19.8852C 12.7236 19.8191 12.8272 19.7522 12.9303 19.6845C 13.0334 19.6168 13.1359 19.5483 13.2379 19.479C 13.3399 19.4097 13.4413 19.3396 13.5422 19.2686C 13.6431 19.1977 13.7435 19.126 13.8432 19.0536C 13.943 18.9811 14.0422 18.9078 14.1408 18.8338C 14.2394 18.7597 14.3374 18.6849 14.4349 18.6093C 14.5323 18.5338 14.6292 18.4574 14.7254 18.3803C 14.8216 18.3032 14.9173 18.2253 15.0123 18.1467C 15.1073 18.0681 15.2017 17.9888 15.2955 17.9087C 15.3892 17.8286 15.4824 17.7478 15.5749 17.6662C 15.6674 17.5847 15.7592 17.5024 15.8505 17.4194C 15.9417 17.3364 16.0322 17.2527 16.1221 17.1683C 16.212 17.0839 16.3012 16.9988 16.3898 16.9129C 16.4783 16.8271 16.5662 16.7406 16.6534 16.6534C 16.7406 16.5662 16.8271 16.4783 16.9129 16.3898C 16.9988 16.3012 17.0839 16.212 17.1683 16.1221C 17.2527 16.0322 17.3364 15.9417 17.4194 15.8505C 17.5024 15.7592 17.5847 15.6674 17.6662 15.5749C 17.7478 15.4824 17.8286 15.3892 17.9087 15.2955C 17.9888 15.2017 18.0681 15.1073 18.1467 15.0123C 18.2253 14.9173 18.3032 14.8216 18.3803 14.7254C 18.4574 14.6292 18.5338 14.5323 18.6093 14.4349C 18.6849 14.3374 18.7597 14.2394 18.8338 14.1408C 18.9078 14.0422 18.9811 13.943 19.0536 13.8432C 19.126 13.7435 19.1977 13.6431 19.2686 13.5422C 19.3396 13.4413 19.4097 13.3399 19.479 13.2379C 19.5483 13.1359 19.6168 13.0334 19.6845 12.9303C 19.7522 12.8272 19.8191 12.7236 19.8852 12.6195C 19.9513 12.5154 20.0165 12.4108 20.081 12.3056C 20.1454 12.2005 20.209 12.0948 20.2718 11.9887C 20.3345 11.8825 20.3965 11.7759 20.4576 11.6688C 20.5187 11.5617 20.5789 11.4541 20.6383 11.346C 20.6977 11.238 20.7563 11.1294 20.814 11.0204C 20.8717 10.9115 20.9286 10.802 20.9845 10.6922C 21.0405 10.5823 21.0956 10.472 21.1499 10.3612C 21.2041 10.2505 21.2575 10.1393 21.31 10.0277C 21.3625 9.91616 21.4142 9.80417 21.4649 9.69178C 21.5157 9.57939 21.5655 9.4666 21.6145 9.35343C 21.6635 9.24025 21.7116 9.1267 21.7587 9.01277C 21.8059 8.89884 21.8522 8.78454 21.8976 8.66988C 21.943 8.55523 21.9875 8.44022 22.0311 8.32486C 22.0747 8.20951 22.1174 8.09381 22.1591 7.97778C 22.2009 7.86176 22.2418 7.74541 22.2817 7.62874C 22.3217 7.51207 22.3607 7.39509 22.3988 7.27781C 22.4369 7.16053 22.4741 7.04295 22.5104 6.92509C 22.5466 6.80722 22.5819 6.68908 22.6164 6.57066C 22.6508 6.45224 22.6842 6.33355 22.7168 6.2146C 22.7493 6.09566 22.7809 5.97646 22.8116 5.85702C 22.8422 5.73758 22.872 5.6179 22.9008 5.49799C 22.9296 5.37808 22.9574 5.25795 22.9843 5.1376C 23.0112 5.01725 23.0372 4.8967 23.0622 4.77594C 23.0872 4.65519 23.1112 4.53424 23.1343 4.41311C 23.1574 4.29198 23.1796 4.17067 23.2008 4.04919C 23.222 3.92771 23.2422 3.80606 23.2615 3.68427C 23.2808 3.56247 23.2992 3.44052 23.3165 3.31843C 23.3339 3.19635 23.3503 3.07413 23.3658 2.95178C 23.3812 2.82944 23.3957 2.70698 23.4093 2.58441C 23.4228 2.46184 23.4354 2.33916 23.447 2.21639C 23.4586 2.09362 23.4692 1.97076 23.4789 1.84783C 23.4886 1.72489 23.4973 1.60188 23.505 1.47881C 23.5128 1.35574 23.5195 1.23261 23.5253 1.10943C 23.5312 0.986248 23.536 0.863025 23.5399 0.73977C 23.5437 0.616515 23.5467 0.493232 23.5486 0.369931C 23.5505 0.24663 23.5515 0.123316 23.5515 0Z' fill='none' stroke='#c00000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 23.5515 -70.6545C 23.5515 -70.7778 23.5505 -70.9011 23.5486 -71.0244C 23.5467 -71.1477 23.5437 -71.271 23.5399 -71.3943C 23.536 -71.5175 23.5312 -71.6407 23.5253 -71.7639C 23.5195 -71.8871 23.5128 -72.0102 23.505 -72.1333C 23.4973 -72.2564 23.4886 -72.3794 23.4789 -72.5023C 23.4692 -72.6252 23.4586 -72.7481 23.447 -72.8709C 23.4354 -72.9936 23.4228 -73.1163 23.4093 -73.2389C 23.3957 -73.3615 23.3812 -73.4839 23.3658 -73.6063C 23.3503 -73.7286 23.3339 -73.8508 23.3165 -73.9729C 23.2992 -74.095 23.2808 -74.217 23.2615 -74.3387C 23.2422 -74.4605 23.222 -74.5822 23.2008 -74.7037C 23.1796 -74.8252 23.1574 -74.9465 23.1343 -75.0676C 23.1112 -75.1887 23.0872 -75.3097 23.0622 -75.4304C 23.0372 -75.5512 23.0112 -75.6717 22.9843 -75.7921C 22.9574 -75.9124 22.9296 -76.0326 22.9008 -76.1525C 22.872 -76.2724 22.8422 -76.3921 22.8116 -76.5115C 22.7809 -76.6309 22.7493 -76.7501 22.7168 -76.8691C 22.6842 -76.988 22.6508 -77.1067 22.6164 -77.2251C 22.5819 -77.3436 22.5466 -77.4617 22.5104 -77.5796C 22.4741 -77.6974 22.4369 -77.815 22.3988 -77.9323C 22.3607 -78.0496 22.3217 -78.1666 22.2817 -78.2832C 22.2418 -78.3999 22.2009 -78.5162 22.1591 -78.6323C 22.1174 -78.7483 22.0747 -78.864 22.0311 -78.9793C 21.9875 -79.0947 21.943 -79.2097 21.8976 -79.3244C 21.8522 -79.439 21.8059 -79.5533 21.7587 -79.6673C 21.7116 -79.7812 21.6635 -79.8947 21.6145 -80.0079C 21.5655 -80.1211 21.5157 -80.2339 21.4649 -80.3463C 21.4142 -80.4587 21.3625 -80.5706 21.31 -80.6822C 21.2575 -80.7938 21.2041 -80.905 21.1499 -81.0157C 21.0956 -81.1264 21.0405 -81.2368 20.9845 -81.3466C 20.9286 -81.4565 20.8717 -81.5659 20.814 -81.6749C 20.7563 -81.7839 20.6977 -81.8924 20.6383 -82.0005C 20.5789 -82.1086 20.5187 -82.2162 20.4576 -82.3233C 20.3965 -82.4304 20.3345 -82.537 20.2718 -82.6432C 20.209 -82.7493 20.1454 -82.855 20.081 -82.9601C 20.0165 -83.0652 19.9513 -83.1699 19.8852 -83.274C 19.8191 -83.3781 19.7522 -83.4817 19.6845 -83.5848C 19.6168 -83.6879 19.5483 -83.7904 19.479 -83.8924C 19.4097 -83.9944 19.3396 -84.0958 19.2686 -84.1967C 19.1977 -84.2976 19.126 -84.3979 19.0536 -84.4977C 18.9811 -84.5975 18.9078 -84.6967 18.8338 -84.7953C 18.7597 -84.8939 18.6849 -84.9919 18.6093 -85.0894C 18.5338 -85.1868 18.4574 -85.2836 18.3803 -85.3799C 18.3032 -85.4761 18.2253 -85.5718 18.1467 -85.6668C 18.0681 -85.7618 17.9888 -85.8562 17.9087 -85.95C 17.8286 -86.0437 17.7478 -86.1369 17.6662 -86.2294C 17.5847 -86.3219 17.5024 -86.4137 17.4194 -86.5049C 17.3364 -86.5961 17.2527 -86.6867 17.1683 -86.7766C 17.0839 -86.8665 16.9988 -86.9557 16.9129 -87.0443C 16.8271 -87.1328 16.7406 -87.2207 16.6534 -87.3079C 16.5662 -87.3951 16.4783 -87.4816 16.3898 -87.5674C 16.3012 -87.6532 16.212 -87.7384 16.1221 -87.8228C 16.0322 -87.9072 15.9417 -87.9909 15.8505 -88.0739C 15.7592 -88.1569 15.6674 -88.2392 15.5749 -88.3207C 15.4824 -88.4023 15.3892 -88.4831 15.2955 -88.5632C 15.2017 -88.6433 15.1073 -88.7226 15.0123 -88.8012C 14.9173 -88.8798 14.8216 -88.9577 14.7254 -89.0348C 14.6292 -89.1119 14.5323 -89.1882 14.4349 -89.2638C 14.3374 -89.3394 14.2394 -89.4142 14.1408 -89.4883C 14.0422 -89.5623 13.943 -89.6356 13.8432 -89.708C 13.7435 -89.7805 13.6431 -89.8522 13.5422 -89.9231C 13.4413 -89.994 13.3399 -90.0642 13.2379 -90.1335C 13.1359 -90.2028 13.0334 -90.2713 12.9303 -90.339C 12.8272 -90.4067 12.7236 -90.4736 12.6195 -90.5397C 12.5154 -90.6057 12.4108 -90.671 12.3056 -90.7354C 12.2005 -90.7999 12.0948 -90.8635 11.9887 -90.9262C 11.8825 -90.989 11.7759 -91.051 11.6688 -91.1121C 11.5617 -91.1732 11.4541 -91.2334 11.346 -91.2928C 11.238 -91.3522 11.1294 -91.4108 11.0204 -91.4685C 10.9115 -91.5262 10.802 -91.583 10.6922 -91.639C 10.5823 -91.695 10.472 -91.7501 10.3612 -91.8044C 10.2505 -91.8586 10.1393 -91.912 10.0277 -91.9645C 9.91616 -92.017 9.80417 -92.0686 9.69178 -92.1194C 9.57939 -92.1701 9.4666 -92.22 9.35343 -92.269C 9.24025 -92.318 9.1267 -92.366 9.01277 -92.4132C 8.89884 -92.4604 8.78454 -92.5067 8.66988 -92.5521C 8.55523 -92.5975 8.44022 -92.642 8.32486 -92.6856C 8.20951 -92.7292 8.09381 -92.7719 7.97778 -92.8136C 7.86176 -92.8554 7.74541 -92.8963 7.62874 -92.9362C 7.51207 -92.9762 7.39509 -93.0152 7.27781 -93.0533C 7.16053 -93.0914 7.04295 -93.1286 6.92509 -93.1648C 6.80722 -93.2011 6.68908 -93.2364 6.57066 -93.2708C 6.45224 -93.3052 6.33355 -93.3387 6.2146 -93.3713C 6.09566 -93.4038 5.97646 -93.4354 5.85702 -93.4661C 5.73758 -93.4967 5.6179 -93.5265 5.49799 -93.5552C 5.37808 -93.584 5.25795 -93.6119 5.1376 -93.6388C 5.01725 -93.6657 4.8967 -93.6916 4.77594 -93.7166C 4.65519 -93.7417 4.53424 -93.7657 4.41311 -93.7888C 4.29198 -93.8119 4.17067 -93.8341 4.04919 -93.8553C 3.92771 -93.8765 3.80606 -93.8967 3.68427 -93.916C 3.56247 -93.9353 3.44052 -93.9536 3.31843 -93.971C 3.19635 -93.9884 3.07413 -94.0048 2.95178 -94.0203C 2.82944 -94.0357 2.70698 -94.0502 2.58441 -94.0637C 2.46184 -94.0773 2.33916 -94.0899 2.21639 -94.1015C 2.09362 -94.1131 1.97076 -94.1237 1.84783 -94.1334C 1.72489 -94.1431 1.60188 -94.1518 1.47881 -94.1595C 1.35574 -94.1672 1.23261 -94.174 1.10943 -94.1798C 0.986248 -94.1856 0.863025 -94.1905 0.73977 -94.1944C 0.616515 -94.1982 0.493232 -94.2011 0.369931 -94.2031C 0.24663 -94.205 0.123316 -94.206 1.44207e-15 -94.206C -0.123316 -94.206 -0.24663 -94.205 -0.369931 -94.2031C -0.493232 -94.2011 -0.616515 -94.1982 -0.73977 -94.1944C -0.863025 -94.1905 -0.986248 -94.1856 -1.10943 -94.1798C -1.23261 -94.174 -1.35574 -94.1672 -1.47881 -94.1595C -1.60188 -94.1518 -1.72489 -94.1431 -1.84783 -94.1334C -1.97076 -94.1237 -2.09362 -94.1131 -2.21639 -94.1015C -2.33916 -94.0899 -2.46184 -94.0773 -2.58441 -94.0637C -2.70698 -94.0502 -2.82944 -94.0357 -2.95178 -94.0203C -3.07413 -94.0048 -3.19635 -93.9884 -3.31843 -93.971C -3.44052 -93.9536 -3.56247 -93.9353 -3.68427 -93.916C -3.80606 -93.8967 -3.92771 -93.8765 -4.04919 -93.8553C -4.17067 -93.8341 -4.29198 -93.8119 -4.41311 -93.7888C -4.53424 -93.7657 -4.65519 -93.7417 -4.77594 -93.7166C -4.8967 -93.6916 -5.01725 -93.6657 -5.1376 -93.6388C -5.25795 -93.6119 -5.37808 -93.584 -5.49799 -93.5552C -5.6179 -93.5265 -5.73758 -93.4967 -5.85702 -93.4661C -5.97646 -93.4354 -6.09566 -93.4038 -6.2146 -93.3713C -6.33355 -93.3387 -6.45224 -93.3052 -6.57066 -93.2708C -6.68908 -93.2364 -6.80722 -93.2011 -6.92509 -93.1648C -7.04295 -93.1286 -7.16053 -93.0914 -7.27781 -93.0533C -7.39509 -93.0152 -7.51207 -92.9762 -7.62874 -92.9362C -7.74541 -92.8963 -7.86176 -92.8554 -7.97778 -92.8136C -8.09381 -92.7719 -8.20951 -92.7292 -8.32486 -92.6856C -8.44022 -92.642 -8.55523 -92.5975 -8.66988 -92.5521C -8.78454 -92.5067 -8.89884 -92.4604 -9.01277 -92.4132C -9.1267 -92.366 -9.24025 -92.318 -9.35343 -92.269C -9.4666 -92.22 -9.57939 -92.1701 -9.69178 -92.1194C -9.80417 -92.0686 -9.91616 -92.017 -10.0277 -91.9645C -10.1393 -91.912 -10.2505 -91.8586 -10.3612 -91.8044C -10.472 -91.7501 -10.5823 -91.695 -10.6922 -91.639C -10.802 -91.583 -10.9115 -91.5262 -11.0204 -91.4685C -11.1294 -91.4108 -11.238 -91.3522 -11.346 -91.2928C -11.4541 -91.2334 -11.5617 -91.1732 -11.6688 -91.1121C -11.7759 -91.051 -11.8825 -90.989 -11.9887 -90.9262C -12.0948 -90.8635 -12.2005 -90.7999 -12.3056 -90.7354C -12.4108 -90.671 -12.5154 -90.6057 -12.6195 -90.5397C -12.7236 -90.4736 -12.8272 -90.4067 -12.9303 -90.339C -13.0334 -90.2713 -13.1359 -90.2028 -13.2379 -90.1335C -13.3399 -90.0642 -13.4413 -89.994 -13.5422 -89.9231C -13.6431 -89.8522 -13.7435 -89.7805 -13.8432 -89.708C -13.943 -89.6356 -14.0422 -89.5623 -14.1408 -89.4883C -14.2394 -89.4142 -14.3374 -89.3394 -14.4349 -89.2638C -14.5323 -89.1882 -14.6292 -89.1119 -14.7254 -89.0348C -14.8216 -88.9577 -14.9173 -88.8798 -15.0123 -88.8012C -15.1073 -88.7226 -15.2017 -88.6433 -15.2955 -88.5632C -15.3892 -88.4831 -15.4824 -88.4023 -15.5749 -88.3207C -15.6674 -88.2392 -15.7592 -88.1569 -15.8505 -88.0739C -15.9417 -87.9909 -16.0322 -87.9072 -16.1221 -87.8228C -16.212 -87.7384 -16.3012 -87.6532 -16.3898 -87.5674C -16.4783 -87.4816 -16.5662 -87.3951 -16.6534 -87.3079C -16.7406 -87.2207 -16.8271 -87.1328 -16.9129 -87.0443C -16.9988 -86.9557 -17.0839 -86.8665 -17.1683 -86.7766C -17.2527 -86.6867 -17.3364 -86.5961 -17.4194 -86.5049C -17.5024 -86.4137 -17.5847 -86.3219 -17.6662 -86.2294C -17.7478 -86.1369 -17.8286 -86.0437 -17.9087 -85.95C -17.9888 -85.8562 -18.0681 -85.7618 -18.1467 -85.6668C -18.2253 -85.5718 -18.3032 -85.4761 -18.3803 -85.3799C -18.4574 -85.2836 -18.5338 -85.1868 -18.6093 -85.0894C -18.6849 -84.9919 -18.7597 -84.8939 -18.8338 -84.7953C -18.9078 -84.6967 -18.9811 -84.5975 -19.0536 -84.4977C -19.126 -84.3979 -19.1977 -84.2976 -19.2686 -84.1967C -19.3396 -84.0958 -19.4097 -83.9944 -19.479 -83.8924C -19.5483 -83.7904 -19.6168 -83.6879 -19.6845 -83.5848C -19.7522 -83.4817 -19.8191 -83.3781 -19.8852 -83.274C -19.9513 -83.1699 -20.0165 -83.0652 -20.081 -82.9601C -20.1454 -82.855 -20.209 -82.7493 -20.2718 -82.6432C -20.3345 -82.537 -20.3965 -82.4304 -20.4576 -82.3233C -20.5187 -82.2162 -20.5789 -82.1086 -20.6383 -82.0005C -20.6977 -81.8924 -20.7563 -81.7839 -20.814 -81.6749C -20.8717 -81.5659 -20.9286 -81.4565 -20.9845 -81.3466C -21.0405 -81.2368 -21.0956 -81.1264 -21.1499 -81.0157C -21.2041 -80.905 -21.2575 -80.7938 -21.31 -80.6822C -21.3625 -80.5706 -21.4142 -80.4587 -21.4649 -80.3463C -21.5157 -80.2339 -21.5655 -80.1211 -21.6145 -80.0079C -21.6635 -79.8947 -21.7116 -79.7812 -21.7587 -79.6673C -21.8059 -79.5533 -21.8522 -79.439 -21.8976 -79.3244C -21.943 -79.2097 -21.9875 -79.0947 -22.0311 -78.9793C -22.0747 -78.864 -22.1174 -78.7483 -22.1591 -78.6323C -22.2009 -78.5162 -22.2418 -78.3999 -22.2817 -78.2832C -22.3217 -78.1666 -22.3607 -78.0496 -22.3988 -77.9323C -22.4369 -77.815 -22.4741 -77.6974 -22.5104 -77.5796C -22.5466 -77.4617 -22.5819 -77.3436 -22.6164 -77.2251C -22.6508 -77.1067 -22.6842 -76.988 -22.7168 -76.8691C -22.7493 -76.7501 -22.7809 -76.6309 -22.8116 -76.5115C -22.8422 -76.3921 -22.872 -76.2724 -22.9008 -76.1525C -22.9296 -76.0326 -22.9574 -75.9124 -22.9843 -75.7921C -23.0112 -75.6717 -23.0372 -75.5512 -23.0622 -75.4304C -23.0872 -75.3097 -23.1112 -75.1887 -23.1343 -75.0676C -23.1574 -74.9465 -23.1796 -74.8252 -23.2008 -74.7037C -23.222 -74.5822 -23.2422 -74.4605 -23.2615 -74.3387C -23.2808 -74.217 -23.2992 -74.095 -23.3165 -73.9729C -23.3339 -73.8508 -23.3503 -73.7286 -23.3658 -73.6063C -23.3812 -73.4839 -23.3957 -73.3615 -23.4093 -73.2389C -23.4228 -73.1163 -23.4354 -72.9936 -23.447 -72.8709C -23.4586 -72.7481 -23.4692 -72.6252 -23.4789 -72.5023C -23.4886 -72.3794 -23.4973 -72.2564 -23.505 -72.1333C -23.5128 -72.0102 -23.5195 -71.8871 -23.5253 -71.7639C -23.5312 -71.6407 -23.536 -71.5175 -23.5399 -71.3943C -23.5437 -71.271 -23.5467 -71.1477 -23.5486 -71.0244C -23.5505 -70.9011 -23.5515 -70.7778 -23.5515 -70.6545C -23.5515 -70.5312 -23.5505 -70.4079 -23.5486 -70.2846C -23.5467 -70.1613 -23.5437 -70.038 -23.5399 -69.9147C -23.536 -69.7915 -23.5312 -69.6682 -23.5253 -69.5451C -23.5195 -69.4219 -23.5128 -69.2987 -23.505 -69.1757C -23.4973 -69.0526 -23.4886 -68.9296 -23.4789 -68.8067C -23.4692 -68.6837 -23.4586 -68.5609 -23.447 -68.4381C -23.4354 -68.3153 -23.4228 -68.1926 -23.4093 -68.0701C -23.3957 -67.9475 -23.3812 -67.825 -23.3658 -67.7027C -23.3503 -67.5804 -23.3339 -67.4581 -23.3165 -67.336C -23.2992 -67.214 -23.2808 -67.092 -23.2615 -66.9702C -23.2422 -66.8484 -23.222 -66.7268 -23.2008 -66.6053C -23.1796 -66.4838 -23.1574 -66.3625 -23.1343 -66.2414C -23.1112 -66.1202 -23.0872 -65.9993 -23.0622 -65.8785C -23.0372 -65.7578 -23.0112 -65.6372 -22.9843 -65.5169C -22.9574 -65.3965 -22.9296 -65.2764 -22.9008 -65.1565C -22.872 -65.0366 -22.8422 -64.9169 -22.8116 -64.7975C -22.7809 -64.678 -22.7493 -64.5588 -22.7168 -64.4399C -22.6842 -64.3209 -22.6508 -64.2022 -22.6164 -64.0838C -22.5819 -63.9654 -22.5466 -63.8473 -22.5104 -63.7294C -22.4741 -63.6115 -22.4369 -63.494 -22.3988 -63.3767C -22.3607 -63.2594 -22.3217 -63.1424 -22.2817 -63.0257C -22.2418 -62.9091 -22.2009 -62.7927 -22.1591 -62.6767C -22.1174 -62.5607 -22.0747 -62.445 -22.0311 -62.3296C -21.9875 -62.2143 -21.943 -62.0993 -21.8976 -61.9846C -21.8522 -61.8699 -21.8059 -61.7556 -21.7587 -61.6417C -21.7116 -61.5278 -21.6635 -61.4142 -21.6145 -61.3011C -21.5655 -61.1879 -21.5157 -61.0751 -21.4649 -60.9627C -21.4142 -60.8503 -21.3625 -60.7383 -21.31 -60.6267C -21.2575 -60.5152 -21.2041 -60.404 -21.1499 -60.2933C -21.0956 -60.1825 -21.0405 -60.0722 -20.9845 -59.9623C -20.9286 -59.8525 -20.8717 -59.743 -20.814 -59.634C -20.7563 -59.5251 -20.6977 -59.4165 -20.6383 -59.3085C -20.5789 -59.2004 -20.5187 -59.0928 -20.4576 -58.9857C -20.3965 -58.8786 -20.3345 -58.7719 -20.2718 -58.6658C -20.209 -58.5597 -20.1454 -58.454 -20.081 -58.3489C -20.0165 -58.2437 -19.9513 -58.1391 -19.8852 -58.035C -19.8191 -57.9308 -19.7522 -57.8272 -19.6845 -57.7242C -19.6168 -57.6211 -19.5483 -57.5186 -19.479 -57.4166C -19.4097 -57.3146 -19.3396 -57.2131 -19.2686 -57.1123C -19.1977 -57.0114 -19.126 -56.911 -19.0536 -56.8113C -18.9811 -56.7115 -18.9078 -56.6123 -18.8338 -56.5137C -18.7597 -56.4151 -18.6849 -56.317 -18.6093 -56.2196C -18.5338 -56.1222 -18.4574 -56.0253 -18.3803 -55.9291C -18.3032 -55.8328 -18.2253 -55.7372 -18.1467 -55.6422C -18.0681 -55.5472 -17.9888 -55.4528 -17.9087 -55.359C -17.8286 -55.2652 -17.7478 -55.1721 -17.6662 -55.0796C -17.5847 -54.9871 -17.5024 -54.8952 -17.4194 -54.804C -17.3364 -54.7128 -17.2527 -54.6223 -17.1683 -54.5324C -17.0839 -54.4425 -16.9988 -54.3533 -16.9129 -54.2647C -16.8271 -54.1761 -16.7406 -54.0883 -16.6534 -54.0011C -16.5662 -53.9139 -16.4783 -53.8274 -16.3898 -53.7415C -16.3012 -53.6557 -16.212 -53.5706 -16.1221 -53.4862C -16.0322 -53.4018 -15.9417 -53.3181 -15.8505 -53.2351C -15.7592 -53.1521 -15.6674 -53.0698 -15.5749 -52.9882C -15.4824 -52.9067 -15.3892 -52.8259 -15.2955 -52.7458C -15.2017 -52.6657 -15.1073 -52.5863 -15.0123 -52.5077C -14.9173 -52.4291 -14.8216 -52.3513 -14.7254 -52.2742C -14.6292 -52.1971 -14.5323 -52.1207 -14.4349 -52.0452C -14.3374 -51.9696 -14.2394 -51.8948 -14.1408 -51.8207C -14.0422 -51.7467 -13.943 -51.6734 -13.8432 -51.6009C -13.7435 -51.5284 -13.6431 -51.4567 -13.5422 -51.3858C -13.4413 -51.3149 -13.3399 -51.2448 -13.2379 -51.1755C -13.1359 -51.1062 -13.0334 -51.0377 -12.9303 -50.97C -12.8272 -50.9023 -12.7236 -50.8354 -12.6195 -50.7693C -12.5154 -50.7032 -12.4108 -50.638 -12.3056 -50.5735C -12.2005 -50.5091 -12.0948 -50.4455 -11.9887 -50.3827C -11.8825 -50.3199 -11.7759 -50.258 -11.6688 -50.1969C -11.5617 -50.1358 -11.4541 -50.0756 -11.346 -50.0162C -11.238 -49.9567 -11.1294 -49.8982 -11.0204 -49.8405C -10.9115 -49.7828 -10.802 -49.7259 -10.6922 -49.6699C -10.5823 -49.614 -10.472 -49.5588 -10.3612 -49.5046C -10.2505 -49.4503 -10.1393 -49.397 -10.0277 -49.3445C -9.91616 -49.2919 -9.80417 -49.2403 -9.69178 -49.1896C -9.57939 -49.1388 -9.4666 -49.089 -9.35343 -49.04C -9.24025 -48.991 -9.1267 -48.9429 -9.01277 -48.8957C -8.89884 -48.8485 -8.78454 -48.8023 -8.66988 -48.7569C -8.55523 -48.7115 -8.44022 -48.667 -8.32486 -48.6234C -8.20951 -48.5798 -8.09381 -48.5371 -7.97778 -48.4953C -7.86176 -48.4536 -7.74541 -48.4127 -7.62874 -48.3728C -7.51207 -48.3328 -7.39509 -48.2938 -7.27781 -48.2557C -7.16053 -48.2176 -7.04295 -48.1804 -6.92509 -48.1441C -6.80722 -48.1079 -6.68908 -48.0725 -6.57066 -48.0381C -6.45224 -48.0037 -6.33355 -47.9703 -6.2146 -47.9377C -6.09566 -47.9052 -5.97646 -47.8736 -5.85702 -47.8429C -5.73758 -47.8122 -5.6179 -47.7825 -5.49799 -47.7537C -5.37808 -47.7249 -5.25795 -47.6971 -5.1376 -47.6702C -5.01725 -47.6433 -4.8967 -47.6173 -4.77594 -47.5923C -4.65519 -47.5673 -4.53424 -47.5433 -4.41311 -47.5202C -4.29198 -47.497 -4.17067 -47.4749 -4.04919 -47.4537C -3.92771 -47.4325 -3.80606 -47.4122 -3.68427 -47.3929C -3.56247 -47.3737 -3.44052 -47.3553 -3.31843 -47.3379C -3.19635 -47.3206 -3.07413 -47.3042 -2.95178 -47.2887C -2.82944 -47.2732 -2.70698 -47.2587 -2.58441 -47.2452C -2.46184 -47.2317 -2.33916 -47.2191 -2.21639 -47.2075C -2.09362 -47.1959 -1.97076 -47.1853 -1.84783 -47.1756C -1.72489 -47.1659 -1.60188 -47.1572 -1.47881 -47.1495C -1.35574 -47.1417 -1.23261 -47.1349 -1.10943 -47.1291C -0.986248 -47.1233 -0.863025 -47.1185 -0.73977 -47.1146C -0.616515 -47.1107 -0.493232 -47.1078 -0.369931 -47.1059C -0.24663 -47.104 -0.123316 -47.103 -4.3262e-15 -47.103C 0.123316 -47.103 0.24663 -47.104 0.369931 -47.1059C 0.493232 -47.1078 0.616515 -47.1107 0.73977 -47.1146C 0.863025 -47.1185 0.986248 -47.1233 1.10943 -47.1291C 1.23261 -47.1349 1.35574 -47.1417 1.47881 -47.1495C 1.60188 -47.1572 1.72489 -47.1659 1.84783 -47.1756C 1.97076 -47.1853 2.09362 -47.1959 2.21639 -47.2075C 2.33916 -47.2191 2.46184 -47.2317 2.58441 -47.2452C 2.70698 -47.2587 2.82944 -47.2732 2.95178 -47.2887C 3.07413 -47.3042 3.19635 -47.3206 3.31843 -47.3379C 3.44052 -47.3553 3.56247 -47.3737 3.68427 -47.3929C 3.80606 -47.4122 3.92771 -47.4325 4.04919 -47.4537C 4.17067 -47.4749 4.29198 -47.497 4.41311 -47.5202C 4.53424 -47.5433 4.65519 -47.5673 4.77594 -47.5923C 4.8967 -47.6173 5.01725 -47.6433 5.1376 -47.6702C 5.25795 -47.6971 5.37808 -47.7249 5.49799 -47.7537C 5.6179 -47.7825 5.73758 -47.8122 5.85702 -47.8429C 5.97646 -47.8736 6.09566 -47.9052 6.2146 -47.9377C 6.33355 -47.9703 6.45224 -48.0037 6.57066 -48.0381C 6.68908 -48.0725 6.80722 -48.1079 6.92509 -48.1441C 7.04295 -48.1804 7.16053 -48.2176 7.27781 -48.2557C 7.39509 -48.2938 7.51207 -48.3328 7.62874 -48.3728C 7.74541 -48.4127 7.86176 -48.4536 7.97778 -48.4953C 8.09381 -48.5371 8.20951 -48.5798 8.32486 -48.6234C 8.44022 -48.667 8.55523 -48.7115 8.66988 -48.7569C 8.78454 -48.8023 8.89884 -48.8485 9.01277 -48.8957C 9.1267 -48.9429 9.24025 -48.991 9.35343 -49.04C 9.4666 -49.089 9.57939 -49.1388 9.69178 -49.1896C 9.80417 -49.2403 9.91616 -49.2919 10.0277 -49.3445C 10.1393 -49.397 10.2505 -49.4503 10.3612 -49.5046C 10.472 -49.5588 10.5823 -49.614 10.6922 -49.6699C 10.802 -49.7259 10.9115 -49.7828 11.0204 -49.8405C 11.1294 -49.8982 11.238 -49.9567 11.346 -50.0162C 11.4541 -50.0756 11.5617 -50.1358 11.6688 -50.1969C 11.7759 -50.258 11.8825 -50.3199 11.9887 -50.3827C 12.0948 -50.4455 12.2005 -50.5091 12.3056 -50.5735C 12.4108 -50.638 12.5154 -50.7032 12.6195 -50.7693C 12.7236 -50.8354 12.8272 -50.9023 12.9303 -50.97C 13.0334 -51.0377 13.1359 -51.1062 13.2379 -51.1755C 13.3399 -51.2448 13.4413 -51.3149 13.5422 -51.3858C 13.6431 -51.4567 13.7435 -51.5284 13.8432 -51.6009C 13.943 -51.6734 14.0422 -51.7467 14.1408 -51.8207C 14.2394 -51.8948 14.3374 -51.9696 14.4349 -52.0452C 14.5323 -52.1207 14.6292 -52.1971 14.7254 -52.2742C 14.8216 -52.3513 14.9173 -52.4291 15.0123 -52.5077C 15.1073 -52.5863 15.2017 -52.6657 15.2955 -52.7458C 15.3892 -52.8259 15.4824 -52.9067 15.5749 -52.9882C 15.6674 -53.0698 15.7592 -53.1521 15.8505 -53.2351C 15.9417 -53.3181 16.0322 -53.4018 16.1221 -53.4862C 16.212 -53.5706 16.3012 -53.6557 16.3898 -53.7415C 16.4783 -53.8274 16.5662 -53.9139 16.6534 -54.0011C 16.7406 -54.0883 16.8271 -54.1761 16.9129 -54.2647C 16.9988 -54.3533 17.0839 -54.4425 17.1683 -54.5324C 17.2527 -54.6223 17.3364 -54.7128 17.4194 -54.804C 17.5024 -54.8952 17.5847 -54.9871 17.6662 -55.0796C 17.7478 -55.1721 17.8286 -55.2652 17.9087 -55.359C 17.9888 -55.4528 18.0681 -55.5472 18.1467 -55.6422C 18.2253 -55.7372 18.3032 -55.8328 18.3803 -55.9291C 18.4574 -56.0253 18.5338 -56.1222 18.6093 -56.2196C 18.6849 -56.317 18.7597 -56.4151 18.8338 -56.5137C 18.9078 -56.6123 18.9811 -56.7115 19.0536 -56.8113C 19.126 -56.911 19.1977 -57.0114 19.2686 -57.1123C 19.3396 -57.2131 19.4097 -57.3146 19.479 -57.4166C 19.5483 -57.5186 19.6168 -57.6211 19.6845 -57.7242C 19.7522 -57.8272 19.8191 -57.9308 19.8852 -58.035C 19.9513 -58.1391 20.0165 -58.2437 20.081 -58.3489C 20.1454 -58.454 20.209 -58.5597 20.2718 -58.6658C 20.3345 -58.7719 20.3965 -58.8786 20.4576 -58.9857C 20.5187 -59.0928 20.5789 -59.2004 20.6383 -59.3085C 20.6977 -59.4165 20.7563 -59.5251 20.814 -59.634C 20.8717 -59.743 20.9286 -59.8525 20.9845 -59.9623C 21.0405 -60.0722 21.0956 -60.1825 21.1499 -60.2933C 21.2041 -60.404 21.2575 -60.5152 21.31 -60.6267C 21.3625 -60.7383 21.4142 -60.8503 21.4649 -60.9627C 21.5157 -61.0751 21.5655 -61.1879 21.6145 -61.3011C 21.6635 -61.4142 21.7116 -61.5278 21.7587 -61.6417C 21.8059 -61.7556 21.8522 -61.8699 21.8976 -61.9846C 21.943 -62.0993 21.9875 -62.2143 22.0311 -62.3296C 22.0747 -62.445 22.1174 -62.5607 22.1591 -62.6767C 22.2009 -62.7927 22.2418 -62.9091 22.2817 -63.0257C 22.3217 -63.1424 22.3607 -63.2594 22.3988 -63.3767C 22.4369 -63.494 22.4741 -63.6115 22.5104 -63.7294C 22.5466 -63.8473 22.5819 -63.9654 22.6164 -64.0838C 22.6508 -64.2022 22.6842 -64.3209 22.7168 -64.4399C 22.7493 -64.5588 22.7809 -64.678 22.8116 -64.7975C 22.8422 -64.9169 22.872 -65.0366 22.9008 -65.1565C 22.9296 -65.2764 22.9574 -65.3965 22.9843 -65.5169C 23.0112 -65.6372 23.0372 -65.7578 23.0622 -65.8785C 23.0872 -65.9993 23.1112 -66.1202 23.1343 -66.2414C 23.1574 -66.3625 23.1796 -66.4838 23.2008 -66.6053C 23.222 -66.7268 23.2422 -66.8484 23.2615 -66.9702C 23.2808 -67.092 23.2992 -67.214 23.3165 -67.336C 23.3339 -67.4581 23.3503 -67.5804 23.3658 -67.7027C 23.3812 -67.825 23.3957 -67.9475 23.4093 -68.0701C 23.4228 -68.1926 23.4354 -68.3153 23.447 -68.4381C 23.4586 -68.5609 23.4692 -68.6837 23.4789 -68.8067C 23.4886 -68.9296 23.4973 -69.0526 23.505 -69.1757C 23.5128 -69.2987 23.5195 -69.4219 23.5253 -69.5451C 23.5312 -69.6682 23.536 -69.7915 23.5399 -69.9147C 23.5437 -70.038 23.5467 -70.1613 23.5486 -70.2846C 23.5505 -70.4079 23.5515 -70.5312 23.5515 -70.6545Z' fill='none' stroke='#c00000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 23.5515 -141.309C 23.5515 -141.432 23.5505 -141.556 23.5486 -141.679C 23.5467 -141.802 23.5437 -141.925 23.5399 -142.049C 23.536 -142.172 23.5312 -142.295 23.5253 -142.418C 23.5195 -142.542 23.5128 -142.665 23.505 -142.788C 23.4973 -142.911 23.4886 -143.034 23.4789 -143.157C 23.4692 -143.28 23.4586 -143.403 23.447 -143.525C 23.4354 -143.648 23.4228 -143.771 23.4093 -143.893C 23.3957 -144.016 23.3812 -144.138 23.3658 -144.261C 23.3503 -144.383 23.3339 -144.505 23.3165 -144.627C 23.2992 -144.749 23.2808 -144.871 23.2615 -144.993C 23.2422 -145.115 23.222 -145.237 23.2008 -145.358C 23.1796 -145.48 23.1574 -145.601 23.1343 -145.722C 23.1112 -145.843 23.0872 -145.964 23.0622 -146.085C 23.0372 -146.206 23.0112 -146.326 22.9843 -146.447C 22.9574 -146.567 22.9296 -146.687 22.9008 -146.807C 22.872 -146.927 22.8422 -147.047 22.8116 -147.166C 22.7809 -147.285 22.7493 -147.405 22.7168 -147.524C 22.6842 -147.643 22.6508 -147.761 22.6164 -147.88C 22.5819 -147.998 22.5466 -148.116 22.5104 -148.234C 22.4741 -148.352 22.4369 -148.469 22.3988 -148.587C 22.3607 -148.704 22.3217 -148.821 22.2817 -148.938C 22.2418 -149.054 22.2009 -149.171 22.1591 -149.287C 22.1174 -149.403 22.0747 -149.518 22.0311 -149.634C 21.9875 -149.749 21.943 -149.864 21.8976 -149.979C 21.8522 -150.094 21.8059 -150.208 21.7587 -150.322C 21.7116 -150.436 21.6635 -150.549 21.6145 -150.662C 21.5655 -150.776 21.5157 -150.888 21.4649 -151.001C 21.4142 -151.113 21.3625 -151.225 21.31 -151.337C 21.2575 -151.448 21.2041 -151.559 21.1499 -151.67C 21.0956 -151.781 21.0405 -151.891 20.9845 -152.001C 20.9286 -152.111 20.8717 -152.22 20.814 -152.329C 20.7563 -152.438 20.6977 -152.547 20.6383 -152.655C 20.5789 -152.763 20.5187 -152.871 20.4576 -152.978C 20.3965 -153.085 20.3345 -153.192 20.2718 -153.298C 20.209 -153.404 20.1454 -153.509 20.081 -153.615C 20.0165 -153.72 19.9513 -153.824 19.8852 -153.928C 19.8191 -154.033 19.7522 -154.136 19.6845 -154.239C 19.6168 -154.342 19.5483 -154.445 19.479 -154.547C 19.4097 -154.649 19.3396 -154.75 19.2686 -154.851C 19.1977 -154.952 19.126 -155.052 19.0536 -155.152C 18.9811 -155.252 18.9078 -155.351 18.8338 -155.45C 18.7597 -155.548 18.6849 -155.646 18.6093 -155.744C 18.5338 -155.841 18.4574 -155.938 18.3803 -156.034C 18.3032 -156.131 18.2253 -156.226 18.1467 -156.321C 18.0681 -156.416 17.9888 -156.511 17.9087 -156.604C 17.8286 -156.698 17.7478 -156.791 17.6662 -156.884C 17.5847 -156.976 17.5024 -157.068 17.4194 -157.159C 17.3364 -157.251 17.2527 -157.341 17.1683 -157.431C 17.0839 -157.521 16.9988 -157.61 16.9129 -157.699C 16.8271 -157.787 16.7406 -157.875 16.6534 -157.962C 16.5662 -158.05 16.4783 -158.136 16.3898 -158.222C 16.3012 -158.308 16.212 -158.393 16.1221 -158.477C 16.0322 -158.562 15.9417 -158.645 15.8505 -158.728C 15.7592 -158.811 15.6674 -158.894 15.5749 -158.975C 15.4824 -159.057 15.3892 -159.138 15.2955 -159.218C 15.2017 -159.298 15.1073 -159.377 15.0123 -159.456C 14.9173 -159.534 14.8216 -159.612 14.7254 -159.689C 14.6292 -159.766 14.5323 -159.843 14.4349 -159.918C 14.3374 -159.994 14.2394 -160.069 14.1408 -160.143C 14.0422 -160.217 13.943 -160.29 13.8432 -160.363C 13.7435 -160.435 13.6431 -160.507 13.5422 -160.578C 13.4413 -160.649 13.3399 -160.719 13.2379 -160.788C 13.1359 -160.857 13.0334 -160.926 12.9303 -160.993C 12.8272 -161.061 12.7236 -161.128 12.6195 -161.194C 12.5154 -161.26 12.4108 -161.325 12.3056 -161.39C 12.2005 -161.454 12.0948 -161.518 11.9887 -161.581C 11.8825 -161.644 11.7759 -161.705 11.6688 -161.767C 11.5617 -161.828 11.4541 -161.888 11.346 -161.947C 11.238 -162.007 11.1294 -162.065 11.0204 -162.123C 10.9115 -162.181 10.802 -162.238 10.6922 -162.294C 10.5823 -162.349 10.472 -162.405 10.3612 -162.459C 10.2505 -162.513 10.1393 -162.566 10.0277 -162.619C 9.91616 -162.672 9.80417 -162.723 9.69178 -162.774C 9.57939 -162.825 9.4666 -162.874 9.35343 -162.923C 9.24025 -162.972 9.1267 -163.021 9.01277 -163.068C 8.89884 -163.115 8.78454 -163.161 8.66988 -163.207C 8.55523 -163.252 8.44022 -163.296 8.32486 -163.34C 8.20951 -163.384 8.09381 -163.426 7.97778 -163.468C 7.86176 -163.51 7.74541 -163.551 7.62874 -163.591C 7.51207 -163.631 7.39509 -163.67 7.27781 -163.708C 7.16053 -163.746 7.04295 -163.783 6.92509 -163.819C 6.80722 -163.856 6.68908 -163.891 6.57066 -163.925C 6.45224 -163.96 6.33355 -163.993 6.2146 -164.026C 6.09566 -164.058 5.97646 -164.09 5.85702 -164.121C 5.73758 -164.151 5.6179 -164.181 5.49799 -164.21C 5.37808 -164.239 5.25795 -164.266 5.1376 -164.293C 5.01725 -164.32 4.8967 -164.346 4.77594 -164.371C 4.65519 -164.396 4.53424 -164.42 4.41311 -164.443C 4.29198 -164.466 4.17067 -164.489 4.04919 -164.51C 3.92771 -164.531 3.80606 -164.551 3.68427 -164.571C 3.56247 -164.59 3.44052 -164.608 3.31843 -164.626C 3.19635 -164.643 3.07413 -164.659 2.95178 -164.675C 2.82944 -164.69 2.70698 -164.705 2.58441 -164.718C 2.46184 -164.732 2.33916 -164.744 2.21639 -164.756C 2.09362 -164.768 1.97076 -164.778 1.84783 -164.788C 1.72489 -164.798 1.60188 -164.806 1.47881 -164.814C 1.35574 -164.822 1.23261 -164.829 1.10943 -164.834C 0.986248 -164.84 0.863025 -164.845 0.73977 -164.849C 0.616515 -164.853 0.493232 -164.856 0.369931 -164.858C 0.24663 -164.859 0.123316 -164.86 1.44207e-15 -164.86C -0.123316 -164.86 -0.24663 -164.859 -0.369931 -164.858C -0.493232 -164.856 -0.616515 -164.853 -0.73977 -164.849C -0.863025 -164.845 -0.986248 -164.84 -1.10943 -164.834C -1.23261 -164.829 -1.35574 -164.822 -1.47881 -164.814C -1.60188 -164.806 -1.72489 -164.798 -1.84783 -164.788C -1.97076 -164.778 -2.09362 -164.768 -2.21639 -164.756C -2.33916 -164.744 -2.46184 -164.732 -2.58441 -164.718C -2.70698 -164.705 -2.82944 -164.69 -2.95178 -164.675C -3.07413 -164.659 -3.19635 -164.643 -3.31843 -164.626C -3.44052 -164.608 -3.56247 -164.59 -3.68427 -164.571C -3.80606 -164.551 -3.92771 -164.531 -4.04919 -164.51C -4.17067 -164.489 -4.29198 -164.466 -4.41311 -164.443C -4.53424 -164.42 -4.65519 -164.396 -4.77594 -164.371C -4.8967 -164.346 -5.01725 -164.32 -5.1376 -164.293C -5.25795 -164.266 -5.37808 -164.239 -5.49799 -164.21C -5.6179 -164.181 -5.73758 -164.151 -5.85702 -164.121C -5.97646 -164.09 -6.09566 -164.058 -6.2146 -164.026C -6.33355 -163.993 -6.45224 -163.96 -6.57066 -163.925C -6.68908 -163.891 -6.80722 -163.856 -6.92509 -163.819C -7.04295 -163.783 -7.16053 -163.746 -7.27781 -163.708C -7.39509 -163.67 -7.51207 -163.631 -7.62874 -163.591C -7.74541 -163.551 -7.86176 -163.51 -7.97778 -163.468C -8.09381 -163.426 -8.20951 -163.384 -8.32486 -163.34C -8.44022 -163.296 -8.55523 -163.252 -8.66988 -163.207C -8.78454 -163.161 -8.89884 -163.115 -9.01277 -163.068C -9.1267 -163.021 -9.24025 -162.972 -9.35343 -162.923C -9.4666 -162.874 -9.57939 -162.825 -9.69178 -162.774C -9.80417 -162.723 -9.91616 -162.672 -10.0277 -162.619C -10.1393 -162.566 -10.2505 -162.513 -10.3612 -162.459C -10.472 -162.405 -10.5823 -162.349 -10.6922 -162.294C -10.802 -162.238 -10.9115 -162.181 -11.0204 -162.123C -11.1294 -162.065 -11.238 -162.007 -11.346 -161.947C -11.4541 -161.888 -11.5617 -161.828 -11.6688 -161.767C -11.7759 -161.705 -11.8825 -161.644 -11.9887 -161.581C -12.0948 -161.518 -12.2005 -161.454 -12.3056 -161.39C -12.4108 -161.325 -12.5154 -161.26 -12.6195 -161.194C -12.7236 -161.128 -12.8272 -161.061 -12.9303 -160.993C -13.0334 -160.926 -13.1359 -160.857 -13.2379 -160.788C -13.3399 -160.719 -13.4413 -160.649 -13.5422 -160.578C -13.6431 -160.507 -13.7435 -160.435 -13.8432 -160.363C -13.943 -160.29 -14.0422 -160.217 -14.1408 -160.143C -14.2394 -160.069 -14.3374 -159.994 -14.4349 -159.918C -14.5323 -159.843 -14.6292 -159.766 -14.7254 -159.689C -14.8216 -159.612 -14.9173 -159.534 -15.0123 -159.456C -15.1073 -159.377 -15.2017 -159.298 -15.2955 -159.218C -15.3892 -159.138 -15.4824 -159.057 -15.5749 -158.975C -15.6674 -158.894 -15.7592 -158.811 -15.8505 -158.728C -15.9417 -158.645 -16.0322 -158.562 -16.1221 -158.477C -16.212 -158.393 -16.3012 -158.308 -16.3898 -158.222C -16.4783 -158.136 -16.5662 -158.05 -16.6534 -157.962C -16.7406 -157.875 -16.8271 -157.787 -16.9129 -157.699C -16.9988 -157.61 -17.0839 -157.521 -17.1683 -157.431C -17.2527 -157.341 -17.3364 -157.251 -17.4194 -157.159C -17.5024 -157.068 -17.5847 -156.976 -17.6662 -156.884C -17.7478 -156.791 -17.8286 -156.698 -17.9087 -156.604C -17.9888 -156.511 -18.0681 -156.416 -18.1467 -156.321C -18.2253 -156.226 -18.3032 -156.131 -18.3803 -156.034C -18.4574 -155.938 -18.5338 -155.841 -18.6093 -155.744C -18.6849 -155.646 -18.7597 -155.548 -18.8338 -155.45C -18.9078 -155.351 -18.9811 -155.252 -19.0536 -155.152C -19.126 -155.052 -19.1977 -154.952 -19.2686 -154.851C -19.3396 -154.75 -19.4097 -154.649 -19.479 -154.547C -19.5483 -154.445 -19.6168 -154.342 -19.6845 -154.239C -19.7522 -154.136 -19.8191 -154.033 -19.8852 -153.928C -19.9513 -153.824 -20.0165 -153.72 -20.081 -153.615C -20.1454 -153.509 -20.209 -153.404 -20.2718 -153.298C -20.3345 -153.192 -20.3965 -153.085 -20.4576 -152.978C -20.5187 -152.871 -20.5789 -152.763 -20.6383 -152.655C -20.6977 -152.547 -20.7563 -152.438 -20.814 -152.329C -20.8717 -152.22 -20.9286 -152.111 -20.9845 -152.001C -21.0405 -151.891 -21.0956 -151.781 -21.1499 -151.67C -21.2041 -151.559 -21.2575 -151.448 -21.31 -151.337C -21.3625 -151.225 -21.4142 -151.113 -21.4649 -151.001C -21.5157 -150.888 -21.5655 -150.776 -21.6145 -150.662C -21.6635 -150.549 -21.7116 -150.436 -21.7587 -150.322C -21.8059 -150.208 -21.8522 -150.094 -21.8976 -149.979C -21.943 -149.864 -21.9875 -149.749 -22.0311 -149.634C -22.0747 -149.518 -22.1174 -149.403 -22.1591 -149.287C -22.2009 -149.171 -22.2418 -149.054 -22.2817 -148.938C -22.3217 -148.821 -22.3607 -148.704 -22.3988 -148.587C -22.4369 -148.469 -22.4741 -148.352 -22.5104 -148.234C -22.5466 -148.116 -22.5819 -147.998 -22.6164 -147.88C -22.6508 -147.761 -22.6842 -147.643 -22.7168 -147.524C -22.7493 -147.405 -22.7809 -147.285 -22.8116 -147.166C -22.8422 -147.047 -22.872 -146.927 -22.9008 -146.807C -22.9296 -146.687 -22.9574 -146.567 -22.9843 -146.447C -23.0112 -146.326 -23.0372 -146.206 -23.0622 -146.085C -23.0872 -145.964 -23.1112 -145.843 -23.1343 -145.722C -23.1574 -145.601 -23.1796 -145.48 -23.2008 -145.358C -23.222 -145.237 -23.2422 -145.115 -23.2615 -144.993C -23.2808 -144.871 -23.2992 -144.749 -23.3165 -144.627C -23.3339 -144.505 -23.3503 -144.383 -23.3658 -144.261C -23.3812 -144.138 -23.3957 -144.016 -23.4093 -143.893C -23.4228 -143.771 -23.4354 -143.648 -23.447 -143.525C -23.4586 -143.403 -23.4692 -143.28 -23.4789 -143.157C -23.4886 -143.034 -23.4973 -142.911 -23.505 -142.788C -23.5128 -142.665 -23.5195 -142.542 -23.5253 -142.418C -23.5312 -142.295 -23.536 -142.172 -23.5399 -142.049C -23.5437 -141.925 -23.5467 -141.802 -23.5486 -141.679C -23.5505 -141.556 -23.5515 -141.432 -23.5515 -141.309C -23.5515 -141.186 -23.5505 -141.062 -23.5486 -140.939C -23.5467 -140.816 -23.5437 -140.692 -23.5399 -140.569C -23.536 -140.446 -23.5312 -140.323 -23.5253 -140.2C -23.5195 -140.076 -23.5128 -139.953 -23.505 -139.83C -23.4973 -139.707 -23.4886 -139.584 -23.4789 -139.461C -23.4692 -139.338 -23.4586 -139.215 -23.447 -139.093C -23.4354 -138.97 -23.4228 -138.847 -23.4093 -138.725C -23.3957 -138.602 -23.3812 -138.48 -23.3658 -138.357C -23.3503 -138.235 -23.3339 -138.113 -23.3165 -137.991C -23.2992 -137.868 -23.2808 -137.746 -23.2615 -137.625C -23.2422 -137.503 -23.222 -137.381 -23.2008 -137.26C -23.1796 -137.138 -23.1574 -137.017 -23.1343 -136.896C -23.1112 -136.775 -23.0872 -136.654 -23.0622 -136.533C -23.0372 -136.412 -23.0112 -136.292 -22.9843 -136.171C -22.9574 -136.051 -22.9296 -135.931 -22.9008 -135.811C -22.872 -135.691 -22.8422 -135.571 -22.8116 -135.452C -22.7809 -135.333 -22.7493 -135.213 -22.7168 -135.094C -22.6842 -134.975 -22.6508 -134.857 -22.6164 -134.738C -22.5819 -134.62 -22.5466 -134.502 -22.5104 -134.384C -22.4741 -134.266 -22.4369 -134.148 -22.3988 -134.031C -22.3607 -133.914 -22.3217 -133.797 -22.2817 -133.68C -22.2418 -133.564 -22.2009 -133.447 -22.1591 -133.331C -22.1174 -133.215 -22.0747 -133.099 -22.0311 -132.984C -21.9875 -132.869 -21.943 -132.754 -21.8976 -132.639C -21.8522 -132.524 -21.8059 -132.41 -21.7587 -132.296C -21.7116 -132.182 -21.6635 -132.069 -21.6145 -131.956C -21.5655 -131.842 -21.5157 -131.73 -21.4649 -131.617C -21.4142 -131.505 -21.3625 -131.393 -21.31 -131.281C -21.2575 -131.17 -21.2041 -131.058 -21.1499 -130.948C -21.0956 -130.837 -21.0405 -130.727 -20.9845 -130.617C -20.9286 -130.507 -20.8717 -130.398 -20.814 -130.289C -20.7563 -130.18 -20.6977 -130.071 -20.6383 -129.963C -20.5789 -129.855 -20.5187 -129.747 -20.4576 -129.64C -20.3965 -129.533 -20.3345 -129.426 -20.2718 -129.32C -20.209 -129.214 -20.1454 -129.108 -20.081 -129.003C -20.0165 -128.898 -19.9513 -128.794 -19.8852 -128.689C -19.8191 -128.585 -19.7522 -128.482 -19.6845 -128.379C -19.6168 -128.276 -19.5483 -128.173 -19.479 -128.071C -19.4097 -127.969 -19.3396 -127.868 -19.2686 -127.767C -19.1977 -127.666 -19.126 -127.566 -19.0536 -127.466C -18.9811 -127.366 -18.9078 -127.267 -18.8338 -127.168C -18.7597 -127.07 -18.6849 -126.972 -18.6093 -126.874C -18.5338 -126.777 -18.4574 -126.68 -18.3803 -126.584C -18.3032 -126.487 -18.2253 -126.392 -18.1467 -126.297C -18.0681 -126.202 -17.9888 -126.107 -17.9087 -126.013C -17.8286 -125.92 -17.7478 -125.827 -17.6662 -125.734C -17.5847 -125.642 -17.5024 -125.55 -17.4194 -125.459C -17.3364 -125.367 -17.2527 -125.277 -17.1683 -125.187C -17.0839 -125.097 -16.9988 -125.008 -16.9129 -124.919C -16.8271 -124.831 -16.7406 -124.743 -16.6534 -124.656C -16.5662 -124.568 -16.4783 -124.482 -16.3898 -124.396C -16.3012 -124.31 -16.212 -124.225 -16.1221 -124.141C -16.0322 -124.056 -15.9417 -123.973 -15.8505 -123.89C -15.7592 -123.807 -15.6674 -123.724 -15.5749 -123.643C -15.4824 -123.561 -15.3892 -123.48 -15.2955 -123.4C -15.2017 -123.32 -15.1073 -123.241 -15.0123 -123.162C -14.9173 -123.084 -14.8216 -123.006 -14.7254 -122.929C -14.6292 -122.852 -14.5323 -122.775 -14.4349 -122.7C -14.3374 -122.624 -14.2394 -122.549 -14.1408 -122.475C -14.0422 -122.401 -13.943 -122.328 -13.8432 -122.255C -13.7435 -122.183 -13.6431 -122.111 -13.5422 -122.04C -13.4413 -121.969 -13.3399 -121.899 -13.2379 -121.83C -13.1359 -121.761 -13.0334 -121.692 -12.9303 -121.624C -12.8272 -121.557 -12.7236 -121.49 -12.6195 -121.424C -12.5154 -121.358 -12.4108 -121.292 -12.3056 -121.228C -12.2005 -121.164 -12.0948 -121.1 -11.9887 -121.037C -11.8825 -120.974 -11.7759 -120.912 -11.6688 -120.851C -11.5617 -120.79 -11.4541 -120.73 -11.346 -120.671C -11.238 -120.611 -11.1294 -120.553 -11.0204 -120.495C -10.9115 -120.437 -10.802 -120.38 -10.6922 -120.324C -10.5823 -120.268 -10.472 -120.213 -10.3612 -120.159C -10.2505 -120.105 -10.1393 -120.051 -10.0277 -119.999C -9.91616 -119.946 -9.80417 -119.895 -9.69178 -119.844C -9.57939 -119.793 -9.4666 -119.743 -9.35343 -119.694C -9.24025 -119.645 -9.1267 -119.597 -9.01277 -119.55C -8.89884 -119.503 -8.78454 -119.457 -8.66988 -119.411C -8.55523 -119.366 -8.44022 -119.321 -8.32486 -119.278C -8.20951 -119.234 -8.09381 -119.192 -7.97778 -119.15C -7.86176 -119.108 -7.74541 -119.067 -7.62874 -119.027C -7.51207 -118.987 -7.39509 -118.948 -7.27781 -118.91C -7.16053 -118.872 -7.04295 -118.835 -6.92509 -118.799C -6.80722 -118.762 -6.68908 -118.727 -6.57066 -118.693C -6.45224 -118.658 -6.33355 -118.625 -6.2146 -118.592C -6.09566 -118.56 -5.97646 -118.528 -5.85702 -118.497C -5.73758 -118.467 -5.6179 -118.437 -5.49799 -118.408C -5.37808 -118.379 -5.25795 -118.352 -5.1376 -118.325C -5.01725 -118.298 -4.8967 -118.272 -4.77594 -118.247C -4.65519 -118.222 -4.53424 -118.198 -4.41311 -118.175C -4.29198 -118.152 -4.17067 -118.129 -4.04919 -118.108C -3.92771 -118.087 -3.80606 -118.067 -3.68427 -118.047C -3.56247 -118.028 -3.44052 -118.01 -3.31843 -117.992C -3.19635 -117.975 -3.07413 -117.959 -2.95178 -117.943C -2.82944 -117.928 -2.70698 -117.913 -2.58441 -117.9C -2.46184 -117.886 -2.33916 -117.874 -2.21639 -117.862C -2.09362 -117.85 -1.97076 -117.84 -1.84783 -117.83C -1.72489 -117.82 -1.60188 -117.812 -1.47881 -117.804C -1.35574 -117.796 -1.23261 -117.789 -1.10943 -117.784C -0.986248 -117.778 -0.863025 -117.773 -0.73977 -117.769C -0.616515 -117.765 -0.493232 -117.762 -0.369931 -117.76C -0.24663 -117.758 -0.123316 -117.757 -4.3262e-15 -117.757C 0.123316 -117.757 0.24663 -117.758 0.369931 -117.76C 0.493232 -117.762 0.616515 -117.765 0.73977 -117.769C 0.863025 -117.773 0.986248 -117.778 1.10943 -117.784C 1.23261 -117.789 1.35574 -117.796 1.47881 -117.804C 1.60188 -117.812 1.72489 -117.82 1.84783 -117.83C 1.97076 -117.84 2.09362 -117.85 2.21639 -117.862C 2.33916 -117.874 2.46184 -117.886 2.58441 -117.9C 2.70698 -117.913 2.82944 -117.928 2.95178 -117.943C 3.07413 -117.959 3.19635 -117.975 3.31843 -117.992C 3.44052 -118.01 3.56247 -118.028 3.68427 -118.047C 3.80606 -118.067 3.92771 -118.087 4.04919 -118.108C 4.17067 -118.129 4.29198 -118.152 4.41311 -118.175C 4.53424 -118.198 4.65519 -118.222 4.77594 -118.247C 4.8967 -118.272 5.01725 -118.298 5.1376 -118.325C 5.25795 -118.352 5.37808 -118.379 5.49799 -118.408C 5.6179 -118.437 5.73758 -118.467 5.85702 -118.497C 5.97646 -118.528 6.09566 -118.56 6.2146 -118.592C 6.33355 -118.625 6.45224 -118.658 6.57066 -118.693C 6.68908 -118.727 6.80722 -118.762 6.92509 -118.799C 7.04295 -118.835 7.16053 -118.872 7.27781 -118.91C 7.39509 -118.948 7.51207 -118.987 7.62874 -119.027C 7.74541 -119.067 7.86176 -119.108 7.97778 -119.15C 8.09381 -119.192 8.20951 -119.234 8.32486 -119.278C 8.44022 -119.321 8.55523 -119.366 8.66988 -119.411C 8.78454 -119.457 8.89884 -119.503 9.01277 -119.55C 9.1267 -119.597 9.24025 -119.645 9.35343 -119.694C 9.4666 -119.743 9.57939 -119.793 9.69178 -119.844C 9.80417 -119.895 9.91616 -119.946 10.0277 -119.999C 10.1393 -120.051 10.2505 -120.105 10.3612 -120.159C 10.472 -120.213 10.5823 -120.268 10.6922 -120.324C 10.802 -120.38 10.9115 -120.437 11.0204 -120.495C 11.1294 -120.553 11.238 -120.611 11.346 -120.671C 11.4541 -120.73 11.5617 -120.79 11.6688 -120.851C 11.7759 -120.912 11.8825 -120.974 11.9887 -121.037C 12.0948 -121.1 12.2005 -121.164 12.3056 -121.228C 12.4108 -121.292 12.5154 -121.358 12.6195 -121.424C 12.7236 -121.49 12.8272 -121.557 12.9303 -121.624C 13.0334 -121.692 13.1359 -121.761 13.2379 -121.83C 13.3399 -121.899 13.4413 -121.969 13.5422 -122.04C 13.6431 -122.111 13.7435 -122.183 13.8432 -122.255C 13.943 -122.328 14.0422 -122.401 14.1408 -122.475C 14.2394 -122.549 14.3374 -122.624 14.4349 -122.7C 14.5323 -122.775 14.6292 -122.852 14.7254 -122.929C 14.8216 -123.006 14.9173 -123.084 15.0123 -123.162C 15.1073 -123.241 15.2017 -123.32 15.2955 -123.4C 15.3892 -123.48 15.4824 -123.561 15.5749 -123.643C 15.6674 -123.724 15.7592 -123.807 15.8505 -123.89C 15.9417 -123.973 16.0322 -124.056 16.1221 -124.141C 16.212 -124.225 16.3012 -124.31 16.3898 -124.396C 16.4783 -124.482 16.5662 -124.568 16.6534 -124.656C 16.7406 -124.743 16.8271 -124.831 16.9129 -124.919C 16.9988 -125.008 17.0839 -125.097 17.1683 -125.187C 17.2527 -125.277 17.3364 -125.367 17.4194 -125.459C 17.5024 -125.55 17.5847 -125.642 17.6662 -125.734C 17.7478 -125.827 17.8286 -125.92 17.9087 -126.013C 17.9888 -126.107 18.0681 -126.202 18.1467 -126.297C 18.2253 -126.392 18.3032 -126.487 18.3803 -126.584C 18.4574 -126.68 18.5338 -126.777 18.6093 -126.874C 18.6849 -126.972 18.7597 -127.07 18.8338 -127.168C 18.9078 -127.267 18.9811 -127.366 19.0536 -127.466C 19.126 -127.566 19.1977 -127.666 19.2686 -127.767C 19.3396 -127.868 19.4097 -127.969 19.479 -128.071C 19.5483 -128.173 19.6168 -128.276 19.6845 -128.379C 19.7522 -128.482 19.8191 -128.585 19.8852 -128.689C 19.9513 -128.794 20.0165 -128.898 20.081 -129.003C 20.1454 -129.108 20.209 -129.214 20.2718 -129.32C 20.3345 -129.426 20.3965 -129.533 20.4576 -129.64C 20.5187 -129.747 20.5789 -129.855 20.6383 -129.963C 20.6977 -130.071 20.7563 -130.18 20.814 -130.289C 20.8717 -130.398 20.9286 -130.507 20.9845 -130.617C 21.0405 -130.727 21.0956 -130.837 21.1499 -130.948C 21.2041 -131.058 21.2575 -131.17 21.31 -131.281C 21.3625 -131.393 21.4142 -131.505 21.4649 -131.617C 21.5157 -131.73 21.5655 -131.842 21.6145 -131.956C 21.6635 -132.069 21.7116 -132.182 21.7587 -132.296C 21.8059 -132.41 21.8522 -132.524 21.8976 -132.639C 21.943 -132.754 21.9875 -132.869 22.0311 -132.984C 22.0747 -133.099 22.1174 -133.215 22.1591 -133.331C 22.2009 -133.447 22.2418 -133.564 22.2817 -133.68C 22.3217 -133.797 22.3607 -133.914 22.3988 -134.031C 22.4369 -134.148 22.4741 -134.266 22.5104 -134.384C 22.5466 -134.502 22.5819 -134.62 22.6164 -134.738C 22.6508 -134.857 22.6842 -134.975 22.7168 -135.094C 22.7493 -135.213 22.7809 -135.333 22.8116 -135.452C 22.8422 -135.571 22.872 -135.691 22.9008 -135.811C 22.9296 -135.931 22.9574 -136.051 22.9843 -136.171C 23.0112 -136.292 23.0372 -136.412 23.0622 -136.533C 23.0872 -136.654 23.1112 -136.775 23.1343 -136.896C 23.1574 -137.017 23.1796 -137.138 23.2008 -137.26C 23.222 -137.381 23.2422 -137.503 23.2615 -137.625C 23.2808 -137.746 23.2992 -137.868 23.3165 -137.991C 23.3339 -138.113 23.3503 -138.235 23.3658 -138.357C 23.3812 -138.48 23.3957 -138.602 23.4093 -138.725C 23.4228 -138.847 23.4354 -138.97 23.447 -139.093C 23.4586 -139.215 23.4692 -139.338 23.4789 -139.461C 23.4886 -139.584 23.4973 -139.707 23.505 -139.83C 23.5128 -139.953 23.5195 -140.076 23.5253 -140.2C 23.5312 -140.323 23.536 -140.446 23.5399 -140.569C 23.5437 -140.692 23.5467 -140.816 23.5486 -140.939C 23.5505 -141.062 23.5515 -141.186 23.5515 -141.309Z' fill='none' stroke='#c00000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 117.757 35.3272C 117.757 35.2039 117.757 35.0806 117.755 34.9573C 117.753 34.834 117.75 34.7107 117.746 34.5875C 117.742 34.4642 117.737 34.341 117.731 34.2178C 117.726 34.0946 117.719 33.9715 117.711 33.8484C 117.703 33.7254 117.695 33.6023 117.685 33.4794C 117.675 33.3565 117.665 33.2336 117.653 33.1109C 117.641 32.9881 117.629 32.8654 117.615 32.7428C 117.602 32.6203 117.587 32.4978 117.572 32.3755C 117.556 32.2531 117.54 32.1309 117.523 32.0088C 117.505 31.8867 117.487 31.7648 117.468 31.643C 117.448 31.5212 117.428 31.3995 117.407 31.2781C 117.386 31.1566 117.363 31.0353 117.34 30.9141C 117.317 30.793 117.293 30.6721 117.268 30.5513C 117.243 30.4305 117.217 30.31 117.19 30.1896C 117.163 30.0693 117.136 29.9492 117.107 29.8293C 117.078 29.7093 117.048 29.5897 117.018 29.4702C 116.987 29.3508 116.955 29.2316 116.923 29.1126C 116.89 28.9937 116.857 28.875 116.822 28.7566C 116.788 28.6382 116.753 28.52 116.716 28.4022C 116.68 28.2843 116.643 28.1667 116.605 28.0494C 116.567 27.9321 116.528 27.8152 116.488 27.6985C 116.448 27.5818 116.407 27.4655 116.365 27.3495C 116.323 27.2334 116.281 27.1177 116.237 27.0024C 116.193 26.887 116.149 26.772 116.104 26.6574C 116.058 26.5427 116.012 26.4284 115.965 26.3145C 115.918 26.2005 115.869 26.087 115.82 25.9738C 115.771 25.8606 115.722 25.7479 115.671 25.6355C 115.62 25.5231 115.569 25.4111 115.516 25.2995C 115.464 25.1879 115.41 25.0768 115.356 24.966C 115.302 24.8553 115.246 24.745 115.191 24.6351C 115.135 24.5252 115.078 24.4158 115.02 24.3068C 114.962 24.1978 114.904 24.0893 114.844 23.9812C 114.785 23.8732 114.725 23.7656 114.664 23.6584C 114.602 23.5513 114.541 23.4447 114.478 23.3386C 114.415 23.2324 114.351 23.1268 114.287 23.0216C 114.222 22.9165 114.157 22.8118 114.091 22.7077C 114.025 22.6036 113.958 22.5 113.89 22.3969C 113.823 22.2939 113.754 22.1913 113.685 22.0893C 113.616 21.9873 113.546 21.8859 113.475 21.785C 113.404 21.6841 113.332 21.5838 113.26 21.484C 113.187 21.3843 113.114 21.2851 113.04 21.1864C 112.966 21.0878 112.891 20.9898 112.815 20.8924C 112.74 20.7949 112.663 20.6981 112.586 20.6018C 112.509 20.5056 112.431 20.41 112.353 20.315C 112.274 20.2199 112.195 20.1255 112.115 20.0318C 112.035 19.938 111.954 19.8449 111.872 19.7524C 111.791 19.6599 111.708 19.568 111.625 19.4768C 111.542 19.3856 111.459 19.295 111.374 19.2051C 111.29 19.1152 111.205 19.026 111.119 18.9375C 111.033 18.8489 110.947 18.761 110.859 18.6738C 110.772 18.5866 110.684 18.5001 110.596 18.4143C 110.507 18.3285 110.418 18.2434 110.328 18.1589C 110.238 18.0745 110.148 17.9908 110.056 17.9078C 109.965 17.8248 109.873 17.7426 109.781 17.661C 109.688 17.5795 109.595 17.4986 109.501 17.4185C 109.408 17.3385 109.313 17.2591 109.218 17.1805C 109.123 17.1019 109.028 17.024 108.931 16.9469C 108.835 16.8698 108.738 16.7935 108.641 16.7179C 108.543 16.6423 108.445 16.5675 108.347 16.4935C 108.248 16.4194 108.149 16.3462 108.049 16.2737C 107.949 16.2012 107.849 16.1295 107.748 16.0586C 107.647 15.9877 107.546 15.9176 107.444 15.8483C 107.342 15.7789 107.239 15.7104 107.136 15.6427C 107.033 15.575 106.93 15.5081 106.825 15.4421C 106.721 15.376 106.617 15.3107 106.512 15.2463C 106.406 15.1819 106.301 15.1183 106.195 15.0555C 106.089 14.9927 105.982 14.9308 105.875 14.8697C 105.768 14.8086 105.66 14.7483 105.552 14.6889C 105.444 14.6295 105.335 14.5709 105.226 14.5132C 105.117 14.4555 105.008 14.3987 104.898 14.3427C 104.788 14.2867 104.678 14.2316 104.567 14.1774C 104.456 14.1231 104.345 14.0697 104.234 14.0172C 104.122 13.9647 104.01 13.9131 103.898 13.8623C 103.785 13.8116 103.673 13.7617 103.559 13.7127C 103.446 13.6638 103.333 13.6157 103.219 13.5685C 103.105 13.5213 102.991 13.475 102.876 13.4296C 102.761 13.3842 102.646 13.3397 102.531 13.2961C 102.415 13.2525 102.3 13.2099 102.184 13.1681C 102.068 13.1263 101.951 13.0855 101.835 13.0455C 101.718 13.0056 101.601 12.9665 101.484 12.9284C 101.367 12.8903 101.249 12.8531 101.131 12.8169C 101.013 12.7806 100.895 12.7453 100.777 12.7109C 100.658 12.6765 100.54 12.643 100.421 12.6105C 100.302 12.5779 100.182 12.5463 100.063 12.5157C 99.9436 12.485 99.8239 12.4553 99.704 12.4265C 99.5841 12.3977 99.4639 12.3698 99.3436 12.3429C 99.2232 12.316 99.1027 12.2901 98.9819 12.2651C 98.8612 12.2401 98.7402 12.216 98.6191 12.1929C 98.498 12.1698 98.3766 12.1476 98.2552 12.1264C 98.1337 12.1052 98.012 12.085 97.8902 12.0657C 97.7684 12.0464 97.6465 12.0281 97.5244 12.0107C 97.4023 11.9933 97.2801 11.9769 97.1578 11.9615C 97.0354 11.946 96.913 11.9315 96.7904 11.918C 96.6678 11.9044 96.5451 11.8919 96.4224 11.8803C 96.2996 11.8687 96.1767 11.858 96.0538 11.8483C 95.9309 11.8387 95.8079 11.83 95.6848 11.8222C 95.5617 11.8145 95.4386 11.8077 95.3154 11.8019C 95.1922 11.7961 95.069 11.7912 94.9457 11.7874C 94.8225 11.7835 94.6992 11.7806 94.5759 11.7787C 94.4526 11.7767 94.3293 11.7757 94.206 11.7757C 94.0827 11.7757 93.9593 11.7767 93.836 11.7787C 93.7127 11.7806 93.5895 11.7835 93.4662 11.7874C 93.343 11.7912 93.2197 11.7961 93.0966 11.8019C 92.9734 11.8077 92.8502 11.8145 92.7272 11.8222C 92.6041 11.83 92.4811 11.8387 92.3581 11.8483C 92.2352 11.858 92.1124 11.8687 91.9896 11.8803C 91.8668 11.8919 91.7441 11.9044 91.6216 11.918C 91.499 11.9315 91.3765 11.946 91.2542 11.9615C 91.1318 11.9769 91.0096 11.9933 90.8875 12.0107C 90.7655 12.0281 90.6435 12.0464 90.5217 12.0657C 90.3999 12.085 90.2783 12.1052 90.1568 12.1264C 90.0353 12.1476 89.914 12.1698 89.7929 12.1929C 89.6717 12.216 89.5508 12.2401 89.43 12.2651C 89.3093 12.2901 89.1887 12.316 89.0684 12.3429C 88.948 12.3698 88.8279 12.3977 88.708 12.4265C 88.5881 12.4553 88.4684 12.485 88.349 12.5157C 88.2295 12.5463 88.1103 12.5779 87.9914 12.6105C 87.8724 12.643 87.7537 12.6765 87.6353 12.7109C 87.5169 12.7453 87.3988 12.7806 87.2809 12.8169C 87.163 12.8531 87.0454 12.8903 86.9282 12.9284C 86.8109 12.9665 86.6939 13.0056 86.5772 13.0455C 86.4606 13.0855 86.3442 13.1263 86.2282 13.1681C 86.1122 13.2099 85.9965 13.2525 85.8811 13.2961C 85.7658 13.3397 85.6508 13.3842 85.5361 13.4296C 85.4214 13.475 85.3071 13.5213 85.1932 13.5685C 85.0793 13.6157 84.9657 13.6638 84.8526 13.7127C 84.7394 13.7617 84.6266 13.8116 84.5142 13.8623C 84.4018 13.9131 84.2898 13.9647 84.1782 14.0172C 84.0667 14.0697 83.9555 14.1231 83.8448 14.1774C 83.734 14.2316 83.6237 14.2867 83.5138 14.3427C 83.4039 14.3987 83.2945 14.4555 83.1855 14.5132C 83.0765 14.5709 82.968 14.6295 82.86 14.6889C 82.7519 14.7483 82.6443 14.8086 82.5372 14.8697C 82.4301 14.9308 82.3234 14.9927 82.2173 15.0555C 82.1111 15.1183 82.0055 15.1819 81.9004 15.2463C 81.7952 15.3107 81.6906 15.376 81.5865 15.4421C 81.4823 15.5081 81.3787 15.575 81.2757 15.6427C 81.1726 15.7104 81.0701 15.7789 80.9681 15.8483C 80.8661 15.9176 80.7646 15.9877 80.6637 16.0586C 80.5629 16.1295 80.4625 16.2012 80.3628 16.2737C 80.263 16.3462 80.1638 16.4194 80.0652 16.4935C 79.9666 16.5675 79.8685 16.6423 79.7711 16.7179C 79.6737 16.7935 79.5768 16.8698 79.4806 16.9469C 79.3843 17.024 79.2887 17.1019 79.1937 17.1805C 79.0987 17.2591 79.0043 17.3385 78.9105 17.4185C 78.8167 17.4986 78.7236 17.5795 78.6311 17.661C 78.5386 17.7426 78.4467 17.8248 78.3555 17.9078C 78.2643 17.9908 78.1738 18.0745 78.0839 18.1589C 77.994 18.2434 77.9047 18.3285 77.8162 18.4143C 77.7276 18.5001 77.6398 18.5866 77.5526 18.6738C 77.4654 18.761 77.3788 18.8489 77.293 18.9375C 77.2072 19.026 77.1221 19.1152 77.0377 19.2051C 76.9533 19.295 76.8696 19.3856 76.7866 19.4768C 76.7036 19.568 76.6213 19.6599 76.5397 19.7524C 76.4582 19.8449 76.3774 19.938 76.2973 20.0318C 76.2172 20.1255 76.1378 20.2199 76.0592 20.315C 75.9806 20.41 75.9028 20.5056 75.8257 20.6018C 75.7486 20.6981 75.6722 20.7949 75.5966 20.8924C 75.5211 20.9898 75.4463 21.0878 75.3722 21.1864C 75.2982 21.2851 75.2249 21.3843 75.1524 21.484C 75.0799 21.5838 75.0082 21.6841 74.9373 21.785C 74.8664 21.8859 74.7963 21.9873 74.727 22.0893C 74.6577 22.1913 74.5892 22.2939 74.5215 22.3969C 74.4538 22.5 74.3869 22.6036 74.3208 22.7077C 74.2547 22.8118 74.1895 22.9165 74.125 23.0216C 74.0606 23.1268 73.997 23.2324 73.9342 23.3386C 73.8714 23.4447 73.8095 23.5513 73.7484 23.6584C 73.6873 23.7656 73.6271 23.8732 73.5676 23.9812C 73.5082 24.0893 73.4497 24.1978 73.392 24.3068C 73.3343 24.4158 73.2774 24.5252 73.2214 24.6351C 73.1655 24.745 73.1103 24.8553 73.0561 24.966C 73.0018 25.0768 72.9485 25.1879 72.8959 25.2995C 72.8434 25.4111 72.7918 25.5231 72.7411 25.6355C 72.6903 25.7479 72.6405 25.8606 72.5915 25.9738C 72.5425 26.087 72.4944 26.2005 72.4472 26.3145C 72.4 26.4284 72.3537 26.5427 72.3084 26.6574C 72.263 26.772 72.2185 26.887 72.1749 27.0024C 72.1313 27.1177 72.0886 27.2334 72.0468 27.3495C 72.0051 27.4655 71.9642 27.5818 71.9243 27.6985C 71.8843 27.8152 71.8453 27.9321 71.8072 28.0494C 71.7691 28.1667 71.7319 28.2843 71.6956 28.4022C 71.6594 28.52 71.624 28.6382 71.5896 28.7566C 71.5552 28.875 71.5217 28.9937 71.4892 29.1126C 71.4567 29.2316 71.4251 29.3508 71.3944 29.4702C 71.3637 29.5897 71.334 29.7093 71.3052 29.8293C 71.2764 29.9492 71.2486 30.0693 71.2217 30.1896C 71.1948 30.31 71.1688 30.4305 71.1438 30.5513C 71.1188 30.6721 71.0948 30.793 71.0716 30.9141C 71.0485 31.0353 71.0264 31.1566 71.0052 31.2781C 70.984 31.3995 70.9637 31.5212 70.9444 31.643C 70.9252 31.7648 70.9068 31.8867 70.8894 32.0088C 70.8721 32.1309 70.8556 32.2531 70.8402 32.3755C 70.8247 32.4978 70.8102 32.6203 70.7967 32.7428C 70.7832 32.8654 70.7706 32.9881 70.759 33.1109C 70.7474 33.2336 70.7368 33.3565 70.7271 33.4794C 70.7174 33.6023 70.7087 33.7254 70.701 33.8484C 70.6932 33.9715 70.6864 34.0946 70.6806 34.2178C 70.6748 34.341 70.67 34.4642 70.6661 34.5875C 70.6622 34.7107 70.6593 34.834 70.6574 34.9573C 70.6555 35.0806 70.6545 35.2039 70.6545 35.3272C 70.6545 35.4506 70.6555 35.5739 70.6574 35.6972C 70.6593 35.8205 70.6622 35.9438 70.6661 36.067C 70.67 36.1903 70.6748 36.3135 70.6806 36.4367C 70.6864 36.5598 70.6932 36.683 70.701 36.8061C 70.7087 36.9291 70.7174 37.0521 70.7271 37.1751C 70.7368 37.298 70.7474 37.4209 70.759 37.5436C 70.7706 37.6664 70.7832 37.7891 70.7967 37.9116C 70.8102 38.0342 70.8247 38.1567 70.8402 38.279C 70.8556 38.4014 70.8721 38.5236 70.8894 38.6457C 70.9068 38.7678 70.9252 38.8897 70.9444 39.0115C 70.9637 39.1333 70.984 39.2549 71.0052 39.3764C 71.0264 39.4979 71.0485 39.6192 71.0716 39.7404C 71.0948 39.8615 71.1188 39.9824 71.1438 40.1032C 71.1688 40.2239 71.1948 40.3445 71.2217 40.4648C 71.2486 40.5852 71.2764 40.7053 71.3052 40.8252C 71.334 40.9451 71.3637 41.0648 71.3944 41.1843C 71.4251 41.3037 71.4567 41.4229 71.4892 41.5418C 71.5217 41.6608 71.5552 41.7795 71.5896 41.8979C 71.624 42.0163 71.6594 42.1345 71.6956 42.2523C 71.7319 42.3702 71.7691 42.4878 71.8072 42.6051C 71.8453 42.7223 71.8843 42.8393 71.9243 42.956C 71.9642 43.0726 72.0051 43.189 72.0468 43.305C 72.0886 43.4211 72.1313 43.5367 72.1749 43.6521C 72.2185 43.7675 72.263 43.8825 72.3084 43.9971C 72.3537 44.1118 72.4 44.2261 72.4472 44.34C 72.4944 44.4539 72.5425 44.5675 72.5915 44.6807C 72.6405 44.7938 72.6903 44.9066 72.7411 45.019C 72.7918 45.1314 72.8434 45.2434 72.8959 45.355C 72.9485 45.4666 73.0018 45.5777 73.0561 45.6885C 73.1103 45.7992 73.1655 45.9095 73.2214 46.0194C 73.2774 46.1293 73.3343 46.2387 73.392 46.3477C 73.4497 46.4567 73.5082 46.5652 73.5676 46.6733C 73.6271 46.7813 73.6873 46.8889 73.7484 46.996C 73.8095 47.1031 73.8714 47.2098 73.9342 47.3159C 73.997 47.4221 74.0606 47.5277 74.125 47.6329C 74.1895 47.738 74.2547 47.8426 74.3208 47.9468C 74.3869 48.0509 74.4538 48.1545 74.5215 48.2575C 74.5892 48.3606 74.6577 48.4632 74.727 48.5651C 74.7963 48.6671 74.8664 48.7686 74.9373 48.8695C 75.0082 48.9704 75.0799 49.0707 75.1524 49.1705C 75.2249 49.2702 75.2982 49.3694 75.3722 49.468C 75.4463 49.5666 75.5211 49.6647 75.5966 49.7621C 75.6722 49.8596 75.7486 49.9564 75.8257 50.0526C 75.9028 50.1489 75.9806 50.2445 76.0592 50.3395C 76.1378 50.4345 76.2172 50.5289 76.2973 50.6227C 76.3774 50.7165 76.4582 50.8096 76.5397 50.9021C 76.6213 50.9946 76.7036 51.0865 76.7866 51.1777C 76.8696 51.2689 76.9533 51.3595 77.0377 51.4493C 77.1221 51.5392 77.2072 51.6285 77.293 51.717C 77.3788 51.8056 77.4654 51.8935 77.5526 51.9807C 77.6398 52.0679 77.7276 52.1544 77.8162 52.2402C 77.9047 52.326 77.994 52.4111 78.0839 52.4955C 78.1738 52.58 78.2643 52.6637 78.3555 52.7467C 78.4467 52.8297 78.5386 52.9119 78.6311 52.9935C 78.7236 53.075 78.8167 53.1559 78.9105 53.2359C 79.0043 53.316 79.0987 53.3954 79.1937 53.474C 79.2887 53.5526 79.3843 53.6304 79.4806 53.7075C 79.5768 53.7846 79.6737 53.861 79.7711 53.9366C 79.8685 54.0122 79.9666 54.087 80.0652 54.161C 80.1638 54.2351 80.263 54.3083 80.3628 54.3808C 80.4625 54.4533 80.5629 54.525 80.6637 54.5959C 80.7646 54.6668 80.8661 54.7369 80.9681 54.8062C 81.0701 54.8755 81.1726 54.9441 81.2757 55.0118C 81.3787 55.0795 81.4823 55.1464 81.5865 55.2124C 81.6906 55.2785 81.7952 55.3438 81.9004 55.4082C 82.0055 55.4726 82.1111 55.5362 82.2173 55.599C 82.3234 55.6618 82.4301 55.7237 82.5372 55.7848C 82.6443 55.8459 82.7519 55.9062 82.86 55.9656C 82.968 56.025 83.0765 56.0835 83.1855 56.1412C 83.2945 56.1989 83.4039 56.2558 83.5138 56.3118C 83.6237 56.3678 83.734 56.4229 83.8448 56.4771C 83.9555 56.5314 84.0667 56.5848 84.1782 56.6373C 84.2898 56.6898 84.4018 56.7414 84.5142 56.7922C 84.6266 56.8429 84.7394 56.8928 84.8526 56.9417C 84.9657 56.9907 85.0793 57.0388 85.1932 57.086C 85.3071 57.1332 85.4214 57.1795 85.5361 57.2249C 85.6508 57.2703 85.7658 57.3148 85.8811 57.3583C 85.9965 57.4019 86.1122 57.4446 86.2282 57.4864C 86.3442 57.5282 86.4606 57.569 86.5772 57.609C 86.6939 57.6489 86.8109 57.6879 86.9282 57.726C 87.0454 57.7642 87.163 57.8013 87.2809 57.8376C 87.3988 57.8739 87.5169 57.9092 87.6353 57.9436C 87.7537 57.978 87.8724 58.0115 87.9914 58.044C 88.1103 58.0766 88.2295 58.1082 88.349 58.1388C 88.4684 58.1695 88.5881 58.1992 88.708 58.228C 88.8279 58.2568 88.948 58.2846 89.0684 58.3115C 89.1887 58.3384 89.3093 58.3644 89.43 58.3894C 89.5508 58.4144 89.6717 58.4385 89.7929 58.4616C 89.914 58.4847 90.0353 58.5068 90.1568 58.528C 90.2783 58.5492 90.3999 58.5695 90.5217 58.5888C 90.6435 58.6081 90.7655 58.6264 90.8875 58.6438C 91.0096 58.6612 91.1318 58.6776 91.2542 58.693C 91.3765 58.7085 91.499 58.723 91.6216 58.7365C 91.7441 58.75 91.8668 58.7626 91.9896 58.7742C 92.1124 58.7858 92.2352 58.7965 92.3581 58.8061C 92.4811 58.8158 92.6041 58.8245 92.7272 58.8323C 92.8502 58.84 92.9734 58.8468 93.0966 58.8526C 93.2197 58.8584 93.343 58.8632 93.4662 58.8671C 93.5895 58.871 93.7127 58.8739 93.836 58.8758C 93.9593 58.8778 94.0827 58.8787 94.206 58.8787C 94.3293 58.8787 94.4526 58.8778 94.5759 58.8758C 94.6992 58.8739 94.8225 58.871 94.9457 58.8671C 95.069 58.8632 95.1922 58.8584 95.3154 58.8526C 95.4386 58.8468 95.5617 58.84 95.6848 58.8323C 95.8079 58.8245 95.9309 58.8158 96.0538 58.8061C 96.1767 58.7965 96.2996 58.7858 96.4224 58.7742C 96.5451 58.7626 96.6678 58.75 96.7904 58.7365C 96.913 58.723 97.0354 58.7085 97.1578 58.693C 97.2801 58.6776 97.4023 58.6612 97.5244 58.6438C 97.6465 58.6264 97.7684 58.6081 97.8902 58.5888C 98.012 58.5695 98.1337 58.5492 98.2552 58.528C 98.3766 58.5068 98.498 58.4847 98.6191 58.4616C 98.7402 58.4385 98.8612 58.4144 98.9819 58.3894C 99.1027 58.3644 99.2232 58.3384 99.3436 58.3115C 99.4639 58.2846 99.5841 58.2568 99.704 58.228C 99.8239 58.1992 99.9436 58.1695 100.063 58.1388C 100.182 58.1082 100.302 58.0766 100.421 58.044C 100.54 58.0115 100.658 57.978 100.777 57.9436C 100.895 57.9092 101.013 57.8739 101.131 57.8376C 101.249 57.8013 101.367 57.7642 101.484 57.726C 101.601 57.6879 101.718 57.6489 101.835 57.609C 101.951 57.569 102.068 57.5282 102.184 57.4864C 102.3 57.4446 102.415 57.4019 102.531 57.3583C 102.646 57.3148 102.761 57.2703 102.876 57.2249C 102.991 57.1795 103.105 57.1332 103.219 57.086C 103.333 57.0388 103.446 56.9907 103.559 56.9417C 103.673 56.8928 103.785 56.8429 103.898 56.7922C 104.01 56.7414 104.122 56.6898 104.234 56.6373C 104.345 56.5848 104.456 56.5314 104.567 56.4771C 104.678 56.4229 104.788 56.3678 104.898 56.3118C 105.008 56.2558 105.117 56.1989 105.226 56.1412C 105.335 56.0835 105.444 56.025 105.552 55.9656C 105.66 55.9062 105.768 55.8459 105.875 55.7848C 105.982 55.7237 106.089 55.6618 106.195 55.599C 106.301 55.5362 106.406 55.4726 106.512 55.4082C 106.617 55.3438 106.721 55.2785 106.825 55.2124C 106.93 55.1464 107.033 55.0795 107.136 55.0118C 107.239 54.9441 107.342 54.8755 107.444 54.8062C 107.546 54.7369 107.647 54.6668 107.748 54.5959C 107.849 54.525 107.949 54.4533 108.049 54.3808C 108.149 54.3083 108.248 54.2351 108.347 54.161C 108.445 54.087 108.543 54.0122 108.641 53.9366C 108.738 53.861 108.835 53.7846 108.931 53.7075C 109.028 53.6304 109.123 53.5526 109.218 53.474C 109.313 53.3954 109.408 53.316 109.501 53.2359C 109.595 53.1559 109.688 53.075 109.781 52.9935C 109.873 52.9119 109.965 52.8297 110.056 52.7467C 110.148 52.6637 110.238 52.58 110.328 52.4955C 110.418 52.4111 110.507 52.326 110.596 52.2402C 110.684 52.1544 110.772 52.0679 110.859 51.9807C 110.947 51.8935 111.033 51.8056 111.119 51.717C 111.205 51.6285 111.29 51.5392 111.374 51.4493C 111.459 51.3595 111.542 51.2689 111.625 51.1777C 111.708 51.0865 111.791 50.9946 111.872 50.9021C 111.954 50.8096 112.035 50.7165 112.115 50.6227C 112.195 50.5289 112.274 50.4345 112.353 50.3395C 112.431 50.2445 112.509 50.1489 112.586 50.0526C 112.663 49.9564 112.74 49.8596 112.815 49.7621C 112.891 49.6647 112.966 49.5666 113.04 49.468C 113.114 49.3694 113.187 49.2702 113.26 49.1705C 113.332 49.0707 113.404 48.9704 113.475 48.8695C 113.546 48.7686 113.616 48.6671 113.685 48.5651C 113.754 48.4632 113.823 48.3606 113.89 48.2575C 113.958 48.1545 114.025 48.0509 114.091 47.9468C 114.157 47.8426 114.222 47.738 114.287 47.6329C 114.351 47.5277 114.415 47.4221 114.478 47.3159C 114.541 47.2098 114.602 47.1031 114.664 46.996C 114.725 46.8889 114.785 46.7813 114.844 46.6733C 114.904 46.5652 114.962 46.4567 115.02 46.3477C 115.078 46.2387 115.135 46.1293 115.191 46.0194C 115.246 45.9095 115.302 45.7992 115.356 45.6885C 115.41 45.5777 115.464 45.4666 115.516 45.355C 115.569 45.2434 115.62 45.1314 115.671 45.019C 115.722 44.9066 115.771 44.7938 115.82 44.6807C 115.869 44.5675 115.918 44.4539 115.965 44.34C 116.012 44.2261 116.058 44.1118 116.104 43.9971C 116.149 43.8825 116.193 43.7675 116.237 43.6521C 116.281 43.5367 116.323 43.4211 116.365 43.305C 116.407 43.189 116.448 43.0726 116.488 42.956C 116.528 42.8393 116.567 42.7223 116.605 42.6051C 116.643 42.4878 116.68 42.3702 116.716 42.2523C 116.753 42.1345 116.788 42.0163 116.822 41.8979C 116.857 41.7795 116.89 41.6608 116.923 41.5418C 116.955 41.4229 116.987 41.3037 117.018 41.1843C 117.048 41.0648 117.078 40.9451 117.107 40.8252C 117.136 40.7053 117.163 40.5852 117.19 40.4648C 117.217 40.3445 117.243 40.2239 117.268 40.1032C 117.293 39.9824 117.317 39.8615 117.34 39.7404C 117.363 39.6192 117.386 39.4979 117.407 39.3764C 117.428 39.2549 117.448 39.1333 117.468 39.0115C 117.487 38.8897 117.505 38.7678 117.523 38.6457C 117.54 38.5236 117.556 38.4014 117.572 38.279C 117.587 38.1567 117.602 38.0342 117.615 37.9116C 117.629 37.7891 117.641 37.6664 117.653 37.5436C 117.665 37.4209 117.675 37.298 117.685 37.1751C 117.695 37.0521 117.703 36.9291 117.711 36.8061C 117.719 36.683 117.726 36.5598 117.731 36.4367C 117.737 36.3135 117.742 36.1903 117.746 36.067C 117.75 35.9438 117.753 35.8205 117.755 35.6972C 117.757 35.5739 117.757 35.4506 117.757 35.3272Z' fill='none' stroke='#0000c0' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 117.757 -35.3272C 117.757 -35.4506 117.757 -35.5739 117.755 -35.6972C 117.753 -35.8205 117.75 -35.9438 117.746 -36.067C 117.742 -36.1903 117.737 -36.3135 117.731 -36.4367C 117.726 -36.5598 117.719 -36.683 117.711 -36.8061C 117.703 -36.9291 117.695 -37.0521 117.685 -37.1751C 117.675 -37.298 117.665 -37.4209 117.653 -37.5436C 117.641 -37.6664 117.629 -37.7891 117.615 -37.9116C 117.602 -38.0342 117.587 -38.1567 117.572 -38.279C 117.556 -38.4014 117.54 -38.5236 117.523 -38.6457C 117.505 -38.7678 117.487 -38.8897 117.468 -39.0115C 117.448 -39.1333 117.428 -39.2549 117.407 -39.3764C 117.386 -39.4979 117.363 -39.6192 117.34 -39.7404C 117.317 -39.8615 117.293 -39.9824 117.268 -40.1032C 117.243 -40.2239 117.217 -40.3445 117.19 -40.4648C 117.163 -40.5852 117.136 -40.7053 117.107 -40.8252C 117.078 -40.9451 117.048 -41.0648 117.018 -41.1843C 116.987 -41.3037 116.955 -41.4229 116.923 -41.5418C 116.89 -41.6608 116.857 -41.7795 116.822 -41.8979C 116.788 -42.0163 116.753 -42.1345 116.716 -42.2523C 116.68 -42.3702 116.643 -42.4878 116.605 -42.6051C 116.567 -42.7223 116.528 -42.8393 116.488 -42.956C 116.448 -43.0726 116.407 -43.189 116.365 -43.305C 116.323 -43.4211 116.281 -43.5367 116.237 -43.6521C 116.193 -43.7675 116.149 -43.8825 116.104 -43.9971C 116.058 -44.1118 116.012 -44.2261 115.965 -44.34C 115.918 -44.4539 115.869 -44.5675 115.82 -44.6807C 115.771 -44.7938 115.722 -44.9066 115.671 -45.019C 115.62 -45.1314 115.569 -45.2434 115.516 -45.355C 115.464 -45.4666 115.41 -45.5777 115.356 -45.6885C 115.302 -45.7992 115.246 -45.9095 115.191 -46.0194C 115.135 -46.1293 115.078 -46.2387 115.02 -46.3477C 114.962 -46.4567 114.904 -46.5652 114.844 -46.6733C 114.785 -46.7813 114.725 -46.8889 114.664 -46.996C 114.602 -47.1031 114.541 -47.2098 114.478 -47.3159C 114.415 -47.4221 114.351 -47.5277 114.287 -47.6329C 114.222 -47.738 114.157 -47.8426 114.091 -47.9468C 114.025 -48.0509 113.958 -48.1545 113.89 -48.2575C 113.823 -48.3606 113.754 -48.4632 113.685 -48.5651C 113.616 -48.6671 113.546 -48.7686 113.475 -48.8695C 113.404 -48.9704 113.332 -49.0707 113.26 -49.1705C 113.187 -49.2702 113.114 -49.3694 113.04 -49.468C 112.966 -49.5666 112.891 -49.6647 112.815 -49.7621C 112.74 -49.8596 112.663 -49.9564 112.586 -50.0526C 112.509 -50.1489 112.431 -50.2445 112.353 -50.3395C 112.274 -50.4345 112.195 -50.5289 112.115 -50.6227C 112.035 -50.7165 111.954 -50.8096 111.872 -50.9021C 111.791 -50.9946 111.708 -51.0865 111.625 -51.1777C 111.542 -51.2689 111.459 -51.3595 111.374 -51.4493C 111.29 -51.5392 111.205 -51.6285 111.119 -51.717C 111.033 -51.8056 110.947 -51.8935 110.859 -51.9807C 110.772 -52.0679 110.684 -52.1544 110.596 -52.2402C 110.507 -52.326 110.418 -52.4111 110.328 -52.4955C 110.238 -52.58 110.148 -52.6637 110.056 -52.7467C 109.965 -52.8297 109.873 -52.9119 109.781 -52.9935C 109.688 -53.075 109.595 -53.1559 109.501 -53.2359C 109.408 -53.316 109.313 -53.3954 109.218 -53.474C 109.123 -53.5526 109.028 -53.6304 108.931 -53.7075C 108.835 -53.7846 108.738 -53.861 108.641 -53.9366C 108.543 -54.0122 108.445 -54.087 108.347 -54.161C 108.248 -54.2351 108.149 -54.3083 108.049 -54.3808C 107.949 -54.4533 107.849 -54.525 107.748 -54.5959C 107.647 -54.6668 107.546 -54.7369 107.444 -54.8062C 107.342 -54.8755 107.239 -54.9441 107.136 -55.0118C 107.033 -55.0795 106.93 -55.1464 106.825 -55.2124C 106.721 -55.2785 106.617 -55.3438 106.512 -55.4082C 106.406 -55.4726 106.301 -55.5362 106.195 -55.599C 106.089 -55.6618 105.982 -55.7237 105.875 -55.7848C 105.768 -55.8459 105.66 -55.9062 105.552 -55.9656C 105.444 -56.025 105.335 -56.0835 105.226 -56.1412C 105.117 -56.1989 105.008 -56.2558 104.898 -56.3118C 104.788 -56.3678 104.678 -56.4229 104.567 -56.4771C 104.456 -56.5314 104.345 -56.5848 104.234 -56.6373C 104.122 -56.6898 104.01 -56.7414 103.898 -56.7922C 103.785 -56.8429 103.673 -56.8928 103.559 -56.9417C 103.446 -56.9907 103.333 -57.0388 103.219 -57.086C 103.105 -57.1332 102.991 -57.1795 102.876 -57.2249C 102.761 -57.2703 102.646 -57.3148 102.531 -57.3583C 102.415 -57.4019 102.3 -57.4446 102.184 -57.4864C 102.068 -57.5282 101.951 -57.569 101.835 -57.609C 101.718 -57.6489 101.601 -57.6879 101.484 -57.726C 101.367 -57.7642 101.249 -57.8013 101.131 -57.8376C 101.013 -57.8739 100.895 -57.9092 100.777 -57.9436C 100.658 -57.978 100.54 -58.0115 100.421 -58.044C 100.302 -58.0766 100.182 -58.1082 100.063 -58.1388C 99.9436 -58.1695 99.8239 -58.1992 99.704 -58.228C 99.5841 -58.2568 99.4639 -58.2846 99.3436 -58.3115C 99.2232 -58.3384 99.1027 -58.3644 98.9819 -58.3894C 98.8612 -58.4144 98.7402 -58.4385 98.6191 -58.4616C 98.498 -58.4847 98.3766 -58.5068 98.2552 -58.528C 98.1337 -58.5492 98.012 -58.5695 97.8902 -58.5888C 97.7684 -58.6081 97.6465 -58.6264 97.5244 -58.6438C 97.4023 -58.6612 97.2801 -58.6776 97.1578 -58.693C 97.0354 -58.7085 96.913 -58.723 96.7904 -58.7365C 96.6678 -58.75 96.5451 -58.7626 96.4224 -58.7742C 96.2996 -58.7858 96.1767 -58.7965 96.0538 -58.8061C 95.9309 -58.8158 95.8079 -58.8245 95.6848 -58.8323C 95.5617 -58.84 95.4386 -58.8468 95.3154 -58.8526C 95.1922 -58.8584 95.069 -58.8632 94.9457 -58.8671C 94.8225 -58.871 94.6992 -58.8739 94.5759 -58.8758C 94.4526 -58.8778 94.3293 -58.8787 94.206 -58.8787C 94.0827 -58.8787 93.9593 -58.8778 93.836 -58.8758C 93.7127 -58.8739 93.5895 -58.871 93.4662 -58.8671C 93.343 -58.8632 93.2197 -58.8584 93.0966 -58.8526C 92.9734 -58.8468 92.8502 -58.84 92.7272 -58.8323C 92.6041 -58.8245 92.4811 -58.8158 92.3581 -58.8061C 92.2352 -58.7965 92.1124 -58.7858 91.9896 -58.7742C 91.8668 -58.7626 91.7441 -58.75 91.6216 -58.7365C 91.499 -58.723 91.3765 -58.7085 91.2542 -58.693C 91.1318 -58.6776 91.0096 -58.6612 90.8875 -58.6438C 90.7655 -58.6264 90.6435 -58.6081 90.5217 -58.5888C 90.3999 -58.5695 90.2783 -58.5492 90.1568 -58.528C 90.0353 -58.5068 89.914 -58.4847 89.7929 -58.4616C 89.6717 -58.4385 89.5508 -58.4144 89.43 -58.3894C 89.3093 -58.3644 89.1887 -58.3384 89.0684 -58.3115C 88.948 -58.2846 88.8279 -58.2568 88.708 -58.228C 88.5881 -58.1992 88.4684 -58.1695 88.349 -58.1388C 88.2295 -58.1082 88.1103 -58.0766 87.9914 -58.044C 87.8724 -58.0115 87.7537 -57.978 87.6353 -57.9436C 87.5169 -57.9092 87.3988 -57.8739 87.2809 -57.8376C 87.163 -57.8013 87.0454 -57.7642 86.9282 -57.726C 86.8109 -57.6879 86.6939 -57.6489 86.5772 -57.609C 86.4606 -57.569 86.3442 -57.5282 86.2282 -57.4864C 86.1122 -57.4446 85.9965 -57.4019 85.8811 -57.3583C 85.7658 -57.3148 85.6508 -57.2703 85.5361 -57.2249C 85.4214 -57.1795 85.3071 -57.1332 85.1932 -57.086C 85.0793 -57.0388 84.9657 -56.9907 84.8526 -56.9417C 84.7394 -56.8928 84.6266 -56.8429 84.5142 -56.7922C 84.4018 -56.7414 84.2898 -56.6898 84.1782 -56.6373C 84.0667 -56.5848 83.9555 -56.5314 83.8448 -56.4771C 83.734 -56.4229 83.6237 -56.3678 83.5138 -56.3118C 83.4039 -56.2558 83.2945 -56.1989 83.1855 -56.1412C 83.0765 -56.0835 82.968 -56.025 82.86 -55.9656C 82.7519 -55.9062 82.6443 -55.8459 82.5372 -55.7848C 82.4301 -55.7237 82.3234 -55.6618 82.2173 -55.599C 82.1111 -55.5362 82.0055 -55.4726 81.9004 -55.4082C 81.7952 -55.3438 81.6906 -55.2785 81.5865 -55.2124C 81.4823 -55.1464 81.3787 -55.0795 81.2757 -55.0118C 81.1726 -54.9441 81.0701 -54.8755 80.9681 -54.8062C 80.8661 -54.7369 80.7646 -54.6668 80.6637 -54.5959C 80.5629 -54.525 80.4625 -54.4533 80.3628 -54.3808C 80.263 -54.3083 80.1638 -54.2351 80.0652 -54.161C 79.9666 -54.087 79.8685 -54.0122 79.7711 -53.9366C 79.6737 -53.861 79.5768 -53.7846 79.4806 -53.7075C 79.3843 -53.6304 79.2887 -53.5526 79.1937 -53.474C 79.0987 -53.3954 79.0043 -53.316 78.9105 -53.2359C 78.8167 -53.1559 78.7236 -53.075 78.6311 -52.9935C 78.5386 -52.9119 78.4467 -52.8297 78.3555 -52.7467C 78.2643 -52.6637 78.1738 -52.58 78.0839 -52.4955C 77.994 -52.4111 77.9047 -52.326 77.8162 -52.2402C 77.7276 -52.1544 77.6398 -52.0679 77.5526 -51.9807C 77.4654 -51.8935 77.3788 -51.8056 77.293 -51.717C 77.2072 -51.6285 77.1221 -51.5392 77.0377 -51.4493C 76.9533 -51.3595 76.8696 -51.2689 76.7866 -51.1777C 76.7036 -51.0865 76.6213 -50.9946 76.5397 -50.9021C 76.4582 -50.8096 76.3774 -50.7165 76.2973 -50.6227C 76.2172 -50.5289 76.1378 -50.4345 76.0592 -50.3395C 75.9806 -50.2445 75.9028 -50.1489 75.8257 -50.0526C 75.7486 -49.9564 75.6722 -49.8596 75.5966 -49.7621C 75.5211 -49.6647 75.4463 -49.5666 75.3722 -49.468C 75.2982 -49.3694 75.2249 -49.2702 75.1524 -49.1705C 75.0799 -49.0707 75.0082 -48.9704 74.9373 -48.8695C 74.8664 -48.7686 74.7963 -48.6671 74.727 -48.5651C 74.6577 -48.4632 74.5892 -48.3606 74.5215 -48.2575C 74.4538 -48.1545 74.3869 -48.0509 74.3208 -47.9468C 74.2547 -47.8426 74.1895 -47.738 74.125 -47.6329C 74.0606 -47.5277 73.997 -47.4221 73.9342 -47.3159C 73.8714 -47.2098 73.8095 -47.1031 73.7484 -46.996C 73.6873 -46.8889 73.6271 -46.7813 73.5676 -46.6733C 73.5082 -46.5652 73.4497 -46.4567 73.392 -46.3477C 73.3343 -46.2387 73.2774 -46.1293 73.2214 -46.0194C 73.1655 -45.9095 73.1103 -45.7992 73.0561 -45.6885C 73.0018 -45.5777 72.9485 -45.4666 72.8959 -45.355C 72.8434 -45.2434 72.7918 -45.1314 72.7411 -45.019C 72.6903 -44.9066 72.6405 -44.7938 72.5915 -44.6807C 72.5425 -44.5675 72.4944 -44.4539 72.4472 -44.34C 72.4 -44.2261 72.3537 -44.1118 72.3084 -43.9971C 72.263 -43.8825 72.2185 -43.7675 72.1749 -43.6521C 72.1313 -43.5367 72.0886 -43.4211 72.0468 -43.305C 72.0051 -43.189 71.9642 -43.0726 71.9243 -42.956C 71.8843 -42.8393 71.8453 -42.7223 71.8072 -42.6051C 71.7691 -42.4878 71.7319 -42.3702 71.6956 -42.2523C 71.6594 -42.1345 71.624 -42.0163 71.5896 -41.8979C 71.5552 -41.7795 71.5217 -41.6608 71.4892 -41.5418C 71.4567 -41.4229 71.4251 -41.3037 71.3944 -41.1843C 71.3637 -41.0648 71.334 -40.9451 71.3052 -40.8252C 71.2764 -40.7053 71.2486 -40.5852 71.2217 -40.4648C 71.1948 -40.3445 71.1688 -40.2239 71.1438 -40.1032C 71.1188 -39.9824 71.0948 -39.8615 71.0716 -39.7404C 71.0485 -39.6192 71.0264 -39.4979 71.0052 -39.3764C 70.984 -39.2549 70.9637 -39.1333 70.9444 -39.0115C 70.9252 -38.8897 70.9068 -38.7678 70.8894 -38.6457C 70.8721 -38.5236 70.8556 -38.4014 70.8402 -38.279C 70.8247 -38.1567 70.8102 -38.0342 70.7967 -37.9116C 70.7832 -37.7891 70.7706 -37.6664 70.759 -37.5436C 70.7474 -37.4209 70.7368 -37.298 70.7271 -37.1751C 70.7174 -37.0521 70.7087 -36.9291 70.701 -36.8061C 70.6932 -36.683 70.6864 -36.5598 70.6806 -36.4367C 70.6748 -36.3135 70.67 -36.1903 70.6661 -36.067C 70.6622 -35.9438 70.6593 -35.8205 70.6574 -35.6972C 70.6555 -35.5739 70.6545 -35.4506 70.6545 -35.3272C 70.6545 -35.2039 70.6555 -35.0806 70.6574 -34.9573C 70.6593 -34.834 70.6622 -34.7107 70.6661 -34.5875C 70.67 -34.4642 70.6748 -34.341 70.6806 -34.2178C 70.6864 -34.0946 70.6932 -33.9715 70.701 -33.8484C 70.7087 -33.7254 70.7174 -33.6023 70.7271 -33.4794C 70.7368 -33.3565 70.7474 -33.2336 70.759 -33.1109C 70.7706 -32.9881 70.7832 -32.8654 70.7967 -32.7428C 70.8102 -32.6203 70.8247 -32.4978 70.8402 -32.3755C 70.8556 -32.2531 70.8721 -32.1309 70.8894 -32.0088C 70.9068 -31.8867 70.9252 -31.7648 70.9444 -31.643C 70.9637 -31.5212 70.984 -31.3995 71.0052 -31.2781C 71.0264 -31.1566 71.0485 -31.0353 71.0716 -30.9141C 71.0948 -30.793 71.1188 -30.6721 71.1438 -30.5513C 71.1688 -30.4305 71.1948 -30.31 71.2217 -30.1896C 71.2486 -30.0693 71.2764 -29.9492 71.3052 -29.8293C 71.334 -29.7093 71.3637 -29.5897 71.3944 -29.4702C 71.4251 -29.3508 71.4567 -29.2316 71.4892 -29.1126C 71.5217 -28.9937 71.5552 -28.875 71.5896 -28.7566C 71.624 -28.6382 71.6594 -28.52 71.6956 -28.4022C 71.7319 -28.2843 71.7691 -28.1667 71.8072 -28.0494C 71.8453 -27.9321 71.8843 -27.8152 71.9243 -27.6985C 71.9642 -27.5818 72.0051 -27.4655 72.0468 -27.3495C 72.0886 -27.2334 72.1313 -27.1177 72.1749 -27.0024C 72.2185 -26.887 72.263 -26.772 72.3084 -26.6574C 72.3537 -26.5427 72.4 -26.4284 72.4472 -26.3145C 72.4944 -26.2005 72.5425 -26.087 72.5915 -25.9738C 72.6405 -25.8606 72.6903 -25.7479 72.7411 -25.6355C 72.7918 -25.5231 72.8434 -25.4111 72.8959 -25.2995C 72.9485 -25.1879 73.0018 -25.0768 73.0561 -24.966C 73.1103 -24.8553 73.1655 -24.745 73.2214 -24.6351C 73.2774 -24.5252 73.3343 -24.4158 73.392 -24.3068C 73.4497 -24.1978 73.5082 -24.0893 73.5676 -23.9812C 73.6271 -23.8732 73.6873 -23.7656 73.7484 -23.6584C 73.8095 -23.5513 73.8714 -23.4447 73.9342 -23.3386C 73.997 -23.2324 74.0606 -23.1268 74.125 -23.0216C 74.1895 -22.9165 74.2547 -22.8118 74.3208 -22.7077C 74.3869 -22.6036 74.4538 -22.5 74.5215 -22.3969C 74.5892 -22.2939 74.6577 -22.1913 74.727 -22.0893C 74.7963 -21.9873 74.8664 -21.8859 74.9373 -21.785C 75.0082 -21.6841 75.0799 -21.5838 75.1524 -21.484C 75.2249 -21.3843 75.2982 -21.2851 75.3722 -21.1864C 75.4463 -21.0878 75.5211 -20.9898 75.5966 -20.8924C 75.6722 -20.7949 75.7486 -20.6981 75.8257 -20.6018C 75.9028 -20.5056 75.9806 -20.41 76.0592 -20.315C 76.1378 -20.2199 76.2172 -20.1255 76.2973 -20.0318C 76.3774 -19.938 76.4582 -19.8449 76.5397 -19.7524C 76.6213 -19.6599 76.7036 -19.568 76.7866 -19.4768C 76.8696 -19.3856 76.9533 -19.295 77.0377 -19.2051C 77.1221 -19.1152 77.2072 -19.026 77.293 -18.9375C 77.3788 -18.8489 77.4654 -18.761 77.5526 -18.6738C 77.6398 -18.5866 77.7276 -18.5001 77.8162 -18.4143C 77.9047 -18.3285 77.994 -18.2434 78.0839 -18.1589C 78.1738 -18.0745 78.2643 -17.9908 78.3555 -17.9078C 78.4467 -17.8248 78.5386 -17.7426 78.6311 -17.661C 78.7236 -17.5795 78.8167 -17.4986 78.9105 -17.4185C 79.0043 -17.3385 79.0987 -17.2591 79.1937 -17.1805C 79.2887 -17.1019 79.3843 -17.024 79.4806 -16.9469C 79.5768 -16.8698 79.6737 -16.7935 79.7711 -16.7179C 79.8685 -16.6423 79.9666 -16.5675 80.0652 -16.4935C 80.1638 -16.4194 80.263 -16.3462 80.3628 -16.2737C 80.4625 -16.2012 80.5629 -16.1295 80.6637 -16.0586C 80.7646 -15.9877 80.8661 -15.9176 80.9681 -15.8483C 81.0701 -15.7789 81.1726 -15.7104 81.2757 -15.6427C 81.3787 -15.575 81.4823 -15.5081 81.5865 -15.4421C 81.6906 -15.376 81.7952 -15.3107 81.9004 -15.2463C 82.0055 -15.1819 82.1111 -15.1183 82.2173 -15.0555C 82.3234 -14.9927 82.4301 -14.9308 82.5372 -14.8697C 82.6443 -14.8086 82.7519 -14.7483 82.86 -14.6889C 82.968 -14.6295 83.0765 -14.5709 83.1855 -14.5132C 83.2945 -14.4555 83.4039 -14.3987 83.5138 -14.3427C 83.6237 -14.2867 83.734 -14.2316 83.8448 -14.1774C 83.9555 -14.1231 84.0667 -14.0697 84.1782 -14.0172C 84.2898 -13.9647 84.4018 -13.9131 84.5142 -13.8623C 84.6266 -13.8116 84.7394 -13.7617 84.8526 -13.7127C 84.9657 -13.6638 85.0793 -13.6157 85.1932 -13.5685C 85.3071 -13.5213 85.4214 -13.475 85.5361 -13.4296C 85.6508 -13.3842 85.7658 -13.3397 85.8811 -13.2961C 85.9965 -13.2525 86.1122 -13.2099 86.2282 -13.1681C 86.3442 -13.1263 86.4606 -13.0855 86.5772 -13.0455C 86.6939 -13.0056 86.8109 -12.9665 86.9282 -12.9284C 87.0454 -12.8903 87.163 -12.8531 87.2809 -12.8169C 87.3988 -12.7806 87.5169 -12.7453 87.6353 -12.7109C 87.7537 -12.6765 87.8724 -12.643 87.9914 -12.6105C 88.1103 -12.5779 88.2295 -12.5463 88.349 -12.5157C 88.4684 -12.485 88.5881 -12.4553 88.708 -12.4265C 88.8279 -12.3977 88.948 -12.3698 89.0684 -12.3429C 89.1887 -12.316 89.3093 -12.2901 89.43 -12.2651C 89.5508 -12.2401 89.6717 -12.216 89.7929 -12.1929C 89.914 -12.1698 90.0353 -12.1476 90.1568 -12.1264C 90.2783 -12.1052 90.3999 -12.085 90.5217 -12.0657C 90.6435 -12.0464 90.7655 -12.0281 90.8875 -12.0107C 91.0096 -11.9933 91.1318 -11.9769 91.2542 -11.9615C 91.3765 -11.946 91.499 -11.9315 91.6216 -11.918C 91.7441 -11.9044 91.8668 -11.8919 91.9896 -11.8803C 92.1124 -11.8687 92.2352 -11.858 92.3581 -11.8483C 92.4811 -11.8387 92.6041 -11.83 92.7272 -11.8222C 92.8502 -11.8145 92.9734 -11.8077 93.0966 -11.8019C 93.2197 -11.7961 93.343 -11.7912 93.4662 -11.7874C 93.5895 -11.7835 93.7127 -11.7806 93.836 -11.7787C 93.9593 -11.7767 94.0827 -11.7757 94.206 -11.7757C 94.3293 -11.7757 94.4526 -11.7767 94.5759 -11.7787C 94.6992 -11.7806 94.8225 -11.7835 94.9457 -11.7874C 95.069 -11.7912 95.1922 -11.7961 95.3154 -11.8019C 95.4386 -11.8077 95.5617 -11.8145 95.6848 -11.8222C 95.8079 -11.83 95.9309 -11.8387 96.0538 -11.8483C 96.1767 -11.858 96.2996 -11.8687 96.4224 -11.8803C 96.5451 -11.8919 96.6678 -11.9044 96.7904 -11.918C 96.913 -11.9315 97.0354 -11.946 97.1578 -11.9615C 97.2801 -11.9769 97.4023 -11.9933 97.5244 -12.0107C 97.6465 -12.0281 97.7684 -12.0464 97.8902 -12.0657C 98.012 -12.085 98.1337 -12.1052 98.2552 -12.1264C 98.3766 -12.1476 98.498 -12.1698 98.6191 -12.1929C 98.7402 -12.216 98.8612 -12.2401 98.9819 -12.2651C 99.1027 -12.2901 99.2232 -12.316 99.3436 -12.3429C 99.4639 -12.3698 99.5841 -12.3977 99.704 -12.4265C 99.8239 -12.4553 99.9436 -12.485 100.063 -12.5157C 100.182 -12.5463 100.302 -12.5779 100.421 -12.6105C 100.54 -12.643 100.658 -12.6765 100.777 -12.7109C 100.895 -12.7453 101.013 -12.7806 101.131 -12.8169C 101.249 -12.8531 101.367 -12.8903 101.484 -12.9284C 101.601 -12.9665 101.718 -13.0056 101.835 -13.0455C 101.951 -13.0855 102.068 -13.1263 102.184 -13.1681C 102.3 -13.2099 102.415 -13.2525 102.531 -13.2961C 102.646 -13.3397 102.761 -13.3842 102.876 -13.4296C 102.991 -13.475 103.105 -13.5213 103.219 -13.5685C 103.333 -13.6157 103.446 -13.6638 103.559 -13.7127C 103.673 -13.7617 103.785 -13.8116 103.898 -13.8623C 104.01 -13.9131 104.122 -13.9647 104.234 -14.0172C 104.345 -14.0697 104.456 -14.1231 104.567 -14.1774C 104.678 -14.2316 104.788 -14.2867 104.898 -14.3427C 105.008 -14.3987 105.117 -14.4555 105.226 -14.5132C 105.335 -14.5709 105.444 -14.6295 105.552 -14.6889C 105.66 -14.7483 105.768 -14.8086 105.875 -14.8697C 105.982 -14.9308 106.089 -14.9927 106.195 -15.0555C 106.301 -15.1183 106.406 -15.1819 106.512 -15.2463C 106.617 -15.3107 106.721 -15.376 106.825 -15.4421C 106.93 -15.5081 107.033 -15.575 107.136 -15.6427C 107.239 -15.7104 107.342 -15.7789 107.444 -15.8483C 107.546 -15.9176 107.647 -15.9877 107.748 -16.0586C 107.849 -16.1295 107.949 -16.2012 108.049 -16.2737C 108.149 -16.3462 108.248 -16.4194 108.347 -16.4935C 108.445 -16.5675 108.543 -16.6423 108.641 -16.7179C 108.738 -16.7935 108.835 -16.8698 108.931 -16.9469C 109.028 -17.024 109.123 -17.1019 109.218 -17.1805C 109.313 -17.2591 109.408 -17.3385 109.501 -17.4185C 109.595 -17.4986 109.688 -17.5795 109.781 -17.661C 109.873 -17.7426 109.965 -17.8248 110.056 -17.9078C 110.148 -17.9908 110.238 -18.0745 110.328 -18.1589C 110.418 -18.2434 110.507 -18.3285 110.596 -18.4143C 110.684 -18.5001 110.772 -18.5866 110.859 -18.6738C 110.947 -18.761 111.033 -18.8489 111.119 -18.9375C 111.205 -19.026 111.29 -19.1152 111.374 -19.2051C 111.459 -19.295 111.542 -19.3856 111.625 -19.4768C 111.708 -19.568 111.791 -19.6599 111.872 -19.7524C 111.954 -19.8449 112.035 -19.938 112.115 -20.0318C 112.195 -20.1255 112.274 -20.2199 112.353 -20.315C 112.431 -20.41 112.509 -20.5056 112.586 -20.6018C 112.663 -20.6981 112.74 -20.7949 112.815 -20.8924C 112.891 -20.9898 112.966 -21.0878 113.04 -21.1864C 113.114 -21.2851 113.187 -21.3843 113.26 -21.484C 113.332 -21.5838 113.404 -21.6841 113.475 -21.785C 113.546 -21.8859 113.616 -21.9873 113.685 -22.0893C 113.754 -22.1913 113.823 -22.2939 113.89 -22.3969C 113.958 -22.5 114.025 -22.6036 114.091 -22.7077C 114.157 -22.8118 114.222 -22.9165 114.287 -23.0216C 114.351 -23.1268 114.415 -23.2324 114.478 -23.3386C 114.541 -23.4447 114.602 -23.5513 114.664 -23.6584C 114.725 -23.7656 114.785 -23.8732 114.844 -23.9812C 114.904 -24.0893 114.962 -24.1978 115.02 -24.3068C 115.078 -24.4158 115.135 -24.5252 115.191 -24.6351C 115.246 -24.745 115.302 -24.8553 115.356 -24.966C 115.41 -25.0768 115.464 -25.1879 115.516 -25.2995C 115.569 -25.4111 115.62 -25.5231 115.671 -25.6355C 115.722 -25.7479 115.771 -25.8606 115.82 -25.9738C 115.869 -26.087 115.918 -26.2005 115.965 -26.3145C 116.012 -26.4284 116.058 -26.5427 116.104 -26.6574C 116.149 -26.772 116.193 -26.887 116.237 -27.0024C 116.281 -27.1177 116.323 -27.2334 116.365 -27.3495C 116.407 -27.4655 116.448 -27.5818 116.488 -27.6985C 116.528 -27.8152 116.567 -27.9321 116.605 -28.0494C 116.643 -28.1667 116.68 -28.2843 116.716 -28.4022C 116.753 -28.52 116.788 -28.6382 116.822 -28.7566C 116.857 -28.875 116.89 -28.9937 116.923 -29.1126C 116.955 -29.2316 116.987 -29.3508 117.018 -29.4702C 117.048 -29.5897 117.078 -29.7093 117.107 -29.8293C 117.136 -29.9492 117.163 -30.0693 117.19 -30.1896C 117.217 -30.31 117.243 -30.4305 117.268 -30.5513C 117.293 -30.6721 117.317 -30.793 117.34 -30.9141C 117.363 -31.0353 117.386 -31.1566 117.407 -31.2781C 117.428 -31.3995 117.448 -31.5212 117.468 -31.643C 117.487 -31.7648 117.505 -31.8867 117.523 -32.0088C 117.54 -32.1309 117.556 -32.2531 117.572 -32.3755C 117.587 -32.4978 117.602 -32.6203 117.615 -32.7428C 117.629 -32.8654 117.641 -32.9881 117.653 -33.1109C 117.665 -33.2336 117.675 -33.3565 117.685 -33.4794C 117.695 -33.6023 117.703 -33.7254 117.711 -33.8484C 117.719 -33.9715 117.726 -34.0946 117.731 -34.2178C 117.737 -34.341 117.742 -34.4642 117.746 -34.5875C 117.75 -34.7107 117.753 -34.834 117.755 -34.9573C 117.757 -35.0806 117.757 -35.2039 117.757 -35.3272Z' fill='none' stroke='#0000c0' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 117.757 -105.982C 117.757 -106.105 117.757 -106.228 117.755 -106.352C 117.753 -106.475 117.75 -106.598 117.746 -106.721C 117.742 -106.845 117.737 -106.968 117.731 -107.091C 117.726 -107.214 117.719 -107.337 117.711 -107.461C 117.703 -107.584 117.695 -107.707 117.685 -107.83C 117.675 -107.952 117.665 -108.075 117.653 -108.198C 117.641 -108.321 117.629 -108.444 117.615 -108.566C 117.602 -108.689 117.587 -108.811 117.572 -108.934C 117.556 -109.056 117.54 -109.178 117.523 -109.3C 117.505 -109.422 117.487 -109.544 117.468 -109.666C 117.448 -109.788 117.428 -109.909 117.407 -110.031C 117.386 -110.152 117.363 -110.274 117.34 -110.395C 117.317 -110.516 117.293 -110.637 117.268 -110.758C 117.243 -110.878 117.217 -110.999 117.19 -111.119C 117.163 -111.24 117.136 -111.36 117.107 -111.48C 117.078 -111.6 117.048 -111.719 117.018 -111.839C 116.987 -111.958 116.955 -112.077 116.923 -112.196C 116.89 -112.315 116.857 -112.434 116.822 -112.552C 116.788 -112.671 116.753 -112.789 116.716 -112.907C 116.68 -113.025 116.643 -113.142 116.605 -113.26C 116.567 -113.377 116.528 -113.494 116.488 -113.61C 116.448 -113.727 116.407 -113.843 116.365 -113.96C 116.323 -114.076 116.281 -114.191 116.237 -114.307C 116.193 -114.422 116.149 -114.537 116.104 -114.652C 116.058 -114.766 116.012 -114.881 115.965 -114.994C 115.918 -115.108 115.869 -115.222 115.82 -115.335C 115.771 -115.448 115.722 -115.561 115.671 -115.674C 115.62 -115.786 115.569 -115.898 115.516 -116.009C 115.464 -116.121 115.41 -116.232 115.356 -116.343C 115.302 -116.454 115.246 -116.564 115.191 -116.674C 115.135 -116.784 115.078 -116.893 115.02 -117.002C 114.962 -117.111 114.904 -117.22 114.844 -117.328C 114.785 -117.436 114.725 -117.543 114.664 -117.651C 114.602 -117.758 114.541 -117.864 114.478 -117.97C 114.415 -118.077 114.351 -118.182 114.287 -118.287C 114.222 -118.392 114.157 -118.497 114.091 -118.601C 114.025 -118.705 113.958 -118.809 113.89 -118.912C 113.823 -119.015 113.754 -119.118 113.685 -119.22C 113.616 -119.322 113.546 -119.423 113.475 -119.524C 113.404 -119.625 113.332 -119.725 113.26 -119.825C 113.187 -119.925 113.114 -120.024 113.04 -120.123C 112.966 -120.221 112.891 -120.319 112.815 -120.417C 112.74 -120.514 112.663 -120.611 112.586 -120.707C 112.509 -120.803 112.431 -120.899 112.353 -120.994C 112.274 -121.089 112.195 -121.183 112.115 -121.277C 112.035 -121.371 111.954 -121.464 111.872 -121.557C 111.791 -121.649 111.708 -121.741 111.625 -121.832C 111.542 -121.923 111.459 -122.014 111.374 -122.104C 111.29 -122.194 111.205 -122.283 111.119 -122.372C 111.033 -122.46 110.947 -122.548 110.859 -122.635C 110.772 -122.722 110.684 -122.809 110.596 -122.895C 110.507 -122.98 110.418 -123.066 110.328 -123.15C 110.238 -123.234 110.148 -123.318 110.056 -123.401C 109.965 -123.484 109.873 -123.566 109.781 -123.648C 109.688 -123.73 109.595 -123.81 109.501 -123.89C 109.408 -123.971 109.313 -124.05 109.218 -124.128C 109.123 -124.207 109.028 -124.285 108.931 -124.362C 108.835 -124.439 108.738 -124.515 108.641 -124.591C 108.543 -124.667 108.445 -124.741 108.347 -124.815C 108.248 -124.89 108.149 -124.963 108.049 -125.035C 107.949 -125.108 107.849 -125.179 107.748 -125.25C 107.647 -125.321 107.546 -125.391 107.444 -125.461C 107.342 -125.53 107.239 -125.599 107.136 -125.666C 107.033 -125.734 106.93 -125.801 106.825 -125.867C 106.721 -125.933 106.617 -125.998 106.512 -126.063C 106.406 -126.127 106.301 -126.191 106.195 -126.253C 106.089 -126.316 105.982 -126.378 105.875 -126.439C 105.768 -126.5 105.66 -126.561 105.552 -126.62C 105.444 -126.679 105.335 -126.738 105.226 -126.796C 105.117 -126.853 105.008 -126.91 104.898 -126.966C 104.788 -127.022 104.678 -127.077 104.567 -127.132C 104.456 -127.186 104.345 -127.239 104.234 -127.292C 104.122 -127.344 104.01 -127.396 103.898 -127.447C 103.785 -127.497 103.673 -127.547 103.559 -127.596C 103.446 -127.645 103.333 -127.693 103.219 -127.74C 103.105 -127.788 102.991 -127.834 102.876 -127.879C 102.761 -127.925 102.646 -127.969 102.531 -128.013C 102.415 -128.056 102.3 -128.099 102.184 -128.141C 102.068 -128.183 101.951 -128.224 101.835 -128.263C 101.718 -128.303 101.601 -128.342 101.484 -128.381C 101.367 -128.419 101.249 -128.456 101.131 -128.492C 101.013 -128.528 100.895 -128.564 100.777 -128.598C 100.658 -128.632 100.54 -128.666 100.421 -128.698C 100.302 -128.731 100.182 -128.763 100.063 -128.793C 99.9436 -128.824 99.8239 -128.854 99.704 -128.882C 99.5841 -128.911 99.4639 -128.939 99.3436 -128.966C 99.2232 -128.993 99.1027 -129.019 98.9819 -129.044C 98.8612 -129.069 98.7402 -129.093 98.6191 -129.116C 98.498 -129.139 98.3766 -129.161 98.2552 -129.183C 98.1337 -129.204 98.012 -129.224 97.8902 -129.243C 97.7684 -129.263 97.6465 -129.281 97.5244 -129.298C 97.4023 -129.316 97.2801 -129.332 97.1578 -129.348C 97.0354 -129.363 96.913 -129.377 96.7904 -129.391C 96.6678 -129.405 96.5451 -129.417 96.4224 -129.429C 96.2996 -129.44 96.1767 -129.451 96.0538 -129.461C 95.9309 -129.47 95.8079 -129.479 95.6848 -129.487C 95.5617 -129.494 95.4386 -129.501 95.3154 -129.507C 95.1922 -129.513 95.069 -129.518 94.9457 -129.522C 94.8225 -129.525 94.6992 -129.528 94.5759 -129.53C 94.4526 -129.532 94.3293 -129.533 94.206 -129.533C 94.0827 -129.533 93.9593 -129.532 93.836 -129.53C 93.7127 -129.528 93.5895 -129.525 93.4662 -129.522C 93.343 -129.518 93.2197 -129.513 93.0966 -129.507C 92.9734 -129.501 92.8502 -129.494 92.7272 -129.487C 92.6041 -129.479 92.4811 -129.47 92.3581 -129.461C 92.2352 -129.451 92.1124 -129.44 91.9896 -129.429C 91.8668 -129.417 91.7441 -129.405 91.6216 -129.391C 91.499 -129.377 91.3765 -129.363 91.2542 -129.348C 91.1318 -129.332 91.0096 -129.316 90.8875 -129.298C 90.7655 -129.281 90.6435 -129.263 90.5217 -129.243C 90.3999 -129.224 90.2783 -129.204 90.1568 -129.183C 90.0353 -129.161 89.914 -129.139 89.7929 -129.116C 89.6717 -129.093 89.5508 -129.069 89.43 -129.044C 89.3093 -129.019 89.1887 -128.993 89.0684 -128.966C 88.948 -128.939 88.8279 -128.911 88.708 -128.882C 88.5881 -128.854 88.4684 -128.824 88.349 -128.793C 88.2295 -128.763 88.1103 -128.731 87.9914 -128.698C 87.8724 -128.666 87.7537 -128.632 87.6353 -128.598C 87.5169 -128.564 87.3988 -128.528 87.2809 -128.492C 87.163 -128.456 87.0454 -128.419 86.9282 -128.381C 86.8109 -128.342 86.6939 -128.303 86.5772 -128.263C 86.4606 -128.224 86.3442 -128.183 86.2282 -128.141C 86.1122 -128.099 85.9965 -128.056 85.8811 -128.013C 85.7658 -127.969 85.6508 -127.925 85.5361 -127.879C 85.4214 -127.834 85.3071 -127.788 85.1932 -127.74C 85.0793 -127.693 84.9657 -127.645 84.8526 -127.596C 84.7394 -127.547 84.6266 -127.497 84.5142 -127.447C 84.4018 -127.396 84.2898 -127.344 84.1782 -127.292C 84.0667 -127.239 83.9555 -127.186 83.8448 -127.132C 83.734 -127.077 83.6237 -127.022 83.5138 -126.966C 83.4039 -126.91 83.2945 -126.853 83.1855 -126.796C 83.0765 -126.738 82.968 -126.679 82.86 -126.62C 82.7519 -126.561 82.6443 -126.5 82.5372 -126.439C 82.4301 -126.378 82.3234 -126.316 82.2173 -126.253C 82.1111 -126.191 82.0055 -126.127 81.9004 -126.063C 81.7952 -125.998 81.6906 -125.933 81.5865 -125.867C 81.4823 -125.801 81.3787 -125.734 81.2757 -125.666C 81.1726 -125.599 81.0701 -125.53 80.9681 -125.461C 80.8661 -125.391 80.7646 -125.321 80.6637 -125.25C 80.5629 -125.179 80.4625 -125.108 80.3628 -125.035C 80.263 -124.963 80.1638 -124.89 80.0652 -124.815C 79.9666 -124.741 79.8685 -124.667 79.7711 -124.591C 79.6737 -124.515 79.5768 -124.439 79.4806 -124.362C 79.3843 -124.285 79.2887 -124.207 79.1937 -124.128C 79.0987 -124.05 79.0043 -123.971 78.9105 -123.89C 78.8167 -123.81 78.7236 -123.73 78.6311 -123.648C 78.5386 -123.566 78.4467 -123.484 78.3555 -123.401C 78.2643 -123.318 78.1738 -123.234 78.0839 -123.15C 77.994 -123.066 77.9047 -122.98 77.8162 -122.895C 77.7276 -122.809 77.6398 -122.722 77.5526 -122.635C 77.4654 -122.548 77.3788 -122.46 77.293 -122.372C 77.2072 -122.283 77.1221 -122.194 77.0377 -122.104C 76.9533 -122.014 76.8696 -121.923 76.7866 -121.832C 76.7036 -121.741 76.6213 -121.649 76.5397 -121.557C 76.4582 -121.464 76.3774 -121.371 76.2973 -121.277C 76.2172 -121.183 76.1378 -121.089 76.0592 -120.994C 75.9806 -120.899 75.9028 -120.803 75.8257 -120.707C 75.7486 -120.611 75.6722 -120.514 75.5966 -120.417C 75.5211 -120.319 75.4463 -120.221 75.3722 -120.123C 75.2982 -120.024 75.2249 -119.925 75.1524 -119.825C 75.0799 -119.725 75.0082 -119.625 74.9373 -119.524C 74.8664 -119.423 74.7963 -119.322 74.727 -119.22C 74.6577 -119.118 74.5892 -119.015 74.5215 -118.912C 74.4538 -118.809 74.3869 -118.705 74.3208 -118.601C 74.2547 -118.497 74.1895 -118.392 74.125 -118.287C 74.0606 -118.182 73.997 -118.077 73.9342 -117.97C 73.8714 -117.864 73.8095 -117.758 73.7484 -117.651C 73.6873 -117.543 73.6271 -117.436 73.5676 -117.328C 73.5082 -117.22 73.4497 -117.111 73.392 -117.002C 73.3343 -116.893 73.2774 -116.784 73.2214 -116.674C 73.1655 -116.564 73.1103 -116.454 73.0561 -116.343C 73.0018 -116.232 72.9485 -116.121 72.8959 -116.009C 72.8434 -115.898 72.7918 -115.786 72.7411 -115.674C 72.6903 -115.561 72.6405 -115.448 72.5915 -115.335C 72.5425 -115.222 72.4944 -115.108 72.4472 -114.994C 72.4 -114.881 72.3537 -114.766 72.3084 -114.652C 72.263 -114.537 72.2185 -114.422 72.1749 -114.307C 72.1313 -114.191 72.0886 -114.076 72.0468 -113.96C 72.0051 -113.843 71.9642 -113.727 71.9243 -113.61C 71.8843 -113.494 71.8453 -113.377 71.8072 -113.26C 71.7691 -113.142 71.7319 -113.025 71.6956 -112.907C 71.6594 -112.789 71.624 -112.671 71.5896 -112.552C 71.5552 -112.434 71.5217 -112.315 71.4892 -112.196C 71.4567 -112.077 71.4251 -111.958 71.3944 -111.839C 71.3637 -111.719 71.334 -111.6 71.3052 -111.48C 71.2764 -111.36 71.2486 -111.24 71.2217 -111.119C 71.1948 -110.999 71.1688 -110.878 71.1438 -110.758C 71.1188 -110.637 71.0948 -110.516 71.0716 -110.395C 71.0485 -110.274 71.0264 -110.152 71.0052 -110.031C 70.984 -109.909 70.9637 -109.788 70.9444 -109.666C 70.9252 -109.544 70.9068 -109.422 70.8894 -109.3C 70.8721 -109.178 70.8556 -109.056 70.8402 -108.934C 70.8247 -108.811 70.8102 -108.689 70.7967 -108.566C 70.7832 -108.444 70.7706 -108.321 70.759 -108.198C 70.7474 -108.075 70.7368 -107.952 70.7271 -107.83C 70.7174 -107.707 70.7087 -107.584 70.701 -107.461C 70.6932 -107.337 70.6864 -107.214 70.6806 -107.091C 70.6748 -106.968 70.67 -106.845 70.6661 -106.721C 70.6622 -106.598 70.6593 -106.475 70.6574 -106.352C 70.6555 -106.228 70.6545 -106.105 70.6545 -105.982C 70.6545 -105.858 70.6555 -105.735 70.6574 -105.612C 70.6593 -105.488 70.6622 -105.365 70.6661 -105.242C 70.67 -105.119 70.6748 -104.995 70.6806 -104.872C 70.6864 -104.749 70.6932 -104.626 70.701 -104.503C 70.7087 -104.38 70.7174 -104.257 70.7271 -104.134C 70.7368 -104.011 70.7474 -103.888 70.759 -103.765C 70.7706 -103.643 70.7832 -103.52 70.7967 -103.397C 70.8102 -103.275 70.8247 -103.152 70.8402 -103.03C 70.8556 -102.908 70.8721 -102.785 70.8894 -102.663C 70.9068 -102.541 70.9252 -102.419 70.9444 -102.297C 70.9637 -102.176 70.984 -102.054 71.0052 -101.933C 71.0264 -101.811 71.0485 -101.69 71.0716 -101.569C 71.0948 -101.447 71.1188 -101.327 71.1438 -101.206C 71.1688 -101.085 71.1948 -100.964 71.2217 -100.844C 71.2486 -100.724 71.2764 -100.604 71.3052 -100.484C 71.334 -100.364 71.3637 -100.244 71.3944 -100.125C 71.4251 -100.005 71.4567 -99.8861 71.4892 -99.7671C 71.5217 -99.6482 71.5552 -99.5295 71.5896 -99.4111C 71.624 -99.2926 71.6594 -99.1745 71.6956 -99.0566C 71.7319 -98.9388 71.7691 -98.8212 71.8072 -98.7039C 71.8453 -98.5866 71.8843 -98.4697 71.9243 -98.353C 71.9642 -98.2363 72.0051 -98.12 72.0468 -98.0039C 72.0886 -97.8879 72.1313 -97.7722 72.1749 -97.6569C 72.2185 -97.5415 72.263 -97.4265 72.3084 -97.3118C 72.3537 -97.1972 72.4 -97.0829 72.4472 -96.969C 72.4944 -96.855 72.5425 -96.7415 72.5915 -96.6283C 72.6405 -96.5151 72.6903 -96.4023 72.7411 -96.2899C 72.7918 -96.1776 72.8434 -96.0656 72.8959 -95.954C 72.9485 -95.8424 73.0018 -95.7312 73.0561 -95.6205C 73.1103 -95.5098 73.1655 -95.3994 73.2214 -95.2896C 73.2774 -95.1797 73.3343 -95.0703 73.392 -94.9613C 73.4497 -94.8523 73.5082 -94.7438 73.5676 -94.6357C 73.6271 -94.5276 73.6873 -94.42 73.7484 -94.3129C 73.8095 -94.2058 73.8714 -94.0992 73.9342 -93.993C 73.997 -93.8869 74.0606 -93.7812 74.125 -93.6761C 74.1895 -93.571 74.2547 -93.4663 74.3208 -93.3622C 74.3869 -93.2581 74.4538 -93.1545 74.5215 -93.0514C 74.5892 -92.9483 74.6577 -92.8458 74.727 -92.7438C 74.7963 -92.6418 74.8664 -92.5404 74.9373 -92.4395C 75.0082 -92.3386 75.0799 -92.2383 75.1524 -92.1385C 75.2249 -92.0387 75.2982 -91.9395 75.3722 -91.8409C 75.4463 -91.7423 75.5211 -91.6443 75.5966 -91.5468C 75.6722 -91.4494 75.7486 -91.3526 75.8257 -91.2563C 75.9028 -91.1601 75.9806 -91.0645 76.0592 -90.9694C 76.1378 -90.8744 76.2172 -90.78 76.2973 -90.6863C 76.3774 -90.5925 76.4582 -90.4993 76.5397 -90.4068C 76.6213 -90.3143 76.7036 -90.2225 76.7866 -90.1313C 76.8696 -90.0401 76.9533 -89.9495 77.0377 -89.8596C 77.1221 -89.7697 77.2072 -89.6805 77.293 -89.5919C 77.3788 -89.5034 77.4654 -89.4155 77.5526 -89.3283C 77.6398 -89.2411 77.7276 -89.1546 77.8162 -89.0688C 77.9047 -88.983 77.994 -88.8978 78.0839 -88.8134C 78.1738 -88.729 78.2643 -88.6453 78.3555 -88.5623C 78.4467 -88.4793 78.5386 -88.397 78.6311 -88.3155C 78.7236 -88.2339 78.8167 -88.1531 78.9105 -88.073C 79.0043 -87.9929 79.0987 -87.9136 79.1937 -87.835C 79.2887 -87.7564 79.3843 -87.6785 79.4806 -87.6014C 79.5768 -87.5243 79.6737 -87.448 79.7711 -87.3724C 79.8685 -87.2968 79.9666 -87.222 80.0652 -87.148C 80.1638 -87.0739 80.263 -87.0006 80.3628 -86.9282C 80.4625 -86.8557 80.5629 -86.784 80.6637 -86.7131C 80.7646 -86.6422 80.8661 -86.5721 80.9681 -86.5027C 81.0701 -86.4334 81.1726 -86.3649 81.2757 -86.2972C 81.3787 -86.2295 81.4823 -86.1626 81.5865 -86.0965C 81.6906 -86.0305 81.7952 -85.9652 81.9004 -85.9008C 82.0055 -85.8363 82.1111 -85.7727 82.2173 -85.71C 82.3234 -85.6472 82.4301 -85.5853 82.5372 -85.5242C 82.6443 -85.4631 82.7519 -85.4028 82.86 -85.3434C 82.968 -85.284 83.0765 -85.2254 83.1855 -85.1677C 83.2945 -85.11 83.4039 -85.0532 83.5138 -84.9972C 83.6237 -84.9412 83.734 -84.8861 83.8448 -84.8318C 83.9555 -84.7776 84.0667 -84.7242 84.1782 -84.6717C 84.2898 -84.6192 84.4018 -84.5676 84.5142 -84.5168C 84.6266 -84.4661 84.7394 -84.4162 84.8526 -84.3672C 84.9657 -84.3183 85.0793 -84.2702 85.1932 -84.223C 85.3071 -84.1758 85.4214 -84.1295 85.5361 -84.0841C 85.6508 -84.0387 85.7658 -83.9942 85.8811 -83.9506C 85.9965 -83.907 86.1122 -83.8643 86.2282 -83.8226C 86.3442 -83.7808 86.4606 -83.7399 86.5772 -83.7C 86.6939 -83.6601 86.8109 -83.621 86.9282 -83.5829C 87.0454 -83.5448 87.163 -83.5076 87.2809 -83.4714C 87.3988 -83.4351 87.5169 -83.3998 87.6353 -83.3654C 87.7537 -83.331 87.8724 -83.2975 87.9914 -83.265C 88.1103 -83.2324 88.2295 -83.2008 88.349 -83.1701C 88.4684 -83.1395 88.5881 -83.1097 88.708 -83.081C 88.8279 -83.0522 88.948 -83.0243 89.0684 -82.9974C 89.1887 -82.9705 89.3093 -82.9446 89.43 -82.9196C 89.5508 -82.8946 89.6717 -82.8705 89.7929 -82.8474C 89.914 -82.8243 90.0353 -82.8021 90.1568 -82.7809C 90.2783 -82.7597 90.3999 -82.7395 90.5217 -82.7202C 90.6435 -82.7009 90.7655 -82.6826 90.8875 -82.6652C 91.0096 -82.6478 91.1318 -82.6314 91.2542 -82.6159C 91.3765 -82.6005 91.499 -82.586 91.6216 -82.5725C 91.7441 -82.5589 91.8668 -82.5464 91.9896 -82.5348C 92.1124 -82.5231 92.2352 -82.5125 92.3581 -82.5028C 92.4811 -82.4932 92.6041 -82.4844 92.7272 -82.4767C 92.8502 -82.469 92.9734 -82.4622 93.0966 -82.4564C 93.2197 -82.4506 93.343 -82.4457 93.4662 -82.4419C 93.5895 -82.438 93.7127 -82.4351 93.836 -82.4331C 93.9593 -82.4312 94.0827 -82.4302 94.206 -82.4302C 94.3293 -82.4302 94.4526 -82.4312 94.5759 -82.4331C 94.6992 -82.4351 94.8225 -82.438 94.9457 -82.4419C 95.069 -82.4457 95.1922 -82.4506 95.3154 -82.4564C 95.4386 -82.4622 95.5617 -82.469 95.6848 -82.4767C 95.8079 -82.4844 95.9309 -82.4932 96.0538 -82.5028C 96.1767 -82.5125 96.2996 -82.5231 96.4224 -82.5348C 96.5451 -82.5464 96.6678 -82.5589 96.7904 -82.5725C 96.913 -82.586 97.0354 -82.6005 97.1578 -82.6159C 97.2801 -82.6314 97.4023 -82.6478 97.5244 -82.6652C 97.6465 -82.6826 97.7684 -82.7009 97.8902 -82.7202C 98.012 -82.7395 98.1337 -82.7597 98.2552 -82.7809C 98.3766 -82.8021 98.498 -82.8243 98.6191 -82.8474C 98.7402 -82.8705 98.8612 -82.8946 98.9819 -82.9196C 99.1027 -82.9446 99.2232 -82.9705 99.3436 -82.9974C 99.4639 -83.0243 99.5841 -83.0522 99.704 -83.081C 99.8239 -83.1097 99.9436 -83.1395 100.063 -83.1701C 100.182 -83.2008 100.302 -83.2324 100.421 -83.265C 100.54 -83.2975 100.658 -83.331 100.777 -83.3654C 100.895 -83.3998 101.013 -83.4351 101.131 -83.4714C 101.249 -83.5076 101.367 -83.5448 101.484 -83.5829C 101.601 -83.621 101.718 -83.6601 101.835 -83.7C 101.951 -83.7399 102.068 -83.7808 102.184 -83.8226C 102.3 -83.8643 102.415 -83.907 102.531 -83.9506C 102.646 -83.9942 102.761 -84.0387 102.876 -84.0841C 102.991 -84.1295 103.105 -84.1758 103.219 -84.223C 103.333 -84.2702 103.446 -84.3183 103.559 -84.3672C 103.673 -84.4162 103.785 -84.4661 103.898 -84.5168C 104.01 -84.5676 104.122 -84.6192 104.234 -84.6717C 104.345 -84.7242 104.456 -84.7776 104.567 -84.8318C 104.678 -84.8861 104.788 -84.9412 104.898 -84.9972C 105.008 -85.0532 105.117 -85.11 105.226 -85.1677C 105.335 -85.2254 105.444 -85.284 105.552 -85.3434C 105.66 -85.4028 105.768 -85.4631 105.875 -85.5242C 105.982 -85.5853 106.089 -85.6472 106.195 -85.71C 106.301 -85.7727 106.406 -85.8363 106.512 -85.9008C 106.617 -85.9652 106.721 -86.0305 106.825 -86.0965C 106.93 -86.1626 107.033 -86.2295 107.136 -86.2972C 107.239 -86.3649 107.342 -86.4334 107.444 -86.5027C 107.546 -86.5721 107.647 -86.6422 107.748 -86.7131C 107.849 -86.784 107.949 -86.8557 108.049 -86.9282C 108.149 -87.0006 108.248 -87.0739 108.347 -87.148C 108.445 -87.222 108.543 -87.2968 108.641 -87.3724C 108.738 -87.448 108.835 -87.5243 108.931 -87.6014C 109.028 -87.6785 109.123 -87.7564 109.218 -87.835C 109.313 -87.9136 109.408 -87.9929 109.501 -88.073C 109.595 -88.1531 109.688 -88.2339 109.781 -88.3155C 109.873 -88.397 109.965 -88.4793 110.056 -88.5623C 110.148 -88.6453 110.238 -88.729 110.328 -88.8134C 110.418 -88.8978 110.507 -88.983 110.596 -89.0688C 110.684 -89.1546 110.772 -89.2411 110.859 -89.3283C 110.947 -89.4155 111.033 -89.5034 111.119 -89.5919C 111.205 -89.6805 111.29 -89.7697 111.374 -89.8596C 111.459 -89.9495 111.542 -90.0401 111.625 -90.1313C 111.708 -90.2225 111.791 -90.3143 111.872 -90.4068C 111.954 -90.4993 112.035 -90.5925 112.115 -90.6863C 112.195 -90.78 112.274 -90.8744 112.353 -90.9694C 112.431 -91.0645 112.509 -91.1601 112.586 -91.2563C 112.663 -91.3526 112.74 -91.4494 112.815 -91.5468C 112.891 -91.6443 112.966 -91.7423 113.04 -91.8409C 113.114 -91.9395 113.187 -92.0387 113.26 -92.1385C 113.332 -92.2383 113.404 -92.3386 113.475 -92.4395C 113.546 -92.5404 113.616 -92.6418 113.685 -92.7438C 113.754 -92.8458 113.823 -92.9483 113.89 -93.0514C 113.958 -93.1545 114.025 -93.2581 114.091 -93.3622C 114.157 -93.4663 114.222 -93.571 114.287 -93.6761C 114.351 -93.7812 114.415 -93.8869 114.478 -93.993C 114.541 -94.0992 114.602 -94.2058 114.664 -94.3129C 114.725 -94.42 114.785 -94.5276 114.844 -94.6357C 114.904 -94.7438 114.962 -94.8523 115.02 -94.9613C 115.078 -95.0703 115.135 -95.1797 115.191 -95.2896C 115.246 -95.3994 115.302 -95.5098 115.356 -95.6205C 115.41 -95.7312 115.464 -95.8424 115.516 -95.954C 115.569 -96.0656 115.62 -96.1776 115.671 -96.2899C 115.722 -96.4023 115.771 -96.5151 115.82 -96.6283C 115.869 -96.7415 115.918 -96.855 115.965 -96.969C 116.012 -97.0829 116.058 -97.1972 116.104 -97.3118C 116.149 -97.4265 116.193 -97.5415 116.237 -97.6569C 116.281 -97.7722 116.323 -97.8879 116.365 -98.0039C 116.407 -98.12 116.448 -98.2363 116.488 -98.353C 116.528 -98.4697 116.567 -98.5866 116.605 -98.7039C 116.643 -98.8212 116.68 -98.9388 116.716 -99.0566C 116.753 -99.1745 116.788 -99.2926 116.822 -99.4111C 116.857 -99.5295 116.89 -99.6482 116.923 -99.7671C 116.955 -99.8861 116.987 -100.005 117.018 -100.125C 117.048 -100.244 117.078 -100.364 117.107 -100.484C 117.136 -100.604 117.163 -100.724 117.19 -100.844C 117.217 -100.964 117.243 -101.085 117.268 -101.206C 117.293 -101.327 117.317 -101.447 117.34 -101.569C 117.363 -101.69 117.386 -101.811 117.407 -101.933C 117.428 -102.054 117.448 -102.176 117.468 -102.297C 117.487 -102.419 117.505 -102.541 117.523 -102.663C 117.54 -102.785 117.556 -102.908 117.572 -103.03C 117.587 -103.152 117.602 -103.275 117.615 -103.397C 117.629 -103.52 117.641 -103.643 117.653 -103.765C 117.665 -103.888 117.675 -104.011 117.685 -104.134C 117.695 -104.257 117.703 -104.38 117.711 -104.503C 117.719 -104.626 117.726 -104.749 117.731 -104.872C 117.737 -104.995 117.742 -105.119 117.746 -105.242C 117.75 -105.365 117.753 -105.488 117.755 -105.612C 117.757 -105.735 117.757 -105.858 117.757 -105.982Z' fill='none' stroke='#0000c0' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 117.757 -176.636C 117.757 -176.76 117.757 -176.883 117.755 -177.006C 117.753 -177.129 117.75 -177.253 117.746 -177.376C 117.742 -177.499 117.737 -177.622 117.731 -177.746C 117.726 -177.869 117.719 -177.992 117.711 -178.115C 117.703 -178.238 117.695 -178.361 117.685 -178.484C 117.675 -178.607 117.665 -178.73 117.653 -178.853C 117.641 -178.975 117.629 -179.098 117.615 -179.221C 117.602 -179.343 117.587 -179.466 117.572 -179.588C 117.556 -179.71 117.54 -179.833 117.523 -179.955C 117.505 -180.077 117.487 -180.199 117.468 -180.32C 117.448 -180.442 117.428 -180.564 117.407 -180.685C 117.386 -180.807 117.363 -180.928 117.34 -181.049C 117.317 -181.17 117.293 -181.291 117.268 -181.412C 117.243 -181.533 117.217 -181.653 117.19 -181.774C 117.163 -181.894 117.136 -182.014 117.107 -182.134C 117.078 -182.254 117.048 -182.374 117.018 -182.493C 116.987 -182.613 116.955 -182.732 116.923 -182.851C 116.89 -182.97 116.857 -183.088 116.822 -183.207C 116.788 -183.325 116.753 -183.443 116.716 -183.561C 116.68 -183.679 116.643 -183.797 116.605 -183.914C 116.567 -184.031 116.528 -184.148 116.488 -184.265C 116.448 -184.382 116.407 -184.498 116.365 -184.614C 116.323 -184.73 116.281 -184.846 116.237 -184.961C 116.193 -185.076 116.149 -185.191 116.104 -185.306C 116.058 -185.421 116.012 -185.535 115.965 -185.649C 115.918 -185.763 115.869 -185.876 115.82 -185.99C 115.771 -186.103 115.722 -186.216 115.671 -186.328C 115.62 -186.44 115.569 -186.552 115.516 -186.664C 115.464 -186.776 115.41 -186.887 115.356 -186.997C 115.302 -187.108 115.246 -187.218 115.191 -187.328C 115.135 -187.438 115.078 -187.548 115.02 -187.657C 114.962 -187.766 114.904 -187.874 114.844 -187.982C 114.785 -188.09 114.725 -188.198 114.664 -188.305C 114.602 -188.412 114.541 -188.519 114.478 -188.625C 114.415 -188.731 114.351 -188.837 114.287 -188.942C 114.222 -189.047 114.157 -189.152 114.091 -189.256C 114.025 -189.36 113.958 -189.463 113.89 -189.567C 113.823 -189.67 113.754 -189.772 113.685 -189.874C 113.616 -189.976 113.546 -190.078 113.475 -190.178C 113.404 -190.279 113.332 -190.38 113.26 -190.479C 113.187 -190.579 113.114 -190.678 113.04 -190.777C 112.966 -190.876 112.891 -190.974 112.815 -191.071C 112.74 -191.169 112.663 -191.265 112.586 -191.362C 112.509 -191.458 112.431 -191.553 112.353 -191.648C 112.274 -191.744 112.195 -191.838 112.115 -191.932C 112.035 -192.025 111.954 -192.119 111.872 -192.211C 111.791 -192.304 111.708 -192.395 111.625 -192.487C 111.542 -192.578 111.459 -192.668 111.374 -192.758C 111.29 -192.848 111.205 -192.937 111.119 -193.026C 111.033 -193.115 110.947 -193.202 110.859 -193.29C 110.772 -193.377 110.684 -193.463 110.596 -193.549C 110.507 -193.635 110.418 -193.72 110.328 -193.805C 110.238 -193.889 110.148 -193.973 110.056 -194.056C 109.965 -194.139 109.873 -194.221 109.781 -194.302C 109.688 -194.384 109.595 -194.465 109.501 -194.545C 109.408 -194.625 109.313 -194.704 109.218 -194.783C 109.123 -194.862 109.028 -194.939 108.931 -195.017C 108.835 -195.094 108.738 -195.17 108.641 -195.246C 108.543 -195.321 108.445 -195.396 108.347 -195.47C 108.248 -195.544 108.149 -195.617 108.049 -195.69C 107.949 -195.762 107.849 -195.834 107.748 -195.905C 107.647 -195.976 107.546 -196.046 107.444 -196.115C 107.342 -196.185 107.239 -196.253 107.136 -196.321C 107.033 -196.388 106.93 -196.455 106.825 -196.521C 106.721 -196.587 106.617 -196.653 106.512 -196.717C 106.406 -196.782 106.301 -196.845 106.195 -196.908C 106.089 -196.971 105.982 -197.033 105.875 -197.094C 105.768 -197.155 105.66 -197.215 105.552 -197.275C 105.444 -197.334 105.335 -197.393 105.226 -197.45C 105.117 -197.508 105.008 -197.565 104.898 -197.621C 104.788 -197.677 104.678 -197.732 104.567 -197.786C 104.456 -197.84 104.345 -197.894 104.234 -197.946C 104.122 -197.999 104.01 -198.05 103.898 -198.101C 103.785 -198.152 103.673 -198.202 103.559 -198.251C 103.446 -198.3 103.333 -198.348 103.219 -198.395C 103.105 -198.442 102.991 -198.488 102.876 -198.534C 102.761 -198.579 102.646 -198.624 102.531 -198.667C 102.415 -198.711 102.3 -198.754 102.184 -198.795C 102.068 -198.837 101.951 -198.878 101.835 -198.918C 101.718 -198.958 101.601 -198.997 101.484 -199.035C 101.367 -199.073 101.249 -199.11 101.131 -199.147C 101.013 -199.183 100.895 -199.218 100.777 -199.253C 100.658 -199.287 100.54 -199.32 100.421 -199.353C 100.302 -199.386 100.182 -199.417 100.063 -199.448C 99.9436 -199.478 99.8239 -199.508 99.704 -199.537C 99.5841 -199.566 99.4639 -199.594 99.3436 -199.621C 99.2232 -199.647 99.1027 -199.673 98.9819 -199.698C 98.8612 -199.723 98.7402 -199.747 98.6191 -199.771C 98.498 -199.794 98.3766 -199.816 98.2552 -199.837C 98.1337 -199.858 98.012 -199.878 97.8902 -199.898C 97.7684 -199.917 97.6465 -199.935 97.5244 -199.953C 97.4023 -199.97 97.2801 -199.987 97.1578 -200.002C 97.0354 -200.017 96.913 -200.032 96.7904 -200.045C 96.6678 -200.059 96.5451 -200.072 96.4224 -200.083C 96.2996 -200.095 96.1767 -200.105 96.0538 -200.115C 95.9309 -200.125 95.8079 -200.133 95.6848 -200.141C 95.5617 -200.149 95.4386 -200.156 95.3154 -200.162C 95.1922 -200.167 95.069 -200.172 94.9457 -200.176C 94.8225 -200.18 94.6992 -200.183 94.5759 -200.185C 94.4526 -200.187 94.3293 -200.188 94.206 -200.188C 94.0827 -200.188 93.9593 -200.187 93.836 -200.185C 93.7127 -200.183 93.5895 -200.18 93.4662 -200.176C 93.343 -200.172 93.2197 -200.167 93.0966 -200.162C 92.9734 -200.156 92.8502 -200.149 92.7272 -200.141C 92.6041 -200.133 92.4811 -200.125 92.3581 -200.115C 92.2352 -200.105 92.1124 -200.095 91.9896 -200.083C 91.8668 -200.072 91.7441 -200.059 91.6216 -200.045C 91.499 -200.032 91.3765 -200.017 91.2542 -200.002C 91.1318 -199.987 91.0096 -199.97 90.8875 -199.953C 90.7655 -199.935 90.6435 -199.917 90.5217 -199.898C 90.3999 -199.878 90.2783 -199.858 90.1568 -199.837C 90.0353 -199.816 89.914 -199.794 89.7929 -199.771C 89.6717 -199.747 89.5508 -199.723 89.43 -199.698C 89.3093 -199.673 89.1887 -199.647 89.0684 -199.621C 88.948 -199.594 88.8279 -199.566 88.708 -199.537C 88.5881 -199.508 88.4684 -199.478 88.349 -199.448C 88.2295 -199.417 88.1103 -199.386 87.9914 -199.353C 87.8724 -199.32 87.7537 -199.287 87.6353 -199.253C 87.5169 -199.218 87.3988 -199.183 87.2809 -199.147C 87.163 -199.11 87.0454 -199.073 86.9282 -199.035C 86.8109 -198.997 86.6939 -198.958 86.5772 -198.918C 86.4606 -198.878 86.3442 -198.837 86.2282 -198.795C 86.1122 -198.754 85.9965 -198.711 85.8811 -198.667C 85.7658 -198.624 85.6508 -198.579 85.5361 -198.534C 85.4214 -198.488 85.3071 -198.442 85.1932 -198.395C 85.0793 -198.348 84.9657 -198.3 84.8526 -198.251C 84.7394 -198.202 84.6266 -198.152 84.5142 -198.101C 84.4018 -198.05 84.2898 -197.999 84.1782 -197.946C 84.0667 -197.894 83.9555 -197.84 83.8448 -197.786C 83.734 -197.732 83.6237 -197.677 83.5138 -197.621C 83.4039 -197.565 83.2945 -197.508 83.1855 -197.45C 83.0765 -197.393 82.968 -197.334 82.86 -197.275C 82.7519 -197.215 82.6443 -197.155 82.5372 -197.094C 82.4301 -197.033 82.3234 -196.971 82.2173 -196.908C 82.1111 -196.845 82.0055 -196.782 81.9004 -196.717C 81.7952 -196.653 81.6906 -196.587 81.5865 -196.521C 81.4823 -196.455 81.3787 -196.388 81.2757 -196.321C 81.1726 -196.253 81.0701 -196.185 80.9681 -196.115C 80.8661 -196.046 80.7646 -195.976 80.6637 -195.905C 80.5629 -195.834 80.4625 -195.762 80.3628 -195.69C 80.263 -195.617 80.1638 -195.544 80.0652 -195.47C 79.9666 -195.396 79.8685 -195.321 79.7711 -195.246C 79.6737 -195.17 79.5768 -195.094 79.4806 -195.017C 79.3843 -194.939 79.2887 -194.862 79.1937 -194.783C 79.0987 -194.704 79.0043 -194.625 78.9105 -194.545C 78.8167 -194.465 78.7236 -194.384 78.6311 -194.302C 78.5386 -194.221 78.4467 -194.139 78.3555 -194.056C 78.2643 -193.973 78.1738 -193.889 78.0839 -193.805C 77.994 -193.72 77.9047 -193.635 77.8162 -193.549C 77.7276 -193.463 77.6398 -193.377 77.5526 -193.29C 77.4654 -193.202 77.3788 -193.115 77.293 -193.026C 77.2072 -192.937 77.1221 -192.848 77.0377 -192.758C 76.9533 -192.668 76.8696 -192.578 76.7866 -192.487C 76.7036 -192.395 76.6213 -192.304 76.5397 -192.211C 76.4582 -192.119 76.3774 -192.025 76.2973 -191.932C 76.2172 -191.838 76.1378 -191.744 76.0592 -191.648C 75.9806 -191.553 75.9028 -191.458 75.8257 -191.362C 75.7486 -191.265 75.6722 -191.169 75.5966 -191.071C 75.5211 -190.974 75.4463 -190.876 75.3722 -190.777C 75.2982 -190.678 75.2249 -190.579 75.1524 -190.479C 75.0799 -190.38 75.0082 -190.279 74.9373 -190.178C 74.8664 -190.078 74.7963 -189.976 74.727 -189.874C 74.6577 -189.772 74.5892 -189.67 74.5215 -189.567C 74.4538 -189.463 74.3869 -189.36 74.3208 -189.256C 74.2547 -189.152 74.1895 -189.047 74.125 -188.942C 74.0606 -188.837 73.997 -188.731 73.9342 -188.625C 73.8714 -188.519 73.8095 -188.412 73.7484 -188.305C 73.6873 -188.198 73.6271 -188.09 73.5676 -187.982C 73.5082 -187.874 73.4497 -187.766 73.392 -187.657C 73.3343 -187.548 73.2774 -187.438 73.2214 -187.328C 73.1655 -187.218 73.1103 -187.108 73.0561 -186.997C 73.0018 -186.887 72.9485 -186.776 72.8959 -186.664C 72.8434 -186.552 72.7918 -186.44 72.7411 -186.328C 72.6903 -186.216 72.6405 -186.103 72.5915 -185.99C 72.5425 -185.876 72.4944 -185.763 72.4472 -185.649C 72.4 -185.535 72.3537 -185.421 72.3084 -185.306C 72.263 -185.191 72.2185 -185.076 72.1749 -184.961C 72.1313 -184.846 72.0886 -184.73 72.0468 -184.614C 72.0051 -184.498 71.9642 -184.382 71.9243 -184.265C 71.8843 -184.148 71.8453 -184.031 71.8072 -183.914C 71.7691 -183.797 71.7319 -183.679 71.6956 -183.561C 71.6594 -183.443 71.624 -183.325 71.5896 -183.207C 71.5552 -183.088 71.5217 -182.97 71.4892 -182.851C 71.4567 -182.732 71.4251 -182.613 71.3944 -182.493C 71.3637 -182.374 71.334 -182.254 71.3052 -182.134C 71.2764 -182.014 71.2486 -181.894 71.2217 -181.774C 71.1948 -181.653 71.1688 -181.533 71.1438 -181.412C 71.1188 -181.291 71.0948 -181.17 71.0716 -181.049C 71.0485 -180.928 71.0264 -180.807 71.0052 -180.685C 70.984 -180.564 70.9637 -180.442 70.9444 -180.32C 70.9252 -180.199 70.9068 -180.077 70.8894 -179.955C 70.8721 -179.833 70.8556 -179.71 70.8402 -179.588C 70.8247 -179.466 70.8102 -179.343 70.7967 -179.221C 70.7832 -179.098 70.7706 -178.975 70.759 -178.853C 70.7474 -178.73 70.7368 -178.607 70.7271 -178.484C 70.7174 -178.361 70.7087 -178.238 70.701 -178.115C 70.6932 -177.992 70.6864 -177.869 70.6806 -177.746C 70.6748 -177.622 70.67 -177.499 70.6661 -177.376C 70.6622 -177.253 70.6593 -177.129 70.6574 -177.006C 70.6555 -176.883 70.6545 -176.76 70.6545 -176.636C 70.6545 -176.513 70.6555 -176.39 70.6574 -176.266C 70.6593 -176.143 70.6622 -176.02 70.6661 -175.896C 70.67 -175.773 70.6748 -175.65 70.6806 -175.527C 70.6864 -175.404 70.6932 -175.28 70.701 -175.157C 70.7087 -175.034 70.7174 -174.911 70.7271 -174.788C 70.7368 -174.665 70.7474 -174.543 70.759 -174.42C 70.7706 -174.297 70.7832 -174.174 70.7967 -174.052C 70.8102 -173.929 70.8247 -173.807 70.8402 -173.684C 70.8556 -173.562 70.8721 -173.44 70.8894 -173.318C 70.9068 -173.196 70.9252 -173.074 70.9444 -172.952C 70.9637 -172.83 70.984 -172.709 71.0052 -172.587C 71.0264 -172.466 71.0485 -172.344 71.0716 -172.223C 71.0948 -172.102 71.1188 -171.981 71.1438 -171.86C 71.1688 -171.74 71.1948 -171.619 71.2217 -171.499C 71.2486 -171.378 71.2764 -171.258 71.3052 -171.138C 71.334 -171.018 71.3637 -170.899 71.3944 -170.779C 71.4251 -170.66 71.4567 -170.541 71.4892 -170.422C 71.5217 -170.303 71.5552 -170.184 71.5896 -170.066C 71.624 -169.947 71.6594 -169.829 71.6956 -169.711C 71.7319 -169.593 71.7691 -169.476 71.8072 -169.358C 71.8453 -169.241 71.8843 -169.124 71.9243 -169.007C 71.9642 -168.891 72.0051 -168.774 72.0468 -168.658C 72.0886 -168.542 72.1313 -168.427 72.1749 -168.311C 72.2185 -168.196 72.263 -168.081 72.3084 -167.966C 72.3537 -167.852 72.4 -167.737 72.4472 -167.623C 72.4944 -167.51 72.5425 -167.396 72.5915 -167.283C 72.6405 -167.17 72.6903 -167.057 72.7411 -166.944C 72.7918 -166.832 72.8434 -166.72 72.8959 -166.608C 72.9485 -166.497 73.0018 -166.386 73.0561 -166.275C 73.1103 -166.164 73.1655 -166.054 73.2214 -165.944C 73.2774 -165.834 73.3343 -165.725 73.392 -165.616C 73.4497 -165.507 73.5082 -165.398 73.5676 -165.29C 73.6271 -165.182 73.6873 -165.075 73.7484 -164.967C 73.8095 -164.86 73.8714 -164.754 73.9342 -164.648C 73.997 -164.541 74.0606 -164.436 74.125 -164.331C 74.1895 -164.225 74.2547 -164.121 74.3208 -164.017C 74.3869 -163.913 74.4538 -163.809 74.5215 -163.706C 74.5892 -163.603 74.6577 -163.5 74.727 -163.398C 74.7963 -163.296 74.8664 -163.195 74.9373 -163.094C 75.0082 -162.993 75.0799 -162.893 75.1524 -162.793C 75.2249 -162.693 75.2982 -162.594 75.3722 -162.495C 75.4463 -162.397 75.5211 -162.299 75.5966 -162.201C 75.6722 -162.104 75.7486 -162.007 75.8257 -161.911C 75.9028 -161.815 75.9806 -161.719 76.0592 -161.624C 76.1378 -161.529 76.2172 -161.435 76.2973 -161.341C 76.3774 -161.247 76.4582 -161.154 76.5397 -161.061C 76.6213 -160.969 76.7036 -160.877 76.7866 -160.786C 76.8696 -160.695 76.9533 -160.604 77.0377 -160.514C 77.1221 -160.424 77.2072 -160.335 77.293 -160.246C 77.3788 -160.158 77.4654 -160.07 77.5526 -159.983C 77.6398 -159.896 77.7276 -159.809 77.8162 -159.723C 77.9047 -159.637 77.994 -159.552 78.0839 -159.468C 78.1738 -159.383 78.2643 -159.3 78.3555 -159.217C 78.4467 -159.134 78.5386 -159.052 78.6311 -158.97C 78.7236 -158.888 78.8167 -158.808 78.9105 -158.728C 79.0043 -158.647 79.0987 -158.568 79.1937 -158.489C 79.2887 -158.411 79.3843 -158.333 79.4806 -158.256C 79.5768 -158.179 79.6737 -158.102 79.7711 -158.027C 79.8685 -157.951 79.9666 -157.876 80.0652 -157.802C 80.1638 -157.728 80.263 -157.655 80.3628 -157.583C 80.4625 -157.51 80.5629 -157.438 80.6637 -157.368C 80.7646 -157.297 80.8661 -157.227 80.9681 -157.157C 81.0701 -157.088 81.1726 -157.019 81.2757 -156.952C 81.3787 -156.884 81.4823 -156.817 81.5865 -156.751C 81.6906 -156.685 81.7952 -156.62 81.9004 -156.555C 82.0055 -156.491 82.1111 -156.427 82.2173 -156.364C 82.3234 -156.302 82.4301 -156.24 82.5372 -156.179C 82.6443 -156.118 82.7519 -156.057 82.86 -155.998C 82.968 -155.938 83.0765 -155.88 83.1855 -155.822C 83.2945 -155.765 83.4039 -155.708 83.5138 -155.652C 83.6237 -155.596 83.734 -155.541 83.8448 -155.486C 83.9555 -155.432 84.0667 -155.379 84.1782 -155.326C 84.2898 -155.274 84.4018 -155.222 84.5142 -155.171C 84.6266 -155.121 84.7394 -155.071 84.8526 -155.022C 84.9657 -154.973 85.0793 -154.925 85.1932 -154.877C 85.3071 -154.83 85.4214 -154.784 85.5361 -154.739C 85.6508 -154.693 85.7658 -154.649 85.8811 -154.605C 85.9965 -154.562 86.1122 -154.519 86.2282 -154.477C 86.3442 -154.435 86.4606 -154.394 86.5772 -154.354C 86.6939 -154.315 86.8109 -154.276 86.9282 -154.237C 87.0454 -154.199 87.163 -154.162 87.2809 -154.126C 87.3988 -154.09 87.5169 -154.054 87.6353 -154.02C 87.7537 -153.985 87.8724 -153.952 87.9914 -153.919C 88.1103 -153.887 88.2295 -153.855 88.349 -153.825C 88.4684 -153.794 88.5881 -153.764 88.708 -153.735C 88.8279 -153.707 88.948 -153.679 89.0684 -153.652C 89.1887 -153.625 89.3093 -153.599 89.43 -153.574C 89.5508 -153.549 89.6717 -153.525 89.7929 -153.502C 89.914 -153.479 90.0353 -153.457 90.1568 -153.435C 90.2783 -153.414 90.3999 -153.394 90.5217 -153.375C 90.6435 -153.355 90.7655 -153.337 90.8875 -153.32C 91.0096 -153.302 91.1318 -153.286 91.2542 -153.27C 91.3765 -153.255 91.499 -153.24 91.6216 -153.227C 91.7441 -153.213 91.8668 -153.201 91.9896 -153.189C 92.1124 -153.178 92.2352 -153.167 92.3581 -153.157C 92.4811 -153.148 92.6041 -153.139 92.7272 -153.131C 92.8502 -153.123 92.9734 -153.117 93.0966 -153.111C 93.2197 -153.105 93.343 -153.1 93.4662 -153.096C 93.5895 -153.092 93.7127 -153.09 93.836 -153.088C 93.9593 -153.086 94.0827 -153.085 94.206 -153.085C 94.3293 -153.085 94.4526 -153.086 94.5759 -153.088C 94.6992 -153.09 94.8225 -153.092 94.9457 -153.096C 95.069 -153.1 95.1922 -153.105 95.3154 -153.111C 95.4386 -153.117 95.5617 -153.123 95.6848 -153.131C 95.8079 -153.139 95.9309 -153.148 96.0538 -153.157C 96.1767 -153.167 96.2996 -153.178 96.4224 -153.189C 96.5451 -153.201 96.6678 -153.213 96.7904 -153.227C 96.913 -153.24 97.0354 -153.255 97.1578 -153.27C 97.2801 -153.286 97.4023 -153.302 97.5244 -153.32C 97.6465 -153.337 97.7684 -153.355 97.8902 -153.375C 98.012 -153.394 98.1337 -153.414 98.2552 -153.435C 98.3766 -153.457 98.498 -153.479 98.6191 -153.502C 98.7402 -153.525 98.8612 -153.549 98.9819 -153.574C 99.1027 -153.599 99.2232 -153.625 99.3436 -153.652C 99.4639 -153.679 99.5841 -153.707 99.704 -153.735C 99.8239 -153.764 99.9436 -153.794 100.063 -153.825C 100.182 -153.855 100.302 -153.887 100.421 -153.919C 100.54 -153.952 100.658 -153.985 100.777 -154.02C 100.895 -154.054 101.013 -154.09 101.131 -154.126C 101.249 -154.162 101.367 -154.199 101.484 -154.237C 101.601 -154.276 101.718 -154.315 101.835 -154.354C 101.951 -154.394 102.068 -154.435 102.184 -154.477C 102.3 -154.519 102.415 -154.562 102.531 -154.605C 102.646 -154.649 102.761 -154.693 102.876 -154.739C 102.991 -154.784 103.105 -154.83 103.219 -154.877C 103.333 -154.925 103.446 -154.973 103.559 -155.022C 103.673 -155.071 103.785 -155.121 103.898 -155.171C 104.01 -155.222 104.122 -155.274 104.234 -155.326C 104.345 -155.379 104.456 -155.432 104.567 -155.486C 104.678 -155.541 104.788 -155.596 104.898 -155.652C 105.008 -155.708 105.117 -155.765 105.226 -155.822C 105.335 -155.88 105.444 -155.938 105.552 -155.998C 105.66 -156.057 105.768 -156.118 105.875 -156.179C 105.982 -156.24 106.089 -156.302 106.195 -156.364C 106.301 -156.427 106.406 -156.491 106.512 -156.555C 106.617 -156.62 106.721 -156.685 106.825 -156.751C 106.93 -156.817 107.033 -156.884 107.136 -156.952C 107.239 -157.019 107.342 -157.088 107.444 -157.157C 107.546 -157.227 107.647 -157.297 107.748 -157.368C 107.849 -157.438 107.949 -157.51 108.049 -157.583C 108.149 -157.655 108.248 -157.728 108.347 -157.802C 108.445 -157.876 108.543 -157.951 108.641 -158.027C 108.738 -158.102 108.835 -158.179 108.931 -158.256C 109.028 -158.333 109.123 -158.411 109.218 -158.489C 109.313 -158.568 109.408 -158.647 109.501 -158.728C 109.595 -158.808 109.688 -158.888 109.781 -158.97C 109.873 -159.052 109.965 -159.134 110.056 -159.217C 110.148 -159.3 110.238 -159.383 110.328 -159.468C 110.418 -159.552 110.507 -159.637 110.596 -159.723C 110.684 -159.809 110.772 -159.896 110.859 -159.983C 110.947 -160.07 111.033 -160.158 111.119 -160.246C 111.205 -160.335 111.29 -160.424 111.374 -160.514C 111.459 -160.604 111.542 -160.695 111.625 -160.786C 111.708 -160.877 111.791 -160.969 111.872 -161.061C 111.954 -161.154 112.035 -161.247 112.115 -161.341C 112.195 -161.435 112.274 -161.529 112.353 -161.624C 112.431 -161.719 112.509 -161.815 112.586 -161.911C 112.663 -162.007 112.74 -162.104 112.815 -162.201C 112.891 -162.299 112.966 -162.397 113.04 -162.495C 113.114 -162.594 113.187 -162.693 113.26 -162.793C 113.332 -162.893 113.404 -162.993 113.475 -163.094C 113.546 -163.195 113.616 -163.296 113.685 -163.398C 113.754 -163.5 113.823 -163.603 113.89 -163.706C 113.958 -163.809 114.025 -163.913 114.091 -164.017C 114.157 -164.121 114.222 -164.225 114.287 -164.331C 114.351 -164.436 114.415 -164.541 114.478 -164.648C 114.541 -164.754 114.602 -164.86 114.664 -164.967C 114.725 -165.075 114.785 -165.182 114.844 -165.29C 114.904 -165.398 114.962 -165.507 115.02 -165.616C 115.078 -165.725 115.135 -165.834 115.191 -165.944C 115.246 -166.054 115.302 -166.164 115.356 -166.275C 115.41 -166.386 115.464 -166.497 115.516 -166.608C 115.569 -166.72 115.62 -166.832 115.671 -166.944C 115.722 -167.057 115.771 -167.17 115.82 -167.283C 115.869 -167.396 115.918 -167.51 115.965 -167.623C 116.012 -167.737 116.058 -167.852 116.104 -167.966C 116.149 -168.081 116.193 -168.196 116.237 -168.311C 116.281 -168.427 116.323 -168.542 116.365 -168.658C 116.407 -168.774 116.448 -168.891 116.488 -169.007C 116.528 -169.124 116.567 -169.241 116.605 -169.358C 116.643 -169.476 116.68 -169.593 116.716 -169.711C 116.753 -169.829 116.788 -169.947 116.822 -170.066C 116.857 -170.184 116.89 -170.303 116.923 -170.422C 116.955 -170.541 116.987 -170.66 117.018 -170.779C 117.048 -170.899 117.078 -171.018 117.107 -171.138C 117.136 -171.258 117.163 -171.378 117.19 -171.499C 117.217 -171.619 117.243 -171.74 117.268 -171.86C 117.293 -171.981 117.317 -172.102 117.34 -172.223C 117.363 -172.344 117.386 -172.466 117.407 -172.587C 117.428 -172.709 117.448 -172.83 117.468 -172.952C 117.487 -173.074 117.505 -173.196 117.523 -173.318C 117.54 -173.44 117.556 -173.562 117.572 -173.684C 117.587 -173.807 117.602 -173.929 117.615 -174.052C 117.629 -174.174 117.641 -174.297 117.653 -174.42C 117.665 -174.543 117.675 -174.665 117.685 -174.788C 117.695 -174.911 117.703 -175.034 117.711 -175.157C 117.719 -175.28 117.726 -175.404 117.731 -175.527C 117.737 -175.65 117.742 -175.773 117.746 -175.896C 117.75 -176.02 117.753 -176.143 117.755 -176.266C 117.757 -176.39 117.757 -176.513 117.757 -176.636Z' fill='none' stroke='#0000c0' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 211.963 -35.3272C 211.963 -35.4506 211.962 -35.5739 211.961 -35.6972C 211.959 -35.8205 211.956 -35.9438 211.952 -36.067C 211.948 -36.1903 211.943 -36.3135 211.937 -36.4367C 211.931 -36.5598 211.925 -36.683 211.917 -36.8061C 211.909 -36.9291 211.901 -37.0521 211.891 -37.1751C 211.881 -37.298 211.871 -37.4209 211.859 -37.5436C 211.847 -37.6664 211.835 -37.7891 211.821 -37.9116C 211.808 -38.0342 211.793 -38.1567 211.778 -38.279C 211.762 -38.4014 211.746 -38.5236 211.728 -38.6457C 211.711 -38.7678 211.693 -38.8897 211.673 -39.0115C 211.654 -39.1333 211.634 -39.2549 211.613 -39.3764C 211.592 -39.4979 211.569 -39.6192 211.546 -39.7404C 211.523 -39.8615 211.499 -39.9824 211.474 -40.1032C 211.449 -40.2239 211.423 -40.3445 211.396 -40.4648C 211.369 -40.5852 211.342 -40.7053 211.313 -40.8252C 211.284 -40.9451 211.254 -41.0648 211.224 -41.1843C 211.193 -41.3037 211.161 -41.4229 211.129 -41.5418C 211.096 -41.6608 211.063 -41.7795 211.028 -41.8979C 210.994 -42.0163 210.959 -42.1345 210.922 -42.2523C 210.886 -42.3702 210.849 -42.4878 210.811 -42.6051C 210.773 -42.7223 210.734 -42.8393 210.694 -42.956C 210.654 -43.0726 210.613 -43.189 210.571 -43.305C 210.529 -43.4211 210.487 -43.5367 210.443 -43.6521C 210.399 -43.7675 210.355 -43.8825 210.31 -43.9971C 210.264 -44.1118 210.218 -44.2261 210.171 -44.34C 210.124 -44.4539 210.075 -44.5675 210.026 -44.6807C 209.977 -44.7938 209.928 -44.9066 209.877 -45.019C 209.826 -45.1314 209.774 -45.2434 209.722 -45.355C 209.669 -45.4666 209.616 -45.5777 209.562 -45.6885C 209.508 -45.7992 209.452 -45.9095 209.396 -46.0194C 209.341 -46.1293 209.284 -46.2387 209.226 -46.3477C 209.168 -46.4567 209.11 -46.5652 209.05 -46.6733C 208.991 -46.7813 208.931 -46.8889 208.87 -46.996C 208.808 -47.1031 208.746 -47.2098 208.684 -47.3159C 208.621 -47.4221 208.557 -47.5277 208.493 -47.6329C 208.428 -47.738 208.363 -47.8426 208.297 -47.9468C 208.231 -48.0509 208.164 -48.1545 208.096 -48.2575C 208.029 -48.3606 207.96 -48.4632 207.891 -48.5651C 207.822 -48.6671 207.752 -48.7686 207.681 -48.8695C 207.61 -48.9704 207.538 -49.0707 207.466 -49.1705C 207.393 -49.2702 207.32 -49.3694 207.246 -49.468C 207.172 -49.5666 207.097 -49.6647 207.021 -49.7621C 206.946 -49.8596 206.869 -49.9564 206.792 -50.0526C 206.715 -50.1489 206.637 -50.2445 206.559 -50.3395C 206.48 -50.4345 206.401 -50.5289 206.321 -50.6227C 206.241 -50.7165 206.16 -50.8096 206.078 -50.9021C 205.997 -50.9946 205.914 -51.0865 205.831 -51.1777C 205.748 -51.2689 205.665 -51.3595 205.58 -51.4493C 205.496 -51.5392 205.411 -51.6285 205.325 -51.717C 205.239 -51.8056 205.153 -51.8935 205.065 -51.9807C 204.978 -52.0679 204.89 -52.1544 204.802 -52.2402C 204.713 -52.326 204.624 -52.4111 204.534 -52.4955C 204.444 -52.58 204.354 -52.6637 204.262 -52.7467C 204.171 -52.8297 204.079 -52.9119 203.987 -52.9935C 203.894 -53.075 203.801 -53.1559 203.707 -53.2359C 203.614 -53.316 203.519 -53.3954 203.424 -53.474C 203.329 -53.5526 203.234 -53.6304 203.137 -53.7075C 203.041 -53.7846 202.944 -53.861 202.847 -53.9366C 202.749 -54.0122 202.651 -54.087 202.553 -54.161C 202.454 -54.2351 202.355 -54.3083 202.255 -54.3808C 202.155 -54.4533 202.055 -54.525 201.954 -54.5959C 201.853 -54.6668 201.752 -54.7369 201.65 -54.8062C 201.548 -54.8755 201.445 -54.9441 201.342 -55.0118C 201.239 -55.0795 201.136 -55.1464 201.031 -55.2124C 200.927 -55.2785 200.823 -55.3438 200.718 -55.4082C 200.612 -55.4726 200.507 -55.5362 200.401 -55.599C 200.294 -55.6618 200.188 -55.7237 200.081 -55.7848C 199.974 -55.8459 199.866 -55.9062 199.758 -55.9656C 199.65 -56.025 199.541 -56.0835 199.432 -56.1412C 199.323 -56.1989 199.214 -56.2558 199.104 -56.3118C 198.994 -56.3678 198.884 -56.4229 198.773 -56.4771C 198.662 -56.5314 198.551 -56.5848 198.44 -56.6373C 198.328 -56.6898 198.216 -56.7414 198.104 -56.7922C 197.991 -56.8429 197.879 -56.8928 197.765 -56.9417C 197.652 -56.9907 197.539 -57.0388 197.425 -57.086C 197.311 -57.1332 197.196 -57.1795 197.082 -57.2249C 196.967 -57.2703 196.852 -57.3148 196.737 -57.3583C 196.621 -57.4019 196.506 -57.4446 196.39 -57.4864C 196.274 -57.5282 196.157 -57.569 196.041 -57.609C 195.924 -57.6489 195.807 -57.6879 195.69 -57.726C 195.572 -57.7642 195.455 -57.8013 195.337 -57.8376C 195.219 -57.8739 195.101 -57.9092 194.983 -57.9436C 194.864 -57.978 194.746 -58.0115 194.627 -58.044C 194.508 -58.0766 194.388 -58.1082 194.269 -58.1388C 194.15 -58.1695 194.03 -58.1992 193.91 -58.228C 193.79 -58.2568 193.67 -58.2846 193.55 -58.3115C 193.429 -58.3384 193.309 -58.3644 193.188 -58.3894C 193.067 -58.4144 192.946 -58.4385 192.825 -58.4616C 192.704 -58.4847 192.583 -58.5068 192.461 -58.528C 192.34 -58.5492 192.218 -58.5695 192.096 -58.5888C 191.974 -58.6081 191.852 -58.6264 191.73 -58.6438C 191.608 -58.6612 191.486 -58.6776 191.364 -58.693C 191.241 -58.7085 191.119 -58.723 190.996 -58.7365C 190.874 -58.75 190.751 -58.7626 190.628 -58.7742C 190.506 -58.7858 190.383 -58.7965 190.26 -58.8061C 190.137 -58.8158 190.014 -58.8245 189.891 -58.8323C 189.768 -58.84 189.645 -58.8468 189.521 -58.8526C 189.398 -58.8584 189.275 -58.8632 189.152 -58.8671C 189.028 -58.871 188.905 -58.8739 188.782 -58.8758C 188.659 -58.8778 188.535 -58.8787 188.412 -58.8787C 188.289 -58.8787 188.165 -58.8778 188.042 -58.8758C 187.919 -58.8739 187.795 -58.871 187.672 -58.8671C 187.549 -58.8632 187.426 -58.8584 187.303 -58.8526C 187.179 -58.8468 187.056 -58.84 186.933 -58.8323C 186.81 -58.8245 186.687 -58.8158 186.564 -58.8061C 186.441 -58.7965 186.318 -58.7858 186.196 -58.7742C 186.073 -58.7626 185.95 -58.75 185.828 -58.7365C 185.705 -58.723 185.583 -58.7085 185.46 -58.693C 185.338 -58.6776 185.216 -58.6612 185.094 -58.6438C 184.971 -58.6264 184.849 -58.6081 184.728 -58.5888C 184.606 -58.5695 184.484 -58.5492 184.363 -58.528C 184.241 -58.5068 184.12 -58.4847 183.999 -58.4616C 183.878 -58.4385 183.757 -58.4144 183.636 -58.3894C 183.515 -58.3644 183.395 -58.3384 183.274 -58.3115C 183.154 -58.2846 183.034 -58.2568 182.914 -58.228C 182.794 -58.1992 182.674 -58.1695 182.555 -58.1388C 182.435 -58.1082 182.316 -58.0766 182.197 -58.044C 182.078 -58.0115 181.96 -57.978 181.841 -57.9436C 181.723 -57.9092 181.605 -57.8739 181.487 -57.8376C 181.369 -57.8013 181.251 -57.7642 181.134 -57.726C 181.017 -57.6879 180.9 -57.6489 180.783 -57.609C 180.667 -57.569 180.55 -57.5282 180.434 -57.4864C 180.318 -57.4446 180.202 -57.4019 180.087 -57.3583C 179.972 -57.3148 179.857 -57.2703 179.742 -57.2249C 179.627 -57.1795 179.513 -57.1332 179.399 -57.086C 179.285 -57.0388 179.172 -56.9907 179.059 -56.9417C 178.945 -56.8928 178.833 -56.8429 178.72 -56.7922C 178.608 -56.7414 178.496 -56.6898 178.384 -56.6373C 178.273 -56.5848 178.161 -56.5314 178.051 -56.4771C 177.94 -56.4229 177.83 -56.3678 177.72 -56.3118C 177.61 -56.2558 177.5 -56.1989 177.392 -56.1412C 177.283 -56.0835 177.174 -56.025 177.066 -55.9656C 176.958 -55.9062 176.85 -55.8459 176.743 -55.7848C 176.636 -55.7237 176.529 -55.6618 176.423 -55.599C 176.317 -55.5362 176.211 -55.4726 176.106 -55.4082C 176.001 -55.3438 175.897 -55.2785 175.792 -55.2124C 175.688 -55.1464 175.585 -55.0795 175.482 -55.0118C 175.379 -54.9441 175.276 -54.8755 175.174 -54.8062C 175.072 -54.7369 174.971 -54.6668 174.87 -54.5959C 174.769 -54.525 174.668 -54.4533 174.569 -54.3808C 174.469 -54.3083 174.37 -54.2351 174.271 -54.161C 174.173 -54.087 174.075 -54.0122 173.977 -53.9366C 173.88 -53.861 173.783 -53.7846 173.687 -53.7075C 173.59 -53.6304 173.495 -53.5526 173.4 -53.474C 173.305 -53.3954 173.21 -53.316 173.116 -53.2359C 173.023 -53.1559 172.93 -53.075 172.837 -52.9935C 172.745 -52.9119 172.653 -52.8297 172.562 -52.7467C 172.47 -52.6637 172.38 -52.58 172.29 -52.4955C 172.2 -52.4111 172.111 -52.326 172.022 -52.2402C 171.934 -52.1544 171.846 -52.0679 171.759 -51.9807C 171.671 -51.8935 171.585 -51.8056 171.499 -51.717C 171.413 -51.6285 171.328 -51.5392 171.244 -51.4493C 171.159 -51.3595 171.076 -51.2689 170.993 -51.1777C 170.91 -51.0865 170.827 -50.9946 170.746 -50.9021C 170.664 -50.8096 170.583 -50.7165 170.503 -50.6227C 170.423 -50.5289 170.344 -50.4345 170.265 -50.3395C 170.187 -50.2445 170.109 -50.1489 170.032 -50.0526C 169.955 -49.9564 169.878 -49.8596 169.803 -49.7621C 169.727 -49.6647 169.652 -49.5666 169.578 -49.468C 169.504 -49.3694 169.431 -49.2702 169.358 -49.1705C 169.286 -49.0707 169.214 -48.9704 169.143 -48.8695C 169.072 -48.7686 169.002 -48.6671 168.933 -48.5651C 168.864 -48.4632 168.795 -48.3606 168.727 -48.2575C 168.66 -48.1545 168.593 -48.0509 168.527 -47.9468C 168.461 -47.8426 168.395 -47.738 168.331 -47.6329C 168.267 -47.5277 168.203 -47.4221 168.14 -47.3159C 168.077 -47.2098 168.015 -47.1031 167.954 -46.996C 167.893 -46.8889 167.833 -46.7813 167.774 -46.6733C 167.714 -46.5652 167.656 -46.4567 167.598 -46.3477C 167.54 -46.2387 167.483 -46.1293 167.427 -46.0194C 167.371 -45.9095 167.316 -45.7992 167.262 -45.6885C 167.208 -45.5777 167.154 -45.4666 167.102 -45.355C 167.049 -45.2434 166.998 -45.1314 166.947 -45.019C 166.896 -44.9066 166.846 -44.7938 166.797 -44.6807C 166.748 -44.5675 166.7 -44.4539 166.653 -44.34C 166.606 -44.2261 166.56 -44.1118 166.514 -43.9971C 166.469 -43.8825 166.424 -43.7675 166.381 -43.6521C 166.337 -43.5367 166.295 -43.4211 166.253 -43.305C 166.211 -43.189 166.17 -43.0726 166.13 -42.956C 166.09 -42.8393 166.051 -42.7223 166.013 -42.6051C 165.975 -42.4878 165.938 -42.3702 165.902 -42.2523C 165.865 -42.1345 165.83 -42.0163 165.796 -41.8979C 165.761 -41.7795 165.728 -41.6608 165.695 -41.5418C 165.663 -41.4229 165.631 -41.3037 165.6 -41.1843C 165.57 -41.0648 165.54 -40.9451 165.511 -40.8252C 165.482 -40.7053 165.455 -40.5852 165.428 -40.4648C 165.401 -40.3445 165.375 -40.2239 165.35 -40.1032C 165.325 -39.9824 165.301 -39.8615 165.278 -39.7404C 165.255 -39.6192 165.232 -39.4979 165.211 -39.3764C 165.19 -39.2549 165.17 -39.1333 165.15 -39.0115C 165.131 -38.8897 165.113 -38.7678 165.095 -38.6457C 165.078 -38.5236 165.062 -38.4014 165.046 -38.279C 165.031 -38.1567 165.016 -38.0342 165.003 -37.9116C 164.989 -37.7891 164.977 -37.6664 164.965 -37.5436C 164.953 -37.4209 164.943 -37.298 164.933 -37.1751C 164.923 -37.0521 164.915 -36.9291 164.907 -36.8061C 164.899 -36.683 164.892 -36.5598 164.887 -36.4367C 164.881 -36.3135 164.876 -36.1903 164.872 -36.067C 164.868 -35.9438 164.865 -35.8205 164.863 -35.6972C 164.861 -35.5739 164.86 -35.4506 164.86 -35.3272C 164.86 -35.2039 164.861 -35.0806 164.863 -34.9573C 164.865 -34.834 164.868 -34.7107 164.872 -34.5875C 164.876 -34.4642 164.881 -34.341 164.887 -34.2178C 164.892 -34.0946 164.899 -33.9715 164.907 -33.8484C 164.915 -33.7254 164.923 -33.6023 164.933 -33.4794C 164.943 -33.3565 164.953 -33.2336 164.965 -33.1109C 164.977 -32.9881 164.989 -32.8654 165.003 -32.7428C 165.016 -32.6203 165.031 -32.4978 165.046 -32.3755C 165.062 -32.2531 165.078 -32.1309 165.095 -32.0088C 165.113 -31.8867 165.131 -31.7648 165.15 -31.643C 165.17 -31.5212 165.19 -31.3995 165.211 -31.2781C 165.232 -31.1566 165.255 -31.0353 165.278 -30.9141C 165.301 -30.793 165.325 -30.6721 165.35 -30.5513C 165.375 -30.4305 165.401 -30.31 165.428 -30.1896C 165.455 -30.0693 165.482 -29.9492 165.511 -29.8293C 165.54 -29.7093 165.57 -29.5897 165.6 -29.4702C 165.631 -29.3508 165.663 -29.2316 165.695 -29.1126C 165.728 -28.9937 165.761 -28.875 165.796 -28.7566C 165.83 -28.6382 165.865 -28.52 165.902 -28.4022C 165.938 -28.2843 165.975 -28.1667 166.013 -28.0494C 166.051 -27.9321 166.09 -27.8152 166.13 -27.6985C 166.17 -27.5818 166.211 -27.4655 166.253 -27.3495C 166.295 -27.2334 166.337 -27.1177 166.381 -27.0024C 166.424 -26.887 166.469 -26.772 166.514 -26.6574C 166.56 -26.5427 166.606 -26.4284 166.653 -26.3145C 166.7 -26.2005 166.748 -26.087 166.797 -25.9738C 166.846 -25.8606 166.896 -25.7479 166.947 -25.6355C 166.998 -25.5231 167.049 -25.4111 167.102 -25.2995C 167.154 -25.1879 167.208 -25.0768 167.262 -24.966C 167.316 -24.8553 167.371 -24.745 167.427 -24.6351C 167.483 -24.5252 167.54 -24.4158 167.598 -24.3068C 167.656 -24.1978 167.714 -24.0893 167.774 -23.9812C 167.833 -23.8732 167.893 -23.7656 167.954 -23.6584C 168.015 -23.5513 168.077 -23.4447 168.14 -23.3386C 168.203 -23.2324 168.267 -23.1268 168.331 -23.0216C 168.395 -22.9165 168.461 -22.8118 168.527 -22.7077C 168.593 -22.6036 168.66 -22.5 168.727 -22.3969C 168.795 -22.2939 168.864 -22.1913 168.933 -22.0893C 169.002 -21.9873 169.072 -21.8859 169.143 -21.785C 169.214 -21.6841 169.286 -21.5838 169.358 -21.484C 169.431 -21.3843 169.504 -21.2851 169.578 -21.1864C 169.652 -21.0878 169.727 -20.9898 169.803 -20.8924C 169.878 -20.7949 169.955 -20.6981 170.032 -20.6018C 170.109 -20.5056 170.187 -20.41 170.265 -20.315C 170.344 -20.2199 170.423 -20.1255 170.503 -20.0318C 170.583 -19.938 170.664 -19.8449 170.746 -19.7524C 170.827 -19.6599 170.91 -19.568 170.993 -19.4768C 171.076 -19.3856 171.159 -19.295 171.244 -19.2051C 171.328 -19.1152 171.413 -19.026 171.499 -18.9375C 171.585 -18.8489 171.671 -18.761 171.759 -18.6738C 171.846 -18.5866 171.934 -18.5001 172.022 -18.4143C 172.111 -18.3285 172.2 -18.2434 172.29 -18.1589C 172.38 -18.0745 172.47 -17.9908 172.562 -17.9078C 172.653 -17.8248 172.745 -17.7426 172.837 -17.661C 172.93 -17.5795 173.023 -17.4986 173.116 -17.4185C 173.21 -17.3385 173.305 -17.2591 173.4 -17.1805C 173.495 -17.1019 173.59 -17.024 173.687 -16.9469C 173.783 -16.8698 173.88 -16.7935 173.977 -16.7179C 174.075 -16.6423 174.173 -16.5675 174.271 -16.4935C 174.37 -16.4194 174.469 -16.3462 174.569 -16.2737C 174.668 -16.2012 174.769 -16.1295 174.87 -16.0586C 174.971 -15.9877 175.072 -15.9176 175.174 -15.8483C 175.276 -15.7789 175.379 -15.7104 175.482 -15.6427C 175.585 -15.575 175.688 -15.5081 175.792 -15.4421C 175.897 -15.376 176.001 -15.3107 176.106 -15.2463C 176.211 -15.1819 176.317 -15.1183 176.423 -15.0555C 176.529 -14.9927 176.636 -14.9308 176.743 -14.8697C 176.85 -14.8086 176.958 -14.7483 177.066 -14.6889C 177.174 -14.6295 177.283 -14.5709 177.392 -14.5132C 177.5 -14.4555 177.61 -14.3987 177.72 -14.3427C 177.83 -14.2867 177.94 -14.2316 178.051 -14.1774C 178.161 -14.1231 178.273 -14.0697 178.384 -14.0172C 178.496 -13.9647 178.608 -13.9131 178.72 -13.8623C 178.833 -13.8116 178.945 -13.7617 179.059 -13.7127C 179.172 -13.6638 179.285 -13.6157 179.399 -13.5685C 179.513 -13.5213 179.627 -13.475 179.742 -13.4296C 179.857 -13.3842 179.972 -13.3397 180.087 -13.2961C 180.202 -13.2525 180.318 -13.2099 180.434 -13.1681C 180.55 -13.1263 180.667 -13.0855 180.783 -13.0455C 180.9 -13.0056 181.017 -12.9665 181.134 -12.9284C 181.251 -12.8903 181.369 -12.8531 181.487 -12.8169C 181.605 -12.7806 181.723 -12.7453 181.841 -12.7109C 181.96 -12.6765 182.078 -12.643 182.197 -12.6105C 182.316 -12.5779 182.435 -12.5463 182.555 -12.5157C 182.674 -12.485 182.794 -12.4553 182.914 -12.4265C 183.034 -12.3977 183.154 -12.3698 183.274 -12.3429C 183.395 -12.316 183.515 -12.2901 183.636 -12.2651C 183.757 -12.2401 183.878 -12.216 183.999 -12.1929C 184.12 -12.1698 184.241 -12.1476 184.363 -12.1264C 184.484 -12.1052 184.606 -12.085 184.728 -12.0657C 184.849 -12.0464 184.971 -12.0281 185.094 -12.0107C 185.216 -11.9933 185.338 -11.9769 185.46 -11.9615C 185.583 -11.946 185.705 -11.9315 185.828 -11.918C 185.95 -11.9044 186.073 -11.8919 186.196 -11.8803C 186.318 -11.8687 186.441 -11.858 186.564 -11.8483C 186.687 -11.8387 186.81 -11.83 186.933 -11.8222C 187.056 -11.8145 187.179 -11.8077 187.303 -11.8019C 187.426 -11.7961 187.549 -11.7912 187.672 -11.7874C 187.795 -11.7835 187.919 -11.7806 188.042 -11.7787C 188.165 -11.7767 188.289 -11.7757 188.412 -11.7757C 188.535 -11.7757 188.659 -11.7767 188.782 -11.7787C 188.905 -11.7806 189.028 -11.7835 189.152 -11.7874C 189.275 -11.7912 189.398 -11.7961 189.521 -11.8019C 189.645 -11.8077 189.768 -11.8145 189.891 -11.8222C 190.014 -11.83 190.137 -11.8387 190.26 -11.8483C 190.383 -11.858 190.506 -11.8687 190.628 -11.8803C 190.751 -11.8919 190.874 -11.9044 190.996 -11.918C 191.119 -11.9315 191.241 -11.946 191.364 -11.9615C 191.486 -11.9769 191.608 -11.9933 191.73 -12.0107C 191.852 -12.0281 191.974 -12.0464 192.096 -12.0657C 192.218 -12.085 192.34 -12.1052 192.461 -12.1264C 192.583 -12.1476 192.704 -12.1698 192.825 -12.1929C 192.946 -12.216 193.067 -12.2401 193.188 -12.2651C 193.309 -12.2901 193.429 -12.316 193.55 -12.3429C 193.67 -12.3698 193.79 -12.3977 193.91 -12.4265C 194.03 -12.4553 194.15 -12.485 194.269 -12.5157C 194.388 -12.5463 194.508 -12.5779 194.627 -12.6105C 194.746 -12.643 194.864 -12.6765 194.983 -12.7109C 195.101 -12.7453 195.219 -12.7806 195.337 -12.8169C 195.455 -12.8531 195.572 -12.8903 195.69 -12.9284C 195.807 -12.9665 195.924 -13.0056 196.041 -13.0455C 196.157 -13.0855 196.274 -13.1263 196.39 -13.1681C 196.506 -13.2099 196.621 -13.2525 196.737 -13.2961C 196.852 -13.3397 196.967 -13.3842 197.082 -13.4296C 197.196 -13.475 197.311 -13.5213 197.425 -13.5685C 197.539 -13.6157 197.652 -13.6638 197.765 -13.7127C 197.879 -13.7617 197.991 -13.8116 198.104 -13.8623C 198.216 -13.9131 198.328 -13.9647 198.44 -14.0172C 198.551 -14.0697 198.662 -14.1231 198.773 -14.1774C 198.884 -14.2316 198.994 -14.2867 199.104 -14.3427C 199.214 -14.3987 199.323 -14.4555 199.432 -14.5132C 199.541 -14.5709 199.65 -14.6295 199.758 -14.6889C 199.866 -14.7483 199.974 -14.8086 200.081 -14.8697C 200.188 -14.9308 200.294 -14.9927 200.401 -15.0555C 200.507 -15.1183 200.612 -15.1819 200.718 -15.2463C 200.823 -15.3107 200.927 -15.376 201.031 -15.4421C 201.136 -15.5081 201.239 -15.575 201.342 -15.6427C 201.445 -15.7104 201.548 -15.7789 201.65 -15.8483C 201.752 -15.9176 201.853 -15.9877 201.954 -16.0586C 202.055 -16.1295 202.155 -16.2012 202.255 -16.2737C 202.355 -16.3462 202.454 -16.4194 202.553 -16.4935C 202.651 -16.5675 202.749 -16.6423 202.847 -16.7179C 202.944 -16.7935 203.041 -16.8698 203.137 -16.9469C 203.234 -17.024 203.329 -17.1019 203.424 -17.1805C 203.519 -17.2591 203.614 -17.3385 203.707 -17.4185C 203.801 -17.4986 203.894 -17.5795 203.987 -17.661C 204.079 -17.7426 204.171 -17.8248 204.262 -17.9078C 204.354 -17.9908 204.444 -18.0745 204.534 -18.1589C 204.624 -18.2434 204.713 -18.3285 204.802 -18.4143C 204.89 -18.5001 204.978 -18.5866 205.065 -18.6738C 205.153 -18.761 205.239 -18.8489 205.325 -18.9375C 205.411 -19.026 205.496 -19.1152 205.58 -19.2051C 205.665 -19.295 205.748 -19.3856 205.831 -19.4768C 205.914 -19.568 205.997 -19.6599 206.078 -19.7524C 206.16 -19.8449 206.241 -19.938 206.321 -20.0318C 206.401 -20.1255 206.48 -20.2199 206.559 -20.315C 206.637 -20.41 206.715 -20.5056 206.792 -20.6018C 206.869 -20.6981 206.946 -20.7949 207.021 -20.8924C 207.097 -20.9898 207.172 -21.0878 207.246 -21.1864C 207.32 -21.2851 207.393 -21.3843 207.466 -21.484C 207.538 -21.5838 207.61 -21.6841 207.681 -21.785C 207.752 -21.8859 207.822 -21.9873 207.891 -22.0893C 207.96 -22.1913 208.029 -22.2939 208.096 -22.3969C 208.164 -22.5 208.231 -22.6036 208.297 -22.7077C 208.363 -22.8118 208.428 -22.9165 208.493 -23.0216C 208.557 -23.1268 208.621 -23.2324 208.684 -23.3386C 208.746 -23.4447 208.808 -23.5513 208.87 -23.6584C 208.931 -23.7656 208.991 -23.8732 209.05 -23.9812C 209.11 -24.0893 209.168 -24.1978 209.226 -24.3068C 209.284 -24.4158 209.341 -24.5252 209.396 -24.6351C 209.452 -24.745 209.508 -24.8553 209.562 -24.966C 209.616 -25.0768 209.669 -25.1879 209.722 -25.2995C 209.774 -25.4111 209.826 -25.5231 209.877 -25.6355C 209.928 -25.7479 209.977 -25.8606 210.026 -25.9738C 210.075 -26.087 210.124 -26.2005 210.171 -26.3145C 210.218 -26.4284 210.264 -26.5427 210.31 -26.6574C 210.355 -26.772 210.399 -26.887 210.443 -27.0024C 210.487 -27.1177 210.529 -27.2334 210.571 -27.3495C 210.613 -27.4655 210.654 -27.5818 210.694 -27.6985C 210.734 -27.8152 210.773 -27.9321 210.811 -28.0494C 210.849 -28.1667 210.886 -28.2843 210.922 -28.4022C 210.959 -28.52 210.994 -28.6382 211.028 -28.7566C 211.063 -28.875 211.096 -28.9937 211.129 -29.1126C 211.161 -29.2316 211.193 -29.3508 211.224 -29.4702C 211.254 -29.5897 211.284 -29.7093 211.313 -29.8293C 211.342 -29.9492 211.369 -30.0693 211.396 -30.1896C 211.423 -30.31 211.449 -30.4305 211.474 -30.5513C 211.499 -30.6721 211.523 -30.793 211.546 -30.9141C 211.569 -31.0353 211.592 -31.1566 211.613 -31.2781C 211.634 -31.3995 211.654 -31.5212 211.673 -31.643C 211.693 -31.7648 211.711 -31.8867 211.728 -32.0088C 211.746 -32.1309 211.762 -32.2531 211.778 -32.3755C 211.793 -32.4978 211.808 -32.6203 211.821 -32.7428C 211.835 -32.8654 211.847 -32.9881 211.859 -33.1109C 211.871 -33.2336 211.881 -33.3565 211.891 -33.4794C 211.901 -33.6023 211.909 -33.7254 211.917 -33.8484C 211.925 -33.9715 211.931 -34.0946 211.937 -34.2178C 211.943 -34.341 211.948 -34.4642 211.952 -34.5875C 211.956 -34.7107 211.959 -34.834 211.961 -34.9573C 211.962 -35.0806 211.963 -35.2039 211.963 -35.3272Z' fill='none' stroke='#008000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 211.963 -105.982C 211.963 -106.105 211.962 -106.228 211.961 -106.352C 211.959 -106.475 211.956 -106.598 211.952 -106.721C 211.948 -106.845 211.943 -106.968 211.937 -107.091C 211.931 -107.214 211.925 -107.337 211.917 -107.461C 211.909 -107.584 211.901 -107.707 211.891 -107.83C 211.881 -107.952 211.871 -108.075 211.859 -108.198C 211.847 -108.321 211.835 -108.444 211.821 -108.566C 211.808 -108.689 211.793 -108.811 211.778 -108.934C 211.762 -109.056 211.746 -109.178 211.728 -109.3C 211.711 -109.422 211.693 -109.544 211.673 -109.666C 211.654 -109.788 211.634 -109.909 211.613 -110.031C 211.592 -110.152 211.569 -110.274 211.546 -110.395C 211.523 -110.516 211.499 -110.637 211.474 -110.758C 211.449 -110.878 211.423 -110.999 211.396 -111.119C 211.369 -111.24 211.342 -111.36 211.313 -111.48C 211.284 -111.6 211.254 -111.719 211.224 -111.839C 211.193 -111.958 211.161 -112.077 211.129 -112.196C 211.096 -112.315 211.063 -112.434 211.028 -112.552C 210.994 -112.671 210.959 -112.789 210.922 -112.907C 210.886 -113.025 210.849 -113.142 210.811 -113.26C 210.773 -113.377 210.734 -113.494 210.694 -113.61C 210.654 -113.727 210.613 -113.843 210.571 -113.96C 210.529 -114.076 210.487 -114.191 210.443 -114.307C 210.399 -114.422 210.355 -114.537 210.31 -114.652C 210.264 -114.766 210.218 -114.881 210.171 -114.994C 210.124 -115.108 210.075 -115.222 210.026 -115.335C 209.977 -115.448 209.928 -115.561 209.877 -115.674C 209.826 -115.786 209.774 -115.898 209.722 -116.009C 209.669 -116.121 209.616 -116.232 209.562 -116.343C 209.508 -116.454 209.452 -116.564 209.396 -116.674C 209.341 -116.784 209.284 -116.893 209.226 -117.002C 209.168 -117.111 209.11 -117.22 209.05 -117.328C 208.991 -117.436 208.931 -117.543 208.87 -117.651C 208.808 -117.758 208.746 -117.864 208.684 -117.97C 208.621 -118.077 208.557 -118.182 208.493 -118.287C 208.428 -118.392 208.363 -118.497 208.297 -118.601C 208.231 -118.705 208.164 -118.809 208.096 -118.912C 208.029 -119.015 207.96 -119.118 207.891 -119.22C 207.822 -119.322 207.752 -119.423 207.681 -119.524C 207.61 -119.625 207.538 -119.725 207.466 -119.825C 207.393 -119.925 207.32 -120.024 207.246 -120.123C 207.172 -120.221 207.097 -120.319 207.021 -120.417C 206.946 -120.514 206.869 -120.611 206.792 -120.707C 206.715 -120.803 206.637 -120.899 206.559 -120.994C 206.48 -121.089 206.401 -121.183 206.321 -121.277C 206.241 -121.371 206.16 -121.464 206.078 -121.557C 205.997 -121.649 205.914 -121.741 205.831 -121.832C 205.748 -121.923 205.665 -122.014 205.58 -122.104C 205.496 -122.194 205.411 -122.283 205.325 -122.372C 205.239 -122.46 205.153 -122.548 205.065 -122.635C 204.978 -122.722 204.89 -122.809 204.802 -122.895C 204.713 -122.98 204.624 -123.066 204.534 -123.15C 204.444 -123.234 204.354 -123.318 204.262 -123.401C 204.171 -123.484 204.079 -123.566 203.987 -123.648C 203.894 -123.73 203.801 -123.81 203.707 -123.89C 203.614 -123.971 203.519 -124.05 203.424 -124.128C 203.329 -124.207 203.234 -124.285 203.137 -124.362C 203.041 -124.439 202.944 -124.515 202.847 -124.591C 202.749 -124.667 202.651 -124.741 202.553 -124.815C 202.454 -124.89 202.355 -124.963 202.255 -125.035C 202.155 -125.108 202.055 -125.179 201.954 -125.25C 201.853 -125.321 201.752 -125.391 201.65 -125.461C 201.548 -125.53 201.445 -125.599 201.342 -125.666C 201.239 -125.734 201.136 -125.801 201.031 -125.867C 200.927 -125.933 200.823 -125.998 200.718 -126.063C 200.612 -126.127 200.507 -126.191 200.401 -126.253C 200.294 -126.316 200.188 -126.378 200.081 -126.439C 199.974 -126.5 199.866 -126.561 199.758 -126.62C 199.65 -126.679 199.541 -126.738 199.432 -126.796C 199.323 -126.853 199.214 -126.91 199.104 -126.966C 198.994 -127.022 198.884 -127.077 198.773 -127.132C 198.662 -127.186 198.551 -127.239 198.44 -127.292C 198.328 -127.344 198.216 -127.396 198.104 -127.447C 197.991 -127.497 197.879 -127.547 197.765 -127.596C 197.652 -127.645 197.539 -127.693 197.425 -127.74C 197.311 -127.788 197.196 -127.834 197.082 -127.879C 196.967 -127.925 196.852 -127.969 196.737 -128.013C 196.621 -128.056 196.506 -128.099 196.39 -128.141C 196.274 -128.183 196.157 -128.224 196.041 -128.263C 195.924 -128.303 195.807 -128.342 195.69 -128.381C 195.572 -128.419 195.455 -128.456 195.337 -128.492C 195.219 -128.528 195.101 -128.564 194.983 -128.598C 194.864 -128.632 194.746 -128.666 194.627 -128.698C 194.508 -128.731 194.388 -128.763 194.269 -128.793C 194.15 -128.824 194.03 -128.854 193.91 -128.882C 193.79 -128.911 193.67 -128.939 193.55 -128.966C 193.429 -128.993 193.309 -129.019 193.188 -129.044C 193.067 -129.069 192.946 -129.093 192.825 -129.116C 192.704 -129.139 192.583 -129.161 192.461 -129.183C 192.34 -129.204 192.218 -129.224 192.096 -129.243C 191.974 -129.263 191.852 -129.281 191.73 -129.298C 191.608 -129.316 191.486 -129.332 191.364 -129.348C 191.241 -129.363 191.119 -129.377 190.996 -129.391C 190.874 -129.405 190.751 -129.417 190.628 -129.429C 190.506 -129.44 190.383 -129.451 190.26 -129.461C 190.137 -129.47 190.014 -129.479 189.891 -129.487C 189.768 -129.494 189.645 -129.501 189.521 -129.507C 189.398 -129.513 189.275 -129.518 189.152 -129.522C 189.028 -129.525 188.905 -129.528 188.782 -129.53C 188.659 -129.532 188.535 -129.533 188.412 -129.533C 188.289 -129.533 188.165 -129.532 188.042 -129.53C 187.919 -129.528 187.795 -129.525 187.672 -129.522C 187.549 -129.518 187.426 -129.513 187.303 -129.507C 187.179 -129.501 187.056 -129.494 186.933 -129.487C 186.81 -129.479 186.687 -129.47 186.564 -129.461C 186.441 -129.451 186.318 -129.44 186.196 -129.429C 186.073 -129.417 185.95 -129.405 185.828 -129.391C 185.705 -129.377 185.583 -129.363 185.46 -129.348C 185.338 -129.332 185.216 -129.316 185.094 -129.298C 184.971 -129.281 184.849 -129.263 184.728 -129.243C 184.606 -129.224 184.484 -129.204 184.363 -129.183C 184.241 -129.161 184.12 -129.139 183.999 -129.116C 183.878 -129.093 183.757 -129.069 183.636 -129.044C 183.515 -129.019 183.395 -128.993 183.274 -128.966C 183.154 -128.939 183.034 -128.911 182.914 -128.882C 182.794 -128.854 182.674 -128.824 182.555 -128.793C 182.435 -128.763 182.316 -128.731 182.197 -128.698C 182.078 -128.666 181.96 -128.632 181.841 -128.598C 181.723 -128.564 181.605 -128.528 181.487 -128.492C 181.369 -128.456 181.251 -128.419 181.134 -128.381C 181.017 -128.342 180.9 -128.303 180.783 -128.263C 180.667 -128.224 180.55 -128.183 180.434 -128.141C 180.318 -128.099 180.202 -128.056 180.087 -128.013C 179.972 -127.969 179.857 -127.925 179.742 -127.879C 179.627 -127.834 179.513 -127.788 179.399 -127.74C 179.285 -127.693 179.172 -127.645 179.059 -127.596C 178.945 -127.547 178.833 -127.497 178.72 -127.447C 178.608 -127.396 178.496 -127.344 178.384 -127.292C 178.273 -127.239 178.161 -127.186 178.051 -127.132C 177.94 -127.077 177.83 -127.022 177.72 -126.966C 177.61 -126.91 177.5 -126.853 177.392 -126.796C 177.283 -126.738 177.174 -126.679 177.066 -126.62C 176.958 -126.561 176.85 -126.5 176.743 -126.439C 176.636 -126.378 176.529 -126.316 176.423 -126.253C 176.317 -126.191 176.211 -126.127 176.106 -126.063C 176.001 -125.998 175.897 -125.933 175.792 -125.867C 175.688 -125.801 175.585 -125.734 175.482 -125.666C 175.379 -125.599 175.276 -125.53 175.174 -125.461C 175.072 -125.391 174.971 -125.321 174.87 -125.25C 174.769 -125.179 174.668 -125.108 174.569 -125.035C 174.469 -124.963 174.37 -124.89 174.271 -124.815C 174.173 -124.741 174.075 -124.667 173.977 -124.591C 173.88 -124.515 173.783 -124.439 173.687 -124.362C 173.59 -124.285 173.495 -124.207 173.4 -124.128C 173.305 -124.05 173.21 -123.971 173.116 -123.89C 173.023 -123.81 172.93 -123.73 172.837 -123.648C 172.745 -123.566 172.653 -123.484 172.562 -123.401C 172.47 -123.318 172.38 -123.234 172.29 -123.15C 172.2 -123.066 172.111 -122.98 172.022 -122.895C 171.934 -122.809 171.846 -122.722 171.759 -122.635C 171.671 -122.548 171.585 -122.46 171.499 -122.372C 171.413 -122.283 171.328 -122.194 171.244 -122.104C 171.159 -122.014 171.076 -121.923 170.993 -121.832C 170.91 -121.741 170.827 -121.649 170.746 -121.557C 170.664 -121.464 170.583 -121.371 170.503 -121.277C 170.423 -121.183 170.344 -121.089 170.265 -120.994C 170.187 -120.899 170.109 -120.803 170.032 -120.707C 169.955 -120.611 169.878 -120.514 169.803 -120.417C 169.727 -120.319 169.652 -120.221 169.578 -120.123C 169.504 -120.024 169.431 -119.925 169.358 -119.825C 169.286 -119.725 169.214 -119.625 169.143 -119.524C 169.072 -119.423 169.002 -119.322 168.933 -119.22C 168.864 -119.118 168.795 -119.015 168.727 -118.912C 168.66 -118.809 168.593 -118.705 168.527 -118.601C 168.461 -118.497 168.395 -118.392 168.331 -118.287C 168.267 -118.182 168.203 -118.077 168.14 -117.97C 168.077 -117.864 168.015 -117.758 167.954 -117.651C 167.893 -117.543 167.833 -117.436 167.774 -117.328C 167.714 -117.22 167.656 -117.111 167.598 -117.002C 167.54 -116.893 167.483 -116.784 167.427 -116.674C 167.371 -116.564 167.316 -116.454 167.262 -116.343C 167.208 -116.232 167.154 -116.121 167.102 -116.009C 167.049 -115.898 166.998 -115.786 166.947 -115.674C 166.896 -115.561 166.846 -115.448 166.797 -115.335C 166.748 -115.222 166.7 -115.108 166.653 -114.994C 166.606 -114.881 166.56 -114.766 166.514 -114.652C 166.469 -114.537 166.424 -114.422 166.381 -114.307C 166.337 -114.191 166.295 -114.076 166.253 -113.96C 166.211 -113.843 166.17 -113.727 166.13 -113.61C 166.09 -113.494 166.051 -113.377 166.013 -113.26C 165.975 -113.142 165.938 -113.025 165.902 -112.907C 165.865 -112.789 165.83 -112.671 165.796 -112.552C 165.761 -112.434 165.728 -112.315 165.695 -112.196C 165.663 -112.077 165.631 -111.958 165.6 -111.839C 165.57 -111.719 165.54 -111.6 165.511 -111.48C 165.482 -111.36 165.455 -111.24 165.428 -111.119C 165.401 -110.999 165.375 -110.878 165.35 -110.758C 165.325 -110.637 165.301 -110.516 165.278 -110.395C 165.255 -110.274 165.232 -110.152 165.211 -110.031C 165.19 -109.909 165.17 -109.788 165.15 -109.666C 165.131 -109.544 165.113 -109.422 165.095 -109.3C 165.078 -109.178 165.062 -109.056 165.046 -108.934C 165.031 -108.811 165.016 -108.689 165.003 -108.566C 164.989 -108.444 164.977 -108.321 164.965 -108.198C 164.953 -108.075 164.943 -107.952 164.933 -107.83C 164.923 -107.707 164.915 -107.584 164.907 -107.461C 164.899 -107.337 164.892 -107.214 164.887 -107.091C 164.881 -106.968 164.876 -106.845 164.872 -106.721C 164.868 -106.598 164.865 -106.475 164.863 -106.352C 164.861 -106.228 164.86 -106.105 164.86 -105.982C 164.86 -105.858 164.861 -105.735 164.863 -105.612C 164.865 -105.488 164.868 -105.365 164.872 -105.242C 164.876 -105.119 164.881 -104.995 164.887 -104.872C 164.892 -104.749 164.899 -104.626 164.907 -104.503C 164.915 -104.38 164.923 -104.257 164.933 -104.134C 164.943 -104.011 164.953 -103.888 164.965 -103.765C 164.977 -103.643 164.989 -103.52 165.003 -103.397C 165.016 -103.275 165.031 -103.152 165.046 -103.03C 165.062 -102.908 165.078 -102.785 165.095 -102.663C 165.113 -102.541 165.131 -102.419 165.15 -102.297C 165.17 -102.176 165.19 -102.054 165.211 -101.933C 165.232 -101.811 165.255 -101.69 165.278 -101.569C 165.301 -101.447 165.325 -101.327 165.35 -101.206C 165.375 -101.085 165.401 -100.964 165.428 -100.844C 165.455 -100.724 165.482 -100.604 165.511 -100.484C 165.54 -100.364 165.57 -100.244 165.6 -100.125C 165.631 -100.005 165.663 -99.8861 165.695 -99.7671C 165.728 -99.6482 165.761 -99.5295 165.796 -99.4111C 165.83 -99.2926 165.865 -99.1745 165.902 -99.0566C 165.938 -98.9388 165.975 -98.8212 166.013 -98.7039C 166.051 -98.5866 166.09 -98.4697 166.13 -98.353C 166.17 -98.2363 166.211 -98.12 166.253 -98.0039C 166.295 -97.8879 166.337 -97.7722 166.381 -97.6569C 166.424 -97.5415 166.469 -97.4265 166.514 -97.3118C 166.56 -97.1972 166.606 -97.0829 166.653 -96.969C 166.7 -96.855 166.748 -96.7415 166.797 -96.6283C 166.846 -96.5151 166.896 -96.4023 166.947 -96.2899C 166.998 -96.1776 167.049 -96.0656 167.102 -95.954C 167.154 -95.8424 167.208 -95.7312 167.262 -95.6205C 167.316 -95.5098 167.371 -95.3994 167.427 -95.2896C 167.483 -95.1797 167.54 -95.0703 167.598 -94.9613C 167.656 -94.8523 167.714 -94.7438 167.774 -94.6357C 167.833 -94.5276 167.893 -94.42 167.954 -94.3129C 168.015 -94.2058 168.077 -94.0992 168.14 -93.993C 168.203 -93.8869 168.267 -93.7812 168.331 -93.6761C 168.395 -93.571 168.461 -93.4663 168.527 -93.3622C 168.593 -93.2581 168.66 -93.1545 168.727 -93.0514C 168.795 -92.9483 168.864 -92.8458 168.933 -92.7438C 169.002 -92.6418 169.072 -92.5404 169.143 -92.4395C 169.214 -92.3386 169.286 -92.2383 169.358 -92.1385C 169.431 -92.0387 169.504 -91.9395 169.578 -91.8409C 169.652 -91.7423 169.727 -91.6443 169.803 -91.5468C 169.878 -91.4494 169.955 -91.3526 170.032 -91.2563C 170.109 -91.1601 170.187 -91.0645 170.265 -90.9694C 170.344 -90.8744 170.423 -90.78 170.503 -90.6863C 170.583 -90.5925 170.664 -90.4993 170.746 -90.4068C 170.827 -90.3143 170.91 -90.2225 170.993 -90.1313C 171.076 -90.0401 171.159 -89.9495 171.244 -89.8596C 171.328 -89.7697 171.413 -89.6805 171.499 -89.5919C 171.585 -89.5034 171.671 -89.4155 171.759 -89.3283C 171.846 -89.2411 171.934 -89.1546 172.022 -89.0688C 172.111 -88.983 172.2 -88.8978 172.29 -88.8134C 172.38 -88.729 172.47 -88.6453 172.562 -88.5623C 172.653 -88.4793 172.745 -88.397 172.837 -88.3155C 172.93 -88.2339 173.023 -88.1531 173.116 -88.073C 173.21 -87.9929 173.305 -87.9136 173.4 -87.835C 173.495 -87.7564 173.59 -87.6785 173.687 -87.6014C 173.783 -87.5243 173.88 -87.448 173.977 -87.3724C 174.075 -87.2968 174.173 -87.222 174.271 -87.148C 174.37 -87.0739 174.469 -87.0006 174.569 -86.9282C 174.668 -86.8557 174.769 -86.784 174.87 -86.7131C 174.971 -86.6422 175.072 -86.5721 175.174 -86.5027C 175.276 -86.4334 175.379 -86.3649 175.482 -86.2972C 175.585 -86.2295 175.688 -86.1626 175.792 -86.0965C 175.897 -86.0305 176.001 -85.9652 176.106 -85.9008C 176.211 -85.8363 176.317 -85.7727 176.423 -85.71C 176.529 -85.6472 176.636 -85.5853 176.743 -85.5242C 176.85 -85.4631 176.958 -85.4028 177.066 -85.3434C 177.174 -85.284 177.283 -85.2254 177.392 -85.1677C 177.5 -85.11 177.61 -85.0532 177.72 -84.9972C 177.83 -84.9412 177.94 -84.8861 178.051 -84.8318C 178.161 -84.7776 178.273 -84.7242 178.384 -84.6717C 178.496 -84.6192 178.608 -84.5676 178.72 -84.5168C 178.833 -84.4661 178.945 -84.4162 179.059 -84.3672C 179.172 -84.3183 179.285 -84.2702 179.399 -84.223C 179.513 -84.1758 179.627 -84.1295 179.742 -84.0841C 179.857 -84.0387 179.972 -83.9942 180.087 -83.9506C 180.202 -83.907 180.318 -83.8643 180.434 -83.8226C 180.55 -83.7808 180.667 -83.7399 180.783 -83.7C 180.9 -83.6601 181.017 -83.621 181.134 -83.5829C 181.251 -83.5448 181.369 -83.5076 181.487 -83.4714C 181.605 -83.4351 181.723 -83.3998 181.841 -83.3654C 181.96 -83.331 182.078 -83.2975 182.197 -83.265C 182.316 -83.2324 182.435 -83.2008 182.555 -83.1701C 182.674 -83.1395 182.794 -83.1097 182.914 -83.081C 183.034 -83.0522 183.154 -83.0243 183.274 -82.9974C 183.395 -82.9705 183.515 -82.9446 183.636 -82.9196C 183.757 -82.8946 183.878 -82.8705 183.999 -82.8474C 184.12 -82.8243 184.241 -82.8021 184.363 -82.7809C 184.484 -82.7597 184.606 -82.7395 184.728 -82.7202C 184.849 -82.7009 184.971 -82.6826 185.094 -82.6652C 185.216 -82.6478 185.338 -82.6314 185.46 -82.6159C 185.583 -82.6005 185.705 -82.586 185.828 -82.5725C 185.95 -82.5589 186.073 -82.5464 186.196 -82.5348C 186.318 -82.5231 186.441 -82.5125 186.564 -82.5028C 186.687 -82.4932 186.81 -82.4844 186.933 -82.4767C 187.056 -82.469 187.179 -82.4622 187.303 -82.4564C 187.426 -82.4506 187.549 -82.4457 187.672 -82.4419C 187.795 -82.438 187.919 -82.4351 188.042 -82.4331C 188.165 -82.4312 188.289 -82.4302 188.412 -82.4302C 188.535 -82.4302 188.659 -82.4312 188.782 -82.4331C 188.905 -82.4351 189.028 -82.438 189.152 -82.4419C 189.275 -82.4457 189.398 -82.4506 189.521 -82.4564C 189.645 -82.4622 189.768 -82.469 189.891 -82.4767C 190.014 -82.4844 190.137 -82.4932 190.26 -82.5028C 190.383 -82.5125 190.506 -82.5231 190.628 -82.5348C 190.751 -82.5464 190.874 -82.5589 190.996 -82.5725C 191.119 -82.586 191.241 -82.6005 191.364 -82.6159C 191.486 -82.6314 191.608 -82.6478 191.73 -82.6652C 191.852 -82.6826 191.974 -82.7009 192.096 -82.7202C 192.218 -82.7395 192.34 -82.7597 192.461 -82.7809C 192.583 -82.8021 192.704 -82.8243 192.825 -82.8474C 192.946 -82.8705 193.067 -82.8946 193.188 -82.9196C 193.309 -82.9446 193.429 -82.9705 193.55 -82.9974C 193.67 -83.0243 193.79 -83.0522 193.91 -83.081C 194.03 -83.1097 194.15 -83.1395 194.269 -83.1701C 194.388 -83.2008 194.508 -83.2324 194.627 -83.265C 194.746 -83.2975 194.864 -83.331 194.983 -83.3654C 195.101 -83.3998 195.219 -83.4351 195.337 -83.4714C 195.455 -83.5076 195.572 -83.5448 195.69 -83.5829C 195.807 -83.621 195.924 -83.6601 196.041 -83.7C 196.157 -83.7399 196.274 -83.7808 196.39 -83.8226C 196.506 -83.8643 196.621 -83.907 196.737 -83.9506C 196.852 -83.9942 196.967 -84.0387 197.082 -84.0841C 197.196 -84.1295 197.311 -84.1758 197.425 -84.223C 197.539 -84.2702 197.652 -84.3183 197.765 -84.3672C 197.879 -84.4162 197.991 -84.4661 198.104 -84.5168C 198.216 -84.5676 198.328 -84.6192 198.44 -84.6717C 198.551 -84.7242 198.662 -84.7776 198.773 -84.8318C 198.884 -84.8861 198.994 -84.9412 199.104 -84.9972C 199.214 -85.0532 199.323 -85.11 199.432 -85.1677C 199.541 -85.2254 199.65 -85.284 199.758 -85.3434C 199.866 -85.4028 199.974 -85.4631 200.081 -85.5242C 200.188 -85.5853 200.294 -85.6472 200.401 -85.71C 200.507 -85.7727 200.612 -85.8363 200.718 -85.9008C 200.823 -85.9652 200.927 -86.0305 201.031 -86.0965C 201.136 -86.1626 201.239 -86.2295 201.342 -86.2972C 201.445 -86.3649 201.548 -86.4334 201.65 -86.5027C 201.752 -86.5721 201.853 -86.6422 201.954 -86.7131C 202.055 -86.784 202.155 -86.8557 202.255 -86.9282C 202.355 -87.0006 202.454 -87.0739 202.553 -87.148C 202.651 -87.222 202.749 -87.2968 202.847 -87.3724C 202.944 -87.448 203.041 -87.5243 203.137 -87.6014C 203.234 -87.6785 203.329 -87.7564 203.424 -87.835C 203.519 -87.9136 203.614 -87.9929 203.707 -88.073C 203.801 -88.1531 203.894 -88.2339 203.987 -88.3155C 204.079 -88.397 204.171 -88.4793 204.262 -88.5623C 204.354 -88.6453 204.444 -88.729 204.534 -88.8134C 204.624 -88.8978 204.713 -88.983 204.802 -89.0688C 204.89 -89.1546 204.978 -89.2411 205.065 -89.3283C 205.153 -89.4155 205.239 -89.5034 205.325 -89.5919C 205.411 -89.6805 205.496 -89.7697 205.58 -89.8596C 205.665 -89.9495 205.748 -90.0401 205.831 -90.1313C 205.914 -90.2225 205.997 -90.3143 206.078 -90.4068C 206.16 -90.4993 206.241 -90.5925 206.321 -90.6863C 206.401 -90.78 206.48 -90.8744 206.559 -90.9694C 206.637 -91.0645 206.715 -91.1601 206.792 -91.2563C 206.869 -91.3526 206.946 -91.4494 207.021 -91.5468C 207.097 -91.6443 207.172 -91.7423 207.246 -91.8409C 207.32 -91.9395 207.393 -92.0387 207.466 -92.1385C 207.538 -92.2383 207.61 -92.3386 207.681 -92.4395C 207.752 -92.5404 207.822 -92.6418 207.891 -92.7438C 207.96 -92.8458 208.029 -92.9483 208.096 -93.0514C 208.164 -93.1545 208.231 -93.2581 208.297 -93.3622C 208.363 -93.4663 208.428 -93.571 208.493 -93.6761C 208.557 -93.7812 208.621 -93.8869 208.684 -93.993C 208.746 -94.0992 208.808 -94.2058 208.87 -94.3129C 208.931 -94.42 208.991 -94.5276 209.05 -94.6357C 209.11 -94.7438 209.168 -94.8523 209.226 -94.9613C 209.284 -95.0703 209.341 -95.1797 209.396 -95.2896C 209.452 -95.3994 209.508 -95.5098 209.562 -95.6205C 209.616 -95.7312 209.669 -95.8424 209.722 -95.954C 209.774 -96.0656 209.826 -96.1776 209.877 -96.2899C 209.928 -96.4023 209.977 -96.5151 210.026 -96.6283C 210.075 -96.7415 210.124 -96.855 210.171 -96.969C 210.218 -97.0829 210.264 -97.1972 210.31 -97.3118C 210.355 -97.4265 210.399 -97.5415 210.443 -97.6569C 210.487 -97.7722 210.529 -97.8879 210.571 -98.0039C 210.613 -98.12 210.654 -98.2363 210.694 -98.353C 210.734 -98.4697 210.773 -98.5866 210.811 -98.7039C 210.849 -98.8212 210.886 -98.9388 210.922 -99.0566C 210.959 -99.1745 210.994 -99.2926 211.028 -99.4111C 211.063 -99.5295 211.096 -99.6482 211.129 -99.7671C 211.161 -99.8861 211.193 -100.005 211.224 -100.125C 211.254 -100.244 211.284 -100.364 211.313 -100.484C 211.342 -100.604 211.369 -100.724 211.396 -100.844C 211.423 -100.964 211.449 -101.085 211.474 -101.206C 211.499 -101.327 211.523 -101.447 211.546 -101.569C 211.569 -101.69 211.592 -101.811 211.613 -101.933C 211.634 -102.054 211.654 -102.176 211.673 -102.297C 211.693 -102.419 211.711 -102.541 211.728 -102.663C 211.746 -102.785 211.762 -102.908 211.778 -103.03C 211.793 -103.152 211.808 -103.275 211.821 -103.397C 211.835 -103.52 211.847 -103.643 211.859 -103.765C 211.871 -103.888 211.881 -104.011 211.891 -104.134C 211.901 -104.257 211.909 -104.38 211.917 -104.503C 211.925 -104.626 211.931 -104.749 211.937 -104.872C 211.943 -104.995 211.948 -105.119 211.952 -105.242C 211.956 -105.365 211.959 -105.488 211.961 -105.612C 211.962 -105.735 211.963 -105.858 211.963 -105.982Z' fill='none' stroke='#008000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 24.2571 9.09643L 69.9488 26.2308' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 62.9 23.5875L 24.2571 9.09643' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 69.9488 26.2308L 63.6083 21.6988L 62.1918 25.4762L 69.9488 26.2308Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 69.9488 26.2308L 63.6083 21.6988L 62.1918 25.4762L 69.9488 26.2308Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 24.2571 -9.09643L 69.9488 -26.2308' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 62.9 -23.5875L 24.2571 -9.09643' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 69.9488 -26.2308L 62.1918 -25.4762L 63.6083 -21.6988L 69.9488 -26.2308Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 69.9488 -26.2308L 62.1918 -25.4762L 63.6083 -21.6988L 69.9488 -26.2308Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 17.2114 -19.3629L 76.9945 -86.6189' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 71.9931 -80.9923L 17.2114 -19.3629' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 76.9945 -86.6189L 70.4855 -82.3324L 73.5008 -79.6521L 76.9945 -86.6189Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 76.9945 -86.6189L 70.4855 -82.3324L 73.5008 -79.6521L 76.9945 -86.6189Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 12.1914 -22.8588L 82.0146 -153.777' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 78.472 -147.135L 12.1914 -22.8588' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 82.0146 -153.777L 76.6921 -148.084L 80.2518 -146.186L 82.0146 -153.777Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 82.0146 -153.777L 76.6921 -148.084L 80.2518 -146.186L 82.0146 -153.777Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 17.2114 -51.2916L 76.9945 15.9644' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 71.9931 10.3378L 17.2114 -51.2916' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 76.9945 15.9644L 73.5008 8.99766L 70.4855 11.6779L 76.9945 15.9644Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 76.9945 15.9644L 73.5008 8.99766L 70.4855 11.6779L 76.9945 15.9644Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 24.2571 -61.5581L 69.9488 -44.4237' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 62.9 -47.067L 24.2571 -61.5581' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 69.9488 -44.4237L 63.6083 -48.9557L 62.1918 -45.1783L 69.9488 -44.4237Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 69.9488 -44.4237L 63.6083 -48.9557L 62.1918 -45.1783L 69.9488 -44.4237Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 24.2571 -79.7509L 69.9488 -96.8853' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 62.9 -94.242L 24.2571 -79.7509' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 69.9488 -96.8853L 62.1918 -96.1307L 63.6083 -92.3533L 69.9488 -96.8853Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 69.9488 -96.8853L 62.1918 -96.1307L 63.6083 -92.3533L 69.9488 -96.8853Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 17.2114 -90.0174L 76.9945 -157.273' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 71.9931 -151.647L 17.2114 -90.0174' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 76.9945 -157.273L 70.4855 -152.987L 73.5008 -150.307L 76.9945 -157.273Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 76.9945 -157.273L 70.4855 -152.987L 73.5008 -150.307L 76.9945 -157.273Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 12.1914 -118.45L 82.0146 12.4684' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 78.472 5.82598L 12.1914 -118.45' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 82.0146 12.4684L 80.2518 4.87673L 76.6921 6.77522L 82.0146 12.4684Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 82.0146 12.4684L 80.2518 4.87673L 76.6921 6.77522L 82.0146 12.4684Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 17.2114 -121.946L 76.9945 -54.6901' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 71.9931 -60.3167L 17.2114 -121.946' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 76.9945 -54.6901L 73.5008 -61.6568L 70.4855 -58.9766L 76.9945 -54.6901Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 76.9945 -54.6901L 73.5008 -61.6568L 70.4855 -58.9766L 76.9945 -54.6901Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 24.2571 -132.213L 69.9488 -115.078' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 62.9 -117.721L 24.2571 -132.213' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 69.9488 -115.078L 63.6083 -119.61L 62.1918 -115.833L 69.9488 -115.078Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 69.9488 -115.078L 63.6083 -119.61L 62.1918 -115.833L 69.9488 -115.078Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 24.2571 -150.405L 69.9488 -167.54' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 62.9 -164.896L 24.2571 -150.405' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 69.9488 -167.54L 62.1918 -166.785L 63.6083 -163.008L 69.9488 -167.54Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 69.9488 -167.54L 62.1918 -166.785L 63.6083 -163.008L 69.9488 -167.54Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 114.931 19.7833L 167.687 -19.7833' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 161.664 -15.2664L 114.931 19.7833' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 167.687 -19.7833L 160.454 -16.8801L 162.874 -13.6527L 167.687 -19.7833Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 167.687 -19.7833L 160.454 -16.8801L 162.874 -13.6527L 167.687 -19.7833Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 108.576 13.7716L 174.042 -84.4261' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 169.866 -78.1623L 108.576 13.7716' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 174.042 -84.4261L 168.187 -79.2812L 171.544 -77.0434L 174.042 -84.4261Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 174.042 -84.4261L 168.187 -79.2812L 171.544 -77.0434L 174.042 -84.4261Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 120.113 -35.3272L 162.505 -35.3272' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 154.977 -35.3272L 120.113 -35.3272' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 162.505 -35.3272L 154.977 -37.3444L 154.977 -33.3101L 162.505 -35.3272Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 162.505 -35.3272L 154.977 -37.3444L 154.977 -33.3101L 162.505 -35.3272Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 114.931 -50.8712L 167.687 -90.4377' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 161.664 -85.9209L 114.931 -50.8712' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 167.687 -90.4377L 160.454 -87.5346L 162.874 -84.3071L 167.687 -90.4377Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 167.687 -90.4377L 160.454 -87.5346L 162.874 -84.3071L 167.687 -90.4377Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 114.931 -90.4377L 167.687 -50.8712' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 161.664 -55.3881L 114.931 -90.4377' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 167.687 -50.8712L 162.874 -57.0018L 160.454 -53.7744L 167.687 -50.8712Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 167.687 -50.8712L 162.874 -57.0018L 160.454 -53.7744L 167.687 -50.8712Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 120.113 -105.982L 162.505 -105.982' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 154.977 -105.982L 120.113 -105.982' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 162.505 -105.982L 154.977 -107.999L 154.977 -103.965L 162.505 -105.982Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 162.505 -105.982L 154.977 -107.999L 154.977 -103.965L 162.505 -105.982Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 108.576 -155.081L 174.042 -56.8829' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 169.866 -63.1467L 108.576 -155.081' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 174.042 -56.8829L 171.544 -64.2656L 168.187 -62.0277L 174.042 -56.8829Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 174.042 -56.8829L 171.544 -64.2656L 168.187 -62.0277L 174.042 -56.8829Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 114.931 -161.092L 167.687 -121.526' fill='none' stroke='#ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='2.0075'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 161.664 -126.043L 114.931 -161.092' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 167.687 -121.526L 162.874 -127.656L 160.454 -124.429L 167.687 -121.526Z' fill='#000000'/> +</g> +<g transform='matrix(1 0 0 1 80.4234 267.682)'> +<path d='M 167.687 -121.526L 162.874 -127.656L 160.454 -124.429L 167.687 -121.526Z' fill='none' stroke='#000000' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10.0375' stroke-width='0.501875'/> +</g><g fill='#bf0000'> +<use x='66.2316' xlink:href='#g0-73' y='96.8284'/> +<use x='70.4704' xlink:href='#g0-110' y='96.8284'/> +<use x='76.9981' xlink:href='#g0-112' y='96.8284'/> +<use x='83.5258' xlink:href='#g0-117' y='96.8284'/> +<use x='90.0536' xlink:href='#g0-116' y='96.8284'/> +</g> +<g fill='#0000bf'> +<use x='156.195' xlink:href='#g0-72' y='63.8344'/> +<use x='165.003' xlink:href='#g0-105' y='63.8344'/> +<use x='168.267' xlink:href='#g0-100' y='63.8344'/> +<use x='174.794' xlink:href='#g0-100' y='63.8344'/> +<use x='181.322' xlink:href='#g0-101' y='63.8344'/> +<use x='186.544' xlink:href='#g0-110' y='63.8344'/> +</g> +<g fill='#008000'> +<use x='249.909' xlink:href='#g0-79' y='132.156'/> +<use x='259.048' xlink:href='#g0-117' y='132.156'/> +<use x='265.575' xlink:href='#g0-116' y='132.156'/> +<use x='270.145' xlink:href='#g0-112' y='132.156'/> +<use x='276.672' xlink:href='#g0-117' y='132.156'/> +<use x='283.2' xlink:href='#g0-116' y='132.156'/> +</g> +</g> +</svg> diff --git a/images/neuralnets/Colored_neural_network_wiki.jpg b/images/neuralnets/Colored_neural_network_wiki.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f99a84841f25c8961e9356a6d7d9c4d750afea10 Binary files /dev/null and b/images/neuralnets/Colored_neural_network_wiki.jpg differ diff --git a/images/neuralnets/google_playground.png b/images/neuralnets/google_playground.png new file mode 100644 index 0000000000000000000000000000000000000000..bf73eb681fbb45394ae3c5026579a58235ec26c5 Binary files /dev/null and b/images/neuralnets/google_playground.png differ diff --git a/images/neuralnets/neural_net_ex.svg b/images/neuralnets/neural_net_ex.svg new file mode 100644 index 0000000000000000000000000000000000000000..530fa5d75939c23cf79ff3fd4d28f80f56c4e01d --- /dev/null +++ b/images/neuralnets/neural_net_ex.svg @@ -0,0 +1,257 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" + "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<!-- Generated by graphviz version 2.38.0 (20140413.2041) + --> +<!-- Title: G Pages: 1 --> +<svg width="614pt" height="412pt" + viewBox="0.00 0.00 614.00 412.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> +<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 408)"> +<title>G</title> +<polygon fill="white" stroke="none" points="-4,4 -4,-408 610,-408 610,4 -4,4"/> +<g id="clust1" class="cluster"><title>cluster_0</title> +<polygon fill="#ff0000" fill-opacity="0.501961" stroke="#ff0000" stroke-opacity="0.501961" points="1,-53 1,-351 104,-351 104,-53 1,-53"/> +<text text-anchor="middle" x="52.5" y="-331" font-family="Times,serif" font-size="20.00">Input layer</text> +</g> +<g id="clust2" class="cluster"><title>cluster_1</title> +<polygon fill="#0000ff" fill-opacity="0.501961" stroke="#0000ff" stroke-opacity="0.501961" points="174,-8 174,-396 420,-396 420,-8 174,-8"/> +<text text-anchor="middle" x="297" y="-376" font-family="Times,serif" font-size="20.00">Hidden layers</text> +</g> +<g id="clust3" class="cluster"><title>cluster_2</title> +<polygon fill="#000000" fill-opacity="0.501961" stroke="#000000" stroke-opacity="0.501961" points="490,-98 490,-306 606,-306 606,-98 490,-98"/> +<text text-anchor="middle" x="548" y="-286" font-family="Times,serif" font-size="20.00">Output layer</text> +</g> +<!-- 0_0 --> +<g id="node1" class="node"><title>0_0</title> +<ellipse fill="none" stroke="black" cx="52" cy="-187" rx="36" ry="36"/> +</g> +<!-- 1_0 --> +<g id="node4" class="node"><title>1_0</title> +<ellipse fill="none" stroke="black" cx="218" cy="-322" rx="36" ry="36"/> +</g> +<!-- 0_0->1_0 --> +<g id="edge1" class="edge"><title>0_0->1_0</title> +<path fill="none" stroke="black" d="M80.4499,-209.596C108.324,-232.541 151.588,-268.155 181.93,-293.131"/> +<polygon fill="black" stroke="black" points="179.789,-295.902 189.734,-299.555 184.238,-290.498 179.789,-295.902"/> +</g> +<!-- 1_1 --> +<g id="node5" class="node"><title>1_1</title> +<ellipse fill="none" stroke="black" cx="218" cy="-232" rx="36" ry="36"/> +</g> +<!-- 0_0->1_1 --> +<g id="edge2" class="edge"><title>0_0->1_1</title> +<path fill="none" stroke="black" d="M86.9809,-196.324C111.939,-203.172 146.06,-212.535 173.086,-219.95"/> +<polygon fill="black" stroke="black" points="172.493,-223.417 183.063,-222.688 174.345,-216.667 172.493,-223.417"/> +</g> +<!-- 1_2 --> +<g id="node6" class="node"><title>1_2</title> +<ellipse fill="none" stroke="black" cx="218" cy="-142" rx="36" ry="36"/> +</g> +<!-- 0_0->1_2 --> +<g id="edge3" class="edge"><title>0_0->1_2</title> +<path fill="none" stroke="black" d="M86.9809,-177.676C111.939,-170.828 146.06,-161.465 173.086,-154.05"/> +<polygon fill="black" stroke="black" points="174.345,-157.333 183.063,-151.312 172.493,-150.583 174.345,-157.333"/> +</g> +<!-- 1_3 --> +<g id="node7" class="node"><title>1_3</title> +<ellipse fill="none" stroke="black" cx="218" cy="-52" rx="36" ry="36"/> +</g> +<!-- 0_0->1_3 --> +<g id="edge4" class="edge"><title>0_0->1_3</title> +<path fill="none" stroke="black" d="M80.4499,-164.404C108.324,-141.459 151.588,-105.845 181.93,-80.8689"/> +<polygon fill="black" stroke="black" points="184.238,-83.5023 189.734,-74.4446 179.789,-78.0979 184.238,-83.5023"/> +</g> +<!-- 0_1 --> +<g id="node2" class="node"><title>0_1</title> +<ellipse fill="none" stroke="black" cx="52" cy="-97" rx="36" ry="36"/> +</g> +<!-- 0_1->1_0 --> +<g id="edge5" class="edge"><title>0_1->1_0</title> +<path fill="none" stroke="black" d="M74.1044,-125.954C103.688,-166.541 157.497,-240.365 189.975,-284.923"/> +<polygon fill="black" stroke="black" points="187.258,-287.137 195.977,-293.157 192.915,-283.014 187.258,-287.137"/> +</g> +<!-- 0_1->1_1 --> +<g id="edge6" class="edge"><title>0_1->1_1</title> +<path fill="none" stroke="black" d="M80.4499,-119.596C108.324,-142.541 151.588,-178.155 181.93,-203.131"/> +<polygon fill="black" stroke="black" points="179.789,-205.902 189.734,-209.555 184.238,-200.498 179.789,-205.902"/> +</g> +<!-- 0_1->1_2 --> +<g id="edge7" class="edge"><title>0_1->1_2</title> +<path fill="none" stroke="black" d="M86.9809,-106.324C111.939,-113.172 146.06,-122.535 173.086,-129.95"/> +<polygon fill="black" stroke="black" points="172.493,-133.417 183.063,-132.688 174.345,-126.667 172.493,-133.417"/> +</g> +<!-- 0_1->1_3 --> +<g id="edge8" class="edge"><title>0_1->1_3</title> +<path fill="none" stroke="black" d="M86.9809,-87.676C111.939,-80.8277 146.06,-71.4651 173.086,-64.0495"/> +<polygon fill="black" stroke="black" points="174.345,-67.3335 183.063,-61.3121 172.493,-60.583 174.345,-67.3335"/> +</g> +<!-- 0_2 --> +<g id="node3" class="node"><title>0_2</title> +<ellipse fill="none" stroke="black" cx="52" cy="-277" rx="36" ry="36"/> +</g> +<!-- 0_2->1_0 --> +<g id="edge9" class="edge"><title>0_2->1_0</title> +<path fill="none" stroke="black" d="M86.9809,-286.324C111.939,-293.172 146.06,-302.535 173.086,-309.95"/> +<polygon fill="black" stroke="black" points="172.493,-313.417 183.063,-312.688 174.345,-306.667 172.493,-313.417"/> +</g> +<!-- 0_2->1_1 --> +<g id="edge10" class="edge"><title>0_2->1_1</title> +<path fill="none" stroke="black" d="M86.9809,-267.676C111.939,-260.828 146.06,-251.465 173.086,-244.05"/> +<polygon fill="black" stroke="black" points="174.345,-247.333 183.063,-241.312 172.493,-240.583 174.345,-247.333"/> +</g> +<!-- 0_2->1_2 --> +<g id="edge11" class="edge"><title>0_2->1_2</title> +<path fill="none" stroke="black" d="M80.4499,-254.404C108.324,-231.459 151.588,-195.845 181.93,-170.869"/> +<polygon fill="black" stroke="black" points="184.238,-173.502 189.734,-164.445 179.789,-168.098 184.238,-173.502"/> +</g> +<!-- 0_2->1_3 --> +<g id="edge12" class="edge"><title>0_2->1_3</title> +<path fill="none" stroke="black" d="M74.1044,-248.046C103.688,-207.459 157.497,-133.635 189.975,-89.0769"/> +<polygon fill="black" stroke="black" points="192.915,-90.9858 195.977,-80.8431 187.258,-86.8626 192.915,-90.9858"/> +</g> +<!-- 2_0 --> +<g id="node8" class="node"><title>2_0</title> +<ellipse fill="none" stroke="black" cx="376" cy="-52" rx="36" ry="36"/> +</g> +<!-- 1_0->2_0 --> +<g id="edge13" class="edge"><title>1_0->2_0</title> +<path fill="none" stroke="black" d="M236.895,-291.028C265.266,-241.925 320.554,-146.233 351.886,-92.0042"/> +<polygon fill="black" stroke="black" points="355.102,-93.4356 357.074,-83.0259 349.041,-89.9336 355.102,-93.4356"/> +</g> +<!-- 2_1 --> +<g id="node9" class="node"><title>2_1</title> +<ellipse fill="none" stroke="black" cx="376" cy="-142" rx="36" ry="36"/> +</g> +<!-- 1_0->2_1 --> +<g id="edge14" class="edge"><title>1_0->2_1</title> +<path fill="none" stroke="black" d="M242.355,-295.052C269.66,-263.546 314.92,-211.324 344.854,-176.784"/> +<polygon fill="black" stroke="black" points="347.836,-178.687 351.741,-168.838 342.546,-174.102 347.836,-178.687"/> +</g> +<!-- 2_2 --> +<g id="node10" class="node"><title>2_2</title> +<ellipse fill="none" stroke="black" cx="376" cy="-232" rx="36" ry="36"/> +</g> +<!-- 1_0->2_2 --> +<g id="edge15" class="edge"><title>1_0->2_2</title> +<path fill="none" stroke="black" d="M249.449,-304.433C274.065,-290.232 308.899,-270.135 335.633,-254.712"/> +<polygon fill="black" stroke="black" points="337.449,-257.705 344.362,-249.676 333.951,-251.641 337.449,-257.705"/> +</g> +<!-- 2_3 --> +<g id="node11" class="node"><title>2_3</title> +<ellipse fill="none" stroke="black" cx="376" cy="-322" rx="36" ry="36"/> +</g> +<!-- 1_0->2_3 --> +<g id="edge16" class="edge"><title>1_0->2_3</title> +<path fill="none" stroke="black" d="M254.009,-322C276.311,-322 305.432,-322 329.515,-322"/> +<polygon fill="black" stroke="black" points="329.838,-325.5 339.838,-322 329.838,-318.5 329.838,-325.5"/> +</g> +<!-- 1_1->2_0 --> +<g id="edge17" class="edge"><title>1_1->2_0</title> +<path fill="none" stroke="black" d="M242.355,-205.052C269.66,-173.546 314.92,-121.324 344.854,-86.7839"/> +<polygon fill="black" stroke="black" points="347.836,-88.6868 351.741,-78.8377 342.546,-84.1023 347.836,-88.6868"/> +</g> +<!-- 1_1->2_1 --> +<g id="edge18" class="edge"><title>1_1->2_1</title> +<path fill="none" stroke="black" d="M249.449,-214.433C274.065,-200.232 308.899,-180.135 335.633,-164.712"/> +<polygon fill="black" stroke="black" points="337.449,-167.705 344.362,-159.676 333.951,-161.641 337.449,-167.705"/> +</g> +<!-- 1_1->2_2 --> +<g id="edge19" class="edge"><title>1_1->2_2</title> +<path fill="none" stroke="black" d="M254.009,-232C276.311,-232 305.432,-232 329.515,-232"/> +<polygon fill="black" stroke="black" points="329.838,-235.5 339.838,-232 329.838,-228.5 329.838,-235.5"/> +</g> +<!-- 1_1->2_3 --> +<g id="edge20" class="edge"><title>1_1->2_3</title> +<path fill="none" stroke="black" d="M249.449,-249.567C274.065,-263.768 308.899,-283.865 335.633,-299.288"/> +<polygon fill="black" stroke="black" points="333.951,-302.359 344.362,-304.324 337.449,-296.295 333.951,-302.359"/> +</g> +<!-- 1_2->2_0 --> +<g id="edge21" class="edge"><title>1_2->2_0</title> +<path fill="none" stroke="black" d="M249.449,-124.433C274.065,-110.232 308.899,-90.1353 335.633,-74.7119"/> +<polygon fill="black" stroke="black" points="337.449,-77.7047 344.362,-69.6758 333.951,-71.6414 337.449,-77.7047"/> +</g> +<!-- 1_2->2_1 --> +<g id="edge22" class="edge"><title>1_2->2_1</title> +<path fill="none" stroke="black" d="M254.009,-142C276.311,-142 305.432,-142 329.515,-142"/> +<polygon fill="black" stroke="black" points="329.838,-145.5 339.838,-142 329.838,-138.5 329.838,-145.5"/> +</g> +<!-- 1_2->2_2 --> +<g id="edge23" class="edge"><title>1_2->2_2</title> +<path fill="none" stroke="black" d="M249.449,-159.567C274.065,-173.768 308.899,-193.865 335.633,-209.288"/> +<polygon fill="black" stroke="black" points="333.951,-212.359 344.362,-214.324 337.449,-206.295 333.951,-212.359"/> +</g> +<!-- 1_2->2_3 --> +<g id="edge24" class="edge"><title>1_2->2_3</title> +<path fill="none" stroke="black" d="M242.355,-168.948C269.66,-200.454 314.92,-252.676 344.854,-287.216"/> +<polygon fill="black" stroke="black" points="342.546,-289.898 351.741,-295.162 347.836,-285.313 342.546,-289.898"/> +</g> +<!-- 1_3->2_0 --> +<g id="edge25" class="edge"><title>1_3->2_0</title> +<path fill="none" stroke="black" d="M254.009,-52C276.311,-52 305.432,-52 329.515,-52"/> +<polygon fill="black" stroke="black" points="329.838,-55.5001 339.838,-52 329.838,-48.5001 329.838,-55.5001"/> +</g> +<!-- 1_3->2_1 --> +<g id="edge26" class="edge"><title>1_3->2_1</title> +<path fill="none" stroke="black" d="M249.449,-69.5666C274.065,-83.7682 308.899,-103.865 335.633,-119.288"/> +<polygon fill="black" stroke="black" points="333.951,-122.359 344.362,-124.324 337.449,-116.295 333.951,-122.359"/> +</g> +<!-- 1_3->2_2 --> +<g id="edge27" class="edge"><title>1_3->2_2</title> +<path fill="none" stroke="black" d="M242.355,-78.9478C269.66,-110.454 314.92,-162.676 344.854,-197.216"/> +<polygon fill="black" stroke="black" points="342.546,-199.898 351.741,-205.162 347.836,-195.313 342.546,-199.898"/> +</g> +<!-- 1_3->2_3 --> +<g id="edge28" class="edge"><title>1_3->2_3</title> +<path fill="none" stroke="black" d="M236.895,-82.9724C265.266,-132.075 320.554,-227.767 351.886,-281.996"/> +<polygon fill="black" stroke="black" points="349.041,-284.066 357.074,-290.974 355.102,-280.564 349.041,-284.066"/> +</g> +<!-- 3_0 --> +<g id="node12" class="node"><title>3_0</title> +<ellipse fill="none" stroke="black" cx="548" cy="-232" rx="36" ry="36"/> +</g> +<!-- 2_0->3_0 --> +<g id="edge29" class="edge"><title>2_0->3_0</title> +<path fill="none" stroke="black" d="M401.357,-77.7896C431.402,-109.602 482.538,-163.747 515.531,-198.68"/> +<polygon fill="black" stroke="black" points="513.278,-201.391 522.688,-206.258 518.367,-196.585 513.278,-201.391"/> +</g> +<!-- 3_1 --> +<g id="node13" class="node"><title>3_1</title> +<ellipse fill="none" stroke="black" cx="548" cy="-142" rx="36" ry="36"/> +</g> +<!-- 2_0->3_1 --> +<g id="edge30" class="edge"><title>2_0->3_1</title> +<path fill="none" stroke="black" d="M408.181,-68.5074C435.892,-83.1779 476.567,-104.712 506.732,-120.681"/> +<polygon fill="black" stroke="black" points="505.254,-123.859 515.73,-125.445 508.529,-117.673 505.254,-123.859"/> +</g> +<!-- 2_1->3_0 --> +<g id="edge31" class="edge"><title>2_1->3_0</title> +<path fill="none" stroke="black" d="M408.181,-158.507C435.892,-173.178 476.567,-194.712 506.732,-210.681"/> +<polygon fill="black" stroke="black" points="505.254,-213.859 515.73,-215.445 508.529,-207.673 505.254,-213.859"/> +</g> +<!-- 2_1->3_1 --> +<g id="edge32" class="edge"><title>2_1->3_1</title> +<path fill="none" stroke="black" d="M412.224,-142C438.095,-142 473.465,-142 501.479,-142"/> +<polygon fill="black" stroke="black" points="501.821,-145.5 511.821,-142 501.821,-138.5 501.821,-145.5"/> +</g> +<!-- 2_2->3_0 --> +<g id="edge33" class="edge"><title>2_2->3_0</title> +<path fill="none" stroke="black" d="M412.224,-232C438.095,-232 473.465,-232 501.479,-232"/> +<polygon fill="black" stroke="black" points="501.821,-235.5 511.821,-232 501.821,-228.5 501.821,-235.5"/> +</g> +<!-- 2_2->3_1 --> +<g id="edge34" class="edge"><title>2_2->3_1</title> +<path fill="none" stroke="black" d="M408.181,-215.493C435.892,-200.822 476.567,-179.288 506.732,-163.319"/> +<polygon fill="black" stroke="black" points="508.529,-166.327 515.73,-158.555 505.254,-160.141 508.529,-166.327"/> +</g> +<!-- 2_3->3_0 --> +<g id="edge35" class="edge"><title>2_3->3_0</title> +<path fill="none" stroke="black" d="M408.181,-305.493C435.892,-290.822 476.567,-269.288 506.732,-253.319"/> +<polygon fill="black" stroke="black" points="508.529,-256.327 515.73,-248.555 505.254,-250.141 508.529,-256.327"/> +</g> +<!-- 2_3->3_1 --> +<g id="edge36" class="edge"><title>2_3->3_1</title> +<path fill="none" stroke="black" d="M401.357,-296.21C431.402,-264.398 482.538,-210.253 515.531,-175.32"/> +<polygon fill="black" stroke="black" points="518.367,-177.415 522.688,-167.742 513.278,-172.609 518.367,-177.415"/> +</g> +</g> +</svg> diff --git a/images/neuralnets/perceptron_XOR.svg b/images/neuralnets/perceptron_XOR.svg new file mode 100644 index 0000000000000000000000000000000000000000..701e40b50f938b04587be26898db7fe6ec977461 --- /dev/null +++ b/images/neuralnets/perceptron_XOR.svg @@ -0,0 +1,75 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" + "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<!-- Generated by graphviz version 2.38.0 (20140413.2041) + --> +<!-- Title: G Pages: 1 --> +<svg width="348pt" height="186pt" + viewBox="0.00 0.00 348.00 185.50" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> +<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 181.501)"> +<title>G</title> +<polygon fill="white" stroke="none" points="-4,4 -4,-181.501 344.001,-181.501 344.001,4 -4,4"/> +<!-- 0_0 --> +<g id="node1" class="node"><title>0_0</title> +<text text-anchor="middle" x="15" y="-137.3" font-family="Times,serif" font-size="14.00">x1</text> +</g> +<!-- 1_0 --> +<g id="node3" class="node"><title>1_0</title> +<ellipse fill="none" stroke="black" cx="96.5007" cy="-147" rx="30.5014" ry="30.5014"/> +<text text-anchor="middle" x="96.5007" y="-143.3" font-family="Times,serif" font-size="14.00">NAND</text> +</g> +<!-- 0_0->1_0 --> +<g id="edge1" class="edge"><title>0_0->1_0</title> +<path fill="none" stroke="black" d="M30.2131,-142.073C37.4171,-142.616 46.5615,-143.307 55.709,-143.997"/> +<polygon fill="black" stroke="black" points="55.6996,-147.506 65.9346,-144.769 56.2264,-140.526 55.6996,-147.506"/> +</g> +<!-- 1_1 --> +<g id="node4" class="node"><title>1_1</title> +<ellipse fill="none" stroke="black" cx="96.5007" cy="-29" rx="29" ry="29"/> +<text text-anchor="middle" x="96.5007" y="-25.3" font-family="Times,serif" font-size="14.00">OR</text> +</g> +<!-- 0_0->1_1 --> +<g id="edge3" class="edge"><title>0_0->1_1</title> +<path fill="none" stroke="black" d="M29.1279,-122.505C41.0907,-105.652 59.0071,-80.412 73.2112,-60.4013"/> +<polygon fill="black" stroke="black" points="76.1089,-62.3657 79.0432,-52.1852 70.4008,-58.3138 76.1089,-62.3657"/> +</g> +<!-- 0_1 --> +<g id="node2" class="node"><title>0_1</title> +<text text-anchor="middle" x="15" y="-37.3" font-family="Times,serif" font-size="14.00">x2</text> +</g> +<!-- 0_1->1_0 --> +<g id="edge2" class="edge"><title>0_1->1_0</title> +<path fill="none" stroke="black" d="M29.848,-59.4638C41.2673,-74.6894 57.7381,-96.6503 71.3251,-114.766"/> +<polygon fill="black" stroke="black" points="68.5363,-116.881 77.3364,-122.781 74.1363,-112.681 68.5363,-116.881"/> +</g> +<!-- 0_1->1_1 --> +<g id="edge4" class="edge"><title>0_1->1_1</title> +<path fill="none" stroke="black" d="M30.2131,-38.8546C37.9035,-37.6938 47.8052,-36.1992 57.5613,-34.7267"/> +<polygon fill="black" stroke="black" points="58.2109,-38.1683 67.5765,-33.2149 57.1661,-31.2467 58.2109,-38.1683"/> +</g> +<!-- 2_0 --> +<g id="node5" class="node"><title>2_0</title> +<ellipse fill="none" stroke="black" cx="192.001" cy="-88" rx="29" ry="29"/> +<text text-anchor="middle" x="192.001" y="-84.3" font-family="Times,serif" font-size="14.00">AND</text> +</g> +<!-- 1_0->2_0 --> +<g id="edge5" class="edge"><title>1_0->2_0</title> +<path fill="none" stroke="black" d="M123.05,-130.878C133.994,-123.972 146.905,-115.825 158.517,-108.498"/> +<polygon fill="black" stroke="black" points="160.5,-111.385 167.09,-103.089 156.765,-105.465 160.5,-111.385"/> +</g> +<!-- 1_1->2_0 --> +<g id="edge6" class="edge"><title>1_1->2_0</title> +<path fill="none" stroke="black" d="M121.579,-44.194C132.813,-51.2824 146.351,-59.8249 158.477,-67.4767"/> +<polygon fill="black" stroke="black" points="156.679,-70.481 167.004,-72.8575 160.415,-64.561 156.679,-70.481"/> +</g> +<!-- 3_0 --> +<g id="node6" class="node"><title>3_0</title> +<text text-anchor="middle" x="298.501" y="-84.3" font-family="Times,serif" font-size="14.00">XOR output</text> +</g> +<!-- 2_0->3_0 --> +<g id="edge7" class="edge"><title>2_0->3_0</title> +<path fill="none" stroke="black" d="M221.005,-88C228.914,-88 237.775,-88 246.585,-88"/> +<polygon fill="black" stroke="black" points="246.844,-91.5001 256.844,-88 246.844,-84.5001 246.844,-91.5001"/> +</g> +</g> +</svg> diff --git a/images/neuralnets/perceptron_ex.svg b/images/neuralnets/perceptron_ex.svg new file mode 100644 index 0000000000000000000000000000000000000000..f53e56fd0790a7d0ff6c9bddd324406458a01665 --- /dev/null +++ b/images/neuralnets/perceptron_ex.svg @@ -0,0 +1,57 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" + "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<!-- Generated by graphviz version 2.38.0 (20140413.2041) + --> +<!-- Title: G Pages: 1 --> +<svg width="357pt" height="260pt" + viewBox="0.00 0.00 357.09 260.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> +<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 256)"> +<title>G</title> +<polygon fill="white" stroke="none" points="-4,4 -4,-256 353.092,-256 353.092,4 -4,4"/> +<!-- 0_0 --> +<g id="node1" class="node"><title>0_0</title> +<text text-anchor="middle" x="15" y="-230.3" font-family="Times,serif" font-size="14.00">x1</text> +</g> +<!-- 1_0 --> +<g id="node4" class="node"><title>1_0</title> +<ellipse fill="none" stroke="black" cx="172.046" cy="-126" rx="39.0917" ry="39.0917"/> +<text text-anchor="middle" x="172.046" y="-122.3" font-family="Times,serif" font-size="14.00">perceptron</text> +</g> +<!-- 0_0->1_0 --> +<g id="edge1" class="edge"><title>0_0->1_0</title> +<path fill="none" stroke="black" d="M30.0327,-224.225C52.614,-208.496 97.8376,-176.995 131.006,-153.891"/> +<polygon fill="black" stroke="black" points="133.379,-156.503 139.584,-147.915 129.378,-150.759 133.379,-156.503"/> +<text text-anchor="middle" x="81.5" y="-195.8" font-family="Times,serif" font-size="14.00">w1</text> +</g> +<!-- 0_1 --> +<g id="node2" class="node"><title>0_1</title> +<text text-anchor="middle" x="15" y="-122.3" font-family="Times,serif" font-size="14.00">x2</text> +</g> +<!-- 0_1->1_0 --> +<g id="edge2" class="edge"><title>0_1->1_0</title> +<path fill="none" stroke="black" d="M30.0327,-126C50.8171,-126 90.7837,-126 122.876,-126"/> +<polygon fill="black" stroke="black" points="122.985,-129.5 132.985,-126 122.985,-122.5 122.985,-129.5"/> +<text text-anchor="middle" x="81.5" y="-129.8" font-family="Times,serif" font-size="14.00">w2</text> +</g> +<!-- 0_2 --> +<g id="node3" class="node"><title>0_2</title> +<text text-anchor="middle" x="15" y="-14.3" font-family="Times,serif" font-size="14.00">x3</text> +</g> +<!-- 0_2->1_0 --> +<g id="edge3" class="edge"><title>0_2->1_0</title> +<path fill="none" stroke="black" d="M30.0327,-27.7748C52.614,-43.5041 97.8376,-75.0055 131.006,-98.1093"/> +<polygon fill="black" stroke="black" points="129.378,-101.241 139.584,-104.085 133.379,-95.4969 129.378,-101.241"/> +<text text-anchor="middle" x="81.5" y="-71.8" font-family="Times,serif" font-size="14.00">w3</text> +</g> +<!-- 2_0 --> +<g id="node5" class="node"><title>2_0</title> +<text text-anchor="middle" x="323.592" y="-122.3" font-family="Times,serif" font-size="14.00">output</text> +</g> +<!-- 1_0->2_0 --> +<g id="edge4" class="edge"><title>1_0->2_0</title> +<path fill="none" stroke="black" d="M211.169,-126C234.627,-126 264.478,-126 287.377,-126"/> +<polygon fill="black" stroke="black" points="287.681,-129.5 297.681,-126 287.681,-122.5 287.681,-129.5"/> +</g> +</g> +</svg> diff --git a/mlw_packages.yml b/mlw_packages.yml index 7c70f2dbc11ad00543ed08351b01558f4c20fe5f..a317360c79119228f4eabb0552e869b83290941c 100644 --- a/mlw_packages.yml +++ b/mlw_packages.yml @@ -2,16 +2,19 @@ # for the workshop # 'conda env create -f mlw_packages.yml' -name: machine_learning_workshop +name: mlw-2 channels: + - https://repo.anaconda.com/pkgs/main - conda-forge dependencies: - python==3.6 + - nomkl - pandas - matplotlib - scikit-learn - seaborn - jupyter - keras + - tensorflow==1.10 diff --git a/neural_nets_intro.ipynb b/neural_nets_intro.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..84fe22e9758d5cfe1e6899045a1a219996f25878 --- /dev/null +++ b/neural_nets_intro.ipynb @@ -0,0 +1,2605 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# IGNORE THIS CELL WHICH CUSTOMIZES LAYOUT AND STYLING OF THE NOTEBOOK !\n", + "import matplotlib.pyplot as plt\n", + "%matplotlib inline\n", + "%config InlineBackend.figure_format = 'retina'\n", + "import warnings\n", + "warnings.filterwarnings('ignore', category=FutureWarning)\n", + "#from IPython.core.display import HTML; HTML(open(\"custom.html\", \"r\").read())" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Introduction to Neural Networks\n", + "\n", + "## TO DO: Almost all the figues and schematics will be replaced or improved slowly\n", + "\n", + "<center>\n", + "<figure>\n", + "<img src=\"./images/neuralnets/neural_net_ex.svg\" width=\"700\"/>\n", + "<figcaption>A 3 layer Neural Network (By convention the input layer is not counted).</figcaption>\n", + "</figure>\n", + "</center>" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## History of Neural networks\n", + "\n", + "**TODO: Make it more complete and format properly**\n", + "\n", + "1943 - Threshold Logic\n", + "\n", + "1940s - Hebbian Learning\n", + "\n", + "1958 - Perceptron\n", + "\n", + "1975 - Backpropagation\n", + "\n", + "1980s - Neocognitron\n", + "\n", + "1982: Hopfield Network\n", + "\n", + "1986: Convolutional Neural Networks\n", + "\n", + "1997: Long-short term memory (LSTM) model\n", + "\n", + "2014: Gated Recurrent Units, Generative Adversarial Networks(Check)?" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Why the boom now?\n", + "* Data\n", + "* Data\n", + "* Data\n", + "* Availability of GPUs\n", + "* Algorithmic developments which allow for efficient training and training for deeper networks\n", + "* Much easier access than a decade ago" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Building blocks\n", + "### Perceptron\n", + "\n", + "The smallest unit of a neural network is a **perceptron** like node.\n", + "\n", + "**What is a Perceptron?**\n", + "\n", + "It is a simple function which can have multiple inputs and has a single output.\n", + "\n", + "<center>\n", + "<figure>\n", + "<img src=\"./images/neuralnets/perceptron_ex.svg\" width=\"400\"/>\n", + "<figcaption>A simple perceptron with 3 inputs and 1 output.</figcaption>\n", + "</figure>\n", + "</center>\n", + "\n", + "\n", + "It works as follows: \n", + "\n", + "Step 1: A **weighted sum** of the inputs is calculated\n", + "\n", + "\\begin{equation*}\n", + "weighted\\_sum = \\sum_{k=1}^{num\\_inputs} w_{i} x_{i}\n", + "\\end{equation*}\n", + "\n", + "Step 2: A **step** activation function is applied\n", + "\n", + "$$\n", + "f(weighted\\_sum) = \\left\\{\n", + " \\begin{array}{ll}\n", + " 0 & \\quad weighted\\_sum < threshold \\\\\n", + " 1 & \\quad weighted\\_sum \\geq threshold\n", + " \\end{array}\n", + " \\right.\n", + "$$\n", + "\n", + "You can see that this is also a linear classifier as we introduced in script 02." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "%matplotlib inline\n", + "%config IPCompleter.greedy=True\n", + "import matplotlib as mpl\n", + "mpl.rcParams['lines.linewidth'] = 3\n", + "#mpl.rcParams['font.size'] = 16" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "\n", + "def perceptron(X, w, threshold=1):\n", + " # This function computes sum(w_i*x_i) and\n", + " # applies a perceptron activation\n", + " linear_sum = np.dot(X, w)\n", + " output = 0\n", + " if linear_sum >= threshold:\n", + " output = 1\n", + " return output" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Boolean AND\n", + "\n", + "| x$_1$ | x$_2$ | output |\n", + "| --- | --- | --- |\n", + "| 0 | 0 | 0 |\n", + "| 1 | 0 | 0 |\n", + "| 0 | 1 | 0 |\n", + "| 1 | 1 | 1 |" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Perceptron output for x1, x2 = [0, 0] is 0\n", + "Perceptron output for x1, x2 = [1, 0] is 0\n", + "Perceptron output for x1, x2 = [0, 1] is 0\n", + "Perceptron output for x1, x2 = [1, 1] is 1\n" + ] + } + ], + "source": [ + "# Calculating Boolean AND using a perceptron\n", + "threshold = 1.5\n", + "w = [1, 1]\n", + "X = [[0, 0], [1, 0], [0, 1], [1, 1]]\n", + "for i in X:\n", + " print(\"Perceptron output for x1, x2 = \", i,\n", + " \" is \", perceptron(i, w, threshold))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In this simple case we can rewrite our equation to $x_2 = ...... $ which describes a line in 2D:" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "def perceptron_DB(X, w, threshold):\n", + " # Plotting the decision boundary\n", + " for i in X:\n", + " plt.plot(i, \"o\", color=\"b\")\n", + " plt.xlim(-1, 2)\n", + " plt.ylim(-1, 2)\n", + " # The decision boundary is a line given by\n", + " # w_1*x_1+w_2*x_2-threshold=0\n", + " x1 = np.arange(-3, 4)\n", + " x2 = (threshold - x1*w[0])/w[1]\n", + " plt.plot(x1, x2, \"--\", color=\"black\")\n", + " plt.xlabel(\"x$_1$\", fontsize=16)\n", + " plt.ylabel(\"x$_2$\", fontsize=16)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7fe7148256d8>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "perceptron_DB(X, w, threshold)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Exercise 1 : Compute a Boolean \"OR\" using a perceptron?**\n", + "\n", + "Hint: copy the code from the \"AND\" example and edit the weights and/or threshold" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Boolean OR\n", + "\n", + "| x$_1$ | x$_2$ | output |\n", + "| --- | --- | --- |\n", + "| 0 | 0 | 0 |\n", + "| 1 | 0 | 1 |\n", + "| 0 | 1 | 1 |\n", + "| 1 | 1 | 1 |" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "# Calculating Boolean OR using a perceptron\n", + "# Edit the code below" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Perceptron output for x1, x2 = [0, 0] is 0\n", + "Perceptron output for x1, x2 = [1, 0] is 1\n", + "Perceptron output for x1, x2 = [0, 1] is 1\n", + "Perceptron output for x1, x2 = [1, 1] is 1\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7fe7145e6c50>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# Solution\n", + "# Calculating Boolean OR using a perceptron\n", + "threshold=0.6\n", + "w=[1,1]\n", + "X=[[0,0],[1,0],[0,1],[1,1]]\n", + "for i in X:\n", + " print(\"Perceptron output for x1, x2 = \" , i , \" is \" , perceptron(i,w,threshold))\n", + "# Plotting the decision boundary\n", + "perceptron_DB(X,w,threshold)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Exercise 2 : Create a NAND gate using a perceptron**\n", + "\n", + "#### Boolean NAND\n", + "\n", + "| x$_1$ | x$_2$ | output |\n", + "| --- | --- | --- |\n", + "| 0 | 0 | 1 |\n", + "| 1 | 0 | 1 |\n", + "| 0 | 1 | 1 |\n", + "| 1 | 1 | 0 |" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Calculating Boolean NAND using a perceptron" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Solution\n", + "# Calculating Boolean OR using a perceptron\n", + "import matplotlib.pyplot as plt\n", + "threshold=-1.5\n", + "w=[-1,-1]\n", + "X=[[0,0],[1,0],[0,1],[1,1]]\n", + "for i in X:\n", + " print(\"Perceptron output for x1, x2 = \" , i , \" is \" , perceptron(i,w,threshold))\n", + "# Plotting the decision boundary\n", + "perceptron_DB(X,w)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In fact, a single perceptron can compute \"AND\", \"OR\" and \"NOT\" boolean functions.\n", + "However, it cannot compute some other boolean functions such as \"XOR\"\n", + "\n", + "**WHAT CAN WE DO?**\n", + "\n", + "\n", + "Hint: Think about what is the significance of the NAND gate we created above?\n", + "\n", + "We said a single perceptron can't compute these functions. We didn't say that about **multiple Perceptrons**." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**XOR function using multiple perceptrons**\n", + "\n", + "<center>\n", + "<figure>\n", + "<img src=\"./images/neuralnets/perceptron_XOR.svg\" width=\"400\"/>\n", + "<figcaption>Multiple perceptrons put together to output a XOR function.</figcaption>\n", + "</figure>\n", + "</center>" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "### Multi-layer perceptrons\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Google Playground\n", + "\n", + "https://playground.tensorflow.org/\n", + "\n", + "<img src=\"./images/neuralnets/google_playground.png\"/>" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Learning\n", + "\n", + "Now we know that we can compute complex functions if we stack together a number of perceptrons.\n", + "\n", + "However, we definitely **DO NOT** want to set the weights and thresholds by hand as we did in the examples above.\n", + "\n", + "We want some algorithm to do this for us!\n", + "\n", + "In order to achieve this we first need to choose a loss function for the problem at hand\n", + "\n", + "\n", + "### Loss function\n", + "In order to learn using an algorithm for learning we need to define a quantity which allows us to measure how far are the predictions of our network/setup are from the reality. This is done by choosing a so-called \"Loss function\" (as in the case for other machine learning algorithms). In other words this function measures how close are the predictions of our network to the supplied labels. Once we have this function we need an algorithm to update the weights of the network such that this loss decreases. As one can already imagine the choice of an appropriate loss function is very important to the success of the model. Fortunately, for classification and regression (which cover a large variety of probelms) these loss functions are well known. \n", + "\n", + "Generally **crossentropy** and **mean squared error** loss functions are used for classification and regression problems, respectively.\n", + "\n", + "### Gradient based learning\n", + "As mentioned above, once we have decided upon a loss function, we want to solve an **optimization problem** which minimizes this loss by updating the weights of the network. This is how learning happens in a NN.\n", + "\n", + "The most popular optimization methods used in Neural Network training are some **Gradient-descent (GD)** type methods, such as gradient-descent, RMSprop and Adam. \n", + "**Gradient-descent** uses partial derivatives of the loss function with respect to the network weights and a learning rate to updates the weights such that the loss function decreases and hopefully after some iterations reaches its (Global) minimum.\n", + "\n", + "First, the loss function and its derivative are computed at the output node, and this signal is propagated backwards, using the chain rule, in the network to compute the partial derivatives. Hence, this method is called **Backpropagation**.\n", + "\n", + "One way to perform a single GD pass is to compute the partial derivatives using all the samples in our data, computing average derivatives and using them to update the weights. This is called **Batch gradient descent**. However, in deep learning we mostly work with very big datasets and using batch gradient descent can make the training very slow!\n", + "\n", + "The other extreme is to randomly shuffle the dataset and advance a pass of GD with the gradients computed using only **one** sample at a time. This is called **Stochastic gradient descent**.\n", + "\n", + "In practice, an approach in-between these two is used. The entire dataset is divided into **m** batches and these are used one by one to compute the derivatives and apply GD. This technique is called **Mini-batch gradient descent**. \n", + "\n", + "One pass through the entire training dataset is called **1 epoch** of training.\n", + "\n", + "\n", + "### Activation Functions\n", + "\n", + "In order to train the network we need to change Perceptron's **step** activation function as it does not allow training using the back-propagation algorithm among other drawbacks.\n", + "\n", + "Non-Linear functions such as:\n", + "\n", + "* ReLU (Rectified linear unit)\n", + "\n", + "\\begin{equation*}\n", + "f(z) = \\mathrm{max}(0,z)\n", + "\\end{equation*}\n", + "\n", + "* Sigmoid\n", + "\n", + "\\begin{equation*}\n", + "f(z) = \\frac{1}{1+e^{-z}}\n", + "\\end{equation*}\n", + "\n", + "* tanh\n", + "\n", + "\\begin{equation*}\n", + "f(z) = \\frac{e^{z} - e^{-z}}{e^{z} + e^{-z}}\n", + "\\end{equation*}\n", + "\n", + "\n", + "are some of the most popular choices used as activation functions.\n", + "\n", + "Linear activations are **NOT** used because it can be mathematically shown that if linear activations are used then output is just a linear function of the input. So adding any number of hidden layers does not help to learn interesting functions.\n", + "\n", + "Non-linear activation functions allow the network to learn more complex representations." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7fe71452e0b8>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "\n", + "plt.figure(figsize=(10, 4))\n", + "\n", + "pts=np.arange(-20,20, 0.1)\n", + "\n", + "plt.subplot(1, 3, 1)\n", + "# Sigmoid\n", + "plt.plot(pts, 1/(1+np.exp(-pts))) ;\n", + "\n", + "plt.subplot(1, 3, 2)\n", + "# tanh\n", + "plt.plot(pts, np.tanh(pts*np.pi)) ;\n", + "\n", + "# Rectified linear unit (ReLu)\n", + "plt.subplot(1, 3, 3)\n", + "pts_relu=[max(0,i) for i in pts];\n", + "plt.plot(pts, pts_relu) ;" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Introduction to Keras" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### What is Keras?\n", + "\n", + "* It is a high level API to create and work with neural networks\n", + "* Supports multiple backends such as TensorFlow from Google, Theano (Although Theano is dead now) and CNTK (Microsoft Cognitive Toolkit)\n", + "* Very good for creating neural nets very quickly and hides away a lot of tedious work\n", + "* Has been incorporated into official TensorFlow (which obviously only works with tensforflow) and as of TensorFlow 2.0 this will the main api to use TensorFlow (check reference)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "Using TensorFlow backend.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "_________________________________________________________________\n", + "Layer (type) Output Shape Param # \n", + "=================================================================\n", + "dense_1 (Dense) (None, 4) 36 \n", + "_________________________________________________________________\n", + "activation_1 (Activation) (None, 4) 0 \n", + "_________________________________________________________________\n", + "dense_2 (Dense) (None, 4) 20 \n", + "_________________________________________________________________\n", + "dense_3 (Dense) (None, 1) 5 \n", + "_________________________________________________________________\n", + "activation_2 (Activation) (None, 1) 0 \n", + "=================================================================\n", + "Total params: 61\n", + "Trainable params: 61\n", + "Non-trainable params: 0\n", + "_________________________________________________________________\n" + ] + } + ], + "source": [ + "# Say hello to keras\n", + "\n", + "from keras.models import Sequential\n", + "from keras.layers import Dense, Activation\n", + "\n", + "# Creating a model\n", + "model = Sequential()\n", + "\n", + "# Adding layers to this model\n", + "# 1st Hidden layer\n", + "# A Dense/fully-connected layer which takes as input a \n", + "# feature array of shape (samples, num_features)\n", + "# Here input_shape = (8,) means that the layer expects an input with num_features = 8 \n", + "# and the sample size could be anything\n", + "# Then we specify an activation function\n", + "model.add(Dense(units=4, input_shape=(8,)))\n", + "model.add(Activation(\"relu\"))\n", + "\n", + "# 2nd Hidden layer\n", + "# This is also a fully-connected layer and we do not need to specify the\n", + "# shape of the input anymore (We need to do that only for the first layer)\n", + "# NOTE: Now we didn't add the activation seperately. Instead we just added it\n", + "# while calling Dense(). This and the way used for the first layer are Equivalent!\n", + "model.add(Dense(units=4, activation=\"relu\"))\n", + "\n", + " \n", + "# The output layer\n", + "model.add(Dense(units=1))\n", + "model.add(Activation(\"sigmoid\"))\n", + "\n", + "model.summary()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### XOR using neural networks" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import matplotlib.pyplot as plt\n", + "from sklearn.model_selection import train_test_split\n", + "from keras.models import Sequential\n", + "from keras.layers import Dense\n", + "import numpy as np" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7fe736cb4160>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# Creating a network to solve the XOR problem\n", + "\n", + "# Loading and plotting the data\n", + "xor = pd.read_csv(\"xor.csv\")\n", + "\n", + "# Using x and y coordinates as featues\n", + "features = xor.iloc[:, :-1]\n", + "# Convert boolean to integer values (True->1 and False->0)\n", + "labels = xor.iloc[:, -1].astype(int)\n", + "\n", + "colors = [[\"steelblue\", \"chocolate\"][i] for i in xor[\"label\"]]\n", + "plt.figure(figsize=(5, 5))\n", + "plt.xlim([-2, 2])\n", + "plt.ylim([-2, 2])\n", + "plt.title(\"Blue points are False\")\n", + "\n", + "\n", + "plt.scatter(features[\"x\"], features[\"y\"], color=colors, marker=\"o\") ;" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [], + "source": [ + "# Building a Keras model\n", + "\n", + "def a_simple_NN():\n", + " \n", + " model = Sequential()\n", + "\n", + " model.add(Dense(4, input_shape = (2,), activation = \"relu\"))\n", + "\n", + " model.add(Dense(4, activation = \"relu\"))\n", + "\n", + " model.add(Dense(1, activation = \"sigmoid\"))\n", + "\n", + " model.compile(loss=\"binary_crossentropy\", optimizer=\"rmsprop\", metrics=[\"accuracy\"])\n", + " \n", + " return model" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train on 350 samples, validate on 150 samples\n", + "Epoch 1/300\n", + "350/350 [==============================] - 0s 1ms/step - loss: 0.8080 - acc: 0.4886 - val_loss: 0.8082 - val_acc: 0.4600\n", + "Epoch 2/300\n", + "350/350 [==============================] - 0s 92us/step - loss: 0.7893 - acc: 0.4800 - val_loss: 0.7937 - val_acc: 0.4533\n", + "Epoch 3/300\n", + "350/350 [==============================] - 0s 104us/step - loss: 0.7744 - acc: 0.4771 - val_loss: 0.7807 - val_acc: 0.4400\n", + "Epoch 4/300\n", + "350/350 [==============================] - 0s 71us/step - loss: 0.7610 - acc: 0.4686 - val_loss: 0.7687 - val_acc: 0.4133\n", + "Epoch 5/300\n", + "350/350 [==============================] - 0s 60us/step - loss: 0.7487 - acc: 0.4457 - val_loss: 0.7580 - val_acc: 0.4067\n", + "Epoch 6/300\n", + "350/350 [==============================] - 0s 61us/step - loss: 0.7369 - acc: 0.4343 - val_loss: 0.7469 - val_acc: 0.4133\n", + "Epoch 7/300\n", + "350/350 [==============================] - 0s 62us/step - loss: 0.7254 - acc: 0.4314 - val_loss: 0.7366 - val_acc: 0.4067\n", + "Epoch 8/300\n", + "350/350 [==============================] - 0s 58us/step - loss: 0.7143 - acc: 0.4286 - val_loss: 0.7269 - val_acc: 0.4000\n", + "Epoch 9/300\n", + "350/350 [==============================] - 0s 61us/step - loss: 0.7035 - acc: 0.4314 - val_loss: 0.7171 - val_acc: 0.4067\n", + "Epoch 10/300\n", + "350/350 [==============================] - 0s 94us/step - loss: 0.6932 - acc: 0.4743 - val_loss: 0.7080 - val_acc: 0.4400\n", + "Epoch 11/300\n", + "350/350 [==============================] - 0s 64us/step - loss: 0.6828 - acc: 0.5086 - val_loss: 0.6983 - val_acc: 0.4933\n", + "Epoch 12/300\n", + "350/350 [==============================] - 0s 74us/step - loss: 0.6725 - acc: 0.5600 - val_loss: 0.6885 - val_acc: 0.5333\n", + "Epoch 13/300\n", + "350/350 [==============================] - 0s 223us/step - loss: 0.6623 - acc: 0.6200 - val_loss: 0.6793 - val_acc: 0.5533\n", + "Epoch 14/300\n", + "350/350 [==============================] - 0s 257us/step - loss: 0.6528 - acc: 0.6543 - val_loss: 0.6709 - val_acc: 0.5667\n", + "Epoch 15/300\n", + "350/350 [==============================] - 0s 125us/step - loss: 0.6435 - acc: 0.6714 - val_loss: 0.6628 - val_acc: 0.5800\n", + "Epoch 16/300\n", + "350/350 [==============================] - 0s 158us/step - loss: 0.6344 - acc: 0.6886 - val_loss: 0.6545 - val_acc: 0.6067\n", + "Epoch 17/300\n", + "350/350 [==============================] - 0s 161us/step - loss: 0.6252 - acc: 0.6971 - val_loss: 0.6463 - val_acc: 0.6400\n", + "Epoch 18/300\n", + "350/350 [==============================] - 0s 215us/step - loss: 0.6167 - acc: 0.7314 - val_loss: 0.6391 - val_acc: 0.6667\n", + "Epoch 19/300\n", + "350/350 [==============================] - 0s 105us/step - loss: 0.6083 - acc: 0.7400 - val_loss: 0.6317 - val_acc: 0.6867\n", + "Epoch 20/300\n", + "350/350 [==============================] - 0s 183us/step - loss: 0.5999 - acc: 0.7657 - val_loss: 0.6240 - val_acc: 0.7267\n", + "Epoch 21/300\n", + "350/350 [==============================] - 0s 74us/step - loss: 0.5920 - acc: 0.7886 - val_loss: 0.6170 - val_acc: 0.7267\n", + "Epoch 22/300\n", + "350/350 [==============================] - 0s 164us/step - loss: 0.5842 - acc: 0.8114 - val_loss: 0.6103 - val_acc: 0.7667\n", + "Epoch 23/300\n", + "350/350 [==============================] - 0s 85us/step - loss: 0.5768 - acc: 0.8229 - val_loss: 0.6039 - val_acc: 0.8067\n", + "Epoch 24/300\n", + "350/350 [==============================] - 0s 80us/step - loss: 0.5691 - acc: 0.8314 - val_loss: 0.5972 - val_acc: 0.8200\n", + "Epoch 25/300\n", + "350/350 [==============================] - 0s 208us/step - loss: 0.5614 - acc: 0.8343 - val_loss: 0.5904 - val_acc: 0.8133\n", + "Epoch 26/300\n", + "350/350 [==============================] - 0s 191us/step - loss: 0.5538 - acc: 0.8343 - val_loss: 0.5837 - val_acc: 0.8133\n", + "Epoch 27/300\n", + "350/350 [==============================] - 0s 330us/step - loss: 0.5460 - acc: 0.8400 - val_loss: 0.5770 - val_acc: 0.8133\n", + "Epoch 28/300\n", + "350/350 [==============================] - 0s 93us/step - loss: 0.5384 - acc: 0.8457 - val_loss: 0.5706 - val_acc: 0.8200\n", + "Epoch 29/300\n", + "350/350 [==============================] - 0s 140us/step - loss: 0.5309 - acc: 0.8514 - val_loss: 0.5641 - val_acc: 0.8267\n", + "Epoch 30/300\n", + "350/350 [==============================] - 0s 79us/step - loss: 0.5234 - acc: 0.8600 - val_loss: 0.5575 - val_acc: 0.8267\n", + "Epoch 31/300\n", + "350/350 [==============================] - 0s 72us/step - loss: 0.5160 - acc: 0.8571 - val_loss: 0.5509 - val_acc: 0.8333\n", + "Epoch 32/300\n", + "350/350 [==============================] - 0s 67us/step - loss: 0.5084 - acc: 0.8600 - val_loss: 0.5439 - val_acc: 0.8333\n", + "Epoch 33/300\n", + "350/350 [==============================] - 0s 76us/step - loss: 0.5009 - acc: 0.8657 - val_loss: 0.5373 - val_acc: 0.8333\n", + "Epoch 34/300\n", + "350/350 [==============================] - 0s 68us/step - loss: 0.4933 - acc: 0.8629 - val_loss: 0.5306 - val_acc: 0.8333\n", + "Epoch 35/300\n", + "350/350 [==============================] - 0s 78us/step - loss: 0.4858 - acc: 0.8657 - val_loss: 0.5238 - val_acc: 0.8400\n", + "Epoch 36/300\n", + "350/350 [==============================] - 0s 76us/step - loss: 0.4780 - acc: 0.8657 - val_loss: 0.5167 - val_acc: 0.8400\n", + "Epoch 37/300\n", + "350/350 [==============================] - 0s 82us/step - loss: 0.4702 - acc: 0.8714 - val_loss: 0.5096 - val_acc: 0.8400\n", + "Epoch 38/300\n", + "350/350 [==============================] - 0s 72us/step - loss: 0.4620 - acc: 0.8714 - val_loss: 0.5022 - val_acc: 0.8400\n", + "Epoch 39/300\n", + "350/350 [==============================] - 0s 84us/step - loss: 0.4538 - acc: 0.8743 - val_loss: 0.4949 - val_acc: 0.8400\n", + "Epoch 40/300\n", + "350/350 [==============================] - 0s 270us/step - loss: 0.4455 - acc: 0.8800 - val_loss: 0.4874 - val_acc: 0.8400\n", + "Epoch 41/300\n", + "350/350 [==============================] - 0s 76us/step - loss: 0.4378 - acc: 0.8829 - val_loss: 0.4800 - val_acc: 0.8467\n", + "Epoch 42/300\n", + "350/350 [==============================] - 0s 195us/step - loss: 0.4297 - acc: 0.8914 - val_loss: 0.4723 - val_acc: 0.8467\n", + "Epoch 43/300\n", + "350/350 [==============================] - 0s 255us/step - loss: 0.4219 - acc: 0.8914 - val_loss: 0.4651 - val_acc: 0.8467\n", + "Epoch 44/300\n", + "350/350 [==============================] - 0s 115us/step - loss: 0.4142 - acc: 0.8914 - val_loss: 0.4577 - val_acc: 0.8533\n", + "Epoch 45/300\n", + "350/350 [==============================] - 0s 138us/step - loss: 0.4067 - acc: 0.9000 - val_loss: 0.4506 - val_acc: 0.8600\n", + "Epoch 46/300\n", + "350/350 [==============================] - 0s 232us/step - loss: 0.3998 - acc: 0.8971 - val_loss: 0.4441 - val_acc: 0.8600\n", + "Epoch 47/300\n", + "350/350 [==============================] - 0s 211us/step - loss: 0.3922 - acc: 0.9000 - val_loss: 0.4371 - val_acc: 0.8667\n", + "Epoch 48/300\n", + "350/350 [==============================] - 0s 201us/step - loss: 0.3847 - acc: 0.9114 - val_loss: 0.4300 - val_acc: 0.8667\n", + "Epoch 49/300\n", + "350/350 [==============================] - 0s 236us/step - loss: 0.3774 - acc: 0.9057 - val_loss: 0.4231 - val_acc: 0.8667\n", + "Epoch 50/300\n", + "350/350 [==============================] - 0s 155us/step - loss: 0.3700 - acc: 0.9114 - val_loss: 0.4160 - val_acc: 0.8667\n", + "Epoch 51/300\n", + "350/350 [==============================] - 0s 325us/step - loss: 0.3626 - acc: 0.9171 - val_loss: 0.4100 - val_acc: 0.8667\n", + "Epoch 52/300\n", + "350/350 [==============================] - 0s 130us/step - loss: 0.3555 - acc: 0.9114 - val_loss: 0.4031 - val_acc: 0.8667\n", + "Epoch 53/300\n", + "350/350 [==============================] - 0s 124us/step - loss: 0.3489 - acc: 0.9229 - val_loss: 0.3968 - val_acc: 0.8667\n", + "Epoch 54/300\n", + "350/350 [==============================] - 0s 109us/step - loss: 0.3422 - acc: 0.9257 - val_loss: 0.3905 - val_acc: 0.8733\n", + "Epoch 55/300\n", + "350/350 [==============================] - 0s 100us/step - loss: 0.3356 - acc: 0.9257 - val_loss: 0.3842 - val_acc: 0.8733\n", + "Epoch 56/300\n", + "350/350 [==============================] - 0s 61us/step - loss: 0.3291 - acc: 0.9257 - val_loss: 0.3781 - val_acc: 0.8733\n", + "Epoch 57/300\n", + "350/350 [==============================] - 0s 75us/step - loss: 0.3225 - acc: 0.9257 - val_loss: 0.3719 - val_acc: 0.8800\n", + "Epoch 58/300\n", + "350/350 [==============================] - 0s 90us/step - loss: 0.3160 - acc: 0.9257 - val_loss: 0.3655 - val_acc: 0.8800\n", + "Epoch 59/300\n", + "350/350 [==============================] - 0s 73us/step - loss: 0.3096 - acc: 0.9314 - val_loss: 0.3596 - val_acc: 0.8800\n", + "Epoch 60/300\n", + "350/350 [==============================] - 0s 76us/step - loss: 0.3036 - acc: 0.9314 - val_loss: 0.3541 - val_acc: 0.8800\n", + "Epoch 61/300\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "350/350 [==============================] - 0s 90us/step - loss: 0.2978 - acc: 0.9371 - val_loss: 0.3487 - val_acc: 0.8800\n", + "Epoch 62/300\n", + "350/350 [==============================] - 0s 116us/step - loss: 0.2921 - acc: 0.9343 - val_loss: 0.3434 - val_acc: 0.8800\n", + "Epoch 63/300\n", + "350/350 [==============================] - 0s 93us/step - loss: 0.2866 - acc: 0.9343 - val_loss: 0.3380 - val_acc: 0.8800\n", + "Epoch 64/300\n", + "350/350 [==============================] - 0s 113us/step - loss: 0.2808 - acc: 0.9343 - val_loss: 0.3329 - val_acc: 0.8800\n", + "Epoch 65/300\n", + "350/350 [==============================] - 0s 99us/step - loss: 0.2757 - acc: 0.9371 - val_loss: 0.3276 - val_acc: 0.8800\n", + "Epoch 66/300\n", + "350/350 [==============================] - 0s 87us/step - loss: 0.2704 - acc: 0.9371 - val_loss: 0.3226 - val_acc: 0.8800\n", + "Epoch 67/300\n", + "350/350 [==============================] - 0s 77us/step - loss: 0.2657 - acc: 0.9371 - val_loss: 0.3179 - val_acc: 0.8800\n", + "Epoch 68/300\n", + "350/350 [==============================] - 0s 73us/step - loss: 0.2604 - acc: 0.9429 - val_loss: 0.3135 - val_acc: 0.8733\n", + "Epoch 69/300\n", + "350/350 [==============================] - 0s 78us/step - loss: 0.2563 - acc: 0.9457 - val_loss: 0.3096 - val_acc: 0.8733\n", + "Epoch 70/300\n", + "350/350 [==============================] - 0s 75us/step - loss: 0.2515 - acc: 0.9514 - val_loss: 0.3050 - val_acc: 0.8733\n", + "Epoch 71/300\n", + "350/350 [==============================] - 0s 65us/step - loss: 0.2469 - acc: 0.9457 - val_loss: 0.3003 - val_acc: 0.8733\n", + "Epoch 72/300\n", + "350/350 [==============================] - 0s 89us/step - loss: 0.2424 - acc: 0.9514 - val_loss: 0.2961 - val_acc: 0.8733\n", + "Epoch 73/300\n", + "350/350 [==============================] - 0s 63us/step - loss: 0.2384 - acc: 0.9514 - val_loss: 0.2919 - val_acc: 0.8733\n", + "Epoch 74/300\n", + "350/350 [==============================] - 0s 89us/step - loss: 0.2337 - acc: 0.9514 - val_loss: 0.2877 - val_acc: 0.8733\n", + "Epoch 75/300\n", + "350/350 [==============================] - 0s 132us/step - loss: 0.2297 - acc: 0.9514 - val_loss: 0.2835 - val_acc: 0.8733\n", + "Epoch 76/300\n", + "350/350 [==============================] - 0s 130us/step - loss: 0.2256 - acc: 0.9514 - val_loss: 0.2798 - val_acc: 0.8733\n", + "Epoch 77/300\n", + "350/350 [==============================] - 0s 99us/step - loss: 0.2217 - acc: 0.9514 - val_loss: 0.2759 - val_acc: 0.8733\n", + "Epoch 78/300\n", + "350/350 [==============================] - 0s 156us/step - loss: 0.2178 - acc: 0.9514 - val_loss: 0.2723 - val_acc: 0.8667\n", + "Epoch 79/300\n", + "350/350 [==============================] - 0s 161us/step - loss: 0.2141 - acc: 0.9543 - val_loss: 0.2687 - val_acc: 0.8733\n", + "Epoch 80/300\n", + "350/350 [==============================] - 0s 87us/step - loss: 0.2100 - acc: 0.9543 - val_loss: 0.2647 - val_acc: 0.8733\n", + "Epoch 81/300\n", + "350/350 [==============================] - 0s 118us/step - loss: 0.2062 - acc: 0.9543 - val_loss: 0.2604 - val_acc: 0.8733\n", + "Epoch 82/300\n", + "350/350 [==============================] - 0s 90us/step - loss: 0.2026 - acc: 0.9571 - val_loss: 0.2569 - val_acc: 0.8733\n", + "Epoch 83/300\n", + "350/350 [==============================] - 0s 79us/step - loss: 0.1989 - acc: 0.9571 - val_loss: 0.2534 - val_acc: 0.8733\n", + "Epoch 84/300\n", + "350/350 [==============================] - 0s 96us/step - loss: 0.1952 - acc: 0.9571 - val_loss: 0.2497 - val_acc: 0.8733\n", + "Epoch 85/300\n", + "350/350 [==============================] - 0s 154us/step - loss: 0.1920 - acc: 0.9571 - val_loss: 0.2462 - val_acc: 0.8733\n", + "Epoch 86/300\n", + "350/350 [==============================] - 0s 99us/step - loss: 0.1889 - acc: 0.9571 - val_loss: 0.2437 - val_acc: 0.8733\n", + "Epoch 87/300\n", + "350/350 [==============================] - 0s 231us/step - loss: 0.1861 - acc: 0.9571 - val_loss: 0.2405 - val_acc: 0.8733\n", + "Epoch 88/300\n", + "350/350 [==============================] - 0s 188us/step - loss: 0.1829 - acc: 0.9571 - val_loss: 0.2372 - val_acc: 0.8733\n", + "Epoch 89/300\n", + "350/350 [==============================] - 0s 80us/step - loss: 0.1798 - acc: 0.9571 - val_loss: 0.2335 - val_acc: 0.8733\n", + "Epoch 90/300\n", + "350/350 [==============================] - 0s 118us/step - loss: 0.1771 - acc: 0.9571 - val_loss: 0.2305 - val_acc: 0.8800\n", + "Epoch 91/300\n", + "350/350 [==============================] - 0s 126us/step - loss: 0.1742 - acc: 0.9571 - val_loss: 0.2272 - val_acc: 0.8800\n", + "Epoch 92/300\n", + "350/350 [==============================] - 0s 67us/step - loss: 0.1714 - acc: 0.9571 - val_loss: 0.2247 - val_acc: 0.8800\n", + "Epoch 93/300\n", + "350/350 [==============================] - 0s 50us/step - loss: 0.1690 - acc: 0.9543 - val_loss: 0.2217 - val_acc: 0.8867\n", + "Epoch 94/300\n", + "350/350 [==============================] - 0s 64us/step - loss: 0.1661 - acc: 0.9571 - val_loss: 0.2190 - val_acc: 0.8867\n", + "Epoch 95/300\n", + "350/350 [==============================] - 0s 50us/step - loss: 0.1637 - acc: 0.9600 - val_loss: 0.2165 - val_acc: 0.8800\n", + "Epoch 96/300\n", + "350/350 [==============================] - 0s 62us/step - loss: 0.1613 - acc: 0.9571 - val_loss: 0.2131 - val_acc: 0.8867\n", + "Epoch 97/300\n", + "350/350 [==============================] - 0s 59us/step - loss: 0.1589 - acc: 0.9600 - val_loss: 0.2101 - val_acc: 0.8867\n", + "Epoch 98/300\n", + "350/350 [==============================] - 0s 83us/step - loss: 0.1565 - acc: 0.9600 - val_loss: 0.2073 - val_acc: 0.8867\n", + "Epoch 99/300\n", + "350/350 [==============================] - 0s 53us/step - loss: 0.1543 - acc: 0.9600 - val_loss: 0.2050 - val_acc: 0.8867\n", + "Epoch 100/300\n", + "350/350 [==============================] - 0s 55us/step - loss: 0.1521 - acc: 0.9600 - val_loss: 0.2026 - val_acc: 0.8867\n", + "Epoch 101/300\n", + "350/350 [==============================] - 0s 88us/step - loss: 0.1501 - acc: 0.9629 - val_loss: 0.2011 - val_acc: 0.8867\n", + "Epoch 102/300\n", + "350/350 [==============================] - 0s 74us/step - loss: 0.1479 - acc: 0.9600 - val_loss: 0.1982 - val_acc: 0.8867\n", + "Epoch 103/300\n", + "350/350 [==============================] - 0s 53us/step - loss: 0.1460 - acc: 0.9629 - val_loss: 0.1960 - val_acc: 0.8867\n", + "Epoch 104/300\n", + "350/350 [==============================] - 0s 84us/step - loss: 0.1439 - acc: 0.9629 - val_loss: 0.1939 - val_acc: 0.8933\n", + "Epoch 105/300\n", + "350/350 [==============================] - 0s 85us/step - loss: 0.1420 - acc: 0.9629 - val_loss: 0.1920 - val_acc: 0.9000\n", + "Epoch 106/300\n", + "350/350 [==============================] - 0s 90us/step - loss: 0.1400 - acc: 0.9629 - val_loss: 0.1889 - val_acc: 0.9000\n", + "Epoch 107/300\n", + "350/350 [==============================] - 0s 83us/step - loss: 0.1387 - acc: 0.9629 - val_loss: 0.1876 - val_acc: 0.9000\n", + "Epoch 108/300\n", + "350/350 [==============================] - 0s 140us/step - loss: 0.1364 - acc: 0.9629 - val_loss: 0.1857 - val_acc: 0.9067\n", + "Epoch 109/300\n", + "350/350 [==============================] - 0s 121us/step - loss: 0.1347 - acc: 0.9657 - val_loss: 0.1831 - val_acc: 0.9067\n", + "Epoch 110/300\n", + "350/350 [==============================] - 0s 116us/step - loss: 0.1329 - acc: 0.9657 - val_loss: 0.1815 - val_acc: 0.9067\n", + "Epoch 111/300\n", + "350/350 [==============================] - 0s 86us/step - loss: 0.1313 - acc: 0.9657 - val_loss: 0.1798 - val_acc: 0.9133\n", + "Epoch 112/300\n", + "350/350 [==============================] - 0s 132us/step - loss: 0.1295 - acc: 0.9657 - val_loss: 0.1783 - val_acc: 0.9067\n", + "Epoch 113/300\n", + "350/350 [==============================] - 0s 204us/step - loss: 0.1276 - acc: 0.9714 - val_loss: 0.1762 - val_acc: 0.9067\n", + "Epoch 114/300\n", + "350/350 [==============================] - 0s 164us/step - loss: 0.1262 - acc: 0.9714 - val_loss: 0.1748 - val_acc: 0.9000\n", + "Epoch 115/300\n", + "350/350 [==============================] - 0s 235us/step - loss: 0.1244 - acc: 0.9771 - val_loss: 0.1735 - val_acc: 0.9133\n", + "Epoch 116/300\n", + "350/350 [==============================] - 0s 123us/step - loss: 0.1233 - acc: 0.9714 - val_loss: 0.1716 - val_acc: 0.9267\n", + "Epoch 117/300\n", + "350/350 [==============================] - 0s 232us/step - loss: 0.1221 - acc: 0.9743 - val_loss: 0.1699 - val_acc: 0.9267\n", + "Epoch 118/300\n", + "350/350 [==============================] - 0s 83us/step - loss: 0.1204 - acc: 0.9743 - val_loss: 0.1680 - val_acc: 0.9267\n", + "Epoch 119/300\n", + "350/350 [==============================] - 0s 80us/step - loss: 0.1192 - acc: 0.9743 - val_loss: 0.1663 - val_acc: 0.9267\n", + "Epoch 120/300\n", + "350/350 [==============================] - 0s 87us/step - loss: 0.1179 - acc: 0.9771 - val_loss: 0.1654 - val_acc: 0.9267\n", + "Epoch 121/300\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "350/350 [==============================] - 0s 125us/step - loss: 0.1169 - acc: 0.9771 - val_loss: 0.1647 - val_acc: 0.9267\n", + "Epoch 122/300\n", + "350/350 [==============================] - 0s 137us/step - loss: 0.1157 - acc: 0.9743 - val_loss: 0.1633 - val_acc: 0.9267\n", + "Epoch 123/300\n", + "350/350 [==============================] - 0s 126us/step - loss: 0.1144 - acc: 0.9771 - val_loss: 0.1615 - val_acc: 0.9267\n", + "Epoch 124/300\n", + "350/350 [==============================] - 0s 100us/step - loss: 0.1131 - acc: 0.9743 - val_loss: 0.1599 - val_acc: 0.9267\n", + "Epoch 125/300\n", + "350/350 [==============================] - 0s 66us/step - loss: 0.1125 - acc: 0.9771 - val_loss: 0.1592 - val_acc: 0.9267\n", + "Epoch 126/300\n", + "350/350 [==============================] - 0s 73us/step - loss: 0.1110 - acc: 0.9771 - val_loss: 0.1586 - val_acc: 0.9267\n", + "Epoch 127/300\n", + "350/350 [==============================] - 0s 89us/step - loss: 0.1100 - acc: 0.9771 - val_loss: 0.1564 - val_acc: 0.9267\n", + "Epoch 128/300\n", + "350/350 [==============================] - 0s 126us/step - loss: 0.1088 - acc: 0.9771 - val_loss: 0.1547 - val_acc: 0.9267\n", + "Epoch 129/300\n", + "350/350 [==============================] - 0s 65us/step - loss: 0.1082 - acc: 0.9771 - val_loss: 0.1538 - val_acc: 0.9267\n", + "Epoch 130/300\n", + "350/350 [==============================] - 0s 81us/step - loss: 0.1068 - acc: 0.9771 - val_loss: 0.1529 - val_acc: 0.9267\n", + "Epoch 131/300\n", + "350/350 [==============================] - 0s 82us/step - loss: 0.1063 - acc: 0.9771 - val_loss: 0.1517 - val_acc: 0.9267\n", + "Epoch 132/300\n", + "350/350 [==============================] - 0s 71us/step - loss: 0.1048 - acc: 0.9771 - val_loss: 0.1519 - val_acc: 0.9200\n", + "Epoch 133/300\n", + "350/350 [==============================] - 0s 92us/step - loss: 0.1045 - acc: 0.9771 - val_loss: 0.1507 - val_acc: 0.9200\n", + "Epoch 134/300\n", + "350/350 [==============================] - 0s 73us/step - loss: 0.1033 - acc: 0.9771 - val_loss: 0.1490 - val_acc: 0.9200\n", + "Epoch 135/300\n", + "350/350 [==============================] - 0s 74us/step - loss: 0.1028 - acc: 0.9771 - val_loss: 0.1488 - val_acc: 0.9200\n", + "Epoch 136/300\n", + "350/350 [==============================] - 0s 90us/step - loss: 0.1017 - acc: 0.9771 - val_loss: 0.1476 - val_acc: 0.9267\n", + "Epoch 137/300\n", + "350/350 [==============================] - 0s 73us/step - loss: 0.1011 - acc: 0.9771 - val_loss: 0.1463 - val_acc: 0.9267\n", + "Epoch 138/300\n", + "350/350 [==============================] - 0s 53us/step - loss: 0.1003 - acc: 0.9771 - val_loss: 0.1450 - val_acc: 0.9333\n", + "Epoch 139/300\n", + "350/350 [==============================] - 0s 95us/step - loss: 0.0995 - acc: 0.9743 - val_loss: 0.1454 - val_acc: 0.9267\n", + "Epoch 140/300\n", + "350/350 [==============================] - 0s 88us/step - loss: 0.0987 - acc: 0.9771 - val_loss: 0.1441 - val_acc: 0.9333\n", + "Epoch 141/300\n", + "350/350 [==============================] - 0s 82us/step - loss: 0.0982 - acc: 0.9771 - val_loss: 0.1431 - val_acc: 0.9333\n", + "Epoch 142/300\n", + "350/350 [==============================] - 0s 83us/step - loss: 0.0971 - acc: 0.9771 - val_loss: 0.1433 - val_acc: 0.9333\n", + "Epoch 143/300\n", + "350/350 [==============================] - 0s 65us/step - loss: 0.0965 - acc: 0.9743 - val_loss: 0.1435 - val_acc: 0.9267\n", + "Epoch 144/300\n", + "350/350 [==============================] - 0s 75us/step - loss: 0.0960 - acc: 0.9771 - val_loss: 0.1415 - val_acc: 0.9333\n", + "Epoch 145/300\n", + "350/350 [==============================] - 0s 79us/step - loss: 0.0955 - acc: 0.9771 - val_loss: 0.1407 - val_acc: 0.9333\n", + "Epoch 146/300\n", + "350/350 [==============================] - 0s 80us/step - loss: 0.0947 - acc: 0.9771 - val_loss: 0.1405 - val_acc: 0.9333\n", + "Epoch 147/300\n", + "350/350 [==============================] - 0s 64us/step - loss: 0.0938 - acc: 0.9800 - val_loss: 0.1381 - val_acc: 0.9333\n", + "Epoch 148/300\n", + "350/350 [==============================] - 0s 85us/step - loss: 0.0935 - acc: 0.9771 - val_loss: 0.1376 - val_acc: 0.9333\n", + "Epoch 149/300\n", + "350/350 [==============================] - 0s 80us/step - loss: 0.0928 - acc: 0.9771 - val_loss: 0.1367 - val_acc: 0.9333\n", + "Epoch 150/300\n", + "350/350 [==============================] - 0s 80us/step - loss: 0.0920 - acc: 0.9771 - val_loss: 0.1365 - val_acc: 0.9333\n", + "Epoch 151/300\n", + "350/350 [==============================] - 0s 82us/step - loss: 0.0913 - acc: 0.9800 - val_loss: 0.1357 - val_acc: 0.9467\n", + "Epoch 152/300\n", + "350/350 [==============================] - 0s 120us/step - loss: 0.0909 - acc: 0.9800 - val_loss: 0.1348 - val_acc: 0.9467\n", + "Epoch 153/300\n", + "350/350 [==============================] - 0s 82us/step - loss: 0.0901 - acc: 0.9800 - val_loss: 0.1332 - val_acc: 0.9533\n", + "Epoch 154/300\n", + "350/350 [==============================] - 0s 113us/step - loss: 0.0901 - acc: 0.9771 - val_loss: 0.1334 - val_acc: 0.9467\n", + "Epoch 155/300\n", + "350/350 [==============================] - 0s 75us/step - loss: 0.0892 - acc: 0.9771 - val_loss: 0.1346 - val_acc: 0.9467\n", + "Epoch 156/300\n", + "350/350 [==============================] - 0s 78us/step - loss: 0.0889 - acc: 0.9800 - val_loss: 0.1333 - val_acc: 0.9467\n", + "Epoch 157/300\n", + "350/350 [==============================] - 0s 86us/step - loss: 0.0883 - acc: 0.9800 - val_loss: 0.1326 - val_acc: 0.9467\n", + "Epoch 158/300\n", + "350/350 [==============================] - 0s 148us/step - loss: 0.0877 - acc: 0.9800 - val_loss: 0.1332 - val_acc: 0.9467\n", + "Epoch 159/300\n", + "350/350 [==============================] - 0s 87us/step - loss: 0.0876 - acc: 0.9800 - val_loss: 0.1323 - val_acc: 0.9467\n", + "Epoch 160/300\n", + "350/350 [==============================] - 0s 64us/step - loss: 0.0871 - acc: 0.9800 - val_loss: 0.1307 - val_acc: 0.9467\n", + "Epoch 161/300\n", + "350/350 [==============================] - 0s 73us/step - loss: 0.0868 - acc: 0.9800 - val_loss: 0.1303 - val_acc: 0.9467\n", + "Epoch 162/300\n", + "350/350 [==============================] - 0s 122us/step - loss: 0.0858 - acc: 0.9800 - val_loss: 0.1292 - val_acc: 0.9533\n", + "Epoch 163/300\n", + "350/350 [==============================] - 0s 84us/step - loss: 0.0858 - acc: 0.9743 - val_loss: 0.1301 - val_acc: 0.9467\n", + "Epoch 164/300\n", + "350/350 [==============================] - 0s 89us/step - loss: 0.0851 - acc: 0.9771 - val_loss: 0.1296 - val_acc: 0.9467\n", + "Epoch 165/300\n", + "350/350 [==============================] - 0s 105us/step - loss: 0.0851 - acc: 0.9800 - val_loss: 0.1288 - val_acc: 0.9467\n", + "Epoch 166/300\n", + "350/350 [==============================] - 0s 109us/step - loss: 0.0844 - acc: 0.9800 - val_loss: 0.1283 - val_acc: 0.9467\n", + "Epoch 167/300\n", + "350/350 [==============================] - 0s 96us/step - loss: 0.0843 - acc: 0.9800 - val_loss: 0.1287 - val_acc: 0.9467\n", + "Epoch 168/300\n", + "350/350 [==============================] - 0s 148us/step - loss: 0.0837 - acc: 0.9800 - val_loss: 0.1272 - val_acc: 0.9467\n", + "Epoch 169/300\n", + "350/350 [==============================] - 0s 107us/step - loss: 0.0833 - acc: 0.9771 - val_loss: 0.1268 - val_acc: 0.9533\n", + "Epoch 170/300\n", + "350/350 [==============================] - 0s 132us/step - loss: 0.0830 - acc: 0.9771 - val_loss: 0.1269 - val_acc: 0.9467\n", + "Epoch 171/300\n", + "350/350 [==============================] - 0s 125us/step - loss: 0.0825 - acc: 0.9771 - val_loss: 0.1269 - val_acc: 0.9467\n", + "Epoch 172/300\n", + "350/350 [==============================] - 0s 178us/step - loss: 0.0824 - acc: 0.9800 - val_loss: 0.1262 - val_acc: 0.9533\n", + "Epoch 173/300\n", + "350/350 [==============================] - 0s 115us/step - loss: 0.0821 - acc: 0.9771 - val_loss: 0.1261 - val_acc: 0.9467\n", + "Epoch 174/300\n", + "350/350 [==============================] - 0s 132us/step - loss: 0.0815 - acc: 0.9829 - val_loss: 0.1255 - val_acc: 0.9533\n", + "Epoch 175/300\n", + "350/350 [==============================] - 0s 141us/step - loss: 0.0813 - acc: 0.9800 - val_loss: 0.1252 - val_acc: 0.9533\n", + "Epoch 176/300\n", + "350/350 [==============================] - 0s 127us/step - loss: 0.0810 - acc: 0.9771 - val_loss: 0.1251 - val_acc: 0.9533\n", + "Epoch 177/300\n", + "350/350 [==============================] - 0s 126us/step - loss: 0.0810 - acc: 0.9771 - val_loss: 0.1251 - val_acc: 0.9533\n", + "Epoch 178/300\n", + "350/350 [==============================] - 0s 109us/step - loss: 0.0804 - acc: 0.9800 - val_loss: 0.1239 - val_acc: 0.9533\n", + "Epoch 179/300\n", + "350/350 [==============================] - 0s 152us/step - loss: 0.0799 - acc: 0.9800 - val_loss: 0.1238 - val_acc: 0.9533\n", + "Epoch 180/300\n", + "350/350 [==============================] - 0s 127us/step - loss: 0.0798 - acc: 0.9771 - val_loss: 0.1236 - val_acc: 0.9533\n", + "Epoch 181/300\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "350/350 [==============================] - 0s 143us/step - loss: 0.0795 - acc: 0.9771 - val_loss: 0.1236 - val_acc: 0.9533\n", + "Epoch 182/300\n", + "350/350 [==============================] - 0s 146us/step - loss: 0.0790 - acc: 0.9800 - val_loss: 0.1233 - val_acc: 0.9533\n", + "Epoch 183/300\n", + "350/350 [==============================] - 0s 132us/step - loss: 0.0791 - acc: 0.9829 - val_loss: 0.1217 - val_acc: 0.9533\n", + "Epoch 184/300\n", + "350/350 [==============================] - 0s 126us/step - loss: 0.0786 - acc: 0.9800 - val_loss: 0.1219 - val_acc: 0.9533\n", + "Epoch 185/300\n", + "350/350 [==============================] - 0s 102us/step - loss: 0.0786 - acc: 0.9771 - val_loss: 0.1221 - val_acc: 0.9533\n", + "Epoch 186/300\n", + "350/350 [==============================] - 0s 95us/step - loss: 0.0779 - acc: 0.9800 - val_loss: 0.1218 - val_acc: 0.9533\n", + "Epoch 187/300\n", + "350/350 [==============================] - 0s 106us/step - loss: 0.0780 - acc: 0.9800 - val_loss: 0.1215 - val_acc: 0.9533\n", + "Epoch 188/300\n", + "350/350 [==============================] - 0s 136us/step - loss: 0.0777 - acc: 0.9800 - val_loss: 0.1209 - val_acc: 0.9533\n", + "Epoch 189/300\n", + "350/350 [==============================] - 0s 88us/step - loss: 0.0778 - acc: 0.9800 - val_loss: 0.1206 - val_acc: 0.9533\n", + "Epoch 190/300\n", + "350/350 [==============================] - 0s 90us/step - loss: 0.0769 - acc: 0.9829 - val_loss: 0.1199 - val_acc: 0.9533\n", + "Epoch 191/300\n", + "350/350 [==============================] - 0s 124us/step - loss: 0.0769 - acc: 0.9771 - val_loss: 0.1210 - val_acc: 0.9533\n", + "Epoch 192/300\n", + "350/350 [==============================] - 0s 95us/step - loss: 0.0764 - acc: 0.9829 - val_loss: 0.1192 - val_acc: 0.9533\n", + "Epoch 193/300\n", + "350/350 [==============================] - 0s 88us/step - loss: 0.0766 - acc: 0.9800 - val_loss: 0.1189 - val_acc: 0.9533\n", + "Epoch 194/300\n", + "350/350 [==============================] - 0s 94us/step - loss: 0.0766 - acc: 0.9800 - val_loss: 0.1191 - val_acc: 0.9533\n", + "Epoch 195/300\n", + "350/350 [==============================] - 0s 84us/step - loss: 0.0760 - acc: 0.9771 - val_loss: 0.1191 - val_acc: 0.9533\n", + "Epoch 196/300\n", + "350/350 [==============================] - 0s 111us/step - loss: 0.0758 - acc: 0.9800 - val_loss: 0.1190 - val_acc: 0.9533\n", + "Epoch 197/300\n", + "350/350 [==============================] - 0s 187us/step - loss: 0.0754 - acc: 0.9771 - val_loss: 0.1190 - val_acc: 0.9533\n", + "Epoch 198/300\n", + "350/350 [==============================] - 0s 114us/step - loss: 0.0753 - acc: 0.9800 - val_loss: 0.1184 - val_acc: 0.9533\n", + "Epoch 199/300\n", + "350/350 [==============================] - 0s 147us/step - loss: 0.0755 - acc: 0.9829 - val_loss: 0.1182 - val_acc: 0.9533\n", + "Epoch 200/300\n", + "350/350 [==============================] - 0s 96us/step - loss: 0.0748 - acc: 0.9800 - val_loss: 0.1192 - val_acc: 0.9533\n", + "Epoch 201/300\n", + "350/350 [==============================] - 0s 176us/step - loss: 0.0751 - acc: 0.9800 - val_loss: 0.1181 - val_acc: 0.9533\n", + "Epoch 202/300\n", + "350/350 [==============================] - 0s 124us/step - loss: 0.0742 - acc: 0.9800 - val_loss: 0.1173 - val_acc: 0.9533\n", + "Epoch 203/300\n", + "350/350 [==============================] - 0s 114us/step - loss: 0.0743 - acc: 0.9771 - val_loss: 0.1169 - val_acc: 0.9533\n", + "Epoch 204/300\n", + "350/350 [==============================] - 0s 92us/step - loss: 0.0742 - acc: 0.9829 - val_loss: 0.1155 - val_acc: 0.9600\n", + "Epoch 205/300\n", + "350/350 [==============================] - 0s 101us/step - loss: 0.0738 - acc: 0.9800 - val_loss: 0.1158 - val_acc: 0.9600\n", + "Epoch 206/300\n", + "350/350 [==============================] - 0s 101us/step - loss: 0.0737 - acc: 0.9800 - val_loss: 0.1163 - val_acc: 0.9600\n", + "Epoch 207/300\n", + "350/350 [==============================] - 0s 99us/step - loss: 0.0735 - acc: 0.9771 - val_loss: 0.1166 - val_acc: 0.9533\n", + "Epoch 208/300\n", + "350/350 [==============================] - 0s 92us/step - loss: 0.0734 - acc: 0.9771 - val_loss: 0.1168 - val_acc: 0.9533\n", + "Epoch 209/300\n", + "350/350 [==============================] - 0s 78us/step - loss: 0.0733 - acc: 0.9800 - val_loss: 0.1157 - val_acc: 0.9600\n", + "Epoch 210/300\n", + "350/350 [==============================] - 0s 69us/step - loss: 0.0731 - acc: 0.9800 - val_loss: 0.1152 - val_acc: 0.9600\n", + "Epoch 211/300\n", + "350/350 [==============================] - 0s 77us/step - loss: 0.0727 - acc: 0.9829 - val_loss: 0.1147 - val_acc: 0.9600\n", + "Epoch 212/300\n", + "350/350 [==============================] - 0s 88us/step - loss: 0.0726 - acc: 0.9829 - val_loss: 0.1141 - val_acc: 0.9600\n", + "Epoch 213/300\n", + "350/350 [==============================] - 0s 64us/step - loss: 0.0724 - acc: 0.9800 - val_loss: 0.1149 - val_acc: 0.9600\n", + "Epoch 214/300\n", + "350/350 [==============================] - 0s 75us/step - loss: 0.0723 - acc: 0.9771 - val_loss: 0.1153 - val_acc: 0.9600\n", + "Epoch 215/300\n", + "350/350 [==============================] - 0s 148us/step - loss: 0.0720 - acc: 0.9800 - val_loss: 0.1159 - val_acc: 0.9533\n", + "Epoch 216/300\n", + "350/350 [==============================] - 0s 116us/step - loss: 0.0721 - acc: 0.9771 - val_loss: 0.1155 - val_acc: 0.9533\n", + "Epoch 217/300\n", + "350/350 [==============================] - 0s 72us/step - loss: 0.0714 - acc: 0.9800 - val_loss: 0.1157 - val_acc: 0.9533\n", + "Epoch 218/300\n", + "350/350 [==============================] - 0s 102us/step - loss: 0.0716 - acc: 0.9771 - val_loss: 0.1151 - val_acc: 0.9600\n", + "Epoch 219/300\n", + "350/350 [==============================] - 0s 74us/step - loss: 0.0718 - acc: 0.9771 - val_loss: 0.1141 - val_acc: 0.9600\n", + "Epoch 220/300\n", + "350/350 [==============================] - 0s 177us/step - loss: 0.0713 - acc: 0.9771 - val_loss: 0.1138 - val_acc: 0.9600\n", + "Epoch 221/300\n", + "350/350 [==============================] - 0s 122us/step - loss: 0.0714 - acc: 0.9800 - val_loss: 0.1143 - val_acc: 0.9600\n", + "Epoch 222/300\n", + "350/350 [==============================] - 0s 113us/step - loss: 0.0709 - acc: 0.9771 - val_loss: 0.1137 - val_acc: 0.9600\n", + "Epoch 223/300\n", + "350/350 [==============================] - 0s 79us/step - loss: 0.0710 - acc: 0.9800 - val_loss: 0.1141 - val_acc: 0.9600\n", + "Epoch 224/300\n", + "350/350 [==============================] - 0s 94us/step - loss: 0.0707 - acc: 0.9771 - val_loss: 0.1149 - val_acc: 0.9533\n", + "Epoch 225/300\n", + "350/350 [==============================] - 0s 60us/step - loss: 0.0707 - acc: 0.9800 - val_loss: 0.1135 - val_acc: 0.9600\n", + "Epoch 226/300\n", + "350/350 [==============================] - 0s 68us/step - loss: 0.0706 - acc: 0.9771 - val_loss: 0.1126 - val_acc: 0.9600\n", + "Epoch 227/300\n", + "350/350 [==============================] - 0s 65us/step - loss: 0.0703 - acc: 0.9800 - val_loss: 0.1136 - val_acc: 0.9600\n", + "Epoch 228/300\n", + "350/350 [==============================] - 0s 78us/step - loss: 0.0700 - acc: 0.9800 - val_loss: 0.1128 - val_acc: 0.9600\n", + "Epoch 229/300\n", + "350/350 [==============================] - 0s 92us/step - loss: 0.0701 - acc: 0.9829 - val_loss: 0.1132 - val_acc: 0.9600\n", + "Epoch 230/300\n", + "350/350 [==============================] - 0s 106us/step - loss: 0.0698 - acc: 0.9800 - val_loss: 0.1143 - val_acc: 0.9600\n", + "Epoch 231/300\n", + "350/350 [==============================] - 0s 155us/step - loss: 0.0702 - acc: 0.9800 - val_loss: 0.1132 - val_acc: 0.9600\n", + "Epoch 232/300\n", + "350/350 [==============================] - 0s 175us/step - loss: 0.0695 - acc: 0.9771 - val_loss: 0.1139 - val_acc: 0.9600\n", + "Epoch 233/300\n", + "350/350 [==============================] - 0s 115us/step - loss: 0.0694 - acc: 0.9771 - val_loss: 0.1136 - val_acc: 0.9600\n", + "Epoch 234/300\n", + "350/350 [==============================] - 0s 95us/step - loss: 0.0694 - acc: 0.9800 - val_loss: 0.1130 - val_acc: 0.9600\n", + "Epoch 235/300\n", + "350/350 [==============================] - 0s 133us/step - loss: 0.0694 - acc: 0.9800 - val_loss: 0.1125 - val_acc: 0.9600\n", + "Epoch 236/300\n", + "350/350 [==============================] - 0s 145us/step - loss: 0.0691 - acc: 0.9800 - val_loss: 0.1125 - val_acc: 0.9600\n", + "Epoch 237/300\n", + "350/350 [==============================] - 0s 177us/step - loss: 0.0689 - acc: 0.9800 - val_loss: 0.1128 - val_acc: 0.9600\n", + "Epoch 238/300\n", + "350/350 [==============================] - 0s 107us/step - loss: 0.0692 - acc: 0.9771 - val_loss: 0.1131 - val_acc: 0.9600\n", + "Epoch 239/300\n", + "350/350 [==============================] - 0s 123us/step - loss: 0.0689 - acc: 0.9800 - val_loss: 0.1134 - val_acc: 0.9600\n", + "Epoch 240/300\n", + "350/350 [==============================] - 0s 108us/step - loss: 0.0688 - acc: 0.9800 - val_loss: 0.1121 - val_acc: 0.9600\n", + "Epoch 241/300\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "350/350 [==============================] - 0s 102us/step - loss: 0.0685 - acc: 0.9800 - val_loss: 0.1114 - val_acc: 0.9600\n", + "Epoch 242/300\n", + "350/350 [==============================] - 0s 89us/step - loss: 0.0682 - acc: 0.9771 - val_loss: 0.1122 - val_acc: 0.9533\n", + "Epoch 243/300\n", + "350/350 [==============================] - 0s 88us/step - loss: 0.0689 - acc: 0.9800 - val_loss: 0.1117 - val_acc: 0.9600\n", + "Epoch 244/300\n", + "350/350 [==============================] - 0s 106us/step - loss: 0.0682 - acc: 0.9800 - val_loss: 0.1113 - val_acc: 0.9600\n", + "Epoch 245/300\n", + "350/350 [==============================] - 0s 82us/step - loss: 0.0681 - acc: 0.9800 - val_loss: 0.1116 - val_acc: 0.9600\n", + "Epoch 246/300\n", + "350/350 [==============================] - 0s 152us/step - loss: 0.0682 - acc: 0.9771 - val_loss: 0.1125 - val_acc: 0.9533\n", + "Epoch 247/300\n", + "350/350 [==============================] - 0s 90us/step - loss: 0.0679 - acc: 0.9800 - val_loss: 0.1113 - val_acc: 0.9600\n", + "Epoch 248/300\n", + "350/350 [==============================] - 0s 86us/step - loss: 0.0678 - acc: 0.9800 - val_loss: 0.1111 - val_acc: 0.9600\n", + "Epoch 249/300\n", + "350/350 [==============================] - 0s 84us/step - loss: 0.0677 - acc: 0.9800 - val_loss: 0.1125 - val_acc: 0.9533\n", + "Epoch 250/300\n", + "350/350 [==============================] - 0s 100us/step - loss: 0.0678 - acc: 0.9800 - val_loss: 0.1112 - val_acc: 0.9600\n", + "Epoch 251/300\n", + "350/350 [==============================] - 0s 148us/step - loss: 0.0675 - acc: 0.9771 - val_loss: 0.1111 - val_acc: 0.9600\n", + "Epoch 252/300\n", + "350/350 [==============================] - 0s 90us/step - loss: 0.0673 - acc: 0.9771 - val_loss: 0.1116 - val_acc: 0.9600\n", + "Epoch 253/300\n", + "350/350 [==============================] - 0s 103us/step - loss: 0.0672 - acc: 0.9800 - val_loss: 0.1105 - val_acc: 0.9600\n", + "Epoch 254/300\n", + "350/350 [==============================] - 0s 73us/step - loss: 0.0674 - acc: 0.9771 - val_loss: 0.1107 - val_acc: 0.9600\n", + "Epoch 255/300\n", + "350/350 [==============================] - 0s 151us/step - loss: 0.0672 - acc: 0.9771 - val_loss: 0.1115 - val_acc: 0.9600\n", + "Epoch 256/300\n", + "350/350 [==============================] - 0s 113us/step - loss: 0.0671 - acc: 0.9800 - val_loss: 0.1106 - val_acc: 0.9600\n", + "Epoch 257/300\n", + "350/350 [==============================] - 0s 72us/step - loss: 0.0671 - acc: 0.9771 - val_loss: 0.1109 - val_acc: 0.9600\n", + "Epoch 258/300\n", + "350/350 [==============================] - 0s 111us/step - loss: 0.0667 - acc: 0.9800 - val_loss: 0.1099 - val_acc: 0.9600\n", + "Epoch 259/300\n", + "350/350 [==============================] - 0s 145us/step - loss: 0.0669 - acc: 0.9771 - val_loss: 0.1106 - val_acc: 0.9600\n", + "Epoch 260/300\n", + "350/350 [==============================] - 0s 127us/step - loss: 0.0664 - acc: 0.9800 - val_loss: 0.1094 - val_acc: 0.9600\n", + "Epoch 261/300\n", + "350/350 [==============================] - 0s 69us/step - loss: 0.0668 - acc: 0.9771 - val_loss: 0.1090 - val_acc: 0.9600\n", + "Epoch 262/300\n", + "350/350 [==============================] - 0s 112us/step - loss: 0.0665 - acc: 0.9743 - val_loss: 0.1101 - val_acc: 0.9600\n", + "Epoch 263/300\n", + "350/350 [==============================] - 0s 98us/step - loss: 0.0664 - acc: 0.9771 - val_loss: 0.1111 - val_acc: 0.9600\n", + "Epoch 264/300\n", + "350/350 [==============================] - 0s 86us/step - loss: 0.0662 - acc: 0.9743 - val_loss: 0.1102 - val_acc: 0.9600\n", + "Epoch 265/300\n", + "350/350 [==============================] - 0s 110us/step - loss: 0.0662 - acc: 0.9800 - val_loss: 0.1099 - val_acc: 0.9600\n", + "Epoch 266/300\n", + "350/350 [==============================] - 0s 96us/step - loss: 0.0661 - acc: 0.9800 - val_loss: 0.1098 - val_acc: 0.9600\n", + "Epoch 267/300\n", + "350/350 [==============================] - 0s 109us/step - loss: 0.0662 - acc: 0.9771 - val_loss: 0.1093 - val_acc: 0.9600\n", + "Epoch 268/300\n", + "350/350 [==============================] - 0s 122us/step - loss: 0.0658 - acc: 0.9800 - val_loss: 0.1095 - val_acc: 0.9600\n", + "Epoch 269/300\n", + "350/350 [==============================] - 0s 98us/step - loss: 0.0661 - acc: 0.9743 - val_loss: 0.1098 - val_acc: 0.9600\n", + "Epoch 270/300\n", + "350/350 [==============================] - 0s 192us/step - loss: 0.0664 - acc: 0.9743 - val_loss: 0.1104 - val_acc: 0.9600\n", + "Epoch 271/300\n", + "350/350 [==============================] - 0s 138us/step - loss: 0.0657 - acc: 0.9829 - val_loss: 0.1103 - val_acc: 0.9600\n", + "Epoch 272/300\n", + "350/350 [==============================] - 0s 94us/step - loss: 0.0654 - acc: 0.9743 - val_loss: 0.1100 - val_acc: 0.9600\n", + "Epoch 273/300\n", + "350/350 [==============================] - 0s 92us/step - loss: 0.0657 - acc: 0.9800 - val_loss: 0.1104 - val_acc: 0.9600\n", + "Epoch 274/300\n", + "350/350 [==============================] - 0s 85us/step - loss: 0.0655 - acc: 0.9771 - val_loss: 0.1097 - val_acc: 0.9600\n", + "Epoch 275/300\n", + "350/350 [==============================] - 0s 96us/step - loss: 0.0649 - acc: 0.9743 - val_loss: 0.1103 - val_acc: 0.9600\n", + "Epoch 276/300\n", + "350/350 [==============================] - 0s 171us/step - loss: 0.0656 - acc: 0.9800 - val_loss: 0.1098 - val_acc: 0.9600\n", + "Epoch 277/300\n", + "350/350 [==============================] - 0s 90us/step - loss: 0.0651 - acc: 0.9800 - val_loss: 0.1085 - val_acc: 0.9600\n", + "Epoch 278/300\n", + "350/350 [==============================] - 0s 191us/step - loss: 0.0652 - acc: 0.9771 - val_loss: 0.1081 - val_acc: 0.9600\n", + "Epoch 279/300\n", + "350/350 [==============================] - 0s 166us/step - loss: 0.0650 - acc: 0.9771 - val_loss: 0.1082 - val_acc: 0.9600\n", + "Epoch 280/300\n", + "350/350 [==============================] - 0s 219us/step - loss: 0.0652 - acc: 0.9743 - val_loss: 0.1083 - val_acc: 0.9600\n", + "Epoch 281/300\n", + "350/350 [==============================] - 0s 227us/step - loss: 0.0652 - acc: 0.9771 - val_loss: 0.1081 - val_acc: 0.9600\n", + "Epoch 282/300\n", + "350/350 [==============================] - 0s 101us/step - loss: 0.0651 - acc: 0.9743 - val_loss: 0.1087 - val_acc: 0.9600\n", + "Epoch 283/300\n", + "350/350 [==============================] - 0s 129us/step - loss: 0.0648 - acc: 0.9771 - val_loss: 0.1081 - val_acc: 0.9600\n", + "Epoch 284/300\n", + "350/350 [==============================] - 0s 170us/step - loss: 0.0649 - acc: 0.9771 - val_loss: 0.1080 - val_acc: 0.9600\n", + "Epoch 285/300\n", + "350/350 [==============================] - 0s 101us/step - loss: 0.0646 - acc: 0.9743 - val_loss: 0.1080 - val_acc: 0.9600\n", + "Epoch 286/300\n", + "350/350 [==============================] - 0s 88us/step - loss: 0.0648 - acc: 0.9800 - val_loss: 0.1075 - val_acc: 0.9600\n", + "Epoch 287/300\n", + "350/350 [==============================] - 0s 124us/step - loss: 0.0647 - acc: 0.9771 - val_loss: 0.1084 - val_acc: 0.9600\n", + "Epoch 288/300\n", + "350/350 [==============================] - 0s 90us/step - loss: 0.0645 - acc: 0.9800 - val_loss: 0.1084 - val_acc: 0.9600\n", + "Epoch 289/300\n", + "350/350 [==============================] - 0s 109us/step - loss: 0.0643 - acc: 0.9743 - val_loss: 0.1081 - val_acc: 0.9600\n", + "Epoch 290/300\n", + "350/350 [==============================] - 0s 84us/step - loss: 0.0643 - acc: 0.9771 - val_loss: 0.1074 - val_acc: 0.9600\n", + "Epoch 291/300\n", + "350/350 [==============================] - 0s 84us/step - loss: 0.0643 - acc: 0.9743 - val_loss: 0.1079 - val_acc: 0.9600\n", + "Epoch 292/300\n", + "350/350 [==============================] - 0s 104us/step - loss: 0.0643 - acc: 0.9771 - val_loss: 0.1074 - val_acc: 0.9600\n", + "Epoch 293/300\n", + "350/350 [==============================] - 0s 80us/step - loss: 0.0638 - acc: 0.9771 - val_loss: 0.1074 - val_acc: 0.9600\n", + "Epoch 294/300\n", + "350/350 [==============================] - 0s 80us/step - loss: 0.0640 - acc: 0.9800 - val_loss: 0.1080 - val_acc: 0.9600\n", + "Epoch 295/300\n", + "350/350 [==============================] - 0s 95us/step - loss: 0.0641 - acc: 0.9743 - val_loss: 0.1079 - val_acc: 0.9600\n", + "Epoch 296/300\n", + "350/350 [==============================] - 0s 94us/step - loss: 0.0640 - acc: 0.9800 - val_loss: 0.1068 - val_acc: 0.9600\n", + "Epoch 297/300\n", + "350/350 [==============================] - 0s 123us/step - loss: 0.0638 - acc: 0.9743 - val_loss: 0.1076 - val_acc: 0.9600\n", + "Epoch 298/300\n", + "350/350 [==============================] - 0s 67us/step - loss: 0.0641 - acc: 0.9771 - val_loss: 0.1079 - val_acc: 0.9600\n", + "Epoch 299/300\n", + "350/350 [==============================] - 0s 84us/step - loss: 0.0637 - acc: 0.9771 - val_loss: 0.1082 - val_acc: 0.9600\n", + "Epoch 300/300\n", + "350/350 [==============================] - 0s 131us/step - loss: 0.0636 - acc: 0.9800 - val_loss: 0.1076 - val_acc: 0.9600\n" + ] + } + ], + "source": [ + "# Instantiating the model\n", + "model = a_simple_NN()\n", + "\n", + "# Splitting the dataset into training (70%) and validation sets (30%)\n", + "X_train, X_test, y_train, y_test = train_test_split(\n", + " features, labels, test_size=0.3)\n", + "\n", + "# Setting the number of passes through the entire training set\n", + "num_epochs = 300\n", + "\n", + "# We can pass validation data while training\n", + "model_run = model.fit(X_train, y_train, epochs=num_epochs,\n", + " validation_data=(X_test, y_test))" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The history has the following data: dict_keys(['val_loss', 'val_acc', 'loss', 'acc'])\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7fe6d85f0080>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# Looking at the loss and accuracy on the training and validation sets during the training\n", + "# This can be done by using Keras callback \"history\" which is applied by default\n", + "history_model = model_run.history\n", + "\n", + "print(\"The history has the following data: \", history_model.keys())\n", + "\n", + "# Plotting the training and validation accuracy during the training\n", + "plt.plot(np.arange(1, num_epochs+1), history_model[\"acc\"], \"blue\") ;\n", + "\n", + "plt.plot(np.arange(1, num_epochs+1), history_model[\"val_acc\"], \"red\") ;" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Here we dont't really see a big difference between the training and validation data because the function we are trying to fit is quiet simple and there is not too much noise. We will come back to these curves in a later example**" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In the example above we splitted our dataset into a 70-30 train-validation set. We know from previous chapters that to more robustly calculate accuracy we can use **K-fold crossvalidation**.\n", + "This is even more important when we have small datasets and cannot afford to reserve a validation set!\n", + "\n", + "One way to do the cross validation here would be to write our own function to do this. However, we also know that **SciKit learn** provides several handy functions to evaluate and tune the models. So the question is:\n", + "\n", + "Can we somehow use these **Scikit learn** functions or ones we wrote ourselves for **Scikit learn** models to evaluate and tune our Keras models?\n", + "\n", + "The Answer is **YES !**\n", + "\n", + "We show how to do this in the following section." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Using SciKit learn functions on Keras models\n", + "\n", + "Keras offers 2 wrappers which allow its Sequential models to be used with SciKit learn. \n", + "\n", + "There are: **KerasClassifier** and **KerasRegressor**.\n", + "\n", + "For more information:\n", + "https://keras.io/scikit-learn-api/\n", + "\n", + "**Now lets see how this works!**" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [], + "source": [ + "# We wrap the Keras model we created above with KerasClassifier\n", + "from keras.wrappers.scikit_learn import KerasClassifier\n", + "from sklearn.model_selection import cross_val_score\n", + "# Wrapping Keras model\n", + "# NOTE: We pass verbose=0 to suppress the model output\n", + "num_epochs = 400\n", + "model_scikit = KerasClassifier(\n", + " build_fn=a_simple_NN, **{\"epochs\": num_epochs, \"verbose\": 0})" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [], + "source": [ + "# Let's reuse the function to visualize the decision boundary which we saw in chapter 2 with minimal change\n", + "\n", + "def list_flatten(list_of_list):\n", + " flattened_list = [i for j in list_of_list for i in j]\n", + " return flattened_list\n", + "\n", + "def plot_points(plt=plt, marker='o'):\n", + " colors = [[\"steelblue\", \"chocolate\"][i] for i in labels]\n", + " plt.scatter(features.iloc[:, 0], features.iloc[:, 1], color=colors, marker=marker);\n", + "\n", + "def train_and_plot_decision_surface(\n", + " name, classifier, features_2d, labels, preproc=None, plt=plt, marker='o', N=400\n", + "):\n", + "\n", + " features_2d = np.array(features_2d)\n", + " xmin, ymin = features_2d.min(axis=0)\n", + " xmax, ymax = features_2d.max(axis=0)\n", + "\n", + " x = np.linspace(xmin, xmax, N)\n", + " y = np.linspace(ymin, ymax, N)\n", + " points = np.array(np.meshgrid(x, y)).T.reshape(-1, 2)\n", + "\n", + " if preproc is not None:\n", + " points_for_classifier = preproc.fit_transform(points)\n", + " features_2d = preproc.fit_transform(features_2d)\n", + " else:\n", + " points_for_classifier = points\n", + "\n", + " classifier.fit(features_2d, labels, verbose=0)\n", + " predicted = classifier.predict(features_2d)\n", + " \n", + " if name == \"Neural Net\":\n", + " predicted = list_flatten(predicted)\n", + " \n", + " \n", + " if preproc is not None:\n", + " name += \" (w/ preprocessing)\"\n", + " print(name + \":\\t\", sum(predicted == labels), \"/\", len(labels), \"correct\")\n", + " \n", + " if name == \"Neural Net\":\n", + " classes = np.array(list_flatten(classifier.predict(points_for_classifier)), dtype=bool)\n", + " else:\n", + " classes = np.array(classifier.predict(points_for_classifier), dtype=bool)\n", + " plt.plot(\n", + " points[~classes][:, 0],\n", + " points[~classes][:, 1],\n", + " \"o\",\n", + " color=\"steelblue\",\n", + " markersize=1,\n", + " alpha=0.01,\n", + " )\n", + " plt.plot(\n", + " points[classes][:, 0],\n", + " points[classes][:, 1],\n", + " \"o\",\n", + " color=\"chocolate\",\n", + " markersize=1,\n", + " alpha=0.04,\n", + " )" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Neural Net:\t 486 / 500 correct\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7fe7143e61d0>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "_, ax = plt.subplots(figsize=(6, 6))\n", + "\n", + "train_and_plot_decision_surface(\"Neural Net\", model_scikit, features, labels, plt=ax)\n", + "plot_points(plt=ax)" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The acuracy on the 5 validation folds: [ 0.96 0.96 0.94 0.97 0.96]\n", + "The Average acuracy on the 5 validation folds: 0.958\n" + ] + } + ], + "source": [ + "# Applying K-fold cross-validation\n", + "# Here we pass the whole dataset, i.e. features and labels, instead of splitting it.\n", + "num_folds = 5\n", + "cross_validation = cross_val_score(\n", + " model_scikit, features, labels, cv=num_folds, verbose=0)\n", + "\n", + "print(\"The acuracy on the \", num_folds, \" validation folds:\", cross_validation)\n", + "print(\"The Average acuracy on the \", num_folds, \" validation folds:\", np.mean(cross_validation))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### NOTE: The above code took quiet long even though we used only 5 CV folds and the neural network and data size are very small!" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Hyperparameter optimization" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We know from chapter 6 that there are 2 types of parameters which need to be tuned for a machine learning model.\n", + "* Internal model parameters (weights) which can be learned for e.g. by gradient-descent\n", + "* Hyperparameters\n", + "\n", + "In the model which we created above we made some arbitrary choices like which optimizer we use, what is its learning rate, number of hidden units and so on ...\n", + "\n", + "Now that we have the keras model wrapped as a scikit model we can use the grid search functions we have seen in chapter 6." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.model_selection import GridSearchCV\n", + "# Just to remember\n", + "model_scikit = KerasClassifier(\n", + " build_fn=a_simple_NN, **{\"epochs\": num_epochs, \"verbose\": 0})" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "HP_grid = {'epochs' : [300, 500, 1000]}\n", + "search = GridSearchCV(estimator=model_scikit, param_grid=HP_grid)\n", + "search.fit(features, labels)\n", + "print(search.best_score_, search.best_params_)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "HP_grid = {'epochs' : [10, 15, 30], \n", + " 'batch_size' : [10, 20, 30] }\n", + "search = GridSearchCV(estimator=model_scikit, param_grid=HP_grid)\n", + "search.fit(features, labels)\n", + "print(search.best_score_, search.best_params_)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# A more general model for further Hyperparameter optimization\n", + "from keras import optimizers\n", + "\n", + "def a_simple_NN(activation='relu', num_hidden_neurons=[4, 4], learning_rate=0.01):\n", + "\n", + " model = Sequential()\n", + "\n", + " model.add(Dense(num_hidden_neurons[0],\n", + " input_shape=(2,), activation=activation))\n", + "\n", + " model.add(Dense(num_hidden_neurons[1], activation=activation))\n", + "\n", + " model.add(Dense(1, activation=\"sigmoid\"))\n", + "\n", + " model.compile(loss=\"binary_crossentropy\", optimizer=optimizers.rmsprop(\n", + " lr=learning_rate), metrics=[\"accuracy\"])\n", + "\n", + " return model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Exercise: \n", + "* Look at the model above and choose a couple of hyperparameters to optimize. \n", + "* **(OPTIONAL:)** What function from SciKit learn other than GridSearchCV can we use for hyperparameter optimization? Use it." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Code here" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Exercise: Create a neural network to classify the 2d points example from chapter 2 learned \n", + "(Optional: As you create the model read a bit on the different keras commands we have used)" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7fe7177f6a58>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "circle = pd.read_csv(\"2d_points.csv\")\n", + "# Using x and y coordinates as featues\n", + "features = circle.iloc[:, :-1]\n", + "# Convert boolean to integer values (True->1 and False->0)\n", + "labels = circle.iloc[:, -1].astype(int)\n", + "\n", + "colors = [[\"steelblue\", \"chocolate\"][i] for i in circle[\"label\"]]\n", + "plt.figure(figsize=(5, 5))\n", + "plt.xlim([-2, 2])\n", + "plt.ylim([-2, 2])\n", + "\n", + "plt.scatter(features[\"x\"], features[\"y\"], color=colors, marker=\"o\");\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Insert Code here" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### The examples above are not the ideal use problems one should use neural networks for. They are too simple and can be easily solved by classical machine learning algorithms. Below we show examples which are the more common applications of Neural Networks." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Handwritten Digits Classification\n", + "### MNIST Dataset\n", + "\n", + "MNIST datasets is a very common dataset used in machine learning. It is widely used to train and validate models.\n", + "\n", + "\n", + ">The MNIST database of handwritten digits, available from this page, has a training set of 60,000 examples, and a >test set of 10,000 examples. It is a subset of a larger set available from NIST. The digits have been size->normalized and centered in a fixed-size image.\n", + ">It is a good database for people who want to try learning techniques and pattern recognition methods on real-world >data while spending minimal efforts on preprocessing and formatting.\n", + ">source: http://yann.lecun.com/exdb/mnist/\n", + "\n", + "The problem we want to solve using this dataset is: multi-class classification (FIRST TIME)\n", + "This dataset consists of images of handwritten digits between 0-9 and their corresponsing labels. We want to train a neural network which is able to predict the correct digit on the image. " + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [], + "source": [ + "# Loading the dataset in keras\n", + "# Later you can explore and play with other datasets with come with Keras\n", + "from keras.datasets import mnist\n", + "\n", + "# Loading the train and test data\n", + "\n", + "(X_train, y_train), (X_test, y_test) = mnist.load_data()" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(60000, 28, 28)\n" + ] + } + ], + "source": [ + "# Looking at the dataset\n", + "print(X_train.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "This digit is: 9\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7fe66b039c50>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# We can see that the training set consists of 60,000 images of size 28x28 pixels\n", + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "i=np.random.randint(0,X_train.shape[0])\n", + "plt.imshow(X_train[i], cmap=\"gray_r\") ;\n", + "print(\"This digit is: \" , y_train[i])" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0 255\n" + ] + } + ], + "source": [ + "# Look at the data values for a couple of images\n", + "print(X_train[0].min(), X_train[1].max())" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The data consists of values between 0-255 representing the **grayscale level**" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(60000,)\n" + ] + } + ], + "source": [ + "# The labels are the digit on the image\n", + "print(y_train.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [], + "source": [ + "# Scaling the data\n", + "# It is important to normalize the input data to (0-1) before providing it to a neural net\n", + "# We could use the previously introduced function from SciKit learn. However, here it is sufficient to\n", + "# just divide the input data by 255\n", + "X_train_norm = X_train/255.\n", + "X_test_norm = X_test/255.\n", + "\n", + "# Also we need to reshape the input data such that each sample is a vector and not a 2D matrix\n", + "X_train_prep = X_train_norm.reshape(X_train_norm.shape[0],28*28)\n", + "X_test_prep = X_test_norm.reshape(X_test_norm.shape[0],28*28)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**IMPORTANT: One-Hot encoding**\n", + "\n", + "**TODO: Better frame the explaination**\n", + "\n", + "In such problems the labels are provided as something called **One-hot encodings**. What this does is to convert a categorical label to a vector.\n", + "\n", + "For the MNIST problem where we have **10 categories** one-hot encoding will create a vector of length 10 for each of the labels. All the entries of this vector will be zero **except** for the index which is equal to the integer value of the label.\n", + "\n", + "For example:\n", + "if label is 4. The one-hot vector will look like **[0 0 0 0 1 0 0 0 0 0]**\n", + "\n", + "Fortunately, we don't have to code this ourselves because Keras has a built-in function for this." + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(60000, 10)\n" + ] + } + ], + "source": [ + "from keras.utils.np_utils import to_categorical\n", + "\n", + "y_train_onehot = to_categorical(y_train, num_classes=10)\n", + "y_test_onehot = to_categorical(y_test, num_classes=10)\n", + "\n", + "print(y_train_onehot.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Epoch 1/20\n", + "60000/60000 [==============================] - 2s 25us/step - loss: 0.5722 - acc: 0.8494\n", + "Epoch 2/20\n", + "60000/60000 [==============================] - 1s 18us/step - loss: 0.2583 - acc: 0.9256\n", + "Epoch 3/20\n", + "60000/60000 [==============================] - 1s 17us/step - loss: 0.2006 - acc: 0.9418\n", + "Epoch 4/20\n", + "60000/60000 [==============================] - 1s 17us/step - loss: 0.1650 - acc: 0.9516\n", + "Epoch 5/20\n", + "60000/60000 [==============================] - 1s 16us/step - loss: 0.1422 - acc: 0.9584\n", + "Epoch 6/20\n", + "60000/60000 [==============================] - 2s 29us/step - loss: 0.1235 - acc: 0.9638\n", + "Epoch 7/20\n", + "60000/60000 [==============================] - 1s 22us/step - loss: 0.1093 - acc: 0.9666\n", + "Epoch 8/20\n", + "60000/60000 [==============================] - 1s 17us/step - loss: 0.0975 - acc: 0.9706\n", + "Epoch 9/20\n", + "60000/60000 [==============================] - 1s 18us/step - loss: 0.0891 - acc: 0.9732\n", + "Epoch 10/20\n", + "60000/60000 [==============================] - 1s 16us/step - loss: 0.0810 - acc: 0.9757\n", + "Epoch 11/20\n", + "60000/60000 [==============================] - 1s 16us/step - loss: 0.0745 - acc: 0.9776\n", + "Epoch 12/20\n", + "60000/60000 [==============================] - 1s 24us/step - loss: 0.0677 - acc: 0.9797\n", + "Epoch 13/20\n", + "60000/60000 [==============================] - 1s 17us/step - loss: 0.0623 - acc: 0.9813\n", + "Epoch 14/20\n", + "60000/60000 [==============================] - 1s 15us/step - loss: 0.0574 - acc: 0.9829\n", + "Epoch 15/20\n", + "60000/60000 [==============================] - 1s 22us/step - loss: 0.0537 - acc: 0.9841\n", + "Epoch 16/20\n", + "60000/60000 [==============================] - 1s 21us/step - loss: 0.0506 - acc: 0.9845\n", + "Epoch 17/20\n", + "60000/60000 [==============================] - 1s 22us/step - loss: 0.0466 - acc: 0.9860\n", + "Epoch 18/20\n", + "60000/60000 [==============================] - 1s 20us/step - loss: 0.0439 - acc: 0.9868\n", + "Epoch 19/20\n", + "60000/60000 [==============================] - 1s 17us/step - loss: 0.0410 - acc: 0.9877\n", + "Epoch 20/20\n", + "60000/60000 [==============================] - 1s 23us/step - loss: 0.0374 - acc: 0.9884\n" + ] + } + ], + "source": [ + "# Building the keras model\n", + "from keras.models import Sequential\n", + "from keras.layers import Dense\n", + "\n", + "def mnist_model():\n", + " model = Sequential()\n", + "\n", + " model.add(Dense(64, input_shape=(28*28,), activation=\"relu\"))\n", + "\n", + " model.add(Dense(64, activation=\"relu\"))\n", + "\n", + " model.add(Dense(10, activation=\"softmax\"))\n", + "\n", + " model.compile(loss=\"categorical_crossentropy\",\n", + " optimizer=\"rmsprop\", metrics=[\"accuracy\"])\n", + " return model\n", + "\n", + "model = mnist_model()\n", + "\n", + "model_run = model.fit(X_train_prep, y_train_onehot, epochs=20,\n", + " batch_size=512)" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "10000/10000 [==============================] - 1s 63us/step\n", + "The [loss, accuracy] on test dataset are: [0.15624154731309972, 0.95640000000000003]\n" + ] + } + ], + "source": [ + "print(\"The [loss, accuracy] on test dataset are: \" , model.evaluate(X_test_prep, y_test_onehot))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Optional exercise: Run the model again with validation dataset, plot the accuracy as a function of epochs, play with number of epochs and observe what is happening." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Code here" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train on 60000 samples, validate on 10000 samples\n", + "Epoch 1/20\n", + "60000/60000 [==============================] - 1s 22us/step - loss: 0.0092 - acc: 0.9976 - val_loss: 0.1240 - val_acc: 0.9700\n", + "Epoch 2/20\n", + "60000/60000 [==============================] - 1s 18us/step - loss: 0.0088 - acc: 0.9979 - val_loss: 0.1109 - val_acc: 0.9744\n", + "Epoch 3/20\n", + "60000/60000 [==============================] - 1s 19us/step - loss: 0.0079 - acc: 0.9981 - val_loss: 0.1234 - val_acc: 0.9727\n", + "Epoch 4/20\n", + "60000/60000 [==============================] - 1s 19us/step - loss: 0.0074 - acc: 0.9983 - val_loss: 0.1047 - val_acc: 0.9764\n", + "Epoch 5/20\n", + "60000/60000 [==============================] - 1s 20us/step - loss: 0.0074 - acc: 0.9981 - val_loss: 0.1147 - val_acc: 0.9748\n", + "Epoch 6/20\n", + "60000/60000 [==============================] - 1s 20us/step - loss: 0.0067 - acc: 0.9983 - val_loss: 0.1150 - val_acc: 0.9765\n", + "Epoch 7/20\n", + "60000/60000 [==============================] - 1s 18us/step - loss: 0.0060 - acc: 0.9986 - val_loss: 0.1161 - val_acc: 0.9753\n", + "Epoch 8/20\n", + "60000/60000 [==============================] - 1s 16us/step - loss: 0.0062 - acc: 0.9985 - val_loss: 0.1457 - val_acc: 0.9682\n", + "Epoch 9/20\n", + "60000/60000 [==============================] - 1s 16us/step - loss: 0.0056 - acc: 0.9986 - val_loss: 0.1162 - val_acc: 0.9758\n", + "Epoch 10/20\n", + "60000/60000 [==============================] - 1s 25us/step - loss: 0.0050 - acc: 0.9989 - val_loss: 0.1097 - val_acc: 0.9768\n", + "Epoch 11/20\n", + "60000/60000 [==============================] - 2s 25us/step - loss: 0.0054 - acc: 0.9986 - val_loss: 0.1148 - val_acc: 0.9757\n", + "Epoch 12/20\n", + "60000/60000 [==============================] - 1s 18us/step - loss: 0.0044 - acc: 0.9990 - val_loss: 0.1148 - val_acc: 0.9772\n", + "Epoch 13/20\n", + "60000/60000 [==============================] - 1s 20us/step - loss: 0.0046 - acc: 0.9990 - val_loss: 0.1199 - val_acc: 0.9746\n", + "Epoch 14/20\n", + "60000/60000 [==============================] - 1s 23us/step - loss: 0.0042 - acc: 0.9990 - val_loss: 0.1156 - val_acc: 0.9770\n", + "Epoch 15/20\n", + "60000/60000 [==============================] - 1s 22us/step - loss: 0.0035 - acc: 0.9992 - val_loss: 0.1206 - val_acc: 0.9757\n", + "Epoch 16/20\n", + "60000/60000 [==============================] - 1s 22us/step - loss: 0.0040 - acc: 0.9990 - val_loss: 0.1252 - val_acc: 0.9757\n", + "Epoch 17/20\n", + "60000/60000 [==============================] - 1s 24us/step - loss: 0.0038 - acc: 0.9993 - val_loss: 0.1305 - val_acc: 0.9741\n", + "Epoch 18/20\n", + "60000/60000 [==============================] - 1s 23us/step - loss: 0.0032 - acc: 0.9994 - val_loss: 0.1391 - val_acc: 0.9723\n", + "Epoch 19/20\n", + "60000/60000 [==============================] - 1s 20us/step - loss: 0.0033 - acc: 0.9993 - val_loss: 0.1244 - val_acc: 0.9759\n", + "Epoch 20/20\n", + "60000/60000 [==============================] - 1s 18us/step - loss: 0.0031 - acc: 0.9993 - val_loss: 0.1263 - val_acc: 0.9770\n", + "The history has the following data: dict_keys(['val_loss', 'val_acc', 'loss', 'acc'])\n" + ] + }, + { + "data": { + "text/plain": [ + "[<matplotlib.lines.Line2D at 0x7fe6681f74e0>]" + ] + }, + "execution_count": 34, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7fe66b03b0f0>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# Solution:\n", + "num_epochs = 20\n", + "model_run = model.fit(X_train_prep, y_train_onehot, epochs=num_epochs,\n", + " batch_size=512, validation_data=(X_test_prep, y_test_onehot))\n", + "# Evaluating the model on test dataset\n", + "#print(\"The [loss, accuracy] on test dataset are: \" , model.evaluate(X_test_prep, y_test_onehot))\n", + "history_model = model_run.history\n", + "print(\"The history has the following data: \", history_model.keys())\n", + "\n", + "# Plotting the training and validation accuracy during the training\n", + "plt.plot(np.arange(1, num_epochs+1), history_model[\"acc\"], \"blue\")\n", + "\n", + "plt.plot(np.arange(1, num_epochs+1), history_model[\"val_acc\"], \"red\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Adding regularization" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Adding l2 regularization\n", + "# Building the keras model\n", + "from keras.models import Sequential\n", + "from keras.layers import Dense\n", + "from keras.regularizers import l2\n", + "\n", + "def mnist_model():\n", + " \n", + " model = Sequential()\n", + "\n", + " model.add(Dense(64, input_shape=(28*28,), activation=\"relu\", \n", + " kernel_regularizer=l2(0.01)))\n", + "\n", + " model.add(Dense(64, activation=\"relu\", \n", + " kernel_regularizer=l2(0.01)))\n", + "\n", + " model.add(Dense(10, activation=\"softmax\"))\n", + "\n", + " model.compile(loss=\"categorical_crossentropy\",\n", + " optimizer=\"rmsprop\", metrics=[\"accuracy\"])\n", + " return model\n", + "\n", + "model = mnist_model()\n", + "\n", + "num_epochs = 50\n", + "model_run = model.fit(X_train_prep, y_train_onehot, epochs=num_epochs,\n", + " batch_size=512)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(\"The [loss, accuracy] on test dataset are: \" , model.evaluate(X_test_prep, y_test_onehot))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Another way to add regularization and to make the network more robust we can add something called \"Dropout\". When we add dropout to a layer a specified percentage of units in that layer are switched off. \n", + "(MAKING MODEL SIMPLER)\n", + "\n", + "### Exercise: Add dropout instead of l2 regularization in the network above" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Adding dropout is easy in keras\n", + "# We import a layer called Dropout and add as follows\n", + "# model.add(Dropout(0.5)) to randomly drop 50% of the hidden units\n", + "\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Solution\n", + "# Adding Dropout\n", + "# Building the keras model\n", + "from keras.models import Sequential\n", + "from keras.layers import Dense, Dropout\n", + "\n", + "def mnist_model():\n", + " \n", + " model = Sequential()\n", + "\n", + " model.add(Dense(64, input_shape=(28*28,), activation=\"relu\"))\n", + " \n", + " model.add(Dropout(0.4))\n", + "\n", + " model.add(Dense(64, activation=\"relu\"))\n", + "\n", + " model.add(Dense(10, activation=\"softmax\"))\n", + "\n", + " model.compile(loss=\"categorical_crossentropy\",\n", + " optimizer=\"rmsprop\", metrics=[\"accuracy\"])\n", + " \n", + " return model\n", + "\n", + "model = mnist_model()\n", + "\n", + "num_epochs = 50\n", + "model_run = model.fit(X_train_prep, y_train_onehot, epochs=num_epochs,\n", + " batch_size=512)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(\"The [loss, accuracy] on test dataset are: \" , model.evaluate(X_test_prep, y_test_onehot))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Network Architecture\n", + "\n", + "The neural networks which we have seen till now are the simplest kind of neural networks.\n", + "There exist more sophisticated network architectures especially designed for specific applications.\n", + "Some of them are as follows:\n", + "\n", + "### Convolution Neural Networks (CNNs)\n", + "\n", + "These networks are used mostly for computer vision (EXAMPLES) like tasks. \n", + "One of the old CNN networks is shown below.\n", + "\n", + "<center>\n", + "<figure>\n", + "<img src=\"./images/neuralnets/CNN_lecun.png\" width=\"800\"/>\n", + "<figcaption>source: LeCun et al., Gradient-based learning applied to document recognition (1998).</figcaption>\n", + "</figure>\n", + "</center>\n", + "\n", + "CNNs consist of new type of layers like convolution layer and pooling layers.\n", + "\n", + "### Recurrent Neural Networks (RNNs)\n", + "\n", + "These are used for time-series data, speech recognition, translation etc.\n", + "\n", + "IMAGE HERE\n", + "\n", + "### Generative adversarial networks (GANs)\n", + "\n", + "GANs consist of 2 parts, a generative network and a discriminative network. The generative network produces data which is then fed to the discriminative network which judges if the new data belongs to a specified dataset. Then via feedback loops the generative network becomes better and better at creating images similar to the dataset the discriminative network is judging against. At the same time the discriminative network get better and better at identifyig **fake** instances which are not from the reference dataset. \n", + "\n", + "IMAGE HERE" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## CNN example" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "For this example we will work with a dataset called fashion-MNIST which is quite similar to the MNIST data above.\n", + "> Fashion-MNIST is a dataset of Zalando's article images—consisting of a training set of 60,000 examples and a test set of 10,000 examples. Each example is a 28x28 grayscale image, associated with a label from 10 classes. We intend Fashion-MNIST to serve as a direct drop-in replacement for the original MNIST dataset for benchmarking machine learning algorithms. It shares the same image size and structure of training and testing splits.\n", + "source: https://github.com/zalandoresearch/fashion-mnist\n", + "\n", + "The 10 classes of this dataset are:\n", + "\n", + "| Label| Item |\n", + "| --- | --- |\n", + "| 0 |\tT-shirt/top |\n", + "| 1\t| Trouser |\n", + "|2|\tPullover|\n", + "|3|\tDress|\n", + "|4|\tCoat|\n", + "|5|\tSandal|\n", + "|6|\tShirt|\n", + "|7|\tSneaker|\n", + "|8|\tBag|\n", + "|9|\tAnkle boot|" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": {}, + "outputs": [], + "source": [ + "# Loading the dataset in keras\n", + "# Later you can explore and play with other datasets with come with Keras\n", + "from keras.datasets import fashion_mnist\n", + "\n", + "# Loading the train and test data\n", + "\n", + "(X_train, y_train), (X_test, y_test) = fashion_mnist.load_data()\n", + "\n", + "items =['T-shirt/top', 'Trouser', \n", + " 'Pullover', 'Dress', \n", + " 'Coat', 'Sandal', \n", + " 'Shirt', 'Sneaker',\n", + " 'Bag', 'Ankle boot']" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "This item is a: T-shirt/top\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<matplotlib.figure.Figure at 0x7fe64931db38>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# We can see that the training set consists of 60,000 images of size 28x28 pixels\n", + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "i=np.random.randint(0,X_train.shape[0])\n", + "plt.imshow(X_train[i], cmap=\"gray_r\") ; \n", + "print(\"This item is a: \" , items[y_train[i]])" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(60000, 10)\n" + ] + } + ], + "source": [ + "# Also we need to reshape the input data such that each sample is a 4D matrix of dimension\n", + "# (num_samples, width, height, channels). Even though these images are grayscale we need to add\n", + "# channel dimension as this is expected by the Conv function\n", + "X_train_prep = X_train.reshape(X_train.shape[0],28,28,1)/255.\n", + "X_test_prep = X_test.reshape(X_test.shape[0],28,28,1)/255.\n", + "\n", + "from keras.utils.np_utils import to_categorical\n", + "\n", + "y_train_onehot = to_categorical(y_train, num_classes=10)\n", + "y_test_onehot = to_categorical(y_test, num_classes=10)\n", + "\n", + "print(y_train_onehot.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Creating a CNN similar to the one shown in the figure from LeCun paper\n", + "# In the original implementation Average pooling was used. However, we will use maxpooling as this \n", + "# is what us used in the more recent architectures and is found to be a better choice\n", + "# Convolution -> Pooling -> Convolution -> Pooling -> Flatten -> Dense -> Dense -> Output layer\n", + "from keras.models import Sequential\n", + "from keras.layers import Dense, Conv2D, MaxPool2D, Flatten, Dropout, BatchNormalization\n", + "\n", + "def simple_CNN():\n", + " \n", + " model = Sequential()\n", + " \n", + " model.add(Conv2D(6, (3,3), input_shape=(28,28,1), activation='relu'))\n", + " \n", + " model.add(MaxPool2D((2,2)))\n", + " \n", + " model.add(Conv2D(16, (3,3), activation='relu'))\n", + " \n", + " model.add(MaxPool2D((2,2)))\n", + " \n", + " model.add(Flatten())\n", + " \n", + " model.add(Dense(120, activation='relu'))\n", + " \n", + " model.add(Dense(84, activation='relu'))\n", + " \n", + " model.add(Dense(10, activation='softmax'))\n", + " \n", + " model.compile(loss=\"categorical_crossentropy\", optimizer=\"rmsprop\", metrics=[\"accuracy\"])\n", + " \n", + " return model\n", + "\n", + "model = simple_CNN()\n", + "model.summary()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "num_epochs = 10\n", + "model_run = model.fit(X_train_prep, y_train_onehot, epochs=num_epochs, \n", + " batch_size=64, validation_data=(X_test_prep, y_test_onehot))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Exercise: Use the above model or improve it (change number of filters, add more layers etc. on the MNIST example and see if you can get a better accuracy than what we achieved with a vanilla neural network)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Exercise: Load and play with the CIFAR10 dataset also included with Keras and build+train a simple CNN using it" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "#REMOVEBEGIN\n", + "# THE LINES BELOW ARE JUST FOR STYLING THE CONTENT ABOVE !\n", + "\n", + "from IPython import utils\n", + "from IPython.core.display import HTML\n", + "import os\n", + "def css_styling():\n", + " \"\"\"Load default custom.css file from ipython profile\"\"\"\n", + " base = utils.path.get_ipython_dir()\n", + " styles = \"\"\"<style>\n", + " \n", + " @import url('http://fonts.googleapis.com/css?family=Source+Code+Pro');\n", + " \n", + " @import url('http://fonts.googleapis.com/css?family=Kameron');\n", + " @import url('http://fonts.googleapis.com/css?family=Crimson+Text');\n", + " \n", + " @import url('http://fonts.googleapis.com/css?family=Lato');\n", + " @import url('http://fonts.googleapis.com/css?family=Source+Sans+Pro');\n", + " \n", + " @import url('http://fonts.googleapis.com/css?family=Lora'); \n", + "\n", + " \n", + " body {\n", + " font-family: 'Lora', Consolas, sans-serif;\n", + " \n", + " -webkit-print-color-adjust: exact important !;\n", + " \n", + " \n", + " \n", + " }\n", + " \n", + " .alert-block {\n", + " width: 95%;\n", + " margin: auto;\n", + " }\n", + " \n", + " .rendered_html code\n", + " {\n", + " color: black;\n", + " background: #eaf0ff;\n", + " background: #f5f5f5; \n", + " padding: 1pt;\n", + " font-family: 'Source Code Pro', Consolas, monocco, monospace;\n", + " }\n", + " \n", + " p {\n", + " line-height: 140%;\n", + " }\n", + " \n", + " strong code {\n", + " background: red;\n", + " }\n", + " \n", + " .rendered_html strong code\n", + " {\n", + " background: #f5f5f5;\n", + " }\n", + " \n", + " .CodeMirror pre {\n", + " font-family: 'Source Code Pro', monocco, Consolas, monocco, monospace;\n", + " }\n", + " \n", + " .cm-s-ipython span.cm-keyword {\n", + " font-weight: normal;\n", + " }\n", + " \n", + " strong {\n", + " background: #f5f5f5;\n", + " margin-top: 4pt;\n", + " margin-bottom: 4pt;\n", + " padding: 2pt;\n", + " border: 0.5px solid #a0a0a0;\n", + " font-weight: bold;\n", + " color: darkred;\n", + " }\n", + " \n", + " \n", + " div #notebook {\n", + " # font-size: 10pt; \n", + " line-height: 145%;\n", + " }\n", + " \n", + " li {\n", + " line-height: 145%;\n", + " }\n", + "\n", + " div.output_area pre {\n", + " background: #fff9d8 !important;\n", + " padding: 5pt;\n", + " \n", + " -webkit-print-color-adjust: exact; \n", + " \n", + " }\n", + " \n", + " \n", + " \n", + " h1, h2, h3, h4 {\n", + " font-family: Kameron, arial;\n", + " }\n", + " \n", + " div#maintoolbar {display: none !important;}\n", + " </style>\"\"\"\n", + " return HTML(styles)\n", + "css_styling()\n", + "#REMOVEEND" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.0" + }, + "latex_envs": { + "LaTeX_envs_menu_present": true, + "autoclose": false, + "autocomplete": true, + "bibliofile": "biblio.bib", + "cite_by": "apalike", + "current_citInitial": 1, + "eqLabelWithNumbers": true, + "eqNumInitial": 1, + "hotkeys": { + "equation": "Ctrl-E", + "itemize": "Ctrl-I" + }, + "labels_anchors": false, + "latex_user_defs": false, + "report_style_numbering": false, + "user_envs_cfg": false + } + }, + "nbformat": 4, + "nbformat_minor": 2 +}