This repository has been archived on 2023-06-18. You can view files and clone it, but cannot push or open issues or pull requests.
va-project/indexer/balance_sheet.ipynb

106 lines
52 KiB
Plaintext

{
"cells": [
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"ename": "AttributeError",
"evalue": "This method only works with the ScalarFormatter",
"output_type": "error",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)",
"File \u001b[0;32m~/opt/anaconda3/envs/visual-analytics/lib/python3.11/site-packages/matplotlib/axes/_base.py:3262\u001b[0m, in \u001b[0;36m_AxesBase.ticklabel_format\u001b[0;34m(self, axis, style, scilimits, useOffset, useLocale, useMathText)\u001b[0m\n\u001b[1;32m 3261\u001b[0m \u001b[39mif\u001b[39;00m is_sci_style \u001b[39mis\u001b[39;00m \u001b[39mnot\u001b[39;00m \u001b[39mNone\u001b[39;00m:\n\u001b[0;32m-> 3262\u001b[0m axis\u001b[39m.\u001b[39;49mmajor\u001b[39m.\u001b[39;49mformatter\u001b[39m.\u001b[39;49mset_scientific(is_sci_style)\n\u001b[1;32m 3263\u001b[0m \u001b[39mif\u001b[39;00m scilimits \u001b[39mis\u001b[39;00m \u001b[39mnot\u001b[39;00m \u001b[39mNone\u001b[39;00m:\n",
"\u001b[0;31mAttributeError\u001b[0m: 'FuncFormatter' object has no attribute 'set_scientific'",
"\nThe above exception was the direct cause of the following exception:\n",
"\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)",
"Cell \u001b[0;32mIn[22], line 42\u001b[0m\n\u001b[1;32m 39\u001b[0m plt\u001b[39m.\u001b[39mshow()\n\u001b[1;32m 41\u001b[0m ticker_list \u001b[39m=\u001b[39m [\u001b[39m'\u001b[39m\u001b[39mMETA\u001b[39m\u001b[39m'\u001b[39m, \u001b[39m'\u001b[39m\u001b[39mAAPL\u001b[39m\u001b[39m'\u001b[39m, \u001b[39m'\u001b[39m\u001b[39mKO\u001b[39m\u001b[39m'\u001b[39m]\n\u001b[0;32m---> 42\u001b[0m compare_balance_sheets(ticker_list)\n",
"Cell \u001b[0;32mIn[22], line 36\u001b[0m, in \u001b[0;36mcompare_balance_sheets\u001b[0;34m(ticker_list)\u001b[0m\n\u001b[1;32m 33\u001b[0m ax\u001b[39m.\u001b[39mgrid(\u001b[39mFalse\u001b[39;00m)\n\u001b[1;32m 35\u001b[0m \u001b[39m# Remove scientific notation\u001b[39;00m\n\u001b[0;32m---> 36\u001b[0m ax\u001b[39m.\u001b[39;49mticklabel_format(style\u001b[39m=\u001b[39;49m\u001b[39m'\u001b[39;49m\u001b[39mplain\u001b[39;49m\u001b[39m'\u001b[39;49m)\n\u001b[1;32m 38\u001b[0m plt\u001b[39m.\u001b[39mtight_layout() \u001b[39m# Adjust subplot spacing\u001b[39;00m\n\u001b[1;32m 39\u001b[0m plt\u001b[39m.\u001b[39mshow()\n",
"File \u001b[0;32m~/opt/anaconda3/envs/visual-analytics/lib/python3.11/site-packages/matplotlib/axes/_base.py:3272\u001b[0m, in \u001b[0;36m_AxesBase.ticklabel_format\u001b[0;34m(self, axis, style, scilimits, useOffset, useLocale, useMathText)\u001b[0m\n\u001b[1;32m 3270\u001b[0m axis\u001b[39m.\u001b[39mmajor\u001b[39m.\u001b[39mformatter\u001b[39m.\u001b[39mset_useMathText(useMathText)\n\u001b[1;32m 3271\u001b[0m \u001b[39mexcept\u001b[39;00m \u001b[39mAttributeError\u001b[39;00m \u001b[39mas\u001b[39;00m err:\n\u001b[0;32m-> 3272\u001b[0m \u001b[39mraise\u001b[39;00m \u001b[39mAttributeError\u001b[39;00m(\n\u001b[1;32m 3273\u001b[0m \u001b[39m\"\u001b[39m\u001b[39mThis method only works with the ScalarFormatter\u001b[39m\u001b[39m\"\u001b[39m) \u001b[39mfrom\u001b[39;00m \u001b[39merr\u001b[39;00m\n",
"\u001b[0;31mAttributeError\u001b[0m: This method only works with the ScalarFormatter"
]
},
{
"data": {
"image/png": "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1K8nyZgxY3L//fcnSR555JE888wzSZLTTjstkydPzvjx47PHHnskSWbMmJGVK1e+rxn/9vNLkqFDhyZ5KxT+29Oab7311rz55pvZYost8rOf/SxTpkzJzTffnI997GNp27Zt7rrrrqxfv77+2XV1denevXtGjx6dKVOm5Prrr892222XNm3a5Pbbb69/7uWXX57nn38+VVVVOffcc3PXXXflpz/9aWpqarJo0aL83//7f5Mk5557bk444YQG991///3p2bNn7r777vrQ+dJLL82UKVMyYcKE9O/fP1VVVfnjH/+YFStWvK/PCQAAAAAAAAAAKJPY+R1cc801GT58eLPc/8ILL2Tvvfd+z1NSATanXr16pXfv3kmSBx98MDNmzKiPWjcldm4Of/7zn/PQQw8lSfbYY4/stNNOSZLPf/7z9XvGjh37ns9ZvHhxFi5c2ODPqlWrPvB8v/71r5MkNTU1+clPfpJ99tkne+yxRy655JLstttuSZKJEydm5cqV6dq1azp06FB/b7du3dKjR48kycCBAzN79uzcfvvtOeOMM/KRj3wk22yzTbbffvskSV1dXZYtW9bo+VatWpU77rgjSbLttttm4MCBSRp+fuPGjWtwMvPWW2+dJFmzZk0eeeSRLFq0KB//+Mfzm9/8JrNnz86YMWNSVVXVYO/y5cvz6KOPZunSpRkwYEBuv/32PPHEE7nqqqvq57/zzjuTJPvuu28OPfTQdOzYMX379s0///M/J3nrBO9ly5alS5cu2Wqrrern6dq1a3r06JE2bdrUv1/yVgD+0ksvZaeddsp//Md/ZPbs2bn77rsb3AsAAAAAAAAAAHz4tW3pAUp044035sorr0y/fv2a/P5nnnkmJ598cpNEdgBNrX///nnllVfy8MMP1wetffr0Sc+ePd/z3osvvjhHHHFEk84zceLE+uD6ox/9aP7whz8keSue7dixY1atWpVHHnkkzz//fD760Y++43O++MUvZv78+Q3WRo0alaOOOup9z7ZkyZIsXLgwSbL33ntniy22qL9WVVWV/fbbL3Pnzs2bb76Z559/Pp/4xCfe9XlvvPFG7r///lx88cX5r//6r7z++usNrq9bt67RM9511131Jx3vuuuuefDBB+uv9erVK3/+85/zyiuv5MEHH8ygQYOSJMOHD8+0adPy1FNP5brrrst1112Xdu3a5ROf+EQOPvjg/Mu//Et9UHzaaafl0UcfzSuvvJIrr7wyV155ZTp27Jh99tknn/vc53LUUUeluro6S5YsydKlS5MkM2fOzAEHHLDBrOvWrcvcuXPTv3//d/x9Dj/88Nxxxx154IEHMnbs2IwdOzZt2rTJbrvtlsGDB+eYY45Jt27dGv05AQAAAAAAAAAA5RI7v82iRYty3nnn5bHHHqs/PbQp7//pT3+aa6+9NjvvvHMWLFjQFCMDNKkBAwZk4sSJeemll7J8+fIkedf4tDnV1dVl4sSJ9a9vu+223HbbbRvdO27cuJx99tmba7QkSdu2//u/0EqlssH1t5+WvLHrb/ff//3f+cpXvpI33ngjvXr1ytChQ7P33nvnkUceyW9+85v3PeP48ePrf37ooYfqT8n+W2PHjq2PnbfeeuuMHz8+999/f+6999488sgjmTdvXmbNmpVZs2ZlzJgxGT9+fDp16pQ+ffrk97//fSZPnpz77rsvM2fOrD+N+6GHHsqtt96aX/3qV2nTps0mzfu3gfffqq6uzi9+8YtMnz49U6ZMyYwZM/Lss89mzpw5mTNnTm666aaMHz++/kRsAAAAAAAAAADgw0/s/DZz5sxJly5dMmnSpPzkJz/Z4BTQe++9N1dddVWeffbZdO/ePYcddlhOPfXUVFdXb9L9f/zjH3PJJZekS5cuOfbYYzfb7wWwqQYMGFD/85IlSzZY25weeuihDf47+k5+97vf5cwzz6z/7/HfmjZtWlOOliTp1KlTampqsnjx4syePTurVq1Kx44dkyTr16/PjBkzkrwV6P711Om3R89vj6Gvu+66vPHGG0mSCRMmpGvXrkmSRx999H3PN2/evMycOXOT9k6bNi2vvfZaunXrlpdffjnPPfdcVq1alQsvvDDJWxHyz3/+81x//fWZN29e7rvvvhx++OF5/vnn88ILL2SLLbbIJZdckuStf/hzySWX5LbbbsusWbPyn//5n9l3332z9dZbZ+nSpdl///1z3XXX1b/3Cy+8kLZt22b77bevP038nT6nhQsX5tlnn82CBQty/vnnJ0lWrFiR8ePHZ9SoUXn99ddz22235ZRTTnnfnxsAAAAAAAAAAFAWsfPbDB48OIMHD97otT/84Q/5+te/nnPPPTef+cxn8tJLL+XCCy/MCy+8kCuuuOI970+Sm2++OUnqAziA0vTs2TN9+vTJyy+/XL+2qbHzsmXLsnDhwne8vu2226Zdu3abPMvbTyW+5pprMmTIkA32jBgxItOnT8+SJUsyefLkHHbYYZv8/KZw9NFH56c//WkWL16c008/PWeccUaqq6tz4403Zu7cuUmSf/7nf84WW2yRJGnfvn39vbNnz85rr72WffbZJytXrqxfHz9+fA455JA8/PDDDU62XrduXaNme/vnd9555230H9l897vfzYQJE/Lmm29m4sSJ+epXv5rvf//7eeihh1JVVZXFixfnH/7hH7J69eosXry4/r6/nmp96qmnZt68eenQoUN+8IMf5JOf/GSWLl1aH8q/fe/QoUMzevToPPDAA7n22mtz8MEH55VXXsn555+fV199NT169Mjdd9+dDh06NPicnnzyyXTq1Ck77bRTrr766owbNy5J8tJLL+XII49MkgZ/795+4jYAAAAAAAAAAPDhpwjaRNdee22OPvrofOlLX0qSfOQjH8kPf/jDjBgxIq+88kp69+7dwhMCNI3+/fvXx84f+chH0qNHj026b+TIkRk5cuQ7Xr/llluy++67b9Kzli5dmilTpiR5K5I+4IADNrrvmGOOyfTp05MkY8aM2eyx86mnnprZs2dn+vTpeeCBB/LAAw80uL7vvvvm7LPPrn+922671f981llnJUkefvjhHHLIIZk8eXKS5NJLL82ll166wXstXrw4O+ywwybNtXbt2txyyy1Jknbt2mXo0KEb3felL30pEyZMSJKMGzcuJ510Us4555yMGDEiS5YsyahRozJq1KgG9/Tt2zdDhgxJpVLJD37wg5xyyilZvXp1zjnnnA2e/w//8A/Zc889kySnnHJKpk2blvnz5+eyyy7LZZddVr+vqqoq3/rWt9KhQ4ckafD35K+fx7hx43LGGWdk+vTpefnll/Ozn/0sP/vZzxq8X69evXLUUUdt0mcEAAAAAAAAAAB8OFS19AAfFk899VTGjh2bffbZp/7PKaeckiR57rnnWng6gKbz9pOc+/fv3yIzTJo0KbW1tUmSI4444h1P6z3ooINSU1OTJHnkkUcyb968zTVikqS6ujo33HBDLrzwwnzyk59Mp06d0r59++y22245++yz88tf/jIdO3as3z906NAcddRRqampSfv27fN//s//yerVq/P5z38+F154YXbZZZe0b98+3bt3z8EHH5wb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oEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhFxc7XXHNNhg8f/q57/vu//ztf/epXM2DAgAwcODBf+9rX8uc//3kzTQgAAAAAAAAAAAAAbC7FxM433nhjrrzyynfds2TJkhx33HHZcsst8+tf/zo///nPs2TJkpx44olZs2bNZpoUAAAAAAAAAAAAANgc2rb0AIsWLcp5552Xxx57LDvttNO77p0yZUpWrVqViy66KO3bt0+SXHLJJTnggAMya9asDBw4cHOMDAAAAAAAAAAAAABsBi1+svOcOXPSpUuXTJo0KXvttde77h04cGB+8pOf1IfOb/fGG28014gAAAAAAAAAAAAAQAto8ZOdBw8enMGDB2/S3t69e6d3794N1v7jP/4j7du3T79+/ZpjPAAAAAAAAAAAAACghbT4yc4fxK9+9avcfPPN+eY3v5ltt922pccBAAAAAAAAAAAAAJpQi5/s/H7U1dXliiuuyE9/+tOcfPLJ+dd//deWHgkAAAAAAAAAAAAAaGIfutj5zTffzLnnnpvbb7893/nOd3LCCSe09EgAAAAAAAAAAAAAQDP40MXO3/nOdzJ58uRceumlOeyww1p6HAAAAAAAAAAAAACgmRQdO69bty6vv/56OnXqlA4dOmTixIm58847853vfCf9+/fP4sWL6/f+dQ8AAAAAAAAAAAAA8PehqqUHeDcLFizIoEGDcueddyZJbr/99iTJxRdfnEGDBjX489c9AAAAAAAAAAAAAMDfh6JOdr7ooosavO7du3eeeeaZ+tfXX3/95h4JAAAAAAAAAAAAAGghRZ/sDAAAAAAAAAAAAAC0XmJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACgSGJnAAAAAAAAAAAAAKBIYmcAAAAAAAAAAAAAoEhiZwAAAAAAAAAAAACg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7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABRJ7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABSpxWPn9evX58orr8z++++fvfbaK8cff3xefPHFd9y/ePHifPOb38yAAQMyYMCAfP3rX8/ChQs348QAAAAAAAAAAAAAwObQ4rHzNddck9/+9rcZOXJkxowZk0qlkpNOOim1tbUb3X/mmWdmwYIFueGGG3LDDTdk4cKFOfXUUzfz1AAAAAAAAAAAAABAc2vR2Lm2tjbXX399zjjjjBxwwAHZbbfdctlll2XRokWZPHnyBvuXLVuWRx99NCeddFL69u2bvn375qtf/WrmzJmTJUuWtMBvAAAAAAAAAAAAAAA0lxaNnefOnZuVK1dmv/32q1/r3Llz+vbtm0cffXSD/e3bt88WW2yRW265JStWrMiKFSty6623Zscdd0yXLl025+gAAAAAAAAAAAAAQDNr25JvvnDhwiRJz549G6xvt912WbBgwQb727dvn3/7t3/Lj370o3zqU59KpVJJTU1Nfv3rX6eqqkW7bQAAAAAAAAAAAACgibVoIbxq1aokSXV1dYP19u3bZ82aNRvsr6uryzPPPJN99tknN910U375y19m++23z2mnnZYVK1ZslpkBAAAAAAAAAAAAgM2jRU927tChQ5Kktra2/uckWbNmTTp27LjB/jvuuCM333xz7r333my11VZJkmuvvTYHHnhgJkyYkBEjRmyewQEAAAAAAAAAAACAZteiJzv37NkzSfLqq682WH/11VfTo0ePDfY/9thj2WmnnepD5yTp0qVLdtppp8ybN69ZZwUAAAAAAAAAAAAANq8WjZ132223bLXVVpkxY0b92rJly/LUU0/lU5/61Ab7e/bsmRdffDFr1qypX1u1alVeeeWV7LDDDptlZgAAAAAAAAAAAABg82jR2Lm6ujrDhg3Lj3/840ydOjVz587NmWeemR49euTggw/OunXrsnjx4qxevTpJcuSRRyZJvvGNb2Tu3Ln1+6urq3PUUUe14G8CAAAAAAAAAAAAADS1Fo2dk+RrX/tajj766Jx//vn50pe+lDZt2uQXv/hFqqurs2DBggwaNCh33nlnkmS77bbLzTffnLq6uowYMSLHHXdc2rVrl9/85jfp3LlzC/8mAAAAAAAAAAAAAEBTatvSA7Rp0yZnnXVWzjrrrA2u9e7dO88880yDtZ133jnXXnvt5hoPAAAAAAAAAAAAAGghLX6yMwAAAAAAAAAAAADAxoidAQAAAAAAAAAAAIAiiZ0BAAAAAAAAAAAAgCKJnQEAAAAAAAAAAACAIomdAQAAAAAAAAAAAIAiiZ0BAAAAAAAAAAAAgCKJnQEAAAAAAAAAAACAIomdAQAAAAAAAAAAAIAiiZ0BAAAAAAAAAAAAgCKJnQEAAAAAAAAAAACAIomdAQAAAAAAAAAAAIAiiZ0BAAAAAAAAAAAAgCK1/aAPeOaZZzJv3rx07949e+65Z6qq9NMAAAAAAAAAAAAAwAe3SbFzbW1tLrnkkjz99NP59a9/nSRZu3ZtvvnNb2by5Mn1+3beeedcfvnl2WWXXZpnWgAAAAAAAAAAAACg1dikY5gvuOCCjB49OnPmzKlfGz16dO65554kyWc+85nsueeeefbZZ3PaaaflzTffbJ5pAQAAAAAAAAAAAIBW4z1j55UrV+a2225L586d8/Of/7x+/eabb06lUslxxx2X6667LmPGjMlhhx2Wl156KTNmzGjWoQEAAAAAAAAAAACAv39t32vDJz/5yVQqlSxfvjzDhw9vcK2uri7XX399brjhhgbrJ554YiqVSp5++ummnRYAAAAAAAAAAAAAaDXe82TnW265JUnStWvXTJo0KVOmTEn//v1TV1eXj3/845k6dWqmTJmSO+64Ix/96EeTJOedd16mTJnSrIMDAAAAAAAAAAAAAH/f3vNk59122y2f/vSn8+CDD+aEE07IlltumXnz5qVSqeTkk0/O9ttvn9mzZ+fMM8/MokWL0rlz5wwdOjRbb731ZhgfAAAAAAAAAAAAAPh79Z4nOyfJRRddlE9+8pN59dVX88ILL6RDhw45++yzc/DBBydJli1bloULF6Zz5865+OKLhc4AAAAAAAAAAAAAwAf2nic7J0lNTU1uuummvPzyy1m2bFl23HHHbLnllvXXd91111x44YUZMmRIunbt2mzDAgAAAAAAAAAAAACtxybFzn/Vp0+fja736NEjX/jCF5pkIAAAAAAAAAAAAACAJKlq6QEAAAAAAAAAAAAAADZG7AwAAAAAAAAAAAAAFEnsDAAAAAAAAAAAAAAUSewMAAAAAAAAAAAAABSp7fu9cfny5Vm5cmXWr1+/wbVevXp9oKEAAAAAAAAAAAAAABodO7/44os5++yz88QTT2z0eqVSyVNPPfWBBwMAAAAAAAAAAAAAWrdGx84/+MEP8vjjjzfDKAAAAAAAAAAAAAAA/6vRsfOsWbNSqVTy5S9/OQcddFA6duyYSqXSHLMBAAAAAAAAAAAAAK1Yo2PnbbbZJitWrMj3vve95pgHAAAAAAAAAAAAACBJUtXYG4YNG5a//OUvmTNnTnPMAwAAAAAAAAAAAACQ5H2c7NyhQ4f06tUrw4YNy3777Zdu3bqlTZs29dcrlUouuOCCJh0SAAAAAAAAAAAAAGh9Gh07jxw5MpVKJXV1dbnvvvsaXKurqxM7AwAAAAAAAAAAAABNotGxc79+/ZpjDgAAAAAAAAAAAACABhodO48ePbo55gAAAAAAAAAAAAAAaKCqpQcAAAAAAAAAAAAAANiYTTrZea+99kqPHj1y9913Z88990ylUnnHvZVKJY8//nhTzQcAAAAAAAAAAAAAtFKbFDuvWbMma9asSZLU1ta+6953C6EBAAAAAAAAAAAAADbVJsXOo0aNSseOHet/BgAAAAAAAAAAAABobpsUO//TP/3TRn8GAAAAAAAAAAAAAGguVS09AAAAAAAAAAAAAADAxoidAQAAAAAAAAAAAIAiiZ0BAAAAAAAAAAAAgCKJnQEAAAAAAAAAAACAIjU6dr7lllty9913b7C+bt26jB49OuPHj2+SwQAAAAAAAAAAAACA1q1tY28455xz0rNnz3zuc59rsF5VVZUrrrgi1dXVOfroo5tsQAAAAAAAAAAAAACgdXrP2Lmuri7HHXdcXn755fq1xYsXZ8iQIQ32rV69OitWrMhWW23V9FMCAAAAAAAAAAAAAK3Oe8bOlUolw4YNy+mnn17/et26dZk/f/5G9x9wwAFNOyEAAAAAAAAAAAAA0Cq9Z+ycJAcddFC+//3vZ8WKFfn3f//3dOrUKSeddFL99UqlkrZt26ZPnz757Gc/22zDAgAAAAAAAAAAAACtxybFzkny5S9/OUlSW1ubrbbaKv/6r//aXDMBAAAAAAAAAAAAAGx67PxXp59+epJk+fLlWblyZdavX7/Bnl69en3wyQAAAAAAAAAAAACAVq3RsfNLL72U73znO3niiSc2er1SqeSpp576wIMBAAAAAAAAAAAAAK1bo2PnCy64II8//ngzjAIAAAAAAAAAAAAA8L8aHTvPmjUrlUolX/7yl3PQQQelY8eOqVQqzTEbAAAAAAAAAAAAANCKNTp23mabbbJixYp873vfa455AAAAAAAAAAAAAACSJFWNvWHYsGH5y1/+kjlz5jTHPAAAAAAAAAAAAAAASd7Hyc4dOnRIr169MmzYsOy3337p1q1b2rRpU3+9UqnkggsuaNIhAQAAAAAAAAAAAIDWp9Gx88iRI1OpVFJXV5f77ruvwbW6ujqxMwAAAAAAAAAAAADQJBodO/fr16855gAAAAAAAAAAAAAAaKDRsfPo0aObYw4AAAAAAAAAAAAAgAaqWnoAAAAAAAAAAAAAAICNafTJzrvvvvu7Xq9UKnnqqafe90AAAAAAAAAAAAAAAMn7iJ3r6uo+0HUAAAAAAAAAAAAAgE3R6Nj53//93xu8Xrt2bZYvX5477rgjCxcuzI9//OMmGw4AAAAAAAAAAAAAaL0aHTv/4z/+40bXjz766Bx44IG59dZbs++++37gwQAAAAAAAAAAAACA1q2qqR7Uvn37tG/fPnfddVdTPRIAAAAAAAAAAAAAaMUafbLzz3/+8wav6+rqUltbm1mzZmXBggXp3Llzkw0HAAAAAAAAAAAAALRejY6dL7300lQqlQ3W6+rqkiSHHnroB58KAAAAAAAAAAAAAGj1Gh079+rVa4O1qqqqdO7cOZ/+9Kdz+umnN8lgAAAAAAAAAAAAAEDr1ujYedq0ac0xBwAAAAAAAAAAAABAA42Onf+qtrY2s2bNyv/8z/+kpqYm++yzT9q1a9eUswEAAAAAAAAAAAAArdj7ip2nTp2aCy64IP/zP/9Tv7bddttl5MiR2X///ZtsOAAAAAAAAAAAAACg9apq7A2zZs3K17/+9bz22mupq6tLktTV1WXRokU59dRT8+STTzb5kAAAAAAAAAAAAABA69Po2PknP/lJ1q5dmwMPPDCTJ0/OU089lcmTJ+fAAw/Mm2++mauuuqo55gQAAAAAAAAAAAAAWplGx86PP/542rVrl8suuyx9+vRJpVJJnz59cumll6Zt27aZNWtWc8wJAAAAAAAAAAAAALQyjY6dk6Rt27Zp165dg7Xq6uq0bdu2SYYCAAAAAAAAAAAAAGh07Lzbbrtl9erVGTlyZNasWZMkqa2tzYUXXpjVq1enb9++TT4kAAAAAAAAAAAAAND6NPoo5uOOOy6PPfZYfvvb32bixInp1q1bXnvttdTW1qZSqWTEiBHNMScAAAAAAAAAAAAA0Mo0+mTngw46KOeee27atm2bNWvWZP78+VmzZk2qqqpy5pln5qCDDmqOOQEAAAAAAAAAAACAVqbRJzsnyYgRIzJ06NDcd999ee2119KtW7fsv//+qampaer5AAAAAAAAAAAAAIBW6n3FzknStWvXHHXUUU05CwAAAAAAAAAAAABAvUbHzuvWrcvo0aPz6KOPZuXKlVm/fn2D65VKJb/85S+bbEAAAAAAAAAAAAAAoHVqdOz84x//ODfeeGOSpK6uboPrlUrlAw8FAAAAAAAAAAAAANDo2PmWW25Jkuyyyy75+Mc/nurq6qaeCQB4F+vWr0ubqjYtPQatiL9zAAAAAAAAAAC0lEbHzrW1tenYsWMmTpyYdu3aNcdMAMC7aFPVJl+Z+JU8vfjplh6FVmD3mt1z01E3tfQYAAAAAAAAAAC0Uo2OnQ855JDcdtttefXVV7P99ts3x0wAwHt4evHTmb1wdkuPAQAAAAAAAAAA0KwaHTt/97vfzeOPP55/+Zd/yZAhQ9KtW7dUVVU12HP66ac32YAAAAAAAAAAAAAAQOvU6Nj5zjvvzLx585Ik48aN2+gesTMAAAAAAAAAAAAA8EE1Ona+5pprkiRt2rRJjx490q5duyYfCgAAAAAAAAAAAACg0bHzsmXL0rZt29xzzz3p2bNnc8wEAAAAAAAAAAAAAJCqxt5wwAEHpG3bttl6662bYRwAAAAAAAAAAAAAgLc0+mTnYcOG5dFHH82IESNyxBFHpEuXLqmqathM/+M//mOTDQgAAAAAAAAAAAAAtE6Njp2HDx+eJHn99dfzn//5nxtcr1QqYmcAAAAAAAAAAAAA4ANrdOxcV1f3ga4DAAAAAAAAAAAAAGyKRsfOc+fObY45AAAAAAAAAAAAAAAaqGqqB9XW1ubWW2/NsGHDmuqRAAAAAAAAAAAAAEAr1uiTnf/Ws88+mzFjxmTSpElZtmxZU8wEAAAAAAAAAAAAAPD+Yuc1a9bk97//fcaMGZPHH388SVJXV5ck+djHPtZkwwEAAAAAAAAAAAAArVejYuc//elPGTt2bCZNmpTly5fXB86VSiXHH398jjjiiOy6667NMigAAAAAAAAAAAAA0LpsUuw8ceLEjB07Nk888USSt05xrq6uzpAhQ/L73/8+SXLGGWekY8eOzTcpAAAAAAAAAAAAANCqbFLs/N3vfjeVSiV1dXXp27dvjjrqqAwdOjRdunSpj50BAAAAAAAAAAAAAJpSVWM2d+jQIXvttVf23HPPdOnSpblmAgAAAAAAAAAAAADYtNh5xIgR2WabbbJ69er89re/zRe/+MUcfvjhue6665p7PgAAAAAAAAAAAACgldqk2Pncc8/NH/7wh1x++eX5zGc+k0qlkmeffTaXXnppKpVKkuTWW2/N0qVLm3NWAAAAAAAAAAAAAKAV2aTYOUnatm2bQw89NNddd13uvffenHHGGdl+++1TV1eXurq6/PCHP8ygQYNy4oknNue8AAAAAAAAAAAAAEArscmx89t17949p512WqZMmZIbbrghhx12WKqrq7N27do8+OCDTT0jAAAAAAAAAAAAANAKtf2gDxg4cGAGDhyYZcuWZdKkSZkwYUJTzAUAAAAAAAAAAAAAtHLv62TnjencuXOGDRuW3/3ud031SAAAAAAAAAAAAACgFWuy2BkAAAAAAAAAAAAAoCmJnQEAAAAAAAAAAACAIomdAQAAAAAAAAAAAIAiiZ0BAAAAAAAAAAAAgCKJnQEAAAAAAAAAAACAIomdAQAAAAAAAAAAAIAiiZ0BAAAAAAAAAAAAgCKJnQEAAAAAAAAAAACAIomdAQAAAAAAAAAAAIAiiZ0BAAAAAAAAAAAAgCKJnQEAAAAAAAAAAACAIrV47Lx+/fpceeWV2X///bPXXnvl+OOPz4svvviO+/9/e3ceZmVd+H38wzYDiogYm2DqT3tAXFhkVRZzeVqsNLTMxHJfSklJXMrM0NJf6sMjGW6PaKYmBqLmFq6hpoOiaWpQmRoqW4oi28wA8/zBxfk5AsaQzNzA63Vdc13Dfb7nPt+D9z1nvvg+96murs7ll1+eQYMGpUePHhk2bFj+8pe/1OOMAQAAAAAAAAAAAID60OCx89ixY3Pbbbfloosuyvjx49OoUaOccMIJqaqqWuP4Cy64IBMmTMiFF16YiRMnpnXr1jnhhBPywQcf1PPMAQAAAAAAAAAAAIANqUFj56qqqowbNy6nnXZahgwZkq5du2b06NGZM2dOHnzwwdXGz5w5MxMmTMjFF1+cfffdNzvvvHN+9rOfpaysLC+99FIDPAMAAAAAAAAAAAAAYENp0Nh5+vTpWbRoUfr371/a1qpVq3Tr1i3PPPPMauOfeOKJtGrVKoMHD641/pFHHsmAAQPqZc4AAAAAAAAAAAAAQP1o0Nh59uzZSZKOHTvW2t6uXbvMmjVrtfGvv/56tt9++0yePDlDhw7NPvvskxNOOCGvvvpqvcwXAAAAAAAAAAAAAKg/DRo7L1myJElSVlZWa3t5eXkqKytXG79w4cL885//zNixYzNixIhcddVVadq0ab75zW/mnXfeqZc5AwAAAAAAAAAAAAD1o0Fj5+bNmydJqqqqam2vrKxMixYtVhvfrFmzfPDBBxk9enQGDhyYPffcM6NHj06STJo0acNPGAAAAAAAAAAAAACoNw0aO3fs2DFJMnfu3Frb586dmw4dOqw2vkOHDmnatGl23nnn0rbmzZtn++23z5tvvrlhJwsAAAAAAAAAAAAA1KsGjZ27du2ali1bpqKiorRtwYIFeeWVV9K7d+/Vxvfu3TvLli3Ln//859K2pUuXZubMmdlhhx3qZc4AAAAAAAAAAAAAQP1o2pAPXlZWlmHDhuWyyy5LmzZt0qlTp1x66aXp0KFDDjzwwCxfvjzvvvtuttpqqzRv3jy9e/fO3nvvnbPPPjujRo1K69atM2bMmDRp0iQHH3xwQz4VAAAAAAAAAAAAAOAT1qBXdk6S4cOH57DDDst5552XI444Ik2aNMn111+fsrKyzJo1KwMHDsx9991XGv+LX/wiffv2zamnnprDDjssCxcuzE033ZQ2bdo04LMAAAAAAAAAAAAAAD5pDXpl5yRp0qRJRo4cmZEjR652W+fOnTNjxoxa21q2bJkLLrggF1xwQT3NEAAAAAAAAAAAAABoCA1+ZWcAAAAAAAAAAAAAgDUROwMAAAAAAAAAAAAAhSR2BgAAAAAAAAAAAAAKSewMAAAAAAAAAAAAABSS2BkAAAAAAAAAAAAAKCSxMwAAAAAAAAAAAABQSGJnAAAAAAAAAAAAAKCQxM4AAAAAAAAAAAAAQCGJnQEAAAAAAAAAAACAQhI7AwAAAAAAAAAAAACFJHYGAAAAAAAAAAAAAApJ7AwAAAAAAAAAAAAAFJLYGQAAAAAAAAAAAAAoJLEzAAAAAAAAAAAAAFBIYmcAAAAAAAAAAAAAoJDEzgAAAAAAAAAAAABAIYmdAQAAAAAAAAAAAIBCEjsDAAAAAAAAAAAAAIUkdgYAAAAAAAAAAAAACknsDAAAAAAAAAAAAAAUktgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZwAAAAAAAAAAAACgkMTOAAAAAAAAAAAAAEAhiZ0BAAAAAAAAAAAAgEISOwMAAAAAAAAAAAAAhSR2BgAAAAAAAAAAAAAKSewMAAAAAAAAAAAAABSS2BkAAAAAAAAAAAAAKCSxMwAAAAAAAAAAAABQSGJnAAAAAAAAAAAAAKCQxM4AAAAAAAAAAAAAQCGJnQEAAAAAAAAAAACAQhI7AwAAAAAAAAAAAACFJHYGAAAAAAAAAAAAAApJ7AwAAAAAAAAAAAAAFJLYGQAAAAAAAAAAAAAoJLEzAAAAAAAAAAAAAFBIYmcAAAAAAAAAAAAAoJDEzgAAAAAAAAAAAABAIYmdAQAAAAAAAAAAAIBCEjsDAAAAAAAAAAAAAIUkdgYAAAAAAAAAAAAACknsDAAAAAAAAAAAAAAUktgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZwAAAAAAAAAAAACgkMTOAAAAAAAAAAAAAEAhiZ0BAAAAAAAAAAAAgEISOwMAAAAAAAAAAAAAhSR2BgAAAAAAAAAAAAAKSewMAAAAAAAAAAAAABSS2BkAAAAAAAAAAAAAKCSxMwAAAAAAAAAAAABQSGJnAAAAAAAAAAAAAKCQxM4AAAAAAAAAAAAAQCGJnQEAAAAAAAAAAACAQhI7AwAAAAAAAAAAAACFJHYGAAAAAAAAAAAAAApJ7AwAAAAAAAAAAAAAFJLYGQAAAAAAAAAAAAAoJLEzAAAAAAAAAAAAAFBIYmcAAAAAAAAAAAAAoJDEzgAAAAAAAAAAAABAIYmdAQAAAAAAAAAAAIBCEjsDAAAAAAAAAAAAAIUkdgYAAAAAAAAAAAAACknsDAAAAAAAAAAAAAAUktgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZwAAAAAAAAAAAACgkMTOAAAAAAAAAAAAAEAhiZ0BAAAAAAAAAAAAgEISOwMAAAAAAAAAAAAAhSR2BgAAAAAAAAAAAAAKSewMAAAAAAAAAAAAABSS2BkAAAAAAAAAAAAAKCSxMwAAAAAAAAAAAABQSGJnAAAAAAAAAAAAAKCQxM4AAAAAAAAAAAAAQCGJnQEAAAAAAAAAAACAQhI7AwAAAAAAAAAAAACFJHYGAAAAAAAAAAAAAApJ7AwAAAAAAAAAAAAAFJLYGQAAAAAAAAAAAAAoJLEzAAAAAAAAAAAAAFBIYmcAAAAAAAAAAAAAoJDEzgAAAAAAAAAAAABAIYmdAQAAAAAAAAAAAIBCEjsDAAAAAAAAAAAAAIUkdgYAAAAAAAAAAAAACknsDAAAAAAAAAAAAAAUktgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZwAAAAAAAAAAAACgkMTOAAAAAAAAAAAAAEAhiZ0BAAAAAAAAAAAAgEISOwMAAAAAAAAAAAAAhSR2BgAAAAAAAAAAAAAKSewMAAAAAAAAAAAAABSS2BkAAAAAAAAAAAAAKCSxMwAAAAAAAAAAAABQSGJnAAAAAAAAAAAAAKCQxM4AAAAAAAAAAAAAQCGJnQEAAAAAAAAAAACAQhI7AwAAAAAAAAAAAACFJHYGAAAAAAAAAAAAAApJ7AwAAAAAAAAAAAAAFJLYGQAAAAAAAAAAAAAoJLEzAAAAAAAAAAAAAFBIYmcAAAAAAAAAAAAAoJDEzgAAAAAAAAAAAABAIYmdAQAAAAAAAAAAAIBCEjsDAAAAAAAAAAAAAIUkdgYAAAAAAAAAAAAACknsDAAAAAAAAAAAAAAUktgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZwAAAAAAAAAAAACgkMTOAAAAAAAAAAAAAEAhNXjsvGLFiowZMyaDBg1K9+7dc+yxx+aNN95Yp/v+7ne/S5cuXfLmm29u4FkCAAAAAAAAAAAAAPWtwWPnsWPH5rbbbstFF12U8ePHp1GjRjnhhBNSVVX1sfd766238pOf/KSeZgkAAAAAAAAAAAAA1LcGjZ2rqqoybty4nHbaaRkyZEi6du2a0aNHZ86cOXnwwQfXer8VK1Zk5MiR2W233epxtgAAAAAAAAAAAABAfWrQ2Hn69OlZtGhR+vfvX9rWqlWrdOvWLc8888xa73f11Venuro6J510Un1MEwAAAAAAAAAAAABoAE0b8sFnz56dJOnYsWOt7e3atcusWbPWeJ8XX3wx48aNy4QJEzJnzpwNPkcAAAAAAAAAAAAAoGE06JWdlyxZkiQpKyurtb28vDyVlZWrjV+8eHHOPPPMnHnmmdlxxx3rY4oAAAAAAAAAAAAAQANp0Ni5efPmSZKqqqpa2ysrK9OiRYvVxl900UXZcccd841vfKNe5gcAAAAAAAAAAAAANJymDfngHTt2TJLMnTs3n/70p0vb586dm65du642fuLEiSkrK0vPnj2TJMuXL0+SfOlLX8pXvvKVjBo1qh5mDQAAAAAAAAAAAADUhwaNnbt27ZqWLVumoqKiFDsvWLAgr7zySoYNG7ba+MmTJ9f68wsvvJCRI0fm2muvzc4771wvcwYAAAAAAAAAAAAA6keDxs5lZWUZNmxYLrvssrRp0yadOnXKpZdemg4dOuTAAw/M8uXL8+6772arrbZK8+bNs8MOO9S6/+zZs5Mk2223XbbddtuGeAoAAAAAAAAAAAAAwAbSuKEnMHz48Bx22GE577zzcsQRR6RJkya5/vrrU1ZWllmzZmXgwIG57777GnqaAAAAAAAAAAAAAEA9a9ArOydJkyZNMnLkyIwcOXK12zp37pwZM2as9b79+vX72NsBAAAAAAAAAAAAgI1Xg1/ZGQAAAAAAAAAAAABgTcTOAAAAAAAAAAAAAEAhiZ0BAAAAAAAAAAAAgEISOwMAAAAAAAAAAAAAhSR2BgAAAAAAAAAAAAAKSewMAAAAAAAAAAAAABSS2BkAAAAAAAAAAAAAKCSxMwAAAAAAAAAAAABQSGJnAAAAAAAAAAAAAKCQxM4AAAAAAAAAAAAAQCGJnQEAAAAAAAAAAACAQhI7AwAAAAAAAAAAAACFJHYGAAAAAAAAAAAAAApJ7AwAAAAAAAAAAAAAFJLYGQAAAAAAAAAAAAAoJLEzAAAAAAAAAAAAAFBIYmcAAAAAAAAAAAAAoJDEzgAAAAAAAAAAAABAIYmdAQAAAAAAAAAAAIBCEjsDAAAAAAAAAAAAAIUkdgYAAAAAAAAAAAAACknsDAAAAAAAAAAAAAAUktgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZwAAAAAAAAAAAACgkMTOAAAAAAAAAAAAAEAhiZ0BAAAAAAAAAAAAgEISOwMAAAAAAAAAAAAAhSR2BgAAAAAAAAAAAAAKSewMAAAAAAAAAAAAABSS2BkAAAAAAAAAAAAAKCSxMwAAAAAAAAAAAABQSGJnAAAAAAAAAAAAAKCQxM4AAAAAAAAAAAAAQCGJnQEAAAAAAAAAAACAQhI7AwAAAAAAAAAAAACFJHYGAAAAAAAAAAAAAApJ7AwAAAAAAAAAAAAAFJLYGQAAAAAAAAAAAAAoJLEzAAAAAAAAAAAAAFBIYmcAAAAAAAAAAAAAoJDEzgAAAAAAAAAAAABAIYmdAQAAAAAAAAAAAIBCEjsDAAAAAAAAAAAAAIUkdgYAAAAAAAAAAAAACknsDAAAAAAAAAAAAAAUktgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZwAAAAAAAAAAAACgkMTOAAAAAAAAAAAAAEAhiZ0BAAAAAAAAAAAAgEISOwMAAAAAAAAAAAAAhSR2BgAAAAAAAAAAAAAKSewMAAAAAAAAAAAAABSS2BkAAAAAAAAAAAAAKCSxMwAAAAAAAAAAAABQSGJnAAAAAAAAAAAAAKCQxM4AAAAAAAAAAAAAQCGJnQEAAAAAAAAAAACAQhI7AwAAAAAAAAAAAACFJHYGAAAAAAAAAAAAAApJ7AwAAAAAAAAAAAAAFJLYGQAAAAAAAAAAAAAoJLEzAAAAAAAAAAAAAFBIYmcAAAAAAAAAAAAAoJDEzgAAAAAAAAAAAABAIYmdAQAAAAAAAAAAAIBCEjsDAAAAAAAAAAAAAIUkdgYAAAAAAAAAAAAACknsDAAAAAAAAAAAAAAUktgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZwAAAAAAAAAAAACgkMTOAAAAAAAAAAAAAEAhiZ0BAAAAAAAAAAAAgEISOwMAAAAAAAAAAAAAhSR2BgAAAAAAAAAAAAAKSewMAAAAAAAAAAAAABSS2BkAAAAAAAAAAAAAKCSxMwAAAAAAAAAAAABQSGJnAAAAAAAAAAAAAKCQxM4AAAAAAAAAAAAAQCGJnQEAAAAAAAAAAACAQhI7AwAAAAAAAAAAAACFJHYGAAAAAAAAAAAAAApJ7AwAAAAAAAAAAAAAFJLYGQAAAAAAAAAAAAAoJLEzAAAAAAAAAAAAAFBIYmcAAAAAAAAAAAAAoJDEzgAAAAAAAAAAAABAIYmdAQAAAAAAAAAAAIBCEjsDAAAAAAAAAAAAAIUkdgYAAAAAAAAAAAAACknsDAAAAAAAAAAAAAAUktgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZwAAAAAAAAAAAACgkMTOAAAAAAAAAAAAAEAhiZ0BAAAAAAAAAAAAgEISOwMAAAAAAAAAAAAAhSR2BgAAAAAAAAAAAAAKSewMAAAAAAAAAAAAABSS2BkAAAAAAAAAAAAAKCSxMwAAAAAAAAAAAABQSGJnAAAAAAAAAAAAAKCQxM4AAAAAAAAAAAAAQCGJnQEAAAAAAAAAAACAQhI7AwAAAAAAAAAAAACFJHYGAAAAAAAAAAAAAApJ7AwAAAAAAAAAAAAAFJLYGQAAAAAAAAAAAAAoJLEzAAAAAAAAAAAAAFBIYmcAAAAAAAAAAAAAoJDEzgAAAAAAAAAAAABAIYmdAQAAAAAAAAAAAIBCEjsDAAAAAAAAAAAAAIUkdgYAAAAAAAAAAAAACknsDAAAAAAAAAAAAAAUktgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEgNHjuvWLEiY8aMyaBBg9K9e/cce+yxeeONN9Y6/m9/+1tOPPHE9OvXLwMGDMjw4cPz9ttv1+OMAQAAAAAAAAAAAID60OCx89ixY3Pbbbfloosuyvjx49OoUaOccMIJqaqqWm3s/Pnzc8wxx2TLLbfMzTffnOuuuy7z58/P8ccfn8rKygaYPQAAAAAAAAAAAACwoTRo7FxVVZVx48bltNNOy5AhQ9K1a9eMHj06c+bMyYMPPrja+IceeihLlizJJZdcks985jPZfffdc+mll+bVV1/Nc8891wDPAAAAAAAAAAAAAADYUBo0dp4+fXoWLVqU/v37l7a1atUq3bp1yzPPPLPa+AEDBuSXv/xlysvLV7vt/fff36BzBQAAAAAAAAAAAADqV9OGfPDZs2cnSTp27Fhre7t27TJr1qzVxnfu3DmdO3eute2aa65JeXl5+vTps+EmCgAAAAAAAAAAAADUuwa9svOSJUuSJGVlZbW2l5eXp7Ky8t/e/6abbsqtt96aESNGZNttt90gcwQAAAAAAAAAAAAAGkaDXtm5efPmSZKqqqrS90lSWVmZFi1arPV+NTU1ueKKK3LVVVflpJNOytFHH72hpwoAAAAAAAAAAAAA1LMGvbJzx44dkyRz586ttX3u3Lnp0KHDGu9TXV2dkSNH5uqrr85ZZ52VESNGbPB5AgAAAAAAAAAAAAD1r0Fj565du6Zly5apqKgobVuwYEFeeeWV9O7de433Oeuss/LAAw/k8ssvz3HHHVdfUwUAAAAAAAAAAAAA6lnThnzwsrKyDBs2LJdddlnatGmTTp065dJLL02HDh1y4IEHZvny5Xn33Xez1VZbpXnz5rnjjjty33335ayzzkrfvn0zb9680r5WjQEAAAAAAAAAAAAANg0NemXnJBk+fHgOO+ywnHfeeTniiCPSpEmTXH/99SkrK8usWbMycODA3HfffUmSe+65J0ny85//PAMHDqz1tWoMAAAAAAAAAAAAALBpaNArOydJkyZNMnLkyIwcOXK12zp37pwZM2aU/jxu3Lj6nBoAAAAAAAAAAAAA0IAa/MrOAAAAAAAAAAAAAABrInYGAAAAAAAAAAAAAApJ7AwAAAAAAAAAAAAAFJLYGQAAAAAAAAAAAAAoJLEzAAAAAAAAAAAAAFBIYmcAAAAAAAAAAAAAoJDEzgAAAAAAAAAAAABAIYmdAQAAAAAAAAAAAIBCEjsDAAAAAAAAAAAAAIUkdgYAAAAAAAAAAAAACknsDAAAAAAAAAAAAAAUktgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZwAAAAAAAAAAAACgkMTOAAAAAAAAAAAAAEAhiZ0BAAAAAAAAAAAAgEISOwMAAAAAAAAAAAAAhSR2BgAAAAAAAAAAAAAKSewMAAAAAAAAAAAAABSS2BkAAAAAAAAAAAAAKCSxMwAAAAAAAAAAAABQSGJnAAAAAAAAAAAAAKCQxM4AAAAAAAAAAAAAQCGJnQEAAAAAAAAAAACAQhI7AwAAAAAAAAAAAACFJHYGAAAAAAAAAAAAAApJ7AwAAAAAAAAAAAAAFJLYGQAAAAAAAAAAAAAoJLEzAAAAAAAAAAAAAFBIYmcAAAAAAAAAAAAAoJDEzgAAAAAAAAAAAABAIYmdAQAAAAAAAAAAAIBCEjsDAAAAAAAAAAAAAIUkdgYAAAAAAAAAAAAACknsDAAAAAAAAAAAAAAUktgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZwAAAAAAAAAAAACgkMTOAAAAAAAAAAAAAEAhiZ0BAAAAAAAAAAAAgEISOwMAAAAAAAAAAAAAhSR2BgAAAAAAAAAAAAAKSewMAAAAAAAAAAAAABSS2BkAAAAAAAAAAAAAKCSxMwAAAAAAAAAAAABQSGJnAAAAAAAAAAAAAKCQxM4AAAAAAAAAAAAAQCGJnQEAAAAAAAAAAACAQhI7AwAAAAAAAAAAAACFJHYGAAAAAAAAAAAAAApJ7AwAAAAAAAAAAAAAFJLYGQAAAAAAAAAAAAAoJLEzAAAAAAAAAAAAAFBIYmcAAAAAAAAAAAAAoJDEzgAAAAAAAAAAAABAIYmdAQAAAAAAAAAAAIBCEjsDAAAAAAAAAAAAAIUkdgY2CstXLG/oKbCZccwBAAAAAAAAAAA0vKYNPQGAddGkcZMceceR+cu8vzT0VNgM7Np219wy9JaGngYAAAAAAAAAAMBmT+wMbDT+Mu8veX728w09DQAAAAAAAAAAAKCeNG7oCQAAAAAAAAAAAAAArInYGQAAAAAAAAAAAAAoJLEzAAAAAAAAAAAAAFBIYmcAAAAAAAAAAAAAoJDEzgAAAAAAAAAAAABAIYmdAQAAAAAAAAAAAIBCEjsDAAAAAAAAAAAAAIUkdgYAAAAAAAAAAAAACknsDAAAAAAAAAAAAAAUktgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZwAAAAAAAAAAAACgkMTOAAAAAAAAAAAAAEAhiZ0BAAAAAAAAAAAAgEISOwMAAAAAAAAAAAAAhSR2BgAAAAAAAAAAAAAKSewMAAAAAAAAAAAAABSS2BkAAAAAAAAAAAAAKCSxMwAAAAAAAAAAAABQSGJnAAAAAAAAAAAAAKCQxM4AAAAAAAAAAAAAQCGJnQEAAAAAAAAAAACAQhI7AwAAAAAAAAAAAACFJHYGAAAAAAAAAAAAAApJ7AwAAAAAAAAAAAAAFJLYGQAAAAAAAAAAAAAoJLEzAAAAAAAAAAAAAFBIYmcAAAAAAAAAAAAAoJDEzgAAAAAAAAAAAABAIYmdAQAAAAAAAAAAAIBCEjsDAAAAAAAAAAAAAIUkdgYAAAAAAAAAAAAACknsDAAAAAAAAAAAAAAUktgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZwAAAAAAAAAAAACgkMTOAAAAAAAAAAAAAEAhiZ0BAAAAAAAAAAAAgEISOwMAAAAAAAAAAAAAhSR2BgAAAAAAAAAAAAAKSewMAAAAAAAAAAAAABSS2BkAAAAAAAAAAAAAKCSxMwAAAAAAAAAAAABQSGJnAAAAAAAAAAAAAKCQxM4AAAAAAAAAAAAAQCGJnQEAAAAAAAAAAACAQhI7AwAAAAAAAAAAAACFJHYGAAAAAAAAAAAAAApJ7AwAAAAAAAAAAAAAFJLYGQAAAAAAAAAAAAAoJLEzAAAAAAAAAAAAAFBIYmcAAAAAAAAAAAAAoJDEzgAAAAAAAAAAAABAIYmdAQAAAAAAAAAAAIBCEjsDAAAAAAAAAAAAAIUkdgYAAAAAAAAAAAAACknsDAAAAAAAAAAAAAAUktgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZwAAAAAAAAAAAACgkBo8dl6xYkXGjBmTQYMGpXv37jn22GPzxhtvrHX8/Pnz8/3vfz99+vRJnz598qMf/SiLFy+uxxkDAAAAAAAAAAAAAPWhwWPnsWPH5rbbbstFF12U8ePHp1GjRjnhhBNSVVW1xvHDhw/PzJkzc+ONN2bMmDF58skn85Of/KSeZw0AAAAAAAAAAAAAbGgNGjtXVVVl3LhxOe200zJkyJB07do1o0ePzpw5c/Lggw+uNv7555/P1KlTc/HFF2e33XbLgAEDMmrUqNx1112ZM2dOAzwDAAAAAAAAAAAAAGBDadDYefr06Vm0aFH69+9f2taqVat069YtzzzzzGrjn3322bRt2zY777xzaVvfvn3TqFGjTJs2rV7mDABAcSxfsbyhp8BmxjEHAAAAAAAAAPWraUM++OzZs5MkHTt2rLW9Xbt2mTVr1mrj58yZs9rYsrKytG7deo3j18XcuXOzfPny7L///ut1/w2pelF1uqzo0tDTYDNQ3bg6+99evHPgo5wT1JeN4ZxwPlBfNobz4b2l72XZimUNPQ02A00bN03r5q0behqrmTVrVpo0adLQ04AkxV5jAwAAfBzra4rE+hoAANiYbYg1doPGzkuWLEmyMlj+sPLy8rz//vtrHP/RsavGV1ZWrtccysvLU1VVtV733dDabdmuoacAheKcgP/hfID/UcT4FOpT06ZN17hOgoZQ5DU2AADAx7G+pkisrwEAgI3ZhlhjN2js3Lx58yRJVVVV6fskqaysTIsWLdY4fk2LusrKymyxxRbrNYdnn312ve4HAAAA1GaNDQAAAP8562sAAIDaGjfkg3fs2DHJyo/h+bC5c+emQ4cOq43v0KHDamOrqqry3nvvpX379htuogAAAAAAAAAAAABAvWvQ2Llr165p2bJlKioqStsWLFiQV155Jb17915tfJ8+fTJ79uy88cYbpW2r7turV68NP2EAAAAAAAAAAAAAoN40bcgHLysry7Bhw3LZZZelTZs26dSpUy699NJ06NAhBx54YJYvX5533303W221VZo3b57u3bunV69eOeOMM3LBBRdk8eLF+fGPf5xDDjnElZ0BAAAAAAAAAAAAYBPTqKampqYhJ7B8+fL8n//zf3LHHXdk6dKl6dOnT84///x07tw5b775Zvbff/9cfPHFGTp0aJLknXfeyU9+8pM8/vjjKS8vz+c///mce+65KS8vb8inAQAAAAAAAAAAAAB8who8dgYAAAAAAAAAAAAAWJPGDT0BAAAAAAAAAAAAAIA1ETsDAAAAAAAAAAAAAIUkdgYAAAAAAAAAAAAACknsDAAAAAAAAAAAAAAUktgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZ+rVihUrGnoK9Wpze7588jalY2hTei5svDbG43BjnDObjiIef0WcEwAAAAAAAACw4YidWatzzjknXbp0+div/fbbb532VVNTkwkTJuT73/9+nedx1FFHpUuXLjn//PPXePtXv/rVdOnSJV27ds0///nPOu9/Q5gxY0a+9a1v5e23327oqVCPinzOfHQeu+66a/baa698/etfz6RJk+r8GGt7nLV59tlnM3To0PV6HBrGY489luOPPz79+vXL7rvvns9+9rM5//zzN9qfa++++27OP//83H333Wu8/eGHHy6dH2eddVY9z27Nqqqqcv311+dnP/tZQ0+FdbA5nDO/+MUvVns92WOPPbLvvvvmBz/4wXo914qKitK+5s2b97FjFy1alMsvvzz/7//9vzo/DvDJWbFiRcaMGZNBgwale/fuOfbYY/PGG2+sdfz8+fPz/e9/P3369EmfPn3yox/9KIsXL67HGbMpq+vx+Le//S0nnnhi+vXrlwEDBmT48OEb7Ws1xVPX4/HDfve736VLly558803N/As2VzU9Xisrq7O5ZdfnkGDBqVHjx4ZNmxY/vKXv9TjjNmU1fV4nDdvXkaMGJF+/fqlX79++d73vpfZs2fX44zZXIwdOzZHHXXUx46xnmFDsr6maKyxKRJrbIrEGpsiscamqOprjS12Zq223nrrtG/fPu3bt0/btm1L29u0abPG7R/n0ksvzQ9/+MP861//+kTn+Je//CWvvPJKkpVx6O233/6J7n99zJgxI1/96ldTUVHR0FOhnm0M50zr1q3Trl27tGrVKosWLcoLL7yQc845JxdffPEn+jgf9oc//CFHHnmkX+A3IhdffHFOOumkPP7441mwYEHKy8vz9ttvZ/z48Tn44IPz97//vaGnWGcHHXRQxo8fv9Yrwk6YMKH0/QMPPJD333+/vqa2ViNHjszPf/7zLFy4sKGnwr+xuZ0zTZs2Tfv27fOpT30qjRs3zqxZszJx4sQceuih6/yPjevj29/+dq699tpUVlZusMcA/r2xY8fmtttuy0UXXZTx48enUaNGOeGEE1JVVbXG8cOHD8/MmTNz4403ZsyYMXnyySfzk5/8pJ5nzaaqLsfj/Pnzc8wxx2TLLbfMzTffnOuuuy7z58/P8ccf77WFT0Rdfz6u8tZbb/m5yCeursfjBRdckAkTJuTCCy/MxIkT07p165xwwgn54IMP6nnmbIrqejyeccYZmTVrVm644YbccMMNmT17dr7zne/U86zZ1K1an/w71jNsSNbXFI01NkVijU2RWGNTJNbYFFF9rrHFzqzVueeemylTpmTKlCm57bbbStuvuuqq0vbx48ev0742VKj129/+NklSXl6eJJk0aVKqq6s3yGOtqyVLlmT58uUNOgcaxsZwzpx//vl5/PHHU1FRkalTp+bwww9PsvKFZ+rUqRvkMYWaG5e77rorN954Y5LkhBNOyLRp0zJt2rT8+te/TuvWrbNgwYKcd955DTvJ9fBxx+G8efMyZcqUJCtfTyorK3PXXXfV19TWyrmzcdgcz5ntt98+U6ZMyZNPPpkXXnghv/71r7Ptttvm3Xff3aDP1TkBDa+qqirjxo3LaaedliFDhqRr164ZPXp05syZkwcffHC18c8//3ymTp2aiy++OLvttlsGDBiQUaNG5a677sqcOXMa4BmwKanr8fjQQw9lyZIlueSSS/KZz3wmu+++ey699NK8+uqree655xrgGbApqevxuMqKFSsycuTI7LbbbvU4WzZ1dT0eZ86cmQkTJuTiiy/Ovvvum5133jk/+9nPUlZWlpdeeqkBngGbkroejwsWLMgzzzyTE044Id26dUu3bt1y4okn5uWXX878+fMb4BmwqZkzZ06OP/74XHHFFdlpp50+dqz1DBuS9TVFY41NkVhjUyTW2BSJNTZF0xBrbLEz/7Fnn302xx9/fPr06ZMePXrkG9/4Rh555JHS7eecc04p8Jw6dWq6dOlSuurxSy+9lOOOOy79+/fP7rvvniFDhuSCCy5Yp5ilsrIy99xzT5Lk7LPPTrNmzfKvf/0rDz/88Gpjn3zyyQwbNiz9+vVLjx498vnPfz7XXnttampqSmNef/31fO9738ugQYNKH8l+/vnn57333qu1r0cffTRDhw7NHnvskQEDBuTss8/O3Llzk6z8KPZV8WiS7L///jnnnHPqtH82fQ11znxUq1at8uMf/zidOnVKklohdlVVVS677LIMGTIku+++ez7/+c/nxhtvrHXOfNiVV16ZffbZJz179sx3vvOdvPXWW0mSO+64IyNGjCiN69KlS37xi1/Uea7Un+uuuy5J8tnPfjZnnnlmtthiiyRJ3759c/bZZ2fQoEHZd999U11dnf322y9dunTJtddeW7r/vffemy5duqRLly6lbUcddVS6dOmSMWPG5Nhjj03Pnj0zYsSIvPnmm6Wx9957bw444ID069cvv//975Mkzz33XI466qjsueee6dOnT0499dT84x//KO23oqIiXbp0Sb9+/fLaa6/luOOOS/fu3TN48ODS80hWHner3sl47rnnZr/99qv1nCdNmpRly5blv/7rv3LEEUckyRo/KWDhwoW55JJLcsABB2TPPffM3nvvnZNPPjnTp0+vNe6WW27Jl7/85fTs2TO9e/fO17/+9dUWFwsWLMiPf/zjDBgwIHvssUcOPvjgWoH1UUcdlSeeeKI0vw9/3Na67J/6szmeMx/Vt2/fnHHGGUlWvm699tprpdv+3Zw+7O9//3uOPPLI7LHHHjnwwANzyy23lG7bb7/9Svu98sora/19AfVn+vTpWbRoUfr371/a1qpVq3Tr1i3PPPPMauOfffbZtG3bNjvvvHNpW9++fdOoUaNMmzatXubMpquux+OAAQPyy1/+svRm6Q8rwqd6sHGr6/G4ytVXX53q6uqcdNJJ9TFNNhN1PR6feOKJtGrVKoMHD641/pFHHsmAAQPqZc5suup6PJaXl2eLLbbInXfemYULF2bhwoW56667suOOO2brrbeuz6mziXr55Zez9dZb5+6770737t0/dqz1DBuS9TVFY41NkVhjUyTW2BSJNTZF0xBr7KbrPVtIMnny5Jx++ulZvnx5mjVrliZNmuT555/PKaeckvPOOy9HHXVUtt5662yxxRZZvHhxmjVrljZt2qSsrCzvvPNOjj322Lz//vtp0aJFtthii8yePTu/+c1vUlNT828vUz558uS8//77adWqVQ477LA8/fTTmTx5cm6//fZ8/vOfL42bPn16TjrppFRXV2eLLbZIWVlZXnvttVx++eWprKzMaaedlsrKyhx99NGZNWtWmjVrlq222iqzZ8/O+PHj89prr+XXv/51kuSBBx7I6aefnpqamrRq1SoLFy7MnXfemWnTpuXOO+9MWVlZ2rRpk3fffTdJ0rZt22y99dbrvH82fQ15zqxJkyZN0q9fv9xxxx3505/+VNo+fPjwPProo2ncuHFatWqV119/PRdffHHmzJmTs88+u9Y+7r777ixZsiQtW7bM4sWL8/DDD2f69Om5++6706JFi7Ru3boU9bdv3z4tW7b8T/4K2YDmzZuXv/3tb0mSAw44YLXbhw4dmqFDh673/lcFns2aNUvXrl1r3Xb22WenvLw8S5cuTY8ePfL888/nW9/6Vqqrq7Pllltm2bJlefDBB/PMM89k0qRJ2W677Ur3rayszLBhw7J48eJUVVVlzpw5ueyyy9K1a9cMGjQo7du3L70TbOutt07btm1rPfbEiROTJF/96lez77775sYbb8zf/va3PPfcc+nVq1dp3A9/+MM88MADady4cemKvY8++mief/75PPDAA9lmm21yyy23ZNSoUUmS1q1bp6qqKi+88EKGDx+ecePGZcCAAamqqsrRRx+dl19+OU2bNk3Lli0zffr0nHXWWfnggw8ybNiwbLPNNikrK0tVVVVatGiRVq1apWnTpuu0f+rP5nrOrMk+++xT+v6FF17ITjvtVKc5Jckpp5yS5cuXp6amJv/85z8zatSoLF++PN/61rfStm3bzJkzJ8uWLcuWW27ptQQayOzZs5MkHTt2rLW9Xbt2mTVr1mrj58yZs9rYsrKytG7deo3joS7qejx27tw5nTt3rrXtmmuuSXl5efr06bPhJspmoa7HY5K8+OKLGTduXCZMmOBqfHyi6no8vv7669l+++0zefLkXHvttZkzZ066deuWc845p9b/fID1Udfjsby8PD/96U8zatSo9O7dO40aNUrbtm1z8803p3Fj1+7hP7fffvv92zd1r2I9w4ZkfU3RWGNTJNbYFIk1NkVijU3RNMQa25HLequqqsoFF1yQ5cuX57Of/WwqKiry7LPPlq5s/POf/zxz5szJueeemy9/+ctJkp49e2bKlCnp2bNnXnvttey6667ZZ5998vTTT2fq1Kk59thjk6y8dPm/M2HChCTJF7/4xZSXl+fQQw9Nkvzxj3/MzJkzS+OefPLJVFdXp0ePHnn22WczderUXHDBBRk4cGCaNWuWJPnrX/+aWbNmpaysLE8++WSeeuqp/Pa3v81ee+2VnXbaKQsXLkxNTU3++7//OzU1NTnvvPPyzDPPZOrUqdlnn30yc+bM3HrrrenZs2euuuqq0mPfdtttOffcc9dp/2z6GvqcWZtPfepTSZJ//etfSZKnnnoqjz76aLbZZptMnjw5FRUVueuuu1JeXp5f/epXqy0Qq6ur8+tf/zrTpk3Lddddl0aNGuWtt97KnXfemS984Qs5//zzS2OnTJmSY445Zr3nyob14V8gPvpLxiehcePGuffee1NRUVG6gvIq/fr1S0VFRaZMmZL27dvn0ksvTXV1dY499tjSz+6hQ4fmvffeyzXXXFPrvkuWLEn//v1TUVGR3//+96Ur6/7hD39IsvK4KysrS1L7yunJynePvf7662nSpEkOPvjg/K//9b+y++67J1n96s5TpkxJsvKd4U899VQef/zxDB48OIMHDy6dF6vGHHfccamoqMjUqVPzzW9+M/vvv38WLFiQJLnrrrvy8ssvZ6eddsrjjz+eioqK3HDDDUmSK664IpWVlRkzZkz69u2bJPn85z+fKVOmpEOHDuu0f+rP5njOrM2q15JkZQSepE5zSlZeDWTV71d77713kuSqq67KihUrMn78+Gy//fZJkmOOOaZ0LgD1a8mSJUlS+hmxSnl5eSorK9c4/qNjP2481EVdj8ePuummm3LrrbdmxIgR2XbbbTfIHNl81PV4XLx4cc4888yceeaZ2XHHHetjimxG6no8Lly4MP/85z8zduzYjBgxIldddVWaNm2ab37zm3nnnXfqZc5suup6PNbU1GTGjBnp2bNnbrnllvzqV79Kp06d8t3vfte/oVPvrGfYkKyvKRprbIrEGpsiscamSKyx2Zh9UmsaV3ZmvT333HOlF+Mf/vCH2XLLLZOs/LjzSZMmpaqqKlOmTMnXvva1Nd6/d+/e+dWvfpWlS5fmxRdfzAsvvJCKiookyaJFiz72sWfOnFkau+qKiYMGDUq7du0yd+7c/Pa3v82IESOSJLvuumuS5E9/+lOGDRuWAQMGpE+fPrnqqqtKJ9GnP/3pbLnlllm0aFG+/vWvZ/DgwaUxqy7d/9prr+Xtt99OsvKdqas+7n3VXP/4xz/mxBNPXON812X/bPoa8pz5OI0aNUqSLF++PMnK2DlZ+Yv4kUceWRq3bNmyLF++PE8//XQOPvjg0vZ99tmnFGUOHjw4vXr1yrRp00rnHBuPFStWlL6vqan5xPe/1157ZYcddkiy8hfwD3+U2cEHH5ymTZtm2223zdKlS0tXGp80aVLuvffeJMnSpUuTrPx5+1HHHHNMysrK8ulPfzq77rprpk2btk7nxao3zuy9995p3759kuTQQw/NSy+9lPvvvz8/+MEP0qpVqyQp7fecc87JkCFD0rt371xwwQXp1KlTaX+77rprHnvssdx888157bXX0q9fv3zta19Lt27dSmOefvrpJCvfeXnIIYfUms+CBQvy5z//Ob17917jfNdl/9SfzfGcWRcrVqxYrzmdcsopad68eZLkxBNPzB//+Me8++67mTlzZunvAWhYq87Rqqqq0vfJyivGt2jRYo3jq6qqVtteWVlZeqMFrK+6Ho+r1NTU5IorrshVV12Vk046KUcfffSGniqbgboejxdddFF23HHHfOMb36i3ObL5qOvx2KxZs3zwwQcZPXp06SpTo0ePzpAhQzJp0qQcf/zx9TNxNkl1PR7vvffe3HrrrXn00UdLn+hz9dVX57Of/WwmTpyYb3/72/UzcYj1DBuW9TVFY41NkVhjUyTW2BSJNTYbs09qTSN2Zr2tugpso0aNaoVeLVq0yKc+9am8/fbbH/vOpKVLl+bCCy/M7373u1RWVmb77bcvhb//LhiaOHFiaczXv/711W6/4447Mnz48DRt2jR77713Lr744lxzzTV57rnn8txzzyVJWrdunbPOOiuHHnpott5661x//fW57LLLMm3atNx000256aab0qxZsxx++OE577zzMn/+/NL+V12x8MNWfVzAmqzL/lcFp2y6GvKc+TjvvvtukpTeab3qWK+url7jx/x8dNtH36HdoUOHJPFOsI1Qu3btSt+v7aPyZs2ale7du9f6mfXh42/ZsmVr3X/btm3X6bb333+/FN9/+GfvKmv6efvhq8qu+kX+350XCxcuzAMPPJAkefzxx9OlS5daty9dujR33313KdofPXp0Lrnkkjz88MOZNGlSJk2alGRl8H/ZZZelTZs2+c53vpNly5ZlwoQJeeSRR/LII48kSXbaaaf8/Oc/z5577ll6TkuWLCm9+/LDPu7jtdZl/9Sfze2c+Tgfftw2bdr8x3Na9eaDJPnggw/We17AJ2vVVeznzp2bT3/606Xtc+fOTdeuXVcb36FDhzz00EO1tlVVVeW9996rdZ7D+qjr8ZisXOOce+65ueeee3LWWWfluOOOq5e5sumr6/E4ceLElJWVpWfPnkn+583HX/rSl/KVr3wlo0aNqodZs6lan9frpk2b1vo43ebNm2f77bfPm2++ueEnzCatrsfjtGnTstNOO5X+J2yy8t/Wd9ppp7z++usbfL7wYdYzbEjW1xSNNTZFYo1NkVhjUyTW2GzMPqk1TeNPemJsPlYFKTU1NXnrrbdK25csWVKKOleFOGsKeX/5y19mwoQJ2WmnnfLYY4/loYceWusVbT9sxYoVpcBsbebNm1cKwJLkkEMOyaRJkzJ58uT89Kc/zQEHHJD33nsvP/rRj0pRWc+ePXPNNdfkj3/8Y8aMGZOjjjoqNTU1ufnmm3P//ffXioruueeezJgxIzNmzMjzzz+fGTNmlIK5tUXL/27/bPoa6pz5d5599tkkSY8ePWrNYffddy8d5zNmzMhzzz2XGTNmrHYF8w8/l+R/3gzQunXrtT4Ximm77bYr/VL88MMPr3b7b37zmxx++OE54IADUllZWfpv++F3X31c5P7hdxd+3G3bbrttmjRpkmTllfRXHYN/+tOfMn369Pz5z39e7f6rxq/Nmo7De++9d42x8YeNHz++9H379u1z4YUXpqKiIjfccENOPfXUfOpTn8qTTz6ZMWPGJFl59d3hw4fnsccey29/+9uce+656datW1577bWcc845Sf7nHPvc5z5Xem6vvPJKXnjhhcyYMSMHHXTQWue8Lvun/mxu58zHWfVakqz8nWd95vTh15MPv7HM6wkUR9euXdOyZcvSp4skKz+V4JVXXlnjpxL06dMns2fPzhtvvFHatuq+vXr12vATZpNW1+MxSc4666w88MADufzyy/1PWD5RdT0eJ0+enHvuuSd33nln7rzzzlx00UVJkmuvvTbf+9736m3ebJrqejz27t07y5Ytq/U7+tKlS33CCp+Iuh6PHTt2zBtvvFHr40uXLFmSN9980/FIvbOeYUOyvqZorLEpEmtsisQamyKxxmZj9kmtacTOrLdevXqVrir7s5/9LIsWLUp1dXUuvvji0iXzhwwZkiRp2nTlRcRXfTz6smXLMmPGjCQrrya47bbb5v3338/dd9+dpPbHwn/U448/Xroa4N133126WvOqr+7duyf5n0DtkksuSY8ePXLUUUelTZs2Oeyww0ofDbF8+fK8//77uf/++9O7d+8MGTIk8+fPz+c+97mceuqp2WabbZKsvPJtp06dSlfjvfrqq1NVVZUFCxbkkEMOSe/evTNu3LgkteOhxYsXZ9myZeu0fzZ9DXXOrE1lZWVGjx6d1157LUlyxBFHJFn5ApMkL7/8culNA4899lj22muv7LfffrVeeJLkmWeeyeTJk5MkTz31VCl4W/XL1IfPiUWLFn3sVUxpeKti9kcffTRXXHFFKQZ+6KGHcv311ydZeSyXl5eXjudp06YlWXlM3XPPPev1uB+OGJs2bVp69/W4ceOycOHCVFZW5rjjjkuvXr3ys5/9rM77X3Ucrvq5nCQTJkxIkhx00EGrvZaMHTs2SfLXv/41f/rTn/L2229n4MCB2WuvvfLggw9m7733zsknn5w99tgjycqf4zU1NTn88MPTo0ePXHLJJenWrVuOPvrofOELX0iS0pXbV51jf/jDH/Liiy8mSW677bb07NkzX/jCF0pXsV31c2Dx4sWpqanJ8uXL12n/1K/N6ZxZm5dffjlXXHFFkpXH9y677LJec7riiivywQcfpLKyMtdee22SlYvwzp07l57nus4J2DDKysoybNiwXHbZZXn44Yczffr0nHHGGenQoUMOPPDALF++PPPmzcvSpUuTJN27d0+vXr1yxhln5MUXX8zTTz+dH//4xznkkENceYr/WF2PxzvuuCP33XdfzjjjjPTt2zfz5s0rfa0aA+urrsfjDjvsUOtr1c/E7bbbbrVPT4K6quvx2Lt37+y99945++yz8+yzz+bvf/97zjrrrDRp0iQHH3xwAz8bNnZ1PR4POeSQJMnpp5+e6dOnl8aXlZVl6NChDfhM2BxYz1CfrK8pGmtsisQamyKxxqZIrLHZmGyoNY3YmfVWVlaW8847L40aNcojjzySfv36pXfv3hk/fnwaNWqUH/zgB6Ur2W6//fZJVsYwe+21Vx577LFSlf/888+nX79+2WeffUrxz4IFC9b6uBMnTkyS7LrrrunSpUu23HLLWl9f+tKXkiR//OMf8+abb+ZLX/pSGjdunJdeeikDBgxI//79S1Fnjx49sssuu2TQoEHZdttts3Dhwhx00EEZMGBA9tlnn8ybNy+tW7fO/vvvn8aNG+f0009PsvLKzn369MnAgQPzxhtvpEmTJvnf//t/J1n5S3PjxitPrcMPPzwjRoxYp/2z6Wuoc+bDRo0alcGDB2fgwIHp3bt3rr766iTJkUcemf79+ydJ6fisqanJKaeckr59++bkk09OTU1Ndt9999Xe4dWxY8ecdtpp6dWrV44++uisWLEi//Vf/1U6F1c9lyQZNGhQLr300vX9K6QefO1rX8s3vvGNJMnYsWOz1157pVevXvnud7+bqqqq7LTTTjn33HOTrDxWkpWR+7777pt99903s2bN+kTm8b3vfS9NmzZNRUVF+vfvn/79+2fatGlZsWJF6diqi1XH4SWXXJJ99903f/3rX0uh8Re/+MXVXkuGDBmSNm3aJFn55pntttuuFCmPHDkyffv2Te/evfPoo4+mUaNGGTp0aBo1apRDDjkky5cvz29+85v06dMnffr0yeWXX54kOeyww5IkX/nKV7LLLrtk6dKl+drXvpa+fftm1KhRWbFiRfbdd99stdVWSVIKPH//+99nr732yl//+td12j/1a3M5Zz5s5syZGTx4cAYPHpx+/fpl6NCheeONN7L11lvnwgsvXK85NW/ePK+++mr69++fPn365IknnkiSnHbaaaUxq86JG2+8MX369Fnn1z7gkzV8+PAcdthhOe+883LEEUekSZMmuf7661NWVpZZs2Zl4MCBue+++5KsfGPGlVdemc6dO+fb3/52Tj/99AwePDgXXHBBwz4JNhl1OR5XvcHo5z//eQYOHFjra9UY+E/U5XiEDa2ux+MvfvGL9O3bN6eeemoOO+ywLFy4MDfddFNpXQz/ibocj+3atcutt96ampqafPvb384xxxyTZs2a5Te/+U1atWrVwM+ETZ31DPXN+pqiscamSKyxKRJrbIrEGpuNxYZa0zSqqamp2QDzZRPz5ptvloLc8ePHp0ePHqXbKioqct111+WFF15IVVVVdt1115xyyimlK9Qmyfz58zNy5Mg8++yzadmyZS666KLsvffeufTSS3Pfffdl8eLF2WWXXfLtb387Z599dpYtW5bbb7893bt3z1FHHZWpU6fm8MMPLx3o1dXVOeOMM3LyySevNtd58+ZlyJAhWb58eU4++eScccYZefnll/PLX/4yL774YhYsWJD27dtn//33z8knn1z6aPR58+Zl7Nix+cMf/pB58+alTZs26dGjR4YPH56dd965tP/7778/119/ff72t7+lvLw8vXr1yplnnplddtmlNOaaa67Jr371qyxZsiRf/OIX89Of/nSd98+moSjnzKhRo5IkXbp0qTW/Ro0aZcstt8xnPvOZfOMb3yi9o2uVRYsW5corr8wDDzyQefPmpV27dvnyl7+c7373uykrK0uS0uP88Ic/zOLFi3PzzTdn0aJFGTRoUH74wx/WeufNhRdemHvuuSfLli3L0UcfXSteo5h+//vf59Zbb83LL7+cZcuWpVOnTjnggANyzDHHlH5uLlmyJD/96U/zwAMPpHHjxvnc5z6Xgw8+OEceeWSSlK5GvqZjMvn48yRZGYSOHTs2L730Uho3bpzddtstp59+ein8r6ioyLe+9a0kyRNPPJG2bdsmSY477rg88cQT+epXv5pLLrkkSTJlypRcdNFFmTVrVnbccccMGDAgv/rVr7LlllvmqaeeSnl5+Wp/Bz/5yU9y6623pkWLFnn88cfTvHnz3HDDDbnrrrvy1ltvpXnz5tlll11y4oknZvDgwaX7PfDAA7nxxhvz6quvZtmyZdl+++1z2GGH5cgjjyxdLfedd97J//2//zePPvpo3nvvvXTq1Clf//rXc+yxx5au2Dtz5syMHDkyr7zySrbddttceeWV2W233dZp/9S/Tf2cmTRpUq666qpceeWVtR6zWbNmadu2bQYOHJhTTjkl22233XrNqXXr1rnlllsyatSo/OlPf0r79u1z8skn59BDDy3t66WXXsoPfvCDvPbaa9luu+1y0003uXINAAAAAAAAAGwGxM4AAAAAAAAAAAAAQCE1bugJAAAAAAAAAAAAAACsidgZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZwAAAAAAAAAAAACgkMTOAAAAAAAAAAAAAEAhiZ0BAAAAAAAAAAAAgEISOwMAAAAAAAAAAAAAhdS0oScAAEWx33775a233kqSbL/99nnooYdKt82aNSv77rtv6c9f/epXc8kll6RLly4fu89OnTrlkUceyVFHHZWpU6d+7Ni+ffvm17/+denPp556ah588MEkyY033pgBAwbU9SkBAAAAAAAAAABs1MTOALAGM2fOzJtvvpnOnTsnSZ566qmPHd+6deuUl5evtr1t27ZJkm222Sbt27dPklRVVWX+/Pml2xs3blwas8o777yTxx57rPTn22+/XewMAAAAAAAAAABsdsTOAPARzZo1S3V1dZ566ql87WtfS5I8/fTTtW77qPPPPz8HHXTQWvc5ZsyY0vcVFRX51re+lSSZNGlSKYj+sDvvvDPV1dUpLy9PZWVlHnzwwbz77rtp06bNf/TcAAAAAAAAAAAANiaNG3oCAFA0e+yxR5LaV3NeFTvvueee9TKHiRMnJklOOeWUbLvttqmurs6kSZPq5bEBAAAAAAAAAACKQuwMAB/Rt2/fJCsD55qamvzjH//InDlz0qFDh3z605/e4I//3HPP5dVXX02TJk0ydOjQfOUrX0mS3H777Rv8sQEAAAAAAAAAAIpE7AwAH7HDDjukffv2eeeddzJjxozSFZ779Omz1vuMGDEiXbp0We3rjjvuqPPjT5gwIUmy9957p3379jn00EOTJK+//noqKirW4xkBAAAAAAAAAABsnMTOALAGq8Lmp59+uhQY9+vXb63jW7dunfbt26/21aJFizo97qJFi3L//fcnSYYOHZok+cxnPpM999wzias7AwAAAAAAAAAAm5emDT0BACiivn375p577smTTz6ZF198McnKAHratGlrHH/++efnoIMO+o8f97777svixYuTJGeccUbOOOOMWrdPnjw58+fPzzbbbPMfPxYAAAAAAAAAAEDRubIzAKxB3759kyRPPPFE3nvvvbRr1y477rjjBn/ciRMnfuztVVVVufPOOzf4PAAAAAAAAAAAAIpA7AwAa7DTTjulbdu2WbFiRZL/iZ83pFdffTXPP/98kuSaa67Jc889V+vrC1/4QpLk9ttv3+BzAQAAAAAAAAAAKIKmDT0BACiqvn375t577y19/3FGjRqV//7v/17jbffdd19atmz5bx9vwoQJSZJtttkmAwcOTNOmtV+mv/zlL+f+++/PP/7xjzzzzDPp06fPujwNAAAAAAAAAACAjZYrOwPAWnw4Jv53YfF7772XOXPmrPFr1dWhP051dXXuuuuuJMmBBx64WuicJIMGDcrWW2+dJBk/fnxdngoAAAAAAAAAAMBGqVFNTU1NQ08CAAAAAAAAAAAAAOCjXNkZAAAAAAAAAAAAACgksTMAAAAAAAAAAAAAUEhiZwAAAAAAAAAAAACgkMTOAAAAAAAAAAAAAEAhiZ0BAAAAAAAAAAAAgEISOwMAAAAAAAAAAAAAhSR2BgAAAAAAAAAAAAAKSewMAAAAAAAAAAAAABSS2BkAAAAAAAAAAAAAKCSxMwAAAAAAAAAAAABQSGJnAAAAAAAAAAAAAKCQxM4AAAAAAAAAAAAAQCH9fyMAkY8oU/0aAAAAAElFTkSuQmCC",
"text/plain": [
"<Figure size 3600x1200 with 3 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"import sys\n",
"sys.path.append('../group-1')\n",
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"import seaborn as sns\n",
"import matplotlib.font_manager as font_manager\n",
"\n",
"def compare_balance_sheets(ticker_list: list):\n",
" num_charts = len(ticker_list)\n",
"\n",
" # Create a single figure object and subplots\n",
" fig, axes = plt.subplots(1, num_charts, figsize=(12*num_charts, 12), sharey=True)\n",
"\n",
" # Set font properties\n",
" font = font_manager.FontProperties(weight='bold', size=12)\n",
"\n",
" for i, ticker in enumerate(ticker_list):\n",
" assets_debt = pd.read_csv(r'../Companies_Data/'+ticker+'_Data/'+ticker+'_balance_sheet_4Y+4Q.csv')\n",
" selected_data = assets_debt[['TotalAssets', 'TotalDebt', 'CurrentAssets', 'CurrentDebt']]\n",
"\n",
" sns.set(style=\"whitegrid\") # Set seaborn style\n",
"\n",
" # Create bar plot for Total Assets\n",
" ax = axes[i]\n",
" ax.bar(range(len(selected_data.columns)), selected_data.iloc[0], color='green')\n",
" ax.set_title(f'{ticker} - Total Assets', fontproperties=font, fontsize=14, weight='bold')\n",
" ax.set_xlabel(ticker, fontproperties=font)\n",
" ax.set_ylabel('Amount in $', fontproperties=font)\n",
" ax.set_xticks(range(len(selected_data.columns)))\n",
" ax.set_xticklabels(selected_data.columns, fontproperties=font)\n",
"\n",
" # Remove background grid\n",
" ax.grid(False)\n",
"\n",
" # Remove scientific notation\n",
" ax.ticklabel_format(style='plain')\n",
"\n",
" plt.tight_layout() # Adjust subplot spacing\n",
" plt.show()\n",
"\n",
"ticker_list = ['META', 'AAPL', 'KO']\n",
"compare_balance_sheets(ticker_list)\n",
"\n"
]
}
],
"metadata": {
"kernelspec": {
"display_name": ".env",
"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.11.0"
},
"orig_nbformat": 4
},
"nbformat": 4,
"nbformat_minor": 2
}