{ "nbformat": 4, "nbformat_minor": 2, "metadata": { "language_info": { "name": "python", "codemirror_mode": { "name": "ipython", "version": 3 }, "version": "3.7.0-final" }, "orig_nbformat": 2, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "npconvert_exporter": "python", "pygments_lexer": "ipython3", "version": 3, "kernelspec": { "name": "python37064bitbasecondaf1f4ce8bd9ee468caf98567667ef0765", "display_name": "Python 3.7.0 64-bit ('base': conda)" } }, "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "对于第12章的学习。\n", "\n", "两个案例,一个是19格随机游走;另一个是山间的摇摆车。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 第一个案例\n", "\n", "这个案例用于对比书上所提出的三种算法的表现:\n", "- 最基础的带有离线lambda思想的:`离线lambda-回报`\n", "- 与时序差分结合的,使用了资格迹的:`半梯度TD(lambda)`\n", "- 经过一系列讨论,得出的后向视图的、计算量小的算法:`真实在线TD(lambda)`" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "#######################################################################\n", "# Copyright (C) #\n", "# 2016-2018 Shangtong Zhang(zhangshangtong.cpp@gmail.com) #\n", "# 2016 Kenta Shimada(hyperkentakun@gmail.com) #\n", "# Permission given to modify the code as long as you keep this #\n", "# declaration at the top #\n", "#######################################################################\n", "\n", "import numpy as np\n", "import matplotlib\n", "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "from tqdm import tqdm\n", "\n", "# all states\n", "N_STATES = 19\n", "\n", "# all states but terminal states\n", "STATES = np.arange(1, N_STATES + 1)\n", "\n", "# start from the middle state\n", "START_STATE = 10\n", "\n", "# two terminal states\n", "# an action leading to the left terminal state has reward -1\n", "# an action leading to the right terminal state has reward 1\n", "END_STATES = [0, N_STATES + 1]\n", "\n", "# true state values from Bellman equation\n", "TRUE_VALUE = np.arange(-20, 22, 2) / 20.0\n", "TRUE_VALUE[0] = TRUE_VALUE[N_STATES + 1] = 0.0\n", "\n", "# base class for lambda-based algorithms in this chapter\n", "# In this example, we use the simplest linear feature function, state aggregation.\n", "# And we use exact 19 groups, so the weights for each group is exact the value for that state\n", "class ValueFunction:\n", " # @rate: lambda, as it's a keyword in python, so I call it rate\n", " # @stepSize: alpha, step size for update\n", " def __init__(self, rate, step_size):\n", " self.rate = rate\n", " self.step_size = step_size\n", " \"\"\"\n", " 这里的 w 与 x 的关系还是一一对应且线性的\n", " 与表格型同\n", " \"\"\"\n", " self.weights = np.zeros(N_STATES + 2)\n", "\n", " # the state value is just the weight\n", " def value(self, state):\n", " return self.weights[state]\n", "\n", " # feed the algorithm with new observation\n", " # derived class should override this function\n", " def learn(self, state, reward):\n", " return\n", "\n", " # initialize some variables at the beginning of each episode\n", " # must be called at the very beginning of each episode\n", " # derived class should override this function\n", " def new_episode(self):\n", " return\n", "\n", "# Off-line lambda-return algorithm\n", "class OffLineLambdaReturn(ValueFunction):\n", " def __init__(self, rate, step_size):\n", " ValueFunction.__init__(self, rate, step_size)\n", " # To accelerate learning, set a truncate value for power of lambda\n", " self.rate_truncate = 1e-3\n", "\n", " def new_episode(self):\n", " # initialize the trajectory\n", " self.trajectory = [START_STATE]\n", " # only need to track the last reward in one episode, as all others are 0\n", " self.reward = 0.0\n", "\n", " def learn(self, state, reward):\n", " # add the new state to the trajectory\n", " self.trajectory.append(state)\n", " if state in END_STATES:\n", " # start off-line learning once the episode ends\n", " self.reward = reward\n", " self.T = len(self.trajectory) - 1\n", " self.off_line_learn()\n", "\n", " # get the n-step return from the given time\n", " def n_step_return_from_time(self, n, time):\n", " # gamma is always 1 and rewards are zero except for the last reward\n", " # the formula can be simplified\n", " \"\"\"\n", " 原公式 12.1\n", " 注意这里 G_{t:t+n}与公式中不同,考虑到任务的特殊性\n", " (简化了前面 R 累加的过程,因为只有 end_state 的 R 才不等于 0)\n", " \"\"\"\n", " end_time = min(time + n, self.T)\n", " returns = self.value(self.trajectory[end_time])\n", " if end_time == self.T:\n", " returns += self.reward\n", " return returns\n", "\n", " # get the lambda-return from the given time\n", " def lambda_return_from_time(self, time):\n", " returns = 0.0\n", " lambda_power = 1\n", " for n in range(1, self.T - time):\n", " returns += lambda_power * self.n_step_return_from_time(n, time)\n", " lambda_power *= self.rate\n", " if lambda_power < self.rate_truncate:\n", " \"\"\"\n", " 虽然算法中是加到 T - t - 1 项;\n", " 但是实际实现中,为了效率,省去过于小的项\n", " \"\"\"\n", " # If the power of lambda has been too small, discard all the following sequences\n", " break\n", " returns *= 1 - self.rate\n", " if lambda_power >= self.rate_truncate:\n", " returns += lambda_power * self.reward\n", " return returns\n", "\n", " # perform off-line learning at the end of an episode\n", " def off_line_learn(self):\n", " for time in range(self.T):\n", " \"\"\"\n", " 每个 time 都对应图 12.1 ,只不过方块不同\n", " 起点情况是方块为 T-0-1;\n", " 重点情况是方块为 T-(T-1)-1=0\n", " 换个角度理解:\n", " 如此,便为每个经历过的状态都来了至少一次的 lambda 回报\n", " \"\"\"\n", " # update for each state in the trajectory\n", " state = self.trajectory[time]\n", " delta = self.lambda_return_from_time(time) - self.value(state)\n", " delta *= self.step_size\n", " self.weights[state] += delta\n", "\n", "# TD(lambda) algorithm\n", "class TemporalDifferenceLambda(ValueFunction):\n", " def __init__(self, rate, step_size):\n", " ValueFunction.__init__(self, rate, step_size)\n", " self.new_episode()\n", "\n", " def new_episode(self):\n", " # initialize the eligibility trace\n", " self.eligibility = np.zeros(N_STATES + 2)\n", " # initialize the beginning state\n", " self.last_state = START_STATE\n", "\n", " def learn(self, state, reward):\n", " # update the eligibility trace and weights\n", " self.eligibility *= self.rate\n", " self.eligibility[self.last_state] += 1\n", " delta = reward + self.value(state) - self.value(self.last_state)\n", " delta *= self.step_size\n", " self.weights += delta * self.eligibility\n", " self.last_state = state\n", "\n", "# True online TD(lambda) algorithm\n", "class TrueOnlineTemporalDifferenceLambda(ValueFunction):\n", " def __init__(self, rate, step_size):\n", " ValueFunction.__init__(self, rate, step_size)\n", "\n", " def new_episode(self):\n", " # initialize the eligibility trace\n", " self.eligibility = np.zeros(N_STATES + 2)\n", " # initialize the beginning state\n", " self.last_state = START_STATE\n", " # initialize the old state value\n", " self.old_state_value = 0.0\n", "\n", " def learn(self, state, reward):\n", " # update the eligibility trace and weights\n", " last_state_value = self.value(self.last_state)\n", " state_value = self.value(state)\n", " dutch = 1 - self.step_size * self.rate * self.eligibility[self.last_state]\n", " \"\"\"\n", " *如下是我们在看书本是可能忽略的\n", " 这个类是对真实在线 TD(lambda) 的复现\n", " 我阅读时忽略了每次迭代更新的是向量,而非单个迹元素\n", " 因此一开始没有理解为什么是整个 self.eligibility *= self.rate\n", " \"\"\"\n", " self.eligibility *= self.rate\n", " self.eligibility[self.last_state] += dutch\n", " delta = reward + state_value - last_state_value\n", " self.weights += self.step_size * (delta + last_state_value - self.old_state_value) * self.eligibility\n", " self.weights[self.last_state] -= self.step_size * (last_state_value - self.old_state_value)\n", " self.old_state_value = state_value\n", " self.last_state = state\n", "\n", "# 19-state random walk\n", "def random_walk(value_function):\n", " value_function.new_episode()\n", " state = START_STATE\n", " while state not in END_STATES:\n", " next_state = state + np.random.choice([-1, 1])\n", " if next_state == 0:\n", " reward = -1\n", " elif next_state == N_STATES + 1:\n", " reward = 1\n", " else:\n", " reward = 0\n", " value_function.learn(next_state, reward)\n", " state = next_state\n", "\n", "# general plot framework\n", "# @valueFunctionGenerator: generate an instance of value function\n", "# @runs: specify the number of independent runs\n", "# @lambdas: a series of different lambda values\n", "# @alphas: sequences of step size for each lambda\n", "def parameter_sweep(value_function_generator, runs, lambdas, alphas):\n", " # play for 10 episodes for each run\n", " episodes = 10\n", " # track the rms errors\n", " errors = [np.zeros(len(alphas_)) for alphas_ in alphas]\n", " for run in tqdm(range(runs)):\n", " for lambdaIndex, rate in enumerate(lambdas):\n", " for alphaIndex, alpha in enumerate(alphas[lambdaIndex]):\n", " valueFunction = value_function_generator(rate, alpha)\n", " for episode in range(episodes):\n", " random_walk(valueFunction)\n", " stateValues = [valueFunction.value(state) for state in STATES]\n", " errors[lambdaIndex][alphaIndex] += np.sqrt(np.mean(np.power(stateValues - TRUE_VALUE[1: -1], 2)))\n", "\n", " # average over runs and episodes\n", " for error in errors:\n", " error /= episodes * runs\n", "\n", " for i in range(len(lambdas)):\n", " plt.plot(alphas[i], errors[i], label='lambda = ' + str(lambdas[i]))\n", " plt.xlabel('alpha')\n", " plt.ylabel('RMS error')\n", " plt.legend()" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "# Figure 12.3: Off-line lambda-return algorithm\n", "def figure_12_3():\n", " lambdas = [0.0, 0.4, 0.8, 0.9, 0.95, 0.975, 0.99, 1]\n", " alphas = [np.arange(0, 1.1, 0.1),\n", " np.arange(0, 1.1, 0.1),\n", " np.arange(0, 1.1, 0.1),\n", " np.arange(0, 1.1, 0.1),\n", " np.arange(0, 1.1, 0.1),\n", " np.arange(0, 0.55, 0.05),\n", " np.arange(0, 0.22, 0.02),\n", " np.arange(0, 0.11, 0.01)]\n", " parameter_sweep(OffLineLambdaReturn, 50, lambdas, alphas)\n", "\n", " plt.show()" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": "100%|██████████| 50/50 [03:50<00:00, 4.57s/it]\n" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYsAAAEKCAYAAADjDHn2AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAIABJREFUeJzsnXd4VFX6xz9nSjKZZNILhIQESCiBUEMThARQVARxpahZFBs2bLvuqqsiPxt2XbuyrrJKU7ooKkICKDWB0BICoaaT3ifTzu+PCZGQQEKSIUHu53nmgblzzrnvlNzvPeX9HiGlREFBQUFB4UKo2joABQUFBYX2jyIWCgoKCgqNooiFgoKCgkKjKGKhoKCgoNAoilgoKCgoKDSKIhYKCgoKCo2iiIWCgoKCQqMoYqGgoKCg0CiKWCgoKCgoNIqmrQNoLXx9fWVoaGhbh6GgoKBwWZGYmJgvpfRrrNyfRixCQ0NJSEho6zAUFBQULiuEECebUk4ZhlJQUFBQaBRFLBQUFBQUGkURCwUFBQWFRvnTzFkoKCi0PmazmYyMDIxGY1uHotBCdDodQUFBaLXaZtVXxEJBQeG8ZGRkYDAYCA0NRQjR1uEoNBMpJQUFBWRkZNClS5dmtaEMQykoKJwXo9GIj4+PIhSXOUIIfHx8WtRDVMRCQUHhgihC8eegpd+jIhaXmBMnTnDo0KG2DkNBQUHholDE4hIhpWT79u0sWLCAJUuW8MMPP2CxWNo6LAWFdo+bm1urtDN37lzeeuutRsvNnDmTZcuWtco5G+Knn36iR48ehIWF8dprrzVYprq6munTpxMWFsbQoUM5ceKEw+JpKg4VCyHEdUKIVCFEmhDi6QZenymEyBNCJNU87j3rNetZx9c4Mk5HY7VaWbt2be2PZNiwYezatYsFCxZQVlbW1uEpKChcIqxWKw8//DDr1q0jOTmZxYsXk5ycXK/cF198gZeXF2lpaTzxxBM89dRTbRBtXRwmFkIINfARcD0QAdwmhIhooOhSKWX/msd/zjpeddbxSY6K81Kwbt06EhMTufrqq5k2bRrXXXcdU6ZMIScnhy+++ELpYSgoNIHy8nLGjh3LwIEDiYyMZPXq1YB9aLdnz57ce++99OnTh9jYWH799VdGjBhBeHg4O3furG1j7969jBkzhvDwcObPnw/Ye/2zZ88mIiKCCRMmcPr06dryL774IoMHD6ZPnz7MmjULKWWL3sPOnTsJCwuja9euODk5ceutt9a+j7NZvXo1d955JwBTpkxhw4YNLT53S3Hk0tkhQJqU8hiAEGIJcBNQX0b/5Jw8eZLu3bszduzY2mN9+vTBz8+P/Px8NBplBbNC++f/vj9IclZpq7YZEejOCxN7N6msTqdj5cqVuLu7k5+fz7Bhw5g0yX4fmZaWxnfffcfnn3/O4MGDWbRoEb/99htr1qzh1VdfZdWqVQDs27eP7du3U1FRwYABA5gwYQLbt28nNTWV/fv3k5ubS0REBHfffTcAs2fPZs6cOQDMmDGDtWvXMnHixDpxLVy4kDfffLNevGFhYfWGszIzMwkODq59HhQUxI4dO+rVPbucRqPBw8ODgoICfH19m/RZOQJHXqU6AelnPc8AhjZQ7hYhxCjgMPCElPJMHZ0QIgGwAK9JKVedW1EIMQuYBdC5c+dmB2oxm9E0M1GlMaSUFBcXExYWVu+1gIAAAgICHHJeBYU/G1JK/vWvf7F582ZUKhWZmZnk5uYC0KVLFyIjIwHo3bs3Y8eORQhBZGRknfH+m266CRcXF1xcXIiJiWHnzp1s3ryZ2267DbVaTWBgIGPGjKktHxcXxxtvvEFlZSWFhYX07t27nljExsYSGxvb5PdwLg2tUmpquUuJI8WioXd27ifwPbBYSlkthHgAWACc+aY6SymzhBBdgY1CiP1SyqN1GpPyc+BzgKioqGb10bZ8u5TEfSfwrrZyx5v/ak4TF6SiogKz2Yynp2ert62gcClpag/AUSxcuJC8vDwSExPRarWEhobW5g04OzvXllOpVLXPVSpVnWHecy+4Z543dCE2Go089NBDJCQkEBwczNy5cxvMU7iYnkVQUBDp6X/cQ2dkZBAYGFiv7plyQUFBWCwWSkpK8Pb2rv+hXEIcOcGdAQSf9TwIyDq7gJSyQEpZXfN0PjDorNeyav49BsQDAxwRZPDAwRRrqrDYVKzYur/V2y8uLgZQxEJBoYWUlJTg7++PVqslLi6Okyeb5Kxdh9WrV2M0GikoKCA+Pp7BgwczatQolixZgtVqJTs7m7i4OIBaYfD19aW8vPy8K6RiY2NJSkqq92io/ODBgzly5AjHjx/HZDKxZMmS2qG0s5k0aRILFiwAYNmyZYwZM+ZP3bPYBYQLIboAmcCtwO1nFxBCdJRSZtc8nQSk1Bz3Aiprehy+wAjgDUcEGRrWFY1UIdUabOue4lPzBzwwulurtV9UVASAl5dXq7WpoHAlEhsby8SJE4mKiqJ///707NnzotsYMmQIEyZM4NSpUzz//PMEBgZy8803s3HjRiIjI+nevTujR48G7Dd49913H5GRkYSGhjJ48OAWvweNRsOHH37I+PHjsVqt3H333fTube+xzZkzh6ioKCZNmsQ999zDjBkzCAsLw9vbmyVLlrT43C1FOHKGXQhxA/AeoAb+K6V8RQjxIpAgpVwjhJiHXSQsQCHwoJTykBDiKuAzwIa99/OelPKLC50rKipKNnfzozfmvIqn2Yko/Rt8VvUgoSNv5enre7aKkm/ZsoUNGzbwzDPP1OkqKyhcDqSkpNCrV6+2DkOhlWjo+xRCJEopoxqr69BlOFLKH4Efzzk256z/PwM800C9rUCkI2M7G2epxqKSJBoH8bb+K0Zv7kFRpYlXb45Eo27ZSF1xcTF6vV4RCgUFhcsaJYMb0GmcMKskZUWhuMpKlgYu5duEdB5etBuj2dqitouKipT5CgUFhcseRSwAvV6PSVjRlbhycuQjhBXG879Bx/n5YC53fbmLMqO52W0XFxcr8xUKCgqXPYpYAG4GA0ZhRos7m3yDIHgYo9Le5NNJHdh5opDb5++goLy68YbOwWazUVxcrPQsFBQULnsUsQA8vL2xChtC58LupI0w+WOwmbnu6MvMnzGQw7llTP10G5nFVRfVbllZGTabTRELBQWFyx5FLACDpwEAjdqEOqmIYlcfuPYlOLqRMeVr+ebeoeSVVzPlk62knW668d+ZHAtlGEpBQeFyRxELwNXLHQC12kbngmC2ZG6BqHugawz88jyD3YtZOms4Zqtk6qfb2Jte3KR2z+RYKD0LBYXmcyValJ9h2bJlCCG4UFqAlBKr1dbaYdZDEQvAzccDAJUGPKtDiUuPAyHgpg9BpYWVDxLRwZXlDw7HTafhtvnb+T0tv9F2z/QsPDw8HBq/goLC5UFTLcrBPoz9/vvvM3RoQ5Z6dszVVopyKinNq3K4K60iFoCbp/3ORWicsGp82XXiN0xWE3gEwfWvQ/p22PYRIT6uLH/gKjp767nry12s2599wXaLi4sxGAxoHWRSqKBwJXElWZQDPP/88/zzn/9Ep9PVe81mk5QVGinKqcBmteHi7tSiuJqC4o0NuLq6AiA1GiqdNASdtLErZxcjOo2AfrfCobWw8SUIvwZ//14snTWcuxfs4uFFu3nl5khuG9Kw462SY6Hwp2Ld05DTyv5pHSLh+gsPxZzhSrIo37NnD+np6dx44411hs6klFRXWigvMmKzSlwMTrh6OqNSOd43ShELwMnJCTUqbGoNNlsJkTkhxKXH2cVCCLjxPfh4KKy8H+7dgIdey9f3DOGhhbt5ZsV+iivNPDC6az17kOLi4hZZpysoKPzBlWJRbrPZeOKJJ/jqq6/qHLeabZQVGTFVWdA4qfHw06F1VjfpvK2BIhbYvywXjQ6rWiCthYRWdOe/6fE8O/RZ+xfp5mcXjG9nwOa3IOYZ9E4a5t8RxZPf7eX1nw5RVGnimbP8pKxWK6WlpcpKKIU/D03sATiKK8WivKysjAMHDhAdHQ1ATk4OEydO4n/zF9O/70DcvJxxMThdchdaZc6iBr2TDosK1LIAdXUAuRU5HCo89EeBiEnQdzpsfhMydwOgVat4d1p/7hwewuebj/H0Vxs4VfNDKCkpQUqpDEMpKLQSV4pFuYeHB/n5+Zw4cYIjqWlEDRzMgs8XMXjIYLwDXdG7O7eJXbkiFjXodXqMwoxGVFLmEkSHYkF8enzdQte/Dm4BsPIBMNt/SCqVYO6k3jw+LhzT8QT+8+X/yC8sVvaxUKilqryMypKmLbdWOD+xsbEkJCQQFRXFwoULW2RRPmzYsDoW5eHh4URGRvLggw82aFE+efLkVrco79WrF9OmTatjUb5mzRqgZgK7wEhRTiVSgpuXDk9/PWpN212yHWpRfilpiUU5wHf/WcTJ9FN4HjuMUR9LRYdPSIxS8e3Eb+sWTPsVvrkFhs+G8a/UHpZS8uJLryBtFsqdfbl5zBDWr/uRxx57TBmKukIxG43sXreGXWuWEz70KsY/8Fhbh3TRKBbllxZHT2C3W4vyywm9wQ0jJpxVOoyynF4FXfmmcB05FTl0cO3wR8GwcTDoLtj2EfScACFXAVBdXY20WdC5e0FpPt//HIeLELi7u7fRO1JoK6wWC/s3/sL25YupKC6iW9RQBt1wU1uHpdDOsZptlBUaMRnbZgK7MRSxqMHNww2LsOGkccVmKURTYU+k25S+iek9p9ctfO3LcCwOVj0ID/wOzm6UldltQG4YF0Pc1l0U5aRTJZzJLq0myEt/qd+OQhsgbTZSt23h96XfUJybTaeeEUx84hk69Yxo69AU2jFSSipLTVSWmAD7kJOLQdvm26ieizJnUYObV40/lNYNnTqfErMHYU5BxGXE1S/s7AaTP4Gik7D+eQBKS0sBcHd3567bp6J1cqZE6pjyyTaO5DbdT0rh8kNKyfGkRL5+5nF+eP9NtM7O3Pz0C0yf+7oiFAoXxFxtoSi7goriapx06poJ7Eu/0qkpKD2LGlw9asTC2RUnWUaZrQc3Vvfio+x4KswVuGpd61YIuQqGPwzbPoSeEygr9wXAYDDg7u7OrPvu5URhFQ8tO8zUz7bx1V1D6B+sTHb/2cg6fIgti78iI/kAHv4B3DD77/QcMRqhUu7DFM6PzWqjothEVbkJlVqFh58Lzvr27fSg/KJrOJPFrXExIJyMmLVu9MnywWwz83vm7w1XGvM8+PaA1bMpK7JbBBgMdtHx8/NjcI/OLH/gKtx1Wm6fv53fjjTuJ6VweVCQcYrVb73M4uefpDAzgzF3P8Bd735Kr6tjFKFQOC9SSowVZgqzK6gqN+FicMI70LXdCwUoYlHLGbEQWmfM1Xa3WNtJiYezR/0ltGfQ6uDmT6H8NGUHfsHZ2Rknp7oeLZ199Cx7YLjdT+qrnfzYiJ+UQvumNP80P338HguenM2pA/sYMe2v3PP+fAaMvxG1pv3/wf/ZkVJis9ocbqrXHKxmGyWnqyjNr0KlVuHVwRWDt+6SWHW0BopY1KDX2yehrUJQXngaIc0U5FkZFXg1mzM3Y7FZGq7YaSCM+gdlBdkYnBv+0v3ddSy9fzj9gjx5eNFuFu045ai3oeAgKktLiP/ffP772CwObd3EwAk3cc/78xl2y6046VzaOrw/NU21KDdXWynKriA/o5z8jHKKciooKzBSWWbCZLTwwpwX2sSiXEpJRUk1hdkVmKutbE3cxPDogfTq3eO8FuWnTp0iJiaGAQMG0LdvX3788cdWi6e5KHMWNTg7O6MWKkzSitViwV1fQolTB8apXPm+ei1Jp5OI6nCepcijnqRs6z9xLz8G5Xl2e5Bz8HDR8vU9Q3loYSL/WrmfokoTD0V3a5cTWQp/UF5USOIPq9i7fh2W6mp6R49l+JTbcfet/x0rtA1SSipLTFSUVKNSC1w9nbFabFjNNoyVZmS5vZdRWWpCZaumKKcCjVaNxkmFWqtCo1WhUjvmvtlktFBWaMRqtuHsosHFQ8vf//E469evJygoiMGDBzNp0iQiIuouhHj55ZeZNm0aDz74IMnJydxwww11PK7aAqVnUYMQAhetjmppRiO0GPyslBk6E5GtRavSnn8oCkCtpcy5IwZZCmsfh/N0gV2c1Hx+RxST+wfy5s+pvPJDCjZb++suK0Bxbg7r53/Ifx65h8S1q+g6cDB3vvUR4x94TBGKNqIhi3KLycreXSn0HxTJk88+SvR1w5n10N3s3PM7N95yLVeNGcjRzGQ8/PU4uahJOXyQSVNuoF9Ubz7+6FOKcyvJSy/jnpmz6Nm9F+OvvZ7srBwsJis2q63ZFuU2q42ygiqKcyuRNvDwc8HDX0/i7oQmWZQLIWpXWJaUlNTzj2oLlJ7FWeh1eqqqzOjUbjh727CecqZ4zwmGxAwhLj2Ov0f9vcGegM1mo6zSiCGkPxyaB3uXQP/bGjyHVq3inWn98dQ78Z/fjlNQYWLeXyLRadtP8s2VTN7J4+xcvYzUrVtQqVX0Hj2OqEl/watD2/+xtjWv73y9rl9aK9DTuydPDXmqSWXPtijPy8tj2NBhDOsfjdVi4/jJY6xYtZzevXvXsyh//Y3XWLVqFVpnDSmpB9m+fTvl5eUMHDiQv0ydzPat2zh24ihbNu4gJzuHkWOHMO3m28nPKOe2m+/k0fufRK1Vcf9D97Bq5WpumnxTnXmGc40EpU1itUq6hHRh0TdL62RgN9WifO7cuVx77bV88MEHVFRU8Ouvvzb3I241FLE4C1dXPeXFxXi6eCFtxUBHTh8tJvqOaF7Z8QrHS4/T1aNrvXqVlZXYbDYMPUeDLR7WPQVdrrZvntQAKpXghYkR+Lo58dYvhzmcW8YnsYPo7KMk77UVmYeS2bn6O47t3oVW58KgGyczaMJk3Ly82zo0hRrOWJRv2rQZJGRlZVFSVoBngL7ZFuV79+9mR+I2ZtwRi1+QO76dDIwZE4Pe3W6z8fPGrbz3wTtUVVZSVFxE15BwRgwag0ptH75Sa1X85aapTJsyHSEE5UXVtRnYBu/6GdhNsSgHWLx4MTNnzuTvf/8727ZtY8aMGRw4cABVG660c6hYCCGuA/4NqIH/SClfO+f1mcCbQGbNoQ+llP+pee1O4Lma4y9LKRc4MlYAVzdX8jmNj3cQlSV5aFXdKax0ZrTXYF4B4tPjGxSLM9nbBncPmPwxfDICVs+GGSvt+2E0gBCC2WPCiQh05/ElSdz4wRb+fesAYnr6t9r7MWWUUfjtYTTeOpyC3NB2csMpyIDa4PhdtS4HpJSc2LubHSu/JfPQQXQGd0ZM+yv9x9+IrpX2ff4z0dQegKP45ptvyMnK5edV8WidtESNjETrKhBCtJpFuRACoRJonTWonSVPPv04CQkJBAUF8cKcudhsVvuciNmGxWzDVG5m2cqlfPzZ+zUNgkotUKlEsy3KAb744gt++uknAIYPH47RaCQ/Px9//9a7PlwsDpMpIYQa+Ai4HogAbhNCNJTOulRK2b/mcUYovIEXgKHAEOAFIYTD3fhc3Q0YhRlP9wCKc7Pw8ddQ6h6C+9Fcenn3Ou+8Ra1YGAzg3RWufcluB5LwRaPnHNMzgLWPXE2Ql567vtrFO+sPY22FeQxpkxStSsNWbsJSaKR0wykKFiST/coOsl7dQf6Cg5jSr8zMcpvNSuq2LXzz9OOsmPcCpXmniZk5i1kf/pdht9yqCEU7xGq2kZOZh4e7N3o3HXtTd3Lq1MmLXiDSXIvyiooKVqxcjkarxtXDGXdfF7w7uuIX7Mash+4iMSGRndsT2Ls3iX379rbIohygc+fObNiwAbCb/xmNRvz82nauzJE9iyFAmpTyGIAQYglwE9Dw7uR1GQ+sl1IW1tRdD1wHLHZQrAC4erhhFlZcdJ6UnM6l+1Bf9mWZKUtMIvrqaD7d+ymFxkK8dXWHJuqIBUDUPZCyFn55HrrGgE+3C563s4+eFQ9dxfOrDvD+hiMkpRfz7+n98XJtfg+gMjEXc0Y53tN7oB/gj63aijmrHFNmOeaMMkyZ5e1yLbojsZjNJG/eSML3yynKzsI7MIjxDz5Or5GjlRyJdsqZ32hhdgU33ziNO2fdyrgJo+jfv3+LLMpPnTpVx6J848aNREZG0r179wYtykNDQxu0KBdC2FdWNXHO8WyLcqvVyt13313HojwqKopJkybx9ttvc9999/Huu+8ihOCrr75q85WTDrMoF0JMAa6TUt5b83wGMFRKOfusMjOBeUAecBh4QkqZLoR4EtBJKV+uKfc8UCWlfOucc8wCZgF07tx5UHM2QzmbxMREvv/+e27xGMYv2z9k3Kx5/PZdHiOtv6B97Q6mr53OSyNeYnLY5Dr14uPjiY+P57nnnkOjqdHfkkz4eDj494K7fgRV4z8mKSVLdqXzwuqD+Bmc+eSvA+kbdPEWIbZKMzlvJ6Lxc8Hv/r5t/iNrD2SkHOCH99+kvLCAgK7hDJ08lbDBw5Rs60ZoS4tyq8VGWYHdhVWr0+Duo2vT/Rz+DLTEotyRn3xDV6hzlel7IFRK2Rf4FTgzL9GUukgpP5dSRkkpo1qji3Ymi9tqsz/XaO09hrzMKnp69sBf79/gUFRZWRmurq5/CAWARye44Q1I3273j2oCQghuG9KZZQ8OB2DKJ9tYvPPURfcASn89ha3SjOckJY8D7EKxYt5ctDoXbnn2JWJffYfwoVcpQtFOkVJiLDfXJrG5eevw9HdRhKKNceSnnwEEn/U8CMg6u4CUskBKWV3zdD4wqKl1HcGZLO5qkxUAY3keOicbJU4BmE+cICY4hq1ZW6m2VtepV1pa+scQ1Nn0nQ49b4SNL0NuU0bfaqoFebL2kZEM6+bDMyv2889l+zCarU2qa86poHx7Fq5DO+IUqIy9Zxw6yIp5czH4+DL9hXmE9h2gCGg7xmq1UZpXRWlBFRqtCq+OevRtsN+0Qn0cKRa7gHAhRBchhBNwK7Dm7AJCiI5nPZ0EpNT8/2fgWiGEV83E9rU1xxzKmZ5FSXUZaoMHGadO4hPkQqkhhKo9e4gOjqbKUsWi7xdx+PDh2nplZWUNi4UQcON74OwOK+8Hq7nJsXi5OvHlzME8Ojac7xIz+MvHWzlVUHnBOlJKilYfRaXT4HFtSJPP9Wcl81ByrVBMe2Eerp7KjoXtGWOFmcKsCqqNVtw8nfEM0Dd5LkDB8ThMLKSUFmA29ot8CvCtlPKgEOJFIcSZ6f9HhRAHhRB7gUeBmTV1C4GXsAvOLuDFM5PdjuSMWGzlEMVB4ezJKaTI9RSV+gBKdu9nSIchdDJ34mTSSTZv3lxb77xiAXbrjxvfhZx9sPnNhsucB7VK8LdruvPlzMFkFldx4wdb2JCSe97yVfvyMR0vwX18KKrLwMXSkWQeSmb5vBdw8/Zh6pxXFaFox9isNkry7AZ7ao0K7w569B7OSm+ineHQQUAp5Y9Syu5Sym5Syldqjs2RUq6p+f8zUsreUsp+UsoYKeWhs+r+V0oZVvP40pFxnkGn0zFx4DiGm7sTptPjUl3JqfzDWDRGclNP46R2IqrcPg+UkZFBeXk5VquVioqK84sFQMQk+5DU5rcgc/dFxxXT05+1j4wk2FvPPQsSePuX1HrLa20mKyU/HkPbyQ3XwR3O09KVQWZqil0ovLyZNudVJbGuHVNdaZ+bqK404+rpjFcHPRonpTfRHlFmjM6hd48IeluD6enfBfWpNDQaDRWGExSWajiekoKmWMMJtxMApKamUl5eDnBhsQC4/nVwC4CVD4C56qLjCvbWs/zBq5gWFcQHG9OY+eVOCitMta+XxaVjLTHZJ7UvE8tjR5B1OIUV8+YoQtHOsdkkpflVlORVoVKp8OroiqvSm2jXKGJxDqqa7GZ3V1+ExcTAvpGYdPnkBAQRv349LnoX9vnuQ6VXkZqaWj/H4ny4eMFNH0B+qn3CuxnotGremNKP1/4SyY7jhUz84Df2phdjzq2gbHMG+gH+OIe4N6vtPwNZhw+x/NU5uHp62YXC26etQ1JoAFOVhcKsCowVZvTuTnh10KO9QG+iqRbljTF37tw2sSg/l59++okePXoQFhZ2XovykydPMnbsWPr27Ut0dDQZGRkOi6epKGJxDmp3u1i4OnkA0MXfB63KmfQQCycLC7l65NVEBkRy2vU0x44do6CgALDvvd0oYeMg6m7Y9hGcOM/ue03g1iH2HfgA5nyyg4yPkuyT2td3aXablzvZR1JZ/uoc9B6eTFWEol1is0nKCowUn65ECPDqoMfNS3dF9YStVisPP/ww69atIzk5mcWLF5OcXH+l5JNPPskdd9zBvn37mDNnDs8880wbRFsXRSzOQaXXgkrgrLZPdpfnnSaiyyCsWjM6q42oqChigmNIVidjsVhISkoCmtCzOMM1L4FXCKx6EKqbb7cRGeTBqvG9eVfqyTVZ+E+IM2aXK3OsN/tIKsteeR69uwfT5szD4O3b1iEpnIPJaKHo7K1EO7qidb44A4mGLMoBTpw4Qc+ePbn33nvp06cPsbGx/Prrr4wYMYLw8HB27txZ28bevXsZM2YM4eHhzJ8/H7CvIpw9ezYRERFMmDCB06dP15ZvrkX5+di5c2eTLMqTk5MZO3YsADExMQ2WudQorrPnIFQCtUGLygg6VzeKc7IYfPWtpBw8RLeTh9BqNEQHR/OO7h1UWhXHjx9HCFGbo9Eozm4w+RP48ga7HcjE95oVZ/mObKpXpeEa6Mburi58+dtRtn1czqd/HUiIj2uz2rwcyU47SyhemIfBRxEKR5Hz6qtUp1ycRbnEnolts0qEALVGRZVKcGZpo3OvnnT417+a1NbZFuX5+fkMGzas1lcpLS2N7777js8//7yeRfmrr77KqlWrANi3bx/bt2+noqKCAQMGMGHCBLZv305qair79+8nNzeXiIgI7r77bgBmz57NnDlzAJgxYwZr165l4sSJdeI616L8DA0ZCTbVorxfv34sX76cxx57jJUrV1JWVkZBQQE+Pm3XY1bEogFU7s5Yy0x4dgykKDsL/xAPPIt7oy86SXVaGqHduxPqGUp5eTn6fD0Gg+HirINDroKrZsPWD+xJe+HjmlxVSknp+pOUbUxH18N4+XYlAAAgAElEQVQL79t78ZCzml5h3jXutb/x3vT+jO0V0Ix3fnmRk3aY5a/MwcXdnalzXlWEop1hkxKr2YaUdidWtUbVoDVDUzljUb5582ZUKhWZmZnk5tqXkjfXonznzp1s3ryZ2267DbVaTWBgIGPGjKktHxcXxxtvvEFlZSWFhYX07t27nljExsYSGxvb5PdwLg1N6r/11lvMnj2br776ilGjRtGpU6e6DhFtgCIWDaA2OGEpqMKrQyAZhw7ipNPg6edEWUEoVXuS0HXvTnRwNBuyNzCYwU0fgjqbmOfgyHr7cNR9G8EzuNEq0mqjaEUalYm56KMC8Lo5HKG2/9BietiX1z64MJF7FiQwOyaMJ67pjvpPOh6ck3aYZa88j87NjWlzXlV2r7sENLUHYLXaqCo12bcxVatw99Hh5NLyS83ChQvJy8sjMTERrVZLaGhorTNsa1mUn43RaOShhx4iISGB4OBg5s6dW3u+c+Nqas+iqRblgYGBrFixArAPvy1fvhwPD4965S4lypxFA6gNWmxlJrw6dqKsIB+LyURAmA+lHqFU7rHPUcQEx5Cly0KoRPPEQquDqQvAYoTFt0F1eaNVyuIzqEzMxTC2M163/CEUZwj21rPsgauYHhXMh3H1l9f+Wcg5euQPoXhhHu6+befxr2BHSonJaKEkr4qCjHIqS03oXLV4B7q2ilCAfXtRf39/tFotcXFxNMc4tLkW5eXl5eddIRUbG0tSUlK9R0ssyvPz87HZ7CZ18+bNqx0Wa0sUsWgAtcEJW6UFT/9AkJLi3GwCunhg1rhSeOAYAH19+2JwMWDqYWLYsGHNO5F/T5j6JZw+CCvuA9v5/Z+k1Ub59mx0PbzwuCbkvOvRdVo1r0/py+u32JfX3vj+FpLSi5sXXzsk91gay155DmdXN6bNUYSirbHZJFVlJopyKinOrcRUZbFPYAe64u7rUmf70ZYSGxtLQkICUVFRLFy4sEUW5cOGDatjUR4eHk5kZCQPPvhggxblkydPbtCi/GI526K8V69eTJs2rY5F+Zo1dkek+Ph4evToQffu3cnNzeXZZ59t8blbisMsyi81UVFRMiEhoVXaqtiZQ9GKI6hv9WPRvCeZ9OSzePj35rt5CfQ++AVXf/8Rak9PnvvtOTamb2TT9E1oVS2w19jxOaz7B1z1CFzbcA5G5b48Chcdwmdmb1x6Ni3RbH9GCQ8uTOR0aTVzJkYQO7TzZZn0JGsEOyPlAJu//i9OelemvzAPdz9FKBzN+SzKLWYrVWVmjBVmpE2i1qrQG5xwdtW2qkAotC4tsShX5iwaQFWTa2HQ2y/KxdlZdB0wFJUKygwhVO3di9vo0cQEx7D66Gr25O5hSMchzT/h0Fn2ZL2tH4Bvdxh4R70i5duyUXs5o+vedI+jyCAP1j4ykseXJvHcqgPsPlXEK5MjcWnndgpWi5ncY0fJSk0mMzWFrMMpVJbYe0eeHToy5dmXFaFoA6SUmKosVJWZMRnt8wDOei0uBi1aZ/VleSOi0HQUsWiAM3tUq00qXNw9KMrORK1R4RvkRmlhCJV79uA2ejTDA4fjpHIiLj2uZWIBcN3rUHgM1j4BXl2gy9W1L5lzKzAdL8Hj+tCLTmDy1Dvx3zsH88HGNN7bcJjkrFI+mzGoXS2vrSorJetwil0YUpPJOXoEq9nu0OsR0IHQvgMI7BFBYI9e+AZ1VvahuMTYrDaqys0Yy81YLTZUaoGrhzM6N62yx8QVhCIWDXAmi9taZsKrQyBFOfatNAK6epJ8IoTKpG8B0Gv1DO04lLj0OP45+J8tu7NSa2DKl/DFNfDtDLh3Q+12rOXbskEj0Ec1zyBQpRI8Ni6cfsEePL7Uvrz23Wn9GRdx6ZfXSikpys4kMzWZrNRDZKUmU5hltzJQqdX4d+lG/2tvsItD916Kt1MbcvpkKcZyM/mZFSAlWmc1rp4uOOs1Si/iCkQRiwZQuWpBgLXUhFfHQE7u2wOAf6iB/SonCo7kEGK1ItRqooOj2ZK5haPFRwnzCmvZiV084falMH8sLJoO967HpjJQufs0+r5+qF1bZjse3cOf72eP5KGFu7n3fwncNSKUp67rie4S7RlgNhpZ8dpcMlIOAPakx8AevYgYNYZOPSIICAtH6+TcSCsKjsRitnI08TT7N2WSe7yUwTO8cHHV4GJwUtxgr3AUsWgAoRKo3JzsiXkdAjm4aQNmoxH/GpO+Em0A1UeOoOvZk9FBo3mJl4jPiG+5WAB4d4Xp38D/boLvZlLZ7UOkyYrrsI6N120Cwd56vntgOK+tO8SXv59gy5F83p3Wn8ggx67htlosrHl3HpmHkhkVexddBw7GOzBIGVJqJ5QWVHFwcxbJv2dhLDfjGaBn5LRwtF5lGHxc2jo8hXaAIhbnQe3uZO9Z9LInzBTlZOHXuQtaJ1Xtznm6nj0JcA2gt09v4tLjuDfy3tY5eegImPhv5KqHKD+xF22nTjgFNyOX4zzotGrmTurNuF4B/GPZXm7++HceHRvOQ9Hd0Khb/+ItbTZ+/uQ9TiQlcs2s2fQde12rn0Ph4pFSkpFSxP5NGZzYlw9AaF9fIkcHEdTTC6ESpKSkNNKKwpWCclt3HtQGJ2w1PQuA4hx7Ap5/qDtlXt2oqjEQBIgOjmZ/3n7yq/JbL4ABsZh6z8VS6YGbf6pDxohHhvvy02OjmNC3I++sP8yUT7dxLK/x5MCLQUrJpm++IOW3eEZMn6EIRTugusrC3g3pLJq7gzXvJ5F9tIQB40P468vDueHBvgRHeLcrJ1jForyuRblaraZ///7079+/wYQ+R6GIxXlQuzvVTHDbh3+Ksu2T3P6h7pTpO1KetL+2bExwDBLJ5ozNDbbVXMrN4xFqIy4pj9mtQRyAh17Lv28dwIe3D+B4fgU3vL+Fr7edaLG75hl2rVlO4g+rGXDdRIbePK1V2lRoHgWZ5cQvPMRXT//Ob98dwVmvYdzMXtw57yqGT+6GuzLc5HBaw6LcxcWlNkv8TBLfpUARi/OgMjhhqzCjddLh6un1x4qoUHckKooKrVgK7d6Z3b2609G1I3Hpca12fmupiaqDhbgOCUbVIRy+uwty6/+oWosb+wbyyxOjGNLFh+dXH+TOL3eRW1rfB+di2B/3C1sWfUXPEaOJufM+ZQVNG2C12jiSkMuKtxJZ8tJODm3LIWygH1OfiWLKU1H0GNYRzSVa4NBSFIvytkWZszgPancnkGAtN+PVsRPFOX/0LABKDaFUJSVhGDMGIQTRwdGsPLKSKksVLpqW36FV7MwGm8RtRAhol8L8GFg8He7dCG6OMc0LcNex4K7BfLPjFK/+kMK1727m5cl9mNivvtFZY6Ql7GD9Zx8S0ncA1z30uDKR3QYc3X2azUsPU1liwt1Xx/C/dCPiqkB0bs1bVbfl28Pkp7fuMKVvsBtXT+vepLKKRbndotxoNBIVFYVGo+Hpp59m8uTJTfr8WooiFufhTGKerdQ+b3Fst/3uxM3LGRc3LaUedgdaQ42dcXRwNIsPLWZH9g6ig6NbdG5ptVG+Mwfn7l5ofF2ATnDbYvseGEtj4Y41diNCByCEYMawEEaG+fLE0iQeWbyH9cm5vHRTHzz0TbvIZKQc4If3Xiegazcm/f1fqDUtW/KrcHFIKUlan87WFWn4hxiIie1J5z4+l70Nh2JRbr9cnzp1isDAQI4dO8aYMWOIjIykW7duTTp/S1DE4jycEQtrmT3XorKkmOrKSpz1egK6uJNfHE5V0h/jhYMDBuOqdSU+Pb7FYlGVXICt1ITb5LOW4nYaBDd/Ct/NhO8fhZs/AwcO63TxdWXZA8P5JP4o/95whJ3HC3lzal+uDr9wrybv5HFWvfESBj9/bn56Lk46ZRz8UmKz2tjy7REObMqk20B/xs3s1Wr5EU3tATgKxaLco/Y1gK5duxIdHc2ePXsuiVgoYwPn4Yw/lLXUnsUN1BmKKtd4UZZ8BFnzQ9SqtYzsNJL49Hhs0tbs80qzldKfT6Lx0aE71zCw980Q8yzsWwpb3m72OZqKRq3ikbHhrHxoBG46DTO+2MkLqw9QZWrYHbfkdA7L572AVqdjyr9eRO/etv77VxrmaivrPt3PgU2ZDLimM+Pv7f2nSqRTLMqhqKiI6urq2jK///47ERERF/05NAdFLM6D2s2+F7fldCWeHf/ItQBqkvMEpVo/jKmptXWig6MpMBZwIP9As89buiEdS34VnpPDGl6+OOofEDkVNr4EB1c1+zwXwxlDwrtHdGHBtpNM+GALe8+xPa8sKWb5q3OwmKq55Zn/U4z+LjEVJdWsfHs3Jw8UMOrW7lx1y3l+P5cxikW53TU2KiqKfv36ERMTw9NPP33JxAIppcMewHVAKpAGPH2BclOwb9cbVfM8FKgCkmoenzZ2rkGDBsnWJv/rgzLz/7bK6rIK+da0CXLrskVSSikry6rlh/dvkOvGzZYFX39TW77YWCz7Legn/53472adrzqzTKY/s1kWfJt64YKmKinnj5PypQApMxKbda7m8vuRPDn81V9l12d+kO/8kipNFqusrqyQXz/9mHzvr3+RGSkHL2k8ClIWZJbLBc/8Lj99JE4e35vXqm0nJye3ansKbUtD3yeQIJtwPXdYz0IIoQY+Aq4HIoDbhBD1JFAIYQAeBc5dEnBUStm/5vGAo+K8EK7DOmKrtGA+XIabjy/FNbkWLm5OuPvoKPftXic5z8PZg4EBA5u1hFZaJUXLj6DSa/Gc0OXChbU6uHUhuPrCktuhNOuiz9dcrgrzZd3jo5jUL5B/bzjClI82s/jVFzl94hgTn3iaTj0v0V2OAgAZqUUsfzMRq8XGzX8fSGhfZR9yBcfgyGGoIUCalPKYlNIELAFuaqDcS8AbQMsW9TsA526eaHxdqNieXcd9FuzzFqUeXeqIBdgT9NKK00gvSz+3uQtS/nsm5sxyPCd1Q9WUVUdu/nbTweoyu+mgqeKiztcSPFy0vDu9Px/d1p/O+1eRf/gA+rG3E9q/0f1TFFqR1B05fP9+Eq6eztzy1KBa7zIFBUfgSLHoBJx9xcyoOVaLEGIAECylXNtA/S5CiD1CiE1CiKsbeN3hCCFwHdoR06kyOnh1pSgnu/Y1/xB3qtBTkVuMJS+v9nh0UDQAm9I3Nfk8loIqStefRNfLG5fIi7gzDOgNU/4LuQdg5f1ga/7E+sUipcQ5YQ2hpWlk9xjHa2kG7vjvTrJLqi5ZDFcqUkp2/XCcX79MpmOYB7f8Y6CSfa3gcBwpFg3NrtUuMhZCqIB3gb83UC4b6CylHAD8DVgkhKh32ySEmCWESBBCJOSddcFuTVwH+YNGRYClM8ayUozl9qSkgC52Y79SQwiVZ/Uugt2DCfMMIz49vkntSykpWpkGKmGf1L7Y5bDdx9u3Yk353j7pfYnYvnwJe3/5gaiJf+HN/3uMV27uQ+LJIsa/u5nVSZmXLI4rDavVRtzXh9j5/XF6DO3AxEf649zE/BcFhZbgSLHIAILPeh4EnD24bgD6APFCiBPAMGCNECJKSlktpSwAkFImAkeBeou8pZSfSymjpJRRfn6OyWpW6bXo+/mhz3dBI5woyrFfCH2DDQgBpZ5d6w1FRQdHk5CbQEl1SaPtVyaepjqtGI/rQ9F4NHMvh2EPwaCZ8Ns7kLSoeW1cBHvX/8jW7xYSMWoMo26fiRCC2KEhrHvsasL83XhsSRKzF+2muNLk8FiuJExVFn74cC8pW7OJuiGUsTN7KTvVKVwyHPlL2wWECyG6CCGcgFuB2iw2KWWJlNJXShkqpQwFtgOTpJQJQgi/mglyhBBdgXDgmANjvSBuwzoirBDq1rt2kttJp8GroysVHSOoStpbp3x0cDRWaeX3zN8v2K61zETxD8dwCnXHdUgL9qsQAm54C7qMgjWPwsltzW+rEYqyM9n45Wd0GRDFtfc/WsfGI9TXlW/vH84/xvfgpwM5XPvuZuJTT1+gNYWmUl5kZMVbiWSmFhMzoydDJ3VVvLYULikXFAshhEoI0SyrUCmlBZgN/AykAN9KKQ8KIV4UQjTmqzsK2CeE2AssAx6QUhY2J47WQBvkhqajnm7uA2rdZ6Fmktu5I1UHDiBNf9xFR/pG4q3zbnQoqvTXk0iTFa+/hLd8TbxaC1MXgGdnuyVI4fGWtXcefl/6DSqNhvEPPIZaU98AQKNW8XBMGKseHoGHi5aZX+7iuVX7qTRZGmhNoSnkpZex7LUESguM3Di7HxEjLt6r63JGsSj/w6I8Li6u1p68f//+6HS6Wt+rmTNn0qVLl9rXks4Z8WgpFxQLKaUN+wW/WUgpf5RSdpdSdpNSvlJzbI6Usp6vrpQyWkqZUPP/5VLK3lLKflLKgVLK75sbQ2sghMAwvBOeTn6YTpbVHg8IMVBt01IlXOsk56mEiujgaH7L/A2z1dxgm9ImqTpQgEsfX7T++tYJVO8Nt38LNqt9hZSx8WGwiyH3+FFSt21h0A2TcfX0umDZPp08+P6Rkdw7sgsLd5xiwvu/sedUUavGcyVw6mABK9/ajVAJbvnHIIIjlD3JL2daalEeExNTmyG+ceNG9Ho91157bW29N998s/b1/v37t2rsTRmGWi+EeFIIESyE8D7zaNUoLgNc+vthwYyh4I8d68440JbV7Jx3NtFB0ZSZy0g8ndhge6b0MmwVZlxa+4/fNwymfw2FR+225tbWu6P/bcn/0LkZGDzpL00qr9Oqee7GCBbdOwyTxcaUT7fxzi+pmK2XbtXW5Uzyb1ms/Wgf7n4u3PLPKHw6tc4d9uWKYlFel2XLlnH99dej17fSzWYjNMVI8O6afx8+65gEurZ+OO0XlZOaUo9SfIs7YSkzoTE44dPJDZVGUN4hwj7JfccdteWHBQ7DWe1MfHo8wzoOq9eeMaUAVAJddwfobpdRMOFt+P4x+PlfcMMbLW4y/eA+TiQlMuqvd+Osd72ousO7+bDu8av5vzXJvL8xjZ8P5vLcjb0aNSW8UpFSsmP1MRJ/Oknn3t6Mv68PTrq29/yM++pzTp9s3alD/5CuxMyc1aSyikW53aL8DEuWLOFvf/sb8Ieb7bPPPsuLL77I2LFjee211+oYLLaURnsWUsouDTyuKKE4g62bGrVQU7LVbmCm1qjwDTJQ5te9zvJZABeNC8M7DifuVFyDdyNVyYU4d3FH5eKgi8CgmTB8Nuz8DHbOb1FTUkq2LF6Am7cP/cdPaFYb7jotb0/rx+czBlFptjDji53c/dUu0k637v4IlztWs431/00m8aeTRIwM5IaH+rYLoWgPyBqL8r59+zJu3LgGLcpVKlWTLMp9fX2bbFE+dOhQIiMj2bhxIwcPHqwX18UYCTZ0LTifRfmmTZsYMGAAmzZtqmNRDpCdnc3+/fsZN2wY1SdOYE5PZ968eRw6dIhdu3ZRWFjI66+/flGfb2M0+isUQmiBB7FPOgPEA59JKRsejP8T4x7WgdO/H8Z/lwp5jd2oLSDEQMopb8xZOZhzc9EGBNSWjw6OJj4jnsNFh+nh3aP2uKWgCsvpSlyHOFhzr3kRCtJg3VPg3RXCxjarmaOJO8k+kso1s2ajdWrZncq1vTswuocfX/1+gg83pjH+vc38dWhnHh/XHS9Xpxa1fbljrDCz7tP9ZB0pZtjkrgwcH9KuVjw1tQfgKBSLcg+7T1NVFYvmz2dSTAwyJwe0WlReXnT096/9LO66664mTeZfDE2Zs/gEGAR8XPMYVHPsisOzQyBpZXug3IbxiH2y1j/UHYtNRaU+gKo9dXsXo4Pt7pXnroqqSrEv7HLp5eCpH5UabvkP+PW074ORl9polXOx2az8tngBXh070Sf6mlYJy1mj5v7R3Yj/RzS3DQnm6+0nGf1mHP/ZcgyT5cqczyjNr2LFm4nkHC/hmrsjGHRdaLsSivbAlWxRftedd2LJz8eUlkb1sWMsXb6c6bdMwSk0FOfu3dH6+5OdbXeYkFKyatUq+vTpc9Gfz4VoilgMllLeKaXcWPO4C2i5V+9liId/AFlVaVg1Vip35QBnTXJ7dauXnOfr4ktf3771xMKYUoDGX4/mUlg0OBvg9iWgcYZF06Ci4KKqp2yJpyDjFCOmz0Clbt29EXzcnHl5ciQ/PT6K/p29ePmHFK59dxM/H8xp8UTi5UTuiVKWvZ5AZamJmx7rT/chHdo6pHbJFWlRHhZG9tGj/P2WKZhzckClItNiITM/n3FTp6B2c6u9qYiNjSUyMpLIyEjy8/N57rnnWhzv2YjG/iiFELuBqVLKozXPuwLLpJQDWzWSFhIVFSUTEhIcfp4vHr2Pgb7X4GfqRODzQxFaNfP/tpnA0v30qfyd0CWL65Sfv28+7+95nw1TN+Cv98dWZSHrpe0Yru6Ex/WNuMu2Jum74KsJ9h337lhlF49GsJjNfPnE/bgY3Il95R2H76Mdn3qaV35I4cjpcoZ19ea5CRH06fTn3kDpWFIe6784iIu7ExMf6YdXh4tbPOBoUlJS6NWrV1uHcUVhMxqxFhVhLS5GWq0IjQa1pydqT09UupZtp9zQ9ymESJRSNuoC2pS//n8AcUKIeCHEJmAjDfs5XRF4dgwkveIQWGwYkwsRKoF/ZwOlhhCMBw9iM9W1uDizxeqmDLuxoPFwIdgkugifc5t2LMGD4aaP4NRWWPsENOHOfd+vP1Gad5qRt97hcKEAiO7hz7rHrualm3pzOLeciR/+xj++28vp0nZnSNwq7ItLZ91n+/EOdGXKU1HtTigULh3SYsFSUEB1WhrVaWlYCgtRubriFBKCc48eaDt0aLFQtJRGM7ixb0IUjn3PiUeBHlLKi9+w4U+CV4dATuTsR+3hROVeu3mhf6g7JWY9VovEeM5qiTDPMDq5daodiqpKKUTlqsEp2HBu046n71QY/RQkLYTf/33BoqaqSravWEJw776E9B1wiQK0Z4DPGB5K3JPR3Hd1V1YlZRL9Vjzvbzhy3u1cLzdsNslv3x5hy9IjdOnry+S/DUTvfmVP7l+JSCmxlpVhOnUKY2oq5po5B23Hjuh69MCpc2fUBkO7mbu64GooKaVNCPG2lHI4sO8SxdSu8ewQiNlYhaaHAWNiIbZKM/4h7thsgnK3QKqS9qIf8MfFVQhBTHAM36Z+S4WxAuOhIlx6+7Tdlpejn4b8w/DrXLs1SJ+GE+wSf1xNVWkJV992Z5v8WD1ctPzrhl7EDu3MvB8P8c76wyzeeYqnruvJpH6BqC7TLUPNJiu//jeZY0l59I0JYsTU8Mv2vSg0D1t19R/DTBYLQq1G4+2N2surzXsPF6IpYwu/CCFuEe1F3toYr5r9uKv9TGCVVB0swD/U3kuoCOpXb5Ib7ENRJpuJvXt2II0Wx6+CuhAqFUz+BIKHwopZkLahXpHK0hISvl9B2ODhdAzv0UAjl44QH1c+nTGIpbOG4ePmxONLk7j5k60knmwzq7BmU1lqYvW7ezi2N4+RU8O5enp3RSiuEKTViqWwkOqjR6k+cgRLfgEqFxecOne2DzN17NiuhQKaJhZ/A74DqoUQpUKIMiFEqYPjard4dbCLRZH5NGpvHZX78jB463AxaKno1KdBsRgYMBCD1kDR/kxQC5zDL+yr5HC0LvZd9vx6wNK/2ie/z2Ln6mWYjdWMvHVGGwVYn6FdfVjz8EjemtqPnJIqbvlkGw8v2k16YWVbh9YkinMrWf5GAvkZ5Vw3qw/9xgY3XknhskZKibW8HFN6OsZDhzBnZYHNhrZDB3Q9uuMUEoLa3f2SzAe2Bo3NWQigt5RSJaV0klK6SykNUsordv9Gdz9/VGoNxTlZ6Pv5UX20GFuFGf9Qd4q1AVhyc2vHHs+gVWkZ2WkkAZluOHfzQOXcuktQm4WLJ/x1BbgFwMIpcDoFgNL8PJJ+XkvEqDH4BHVu4yDrolIJpgwKIu7JaB4bG86GlFzGvrOJ1386RJmx/eaIZh0pZtkbCZiMViY/MYBuA/zbOiQFB2IzmTDn5lJ9+DCmEyewlZej8fLCuWs3nMLC0Pj6IrSX34ZVjbnOSmDlJYrlskClVuMR0IGiGrHABlUH8vEPcae0SotF7VzPVBDgOsMYOlT7UhDUjrYdNQTULKPVwdc3Q9FJti1bDFJy1dTb2zq686J30vDENd2JezKaG/t25JP4o8S8Fc+iHaew2tpPfkZxbiW/fHGQlW/vRueqZcpTg+jQ9c+9FNgRXA4W5dJqxVJURPWxY1QfPowlLw/h7IxTcLB9mCkwEJXeBSFEiyzKAZ566in69OlDnz59WLp06UXF2RKa0v/ZLoS4IpPwzodXh44UZ2ehCdCj8Xehcm8eATXJeeXe3er5RAFEFocBEO+ys95rbYpXKMxYAeZKCj6bwsH49fS7dgLufu3/7rejhwvvTOvPmtkj6OLryr9W7mfC+1vYcsQxW+w2lbJCI3HfHGLR/+3g+N48Bl0XwtSno/DwuzTuoAqXBikltspKTJmZVKemYs7MRFosaAICcO7RA+fQUNQeHnWGmVpqUf7DDz+we/dukpKS2LFjB2+++SalpZdmVqApYhGDXTCOCiH2CSH2CyGu6JVRXh0DKcq1DzXp+/phOlGKj7c9ya0qbEi9nfMA5OEKst0KWVew/pLG2iQCekPsMrYec0KjsjH0uvFtHdFF0TfIk2/vH87HsQOpMLWdSWFVmYnfvjvCwjnbObQ9m8jRnZjx8lUMm9xN2Se7FWgvFuXSYsGSn2/PiTh2DGtJCSp3D5y6dME5PBytnx+q8wwztdSiPDk5mdGjR6PRaHB1daVfv3789NNPrfMBN0JT7Cyvd3gUlxmeHTphqa6mvKgAl35+lP56CnmsBIOPjrLqMIwJC7EZjbWrG6wVZkwnS6nuq+ZYyTFOlp4kxD2kjd/F/7N33uFRVVsffs+k9x7SKwk1hBoICFKlSUcEIiJF6bbrhesVxfJZLjYsFBGwIUWqdAQBAZFOILSQQsuhOKsAACAASURBVHpCkkmv0/b3xwREIJCETDIJ8z7PPEw5e581YWbW2Xut9Vv/JKPcnmv5DoS7JGO5cxo8swlMG86VsCRJDApxp3dzV344VrciheWlKiL3JXH+92RUCjXNw93pONgP27qQc6lD8rbHoUgrrtU5TT2ssB8SWKVj61OiXAjBhHHj2PLddwzs3BmEQGZhibGHB+t27uSTTz+9y15dSJSHhobyzjvv8Oqrr1JSUsLBgwdp2bJl1f7YD8kDnYUQIlGSpMeAICHEd5IkuQCPdBeWmxlReelpeLdqg4mHFaXns3D1teXG1VJQKim7dAnLDh0AKIvOAQF+HVrCX1phwYmtJtbnW7iLI+t+xMLGlo6TXoft07XCg2N/1rZrbUCYm2hFCkd18OLzfdf46XgiW86l8mKfIJ4N98PUuPYyT5QKNVEHUzi7N5HyEhVNO7gSNsTfUImtI25KlB8+fBiZTHZPiXKgShLlFhYWVZIo//233/h44UJKiorIyc+nmYcnQwYOwsjhb+mNZyZM4JkJVcscrI5E+ezZs/n+++/p0aPHLYnyJ554glOnTtG1a1dcXFwIDw//h3S5LqmKRPkCoCPQDPgOMAFWA910a5r+crPWIjdD6yws2rhQsCcB93AP4s5KKEysKY2MxLJDB9SFCoqOpSGzNcW9qT/BV4P1zlkkRkWSFBVJz2efx7TDMNAUw85X4ddZMHyZtjajgeFsbcb7I0KY2NWP/9t5hf/beYXVxxN5b3jrh266pFZpuHw0jdO7EigpUODb2onOQwNw8amHqvw6pKorAF1RZxLlQqAuLib/ylVmz5rF0fXr8Q0K4v+WLkVlZoaJ+z+FHutSohy0DY7eeOMNAMaPH09QUNC9/ly1TlV+BUYAQ4FiACFEGtC4vxUPwMbJGSMTE3LT0wBt3ALASamVoygJ6EBpZCSll+XcWHQGZUYJ9oP8kWQSPb17ci7zHHllefVm/+0IITi69gdsnF0I7Vex49hpCvSeDxfWw97Xq6Qjpa8EN7Hhx8lhfDepE5IkMWHlSV5dH4m8qLzac2k0gqvH0/l5wXEOr7uGnasFI15rz5OzQxu9o9AHdC1RriwsJPHsOQ4eOIBaLqe0uAhkMjzCwlA4ObF5x457rgLqQqL85raYWq1GLtcqR1+4cIELFy78owe3LqnK+kUhhBCSJAkASZIe+TW2JJNh38T9lrMwdjTH1McGTUohSFDq1x5lfgHyHy9j4m6Fy7jmmLhq9/97efdi+YXlHEk9wpDAIfc7TZ0Qe/IvMuJi6D/jZYxNb9vX7/4alOTA8SVg6QSPz60/I2uBXs1cCQ9wYvHBWJYeiuNgdCbzB7dkZHvPB8qZCCGIj8zixK/x5GaU4OJjQ8/xzfBu6ag3uj2PAhEREQwZMoSOHTvStm3bh5IoT0pK4s0338Td1ZUh3buzb/MW2rRtS1M/P7p36YKxqytNOnTg+WnTCG3fHj8/v1qXKFer1UyePPkfEuUdO3Zk6NChHDp0iNdffx1JkujRoweLFy8GQKlU0r17dwBsbW1ZvXp1nW1DVUWi/DW0QoL9gA/R9uReI4T4SvfmVZ26kii/ydaP/4+8jDSe+3QJAIVHU8nfEc9VUyN8FQrMhYRVewccRrVGum2fXCM09N3Ql3au7fi0591BsbpEo1bzw2uzkGQynv34K2SyO4oFNRrtVtT5NTDoEwh7vn4MrWWiMwp5ffMFzibl0a2pE+8PD8HP+e5rICEEyVdyOL41nqykQhzcLOk8NICAdi6PjJNojBLlQgg0RUWoc/NQFxZUBKstMHJw0Ka61nLfFn3iYSTKqxLg/kSSpH5AAdq4xVtCCD3M/6xbHNw9SDh/BqHRIMlkWIY4k78znuYKNWVCRsmfn2H72FQk4zb/GCeTZDzu/Ti7r+9GoVZgalR/aqOXDv9OTloKQ//137sdBWhjFUO/grI82PVvsHCAkNF1b2gt08zNho3Tu/LzySQW7r5K/0WHebFPEC/0CMDESOvY02PzOP5rPGkxedg4mtNnYguCO7sZtJwaMBqF4m8BP6WywQj46QtVWr9UOIdH3kHcjoObB2qlkkJ5NrYurhjZmWEV5kZOciEHruTRSVVIaWQkdkOevGtsL+9ebLy2kdMZp+nq2bUerAeVQsFfG9bi1jSYpp3CKz/QyBhGr4LVo2DLNDC3g6Daaa9an8hkEhO6+PJEyya8ve0SH++NZvv5NN7oFkj+yWwSo+RY2JrSY2wwLbt5YGTS8IL8BkBoNKgLClDn5qIp1qb9yqyttf0hbGwajC6TPlA3m12NEPubgoLpabeqnR1GBKFMLEB5+TRlLbrdU1QQIMwtDAtjCw4mH6w3Z3F+3y4K5VkMmPnKg7dUTCxg3Fr4/klYP0ErEeLTpW4M1TFNbM1Z+kwHdhxN5I/NsVy4Go3GRKLjk3507OeLiT7oeBmoNprSUu0qIj9f223OxARjV1dttzlTQ++QmqBTtypJ0gBJkqIlSYqVJOk/9zlutCRJQpKkjrc993rFuGhJkvSupNjB4+/02dtx8rRGZixR7NaSsqtX0ZTcrYpqbmxOuHs4h1IO1Uuv6fKSYo5v+QXfNu3wad3mwQNAu6J4ZjPYemh7eWdc1K2RdURhThkHfrpC0pp4mqqMKG5qxWLLEl65cJ2DsfUrG2Kg6tyU3lBmZmkrq+PiUOXmIrO2xtTPD7PgYExcXQ2O4iGo8spCkiQToDWQKoTIrMLxRsBitIHxFOCUJEnbhBCX7zjOBm0HvhO3PdcSGAu0AjyA/ZIkBQsh9KZVmrWDE8ZmZuRlpP7jeSNjGc6e1uSVCjzVakovXsQqLOyu8T29e3Ig+QDRudE0d6x+VsfDcGDVMsqLi+g+/rnqDbR20a4qVvaH1SNh8h5wDNCJjbqmpEDBmT0JXDys/f9r09OL9gN8sbQ1pV9SLq9vjuKFn84woJUbbw9thZudYU9bnxBCIMrL0RQVoSkuRlNcjKhINZWZW2Di7q4NVtdRptCjQKUrC0mSlkmS1Krivh1wHvgROCdJ0rgqzB0GxAoh4oUQCmAdMOwex70HLARub7Q8DFgnhCgXQlwHYivm0xskScLhtvTZ22niZ0tOvgyBdE+dKIAeXj2QkDiYXLcdaq8eO8zlIwcJHzWOJv41KLKy94EJW0Ct0CrVFmbUvpE6pLxEyfFf4/jpzb+IOpRK885uPPNuOI+NCbrV2rSdjwPb5zzGvAHNORidSb/P/uCnvxLQ6JGi7aOIRqFAlZODIjmZ8uhoymNjUWZkoCkvR2Znh6m3N+bNm2PWNBBjJyeDo6hl7rcN1V0IcbOh9CTgmhAiBOgAVCXp3hNIvu1xSsVzt5AkqR3gLYTYUd2x+oC9uwe5Gel3Pe/qZ4uyXIOyadtK4xZOFk6EuoTyW8JvdbYVVZCdxf4Vi3EPakbnEWNqPpFrc4jYBEVZWodRmlt7RuoItUrDmT0J/DT/L87sTsQ/xInxCzrTa0ILbBzvXjWYGMmY0TOQ317pQai3PW/+eonRy44RnVFYD9Y/mgiVCnV+PtZWVpRdu0b5tWso09LQFBcjs7LCxNMTs+BgzIODMfX0fOBKQpcS5dVh8uTJuLq60rp1a52dQxfcz1kobrvfD9gKIISo6qXkvaKmt34VJUmSAZ8D/6ru2NvmeEGSpNOSJJ3Oyqr7/WUHNw/yb2SgUf9zd8zVVytXXhLchdLIyEqdwajgUcTmxXIg+YDObRUaDXuWfI5GpWbQ7NeQPWwuuVcHrXaUPBbWPA2K2hWYq02EEBxcfZXjW+NxD7RjzBudeGJqa+ybPFgo0dfJip+mhPHZmFAS5CUM/vIIn+yNpkypNzuijQahVqMuKECZnk55TCxlV6+iSE7W1kGYmWHi5o5Z06aYNWuGqbc3xg4ODTIG8dxzz9WZUmxtcj9nkSdJ0pMVV//dgD0AkiQZA1WR00wBbu8d6QXcvmdjgzYGckiSpASgC7CtIsj9oLEACCGWCyE6CiE6urg8nN5PTbB390CjVlGQ/U9HZe9miYmZEYX2gahzclAmJd1z/JMBT+Jn68fX575GIzQ6tfX0zq0kX7pAr0kvYO/mXjuTBvaCUSsg5RT88iyoFA8eUw+c3ZtI9PEMwob4M3hWKC7e1ZPmkCSJke292P/q4wxr68nXB2MZ+MURjsVl68jiRwOh0aAuKtZ2lYuLp+zKVRRJSahycsDYSNsXIiAAZDJMfX0pMzej3+DBdOjQoV4lyh+WHj164Ojo+NDz1DX329SbBnwJuAEv37ai6APsrMLcp4AgSZL8gVS0Aetb7deEEPmA883HkiQdAl4TQpyWJKkUWCNJ0mdoA9xBgJ51DbpdfTYV+yZ/i4vJZBKuvjbkFcjwBkojIzH1vVuS3FhmzMy2M5l7eC57E/Yy0F83avCZCfEcXfsjQWFdad2zlmskWg6DJxfB9hdh63QY+S3cq8Cvnog/l8XxrfEEdXSl4yC/h5rL0cqUT8eEMrK9J//dEsX4b08wuoMXbwxqoVMJdH1h9+7dZGQ8ZIxKo0Go1aBWIzQaXO3s6Nu2LTILC4xdnJFZWSGztLxn/UN9SpQDTJgwgR07djBkyD9leqojJNiQqdRZCCGuAQPu8fxeYO+DJhZCqCRJml1xrBGwSghxSZKkd4HTQoht9xl7SZKkX4DLgAqYpU+ZUDdxcNeGUXLS0/Br2+Efr7n62nL+YD5Y21ISGYndsHvF9qG/X3+WX1jOksgl9PPth7GsdoNySkU5u776BAtbW/o+P0s3MhUdJmrjFvsXaKu8B30CeiCHkZVUyL7vLuHqZ0vvZ1vU2nvv1tSZvS/34MvfY1h+OJ4DVzN568mWDGvr8cjIgFQZjUabpaRWa51ExZW5JJMhGRtjZGODeYsWVZLYqA+J8oMHD7Jw4UJKSkrIycmhVatWdzmLiIgIIiIiHvYvpfdU+sskSdKX9xsohHjxQZMLIXYBu+547q1Kju15x+P3gfcfdI76xNLOHhNzC7IS4+96zdXPFo1KoAztXmlGFGjlP2a3m83LB19mR/wOhjcdXqs2HlnzPfKUJEa9/g6Wtjrs//zYy1Aih2NfgoUj9H5Dd+eqAsX55exaegFzKxMGzQjB2LR2VzvmJkbMHdCcoW09+M+mKF5eH8mmsym8PzwEH6eG0zSqOgwcWLWVr0apRJWZiaawEFEhDy6ZmCCztkZmZYWRlRVSJZ3k7kedSZRXUFZWxsyZMzl9+jTe3t68/fbbt853p12PwsrifjGL6cBjaGMFp4Ezd9weeSRJIrhzNy4e3Mflw/8MUrv6affFi73bUh4dfUtq4F709u5NS6eWLDu/DKVaWWv2JUSe4dzu7bQbOOSulY9O6PcutJsAhxfC8aW6P18lqBRqdi2NoqxYyaCZbbCyM3vwoBrS3M2WTTO68u6wVpxLyuOJRX+w7I84lGrdxqD0ESEEKrkcRUwM6rw8bcaSh4c2Y6lZM0w9PTG2t6+RowDdS5Sr1WrS09M5eFCbzn7TMTg7O1NUVFTpD391JMp1QW6xguzC6kvuV5f7OQt3YDnQH5iAtunRNiHED0KIH3RuWQOh7/Oz8Gkdyp6li4g783d7RBtHcyxsTMi39ASNhtKoqErnkCSJOe3mkFqUypbYLbViV0lBPnuWLsLJy6f6xXc1RZK08YsWQ2DPf+D8uro5720IITjw4xUyEwvoN7lVtYPZNcFIJvFsuB/7Xu1B9yAXPtp9laFf/8n5ZP3oWVIXaMrKUMRfR5mejmRhgVnTptqMJUfHWstYioiI4PTp03Ts2JGff/75oSTKu3TpwptvvomHhwcjRowgKCiIkJAQZsyYweOPPw6Avb09zz//PCEhIQwfPrxWJMoBxo0bR3h4ONHR0Xh5ebFy5coazSOEIKOgjOTcEgrKlDpPwX+gRDmAJEmewDjgVWCeEOInnVpVA+paovx2FKUlbHjvDbKTEhn133fxaqnNn97x9XkKsoppt34KLi+/hPP06ZXOIYRg4p6JpBamsnPkTsyNa14xLIRg26cfcP3cKca//xmufnVcZa0sgzVPQcKf2vTaZnXXxv3Uzuuc3H6d8BGBtO9fP33O91zMYMG2i2QVljOxqx//eqIZ1mYNs0DsQRLlQqNBlZmFSp6NJJNhfLNy2hC70SkaIUjJLSWvRIGjpSkeDhbIqvA3fxiJ8gdqQ0mS1B54GXgG2I1hC+ouTC0sGfGft7F1cWXLwnfJTNDGMFz9bMnLLEMW2IzSc/cuzrvJzdVFZmkmG65teCh7Lh7aR+ypv+g29tm6dxQAJuYwdg24h2p7eSf8WSenjTl9g5Pbr9OsixvtnvCpk3PeiwGt3dj36uNEdPbl+2MJPPHZH2w4nUypQu9yNB4KdVER5bGxqLKzMLKzwywoSLvNZHAUOkWl1nA9q5i8EgVutuZ4VtFRPCz3k/t4R5KkM2hXE38AHYUQU+7UdjKgxdLWjlFvvIeZpRWbPniL3PRUXH1tEALKW3W7b3HeTTq5daKze2dWRK2gRHm3AGFVyMtI5+B3y/Fu1YaOg2s3WF4tzGwgYqNWHmTtWEivPMhfG9xIKOD3H67gHmhHr4jm9f6DZWtuwnvDW7NxeldsLUz498YLhH2wnze3XuRyWkG92vawCJUKRXIKioosI1M/P0y9vAzyGnVAuVJNXFYxJUo1Po6WuNqa19ln/X4rizcBOyAUbYe8s5IkXZAkKUqSpAt1Yl0Dw9bZhdHz30NoNGx8/y2s7bVZGEWuzVHn56O4nvDAOWa3nU1OWQ5rrq6p9vk1ajW7vv4EmbGRVnq8vrX6rZy0OlJmttp+GPI4nZymKLeMXUsvYGlrysDpIXrVe6KDrwO7X+rO+he60LdFE9afTmbQl0cY9vVR1p5Moqhc9eBJ6pmbFzlCCFS5uZTHxKAuyMfYxQWzpk0xsrauZwsfDYrLVcRmFaHWCAKcrbC3rF4s6GFjGvf7VvmjLcB7suI2pOJ2876Be+Do4cWo/75LaWEBO794Dyt7QZ5MW3tYmU7U7bR1bUt3z+58d/E7ChXV0yE6vnk96THR9J06C1vnuq9ovyd2XlqlWiHgx+GQn/rgMdVAWa5m55ILKMvVDJ7ZBgsb/SuOkySJzgFOfP50W07+tw8LhrSkTKnh9c1RdH5/P69vvsCFlLx6kat/EObm5sjlctRlZSiuX0eZmopkZoZZYCAmTZrU/wXJI0JeiYL47GKMZTICXa2wqmYMTAiBXC7H/CE6AlYpwP2PAVrp8bFCiJ9rfFYdUJ8B7nuRdPECmz98C1MrD6ydxtB5/1xsBw7E/d13Hjj2kvwSY3eMZWboTGa0nVGl86Vdu8q6BXNp3u1xBs2+l9xWPZMWqW2eZOcJk3aD5cPLHQiNYM+3F7kemcWgmW3wC3F+8CA9QQjB2aQ81p1MYvuFNMqUGlq62zKusw/D2npga16z9NLaprykhITjJyjXqEEmw8jWFpmlpV4UXT4qFJQpKShVYWYsw8nKtMatfc3NzfHy8sLkjtTlqga4K3UWkiTZArPQqr1uQ9tWdTbwGhAphLh3SXI9oW/OAiDm5DG2ffYhMiMfBpmDSVYKAdt+rdLYVw6+wvH04+weuRt7c/v7HqsoLeGneS+h0ah5duFXmFla1Yb5tc/1I9rtKOcgGL9eu+p4CI7/GseZ3Yl0G92Utn3rL6D9sBSUKfk1Mo21J5K4nF6AhYkRg9u4My7Mh/Y+9RcwLj55kowFb6O4fh3bJ5+kyX/mYezccBxyQ0eh0q4+N51NYWQ7Tz4a1QZT49pfydVGNtRPQDMgCpgK/AaMBobpm6PQV4LCuhI2bAoaVSKnjNWUxcSgLiqq0tiZbWdSrCzm+0vfP/DYgz+sIC8zg4GzXtVfRwHg313bnjUvCb7tA6lnazxV9IkMzuxOpGU3d0L7eD94gB5ja27ChC6+7HzxMbbN7sbwdp7sjkpn1NJj9F90mFVHr5NXUncijarcXNL++wZJz05EKJV4f/stnp98bHAUdUh+iZJnV51g09kUXukbzKdjQu/rKMpUd1eW1zb3W1lEVfSvuLn1lA34CCH0UtBfH1cWAIoyFUunf4qq9Ag+2fkMeOdDbB57rEpj5x2ex8Hkg+wauQtni3t/UWNOHmPbpx8QNvwpuo+bWJum647MK9rWrEVZMPIbrRhhNciIz2fLZ2dxD7BjyIttMdLB1VZ9U1yuYvv5NNaeSuZ8ch6mxjIGtXZjbJgPnf0ddbLaEEJQsH07Nz76H+r8fJwmT8J55kxkFlURmTZQWyTJS3ju+5Ok5JTyv9EhjGhX+Qo8MjOSryO/xtzInK/7fF2j89XGyuKW7kSFiN91fXUU+oypuTEu/j1x8HyMJGc7jv9a9RqKGaEzUKgVrIy6d4VnUY6c35Z/jat/IF2fGn/PY/QS1xYw9QC4hWilzY98ektg7kEUyEvZtfQC1g7mDHghpFE6CgArM2PGhvnw66xu7HqxO2M7efP71UzGLj9On8/+YPnhOORFtSfxoEhMJHnKFNLmzsPE2wv/zZtw/de/DI6ijjmTmMPwJX+SU6zgpylhlTqKi9kXmb5/OhN2TyAmN4Ywt7D6q+CWJEkN3BQ0ktD2sCipuC+EELY6taya6OvKAuD37y+TcDEbu+sLSTSGXhOfp/2gql1Nv/XnW+yM38nOkTtxs/pbBl1oNGz6cAGpVy/zzEeLcPJsgFsxyjL4dRZc3AhtI7RSIcaVZzMpylRs/vgMhTnljJ7XAQc3Pd5y0wGlCjU7o9JZdzKJ04m5mBhJPNHKjXGdfOga6FSjwKdQKJCv+o7spUuRTExwefUVHJ5+ukoqsAZql+3n0/jXhvN42Jmz6rlOBLjcnZJ8RX6FJZFLOJRyCHszeya1nsTYZmOxNKm5eGVVVxb3kyg3fFpqCVc/W64ez6BHcBfKo/7g4A/fYm5jS8vuvR44dlroNHbEbWfFH18yxnEQWYnXyUpKIDMhnsLsLPpMmdkwHQVoK71HrdAGvA99CLkJ8PTqe2ZKaTSCfSsvkZNewpDZoY+cowCwMDVidAcvRnfw4tqNQtadTGbzuRR2XkjHx9GSpzt581RHL1xtqpYeWXL2HBkLFlAeE4PNE0/Q5I03MGniquN3YeBOhBAsORTHx3uj6ejrwPJnO+J4R3+Ua7nXWBq5lP1J+7ExtWFOuzlEtIjAyqTuvgfVTp3VV/R5ZXEjoYCNH52me5tiZF/N49Lw/qQmxDH8328S0P6f4mRlxUVkJyaQlXT9lmNIT4hFUmlVTCVJhoOHJy6+/ni3bE2bvgPrvVq5VojaCFtnalNrx/+idSC38eemWCL3JdFjbDAhPR8ui6oxUaZUs/dSBmtPJnE8PgdjmUSfFq6MDfOhR5ALRvdYbagLCsj87DPy1q3H2N0dtzffxKb3gy9cDNQ+SrWG+Vsusv50MkNDPVg4ug3mJn9fp8fnx7M0cil7E/ZiZWLFhJYTmNByAjamtSeQ+dArCwO1h7OnNTIjiXxzd5yFoFebMH4Dtn/2IT2emURxXt4t51B4W4tWc2sbXHz9adG7D9/f2EjL5p2Y/+SHmJjqTnK73ggZDXbesG48rOijXWH49wDg8p9pRO5LIuRxT4OjuANzEyOGtfVkWFtP4rOKWH8qmY1nUth76Qae9haMau/J481cCfWyw0gmUbhnDxkffIBanoPjxIm4vDgHmdWjt0rTB/JLlcz8+Qx/xsp5sXdTXukXfOvCL6kgiaXnl7Lr+i7MjMyYGjKVia0mYmemw540D8CwsqgjNnx4ChMzI1qsn4lNv77Yz/036xbMIzctBUkmw9HDCxdff5x9/HD19cfZ1w9rB6dbH56PT33M6iur2TpsK/52/vX8bnRIbiKseRrkMTD4M9Jsh/Lrokg8guwZMicUmVHjDGjXJgqVhn2Xb7DuVBJHY7MRAvzVBbx2+VcC4s4jBTfH94P3sGjdur5NfWRJzilh8venSJAX8+HINozuoL0ISilM4ZsL37A9bjsmMhPGNR/Hc62fw9Fcdz27H7oor6Gh787ij7XRRJ/IoH/pGlSpqQTu2IGyvIy8jHQc3D0xfoDmv7xUzsDNA+np1ZOFjy+sI6vribJ82DCJ/OhLbCz4AnMHO0bP64iZpX5UNTck5PklXP56OXbrvkctBD80H8C2gG64O1rzWFNnHgtypltT57v2yA3ojsjkPKb+cAqFSsOyCR3oGuhMelE6y6OWszVmKzJJxphmY5gSMqXSlPnaxLANpWe4+tpy8Y9U1M3DUPzxCer8fEzs7HDxrdoqwcnCiYgWEayMWsnUNlMJdgjWscX1iLkd5SPWsPPtvQhlOYN9f8DMuA3a/lsGqkrZlSvkv/EGzpevYN2rF03mv8HLZvZ0iM3maEwWuy6ms/50MpIErTxseaypC92DnOng6/CPfXMDtcfuqHReXh+Jq60Z614Ix8aqmPePv8+mmE0IBKODRzM1ZCpNrJrUt6l3YXAWdcTNNquFLsGYAqUXLmDdvXu15niu1XOsu7qOJZFLWNRrkQ6s1A80ag2/rbpKfoktQ/onY39+Pay6BOPWaQPgBu6LUKuRr1xF1ldfYWxvj+cXX2DzRD8kScIP8HO2YkIXX1RqDRdS8zkak83R2GxWHIln2R9xmBnLCPN3vLXyaOFmW2M9IgNahBB8eySeD3dfpa23Pf8b48em+MX8Ev0LGqFheNBwXgh5AXdr9/o2tVIMzqKOcHCzwsTMiDzhiKtMRum5yGo7CzszO55t9SxLIpdwSX6JVk6tdGRt/fLnxliSLufQM6IZXt17QUs32DhZG/getxY82tW3iXqLIiWFtLnzKD17FpsBA3B/ewFG9vfWFjM2ktHex4H2Pg682CeI4nIVJ67LORKTzdGYbD7cfRV2g5OVKd0qHEf3IGfc7QyFetVBpdbw1rZLrDmRxBOtrWka/BcRe15GqVEyJHAI09pMw8tG/xM3DDGLYaGr0QAAIABJREFUOmTLp2dRKTV0OP4+xo6O+Kyqfu/dIkURAzYPIMQ5hKV9l+rAyvrl4uFU/lgTTWgfbx576rb02RuXtIHvEjmMXK7t823gFkII8jdv4cb774NMhttbb2I7ZMhDpVXfKCi7teo4GptNVqG2YjzAxYruTZ15LMiFLgGO2OiJQq4+UlimZNaacxyOTSS8fRTx5XspVZUyOGAw00On42tbP61/b8cQ4NZD/twUy4WDyQx1OkzRzh0Enzheo0rZVRdX8fmZz/lx4I+0c208V9kpV3PY9uV5fFo6Mmhmm7u3PooyYe04SD0Dfd+Gbi8ZpLIBVU4OGQsWULhvP5ZhYXh89CEmHh61eg4hBNE3Cm85jxPxOZQq1RjJJNp5299adbTxssfEkLEGQGpeKZN++IMk1V6sXY9RrilhgN8AZoTOIMC+HtodV4LBWeghsWcy2fvtRQaEF6H4cB7+v/6KebPqB6pLlCUM2jyIQPtAVvav/upEH8m7UcLG/53Gyt6MUf/ugKlFJTukylJt8d6lzdDuGRj8+X0lQho7hYcOkT7/TTT5+bi88gqOz02sk4ZE5So1ZxPzOBqbxdGYbC6k5iMEWJsZ0yXAie5BznQNdKKpq3XjKBqtJicT0pm2bREq64NgVEpfn77MaDtDLxNTDNlQeoirb0WQ28YPM7Sd82riLCxNLHm+zfN8dPIjTqSfoLN751q2tG4pK1ayY/F5JJnE4JltKncUACYWMGolODWFwwu1dRljfqyVZkoNCU1JCTcWLiRv3XrMgoPxWLmyRp+lmmJmbER4oBPhgU78u7+2k9tfcXKOxGrjHfuv3ADA2dqMLgGOhAc60SXAiQBnq0btPEqUJbz7x7fsSFqDZFdCR5fHmNv5RVo4tahv0x4anToLSZIGAF8ARsAKIcRHd7w+HW2DJTVQBLwghLgsSZIfcAWIrjj0uBBiui5trQtsnMwxtzZBXmiMt4MDpZGRODw9pkZzjQ4ezXcXv+Orc18R5hbWYL+AarWGPcsvUphTxrCX22HrXIXgqUwGvd/QSoL8OgtW9IWIDeAUqHuD9YDS8+dJmzsPRVISjpMn4/LyS8geUKeja+wtTRkY4s7AEG02T5K8hOPxcv6Kl/NXnJwdF9IBcLUxu+U4wgOc8HWybLCf3dtRapSsvbKWxeeWU6LOx1K05JOec+nh26G+Tas1dOYsKnpgLAb6ASnAKUmStgkhLt922BohxLKK44cCnwEDKl6LE0K01ZV99YEkSTTxsyUzsZDgtm2r1JO7MsyMzJgWOo13/3qXI6lH6OHVoxYtrRuEEBxZd43U6Fz6TGyBR9P7dwS8izZjwN5HKxHybe8KiZDqZZg1JIRSSfayb8hetgzjJq74fP89Vp3D6tuse+LjZImPkyVjOnkjhCDhpvOIk3MsTs6vkWkAuNuZEx5Q4TwCnfB2rLl6an0ghOBI0jk+PPkOKSXxqIqb0tZ6FqsmjMHCtHHVquhyZREGxAoh4gEkSVoHDANuOQshRMFtx1sBjSOAch9cfW1IuiTHOKQdRQcPosrNxdjBoUZzDW86nFVRq/j63Nd09+ze4K7Qog6lcOlIGu37+9A8vIb55T5dYOrv2kypn4ZrZc7bT6hdQ/WA8uvXSZs7j7KoKOyGDaXJ/PkY2dSemJwukSQJf2cr/J2tGBfmgxCCuKziWyuPwzFZbD6XCoCnvcUtxxEe6ISnvX6k6SrVGhLlJcRmFhGXpb3FZOWQoNqMsDuMUNlQnjGBSe2e5PWBLRplXYounYUnkHzb4xTgrs11SZJmAa8CpkDv217ylyTpHFAAzBdCHLnH2BeAFwB8fBpGD2ZXP1uEgBJPrS5P6fnz2PTsWaO5TGQmTA+dzvw/5/N70u/09e1bi5bqlsRLco7+EoN/qDNdhj3k9pGjP0z5DTY8B9tma3Wl+ryt3a5q4AghyFu3jhv/W4jMzAzPRZ9jO2DAgwfqMZIk0dTVmqau1jzTxRchBDGZRbdWHgeu3mDT2RQAfBwtb8U8wgOccbOrmvx6TSkoUxKXWURcVvE/HEOSvASV5u9rWReXRDROG0DKpq3dAJ5rPos2Hm642urWvvpEl87iXq71rpWDEGIxsFiSpPHAfGAikI62hatckqQOwFZJklrdsRJBCLEcWA7abKjafgO6wNVX2zMq38QFCyMjSiMja+wsAAYHDGZF1AoWRy6ml3cvjGT6v/TNSSvmt28v4uhpTd9JLZFq4yrMwl4bt9g9F/78AuRx2noM04arqKrMzCR9/nyKDx/Bqls33D/4oFH2m5AkieAmNgQ3seHZcD80Gm2a7k3nsffSDX45rXUe/s5WdAlwvBXzqMmPs0YjSC8oq3AK2ltshYO4WUsCYGIk4edkRbCrDQNbuxHoYk0Tew3bkpexK2E7frZ+LAj/mI5uD0wkahTo0lmkALd35fEC0u5z/DpgKYAQohwor7h/RpKkOCAY0O/c2CpgaWuKjaM5WWllBDdrRunpMw81n7HMmFltZ/Hvw/9mb8JeBgUMqiVLdUNpkYKdS85jZGqkzXwyr8WPoJEJDP4MnINh73/hu4Ewbj3Y6q+EQmUU/PYbGW8tQFNaSpP583GIGN/gthlrikwm0cLdlhbutkzq5o9aI7iSXsDxeDnH47XB8rUntZsWAS5WhFdsW3UJcMLZ+m/5/jKlmgR5MXGZxbecQlxWEXGZxZQq1beOszE3pqmrNT2DXQh0tSbQxZpAFyu8HS1v1YwIIdibuJf/nviQgvICng95nmmh0zAzaoTtAipBZ3UWkiQZA9eAPkAqcAoYL4S4dNsxQUKImIr7Q4AFQoiOkiS5ADlCCLUkSQHAESBECJFT2fkaQp3FTfYsjyIrqZCBXhfIWvQFHh9/jN2QJ2s8n0ZoGL19NAq1gq3DtmIs08+M6PTYPA6tiSY/s5Th/2qHm78Otfmv7dVKhJjZwvh14B6qu3PVIuqiIm68/wH5W7Zg3qoVHh8vxCxAfwq49AG1RnApLf/WyuNUQi5F5SoAglyt8XSw4Hp2Mck5Jdy2c4SnvUWFM7Ai0EW7DRboYo2ztel9HXFGcQbvH3+fQymHaOXUine6vkMzx2a6fpt1Rr3XWQghVJIkzQb2ok2dXSWEuCRJ0rvAaSHENmC2JEl9ASWQi3YLCqAH8K4kSSq0abXT7+coGhquvrbEnc3C8rWJWBw9SvqCBZi3bIFZYM327mWSjNltZ/PSwZfYHredEUEjatnih6M4v5y/tsQRfTwDawczBs4I0a2jAAjuD5P3agPfqwZo27c2H6zbcz4kJadPkzbvPyjT03GaMR2XGTOQ6jklVh8xkkm08bKnjZc9L/QIRKXWEJWaz/H4HP6Kl3OjoJzWnnYMa+t5yzEEuFhhaVq9nzuN0LAhegOfn/0ctUbNax1fI6JFhN5ejOkaQwV3PZAancvWz8/x5JxQPJxVXB8xEmMnR/zWr0dmWbPUQSEE43aOI7cslx0jdmBiVP96PWq1houHUjm5PR6VSkO7vj50GOiHiVkdxlUKM7QSIWnnoN+70HWO3kmEaBQKsr/6CvmKlZh4e+Pxv4+wbNd4ZFwaIvH58bxz7B3OZp6li3sX3gp/C2+bBtrr/gFUdWXR8NNFGiAuvjYgQWZCASZNmuDx8ULKY+PIeOddauq8JUliTrs5pBWnsTlmcy1bXH1So3P55f1THN0Qg1ugHePe7EyX4YF16ygAbNxg0i5oOQz2valdaRTeqFsb7kN5TAwJY55G/u0K7EePImDLZoOjqEeUaiXfnP+G0dtGE5sXy3vd3mN5v+WN1lFUh0dzPVXPmJob49DEkswEbXKXdbduOM+cSfbixViGdcJ+1KgazdvVoyvtXduz/MJyhjUdhrlx3afxFeWWc2xTDDGnM7FxMmfg9BD8Q53rNzhrYgGjv4OTXWD/27CkCwxZpHUg9YTQaMj58UeyPvscmbU1XksWY9O794MHGtAZUVlRLPhrATG5MQzwG8C8sHl10qmuoWBYWdQTTfxsuZFYeGsl4TxzBpbhXch49z3KoqMfMPreSJLE7HazySzN5JfoX2rT3AeiVmk4uzeRn98+TnxkNp0G+zF+QWcC2rroRxaPTAZdZsC0w9qq71+ehc3TtC1c6xhlejpJk6eQ+dH/sOrWjYBtvxocRT1Soixh4amFPLP7GfLL8/my15d8/PjHBkdxBwZnUU+4+tlSWqCgKFeb1y0ZGeH58ccY2dqS+uJLqIuKajRvJ7dOdHHvwsqLKylRltSmyZWSfDmHde+d5K8tcXg1c2Dcgs6EDQnAWB/lDlyawdT90GMuRG2AJV0h/o86O33+jp3EDxtO6YULuL33Ll5LFmPsbPhRqi+OpR5j5LaR/HT5J54Kfoqtw7bSy6dXfZullxicRT1xszjv5lYUgLGzM56ffYoiOZmMt96qcfxidrvZ5JTlsObqmlqxtTIKc8rY800U276MRKMRDJ7VhsEz22Dnoh8SDZViZKIVIpzyGxibwY9DYc/rWvlzHaHOzyf11X+R9tprmPn7E7BlMw5PPaUfq65HkLyyPN44+gbT9k/DRGbCDwN+YH6X+diYNgwJlfrAELOoJ5y9rJEZSWQmFhDY/u+qXMtOnXB5+WWyPvsMiw4dcIyIqPbcoS6h9PDqwaqLqxjTbAy2pra1aTpqpYZz+5I4szsBgM5DA2jbzxtjEz1cSdwPr44w/QjsWwDHl0DcARjxDXjUrn5l0ZGjpM+fj0oux+WlF3F6/nkkY8NXrz4QQrAnYQ8fnfyIgvICXmjzAi+0eeGRKq6rKYaVRT1hZCLD2cuahCg5KVdzUKs0t15zmjoF68cf58ZH/6M0KqpG889qO4tCRSE/Xf6ptkwGICEqm7XvnuDEtnh8Wzsx/p0udBzk1/AcxU1MrWDwJ/DMZm38YkUf+ONjUKseeuqSs+dIfG4Syc8/j8zSEr+1a3GeMcPgKOqJjOIM5hyYw9zDc/Gw8mDdk+uY026OwVFUEUOdRT1y/vdkjm2JRaMSmJgZ4d3CEd/WTvi0csKcEq6PGoUkyfDfvAkju+oXsb166FWOpR1jz8g92JtXU/77DvKzSjm6IYaEC9nYN7Gkx9PBeLdsZA2HSnJg12twcRN4ddKuMmrQI6M06iJZX31J8eEjGDk54fT8VBzGjkVm3nhF5vQZjdDwS/QvLDq7CI3QMLvtbCJaRDQIHbW6wNBWtYGgLFeTEp1L4kU5iRezKcrRBrydvKzxdFFj/OP/8Gjjhc+Sr6q9vx2bG8vIbSOZ1HoSr3R4pUb2qRRqzuxN5NzeJCQjiU6D/Ajt442RcSNelEZthJ2vgloJT7wHHadUqZCvLDqarC+/ouj33zGys8Nx6hQcIyJqXGhp4OGJz4tnwbEFRGZFEu4ezlvhb+Fl41XfZukVBmfRABFCkJNeTOJFOUkX5aTH5qPRCIyVJbg3EQQP6YhPKycsbasuAfGfI//h98Tf2T1qd7VSAYUQXD+fzdENMRTKywjq6ErXUUFYOzwiS/aCNG0XvrgDENgHhi2uVJCwPC6OrK+/pnD3HmTW1jhOeg7HiRMxsrauY6MN3ESpVrLy4kqWX1iOpYklczvNZUjAEENCwT0wOItGgKJURdKVHK58u4OMMgcUZtqtKFdfG3xaOeHb2glXP9v7NlpJLEhk2NZhjGs+jnlh86p03rwbJRz55RpJl3Jw9LCix9PBeDarWYOmBo0QcGoF/PamNmvqyc+g9d8Fk4rERLKXLCF/+w4kc3Mcn52A06RJNdoyNFB7XMi6wIJjC4jNi2Wg30Dmhc3DycKpvs3SWwzOohGhLiwkfuQoCiQH1NPfJiWuhIz4fIQAcysTfFpVxDpaOmFufbcm1IJjC9get51dI3fhZuVW6XmU5WpO704gcn8SxsYywoYE0LqnJ0ZGjXjLqSpkx8CWaZB6BlqPRtnuX2R9t4b8LVuRTExwGD8ep6lTMHZsZDGcBkSxspgjKUf4LfE39ifux9XSlTe7vMnj3o/Xt2l6j8FZNDJKL10icdx4LMPC8F7+DeWlapIv55B4SU7SJTmlhUokCZr4295adbh42yDJJNKK0hi8ZTAjmo7grfC37ppbCEHc2Sz+3BhDUW45zTq7ET4yECu7R2TLqSqoVSi3v4d85ffkxlkiyYyxHzsWpxeex8S18TUkaggUKAr4I/kP9iXu48/UP1FoFDhbOPNkwJNMazMNa1PDNmBVMDiLRkjuuvVkvP02Li+/hPP06beeFxpBZlJhRZBcTmZiAQiwsDXFt5Ujvq2d+aVoFRsS17NtxLZ/iKLlpBdzZP01Uq7m4uRlTY+xwXg0fbjMqcaGSi5HvvxbcteuRajV2DeXcA5IwaTXVOj7DpgaAth1RV5ZHgeTD/Jb4m8cTz+OSqOiiWUT+vn2o59vP0JdQg1ZTtXE4CwaIUII0v49l4Jdu/BZtQqrLne1NAegpEBB8mWt40i6nEN5iQpJBunW8VgGanh+8Hhsncw5tSuBC78nY2JuROehAbTq7oHsUd9yug1Vbi45q1aRs/pnRHk5dsOG4TxzBqZuzrD/HTixFJyaatu3enaob3MbLdml2RxIOsC+xH2cyjiFWqjxtPa85SBaO7dGJhk+tzXF4CwaKZriYq4/NQZ1QQH+mzc9cAtEo9Zw43oBiRflnDp1BZlcexUsk0loNIIW3dzpMiywWhlWjR11QQE53/9Azg8/oCkpwXbwYJxnzcTM3/+fB8Yfgq0ztT0zevwberymlRIx8NDcKL7B/qT97Evcx9kbZxEIfG19bzmIFo4tDJlNtYTBWTRiymNiuP7UGCxCQvD5blWVK4JzynIYseYpejOUnhYDaNbFTfcd6xoQmuJicn5ajXzVKjQFBdg88QQuc2ZjFhRU+aDSPNg9Fy6sB492MGI5uATXndGNiLSiNPYl7mNf4j7OZ50HoKl9U/r59qOvb1+C7IMMDkIHGJxFIydvy1bSX38dp+nTcH355SqP+/Lsl3wb9S0bh2xsVH2EHwZNaSm5a9YiX7ECdW4u1r164TJnNuYtW1Z9kktbYcfLWjHCvu9A2AtaWXQD9yWxIJF9ifvYn7ifS/JLALRwbEFf37709e1LgJ2h/7iuMTiLR4C0+fPJ37gJ7+XfYN2jR5XG5JfnM3DTQDq5deKL3l/o2EL9RqNQkLf+F7KXf4M6Kxurbt1weXEOFqGhNZuwMAO2zYGY38D/cRi+BOwM1cJ3EpcXd2sFcS33GgAhziH09e1LP59+eNsautLVJQZn8QigKSsj4emxqG7cwH/LZkzc711hfCfLzi9jceRiFvdZTA+vqjmZxoRQKsnbvIXspUtRZWRolX5fehHLjg/8vlRhcgFnvoe9b4DMWCtSGPKU3vX9rkuEEFzLvXarBiI+Px6Adq7ttFtMPn1xt67aZ9dA7WNwFo8I5devkzBqNGbBwfj+9COSyYMDrCXKEibumUh8Xjxf9fmKrh5d68DS+keoVORv2072kiUoU1KwaNtW6yS6dKn9vXB5HGydAcknoOVwGPwpWD06TY6EEFyWX77lIJIKk5BJMjo06UA/33708emDq6WhPkUfMDiLR4iCXbtIffVfOE6aRJN5c6s0Jq8sjym/TSGxIJGv+3xNF/cuOrZSdwgh0BQVoc7LQ52bq/33HrfSS5dQJiZh3rIlLi+9iFWPHroNmGrU8OciOPghGJtD+EwInwXmjTepQCM07IzfybLzy0gqTMJIMqKze2f6+valt3dvg+yGHmJwFo8YGe++R+6aNXh9/RU2fftWaUxOWQ5T9k4hpTCFxX0WE+YepmMrH4xQqVDn51f6w6+6eT/3tufz80FVSf8JScLI1hYjBweM3dxwfCYC6z596jarJvMqHHwfrmwDc3vo9iKETQOzxlNhLITgSOoRvjj7Bddyr9HCsQXjmo+jt09v7Mwar3NsDBicxSOGRqEgcXwEisRE/DdvwtS7akFCeamcqb9NJaUwhSV9l9DJrZPObBRqNUWHD1N25co/ncBtP/yawsJKx0smJhjZ22tvDg5/37/95nDHY1tbJCM9qehNi4SDH0DMXrB0hu6vauXPTRp2n4vIzEg+P/M5ZzPP4m3jzZx2c+jv199QKNdAMDiLRxBFSgrXR47C1MsL37VrkJlVTdspuzSbKXunkF6cztK+S+nQpHarkVW5ueRv2kTumrUo09IAkFlZ3fEjX/mPv3HFfcnSsnHk2SefhAP/B9f/ABsPbTFfuwlg3LAKI2NzY/ni3BccSj6Ek7kTM0JnMDJoJCaGwsQGhV44C0mSBgBfAEbACiHER3e8Ph2YBaiBIuAFIcTlitdeB6ZUvPaiEGLv/c5lcBZaCg8cIGXmLBzGj8PtrbtFAysjuzSbyXsnk1GcwbK+y2jfpP1D21J25Qo5P/9MwfYdiPJyLDt1wuGZZ7Du1ROZacP6YdQJ1w9rnUbyCbD3gcf/A22eBiP9bruaVpTG4sjFbI/bjpWJFZNbTyaiRQSWJgaNrIZIvTsLSZKMgGtAPyAFOAWMu+kMKo6xFUIUVNwfCswUQgyQJKklsBYIAzyA/UCwEEJd2fkMzuJvbiz8mJxVq/D49BPsBg+u8riskiwm751MZkkm3/T7hraubat9bqFUUrh/Pzmrf6b0zBkkc3Pshg7FISIC82aGyua7EAJif4cD70F6pFZrqufr0Gqk3hX15Zbl8m3Ut6y7ug4JiXHNxzE1ZOpDt+w1UL/og7MIB94WQvSvePw6gBDiw0qOHwc8K4QYeOexkiTtrZjrr8rOZ3AWfyOUShKfnUh5dDR+GzdiFuD/4EEVZJZkMnnvZLJLs/mm3zeEulStQE2VnU3ehg3krluP6sYNTLy8cBg/HvtRIw3NgKqCEHB1pzYQnnkZXFtCrzeg+eB6r9EoUZbw4+Uf+f7S95SqShkWOIwZoTMMtRH6gkYDZXlgWbN+KvrgLEYDA4QQUyseTwA6CyFm33HcLOBVwBToLYSIkSTpa+C4EGJ1xTErgd1CiI13jH0BeAHAx8enQ2Jiok7eS0NEmZHB9eEjMHZ1xW/9OmQWFlUee6P4BpP2TiK3LJfl/ZYT4hJS6bGlFy6Qs3o1hbv3IJRKrLp1w+GZCKx79NCfwHJDQqOBS5vh0Icgj9XqTfWaD0371LnTUKqVbLi2gW8ufENOWQ59fPowp90cAu0D69QOA/ch7iDsXwBmtjBxe40+I1V1Frpc597L6rs8kxBisRAiEJgHzK/m2OVCiI5CiI4uLi4PZWxjw8TNDY+PF1IeE0PG//1ftcY2sWrCqv6rsDezZ9q+aVzKvvSP1zUKBfm//sr1p8aQMOZpin4/gP3TTxOwaxc+K1dg06uXwVHUFJkMQkbDzBPavt/Fcvh5FKwaANeP1IkJN2slhm4dyocnPyTALoDVg1azqNcig6PQF9LPw08j4KfhUJKrTZDQMbqMpKUAt+dvegFp9zl+HbC0hmMN3APr7t1xmj4N+dJlWHboiP3IEVUe62blxqr+q5i0dxLP73ueFU+sIEjlRO66deT9sgG1XI6pvz9N5s/HbvgwjKwbT82AXmBkDO2egZAxcO5HOPwJ/PCkVnOq95vgXfspzkIIjqYe5YuzXxCdG00zh2Ys7buUbh7dGkcWWmMgNwEOvA9Rv4CFA/T/oM7Sr3W5DWWMNsDdB0hFG+AeL4S4dNsxQUKImIr7Q4AFQoiOkiS1Atbwd4D7dyDIEOCuPkKtJmnyFErPn8dv/fpqB5lTC1P5v2/GE34sj07RKtAIrHv2xOGZCKzCw5H0LAjbaFGWwulVcOQzKMmGoP7Q+w1wr6Ho4R2czzrP52c+58yNM3hZezGn3RwG+A8w1EroC8VyOPIJnFoBkgy6zIBuL4PFwycX1HvMosKIQcAitKmzq4QQ70uS9C5wWgixTZKkL4C+gBLIBWbfdCaSJL0BTAZUwMtCiN33O5fBWVSOKiuL+JEjMbK2wW/DBoysrR44RlNaSv6OHeT+vIbyq1cpMZc40s6MAa8uonnI43VgtYF7Ul4EJ7+BP7+AsnxoOQx6/hdcm9douri8OL48+yUHkg/gZO7E9NDpjAoaZaiV0BcUJXB8ifb/W1EEbSOg13/B1qPWTqEXzqIuMTiL+1N84iRJkyZhO2AAHp9+Uum2giIlldy1a8jbuAlNfj5mwcE4PBNBYa92TD40g3J1OSueWGHohVHflOZpf0T+WgyKYmgzBh6fB05ViylkFGewOHIx2+K2YWlsyXOtnmNCywmGWgl9Qa2CyNVaXbGiDGg2CPosqPFFwf0wOAsDd5G97BuyFi3C7e0FOIwde+t5IQQlf/1FzuqfKTp4EGQybPr2xSFiPJadOt1yLMkFyTy39zmUaiUr+68kyOE+HeQM1A3Fcjj2BZxYDmoFtIuAHnPB/t5yL3lleayIWsHaq2sRiFu1Eg7mDnVsuIF7cjOF+vd3IPsaeIVBv3fBN1xnpzQ4CwN3ITQakqdNp+T4cXzXrcXU14/8X7eS+/MaFPHxGDk4YD9mDA5jn660N0ZiQSKT90xGJVSs6r/KkB2jLxTegKOfaeMaAB2eg+7/Ahs3QFsrsfrKar67+B0lqhKGBg5lZuhMQ62EPpF0HPa9pa3odwqCvgug+ZM6T5k2OAsD90SVm8v1ESMRKhWirAxNURHmrVvj8EwEtgMHVklP6nr+dabsnYJGaFjVfxUB9obWl3pDfgoc/hjOrQaZMcr2z7LJ3pFlyXuRl8np7d2bOe3m0NShaX1bauAmWdGw/x2I3gnWTbQV/O0m1Jnsi8FZGKiUknPn+P/27j226vM84Pj3sY/xDfvYxCGeY3xDOM0NRkoa0mQhCb6gTEsmNWrTLVqTcGuyhd2nSZXSdpW2qdW0alXVlin2ulbNsmZVh6ou2AaiNEmJ4oZADCGAjW0MJRiwDxDj63n2x/vDPpwYzrF9Lj4+z0c68u/ynuPn9bHP4/d3ed6+bdvIv2cxcPHKAAAM70lEQVQtS578Y3JWrZrxpZFdgS6eefUZRISmxiaq/dHfJW7iJzAS4HjgOJ0n99L1wc/YM3SCE1k+Pj0yzl8UreR3P/W4u8Fvlnf7mhi6cMrdfLnvx5CVD/f/Oax9DhZFvgAllixZmLjrGuzi6Z1PkymZNDU2UeWvSnZIaUFV6b/cT+dgJ12BLo4HjtMV6KJrsItzw+cm22VnZnNrUS1blqzi/tPHkWOt7rJbyYBl90Bto7sEd+mtSS8pklaGA/DGt2Hv9yA4DndvcpWHkzSToiULkxDHBo6xsWUjPvHRvKGZisKKZIe0YEwEJzh56aRLBF4yuJIYLo1dmmxXkFVAdVE1Nf4aavw1LC9aTrW/mrL8MjIzQu6kDwbh1LtwZCcceRVOH3Db/RVQ2wC1G6Dq91J+fo15a3zE3Sfx+rfg8oCbm/2hr8CS5I7KLVmYhDk6cJSNOzeyKHMRzY3NLCuMbuIl44xOjNJ9oduNEgaPTyaH7kA3o8HRyXYluSXU+Guo9lezvGj5ZHIoyS2Z3R3WF07B0RY40gJde2BsCHy5UPOgN+poAP/NMetn2goG4f2funL0gV738637OpTNvKpzPFiyMAn14fkP2dSyiRxfDk2NTSwrsIQR7tLopalDRiGjhb5LfQQ1CIAglC0umxwhXEkO1f7q+E5POjYMPW9MjToGe9320jvdoaraDXDzXZBhNb+ipgqdu6D1a/DR+1C6Euq/DssfTnZkV7FkYRLu8PnDbGrZRJ4vj+YNzdy8OL3/Kw2MBHjtxGu09bZx6Nwhzgydmdzny/BRWVBJTVHN5AihpqiGysJKcn3RVwiOC1V3hc7RnS559O4FnYC8G9xoY0WD+8CLQamJBevUPmj9qpsNsagCHn4B7vjcvJujBCxZmCQ5dO4Qm1s2U7CogKbGJsoWx64sQSo4P3ye3b27aetp4+3fvs24jlOaX8qam9ZMnkuo8ddQXlBOVkaKlNS4POAmaDra4h6XByDDBxX3Tp0kL1lhJ8kBzh93E1l1/A/kLoF1fwdrngFfdFMcJ4MlC5M0B88dZHPLZgoXFdLc2Lzgb/zqH+pnV+8uWntaaf+onaAGKV9cTn1VPQ2VDdx+w+0Lp2prcAL62t2hqqMt8FGH215c7RJHbSNU3jfzD8eJMVcscXzYnTsZ876OD7vt4fvGL09tH7vsrXv7g+OAuKu+RLxHRti2adZFomhzZds0r/vxGdj/skuk9/4p3LcNcub/xF+WLExSdZztYEvLFvzZfpo3NFOaX5rskGLq9Menaetpo7WnlX1n9qEo1f5q6irqaKhq4JbiWxZOgriewRPeSfKd7pDL+LC7Z6DmQcgr9j7Mr/fh7i0Hx2f3/TMXQVauOzGflQNZee7DGnUz4GjQPVBvWcPWg1Ptwtt8Ylv4c8PWJRNWPeFuqitMnX+QLFmYpDvQf4CtrVtZkrOEpsYmbsq/KdkhzcmJiydo62mjraeNA2fdZacrildQX+lGEGlf+mR0CLp/5RJH5253qWhWrvdhnjO1HP7h7vO+ZuVcvTy5L/Q5Ya9nJ9znzJKFmRf29+9na+tWbsy9kRcbX2Rp3tJkhzQj3YFuWntaae1p5YPzHwBw2w23UV9ZT11Fnd2IaFKeJQszb7x35j22tm5lad5SmhqbuDFv/k6Bq6p0DnbS2tNKS08LxwaPAbDyxpXUV9RTV1lHeUF5kqM0JnYsWZh55d2P3uXLbV+mNL+U7zz8Hcryy+bNBDuqyuHzhydHEN0XuhGE1UtX01DVwPqK9QvunIsxV1iyMPNO++l2ntv1HJfHLwOQn5VPUXYR/mw/RdlFVz9yiib3FWcXTy7n+nJjcuJYVek42zGZIPou9ZEhGdxdejf1FfWsr1xPSW5yavUYk0jRJovE1MA1BlhTuoaXfv8l2k+3MzgyePVjeJDeC70ERgJcHLt4zdfIzsyeTC7F2cVTiSan6JMJx9u+OGsxIkJQg+zv309LdwttvW2c/vg0PvFxT9k9bLpzEw9VPMSSHKvGasx0LFmYhFpetDziVUNjwTECIwECIwEGhgcIjAQYHBlkYGRqeXDYJZkjA0dc29HAZMmMcD7xUZhdiKoyMDJAVkYW95Xdx/Orn2dd+br4ltEwZoGwZGHmnayMLEpyS2Z0GCioQS6OXnRJJSTBhD7GJsb4bNlneaD8ARYvWhzHHhiz8FiyMAtChmTgz/bjz/ZTWViZ7HCMWXDmX1UrY4wx844lC2OMMRFZsjDGGBNRXJOFiGwQkQ9F5JiI/P00+/9KRA6JyAER2SUilSH7JkTkPe+xI55xGmOMub64neAWkUzgu0A90Ae8IyI7VPVQSLN9wBpVHRKRZ4FvAl/w9l1W1fkx76AxxqS5eI4sPgMcU9UuVR0F/gt4LLSBqu5R1SFvdS9gRXeMMWYeimeyuBk4EbLe5227lo3A/4Ws54hIu4jsFZE/jEeAxhhjohPP+yymK+AzbSEqEXkSWAOsC9lcoaqnRKQG2C0i76tqZ9jztgBbACoqKmITtTHGmE+IZ7LoA5aFrJcDp8IbiUgd8BVgnaqOXNmuqqe8r10i8hqwGrgqWajqdmC79zr9ItIzh3hLgLNzeH4qSrc+p1t/wfqcLubS56juYo1b1VkR8QFHgPXASeAd4I9U9WBIm9XAK8AGVT0asr0YGFLVEREpAX4NPBZ2cjzW8bZHU3lxIUm3Pqdbf8H6nC4S0ee4jSxUdVxE/gzYCWQCTap6UET+AWhX1R3At4DFwE+9stO9qvoocCvwAxEJ4s6r/HM8E4Uxxpjri2ttKFX9JfDLsG0vhCzXXeN5bwF3xjM2Y4wx0bM7uKdsT3YASZBufU63/oL1OV3Evc8LZqY8Y4wx8WMjC2OMMRGlVbKIolZVtoi87O1/W0SqEh9lbM2lPleqitTnkHaPi4iKSMpfORNNn0Xk8957fVBEfpLoGGMtit/tChHZIyL7vN/vR5IRZ6yISJOInBGRjmvsFxH5N+/ncUBE7oppAKqaFg/cFVmdQA2wCNgP3BbW5jng+97yE8DLyY47AX1+CMjzlp9Nhz577QqA13FlZtYkO+4EvM8rcLXYir31pcmOOwF93g486y3fBnQnO+459vkB4C6g4xr7H8FVwRBgLfB2LL9/Oo0sItaq8tZ/6C2/AqwX75reFJWO9bmieZ8BvoErXDmcyODiJJo+bwa+q6oDAKp6JsExxlo0fVag0Fv2M81NwalEVV8Hzl+nyWPAf6qzFygSkd+J1fdPp2QRTa2qyTaqOg4EgBsSEl18zLU+VyqK2GfvZtBlqvqLRAYWR9G8z7VArYi86dVb25Cw6OIjmj5/DXhSRPpwl/A/n5jQkmamf+8zkk5zcEdTqyrqelYpYq71uVLRdfssIhnAvwJPJSqgBIjmffbhDkU9iBs9/kpE7lDVwTjHFi/R9PmLwH+o6r+IyL3Aj7w+B+MfXlLE9fMrnUYW0dSqmmzjlSvxc/1h33w30/pcj2pIfa4UFanPBcAdwGsi0o07trsjxU9yR/u7/b+qOqaqx4EPcckjVUXT543AfwOo6q+BHFwNpYUqqr/32UqnZPEOsEJEqkVkEe4EdvgMfDuAL3nLjwO71TtzlKIi9tk7JPMDXKJI9ePYEKHPqhpQ1RJVrVLVKtx5mkdVtT054cZENL/bP8ddzIBXb60W6EpolLEVTZ97cbXpEJFbccmiP6FRJtYO4E+8q6LWAgFV/W2sXjxtDkNpdLWqXsQNVY/hRhRPJC/iuYuyz9eqz5WSouzzghJln3cCDSJyCJgA/lZVzyUv6rmJss9/Dfy7iPwl7nDMU6n8z5+IvIQ7jFjinYf5KpAFoKrfx52XeQQ4BgwBT8f0+6fwz84YY0yCpNNhKGOMMbNkycIYY0xEliyMMcZEZMnCGGNMRJYsjDHGRGTJwpgYEZFu7x6GObUxZj6yZGGMMSYiSxbGzIKI/FxEfuPNDbElbF+ViBwWkR968wq8IiJ5IU2eF5F3ReR9EfmU95zPiMhb3twLb4nILQntkDERWLIwZnaeUdVP44ovbhOR8OrEtwDbVXUlcAE3V8oVZ1X1LuB7wN942w4DD6jqauAF4B/jGr0xM2TJwpjZ2SYi+3G1pZbxyaJ8J1T1TW/5x8D9Ift+5n39DVDlLftxJVc6cFVxb49H0MbMliULY2ZIRB4E6oB7VXUVbga6nLBm4XV0QtevVPadYKo+2zeAPap6B/AH07yeMUllycKYmfMDA6o65J1zWDtNmwpvDgVw8yq8EcVrnvSWn4pJlMbEkCULY2buVcAnIgdwI4K907T5APiS12YJ7vzE9XwT+CcReRNXRdWYecWqzhoTYyJSBfzCO6RkzIJgIwtjjDER2cjCGGNMRDayMMYYE5ElC2OMMRFZsjDGGBORJQtjjDERWbIwxhgTkSULY4wxEf0/7SAcZ6yiIlAAAAAASUVORK5CYII=\n", "image/svg+xml": "\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n", "text/plain": "
" }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "figure_12_3()" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "# Figure 12.6: TD(lambda) algorithm\n", "def figure_12_6():\n", " lambdas = [0.0, 0.4, 0.8, 0.9, 0.95, 0.975, 0.99, 1]\n", " alphas = [np.arange(0, 1.1, 0.1),\n", " np.arange(0, 1.1, 0.1),\n", " np.arange(0, 0.99, 0.09),\n", " np.arange(0, 0.55, 0.05),\n", " np.arange(0, 0.33, 0.03),\n", " np.arange(0, 0.22, 0.02),\n", " np.arange(0, 0.11, 0.01),\n", " np.arange(0, 0.044, 0.004)]\n", " parameter_sweep(TemporalDifferenceLambda, 50, lambdas, alphas)\n", "\n", " plt.show()" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": "100%|██████████| 50/50 [00:51<00:00, 1.02s/it]\n" }, { "data": { "image/png": "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\n", "image/svg+xml": "\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n", "text/plain": "
" }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "figure_12_6()" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "# Figure 12.8: True online TD(lambda) algorithm\n", "def figure_12_8():\n", " lambdas = [0.0, 0.4, 0.8, 0.9, 0.95, 0.975, 0.99, 1]\n", " alphas = [np.arange(0, 1.1, 0.1),\n", " np.arange(0, 1.1, 0.1),\n", " np.arange(0, 1.1, 0.1),\n", " np.arange(0, 1.1, 0.1),\n", " np.arange(0, 1.1, 0.1),\n", " np.arange(0, 0.88, 0.08),\n", " np.arange(0, 0.44, 0.04),\n", " np.arange(0, 0.11, 0.01)]\n", " parameter_sweep(TrueOnlineTemporalDifferenceLambda, 50, lambdas, alphas)\n", "\n", " plt.show()" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": "100%|██████████| 50/50 [00:59<00:00, 1.23s/it]\n" }, { "data": { "image/png": "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\n", "image/svg+xml": "\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n", "text/plain": "
" }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "figure_12_8()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 第二个案例\n", "\n", "应用Sarsa(lambda),使用不同类型的迹。" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "#######################################################################\n", "# Copyright (C) #\n", "# 2017-2018 Shangtong Zhang(zhangshangtong.cpp@gmail.com) #\n", "# Permission given to modify the code as long as you keep this #\n", "# declaration at the top #\n", "#######################################################################\n", "\n", "import numpy as np\n", "import matplotlib\n", "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "from math import floor\n", "from tqdm import tqdm\n", "\n", "#######################################################################\n", "# Following are some utilities for tile coding from Rich.\n", "# To make each file self-contained, I copied them from\n", "# http://incompleteideas.net/tiles/tiles3.py-remove\n", "# with some naming convention changes\n", "#\n", "# Tile coding starts\n", "class IHT:\n", " \"Structure to handle collisions\"\n", " def __init__(self, size_val):\n", " self.size = size_val\n", " self.overfull_count = 0\n", " self.dictionary = {}\n", "\n", " def count(self):\n", " return len(self.dictionary)\n", "\n", " def full(self):\n", " return len(self.dictionary) >= self.size\n", "\n", " def get_index(self, obj, read_only=False):\n", " d = self.dictionary\n", " if obj in d:\n", " return d[obj]\n", " elif read_only:\n", " return None\n", " size = self.size\n", " count = self.count()\n", " if count >= size:\n", " if self.overfull_count == 0: print('IHT full, starting to allow collisions')\n", " self.overfull_count += 1\n", " return hash(obj) % self.size\n", " else:\n", " d[obj] = count\n", " return count\n", "\n", "def hash_coords(coordinates, m, read_only=False):\n", " if isinstance(m, IHT): return m.get_index(tuple(coordinates), read_only)\n", " if isinstance(m, int): return hash(tuple(coordinates)) % m\n", " if m is None: return coordinates\n", "\n", "def tiles(iht_or_size, num_tilings, floats, ints=None, read_only=False):\n", " \"\"\"returns num-tilings tile indices corresponding to the floats and ints\"\"\"\n", " if ints is None:\n", " ints = []\n", " qfloats = [floor(f * num_tilings) for f in floats]\n", " tiles = []\n", " for tiling in range(num_tilings):\n", " tilingX2 = tiling * 2\n", " coords = [tiling]\n", " b = tiling\n", " for q in qfloats:\n", " coords.append((q + b) // num_tilings)\n", " b += tilingX2\n", " coords.extend(ints)\n", " tiles.append(hash_coords(coords, iht_or_size, read_only))\n", " return tiles\n", "# Tile coding ends\n", "#######################################################################\n", "\n", "# all possible actions\n", "ACTION_REVERSE = -1\n", "ACTION_ZERO = 0\n", "ACTION_FORWARD = 1\n", "# order is important\n", "ACTIONS = [ACTION_REVERSE, ACTION_ZERO, ACTION_FORWARD]\n", "\n", "# bound for position and velocity\n", "POSITION_MIN = -1.2\n", "POSITION_MAX = 0.5\n", "VELOCITY_MIN = -0.07\n", "VELOCITY_MAX = 0.07\n", "\n", "# discount is always 1.0 in these experiments\n", "DISCOUNT = 1.0\n", "\n", "# use optimistic initial value, so it's ok to set epsilon to 0\n", "EPSILON = 0\n", "\n", "# maximum steps per episode\n", "STEP_LIMIT = 5000\n", "\n", "# take an @action at @position and @velocity\n", "# @return: new position, new velocity, reward (always -1)\n", "def step(position, velocity, action):\n", " new_velocity = velocity + 0.001 * action - 0.0025 * np.cos(3 * position)\n", " new_velocity = min(max(VELOCITY_MIN, new_velocity), VELOCITY_MAX)\n", " new_position = position + new_velocity\n", " new_position = min(max(POSITION_MIN, new_position), POSITION_MAX)\n", " reward = -1.0\n", " if new_position == POSITION_MIN:\n", " new_velocity = 0.0\n", " return new_position, new_velocity, reward\n", "\n", "# accumulating trace update rule\n", "# @trace: old trace (will be modified)\n", "# @activeTiles: current active tile indices\n", "# @lam: lambda\n", "# @return: new trace for convenience\n", "def accumulating_trace(trace, active_tiles, lam):\n", " \"\"\"\n", " 注意此处 w 还是由瓦片编码,\n", " 因此对应的迹 z 也是对应维度的\n", " \"\"\"\n", " trace *= lam * DISCOUNT\n", " trace[active_tiles] += 1\n", " return trace\n", "\n", "# replacing trace update rule\n", "# @trace: old trace (will be modified)\n", "# @activeTiles: current active tile indices\n", "# @lam: lambda\n", "# @return: new trace for convenience\n", "def replacing_trace(trace, activeTiles, lam):\n", " \"\"\"\n", " np.aragnge() 产生了索引序列\n", " 如果上述数字在 activeTiles 中出现过 True\n", " np.in1d() 返回 [boolean] 列表\n", " \"\"\"\n", " active = np.in1d(np.arange(len(trace)), activeTiles)\n", " trace[active] = 1\n", " \"\"\"\n", " ~ 按位取反,~3=-4\n", " \"\"\"\n", " trace[~active] *= lam * DISCOUNT\n", " return trace\n", "\n", "# replacing trace update rule, 'clearing' means set all tiles corresponding to non-selected actions to 0\n", "# @trace: old trace (will be modified)\n", "# @activeTiles: current active tile indices\n", "# @lam: lambda\n", "# @clearingTiles: tiles to be cleared\n", "# @return: new trace for convenience\n", "def replacing_trace_with_clearing(trace, active_tiles, lam, clearing_tiles):\n", " active = np.in1d(np.arange(len(trace)), active_tiles)\n", " trace[~active] *= lam * DISCOUNT\n", " trace[clearing_tiles] = 0\n", " trace[active] = 1\n", " return trace\n", "\n", "# dutch trace update rule\n", "# @trace: old trace (will be modified)\n", "# @activeTiles: current active tile indices\n", "# @lam: lambda\n", "# @alpha: step size for all tiles\n", "# @return: new trace for convenience\n", "def dutch_trace(trace, active_tiles, lam, alpha):\n", " coef = 1 - alpha * DISCOUNT * lam * np.sum(trace[active_tiles])\n", " trace *= DISCOUNT * lam\n", " trace[active_tiles] += coef\n", " return trace\n", "\n", "# wrapper class for Sarsa(lambda)\n", "class Sarsa:\n", " # In this example I use the tiling software instead of implementing standard tiling by myself\n", " # One important thing is that tiling is only a map from (state, action) to a series of indices\n", " # It doesn't matter whether the indices have meaning, only if this map satisfy some property\n", " # View the following webpage for more information\n", " # http://incompleteideas.net/sutton/tiles/tiles3.html\n", " # @maxSize: the maximum # of indices\n", " def __init__(self, step_size, lam, trace_update=accumulating_trace, num_of_tilings=8, max_size=2048):\n", " self.max_size = max_size\n", " self.num_of_tilings = num_of_tilings\n", " self.trace_update = trace_update\n", " self.lam = lam\n", "\n", " # divide step size equally to each tiling\n", " self.step_size = step_size / num_of_tilings\n", "\n", " self.hash_table = IHT(max_size)\n", "\n", " # weight for each tile\n", " self.weights = np.zeros(max_size)\n", "\n", " # trace for each tile\n", " self.trace = np.zeros(max_size)\n", "\n", " # position and velocity needs scaling to satisfy the tile software\n", " self.position_scale = self.num_of_tilings / (POSITION_MAX - POSITION_MIN)\n", " self.velocity_scale = self.num_of_tilings / (VELOCITY_MAX - VELOCITY_MIN)\n", "\n", " # get indices of active tiles for given state and action\n", " def get_active_tiles(self, position, velocity, action):\n", " # I think positionScale * (position - position_min) would be a good normalization.\n", " # However positionScale * position_min is a constant, so it's ok to ignore it.\n", " active_tiles = tiles(self.hash_table, self.num_of_tilings,\n", " [self.position_scale * position, self.velocity_scale * velocity],\n", " [action])\n", " return active_tiles\n", "\n", " # estimate the value of given state and action\n", " def value(self, position, velocity, action):\n", " if position == POSITION_MAX:\n", " return 0.0\n", " active_tiles = self.get_active_tiles(position, velocity, action)\n", " return np.sum(self.weights[active_tiles])\n", "\n", " # learn with given state, action and target\n", " def learn(self, position, velocity, action, target):\n", " active_tiles = self.get_active_tiles(position, velocity, action)\n", " estimation = np.sum(self.weights[active_tiles])\n", " delta = target - estimation\n", " if self.trace_update == accumulating_trace or self.trace_update == replacing_trace:\n", " self.trace_update(self.trace, active_tiles, self.lam)\n", " elif self.trace_update == dutch_trace:\n", " self.trace_update(self.trace, active_tiles, self.lam, self.step_size)\n", " elif self.trace_update == replacing_trace_with_clearing:\n", " clearing_tiles = []\n", " for act in ACTIONS:\n", " if act != action:\n", " \"\"\"\n", " 如果这个 s 中, a 不是当前选择的动作,\n", " 删去这个 (s, a) 对应的瓦片\n", " \"\"\"\n", " clearing_tiles.extend(self.get_active_tiles(position, velocity, act))\n", " self.trace_update(self.trace, active_tiles, self.lam, clearing_tiles)\n", " else:\n", " raise Exception('Unexpected Trace Type')\n", " self.weights += self.step_size * delta * self.trace\n", "\n", " # get # of steps to reach the goal under current state value function\n", " def cost_to_go(self, position, velocity):\n", " costs = []\n", " for action in ACTIONS:\n", " costs.append(self.value(position, velocity, action))\n", " return -np.max(costs)\n", "\n", "# get action at @position and @velocity based on epsilon greedy policy and @valueFunction\n", "def get_action(position, velocity, valueFunction):\n", " if np.random.binomial(1, EPSILON) == 1:\n", " return np.random.choice(ACTIONS)\n", " values = []\n", " for action in ACTIONS:\n", " values.append(valueFunction.value(position, velocity, action))\n", " return np.argmax(values) - 1\n", "\n", "# play Mountain Car for one episode based on given method @evaluator\n", "# @return: total steps in this episode\n", "def play(evaluator):\n", " position = np.random.uniform(-0.6, -0.4)\n", " velocity = 0.0\n", " action = get_action(position, velocity, evaluator)\n", " steps = 0\n", " while True:\n", " next_position, next_velocity, reward = step(position, velocity, action)\n", " next_action = get_action(next_position, next_velocity, evaluator)\n", " steps += 1\n", " target = reward + DISCOUNT * evaluator.value(next_position, next_velocity, next_action)\n", " evaluator.learn(position, velocity, action, target)\n", " position = next_position\n", " velocity = next_velocity\n", " action = next_action\n", " if next_position == POSITION_MAX:\n", " break\n", " if steps >= STEP_LIMIT:\n", " print('Step Limit Exceeded!')\n", " break\n", " return steps" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "# figure 12.10, effect of the lambda and alpha on early performance of Sarsa(lambda)\n", "def figure_12_10():\n", " runs = 30\n", " episodes = 50\n", " alphas = np.arange(1, 8) / 4.0\n", " lams = [0.99, 0.95, 0.5, 0]\n", "\n", " steps = np.zeros((len(lams), len(alphas), runs, episodes))\n", " for lamInd, lam in enumerate(lams):\n", " for alphaInd, alpha in enumerate(alphas):\n", " for run in tqdm(range(runs)):\n", " evaluator = Sarsa(alpha, lam, replacing_trace)\n", " for ep in range(episodes):\n", " step = play(evaluator)\n", " steps[lamInd, alphaInd, run, ep] = step\n", "\n", " # average over episodes\n", " steps = np.mean(steps, axis=3)\n", "\n", " # average over runs\n", " steps = np.mean(steps, axis=2)\n", "\n", " for lamInd, lam in enumerate(lams):\n", " plt.plot(alphas, steps[lamInd, :], label='lambda = %s' % (str(lam)))\n", " plt.xlabel('alpha * # of tilings (8)')\n", " plt.ylabel('averaged steps per episode')\n", " plt.ylim([180, 300])\n", " plt.legend()\n", "\n", " plt.show()" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": "20%|██ | 6/30 [00:14<00:58, 2.44s/it]Step Limit Exceeded!\n100%|██████████| 30/30 [01:15<00:00, 2.67s/it]\n100%|██████████| 30/30 [01:02<00:00, 2.18s/it]\n100%|██████████| 30/30 [01:03<00:00, 2.16s/it]\n100%|██████████| 30/30 [01:02<00:00, 2.08s/it]\n100%|██████████| 30/30 [01:02<00:00, 2.12s/it]\n 70%|███████ | 21/30 [00:57<00:23, 2.65s/it]Step Limit Exceeded!\nStep Limit Exceeded!\nStep Limit Exceeded!\nStep Limit Exceeded!\nStep Limit Exceeded!\nStep Limit Exceeded!\nStep Limit Exceeded!\nStep Limit Exceeded!\nStep Limit Exceeded!\nStep Limit Exceeded!\nStep Limit Exceeded!\n100%|██████████| 30/30 [01:41<00:00, 3.20s/it]\n 0%| | 0/30 [00:00\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n", "text/plain": "
" }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "figure_12_10()" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "# figure 12.11, summary comparision of Sarsa(lambda) algorithms\n", "# I use 8 tilings rather than 10 tilings\n", "def figure_12_11():\n", " traceTypes = [dutch_trace, replacing_trace, replacing_trace_with_clearing, accumulating_trace]\n", " alphas = np.arange(0.2, 2.2, 0.2)\n", " episodes = 20\n", " runs = 30\n", " lam = 0.9\n", " rewards = np.zeros((len(traceTypes), len(alphas), runs, episodes))\n", "\n", " for traceInd, trace in enumerate(traceTypes):\n", " for alphaInd, alpha in enumerate(alphas):\n", " for run in tqdm(range(runs)):\n", " evaluator = Sarsa(alpha, lam, trace)\n", " for ep in range(episodes):\n", " if trace == accumulating_trace and alpha > 0.6:\n", " \"\"\"\n", " alpha 大于 0.6 的积累迹,不计算\n", " 直接给最差的步数\n", " \"\"\"\n", " steps = STEP_LIMIT\n", " else:\n", " steps = play(evaluator)\n", " rewards[traceInd, alphaInd, run, ep] = -steps\n", "\n", " # average over episodes\n", " rewards = np.mean(rewards, axis=3)\n", "\n", " # average over runs\n", " rewards = np.mean(rewards, axis=2)\n", "\n", " for traceInd, trace in enumerate(traceTypes):\n", " plt.plot(alphas, rewards[traceInd, :], label=trace.__name__)\n", " plt.xlabel('alpha * # of tilings (8)')\n", " plt.ylabel('averaged rewards pre episode')\n", " plt.ylim([-550, -150])\n", " plt.legend()\n", "\n", " plt.show()" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": "100%|██████████| 30/30 [00:41<00:00, 1.38s/it]\n100%|██████████| 30/30 [00:33<00:00, 1.18s/it]\n100%|██████████| 30/30 [00:28<00:00, 1.04it/s]\n100%|██████████| 30/30 [00:27<00:00, 1.05it/s]\n100%|██████████| 30/30 [00:27<00:00, 1.11it/s]\n100%|██████████| 30/30 [00:28<00:00, 1.07it/s]\n100%|██████████| 30/30 [00:26<00:00, 1.12it/s]\n100%|██████████| 30/30 [00:28<00:00, 1.08s/it]\n100%|██████████| 30/30 [00:27<00:00, 1.17it/s]\n100%|██████████| 30/30 [00:28<00:00, 1.11it/s]\n100%|██████████| 30/30 [01:10<00:00, 2.36s/it]\n100%|██████████| 30/30 [00:47<00:00, 1.55s/it]\n100%|██████████| 30/30 [00:39<00:00, 1.25s/it]\n100%|██████████| 30/30 [00:36<00:00, 1.18s/it]\n100%|██████████| 30/30 [00:35<00:00, 1.11s/it]\n100%|██████████| 30/30 [00:35<00:00, 1.31s/it]\n100%|██████████| 30/30 [00:34<00:00, 1.20s/it]\n100%|██████████| 30/30 [00:33<00:00, 1.02s/it]\n100%|██████████| 30/30 [00:34<00:00, 1.18s/it]\n100%|██████████| 30/30 [00:34<00:00, 1.14s/it]\n100%|██████████| 30/30 [01:39<00:00, 3.31s/it]\n100%|██████████| 30/30 [01:09<00:00, 2.23s/it]\n100%|██████████| 30/30 [01:01<00:00, 2.04s/it]\n100%|██████████| 30/30 [00:55<00:00, 1.77s/it]\n100%|██████████| 30/30 [00:50<00:00, 1.75s/it]\n100%|██████████| 30/30 [00:47<00:00, 1.53s/it]\n100%|██████████| 30/30 [00:45<00:00, 1.43s/it]\n100%|██████████| 30/30 [00:43<00:00, 1.52s/it]\n100%|██████████| 30/30 [00:51<00:00, 2.13s/it]\n 40%|████ | 12/30 [00:21<00:32, 1.82s/it]Step Limit Exceeded!\nStep Limit Exceeded!\nStep Limit Exceeded!\n100%|██████████| 30/30 [00:56<00:00, 1.71s/it]\n100%|██████████| 30/30 [00:44<00:00, 2.00s/it]\n100%|██████████| 30/30 [00:45<00:00, 1.23s/it]\n100%|██████████| 30/30 [00:00<00:00, 15040.54it/s]\n100%|██████████| 30/30 [00:00<00:00, 30109.86it/s]\n100%|██████████| 30/30 [00:00<00:00, 30037.99it/s]\n100%|██████████| 30/30 [00:00\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n", "text/plain": "
" }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "figure_12_11()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ] }