From d3c898bf3f0ea66b7fdfa2fb708c6723ec63b7ac Mon Sep 17 00:00:00 2001 From: turtlebasket Date: Fri, 2 Dec 2022 02:00:45 -0800 Subject: [PATCH] stuff --- include/econ.hpp | 10 +++++++++- models-1.ipynb | 34 ++++++++++++++++------------------ pop-simple.hpp | 20 +------------------- 3 files changed, 26 insertions(+), 38 deletions(-) diff --git a/include/econ.hpp b/include/econ.hpp index 9316ca2..17c83dd 100644 --- a/include/econ.hpp +++ b/include/econ.hpp @@ -27,6 +27,14 @@ void economic_decision_simple(std::vector &balances, int id, float spend_ra balances.at(recipient_id) += spendable; } -void economic_decision_tiered(std::vector &balances, int id, float spend_ratio) { +/** + * @brief balances vec + * + * @param balances Balances vec + * @param id ID of participant making decision + * @param id ID of participant making decision + */ +void economic_decision_tiered(std::vector &balances, int id, float max_spend_ratio) { } + diff --git a/models-1.ipynb b/models-1.ipynb index 36c0db7..a99c60c 100644 --- a/models-1.ipynb +++ b/models-1.ipynb @@ -19,21 +19,13 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 3, "id": "aacc2bc9", "metadata": {}, "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Finished with 10 balances\n", - "Finished with 10 balances\n" - ] - }, { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAh8AAAGdCAYAAACyzRGfAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8o6BhiAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAlnElEQVR4nO3dfXBU1f3H8U9Imk10squgeapLCfjIQ0MFycQ4pWhoBiMj/1QckWbiILUspZgZbVKFNIOw2nGYjDaFyijgDAloR6ijFHXSYtoSBJLQsVPlYYKaqU0oU9kNoW4we35/dNhfQ8JD8O7Z3PB+zZw/7rln7/nu2eB+vPfubpIxxggAAMCSUYkuAAAAXFkIHwAAwCrCBwAAsIrwAQAArCJ8AAAAqwgfAADAKsIHAACwivABAACsSkl0AeeKRqP6/PPPlZGRoaSkpESXAwAALoExRt3d3crNzdWoURc+tzHswsfnn38uv9+f6DIAAMBl6Ojo0A033HDBMcMufGRkZEj6b/FerzfB1QAAgEsRDofl9/tj7+MXMuzCx9lLLV6vl/ABAIDLXMotE9xwCgAArBpy+GhqatLcuXOVm5urpKQk7dixo99+Y4xWrlypnJwcpaenq7i4WEeOHHGqXgAA4HJDDh89PT3Kz89XXV3doPt/+ctf6oUXXtD69ev1wQcf6Oqrr1ZJSYm+/PLLr10sAABwvyHf8zFnzhzNmTNn0H3GGNXW1urpp5/W/fffL0l69dVXlZWVpR07dujBBx/8etUCAADXc/Sej2PHjqmzs1PFxcWxPp/Pp4KCAjU3Nw/6mEgkonA43K8BAICRy9FPu3R2dkqSsrKy+vVnZWXF9p0rGAyqpqbGyTIADGPjKt8e0PfJs6UJqARAoiT80y5VVVUKhUKx1tHRkeiSAABAHDkaPrKzsyVJXV1d/fq7urpi+87l8Xhi3+nBd3sAADDyORo+8vLylJ2drcbGxlhfOBzWBx98oMLCQienAgAALjXkez5OnTqlo0ePxraPHTumgwcPavTo0Ro7dqyWL1+uZ555RjfddJPy8vK0YsUK5ebmat68eU7WDQAAXGrI4ePAgQOaNWtWbLuiokKSVFZWpk2bNunJJ59UT0+PFi9erJMnT+quu+7Srl27lJaW5lzVAADAtZKMMSbRRfyvcDgsn8+nUCjE/R/ACMSnXYCRaSjv3wn/tAsAALiyED4AAIBVhA8AAGAV4QMAAFhF+AAAAFYRPgAAgFWEDwAAYBXhAwAAWEX4AAAAVhE+AACAVYQPAABgFeEDAABYRfgAAABWET4AAIBVhA8AAGAV4QMAAFhF+AAAAFYRPgAAgFWEDwAAYBXhAwAAWEX4AAAAVjkePvr6+rRixQrl5eUpPT1dEyZM0KpVq2SMcXoqAADgQilOH/C5557TunXrtHnzZk2aNEkHDhxQeXm5fD6fli1b5vR0AADAZRwPH3v27NH999+v0tJSSdK4cePU0NCgffv2OT0VAABwIccvu9x5551qbGzU4cOHJUl//etf9ec//1lz5swZdHwkElE4HO7XAADAyOX4mY/KykqFw2HdeuutSk5OVl9fn1avXq0FCxYMOj4YDKqmpsbpMgAAwDDl+JmP1157TVu2bFF9fb1aW1u1efNmPf/889q8efOg46uqqhQKhWKto6PD6ZIAAMAw4viZjyeeeEKVlZV68MEHJUlTpkzRp59+qmAwqLKysgHjPR6PPB6P02UAAIBhyvEzH6dPn9aoUf0Pm5ycrGg06vRUAADAhRw/8zF37lytXr1aY8eO1aRJk9TW1qa1a9fqkUcecXoqAADgQo6HjxdffFErVqzQkiVLdPz4ceXm5upHP/qRVq5c6fRUAADAhRwPHxkZGaqtrVVtba3ThwYAACMAv+0CAACsInwAAACrCB8AAMAqwgcAALCK8AEAAKwifAAAAKsIHwAAwCrCBwAAsIrwAQAArCJ8AAAAqwgfAADAKsIHAACwivABAACsInwAAACrCB8AAMAqwgcAALCK8AEAAKwifAAAAKsIHwAAwCrCBwAAsIrwAQAArIpL+PjHP/6hhx9+WGPGjFF6erqmTJmiAwcOxGMqAADgMilOH/CLL75QUVGRZs2apd///ve6/vrrdeTIEV177bVOTwUAAFzI8fDx3HPPye/3a+PGjbG+vLw8p6cBAAAu5fhllzfffFPTp0/XD37wA2VmZuo73/mONmzYcN7xkUhE4XC4XwMAACOX4+Gjvb1d69at00033aR33nlHP/7xj7Vs2TJt3rx50PHBYFA+ny/W/H6/0yUBAIBhJMkYY5w8YGpqqqZPn649e/bE+pYtW6b9+/erubl5wPhIJKJIJBLbDofD8vv9CoVC8nq9TpYGYBgYV/n2gL5Pni1NQCUAnBQOh+Xz+S7p/dvxMx85OTmaOHFiv77bbrtNn3322aDjPR6PvF5vvwYAAEYux8NHUVGRDh061K/v8OHD+ta3vuX0VAAAwIUcDx+PP/649u7dqzVr1ujo0aOqr6/XSy+9pEAg4PRUAADAhRwPH3fccYe2b9+uhoYGTZ48WatWrVJtba0WLFjg9FQAAMCFHP+eD0m67777dN9998Xj0AAAwOX4bRcAAGAV4QMAAFhF+AAAAFYRPgAAgFWEDwAAYBXhAwAAWEX4AAAAVhE+AACAVYQPAABgFeEDAABYRfgAAABWET4AAIBVhA8AAGAV4QMAAFhF+AAAAFYRPgAAgFWEDwAAYBXhAwAAWEX4AAAAVhE+AACAVYQPAABgVdzDx7PPPqukpCQtX7483lMBAAAXiGv42L9/v37zm9/o29/+djynAQAALhK38HHq1CktWLBAGzZs0LXXXhuvaQAAgMvELXwEAgGVlpaquLj4guMikYjC4XC/BgAARq6UeBx069atam1t1f79+y86NhgMqqamJh5lAACAYcjxMx8dHR366U9/qi1btigtLe2i46uqqhQKhWKto6PD6ZIAAMAw4viZj5aWFh0/fly33357rK+vr09NTU361a9+pUgkouTk5Ng+j8cjj8fjdBkAAGCYcjx83HPPPfrwww/79ZWXl+vWW2/Vz372s37BAwAAXHkcDx8ZGRmaPHlyv76rr75aY8aMGdAPAACuPHzDKQAAsCoun3Y51+7du21MAwAAXIAzHwAAwCrCBwAAsIrwAQAArCJ8AAAAqwgfAADAKsIHAACwivABAACsInwAAACrCB8AAMAqwgcAALCK8AEAAKwifAAAAKsIHwAAwCrCBwAAsIrwAQAArCJ8AAAAqwgfAADAKsIHAACwivABAACsInwAAACrCB8AAMAqx8NHMBjUHXfcoYyMDGVmZmrevHk6dOiQ09MAAACXcjx8vP/++woEAtq7d6/ee+89nTlzRt///vfV09Pj9FQAAMCFUpw+4K5du/ptb9q0SZmZmWppadF3v/tdp6cDAAAu43j4OFcoFJIkjR49etD9kUhEkUgkth0Oh+NdEgAASKC43nAajUa1fPlyFRUVafLkyYOOCQaD8vl8seb3++NZEgAASLC4ho9AIKC//e1v2rp163nHVFVVKRQKxVpHR0c8SwIAAAkWt8suS5cu1VtvvaWmpibdcMMN5x3n8Xjk8XjiVQYAABhmHA8fxhj95Cc/0fbt27V7927l5eU5PQUAAHAxx8NHIBBQfX29fve73ykjI0OdnZ2SJJ/Pp/T0dKenAwAALuP4PR/r1q1TKBTS9773PeXk5MTatm3bnJ4KAAC4UFwuuwAAAJwPv+0CAACsInwAAACrCB8AAMAqwgcAALCK8AEAAKwifAAAAKsIHwAAwCrCBwAAsIrwAQAArCJ8AAAAqwgfAADAKsIHAACwivABAACsInwAAACrCB8AAMAqwgcAALCK8AEAAKwifAAAAKsIHwAAwCrCBwAAsCpu4aOurk7jxo1TWlqaCgoKtG/fvnhNBQAAXCQu4WPbtm2qqKhQdXW1WltblZ+fr5KSEh0/fjwe0wEAABeJS/hYu3atHn30UZWXl2vixIlav369rrrqKr3yyivxmA4AALiI4+Gjt7dXLS0tKi4u/v9JRo1ScXGxmpubnZ4OAAC4TIrTBzxx4oT6+vqUlZXVrz8rK0sff/zxgPGRSESRSCS2HQqFJEnhcNjp0gAMA9HI6QF9/HsH3O/sv2NjzEXHOh4+hioYDKqmpmZAv9/vT0A1ABLBV5voCgA4pbu7Wz6f74JjHA8f1113nZKTk9XV1dWvv6urS9nZ2QPGV1VVqaKiIrYdjUb173//W2PGjFFSUpLT5blOOByW3+9XR0eHvF5vossZsVhnO1hne1hrO1jn/2eMUXd3t3Jzcy861vHwkZqaqmnTpqmxsVHz5s2T9N9A0djYqKVLlw4Y7/F45PF4+vVdc801Tpflel6v94r/w7aBdbaDdbaHtbaDdf6vi53xOCsul10qKipUVlam6dOna8aMGaqtrVVPT4/Ky8vjMR0AAHCRuISP+fPn61//+pdWrlypzs5OTZ06Vbt27RpwEyoAALjyxO2G06VLlw56mQVD4/F4VF1dPeDSFJzFOtvBOtvDWtvBOl+eJHMpn4kBAABwCD8sBwAArCJ8AAAAqwgfAADAKsIHAACwivAxDNTV1WncuHFKS0tTQUGB9u3bd8HxJ0+eVCAQUE5Ojjwej26++Wbt3LnTUrXuNdR1rq2t1S233KL09HT5/X49/vjj+vLLLy1V605NTU2aO3eucnNzlZSUpB07dlz0Mbt379btt98uj8ejG2+8UZs2bYp7nW431HV+4403NHv2bF1//fXyer0qLCzUO++8Y6dYF7ucv+ez/vKXvyglJUVTp06NW31uRvhIsG3btqmiokLV1dVqbW1Vfn6+SkpKdPz48UHH9/b2avbs2frkk0/029/+VocOHdKGDRv0zW9+03Ll7jLUda6vr1dlZaWqq6v10Ucf6eWXX9a2bdv085//3HLl7tLT06P8/HzV1dVd0vhjx46ptLRUs2bN0sGDB7V8+XItWrSIN8aLGOo6NzU1afbs2dq5c6daWlo0a9YszZ07V21tbXGu1N2Gus5nnTx5Uj/84Q91zz33xKmyEcAgoWbMmGECgUBsu6+vz+Tm5ppgMDjo+HXr1pnx48eb3t5eWyWOCENd50AgYO6+++5+fRUVFaaoqCiudY4kksz27dsvOObJJ580kyZN6tc3f/58U1JSEsfKRpZLWefBTJw40dTU1Dhf0Ag1lHWeP3++efrpp011dbXJz8+Pa11uxZmPBOrt7VVLS4uKi4tjfaNGjVJxcbGam5sHfcybb76pwsJCBQIBZWVlafLkyVqzZo36+vpsle06l7POd955p1paWmKXZtrb27Vz507de++9Vmq+UjQ3N/d7XSSppKTkvK8LnBGNRtXd3a3Ro0cnupQRZ+PGjWpvb1d1dXWiSxnW4vYNp7i4EydOqK+vb8DXzmdlZenjjz8e9DHt7e36wx/+oAULFmjnzp06evSolixZojNnzvDHfh6Xs84PPfSQTpw4obvuukvGGH311Vd67LHHuOzisM7OzkFfl3A4rP/85z9KT09PUGUj2/PPP69Tp07pgQceSHQpI8qRI0dUWVmpP/3pT0pJ4e31Qjjz4TLRaFSZmZl66aWXNG3aNM2fP19PPfWU1q9fn+jSRpTdu3drzZo1+vWvf63W1la98cYbevvtt7Vq1apElwZ8LfX19aqpqdFrr72mzMzMRJczYvT19emhhx5STU2Nbr755kSXM+wRzRLouuuuU3Jysrq6uvr1d3V1KTs7e9DH5OTk6Bvf+IaSk5Njfbfddps6OzvV29ur1NTUuNbsRpezzitWrNDChQu1aNEiSdKUKVPU09OjxYsX66mnntKoUeR2J2RnZw/6uni9Xs56xMHWrVu1aNEivf766wMud+Hr6e7u1oEDB9TW1hb7XbNoNCpjjFJSUvTuu+/q7rvvTnCVwwf/BU2g1NRUTZs2TY2NjbG+aDSqxsZGFRYWDvqYoqIiHT16VNFoNNZ3+PBh5eTkEDzO43LW+fTp0wMCxtnAZ/g5JMcUFhb2e10k6b333jvv64LL19DQoPLycjU0NKi0tDTR5Yw4Xq9XH374oQ4ePBhrjz32mG655RYdPHhQBQUFiS5xeEnwDa9XvK1btxqPx2M2bdpk/v73v5vFixeba665xnR2dhpjjFm4cKGprKyMjf/ss89MRkaGWbp0qTl06JB56623TGZmpnnmmWcS9RRcYajrXF1dbTIyMkxDQ4Npb2837777rpkwYYJ54IEHEvUUXKG7u9u0tbWZtrY2I8msXbvWtLW1mU8//dQYY0xlZaVZuHBhbHx7e7u56qqrzBNPPGE++ugjU1dXZ5KTk82uXbsS9RRcYajrvGXLFpOSkmLq6urMP//5z1g7efJkop6CKwx1nc/Fp13Oj/AxDLz44otm7NixJjU11cyYMcPs3bs3tm/mzJmmrKys3/g9e/aYgoIC4/F4zPjx483q1avNV199Zblq9xnKOp85c8b84he/MBMmTDBpaWnG7/ebJUuWmC+++MJ+4S7yxz/+0Uga0M6ubVlZmZk5c+aAx0ydOtWkpqaa8ePHm40bN1qv222Gus4zZ8684HgM7nL+nv8X4eP8kozhHDIAALCHez4AAIBVhA8AAGAV4QMAAFhF+AAAAFYRPgAAgFWEDwAAYBXhAwAAWEX4AAAAVhE+AACAVYQPAABgVUqiCzhXNBrV559/royMDCUlJSW6HAAAcAmMMeru7lZubu6AXwU/17ALH59//rn8fn+iywAAAJeho6NDN9xwwwXHDLvwkZGRIem/xXu93gRXAwAALkU4HJbf74+9j1/IsAsfZy+1eL1ewgcAAC5zKbdMcMMpAACwasjho6mpSXPnzlVubq6SkpK0Y8eOfvuNMVq5cqVycnKUnp6u4uJiHTlyxKl6AQCAyw05fPT09Cg/P191dXWD7v/lL3+pF154QevXr9cHH3ygq6++WiUlJfryyy+/drEAAMD9hnzPx5w5czRnzpxB9xljVFtbq6efflr333+/JOnVV19VVlaWduzYoQcffPDrVQsAAFzP0Xs+jh07ps7OThUXF8f6fD6fCgoK1NzcPOhjIpGIwuFwvwYAAEYuRz/t0tnZKUnKysrq15+VlRXbd65gMKiamhonywAwjI2rfHtA3yfPliagEgCJkvBPu1RVVSkUCsVaR0dHoksCAABx5Gj4yM7OliR1dXX16+/q6ortO5fH44l9pwff7QEAwMjnaPjIy8tTdna2GhsbY33hcFgffPCBCgsLnZwKAAC41JDv+Th16pSOHj0a2z527JgOHjyo0aNHa+zYsVq+fLmeeeYZ3XTTTcrLy9OKFSuUm5urefPmOVk3AABwqSGHjwMHDmjWrFmx7YqKCklSWVmZNm3apCeffFI9PT1avHixTp48qbvuuku7du1SWlqac1UDAADXSjLGmEQX8b/C4bB8Pp9CoRD3fwAjEJ92AUamobx/J/zTLgAA4MpC+AAAAFYRPgAAgFWEDwAAYBXhAwAAWEX4AAAAVhE+AACAVYQPAABgFeEDAABYRfgAAABWET4AAIBVhA8AAGAV4QMAAFhF+AAAAFYRPgAAgFWEDwAAYBXhAwAAWEX4AAAAVhE+AACAVYQPAABgFeEDAABY5Xj46Ovr04oVK5SXl6f09HRNmDBBq1atkjHG6akAAIALpTh9wOeee07r1q3T5s2bNWnSJB04cEDl5eXy+XxatmyZ09MBAACXcTx87NmzR/fff79KS0slSePGjVNDQ4P27dvn9FQAAMCFHL/scuedd6qxsVGHDx+WJP31r3/Vn//8Z82ZM2fQ8ZFIROFwuF8DAAAjl+NnPiorKxUOh3XrrbcqOTlZfX19Wr16tRYsWDDo+GAwqJqaGqfLAAAAw5TjZz5ee+01bdmyRfX19WptbdXmzZv1/PPPa/PmzYOOr6qqUigUirWOjg6nSwIAAMOI42c+nnjiCVVWVurBBx+UJE2ZMkWffvqpgsGgysrKBoz3eDzyeDxOlwEAAIYpx898nD59WqNG9T9scnKyotGo01MBAAAXcvzMx9y5c7V69WqNHTtWkyZNUltbm9auXatHHnnE6akAAIALOR4+XnzxRa1YsUJLlizR8ePHlZubqx/96EdauXKl01MBAAAXcjx8ZGRkqLa2VrW1tU4fGgAAjAD8tgsAALCK8AEAAKwifAAAAKsIHwAAwCrCBwAAsIrwAQAArCJ8AAAAqwgfAADAKsIHAACwivABAACsInwAAACrCB8AAMAqwgcAALCK8AEAAKwifAAAAKsIHwAAwCrCBwAAsIrwAQAArCJ8AAAAqwgfAADAKsIHAACwKi7h4x//+IcefvhhjRkzRunp6ZoyZYoOHDgQj6kAAIDLpDh9wC+++EJFRUWaNWuWfv/73+v666/XkSNHdO211zo9FQAAcCHHw8dzzz0nv9+vjRs3xvry8vKcngYAALiU45dd3nzzTU2fPl0/+MEPlJmZqe985zvasGHDecdHIhGFw+F+DQAAjFyOh4/29natW7dON910k9555x39+Mc/1rJly7R58+ZBxweDQfl8vljz+/1OlwQAAIaRJGOMcfKAqampmj59uvbs2RPrW7Zsmfbv36/m5uYB4yORiCKRSGw7HA7L7/crFArJ6/U6WRqAYWBc5dsD+j55tjQBlQBwUjgcls/nu6T3b8fPfOTk5GjixIn9+m677TZ99tlng473eDzyer39GgAAGLkcDx9FRUU6dOhQv77Dhw/rW9/6ltNTAQAAF3I8fDz++OPau3ev1qxZo6NHj6q+vl4vvfSSAoGA01MBAAAXcjx83HHHHdq+fbsaGho0efJkrVq1SrW1tVqwYIHTUwEAABdy/Hs+JOm+++7TfffdF49DAwAAl+O3XQAAgFWEDwAAYBXhAwAAWEX4AAAAVhE+AACAVYQPAABgFeEDAABYRfgAAABWET4AAIBVhA8AAGAV4QMAAFhF+AAAAFYRPgAAgFWEDwAAYBXhAwAAWEX4AAAAVhE+AACAVYQPAABgFeEDAABYRfgAAABWET4AAIBVcQ8fzz77rJKSkrR8+fJ4TwUAAFwgruFj//79+s1vfqNvf/vb8ZwGAAC4SNzCx6lTp7RgwQJt2LBB1157bbymAQAALhO38BEIBFRaWqri4uILjotEIgqHw/0aAAAYuVLicdCtW7eqtbVV+/fvv+jYYDCompqaeJQBAACGIcfPfHR0dOinP/2ptmzZorS0tIuOr6qqUigUirWOjg6nSwIAAMOI42c+WlpadPz4cd1+++2xvr6+PjU1NelXv/qVIpGIkpOTY/s8Ho88Ho/TZQAAgGHK8fBxzz336MMPP+zXV15erltvvVU/+9nP+gUPAABw5XE8fGRkZGjy5Mn9+q6++mqNGTNmQD8AALjy8A2nAADAqrh82uVcu3fvtjENAABwAc58AAAAqwgfAADAKsIHAACwivABAACsInwAAACrCB8AAMAqwgcAALCK8AEAAKwifAAAAKsIHwAAwCrCBwAAsIrwAQAArCJ8AAAAqwgfAADAKsIHAACwivABAACsInwAAACrCB8AAMAqwgcAALCK8AEAAKwifAAAAKscDx/BYFB33HGHMjIylJmZqXnz5unQoUNOTwMAAFzK8fDx/vvvKxAIaO/evXrvvfd05swZff/731dPT4/TUwEAABdKcfqAu3bt6re9adMmZWZmqqWlRd/97nedng4AALiM4+HjXKFQSJI0evToQfdHIhFFIpHYdjgcjndJAAAggeJ6w2k0GtXy5ctVVFSkyZMnDzomGAzK5/PFmt/vj2dJAAAgweIaPgKBgP72t79p69at5x1TVVWlUCgUax0dHfEsCQAAJFjcLrssXbpUb731lpqamnTDDTecd5zH45HH44lXGQAAYJhxPHwYY/STn/xE27dv1+7du5WXl+f0FAAAwMUcDx+BQED19fX63e9+p4yMDHV2dkqSfD6f0tPTnZ4OAAC4jOP3fKxbt06hUEjf+973lJOTE2vbtm1zeioAAOBCcbnsAgAAcD78tgsAALCK8AEAAKwifAAAAKsIHwAAwCrCBwAAsIrwAQAArCJ8AAAAqwgfAADAKsIHAACwivABAACsInwAAACrCB8AAMAqwgcAALCK8AEAAKwifAAAAKsIHwAAwCrCBwAAsIrwAQAArCJ8AAAAqwgfAADAKsIHAACwKm7ho66uTuPGjVNaWpoKCgq0b9++eE0FAABcJC7hY9u2baqoqFB1dbVaW1uVn5+vkpISHT9+PB7TAQAAF4lL+Fi7dq0effRRlZeXa+LEiVq/fr2uuuoqvfLKK/GYDgAAuEiK0wfs7e1VS0uLqqqqYn2jRo1ScXGxmpubB4yPRCKKRCKx7VAoJEkKh8NOlwZgGIhGTg/o49874H5n/x0bYy461vHwceLECfX19SkrK6tff1ZWlj7++OMB44PBoGpqagb0+/1+p0sDMEz5ahNdAQCndHd3y+fzXXCM4+FjqKqqqlRRURHbjkaj+ve//60xY8YoKSkpgZUND+FwWH6/Xx0dHfJ6vYkuZ8Rine1gne1hre1gnf+fMUbd3d3Kzc296FjHw8d1112n5ORkdXV19evv6upSdnb2gPEej0cej6df3zXXXON0Wa7n9Xqv+D9sG1hnO1hne1hrO1jn/7rYGY+zHL/hNDU1VdOmTVNjY2OsLxqNqrGxUYWFhU5PBwAAXCYul10qKipUVlam6dOna8aMGaqtrVVPT4/Ky8vjMR0AAHCRuISP+fPn61//+pdWrlypzs5OTZ06Vbt27RpwEyouzuPxqLq6esClKTiLdbaDdbaHtbaDdb48SeZSPhMDAADgEH7bBQAAWEX4AAAAVhE+AACAVYQPAABgFeFjGKirq9O4ceOUlpamgoIC7du374LjT548qUAgoJycHHk8Ht18883auXOnpWrda6jrXFtbq1tuuUXp6eny+/16/PHH9eWXX1qq1p2ampo0d+5c5ebmKikpSTt27LjoY3bv3q3bb79dHo9HN954ozZt2hT3Ot1uqOv8xhtvaPbs2br++uvl9XpVWFiod955x06xLnY5f89n/eUvf1FKSoqmTp0at/rcjPCRYNu2bVNFRYWqq6vV2tqq/Px8lZSU6Pjx44OO7+3t1ezZs/XJJ5/ot7/9rQ4dOqQNGzbom9/8puXK3WWo61xfX6/KykpVV1fro48+0ssvv6xt27bp5z//ueXK3aWnp0f5+fmqq6u7pPHHjh1TaWmpZs2apYMHD2r58uVatGgRb4wXMdR1bmpq0uzZs7Vz5061tLRo1qxZmjt3rtra2uJcqbsNdZ3POnnypH74wx/qnnvuiVNlI4BBQs2YMcMEAoHYdl9fn8nNzTXBYHDQ8evWrTPjx483vb29tkocEYa6zoFAwNx99939+ioqKkxRUVFc6xxJJJnt27dfcMyTTz5pJk2a1K9v/vz5pqSkJI6VjSyXss6DmThxoqmpqXG+oBFqKOs8f/588/TTT5vq6mqTn58f17rcijMfCdTb26uWlhYVFxfH+kaNGqXi4mI1NzcP+pg333xThYWFCgQCysrK0uTJk7VmzRr19fXZKtt1Lmed77zzTrW0tMQuzbS3t2vnzp269957rdR8pWhubu73ukhSSUnJeV8XOCMajaq7u1ujR49OdCkjzsaNG9Xe3q7q6upElzKsJfxXba9kJ06cUF9f34Bvfs3KytLHH3886GPa29v1hz/8QQsWLNDOnTt19OhRLVmyRGfOnOGP/TwuZ50feughnThxQnfddZeMMfrqq6/02GOPcdnFYZ2dnYO+LuFwWP/5z3+Unp6eoMpGtueff16nTp3SAw88kOhSRpQjR46osrJSf/rTn5SSwtvrhXDmw2Wi0agyMzP10ksvadq0aZo/f76eeuoprV+/PtGljSi7d+/WmjVr9Otf/1qtra1644039Pbbb2vVqlWJLg34Wurr61VTU6PXXntNmZmZiS5nxOjr69NDDz2kmpoa3XzzzYkuZ9gjmiXQddddp+TkZHV1dfXr7+rqUnZ29qCPycnJ0Te+8Q0lJyfH+m677TZ1dnaqt7dXqampca3ZjS5nnVesWKGFCxdq0aJFkqQpU6aop6dHixcv1lNPPaVRo8jtTsjOzh70dfF6vZz1iIOtW7dq0aJFev311wdc7sLX093drQMHDqitrU1Lly6V9N//WTTGKCUlRe+++67uvvvuBFc5fPBf0ARKTU3VtGnT1NjYGOuLRqNqbGxUYWHhoI8pKirS0aNHFY1GY32HDx9WTk4OweM8LmedT58+PSBgnA18hp9DckxhYWG/10WS3nvvvfO+Lrh8DQ0NKi8vV0NDg0pLSxNdzojj9Xr14Ycf6uDBg7H22GOP6ZZbbtHBgwdVUFCQ6BKHlwTf8HrF27p1q/F4PGbTpk3m73//u1m8eLG55pprTGdnpzHGmIULF5rKysrY+M8++8xkZGSYpUuXmkOHDpm33nrLZGZmmmeeeSZRT8EVhrrO1dXVJiMjwzQ0NJj29nbz7rvvmgkTJpgHHnggUU/BFbq7u01bW5tpa2szkszatWtNW1ub+fTTT40xxlRWVpqFCxfGxre3t5urrrrKPPHEE+ajjz4ydXV1Jjk52ezatStRT8EVhrrOW7ZsMSkpKaaurs7885//jLWTJ08m6im4wlDX+Vx82uX8CB/DwIsvvmjGjh1rUlNTzYwZM8zevXtj+2bOnGnKysr6jd+zZ48pKCgwHo/HjB8/3qxevdp89dVXlqt2n6Gs85kzZ8wvfvELM2HCBJOWlmb8fr9ZsmSJ+eKLL+wX7iJ//OMfjaQB7ezalpWVmZkzZw54zNSpU01qaqoZP3682bhxo/W63Wao6zxz5swLjsfgLufv+X8RPs4vyRjOIQMAAHu45wMAAFhF+AAAAFYRPgAAgFWEDwAAYBXhAwAAWEX4AAAAVhE+AACAVYQPAABgFeEDAABYRfgAAABWET4AAIBVhA8AAGDV/wEViPL9sL/MswAAAABJRU5ErkJggg==", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjAAAAHNCAYAAAAAFUE1AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8o6BhiAAAACXBIWXMAAA9hAAAPYQGoP6dpAABZxklEQVR4nO3de3hM1/4/8HduM7mZSSIykxARlyIErUuMe5tURCittqhDqC+lSVuUSlql9MJRbZXj0va0tKdUcVx63CriVhpBjiBoiIYoJlGRGZfKdf3+cLJ/2TIhmEmyk/freeZ5Mmuvvfdaa+/Z88naa+2xE0IIEBERESmIfVUXgIiIiOhBMYAhIiIixWEAQ0RERIrDAIaIiIgUhwEMERERKQ4DGCIiIlIcBjBERESkOAxgiIiISHEYwBAREZHiMICpYc6dOwc7OzvMmzevUva3fPly2NnZ4dy5c5Wyv6py4cIFODs7Y//+/VWy/9jYWISEhFTJvmuTks/P8uXLpbT33nsPdnZ2lbL/Xr16oVevXtL73bt3w87ODmvXrq2U/Y8cORKNGjWqlH1ZcvDgQahUKpw/f15Ka9SoEfr161dlZapsnTt3xltvvVXVxVAEBjDVUElQcPjw4aouykNZvHix7AugJpg1axZCQkLQtWtXKW3lypWYP39+pex/woQJOHr0KH766aeH3kbJeVXe68CBA1YssfWUBBUlL3t7e3h5eSEiIgKJiYlVXTyLLl26hPfeew8pKSlVXZQyqnPZ3nnnHQwdOhQBAQE228e96l+Zn+nyTJ06FYsWLYLRaKzSciiBY1UXgJRt+PDhGDJkCNRqtZS2ePFieHt7Y+TIkVVXMCu6cuUKvv32W3z77bey9JUrVyI1NRUTJkyweRn0ej0GDBiAefPm4Zlnnnmkbc2aNQuBgYFl0ps2bfpI27W1oUOHom/fvigqKsLp06exePFiPPnkkzh06BCCg4Nttt9p06YhNjb2gda5dOkSZs6ciUaNGqFdu3YVXm/79u0PWLoHd6+yffXVVyguLrZ5GSxJSUnBjh078Ouvv9p0P/eqf2V+psszYMAAaDQaLF68GLNmzaqycigBAxh6KDdv3oSbmxscHBzg4OBQ1cWxqe+//x6Ojo7o379/lZbjxRdfxAsvvIDff/8djRs3fujtREREoEOHDlYsWeV44okn8Le//U163717d0RERGDJkiVYvHixzfbr6OgIR0fbXipv3boFV1dXqFQqm+7nfpycnKps38uWLUPDhg3RuXPnKitDdWBvb4/nn38e3333HWbOnFlpty+ViLeQFGLkyJFwd3fHxYsXMXDgQLi7u6NevXqYPHkyioqKLK7z5ZdfokmTJlCr1ejYsSMOHTpUJs9vv/2G559/Hl5eXnB2dkaHDh3K3KYoufWwZ88evPrqq/Dx8UGDBg1ky0rGwDRq1AgnTpzAnj17pC7/knv6OTk5mDx5MoKDg+Hu7g6NRoOIiAgcPXpUtr+S+/6rV6/Ghx9+iAYNGsDZ2RmhoaFIT08vU4ekpCT07dsXnp6ecHNzQ5s2bfD5558/cD3Ls2HDBoSEhMDd3V1K69WrFzZv3ozz589L9Sw9diA7OxujR4+GTqeDs7Mz2rZtW6YHp/R4pc8++wwBAQFwcXFBz549kZqaWqYcYWFhAICNGzdWqNwPo6CgAF5eXhg1alSZZWazGc7Ozpg8ebKUlpeXhxkzZqBp06ZQq9Xw9/fHW2+9hby8PNm6dnZ2iImJwYYNG9C6dWuo1Wq0atUK27Zte+iydu/eHQBw9uxZWXpubi4mTJgAf39/qNVqNG3aFH//+9/L9Czk5uZi5MiR0Gq18PDwQFRUFHJzc8vsx9IYmPj4eHTr1g0eHh5wd3dH8+bN8fbbbwO4c/527NgRADBq1Cjp/Ci5rdqrVy+0bt0aycnJ6NGjB1xdXaV17x4DU6KoqAhvv/029Ho93Nzc8Mwzz+DChQuyPI0aNbLY61l6m/crm6UxMDdv3sSbb74ptWfz5s0xb948CCFk+R71GG/YsAFPPfVUuV/Y27dvR7t27eDs7IygoCCsW7euTJ7ff/8dL7zwAry8vODq6orOnTtj8+bN0vJ71d/an+lFixahcePGcHV1Re/evXHhwgUIIfD++++jQYMGcHFxwYABA5CTk1OmHk8//TTOnz9fLW/zVSfsgVGQoqIihIeHIyQkBPPmzcOOHTvwySefoEmTJhg/frws78qVK3H9+nW88sorsLOzw9y5c/Hcc8/h999/l/7LOnHiBLp27Yr69esjNjYWbm5uWL16NQYOHIh///vfePbZZ2XbfPXVV1GvXj1Mnz4dN2/etFjG+fPn47XXXoO7uzveeecdAIBOpwNw5+KyYcMGvPDCCwgMDERWVha++OIL9OzZEydPnoSfn59sW3PmzIG9vT0mT54Mk8mEuXPnYtiwYUhKSpLyxMfHo1+/fvD19cUbb7wBvV6PU6dOYdOmTXjjjTceqp6lFRQU4NChQ2Xa95133oHJZMIff/yBzz77DACkAOevv/5Cr169kJ6ejpiYGAQGBmLNmjUYOXIkcnNzpXKV+O6773D9+nVER0fj9u3b+Pzzz/HUU0/h+PHjUtsBgFarRZMmTbB//35MnDix3DLfj8lkwp9//ilLs7OzQ926deHk5IRnn30W69atwxdffCHrEdiwYQPy8vIwZMgQAEBxcTGeeeYZ7Nu3D2PHjkXLli1x/PhxfPbZZzh9+jQ2bNgg28e+ffuwbt06vPrqq6hTpw4WLFiAQYMGITMzE3Xr1n3gepQEzZ6enlLarVu30LNnT1y8eBGvvPIKGjZsiF9//RVxcXG4fPmyNL5BCIEBAwZg3759GDduHFq2bIn169cjKirqvvs9ceIE+vXrhzZt2mDWrFlQq9VIT0+XBni3bNkSs2bNwvTp0zF27Fgp0OrSpYu0jatXryIiIgJDhgzB3/72N9lxtuTDDz+EnZ0dpk6diuzsbMyfPx9hYWFISUmBi4tLhdusImUrTQiBZ555Brt27cLo0aPRrl07/Pzzz5gyZQouXrwonfslHvYYX7x4EZmZmXjiiScsLj9z5gwGDx6McePGISoqCsuWLcMLL7yAbdu24emnnwYAZGVloUuXLrh16xZef/111K1bF99++y2eeeYZrF27Fs8+++w961+/fn2rfaZXrFiB/Px8vPbaa8jJycHcuXPx4osv4qmnnsLu3bsxdepUpKenY+HChZg8eTK++eYb2frt27cHAOzfvx+PP/54ue1W6wmqdpYtWyYAiEOHDklpUVFRAoCYNWuWLO/jjz8u2rdvL73PyMgQAETdunVFTk6OlL5x40YBQPznP/+R0kJDQ0VwcLC4ffu2lFZcXCy6dOkimjVrVqY83bp1E4WFhRbLmpGRIaW1atVK9OzZs0y9bt++LYqKimRpGRkZQq1Wy+q1a9cuAUC0bNlS5OXlSemff/65ACCOHz8uhBCisLBQBAYGioCAAHHt2jXZdouLix+4npakp6cLAGLhwoVllkVGRoqAgIAy6fPnzxcAxPfffy+l5efnC4PBINzd3YXZbJbqDkC4uLiIP/74Q8qblJQkAIiJEyeW2Xbv3r1Fy5Yt71nm8pQcK0svtVot5fv555/LnCtCCNG3b1/RuHFj6f2//vUvYW9vL3755RdZvqVLlwoAYv/+/VIaAKFSqUR6erqUdvTo0XLbtrSSdpo5c6a4cuWKMBqN4pdffhEdO3YUAMSaNWukvO+//75wc3MTp0+flm0jNjZWODg4iMzMTCGEEBs2bBAAxNy5c6U8hYWFonv37gKAWLZsmZQ+Y8YMUfpS+dlnnwkA4sqVK+WW+dChQ2W2U6Jnz54CgFi6dKnFZaU/OyWfhfr160vnjRBCrF69WgAQn3/+uZQWEBAgoqKi7rvNe5UtKipKdk6XtNMHH3wgy/f8888LOzs72fF8lGO8Y8cOi+dcSb0AiH//+99SmslkEr6+vuLxxx+X0iZMmCAAyM7H69evi8DAQNGoUSPp2nOv+lvrM12vXj2Rm5sr5Y2LixMARNu2bUVBQYGUPnToUKFSqWTXphIqlUqMHz/eUnPR//AWksKMGzdO9r579+74/fffy+QbPHiw7D/Tkv80SvLm5ORg586dePHFF3H9+nX8+eef+PPPP3H16lWEh4fjzJkzuHjxomybY8aMeaTxLmq1Gvb2d065oqIiXL16Vep+/+9//1sm/6hRo2Q9AHfX4ciRI8jIyMCECRPg4eEhW7ekG/ph6lna1atXAcj/y7+fLVu2QK/XY+jQoVKak5MTXn/9ddy4cQN79uyR5R84cCDq168vve/UqRNCQkKwZcuWMtv29PQs03vyoBYtWoT4+HjZa+vWrdLyp556Ct7e3vjxxx+ltGvXriE+Ph6DBw+W0tasWYOWLVuiRYsWUrv++eefeOqppwAAu3btku03LCwMTZo0kd63adMGGo3G4vlryYwZM1CvXj3o9Xp0794dp06dwieffILnn39eVqbu3btL7VTyCgsLQ1FREfbu3QvgzjFydHSU9aw5ODjgtddeu285Ss61jRs3PvSAV7VabfE2XXlGjBiBOnXqSO+ff/55+Pr6WjxHrGnLli1wcHDA66+/Lkt/8803IYSQnTfAwx/j+33O/Pz8ZD2lGo0GI0aMwJEjR6TZOlu2bEGnTp3QrVs3KZ+7uzvGjh2Lc+fO4eTJkxWosWUP+pl+4YUXoNVqpfclj0D429/+JhtPFRISgvz8fIvXIGt81ms63kJSEGdnZ9SrV0+W5unpiWvXrpXJ27BhwzL5AEh509PTIYTAu+++i3fffdfi/rKzs2VfrJZmrjyI4uJifP7551i8eDEyMjJkY3csdS/frw4lYx9at25d7j4fpp6WiLvu99/L+fPn0axZMylYK9GyZUtpeWnNmjUrs43HHnsMq1evtliORx3U16lTp3sO4nV0dMSgQYOwcuVK5OXlQa1WY926dSgoKJAFMGfOnMGpU6fKnJMlsrOzZe/vPp5A+eevJWPHjsULL7yA27dvY+fOnViwYEGZ8V9nzpzBsWPH7lum8+fPw9fXVzauCQCaN29+33IMHjwY//znP/F///d/iI2NRWhoKJ577jk8//zzZY55eerXr/9AA3bvPkfs7OzQtGlTmz9/6fz58/Dz85MFT0D55/KjHuPyPmdNmzYtc94/9thjAO7cStTr9Th//rzFZyWVLuu9rhX38qCf6bvboSSY8ff3t5huqX2s8Vmv6RjAKMiD9H6Ul7fkAlHyn+PkyZMRHh5uMe/d02of5F67JR999BHeffddvPzyy3j//ffh5eUFe3t7TJgwweJ/sverQ0U8TD1LKwmsKnoBtrVr167B29vb5vsZMmQIvvjiC2zduhUDBw7E6tWr0aJFC7Rt21bKU1xcjODgYHz66acWt3H3xfpRj2ezZs2kgcz9+vWDg4MDYmNj8eSTT0oBWXFxMZ5++ulyHwRW8qX3KFxcXLB3717s2rULmzdvxrZt2/Djjz/iqaeewvbt2yv0OX3Uz5Il5X3ZFRUVVdpMwYc9xtXtc/aoymuHB2mf3NzcSvmsKxkDmFqqZBquk5OT9KVgLeVdSNeuXYsnn3wSX3/9tSz9YT+oJV3Vqamp5dbhUevZsGFDuLi4ICMjo8yy8uoZEBCAY8eOobi4WPYf22+//SYtL+3MmTNltnH69GmLT0TNyMiQBRG20qNHD/j6+uLHH39Et27dsHPnTmlQdokmTZrg6NGjCA0NrZL/FN955x189dVXmDZtmjTTpUmTJrhx48Z9j3VAQAASEhJw48YNWS9MWlpahfZtb2+P0NBQhIaG4tNPP8VHH32Ed955B7t27UJYWJjV2+Puc0QIgfT0dLRp00ZK8/T0tDiL6vz587Jp9w9StoCAAOzYsQPXr1+X9cKUdy4/rBYtWgCAxc8Z8P97UkuX/fTp0wAgfU4CAgIsHr+7y3qv+lvrM/2oLl68iPz8fKmHhyzjGJhaysfHB7169cIXX3yBy5cvl1l+5cqVh962m5ubxQupg4NDmf801qxZc88xKPfyxBNPIDAwEPPnzy+zv5L9PGo9nZyc0KFDB4tPRXZzc4PJZCqT3rdvXxiNRtkYksLCQixcuBDu7u7o2bOnLP+GDRtkbXDw4EEkJSUhIiJCls9kMuHs2bPlzhixppJnUfznP//Bv/71LxQWFspuHwF3nktz8eJFfPXVV2XW/+uvv8qdqWYtHh4eeOWVV/Dzzz9L001ffPFFJCYm4ueffy6TPzc3F4WFhQDuHKPCwkIsWbJEWl5UVISFCxfed7+Wpr2WPBCtZPq4m5ubtE9rKJmpVmLt2rW4fPmy7Bxp0qQJDhw4gPz8fClt06ZNZaZbP0jZSh4c+I9//EOW/tlnn8HOzq7MOfqw6tevD39//3KfPn7p0iWsX79eem82m/Hdd9+hXbt20Ov1UlkPHjwoezrzzZs38eWXX6JRo0YICgoCcO/6W+sz/aiSk5MBlD87jO5gD0wttmjRInTr1g3BwcEYM2YMGjdujKysLCQmJuKPP/4o83yWimrfvj2WLFmCDz74AE2bNoWPjw+eeuop9OvXD7NmzcKoUaPQpUsXHD9+HCtWrHjoh7LZ29tjyZIl6N+/P9q1a4dRo0bB19cXv/32G06cOCF9iT1qPQcMGIB33nkHZrMZGo1GVs8ff/wRkyZNQseOHeHu7o7+/ftj7Nix+OKLLzBy5EgkJyejUaNGWLt2Lfbv34/58+eXGU/QtGlTdOvWDePHj0deXh7mz5+PunXrlrkNsmPHDmn6b2kjR47Et99+i4yMjAr9js3WrVul/xxL69Kli+xYDB48GAsXLsSMGTMQHBxc5r/B4cOHY/Xq1Rg3bhx27dqFrl27oqioCL/99htWr16Nn3/+2eYPzHvjjTcwf/58zJkzB6tWrcKUKVPw008/oV+/fhg5ciTat2+Pmzdv4vjx41i7di3OnTsHb29v9O/fH127dkVsbCzOnTsnPVfE0pfX3WbNmoW9e/ciMjISAQEByM7OxuLFi9GgQQNpAGmTJk3g4eGBpUuXok6dOnBzc0NISMhDjyPz8vJCt27dMGrUKGRlZWH+/Plo2rQpxowZI+X5v//7P6xduxZ9+vTBiy++iLNnz+L777+XDap90LL1798fTz75JN555x2cO3cObdu2xfbt27Fx40ZMmDChzLYfxYABA7B+/XqLYz8ee+wxjB49GocOHYJOp8M333yDrKwsLFu2TMoTGxuLH374AREREXj99dfh5eUlfS7+/e9/Sz0n96q/tT7Tjyo+Ph4NGzbkFOr7qexpT3R/5U2jdnNzK5P37imeJdP4Pv744zJ5AYgZM2bI0s6ePStGjBgh9Hq9cHJyEvXr1xf9+vUTa9euvWd57l5Wehq10WgUkZGRok6dOgKANIXz9u3b4s033xS+vr7CxcVFdO3aVSQmJpY7dbT09NjSdbt7+uO+ffvE008/LerUqSPc3NxEmzZtykzbrEg9y5OVlSUcHR3Fv/71L1n6jRs3xEsvvSQ8PDwEANn0y6ysLDFq1Cjh7e0tVCqVCA4OLlPu0sfqk08+Ef7+/kKtVovu3buLo0ePlinH4MGDRbdu3cqkDxo0SLi4uJSZSn63e02jttSuxcXFwt/f3+I02hL5+fni73//u2jVqpVQq9XC09NTtG/fXsycOVOYTCYpHwARHR1dZv3ypv6Wdq9zWgghRo4cKRwcHKTpu9evXxdxcXGiadOmQqVSCW9vb9GlSxcxb948kZ+fL6139epVMXz4cKHRaIRWqxXDhw8XR44cue806oSEBDFgwADh5+cnVCqV8PPzE0OHDi0zdXvjxo0iKChIODo6yrbZs2dP0apVK4t1Ke+z8MMPP4i4uDjh4+MjXFxcRGRkpDh//nyZ9T/55BNRv359oVarRdeuXcXhw4fLbPNeZbt7GnVJe06cOFH4+fkJJycn0axZM/Hxxx/LHlUgxKMdYyGE+O9//1tmGnTJ+pGRkeLnn38Wbdq0EWq1WrRo0aLM9UGIO5/z559/Xnh4eAhnZ2fRqVMnsWnTpjL5yqu/NT/TpZV3TbN0bS0qKhK+vr5i2rRp922z2s5OiAcYEUlUS40ePRqnT5/GL7/8YrVtnjt3DoGBgfj4449lT7e1xGg0IjAwEKtWrSrTA6PT6TBixAh8/PHHVisbUVUIDQ2Fn58f/vWvf1V1UarMhg0b8NJLL+Hs2bPw9fWt6uJUaxwDQ1QBM2bMwKFDh6SnrVa2+fPnIzg4uEzwcuLECfz111+YOnVqlZSLyJo++ugj/Pjjj2WmJdcmf//73xETE8PgpQLYA0NURR6kB4aIiOTYA0NERESKwx4YIiIiUhz2wBAREZHiMIAhIiIixWEAQ0RERIrDAIaIiIgUhwEMERERKQ4DGCIiIlIcBjBERESkOAxgiIiISHEYwBAREZHiMIAhIiIixWEAQ0RERIrDAIaIiIgUhwEMERERKQ4DGCIiIlIcBjBERESkOAxgiIiISHEYwBAREZHiMIAhIiIixWEAQ0RERIrDAIaIiIgUhwEMERERKQ4DGCIiIlIcBjBERESkOAxgiIiISHEYwBAREZHiMIAhIiIixWEAQ0RERIrDAIaIiIgUx7GqC2ArxcXFuHTpEurUqQM7O7uqLg4RERFVgBAC169fh5+fH+zty+9nqbEBzKVLl+Dv71/VxSAiIqKHcOHCBTRo0KDc5TU2gKlTpw6AOw2g0WiquDRERERUEWazGf7+/tL3eHlqbABTcttIo9EwgCEiIlKY+w3/4CBeIiIiUhwGMERERKQ4DGCIiIhIcRjAEBERkeIwgCEiIiLFqbGzkIiUolHsZunvc3Miq7AkRETKwR4YIiIiUhwGMERERKQ4DGCIqpFGsZtlt5SIiMgyBjBERESkOAxgiKyMvShERLbHWUhElcBSQMMZR0RED489MERERKQ4DGCIiIhIcRjAEFVzHFNDRFQWAxgiIiJSHAYwRI+AvSNERFWDs5CIrMDaQQyDIiKie2MAQ1RFGKQQET08BjBENsIAhYjIdjgGhoiIiBSHPTBEClG6R4dP8SWi2o4BDFEFVcdbQgxqiKi24i0kIiIiUpwHDmD27t2L/v37w8/PD3Z2dtiwYYNsuRAC06dPh6+vL1xcXBAWFoYzZ87I8uTk5GDYsGHQaDTw8PDA6NGjcePGDVmeY8eOoXv37nB2doa/vz/mzp374LUjIiKiGumBA5ibN2+ibdu2WLRokcXlc+fOxYIFC7B06VIkJSXBzc0N4eHhuH37tpRn2LBhOHHiBOLj47Fp0ybs3bsXY8eOlZabzWb07t0bAQEBSE5Oxscff4z33nsPX3755UNUkah24EP1iKg2eeAxMBEREYiIiLC4TAiB+fPnY9q0aRgwYAAA4LvvvoNOp8OGDRswZMgQnDp1Ctu2bcOhQ4fQoUMHAMDChQvRt29fzJs3D35+flixYgXy8/PxzTffQKVSoVWrVkhJScGnn34qC3SIiIiodrLqGJiMjAwYjUaEhYVJaVqtFiEhIUhMTAQAJCYmwsPDQwpeACAsLAz29vZISkqS8vTo0QMqlUrKEx4ejrS0NFy7ds3ivvPy8mA2m2UvopqKvS1EVNtZNYAxGo0AAJ1OJ0vX6XTSMqPRCB8fH9lyR0dHeHl5yfJY2kbpfdxt9uzZ0Gq10svf3//RK0RERETVUo2ZhRQXFweTySS9Lly4UNVFIiIiIhuxagCj1+sBAFlZWbL0rKwsaZler0d2drZseWFhIXJycmR5LG2j9D7uplarodFoZC8iIiKqmawawAQGBkKv1yMhIUFKM5vNSEpKgsFgAAAYDAbk5uYiOTlZyrNz504UFxcjJCREyrN3714UFBRIeeLj49G8eXN4enpas8hERESkQA8cwNy4cQMpKSlISUkBcGfgbkpKCjIzM2FnZ4cJEybggw8+wE8//YTjx49jxIgR8PPzw8CBAwEALVu2RJ8+fTBmzBgcPHgQ+/fvR0xMDIYMGQI/Pz8AwEsvvQSVSoXRo0fjxIkT+PHHH/H5559j0qRJVqs4ERERKdcDT6M+fPgwnnzySel9SVARFRWF5cuX46233sLNmzcxduxY5Obmolu3bti2bRucnZ2ldVasWIGYmBiEhobC3t4egwYNwoIFC6TlWq0W27dvR3R0NNq3bw9vb29Mnz6dU6iJiIgIAGAnhBBVXQhbMJvN0Gq1MJlMHA9DVqHEacv8fSQiUpqKfn/zxxyJ7kGJQYsl/NFHIqppGMAQ/U9N/JKvKQEYEdHdasxzYIiIiKj2YABDREREisNbSEQW8NYLEVH1xh4YIiIiUhwGMERERKQ4DGCIiIhIcTgGhmo9jnchIlIe9sAQERGR4jCAISIiIsVhAENERESKwwCGqJZpFLuZ436ISPEYwBAREZHicBYSUS1VE3+8kohqDwYwVCvxFgoRkbLxFhIREREpDgMYIiIiUhwGMERERKQ4HANDtQrHvlhW0i4czEtESsEeGCIiIlIcBjBEZBEfeEdE1RkDGCIiIlIcqwcwjRo1gp2dXZlXdHQ0AKBXr15llo0bN062jczMTERGRsLV1RU+Pj6YMmUKCgsLrV1UIiIiUiirD+I9dOgQioqKpPepqal4+umn8cILL0hpY8aMwaxZs6T3rq6u0t9FRUWIjIyEXq/Hr7/+isuXL2PEiBFwcnLCRx99ZO3iEhERkQJZPYCpV6+e7P2cOXPQpEkT9OzZU0pzdXWFXq+3uP727dtx8uRJ7NixAzqdDu3atcP777+PqVOn4r333oNKpbJ2kYnofzjmhYiUwqZjYPLz8/H999/j5Zdfhp2dnZS+YsUKeHt7o3Xr1oiLi8OtW7ekZYmJiQgODoZOp5PSwsPDYTabceLEiXL3lZeXB7PZLHsRERFRzWTT58Bs2LABubm5GDlypJT20ksvISAgAH5+fjh27BimTp2KtLQ0rFu3DgBgNBplwQsA6b3RaCx3X7Nnz8bMmTOtXwkiIiKqdmwawHz99deIiIiAn5+flDZ27Fjp7+DgYPj6+iI0NBRnz55FkyZNHnpfcXFxmDRpkvTebDbD39//obdHRERE1ZfNApjz589jx44dUs9KeUJCQgAA6enpaNKkCfR6PQ4ePCjLk5WVBQDljpsBALVaDbVa/YilJiIiIiWwWQCzbNky+Pj4IDLy3o8mT0lJAQD4+voCAAwGAz788ENkZ2fDx8cHABAfHw+NRoOgoCBbFZdqMA5MfTSl248/NUBE1YVNApji4mIsW7YMUVFRcHT8/7s4e/YsVq5cib59+6Ju3bo4duwYJk6ciB49eqBNmzYAgN69eyMoKAjDhw/H3LlzYTQaMW3aNERHR7OHhR4IAxcioprLJgHMjh07kJmZiZdfflmWrlKpsGPHDsyfPx83b96Ev78/Bg0ahGnTpkl5HBwcsGnTJowfPx4GgwFubm6IioqSPTeGiIiIajebBDC9e/eGEKJMur+/P/bs2XPf9QMCArBlyxZbFI2IiIhqAP4WEhERESkOAxgiIiJSHAYwREREpDg2fZAdEdVMnFpNRFWNAQwRVRinphNRdcEAhmoUfsESEdUOHANDREREisMAhoiIiBSHAQwREREpDgMYIiIiUhwGMET0SBrFbubgaSKqdJyFRDUCv0CJiGoX9sAQERGR4jCAISIiIsVhAENERESKwwCGiIiIFIeDeElxOGCXiIjYA0NERESKwx4YIrKK0j1j5+ZEVmFJiKg2YA8MERERKQ4DGCIiIlIcBjBEZHX8eQEisjWOgSEim+G4GCKyFav3wLz33nuws7OTvVq0aCEtv337NqKjo1G3bl24u7tj0KBByMrKkm0jMzMTkZGRcHV1hY+PD6ZMmYLCwkJrF5WIiIgUyiY9MK1atcKOHTv+/04c//9uJk6ciM2bN2PNmjXQarWIiYnBc889h/379wMAioqKEBkZCb1ej19//RWXL1/GiBEj4OTkhI8++sgWxSUiIiKFsUkA4+joCL1eXybdZDLh66+/xsqVK/HUU08BAJYtW4aWLVviwIED6Ny5M7Zv346TJ09ix44d0Ol0aNeuHd5//31MnToV7733HlQqlS2KTERERApik0G8Z86cgZ+fHxo3boxhw4YhMzMTAJCcnIyCggKEhYVJeVu0aIGGDRsiMTERAJCYmIjg4GDodDopT3h4OMxmM06cOFHuPvPy8mA2m2UvIiIiqpmsHsCEhIRg+fLl2LZtG5YsWYKMjAx0794d169fh9FohEqlgoeHh2wdnU4Ho9EIADAajbLgpWR5ybLyzJ49G1qtVnr5+/tbt2JERERUbVj9FlJERIT0d5s2bRASEoKAgACsXr0aLi4u1t6dJC4uDpMmTZLem81mBjFEREQ1lM2fA+Ph4YHHHnsM6enp0Ov1yM/PR25urixPVlaWNGZGr9eXmZVU8t7SuJoSarUaGo1G9iKi6oPPhiEia7J5AHPjxg2cPXsWvr6+aN++PZycnJCQkCAtT0tLQ2ZmJgwGAwDAYDDg+PHjyM7OlvLEx8dDo9EgKCjI1sUlIiIiBbD6LaTJkyejf//+CAgIwKVLlzBjxgw4ODhg6NCh0Gq1GD16NCZNmgQvLy9oNBq89tprMBgM6Ny5MwCgd+/eCAoKwvDhwzF37lwYjUZMmzYN0dHRUKvV1i4uKQT/cyciotKsHsD88ccfGDp0KK5evYp69eqhW7duOHDgAOrVqwcA+Oyzz2Bvb49BgwYhLy8P4eHhWLx4sbS+g4MDNm3ahPHjx8NgMMDNzQ1RUVGYNWuWtYtKRERECmUnhBBVXQhbMJvN0Gq1MJlMHA+jYOx5qdn48wJEdLeKfn/zxxyJiIhIcRjAEFGV4cwkInpYDGCIiIhIcRjAEBERkeIwgCEiIiLFYQBDREREisMAhoiIiBSHAQwREREpjtWfxEtE9KBKT6Xmw+2IqCIYwFC1w+eC1G4lx5+BDBHdCwMYqjYYuBARUUVxDAwREREpDgMYIiIiUhwGMERERKQ4HANDRNUSZyYR0b2wB4aIiIgUhwEMERERKQ5vIVGV4tRpIiJ6GOyBISIiIsVhDwwRVXuWeuo4sJeodmMPDBERESkOAxgiIiJSHN5CIiJF4/NiiGonq/fAzJ49Gx07dkSdOnXg4+ODgQMHIi0tTZanV69esLOzk73GjRsny5OZmYnIyEi4urrCx8cHU6ZMQWFhobWLS1WkUexmzkAiIqKHZvUemD179iA6OhodO3ZEYWEh3n77bfTu3RsnT56Em5ublG/MmDGYNWuW9N7V1VX6u6ioCJGRkdDr9fj1119x+fJljBgxAk5OTvjoo4+sXWQiIiJSGDshhLDlDq5cuQIfHx/s2bMHPXr0AHCnB6Zdu3aYP3++xXW2bt2Kfv364dKlS9DpdACApUuXYurUqbhy5QpUKtV992s2m6HVamEymaDRaKxWH7IO9r6QLfFWEpFyVfT72+aDeE0mEwDAy8tLlr5ixQp4e3ujdevWiIuLw61bt6RliYmJCA4OloIXAAgPD4fZbMaJEydsXWQiIiKq5mw6iLe4uBgTJkxA165d0bp1ayn9pZdeQkBAAPz8/HDs2DFMnToVaWlpWLduHQDAaDTKghcA0nuj0WhxX3l5ecjLy5Pem81ma1eHiIiIqgmbBjDR0dFITU3Fvn37ZOljx46V/g4ODoavry9CQ0Nx9uxZNGnS5KH2NXv2bMycOfORyku2UXK7iN36RERkLTYLYGJiYrBp0ybs3bsXDRo0uGfekJAQAEB6ejqaNGkCvV6PgwcPyvJkZWUBAPR6vcVtxMXFYdKkSdJ7s9kMf3//R6kCESkUn9xLVPNZPYARQuC1117D+vXrsXv3bgQGBt53nZSUFACAr68vAMBgMODDDz9EdnY2fHx8AADx8fHQaDQICgqyuA21Wg21Wm2dSpBNcOAuERFZi9UDmOjoaKxcuRIbN25EnTp1pDErWq0WLi4uOHv2LFauXIm+ffuibt26OHbsGCZOnIgePXqgTZs2AIDevXsjKCgIw4cPx9y5c2E0GjFt2jRER0czSCEiIiLrT6O2s7OzmL5s2TKMHDkSFy5cwN/+9jekpqbi5s2b8Pf3x7PPPotp06bJpkudP38e48ePx+7du+Hm5oaoqCjMmTMHjo4Vi7k4jbr6YM8LVTe8nURUfVX0+9smt5Duxd/fH3v27LnvdgICArBlyxZrFYuIiIhqEP4WEtkEe12IiMiW+GvUREREpDjsgSGrYs8LERFVBgYwRESllA7COdiXqPriLSQiIiJSHPbAEFGtwyf1EikfAxgiInD8FpHS8BYSERERKQ4DGCIiIlIcBjBERESkOBwDQw+EU0ypNuJ5T1T9MIChh1ZyUecFnWoqDuwlqr54C4mI6AE0it3MwIaoGmAPDD0yXsyJiKiyMYChCmGQQkRE1QkDGCKih2BpYC8H+xJVHo6BoTJ4j5+IiKo79sBQuRjEEFXMvT4r7JUhsg0GMERENlDRfwD4OAKih8MAphZjDwtR5eJnjsh6OAaGiIiIFIc9MLUQ/wskqn44VobowTCAISKqZiz9k2EpqOH4GarNqnUAs2jRInz88ccwGo1o27YtFi5ciE6dOlV1sRSJvS5ENQM/y0R32AkhRFUXwpIff/wRI0aMwNKlSxESEoL58+djzZo1SEtLg4+Pz33XN5vN0Gq1MJlM0Gg0lVDi6okXO6La5X69Mey1oequot/f1TaACQkJQceOHfGPf/wDAFBcXAx/f3+89tpriI2Nve/6tSWAYYBCRI/K0pOE715GVFkq+v1dLW8h5efnIzk5GXFxcVKavb09wsLCkJiYWIUlu+NRBts9zLoMUojIlh70QXwVvY5xYDLZUrUMYP78808UFRVBp9PJ0nU6HX777TeL6+Tl5SEvL096bzKZANyJ5KytOO+W9HfDiWvKLE+dGQ4AaD3j53tux9K6RETVlaVrVkWvY/fKV3LNLM3S9fN++Sxde++1TkW3Z22VsQ8lK/nevt8NomoZwDyM2bNnY+bMmWXS/f39K70s2vmVvksiIsWq6DXzfvksLb/XOg+zPWvj90X5rl+/Dq1WW+7yahnAeHt7w8HBAVlZWbL0rKws6PV6i+vExcVh0qRJ0vvi4mLk5OSgbt26sLOzq9B+zWYz/P39ceHChRo9bsaS2lx3oHbXn3Vn3Vn32kMJdRdC4Pr16/Dz87tnvmoZwKhUKrRv3x4JCQkYOHAggDsBSUJCAmJiYiyuo1aroVarZWkeHh4PtX+NRlNtD6yt1ea6A7W7/qw7617bsO7Vt+736nkpUS0DGACYNGkSoqKi0KFDB3Tq1Anz58/HzZs3MWrUqKouGhEREVWxahvADB48GFeuXMH06dNhNBrRrl07bNu2rczAXiIiIqp9qm0AAwAxMTHl3jKyBbVajRkzZpS5FVUb1Oa6A7W7/qw7617bsO41o+7V9kF2REREROWxr+oCEBERET0oBjBERESkOAxgiIiISHEYwBAREZHiMIApZdGiRWjUqBGcnZ0REhKCgwcPVnWRHsh7770HOzs72atFixbS8tu3byM6Ohp169aFu7s7Bg0aVOZpx5mZmYiMjISrqyt8fHwwZcoUFBYWyvLs3r0bTzzxBNRqNZo2bYrly5dXRvVk9u7di/79+8PPzw92dnbYsGGDbLkQAtOnT4evry9cXFwQFhaGM2fOyPLk5ORg2LBh0Gg08PDwwOjRo3Hjxg1ZnmPHjqF79+5wdnaGv78/5s6dW6Ysa9asQYsWLeDs7Izg4GBs2bLF6vUt7X51HzlyZJnzoE+fPrI8Sq377Nmz0bFjR9SpUwc+Pj4YOHAg0tLSZHkq8zyvzGtGRereq1evMsd+3LhxsjxKrPuSJUvQpk0b6eFrBoMBW7dulZbX1GMO3L/uNfWYV4ggIYQQq1atEiqVSnzzzTfixIkTYsyYMcLDw0NkZWVVddEqbMaMGaJVq1bi8uXL0uvKlSvS8nHjxgl/f3+RkJAgDh8+LDp37iy6dOkiLS8sLBStW7cWYWFh4siRI2LLli3C29tbxMXFSXl+//134erqKiZNmiROnjwpFi5cKBwcHMS2bdsqta5btmwR77zzjli3bp0AINavXy9bPmfOHKHVasWGDRvE0aNHxTPPPCMCAwPFX3/9JeXp06ePaNu2rThw4ID45ZdfRNOmTcXQoUOl5SaTSeh0OjFs2DCRmpoqfvjhB+Hi4iK++OILKc/+/fuFg4ODmDt3rjh58qSYNm2acHJyEsePH6+yukdFRYk+ffrIzoOcnBxZHqXWPTw8XCxbtkykpqaKlJQU0bdvX9GwYUNx48YNKU9lneeVfc2oSN179uwpxowZIzv2JpNJ8XX/6aefxObNm8Xp06dFWlqaePvtt4WTk5NITU0VQtTcY16RutfUY14RDGD+p1OnTiI6Olp6X1RUJPz8/MTs2bOrsFQPZsaMGaJt27YWl+Xm5gonJyexZs0aKe3UqVMCgEhMTBRC3PlitLe3F0ajUcqzZMkSodFoRF5enhBCiLfeeku0atVKtu3BgweL8PBwK9em4u7+Ei8uLhZ6vV58/PHHUlpubq5Qq9Xihx9+EEIIcfLkSQFAHDp0SMqzdetWYWdnJy5evCiEEGLx4sXC09NTqrsQQkydOlU0b95cev/iiy+KyMhIWXlCQkLEK6+8YtU6lqe8AGbAgAHlrlNT6i6EENnZ2QKA2LNnjxCics/zqr5m3F13Ie58mb3xxhvlrlNT6i6EEJ6enuKf//xnrTrmJUrqLkTtOuZ34y0kAPn5+UhOTkZYWJiUZm9vj7CwMCQmJlZhyR7cmTNn4Ofnh8aNG2PYsGHIzMwEACQnJ6OgoEBWxxYtWqBhw4ZSHRMTExEcHCx72nF4eDjMZjNOnDgh5Sm9jZI81amdMjIyYDQaZeXUarUICQmR1dXDwwMdOnSQ8oSFhcHe3h5JSUlSnh49ekClUkl5wsPDkZaWhmvXrkl5qmN77N69Gz4+PmjevDnGjx+Pq1evSstqUt1NJhMAwMvLC0DlnefV4Zpxd91LrFixAt7e3mjdujXi4uJw69YtaVlNqHtRURFWrVqFmzdvwmAw1KpjfnfdS9T0Y16eav0k3sry559/oqioqMzPFOh0Ovz2229VVKoHFxISguXLl6N58+a4fPkyZs6cie7duyM1NRVGoxEqlarMD1zqdDoYjUYAgNFotNgGJcvulcdsNuOvv/6Ci4uLjWpXcSVltVTO0vXw8fGRLXd0dISXl5csT2BgYJltlCzz9PQstz1KtlEV+vTpg+eeew6BgYE4e/Ys3n77bURERCAxMREODg41pu7FxcWYMGECunbtitatW0tlq4zz/Nq1a1V6zbBUdwB46aWXEBAQAD8/Pxw7dgxTp05FWloa1q1bd896lSy7V56qrvvx48dhMBhw+/ZtuLu7Y/369QgKCkJKSkqNP+bl1R2o2cf8fhjA1CARERHS323atEFISAgCAgKwevXqahFYUOUYMmSI9HdwcDDatGmDJk2aYPfu3QgNDa3CkllXdHQ0UlNTsW/fvqouSqUrr+5jx46V/g4ODoavry9CQ0Nx9uxZNGnSpLKLaVXNmzdHSkoKTCYT1q5di6ioKOzZs6eqi1Upyqt7UFBQjT7m98NbSAC8vb3h4OBQZtR6VlYW9Hp9FZXq0Xl4eOCxxx5Deno69Ho98vPzkZubK8tTuo56vd5iG5Qsu1cejUZTbYKkkrLe63jq9XpkZ2fLlhcWFiInJ8cq7VGdzpvGjRvD29sb6enpAGpG3WNiYrBp0ybs2rULDRo0kNIr6zyvymtGeXW3JCQkBABkx16pdVepVGjatCnat2+P2bNno23btvj8889rxTEvr+6W1KRjfj8MYHDn5Gjfvj0SEhKktOLiYiQkJMjuMyrNjRs3cPbsWfj6+qJ9+/ZwcnKS1TEtLQ2ZmZlSHQ0GA44fPy77couPj4dGo5G6Kw0Gg2wbJXmqUzsFBgZCr9fLymk2m5GUlCSra25uLpKTk6U8O3fuRHFxsXQBMBgM2Lt3LwoKCqQ88fHxaN68OTw9PaU81b09/vjjD1y9ehW+vr4AlF13IQRiYmKwfv167Ny5s8xtrso6z6vimnG/uluSkpICALJjr8S6W1JcXIy8vLwafczLU1J3S2ryMS+jyoYPVzOrVq0SarVaLF++XJw8eVKMHTtWeHh4yEZuV3dvvvmm2L17t8jIyBD79+8XYWFhwtvbW2RnZwsh7kw1bNiwodi5c6c4fPiwMBgMwmAwSOuXTLfr3bu3SElJEdu2bRP16tWzON1uypQp4tSpU2LRokVVMo36+vXr4siRI+LIkSMCgPj000/FkSNHxPnz54UQd6ZRe3h4iI0bN4pjx46JAQMGWJxG/fjjj4ukpCSxb98+0axZM9lU4tzcXKHT6cTw4cNFamqqWLVqlXB1dS0zldjR0VHMmzdPnDp1SsyYMcPmU4nvVffr16+LyZMni8TERJGRkSF27NghnnjiCdGsWTNx+/Ztxdd9/PjxQqvVit27d8umjd66dUvKU1nneWVfM+5X9/T0dDFr1ixx+PBhkZGRITZu3CgaN24sevToofi6x8bGij179oiMjAxx7NgxERsbK+zs7MT27duFEDX3mN+v7jX5mFcEA5hSFi5cKBo2bChUKpXo1KmTOHDgQFUX6YEMHjxY+Pr6CpVKJerXry8GDx4s0tPTpeV//fWXePXVV4Wnp6dwdXUVzz77rLh8+bJsG+fOnRMRERHCxcVFeHt7izfffFMUFBTI8uzatUu0a9dOqFQq0bhxY7Fs2bLKqF6ZMgAo84qKihJC3JlK/e677wqdTifUarUIDQ0VaWlpsm1cvXpVDB06VLi7uwuNRiNGjRolrl+/Lstz9OhR0a1bN6FWq0X9+vXFnDlzypRl9erV4rHHHhMqlUq0atVKbN682Wb1FuLedb9165bo3bu3qFevnnBychIBAQFizJgxZS4ySq27pXoDkJ2DlXmeV+Y14351z8zMFD169BBeXl5CrVaLpk2biilTpsieCSKEMuv+8ssvi4CAAKFSqUS9evVEaGioFLwIUXOPuRD3rntNPuYVYSeEEJXX30NERET06DgGhoiIiBSHAQwREREpDgMYIiIiUhwGMERERKQ4DGCIiIhIcRjAEBERkeIwgCEiIiLFYQBDREREisMAhoiIiBSHAQwREREpjmNVF8BWiouLcenSJdSpUwd2dnZVXRwiIiKqACEErl+/Dj8/P9jbl9/PUmMDmEuXLsHf37+qi0FEREQP4cKFC2jQoEG5y2tsAFOnTh0AdxpAo9FUcWmIiIioIsxmM/z9/aXv8fLU2ACm5LaRRqNhAENERKQw9xv+wUG8REREpDgMYIiIiEhxGMAQERGR4jCAISIiIsVhAENERESKwwCGiNAodjMaxW6u6mIQEVUYAxgiIiJSHAYwRArEHhMiqu0eOIDZu3cv+vfvDz8/P9jZ2WHDhg2y5UIITJ8+Hb6+vnBxcUFYWBjOnDkjy5OTk4Nhw4ZBo9HAw8MDo0ePxo0bN2R5jh07hu7du8PZ2Rn+/v6YO3fug9eOiIiIaqQHDmBu3ryJtm3bYtGiRRaXz507FwsWLMDSpUuRlJQENzc3hIeH4/bt21KeYcOG4cSJE4iPj8emTZuwd+9ejB07VlpuNpvRu3dvBAQEIDk5GR9//DHee+89fPnllw9RRSIiIqppHvinBCIiIhAREWFxmRAC8+fPx7Rp0zBgwAAAwHfffQedTocNGzZgyJAhOHXqFLZt24ZDhw6hQ4cOAICFCxeib9++mDdvHvz8/LBixQrk5+fjm2++gUqlQqtWrZCSkoJPP/1UFugQERFR7WTVMTAZGRkwGo0ICwuT0rRaLUJCQpCYmAgASExMhIeHhxS8AEBYWBjs7e2RlJQk5enRowdUKpWUJzw8HGlpabh27ZrFfefl5cFsNsteREREVDNZNYAxGo0AAJ1OJ0vX6XTSMqPRCB8fH9lyR0dHeHl5yfJY2kbpfdxt9uzZ0Gq10svf3//RK0RERETVUo2ZhRQXFweTySS9Lly4UNVFIiIiIhuxagCj1+sBAFlZWbL0rKwsaZler0d2drZseWFhIXJycmR5LG2j9D7uplarodFoZC8iIiKqmawawAQGBkKv1yMhIUFKM5vNSEpKgsFgAAAYDAbk5uYiOTlZyrNz504UFxcjJCREyrN3714UFBRIeeLj49G8eXN4enpas8hENZql58XwGTJEVBM88CykGzduID09XXqfkZGBlJQUeHl5oWHDhpgwYQI++OADNGvWDIGBgXj33Xfh5+eHgQMHAgBatmyJPn36YMyYMVi6dCkKCgoQExODIUOGwM/PDwDw0ksvYebMmRg9ejSmTp2K1NRUfP755/jss8+sU2uiGqJ0IHJuTuRDr0tEpDQPHMAcPnwYTz75pPR+0qRJAICoqCgsX74cb731Fm7evImxY8ciNzcX3bp1w7Zt2+Ds7Cyts2LFCsTExCA0NBT29vYYNGgQFixYIC3XarXYvn07oqOj0b59e3h7e2P69OmcQk1EREQAADshhKjqQtiC2WyGVquFyWTieBhSnPv1rNyr96R0/pJ8ltLuty4RUVWo6Pd3jZmFRES2x/EzRFRdMIAhIiIixXngMTBEVDUq2vNhKR97TYiopmEPDBE9Et5WIqKqwB4YIpJYCkQ4sJeIqiP2wBAREZHiMIAhIiIixeEtJCK6J45vIaLqiD0wREREpDjsgSGq5tgDQkRUFgMYIrKKR/lhSSKiB8UAhqgaUUpvi1LKSUQ1FwMYoipWE4MBSz8iSURkTRzES0RERIrDAIaIiIgUhwEMERERKQ7HwBBVkZo49oWIqLKwB4aIiIgUhz0wRGQzfDYMEdmK1XtgioqK8O677yIwMBAuLi5o0qQJ3n//fQghpDxCCEyfPh2+vr5wcXFBWFgYzpw5I9tOTk4Ohg0bBo1GAw8PD4wePRo3btywdnGJiIhIgazeA/P3v/8dS5YswbfffotWrVrh8OHDGDVqFLRaLV5//XUAwNy5c7FgwQJ8++23CAwMxLvvvovw8HCcPHkSzs7OAIBhw4bh8uXLiI+PR0FBAUaNGoWxY8di5cqV1i4yUaXhuBciIuuwE6W7RqygX79+0Ol0+Prrr6W0QYMGwcXFBd9//z2EEPDz88Obb76JyZMnAwBMJhN0Oh2WL1+OIUOG4NSpUwgKCsKhQ4fQoUMHAMC2bdvQt29f/PHHH/Dz87tvOcxmM7RaLUwmEzQajTWrSPTQanMAw1tIRFQRFf3+tvotpC5duiAhIQGnT58GABw9ehT79u1DREQEACAjIwNGoxFhYWHSOlqtFiEhIUhMTAQAJCYmwsPDQwpeACAsLAz29vZISkqydpGJqIo0it1cq4M6Inp4Vr+FFBsbC7PZjBYtWsDBwQFFRUX48MMPMWzYMACA0WgEAOh0Otl6Op1OWmY0GuHj4yMvqKMjvLy8pDx3y8vLQ15envTebDZbrU5ERERUvVi9B2b16tVYsWIFVq5cif/+97/49ttvMW/ePHz77bfW3pXM7NmzodVqpZe/v79N90dERERVx+oBzJQpUxAbG4shQ4YgODgYw4cPx8SJEzF79mwAgF6vBwBkZWXJ1svKypKW6fV6ZGdny5YXFhYiJydHynO3uLg4mEwm6XXhwgVrV42IiIiqCasHMLdu3YK9vXyzDg4OKC4uBgAEBgZCr9cjISFBWm42m5GUlASDwQAAMBgMyM3NRXJyspRn586dKC4uRkhIiMX9qtVqaDQa2YuouuBYD7YBEVmX1cfA9O/fHx9++CEaNmyIVq1a4ciRI/j000/x8ssvAwDs7OwwYcIEfPDBB2jWrJk0jdrPzw8DBw4EALRs2RJ9+vTBmDFjsHTpUhQUFCAmJgZDhgyp0AwkIiIiqtmsHsAsXLgQ7777Ll599VVkZ2fDz88Pr7zyCqZPny7leeutt3Dz5k2MHTsWubm56NatG7Zt2yY9AwYAVqxYgZiYGISGhsLe3h6DBg3CggULrF1cIiIiUiCrPwemuuBzYKiq8XaJZaWfB1PSRnxGDBGVqOj3N38LiYgqFQM7IrIG/ho1ERERKQ4DGCIiIlIc3kIisgLeFnk0pduP42GIqCLYA0NERESKwwCGiKoVPvCOiCqCAQwREREpDgMYIiIiUhwGMERERKQ4DGCIiIhIcTiNmoiqJU6tJqJ7YQ8MERERKQ4DGCIiIlIcBjBERESkOBwDQ/QI+MC1ylHSzhwLQ0Ql2ANDREREisMeGCJSDM5MIqIS7IEhIiIixWEAQ0RERIrDAIaIiIgUxyYBzMWLF/G3v/0NdevWhYuLC4KDg3H48GFpuRAC06dPh6+vL1xcXBAWFoYzZ87ItpGTk4Nhw4ZBo9HAw8MDo0ePxo0bN2xRXCIiIlIYqwcw165dQ9euXeHk5IStW7fi5MmT+OSTT+Dp6SnlmTt3LhYsWIClS5ciKSkJbm5uCA8Px+3bt6U8w4YNw4kTJxAfH49NmzZh7969GDt2rLWLS0RERApkJ4QQ1txgbGws9u/fj19++cXiciEE/Pz88Oabb2Ly5MkAAJPJBJ1Oh+XLl2PIkCE4deoUgoKCcOjQIXTo0AEAsG3bNvTt2xd//PEH/Pz87lsOs9kMrVYLk8kEjUZjvQoSlcLnwFQdzkIiqpkq+v1t9R6Yn376CR06dMALL7wAHx8fPP744/jqq6+k5RkZGTAajQgLC5PStFotQkJCkJiYCABITEyEh4eHFLwAQFhYGOzt7ZGUlGRxv3l5eTCbzbIXkTU1it3MgKUa4fEgqt2s/hyY33//HUuWLMGkSZPw9ttv49ChQ3j99dehUqkQFRUFo9EIANDpdLL1dDqdtMxoNMLHx0deUEdHeHl5SXnuNnv2bMycOdPa1SEqg1+aRERVz+o9MMXFxXjiiSfw0Ucf4fHHH8fYsWMxZswYLF261Nq7komLi4PJZJJeFy5csOn+iIiIqOpYPYDx9fVFUFCQLK1ly5bIzMwEAOj1egBAVlaWLE9WVpa0TK/XIzs7W7a8sLAQOTk5Up67qdVqaDQa2YuIiIhqJqsHMF27dkVaWpos7fTp0wgICAAABAYGQq/XIyEhQVpuNpuRlJQEg8EAADAYDMjNzUVycrKUZ+fOnSguLkZISIi1i0xEREQKY/UxMBMnTkSXLl3w0Ucf4cUXX8TBgwfx5Zdf4ssvvwQA2NnZYcKECfjggw/QrFkzBAYG4t1334Wfnx8GDhwI4E6PTZ8+faRbTwUFBYiJicGQIUMqNAOJiIiIajarT6MGgE2bNiEuLg5nzpxBYGAgJk2ahDFjxkjLhRCYMWMGvvzyS+Tm5qJbt25YvHgxHnvsMSlPTk4OYmJi8J///Af29vYYNGgQFixYAHd39wqVgdOoydo4eLf649RqIuWr6Pe3TQKY6oABDFkbA5jqjwEMkfJV2XNgiIiIiGyNAQwREREpjtUH8RLVJLxtpEyljxtvKxHVTAxgiKjGYMBJVHvwFhIREREpDgMYIiIiUhzeQiL6H46bICJSDvbAEBERkeIwgCEiIiLF4S0kIgs4m6VmKzm+vFVIpFwMYIioVmBQSlSzMIAhohqNgQtRzcQxMERERKQ47IEholqLU+eJlIs9MERERKQ4DGCIiIhIcRjAEBERkeIwgCEiIiLFYQBDREREisNZSFQrcfYJEZGy2bwHZs6cObCzs8OECROktNu3byM6Ohp169aFu7s7Bg0ahKysLNl6mZmZiIyMhKurK3x8fDBlyhQUFhbaurhERESkADbtgTl06BC++OILtGnTRpY+ceJEbN68GWvWrIFWq0VMTAyee+457N+/HwBQVFSEyMhI6PV6/Prrr7h8+TJGjBgBJycnfPTRR7YsMtVCfFIrEZHy2KwH5saNGxg2bBi++uoreHp6Sukmkwlff/01Pv30Uzz11FNo3749li1bhl9//RUHDhwAAGzfvh0nT57E999/j3bt2iEiIgLvv/8+Fi1ahPz8fFsVmYiIiBTCZgFMdHQ0IiMjERYWJktPTk5GQUGBLL1FixZo2LAhEhMTAQCJiYkIDg6GTqeT8oSHh8NsNuPEiRMW95eXlwez2Sx7ERFVVKPYzeyNI1IQm9xCWrVqFf773//i0KFDZZYZjUaoVCp4eHjI0nU6HYxGo5SndPBSsrxkmSWzZ8/GzJkzrVB6IiIiqu6s3gNz4cIFvPHGG1ixYgWcnZ2tvflyxcXFwWQySa8LFy5U2r6JiIioclk9gElOTkZ2djaeeOIJODo6wtHREXv27MGCBQvg6OgInU6H/Px85ObmytbLysqCXq8HAOj1+jKzkkrel+S5m1qthkajkb2IiIioZrL6LaTQ0FAcP35cljZq1Ci0aNECU6dOhb+/P5ycnJCQkIBBgwYBANLS0pCZmQmDwQAAMBgM+PDDD5GdnQ0fHx8AQHx8PDQaDYKCgqxdZCIiiaVxMHxWEFH1Y/UApk6dOmjdurUszc3NDXXr1pXSR48ejUmTJsHLywsajQavvfYaDAYDOnfuDADo3bs3goKCMHz4cMydOxdGoxHTpk1DdHQ01Gq1tYtMREREClMlT+L97LPPYG9vj0GDBiEvLw/h4eFYvHixtNzBwQGbNm3C+PHjYTAY4ObmhqioKMyaNasqiktERETVjJ0QQlR1IWzBbDZDq9XCZDJxPAyVwemy9LB4O4nItir6/c3fQqIaj8EKEVHNw1+jJiIiIsVhAENERESKw1tIREQPofStSY6LIap87IEhIiIixWEPDBHRA+CgcKLqgQEM1Vj8oiEiqrl4C4mI6BE1it3MgJmokjGAISIiIsXhLSSqUfhfMBFR7cAeGCIiIlIcBjBERESkOAxgiIiISHE4BoZqBI59ISKqXRjAEBHZEH9ygMg2eAuJiIiIFIc9MKRYvG1E1Q3PSaLKwx4YIiIiUhwGMERERKQ4Vg9gZs+ejY4dO6JOnTrw8fHBwIEDkZaWJstz+/ZtREdHo27dunB3d8egQYOQlZUly5OZmYnIyEi4urrCx8cHU6ZMQWFhobWLS0RERApk9QBmz549iI6OxoEDBxAfH4+CggL07t0bN2/elPJMnDgR//nPf7BmzRrs2bMHly5dwnPPPSctLyoqQmRkJPLz8/Hrr7/i22+/xfLlyzF9+nRrF5eIiIgUyE4IIWy5gytXrsDHxwd79uxBjx49YDKZUK9ePaxcuRLPP/88AOC3335Dy5YtkZiYiM6dO2Pr1q3o168fLl26BJ1OBwBYunQppk6diitXrkClUt13v2azGVqtFiaTCRqNxpZVpCrCAZNUE3BqNZFcRb+/bT4GxmQyAQC8vLwAAMnJySgoKEBYWJiUp0WLFmjYsCESExMBAImJiQgODpaCFwAIDw+H2WzGiRMnbF1kquYaxW5m8EJEVMvZdBp1cXExJkyYgK5du6J169YAAKPRCJVKBQ8PD1lenU4Ho9Eo5SkdvJQsL1lmSV5eHvLy8qT3ZrPZWtUgIiKiasamPTDR0dFITU3FqlWrbLkbAHcGD2u1Wunl7+9v830SERFR1bBZABMTE4NNmzZh165daNCggZSu1+uRn5+P3NxcWf6srCzo9Xopz92zkkrel+S5W1xcHEwmk/S6cOGCFWtDRGQbvCVK9HCsHsAIIRATE4P169dj586dCAwMlC1v3749nJyckJCQIKWlpaUhMzMTBoMBAGAwGHD8+HFkZ2dLeeLj46HRaBAUFGRxv2q1GhqNRvYiIiKimsnqY2Cio6OxcuVKbNy4EXXq1JHGrGi1Wri4uECr1WL06NGYNGkSvLy8oNFo8Nprr8FgMKBz584AgN69eyMoKAjDhw/H3LlzYTQaMW3aNERHR0OtVlu7yERERKQwVg9glixZAgDo1auXLH3ZsmUYOXIkAOCzzz6Dvb09Bg0ahLy8PISHh2Px4sVSXgcHB2zatAnjx4+HwWCAm5sboqKiMGvWLGsXl4io2im5pcQp1kTls/lzYKoKnwNTs3CMANV0pYMVS+c7gxmqLSr6/c1foyYiqgbuF6SzV4ZIjgEMVWvseSEiIkv4a9RERESkOOyBoWqHvS5ERHQ/7IEhIlIoPgSPajP2wFC1wQsxERFVFAMYIiIFYaBPdAcDGCIiheNzY6g24hgYIiIiUhz2wFCVYnc4ERE9DAYwVCUYuBDZVnmfMd5aopqCt5CIiIhIcdgDQ5WGvS5EVY+/qUQ1BXtgiIiISHHYA0M2wd4Wouqt9GeUvTGkROyBISIiIsVhDww9Mva2ECnbvR6Ex54aqq7shBCiqgthC2azGVqtFiaTCRqNpqqLUyMxcCGqnUoHMhwUTNZW0e9v9sAQEdEDud8/LwxqqDIwgKEHwl4XIrKE1waqbNV6EO+iRYvQqFEjODs7IyQkBAcPHqzqItUKjWI3l7kYWUojIrI2XmuooqptD8yPP/6ISZMmYenSpQgJCcH8+fMRHh6OtLQ0+Pj4VHXxFK2iv1zLiwgRPYr7XUN4i4keRbUdxBsSEoKOHTviH//4BwCguLgY/v7+eO211xAbG3vf9Wv6IF5L95jvlUZEpFQMdGoXRQ/izc/PR3JyMuLi4qQ0e3t7hIWFITEx0eI6eXl5yMvLk96bTCYAdxrC2lrP+Fn6O3VmuE3WLZ3PUv7ivFsAgIYT15TJZymNiEiprHFNK339LLm+Wkorbx2qPCXf2/ftXxHV0MWLFwUA8euvv8rSp0yZIjp16mRxnRkzZggAfPHFF1988cVXDXhduHDhnrFCteyBeRhxcXGYNGmS9L64uBg5OTmoW7cu7OzsKrQNs9kMf39/XLhwoUbedrI2tlfFsa0qjm31YNheFce2ejBV1V5CCFy/fh1+fn73zFctAxhvb284ODggKytLlp6VlQW9Xm9xHbVaDbVaLUvz8PB4qP1rNBqe3A+A7VVxbKuKY1s9GLZXxbGtHkxVtJdWq71vnmo5jVqlUqF9+/ZISEiQ0oqLi5GQkACDwVCFJSMiIqLqoFr2wADApEmTEBUVhQ4dOqBTp06YP38+bt68iVGjRlV10YiIiKiKVdsAZvDgwbhy5QqmT58Oo9GIdu3aYdu2bdDpdDbbp1qtxowZM8rciiLL2F4Vx7aqOLbVg2F7VRzb6sFU9/aqts+BISIiIipPtRwDQ0RERHQvDGCIiIhIcRjAEBERkeIwgCEiIiLFYQBTyqJFi9CoUSM4OzsjJCQEBw8erOoi2dR7770HOzs72atFixbS8tu3byM6Ohp169aFu7s7Bg0aVObhgpmZmYiMjISrqyt8fHwwZcoUFBYWyvLs3r0bTzzxBNRqNZo2bYrly5dXRvUe2d69e9G/f3/4+fnBzs4OGzZskC0XQmD69Onw9fWFi4sLwsLCcObMGVmenJwcDBs2DBqNBh4eHhg9ejRu3Lghy3Ps2DF0794dzs7O8Pf3x9y5c8uUZc2aNWjRogWcnZ0RHByMLVu2WL2+j+J+bTVy5Mgy51qfPn1keWpLW82ePRsdO3ZEnTp14OPjg4EDByItLU2WpzI/e9X5uleRturVq1eZc2vcuHGyPLWhrQBgyZIlaNOmjfTgOYPBgK1bt0rLa9x5ZZUfL6oBVq1aJVQqlfjmm2/EiRMnxJgxY4SHh4fIysqq6qLZzIwZM0SrVq3E5cuXpdeVK1ek5ePGjRP+/v4iISFBHD58WHTu3Fl06dJFWl5YWChat24twsLCxJEjR8SWLVuEt7e3iIuLk/L8/vvvwtXVVUyaNEmcPHlSLFy4UDg4OIht27ZVal0fxpYtW8Q777wj1q1bJwCI9evXy5bPmTNHaLVasWHDBnH06FHxzDPPiMDAQPHXX39Jefr06SPatm0rDhw4IH755RfRtGlTMXToUGm5yWQSOp1ODBs2TKSmpooffvhBuLi4iC+++ELKs3//fuHg4CDmzp0rTp48KaZNmyacnJzE8ePHbd4GFXW/toqKihJ9+vSRnWs5OTmyPLWlrcLDw8WyZctEamqqSElJEX379hUNGzYUN27ckPJU1mevul/3KtJWPXv2FGPGjJGdWyaTSVpeW9pKCCF++uknsXnzZnH69GmRlpYm3n77beHk5CRSU1OFEDXvvGIA8z+dOnUS0dHR0vuioiLh5+cnZs+eXYWlsq0ZM2aItm3bWlyWm5srnJycxJo1a6S0U6dOCQAiMTFRCHHnS8ve3l4YjUYpz5IlS4RGoxF5eXlCCCHeeust0apVK9m2Bw8eLMLDw61cG9u6+0u5uLhY6PV68fHHH0tpubm5Qq1Wix9++EEIIcTJkycFAHHo0CEpz9atW4WdnZ24ePGiEEKIxYsXC09PT6m9hBBi6tSponnz5tL7F198UURGRsrKExISIl555RWr1tFaygtgBgwYUO46tbWthBAiOztbABB79uwRQlTuZ09p172720qIOwHMG2+8Ue46tbWtSnh6eop//vOfNfK84i0kAPn5+UhOTkZYWJiUZm9vj7CwMCQmJlZhyWzvzJkz8PPzQ+PGjTFs2DBkZmYCAJKTk1FQUCBrkxYtWqBhw4ZSmyQmJiI4OFj2cMHw8HCYzWacOHFCylN6GyV5lN6uGRkZMBqNsrpptVqEhITI2sfDwwMdOnSQ8oSFhcHe3h5JSUlSnh49ekClUkl5wsPDkZaWhmvXrkl5akIb7t69Gz4+PmjevDnGjx+Pq1evSstqc1uZTCYAgJeXF4DK++wp8bp3d1uVWLFiBby9vdG6dWvExcXh1q1b0rLa2lZFRUVYtWoVbt68CYPBUCPPq2r7JN7K9Oeff6KoqKjMU351Oh1+++23KiqV7YWEhGD58uVo3rw5Ll++jJkzZ6J79+5ITU2F0WiESqUq84OYOp0ORqMRAGA0Gi22Wcmye+Uxm83466+/4OLiYqPa2VZJ/SzVrXTdfXx8ZMsdHR3h5eUlyxMYGFhmGyXLPD09y23Dkm0oQZ8+ffDcc88hMDAQZ8+exdtvv42IiAgkJibCwcGh1rZVcXExJkyYgK5du6J169YAUGmfvWvXrinqumeprQDgpZdeQkBAAPz8/HDs2DFMnToVaWlpWLduHYDa11bHjx+HwWDA7du34e7ujvXr1yMoKAgpKSk17rxiAFOLRURESH+3adMGISEhCAgIwOrVqxUbWFD1NGTIEOnv4OBgtGnTBk2aNMHu3bsRGhpahSWrWtHR0UhNTcW+ffuquijVXnltNXbsWOnv4OBg+Pr6IjQ0FGfPnkWTJk0qu5hVrnnz5khJSYHJZMLatWsRFRWFPXv2VHWxbIK3kAB4e3vDwcGhzGjsrKws6PX6KipV5fPw8MBjjz2G9PR06PV65OfnIzc3V5andJvo9XqLbVay7F55NBqNooOkkvrd65zR6/XIzs6WLS8sLEROTo5V2lDJ52bjxo3h7e2N9PR0ALWzrWJiYrBp0ybs2rULDRo0kNIr67OnpOteeW1lSUhICADIzq3a1FYqlQpNmzZF+/btMXv2bLRt2xaff/55jTyvGMDgzgFv3749EhISpLTi4mIkJCTAYDBUYckq140bN3D27Fn4+vqiffv2cHJykrVJWloaMjMzpTYxGAw4fvy47IsnPj4eGo0GQUFBUp7S2yjJo/R2DQwMhF6vl9XNbDYjKSlJ1j65ublITk6W8uzcuRPFxcXSRdZgMGDv3r0oKCiQ8sTHx6N58+bw9PSU8tS0Nvzjjz9w9epV+Pr6AqhdbSWEQExMDNavX4+dO3eWuS1WWZ89JVz37tdWlqSkpACA7NyqDW1VnuLiYuTl5dXM88qqQ4IVbNWqVUKtVovly5eLkydPirFjxwoPDw/ZaOya5s033xS7d+8WGRkZYv/+/SIsLEx4e3uL7OxsIcSdKXcNGzYUO3fuFIcPHxYGg0EYDAZp/ZIpd7179xYpKSli27Ztol69ehan3E2ZMkWcOnVKLFq0SDHTqK9fvy6OHDkijhw5IgCITz/9VBw5ckScP39eCHFnGrWHh4fYuHGjOHbsmBgwYIDFadSPP/64SEpKEvv27RPNmjWTTQ3Ozc0VOp1ODB8+XKSmpopVq1YJV1fXMlODHR0dxbx588SpU6fEjBkzqt3U4Hu11fXr18XkyZNFYmKiyMjIEDt27BBPPPGEaNasmbh9+7a0jdrSVuPHjxdarVbs3r1bNvX31q1bUp7K+uxV9+ve/doqPT1dzJo1Sxw+fFhkZGSIjRs3isaNG4sePXpI26gtbSWEELGxsWLPnj0iIyNDHDt2TMTGxgo7Ozuxfft2IUTNO68YwJSycOFC0bBhQ6FSqUSnTp3EgQMHqrpINjV48GDh6+srVCqVqF+/vhg8eLBIT0+Xlv/111/i1VdfFZ6ensLV1VU8++yz4vLly7JtnDt3TkRERAgXFxfh7e0t3nzzTVFQUCDLs2vXLtGuXTuhUqlE48aNxbJlyyqjeo9s165dAkCZV1RUlBDizlTqd999V+h0OqFWq0VoaKhIS0uTbePq1ati6NChwt3dXWg0GjFq1Chx/fp1WZ6jR4+Kbt26CbVaLerXry/mzJlTpiyrV68Wjz32mFCpVKJVq1Zi8+bNNqv3w7hXW926dUv07t1b1KtXTzg5OYmAgAAxZsyYMhez2tJWltoJgOxzUZmfvep83btfW2VmZooePXoILy8voVarRdOmTcWUKVNkz4ERona0lRBCvPzyyyIgIECoVCpRr149ERoaKgUvQtS888pOCCGs26dDREREZFscA0NERESKwwCGiIiIFIcBDBERESkOAxgiIiJSHAYwREREpDgMYIiIiEhxGMAQERGR4jCAISIiIsVhAENERESKwwCGiIiIFIcBDBERESkOAxgiIiJSnP8Hs9voJ0+PK34AAAAASUVORK5CYII=\n", "text/plain": [ "
" ] @@ -47,28 +39,34 @@ "import matplotlib.pyplot as plt\n", "\n", "TIME=1000\n", + "POP=100_000\n", "\n", "# inheritance\n", - "res = sim.pop_simple(TIME, 81, 1000, 1000, 10, 10_000, 0.04, 1)\n", + "res = sim.pop_simple(TIME, 81, 1000, 1000, 10, POP, 0.04, 1)\n", "# even dist.\n", - "res2 = sim.pop_simple(TIME, 81, 1000, 1000, 10, 10_000, 0.04, 0)\n", + "res2 = sim.pop_simple(TIME, 81, 1000, 1000, 10, POP, 0.04, 0)\n", "\n", - "BINS=100\n", + "BINS=180\n", "\n", "fig, axs = plt.subplots(2, 1)\n", "axs[0].hist(res.balances, bins=BINS)\n", - "# axs[0].title=\"Balances (inheritance)\"\n", - "\n", "axs[1].hist(res2.balances, bins=BINS)\n", - "# axs[1].title=\"Balances (inheritance)\"\n", - "\n", + "fig.suptitle(\"Inheritance (top), Even Redistribution (bottom)\")\n", "plt.show()" ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "a63bbb0e", + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { "kernelspec": { - "display_name": "Python 3.10.8 ('test-econ-model-hCG_3f02')", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, diff --git a/pop-simple.hpp b/pop-simple.hpp index 12444cc..549b4d3 100644 --- a/pop-simple.hpp +++ b/pop-simple.hpp @@ -88,25 +88,6 @@ PopSimpleResult pop_simple( } } - // if (year % 100 == 0) { - // int avg = 0; - // int avg_age = 0; - // for (int i = 0; i < balances.size(); i++) { - // avg += balances[i]; - // } - // for (int i = 0; i < balances.size(); i++) { - // avg_age += ages[i]; - // } - // avg /= balances.size(); - // avg_age /= ages.size(); - // std::cout << std::endl; - // std::cout << "year: " << year << std::endl; - // std::cout << "avg bal: " << avg << std::endl; - // std::cout << "avg age: " << avg_age << std::endl; - // std::cout << "players: " << balances.size() << std::endl; - // } - - // reset redist tally redist_total = redist_total_next; redist_total_next = 0; @@ -130,3 +111,4 @@ PopSimpleResult pop_simple( res.balances = balances; return res; } +