conviction/abc_sim-simpler.ipynb

594 lines
94 KiB
Plaintext

{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"#import networkx as nx\n",
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"import scipy.stats as sts\n",
"import seaborn as sns\n",
"\n",
"%matplotlib inline\n",
"\n",
"#import conviction files\n",
"#from conviction_helpers import *\n",
"#from conviction_system_logic3 import *\n",
"from bonding_curve_eq import *"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"System initialization"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"hatch_raise = 100000 # fiat units\n",
"hatch_price = .1 #fiat per tokens\n",
"theta = .5 #share of funds going to funding pool at launch\n",
"\n",
"R0 = hatch_raise*(1-theta)\n",
"F0 = hatch_raise*theta\n",
"S0 = hatch_raise/hatch_price\n",
"\n",
"kappa = 2\n",
"V0 = invariant(R0,S0,kappa)\n",
"P0 = spot_price(R0, V0, kappa)\n",
"\n",
"dust = 10**-8"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"agent initialization"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"#number of agents\n",
"n= 100\n",
"\n",
"#gain factors\n",
"g = np.random.normal(2, .5, size=n)\n",
"phat0 = g*F0/S0 #derivative, integral and proportion\n",
"#agents as controllers, co-steering\n",
"\n",
"#wakeup rates\n",
"gamma = sts.expon.rvs(loc=1,scale=5, size=n)\n",
"\n",
"#holdings fiat\n",
"h = sts.expon.rvs( loc=100,scale=1000, size=n)\n",
"\n",
"#holdings tokens\n",
"s_dist = sts.expon.rvs(loc=10, scale=10, size=n)\n",
"s0 = s_dist/sum(s_dist)*S0\n",
"\n",
"#lambda for revenue process\n",
"lam = 200\n",
"\n",
"#phi for exiting funds\n",
"phi = 0\n",
"\n",
"#beta is param for armijo rule\n",
"beta = .9\n",
"\n",
"#param for open loop\n",
"rules = [\"step\", \"ramp\", \"martin\"] # step or \"ramp\" or \"martin\""
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"params= {\n",
" 'kappa': [kappa],\n",
"# 'lambda': [lam],\n",
"# 'gains': [g],\n",
"# 'rates':[1/gamma],\n",
"# 'population':[n],\n",
"# 'beta':[beta],\n",
" 'phi': [phi],\n",
" 'invariant': [V0],\n",
" 'dust' : [dust],\n",
" 'rule' : rules,\n",
" 'dP' : [P0/100]}"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [],
"source": [
"initial_conditions = {'supply': S0,\n",
" 'price': P0,\n",
" 'reserve': R0,\n",
" 'spot_price': P0\n",
" }"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'price': 0.09999999999999999,\n",
" 'reserve': 50000.0,\n",
" 'spot_price': 0.09999999999999999,\n",
" 'supply': 1000000.0}"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"initial_conditions"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [],
"source": [
"def set_action(params, step, sL, s):\n",
" \n",
" R = s['reserve']\n",
" S = s['supply']\n",
" V0 = params['invariant']\n",
" P=s['spot_price']\n",
" \n",
" if params['rule'] == 'step':\n",
" new_price = s['price']\n",
" elif params['rule'] == 'ramp':\n",
" new_price = s['price'] + params['dP']\n",
" else :\n",
" rv = np.random.normal(1.0, .05, size=1)\n",
" new_price = rv*s['price']\n",
" \n",
" if P>new_price: #equiv: pbar(0)>phat_a\n",
" mech = 'burn'\n",
" \n",
" #approx for burn s.t. p=phat\n",
" #armijo style\n",
" amt = 9*S/10\n",
"\n",
" def pbar(amt):\n",
" output = withdraw(amt, R,S, V0, params['kappa'])\n",
"\n",
" if not(output[1])>0:\n",
" return np.Infinity\n",
" elif amt==0:\n",
" return P\n",
" else:\n",
" return output[1]\n",
"\n",
" if amt > params['dust']:\n",
" while pbar(amt)< new_price:\n",
" amt = amt*beta\n",
"\n",
" else: # P<phat_a; #equiv pbar(0)<phat_a\n",
" mech = 'bond'\n",
" #approx for buy s.t. p=phat\n",
" #armijo style\n",
" amt = 9*R/10\n",
"\n",
" def pbar(amt):\n",
" output = mint(amt, R,S, V0, params['kappa'])\n",
" \n",
" if not(output[1])>0:\n",
" return 0\n",
" elif amt==0:\n",
" return P\n",
" else:\n",
" return output[1]\n",
"\n",
" if amt > params['dust']:\n",
" while pbar(amt)> new_price:\n",
" amt = amt*beta\n",
" #print(mech)\n",
" #print(amt)\n",
" action = {'mech':mech, 'amt':amt, 'pbar':pbar(amt),'posterior':{}}\n",
" \n",
" if action['mech'] == 'bond':\n",
"\n",
" dS, pbar = mint(amt, R,S, V0, params['kappa'])\n",
" R = R+amt\n",
" S = S+dS\n",
" P = spot_price(R, V0, kappa)\n",
"\n",
" elif action['mech'] == 'burn':\n",
" dR, pbar = withdraw(amt, R,S, V0, params['kappa'])\n",
" R = R-dR\n",
" S = S-amt\n",
" P = spot_price(R, V0, kappa)\n",
"\n",
" action['posterior'] = {'S':S, 'R':R,'P':P}\n",
" \n",
" return {'action': action}"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [],
"source": [
"def update_S(params, step, sL, s, _input):\n",
" \n",
" action = _input['action']\n",
" S = action['posterior']['S']\n",
" \n",
" key = 'supply'\n",
" value = S\n",
" \n",
" return (key, value)\n",
"\n",
"def update_R(params, step, sL, s, _input):\n",
" \n",
" action = _input['action']\n",
" R = action['posterior']['R']\n",
" \n",
" key = 'reserve'\n",
" value = R\n",
" \n",
" return (key, value)\n",
"\n",
"def update_P(params, step, sL, s, _input):\n",
" \n",
" action = _input['action']\n",
" P = action['posterior']['P']\n",
" \n",
" key = 'spot_price'\n",
" value = P\n",
" \n",
" return (key, value)\n",
"\n",
"def update_Pbar(params, step, sL, s, _input):\n",
" \n",
" action = _input['action']\n",
" pbar = action['pbar']\n",
" \n",
" key = 'price'\n",
" value = pbar\n",
" \n",
" return (key, value)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [],
"source": [
"# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # \n",
"# The Partial State Update Blocks\n",
"partial_state_update_blocks = [\n",
" {\n",
" 'policies': {\n",
" 'act': set_action,\n",
" },\n",
" 'variables': {\n",
" 'supply': update_S, \n",
" 'reserve': update_R,\n",
" 'spot_price': update_P,\n",
" 'price': update_Pbar\n",
" }\n",
" }\n",
"]"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [],
"source": [
"time_periods_per_run = 5000\n",
"monte_carlo_runs = 1\n",
"\n",
"from cadCAD.configuration.utils import config_sim\n",
"simulation_parameters = config_sim({\n",
" 'T': range(time_periods_per_run),\n",
" 'N': monte_carlo_runs,\n",
" 'M': params\n",
"})"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[{'N': 1, 'T': range(0, 5000), 'M': {'kappa': 2, 'phi': 0, 'invariant': 20000000.0, 'dust': 1e-08, 'rule': 'step', 'dP': 0.001}}, {'N': 1, 'T': range(0, 5000), 'M': {'kappa': 2, 'phi': 0, 'invariant': 20000000.0, 'dust': 1e-08, 'rule': 'ramp', 'dP': 0.001}}, {'N': 1, 'T': range(0, 5000), 'M': {'kappa': 2, 'phi': 0, 'invariant': 20000000.0, 'dust': 1e-08, 'rule': 'martin', 'dP': 0.001}}]\n",
"[{'N': 1, 'T': range(0, 5000), 'M': {'kappa': 2, 'phi': 0, 'invariant': 20000000.0, 'dust': 1e-08, 'rule': 'step', 'dP': 0.001}}, {'N': 1, 'T': range(0, 5000), 'M': {'kappa': 2, 'phi': 0, 'invariant': 20000000.0, 'dust': 1e-08, 'rule': 'ramp', 'dP': 0.001}}, {'N': 1, 'T': range(0, 5000), 'M': {'kappa': 2, 'phi': 0, 'invariant': 20000000.0, 'dust': 1e-08, 'rule': 'martin', 'dP': 0.001}}]\n",
"[{'N': 1, 'T': range(0, 5000), 'M': {'kappa': 2, 'phi': 0, 'invariant': 20000000.0, 'dust': 1e-08, 'rule': 'step', 'dP': 0.001}}, {'N': 1, 'T': range(0, 5000), 'M': {'kappa': 2, 'phi': 0, 'invariant': 20000000.0, 'dust': 1e-08, 'rule': 'ramp', 'dP': 0.001}}, {'N': 1, 'T': range(0, 5000), 'M': {'kappa': 2, 'phi': 0, 'invariant': 20000000.0, 'dust': 1e-08, 'rule': 'martin', 'dP': 0.001}}]\n"
]
}
],
"source": [
"from cadCAD.configuration import append_configs\n",
"# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #\n",
"# The configurations above are then packaged into a `Configuration` object\n",
"append_configs(\n",
" initial_state=initial_conditions, #dict containing variable names and initial values\n",
" partial_state_update_blocks=partial_state_update_blocks, #dict containing state update functions\n",
" sim_configs=simulation_parameters #dict containing simulation parameters\n",
")"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [],
"source": [
"from tabulate import tabulate\n",
"from cadCAD.engine import ExecutionMode, ExecutionContext, Executor\n",
"from cadCAD import configs\n",
"import pandas as pd\n",
"\n",
"exec_mode = ExecutionMode()\n",
"multi_proc_ctx = ExecutionContext(context=exec_mode.multi_proc)\n",
"run = Executor(exec_context=multi_proc_ctx, configs=configs)"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
" __________ ____ \n",
" ________ __ _____/ ____/ | / __ \\\n",
" / ___/ __` / __ / / / /| | / / / /\n",
" / /__/ /_/ / /_/ / /___/ ___ |/ /_/ / \n",
" \\___/\\__,_/\\__,_/\\____/_/ |_/_____/ \n",
" by BlockScience\n",
" \n",
"Execution Mode: multi_proc: [<cadCAD.configuration.Configuration object at 0x1a1a74c898>, <cadCAD.configuration.Configuration object at 0x1a1a74c438>, <cadCAD.configuration.Configuration object at 0x1a1a74c8d0>]\n",
"Configurations: [<cadCAD.configuration.Configuration object at 0x1a1a74c898>, <cadCAD.configuration.Configuration object at 0x1a1a74c438>, <cadCAD.configuration.Configuration object at 0x1a1a74c8d0>]\n"
]
}
],
"source": [
"i = 0\n",
"verbose = False\n",
"results = {}\n",
"for raw_result, tensor_field in run.execute():\n",
" result = pd.DataFrame(raw_result)\n",
" if verbose:\n",
" print()\n",
" print(f\"Tensor Field: {type(tensor_field)}\")\n",
" print(tabulate(tensor_field, headers='keys', tablefmt='psql'))\n",
" print(f\"Output: {type(result)}\")\n",
" print(tabulate(result, headers='keys', tablefmt='psql'))\n",
" print()\n",
" results[i] = {}\n",
" results[i]['result'] = result\n",
" results[i]['simulation_parameters'] = simulation_parameters[i]\n",
" i += 1\n",
" "
]
},
{
"cell_type": "code",
"execution_count": 42,
"metadata": {},
"outputs": [],
"source": [
"experiment_index = 2\n",
"df = results[experiment_index]['result']"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": 43,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x1a2805fcc0>"
]
},
"execution_count": 43,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1a2801b400>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df[['price', 'spot_price']].plot(logx=True,logy=True)"
]
},
{
"cell_type": "code",
"execution_count": 44,
"metadata": {},
"outputs": [],
"source": [
"df['err'] = df.price-df.spot_price\n",
"df['abs_err']= df.err.apply(abs)"
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x1a283aa320>"
]
},
"execution_count": 45,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYYAAAEACAYAAAC3adEgAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvNQv5yAAAIABJREFUeJztnXmcHGWd/z/fvnvuyR0SknAEJNxkAMUDRUCQFdhdUPACBVlWXX+Kqz/8rdeC7uLKqquyKqtAxAOBXRcQFDlUBDmSAEHDGUKOIWQmySTTc/VZz++Pqqf6qeqq7qru6nO+79crr5murq56pjJTn/reJIQAwzAMw0hCzV4AwzAM01qwMDAMwzAWWBgYhmEYCywMDMMwjAUWBoZhGMYCCwPDMAxjgYWBYRiGscDCwDAMw1hgYWAYhmEssDAwDMMwFiLNXkA1zJs3T6xYsaLZy2AYhmkr1q9fv1sIMb/Sfm0pDCtWrMC6deuavQyGYZi2goi2etmPXUkMwzCMBRYGhmEYxgILA8MwDGOBhYFhGIaxwMLAMAzDWAhEGIjoDCJ6gYg2EdGVDu/HiegXxvuPE9EKY/sJRPS08W8DEf11EOthGIZhqqdmYSCiMIDrAJwJYBWAC4lolW23SwDsFUIcDOCbAL5mbP8LgCEhxDEAzgDwAyJqyxRaZvYwnc1jy+6pZi+DYepGEBbDCQA2CSE2CyGyAG4BcI5tn3MArDG+vx3A24mIhBDTQoi8sT0BgAdQMy3PxTeuxVuv/X2zl8EwdSMIYVgCYLvyetjY5riPIQTjAOYCABGdSEQbAfwZwOWKUDBMQ1m/dS+eey1Vcb8nXhlrwGoYpnkEIQzksM3+5O+6jxDicSHE4QCOB/A5Iko4noToMiJaR0Trdu3aVdOCGcaJq+7aiG/e92Kzl8EwTScIYRgGsL/yeimAHW77GDGEfgCWxy4hxHMApgAc4XQSIcT1QoghIcTQ/PkVW30wjG9yBYG8xt5MhglCGNYCWElEBxBRDMAFAO607XMngIuM788D8KAQQhifiQAAES0HcCiALQGsiWF8IwAIwcLAMDVnAAkh8kT0cQD3AggDuEEIsZGIrgKwTghxJ4AfAbiZiDZBtxQuMD7+JgBXElEOgAbgo0KI3bWuiWGqQQjB2Q8Mg4C6qwoh7gFwj23bF5Xv0wDOd/jczQBuDmINDBMEbDAwDFc+M4yJEP7ypdntxHQqLAwMY6AJ4etmz7rAdCosDAxjoAefm70Khmk+LAwMY6AHn31YDHVcC8M0ExYGhjHwazFwjIHpVFgYGEYifApD/VbCME2FhYFhDATgz5XEysB0KCwMDGMghPBpMbAyMJ0JCwPDGAiwe4hhABYGhjERPpWBXUlMp8LCwDAGAv7SVQHd/fTdB1/CrolMnVbFMI2HhYFhDITfrCQBPL19H6797Yu44tan67cwhmkwLAwMY+C7VxIECsb8hulsoT6LYpgmwMLAMApctMYwLAwMY+J3HgNrCNOpsDAwjIHvlhh1WwnDNBcWBoYxEAIYm8riAz96HHsmK2cZqW4ndkExnQQLA8MYCAhsG5vGH1/ajRd2TnjYHyCq/7oYptGwMDCMgfrQ7+X53296K8O0CywMDGOg3uP93vCJTQemg2BhYBgDq8XgQRnYWmA6FBYGhjFRg8le9mZlYDoTFgaGMdCqiDEwTCfCwsAwBmrKqebhrm+NSbBKMJ0DCwPDGAjXFy77C8HpqkxHwsLAMAa+g88M06GwMDCMgbWS2cP+dVwLwzQTFgaGMfBbx8AFbkynwsLAMBK/WUnKXlzgxnQSgQgDEZ1BRC8Q0SYiutLh/TgR/cJ4/3EiWmFsP42I1hPRn42vpwSxHoapBlUMvGQlWYSETQemg6hZGIgoDOA6AGcCWAXgQiJaZdvtEgB7hRAHA/gmgK8Z23cDeJcQ4kgAFwG4udb1MEy1+I0xANxEj+lMgrAYTgCwSQixWQiRBXALgHNs+5wDYI3x/e0A3k5EJIR4Sgixw9i+EUCCiOIBrIlhfCPKvKq8P8N0DkEIwxIA25XXw8Y2x32EEHkA4wDm2vb5WwBPCSEqN8JnmDpgSVf1GHxmmE4kEsAxnIxp+59M2X2I6HDo7qXTXU9CdBmAywBg2bJl/lfJMBVQg8l+g88M00kEYTEMA9hfeb0UwA63fYgoAqAfwJjxeimAXwL4oBDiZbeTCCGuF0IMCSGG5s+fH8CyGcZKu1gMeyYzuOiGJzA2lW3OApiOJwhhWAtgJREdQEQxABcAuNO2z53Qg8sAcB6AB4UQgogGANwN4HNCiEcCWAvDVI2ljqGFYww3/WkL/vDiLvzksa1NWgHT6dQsDEbM4OMA7gXwHIBbhRAbiegqIjrb2O1HAOYS0SYAVwCQKa0fB3AwgC8Q0dPGvwW1rolhqkK502tt4CXiGAdTL4KIMUAIcQ+Ae2zbvqh8nwZwvsPnvgLgK0GsgWFqxRJj8NJdle/MTIfClc8MY+D3Pt9sXeAaCqZesDAwjEEtM58ZppNgYWCawo2PvII1f9rS7GVYsFQ+ewk++xSP3ZMZ3L5+2O+yGKbhsDAwTeFXz7yGu595rdnLsOC7u6rPvKTLb16Pf7xtA17dN+NvYQzTYAIJPjOMX7J5DeFQaznJRQ1ZSV52H53Qi/rzBc3fwRmmwbAwME0hV9AgHAvim4M9w8hbVhLgXNTPMO0NCwPTFLJ5DUK0jifTrgPeWmJ43VPuzxFtpj1gYWCaQragtdTDdskt28M9vKBpuOHhLQD8/SjUSj84wzjAwsA0hVxBa6k8/BJXkgdluG39MO7+c2sF0BkmCFrHlmdmFdm8hnyhdVwr9pV4yUqaTOfrshavPPHKGIa+ch8m0rmmroPpPFgY2oztY9N4zw8exd4276yZKwjkWig7xy4E9eiVFHTR3MObdmP3ZBYbd6SCPTAz62FhaDPWbhnD46+M4bmd7X0zyBY05FrKYvDvShIu37vub+zUSi40hnGCYwxtxs5UGgCQmmlf94EQAtm8hkgL1TGUZCV5msfQOsLGMEHCFkObMZrSi6T2TbevMOQNP00rxRjs+LEAGKbTYGFoM3aO6xbDeBtbDNm8HlvIFrSWeeouWYaHdWktsnaGCRoWhjZjZEIXhn1tLAxq0LnQIhNxSmMMHj5T5dI5xsC0OiwMbcaIYTG0syspqwhDqwSgq4oxKN83817PhgsTNCwMbYSmCbMRWz2Dz5t3Tda1PbR0JQFATmuNlFX7vdWLm0jdxWnvvVNZfPCGJ7B7MlPT2rxy4yOv4JFNuxtyLqazYWFoI/ZMZc3A7b6Z+tUx/GLtdnz29g118/+rVkIu3yLCYPtZH35pt3mT3TuVRSZfAAB8/d7ni5+p4HD66eNb8dCLu3DjI684niMopGvqn+96Fu/74eN1OQczu2BhaCNGjFTVENU3+DyVzUMTQKZON201xpBvmRiDlQeeHzVvssdefR8uXbMOAHDd714ufqbqGAMHGZjWhoWhjZDCsHxud11jDDNZzfhaqMvxVVdStmUshvLv//GlUhdNtRZA0JbDvukcNu+aDPSYzOyGhaGNGDFqGA5Z2FNXi2Emlze+1kkYWtBi8JKGtG7LmN+POJ8q4B/58p+sxyn//odAjpXOFXDVXc9y/6VZDgtDG7EzlQYRsHJBLybS+bpNAps2LIXpOlkMalyhVfoleWmBcd73H63u2C2ifV645YltuOGRV/CdBzcFdkxNE7j7mdegtcpDAFMRFoY2YjSVxtzuOOb2xAAAqTp195QupLq5kgotKAxV3LPueHpH2fftsYR2uC3Woyr9p09sw8d+9iR+sW57YMdk6gsLQxuxM5XGwr44BrqiAOoXgJYupHq5knKtWMcQ9PGEwPf/8LLLewGfrAz7prNYa3OBNZpRIza2a6IxabtM7bAwtBEjqQwW9SUwkNQthn3T9UlZLbqS6mORqAHnat1hU5k80gEKV9AB4Uc27cGEi0VXzm113e824YxvPRTYOt7/o8dx/vcfZTcO4wsWhjZiNJXGgr4E+pLVWQxb90zhtfGZivtJF1KQN16VrGIlZKsUhst/sh5fumNjUEsK3GLIFtyvnZsGjU6k8fV7X8DzOycCW8dfXi1tzz6ZyePDN6319LvAzE5YGNqETL6APVNZ3WKo0pX0f255Glfd9WzF/aQLqRHB52p92aOpDEaNvlF+WLdlDH95dbxku1ul8yu7p3yfA3Cuiq5klJzw1QeqOpdf7n5mBx58fhTfvO/FhpxPMpVp7sQ7xjssDG2C9M8u7Iuj37AY/NYy7JrIYI+HyW/ShdSIdNVqg895Tasq1fXqu5/Dt+53uCG6HOpt1/7e9zkq4WfVV//qWVz538809Jz14gcPbW77yYOzhUCEgYjOIKIXiGgTEV3p8H6ciH5hvP84Ea0wts8lot8R0SQRfTeItXQqsrhtYX/CFAa/FsP4TK7inGJNE0jn6lvglgtAGAqaMDuz/nl43PNaM7mCxZUlCeLGef+zI56sGD/xjB89/ApuWVt7Nk8z25tvG5s2v98zxQHodqBmYSCiMIDrAJwJYBWAC4lolW23SwDsFUIcDOCbAL5mbE8D+AKAf6x1HZ2OLG5b2JtANBxCdyzsy2LIFzRMZvKYqhBQTueLN9hGVD5Xm5WU1wTymsB0No+/+d4j+O8nvTX90wWlVIxqvW/mChou/fE6vO+/Hq94vKJrSeCxzXsactNupsVQKa2XaT2CsBhOALBJCLFZCJEFcAuAc2z7nANgjfH97QDeTkQkhJgSQjwMXSCYMsgBPYv6EwCAga6YL4tB1jxUshjUuMJ0i7mS/vjSLjP1UloMmZw+O3rSo/9atTRUvBS4lT+u/nXrnumS92Q1g/0ct6zdjguufwy/euY13GQ02pM8M7yvpvUwTC0EIQxLAKi27rCxzXEfIUQewDiAuX5OQkSXEdE6Ilq3a9euGpbbnoxMpBELhzBoBJ77k1GM++iwKtt0V7qBqlZC3VxJ+eIN0k/w+drfvojvGhW50mKQcQavA3/ybsJQ4yN1uad+t+FwW/boge3te6fxZVtSwNnffaS2Bbmck2G8EIQwOLWKtP8aetmnLEKI64UQQ0KIofnz5/v5aEcwMp7Ggr64WU2rC4N3i0Hum8lrZZ/S1YBz/SqfC8r33i2GnLL2fEFDQdPMm3w5Ydi2Z9osstI/V58YgxvpXAHbFT/71j3VZTrVQq0WETO7CEIYhgHsr7xeCsDuVDT3IaIIgH4AzS3HbDNGUhks7EuYrwe6or5iDKqIlEsbbIQrSY0r+ClwK2jCtDDyxvd5I15QLkPp//ziKXz1nufM/ZwthtpunOVqD258ZAve/G+/M5/aLzFaeEso4PlvTvUnfn+86Wwe/13HYU1MaxOEMKwFsJKIDiCiGIALANxp2+dOABcZ358H4EHRKlPg24SRVBqLFGHoT0Z9zX1WhaGcO0mtdq5n8Dlk3Av9BJ/1FFVdCGSsoGgxuAtMaiZn/vwFTaDg8KsX9G+j0+HsevSDP2w29g325F7TeMv9zLes3Y5P37YBP39iGwDggedGGl73wDSPmoXBiBl8HMC9AJ4DcKsQYiMRXUVEZxu7/QjAXCLaBOAKAGZKKxFtAfANABcT0bBDRhMDXRgW9MXN1/1duivJq76m0t6EQT5tRsNktt8OmmxBQ3csAsDfaM+CElOQT/7qazfymjAzofKK1VEXyjz8+30WaoWCsM/9z58B6FbOfzzwUpNXwzSKSBAHEULcA+Ae27YvKt+nAZzv8tkVQayhk5lI5zCVLVgshoFkDNm8hnROQzIWrngMv66kwa5YHYPPGrriYUxk8pZAdMXPFYRpYUhRMC2GMjf7fKEoDAVNOFY5N8J+Vc/rpXeR0xP6g8+P4L5nR3yf2+nnu239MP75nMPRFQvkNsB0EFz53AaYNQw2VxLgvchN3c+tuRtQFIa5PXHXlhhCOPvpvZIraEhEwyCC6RrygqxBkOdXYw5O7iFJXlOC1i4V040Izqqn3TpWmtZqR00EGN47jdGJND5807pAeyn97PFtgR3LCXujx99WIWpM42FhaAPMqmdb8BkA9nlMWU1ZLAZ3S0C6kuZ2x1yb6N3wyBac9s3qJ4ZlCxpi4RCi4ZCvrKRiwFm6j6xZSdvHpvE/DoVuBU2Y86sLmnB8Wm+0xeCl1YY6zuFNX/tdTb2UmpWV9KGb1lpe/9tvXmjKOhh/sDC0AUVhUGIMPvslpWbySEZ1l9Nkxv0z0kqY0x1ztRg275rEK7unqm7lnM0LRMMhREPky99fMJ72VTFQs5JuXz+MK27dUGLN5AoC2YJuaeQUYVGpxzyG0m3+jrFpNLg5zrUInzrmc8e+GV9jP18M0LphGgcLQxuw08FiqMaVtN+A/vnJMhaDKgxuMYbpbAFCAJNVzmvIFTREIyFEIyFflc+6xaCVBKABPcYgj2U/Zr6gIZvXTFeOs8XQCFeSv3M8trm6jG5HUarqSDp/d/N68/uTrnkQ7/rOwzUcjWkHWBjagNFUBr3xCLrjxSChKQweLQZdGJIAygef07kCEtEQumJh1+6q8vPlYhXlyOY1xMMhREKhiumqw3unLYHjnCbMQHNBefovKHEPu3sqr+miUa7mIXCLwWGbmzC0unvlqW3W9hxbHNp+uDHl8HBx6Zp1eGTTbvP1sztSTW3yx5TCwtAG7BxPY2F/wrLN70yG8Zkc5nbHkIiGKtYxdMUi6IqFLWme1n30P3Y/LgUV3WIgxMJU1mLI5As4/ZsP4bb1eseVYoqqZnkNWFNZ7WuWP4fct55ZSeVK1Ro9RG3jjuLciVa68d7/3Agu+7Fe5Pebv+zEO7/9R9y5gRvttRIsDG3AyETaEl8AgJ54BOEQeQ8+p3PoS0bRE49UEIYCktEwEkY8wslqkB1anSyGvOHLL0e2oCEaDiESDpWtfE5nNUxnCxib1H/GgvHk7yQGqkioYiMzmLJ5rULNQwM6nDbo5iyvw6Mv7yme28Pn0rkC/v23pSmy9ZrLAQCbRvUYxIsjHItoJVgYAmY6mw/8BjAynrbEFwCAiDz3S9I0gdRMDv3JKLrjkbIdVmeyBSRjYTO33SnOMG3EKOzHyRU0vP5fH8Avn3q17HqyeZmVRGVdSRmjp1JOE5YU1ZwlK0m6mYquIstMaVMsFBdU07KS6n8OADjmqvtKrCb159vsMpXuxke21FUEnJDX5IaHtzT0vEx5WBgCZO2WMRx39X24bV1wPWY0TWB0IlMiDAAwkPTWL2kym4cm9LhETzxSNsYwkyugKxZGMhYyX9uRFkPK5kraN53D7slsxWwaM/gcLh98NquV1YCzcoPXhJ7hZG53sBhk1lO2oJlV1o1uoifxG3yuhZsf2+r6nmzFYSeTb6wopHMFjBkT3RotSEx5WBgC4uVdk7h0zTqkcxr+qATWamVsOou8JixVz5I+jxaDDFD3GRbDhAdXUjIaMV6X7luMMVjfkzGHSmtS6xjKCUOu4OAmUiwDeSxAv+nK/TMWi6H4fTpbRhiC7pXkcLxGuvlLalA8nLuR6xMA3v2DR3HTn7ZYtucLWt0q7hnvsDAEwK6JDC6+8QlEw4QTVszB+i3BNY6VA3rsMQZAD0B7EQb5ZN+XiKK3ksVgupL0GINTkZtbVpJ8naqQrZTLC9OVVK7HkbQYcorFIIS18V7GWJ81xqB2by1+P230frILw9hU1rEwrpNoxbbbzwyPl2y7/CdP4rAv/qYJq2FUWBhqZDqbx6Vr1mL3RBY3XHw8zjxyEXaMp7Fj30wgx5czhBfU4EqS4mHGGDy5knRhsBe55Qua+URuz0qSwlBJrGRWUiQccsx6kqhpqmovJFWspMXglpWkNumTP4u9fcbf3bwOP3jI2b3iFwq2g3ZNZMpcWyf8rN1rmrTruRy2/fNdG3H/c3rLjNkg1q0MC0MNFDSBT/z8Kfz51XF858JjcdTSAaxePggAeHLb3kDOsXNc75Pk5EryGnxOKcLQk/BgMUQjZpW0XRjUGQ12gfHsSspriIXDiIVD5S0GGXxW5i4AVmHI5GQcojjLWXVPqdaBdFEIYS1y2+ahb1E78vV7i/URx1x1Hz7/v38u2UcdIOTHlfSJW54q+/61975gjmF1wqm+4cZHtpjfX/6T9bji1g0Y3tuZ/zetDgtDlQgh8OU7N+L+50bxz2cfjlNXLQQAHLa4D8loGOu2BCMMI6k0iID5vaWupP6uGFLpXMWGdqbF0OUlXTWPZCxkWgx2V9K0UjXt5kqa8BBj0C2GSnUM6rQ2xWJQnoTVHkhmoDlfGnzWf7bi2lWrwe+TdTlaqFyghJ88Vtowb82j7kHqcsg2LW5893ebcP73H63q2ADMiXt+5nUwwcHCUCXXP7QZNz+2FX938oH4wBtWmNuj4RCO3r8/MIthJJXG3O44ouHS/6r+ZBRCVC40S83oN+y+RAQ98QjSOc21fkB3JUXMGIPdYphSgtH286Y8WAxCCGsTPQ+uJHW2M2CzGPJF95C98nnrnilL5pSa+aIKTbk1VE9n39BaWQCZ2mFhqIK7NuzAv/76efzVUYvxf9/xupL3Vy8fxMYdKceMHr+MpEqL2yQDHvsljc/kEA4RepS2Gk4dVjVN6PMdomHTlWTPEFEtBnuQWY0xuNVyFDQBIVASfP7lU8N47389ZvmcfFrMFTTLk3/GwWLI22IMmiZw8td/b+nzM6P8f6jCEKTF0Coxhnqvgwj40cOvYJuP9hh+CPL/hPEPC4NPnnhlDJ++dQNOWDEH155/NEKh0r/A1csHUdCEY9aFX3amMo7xBcB7h9XxmRz6EhEQEXri+g1/wqHDqnyiVoPP9vxyaTF0xcKurqS8Jlzz0uXN3l7H8NS2ffjTy3uwVbnRFOsYKscYCkoL7lxBw15jDsDw3mISgCqGqgVSy2wJJ3IFreo+UoGtwccApGpIzeRw9a+exYX/9RgA4JB/+jW+8qtnAVTfKkVFPuy0UiuP2QQLgw82jU7iIz9eh6Vzkrj+g6vNthF2jlumB6DXb63dnTSaSjtmJAHe+yWNG1XPANAT1786WQzyZp6M6YHhEDlYDIYwLOpLlLTvVm8IbmuSN/uo0URPWgLyPGrAUgaf1bkLQDFFFSi6klTxyOY17J4sbRXi5koKmk/e8jQ+c/szdTu+F755v/N85vO+96eSbeu2jOHff/uCOd/ZC7L6XP6fZwsafvjwKxhJpbFxR6qKFTuzfW8w2X2MP1gYPFKsVQhhzYdOwEBXzHXfga4YDl7QU7MwZPIF7JnKuloMxWE9FWIMRp8kAOiOu89kkDfnZDQMIkJXLFKalWS8XtiXcLUYgDLCYFgIsUgIsQiZr2W2k3rNinUM1hiDkytJs8UYdk9mXH8+oH7CQCDc/efX6nLsIFjn8Dt53vcfxXce3ITRidJr5sYul31P/JcH8OsAf/6LbngisGMx3mFh8MB0No9L1qzFnsksbrh4CPvP6ar4mdXLBvHktr1VD7MBin98bjGGPh8xBmkx9Cb0GIPTTAZ505d9kpIOrbdljGFRvy4MqqmvuqdkwNuOdB3FwmRYDPrrtJPFYMYPbFlJFovBOcbgJAzTDRAGAIg4uBc7lVQ6XyIST9radDPtBwtDBfIFDf/ws6fwl1fH8d336rUKXli9fBD7pnOuDcu8YE5u6y8fYxifLt9hdXxGtRhk8Nmp1YW+TfZJSkbDloAtUIwxLOxLoGCLJUyk85jXEzPP6YS82cfMGIMwzq0f5+VdU9hr9M/JuFgMM5YYg5GVpKarFoqupJiSzTWTU4LPdfJdCwjzWs8Wjv/q/ZbXQQS+3aYHMo2BhaEMQgh8+a6NeOD5UVx1zhF4+2ELPX929QoZZ6i+PcZIyrAYep2FIR7Rs4cqBZ9TlhiDYTE4BEfNGIPRJ6krFi7jStKtGNV9NJHOY8mgbk25CYO0GKJmd1XNPLdcm3Qn5ZRuqAUl+CwDzoBa61AUj1xemBZDJFy8S1lcSXXMj+9LRCrv1MFwvLj9YWEoww8e2oyfPLYNl598EN7/+uW+PnvgvG4MdEVrijPIPkmLXCwGoHK/JCEEUjN59CVswuBgMcyYriQ9DpGIlrqSpjJ5RMOEOd26ZWAVhhyWGlPiUi5ryuRVYShmJc1kCxhaMYhomLDWEFNLd1W1JUa+NPisike2UMBuw72hrt+twC1ICITexOyyGOz8+dXas/FUuPq58bAwuHDnhh245tfP411H74fPvuNQ358nIqxeNliTMIxMpBELhzDY5X6j6U9Gywaf0zkN2YJmWgzdZYRh2iYMXbGwQ1aSXgAnhUbNREql8+Zc6UoWQywSQiRM0ARMl9RgVwxHLOk3q8atLTHUrCSHymchLLMXpMWg3v+tMYb65cn3JWe3xRA0b/ra75q9hFkHC4MDj2/eg3+8dQNOOGAOrj3/KMdaBS8ct3zQ4jP3y8h4Ggv64qAyTttK/ZLUBnqA/qQej4QcYwzy6Vqm4SZdLIbuWNgMYkuLIZ0rIJvXMNAVQ288UkYY9Du1rHzWt+mT2hLRMA5d2GvWMqjBZ0vlc77UrSSH+MjPVU5XdVxeICRd0pgZpl1gYbCxaXQCH/nxOuw/J4nrP7Aa8Uj1f+RDNTbUG0k5D+hRGeiKlu10aRcGQHcnOc1ksLuSkm4WQzxiukvM/kjG195EBH3JqKUVxROvjOFf73kOgLWOIWr4//OaQNro6toVi5gBZbXAreBW4GbWMWi24HP5rKR8nSyGmVwB9z83Wpdjz3ae3ZGqKcuP8Q4Lg8LoRBoX37gWsUgYN1WoVfDCUUsHEAlR1e6kkVTatYZBoruS3C0ScxaD4t5w67Bakq7qZDFkdYuhx7QYcpavpjAoFsNdG3bgBw9tRq6gWVxJpsWQ1/TmfVF9cpw8p6xxyGm2GINDuqrdYtjjZDEoGVaapv9/r7jy7tKLxrQcT2/fh3d++4/4x9s2NHspswIWBoOpTB6X3LTOV61CJZKxMA7fr68mYVjgUsMgGeiKlXclTZdaDN0x57nP8oYcj+i/Fo5ZSRk9xmB3JZkWQzyK/qTVlbTTSLvdO501b/bRsD6PAdDFRhP69UpGw8hrArmC5ji2E3DJSlLqGPZMZszzOP18+v4aNu+tBU9VAAAgAElEQVSqPpWYaSx3PK3PEf+fp17FiivvxqVr1jZ5RZ1NIMJARGcQ0QtEtImIrnR4P05EvzDef5yIVijvfc7Y/gIRvSOI9fglX9DwDz9/Cht3jOO693mvVfDCccsHsWF4X9n20k5MpHOYyhY8WQzpnOY4aQ1wcSUlnFtvzxhP7TKmkoxFnC2GeBg9sQiIYLqkVFdSfzJqKXCTLZT3TuWKdQzhEGKGK0num4yGzfjGTK5QtBhKKp9L6xj0ymd9f5nma0cVOU0IHiHZRqizGgCwu67O1CwMRBQGcB2AMwGsAnAhEa2y7XYJgL1CiIMBfBPA14zPrgJwAYDDAZwB4D+N4zUMIQS+dOdGPPj8KK4+9wic8jrvtQpeGFo+B+mchmd99o8xaxg8CAPgnh7qFmOYcpnlLOMLgH6jzuatVccyKykUIvTEIg6upCj6ElFHi2FsKmvNSgrpv37S3aU270tnC8jK+EFJ5XN5i0E20JvbbXUFWmIMSuYS095w3CF4gsirOwHAJiHEZgAgolsAnAPgWWWfcwB82fj+dgDfJT3V5hwAtwghMgBeIaJNxvGqn/Dhk+//YTN++vg2/P1bD8L7TvRXq+CF45br1sf6rXtx9P7eLRH5lO0l+Azo/ZKcmu2llBu2pCceweZdzsFntTFgcSZD3vz8VCZv9lvqTURKXEl9yYglUypf0MyWCXuns9YCN8NlJUUtGQubAjBjZDnpx7DNY8iXxhj0WdD693uMLLA53THzeyJrG4yCEOZ7THuixoeiYcIX/2oVzj56CXoTERSEcJxhwngjCGFYAmC78noYwIlu+wgh8kQ0DmCusf0x22eXBLAmT9zx9Kv42m+ex9lH74fPnO6/VsELi/uTWDKQxPpte/FhHOD5cztNYSgfY+iv0C9pfCaH3ngEYSXlVp/77NxdVbUYEkrrbSkM0mIAdJeUtBRUAepPRs0b+97pLOT9eGwqa/ZWikVCiBprknMdklGbMBTUXknOWUkqUiSkoMxRLIauaNgyTrKgCexhi6FjyBUEvnDHRnzhjo1l9ztofjdetsWWTjxgjvH7LQAQMvmCEWdrzZ5X//m+4xCL1Ff0ghAGp6tnt+3c9vHyWf0ARJcBuAwAli1b5md9jjy2eQ8+c9szOPGAOfh6DbUKXli9fBBPvDIGIUTZmgQVr66kgaR+83Nri6H2SZL0xMOO3VXtrqQu27AeIQSmsnlzn95EtMRi6IlHzPOl0jmzehsA9k5l0WUU2EWVOgbVYpCWwUzWajHkCs6uJBV7MfPcnqIwJGMRB2Fgi2G24fR3Mj6T0xtCQv8dz2sCsXDI9QYlqfR+vRANmA4YhDAMA9hfeb0UwA6XfYaJKAKgH8CYx88CAIQQ1wO4HgCGhoZqujKbRidw2Y/XYdncLlz/gaGaahW8sHr5IO7csAM7xtNYYrSMqMRIKo1eZeKaG8VhPc43ObVPkqQnHjXHe0bUJnPZgunjB1AyrCed0yBEMZ21NxHBmOGOmUjn0WNYJqoVo84GHpvOmueLqa4kJcYgBUC3GIysJE1YRpG6WQx2LBZDzPp/XNDYldRp/OzSE7F0sAvJWBhdsXDFvx3GnSCu3FoAK4noAACvQg8mv9e2z50ALoIeOzgPwINCCEFEdwL4GRF9A8B+AFYCqGsD9tFUGhfdoNcq3Hjx8egv024iKFYvLw7u8SMMbl1VVforDOtJzeRLWjTIGMFUpoD+LrX7aMHsjgoUhUEGbWXAuhhjiJpVyhPpnJnCqgbEpTB0xcLYO5XFoFEbYnElGVlJiWgYkZAuBmklxgA4z2CoxJzuohvOXo2sC0PG6IKbLXEvMK3PlmvOavYSOpaaHVVCiDyAjwO4F8BzAG4VQmwkoquI6Gxjtx8BmGsEl68AcKXx2Y0AboUeqP4NgI8JIeqWQziVyePDa9ZibCqLGy8+PpBaBS+8blEvumJhrN/ivdPqzjKznlV643raaLkYg91iMGcy2DKTprN50xoAijdTOStBzmJQLYZiVlLePK4UIt1iyCAcIhw0vwdj0znkChpCBIRD5GAxRIpWSlYzs5IAd/eRG+EQmV1OIyEq8clKV9KB87pxzd8e5evYDNPpBGJrCSHuAXCPbdsXle/TAM53+exXAXzVz/leHJnAqd/4g+91TqRz2DWRwQ8vGsKRS/t9f75aIuEQjtl/AOt9tMYYTWVw4oFzKu4XMlw3foSh26X1tt2V1OVmMcSKWUkycDyRyZkBatWVtDOVxvyeOOb1xLB7MotsXjNjCxHTYjBiDNGwuU0NPgPWTCT52XyZNMWeeARxQ9giYSpxJeUNYZjbE8csmqvTtnzmHYfi6/e+gA++YTnOOGIRXn/A3GYvqaNpSyecbLZWDX911OLAaxW8sHr5IP7z9y8b6Z7lL7umCd2VVCHwLBlIRssGn0tjDM4dVmdyBYvLxRQGw6cvB/nIAHJvPIJsXkMmX8BEOm/69IvB57zpEhvsjuHFkUlkC5r59G4Gn9PF4HM4rwhD3j2uEI+EkC9ToNYTjyBuClDITOuVTGXyZtdZrwkBTPP42NsOxrnHLvHsimVqoy2FYdmcLlz3vuOavQxfHLd8EAVNYMPwPpx00Lyy+45NZ5HXRMWqZ4lb6+1sXsNMrmC2yJb0uExxs2clJWyupCnDldStZCUBuuUxkc5j+dxuADDPJ2MMK+Z2Y05XzCxwk1PVpDCMK5XPMq02bWQlEenZRtKVFCJAE/raphyEQe7fm4iYAhQJU4k4SjHqiYcR8igMB87vxqmHLcT1D232tD8TLCwKjYMrQBrEcfsbAegtld1JMsXTS4wBAPpd+iXJm589wN6TKLUYCppAJq/ZXEn6ftJSMC0GJcYA6PEFNficiIYRj4TMGMMiw2KYyRWQmskrFkPRlSTjAAnjvZlcAbmCQLdxrkyugEio2F8p7pLHLS2enrgiDKFQSUNEGfDuikU8u5JOOXQBFvR6+z9hguOTp65s9hJmHSwMDaK/K4pDFvZ4ijOMTnirejaPnYw6zn12aocBwLzZqsIgXTWqKylp9i3Sn9ZlrEHNSgJ0YUgpwWd5ztFUGuMzOSzsS5huppFU2rQUVFdS0owHhBALh0xXkrRg0vmCHrA27uJuBT6mMCQipmUSCblbDN3xiGeLgQjsdmoCH33rwc1ewqyDhaGBrF4+iCe37q3Y22XnuLfiNsmAS/BZbnNzJanBZ/v0NgBIRI2nd8NSmMqWZiUBwO6pDLJ5zXKe/mQUL45Mmj+HTFPVhUG/uUphmMzkLZZKIhrSC9wKmhmPSec0REJkupoi4ZClmlsij2OxGJxcSTM5cz+v9/oQEQeqm0C9q3yZUviKN5Djlg0ilc5j067JsvuNpNIgAuZ7dFvIuc92wZE3P3vlc7dDjEFWNyeVdFUissxkmM5Y6xikwOzYNwMAFouhLxk1f86FfXHFYsggFilmCwF6TMBeWCfXbloMOcNiUKwAUySUu3WXkjFVdCU5WQwykO49xgBq1SYJncsvP3pSs5cwK2FhaCBDK/T000rzGUZSacztjntuAtafjEITpXUJbq6kWCSEWCRkcSVN56TP3ZrWqc5kmMoWQAQkjBu7tBCchKE/GTWzihb1JTCnW993Jlcw222rP5/dhSWD6dLtlc4VEAmHTDEJh8gUBDXeIIXNajGUZiWpFoNXYQgRtb0r6eKTVgR2rDs+9ka8e2gpAOCNBwebPnrWkYux5sMn4Nhlg4Eel/EGC0MDWTG3C3O6Y56EYVG/9yCnWTdgS1lNuQgDoKeaTjpZDLYK4YTNYuhS5jVIIXhtX9o4ptWVJFmguJIAKDGG4k02acuGUvsnAborSReD4s0+7BBvSBrur554tGyMQYqmHmMouTyOEODZ7eSXz591WH0ObONTpx1Ssu2eT7wZbzlkvq/jvO/EZTh6/wEMGpbgmw6ej3k9wQXmv3PhsTjZ55qY4GBhaCBEhOOW6XGGcuxMZbCw11t8AVD7JVmFwYwxJEuzkrvjERdXUqnFMKNYDF1KDYbMbnrVyZWUKI4H7TOG98ibqr2OQZ5HkoyFzbWrwWc9K6noPipaDKWZVD2JiGlJRMJkNhuUmMHnWNizFVBPi8Hu7qsXTg8Jq/brw48/fIKv47x7SG9xNrRct4KPWtqPb194DADv2XTlqGdTS6YyLAwNZvXyQWzePVW25fNoKu04W8ENmYppD0Cn0nkkoiHHJoE9NovBKfgsX8v3po15z5JoOIRkNIwd41IYSi2GhX1xEOlppnKbvfIZKHUlFYVBpqvqFoO0EvTvjdTVaKlLqteWrloafPafrkptHmM4fL++wI4lo1mnrVqIdZ8/FW88eB5OOmgetlxzFi48ofbux0xzYWFoMEMrdJ/pk9v2Ob6fyRewZyrrubgNUCyGGWvK6vh0adWzxC4MMw7pqoDVlTSVKVh6KQH6k7msu7AHnwFrZtUcQ8CkMBCR6U5Sg95disUgA93pXEFv1R0qiopzjEFJV1WCz+ra5M8bC+uxFu/pqlQ3V1Ir4OdnO3JJsaWM3YVEbS2fDMDC0HCOXNKPaJhc4wxy2pkfc3zApcOqUzsMiX3usxdX0nS2OL1N0puImK2y1XRVJ2GQ/mj1Ri5jBknlqT8RDZsdVLuU4HNYcSWp1oM1xqCkq4aLriQn14T8WTwLg499WxH7vIpacEoVlvQbrstyl+r4Fc5B5YV9cdz4oeNrWhtTOywMDSYRDePw/fpd4wyyTbWXltuScjEGew2DRI8xFFtK2KuaJcmYYjFkSy0Gy8hQW1YSYBW4QdNiKN4x5PdOXV317cWZEKqVoMYbVFeZFMnBrphjLAMo3tRk2q6fOoZ6yYKX49qtuXJs+OLpvtfgVk3ul3cetRjzemK45xNvdt3nZx95veP2hz77Nrzt0AWBrIOpHhaGJjC0fBAbhvdZmsRJzMltPoLPagsKlVS6nCspbE5dA4rVzfYYQzIaKVoMmVKLQQaZu2Nhy1Nkv5MryUhZVZ/w5U1bnTXt1OFVE0aKqrF/OFTMSlJvaG9eOR8//OAQjljSZ57H/nQbNpRApsJ6DXTqlc+edq0LXs998iHzHeeMJKKlf+5q/6Frzz+66rWpLOhNYN3nT8MhLo0uN331TETDIXzojSss25/8wml1H5rFeIOFoQmsXj6ITF7Dxh3jJe9Ji2GRD4sBMIrcHCyGcjEGa1ZSHkSlT43JWKiYrupoMcgqaOt5pCDIxnpA0ZWkPsHL7y1ZSYpIqJ1oVYshGnaOMcQiIZy6aiGISElX1b/e96m34MFPn6xYDNKVBE+EqLn+c69nPuGA0nbtnzx1ZcXGkwt8PIx4wW29Uty/9K7DLdvViXtMc2FhaALHKRPd7OxMpRELhzDoc7Kc3mHVFnx2mPcs6Y5HMJMrmCMzp7N6y217OmZXLGK6mdR5zxJZ/WwP7h4wrxu/+oc34e2vK7oF7MFnoFj9rIpBwsGVBMAhxiAb6hX3UTOdpDhId9XKhb04cH5PiSspqOCz31oAv9SSKvvJUw/B4v5gupP+3ckHetrPy3K/9Z5jalwNUw9YGJrAwr4Elg4mHYVhNJXBAiPF0w8DSWuH1YImMJHOuwqD2XrbcBPN5AolN31Av0mncxo0TWDaIStJWgpO5zliSb/FTeMUfJZP9U6zpoGiuwfQn/wjDllJqmsqErZet1iktKeSKQwxfzGGSk30rj7ncDz46ZO9HcyGl7hwvd1YXo7/+bMOw+fODK4Y79RV+myUL/zVqsCOydROW85j6ASGlg/ikZf3QAhhudnsHPc+oEelvyuK7WPT5mvZIK+cKwnQ+yX1J6OYyRYsT+oSKRYTxmCb7lhpVpL6tRxeLQan4DNgjAM1LYaQKTrWLKdSYagUfPaelVTekRQiQtxBXKvhoPndJXOoveqCHwHZf07Riggya0lfR+WF9MQjPLu5BWGLoUmsXj6IXRMZDO+dsWwfmUj7qmGQ9CejZhsJwL1PksQ+k8E+pEcit+02CvLUymegaDHYYwxOVBNjUK2HSNjaOM+MMShBVeleKq4vUvJzCeMOKIPhftpuh8r8xYRCVPZ9P5xvVBbXmy+ffXjlnRRWLa6tSO4/LmDXUTvAFkOTkHGGJ7ftxf5zusztI+PpqnrEDNimuFUSBnPusxSGXMFSZCaRVsSeST1+UZPFYAiDY1aS2ispVib4LLOSFJFwizEAwPffvxpzbUHNvUaQ/gijSCuo4DOhGOiuB/VoE+EnBRYATjq4/PTBSnj5PWGaD1sMTeLQhb3ojoWxTpnoNpnJYypbqNpimM4W5yQXZzE4/yHaZzKkswVLkZmkksXQ50MY5vfGkYiGMLdHbahn1DF4ciWFillJLjEGezzhsMV9ru1Fjl46AMB7UJdQPvgcIjJTYeuB3yN7advup/HdTy890ecKSnljjcLCNAYWhiYRCYdw7LJBSwC6ONLTvzDYq5/dxnpK7HOfp3P5ksAyULxJy95Odouhx+io6lZIZz/nA59+K/762CXmtqhT8DnqFnwudld1q2OwWwzlWD63yziWd1dSpfepyr8oLyvwW3XtZg2cYmSKfeKUgy0WWSPGlrZz5fhsgoWhiRy3fBDP70yZ7pzRVPXCILOCxo2U1YoxBuOGMKHEGOztMIDiDXuX4Upyr2Pw5iJYMpC0BZ8dYgyx0t5HgO4+khZGJOzcXdXrTR4oWgrem+hR2RtbvZvseR3cJN1dsqvuDz845LjfUYbFJFkxrxuLy9TPDHbVXmfAstAesDA0kdXLB6EJYMN2vaHeTlMY/D+52TusehUGaTGkswWLO0dSYjHYKp8X9MURIlTl/gJgDu1JuNQxxCMh88atTm2z1jGU9l4qx22XvwH3X/EW87X3QT3lrQYCoTsW8TS05mNvO8jTOSWfOvUQfO/9q319RrbEPnSRcwWyEzd9qLT99s8/8nqcddRirAqgO2skzLecdoD/l5rIscsGQAQzzmC2w6jGlWTrlzQ+k0MkRK7uBPt4Tz347JSVpO+3x8ViWNyfxG8/dTJOPWyh7zUDxRu5U6+kWDhktuwGZLpq+TqGcLjyTf74FXNw8ILizdKPd6Nc8DlEeoD4p5c69wHyg/0s7zl+f8zr8fbEfthi/Wf7p7MOw28/9RZLckMlDl3UiyOWFAXgkIU9eMNBc3Hde8tXTTOdBQtDE+lLRHHowl6s3yaFIY3eeMTi9/WKvZFeymiH4RZYleM9K7qSpMUw5WwxAMDBC3qqzpiJRmR31dIUVbMJnkOKajhEpghUG2OQ+PF7l7UY6uw/93r8txpN6KLhkGO/IjmXYYGLZXruMXoM6IglffjFZW+oZqmOcKpq+8DC0GSOWz6Ip7buhaYJjKTSvrqqqtiDz+X6JElkv6SCJpDNa+iKOgSfzawkZ4uhVuRNP+EwbEed2Sy/hpV50cU6Bvd0VS/4EYZyh/dzZtXyuOwtlVtMDHZHKx7/4AU9ePPKylk/nzz1EPzyoyeVxBgkZx21GANdUXzrPceatSfM7IKFocmsXjaIiUweL45OYGcqXfVYRFlgtk8RhkrjInviEUym88UhPbHSXwdTGIw5EU5FcLUgp8CpT8MJxZWk71O0GKKholvJnMcQLqaR+gk+S/x9pJwrqTrL4/+9s3yLiUiIEI+EK7q8rjr7cNx8SeWU0nCIcOwy53kIgO4efPqLp+PgBT0Vj8V0JiwMTUZOdFu/dS9GU5mq4guA/sfel4iY1c8pD8LQHY9gMlMwm+Q5FbjJp/eJTN6xvUStzOuNlXSSjUdCIAKiESkIpWJgdSuFzMB0Ne4cP58pu2udU27aMdXz8pOLQfY3HFg5KM+0BjX9lRPRHCK6j4heMr46PoYQ0UXGPi8R0UXK9q8S0XYimqxlHe3MsjldmNcTw7ote3VXUpXCAOiZSfumdZdPKp334EoKYzKTQzprzGJwCFSHQ2T68O01DEHw8betxG2XW/3YRHrQPKYEnQHDYnDorhoJ6Wmk1VgLQVLp9D/+cGnGT5AsHfQeZG4UV575Omy55ixsueYsX3PMmeZS6+PflQAeEEKsBPCA8doCEc0B8CUAJwI4AcCXFAG5y9g2ayEiHLdsEL97YRR5TVSd9gnoAWhrjKF8PKDHmOI2nZPT25xv/NKdFHR8QR7bqfo2GQ0jZtQnqI3zIg5ZSWHj+2riC34glDcKKlkeB8zrdn3P/lk1NfTEA+cY+5Rf37K5rScMTHtSqzCcA2CN8f0aAOc67PMOAPcJIcaEEHsB3AfgDAAQQjwmhHitxjW0PauXD5rZRNXGGAA9AL1vJgchhKfgs+5KymPaaL2dcBEGaUk4ZSTVi0Q0XBp8trmPVEtCdTM1Cz+nr7Trm1cW+2Vd/4Eh4zPt50pi2pNahWGhvLEbX52GtS4BsF15PWxsYwyGlMHotbiS+pL6FLepbAEFTVRsU9Gb0IVBju50ciUBRcGoh8XgRlcsjLgiCEDRMpDbLNuVLKV6Us4qqNeNu9gevC6HZ5gSKv6lE9H9ABY5vPVPHs/h9Ovsu/M7EV0G4DIAWLZsmd+PtzSH79ePWDiEbEGrLcZguJJSFaqeJd0xPV3VFAaXG790MTXSYkjGihZDVMlOKqauFusYImGjVUWTg7Neeimp/Nt5R+Evr+rjXfcbqPz/Xk6UVnIGERMgFYVBCHGq23tENEJEi4UQrxHRYgCjDrsNA3ir8nopgN/7XCeEENcDuB4AhoaGAh4p0lwS0TCOWNKHp7bv89wPx4l+o/V2pXYYkp5EBNPZAqbMrCRnA1JmJjXSYvjUaYeYQe+IGmNwsB7U7fWmfIyh+P39V5yMU7/xB9v71k+/e2h/vNuYu3DSQZXrD9zOffIh83HjxcdX/DzDeKXWv/Q7AVwE4Brj6x0O+9wL4F+UgPPpAD5X43k7jnceuRghoprSQQe6oihoAjv26cN/vBS4AcAuo0bBKV1V3R50DUM53nZo0SsZVcd5mu6lkCUrqdnxBcCaTlqpBmC/Aff5y//y10c6bnczGIjqM6uBmb3UGmO4BsBpRPQSgNOM1yCiISL6IQAIIcYAXA1grfHvKmMbiOjfiGgYQBcRDRPRl2tcT9ty6ZsPxO1/f1JNxxhI6lWqW/foIz69FLgBRWFwizHIOQ2NtBhUIkqKqpquao0xFN+rJ+Wb6FX4rPL9e453n9D23hOdXaX1brnBMJKa/tKFEHsAvN1h+zoAlyqvbwBwg8N+nwXw2VrWwBSRQrDNmP3sJSsJUC0Gl6wkQxDqUcfgBUtcwZaJpH7fiNtmpUE9Xj5rr/SuFT/dUxnGC1z53EHIfknbx3xaDJMZEFmb0amYdQxVNPcLgqglrlAc7WlpqEfF95pFxeBzANL1vfeVdjn9zOmH1nxchlHhAawdRL9iMRABvRVu5D2JosXQVeYpVgafm2UxOLXBiFrqGPTv690yolLGg+cRoTUs88wjF5ds4xkHTNCwMHQQ0mLYNjaN3nikYkBSjs3cNZFxDTwDxaBz0ywGszVGyBJvMC2GMBVTVluYFl8ew5jwo0YHIS2GTF5znfWsIsdxjk1nXVNVgWK30+bFGGSrbcKSgSQiIcLi/gTCUjCILJXQ9aQWdxDrAtMusMXQQcjGc9mCVjHwDBSDz0LAcRaDpKsJlc8qanfVlQt78dzVZyAaDiFEhA+9cQUW9MYRpupabjeUFl8ew0jYYuggiMi0FLwJQ+nUNCeSTeiVpKLOY9Bf67+2y+Z24UvvOhyhEGGwK4b+ZAOGygRwcw9SH7z8PzOMX9hi6DD6k1HsmshU7JMEAPFI0cJwmw0N1Le7qhfUymc3vnbeUY1ajm+OXTaAs45cXNENddD8bry8a8rXsVkYmHrAwtBhDCS9WwyAnpk0NpUtW9X8ukV9WDKQxPImtXWOhKzN9Jxwat1dD6p52v/lR98IANg9mSm733///UkY3jvj69iVpr8xTDWwMHQY/T6FoTsexthUeVfSoYt68ciVpwSyvmpQq53bmUqrH+iKYaDLuzts5YIenHGEU39LhqkNjjF0GDLGUKm4TSJTVsu5kppNJFzZYmgEtZ496JYWP7208nxnhqkGFoYOQ/ZL8ioMMmW1kQ3y/KJWPjebIG7uQQnE3Aa5z5jZBwtDh+HflWRYDE0KLHvB7KLa4ArfP372bSXbarml+/3s+19ffu5I82WS6VRa927AVMWAj3RVoNgvqZUthogtXbVdeOxzb0cmXzBf+zUUvnLukfjKuc4tuBmmnrAwdBh+LQYpDK0cY2hW8LnWGQeL+q1T2YLu/8otNph6wa6kDuPNK+fhA69fjsMWe2vFbApDK1sMIeskt0bhdLYgbsa1HuJ4ZUY4w9QDthg6jLk9cVx97hGe9+9uA1eSvfK5Ufhpyuc2XMdCQMu/4eLjjQ66bDIw9YEthllOO7iSIkp31UbidN91cwe5jeOsdLxq6E1Ecfh+/cEcjGEcYGGY5ciZDK3sSprTHUM4RGZqbaNwFIYabu6i0kAHhmkRWBhmOUVXUut6FU87bCEeuOLkhrW9kNRtWCh7gJgWh4VhlnPQ/G7EIiEsHUw2eymuhEKEFfO6G39evoEzs5TWfUxkGsLh+/Xjxa+c2exltCQc3GVmK2wxMIwLThZDTVLBMQamTWBhYBgX6hVjYDuEaXVYGBjGBVL+Oi44fn+85/hlfFdnZgUcY2AYFwhALBJCNq/hmr+tfUKcLMNY0JcovyPDNBkWBoZxIUSEP115CibSeXOb6l5a2BfHSKr8VDaV3kQU33j30TjpoHmBrpNhgoaFgWFcINJHhjrVT/QlIrjnE2/G2FQW+2Zyno/5N8ctDXKJDFMXWBgYxgWnXkmykd8xywYxtyfOw3KYjqSm4DMRzSGi+4joJeOrY9tHIrrI2OclIrrI2NZFRHcT0fNEtJGIrqllLQzTCFYvG8QnTjkY155fe8yBYVqVWrOSrgTwgBBiJYAHjNcWiGgOgC8BOBHACQC+pF5g0doAAAVQSURBVAjItUKI1wE4FsAbiYgrrZiWwcliCIUIV5x+KBb0cgCZ6VxqFYZzAKwxvl8D4FyHfd4B4D4hxJgQYi+A+wCcIYSYFkL8DgCEEFkATwJgByzTMnDhMzNbqVUYFgohXgMA4+sCh32WANiuvB42tpkQ0QCAd0G3OhimJWBdYGYrFYPPRHQ/gEUOb/2Tx3M4/X2ZzQGIKALg5wC+LYTYXGYdlwG4DACWLfMwFIVhasTPoB6G6SQqCoMQ4lS394hohIgWCyFeI6LFAEYddhsG8Fbl9VIAv1deXw/gJSHEtyqs43pjXwwNDXHXGaZuEAFP/L9Ta575zDDtSq2upDsBXGR8fxGAOxz2uRfA6UQ0aASdTze2gYi+AqAfwCdrXAfDBEY0HML8Xk5DZWYvtQrDNQBOI6KXAJxmvAYRDRHRDwFACDEG4GoAa41/VwkhxohoKXR31CoATxLR00R0aY3rYRiGYWqkpgI3IcQeAG932L4OwKXK6xsA3GDbZxgc32NakEXcy4iZ5XDlM8Mo/McFx+CEA+Y0exkM01RYGBhG4ZxjllTeiWE6HJ7HwDAMw1hgi4FhAFx97hF49OXdzV4Gw7QELAwMA+ADr1+OD7x+ebOXwTAtAbuSGIZhGAssDAzDMIwFFgaGYRjGAgsDwzAMY4GFgWEYhrHAwsAwDMNYYGFgGIZhLLAwMAzDMBZIiPabeUNEuwBshT7LYdz2tn2b/fU8APUucXVaV5Cfq7Rfufe9XDOnbZ14Hb3s6/a+n+3lrmUrX0c/n+XfyWA+V+/ruFwIMb/iKoQQbfsPwPWVtjm8XteMdQX5uUr7lXvfyzWbLdexlmvpZ3u5a9nK19HPZ/l3sn2uo5d/7e5KusvDNqd96k215/T6uUr7lXvfyzVz2taJ19HLvm7v+9ne7GtZy/n4dzKYc7bSdaxIW7qSaoGI1gkhhpq9jnaHr2Mw8HUMDr6WwdHuFkM1XN/sBXQIfB2Dga9jcPC1DIhZZzEwDMMw5ZmNFgPDMAxTBhYGhmEYxgILA8MwDGNh1gsDEXUT0Roi+i8iel+z19OuENGBRPQjIrq92WtpZ4joXON38Q4iOr3Z62lXiOgwIvo+Ed1ORH/f7PW0Gx0pDER0AxGNEtFfbNvPIKIXiGgTEV1pbP4bALcLIT4C4OyGL7aF8XMdhRCbhRCXNGelrY3P6/i/xu/ixQDe04Tltiw+r+NzQojLAbwbAKew+qQjhQHATQDOUDcQURjAdQDOBLAKwIVEtArAUgDbjd0KDVxjO3ATvF9Hxp2b4P86ft54nylyE3xcRyI6G8DDAB5o7DLbn44UBiHEQwDGbJtPALDJeLLNArgFwDkAhqGLA9Ch16NafF5HxgU/15F0vgbg10KIJxu91lbG7++jEOJOIcRJANhF7JPZdCNcgqJlAOiCsATA/wD4WyL6HppTYt9uOF5HIppLRN8HcCwRfa45S2sr3H4f/wHAqQDOI6LLm7GwNsPt9/GtRPRtIvoBgHuas7T2JdLsBTQQctgmhBBTAD7U6MW0MW7XcQ8AvpF5x+06fhvAtxu9mDbG7Tr+HsDvG7uUzmE2WQzDAPZXXi8FsKNJa2ln+DoGA1/HYODrWAdmkzCsBbCSiA4gohiACwDc2eQ1tSN8HYOBr2Mw8HWsAx0pDET0cwCPAjiUiIaJ6BIhRB7AxwHcC+A5ALcKITY2c52tDl/HYODrGAx8HRsHN9FjGIZhLHSkxcAwDMNUDwsDwzAMY4GFgWEYhrHAwsAwDMNYYGFgGIZhLLAwMAzDMBZYGBiGYRgLLAwMwzCMBRYGhmEYxsL/BzKw8ay4ch2+AAAAAElFTkSuQmCC\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1a28514400>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df.err.plot(logx=True)"
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0x1a24be2a90>"
]
},
"execution_count": 46,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1a24bf8780>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df.abs_err.plot(logy=True,logx=True)"
]
},
{
"cell_type": "code",
"execution_count": 47,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(-24.950000000000003, 523.95, 0.007385063849679161, 0.18002817347004746)\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x1a264973c8>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df[['price', 'spot_price']].head(500).plot()\n",
"print(plt.gca().axis())"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.4"
}
},
"nbformat": 4,
"nbformat_minor": 2
}