{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Random numbers\n",
"Module 4 of Phys212/Biol212 class\n",
"### by Ilya Nemenman, 2016-2019\n",
"\n",
"## General notes\n",
"In this notebook, we explore stochastic models, including generation of (pseudo)-random numbers and a variety of models and calculations that employ them. In general, all methods involving generation of random numbers are called *Monte Carlo* methods, referring to the Monte Carlo casino in Monaco, arguably the most famos casino in the world. The history of this term is rather curious. As most modern computational methods we use, claculations with random numbers trace their history to the Manhattan project: making the nuclear bomb in Los Alamos, New Mexico, during the second world war. People like von Neumann, Ulam, Metropolis, Bethe, Feynman -- whose names are familiar to everyone who knows even a bit of modern physics or advanced math -- worked there at the time and are responsible for the bulk of early ideas in computational physics. However, this was a secret laboratory, and projects, whether they involved production of fissile materials or development of algorithms, required codenames. The story goes that the name *Monte Carlo* was suggested by Metropolis as a code name for various stochastic models that were developed at the time by von Neumann and Ulam. And the name stuck.\n",
"\n",
"A good introduction to probability theory, one of my favorites, but more on the mathematical side, is in the book \n",
"__[Introduction to Probability](http://www.dartmouth.edu/~chance/teaching_aids/books_articles/probability_book/pdf.html)__ by CM Grinstead and JL Snell."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Why do we need random numbers?\n",
"Hopefully an answer to this question will become clearer as we progress through this notebook and see a bunch of their applications. However, even now it is useful to break down various problems where random numbers are used into a few geenral classes.\n",
"\n",
"First, some processes are **fundamentally random**. Here I am largely talking about quantum mechanics, where all experimental evidence suggests that the randomness is intrinsic and unavoidable. Second, sometimes we simply do not know enough information about the underlying system, and we choose to model this **absence of knowledge** or as randomness, as well. Third, there are processes that lie somewhere invetween these two extremes. For example, motion of molecules of air, position of individual bacteria in a single cell tracking experiment, times of interactions of molecules in chemical processes, or times of emission of action potentials by neurons can be described by deterministic Newton's equations. However, these equations give rise to **chaotic** motion (as we discussed in one of the projects in Module 2), which is also not predictable and can be modeled stochastically. Finally, there are some deterministic calculations that are **easier done** using random numbers than using deterministic approaches (e.g., calculating area of a complex object). We will discuss examples of these in subsequent lectures.\n",
"\n",
">### Your turn\n",
"Think of various physical, chemical, biological processes that involve randomness (e.g., mutations and recombinations in biology, turbulence in physics, and so on) and decide to which of the classes of uses of random numbers deined above they belong.\n",
"\n",
"A good example of a random (or stochastic) process that I find it useful to keep in mind when studying various concepts involved in this module is that of a randomly moving microscopic particle that changes it directions of motion at random times, reorienting itself randomly. Many examples fall under this umbrells. Brownian motion is one. Interestingly, such motion is relevant for living systems too. For example, cells of *E. coli* bacteria also move similarly, reorienting their direction of motion every few seconds once in a while. Note to self: maybe focus on another example of random walkers. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Introducing concepts of randomness\n",
"Our introduction here is deliberately a bit sloppy, with no hard mathematical definitions and proofs. Those interested can find them in the textbook I linked.\n",
"\n",
"To define the necessary probabilistic concepts, we need \n",
" - To define a space of outcomes that a random variable can take (e.g., head or tails, six sides of a dice, etc.). If a random variable is denoted by a small Latin letter, then its space of outcomes is typically denoted by the capital version of the same letter, e.g., $x$ and $X$.\n",
" - Then we define a probability of a certain outcome $x$ as a limit of frequencies after many random draws, or events. That is, if after $N$ draws, the outcome happened $n_x$ times, then it's frequency is $f_x=n_x/N$, and the probability is $P(x)\\equiv P_x=\\lim_{N\\to\\infty}f_x=\\lim_{N\\to\\infty}\\frac{n_x}{N}$ (note that we will be using the parentheses and the sub-index notation interchangeably for random variables that have discrete space of possible outcomes).\n",
" \n",
"The set of numbers $P(x)$ is known as a *probability distribution* or a *probability distribution function*. Probability distributions satisfy the following properties, which follow from their definition of limits of frequencies:\n",
" - nonnegativity: $P_i\\ge0$;\n",
" - unit normalization: $\\sum_{i=1}^N P_i=1$;\n",
" - nesting: if $A\\subset B$ then $P(A)\\le P(B)$;\n",
" - additivity (for non-disjoint events): $P(A\\cup B)=P(A)+P(B)-P(A\\cap B)$;\n",
" - complementarity $P(not\\, A)=1-P(A)$.\n",
"\n",
"### What if we are studying more than one random variable?\n",
"Bivariate distributions (a special case of multivariate ones) $P(x,y)$ defined the probability of both events happening. It contains all of the information about the variables, including\n",
" - The marginal distributions: $P(x)=\\sum_{y\\in Y} P(x,y)$ or $P(y)=\\sum_{x\\in X} P(x,y)$ \n",
" - The conditional distributions, which can be defined as $P(y|x)=P(x,y)/P(x)$ or $P(x|y)=P(x,y)/P(y)$, so that the probability of both events is the probability of the first event happening, and then the probability of the second happening given that the first one has happened.\n",
"The conditional distributions are related using the Bayes theorem, which says $P(x,y)=P(x|y)P(y)=P(y|x)P(x)$, so that $P(x|y)=\\frac{P(y|x)P(x)}{P(y)}$. \n",
"\n",
"We can now formalize the intuitive concept of dependence among variables. Two random variables are considered to be statistically independent if and only if $P(x,y)=P(x)P(y)$, or, equivalently, $P(x|y)=P(x)$ or $P(y|x)=P(y)$.\n",
"\n",
"### Characterizing probability distributions\n",
"Probability distributions are typically characterized by what's known as *expectation values*, or the anticipated averaged of various functions of the random variables. That is, the expectation of $f(x)$ is defined as $E(f(x))=\\langle f(x)\\rangle=\\sum_{x\\in X} f(x)P(x)$. Because calculating expectations involves summation, expectation values add, whether for the same or for different variables, so that $E(f(x)+g(x))=E(f(x))+E(g(x))$, $E(f(x)+g(y))=E(f(x))+E(g(y))$. \n",
"\n",
"Particular expectation values and their combinations are very useful and are used commonly to characterize probability distributions. You probably have seen them in your various lab classes:\n",
" - The mean, which characterzies the center of mass of a distribution: $\\mu=\\langle x\\rangle=\\mu$.\n",
" - The variance, which characterizes the spread of the distribution: $\\sigma^2=\\langle (x-\\mu)^2\\rangle=\\langle x^2\\rangle - \\langle x\\rangle^2$. The square root of the variance, $\\sigma$, is known as a standard deviation.\n",
" - The covariance between two variables $c_{xy} = \\langle(x-\\mu_x)(y-\\mu_y)\\rangle = \\langle xy\\rangle - \\langle x\\rangle \\langle y \\rangle$. \n",
" \n",
">### Track 2: Examples of specific discrete random variables \n",
"Note to self: Expand this section by saying something about every specific distribution. \n",
"Some discrete probability distributions will appear often in this class, and also in many other cases where you will be studying stochastic processes. We will introduce them here, but will wait to study them for a few lectures, until we return to some of them and figure out how to generate random numbers from these distributions. We will build all of these examples from the simplest case, the coin-toss, also known as the Bernoulli distribution, step-by-step. However, while working with coins, it is useful to keep some physics in mind. A coin coming heads up could be a mutation happening, an action potential generated in a neuron, or a ligand molecule grabbed by a bacterial receptor.\n",
"- Bernoulli distribution: $P(0)=q$ is the probability of heads up, and $P(1)=p$ is the probability of heads down, $p+q=1$. $\\mu=p$, $\\sigma^2=pq$.\n",
"- Binomial distribution: the number $n$ of heads out of $N$ trials, $P(n|N,p)={m \\choose n}p^nq^{N-n}$. $\\mu=Np$, $\\sigma^2=Npq$.\n",
"- Geometric distribution: the number of trials to the next head, $P(n|p)=pq^{n-1}$. $\\mu=1/p$, $\\sigma^2=q/p^2$.\n",
"- Poisson: the number of heads out of $N$ trials, when the probability of a head is small. This is the $p\\to0$, and $pN\\to {\\rm const}$ limit of the binomial distribution: $P(n|\\lambda=pN)= \\frac{e^{-\\lambda}\\lambda^n}{n!}$. $\\mu=\\lambda$, $\\sigma^2=\\lambda$.\n",
"Again, for all of these distributions we can think of the number of mutations in a bacterium, or the number of spikes produced by a neuron, or a number of molecules captured by a cell.\n",
"\n",
"### Continuous random variables\n",
"Some random variables that we discussed were discrete, like heads or tails of a coin toss, or existence or non-existence of a mutation. However, other random variables can be continuous. For example, the heigh of people in the room, or a position of a bacterium in an experiment, or a time to neural action potential -- all of these variables are, in principle, continuous. It makes little sense to ask what is the probability that an individual has *exactly* a certain height; every two people in the room will have the height which is different, if only by a bit. it does make sense, however, to ask what is the probability that the height of a person is close to a certain number $x_0$, within $\\Delta x$ from it. Clearly, in the limit of small $\\Delta x$, this probability will be proportional to $\\Delta x$ itself, $P(x\\in[x_0,x_0+\\Delta x])=p(x_0)\\Delta x$, so that the probability of being in a certain interval is proportional to its length. Thus, having defined the set of possible outcomes of an experiment as a real number, we can define a *probability density*, as a double limit -- a limit of frequencies of observing a certain interval after many independent draws, and the limit of taking the interval size small, $\\Delta x\\to0$:\n",
"$$p(x_0)=\\lim_{\\Delta x\\to\\infty}\\lim_{N\\to\\infty}\\frac{f_{[x_0,x_0+\\Delta x]}}{\\Delta x}=\\lim_{\\Delta x\\to\\infty}\\lim_{N\\to\\infty}\\frac{n_{[x_0,x_0+\\Delta x]}}{N\\Delta x}.$$\n",
"We will denote probability densities by small $p$ and probability distributions by capital $P$ to avoid confusion.\n",
"\n",
"Probability densities satisfy most of the same properties that we discussed for probability distributions. For example, they must normalize to one. The usual summation over possible states now becomes an integral, $\\int dx p(x) =1$. One distinction of probabilities is that probability densities can actually be larger than one (as long as they normalize). Joint, marginal, and conditional probability densities can be defines just like probabilities. Expectation values and, in particular, moments can be defined similarly, by replacing summations with integrals.\n",
"\n",
"Additionally, for continuous variables (or more generally, for continuous or discrete ordinal variables), one can define the cumulative distribution, which is the probability that a random draw will be smaller than $x$, $C(x)=\\int_{-\\infty}^x p(x')dx'$.\n",
"\n",
">### Track 2: Examples of specific contiuous random variables \n",
"Note to self: expand this section by saying mote about each specific distribution. \n",
"Just like for the discrete case, there are some continuous distributions that happen more commonly than others. We introduce them here briefly, and will return to some of them later in the course.\n",
" - Uniform probability density between 0 and $T$. $p(x)=1/T,\\; 0\\le t\\le T$. $\\mu_{\\rm uni}=T/2, \\, \\sigma^2_{\\rm uni}=\\frac{1}{12}T^2$. \n",
" - Exponential probability density: distribution of time to the next turn even for a randomly moving particle, which has am equal probability to turn at any time. You can think of the exponential density as the limit of the geometric distribution that has very many time steps, and small probability of turning during any particular time step. As a result, we get $p(t)=r e^{-rt}$. One often parameterizes the distribution with $t_0=1/r$ instead of r. $\\mu_{\\rm exp}=1/r,\\, \\sigma^2_{\\rm exp}=1/r^2$. Notice also the connection between exponential, uniform, and Poisson random variables: an event that happens at a uniform rate happens with an exponential waiting time between two successive events, and a number of such events in a fixed period of time is Poisson.\n",
" - Finally, taking a Poisson distribution with the large parameter $\\lambda$, we see that it starts looking similarly to another probability distribution that many of you have seen before, namely the normal, or the Gaussian distribution: $p(x) = \\frac{1}{\\sqrt{2\\pi\\sigma^2}}\\exp \\left[-\\frac{(x-\\mu)^2}{2\\sigma^2}\\right]$ (for the normal distribution resulting from the Poisson, we have a specific relation between the mean and the variance; namely, $\\mu=\\sigma^2$.\n",
" - One can also define a multivariate extension of the normal distribution, which we will omit here. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Random numbers in Python\n",
"\n",
"Simulations with random variables on a digital, deterministic computer are not trivial. And the first question one should as: How can we even generate random numbers on a computer that is designed to perform deterministic arithmetic operations on binary sequences? In fact, generating random numbers is a much harder task than one may think. Even we, humans, are not good at it. In fact __[you can try it yourself!](http://faculty.rhodes.edu/wetzel/random/mainbody.html)__ \n",
">### Your Turn\n",
"Complete the exercises on the web page linked above. Have you been able to generate good sequences of random numbers?\n",
"\n",
"And yet, stochastic simulations are crucial for many technological, scientific, military, or social applications. Thus scientists, starting with the members of the Manhattan Projects, understanding that generation of true random numbers is impossible on a computer, spent countless hours on developing methods for generation of determnistic *pseudorandom* numbers, that is, sequences of random numbers that can be produced by a deterministic computation, but nonetheless approximate properties of sequences of true independent random numbers. Modern computer systems have really good pseudorandom generators built in them, so that we do not have to worry much about the qualities of random numbers we use. However, this wasn't always the case. Note to self: expand by adding anekdotes about poor random number generators and companies selling random numbers. \n",
"\n",
"From now on, I will drop the prefix *pseudo* when discussing generation of random numbers on a digital computer, and it should be understood that **pseudo-random numbers are the only ones we can actually generate**, and we always mean pseudo-random when discussing implementation of stochastic simulations on a computer. As always, in this module we will introduce examples of some of the simplest good pseudorandom number generators, and then revert to using much better ones that are built-in into our Python distribution. Before doing this, however, let's first convince ourselves that Python, indeed, has a good pseudorandom number generator in its disposal. This generator is found in the module `numpy.random`, which we now import as `nprnd`."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"#Initialization\n",
"import numpy as np\n",
"import numpy.random as nprnd #note the new module we will be using\n",
"import matplotlib.pyplot as plt\n",
"\n",
"%matplotlib inline "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
">### Your turn\n",
"Do `dir(nprnd)` and explore which new functions `nprnd` provides. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The simplest random numbers that our computers can generate is the uniform *standard* random numbers, where *standard* means that the number is distributed in the interval $[0,1)$. Such numbers $x$ are denoted as $x\\sim{\\cal U}(1)$. These randoms are generated in Python by `nprnd.random()`. Below are a few examples of using this function. "
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[0.70964208 0.04598083 0.6488628 0.87028136 0.77722072]\n",
"[0.04422834 0.95944502 0.64229882 0.6981167 0.33977799]\n",
"[0.30235206 0.26788876 0.33750496 0.30970489 0.08880042]\n",
"[[0.22242383 0.4216211 0.36712112]\n",
" [0.92766396 0.33047422 0.66554334]\n",
" [0.97049351 0.13542694 0.01720777]\n",
" [0.00420147 0.27837086 0.69695957]\n",
" [0.15667204 0.47033035 0.68502789]]\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# Examples of random number generation using built-in routines. The r1 variable should be pointing at an \n",
"# array of 5 random numbers. We do the same calls multiple times to illustrate that the numbers are, indeed,\n",
"# seeminly random (or rather pseudo-random). Type help(nprnd.random) to understand which arguments are \n",
"# expected by this function. \n",
"r1 = nprnd.random(5)\n",
"print(r1)\n",
"r1 = nprnd.random(5)\n",
"print(r1)\n",
"r1 = nprnd.random(5)\n",
"print(r1)\n",
"\n",
"# The following command generates a 5x3 matrix of pseudo-random numbers.\n",
"r2 = nprnd.random((5, 3))\n",
"print(r2)\n",
"\n",
"# Finally, the following command generates n_rand pseudo-random numbers and histograms them into 50 bins,\n",
"# illustrating that the numbers we generate are, indeed, uniformely distributed.\n",
"n_rands = int(1e3) # how many random numbers to generate\n",
"x = nprnd.random(n_rands)\n",
"plt.hist(x, bins=50)\n",
"plt.xlabel('number')\n",
"plt.ylabel('frequency')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"In particular, the code above generate many uniform random numbers and histogrammed them to show that the distribution of the numbers is indeed nearly uniform, safe for random fluctuations.\n",
"\n",
">### Your turn\n",
"Experiment with the parameter `n_rands` in the code above and convince yourself that as it increases, the histogram becomes more and more uniform. \n",
"\n",
"Most pseudo-random generators fail not because they do not distribute the numbers uniformely in the interval $[0,1)$, but rather because they produce correlations among the generated numbers in a sequence. For example, making a scatter plot of two consecutive generated numbers against each other, $x_{i+1}$ vs $x_i$, may show some structure indicative of dependence. We can plot the pairs of consecutive random numbers from the built-in generator against each other to see that no structure is visible. In reality, the generator used by Python, known as the Mersenne Twister 32 bit generator, as of the writing of these notes has been proven to show no correlations in seqeunces of at least 623 numbers in a row. It has been certified to pass some of the most stringent tests for randomness."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEKCAYAAAD9xUlFAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJzsvXuUXdV5J/j7qupIuiXbKtFWVpuyBNghUlsmqELFKCFrYsUJckyAGuNYJnjl5TGzMnEyyKRm4dUMCELaSjQe6Ey7u8Ok3XEMY4tHpiIMidyrUTq9cESQuiQrcku9MO+L11gJKjqoStKtqj1/3NpX++67v72/fc4+91ZR57cWC9W9556zz3587wcppVChQoUKFSoAQF+vB1ChQoUKFRYPKqZQoUKFChVaqJhChQoVKlRooWIKFSpUqFChhYopVKhQoUKFFiqmUKFChQoVWqiYQoUKFSpUaKFiChUqVKhQoYWKKVSoUKFChRYGej2AWLz73e9Wl156aa+HUaFChQpLCocPH/57pdS60HVLjilceumlOHToUK+HUaFChQpLCkT0suS6ynxUoUKFChVaqJhChQoVKlRooWIKFSpUqFChhYopVKhQoUKFFkpjCkT0FSL6ARH9HfM9EdEfEtHzRPQdIvqxssZSoUKFChVkKDP66E8A/CsAf8p8//MALl/472oA/2bh/xUqlIaJyTr27D+J16dmcPFQDePbN2JsZLjXw1rSqOb07YXSmIJS6q+J6FLPJTcC+FPVbP12kIiGiOg9SqnvlzWmCssbE5N1fOHPjmGmMQcAqE/N4At/dgwAKiKWE9Wcvv3QyzyFYQCvGn+/tvBZV5jCYpJuFtNY3k6w5/XMudkW8dKYacxhz/6TS3K+zfcbGsygFPDmTKOre2jP/pOLZk7fDudoMbxDL5kCOT5zNowmolsB3AoAGzZsKPzgvNJNGQu23CWtsg6Ba145vO75jrt3rw+u/X6npxut77q5h7i5Mz/vxnz5zhGA0p6f8t0WCy2gpvWmpJs3zUffVEp90PHdHwH4K6XU1xf+PgngwyHz0ejoqCqa0XzN7qedRGJ4qIZn7vgZ52/sBQOArJ+wesVAIemMG8tQLcPqlQNLWuoJwTWntawfX/z4FYXflZtXF3zrbqPMMcdA8n72e3EErAhhC52lbs2X7xydm50v5fmp3y0PXYoBER1WSo2GrutlSOo+AL+8EIW0FcCb3fInSKQbGy41uTGnMDXTgMIFrj4xWU8ylqmZBupTM4XuvdjBmR5u23sEW+75lvh9JybruGb307jsjidxze6nMTFZF0v/tawf49s3Fh7znv0nxfdIAcn72dL6F/7sWMeeunPimPNz6dyPb9+IWtbf9pk5p92aL985Kuv5Rd/N3rcck4/VZIuiNPMREX0dwIcBvJuIXgNwN4AMAJRS/xbAUwA+BuB5ANMAfq2ssdi4eKjmXICLh2rsbyQLw9lSfZIYNxbpvZcyfHM6NdPA+KNHW39z8+dSuccfPQoiwKUErx3MMLgivwaWR6AoA5J9Y+5njoA9dPCVjt/NNOZw+yNHsXPvEVw8VMO2Tetw4MQp55zp/9vrA/i1mZTzNTFZRx8R5iKsHimeX2QvTEzWMf7oUTTmm2P2raWPLpWBMqOPbg58rwD8ZlnP92F8+0an2ueTGKXEuz41g5F7v4W7r9/cUs19dkLXWDiUTXi6bSsPzWljXuGeJ47jbGOenT+nBjfvJg61rL+1LqnHrNAkgqaEXOY8hvaNvZ9j944msPWpmTbG4bJzj40Mt72fy6xio48IE5P1ZCYcF0OoZf1YlfW1+Vs0NKEtsufzCJcau/YdZ/epiVhNNgWWZUbz2MgwvvjxKzA8VAOhabML2QFdajKH09MNjD92tLXhfCqmayxrBzPnfcuUGDjzQpkmK8mcnp72q/9SYtdPlMSO7BtzfWoG448dxfijR0ufR3vfrB3MMFTL2P2ccu+ETCSuPW9jTqnoeXGZCbln6fW++/rNrHmr6J7ftqmzCnXWRyIiPjXTyag0YuhSGVhypbNTwZZuJNcDzQ0v0Rgac6olgbhgfi6RtMqWGHoRWqjve/sjR6NUf+DC/Ek1uHmlkrxHaB805jrfI+U85pVsYzRSCXzMWMqoTebiMw/quSZcCE/UBJx7H3u9Xfe/ZvfTuff8xGQde597tePz2H3sQgqnchEsW6aQB5p4SyNb9CaMVTE5O21ZxHlist4zJ5d+p/HHjnYQ1KyPsHrlgFOq0vMnJXbcfJtEdk0tAxEwNe2PJtP74LI7nnTHUDvgm0cpoS8SsigVavqFtnnf/pUyaqCTuNuhpOZ39qhmGnPseM3xcQIgtyb1qRlcdseT3rXYs/+kUwCYVxAxlbWDmdOsxVkJuomKKeSAlFDqTZVH6o/VZHzwER1NaDisqWW4ZvfTIoKVl4np6+554njroAzVMuy6YTMAeOfPZqBrahnOnJ9tO7DcfNtE1mQ+EoIbQ/x8TElK6Itqc3pP+UIpgc75thHav649b0r5JvqJvOZBiRnKvrdUq/atn2lOAjrXoqimdPf1mzsEoayfcPf1m4O/LRsVU8gBCTHI+qmNMPYq2SlEdHz236yPcOb8bItY2r8Nqfb6OglCTFA6f6tXDuAXrnxPR7QMgA7mFrJ9hwju+PaNuG3vkeC7+YhUDKFPFfkk2ZPmd77oI+n9t21ah8cP1zsYETf/0neyGQIBuOkqmUAl0TLttdB73qdLSZzYtubWT9QyOZvf9wKlJq+VgRTJa0Vx58QxZyifxtrBLHeUS+oIoFBCzKV3PMn+djDrw3Rj3vlbyYFKlXTjw50Tx/DwwVc6JEXTQcdJxhL7OgF4cfd17Pdb7vmW07zVT4R5pYJryJmgXM8tO7nJ3nuxzCDP/Thz1vACYfUJX5z2EZuMqMfIUUK9FpKoqqyPsOcXrwTg1nBtx3E3kyGlyWvLXlPIQ4QPnDjl/Lzo4Swjzd0nXU5M1tmDBcDJEPS4JBJy6lh0Vyy8zRCATumOk8Yl9vNQ1M6uGzYXOtQxPqe8pkgJXHsvFIoae7/HD9ed8+J7J84MNezR1mP2namhckxXr0VIs9Qmzxgn9mKqHaWxrJlCXiIcq8ZLGU/MBpHe00d0QmpwUaQKg+TWaeVAHzt+cy24dZlTyqsxSH0/QH7zYAyhL9MUKQkjjdmL0r0ca8oyvwsRcRuhMxNaC24fubQ6KY1YLMmQJpY1U8jLpWOkuxjGI90goXvaETVZPzkdrzsD0v7awawtcSwGsRKs78By6+Qbl7kW3HoNGwTs9akZrMr6cG52HvOqaf6R2qaLBAXEEnpX+LIkECAEKRGqT820kvR8yZnc2rgie3zz5/suhqFKziG3FkCTAXECiOvcS2lEkQS4srAsk9eAYmGYXALTmXOzHYkvMfVRuI1gf+67p52QMzXTAFSTwNsJMb6Np7N/b7pq2FnO1gV9XWzSTSiJKFZqIqCNMPjq84yNDOOZO34G9+/YAoCgk0znlMLjh+ulJe+ZiVh79p/E+PaNeHH3dXjmjp9JNm8xiCFC5nN8pjkOeqzjjx7FyL3faktGi0FMEuo9TxwXnUO9H/RaAGjNsQscEwrVhIq9rptYlppCKAwzdEBcIZRAkwDb0keMeiiVfHz35Mo+DK4YwORd1wafB7Q7yqUmpuECUmpIY+OkKZcmQwBu2bohl4kitW3XV5U0xmzJ3cdXUFAzmiJmLB/03OQ1zQHNfanPT17/mURLm5isO3MCgLDA4TOr+fa8VAPsdXSiC8uSKfgW2ibC3IHUh9LebDYhiVEPpRvEd88YJiR5XujQ+BzVUoTGzDFLHdMtOVAh4pHatusj/BIGJAn39Y0tlshyYaQHTpzyatRS05xkj5TlYPWV5AgJgD4/QiioRGpWTJmTlALLkin4DpMvlNE+aBJCEhsxItkgvntyIX7c5g89b00tY+u0uIjVoZffiA5jDDHOEPNKcaBS23Z9hD+0b+x9x0VXhfJlYokstxd8Dl3fXjTvx4Xu2pBkE5uQBFz4zruugcTdYzHa/MvGsmQKPukmxqQg2TB51ENTStRhk8OWluK7Z8qwRY9p2EmszBBRnwPcHLOEcZYtTaUO9/QR/tC+kUQCvT41g/t3bAmafKRlnItE5awc6Gt958rRmZis48z52eA4NELZxOZ9JWY4br6Has2SErFVjHtt8y8by5IpcPZT01HsqxETMmvYGyaGoNkb3SxhbG5W7p6pbZRTjC2WAyfVAv7DJx1zWS1RNSG2mTDQmQltEzzXeHyEP2/oo30fc964vWpLtK6EMjPTODYqx36PqelGh0/jnieOO+sEhTDTaPZ1MMdgQuoH4uZ71w2bg/dYjDb/srFsM5onJusdjmKgmZEIcle71DCT1LqVgex6djcQ09aSA8GvnRVphQm0Jw3FIrYOkJmYFvtbs32rr/heaM7zZsa6rimSFSwZ501XDXuz/yXgkgFjssG5cxpzj6UOaUbzsmUKQD6Cl/UT9nziytIkBV/ZCY3hBYdyN6QWSWp/CL7MYQJw/44tIsYaWq885UV8pSMAd5kFTTAl/Yn1ew0NZnjr7GxbYxWO2PmIty/ixX6eUmj1D9+2aR2+/uyr4tLOEqIoqRIryRonAKuyPswwGfSAm0mlKPsxcu+32GqldrTeUkdV5kKAXJElJfPQ0CEiXCBUKcpghKDvK+l5sHpFP+ZVZ2VLVyVLjaHBrHByn8bp6Ua0sztP1JH+LvRb0/xwze6ng5FqGnlNFvp5oZIVEqyphUs4SwpDSpiQArAq6wfQWTFVo0gIt/fZzPDsz7vdlbCXWNZMIab0sUZjXpValyTEEEJ1fsqAvrer54FGLevH7/2PTbOJi4EodI6/lvVDOZgI906S9Qo5u22EnL6+72IiU2KZTxHHusRRHcLUTKOtrawLktwGaX+GqekG7t+xhRU+uMqjN101XKho35tMRNTUTKPlS7LLsacSxhYro1m2Gc2AO5sw6yNk/f4c3jwahquVoOt7Dv1Eojo/qcZjY2xkGKtXuGUIs9Xl2Mgw5hkioM0fZvYpdyg5yVDSEtXn7Jbec/r8LLZtWufNNo3JRpVmq6dAzH6oZf0YzNxkQGte3N4YG7mQUQygI/O9lvXj5qvXN/10AaypZdiz/2RLq7Tvo0NH7Qzuxw/Xc2WDa3DzrzVyXRXAFoZ8e0qCXrS/lWJZawq+qIqYiI4QJLWKfBKXtj3H5CBIGuvEFgLkCLjd+jDGqRzzTvoZrgCBEHwS+aGX3+iotnp6uoHHD9e9kmiMmaeboY1SDVgzc18NrJAmamo03J4bveQi7Np3nM1TsPt2mFql6UMp0j6Tg2tdpAmZZl6JWWtM0r0vVP6mlxrEsnY0h5Cq1nnIIeZzoJqHQjqeUI8B7nmhHgC+333pk1eyTIcbZ+y1JkI9LWxwzscQQ04Z7RVi1KkIQUzdf99+0EgdiWO/6/T5WSeTt/fjzr1HoiOFJPNqXyM1KUv6isRGTunfFKU5LlSO5gRIFaMcsidLU+kl45mYrDuJpSlRcZuey4nQ4A7AnFIdORT2OLdtWoc9+09i594jHeVCJO9kf8/1tHA5u2M7n5lIWcKY8xOk7qMhyV94x6qBC76iAGFLbeKy5+EyJuLO3o9cdr2vVLZkXu3xSKISCWjtad/+yeMfS60NxaJiCg6kdgCFHJKx9ZF8Y9m17zj7nSZwEuffTGMOu/Yd7zg8gNuRbG9c26zgO5y+d4otzTx9fk4c4mrOCYdulDMooxifnlNOIjWTEvUzXCaebmTvSgMIVmV9Tik6huFL5lXiQFdAR3tRDq49tm3TOmeDqJh7lIVl7Wh2oQwHUMghmbJ8rq++jCZw0lj1qZlGx3v7HMncwY4pHy79LVeaWWf6muWPfQQgRPRd5dBTIlTCPTYgwIbUwT02Mowjd1+LB3ZsEZWiTglpAMHUdENcKhvI1wzrmt1PY+feI1jFON9N+PahCVdW+eOH61HR7d2stbRsNYXYcsRFpTYgXNDNdlbtzFEC2QfNZHytDG3EqL6E5rxK8ws00ctTpdVVmlnKSO0krz4AXNqUqxy6fY+82mSohPuamjyHgwPnSLWb5WjkDYUN1esyr3FVHAYu7P8+RpPVDF86vhgN3NZIpYEMoRLhrrmODRnudq2lZakp+LQBjljG5jPYEh4Ar/Sqpdv7d2zBudl5nJ5u5NJU1g66k45Wr+hvsyFLJDOADw11yUcK7jLFnJSjE9d8Whn3Wy0lxkq19tqfnm6wDEHD1mpSaZOhEu5EvH1ZClfYqJnDsXPvEVyaUwvRMOcD6PQFTEzWg3Nmandf+uSVSTTnGA08b26HvQ+HalnrDLqqCE9M1qNMQWa4d7ewLJmCTxvg1EGJmqhRhGgUMbUAwN3Xb+7Is8j6qZVYBrg7Vq1e4WYSnF8jJmeCO5y+xDXfb4HmnN629wjOnJvF/Tu2iGPU8x5+05Rz294jhYm1vieHL378ityNYWxogjs8VOtYNxfRioVvTvW8xOxr1/7MQxhj7pPXZq+lf83Qjtx9LSbvutY51/p9hxjBzZWfYUb1dQvL0nzkM2dwxG5OKXEv3LwmqCItQjWkEVO2Gs6FhnLSGWeCUkCHWYIbExcfb75rKJJmaqZZlXPXvuOionh5D79djiPFvX35HAAfL5/XvhwaX14zaei+kpIhNvKasUxMTNbbnOfTnvLdeaobDNWyVqi4vbe596pPzTiT+bJ+wo4fX18oOzsVliVTyFPaQFpzKK8JKmRf5qQLF/IcqNjwW1+EBld+2b6XNHFN/9YXKsjZ/l335tbXFzfu0mpC4w5h26Z1HeHDWR+1miVx49m2aV3Uc8zxhQgf52socl9JyRAX8vhtTN+GjdPTDYw/5i7FLYk4MqFLb3PRcVz4bD9RW1FEjcacwoETpxZFqYtlaT7y2Rpd33E1h+55oj38M0TYtSPWhZBZ462z5UbBAJ1Ny32b07ZV25CYU2KjrqSSbp5n3rJ1Q8vMsHYww1AtE5XjMO+xbdM6caTQxGQde//21Y7PG/MKu/Yd9xJZLkcjBKkvKdaU5Luv71z51jqPCdb2bbjQmFNek5UU2gzFWQWI4HxfX+Sf9vHcOcHTkG6gVKZARB8lopNE9DwR3eH4fgMRHSCiSSL6DhF9rMzxaPhsja7vuGU8Pd0eshki7JwjFggTPF2Ir1uQhEJqJsJ5W0LvFGs7lkjieZ9539gVLUf/4ELPA7tpDofhhcJsjx+ui4nYnv0nnRIj0NR6fB4ss7xCbP0qX60iEzE+Evu+2v8WOle+tb7niePRfptd+zp/44LPZCXFnv0ncdkdT/KaqxU+O1TLRGGuCsDDB1/paQ2k0sxHRNQP4MsAfg7AawCeI6J9SqnvGpfdCeARpdS/IaIPAHgKwKVljcmEz8QSk+Fo2mAlNmXuGolq360EltgM2yJ9bGNMXePbN3ortRZ9pu+9udpFZumQGD9SaC19MewXD9VyZ0HbSYW+rOeY/SZZR+laT0zWo53sd04cE/WABvy1wqQInVUzfDa2J4kpPPaiBlKZmsKHADyvlHpBKXUewDcA3GhdowC8a+HfawC8XuJ4csMXCmduUglB4q6RqPbdSmCJjYBKmXznw9jIMPZ84ko27LboM0MBAj5JNzZRKu9a6ncsGqUGXND0uPmU+LGKJte54HsHjqA/HFEHy94jErNTDOx9mCfiTTP5XlRRLZMpDAMwjaavLXxmYheATxPRa2hqCb9V1mCKbN6xkeFWk28b5iYNEXYf0Qqp9t1MYMlT+z82hDDveoyNDGPyrmvx0u7rkmff+iJGdKYrAGcIbGxp7PHtG0UlpYGmOcZ+xzzNgThIG83YKKv8s+8duBwDaXbwYNbnDHiQEG2OBmhw+9D3PtwO6KfOhkNFy3VLUWb0EZffZOJmAH+ilPoSEf0EgK8R0QeVUm35RER0K4BbAWDDhg3RA4lRtbmIh103bA6GbHKZyaEyuubvQ9mf3UAec1CMGShVAbjYKKvQnPoik0KRZ7GlsfVvfSWlNeaV6qgCWsRkZ4Nzooec62Vk/wP8u+kQUBsxjLAxpzqy7qW/X71yAKtXDrBhxFw1XV/osasGki9Duhsm5DKZwmsA1ht/vxed5qHPAPgoACil/oaIVgF4N4AfmBcppR4E8CDQLJ0dOxDp5pUQq9j4/7xIdZ8QXOUJ1g5myPqoo5+wL1JEysAmJuuignqpIVlbaW1911h9+8NX3sEUAriuY0ODWUeOTMr+DHkZTEptxQT3brtu2Oy8PibHwNU5Ufr716dmcP+OLdHzzu2rbZvW4b6xZsST7p/dT9Tq4ZGK6ceiTPPRcwAuJ6LLiGgFgE8B2Gdd8wqAjwAAEf0zAKsA5Iu380C6eUN2WjNkU9t1U9pSuw2uPIEu/WCHZfqcsxITgr6WC8srUwqS2OBjIs9cY3WF9N45cQw79x4Jzs/YyLCzvEPWT3jr7GzH7wF4TXYx5rm8PqGyusm51uGmq4bZ8xZTtgXoXDvp77XzONZUOjYyjB/bsKbtM11l9c6JY3j8cL11JuaUwt6/fRVT0+c77tMtE3JpmoJSapaIPgdgP4B+AF9RSh0nonsBHFJK7QNwO4D/m4h2ojlPv6pK6PojlYSkzEMidZZh/kl9T58tdW5egSjcXCXGhBCy3ZYpBUnXVhp5JhmrdoBKNA29trrypi4od+bcbId5Sf+eyyWJNc/FJi5qlNlNztaiQqXX7fFLkunMZ+nf16dmnNqh+V55zJbf/t4bHZ/PNOZaGoKJxrxC43z7ORmqZaKM/RQoNaNZKfUUmg5k87O7jH9/F8A1ZY4BkG9eKfPgCOHtjxzFzr1HMDSY4a2zsy3zS9GmKUD6RixAWDKXVIqMMSH4nle2FJTXRJKH8IVCPYH2ubDXVlfeHN++EbcJSoHYyGPrz2OuzMtMYpHnfdYOZs79S3A7q/V9XKGjawcz3H19foLsc4RLy9ivXjnQFYYALJOMZqnKJ1WjfeWcdeVNOzGpaORAihBEGykk8xgTAndtNypB5jWRxJoLpOGN5lxwa7tr33E2OsW3dmXZ+l1wmcxSI/Q+LhPmW2dnOwpDEoBbtm5gx8hpsoMrihFk37xLC212s8nOsql9JE2uAcKST57iWUCxhQ2FS+aR1EL1XkIheNw9OGLLOdzmlGrz25QB6dqGav6HIAlv1E5GvW6crMhFJZnSrmu8KSOTFgNC7+Oa88a8wlAtw+qVA+KzURYz9UW13Xz1elEHt6rJTg8hIQCxxbM0iixskXBJDr6wyKyP2GgP1z0kJgSf7TaFOcwHaQP3oia6EAEhAD/5/ovErRxdUAvj4carS25ITV69DH+WICR4cHP+5kwDR+6+VvycspgpJwzdsnUDRi+5CE9+5/ut72pZH2bnVVvW/pJoskNEm1IPZKnAdggCMhXQ7MCUJ1IpplBfbFarqw3jnl+U13GPMSHoa3315lNDGiGVwkQXqpF0y9YNOPjC6dwMQd8H4Mf70MFXsCrra2l6OhFqz/6THe9cVgKaBNIIqZAJj5tzXca9SGG/FATZNf77d2zB6CUX4Qt/dszyfTRLaHe7JaqJvJrCtwDEZ5EtcXAOwZuuGu4ogWwihUQcE2FRn5pxtsUM3T+UgRwjTeZts5nSdupz+LoclSnG5KuRBMAbkiuBSaR8JszT0w1k/dSWb8Ll3ZSRgBZCnggpbjyxZdw5lOk4d42fq5d14MQpNhGuG2CZAhH9IfcVgKFyhrO4wR2gAydOYchTPz1VopY0XBJAUlNM7AGWXF+23VtShMwm9inG5CMsLiIQA9sh79pbJlyFA+29l4o5xwoNKZiR+cw1tQx9BJw53zm/MfftVtIo0N2AgBj4zEe/BuDvABy2/jsEoDOzYhnAt4i7btgcVT89xcL7km5SmmJ8Ibgu1Z+7/ra9R1rXll1ET+LwtYl93jFJ+3H71tyOlHFhXqk2gpVX45AUceQKz7nMPXlMUEUJov3MqZmGkyHE3tf1nNQF/zTKSv4rCh9TeA7A3ymlvmr/B+AfuzS+UhG74L5F5OyeXBOaFAuvn8nBdxBi3j0UgmsTAd9zpRm5RREiAjaxd/mKpIX9pATRF5K75xNXBqO97N9LosNC95EyQt975vHFFCWIsZVH85w3aTZ6XnSrunAsfEzhEwCcmTNKqcvKGU73kEe6CS2iy+Fa9sKPjQxHM57Yd5ccKJMIhK7XWgbglqhTIOTwtUtC2OU+9BqFxhRDELm9oJuz77phM1s51cXEznh6DgNo+RR895HmYfjeM1bqn5is48y5zrHHnIsYyT/PeQtlo6eAPfdrBzOsHOjDTkOj7gVYn4JSqjMv+22EvFmf+rch26lp7xxaWGy7m1cqxGbdxr67NARXH1TJ9XNKlRqCGmqKY6KIfTtP/oh3/zh4gqvEwZ79J50+gz5qlrzW9w4+DzI7uo/wx/hiOF9PHwE3XSW350tzhXyJkROTddzzxPFW9I85z74s5JQ2fz33ZVQsyAtx9BER/V9KqdL6HXQbeW2akgNkL7DedGsHs1JiwGOjJnxRS5L79zEOTk0E9PXmgXOhzCiXmDmR7AXbqalLonNz4csf8WXUugi9q8QBN+Z5BTywY0vb9SnmlyPCCsAbZ851fM4JJZzZZ141C8SNXnKRaLwSwcOM+rIZNICOLn5TMw2MP9rUYH10QIe6mvupaK5Hr6LAXCBp/Tki+i9KqR8reTxBjI6OqkOHDhW+Dxe546uLXvTeQDMp7B2rBsQ9FsrA+7/wFOukJCA4Lpe055LCffNgwiZi3UZoL8S2U3Tlj5j343DZHU86f0foLEzom1tOIyqC2DmoZX0425jv2EvcO2rEnD+bEG/btA4HTpzqIP6uvbpyoI/NGNfm2NDetUONJVoph5i1zwsiOqyUGg1dt2wzmotWePRJBj4pozGvWtJzt6qr2vBFrdjlmUOZyb5xStXsXqnJGqG9IHFq9hNhXimvWSM0HzFmGJ+kXIaEaWejhzDTaPbJsvdSyOwTU7ZForVzuQChUGVX3wQbpn+hqJS/mEqTeDOaiehFInqBiF4E8AH9byJ6oUvjKw1SB5sLIUdtzEKaG6tb2aWcY5oblwuSLGbpPKRMkymQAAAgAElEQVRw3hVtt5qn/7IJ3R1NZ2u7IKnIKg1KKBJ5lhd6zWUl3C7AXN9Q7wJtdovd/9z655kHVzQhh9enZpIlPS6WSCSvpmBGGRHRpFJqpPwhdQ95E1VC9r/Y2kh683TLrhjrOC77OUWflSe5LqboncSpaYd55tFCY31D2iHqGlsfES6748lobVOiqeYpCKmv1/fi2pBKek+4xsytv2+sfdT0ZZjI+si5Tlyi4MUeU1PRpMdtm9Zhz/6T2Ln3SFdNzcuidHZqhCQDLWVI48j15pE6PIsm09hSEFe7KWUHLYBvUl70Wbv2HReHhaYKRTaR9RGmz8+2Ja/l1UIlGphkbFwOiQ/SuYntdAY0117fJxR+ayMkMPiEqfHtG9l9t6aWYe3ghTM6VMtaNb/suXAxBM3oU0n55tqPb9+Ixw/Xe1KTKsan8Ghpo1hikNj/zFAzrvcu0L55QvdNGbZmSsac47iMDlouCbHIsyYm66zD0EVMUoQim9FHa2oZzpyf7fATffHjV3Q4TMvwF0kiw6TapnRufPMxxDS3UQvXm7+1e45wCAkMPmFqbGSYbVQ0Nd1gnbicH8n0Hdnrl3JtexmNJGYKSql/UeZAlhJizANjI8PYyWxKAG0SpO++RRreS4jRqqyv9Vwdrw10hvJpRpfnAJiMMtUBis2aTR2KfM3up9l2meb1MQw9dn7MsV12x5POa7QD13evmLnxmdsuZcZg3kdqLpT2ivYJU8M5nLh8yK9yMpK8pujY53ejLpKvIN6nlVIPEdHnXd8rpf7P8obVfcQcxFjbL7dphxccWqH7Av7qmr6NcufEsbbMTJsYubSEc7PzOPTyG201+fXvuM/N8Zso2rQmBN+7u4hJ6iiP0OGNrdRaVBsMVc/13SvV3EiIMPestYMZBlfIG+MAYSGN62dQn5pphWcPW8/qdTRQL5/v0xRWL/z/naWPoseYmKy3JbLUp2Yw/lgziaVIOJxGrGZh3zdUXdNXziLUOJ5TU10NxX2fu7SVEIFLoTH4iIvrXkVDkW1w5pKhwSxXpdYiZgOufIT0XqnCtO0GSsCFbnOhZ+XphRwS0uxwWnNsei/Xp2Yw/uhR3PPE8ZYZzCw7zs2FtHlT7D5PvU9j4Ctz8UcL/7+n9FH0GPc8cbwjk7Qxp3DPE8cLS7R2oTWXVOK63txAPmk4VM4ilKrvK3YX83ms/R6ASCI2CY1r/nzExYVYLS8ELuVDqXyVWmOzq31JWhzsZ6QoyWIzQHtaFNozllOvQ0hI09/7kv7MHCLdj2KolrFzIdHq8mp+qecnBss2ec0EV4rBV6JBAq4pj48huDbQGk+vBl9Ui4+ZaGLESdpcCF4oNE/y/NenZrzluHUI3rZN69pMVW1S3WNHsWvfcbw504gmZCnNV5yTe2qmgTeZ7zRcDD1vsMHKgT4RQ7DvZZciOT3dQC3rx/2RWeYSBmhrKant8BLE2OQbcwqrVw6wLT0lWl0Rza8X8wNUIamlIrakMHc9EbzVNTlwZiWz8bsrnI7QJMB2KF8t68fW96113tM0DYSef/FQTVSO++GDr7CEpjGnMDXTgEKTkJ2bncf9O7Ykr7YaAhfO208UValVIxTeyO0RjjnZMAMXOltBXrjfrn3HRffTkBLbXjeQWRNZbtwXDi7JXF+sjXR8CGU09xHRJ7s1mF5gYrLOxjHnrVevEbshuM+nphu54t45gn/L1g1t0pqdS6D1AIULuQX6mS/9g3uMB06cEj+/vhA6GUJMC5mUJY1j4DOzcQT+AQ/zsnNI8mRXm1g7mDnvFZLsp2YauHPimDgnRuoA7WUDGUm5cRu2hmbmDXA72PwNt8/teSizmU8sQhnN80T0OQCPdGk8XYVeaNexzvqoFZaZF7ERBL7r86iSUrukz96q0CQsOuaeC6/l+kKboa76fkD+rmE+9EL64iJtAOC2vUdaNfJjbPS+teb2yOoV/ZhXcPpWXPeSzJUvas2GtGppL8o2aHBVaIGmAHjm/Gzb9yENTQtN5h1tTcyX9KaxmMpmAzLz0X8got8hovVEdJH+r/SRdQG+BBWd2VgEsZmOZdQ/GRuRZ8hyxO30dENU18nMuPSZJ0z0E3mzqmPq7PRCCg1l9+YxbfmkxvHtG52tO5v7+AIBWjuYebVJyVzFNJhxaTif3rqhtM56MdDzye1vAnDk7mux5xNXRmtoauFaqSbm8gPGmpnLhsTR/OsL//9N4zMF4H3ph9Nd+OzaO/ceaaXJu6Jhyshn6GXEAeBvBC+p6xQKdXVBJwNxWdU3XTWMAydOtUUfrR3M8NbZ2WC4YDeg18aXtR6TiRqSGsdGhp1Z4U0tYb7191nj3y7E1ufSsPMvyso/SQVJWLDZByRPrpGr1Lcv+c1+hs+c3I2qyTaCTOHt0HqTgy/Rx1VCOo+apzeaXlyO2djX9wI+k45Z0nhNLWMPWSjU1YZZuE0zAMkBiD0sZR6usRF/1jognw9JtEooqsn1G9eY9fO4vALXbrh4qFbI3NFtIhcSTqTCRGzeQIzpmLt2aDDriVkpyBSIaBDA5wFsUErdSkSXA9iolPpmaaPqEiTSkiTRq0gVx1R5ECkOmc8+bnYSm5ppeImG/r+kkqYZZvr44XpU4Tjpe3bDZht6X6lpSyI1Sr0xMaU7XA1rzHBg4AIRXIzngINvDtYOZuJkuVgtnsuidkXpbdu0Dg8dfKXj87ONuTbtD+hO/SOJ+ejfAzgM4CcX/n4NzeJ4S54p2AudN9ErpOaVVdxKeshCCWAa49s3YvzRo85CZa5kJM7Jpu9lH4qsn7B6xQDenHG3sUy54c31KPtZQPN9d+49wnbPsh2L3F6RSo0SxJZutudi9JKLnOPktKIi1UzLInI+Zh0ysWnY6yXJ4RgbGcahl99oc9bbCXwarsg9AB0MQaPsgAoJU3i/UmoHEd0MAEqpGSJBPOESgXkYOGdUSPpdU/OreUVjlTkiwh2yXfuOt1WwNKMq7AQwPUbz/6bNei1TxgG44GTjJCczocqWynyF27Q5ydVeMY9dPk/NqFiMjfDVOBXkGa6cmUJZkUUmUvpYfAxLO2w54alINdPYsUgh9YFxiBW8zLEeOHFK1B8idh+WHVAhYQrniaiGBaGQiN4PoLNTtwNE9FEA/xJAP4A/VkrtdlzzSQC7Fu5/VCn1S7Khp0fewlquxCFz8Tlm0kfkDOM04duUbF7DTKM1Jl9Sky7lAbSrxbtuaFepY/tZu5x7tlQm8eeYKnWMqUHq5E59uDjzm9mJLSQtc2YKTjonAJN3Xes0/2gflpSg+vYaAFaLBJrnZNumdd5WmjF29lRVZfX/OYadQrvhxhryu2n46nedbcx3vf6RJCT1bgB/CWA9ET0M4D8C+N9CPyKifgBfBvDzAD4A4GYi+oB1zeUAvgDgGqXUZgC3xQ0/LUKJQ75ELxf04nNhi3NK4ba9R3Apk7Ciy2VzmzIFUTs93Qg2VokNlZWE2IVCOV2QhulJfBllHC7JPEmkZVcYsS+3xf7N+PZ8DVp867Zr33GWIQwvBAmEnhmzj3xlUMx7ShoDjY0M526RKlkvbqzS5lXcvNx9/ebczZqKIMgUlFL/AcDHAfwqgK8DGFVK/ZXg3h8C8LxS6gWl1HkA3wBwo3XNZwF8WSl1euFZP5APvRyE4vr198NDtaDDzzywX/z4FewmATo3sy/5BWhuyjyE1YUQAQ8xS9fYQp+PjQzjpquGvXMSc28NX4a6zoko63BJ5ilE3DmkIKghhupbN5/G+cwdP4MDJ04l3Ue+cHHznEjf1TV/dsc8F9OUrJdvrJI1881LTJ5RKkgL4v00gJ9CUzDOAPy/gt8MA3jV+Ps1AFdb1/wIABDRM2iamHYppf7SvhER3QrgVgDYsGGDcMhupIrWCREne/ElYYsxcf46yxloNzVMG13AisB+v5hoH4mZYGKyjscP16Mzm0PEk4vOISBYKyoFQvOUtyRyTPRLXh+Wb91C2pf0mdJ95HumeU5ingu0d4tzdcwzrwX49TJNZa5ABgCtYA7Jmi2mHA9JSOq/BvDDaGoJAPA/E9HPKqV+0/MzwJ2Mas/cAIDLAXwYwHsB/Gci+qBSaqrtR0o9COBBABgdHc1dHyFlSJxv03KlsWMOl7Rctr2ZXPb8rI+wYqAPZ863M5msj7B65YBTCiximpIQPqnd34SEePoyT8s6dGUmNNq/LUJQJdoIt252NVUN3eM4dVOYULi4XueY55o5QzsfOdJR9tzlBHatF1e918a2TesWFbGXQqIp/DSADyqltKP5qwCO+X8CoKkZrDf+fi+A1x3XHFRKNQC8SEQn0WQSzwnuH42UIXHcAfKZJXxhixqSktb6GaEwWPtzaR3+FKU1uDFo+JgeLbx/nugjX+ZpGcjbSMhm5D4HbSzK0kbMRlRAM8RY963I+8zQWLhMcZ1EN+0ocOd77sRkHeOPHmX7YLj2pb1eoaZXGlyo6WKHhCmcBLABwMsLf68H8B3B754DcDkRXQagDuBTAOzIogkANwP4EyJ6N5rmpBcE986FGLU6JP3lkfhcscsmQpFOJtORlENwPZ8bn5nHYNpk8xKnkIQUWzZACi4RyJU0lAIhm3bRJix5zJ1laCOhe0qfGdupzA6pBi4kUnIC1qqs3VUaylkxIdFslkqZ8LwgxUwQET2Bpta9BsCPA/jbhb+vBvBtpdTPBm9O9DEAD6DpL/iKUur3iOheAIeUUvsW8h2+BOCjAOYA/J5S6hu+e46OjqpDhw5J368N0tBKrg5PKuekNJnM7oilFFrVNjnfQV6iWvY7xzwP8BMXH2GJDZ8tisvueJL1YUgYn2+8ebTRlEhdkkKyxzjz5ztWDeD0NJ9Jb8PcSzFJfw8IEtN8xfVMFDmLZZQCIaLDSqnR0HU+TeH/KDoIpdRTAJ6yPrvL+LdCs4TG54s+SwKpilt25qXUzmjaQG1pkkNe6SQk8UqYWAw4ydLWpGLrTxVNFIyFLwdF0oTFd03MPiybgKcoSSF5H9c1jXmFwRUDGFwxICLG5n31vyUYqrn7etuQFhPMmzzY6zLavh7N/8n8m4je5bt+KUCq4nabsHAwNQop8jr2uHezE3HMjOiim9VlW3eZ1mLqT/nKRJhIRUQ5AqE71/nqQ+nwWe4a35rorG+XX6hbBNxGaE4l5yrl2Yv5TdYv759i0hHubGoGE5oT+/vp87NdLwViQxJ9dCuA3wUwA2AeF3K2lmTpbImUnjqSIg8kJX9tFHHsce9MxEtauqRGqs3qK/YmqT8FLNRvshyiAPDW2dlW9nhKaUz7iVx+jFATltsfOeqtleQjOmailt3ICGiuzT1PHA8yPo5o5SlJYc/pbXuP4J4njrfKm0jOVeiaPAKSc1/jwrrEFMbT4LR4oLnGu27YLPIXlW0ByAOJ5D8OYLNS6u/LHsxiQepIClcJglBUjSRkc6iWgQgt38LKgfwtt7lieKE0gqmZRrBUhxS+ja8P+Jpa5gyhrWV9rQge15Ab80qsbfjAVRPl4KoPBcCbmGiGz0qq+HLfn55ueOPwfUQrVjDi9qvOmAdk5yp0javMTKg4Y5l+GS5klWPoM4053Lb3CG7be8Tbv8RGNwVSCVP4HoDpsgeymFAkesOG6+BJavpIkuN+4cr3tBGkqZlGIYmXi0UPIZVqy2oruGCf5RKgpxvzmBbkgExM1kW2fhdca8lFkmn0E3XsnVBIow6ftfdh0QamEvu9viZGMPLNqb7n7Y8cxbxSGAq0J7XfWQdY6BpOXM+NkJmmDMetOWafo5yDlCF0u4GUhCl8AcC3iehZGIXwlFK/XdqoFgHshY4tLqYhkfhdUqokOS61Q3wqB0MA0qi2E5N1nDnXGXNOAG7ZuqH1PnnHCFwoP81Bki1tz3foWOuyDMAFgidNTNS/CUVWDdUynJudFxEiqZM7JsTUN6camgCenm6glvV7y0/7Aiy4nhs+s7A0sCMF8iRl2hiqZVi9cqA0JhaChCn8EYCn0UxYkxUgfxuhqP05b0yzJBwxb117DpKMa+53RcBJVy5bb94xAvCWny6SLR2CzagliYkucHtCO0hNAn7m3Kw3Uz3k5AZkxDQPEZQKLiGhp0iwQFlhnykEpF+48j24b+yKwvfJC4kRelYp9Xml1L9XSn1V/1f6yBYJ8hYX05ASTPu6sZHyiqtx4IquDdUy5hfNGPKiqq3PHr1n/8lgpU1JSb2hWuZtYymxMXPzKnm+SSy4eQ7VZvLtibGR9sJpu27Y7C3G5qsRFbOeeYmg5Hc+Z7ekOiqHIr8NIYXtv9eZ0BKmcICIbiWi9xDRRfq/0ke2SFA0RE5SyZSTUu2DbhOM2JLWIXBEx0VgWkjQbsk3l/aBdY3xlq0bvHOspWnuwA4P1URSIjfft2zd0BqPpFyy/Q5rF+zsO/ceYat1mr/17QldMmPn3iNYOdCHtYOZU6jIUyNK39usKsrNqa5IKy0fHXPNxUO1QsJaUUHPB64aa9YvPyi9zoSWmI90aYovGJ8t2ZDUWBQNT9Uhi19/9lXMKYV+Imx931q89A8zTtW1W8XVfOPlfu+qQ9OYU7l9GBohk5BtbnCN0WwduWYhKmtqutOZyTlPJfPum28zp8QXCWPeK3V4rH2vqRnefh9bI4obp+6jIC3Hws2HCz5ndxHTaZl5SNweASAO5BgazEozb0nAlrlYrChS5iIPipZ/iPl9t0tNxMJX0uH+HVsK2XclERvDC+F+3zz6/bZ2oTEx5jFFAYussWYMoczvlGU5Yu4Vu9dC5TjyliUJgfttkXlLNed53sv8DeD26dSyPgCUnA5Iy1wEmQIR/bLrc6XUn+YcWyF0mykAxTY1twH7iTpsyN2u2xMLbnxc28CYTZwne1sj6yfs+UT+XglF573I7y9lelUTgBd3Xxd8tgkf03bdK2Zfc+MEgJcix5kCHFPjQlZDv9VRblIHbwoBjlsvDkXpQIraRxo/bvx7FYCPAPgvAHrCFHqBIiFtnEoaE6pYn5opXFo5hTrKqfOuqJ7Y0FhfhmgIRU1Yvnm/9I4nMVTLOvpWS34vyXsIRQDp6yRrF2vqDO1rCaOO7ZyXClzSmGnK4kxx2qRr5pgoAI8frmP0koucc+IqYmkjds/HRtLljbqLhaQd528Z/30WwAiAFeUPrRy4nGVlwud7sJ1bvuiWIpESqaItOEc0F9WTx0ZrPiMGRezBIf/Q1EwD448eZecrbxSYJAIoZu24oIYz52aj19p8rg+xnfNSnj/b6S5pCapx4MQptsaWa8zmXPjeWUdGSd5x26Z1HXEatawffQyf7RYDzlMXYRrNRjhLDmWGonEIRR+FQhVdkmRspETKaAtX9Evq0Fj9jBjGUCQUUBIhpstkSH+fqktczNpphrrWKv6nM91j9rk0/yBmjaTnLy/jiNHYYq6NysUg4La9R0Tv+PjhetvZJgA3XTWMeYbnxDLgvAgyBSJ6goj2Lfz3TTSb7vx5+UNLjzJD0Tjog8pxeQW0Nr5LEg8ViJOg7KqvqUNjffd1Iesvlish1U64+ZLklLjgC+fURCR27cZGhjG4otMqrIsXSomtdG9o06aEcN/zxPHg+SvCOHzCiX39Gib3xnWPmHPiotsuGsNlxx84cYrdh2V1D7Qh8SmYfRVmAbyslHqtpPGUim6XxA51kNLwdU3jnJgxknE3qr6alTpDNngpOLtxkegjG7a9fogpuAf45yuP32nbpnXO2kmmvynP2nH7eWqm0Xq3UOhrjL1bEkY7MVlnwzHN8UpKt8SGx27btK7j+qyfkPVRWwFITpCRzEWouJ02K4XqWL0+NYP7d2xJ3iI3BhKfwn8y/ntmqTIEIH0GsA+2xDM108AcpxeC11gkUrhP3eZqCqXaZPo9zQN/bjZdNRTbXHXf2BU4cve1eGn3dXhp93WYvOvaQgzBlkrPnJ912nRTZG7bz7bNBybMwnSxWph0P/u0ZF/muEvrDWncvu/M8UoEN45xHDhxyqmxuXwNjTmFd6waEGl3Po21lvXjgR1bMB8w7ei6W3UPQwCazZkA5NI8U0HST+HjAH4fwA+huS8IzaZp7yp5bMmRuiS2D7v2darKHp4AgG8aDvAJar7kJ8BdermodK2f6ysPHBOF0atEHWeXrznVsslrRpdK8wk924a0MB1Xzju2QJ4J33MvY8JTfRq37zvTqc71UJYyDltj81VwnZpuYPKua9lxaZhzwXUf9EVpcRF6Lmgt8Ysfv6JnYegS89EfALheKfVfyx5M2SgjA9iFick6a4LwIU/oICc13f7IUbxz1YBzIw6uGCjMEEJho1KTXMqM3liwZpbpRnSOQKpnm5AUpuMqidrx+lxP7zwmsTwmLbYjntGhjOsxYQtu0ueHKrjGWAhC5kGuA58WKLgMbBf0+dXP7TYkTOH/ezswBI28OQcx0mwex3VejcWXB8ExpqI+FJcWZEN64GLLf6fUKnrZYS9kp5buB58pxZQ0Y8tN+OY5j8YtqfDq2lOuyrHS57sc29LxxkDP1Uxjju1hHpuY6cpj6hYkTOEQEe0FMIH2fgp/VtqoFhlipVkf0bWdW0Axc06eUtJFiJ5EC4o5cDHO/9RahYu4EJoOYNezJcxIeh33bElpDBPS+YvRkkMmyRABdCH0fG4PzykVVYPKfAdfnSGfjT5G8LDnak6p1v6XMLKVA33seSrSG6UIJEzhXWjmJpjGNwVg2TCFWGmWI9Sa+Kc0X3FqK4eiElJIC4ohaECctJ66qZA0s1XKjGKYVipTpm/+XMTNVQPJvoab5137jrc189EEULefNFtMuvaBT0vnone4UO6Qxu/bp76quLGCh2+u7Hn94sevENXdMtGLiqlBpqCU+rVuDGQxIzaU1UWos35qayvo6zwVA30PVwVTF4pGMfg26QM53inGFFFGSLEvszWUQHbb3iOtCCHtbOT8O4CbMRTdA9z8ucIwpT2aOQLlkmhnGnNtTFXvwVgtjtu7MQlbkpBPoKkJcmVjYgWPmPBfn/OYO7/dMGXayN/pfRkhNpTVTmZaO5gBqrlRysikHhsZxpc+eWUw0UvaN8AH7p3XDma5pXVp+F0ZIcUSRiPt9xCqc1VG5jw3f5KSDxwBjC2nEAqrlaBowpYdXsyhlvXh8cN1NjkuVvBIEf7Lnd9u92bWkJiPlj3yONZMKfCa3U932DdT2wtth5akpn8ecHNx9/Wbc99TKjFL18EVoslVzgyZr3xhkhp6LX3+nTLtw675k/Qb8DGxWtbfMc+rsj5RPwDuebHOa+BC3abQvElCfLl3MNcmNvggxnzrEy66FRkpQcUUPDA38dBCd6w3Zzobt4TQrUxqkziUFfvfy80rdTDaJpGHDr7S+t42a/gYjS9M0gaXiWpf40IZayUhbr5GO64eCYDf/s2NAwjb6vX72o1odN0mfR0H31mihXFImvPECoB6TLv2HW+Zi/rInZMU0ipCocfdOnOS5LUhAL8M4FLzeqXUb5cyokUCexOfnua7WIXQi9DHFPbqovcuYyNLHIwhomVKhj5Gc83up8UE8GLDNBdjHy4rT0NC3HzXhHJjXNqoDbsndMhWr/0yebTqNUx5ErsHARcaauaE6Oti9q2Zxe9iCEU09W7n8kg0hacAHARwDEC6+gWLHCkjXWKlj1624kuFXiWlSbUv8zoXAfRlwrqg11LfR2rmcjGQFKYmCXHLQwD1XHE1uTTs6COptuy7jjsXE5N1/PezbrOWHV4sOYuxApUvx2JeqcJnOHXUXQgSprBKKfX55E9e5CjSOIU7ZEVjxPNugBCTKYMJdXsja0jzNnxaWigT1obtZI8xc3GmqRSmRQlxy6tR+sbn6hAm1Za569bUMvZc7Nl/ki0hc+DEqba/pWsTcx64uZhXKklmfLcLeUqYwteI6LMAvon25LU3ShnRIkEek4/UbupDUWIaqoNjj6ksib7bG1lD4vgLqfIx9fM5J3tRM1cvQhEnJutttnFfUqWP+brW2FUR1rUOnCRPxHf3y1tzyYU856Fs83C3zc+SkNTzAPYA+BsAhxf+EzVJJqKPEtFJInqeiO7wXPcJIlJEFOwfWhbsSqPbNq2LDhHzxamX0SjEhqvq58MHX/GGJvqYUJEuWdyG7TN6BZQBV4jmp7duiKo46Zvra95/UZLqlb5n9CIUcWKyjvFHj7bZ5U9PNzD+mHvvjm/f2NE1TMNVg4hrKOPK3XCF2E4xUU9a+OHA1UPiQlJ954GDKwPe93ksxrdvRNbfPttFe4j4INEUPg/gh5VSfx9zYyLqB/BlAD8H4DUAzxHRPqXUd63r3gngtwE8G3P/lJAWFcurRs4phZ17j+DQy28EG4MXkQpcGzrUpIcbs53IFKtBcBJ7N2q6FHWy+6Tgl/5hJkn1Su4Zrlo/qcFlMdvlVwC+//XYSGc2OOBmaNy+tE075r3t5/kcxOPbN2L80aPO8esmQKEEQ/2OeYQy7j24z3PBfrUSm7BJmMJxNMtcxOJDAJ5XSr0AAET0DQA3Aviudd3volmJ9XdyPCMJpEXFQvAREwXgoYOv4KGDr3hLQWzbtK4thNL8PIQYVVkzGR9xijVj2cTmpquG8fVnXxU7Uu0QYKUgCgFO7RMZ374RtzGhi6map3NmEs0Qygo2iM1iBvh9dd/YFRi95KLgOFOYEkORUkB7WKgJU6AJjSWPUFa2qdTFsHV72F45mucAHCGiA2j3KYRCUocBvGr8/RqAq80LiGgEwHql1DeJqGdMIdWi+iQWEz6pu4jUwW1oXyIbd9jyxNq7tC2pI9UVAqzhm68yfCJjI8MsgSEAd04ci9IguWcAboen653GHzuKXfuO58qTMeHLYubWKk95bfv3zrLZg+6WmNxzAL+DePXKAbw503AmG4YSDPU75klUja0/Fbtu3fbPSXwKEwB+D8C3ccGncFjwO5fJsbVSRNQH4H4AtwdvRHQrER0iokOnTiVUydAkKlxWf6N/ujYAACAASURBVC5HjrBCAGenLBL1NH3e3WHtFo9NnbPh2s3fNcye0iZiSybYcxtyvHLzlccGLMGuGzazG/jhg6+wNukUcL1TY04lKZPiM3FmjpZzKWzXLps4ALx1djbqHcZG2rvwmYmapp/AJ4iMb/d3suPOg0sY0f626fOzHXNn1p8qulfKKO/ig6Qg3leJaAWAH1n46KRSSpLr/hqA9cbf7wXwuvH3OwF8EMBfUZNw/FMA+4joBqVUmyNbKfUggAcBYHR0NJk1bWKyjvHHjjrD2fIchj37Tzp7MHNwHdAUUU8a0o5htrQ3MVnHW2c7GYyGSxr3ERtJyQ2J1OO6Ji8TvXPiWMu0RQTUBvow05hvk+Y4E1KogJ4ELm3gtr1HOjJ6OZjPNLvghcpZ+5K8xrdvFEcfxYDTvFKZQKTRYmaCYSh/wzcml1ab9ROGalmbJpcqLDuP9lIEkozmDwP4KoCX0JSD1xPRryil/jrw0+cAXE5ElwGoA/gUgF/SXyql3gTwbuM5fwXgd2yGUCZ8RHx1ju5kseqcjsQxn5NnA3CHYvXKfB3WOKejCXtzh/wpGlzUiSS/wMUY8zDROyeOtfltlAKmG828TJPhDQtzHoD4tefW7PR0I5gpbD7TVc8f4KuinnFok7r/dFEHvQ9vltTwKSbJcPr8hTpKRd6T0+RWrxzAkbsvdBiQ1J8Cwj6xvFnWeSHxKXwJwLVKqZMAQEQ/AuDrAK7y/UgpNUtEnwOwH0A/gK8opY4T0b0ADiml9hUbenH4NiS3iX2QJk5puCJx8myAPFmgAL8ZYwkhZ7pygYs6CeUXcIwxDxP9+rOvst8BFxie694cwY5V5X17T3meYz/TJyXbjJsTgt6xqlh7VglSx9rbORUSnJ6W1VEKQaqdSt5Z6hMrk2HbkDCFTDMEAFBK/TciEnmIlFJPoVkmw/zsLubaD0vumRI+Ip5ns3IEKra7UuwGiMkC3bn3CG7bewRDtQxnzs+2iITejIdefkMsqWpHWmyRNNehspmhNPooDxOVFrhz3dtOBgQ6mZDEuRgSIHQHNj0Xb52dbdPe9DNDvX8lVVG5HICUSGkCybPnNFJk1UsZnOSde5X574O0Hee/A/C1hb9vgczRvOgxvn0jxh872iE9aXU6FhyBijm4eRCTBarflG2Y8uwrIoag21bGZP9qcAw3rzQU+ztfpI2GWSDNvrcvDFMq+YU0I7tUBMdouPh9+z30v4tK63mjaVKaQPLsORNlnTebZkjeuVeZ/z5ImMJvAPhNNBPMCMBfA/jXZQ6qW9CLYzr3JM5Z38GISbzRKBpFkJcZueCjlaYGodtWxh7OXjUOMXHz1euduSAaMb0ybEglPy75i3s+90wfczHv44tOk65HbPivpB1oHhQlmGWdN06T9dGSXlRQDoFURLu7xYDR0VF16FDXfNEdcKmuoaQjgK9Db/42NUKVLGPg66HLSd3DQ/4GN0VgRg/1E+Hmq9cHs8W533PRR3lw2R1POjUtAtqKo3EmkDwRP2b0kcm49b0A9/6TRqdpcPvJVQAvdE6KwLevJeW8y84YjwE3T7HVFCQgosNKqWApIZYpENExeOZXKfWj+YeXH71mCtyG5Bpr6E0IXNAYQmGDqVDE9hoDV5euMg+eHT2k8emtG6IYQxmQEk7uOiLg/k/m69/NERiuY5qLmPsgZXhAHAOJhY+hXvej7+nQYDWjKPu85UWoiCWQ5kxJmYLPfPQLC///zYX/mz6FPGUv3hbgy+S6r9emAzPZplsw1dyQxrB2wbHr8jUMZn04N6ucGgHXpavIu4bs1lz00NeffbXnTEFqb+b2kVLA+GNHAcRHyHCmq9jsdA4xpo4ybeUh842k9MZigm1icjV36qbzmWUKSqmXAYCIrlFKXWN8dQcRPQPg3rIHtxgRG3YKpKuXkwfmhtt811/izHk3gTjbmMdNVw13SChZH6Ex72YIki5dsZDYrTlzlSSqqGxI7c2+fcQVoQshD5GPQUwEUS9t5TH7sagZEkhfe6vXzmdJmYvVRPRT+g8i+kkAq8sb0uJGnnK4XKmHbiPr55dbFwC0U/zfsWrAGdteVjVPSdkKbj4Xyzxz5RhMhJy7eQgAR3CHall0GXgX7BIQaxf6lu/ce6Sj9EmonEQRhMpfS+/xgf/9L/DQwVdawsScUnjo4Cu4c0LeYCnFWGx0u6yFDQlT+AyALxPRS0T0EpqRR79e6qgSQ9cpufSOJ/H+LzyFS3P0B9DIUw53MUiwQDghrz4100ra0gSNi2GfV6oUVVYiJd189XrnNdznsSjSR0KKsZFhtr4UkD9PxkWId92wWVTPRwLN8O7fsQVnG/NsPSabgUifKZn7ovWuNCHXWew2QsmNKcfiQtn9GUKQ1D46DOBKInoXmo7pN8sfVjrElAGQII8EN1STV4MsExLTlz0vRcwAedRqyfO0el9U7efG3K3e0ndfv9lZVTe27pY5z2tqGVZlfZia7kz6Szl+SehtrFmRm/tDL7/RFonD7WG7d4J5X3Mfnjk36w2+iBHiyjD1dKU/gwdBTYGIVhLRLwH4HID/lYjuIiJnVvJihKQMQAzySHBnzsdVgywLLknSBXNe8poB8qrV0ufdN3YFvvfFj+GBHVvwT9eswsMHX0ki1ZdVddWFsZFh7PnFK9uEhrWDGXb8+Hrs2X9SpKnY8zw108DZxjzu37Gl1OCGMoghN/cPWVVpfUZCXWZcz5lrH4ZKY8SYIcsw9SwFn8Kfo9kcZxbAGeO/JYHQRMZMtC8ByAftOOw1TJUe8G9+PS95zQDcAb/NYX/mxhh6Xhn2XJ8UWoY5aWxkGEfuvhYv7b4OL+2+DndfvxmPH66L36mbTMyEr91q3nmSnkVdG4pDY07hnieOA8iX/RxjhowVmiTmsV77FCQZze9VSn209JGUhJDJRNroI1SeOhT2WYTLp4xucIW/hcw1eaKLfO8bMslIn1dG3RhfMp5JpPU4UyP2ncqQKiX7zdduFcg3TzGRfTrvgLte52XEzAMRcMvVcbkuMdnNUtNkke6LKSDRFL5NRL0N/i6AkMlEaj4MlacOPadINcjU0rC+r2YIttSVIkok9L4ppNkyCKLEnlymJB77TqmlSul+szU6l9YZO09S8yZwIT8mBG4e1g5mbdroAzu24MUvXpfLLyWJNgPkWt2i9ykA+CkAh4noJBF9h4iOEdF3yh5YKujNy0FaItvX4F7XaOc6lhUhsmWYB8yDD7Sr40UiU0xIDnge4m2q333Crm4xGBb+tiz7biyRTx36GbPfzEgkadtVHySMBrhQjFFL2S5oPw03P3dfv1lEyFPB1/fBnqOl4FP4eQCXA7gWwPVoZjpfX+agUmNsZJg97FIC4rtOS1JjI8OYvOtaPLBjS5LwP6B7Dj2tjqc6ILb/woVY4i1pu0i4EIWSR5uSSqvc2IuGs7qe73unvD4fDrH7Ta8Jh9g1NqXuL33ySudc3LJ1Aw6cOMX6CrI+wq4bNrful3J+8qxvaI50sy2NNUy04qLxKRiZzT8EYFXpIyoJReu5+6pRFg3F86GMzNBuSSJ6HriaPHnanbrmX/sBzGJoeW3/to14jdV3QsPs4qWRIpzVVZrEfCdXCYxe7jefI7eoGdJnr7/sjifZ3+k2n/oe5vxof8nOvUdE/jk73NfVg8QcqwshZ7fZbAuAtzteNyBpx3kDmt3XLgbwAwCXAPivADaXO7S04DYY0HS2SkrgAmD79pal2pXRn7XbJQhinHE+8HWnlNPpaJo9Yp5tE1lXly9XF69Ujm/9/JF7v9VRyE5H1kjvFxukELvffPveJ5FLx8UxvJBTmmtHGlv627ye60HiW19pu1Bzr/aqO56GxHz0uwC2AvhvSqnLAHwEwDOljqok2A4hAFFO3BRmqDxjTqn+AuWWIODgmvtYNZyb4zW1zOvzKeqoHxsZxuqVnfKTHWKbWgNzVTbVn0vmLE+QQux+49ZkeKjmJZRF10Ri5rN9IbH+OWk4a17Tmus+3L24vVAGJCGpDaXUPxBRHxH1KaUOENHvlz6yLiCPZFeG5B5CEfWXux/AS8+pC3zZyGtmGd++0ZkBfOb8LNbUMqck10+URHqXhNhyYwgJDHnmWzJneTWXGHNUnvOQQqOy9zAXMyZpR2r2GjfXQRoe61rfick6bn/kaFR2tL6Ps6T6wj27oS1ImMIUEb0DzY5rDxPRD9BMZFvyyCPZxcYlpy4pnaoEA3fwu1HmoQixMrvkaTTmFhrlOPo6lF022hz/qqyv45k6UoaDb75DDWNCc+bTnnzjiTW1AXHmuVQalemz4giwtB2pax0kvcpdDFDfy8cQsn5qMxOZ99m590jHcxXQ+9LZBm4EMANgJ5q9FNbgbVI2m9skCnDWUNGQSFJlENeUyVq2A42o2cC9z5G8lbqWexGiwBXom5pu4P4dWzqIE5dUmKJstGsMt2zd0NZiU7ctHb3kIuf8+dZUImP65ozb35zUmXfPxjq6U/q0fATYJtg+rYaLyHNhMPN36QuZnUI9SLrtt7QhiT7SJS3mAXyViPoBfArAw2UOrBvwHfSiRDyGgEuls1QSls+BliLePIQiRMH3W444pTD3uaKCXGM4cOJUBzHJm5Hsy9jVWFPL2EAJ3adbKnWWkSGuYQshPkk5Br6ItJuuGu4wtX7x41c4z1pMP/O1q1fiu57ucb6zIulBwq17z0tnE9G7iOgLRPSviOhaauJzAF4A8MmujK5khGLpiySJSQm4y+m2c+8RZ3lvtl7+YBbltM1TDyblhhzfvhFZf3tikrQyaKyTPKWjXjvLH9ixhR1DyozkkDM16yOcOT/LOmzHRoZFtnYgLrkqFq6ifVDNrOKia8KNbU4pZw0pAM6ktZj9HZoP7l7SHiS9CAQx4Ys++hqAjQCOAfifAHwLwC8CuFEpdWMXxpYUXNKJPuhcga28B8JXMMwk2j611T7krs2S9RPeOjsrYip536mUDekSXwXIQ+T1Gt+/YwsAOJvCxMA3hpQZyfo5Zpa8mXnuaoBkCzKSaLnUCWg2XHu8Ma8wuGKAzSiWJolxYyMgKtKISxqMeaYG50Pa+r61Isan192snrsqkwSKpoHPfPQ+pdQVAEBEfwzg7wFsUEr9Y1dGlhASW2nq2H1fwTDz2SECPdOYw659x9vUTbs2vB3x0pbs9GhnspMksqKfCPNKBR2HsY5JzimoE46kDnsd1spFY9m/sZuhFzUPcup/bDSOa023bVrXeqehwQxvnb0Q16GM+3EmDzOahqvqa46nzAQ0czzSz2N8G9w5k2pIGtw62O1pJfPB1Sj69vfeiIogOjd7oQmQKy+mLPiYQovSKKXmiOjFpcgQAJmtNHWoqb6viwCaz+bCGE1MzTRam8kmRr7MTqBJbDVT0Qg5TWtZv7hLVp5koBi/he8ZAJzfHXr5jQ4GYDp/NVI70IH84b5cgpUrPl2POyaaRoPQLjGHBJMUdbBSZElza2X7ekIRQz4hz8XoRy+5KDqCkJvPmAiiMv07IfiYwpVE9N8X/k0Aagt/EwCllHpXqSNLCImkkie0DvBLyj4Hln62tJ8HtxkkUr/NdOx3NaOPYkJnYzduyJdhmzQ4p65J1FzP1x3ZTMRKjrEwx6vLbgw7GEKIicYkTN2/Y0tUNA3QqUXe88Rxdm58CWgxSJUlHZLyJXkBeQIMYufAdybNd/DRjl4WxWOZglJKVsN2CUAqqcRugBRmKS7E0ga3GSShkkBniG2ezS4dU54NbRIJTsqV3itPwlAR2OPlegpImGhMwpRPkJFE0zTmFZspaxbhK5pfEytwxWoWkrwAoOnY7kacPxf1BVx4hxDt6HYpGhPd8170EGV58yVp86FnF63SGoqg0kjVh0EyJl85ChfsqAyJtHzxUM0b5eGCtG9EbCVM33jN/SBhlpJWkOa4tRO9SDSNDVdhwaL7hhunC7HnVbJfdLnsbmBsZBi3bN3Qsd/MRMYQ7ehlBNKyYAopwxJNSM1SvmdLariENoMZKmmHepooEmLrQszGnZiss9Ufv/TJK9vWIqQi62dwz7/56vXOz2/ZuiG4B/LU5QmNV38vYaIhaZcA3HSVX8ubmKzjzLn8RQdcvpdd+47nvl8sYs9raP7XDmZJznsM7hu7ooMx6ERGSZ2ssmiWBJKM5rcFpOYSaTTNxGTdmf0LxJmluKiHAydORZfHkCRYpbRJxpgF9uw/Ka7+6LPJ2nZ68/naN/LwwVewppZhVdaX3E/i2h8hv47eDxLbeihhTcHfgYszva1e0Y/zs/MddaOkMIMduoEY8yY3//3UKXCY4M56qvI0vkRGiXkohYk3D0plCkT0UQD/EkA/gD9WSu22vv88mjkQswBOAfh13b+hF5BG08Sk1kuQcvH1vSS9l1M+zwdfYpTLp8IRT5ekpJ/vytKuZf24f8eWqLn1SXDc/rjpquGO0EVz3KapB0CbQ9qOBJL4iHyMnTOlDA2uaCut4OoTUcv6sXKgj42G61btnVjE7BcNbi1dkWt5Q0F9e8kXJNBrlMYUFsphfBnAzwF4DcBzRLRPKfVd47JJAKNKqWki+g0AfwBgR1ljCkEaTeNLre+2msqhF9VcXciTGMVpIABazE5H+KwdzKBUvlr33Hg4ZsrtjwMnTrXKJ/iij8x3k0Qh+cppcAgVwXvGKM/gkoiBYrV3yq6w60KMxhqKanNFruUNBQ2VZJGOudsoU1P4EIDnlVIvAAARfQPN4notpqCUOmBcfxDAp0scTxDSqBnuunmlFsWiAuka2/ggIQB5EqM4YuWK8AnVmZdG82j4mKkvvDhG2wsJH/q/OyeO4aGDr3T83ld11WfKshkPN2ZXJVp9b8Bvdim7wi4HqcYa0sJS1v4KCWa9Mg+FUCZTGAbwqvH3awCu9lz/GQB/4fqCiG4FcCsAbNiwIdX4OiANA+tluJgE9qGNNaFInyEhALGJUdx9V2V90fWaAFk0jwkfM01VcVUqfHC+A59PwWd+kkq8d1+/mSVmvnXvZcKVDRfjkkQp9Qv9hBJIBbNeaFc+lMkUXKfRyYaJ6NMARgH8tOt7pdSDAB4EgNHR0XyeMgGkJhfuum2b1olae5aJbklrUgLAMVAuMYq7bx6GAPCSn8TJuKaWYfr8LHbuPYI9+0/mLntgQypUFOn3UcQE5CNm1+x+ml33XiZcmeDOgCRs1eUfKlrZIBQp1ivtikOZIamvAVhv/P1eAK/bFxHRzwL45wBuUEqdK3E8QdhhYGsHM6wc6OsooOYKF9ObqUiLwRSQ5E6kgJQAxMZbpyYgrvwNLuz0zoljHdU8T083Wtfsfe5VkCHXDNXyhTpK5yQ2D0RjbKR421gur8C37nnHmxrcGfBpjTrk876xK7oaCtqt8xqDMjWF5wBcTkSXAaij2YPhl8wLiGgEwB8B+KhS6gcljkUMLprF5uC2BOCToLrJ8bslrcVkiQPFs1mHahnOzc5HaQwc8+EOosvJaKIxp9qidcyCZTGQzkmRYIGyAg18675Yght85bRd3flsoi+R7lOZexaLdmWiNKaglJpd6L+wH82Q1K8opY4T0b0ADiml9gHYA+AdAB6lJhd/RSl1Q1ljikGsfXSxLG63/B0xBCDGocbdd9cNzWxUX1ROLevDqqw/mJvgIxoxKML0JXOSJ6rGvI5rKFMEvnXPG9yQ2qY+NJg5HeWhjmcSpDb3LEb/ZKl5CkqppwA8ZX12l/Hvny3z+UWQp1lKkcVNdTC6Ja2VFd0Uuq/+f5H58iU7xTKGspl+nqga3VPjlq0b2kJQU40H8K9PL4nsxGQdbzJ5Fts2rYsan9RZXUQ4WCzalQlSkYeg1xgdHVWHDh0q/Tlc8tfwUM150FzhbnlLUMf8lrvfYopm6AV8c8DNty8JjQO3H7oJbq8CTb/Y3ddvTsJMy4D0nEnH7ZuLmLXi9gi3NwjAi7uvE93b9axurAkRHVZKjYauWzZlLmIRy8GLSM6ppY/FGv/cjc0/MVnviLN3+YMA91qZ9fPNkuK62Y1ZJqLXEp2GT1sxm7MA4aS5bkOikcdoE765iNHqfM7qoiGrvqZRiwHLnimEmp7EELG8xHix+CPKBGfiOPTyG7hv7IpSnmHCZrLcWvnWME+XuW5IgKHaS2Y0S9nBEDZTHqpl2HXDZvb+ErNrjNDkm4sYwh3rrJYKB4sxBNXGsmYKHKG6be+RllOqGxy8LGdTHqJUFiFzHWyFZvG60UsuSkJcQ8lJRZlsrD26W4d/26Z1zsxnE6kkaB8mJusYf+xoW4TW1EzD2RJWQ6KRxwhN49s3dowBaFbj9RFue49xzmoAWDnQFyy2yO3ZxZTgx2FZMwWOUAHpD7GPsJXhbMpDlMpw+ul35jxXoRaFqUwHQHcjOrp1+Ccm63j8cDgXRr97mZEuXCVcX/9tiUYeIzTp38VoK3dOHGtr11qfmkHWR8j6yfk+oWKLvj27FKwCy5ophBZipjGHe544XlhyluQ8AGkjefIQpZSETFJnRsNn+khlOui2/T/28OfV0CSlG8x3LzPSJa82EtLAQkKTa+4m77pWNOaJybqzf3djXmGolmH1ygG2eB53Lnx7djGGoNpY1kwhZIsFmo46LXHklZwlhC21cziPRJJSipEQKw1fpmms6cDFiLSkCKBrZUhiDn8RDc23NgQ437MsP0cqe74Nn9BUVLvds/8kq8W+OdPAkbuvxWV3POm8Jva8LPaS2RrLmilIatfbyCM590JlzCORpJRiYt7NlxuQx3SwGCp4xpgEi2hovtpSLn9YmZFpnD2/b+G7IuDGXVS79e1Tvcdiz8VSLZmtsSzacXIYG2nWMIpFLDHvRU2Y2JpDeX/DIebdfP2lXWMCgOnzs866UmMj7po9HPG4zaprlQp6b0lq6BQRGlKumQ+SvtVjI8PY8ePrOz7vt1rExvbA9qGowMXtU8IFRhY7x6HruT26WLAsNQXbBrmWiTQwG5ibiCXmvchazBtSG/sbFyYm65hm+jGD0NHtyzcP+tm79h1va6Rjxt8XlQjL0hqkUnkRDa0sydM8I3aOhm++XGW9G3MXHM2LrUyE62wSgFu2bmiNVwsUvuZJJpaCNuDDsmMKrk3pijRIWUY35SaJcUjmMRUUNS9wDmbTru8bvy+Uz+6uFmMmkMbyx7z7nRPHWkX0+olw89Xrc+Vc5BEaysyBsNfQJTBx8xWS3CXmHlcCos7MBtoFhNUr+pH1Ue6kwhiTo85RkMz1Yk0glWDZMQXXpjQjDXwZrkUOX4pNshQSXzgH8+qVA21OdRfyhvJJCKTEfxRjFrS7os0phYcOvoIXT72Fhz/7E97fFi1e55qn8ceOtoilVKLlIA0ScM1XSHIPMQ1XrgPQZEy3P3oUal7BrE175vwc+vsIQ7UMb874CyFysBmDTvRbCjkFZWDZMQVuU+pIA31gdWOV2AS2MiW4mE3aqxo3RUIx+xwlBEKhfEODmYhRmgc/RYTM15991fn5M997AxOT9WjG98WPXyHeZ07BZk61pGc9h3mFhiL2+JDWE2IaXK4DAMzN858TFas9FNOUp1s5Bb06w8vO0exz+mopxWy+Mv7YUbEjjGveksqJKSW4ZY/Dhxinuj1OX39cznmnFF+6wYZ28D2wY0th56wvYsr1bPM713jveeK4+NkxRImbCx8kzNF0xJoIOdhDTti8BPf0dCP3/ubWhIuUVmiGNt85cSyZw9xGL8/wstMUfJLMPU8c75BSGnMK9zxxPHciUUp1U+pUyzuOFJJJ0VBMF3yhfDtztJ1M4ePxldnOkwtyerqBkXu/FewFAcjya6Tj0bAdy30EMII5gCZhNB2xXO0wG6G5j303E/b+lu5nbn58BaTrUzNt5kNNtA+9/AYOnDhVWLrvpelq2TEF36bk+tpyNVBscJurPjWTJGlKSnDzmHBclUXHHz2Ke544LiJUGjEEV0Ks7FA++z6cOchmlKkrU9589Xq23lCeXBAA4iTJ2PyakOQvcSzbGF7QrPP4uHxMg8t1AID+PmJNSED+yqpFGJGJmcZcR7kM85kxQlcvy2EsO6YAlBcZ4Ntc+nNuc0o2jJTgFsmmNdGYV7myuYuGYvYTYV4pESOSMMoyHPT3jV2BF0+9hWe+90bb55xWpNdXSnx8UqG9D1xlvUPjMRGTfW7eswxpVv/OFlL6CLj5Q+vx5He+zzKtvJVVuT20KusTC4Qa9gqY5ruYPdjLchjLkilwGKplHWGP+nMJtDkj1LbIFYIn3TASgluGCcc17qLgxhnTXEjCKDkCcfsjfPVOCZN++LM/Iboupg6UiZh6QSbTiY0+ipE+zXvmMd1JoMdrztm8QrABUt7KqtwesseQFzqiKYaB9iK3SaNiCgZ23bAZ448ebZO4sj5qxdeH4DNB2TA3Z2qJS0IoYyVXjRRqdsw4pfcxGayOHtP34wjEnFKs1paSScdK4hqcZsfZ8PMya6n5xC6dUaY0y50JzpezdjBre//YsfnmT58TLplVg/teO4pd4PZmytymWFRMwUCKhRgWHjBzc4ZMTnng2+R5JVfAX7wuD1Ka8jhivobRAAE3803NpENF69bUMvzjudk2e3nW31n/v6w8FZ8dX8MlpXLZwNs2rcs9Fg0fI3c1udGJbQCfUZ838dQWODRt2LZpHb559PutvTW4oh/nZ+edZjwOPgbaqwS4iilYKLoQEiegvTk56Sc1AdbIK7kC/lDMXoMj5quyPm9/XZsApXby+XwnX/rklQCA8UePom10jmkuMyJl1kPIODPU2MgwDr38RptzVaFp5gk1TgrBV+hPRwpqe//KgQuR9aGM+iJjcpnszF4WZ87PIesn1gxtY7FVR9VYdnkKZcMVp/3prRtaf68dzLByoA87jUJsHKEtiwBLiBvHkHzF68pGqJCaL9zTxwRtaS11AUOuqJ82X+3ad7xDutSNaUyUEZGiiSi31QjwFm07cOKU17maF6F8pYhmkwAADhFJREFUhrONC3nNUzONVgy/JKMeSFOUj0siXL1yAD5xLlQgsdeoNIUSYJuhDpw45XRcafWfK8hXFgEO2ZBT1n1KBYnpJE9oodQsoq/Lk8uhv7/9kaPOjG2pBlPUhu8ae0hrDN27rNBJnyn3mt1PsxqTZDypzHC+Z8WWNF9MqDSFEsBlI+7ad9y5mZVCV8ofa7ikMC3ZaAnmvrErxKWfuwGf6USDk8ht9BN534nLygWQO8t0bGQY85Gan02Qi5TJ5vZkSDgI3bvMsvA6A90uMR0ixqHxSPaShk+j8D2rWyXNy0ClKZQAbtNxEtmbMw3cv2NL1yINpA71bju6fFJ4KDHQvFbfgyPB80oF6+S43t0noRbJy1g7mOFsYz6olelnmFVCV2V9OPTyG8G19JVycPGqfiKRENCL0EmfxiQZj1SbsMu116dmsHPvERx6+Q3cN3YF62ivL4Sg3nTVcJLs5m6jYgolIE8Tnm4T4F5FNnAIqfShxEBXz+trdj+dLGRyYrIeHVZogyNYOnJGKhScm71gTz893XCWWwDaTSG+Ug6usvEcQyhS4ZVj+rEmOR/hlwg8vuKKepxcsIgC8PDBV9oc6a6Q1frUDB4/XF+0fgMfSC3iaBIXRkdH1aFDh3o9DC84YsRJhCk2Tq8qKqYCN2faBisJo107mGFwxYXy59s2rXP6RWLnO/TsGDtx0XXi5ik0Jt/vBrM+rF29UkTU8yYbcr/lfFehexaZR648NwB8eusGHDhxKjjH0vldTD4EIjqslBoNXVdpColgFxRzNf6IlQi5+9u/63WfhRQMKaTS21KZC6enG21lOR4/XE+iwvucsa58Ah+KamhSrcS+bnz7Rjaxcroxj38hmJciIbHcb3WToth7FpnHsZHhDtOQhhle60PZYcy9RMUUEsBVUEzHK7saf8Ru5hDR72VFxVQMSRJZowmBVFrWREdaR8kFn9kIgD/FtQRII6xsE9nYyHBHPSETkr1ShPD5ktHy3rMI3mTyCBT8FXA1XGHMvapVlBpV9FEC+OKVUzTnDkVL9FJK8dUVion9jonWkEYZAU2ik7cevWZ4PrjyCcqE5N25ebvuR9/D/kayV4pEGnHXcPkwknsWyTXw3V9nTXNwZW0v5WgjG6UyBSL6KBGdJKLniegOx/criWjvwvfPEtGlZY6nLJRNlEP3LzMsMIRQXSHpQeXCQF3M1HWtpGhhbFKVNPPbjlopq/EKEE6O9M3bgROn2PtK9koewqfnQztiTRCa+8T+XEJMizahGd++kU0w03Oo57SWtZNJnbVtPkuyf8veG6lQmvmIiPoBfBnAzwF4DcBzRLRPKfVd47LPADitlPphIvoUgN8HsKOsMZWFslXH0P17WVHRZ86INWHF2IldJQck9ZxiGHVsW8pu+Xby2tN97yPZK7G1wez5ULhQNM6M1DH/Hl4IELCLGkpDbKX7zVWiA2iPYvJFsbmeFVNvbDH2V9coU1P4EIDnlVIvKKXOA/gGgButa24E8NWFfz8G4CNEJRX8KRFlq46h+8dI2akRMmd0y9Fmz0ERs0TMteY6xCRF9QLc+9gVRn3gEspccM2HttnbFnvNEMa3b8Tjh+tBDSCFdn7f2BW4f8eW4LlJ8azFvjdMlOloHgZgdjd/DcDV3DVKqVkiehPAPwHw9yWOKzliJagy7t+rvANfCQegu442cw64EMgYRu3SwLJ+wuoVA84AgsUegRLKk0iNPM5lqQaQSjuXnJsUz1rse8NEmUzBJarZu0FyDYjoVgC3AsCGDRuKj6wElE2UF1uymQk9rl6ZsHxjKsKoY++x2CNQyhZebPiqw3IChJR4dtNkmuJZi31vmCiTKbwGYL3x93sBvM5c8xoRDQBYA+AN6xoopR4E8CDQTF4rZbQVCqHbBEc6pqLPj7lHL307UnRTuODmw1dsUdpzu5v7LcWzlsLe0CiTKTwH4HIiugxAHcCnAPySdc0+AL8C4G8AfALA02qppVhXaGExazPdwGJkjL2Ebz5GL7mInScp8ezmfiv6rKW0N0otc0FEHwPwAIB+AF9RSv0eEd0L4JBSah8RrQLwNQAjaGoIn1JKveC751Ioc1GhQoX8WOolWxYrpGUuqtpHFSpUqLAMIGUKVUZzhQoVKlRooWIKFSpUqFChhYopVKhQoUKFFiqmUKFChQoVWqiYQoUKFSpUaGHJRR8R0SkAL+f8+buxxEpoJED1zssD1TsvDxR550uUUutCFy05plAERHRIEpL1dkL1zssD1TsvD3TjnSvzUYUKFSpUaKFiChUqVKhQoYXlxhQe7PUAeoDqnZcHqndeHij9nZeVT6FChQoVKvix3DSFChUqVKjgwduSKRDRR4noJBE9T0R3OL5fSUR7F75/logu7f4o00Lwzp8nou8S0XeI6D8S0SW9GGdKhN7ZuO4TRKSIaMlHqkjemYg+ubDWx4no/+n2GFNDsLc3ENEBIppc2N8f68U4U4GIvkJEPyCiv2O+JyL6w4X5+A4R/VjSASil3lb/oVmm+3sA3gdgBYCjAD5gXfO/APi3C//+FIC9vR53F955G4DBhX//xnJ454Xr3gngrwEcBDDa63F3YZ0vBzAJYO3C3z/U63F34Z0fBPAbC//+AICXej3ugu/8PwD4MQB/x3z/MQB/gWbnyq0Ank35/LejpvAhAM8rpV5QSp0H8A0AN1rX3Ajgqwv/fgzAR4iYTu9LA8F3VkodUEpNL/x5EM1OeEsZknUGgN8F8AcAznZzcCVB8s6fBfBlpdRpAFBK/aDLY0wNyTsrAO9a+PcadHZ4XFJQSv01HB0oDdwI4E9VEwcBDBHRe1I9/+3IFIYBvGr8/drCZ85rlFKzAN4E8E+6MrpyIHlnE59BU9JYygi+MxGNAFivlPpmNwdWIiTr/CMAfoSIniGig0T00a6NrhxI3nkXgE8T0WsAngLwW90ZWs8Qe96jUGY7zl7BJfHbIVaSa5YSxO9DRJ8GMArgp0sdUfnwvjMR9QG4H8CvdmtAXYBknQfQNCF9GE1t8D8T0QeVUlMlj60sSN75ZgB/opT6EhH9BICvLbzzfPnD6wlKpV9vR03hNQDrjb/fi051snUNEQ2gqXL61LXFDsk7g4h+FsA/B3CDUupcl8ZWFkLv/E4AHwTwV0T0Epq2131L3Nks3dt/rpRqKKVeBHASTSaxVCF5588AeAQAlFJ/A2AVmjWC3q4Qnfe8eDsyhecAXE5ElxHRCjQdyfusa/YB+JWFf38CwNNqwYOzRBF85wVTyh+hyRCWup0ZCLyzUupNpdS7lVKXKqUuRdOPcoNSain3cpXs7Qk0gwpARO9G05zk7Xu+yCF551cAfAQAiOifockUTnV1lN3FPgC/vBCFtBXAm0qp76e6+dvOfKSUmiWizwHYj2bkwleUUseJ6F4Ah5RS+wD8OzRVzOfR1BA+1bsRF4fwnfcAeAeARxd86q8opW7o2aALQvjObysI33n//9/evYTGVYZhHP8/lkoiwRZRihsJeEFqK7WVojiIohQUQbzhpSDprlAptNadqAgWN268EeiiVZEqLlqoG+1C1GpA0iY2pXZhG0t3imAoNgFNXhffO8eTwSkxHUgmfX6rOd+Z851vJmTec+E8H7BJ0klgGngpIn5fuFFfmjl+5heBPZJ2UC6jDHTzQZ6k/ZTLf9fmfZJXgeUAETFIuW/yMPAzcAHY0tH9d/F3Z2ZmHbYULx+Zmdk8uSiYmVnFRcHMzCouCmZmVnFRMDOziouCLWqSpiWNSjoh6ZCklR3qt79dCuViJOk+SR2L65C0VdLznerPlg4XBVvsJiNiXUSsoTxTsm2hB9SNJC2rL0fEYER8uFDjscXLRcG6yRAZ/CWpL+eFOCZpTNKj2d4v6SdJe3I+gS8l9ea6DZJ+lDRErbhI6pG0N/sZkdR8InhA0sE8QxmX9ILKvBQjGTZ3TesAJe3LrPvvJZ2R9GS2zzrSl/SupIF8/Yuk3ZKGJA1LWi/pC0mnJW2tdX+1pAMqcyUMZr4TkjbltsckfSapr9bvK5KOAE+1jPM1Sbsu+S9iS46LgnWFPNJ9gH8jDqaAxyJiPSXW4a1a/PnNlPjo24A/gCeyfS+wPSLubul+G0BErKWEq30gqSfXrQGeo0Q4vwFciIg7KAWq3eWX64EG8Ajw5hw/4rkc17fAPkr8yl3A67X3bKQ8vbsWuBF4PKMsXgYezO9iGNhZ22YqIhoR8ckcx2GXuSUXc2FLTq+kUaAfOAocznYBuyXdC8xQziBW5brxiBjN10eBfkkrgJUR8XW2fwQ8lK8bwDsAEXFK0llKZhDAVxFxHjgvaQI4lO1jwO1txnwwEzpPSlrV5j2tmsVuDOir7XOqdh/lh4g4A1UUQoNSHFcD32VNvJJSsJo+neP+zQAXBVv8JiNiXf6of045qn8b2AxcB2yIiL9UklCbR/f1BNhpoJdSRNplulxsgqV6XzO15Rna///Ut2n2/Tezz8x7mK3eb+s+m/tpHX9k/4cj4tk2Y/mzTbvZf/LlI+sKETEBbAd2SVpOiTv/NQvC/cBF55zO+QQmJDWyaXNt9TfNZUm3ADdQIqc76SywWmV+8BVkquf/tDHTQq8AngaOUNJf75F0E4Ckq/IzmM2Li4J1jYgYoczR+wzwMXCnpGHKD/qpOXSxBXgvbzRP1trfB5ZJGqNcbhno9HwTEXGOkvl/PMc+Mo9uhij3KE4A48CBiPiNMpHQfknHKUXi1k6M2S5PTkk1M7OKzxTMzKziomBmZhUXBTMzq7gomJlZxUXBzMwqLgpmZlZxUTAzs4qLgpmZVf4B4d+9lH567e4AAAAASUVORK5CYII=\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.plot(x[0:n_rands-1],x[1:n_rands],'o')\n",
"plt.xlabel('Random number i')\n",
"plt.ylabel('Random number i+1')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Simplest generators of random numbers\n",
"\n",
"So how does the Mersenne Twister generator work? We wont' study it specifically, but instead will introduce some general ideas. It turns out that the simplest and the most complex pseudorandom generators work based on more or less similar ideas. Specifically, it turns out that recurrent application of even seemingly trivial rules involving *integer arithmetics* to a positive integer number can generate chaotic sequences (recall the Project from Module 2). That is, if one starts from two even very similar integer numbers (called seeds), such recurrent application quicly starts to produce very different, divergent sequences. Thus unless one knows the seed exactly, one will very quickly loose the ability to predict which number will be the next in the sequence. \n",
"\n",
"Let's illustrate this idea on a a relatively simple integer arithmetic example, where the next number $x_{n+1}$ is given from $x_n$ by $x_{n+1}=(u*x_n+c)\\backslash u$, where $\\backslash$ denotes the remaindder of the integer division by $u$, otherwise known as the `modulo` operation. We will call $u$ the mUltiplier, $c$ the inCrement, and $m$ the Modulus. Let's choose $u=17$, $c=1$, and $m=31$. The code below illustrates the first 32 numbers generated using the recurrent application of this operation to two very close seed numbers, 0 and 1. "
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"7 24\n",
"2 12\n",
"10 25\n",
"22 29\n",
"9 4\n",
"5 13\n",
"30 11\n",
"21 8\n",
"23 19\n",
"26 20\n",
"15 6\n",
"14 16\n",
"28 0\n",
"18 7\n",
"3 2\n",
"27 10\n",
"1 22\n",
"24 9\n",
"12 5\n",
"25 30\n",
"29 21\n",
"4 23\n",
"13 26\n",
"11 15\n",
"8 14\n",
"19 28\n",
"20 18\n",
"6 3\n",
"16 27\n",
"0 1\n",
"7 24\n"
]
}
],
"source": [
"u, c, m = 17, 7, 31\n",
"seed1, seed2 = 0, 1 # two very close seeds, different by just one bit\n",
"\n",
"x, y = seed1, seed2\n",
"for i in np.arange(31):\n",
" x = np.mod(u*x + c, m) # next value of the operation from one seed\n",
" y = np.mod(u*y + c, m) # and from the other seed\n",
" print(x,y)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Note that the sequences diverge immediately. Both of them cycle over all of the 32 numbers between 0 and 31 seemingly randomly, without any percievable order. Here the reason for the apparent randomness is because the modulo operation focuses on the least significant bits in the dividend, which change very quickly because of addition and multiplication. Notice that both sequences start repeating after 31 numbers are produced. This is called the *period* of the generator. Clearly, generators with short periods are not good random number generators. It is also clear that the period cannot be longer than the modulus -- and this is why typically moduli are chosen to be very large."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The example above is an example of one of the simplest random number generators, the **linear congruential generator** (LCG), which can be quite good with good choices of the parameters. Such generators are probably the simplest good generator in use today. There are many others, somewhat better ones, in use today, which produce sequences that have fewer correlation properties. The principal problem with the LCG, and the main reason why more complicated versions exist, is not the quality of the sequences that it generates at good choices of parameters. Rather the problem is that there's a strong dependence of the quality of the sequence on the choice of parameters, and there are very few proofs that guarantee the quality for any specific choice of parameters. \n",
"\n",
"Indeed, it is easy to beak the LCG generator above. Below we change the multiplier by just one, to 16, and the generator starts repeating every 5 or 6 numbers, depending on the seed. "
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"7 23\n",
"26 3\n",
"20 24\n",
"17 19\n",
"0 1\n",
"7 23\n",
"26 3\n",
"20 24\n",
"17 19\n",
"0 1\n",
"7 23\n",
"26 3\n",
"20 24\n",
"17 19\n",
"0 1\n",
"7 23\n",
"26 3\n",
"20 24\n",
"17 19\n",
"0 1\n",
"7 23\n",
"26 3\n",
"20 24\n",
"17 19\n",
"0 1\n",
"7 23\n",
"26 3\n",
"20 24\n",
"17 19\n",
"0 1\n",
"7 23\n"
]
}
],
"source": [
"u, c, m = 16, 7, 31\n",
"seed1, seed2 = 0, 1 # two very close seeds, different by just one bit\n",
"\n",
"x, y = seed1, seed2\n",
"for i in np.arange(31):\n",
" x = np.mod(u*x + c, m) # next value of the operation from one seed\n",
" y = np.mod(u*y + c, m) # and from the other seed\n",
" print(x,y)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Below we implement a good LCG with a long period and no correlations among numbers in a sequence, at least for a small number of numbers (parameters are taken from the Numerical Recipes book). "
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"# simple linear congruential random number generator\n",
"def lcrng(n_rands=1, seed=0, multiplier=1664525,increment=1013904223, modulus=2**31-1):\n",
" # seed,multiplier,modulus, and incrment are the corresponding parameters of the generation\n",
" # the default values of parameters are one particularly good generator, similar in quality \n",
" # to the built-in one.\n",
" # n_rands -- number of random numbers to be generate\n",
" rand_flt = np.zeros(n_rands) # allocate memory for our pseudo-random numbers\n",
" rand_flt[0] = seed # seed\n",
" for i in np.arange(1, n_rands): # generate the pseudo-random integres\n",
" rand_flt[i] = np.mod(rand_flt[i-1] * multiplier + increment, modulus)\n",
" \n",
" rand_flt = rand_flt / modulus # transform the pseudo-random integers into pseudo-random \n",
" # standard uniform numbers\n",
" return rand_flt"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Having defined the generator, we can now check that its default version produces correct spread of numbers over the range $[0,1)$ and shows no correlation between the consecutive samples."
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"n_rands = 1000 # the number of random numbers to generate\n",
"nbins = 50 # number of bins to histogram the random numbers\n",
"\n",
"x = lcrng(n_rands=n_rands)\n",
"plt.hist(x, nbins) # show the resulting histogram of random numbers\n",
"plt.xlabel('number')\n",
"plt.ylabel('frequency')\n",
"plt.show()\n",
"\n",
"plt.plot(x[0:n_rands-1],x[1:n_rands],'o')\n",
"plt.xlabel('Random number i')\n",
"plt.ylabel('Random number i+1')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
">### Your turn\n",
"Now we can explore how choosing parameters of the linear congruential generator affects its performance. Experiment with the function by trying other (small) values of the modulus, increment, and the multiplier. What happens if the multiplier has common divisers with the modulus? Now make sure to make your own choices, and see what works well and what doesn't. Here's one that is not too good and has a period much shorter than the modulus. Notice the patterns of correlation among consecutive random numbers.\n",
"\n",
">### Track 2: Your turn \n",
"The function `lcrng()` has to be re-seeded manually every time you call it, or it will produce the same sequence of numbers again and again. This is not good. Python has a way for a function to remember its state, so that when it is called next time, it is executed from the same point as when it was completed last. This requires replacing `return` by `yield`. Read more about the `yield` command and figure out how to change `lcrng()` to remember its state on the subsequent call."
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"n_rands = 1000 # number of random numbers to be generated\n",
"nbins = 50 # number of bins to histogram the random numbers\n",
"\n",
"x = lcrng(seed = 10, multiplier = 77, modulus = 8100, increment = 2, n_rands=n_rands)\n",
"plt.hist(x, nbins) # show the resulting histogram of random numbers\n",
"plt.xlabel('number')\n",
"plt.ylabel('frequency')\n",
"plt.title('Histogram of linear congruential pseudo-random numbers')\n",
"plt.show()\n",
"\n",
"plt.plot(x[0:n_rands-1],x[1:n_rands],'o')\n",
"plt.xlabel('Random number i')\n",
"plt.ylabel('Random number i+1')\n",
"plt.title('Correlations between consecutive pseudo-random numbers')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We finish this section by empahsizing again that modern generators used by Python and other software packages generate much better random sequences than LCG. They have fewer correlations, are robust to the choice of parameters and seeds, and can even generate sequences of random numbers that that have repeated entries, but still very long periods (indeed, sometimes true random numbers *should* repeat). This requires generators that have a much larger state than the LCG generator, which is fully described by its last generated random number. The topic of pseudo-random number generation is exciting, with new results being developed even now, mostly for applications in cryptography. You won't regret it if you explore the subject deeply."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Examples of using the standard uniform pseudo-random number to generate other types of pseudo-random numbers\n",
"Computers only know how to generate ${\\cal U}(1)$ random numbers. However, it is relatively easy to use such numbers to generate many different ones. Here we will study how to generate such different types of random pseudo-numbers using just a standard, uniformly distributed pseudo-random number. I remind you again that I am be omitting the prefix *psuedo* everywhere, calling the numbers we generate just *random*. However, you should keep in mind that the only such numbers we can generate on a deterministic digital computer are pseudo-random, and this is always implied.\n",
"\n",
">### Your turn \n",
"Make sure to run each cell below multiple times to convince yourself that the generated numbers indeed change."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Uniform random numbers\n",
"The standard linear congruential generator allows us to generate a uniform pseudo-random floating point number between 0 and 1, called the ''standard'' uniform random number. Variables $x$ taken from this generator are denoted as $x\\sim{\\cal U}(1)$. Then how do we generate a number between, say, $a$ and $b$, to be denoted as $y\\sim {\\cal U}(a,b)$? For this, we only need to scale and shift the standard number. That is, if we say that $y=a + (b-a)x$, where $x\\sim {\\cal U}(1)$, then we get $y\\sim{\\cal U}(a,b)$. The probability density for this number is $P(y) = 1/|b-a|$ when $y\\in [a,b)$ and zero otherwise. The code in the next cell illustrates this."
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# generating numbers U(a,b)\n",
"n_rands = 1000 # number of random numbers to generate\n",
"nbins = 30 # number of bins in the histogram to show\n",
"a = 1 # left edge of the interval\n",
"b = 4 # right edge of the interval\n",
"randAB = a+(b-a)*nprnd.random(n_rands)\n",
"\n",
"plt.hist(randAB, nbins)\n",
"plt.title('Histogram of non-standard uniform random numbers.')\n",
"plt.xlabel('number')\n",
"plt.ylabel('frequency')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Multinomial random number\n",
"A dice is an example of a multinomial random number with six equally probable outcomes. In general, a multinomial random variable is a random variable that can have a finite, discrete set of values, with a given probability of each of these values. A binomial random number is a special case of a multinominal random number with only two possible outcomes, such as a coin flip.\n",
"\n",
"We generate multinominal random numbers by sub-dividing the interval between zero and one into subintervals. The number of the sub-intervals is equal to the number of possible outcomes of the multinomial variable, and the length of each sub-interval is equal to the probability of each outcome. We then generate a uniform floating point number between zero and one and check which of the sub-intervals it fell into. The index of the subinterval is then the generated multinomial number. For example, the cell below produces a multinomial random number with 4 possible outcomes, each with the same probability."
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# generating integer randoms 1...4\n",
"n_rands = 1000 # number of random numbers to generate\n",
"rand4 = np.floor(nprnd.random(n_rands)*4) # we first multiply a standard uniform number by 4, so that it spans \n",
" # the range [0,4). Flooring the result produces a number [0,1,2,3] with equal probabilities\n",
"plt.hist(rand4)\n",
"plt.title('Histogram of multinomial random numbers\\n with 4 equiprobable outcomes')\n",
"plt.xlabel('number')\n",
"plt.ylabel('frequency')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"As another example, the cell below simulates a 6-sides dice, but the probabilities of coming up with each of the sides are $(0.2, 0.3, 0.1, 0.15, 0.1, 0.15)$ instead of the uniform $1/6$. Make sure you carefully study the code -- especially how we verify, which of the subintervals the generated numbers fall into."
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# generating integer 1...6 with nonuniform probabilities \n",
"n_rands = 1000 # number of random numbers to generate\n",
"p1 = .2 # the following lines specify probabilities for each of the 6 outcomes\n",
"p2 = .3\n",
"p3 = .1\n",
"p4 = .15\n",
"p5 = .1\n",
"p6 = 1 - p1 - p2 - p3 - p4 - p5 # remember that probabilities must sum up to 1, so the probability of the \n",
" # last outcome is defined by the probabilities of the five other ones.\n",
"\n",
"rand6 = nprnd.random(n_rands) # generating n_rands standard uniform numbers \n",
"\n",
"# Now we could have iterated over all generated numbers and checked which of the subintervals of [0,1) they \n",
"# fall into. However, recall that vectorized calculations are always much faster, so we vectorize these checks.\n",
"rand6 = (rand6 < p1)*1 + ((rand6 >= p1) & (rand6 < p1+p2))*2 + ((rand6 >= p1+p2) & (rand6 < p1+p2+p3))*3 \\\n",
" + ((rand6 >= p1+p2+p3) & (rand6 < p1+p2+p3+p4))*4 \\\n",
" + ((rand6 >= p1+p2+p3+p4) & (rand6 < p1+p2+p3+p4+p5))*5 \\\n",
" + (rand6>1-p6)*6\n",
"\n",
"plt.hist(rand6)\n",
"plt.xlabel('number')\n",
"plt.ylabel('frequency')\n",
"plt.title('Histogram of multinomial random numbers\\n with 6 outcomes with different probabilities')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
">### Your turn\n",
"Look at the histogram above. The bins are not positioned uniformly, and are not centered about the integers $1,\\dots,6$. Figure out how to make the figure look nicer."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Exponential random numbers \n",
"Real-valued variables that have an exponential distribution are also very common. For example, the time between two subsequent nuclear decays, or the time between two nearby spikes in the simplest models of neuronal dynamics is exponentially distributed. Why is that? Nuclear decay has a finite probability $r \\Delta t$ of happening in any interval of time $\\Delta t$. For the next event to happen at time $T$, it must not happen in all of the $T/\\Delta t$ previous windows of the width $\\Delta t$, and then it should happen in the window $[T,T+\\Delta t)$. Combining these, we get the probability of the next event in the interval $[T,T+\\Delta t)$ being equal to $P_{\\rm next event}(T:T+dt)=(1-r \\Delta t)^{T/\\Delta t}r \\Delta t\\to e^{-r T}r \\Delta t$, so that the probability *density* is $P_{\\rm next event}(T)=r e^{-\\rho T}$ (here we used the, so called, *first remarkable limit*; make sure you can do this calculation). More generally, a random variable $x$ is called exponentially distributed with the *mean* $x_0$ (or the *rate* $r=1/x_0$) if the probability density function for this variable obeys $P(x)=\\frac{1}{x_0} e^{-x/x_0}$. We denote such variables as $x\\sim {\\cal E}(x_0)$. The distribution with $x_0=1/r=1$ is called the *standard* exponential distribution, denoted as $x\\sim{\\cal E}(1)$. \n",
"\n",
"Numerical generation of exponential random numbers illustrates a few important properties of probability distributions. First of all, if we have an access to a standard exponential random number, then by just multiplying it by $x_0$ we will get the exponentially distributed number with a mean of $x_0$. That is, ${\\cal E}(x_0)=x_0{\\cal E}(1)$. This means that we only need to figure out how to generate standard exponential numbers, and the rest can be obtained by a simple multiplication. \n",
"\n",
"Note to self: Figure is needed here \n",
"In its turn, for generation of standard exponential numbers, let's go back to our definition of the probability densitiy of a continuous random variable as a limit of an ever-finer discretization of probabilities of observing the variable in segments of the real axis. Suppose we have a real valued variable $x$, which is distributed according to $P(x)$. This means that the probability of having a sample land in the interval $[x,x+\\Delta x)$ tends to $P(x)\\Delta x$. Suppose now we have defined a new variable $y=y(x)$. We can invert the functional dependence and write $x=x(y)$ (note that we are now assuming that such inverse function exists!) Of course, $y$ is also a random variable. How is it distributed? We note that the probability of a sample to land in our interval should not depend on whether we marked its end points as $[x,x+\\Delta x)$, or as $[y(x),y(x+\\Delta x))\\approx [y(x),y(x) + dy/dx \\Delta x)$. In other words, $P(x)|\\Delta x|=P(y)|\\Delta y|$, where we added the absolute value signs to ensure that, even if an interval is negative (is read from right to left), the probability is still positive. This gives, in the limit of small $\\Delta x$, $P(y) = P(x(y))\\left|\\frac{dx}{dy}\\right|$.\n",
"\n",
"How does this help with generating exponential numbers? Suppose that $x$ is a standard uniform number, $x\\sim {\\cal U}(1)$, so that $P(x)=1$. Let's choose $y=-\\log x$, resulting in $x= e^{-y}$. Then $P(y)=P(x(y))\\left|\\frac{d e^{-y}}{dy}\\right|=e^{-y}$. In other words, the variable $y$ is a random standard exponential variable, $y\\sim {\\cal E}(1)! So generating samples of such random variables is easy -- just generate standard uniform random numbers and take the negative log of them. \n",
"\n",
"Below we implement such generation of standard exponential random numbers and compare with the built-in function for their generation, `nprnd.exponential()`. For this, first, we generate exponential random numbers using the built-in function. Second, we compare the built-in functio to our own generator. We also do the comparison on the semi-log plot to illustrate that the numbers in both cases are, indeed, exponentially distributed. The built-in and log-uniform are indistinguishable. Maybe this should not be surprising since, under the hood, the built-in function generates the random numbers in exactly the same way as our own! "
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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nHfeeUyYMIGePXvyjW98g0mTJvGZz3yGLbbYYrV5Fi1axOmnn87UqVNbvA0dwR133MG2227L0KFDqxaDjyDMrMM7+OCDOe+81bt0njRpEosWLSo5zxZbbNHhk8MHH5TvYO6OO+7gySefbNHy3n///eYnagEnCDNb495//32OO+44hg0bxqGHHsqKFSuAVD7ntddSB3hz585l5MiRQEoE48ePX2UZU6dOZe7cuRx99NEMHz6ct99+e5XxCxYsYMcdd2ycf8yYMYwaNYohQ4bwzW9+s2Rc06dP52Mf+xh77703p59+OqNHjwbgrbfe4vjjj2e33XZjl1124be//W2zy73nnnv4xCc+wcc//nEOO+ww3nzzzcZtvOCCC9h77725/fbbue6669htt93Yeeed+eIXv8iKFSt46KGHmDZtGueccw7Dhw/nueeeY/78+YwYMYJhw4bxhS98gTfeeAOAkSNH8u1vf5tPfvKTXHHFFa1+T0qpyQThq5jMatvTTz/NuHHjeOyxx9hoo4245pprWryMQw89lLq6OqZMmcL8+fPp0aNHk9PPnz+fW2+9lb/+9a/ceuutvPjiqr2erly5kpNPPpnf/e53zJo1i8WLFzeO++EPf8inPvUp5syZw/33388555zDW2+9VXa5r732GhdddBF/+MMfeOSRR6irq+OnP/1p4/K6d+/OrFmzOOKIIxgzZgxz5szh0UcfZfvtt+eXv/wle+65JwcffDCXXnop8+fPZ5tttuHYY4/lkksu4bHHHmOnnXbiBz/4QePyli5dygMPPMDZZ5/d4texKTWZIHwVk1lt23LLLdlrr70AOOaYY5g1a1bu69xvv/3o1asX3bt3Z+jQobzwwqr16v72t7+x9dZbN94zcOSRRzaOu+eee7j44osZPnw4I0eOZOXKlSxcuLDsch9++GGefPJJ9tprL4YPH87kyZNXWd/hhx/e+Pjxxx9nn332YaeddmLKlCk88cQTq8W+bNkyli5dyic/+UkAjjvuOGbOnFlyee2py56kNrPqKb78suH52muvzYcffgjQ4uv3//znP3PyyScDcMEFFzBs2LBVxq+33nqNj7t167Zae31TnadFBL/+9a/ZbrvtVltnqeVGBPvvvz8333xzyeVtsMEGjY/Hjh3LHXfcwc4778ykSZOYMWNG0xvazPLaU00eQZhZbVu4cCGz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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"n_rands=int(1e5)\n",
"# First, we generate exponential random numbers using the built-in function.\n",
"plt.hist(nprnd.exponential(size=n_rands), 30)\n",
"plt.xlabel('number')\n",
"plt.ylabel('frequency')\n",
"plt.title('Histogram of built-in standard exponential numbers')\n",
"plt.show()\n",
"\n",
"# Second, we compare the built-in function to our own generator. We also do the comparison on the semi-log plot\n",
"# to illustrate that the bumbers are, indeed, exponentially distributed. \n",
"plt.hist([nprnd.exponential(size=n_rands), -np.log(nprnd.random(n_rands))], 30,log=True)\n",
"plt.xlabel('number')\n",
"plt.ylabel('frequency')\n",
"plt.title('Comparing histograms of built-in\\n and our own standard exponential numbers')\n",
"plt.legend(('built-in generator', '-log U(1)'))\n",
"plt.show()\n",
"\n",
"plt.hist(-5.0*np.log(nprnd.random(n_rands)), 30,log=True)\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## A uniform random number in a circle\n",
"Let's suppose we need a uniform random number in a circle around $(0,0)$ with a radius of 1. This is not a trivial problem -- and, in fact, some of consulting and data science companies use this during interviews. We will explore multiple different ways of generating such numbers. First read the methods and ask yourself: Which of these will work? Which of these will be the fastest? Then we will look at implementations and see if your guesses were correct.\n",
"\n",
"**First plausible method**: We will generate a random $x$ coordinate and a random $y$ coordinate. We will combine the two to fine the angle defined by them. We will then generate a uniform radius between 0 and 1, and we will put the point at this radius and at the chosen angle. \n",
"\n",
"**Second plausible method**: We generate the random radius and the angle directly, and generate $x$ and $y$ pairs directly from the angle and the radius.\n",
"\n",
"**Third plausible method**: This is similar to the second, except that the random variable we generate is $r^2$, not $r$, and we then calculate the distance to the point by taking a square root of the pseudo-random generated number.\n",
"\n",
"**Fourth plausible method**: We generate a random $x$ coordinate between $(-1,1)$, and the same range for the $y$ coordinate. We then reject all of the points that fell outside the unit circle. In this case, we do not know how many pairs of points to generate precisely, because we do not know how many will be rejected. So we make an estimate: the area of a square is 4; the area of the unit circle is $\\pi$. So if i want to generate $\\mbox{n_nands}$ points, I should generate instead about $4 \\mbox{n_rands}/pi$. I then check how many actually got generated, and if not enough were, then I request the missing number to be generated additionally. This is *not* the fastest way to implement the rejection method (we will discuss this a bit later), but probably the cutest: the function we write for generating numbers on a circle calls itself *recursively* if it needs to generate the missing numbers.\n",
"Note to self: Need an explanation of scoped for recurrent calls here. Figure would be useful. \n",
"\n",
"Once you have thought about these method, run the cell below. "
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYYAAAEICAYAAABbOlNNAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJzsvXt4XVd5J/x7JR/bkqGWTAxNRHwB0rjkc2MTlaTjTovTkFAySfSRBIcm09BCM5Sh/TBUH86QDztpmKj10KSd8hUylHIJJM6FCqem4wBOps+EhkauZIwhLrk6OU7BYCsFS7GPpHf+2Hsdr7POuu69z0XS+j2PH+vs69p7r/XeL8TMiIiIiIiIEOho9QAiIiIiItoLkTFERERERNQgMoaIiIiIiBpExhARERERUYPIGCIiIiIiahAZQ0REREREDSJjaDMQ0Qoi+hkRdbZ6LKEgIiaiN7R6HEWCiB4hove2ehztACI6QERvyXhu28+NIsdIRM8S0UVFXKsViIxBg/SjTqYE+odE9DdE9AqP81alk2tB4L2qE4iZDzHzK5h5Ouv4IyIaAWY+h5kfaeUYiOjd6Rr7M2X7QLr9c57XaRnDJ6JBIvouEf2UiJ4hosFWjMOGyBjMuIyZXwHgTQB+GcBNLR5PoQhhXhH5QQnm7Hpr8nx6CsAm5Z6/DeBfmjiGPCAk4+0F8DYAHyCia1o7pFrM2YlaFJi5DODvAfxfQL2ET0TbiOiu9Oc/pP+Pp9rGrxDR64loDxH9hIh+TERfIqKe9NwvAlgB4MH0+P9X1jqI6BoiGpHHQ0SbiWhn+vciIvpvRHQo1Ww+RURduudIJa1Hieh2IjoKYJttbNKz/hERfYeIXiKiHUS0WNo/SEQvEtFhIvpd5X5LiegLRHSEiJ4jopsEYVTGMk5ETxPRv0u3P09EPyKi603fJJX2/ji9xk+J6CEiOi3d9xYiekE5vvrN0u91HxHdlZ67n4h+gYhuTO/7PBFdrNzy9UT0T+k7+CoRLZOufQERfSt9jn0kmVrScX6ciB4FMAHgdekzPi1Ji9cannEREd2RvtvD6d+L5Gckog+nY36RiH7H8r5+h4i+n97zaSL6T6Zj0+N/Tzr+e0T0JsN7vD99j/8G4N1E1ElE/4WInkrP3UtEZxqezWveGvCvAPYDuCS93jIA/w7ATuU+2m9DRB8H8O8B/CUl6+4vpdMuIqIfENExIvokEVF6Tkc6h59L3/kXiGipdK//mO77CRF91DZ4Zv5TZv5nZp5i5oMAvgpgQ8DzNx7MHP8p/wA8C+Ci9O8zARwA8MfqvvT3NgB3pX+vAsAAFkj73wDgrQAWAViOhHncobuXeg0A3QB+CuAsaf/jAK5J/74DyWJYBuCVAB4EcJvhmd4NYArAH6TX7vIc2z8BOCO9x/cBvC/d9zYAP0TCMJcA+HI67jek+7+AZMK/Mn2mfwHwHmUsvwOgE8CtAA4B+GQ6lovT536F4VkeQSI1/kL6HI8AGEr3vQXAC5bvuQ3Ay0iIyoJ0nM8A+CiAEoDfA/CMcq+y9JwPSN+7D8BPALwdiZD11vT3cuncQwDOSe+1FMC/ATg73X86gHMMz3gLgMcAvDr9Nt/CqTn4lvT93ZKO+e1IGE+v4VqXAng9Ekn119Nj32Q49ur0eX85Pf4NAFYa3mMFwED67F0ABpEQ7LPTc88F8Kr0eHluWOctgHEAv2qZx/8bwG8B2JFuez+ATyOZR58L+DbvVa7NAP4OQA8Sge0IgLel+34XwJMAXgfgFQC+AuCL6b43AvgZgF9DMn//LP0+F+meQbknARhFuq7a5V/LB9CO/9IF8LN0gj4H4P8H0CXt82YMmmsPABhV7qVlDOnvuwB8LP37LCQEszudUMcBvF4691cgETXlvu8GcMjx3LqxXSf9/lMAn0r//ixSYpz+/gWx+JEQ+xMA3ijt/08AHpHG8gNp39r03NdI234CYJ1hnI8AuEn6/X4A/zP9+y1wM4avS/suS791Z/r7lelYeqR7yc/5RgAn02f8CFLiIO3fDeB66dxbpH1L0jl1pZhPlm/xFIC3S78vAfCs9IyTqBVAfgTgAs/5PQzg/zHs223Zp77Hf1D2HwRwheFcMTeC5q1hHv9vJIzoh0iY7WNIJG6ZMfh8Gx1j+FXp970AtqR/fxPA+6V9ZyNhjAsAfAzAPcp3Pgk/xnAzgH0AFvk8f7P+RVOSGQPM3MPMK5n5/cw8meUiRPRqIrqHiMqpyn0XgNMCLvFlAO9K//4tAMPMPIFEiuwGsDdVlccB/M90uwnPZxjbv0p/TyCRloBEi5Cv95z092kAFirbnkMixQn8UPp7EgCYWd1mc/ibxuUD9T4/5lPOfvGd5eupz1lC8owrAVwt3n/6DX4ViSZQdy4zHwewCcD7ALxIRLuIaI1hjGeg/v2dIf3+CTNPSb+N74CIfpOIHiOio+kY3w7zHDwTCVPywfPKb59zs8zbOqTrcRcS399pzPyocojPt9HBNt/V77EAwGugrIX0O//E9QxE9AEkvoZLmfmE6/hmIjKGcBxHMrEFfl76W1eq9rZ0+y8x888BuA6J1GQ7R8ZDAE4jonVIGMSX0+0/RkLEzkkZWA8zL+XEYW6Cei/X2Gx4EQkhEFgh/f1jJNLUSmV/2fPaeVDzfSgJ+w0iOhqoz1lB8ozPI5FKe6R/S5h5SDq+5p0z825mfisSAvUEgP9huOdh1L+/w6EDT/0SDwD4b0g0sh4AX4P5Oz+PxOzkA3U++ZybZd6a8AUAHwbwRc0+17cJLSut+x5TSISMmrVARN0AXmW7GCU+uS0AfoOZX7Ad2wpExhCOMQDXEFGJiPoBXCXtOwJgBokdUuCVSM1SRNSHxA4r44fK8TVIpcL7AWxHYpP9erp9BglRuZ2IXg0ARNRHRJcEPItrbDbci8Th+MZ0IWyVxjyd7v84Eb2SiFYC+BASjaTR+BcAi4noUiIqIZEoF+W85nXSc94C4P70Ge8CcBkRXZI6XhenjuHX6i5CRK8hosuJaAkSU9vPAJjCku8GcBMRLafEsf4xZHt/C5E8/xEAU0T0m0h8OCZ8BsAfEdF5lOAN6ffzwWcA/DERnZWe+0tEVEMgC5q3Av8Lie/gv2v2ub6Ndd1pcDeAzUS0mpLQ9f+KxMch1ud/IKJfJaKFSOaIkbZSEnDwXwG8lZmfDhhD0xAZQzj+PyRS0TEk9kEhwSM18XwcwKOp+npBesybALyERPX9inK925AQgHEi+iPDPb8M4CIA9ynmg48gcYg9lpqCvoHE9ukL19iMYOa/R+JE3JOOYY9yyB8gkd6fRmIT/jISv0RDwcwvIfE5fAaJhnIcQF6J7IsAPofEzLAYwB+m93oewBUA/gsSwvs8EuZqWlcdSCTcwwCOInEEv99w7K0ARgB8B4lD95/TbUFg5p+m470XyZz9LSjRO8rx9yGZw19G4s8aRiKQ+ODP0vs8hMTJ/tdIfAEqrPM2jRT6966bcYJvMvNRzT7Xt/lzAFel0Ud/4fFsn0UyD/4BSbDCy0jmOJj5AID/jOSdvYjkPdvm3K1INIrH02f9GRF9ymMMTQOlDpCIiIiIiAgAUWOIiIiIiFAQGUNERERERA0iY4iIiIiIqEFkDBERERERNZiVhdROO+00XrVqVauHERERETGrsHfv3h8zszOvZ1YyhlWrVmFkZMR9YEREREREFUT0nPuoaEqKiIiIiFAQGUNERERERA0iY4iIiIiIqEEhjIGIPps2r/iuYT8R0V8Q0ZOUNH15k7Tv+rQxxg/I0pwlIiIiIqI5KEpj+BySxi0m/CaSXgJnAbgBwF8B1c5LWwGcD+DNALYSUW9BY4qIiIiIyIBCopKY+R+IaJXlkCsAfIGTwkyPEVEPEZ2OpOHI10URLCL6OhIGc3cR44qIKALDo2Vs330Qh8cncUZPFwYvORsD6/vcJ0ZEzFI0K1y1D7VNPV5It5m2R0RkRpGEfHi0jBu/sh+TlaQ6dnl8Ejd+ZT8AROYQMWfRLOezrikIW7bXX4DoBiIaIaKRI0eOFDq4iLkDQcjL45NgnCLkw6PZegRt332wyhQEJivT2L77YAGjjYhoTzSLMbyA2i5Yr0VSk960vQ7MfCcz9zNz//LleRtyRcxVFE3ID4/rO7qatjcCw6NlbBjag9VbdmHD0J7MTC4iwhfNYgw7Afx2Gp10AYCXmPlFJM25Lyai3tTpfHG6LSLCCBuhLJqQn9Gj6zNj3l40itaAIiJ8UFS46t0A/hHA2UT0AhG9h4jeR0TvSw/5GpJOXk8iaev3fgBInc5/DODx9N8tum5MERECLkJpI+RZJO/BS85GV6mzZltXqRODl4Q0ysuOaMqKaAWKikp6l2M/I2l9p9v3WTSh5WPE3ICNUA6s78PgJWfXOIuBhJBvXLM8kxNZ7GtVVFI7mLIi5h9mZRG9iPkLF6E0EXIXQ7FhYH1fIYwgS7TUGT1dKGueuae7lHs8EREmRMYQMatgIpSyCUlHyDfvGNNeL4/kHULos4a9Dl5yNgbv34fKdG2w3s9ensLwaNl6v7xaTszfmL+IjCFiVsFkKnLZ/H0YioAPQQwl9CaNZdvOA05T1radBzA+WanZXpnhqrYzPFquOWbJwk6cnJpBZYa9xqZDzN+Y34hF9CJmFQbW9+G2d6xFX08XCEBfTxdue8daK7EaHi3j+Impuu06huIbBRTqFDZpJuOTFacT/CWFKcjXHB4tY/C+fTWM4/jJ6SpT8BmbDtHpPb8RNYaIWYcQm78q+Qr0dpew9bJz6q7j64sIdQqbNBZxT9vz2LSd7bsP1jEBE0LMZtHpPb8RNYaIOQ0doQeA7oULtMTYlyCG5jfYTF0uYmsLmQ0h1CG5F63O34hoLaLGEDGnUZRkrxJEH1+H6qtYsrATx0/WMykXsbWFzG7ffdCoiajYuGa5dlyyD0XsK49PglBbn6bo/I3o3G5fRMYQMecgE5wOIkxzvamlg0gb1RPi3F60oKN6nGqa0jlvdSCcItg2mMxng5ecjcH79nmZk3Z950X0r1xmdCoDqNknipkxEl9OkYQ7OrfbG5ExRDQcPhJqUVKjSnB0TEFs1xEin4Q2nd/i5cpMzfVNJiwVDOCBvWX0r1yW6bnFObrIJRXHJiq4+cEDVqeyuk8whUe3XBg8Nhvy5JVENB7EhoXTzujv7+eRkZFWDyPCAzoi2lXqxG3vWAsAdft8JFQbM9kwtMfbtAJkI3qme8jXWr1ll75McIHjMGH9LQ/h2ISdSagQZY51YyYAzwxdmndYNTC9n0bcK+IUiGgvM/e7josaQ0RDYZMMJ05OaSVUwGxacJkgQqNmskTZ+PgtbFFIRY3DhCyynvBz+OZ6uODSBEPySiKajxiVNMfR6pLNJoJXHp90SrW6uHlXfL2JsHSSrvVHNkLkE7GjiySyYWlXCetveQirtuzCqi27sO7mhzJ/K1PeAwD0dJWMEU5FFQz0yQVpdXHCCDsiY5jDaIeSzaGEWoXKWFzSuongvOv8MwsjRD5ETSTi9XS5axqVOgg/PTFVwyjHJysYvG+f17dSmb+pjhIB2Hb5OcYEwSzJgzr4JMcVda+IxiCakuYw2sHBZ4ry8XHMAvWMxccEYYoW6l+5rBBHt2/FVUFsVbPKxjXL8fATR6q/J05OabUnueyFCTrTWqmDUOqkmvpKBODaC1ZUr2W6ZhEFA31DhIsqThhRPCJjmMNoh+xVW7VTlw1eJ9Hbwkld0UJFEiLbtXT2dZtjefWWXcZ9rm+lY/6VGUZPVwlLFi1oSY5AT3dJy+hiRdjZg8gY5jDaxcFnIqIqES91EF6xeAHGJypWKRzQS+sbhva0XEPKEp9vc1S7vpWJcbw0WcHY1ot9h10oTM7vWRgAOW9RCGMgorcB+HMAnQA+w8xDyv7bAWxMf3YDeDUz96T7pgGIDJtDzHx5EWOKyF6JtBnI0wDHxGjaQUPKYr4zldYudVChVWOLhinyyOT8Nm2PGdDth9yMgYg6AXwSwFsBvADgcSLayczfE8cw82bp+D8AsF66xCQzr8s7joh6tLr7mAtF25jbQUMySf425iTewc0PHqiaYHq6Sth2eX2RPxW6zGcfhpIXNs0otMR5zIBuPxShMbwZwJPM/DQAENE9AK4A8D3D8e8CsLWA+0bALW3NJwefTkMqdRAmTk5h9ZZdDWeMw6PluvpCAowkMc50/1zfSQ3w8gv4ygS5lpIKoRm5/EDyfNXlssgRTHmEmqiJZEcRjKEPwPPS7xcAnK87kIhWAlgNYI+0eTERjQCYAjDEzMOGc28AcAMArFixooBhz37MVWkr64JWNaSlXSUclyJ+Gv1+tu8+aM12znN/0zvZvvtgnQmqMu2OZsoCUwlzGYfHJ42aKoC6+WqCeFdZ5/ZcXRvNQhGMQSefmNbHNQDuZ2Z5Zq1g5sNE9DoAe4hoPzM/VXdB5jsB3AkkJTHyDnouIGs4ajtLUj4L2jZ+WfLeMLSnrn5QI53RPr6MLPe3vZNm+lV86j/JmpEaiaULDjChkyhXIEE7hGrPZhSR4PYCgDOl368FcNhw7DUA7pY3MPPh9P+nATyCWv9DhAVZiIIr6a3VmdKu5KiQpL1mO6N9fRmh97e9k2b2TfAdt+mb+J7fVeo0Fj/0vUY7BCLMZhTBGB4HcBYRrSaihUiI/071ICI6G0AvgH+UtvUS0aL079MAbIDZNxGhIAtRMBGZD9+7DzcN729YprQvw3Et6JCWk81uNuNbBiP0/rZ30szSEiHj1n0T0/k9XaW6DOi+nN8uNhrKh9ymJGaeIqIPANiNJFz1s8x8gIhuATDCzIJJvAvAPVxbzvUXAXyaiGaQMKkhOZopwo4s4agmIjPNjC89dqjOBqhTv0NNUSH2XldES4gkuHHNctz12CHt9kZAtq2b7OelztqIIZ93aXsnvmXCizAdhmaxq9/EdL4p+ipPqLXpXhvXLMeGoT1taUZtJxSSx8DMXwPwNWXbx5Tf2zTnfQvA2iLGMB+RJRzVlkxlctzICzyLUy/E3utidiGhkA8/cUQ7HtP2IiB8HKbS3EuklqK+79L1TlxZ2EU5YUOz2NVvEjJfQ461MT61FMkDe8vRIe2BmPk8yxEa5qgjMi6c0dPlFaZoGkeIlO8iCKbxT5ycquvI1ko7sy0jWcCXYebJRynaCeubxW6S7kPmq+nY4dGysTGRSuzl89shM362IDKGeQaxAD587z6tg0/X53fjmuVeYYomhCaeqcXnNu8Yq8bHi/GrhOHYRAU3fmU/Rp47Wi1QZ2rr2Qw7s88z+zIuWSJe2lXCxMkp7TvxuZZrexYUmUjpMnsNj5adrUxNxD46pP0RGcM8hFgwOinvyvP6aip/ClOBS8OwEdssvhCXCWT77oPaUFTZT6JjCrr7ytpQZ8pMXD2OXef4PLMP81Dfg/zMeeowiXsU5X8oIpFS98037xjDB3eMVd/t9t0Hvfpb64h9O2TGzxZExjBPESLlbd4xZr2W6lDNcy8Bkwlk284DVueujmR0EmGG2at/s2AmNqLrcw5gLv8t4MM8XEzZpw6TbzXaVtvcdc+qdvTLWq4daO/aYe2GyBjmMXylPFebStmhmvdeAib1fnyy4mx6r2KG2dhH2EZ4TUTXdc5H/3Y/Jk5O1zApufy3gA/D9DFz+NRhatdqtDJczzpZma5qZzbY/BtA+9YOaydExtBk+KjupmNakbE8PFrGxMkp6zG2VpJZEdozGaj3j8jXMsFFjHT7XeccP1nPNEwE18Uwl3aVnIzQZQox3aPdbO4+39zFFFwmQB8BpZ0rAzQLkTE0Eb7lHnTHjDx3tOmhdj61cYDG2GhDo6f6NOGIgNtU4CJG6rMNj5aNTm0XQgnu8GgZxx1M2VSczoeYtZvN3eebmzSGnq5SIf0n2s281irEns9NhE/WrumYu7/9vHfGbyPHq6JRNtqB9fU9gXsNHcD6errw6JYLcevA2uA+wrZsZfXZBNHIwhSAcIKrK5AHAB2EmucDkCljvdFZ06HlVeRvDtQXYbOVyihKa7VVBmh2eZhWImoMTYSP6m7LTA65ZhHwufbikl22yKOWq2q/ToNRCVmoL0PNVrZFJbkYZV9PF46fmNKafggIJrhGBzujxmdi8xWIcZsKDtr250FWyVv+frq5I/eskFFU21Db+ptPmkNkDE2Ej+puOsakQjdS7TeNRbbli/wBwB29k1ctbxQh82UmJqJBOEWodcyLAFx7wYrgiqq+PhPTuHxKVxcRZqpDaGKdSYBQj92284D2fqFKnOl+NtPifEqGi6akJsJHdTcd867zz2xasTTbWHTEymTSCil454uB9X14dMuFeGboUjy65cKmLlKfwmw6E9jtm9bh1oGwyi+m3g46zcM0Llvp6kYjxLEdUjE3tG2oDrb7uQohzpdkuKgxNBE+Eq/tmP6Vy5oaLaEbS0jrynaLeskL3zj4IqRw0zti1GtbeYvbNQIhjm1f7cLm+A/RnG33Ez0kTJUB5ksyXGQMTYYP0TAd0yi1P2QspuJwugUT2vs3C9PLG1oYcr6uHIfLx5IVNpOiWhPKJEz4FrfLA9P7C0km8xEgbI7/UM3ZdT9bZYD5kgwXGUODMddiokMWvO+xWX0ReX0YtvMBs2Z3YupUsprNx5IHptBNkxPUJDQ0krj5vH+fue8jQJgc/51EzsizLPeb78lwxBlD71qJ/v5+HhkZafUwnDBF0YRO5HZDCLPzOdakhYgwVBOynCePx2SW6Okq4cTUjPa7maRwW9kN2xhc5aQ/dO8YdKWBXO8m9F5ZkPW76cboWiert+wy+lxMWe157jdXQUR7mbnfdVzUGBqIudp3NsSk5XNsqC/CVgLcdZ6uxpEKXbip+G6ucGKX1hKq5Zjqxfn6CRppfizKh+QjnWdNxvPt1eDDMOea9m9DIYyBiN4G4M+RdHD7DDMPKfvfDWA7ABFm8JfM/Jl03/UAbkq338rMny9iTO2AueZ8bRRCfRGu7FgTsfBJ2LPB5YAXsDH/EGHBFj3UDk7QIjOnXQysERV6Q31R8ykjOjdjIKJOAJ8E8FYALwB4nIh2alp07mDmDyjnLgOwFUA/koCLvem5x/KOqxlwSRDtVnIgDxolLZlqMZkWvYu4E5JFu2FoT6aCdF2lTiwudWiTqMRz+5TqKI9P1jmJbWMIrcnUDCfoTcP7cfe3n8c0MzqJ8K7zz6wJu210tVJ1zulKwtvmYBEae54GVbMZRWgMbwbwJDM/DQBEdA+AKwD49G6+BMDXmfloeu7XAbwNwN0FjKth0HWQ0kkQc6XMr61+U8hCla8nFpsuL6Knq2TsA2wjlvK1dN/DJe2LbGfA7LRVzRC2ukk6iTJEWDAd29NVajgxuml4f02/7Gnm6m/BHJqdOf3A3nKQHyCvxu6jnc5V7b+IWLs+AM9Lv19It6m4koi+Q0T3E9GZgeeCiG4gohEiGjlypHE9e10Qk8VmhxYYWN+HK8/rQyclVV86CAAYm3eMedWOaReYJK+7HjtUkyQ0eP8+rLv5IWttHDm5CNBn9i5ZZC7jbUvmciXeDV5ydl39HQHhMBUmBjlJrbe7hEULOqrfbeS5o9Xzfq5rAUod+qvqkslC6hOZjt12+TmGpygOd3/7ea/tjUo4zJocKddn6iD9d+lIQ36zjEHFbNT+fVCExqB7++oafRDA3cx8gojeB+DzAC70PDfZyHwngDuBJCop+3DzwTVZ1NjrB/aWqxLlDAOTaV3+RtgoG2Xu8ZWKKtNcZZim5/NZbDbnscns5JPMNbC+Dx80NB1S7ykYhE5ylSXpYxMVlDpN7EZ/XcBPys4rkYfOB/l40wLLWkAwFFmkfd/gAt+6R655ryuyOFec00UwhhcAnCn9fi2Aw/IBzPwT6ef/APAn0rlvUc59pIAxNQyuyeITey2Qx0apTkK15HSRjCdLbwRA/3w+TEaW6MQz9nSX8LOXp+raOgqzky2ZS35XoTWnfBhZZZqDrlt0VJcOoc5S3xLrnQYpvGiY5hwDWv8REBZc4LP2bPNeLbI415zTRZiSHgdwFhGtJqKFAK4BsFM+gIhOl35eDuD76d+7AVxMRL1E1Avg4nRb28KmOqoShA8RFE5KFbaSxbpaL1967FDD6uK46sfYoL4DH9V7mhkf2jGGwfv3VZ/x2ERF2+tXmJ1MZpeNa5bXvKvQzFlfbWmaOXMtq9Dy1D4INcX4EtVp5qaYQW1zzlRLKdTe7zreNKfu2LSuzmxmK9dd5HdtFnIzBmaeAvABJAT9+wDuZeYDRHQLEV2eHvaHRHSAiPYB+EMA707PPQrgj5Ewl8cB3CIc0e0K04Tt7S7hyvOSJvViIviWAlYnuauomK03rooQR5tKnMS2zTvGsGhBB7IIiyoj8GUyM4C2F4EKuYyBrhfDw08cMWbM+vRs8LUhi+uE9IIAwgrIhcAk6YbmfpiuUcQYZajzD0BNbwYVOiYXau93+RpMcyokKGKaudDv2izEzOcM0NkSgfpIllLaUcWHwMnZoqaMUtGlypQF6rqu7Xnqxt5JAKNGStdtE5FAvRpTjymbVH1/WcxU6jOqpgVXEpxvxqyPiSVP1mxR2cMqXn/j17TaUScRnrrt7UHjAPQMJe8YBVyZyL5Zz8OjZWzeMWY8Vre9qIxn0/tTUdQ7y4qY+VwAbDXidWUdVOJRmWH0dJWwZNGCqp1cFx8P+DXrGZ+sYHi07NUnAfA3Zeg0EB0zq0wzertL6F64QOtg83W+qe9v1ZZdzjHaUB6fxOB9+3DzgwcwPlEx+iNk+EqXOgfwxjXLM4Xp6tCoJEib43X1ll1147aFVm/2dNiHwjdHwLRuVI18YH0fRp47ii89dqhuHVx5Xl81J8N0H9c4bd/bN79ltoS3RsZgQKgzyfTBX5qs1PSi9alOapOit+8+aFzEoQlArrHrMD5RwejH9L11fR2l6kLrLnVgojLjPK/USViycIE2VLgyw1XiYWK+AqG5JHkcwC6C0qgkyD7LHJJNGwJCONB1sGtEldaQHAGTUUO3/daBtcby9F+Sosl09/EZp4kO+Oa32Jzn7YTYqMeA0N6vPk1cAP9mPSYcHp802j5vHVibKaY8ZIHnJVg6m3plhqGmApTeQFR7AAAgAElEQVQ6CdddsKLmGbdfdS7Gtl5szEXwga/tPy90z/nBHWNYf8tDNfOnUX2XfXw5k5Vp3PzggZq8EuFEV7WJ0DEOj5ax/paHsGrLLqzasgvrbq597pAcgSKa88jX890OhDnx5ZyOT7zz3GDneTshagwG2JxJg/fvw7adB/DSZKUqkYQ0cQHczXpMvW3FJC6yOJpu7Dp/QhEEy2S2kk1US7tKIAK+9NghnNGTdEDzyR52oacrMT1s3jFW1bwaVTjNRPjUMt2Nyh5Wr2syqunmmGpeCR3j8GgZg/fvqzFHjk9WMHjfvur1QnIE8tTSkiX8LJUIspr65Hc2G8tpROezAb7OJOCUAwsoboE3uzSwyaFue54sRNPlSPR5bt+Yexm6QADX+8zzDVwBAp1E+MQ7z20aYQiZz0C2ctY+9xLOV9cxthwBoPY7+JRSF+8bCFujRQQHFFkyPC+i8zknfJ1JQH1bQDHxhLqZZfE3ug6NkGR0NmXdOHTXyJLQ45L+fAqfuaQxgZ6uUlWrmzg5VScdu6S2PEXYXFrNNDM+uGMM23Ye0NaFKjqL1iQtL1rQofXZ5DEZ2qRpsc80Hh3Tta2F0Gzn296xNigqqIh6Z7OxmGZkDAaIyWjq/aricJqoVmT2o2ouErHeeYiFaSGFFsbLSjQ3rlmujRoRC81Xda/av+/bp40+uu6CFTWVQFcbIp9s5TfyxPz7Chbjk/Ud4BqRRWsirkDxXd5sTFE2hQL+bVJNptOis5119xX3ybruZmMxzcgYYA9LBeoXjg5n9HQ1tDFPUcTCtpAmK9M1RNt2j6y1bB7YW65hCgTgyvNOvesQ6Wr77oNaptDTVaphCqHXFe/aBNM56hy67R1r66rw6qDOEdM8+mCAb0QHm1+qaO1E9TEAiTlPJYZ526QWne2sg48/z6bhNVL7bxTmPWPwbeZhq9nT6Hhvcf8imI5rLLYKpTUhpgs7cfxkPYMJrWXDAB5+4lS13BDpyhYirCLkujbmGdKz+rZ3rMXY1osxPFp2ap4+eSzytbOWPNdBR/jymLLEcXIAha6UehFzOjQQQa2dVQSR9hHain7Hjca8Zwy+Nm0fp2veeG/bRCkqESpLRI+Y6PLEdx0vR6C4xio3tQmRrny1APFeTXH6KmzvVGcDd80hH83TN49FXFuu8Fp0wbas2qk6f7depu+pIWCbD7okPB1sOT1yUUmxXdTOKtJMF8LgTL1I2q3o3rzPY8hCcOV4ZTlfIE9MuqtmTpYYbB1s8e2m/IBOoqAIICAJc92280DNNttYN+8YwyqpTo5PPobP+1b7P+ji9FWYxtnX06X1+fj4IkTuSa+mfpYujyW0aGFRBROBbL0QstR8ss0H32vYcnp8a2flfXe+NMTVi6TIb5gX815jcEmdIepeHluiS+ooyoGlRvTIErRaulvcI5QpCKi2dZtDNovk5HrfJhPOZGU6iQaS7P+93aWqhOvzrn1CZmXCJ+bR+EQFPWmexvhERTtHfKOuVNgc6SFzMouwlMUs5OOgV69hexZdNKB67yzmXtf789VcfRzl7VIyY94zho1rlteo5fL2LCq1yVHlmlyuxZiF6YTUepIh9/kVZTayFroTJiL5GUzNcgR0BMXnWcQxm3eMVX1BJru+yrSOTVQweH+t+cv2rl2LXGYk6jwan6ygq9SJ2zetq15r844x7XOF1JEKTfiyaUwhJtGsEVzqe3ZVCDY9y8hzR717kWR5Ntf78xXafIh+u4SwzvsEt2ZUlfRJlCq6ymaW5CzTOTp7rS904/dNtiJA24RI9yxZkt58x6uDLYFN9WOYJP/uUgcY9WY6WXvxfVemb5tlXvkmGeps5SH3UeEaa2iSnu7eoevC9/35aGWu8TcygVXAN8Et+hgskk5RDl8fm23RNXOy2IlN5zz8xJE6e+2G1y/zqlmke1e+zxTShCgknt2G8vgkVm3Zhdff+DXcNBwWsiqg5oaYiMFEZcZaNmN4tOzlE8rSJ8Alydv6ELhs5QKq1uRqRuRaA0WEpvo8mzxOX03I5Hd0PZ/PN2wF5r0pyaVa6vZ1EHlHTQB+i1Nn+5eJX+iEyUIQbOeo5qcNQ3u8ekLoCOjA+j6v+H4B033k6BVfSVI0G3IpytPMVRPjrQNrtdniPpAjoUIgCtyJSra+meoqsmbd2kyivkmfcsmKLBVK1fWVJTQ19Nnk/AvbvWzvz5UX1a4hqjIKYQxE9DYAfw6gE8BnmHlI2f8hAO8FMAXgCIDfZebn0n3TAIRodoiZL0cT4bIP6swTqkQI5CsDIaALa8wSxjY8WjbWjLElZ5mWuu4cH+nNFPO/ffdBjE9WrCYIXwitwgcdACwtGrS4+9vPo3/lMq+yCyaEHi9wbKJSF8YbitCgBZtJRBB4n+eRI7hMmuiH791n9K34PosJWbTtmx884NVUy/X+VOYi+67yfMtmIjdjIKJOAJ8E8FYALwB4nIh2MvP3pMNGAfQz8wQR/T6APwWwKd03yczr8o4jK3wdjaYCXSLCxXZ+3uSqkKQf2+IV95QXv6upjWmcJmbXSYQZZmPRPfk9ME41F+rpKuH4ySnjwszKRES9pKVdJW8NRcY0c24zVV9PF46fmNLe3/VcebPmQ6RUl2Tv+x58e5+HCljqs9gK5mUxy9j6ePT1dHlJ+TrmUplm3PzggVnBEASK0BjeDOBJZn4aAIjoHgBXAKgyBmZ+WDr+MQDXFXDfwmDj4vI+U72d8clKddGbsh4Bv8XpYwJyhezpFq9YLECtRuJaDKZxhhRBEzBlPgtHv4lwC+KZxSQjmiRtGNqTiTF0EuUKISx1nioDoZaJKHUSNv3ymfi7fS8ax1Yen8zd2MVXSnUJJbb3IL6Rbs74mIB8hR81Cq2ZFYh9YFpPruZR7YYiGEMfgOel3y8AON9y/HsA/L30ezERjSAxMw0x87DuJCK6AcANALBixYpcA84KXxunbpL7Lk6fvAqbVGdavDPM1SgXH6mPAGs0SRZ7aVZnviClIjltcanDa6HJjeSzEvd3nX+mM1y3g8wmqsp0UkW1u9SBaVUbYqB/5TLcOrAW625+yMocmpEV6/o+Ni3RVkLc1wQU+o2K9sv1WLRK8dztlqHcKBTBGHTBKdplQkTXAegH8OvS5hXMfJiIXgdgDxHtZ+an6i7IfCeAO4EkXDX/sMMRYuPMSohcZieXvdblW/Adl088dai91ERYetImPb5Md7Iy7WVa2rhmufPeQCK5q+o/EXDt+UmF1puG92tzXQSE+cwGXevSykxiphp57ij+7WU7oxPfGAjzNcmMW9erGoAzEGBpV6kaoaPrK+6S0AfW63sxq8gSw1+UXw4Atl1+jrFarwybdmNiLqJJ1GxBEYzhBQBnSr9fC+CwehARXQTgowB+nZlPiO3MfDj9/2kiegTAegB1jKEdoJOSdXX+geyJKjZJ3JZIJJiBzbcgxuUiwEWWBFb9GTrp+mcvT+HSXzo9KFdC9k+YTEx3PXYIDz9xJKn2qWG4BODaCxLtU07qe9f5Z9ZUZ5WL/OlQmeFMZi4gIWI2piND9BQA3ARPp1mq9ZUG79+H6WmGq9v2TyX/iPzefSOjgOQdut5OI0KzfZIkBXRrLzRxT8dcSh2EbZefk+nZWoUi8hgeB3AWEa0mooUArgGwUz6AiNYD+DSAy5n5R9L2XiJalP59GoANkHwT7Qg1XnnrZec0pGevClcpaBWdRNo4bV0sdamTkjINmuOLGLOon3NsoqI1uVRmWJsr4ZKyBHGySeuy9Khe//ZN69C/chke2FuuYawP7C3XxNn7aFnCzNVo+NbT8XEUVzyYAgBMKx9NvPeQvuKud9jbXco853z9cj61nNT13WcQ8GyhsNuvPre2V/nVzevUVxRyawzMPEVEHwCwG0m46meZ+QAR3QJghJl3AtgO4BUA7qMkkFyEpf4igE8T0QwSJjWkRDM1DEWVvC06NtnkQ1i0oCMoMmaGWds2sJmx1CHRPCJXQh7b0q6S1syjnudTjXT77oNaQqbzuajSpo+W5cpy1iFrHSofRtXomjtFVvXtKnVi62XZJWqfcPCs0X5ZapTNlpBUGwrJY2DmrwH4mrLtY9LfFxnO+xaAtbp9jUSjO63lgWkChxIQmykry3izMNIQ4iHq5Ks1hVwqrRiLy/cT6viWt+u6zsmQq7UOrO+zOpIF+nq6sOpVXXj0qaPW43TwMVNmKa9e9BhkmL6Rrk9DKHyId9bAh9mUlFYk5mXmc1bpwUQci2y4UYSk55JoQsdbdH9nHYS0rX4Xm6lDLZ9tk9ZtZctdUWBq1zkAKHUAwp88WUm6q4nigK5SIQRz8UYf+JgpQwIlQpG3qm/RBNbn2j3dpcy+wLmgAYRi3jAGmRi6qjiazs9a2TGEEJsIVW93CS8bauvIcCX3ZCHyoYzUt8Ca/GwD6/uMJZFNkJ9TLF5TbLuJkGWJAgOAKQvHcj3vGT1duPvbzzuO0kO1xbvKL/iUHnF9o1IH4RWLF9SVCQ8VMFwENm/XONuc/9nLU/XP1VnfajQiwbxgDL6VN23Sg4k4imgWdbsIH1Uzi12EWEeoSp0EZr+6OyJfIfQ5bNqSTQ3XhUTKjNKV3Szbl0M0DOEU3DC0x1qb35eQmbabnj1rvLRgOq7S46ZzZVu8jckDqJYe8cGzkj9KrQtVmWF0L1xQ05HNVfohFC6BJQ/T2L5b3xt8ycIFhQVZzDVT07wou+1TrtcVj20rs5wFrrLHtpIVtiQvV5lj03MQoHVWA+b319NVwompWi3GJH2KcfnU4qlhih0EEOqYial1o+gfoWMKPlmy6vhMpSyyQA7vfP2NX/MObxXlx1WCE/JdXOPSlafWhV1uv/pcAMCH7h3TRpj1dpeqhf9CYCtvnSXLXoZt7YaE3Oqgm1ciDFoOeW4X+JbdnhcagyuV34fL27I+s8avmyCrxRuG9tQxgMnKNBYt6KiLavGx/ZpsrT2alpMCpoVJBG2JCx3khkOm92yS3nXbTJqP7CQuj09i844xjDx31NrSUTAOuXm9OL/USSh1kDPpyQf/+tLL+OCOMe/qpEBC5EVZDxWmeR3KyOREQIFtOw/UPXNlhnHjV74DgIyZ3uL93TS835obosKmleatH2bTRH1MqaElaBjAlx47hP6Vy2at5jAvGINpYsiSkqjDHloIL2sTG0JtdzMTTAvmpckKbt+0LtiJrLO1AkmSmWk8JoId4hPwjWIxMQ51m8kUo9IrBqxOXmEOM5kaK9OM3oDMbBtsSYgmHD9p/i5FRR59+dv1RMzEXCY1Gdwq1ExxtYS5DrYggLx9UQYvOdua0ezyl6kmLjnQwARG/gKI6jiaaa6aF416XA1AfJJfBtb7NR3vJFdMSgIxcVywRdOoyTgArM1QTLZW4FR5BhPUew2s7zOOTX0DeRP+1OYpNw3v92oSVDMmwwln9HQ58y3GJyp4dMuFwfcsApVp83cxzetei/anwwxDm+yVBQQzI7Y53G1r1LYGggZmgYnJ5KmsW1QuiW9yXpGYF4zBRNRt6qAuw1QQR9Grd/OOMWwY2gMAVaL5iXeei1KnHwnxmTi+nd18Jo/rfqET2TS2ay9YYXzXodA9112Omjs6MEM71o1rljulbgaw+ka7j6m3u4Q7Nq3DHZvWeX9/X5jGZ5rXpmx8G9T5bmIuHY5Hs70jm6ake5Yrz+uriW6TESJsbN990NlnwcRk8hD3ovo3Z+nGmBfzwpQE2G3bIaqqV7inJ9XyjaEG3PHfPnZYV08CnZ/BpsIWGZtuuk9RLTsB1BXfIzB2PO4XNuqy/hybqGSKNPKBTQs1zeuR547W2PivPK/PWt4bqJ3vWy87x1gmXGc69QlLdmnT8rPYenfIDmMfE4uLuNuYTFZzXZFlcfKa0rJg3jAGG0LaH9qqm4r9Po5KdeK4CHBWX4TYPjxaxvGTev+CgEr8fJhgEck/uvsIp3HI5O/r6cKx4ye0lUwF5Ee0HddOCA1uEEl5av2nK8/rw45/et44P+WkPiFl61qJ9q9clsnf9K7zz6y5fqigo476puH9dcEGOkeyjbi7opJ8EwV7ukpYsmhBQ3wAWduz5sG8CFd1IaThhy30zbf2jVq/voiGI65wP59IGDVk1Rbm29ejL+McshjkeHnTeEI6r113wQr0r1zmVTp5NsEVgqzC9N16u0vYetk52qQ3Md+A+na2PnPRNlfkqCTfue4KD7dFiqnvK+/6cs1TEcbbKGdwkQ2JfMNV54WPwQWXD0KGjUuLBDQX1CQ0Hxui6oBVHU86ez8AjE+cxOB9fuGR6rPZpHVh68/qELtpeD827xizqumMxGnsW7VUmIW2X32udxBAuyOLScL03UQo6djWi3HHpnXa+Z7Vnm3yN92xaR2euu3t1Wgk3+u7pGEb41efP2R96yB8i88OXYo7Nq2r8b/0dJUaXj017/izIGoMgfDJonbZW1WJxpV0FpKc5VMCQQfd9XwSA1X4SLfDo2Vs3jHm7UDuNeRe2O5fdEJiq7Dh9cvwpd/7lbBzHJqeKk379B8AgDs2rctd0sJnroeUU9EhVMOaT4gaQ4MguLdJIu3r6cK1F6wwRsfpJEBXOF5I1NSSReFuI5MEYtJCbPDxCWzffdB7wRPC+uXKbSjnAr711NHgsESbhuHqUWCDSyPUhTSrsM11eTzAKYdzKESf7EaGc851RMYQAGHO2bxjDD/XtSAp1yBBEP1bB9bi9lRVB05FY4QQYFGBEwiLSgiNVHjWsohlFdYXPgTZd4xZJEZx/yxMrR3hk++imhkBcyvJDqIqwQyN+CoiRNIWfm1yOPd0leqbS3WQNSy4GbH+cxkxKskTqjnn2ESl2vnspclKpkgigYH19T1xRVo9EBaVEBJe15P28vV1HrsIta893GeMIeYjAblapi1be7aZmMrjk1i1ZVfVeSyHaarvURSzM4WVyu1Bs4Q7ltNMcTVUtKe7BGZo14IMW4izKbJpfLKC6y5Yoe1XLa6j63UeUjYjohaF+BiI6G0A/hxJB7fPMPOQsn8RgC8AOA/ATwBsYuZn0303AngPgGkAf8jMu133a4WPwRb1U4Q903R9UZBLVzBOp33o/BGdHVTXntFUnE6+pqlAmIglzxqVZPPTiDIjtrBKHQjA7ZIN3GTv9mmi086w5RLIEEzEFI2Wp8yHzxiyRM3YfCO2AolAtuKQ8xFNK6JHRJ0APgngrQBeAPA4Ee1UWnS+B8AxZn4DEV0D4E8AbCKiNyLpEX0OgDMAfIOIfoGZi+8ukhONTjKxlXcW/ZB9Esl8C9FNnJzSFueTJaybHzygVe3zMkOhIakly+X2mCFMQQ0XtOVfzPZgpco0ezX4OTZRsUrhxyYquPSXTrd2prONQVduXkYWad3WvEhXIFHOWchSHDLCjCJMSW8G8CQzPw0ARHQPgCsAyIzhCgDb0r/vB/CXlDR/vgLAPcx8AsAzRPRker1/LGBcuSFLnTpVFSjOyWkzr4h+yKo0vHnHmJZJ+BSiW71ll/Fe4h4mU05eZqgmYAG13dhCivPJ5hUBk7O+UZnJ7QzbvHr4iSO49oIVmZiDT/hz6Dx5+Ikj1v3qHWXmYxqOvH0u9k1oFIpgDH0A5LoCLwA433QMM08R0UsAXpVuf0w5V/uliOgGADcAwIoVKwoYth2q1KlbCEWlvQ+PljFhyUqWmU9R/apdfgubkzGUGep6HNjKd4T4SXTVYhtZKmC2QDifbU2ByuOTuHVgLfpXLgsOc/YpNx86T7J8N3HOS4axi+1F93mf6ygiKkmnnKszxnSMz7nJRuY7mbmfmfuXL6+vH180TBEbnUQgJAtvcamjWkgva/SDmLAm6VxlPkUV1NLV4Je32xZpCDPUhUSaCJC4p2lsOuiqws6VUNWsKHUQtl2edHobWN9nDPkU0XKhYc6lziST2Rb1lUVoyvLdxDlZQ74/fO8+Y9LofEYRjOEFAGdKv18L4LDpGCJaAGApgKOe57YEJsI4w4zbN63DiakZHJuo5C6DawsZ1IW3+vg6XFnSgFltF9tNC62nqxQkYYWERIp7ukwKKtR3MldCVV2QhZTe7lI1K1b1t5jkelnidzWzEujtLmH7VefWlZvv7S6hp6uUKzPX9d1sFVZdVYhNzzfN3LRS1rMJRZiSHgdwFhGtBlBG4kz+LeWYnQCuR+I7uArAHmZmItoJ4MtE9GdInM9nAfinAsaUGzZTS96OUjJME5YArYPXZQLyVZldDMbUmEhIor7wNQ/4LGITRHKUbK4SESxFNLJpR5Q6CUsWLsBLkxUsWbSgrtro5h1jWJr22DZBzk9xme+e1UT2FFFAUb0eYG/C1Jc27gmp9Ds8Wjb6CGVMVqZx84MHasxqOh+WD7L4M9rJB5KbMaQ+gw8A2I0kXPWzzHyAiG4BMMLMOwH8NYAvps7lo0iYB9Lj7kXiqJ4C8J/bISLJZPMXxMvkHM1iIw2tnGgi2HLkkQ/TMt1XJEAVVVLbdB8RLqm7doiPodRB2LhmeR0zFNEtvZqe2bMd4pkE8RLMf+S5ozVhvjafgWrqseV4NNM0J+o1+YSG67ou6npX3/iV/d4ValWTriinvm3nAWy73I9BZPFntJsPpJAEN2b+GoCvKds+Jv39MoCrDed+HMDHixhHETDF2Pd0laoTwzRxsywgF6FX4SLYPuW3bbVo5AQom0ToK92Yns8mhenOEWPtIFT7DYtvYjNXHZuoOJvLzBaI3ABdP2Y1nNMF1dSjS7IU93T5CoqWdH3WhC8hLaqfx/hkxZtQm4Szmx88YDzXdM62neZzGomY+azANJGWLFpQ/UChxNyGLJK5jWDbNBBd8xMddBqGmuUqS+E26Sbr84Wc4wpvna3KgmwukvNRTJqA72P29XRp36UuQmlxye6GbISk6/P9fTVjmxbvWybfdn0dbNVtTf27TeeMT5rPaSQiY1Dg49wtyswiX6+oD29jWiHSk67YmlwORIVt0WR5vpBzsnbZameYGsiIWkhZYRJgVE1S4NiEXlK29SgwzYUQzcL1/X0TTk1zQ06mlMOoXSG7PuZi23w0rZEs5zQSkTEo8LX5F+14KwpZatHoID+vL0MRVS2b7TxrRA0kQRxboWzoHL0CWfxYHZQkepm+iUuTFMmB23cfrDIVV+l5dZxFaxa+69QmKKlreHi07Gzy5GMutuWOmL5flnMaicgYFBRpJmoVTEzLV7JWnzekGqq4fjOcZ7IEurjUgcmCW3U+M3Rp02srXXeBOXnTN7pGxZ+9095HIYTx3/iV/Vi0oMN5vEpAi4zkA/zXaYh2L7aZkv3E9V2az8D6PuM1TIxlYH0fbn7wgFYbb0VeTmQMCoo2E7UTfPrXdhLVOSZ9GYqtZIENaoMhnxBBVQKdrMyg1EF4xeIFwVVZdVjaVWo6U1iysBP9K5dp99mia7pKnVi0oEM7VjnvREfQAHcfBhmTlWknU9AR6KJrjYUSfN/1qys9o74vH81n2+XnBAuYWy8LP6dRiB3ccqKdYo994NNnWa1G6dO1zgRXdUuT+l7qJGy/ytwy0dXjOk9dJF3l2WbBVJXU9Lyifzhg79Ws+4aNeE6bb6SR1YmbhZDnaMdchqZVV53PaLfYYx8Iicg0wXVqq3gWUwlnAozVLV1qsKmSamWarZFRJlImCg5+9G/34/hJf0YmwmE7ydxkvhkwaVm2THz5WNkcsWjBqYginSnH9py23hu93SW8XJkJak4/eMnZGLx/Xw0TkvtnzBaEaD6NDrpoJGIHtxwoqm5RK+AqIaBiYH0fPvHOc7Wd5q69YAW2XnZO0PUEbKYE0RQGqK+5ZIJgRBMBTEG0Y+0qdQbb7xsBOedElDbpMNQLZ6Ba9mTkuaMYl5iziL0fHi0Hm2xu37QOd2xap/2mWy87p645/ZXnJfk91rpD6qtt/asOhqsmUxHwKWnTaESNIQeKspu2whzVqPyC0Odw+S+EBubjIJUZkY9fRG7us2FoTyGJUEVA5JzIEraNYZXHJ43RNCKiyKcaqoCa52D6prIt3qU56zTDygzjw/fuqzmuFQhZf40OTmkXK0T0MeRAEXZTne03S/er2QqfEEFRH8d0BKE+FNPXLyJs9FnDXTuJ8MrFC7SO3yw9q4VvxRShkuWaxnt5dPFzYXi0bDQxyuvA1GFN3NPWnc11f/ldyRUK5GNMhD/L+mukINdoX0z0MQQiy8cuQnooKoyvHZ3gPmNyhQgCidRkknhNC0aUeHB1GhMlQJZ2lYz3F21MTT2Uj5+cQqmj1jchEzt5/M5e1uklTMfkZQqdRJhhxhnpM/3dvhczF4xz1SGSNWebBufqzqa7rymAYnyygsH7TmkhLgnc1tRJ5G3o5myj1lajO0X6IjIGZFffQs0xOkJZxERoF/Uz65hcDnHAr1GS/H6XdpXwby9XvMphTFamsbjUUVciQZUc+1cu00rHlemE4DOfKlfRQcDf7XsRL01W6iJ1Vt+4y9hxTDavmBBiFlIxw4xnhi7VSsrHJirYtvMAAL954zLvyXZ3V6i0b6izjyYoenTYCL/Y7/JxNXsdhRbVbBSi8xn2VpAu58/A+j48uuVCPDN0KR7dcqGVKagNa4SkqkPIRGhHJ3iWd+rTR0H0IFBr/qvvd3zSjykIjE9U6hyqukJzMwaCfGyighNTpxLsjp+cxvikvl+Hi6a7iP40c917KnUQSp3uaoG2xjVArcPaBVcdIplpD6zvw23vWFttDuQD3fV9k/HEuS7By7XORPG7ZjmDQ4NCGoXIGOCOjCmigYeJUBLBayLYIhXaRf30vbfpnQri0WdZrNNpoySVCeetorm0q+Sl+ZkISSeR9f6TlWls3jGG9bc8lHmMAoJpyUxs+9XnYvtV59Y0zikpZWVLHYSJk1NYvWWX1THvK1TY3oWcPyHm7fbdB52d32zXHx4teyfj+XZ28xFGjk1U6gS6RjEHdQ2IebV998GmRidFxr5hjoIAACAASURBVAA/qSGv9G2snughqZq0DTFRmhFCFwqfd6prqyg0MBtz0C3MECaok7aPn5yqeb+bd4xhlYYJD15ytpbg+ph2GGbfgS8oHYNOU5W3jX7sYmy/+hSj6OkqAYRq10EXfN6nSbr9xDvPrbHvy+/1gb1lXHleX3VcJg1CPKeAuJYPSh2n8iNcEriPMKKi0dr4wPq+6rjFvGp2h7nIGOAnNeSVvm3E22WOcpmK2kX9lOHzTm1tFW3n6xamLxPs7S7VMeJXLF5Ql/2rOkJrFqRKywhwVKfOBB3J9DEXCcjzasmi+me0wed9ykRVJ9SY5u3DTxypjstkmmNk66vQ01WqaW3qGqM45tEtF2rzNkxotDbeavNwLuczES0DsAPAKgDPAngnMx9TjlkH4K8A/ByAaQAfZ+Yd6b7PAfh1AC+lh7+bmbPXMsiBpAibnyMtC/JEMLlMRS4nuE90UJ6oJtu5tvIbMlRno/jft+KkTx0o4JR9/9EtF1bH7ZLi5bFt332wjsA2onRGV6kTb1qxFI8+dbRm+8lpxgd3jFXDa00lKFSEEDJRDHHD0J5cvUF8TJy2stg+1wKAOzbZiwT6RhHp1pGpFHejtfFWm4fzRiVtAfBNZh4ioi3p748ox0wA+G1m/gERnQFgLxHtZubxdP8gM9+fcxyZ4RPl4EvAbQQyS0KZuJ6J7MiT0zT5faKDbMe4xuy6vqlOjw4qgRCE2NSCdPWWXTVj0nUgUyGcqyPPHdWGn5rgcmYWiU6iaqirCb6hnQI+fQnUrn6+LSlN88MnwsZXYDJdK8SZ7QN1HZnyHBqtjbc6OimvAnwFgM+nf38ewIB6ADP/CzP/IP37MIAfAVie876FwaSimqJfTHD5AQD/CCb1ejr4Tk4fldTWVtD1TD7XF+q8CwTU2VBNJiWdGerhJ4542c8nK9O467FDQc5qlzPTBF/ThIxpZux4/HlvR6uPiWHjmuV1pim5L4Hw65jCRnVwzXkfE6ePqcd0LeBUHorO9l5EaQnf8RWNVpuH82oMr2HmFwGAmV8kolfbDiaiNwNYCOApafPHiehjAL4JYAsznzCcewOAGwBgxQpzzfpQ2IqT2aqCqrj5wQOZEtVMEpfNpuprPgD8VFJbW0EV6jP5qrw26V+AUd+tStW0dP0IxJgaKc1vXJPIMr4mK3lsWbKVQ81TtmcfHi3jgb3lmjEQgCvPq5WOQ80XrhwBXy3Zx9Qj9uvySHTrrMjcnkYmtNnuCbSu/L+TMRDRNwD8vGbXR0NuRESnA/gigOuZWQR83wjgX5EwizuRmKFu0Z3PzHemx6C/v78wo24RKtvwaNlop3YtWNPkNZ1HQFBqvM/zhbbG9LER696fD1HV2bblhbl6yy7jmIpo8WlKHhNmHd2CXfWqrjpfgIxmFJ2xzVcdAWeceqYQk6UM3za4RRGzgfXmLoTqWExMqx1qM/miFQxJwMkYmPki0z4i+iERnZ5qC6cjMRPpjvs5ALsA3MTMj0nXfjH98wQR/Q2APwoafQHQESs53tuHU9vU+NAFK6SfomyMG9csr7O7qyqpyc67uNThLKUd4lT3dUjbpDvbe9F+y04C2F5iWoYp7LQ8PlkzH1TmfNPwfmf5jUbBlPfiU6Lc5f+xmS8abQfXadO+9zQxLWF6AtqXObRDeZu8PoadAK5P/74ewFfVA4hoIYC/BfAFZr5P2Xd6+j8h8U98N+d4gqHaENV4b5/4YZtWYLMJ2iSuImyMviYEkx3Vp5R2qA3WNzTQZNu2vRfdWLZfdS62X30uerv1GeYhsM2HWwfW4qnb3o5nhy7Vhpnq0NfTFRQ/r4PacW94tIz1tzyED+4Y8ypRvm1nvQlUHp+rx0KRdnDZJ7Du5ocweP++Ov/FxjXLve5pY06trgpgg4+vshnI62MYAnAvEb0HwCEAVwMAEfUDeB8zvxfAOwH8GoBXEdG70/NEWOqXiGg5Eno1BuB9OceTCbLKtmFoT51t3eUrMEkxclvFkPNEbgOQz8boMiHIsKmtRdiIdfcT1zZpD0KiVe9/2zvWahvSmCSt4dEyXi6wH3TW+SCjq9RZLWKXFWotp5BOe+L+dz12SLvfx2RZpB1cHbvJv3XXY4fQ212qtjKVM4PlMbnMlnlNjo1CUUU18yIXY2DmnwD4Dc32EQDvTf++C8BdhvPbrqdflvhhkzll2+XnWO/lMsPktTGGPIuJqDbSzimuayp53dNd0vpgrjyvr4bQVytqSiWkZXNU3nIZOoTOB9GPenyiUq1sGhIuq0IXgODznHKJ8qwmUBlFzY+Qb3RsooJSJ9VUtNWFSQP2roPDo+W2Mye1On9BIFZXVZDFbppVcmp05IHvszS7OqvMhDqItEyBkCSj6aQnnS3f1KQmT7SSIKKNmA9ZGwN1lzqwcEEnDo9P1knJrudUS5SbHLmA3QSaFTbbeeg30kVthSRJ6iLg2gGtzl8QiIxBQdYM5aySU1ESl27R+T5LM9VXlQmZnLUM4CVDf4QQB2+uaCWCVrIX79CV0Gh7d1mZ1URlBhOptqQycNtzhiSN9XbbTaBZ4BI+iogoA8LeayuLTJrQ6A5xvoi1khS0KqElTzKOyWEFwOtZXOprkT1ofU0GfT1dRikpJNlVEOwsiWbMSG3wSb8F+R0CyOQkFM7homKXXDWzgMTX5Zs0Jno6Fw2fel9FQJ0zRZjLXChyfbSK/qiIGoMGzY4fzmvKsS06V4Y1YFdfizYz+UhpsoSkCz+dnuE6wtoBoLOT6tpUZqnbpGKyMoOpaa72hwb0piCXlqX2cVYhnMlirLZQUxnimUJNk+rxPWmzoc2W7mVZkdd2rjZR0oUh6yRr2/UnTk7l9jPkXR82314rETWGNkDeSop5F52tXIItUSiLZOSS0mQJSSc9LVm4QNuAZ2l3qaYfgSppyWUfsqAyw9XuZoD53ZbTSCoddAX4BER9pO27D1Zt/7dvWuc1XrlekHhOn7Ir8vG3b1qHlyszxuZCeeEqDW+b69r+E2kYskuyts23YxP+TYlMyLN22yU0VYeoMbQB8hL2PA4rV66DyUFpSxSy2d4HLznbGIWk69+sSk+rDJnP4xMVL0krtKRFzT0kn4fNJj54vz671vY9p5lrfBmCSLxpxVKn5lBEUl2j/UyDl5yNwfv21Uj4ct8EV5SX6dvm/d5ZntE3edCFdglN1SFqDG2AvI128iQauXIdQhOFXFLQwPo+XHvBCqOGYsPwaNmYPBYSXulT0M8F21gr01x9L7L92ZX5piMS33rqqNOclDdJDmhSmKSmj4WA6fvldYTLWqcJWfqr+yQPutAuoak6RI2hDZA3EsFkWwYSW7jN3uyanC6Jy7dGjSwF3TqwFv0rlwWH6Zrq+ajdvlwYWG8u6NfbXcJLhn7Rcvb0fSP6xDCB8vgkbhreXxvRlEGwd51SVMSKy8+UN6Ta1Mfi5gcPYGB9n3EN2Bzh6rg2rlmOh584UuMveWmyUpO3YdOsfZ7TJ3jC95u0S2iqDpEx5EBRNU2KyGdQVW1fp5hrcopjP3TvmJZY+tao0VVbDX1Xpmur3b5UhITyCkKkOolLnVTdNzxathbNE3D1hsgDOVENcAsALpjex8Y1ywsJPjB9u2MTlRoHsCDepoxmAd38lrO45RpfcmKkLfTY5zlt0rz8TXzeTbuEpuoQTUkZUbTjKNRp6IKvU8zXDKVriFLqpLrjTNJOB1Fup5rp2jYzQZZQ3oH1fXWO7O1XnVtDvHyQlymYLE99PV14ZuhSDF5yNrbtPFBTFynrPDSFST78xJFcgRECrmKSYgxiPrp6HYdms09Wkpaipm/uu15sczB07bZLaKoOxC2oBpkX/f39PDIy0tIxbBjao5W0ZQdqK6skrt6yy2h2UftMuMZpetaerhLGtl5cdy1TSKautk/I+zF107ItJp/vFArTuy0CnUSYYa6W81Z9DHJIq83El+f5ZPjOI9e3HB4tG9u0ivGa+m0AiRlv9GOn5lqWb6Cb+67r6Z4zdA62E4hoLzP3u46LGkNG+CSFtTIULcSh7dJWTM9qykw2rVhZAtO9n807xnDT8H79ycgmYTXCwRdiAw5pPNlV6sQn3nluVRv450MvGaPFXBJzUQ5Mn3nk272wp0tf4Vb0mGaYI6yEyck1rizPYtunbm9nKb9IRMaQET5x2XlV8DwZlUWWRA5hMtt3H7T2PhAES9fxjpHY5YdHy8ZnDzW55Y340sGUYayLtLr2ghVVItLbXUJP16kM6uukfSqBcUWLuQh/6POZ3rfPPPKd69sury/jDvib3OTrhWazu+Z+yHop2uzbjojO54xwOY7ySqp5MyqLLNAX4iRzPd/SrpK14x0jYRovV2aMzx5ignKNPYu5zxYFZrpW6H1c8ye0LpINPnPNNvaQgAMA2LbzgLastgtqZzh1XLaopI1rlleTB3URS0Wul7mA6GPIAdtiz2vbLto2ntff4Xu+adwCvd0ldC9ckKk0hSg1HWrjtfVp8L1WnvdXpG9EvAdT2e7e7hK2XnZO0LfNMtfUCrk6E5DpfNccMSHP3Hd1qZuL5iAdfH0MUWPIAVvIZd5QtCJt480sq+3KexifqGDcoC24IEpNh2aLmr6T77UaWcsqZP4IlMcn8cDeMq48r68qIeeRcEPnmk+FXNtcd83hUgfV9NZwXc8Flz+mXbKN2wm5GAMRLQOwA8AqAM8CeCczH9McNw1AeBUPMfPl6fbVAO4BsAzAPwP4j8x8Ms+Y2gV5VdOikl+GR8vaZiUhiyGEMIrfpgYpYvw2M4jozqU7t0iGaat3JPd3zlu6IMuY1bh+FSL8UpaghZ9ApxnZ5mHIXDPNJ6A2osp2b5sZTGiF4tmLMOv4zI12yDZuJ+TVGLYA+CYzDxHRlvT3RzTHTTLzOs32PwFwOzPfQ0SfAvAeAH+Vc0xtgyxJXAJFJL8Igm6K9PBdDKGEcWB9H0aeO6ptG7lxzXL0r1ymlYZ7ukrVrnemZ3dlr4bARqDk6BrfrO/Q+7jGLOaPKZRSvr+JeY88d1Rbg0lcH/Cfa675NMNsDe10JZqp5pyiJHifXg/tkG3cTsgblXQFgM+nf38ewIDviUREAC4EcH+W82cTbNFFtuibvGFxLhXadzFkkXh1faXFdt2z3bFpHca2XlwlhqZnLzLayieyZbIyrU3uA5pTywpIWpyasGrLLqzasgubd4wZu925IoZ851rofDIJFLZEs0bA9Z3bJdu4nZBXY3gNM78IAMz8IhG92nDcYiIaATAFYIiZhwG8CsA4M0+lx7wAwDgziOgGADcAwIoVK3IOu3m4aXh/TWkEWWIDYDXR5NE4ADvhDlkMWSReFzNxPZtpf5HRI+q1TGEY08x1/QBc7081ocj+AF3fA9szmeJD2PC3OnYdQkuUDI+WrVJ3SC+Ew+OTued2SDCA+p1tUUkRCZyMgYi+AeDnNbs+GnCfFcx8mIheB2APEe0H8G+a44whUsx8J4A7gSQqKeDeLcPwaFlbL0eW2BpZdtdE0DuJgiQ0H1ODWKiizo3pA4UULDMhL1ExXcsWnSPMWD7j1ZlQHthb1mYsl8cnkzLdUtMZVUAwJhJ6oNMQMRRiOhHPY7uHqRdCI4rEZQkGKHLOzAc4GQMzX2TaR0Q/JKLTU23hdAA/MlzjcPr/00T0CID1AB4A0ENEC1Kt4bUADmd4hraFqRooYJfmi+h9C5gJeqja7pLSffs4hxYsazZsDFBHWEzMzZXwpe5zNbbP2g+5q9RpLRzneg4BmwnJNp8aVSSunfsYzBXkNSXtBHA9gKH0/6+qBxBRL4AJZj5BRKcB2ADgT5mZiehhAFchiUzSnj+bYSP+tugcAnK3HAT8zC6+krtN4vIpaNYnXTtLW8xmIMRMpWNug/ftw80PHjAm75XHJ4NKZPiWPtdBOPIH1vdZS5z7MGnbPBYlOnRoVNJYO/cxmCvIyxiGANxLRO8BcAjA1QBARP0A3sfM7wXwiwA+TUQzSJzdQ8z8vfT8jwC4h4huBTAK4K9zjqetsLSrpA27FP0DTJE7DBRGJG0EvSjJ3bUgCagJq2znhe1rctAxw8oMG5kCkLyHnu6S9RgZaulzU0SWDksWLaieF8rUVSZt01ge2FtG/8plmUw4Wc2J7dzHYK4gV1QSM/+EmX+Dmc9K/z+abh9JmQKY+VvMvJaZz03//2vp/KeZ+c3M/AZmvpqZT+R7nPbB8GgZx09Oafdde0HiPH9gr7n2UTOIZBH1nAD3glT3N6J+UbOR5fswEkeyGiFT6qQkqUuCanIZWJ/U5/HVOHzH58OkbVE9WeYLkK/IZJGRaRF6xCJ6DYKuYxWQlCy4dWBtYaGkeVCU5G4jHLoFa1rYG9csDyoamKfIYF5k/T4vTVYyN7YPuW/e4+TtIpzVBJEQGPIN8gglRYRyR9gRS2I0CCbiKspBFBVKakORGa82qKYOEQnTZzAP6GzPau0fl1mr1Q7sLHZ/IHm3rlDcvPcNcS77OoiFU90nIdDnWfIKJTHKqLGIjKFBcBHdokJJTfAhnEVGjYQuVPX4UId0qyNTxD1szWdUFMHwTUx113derPouFi04ZQhwzYMQB7EPU/L9Bu3iJ2hlM612RmQMDYKL6BYVSmqCL+FcXOqoHidHsjQboRJkUWaw4dFyTSRRyDsYWN9nZQzXXbCikCJ3uvuqkWWyv2p8slIl/j7zIISpL1rQ4dSSfL5BSG5Mo4h2q7XOdkZkDA2CSxJrVCifgG+HOXlhnpiaKeTeWWCSIEWv6EYkT+nakI5PVjB43z4AfsShxxB51tOV+JKaARvxL5KBqvOFoM9I9fkGobkxjSDardY62xmRMTQQWcs+FAEX4Wy3RWEyU0wzawlCEWYwU4BAZYa938O2y8/B4H37arrWlTqoWgywGbBViS0i8xlImuvoOsqpzCHkG+QNo82Ldg6bbjUiY5ijaHSHuSywmQbE/74lwrNqXPIYbHVV1PdgGntoUlwjNESTEEAI75Wgw/Bo2dhxjZFEBdmeKctzN2N+toufox0RGcMchYtgZV0UukVuu498nss0MLC+D5sNNnsdQQjVuFydvGTI78HHgevDkIowjejev04IMJl5sgQ32EJIXV3Vsj53M4h2o0p2zAXEPIY5DJEUpWta7koS0uUI6JKSBu/fh8H79jkTlXzj1huZ/OZTugNITEEycSgiEbCIa5iSwgDUxfWbtKEZ5mAtxSalu4ho1uduRhJbzIcwI2oMbYxGRmXYNAqTlKeLSHEVgBPwNQ00UorzMUPoopKKMGsUcQ0bkVUZv6lSbJENjXq7Sw0zCTU6OEO+T2QE9YiMoU3RjKgM06IwEaCQZC514fuaBhpJEExjcJlDijBrFHGNECJbJIM1XWvrZW4He57njkS7dYimpDZFUXWMsqAIB5+68ENMAzYTWB5kNU8UYdYwlQ05fmLKu/SHq8eFDGEm6ZW6v8mJb+q1bSUt8phcYl2j2YmoMbQpWhlKZ6umWeqkGvNRqZMwPc2QMyBUGz3QPNOADS7zWSNzTsSxalluORnNp/SHCheRfbly6svI99KNxaaVZpXe2+G7R4SD2NQ3sI3R39/PIyMjrR5GQ2HrJmYzexSB4dEyNu8Y00qoPV0lLFm0oKYcw47Hn69jFtuvOnfWLH4d8Q3JQg/xBYV+V9Px4pws9+oqdeDlyoxRA2nGHItoDYhoLzP3u46LGkObopWhdLZSDy9NVjC29eLq7w1De+oc0JVprpq8ZoOkmCeZKtQXVFSJD7XHRci5kxV7hntM8IqIPoY2hWrX7ekqYXGpA5t3jDWlxHSfZ9ioLes2a739ZiOP2S7UFxQajpsnfDdriG9M8IrIxRiIaBkRfZ2IfpD+36s5ZiMRjUn/XiaigXTf54joGWnfujzjmWsQTtjbN63DiakZHJuoNI3I+joNTUSkk6ipzvM8vRmWdpW0230IpI0x6sYT6ozN47y19ckwoZ0dw63svzHfkNeUtAXAN5l5iIi2pL8/Ih/AzA8DWAckjATAkwAekg4ZZOb7c45jTqMRdWNcdnFfp6HJ5GVylmY1U9jGmye019RpT+dA18FWjkJs140nxMQm54/0dpew9TL/6q/iXj4tQVtZXdeFWAm1ucjLGK4A8Jb0788DeAQKY1BwFYC/Z+aJnPedVyg6Qsl3kflEopgInYkYZTFTuMabh3GaCum9YvECL4LjW45CHo9vhI/OKf6ywz+gQtzL5sQmJO1mm1UN1heyMNChKQYYK6E2Dnl9DK9h5hcBIP3/1Y7jrwFwt7Lt40T0HSK6nYgWmU4kohuIaISIRo4cOZJv1LMMRZeJKDpHQpd3UGT8umu8eRinq9OeC7oYf1O0TygjL/I7mcxKvd0l3L5pXVsyBdlHpSsGCERHeaPg1BiI6BsAfl6z66MhNyKi0wGsBbBb2nwjgH8FsBDAnUi0jVt05zPznekx6O/vn30xtjlQdIRSo3IkVHPPlef1FdKoxjXePNm1RWQkqxpAUeUoivxOjcwnyFK6xXWOb12r6ChvDJyMgZkvMu0joh8S0enM/GJK+H9kudQ7AfwtM1dFMaFtADhBRH8D4I88xz2vUPSibkTlSp2554G95UKKkrnGm4dxNiIsOO81BdEMyXT2QSNKTOi+++B9+3DzgwcwPlHRzlUfU6YP82tnR/lsR14fw04A1wMYSv//quXYdyHREKqQmAoBGADw3ZzjmbMoclE3ghg2srGKa7x5GGcjJOk818yb6ZwHWSR/3XevzHA1o9rkeHfNFVtP9Bnmts6LmQvIyxiGANxLRO8BcAjA1QBARP0A3sfM701/rwJwJoD/pZz/JSJajsT/NQbgfTnHE+GBRhDDULNHCBHyGW8extkISTrrNW0mFFemcx5kjfrxkexVou8zVxrdEz3CjlyMgZl/AuA3NNtHALxX+v0sgLqvycwx775FKIIYuqJGAL3ZIwsRmquVNlUGaYscenTLhdVY/qL9BFk1PtuYZchE38eUGWsstRaxJEZEJqjEPaSFZLv1m24Vbhrejy89dqjqSyiPTxo7r53R09XQWH5bot7qLbuC8lh0kIm+rylzrgoDswGRMURkgsnk4WMDjk3YE8YqMwUBRn0ehCCavgw1i6/AJvmr3eJsiZBLu0o4fnKqJjdEJfpRG2h/RMYQkQkmIj7DjGeGLrWeO5+bsAuibTO/MBJ/gko0ffphZ9UqfCR/k1anSvY3De/H3d9+HtPM6CTCm1YsxfbdB7F5x1jN80RG0L6IjCEiE/IQ9/nahN0VcSRgKnvt886zmulUKd4UKlsen3SWJ3lgb7lqWpxmxqNPHa05P5ayaH/E6qoRmZAnszlPR7Bmo8jCbT5JWwRo3+HwaBkTmppO6jvPY6aTM9hN1XUBYPD+fcaquT7P2KxOhBHZETWGiEzIaye2mRKy2MgbgaKdvS7iLGoWqdc2aRq6ondFmekGLznb2KxJrS0layS+fqL55E+ajYiMISIzmpVJ2yrTQ9HRUzYHry1HwSSFL1lUX+ivKDOdrVmTDq7yJCrmgz9pNiOakiIagqwmmJsfPNDUPg42FB09ZTK/3bFpXbX4YN5xFGmms5mTVMjlSchx7HzwJ812RI0honBklfqHR8s1zelltML0UHT01MD6Pow8d7QmYufK89xaV+g4itLkdNpHqYMAgjEcVTyjGoorQnAbmb0dURyixhBROLKWi7btb4XpocjS4YA+YueBvWWnNlX0OHyh0z62X30utl91rlUjuXVgLW7ftK7mmNs3rcOzUln2iPZG1BgiCkdWE4xtfytMD0UnYhUVStpMh7xJ+/Bp4BQZwOxFZAwRhSOrCcZ0Xk9XqWVEpkgCZ3LK+jhrI6GNaCaiKSmicGQ1fZjO+w/nnj4nmsB3kt4ta9oeEdEqRI0honBkNX3oztu4Zjke2Ftui/DVvDC1pzRtj4hoFSJjiGgIspo+dG0y50ol1j6DqSwkLDQiohmIjCGirdHKSqzDo2Vs23kA45NJCG1vdwlbLzsnM0OarzWiImYfcvkYiOhqIjpARDNp1zbTcW8jooNE9CQRbZG2ryaibxPRD4hoBxEtzDOeiLkHk8O60eGrw6NlDN63r8oUAODYRAWD9++r8XGEJPLNphpREfMbeTWG7wJ4B4BPmw4gok4AnwTwVgAvAHiciHYy8/cA/AmA25n5HiL6FID3APirnGOKmENolZS9ffdBVGbqbf+Vaa6asWInuoi5ilwaAzN/n5ldtQreDOBJZn6amU8CuAfAFUREAC4EcH963OcBDOQZT8TcQ6ukbJupSuzLmsgXEdHuaIaPoQ/A89LvFwCcD+BVAMaZeUrablztRHQDgBsAYMWKFY0ZaURbohVStq0YnDBjxU50EXMVTo2BiL5BRN/V/LvC8x66IG22bNeCme9k5n5m7l++fLnnrSMismHwkrOTukAKSp1UNWO1yv8REdFoODUGZr4o5z1eAHCm9Pu1AA4D+DGAHiJakGoNYntERMshNBRbVFKMMoqYq2iGKelxAGcR0WoAZQDXAPgtZmYiehjAVUj8DtcD+GoTxhMR4QWXCSs2tY+YqyDOkXVJRP83gP8OYDmAcQBjzHwJEZ0B4DPM/Pb0uLcDuANAJ4DPMvPH0+2vQ8IUlgEYBXAdM59w3be/v59HRkYyjzsiIiJiPoKI9jKzMbWgelwextAqRMYQEREREQ5fxhCL6EVERERE1CAyhoiIiIiIGkTGEBERERFRg8gYIiIiIiJqMCudz0R0BMBzAaechiRvot3QruMC4tiyoF3HBcSxZUG7jgvIPraVzOzMEJ6VjCEURDTi44lvNtp1XEAcWxa067iAOLYsaNdxAY0fWzQlRURERETUIDKGiIiIiIgazBfGcGerB2BAu44LiGPLgnYdFxDHlgXtOi6gwWObFz6GiIiIiAh/zBeNISIiIiLCE5ExRERERETUYE4wBiK6mogOENEMdVHpqAAABdhJREFUERlDuIjobUR0kIieJKIt0vbVRPRtIvoBEe0gooUFjm0ZEX09vfbXiahXc8xGIhqT/r1MRAPpvs8R0TPSvnXNHFt63LR0/53S9oa8N893to6I/jH97t8hok3SvsLfmWnuSPsXpe/gyfSdrJL23ZhuP0hEl+QdS+C4PkRE30vf0TeJaKW0T/tdmzi2dxPREWkM75X2XZ9+/x8Q0fUtGNvt0rj+hYjGpX0Ne29E9Fki+hERfdewn4joL9Jxf4eI3iTtK+6dMfOs/wfgFwGcDeARAP2GYzoBPAXgdQAWAtgH4I3pvnsBXJP+/SkAv1/g2P4UwJb07y0A/sRx/DIARwF0p78/B+CqBr03r7EB+Jlhe0Pem8+4APwCgLPSv88A8CKAnka8M9vckY55P4BPpX9fA2BH+vcb0+MXAVidXqeziePaKM2l3xfjsn3XJo7t3QD+UnPuMgBPp//3pn/3NnNsyvF/gKRdQDPe268BeBOA7xr2vx3A3yPpgHkBgG834p3NCY2Bmb/PzK4O7G8G8CQzP83MJ5H0gbiCiAjAhQD+T3tnEyJHEcXx35OQ5CBqjCSuX5hA0ItgIISgh4iG+HHYjRhkhWDQXBZyFSSsBxGCevLkwQ8QPyBCVgIjKkvibvDioh6URcVkowfXXbPgRzwIS9Dnod5IzWzPdC1T1UHzfjB09+uq6v/8q6aru7qZmrB0bwL7MsobsTJTy94PfKSqf2bU0IvVavuXwr7V6lLVM6p61tYXgCXCvCAlqGw7fTRPAPeZRyPAu6q6rKo/AHNWXiO6VHU6akszhJkSmyDFs17cD5xU1V9V9TfgJPDAJdT2GHAs4/F7oqqfEC4MezECvKWBGcIsmENk9ux/0TEkciPwY7Q9b7GNwO8apheN47nYrKqLALbcVJN+lJWN8KjdNr4kIusugbb1IvKFiMy0h7go69uqPBORnYQrv3NROKdnvdpOZRrz5ALBo5S8JXXFHCJcbbapqtdcpGp7xOppQkTaUwCX9GxV5dvQ2xZgKgqX9K2OXtqzetbE1J5ZEJFTwPUVu8ZVNWVK0JUzu4P2iWfRtspyhoA7gMkofAT4mXDiexV4GniuYW23qOqChBn3pkRkFvijIl2yb5k9exs4qKp/W3ggz6oOUxHr/q7F2lcfkssWkQPADmB3FF5Rr6p6rip/IW3vA8dUdVlExgh3XPcm5i2trc0oMKGqf0Wxkr7V0Ug7+890DKq6Z8Ai5oGbo+2bgAXCH1FdIyJr7EqvHc+iTUTOi8iQqi7aSWypT1GPAidU9WJU9qKtLovIG8BTTWuzoRpU9XsROQ1sB95jAN9y6BKRq4APgGfstrpd9kCeVdCr7VSlmReRNcDVhCGBlLwldSEiewgd7m6Nps7tUa+5TnC12lT1l2jzNeDFKO89XXlPZ9KVpC1iFDgcBwr7Vkcv7Vk9u5yGkj4Htkl4k2YtocJbGp7cTBPG9gEOAil3IKm0rMyUsleMZdqJsT2mvw+ofFuhlDYR2dAeihGR64C7gW8K+5aiay1wgjDeerxrX27PKttOH837gSnzqAWMSnhraQuwDfhsQD3JukRkO/AKMKyqS1G8sl4z6UrVNhRtDgPf2voksNc0bgD20nkXXVyb6buN8CD30yhW2rc6WsDj9nbSLuCCXQjl9azU0/UmP8DDhB5zGTgPTFr8BuDDKN1DwBlC7z4exbcSfqxzwHFgXUZtG4GPgbO2vNbiO4DXo3S3Aj8BV3TlnwJmCSe3d4Arm9QG3GXH/8qWh0r7lqjrAHAR+DL63FnKs6q2QxieGrb19ebBnHmyNco7bvm+Ax7M3PbrdJ2y30Tbo1ZdvTao7Xnga9MwDdwe5X3SvJwDnmham20/C7zQla+ob4QLw0Vr2/OE50JjwJjtF+Bl0z1L9BZmTs/8LzEcx3GcDi6noSTHcRwnAe8YHMdxnA68Y3Acx3E68I7BcRzH6cA7BsdxHKcD7xgcx3GcDrxjcBzHcTr4B6qqlFD6MQYQAAAAAElFTkSuQmCC\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYYAAAEICAYAAABbOlNNAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJzsvXuYVcd1J/pbffoAp5FNNxa2pbYQsixDzMXQUkdSQiYxji0cy5J69MKyNbETOxpfJzNXROkbHDMCyfJAwjgoM/E8NI7HD2QZBJ4OsuzBjkE330jBUZNuzLQjYj2Bg+IQQysRfYDT3XX/2LtO16lTqx5779MP2L/v4+P0ftbeu2qtqvX4LRJCIEeOHDly5JBomeoG5MiRI0eO6YVcMeTIkSNHjjrkiiFHjhw5ctQhVww5cuTIkaMOuWLIkSNHjhx1yBVDjhw5cuSoQ64YphmIaCERvU5EhaluSyiISBDRO6a6HVmCiJ4iok9OdTumA4hoiIjek/Dcad83smwjEb1MRO/L4lpTgVwxGBB/1EosoH9KRP+DiC7yOG9R3LlaA+9V60BCiCNCiIuEEGNJ258jRzMghFgqhHhqKttARB+Px9gfa9t74u1f8bzOlCl8IrqXiF4kon8iouNEtDVEZkwGcsXA4yYhxEUArgbw8wDWT3F7MsV064jnOyjCeTveJrk/vQBgjXbPXwfwd5PYhjR4AsDVQog3Avi/ACwH8G+ntkn1OG87alYQQpQBfBfRB2yY4RPRRiLaFv/5l/H/w/Fq4xeI6Eoi2ktEPyOifySiR4moPT736wAWAngiPv7/VVcdRPRhIupX20NEa4lod/x7NhH9ByI6Eq9s/isRlUzPEc+0no5nJycBbLS1TXnW3yOiHxHRa0S0nYjmKPt7iejVeNbzm9r95hHR14joBBG9QkTrpWDU2jIcz55+Md5+lIj+gYg+xn2TeLb3ufga/0xE3yOii+N97yGiY9rxtW8Wf6/HiWhbfO4hInonEX0mvu9RIrpBu+WVRPTX8Tv4cyKar1z7eiJ6Jn6Og6SYWuJ2fp6IngYwAuDt8TO+GN/7JSL6KPOMs4no4fjdHo9/z1afkYjui9v8KhH9huV9/QYR/W18zxeJ6F9zx8bH/5Zy/I+J6GrmPe6M3+M/Afg4ERWI6A+I6IX43ANEdBnzbF79lsHfAzgEYHV8vfkAfhHAbu0+xm9DRJ8H8C8A/ClF4+5PldPeR0Q/IaJTRPRFIqL4nJa4D78Sv/OvEdE85V7/Kt73MyL6rK3xQogXhBDD8lQA4wCml5lNCJH/0/4BeBnA++LflwEYAvA5fV/890YA2+LfiwAIAK3K/ncAeD+A2QAWIFIeD5vupV8DQBuAfwZwlbL/WQAfjn8/jGgwzAfwBkQzkU3MM30cwCiAfxNfu+TZtr8GcGl8j78F8Kl43wcA/BSRwpwL4Btxu98R7/8agD+P27UI0WzuE1pbfgNAAcBDAI4A+GLclhvi576IeZanEM0a3xk/x1MANsf73gPgmOV7bgRwBpFQaY3b+RKAzwIoAvgtAC9p9yorz7lL+d6dAH4G4IOIJlnvj/9eoJx7BMDS+F7zAPwTgMXx/ksALGWe8UEA+wG8Of42z2CiD74nfn8Pxm3+ICLF08Fc60YAVyISQr8SH3s1c+wd8fP+fHz8OwBczrzHKoCe+NlLAHoRCezF8bnLAbwpPl7tG9Z+C2AYwC9Z+vH/BvARANvjbZ8G8N8Q9aOvBHybT2rXFgC+DaAd0YTtBIAPxPt+E8DzAN4O4CIA3wLw9XjfuwC8DuCXEfXfP46/z/tMzxCf85G4L4j4PsunWu7VtW+qGzAd/8UD4PW4g74C4D8DKCn7vBWD4do9AAa0exkVQ/z3NgD3x7+vQiQw2+KBdxrAlcq5vwBFqGn3/TiAI47nNrXtbuXvPwLwX+PfX0YsjOO/3ykHPyJhfxbAu5T9/xrAU0pbfqLsWxaf+xZl288ArGDa+RSA9crfnwbwv+Lf74FbMXxf2XdT/K0L8d9viNvSrtxLfc53ATgXP+PvIxYOyv49AD6mnPugsm9u3Kduk/3J8i1eAPBB5e/VAF5WnrGC+gnIPwC43rN/9wH4f5h9eyz79Pf4l9r+wwBuYc6VfSOo3zL9+H8jUkQ/RaRs9wNYiXrF4PNtTIrhl5S/dwBYF//+AYBPK/sWI1KMrQDuB/BN7Tufg0UxKMdeBeBzAN7q8/yT9S83JfHoEUK0CyEuF0J8WghRSXIRInozEX2TiMrxknsbgIsDLvENAHfFvz8CoE8IMYJoFtkG4EC8VB4G8L/i7RyOJmjb3yu/RxDNloBoFaFe7xXl98UAZmnbXkE0i5P4qfK7AgBCCH2bzeHPtcsH+n3+UUw4++V3Vq+nP2cR0TNeDuAO+f7jb/BLiFYCDecKIU4DWAPgUwBeJaIniWgJ08ZL0fj+LlX+/pkQYlT5m30HRPRrRLSfiE7Gbfwg+D54GSKl5IOj2t8+5ybptw2Ix+OTiHx/FwshntYO8fk2Jtj6u/49WgG8BdpYiL/zzzyf4yeILBL/2ef4yUKuGMJxGlHHlnir8ttEVbsp3v5uETmb7kY0a7Kdo+J7AC4mohWIFMQ34u3/iEiILY0VWLsQYp6IHOYc9Hu52mbDq4gEgcRC5fc/IppNXa7tL3teOw3qvg9FYb9BQscA/TmriJ7xKKJZabvyb64QYrNyfN07F0LsEUK8H5GAeg7Af2fueRyN7+94aMNjv8QuAP8B0YqsHcB3wH/no4jMTj7Q+5PPuUn6LYevAbgPwNcN+1zfJpRW2vQ9RhFNMurGAhG1AXhTwLVb4f/OJwW5YgjHIIAPE1GRiLoB3K7sO4HIkfR2ZdsbEJuliKgTkR1WxU+14+sQzwp3AtiCyCb7/Xj7OCKhspWI3gwARNRJRKsDnsXVNht2IHI4viseCBuUNo/F+z9PRG8gossB/C6iFUmz8XcA5hDRjURURDSjnJ3ymncrz/kggJ3xM24DcBMRrY4dr3Nix/DbTBchorcQ0c1ENBeRqe11AFxY8mMA1hPRAooc6/cj2fubhej5TwAYJaJfQ+TD4fAlAL9HRNdQhHfE388HXwLwOSK6Kj733URUJyAz6rcS/x8i38F/MuxzfRvruDPgMQBriegKikLX/z0iH4ccnx8iol8iolmI+ggrW4nok8qzvwvAZxCZqqYNcsUQjn+HSLufAvAAJmbwiE08nwfwdLx8vT4+5moAryFa+n5Lu94mRAJgmIh+j7nnNwC8D8Djmvng9xE5xPbHpqC/QGT79IWrbSyEEN9F5ETcG7dhr3bIv0E0e38RkU34G4j8Ek2FEOI1RD6HLyFaoZwGcMx6khtfB/AVRGaGOYhDC4UQRwHcAuAPEAneo4iUKzeuWhDNcI8DOInIEfxp5tiHAPQD+BEih+7fxNuCIIT457i9OxD12Y9Ai97Rjn8cUR/+BiJ/Vh+iCYkP/ji+z/cQOVb/DJEvQIe138aRQv/CdTMR4QdCiJOGfa5v8ycAbo+jj/6jx7N9GVE/+EtEwQpnEPVxCCGGAPw2onf2KqL3bOtzKwEcIqLTiFZv34nbOW1AsQMkR44cOXLkAJCvGHLkyJEjh4ZcMeTIkSNHjjrkiiFHjhw5ctQhVww5cuTIkaMOM5JI7eKLLxaLFi2a6mbkyJEjx4zCgQMH/lEI4czrmZGKYdGiRejv73cfmCNHjhw5aiCiV9xH5aakHDly5MihIVcMOXLkyJGjDrliyJEjR44cdcgVQ44cOXLkqEMmioGIvhxXNfo/zH4iov9IRM9TVA3samXfx+KKST8hS9WuHDly5MgxOcgqKukrAP4UEQ2uCb+GqCDFVQCuA/BfAFxHUUm+DQC6EdHgHiCi3UKIUxm1K0eOxOgbKGPLnsM4PlzBpe0l9K5ejJ6uTveJOXLMcGSiGIQQf0lEiyyH3ALgayJi7NtPRO1EdAmiSlTfl+yIRPR9RCUjH8uiXTlyJEXfQBmf+dYhVKoRK3Z5uILPfOsQAKCnq9NLaeSKJcdMxWTlMXSivtrTsXgbt70BRHQPgHsAYOHChaZDcuRIBJMA37LncE0pSFSqY9iy5zAAWJWGvKbrmBw5pismy/lsqhYlLNsbNwrxiBCiWwjRvWBB2oJcOXJEkAK8PFyBwIQALw+bK7keH644lQYAr2O49qzcvBdXrHsSKzfvRd9AOWh/jhxZYLJWDMdQXx7xbYiKlRxDZE5Stz81SW3KkYMV4BwubS/huEVpmH5zx+grlVVLFmDXgbLVfNWMVUhu8sqhY7JWDLsB/HocnXQ9gNeEEK8C2APgBiLqIKIORCUH90xSm3LkYAW4CaViAb2rF+PSdlNRMtRtdx1jWqk8uv+IUUlt3D2ElZv34t7tg0GrEJ/VBbdiylciFzayCld9DMBfAVhMRMeI6BNE9Cki+lR8yHcQlXh8HlG9108DQOx0/hyAZ+N/D5rK9OXI0SxwAlxHR1sRm25dBgAYOTfasF8qDYne1YtRKhbYY0wrFa6W4nClypq2ALNy8xX4SU1eOc5vZBWVdJdjv0BUE9W078uYhFrAOXKY0Lt6cZ15hkPbrGiomI5tLxWx8ealdY5nKXALRBgTAp2aiSZkpeLCpe2lBnPQ6bOjrMBXzUQ+Jq8cFx5mJLtqjhxZQQrJ+3YcxJil/jnndAYAomjmvXb7INrbinj9zCiq49G1xoSorRRUgXxpe8m4CiDwKwcTSsUCVi1Z0OB7sD2HCq4dviupHOcnckqMHJOG6RpR09PViS/cubzB9KOihYgVuKdGqjWTzamRak0pSJhMM5yp6aPXL0RnewkEoLO9hI62ItumzvYSNt26DPueO+Fc8Ui0zaq/p8vklePCRL5iyDEpmK5x/aoJpr2tCILASHW84TjbasIHcqau3m9eqYg5xRYMj1RrUUn7njtRFx0ENJqvSsUCNt26rPbe1m4f9G7H6XNjWN93qO4+t13T2XDfPCrpwgaJlB1+KtDd3S3yQj0zCys37zXOuDvbS3h63Xszu09I6KWurIBI6KqCsiX2EaSF9DFwQh7gFQAA6zNx75aDbq7SFU0a9A2UsXH3EIYrVQCR037DTUtzRTNNQEQHhBDdruPyFUOOTOASyJPh5PRdlci2moRppTqGfc+dqCmrK9Y9mbpd0jTjigDi9j297r1WwerrQJfQ1ZzJKZ0EfQNl9D5+sM6Udmqkit6dBwHkGd8zCbliyJEa6/sO4dH9R2oCxySQJ8PJ6RK8Uhm4HLyqsuLabUOxQJg7qxWvVap1SpIz+diUo77PpoBVk9hrI1U0GsR4JFXQanu41VV1TDQonjypbnojVww5gqHb5U+NVBuO0WehnBklSycnJ9ykopL3dhmGVGXlOxsvEGFcCKuQcylHl+J0rYjkPVdu3mv8JgAf9ZREQevtcUV1yXNUU5PpOXJMPfKopBxB0BOnOAEE1Avqnq5ObLp1WV3ETVZ2bQlOuBWIvM0sBGDVkgkuLrXdHIothC/cuRwvbb7RavaxRQD5RAf5JqPZZv8fvX5hZlFIXPiuCTLX4jPfOlSnFCTypLrphXzFkCMIocJAhTqrbQa4VYlve4FoNr3rQBndl8+vtVVtd99AGQ88MVRTiHpymw26yce0usjCT8OtTDrbS3ioZxm6L59vvY+vmcfX/FQsEOtjSXK9HM1HrhhyBCFk8KozbxPS2Jl9bO0qhXaIn6BSHcMDTwwZr59WudnO19svZ9ChfhqX2c7WhpCwYjZJjwBpVepoK+LGd1/i9Q3ypLrpg1wx5ABgZvo0xbaHOGP3PXfCer+keQ2+tnYVuqB0OaBPjVRrq4LJsoG7nsvXT+OzMuHAmavu23EQa7cP1l3LFn7L1aXgkCfVTS/keQw5vAavLd6eAwF4afONbCGcpHkNKx74ntFObTuXW2GE5ABknXOhwyfXo9nRPFese9LpnFeFv6s9Pu83z3WYPOR5DDm84eM3UGPqATe3EFDvcNRnwdz9XKaqvoGyUSm4zuVWEiE5AM22gduiqvoGypmYslzwWRGqEWeu9tjemU4smGP6IFcMObwFnjzOFpMv4UrqKjAx7y47sy1yRT/XZ3ZtMrucPjtqVD5Z28D19s0rFVmlN1nhnL6K0rfP2BzhzVx95UiHXDHk8PYb6IVouHPaS0UQRRw+3JpCso6G5jXYBFJ5uIKVm/caOYZcWdA+/ERZ2sBNK6ligVBsoQYSPiBZdnISs5OuKLmkNV8l2Yz8lTw5rvnI8xhyGGPodfgWorn7+oU4OzqOUyNVq61a5jGE5jW4BFJ5uIK12we9qp1xxWwAYNOty+qYTWe3Ng6VNGyxppVUdUzgojn8XC3ElJWmMltPVyeeXvdevLT5RiPrLGFCCbuul3X+Sl5xbnKQyYqBiD4A4E8AFAB8SQixWdu/FcCq+M82AG8WQrTH+8YAHIr3HRFC3JxFm3L4Qw7Sey3mIVWoqnZlk1PZNwKFs0/bZoS9qxejd+dBVMd4teNLd2FLGOtdvRhnFJbV4Uo10/rLnJAfHqmiMwP6ENuzhQhl9TvrdCK+z5ylXySr58phR+oVAxEVAHwRwK8BeBeAu4joXeoxQoi1QogVQogVAP4TgG8puytyX64Upg4+g0qfnakzS5nx65rVyizkLXsOJ6pB3NPVibmzks9nVOFqSxjz4V1KUxLTVhM6ixoJzSIt5Aj4Jgt5xbnJQRampGsBPC+EeFEIcQ7ANwHcYjn+LgCPZXDfHBnDRvsg4RIEnMDraCuiVCzU7NVpahC/xjhoXdCFaztTBOfS9pJTAKUVUCbhX2whjJwbxdrtg5hTbIl8NUhmfrEpnhCoipqD7Zld5rZQc5zPc03XglAzCVmYkjoBHFX+PgbgOtOBRHQ5gCsA7FU2zyGifgCjADYLIfqYc+8BcA8ALFy4MINm59CxaskCbNt/xHmcTRBwzkYheFrpUNqHJIynemhk30AZr58ZNR4rk/ts5py0bLG6KW5eqYjT50ZrSXWnRqooFQvYumZFomzweaUiigWqM7klcfr6mAa5Z7aZ2wB4kemZEi93HSizzmyd+rs8XEHv4zntdyiyWDGQYRtn5v0wgJ1CCLWnLYwTLj4C4GEiutJ0ohDiESFEtxCie8ECO9VCjmSwZSqrsAk/ztnIzfJNPD+ue5pm26ZOCERC4+E1KxrI7bbsOWyM/gEirqRVSxag2FJ/1WIL1QRQFuYe1RQ3d3Zrg98kxEyjm+CGK1VARCu1NE5f1wrI9szc6u+BJ4a8yPRMZsVdB8q47ZpO1pm9cfdQw3etjgts3D3k+cQ5gGxWDMcAXKb8/TYAx5ljPwzgt9UNQojj8f8vEtFTALoAvJBBu3I4oM/GfGbhOvuoCSZnI5fpHMrzI68vr2mbSQKNTnMJm8CrVMfw7YOvNmob5W8X7URoSKXPSsnFD9UQ5TQu0DarFQP338DeV4Xp+rZ+4UpQ457JxsirnscpFrWQkg4uD4Tbnoe+mpGFYngWwFVEdAWAMiLh/xH9ICJaDKADwF8p2zoAjAghzhLRxQBWAvijDNp03iNthzYt8138QYCZfdQHWfP86Mpn5ea9rMkjpHCQhEmQ6AVnbFFVoRFLLtOU65ppFQt3/duu6TSabnxDi0NNfuozh/hx5LOFwPTMa7cPov+Vk3ioZ1lgq88vpDYlCSFGAfwOgD0A/hbADiHEEBE9SERqlNFdAL4p6smZfg5APxEdBLAPkY/hx2nbdL4ji1hu02xMwDpJriFJJEpIPLsp2skFl8lDb7NP7kaS+wDJIpZcpinXNV0mOFefsc3Ok+YhcM/UXjI7/SWOv1bB+r5D7DO1ENX1dR8HeYch0IAbA4/uP3LBO6wzyWMQQnwHwHe0bfdrf280nPcMgAtbNSdAFrHcnIATiAa/y7yUJDywmTw/PrNTvXAQ0OgABSJfwpgQMLkgBFDLrg41oRyPOY9UBzFRlLtwaXsJt13TaWS0dV0TsK/I+gbKRm4rtc/Yru/73Uwrkk23Lqt7x3OKLXjXJW/AMy+cZFenQgDb9h/Byivn4+Tpcw19fUyIutXSA08MWR3kxQJhw01Ljc9mvD9wwedF5JQYMxBZxHL7cthw7JjTjTvfh+OHKxykC+vT50YxbimY7DINce92XqlY10Y9ImfXgTI7G3eZmjgTHBDRe3CEh7LPpI2y4swy+ir01EgVT79w0uua+188hS/cudyq1OQ1Odj8IFlPfM4n5JQYMxA+ZgNXHLdvVA133KolC5oWK54kDl01VQGNJjBb9IwrOsgEm2mIe2dEjSG7IdcsFhoNe6fPjloTDl3hprLPpI2y4swy6v+hGBMCPV2drFIrD1es5jk5yeFm/r2rF7PRbNNt4jPZyFcMMxAus4GP4zPEyasfp0cAuWbQIY7yNFQTqskjqXM+ZKbIHcu9WxcjrfP+Bvk4XKnWuKFMs2Pb9fSqbqY2pzVNpkGBqPa/STkUiJw5NTb0dHWi/5WTeHT/kbpXmxcNyhXDjMXs1paa8FQLnZiiczj/g6/t2CcCiLtHqKDPkuMniY04JJJmnsWJGhKyq98faFRsp8+OsnkXKneRnszFPU+BqMFslcYHlDQCyYa7roui4LkVw5gQLK9Ue6no9Sw+NbAvROSmpBkGKWhV+7RK9hbqf0hitgm5R2iETtZcOD7Ppx5z+uyo0WRjAvkdVoMrEkpf9akRRFwcvg49mYszEX3hzuWZCr+kUV6yPSuvnF+3Qrj7+oW1kFFTRJHczj3fxpsbnc0ckkTBne/IVwwzDK4ZdYgTManZxifmXs7AOPsyJ+jTOkFV+DyffsxwpYpiC6GjrYhTI1XWjAFETs+Vm/d6zzRNNBhqVJJabtSnohwHVYmkNRH5wsbCCkzU2O5s5+uJc+AKBQoxec93oSFXDDMMacIWdSQ125ior4sFMvo4OHCCPsvCLj7Px2UMC4GGQkI6ZF0CIFsK6qzt9VmGCdt8N1n4eEzg6FTk9qTPl2c988gVwwxD0rBFU4dPZbbRZ3Hx3yH1GEyQDsHHfngUY0KgQITbrkk28H2ej62L4DDdmLLEQ3whNqGU1l7PmV7SImSFmaUyynIVKWF6lnu3D+Lx/iN49Ld+IfF1zxfkimGGwZdLyGdQJh1wJgK66rioCToOBDhnZn0DZew6UK6Zb8aEwK4DkV8gxPwgn8P1fEmZWrlzysMVXLHuSWsbXQLW9I2LLQQQnKG0XDJXFki6wkw7M29GeVBuAvP0Cyexvu9QTokx1Q04HxHq0A05PoRawoWkseu2mTinVDrbS9i6ZgWAqBY095yc8Hl0/5FgChCf5+MIAduK5qHhMxt3tdHlkDd94y13LMeW25ezeRpAFImz5fZsncoqkqwws6BvybLP+7T5sR8eZfddKMhXDBkj1KGbxAGchqIgSS6DDttMnJvdrVqywOs5bTQFKnxmqj7Px1GNzy4WIED1s/YC4fUzo052UFcbfQQs942lc9r0/ufObs1s5h7CtGpbYU51+LGE/jzzSkXWXMgFG1xIIDEDX0J3d7fo7++f6mYYwQ1anWoi6fG+MDmBfVkxk1y72EK4aE4rhkeqaG8rQojITi+jerjono62ItpmtdYG7Mg5f8FLAF7afGMqU8UV655kI6fuvn5hrWCPLTrJBZV7StbFTvPNuTbL92FCSH/gjk3CtJqkrbINWTmG1/cdakhi04sYqSgQ4YVNH0x0r+kOIjoQ17+xIl8xZAxuNlgerhhDG5tVw9ZWJCXtgDOFXerVx4oFQrGFar4IW8inPK88XEGxhayDVkV7W9G44urdeRAbdw/htUrV+Yw2H4MsCmOq86CjhWAk3ZNtkv/bqKx9bOZ9A2W0MEoqycz9vh2N1c1cTKsh/SfJKiNN9rvpWrpSACJfzezWFpwdbSTFkol1Ifc436KbcsWQMbiBwIU2NiPiArAXSVEFcdIBpy7tV27e27As9xHsJlTHBdpLRcydPbGKOHn6LCrVxgEsBBNuOiZq7XE9o418r1Idq0VHucApBdM1kwhYYEJgmtrjUixcf9CZSm3HhjCtSiRxHIeYn1w1Ju7bcZBdEZ4dHUdbsQWV0XEIEa0U7rruMqvj2VVqNM2Ymk7IFUPG6F29uK7mrARnI29GxAXgH22TxN6rI+u4+9cqVQxumKg6dsW6J9njuBh3FZXqGDbuNq+U5HPfy/AYNcPenETAAvZQYD2kN8SmrveBLCcr8po69bYNvqtojtH13u2DaI9Xsa7vN1Id9zaxmu5nWo1kMaamGrliaAY8qRKkgACyz9w0JaHZ2pEGWfPk6ALIJah87j1cqbKriJ6uTtbun8a3wCHpatD2nVQnukmA6aY9HdLU2bt6cVMmK6rJ5tRI1TirlsqMe9vtbcU6c+zps6Mso6svhQjQOHGQPjLdFGljkNUx02m7MwlXJaIPENFhInqeiNYZ9n+ciE4Q0WD875PKvo8R0U/ifx/Loj1TiS17DnubUdSktDRcLWy4q6c8S2u2MoWFSkEUihDqbynEknD0+FR0KxULuOu6yxJzAEl/iandSWD7Tqog4sxrF81prfERmaAqzCzDQ334slxV2AotUURYEv4oHwxXqrVrnxqJJhF6eG1ovZOZjNQrBiIqAPgigPcDOAbgWSLabSjRuV0I8TvaufMBbADQjUiMHYjPPZW2XVMF384T4my0rSY4R93s1hbj7FDP2LW1w8epJo+pVMdqs2tJ/ww0OqhtStNEG227vu4wlbO918/wTKQqTBXduOc1mQx0FAuEubNa62aatmuGQlJ3m9qhCiI2m3ukiq1rVlgpS6RDelwIXBrnnqQNjfYxDbky5sfGBZKzR6WDVGKcOS5kTM0UZGFKuhbA80KIFwGAiL4J4BYAPrWbVwP4vhDiZHzu9wF8AMBjGbRrSmAzqxBFDlNbVSkVPtEZ3GyMG2R66c6Q7Fyd9x9A3TFjQtQGhcqfo16TE2ymUE29Dabry3vY7OtcCCxX0U3HvudOOJWC7ZtmZWuWdCG6kiLUJ+rZTG862Z0J0nTm60h19dP2mJBQR7uSLDjdTS/SHKej2EJYc+1lwVn50x1ZKIZOAGqq4DEA1xmOu42IfhnA3wFYK4Q4ypxrfKNEdA+AewBg4cKFGTSLkiV2AAAgAElEQVS7ObBFuQgRdSTfjuNagvvw++vwjZW32VPVVUlo8lKrIRRVvhOfNvgmttlWVUDYrM4ltAhIlXMSgod6luGlE6/XlccUiEJruy+fz1Jq6EV5bIlyKnzet+s72dhRXX4FF2QejInRVZryRrSItkILYcw3jEyeQ+YQ6ovmtDrpM2ZiOGsWisFktNTf4BMAHhNCnCWiTwH4KoD3ep4bbRTiEQCPAFGCW/LmNhfyg6/dMWgcENVxURc7nmQJLgVzKDVzlsLQtirhzuX8LxfNMWfsZpXjkdbB73KupyVzC2lX30AZzxhqJquC2PS8q5YswJY9h7F2+2DtPquWLPAykbnet+s7cZFjw5Vqon6sQhaoAvh3aSp6FOKfsLHsDjuSMbPMyZhMZKEYjgFQM0LeBuC4eoAQ4mfKn/8dwB8q575HO/epDNo0pejp6mTDH4GJ2PHH+4/gmRdONszE5TVs1bdCBpMPeZ2ONJFGnKC05VbIiBi1fVmHTaax7XMCTK1/Hap0kggN2+yao9TgkgAh/OITXO/b9Z2y6scumFaKclVUIPKKWCLAGJXErc59CCezoASZbGQRlfQsgKuI6AoimgXgwwB2qwcQ0SXKnzcD+Nv49x4ANxBRBxF1ALgh3nbeo1Idw9OKUlC3S1MRFykTEj7Z2V4yRju5iPtWLVngjLrtaCsGkfDZBpGJXC1tgfqsoJK4ARO1iDvbS7Us5iQkcaHV7QD77J17v1yUko+DHuCJBtX9el9Rv1NoPyYAD69Z4RUNxr0rPcpJ9Ztw/VqOlYH7b8DghhvqSB9Nlf3SEk5OZ6ReMQghRonodxAJ9AKALwshhojoQQD9QojdAP4tEd0MYBTASQAfj889SUSfQ6RcAOBB6Yie6ehgHG4+kJ2GM4GoyUIqfKMj+gbKdUl4eq1gSX1tExulYqFG76y3D0DDDBoATp8dtT63PpNqVo5HEnArDlv9a2DCD2SKqEoiNGyZ9fI966aTtDkmHNGgvJfeVwj1CXfcd+Rm4SI+9rZrOmtcVRw4mnNblJOpX+tjxVbZT6+4ZwP3/gVgXCVPF+Qkeg4kdRz1DZS9E8x02BzE3HVDoiNWPPA9o2JpLxUxuOEG1ilZIKqFMfpGMwFRGCcEvGaoLnK1UGTp+OsbKNcpZZfy52zTMtM2CZme6f0SgI/GNZK5/WlH+cvMNwkhgXTRSehQM5K5Pqsf76NMdLSXith489K6fpEVuaWromFWxJa+yEn0MkBSx5EcANWxCVZRrgauDtvMT86yQqIjTNfgBpjczs1Yx4VwCm3ObOGLLBODsnL89Q2U8cATQw1KwKYUbPZzmWlryjVzmSdcqygumiyNcrAlxfmSRpo4hSRJISfI1RXkxpuXOh3Vsm5H6HOa6MqbEfjgesbphFwxWJDEccTF3ssBYJstyZmfNOeYhBo3MEyF6QE0XGOtxSkukcbpm8Z2mrX/IAvHn08Na5MJz+VU5VZs+szVBJsj3beeRQhsPi1f0kiOU2jfcyfw9Lr3svTcnFmVa1GS5zRxMCVhsOUgv5frGacTcsVgQZJZg42yWF+Cdl8+P2jmp2b/6jCxt84pNuYZ2AaOrE6WhiuHS2YyHquxqGZtb81i1ufKyAUakwZXLVngzcqqwlVoxwecoJaO8yT+hk6LMOQitpiS4A2QKwuu36iCWFWIPjkYKmycV+o90jDYutAsJuVmIFcMFiT5kCHCKMnMT65AXDZkW56BCWqt4KRO376BMl4/Y3cw1+7XQg2zYxkplZWiyGIg+iiRAk0kLdoEiwvl4Uotmik0t0GlHtHrWagCLTRvIMS0ZUoy8wFXh8N2b5NC4u4t/QI+iY7cRKBAlNoX0Cwm5WYgVwwWJPmQWc0KbDM/6WvIKurEROeQJO5/y57D3iGQelJbMxKBshiIPu9XrWngWmF0Wig6AETRYTThlwktDeuKnjFRatja6qOcfTOpbUrDVIfDdm8uic9WAMlnwmPzr6VdzfkmHk4Hf0OuGCxIMnPOalZgu44utLkB2V4q4vRZO6Fc2hKiKkJMNDJjVM52OcecqcKYL7IId7Ult+ltlfcxQY22svktTN/K5hfZuHuo0dk/LtA2qxUD99/QcLyL90mNcAqF7fv7RAzpdTg4rO87VDPVFYjq2mszzwL2CY/Nt9A2q5DJataVeDhdsqJzxeBA6Mw5q9j7kOtwSuRDyy/B9mePNhyvHpN2GauaMbhBZcKl7SUvx66pwlgI0mQ8q/e8b8dB57PZVnC6rRzgiwNx19bRN1BmI8yS+Fc4dls9RFeloVBhy3BWzTDcRMZnVb2+7xC27T9S+3tMiNrfD/UsS/y9XSbA0+fGcPrchA+v9/GDeOCJoaCcBvVe0z1KKVcMDNLEv6cVRqHXsSUQcaGivmYCG0wRWDpMOQxSIfk4doGpHyzyvi4lJt+7nmdSLDSSBPZ08cWBuGvrsGVIc0LWZqI05R3o1QhPjVQjOg00KmrTBKXYQrhoTivWbh+sVSxMsqq2CVMAeOyHRxOtciR8+6JEdVwkKpHrMxmaDlFKuWIwoBlLvGYzLJqUCBeamhUbKDeYWmiiBvLcWa340PJLjIl3PqGzElM9WFxO1jrBpunH6pjAA08M1V0HsNdXUMEJTds7CXHactfnfEbVMWFU1PoERdbg0AXopluXBdW89l1Z+sCUZBeaEGeC7+TlgScaTX86pkOUUq4YDMia+Gp936E6h1+zbIl6p/cJAUwD3lE38Xu4UsW2/UfQ0VZsKPoS4jhvxmAJVda6fdh07srNe43C1FTOsqfLTrboIj/k3l9HW9H6HGoYsy13wvZtuG+vh5Tqpi45jkIqFfrM5rkkPPU76UWcysOVOrNUWrgmL30DZWco93SJUsoVgwFZEl/1DZQnpWC4sc5vYAhgKEIEu0kwGk0PFtNTlki7KuTMfLY+YvrmnQGmHR3c7F+GHQONoax6Fb3XKlXcq5h5VMVniyJqITJyFKnIahz5HH/XdZc1bNO/cVLuMl/4MK3akEVIbFbIFYMBaUJOTdXDsiwYzs1UjVQUTAggYCa5CzV1+UbsSPiQ5K1asgDfPviql7MzDZpFh+xSlvo+zi4/cm7UKXhdAQqmUFYd3CrWVTzHp8obVwpzXqnYsE2Hb1CDLYoq1G+QFsMj56zfzDXexzIIic0KuWIwwFTAxGfWapqF2hBqHrHNcrlOp4cAGrn5A2PnJUyCyVUERW+nLXwPAM5o1beyQrPokF3KkhA9J6ccObu8eqwKW4BCqGBUFWPIe+AUKkexZKFeAuAX1KBi2/4j2PfcCe+cBBdkVTh1cuez2jh9zr76dE0a9L4xlciiHsN5BR8aYQ4hA1Ely/OFbZZri0JxXaM6Lhqil1x1AYCJUEZZi2Dk3Cg+tPwSK4++DFM11YJIUp9AtsNWW4JrR8h2X/R0RbUb2plZsUCUe6C2F4iCAV7afCPmzm5N9C1MSOJQVSkqQmASwlx1M1fVs5BxpK941G+f9FtuuGlp7Xs8ve69zvaaYPpmrroWkm58OiBfMWgwJQwJAN8++KqT0tp3hqKS5YXANsvdumaFV7RJyCzKJli4UMbtzx7Fmp+/rM4cpLZn1ZIFwaseW5t9fQU+lM9Z+TLkLH7RuieN+4cr1dq70dubZiWj+xOSwuafmt3aYlwRmoRwUpNs0pm+vnIJNXUCZsd9UnYB/TlsdS24c6YK+YpBgS1haLhSrc2MuSpdtg5fIAIhcipuXbMiUcy1bZYrZ6qd7aXafVRHlpxVh/DY2OiWbaGM+547gcENN+DhNSsa2rPvuRPGVYEtbNP2XrlVhgwPBSZqWKjfb/uzR3HbNZ11VdmkYPFZcfjARj6nt1fOFJOuZNSKZQL28pWSLNFm0amOC8yd1Vo7FgBmt7YYV4ScQjVVbgMmViXqe1ZXfS1Mv7P1Rwm9vOlt1/hPvnTHvQT3HC7o38xH6LcQZdb/0iCTFQMRfQDAnyCq4PYlIcRmbf/vAvgkogpuJwD8phDilXjfGIBD8aFHhBA3Z9GmJAhZxqmD2WeW5lPLwAUuiuf0Wbuj0icO3ASbbdfWyVWqZN/cCu5Orlk8145TI1UsWvckOttLGB4512CeqY4JPPmjV7HhpqVB0UkhIa4hM1b5HEkpVULML5Iqo2+gjD/41o8wwvhxhivVOoE4XKli14Eyrl44D/tfPFWjpDCZWeV74tqkvmcATp+CpNSwFfYBGoXxtw++ajxOrtp9ClsBMDIV22D6ZqG8W1Ppa0itGIioAOCLAN4P4BiAZ4lotxDix8phAwC6hRAjRPR/A/gjAGvifRUhxIq07cgCocs4vUaCbZYmZwKhafMcJbcal82ZJSSSRmfYZry2Tq7TGKvPwUWqcPd3RUeFRgGpODVSDYpOCg1xNTnnOUemfGdJKVV8+67+TSsW576p2FClOoZnlFrlY0Lg0f1HsG3/kdr3AvxYXNXJFcdoqlcMlFxIpiRDST2/cvPeWuIa19cE4LVqt1XEay8VQRT5TOYpv7lvFsq7NaMVA4BrATwvhHgRAIjomwBuAVBTDEKIfcrx+wHcncF9M0eoLZHI3KFN8d8hMwGXAFITiHQho3eqvoFyIvuoa5bau3pxg48BqKd/MOZWFNzmAMA/O7t39eIgziEdITb9JCGu+qqJEzRSoJlIEn3g03dNFNM+Iak6uFoLtjogHGwKzbTKNiUZ6koiy8Q1riJeEvJJk9LnvtlU+xqy8DF0AlCZ2o7F2zh8AsB3lb/nEFE/Ee0noh7uJCK6Jz6u/8QJtxMnCUy2RJsY4ywtAmZ7qG90iW90jkuoSSHEgbPZ+iTa9HR1Yssdy+uibzraithy+/Laeab0/+qYQIuHbvCNKOnp6mQjgFxoLxWDbPpZhLiqviAJVaD17jyYyMZs6ruSftvkc3K1u6Ot6O0jUVGpjgUlkl3aXkrsV+np6kTv6sUoEAXXgOjwjLrKWnD3dHXWRTxx73iqaTGyWDGYhrnxOxHR3QC6AfyKsnmhEOI4Eb0dwF4iOiSEeKHhgkI8AuARAOju7k5b29wILuEqdPYhq3mZ4NOhuGNkIRfZTm7GMa9UdHLjczbbkOLktpmtLf1/XNjLX4ZGB/nUA9YhCwUBjWYP7v5Z1dqQ763rwe81vCPJqxS6YlCVsbzm3Nmt1uRAW1lO6YT1LYaTBLYCQiF5Q6FFkdSiVK7rc8+rf/OkXGjTtXhPForhGAA1H/1tAI7rBxHR+wB8FsCvCCHOyu1CiOPx/y8S0VMAugA0KIbJgknYmUIvgWjWcaY6bvyoHBOkAOpMBibYlpiqSYnLmj19zp5kBqAm/F389UlhWxnpxYba24oQIkrGS9IGF8GdDgKw5trLGvwwtnfQN1DG6bON1enSDGJOcZ4aqSYWNGpC4HClkYZE5w4qtlCDOfAXr5wPYGLlKstidjJhviaY7P9yJS2vpT9T6PMm8Z2FsApzpjY9BykNvUpSn1KzQSJBCcK6CxC1Avg7AL8KoAzgWQAfEUIMKcd0AdgJ4ANCiJ8o2zsAjAghzhLRxQD+CsAtmuO6Ad3d3aK/vz9Vu0PAlQTcdGvkvDJ9VFckkG1m7jpXtW+aKDhcS3mXfTQLJliu8DkAPKyR6WUNHzqFEBsx9z3S0nVweQ5A44rKZyXHrRJtpS0LLYQx3U/UQnWZ8Pr9Odu+DpOT1tafQvudrY+ZUGwhbLljuVFJmu5nu/7Liu/D9d5taDbrsg4iOiCE6HYdl3rFIIQYJaLfAbAHUbjql4UQQ0T0IIB+IcRuAFsAXATgcYrs2jIs9ecA/DciGkfk79jsUgpTBRsjpSsiJbQgh9zGOVX1WG29M9vgw3ufBeU4t+optjQ/DE99J9z7CLERczPTtlnR8Ela2audidAiNAY1VKpj2Lh7yCpEXOZL03PoSgFwV5HjHMA6BBpX1bYExNB+ZysMNKuVGiKuquMTdOE+97PVrlCR1Gw8nSu4ZZLgJoT4jhDinUKIK4UQn4+33R8rBQgh3ieEeIsQYkX87+Z4+zNCiGVCiOXx/3+WRXtCwNEpyO2L1j2JtdsH62bhZ0f9+Huko4nztdo6Tk9XJ+uYsiXB2OzdJgekjqS0FDo45VMdj2jIJwtZUF/YfD5qUhmX+Mhh481Lo9m5gmIL70h1JVnanjVpdJqKJA7XUyNVr/6UpN+ZHO6lYgFfuHM5y7FlU5L6/TiHviQ4XLl5L9b3HWIT8uT3yJoCZjJwQWc+69micrCt7ztU2w40LpVD+Xu4jiOpizl+Hy7jckwI9O48iBUPfK/hfG6wPLxmhZMD3yY8sgyfe+yHfLnRrMG9w5Fzo94CnBO4XJw/1zd0AQEAW+5YXpcdLv/2gY8gU2lI0sLkcFXHSQj0/pRk1m3L9ndNCHzup1+/vVQEKFJ2Ul5s23+ETcjrXb2YlTF9A+WmETlmgQuaK4nT2LLQuA0h/D3ctVzUxfK3qd5wdUxYE9tC7Zau0NbQyBub4nS92yztrvI8tW4x0FgfwnZPLnKE8wGZ+gZnNth06zKjHTo0Y1p9Vv05bE5aU/0LzsegrwLT0Frr/SlpxBcXGccxJK9assBKDaPfT88b8knOVMO9V27eayW+zCLKrRm4oBUDJ9x9wt9C+XsAe6gf53Po6fIrgcnZgH1hG+RJIm9sitPGeWOkBd95EBt3D6WKWtqy5zBbTQxAwz3Xbh/EvdsHa1EsplKUnG1dmm7U0FHTtzfRqlyq3E89n4NNkEnY+s+W25fX3V9m8J4aqVojiIB0M9vTZ0frQq+zDNvkGJKvXjjPGlGVlH5Fhyo/siC+nApc0IrB5rxyKQdbIRWuM7jUDXeeb0a2er6kxFYL3tz4bnPtZdu9ASSqKmVrs6naloSRFtyxOvKBbYBy2a3q/Xxn9nJW2rvzYN2Mm/v2sh6GWm5S3s8FXyFic6KqARSmla68h+ldJ2UdBRpDabMM2+S+p0rloSML+hUV8tlsqwKfZ57sqCWJC9rHwNlkbYJLQrUzSpthEgZTFdwqxJfdUXV29T5+sMF0sm3/EdZ5yd1bFR426PbzVUsWGNv8ljfMsnLU+MzKQh10fQNlq4PQdU/ufpyNe99zJxpI+2zQo4AkO6xttdBC/gqb6+d6LP59Ow4G+Uy467YV/cSKzoKrZwUnFYChEzNJv+K6X+/qxQ3BAhzke3O9e9szr+87hLXbBxMHN6TBBa0YuIH9UM8y75R5YCKU0OaIKxUL1mvaZn8mGgUdatINR4ltarcc9D7Cg4PJwbbrQBlv65jTcOxP//mcNSrJ177qu6y3ZcdKXiefe3L3Mw3sLJyHLhOSx+etQe8/OsW4K4PY9uym8fPvb323twCVyXxZwTYJ4BBk09cuXbA85/HhitVBboOrVnyzcUGbkgCzTbZvoGzkQbL5CGxOKRfrpE+ilGwnR8KmFv4JEUwqRTaQbCnPOfF/8g+njcc/9sOj7KrBl4HSdzBbHaTC/54hwiONiSUEIQyc8jiTA3x2q530zvbsNn+Wy8cikRWTaBKKjGILedv0t+w53LASHBsXrOlZZcxN4vOzmR+bjQteMehwZblyDkdf2BLlfOAjwEMEkzrok3RgINwJaRu4tkgsiRAHna1tMuFJ+g586Jx9lGXv6sUNPgYgEkJzZ7d60467EPreOQVuUwppnKFqLoFNVGcVnpkkSmo0QInYglVMmeqh7031J9ha5VOwKC1yxaDBluVqmnUBUSeYU2xhl//l4Yoxi9k3UU6HS4BzlNg6soqAyHqG7IrEci3FfSgxJKTAl0r24TVRaRCOztnH8S33qTNmOQkAGvuPXkLTF6FhjUkEsK3WuatmiK+Qzio8M8nzCQHvYAabE1/l/kriJA4pphVKGpgEF7SPwQRX0glnM7zx3ZdYKbpNaJa9sKfLTIl99/ULg22dPuD8E2mQ1Bmu+ztcg0iuBlTnXv8rJ2v7k9p4e7o6MXD/DXh58414efONGNxwQ02h6/1nzc9fFtx3kih17p12tBXZ77X9r4+i68HGREpb4hbgL6SzDM9MqmB8vylHy18ermDj7iGMnGskWfRFiCJNQoceigtmxWCa3QCNJhmfpBM1aYpbDfiiWVmOtlWFfBdrtw/WIifSKAhbYpWNayZJUlnSEpct1Oiw5XILTE4/FWm/mf5tktTiTqLUuXcqKaiNiZTjorbqUVdMnFlKUoZz46ijrYi2Wa1NCb9MU7TJlbCqMtLObm3BcKVa139U86DvytLXdKRisvIcUrOrTgVC2VVNyzRTxqdvjQIZDuoT+eMCx8DYrPhlG1Ns1vHTLlZaVzt82+AzwAjA1jUrvKpnuZCkepcNoSyhBCSuH257p77tkPVGbOy5gPv7JoXtGUw1LnxgG4cmavtRIdhCXa5rctc1ob1UxNzZ2SlSX3bVC0IxuIrWqPCxF4ZczwZuoPgKbxNcwpRre3upiMENE0XiQ2nGQ9uThqpYv77PADNdN813DOH1t0HmD4TYjU21kOW10ihz3/dBsPuVVJrvrCc3rrHBRe21tkQEjiYUWwgXzWk10oKnHescxbzPdbNSpComjXZ7JiA0fNPl3M3C/GMLUbWxLpqUiLrMff3MaEMWLTCxpOXaPlyp1igKuPtv3D2Es6NuCmUVapitar7KiqzPxzZrWn73DZSNNmHfCmVZUCQnrUBm4tgCzLQe/a+c9Cp6D/iHCrcQWSsbqv64rLN0XWODM2taaWUIRnNZFjkpXB+xXVcq3qks2HNBOJ9DY9A5pM1slmgv2fMWbDTPNgfgqZGqMYtWday5OJ5s9x+u+FEo6zA5Kjlnq4txVs+wts26OCe7bI9ucmgvFfHR6xd6O87TBg+kIaFT23DfjoPG+toCwKP7j3gnkOmO8RKTwTwmBHYdKLP7bbTwaWEbGyprrZ50aGPI1SPC1O+aNmKK6yO24IqtsSlu7fZBdhw0GxeEYli1ZIFxu/7wNsdOCMWwLMDOQfLEJKmpoEZ/+AoWdTD5kISFDgZ1UOrPxFEtCJiLhY8Jwab/mxQMhwIRS63Avbe5s1vxUM8yZ5a5ijQzyqwCD8aEYO3qAnamWx1qJvf8ubPZ4yrVMcwpFlha+GZRN9j6po02goucc2V7+9LR2FILTN/ZRZE+FTQYKjJRDET0ASI6TETPE9E6w/7ZRLQ93v9DIlqk7PtMvP0wEa3Ooj069j13wrh9XlvRO3zTVwh3tpcwcP8NzuP0mYQ6Ex45Nwobo4A811ew6BFVc2eZO7o8jitQYoOpE7tMJQKovX9T0o7+jkJm2DbzjE9Icig/VRKEnps0sSmpAnKdNzxSxaZbl3l9Ow5cERtun893Md2bCzPnJgBq1rJek6FYqH/eUrGArXeucF7Lpz37njsxLYr3pPYxEFEBwBcBvB/AMQDPEtFurUTnJwCcEkK8g4g+DOAPAawhoncB+DCApQAuBfAXRPROIUS69bUG1jQyUsXA/Td4hW/6DC51xeET9SL36w4zn6iKkMgadcW0vu8QTp9rfL2SNwgwh5/61JIG6u29LkFeIKo5hH1KcIYIONuM3yck2UcJ6UXhfeFbM1mFjJhzhdKakFR5ufqXZAjl7PdpSlsCZvqOTbcuq6NA596F6d6cz8MVFq2fZ3Oqh4RYm9qT9F1mjSxWDNcCeF4I8aIQ4hyAbwK4RTvmFgBfjX/vBPCrFBV/vgXAN4UQZ4UQLwF4Pr5epnCVPPRZunHXiGuaNKw4fGY2BASZhPT2+M5q5YpJEnOZMFfJ7AYayeGGA0IAZSd2dWZ1Vu9TgpM7Rp+vumK9fQgDXW3X+al8oZskVZMatyKQeQsP9SwLVgrFAuH02VGr34aDrX/pkyATXApp4+5Gv4icWLiczLJvhszSTUhCcqePDXmsei2gkazQB1mUos0CWSiGTgBqrcZj8TbjMUKIUQCvAXiT57kAACK6h4j6iaj/xAmzaYiDTRDYOqB+DX0JCUQff6uhbKbeSUyQ9t/Q2YC0Rcq2u0wMap1bTrC85uDvSeLAd52jvhsfYc0d81GPjG7VLLFlz2Hcdk0ne46LoVM6CH2jfVRwtQJsNUDGhai1LSTrleLlyHClkSLeBFPpUV3QyTa4JkEu5dw3UGY5o44PV7zLXqZhBZbgBH0SqGZIPXrMRzlk8TxZIItwVdMI0ns4d4zPudFGIR4B8AgQ5TGENNBGPOe7dOvp6mwoDwlMELGZOpO6VFxkMZVwS3aTmUEW3FGT8CSJF8fX5Kpzqx7DQYb8uV682olt4Y+m5Tpgz5HwOcYEk8li2/4j6GgrYqsWZ27zi6SJK1fNRybYfCKXagrUl1NHCKCqXVeGHZtYAEJKj+pQGVp92IJtNvN5pSL++cyolbEUqF9tu6rN6eeE9h/TOdx233BzF9fUZBfnUZGFYjgGQK1s8zYAx5ljjhFRK4B5AE56npsJOPtiSN1VblbtM+PvtNyHoyq47ZpOY8U1ro7sGUYAu+rc+tjKe7o6rXQDpthrtZOXhyvOwesT954kNp4z1el1n23HtlAk/JLQiIQQpOnwUaCnz44GMbYOV6oNFfFM1Ntc7owK07Od4TLJFNjGzOlzZqWgstyuWrKgYXIEwMpXZPNp2BSJ6Zz+V07W3V+9ls9qx9WWqcpfkMhCMTwL4CoiugJAGZEz+SPaMbsBfAzAXwG4HcBeIYQgot0AvkFEf4zI+XwVgL/OoE3eCOHkCVEiIfcJnSX4VqgyrS50hNjKOeWmZk3rmA6d3CaEVLOhbUY/LpC4vGjSfAVfBZpG8QB26m3XpCdpMibHettCYJlmVZZbzglvUvZJ2uo657EfHm1ov7yWS05w2e4+iniykFoxCCFGieh3AOwBUADwZSHEEBE9CKBfCLEbwJ8B+DoRPY9opfDh+NwhItoB4McARgH8dtYRSS5wQhlAHR1z7+rFiYndbPdRZ9f6YNfvL/f7RiO1zWo1hr9JhNI6cHTep8/VF3afbnC9LynoQwRryNkmeJkAACAASURBVCC2CVfOtxBCDaKvzLKEa9Lj6wsw1ZPWodc0sMFm0uS+jW9bffbZ8h+2rlnByomk1fImGxcEV1IoQriCVi1ZYDT3NOv+HB+MCa5QyJcTELFxJGUhZID9r5yszbgKRLjrussSOXJ94XpfNsevDb5kdjZeKG6ykdSXYSPCKxDhjaVW4/fraCviTHU8uB3csxWI8IU7lzs5h3Tep6yUm+nbJOHnsrXbptBDOcJ82pIFcq6kFLAtOdWoBZOdcO32Qdy7fTAVyVooHwy3LL+0vYTjr1WMLJBJk6W4sFXTDFF31peHK/jdHYN19NdjQmDb/iN46cTrePlnlaY43OR1TMEDrllqp8WG7xuplaUZ0QXb6mhcCGy4aamVelt9R3MYygvXswET2c+AnXNoXIgGAW4iwTMpO9vEx/Rtkqz4bf4/3URLmMgZ4kyothXBVEQfcbggKDFC4bvk5EIPgWSp7NJ85EMwp4bYfeHO5Wx6PTcRTloFyifOWipMkzDlmMqffuFkXS7J2u2DWJQg9p5DT1cnBjfcgIfXrPDOfpWztw8tv8S4f9GbSmzWrn5vLlY+awZSjv4FmEhIs8Xtq1UFpb3e9v7l9VzZz77x+ab2mfirZJiyWoxK3WcSsElzFkznPNSzDLdd01kXVikA7DpQtr4vG2dT1kyqaZCvGAzwdTK77IG+IWqAeTbrur8EN+u0hQT6xsPr7dWjQYDGgZgFOVxoOU0bfISvbSbJUao8/cJEpTdXO00zyCRRMjb0DZSx64BZKKnPw81mkzhn5fVcYd8hs3VT+7ovn2/8hg/1LAtSrkmCIbhz9j13wljo6V5L5Bq3wnpjyS6Km1WfhUOuGAzw7cQ+TmBXiFrv4wcBSySG7f4qTJ3XRjXsSj4yUTaUhyvYdaDMhtFKZO1ASxOt4SN8XeYc3+cJbWcSQax+Gz38l1PIvrPRJM5ZCddkKq3JzCbQpyryzfZeOCXPmTVt0VRZTyB8kCsGA3w7sU+y0bxSsRZdZPIF+FSBS+qvsJVX9I3bNs2I9j13wuogsylMU4lNHyRVNr7CVwoXE29We1vRuypYaO2PkO1cZI8rqkrNnLahWeHYEtMhdDlLuCaGnJLv6YqS4HQLAXd80pVcGuSKgYFvshUA4+waiBhJT5+bcFwmseuniVLgBqt0NJrgYwZyCT9OYcqMWD0q6fq3d+BvjrxmvW9Srhhu4Jq28zMz/+/GtdNkCggVxCZuIQk1+9f3enq75sXMoerqNatw7PMRPhPDUOVv2p5mJZcUuWJQkMSOpyoQ/XxfRlIOaaMUkgxWX7NBmvtK27AKW4nLpCymAB9WaHKWcjOzEJw+O1pzPqoC9/S50ZrAlQqHqy9uelYbt5CEpEbhImVM11QF23ClimILoaOtaCxz6cL5tCLwkQU++SM2p7vvpCDNSi4pcsUQIws7nj4wOCppFcWYnlX3MfjwzSRpkwuu5XEzQurkIBwTomHVlZTFVIJbpZm2ZzEDG65U0bvzICAmzIQmgS5NciqFtE0Q+/Dxd8bBAWpWsIyU6b58vpeJojou0Dar1VlTxObrmOnKIUQWqCbIkFDYEGd8msTapMgVQwxTacS0djxOyOpJPcD0WYKbOqEU1qaBz0VZ+Q4sk0/Ddr8Q9A2U2Vj3dsX34zLtmJK/5HVNKxJXIIFEebiSmgZFQmULNvmFssoEBty+DqB5TtHJQBKbfujqPOT4qTDT5YoBUUfnTD5pZpEhWa3TZSCFdMK+gXIdRYaMsrpoTqv3wOJyQbLIALXRjKu+H5dpR/pkTO/EZ1XIQZLCqW0AzH3BtpLrVBSyTw6M65rzDLkBKmx+KN/JVN9AGQ88MVQbd+2lIjbenH6FnAWSKszQ1bkt4KEZOS4hyBUD7Mv0NHa8rDT9ZHcQ3w6+cfdQQ1RVdZyvPyyZMX1CQbMw69iuYSoA7zLthApsG0wrGZtQdU0y5CyeA5cJnIT7yvVtfFYcvTsP1n2D4Uo1Ct3G1E+SfEjwshqPSdhbJ+P95IoB9o6c1o6X1iFn6zhZczSFIoTqWaI8XMG92wexcfcQNt68tKmOtVChfXy4Evy9dJs+EFVNGxsXdWG5LRTNxKVTN2RmD7gnGbZZvC2RTJ21S1TH+BojgF/JTxu27DlsNLdVxwXu25FeOaQV3DabftY5BUnYW3PFMEngOnp7iY/355D17J7rOKowmqzs4CwxXKkGR+aEghvgroJGLthqNhOAaxd14K9fOoVxZWAXiOqCCTjqE1sbbErLNrmxJbf5cl+psIVp+nw727V1jqVQZBVEApiVMFcLJanATsLeOhnIuZLAl9PbeDMf72+CXCKrnD+9Ow+m4vrxrb2g8tLobXLx+ZjqXq/dPoj1fbxpAohmwWmgmm9C+GtscJXwvO0a83XVIjC272Wq2axCANj/4imjiU39PlyfS6oQOYXSGfMjhZ7nUlA+JT9D7ynB9WUf2BzHIejpMpf7zNr0yflzOJLLZoaoqshXDMjOF/DAE0MNS+TqmMADTwwlvn6IOcTFgc/NnjgH8KP7jxjDHCV8MphdlNYh5hvXqsb0vLsOlGt06Rt3D2Hb/iPGa6urr96dvDnDJwGQe16TjyWrVVrSkMak56UxkfauXtzgY9CRVNBy52VVpyJL02ffQBmnDRXnii2ENdde1rSVtA9yxRAji+QczukqeVCSLG9t4aM69M7pG3ZnW5XYlsguoc/RE9vazMFHyXHPu3H3EM6OjjsFuoRU5qbnTruUb1YJx6SKhjuv/5WTtYTDrGtmyHua/BsSSWfGnOAmIJNiUpwileVzQ94952spFqhWYGuqckRSKQYimg9gO4BFAF4GcKcQ4pR2zAoA/wXAGwGMAfi8EGJ7vO8rAH4FwGvx4R8XQvDMbzMYSe2SpoHrw3AK+C97fZyhptm6TSmoHbn78vlGIRAyA/JRctzzJnGS2wRW2tln1k5E/dtsXbPCK1yUUyLr+w7VraxkzQwAmSqHJIlhLvSuXoy12weNJr4s3rnPePSd+HH9aKQ6jpF4n8xmn+zgkrQrhnUAfiCE2ExE6+K/f187ZgTArwshfkJElwI4QER7hBDD8f5eIcTOlO2YFKzvO2StPNZeKgYJId/Zp2lmydEQq/Bd9nKDSR7LFSQqFVtQMRR+LxDheJy8pbY/jYPbR8llIbRdCFnB2ZCVEzHLAvfynMd+eNR43mM/PJp5pb2sTWo9XZ2410EBnhb6eEzqkPatHDiZ0UgSaRXDLQDeE//+KoCnoCkGIcTfKb+PE9E/AFgAYBjTGLoQW/SmUh3/vmkWtfHmpQ1x4cUWwkVzzOUU0+ZIJDFDmWZjPV2d6H/lZEPYpZpNa/JBVKrjKLZQg6OVy4T1aTOnPHyUnA+pWQh0f4B8DqBxxmgKLwT4wZ+VEzFJlq7rnBAakSyQpUmtb6Dc9HeuI6lDOuR9TlY0kkTaqKS3CCFeBYD4/zfbDiaiawHMAvCCsvnzRPQjItpKRLMt595DRP1E1H/ihLlwShKYonZMUTqqUlChzq56ujqx5Y7ldVEwW+5Yjg03LY04kRQUW6hBQPtEEIVAjR5xRfw81LMMWw3VzXq6+LKMAHDRnNbaOa4qXi6Y3rusIOYTxSOfNytwVfjUiJXe1Yux60CZLW5/13WXZRp9pCOJUHKdw0XEJC0HO1lY33cIa7cPskSMPlFnSZAksgvwL5blc62s4VwxENFfAHirYddnQ25ERJcA+DqAjwkhpP3hMwD+HpGyeATRauNB0/lCiEfiY9Dd3Z3J1MW0pL53+2BQzQC9E5pmP30DZUAfUzSxjyuKkySe2zTj9qWW4GZuNhPNqZFqjXCNo4coD1dwxbonnWYC20xWPoOPycG1RO8MMDklmX3LNkjF6mP2S4okUTKuc+667jJj9NZd112WoqXNRd9AuWHFqyLJuPI1fSaN7DImRxpINaeiFrRTMQgh3sftI6KfEtElQohXY8H/D8xxbwTwJID1Qoj9yrVfjX+eJaL/AeD3glqfEtygDikk4zOLMkUfyMgXlZwthCLBhGZVeupdvZi126rPb1Mg6gqAa49rJusyOcjndymFp9e9F+/6d9/FiME/Yrt/yD61OE6WphIdSYQS5yeR9NzSNGryp00lf48NNl4sHT7jKpRhVbbB973IMqx6cuSaay9r6kTCF2l9DLsBfAzA5vj/P9cPIKJZAP4ngK8JIR7X9kmlQgB6APyflO0JQhZ2O59ZFHcfn1oNIW1sVqUnm0NPFcI+Nn5be9LGiPsWGeobKHsrBf3+umCcwzjgXUR0WSGJUDL5lHR67od6ltUpgkf3H8GTP3oVr58ZrSNNbDZ/j68iCh3LruNDx1Ko8uf8dvueO4GHepIneGaFtIphM4AdRPQJAEcA3AEARNQN4FNCiE8CuBPALwN4ExF9PD5PhqU+SkQLECnLQQCfStmeIIREsZSKBVy9cB72v3gqOLY7TbSMTSjplN3cjCkLBciZX1Q7qS6kQtvjmv26hIRvkaGQLFj9/vosksNkmuOTrEi4Qvaq4NOf1zSRaWbETMisPXSMuSYbIb6bJKuoqajKFoJUikEI8TMAv2rY3g/gk/HvbQC2Meen41VOCdcMV6+bkHVW6uzWFmt4q0so9T5+0FjkR0cWjquQCCf5nkL5gGyzXx8h4VtkaC2z+gEimo83zinitUpjBTOfFYkEx0E0XeAjmHyft1nCzDVrd5UlJQC/eOX8hrKxKiEeJ9B9V69JzbdTUZUtBBd05rP8cBt3DzUIaFPdhL6Bct2xHW1F3PjuS5wsp5zAA2C09ZqK1JgGiR4makJax5U++OYUW7zLPq5assDoxORKTQL87JcTEvcqHPa+RYaks18HAfjjO/nksBAB2N7WWAhoqs0DKnwEk+/zTkUY6Pq+Q3WmMK4sKQAMHZ8owiUrIwL2YlLcpHFEoyRPar5N6rCeLFzQigHwT77Si9IA0dJaFXw+JQBNaIYNlYDMueKHK1WUigWvzFogMleEbLfB9vzyvW+6dZlXqUxOgbhKiNroFnTa7dfPTNT7no6VzXwEk495ppnCjGU9bisaI5D0sqSmrOozsT/IJdC5SaOktwGib8m9H9d7yzqxL2uQaFLSSjPR3d0t+vv7J/WenFnEhCyqjzX7/j52Ue6evs93xbonjX4GAvDS5hud5/u0JUm7gGR2YY6+4bZrOutWjafPjhpNhM3oF2kQSkoIREpv7qzWOlMb0BwBx71vgmCDB9S+Zeu/nA9M75uuMXDlZ77DRsHdff3CaRfJRUQHhBDdruMu+BWDL0Jm7FnYXPXOZOJHShrz7GsX9XWQpclW9oVPxFPIe0/isPWd5XH5HL7vbbLgegf687a3FSEEGpRCM0KkTfeX44BjyAX8TGHyWq6+2TdQdnKI2UKjt+0/gpdOvF7n45iOq0cTcsXgiZCoh7Q2V44+Wp+ZJp2t+dpFfQcPJxhC7ag2QakKCe47ZGnrNilm9d3bzGlp39t0EhiqqdXU3tmtLU0JkQbM/cEWUUaAlylMXssVAedTKtWVLGliTJgK7qNQ5IrBE66ZikQWNldOcO977oTRFBHawXxXAj4OuI27h1jBEJKt7CMoOSEFZGvrNrXF15cE+CnEZuWcNAtce7kVXNpVM9cfbCtG3Udk+w6u1Z8tIkul1zCt5H0wXcJSOeSKwQMyS1HH3FkF/MurG2fxaQd22hhnl4nC18TjcsD1v3KSDbdVi9L42NVDBGWzHXc+YZquZCdX+6Z7HLuO0Ha58m+Srmo5upP2UrEhp8j1HWymNNvzqvQaciXvM2lUMV3CUjnkisEDnKBob5uF7svnO6NsQgdGGtu8z8w7xMQjwzt1BVCpjrH0zBIh5hEfQZmVTT6LRDnTcSHtyzqOvdn+itBkUFv+jU+f4L6BrE+g990PLb/EGB7s60vS3988Twp9uZK/+/qFRuWw0pBHoa44plMkkopcMXiA66T68tbU6ZMMjDQxzraZt9wfmpNgG6QumGbWJiHmEpRpbPLq/drbik5aB18hmMZnkGUcu++90yiPEErzOcUWrI3zS06fHfVOUvMJXOhsr6c5LxDh6oXzEhXKkTC9v2KBjJTyJhwfrnjxS2VFlDkZSEu7fUGAm8UViKxCGEhWnLyny58uW4dLiUlK6+FKFWeq49i6ZkVdsXMTbM/vA33Wb6LWXrVkgZWeOsl7lPfr3Xmwdr9TI9WGwa5fx0TxrUOfFd+346B3+6SgkKYRIOwb6/B5NzZKcx/0dHXitms6nd+cEL1jeQ9u1i05q0Jp1he9qYRH9x+pTUrGhMAzL5xM1DckjMmjYwLFAtWNwY42M/+VHB8P9SzDC5s+iJc334gXNn2wpix6uiKa9s72EktDMt2QKwYPcJ2UmzGrgjCpLVl2ppc23+gU3CrSKDEO3PObag242mRzrNuUYdL3+MATQ07KEP06JsV89/ULjW1zMbqazE1SGALZlG5MSm8hM8d9ahRIP5ttlRhSyU5yVtlWE6oikiuDZ144aSzbaUJSk6DESHUcvasX18bghpuWpqqtMZP8SrkpyQOcE4sLnVSZNSebE4UzUaSJHrE58bovn88yr8p7qwPHNjhs9uCk79GHwVZeJysnqa19zYhGSktvIeuQPPDEEDbctNSbkgSo5xMLIbEbOTfKfhu5mlAVkVwZhKTj+o4xW9vV75I26GG68yOpyBWDJzihpdNkAMBpJZxzsjlRQpWYb6fknl86p7mBdds19eclHRzNfI+lYgGrlizI1EnKta8Zs8as6C10ugef9o0L4cw07ogT4/TINm6Fwa0mQpRCSN/oXc3XG9Gf2zZ5cbEfm4j+phM/korclJQCPV2duGhOo26tjomaiSaNvyBNu3QzFGcOyqJT2mzyuw6U68wUSdvBvUcgEkiL1j2JKz/zHSzSyqK2M3URKP4nr7PvuROJTG02053pO3PHp5k1+vQxH78JwD+zT7u5b7vhpqWYO7txnAg0FjaUfSGJoiwQJRpjPV2dTv+BCyZ/Se/Og+h9/GCdXw8iUpSTJQuSIudKSgg10sAEXz6gyaRF8L1XUh6h+3YcNNqgdY6gLMNOuUgZyeljcn4WWwhb7lhed8+kvE6mNkhCPlOtDi45bzIEhKvPqtBJGH3bzX1b7v0CE9xF6vHc6sPmx0jCwSWhs7Vyz8dhqrnUfJFzJTURNoEkkTTn4N7tg7VlLRHw0evMAiYJfGK604Q+jjscsPo5Kq1E1vb96pioUwocnblEUhNXT5e7Gpp+vGz7ZHMk2TLHdXClWE2mEj1/wCT02tuKRp9CR1vReLyNQp1DmhwQU5lN3QyqHq+/h8nmUms2UikGIpoPYDuARQBeBnCnEOKU4bgxAJJ45IgQ4uZ4+xUAvglgPoC/AfCvhBDn0rRpMuCTGWurOeB7HSFQS5rJSjlIcILYxznKKQ9u8EvHLqdwgGREbCEDTCoFXQhxMeaAv6nNpxqaCt+kqxCEKFYuo90EnYpanxz4fjfOMMFtVxWR6dvoSGMW5fwZauKqKxfBNyEOmJ7OZh1pfQzrAPxACHEVgB/Ef5tQEUKsiP/drGz/QwBb4/NPAfhEyvZMCnwE0rcPvprJdQA4M4xDYYsfTxP6KAQabMwEYNGbStY4/6Q5CqEDzBU6qtq8s8gdcX3fvoEyVm7eiys0v0gokuQo9HR1YnDDDXh4zYqab4ID9xwh3+01Rmhy22Ubufh/ILlPQYfr+5n6iYpKdQxEjX1fJsmpmK7OZh1pFcMtAL4a//4qgB7fE4mIALwXwM4k508lfASSz+zBV7D5ZBiHwDagfZyM3EAarlRx9cJ5dUJGIGKYtMX5JxWsvg5VCZ/QUXVlkTZ3xPZ9kwhzTpEkVaw6uOQ17jlsyZS6okvjdLdl3ofm+YS0QW73sRCcGqlidmtLnWN5y+3LseWO5ZMaeJIV0iqGtwghXgWA+P83M8fNIaJ+ItpPRFL4vwnAsBBiNP77GAD2jRHRPfE1+k+cCK8AliVCBVLa67iyTUNnnjZB7BM1ZBvMSWLNkwoNmQRlejt6x25m6GiSSKtQYZ52ladeR/aVrge/Vxc1Y1Le3HP0DZTRYumXuqJLExXH9QOK2+ELbpy42ubbH4YrVZwaqaK9rVjH1ZQkUXWq4fQxENFfAHirYddnA+6zUAhxnIjeDmAvER0C8E+G41iZIoR4BMAjQBSVFHDvzKHbP00giiJdbPZek+PShLuuu4zd57LzhvIS+ThHbbw5SWLNTe8gjX0fAOa1FdE2qxXl4Uot61sNIQayTTiaU5yoS9BeKuJDyy/Blj2HsXb7YCbsqq5VXpLC9a7kP+45AFizvfX2qb4JXz+IXmvcBAE0+HE4X4uPP4RrW2jyni0fZKYgVbgqER0G8B4hxKtEdAmAp4QQ1tFMRF8B8G0AuwCcAPBWIcQoEf0CgI1CiNWu+06HcFUJycVjo10whUdK2MLc1Kik9X2HjARdttKDvasXN7StWCCs+fnLGjjkQ0Lz+gbKeOCJIe+sYhMKRPjCncsBwBh9woV76rCFmW5ds8IaYplF6Kix/CVTWU+9bmjZ1DTPKRESUglEEUNnquMN153d2uLtaE0SQuoTNWW6Phc6LACWrtsnlBpo7KM+mG6lXAH/cNW0pqTdAD4W//4YgD83NKSDiGbHvy8GsBLAj0WkkfYBuN12/nRHT1cnttw+YUc0ra6r4wIbdw8Zz+dmiATgpU031pTCNo04bNv+I1jfd8g68zTxBFXHBJ780avWhCibaUoOPptScFHrlYoFfOHO5WwUlB4RYoPNDOUy12SRfGgkYBsXDe/dh6jPtkqyPafvc4SayE6NVI3vz1cp2Nptg49N33R9W7a0D5cVZ64DgE23LmOTJTnMhLBUDmkVw2YA7yeinwB4f/w3iKibiL4UH/NzAPqJ6CAiRbBZCPHjeN/vA/hdInoekc/hz1K2Z0qg2hG5BRg3mHzs61xU0qP7j1jP54T3qZFqrc1b16wAAKyNydTW9x2yOkVdg7ZULOCjGuEcR0AH2E0qPr4Tm4D1MdektQGHzMBdRH02peRSJNz39HEAZwV9QqDWHeB8AaZv7CtQCfVh4UkEsQ/BozRX6VFcHW3Fhqgj7tozDanyGIQQPwPwq4bt/QA+Gf9+BoDRJiCEeBHAtWnaMJNg8jn48Nxwsx0BGEsLygHjqiplsrua/B3q4LANPi55zAbOftveVvSKkbfZh334odJkYYeGl+qCIiSfwcdG77Kjm/pasUBobSFUquN197OZjDgTk6xJ7lt3IDQfpq3Ygkp1nE0kDPUFhBA8SphyOUz5IDMlLJVDnvmcMTqYTg2Ys0l9BjxnHwUik8tt13QaM29L8UDSIZfEIURlcnDYCqgksaf2rl7cQERYbCEIAW8WUk7AupRu2uI/tmLxOrIQFNxz2qgufB3AvrZ1yX3EXQcw+zJM346boc9ubTFWaZvV2oIRrT+r1/UpJqSywerjLEkwgppNPhXZ7M1Crhgyxoabljqd0fogcc0c77ruMnb2f3y4wmbedrQVMTomGoTuxpuX1s71hRwcTWE5NdggbAVefOFSumkosF0mNXXG3NFWZOmsJfQqc0JEyV8+0TsuYWib8bq2A/aaya772bZzx71WqWLrmhUN913rYEB1ZUu7AgvS9O1mZLNPJXLFkDF0YZS2iAgQ0WH8z78p4/S5xsF/aUxAZsLwiHmAucLwbNQQIZw5PgNly57DRgc5t0oKtdvaBmyaPAbXMWrLzxhWbSpsYaSuVYyPozYtc2uIwJP5DaZvp4edusKm9fv6mAbVGbxq4vFRzqEhteczcsXQBKidmgsRFPE+k53Y1DE//y+XGUPxVi1ZULPr6uAGmAS39C4VWzCrtcDOWE121qQmGVtWq8mckKXdNk0eQ4g927UKcQl32/kuBTWZtm5XNTu1TgkQPkP3Pd60inIpZ4nzbeafFHk9hibDlt2sR/zYsltNWb7Sl+Cql8xBRsbMnVV/7kh1HGdH/epBA+koGTghLKN0uPoLafmFgHTZuNy5HGwCPM0KxabEJpuCwaXg1DolQHhklu/xWVGEXMjIVwxNhm731KHOBrkOfd+OgwB4Fk9ZLzlpVqnJRMXNUkMoh30Enm0WmOXKxATfSB/Tfu7cJJXyfFYf3Pnc+5sKTh6fFVRIRTQTbMe76k3M5LyCyUauGCYBsjNz2asyZp/r0GNCWB2Mx4ft9ZIlTBnLtmQljo00hG7bhRC7rstZnCQyxCVobIqIOzfUgekTTcPRuE8nu7gtek6iWbH9WdVIyREhVwyTCFfMvg2V6lhihywXa+3TXhWcYD4zOoZiC9VFP4XYtn1njbaViV6BK+1qAkgWtZREULtWlYA9E3wq7eKqMnaR6zTT3+GTeOm69/kWcpoGuWKYRHDLflPMvglJHLIhvDMqKG6vCk4wCwGgJcqP8AmxTAqbYnUl5iVBUhNZiKDWhVFoW6YSIX0rSfJjCNImXmZtppzpyJ3PkwjOeWYrVqKCc8jaOm4I74yEJLHTr2sTXNUxgbmzW5tKL8w5fIVwJ+YlQZoaAj4wBRuEtmUq4du3OtqKWLVkAbbsOZxJ0IAJ3PtpLxWbHkBxPiJfMUwyQuKzVXAOWRd8BGOxhXDRnFYMj9hn+y5beLNntZyZhkt8AtIJ1DQJT7qDnwgN79dXsCYxwWRtFklT5/jUSLUuQbM8XMHa7YPof+VkJiVr+wbKOH121LhPD5HlkFVtjvMFuWKYBuA4bObOak1kmlEHMZdsJNFeKmLjzfbEHwl5zH07DmaSfJYEIYrVZA4LvZe8foiA1c0Sqm9HNVH4CJ1QE8z6vkP4xg+PQHH3oDxcwb3bB7Fx95D3t1afRfdPueoc+zihBSISSMlzlBQuc5YMkXXdI8vaHOcDUtVjmCpMp3oMWSGrGZ6v3deUCerbhizqGGQJjofft6ZD1vCpe9AZCxzXcS8H1DKQ9+HA5wAAEpBJREFU9Ow2+K4OAXdfmjurYAx1DkHamgU+79qnJsR069PNgm89hnzFME2QhHqAYxQ1DWQXdw/nfOt/5ST2PXeC5RpKqsiyNHVMp5BNwG8lUB6u4O7rFzYw46pwlXTVwdGzq6iOi1pocVq6DU4p+KwYJMpxqHaSCQrg966zDpu+EJArhhkIWwQFGzmk/D41Um2w8XLON1sIaNJB04wIkMkO2bQJL1+6jF0Hyrjtmk7sOnDMyIJrK+lqgq8wVlGpjuHe7YPYsuewd/lRn3bo0XM26KVoQ/qG6103I2z6QkAelTQD4ar/6wNp45XRIT4KRb1PCPRiLA88MTSjI0Bs1CWAnQZFhcxa/9vP/Rruvn5hbYVQIMLdCcxgoSsMFfozAPaZdqlYYCuadbaXGuhbbFC/va1vm4r62N51gQi3XZML+yRIpRiIaD4RfZ+IfhL/32E4ZhURDSr/zhBRT7zvK0T0krJvRZr2XCiwRVD4CiVgopi6ZMRMe38TTEKUq1cxHSJAfKrGhZYMtZWElM/8UM8yvLDpg3h58414YdMHE/lGQlcYOnzKjwKRKXLTrcuw8ealLNeUib7FBvkeuD4gFRdXdlP6bNRePCYEHt1/BIuaFCJ7PiPtimEdgB8IIa4C8IP47zoIIfYJIVYIIVYAeC+AEQDfUw7plfuFEHzcYY4aQuv/drTxgkkOsBAzRLvlejqS1u+dCrhWAhI24SXR0zVRMnRwww01waUjy2d+qGdZw8pj5ZXz2Xub4Co/+vCaFRi4/wYAE99W3k/NqwlV8vI9cO+jQGTNQn963XvR2V5qUEa6GTRXDn5I62O4BcB74t9fBfAUojrOHG4H8F0hxEjK+17QcMXXm8jn1m4fZGdwoQlwr5/xiw0H/FcBaegSsnJk+1Jg2Oza6/sOGWf7TSlwZMBDPcuM9/eJ3gHc5Uf7BspY8cD36sJUpU9Bfe8cf9bs1hacHW30p0guKO49+eTOuJ4vbSb8hYS0K4a3CCFeBYD4/zc7jv8wgMe0bZ8noh8R0VYims2dSET3EFE/EfWfOMHzxlwISEJX/NHrF3rbfF2ojgvct+OgVxarz4w4DT207yxfHmszE/mycvauXsy+S9Vvo0J+M3X1Nrt18lx8PkrBl17FlLtQqY5h4+6h2vsdZsyF5wxKAZjgguL6ts+Ky8fHMh3MlTMBzhUDEf0FgLcadn025EZEdAmAZQD2KJs/A+DvAcwC8Aii1caDpvOFEI/Ex6C7u3vmJV9kjNAICjmLNHEKJYE0PbmiRnpXL8a9lszktHHsvrN8V7RL30C5oXKdhCp85OqEe4fSbyPbple5UwvGDFeqk8LHY3s2iQJRanqV4UrVSdToQ12SlLXWxxw61ebKmQLnlEUI8b7/v71zj7GjrAL477Rd+pBIt1ClrBTaBHmptNAgaiKChPIIdJECBdGiEFJ8/AHaWIJJ0cRYJAY1EhGRh4/waAlQAoQALfIPoAhdaIFCAYE+pGgpRillaY9/zDebubPzzXxzZ+7du7vnl2z23plvvnvm3Lnf43znO0dVP5Xxdw/wlmvw44Z/a05VZwN3qerAk6OqWzRiJ3ATcHS12zHyKLsgGEqeR1Hv7J7CNY4qC4OhoQyKFox9jX1y93RydpKHb6F0qLyx8joyiBrYn599RNNhI8rgG9UXNdghs+SitZR2ZrMb7lRdY1gJLASWuf/35JQ9l2iGMICITFPVLSIiQC+wtqI8Rg7N/LC7J3Xxfv/uwnWIvLqXnnZ47g7a5Ogdym0yCg1lUNSB5LnrJjc/hazH+BZKhyrGVNXIozFl0plmMbFrrNu3sWnQyP+4Q6YW5gwvmiVnrU/EM6VWR3cdaVTtGJYBd4jIhcAbwFkAIjIHWKSqF7n3BwL7A39JXf9nEZlK9P2tARZVlMfIoZkf9qmfmcacA6YUxl7KG/Gld5Vm1bGjfxc/unddQycUsvEtdFG3qAPxnU+OQkMa8DIbu2LGiDBjyX1tD1de1oznC6IYzwizFpvHirBbteHeks/TfpMnctwhUxs6i2Y3PNru5fqwWEmjCF9MIcUfxiDdeKQT4kD5mDK+THY+ihqwEK+kolg4IbFyfJ496cYvJFquj1bE56kzlpRP11ViDfn0WnX9yRiMxUoyBpE3opqx5L7Ma5Kj5Luf2cSdf9/U0KgLlN5dWnbmUkdinKLRZMhos0x+5WaSI0E9LpVZjfeZR/U0dOhKFJKjbHTTPF2PHzdm4J6z4nH55PQ9C1XMVkY1rGMYZfh+2CG2+iwbu5KfdjILXwM7ftyYTK+WujxJfPeebkivOWdWZrlQU0Xv7B6een0btz75ZlPxi6qsOfi8r8aPG1N7hjvfZ0Kj91XoNWmqhPgwqmEdgwGE2erLJDPJM+/4GljId0lMjjBj01fVRcWyQdtCZifxzKqoU/CZ77LWHEI38fm8r1q58N1MbuyQhfxmOlWjHqxjMICw0XCoB1BIY5vXwIbYsEP3URTRTKPWTJ1pBDhmZjdPv/HuoLLpe3vq9W3Bi7PNhqIIwdc5NZP9LDRJkTE0WMdgDNCMO2CWB1CVxtYnQ15j69vQFjLCzot7lOcplFd/SKOnwNNvvMuZR/Ww+sW3vfb0Hf27Mk1SPn36Om8RSA/Ay/j153X2zWQ/qzNctlE/FnbbCCY0FEcr8ucWXZteJA8Nk5HXePmuzar/0tvXDETxnNAV9rOKw24XRcT1mVSydOKrK11FHCE1dFaU19lnfWZRw551TbyiUCVEilEPNmMwShFiY29F/tyiEWbRIrlvhO3zzc+71rcID+U9aTZv31EqAm2SLH2G7BkBmLTHuFINb15n38z+Adtz0NlYx2DUTpHJKZ1gPsS1Ma8Br7JInm6gQmL51LlTea+JXU25ZeaNyJOdd4gbcghFnX3Z2F3NXmO0BzMlGbWTZ3K6+5lNLF7e1+CW+s57/Sxe0ZcbLylZJ5CZAyAmL1+Fr+44d0JIFM9mZz5p58uuMcL/PviwdB1lTC1ldeGjGXORMXyxGYPREvIWkft3Dx6X9+/SzNzDyUXeyZO6UI0ax333muA1PVTJfRBybYj5KYuvHjOd1S++PWA6ee+DD73Z7LKY2DWGKR8ZP2B+gmJPrLryQJjpZ3RhHYPRVopMGOmAeslGLdmI5rlsVmnEQq5Nltm0fUdhSGuI0numw0/4zDwQTeXTW8R29O8eMOeEuunW2aCb6Wf0YLGSjLYSmkksNukUle2EeDpFoR0EMndTpzOhxfSUmE10wv0bwweLlWR0JIvnHszi5X2Z5qQkoYujm7fvCA6iFzJqzioHxTOION5U1l0lQ3cnPydrfaFrjLB47sFcmpPcKH3/IdSV/tQYHdjis9FWemf3cPVZRzB5oj95D0SLoyELpHtN7CrcsxC6ryGr3OLlfSxe0Vd5T0Q6GdHVD66nf9fgbmTPCZEbaejicEi5Mvs6DAOsYzCGgN7ZPaxZeiL/WHYqvzhnltfbpWjjF0Q7eouyohVlb8sr179bBzXgvqxrefLGnUzcGPtG+nGu5JB7D11EDr1/w4gxU5IxpIQsjn7vjr7MTVrdk7q8SedD9h3EaUXjz60aCjy9KJ2mf7dy5cp1AzOCon0BcV3JhDZJr6ZQc1ArdqIbI5tKHYOInAVcCRwKHK2qmSvCInIS8EtgLHCDqi5zx2cAtwFTgKeBr6nqB1VkMoYfed4u8fEsl8ulpx3ubYTT+w4y4wdBg5dPiHdRVv1Z93Kgx+MoXmwOcSOtywuoFTvRjZFNVVPSWuArwGO+AiIyFrgWOBk4DDhXRA5zp68CrlHVg4B3gAsrymOMQPI2zIVsvPLF5Ul3Akr2JrSusY1H69jYFRp3qg5sc5pRlkozBlV9AUDyE2ocDWxQ1Vdd2duAeSLyAnA8cJ4rdwvR7OM3VWQyRia+0XPZfQdFZqM4cXwZr6Qsuid1ZbqbxvmR8+6pbmxzmlGWdqwx9ABvJt5vBD4L7A1sV9UPE8e9T6qIXAxcDDB9+vTWSGoMS0Ia2HSZsnmGyzaiS087nMUr+hoWrrvGCktPO7xUPXVhm9OMMhSakkTkYRFZm/E3L/AzsqYTWbP2+Hgmqnq9qs5R1TlTp04N/GjDyKbV5pXe2T1cPf+IBlPR1fOPsMbZGBYUzhhU9YSKn7ER2D/x/hPAZuBfwGQRGedmDfFxw2g57TCv2CjdGK60w5T0N+Ag54G0CVgAnKeqKiKrgflEnkkLgXvaII9hANZwG4aPSl5JInKGiGwEPgfcJyIPuuP7icj9AG428B3gQeAF4A5VXeeq+AFwmYhsIFpz+H0VeQzDMIzqWBA9wzCMUUJoED0LiWEYhmE0YB2DYRiG0YB1DIZhGEYDw3KNQUTeBl5v4tJ9iNxkO5FOlc3kKk+nymZyladTZWtWrgNUtXAj2LDsGJpFRJ4KWXgZCjpVNpOrPJ0qm8lVnk6VrdVymSnJMAzDaMA6BsMwDKOB0dYxXD/UAuTQqbKZXOXpVNlMrvJ0qmwtlWtUrTEYhmEYxYy2GYNhGIZRgHUMhmEYRgMjrmMQkbNEZJ2I7BYRrzuXiJwkIutFZIOILEkcnyEiT4rIyyJyu4jsUZNcU0TkIVfvQyLSnVHmOBFZk/h7X0R63bmbReS1xLlZdcgVKpsrtyvx+SsTx4dSZ7NE5HH3nT8rIuckztWqM98zkzg/3t3/BqePAxPnLnfH14vI3CpyNCHXZSLyvNPPIyJyQOJc5nfaRtkuEJG3EzJclDi30H33L4vIwjbLdU1CppdEZHviXMt0JiI3ishWEVnrOS8i8isn97MicmTiXH36UtUR9QccChwMPArM8ZQZC7wCzAT2APqAw9y5O4AF7vV1wCU1yfUzYIl7vQS4qqD8FGAbMMm9vxmY3yKdBckG/NdzfMh0BnwSOMi93g/YAkyuW2d5z0yizLeA69zrBcDt7vVhrvx4YIarZ2wb5Tou8RxdEsuV9522UbYLgF9nXDsFeNX973avu9slV6r8d4Eb26SzLwJHAms9508BHiBKdHYM8GQr9DXiZgyq+oKqri8oNpCHWlU/IMoHMU9EhCgP9QpX7hagtybR5rn6QuudDzygqu/V9Pl5lJVtgKHWmaq+pKovu9ebga1AK1L8ZT4zOfKuAL7s9DMPuE1Vd6rqa8AGV19b5FLV1Ynn6AmipFjtIERnPuYCD6nqNlV9B3gIOGmI5DoXuLWmz85FVR8jGhD6mAf8QSOeIEp2No2a9TXiOoZAsvJQ91AyD3VJPq6qWwDc/48VlF/A4IfxJ276eI2IjK9JrjKyTRCRp0TkidjERQfpTESOJhoBvpI4XJfOfM9MZhmnj3eJ9BNybSvlSnIh0YgzJus7rYtQ2c5039EKEYmzPXaEzpzZbQawKnG4lTorwid7rfpqRwa32hGRh4F9M05doaohWeBqyUNdRq7QOlw904BPEyU3irkc+CdRw3c9UZKjH7dZtumqullEZgKrROQ54D8Z5YZKZ38EFqrqbne4ks7SH5FxLH2fLXmuCgiuW0TOB+YAxyYOD/pOVfWVrOtbJNu9wK2qulNEFhHNuI4PvLaVcsUsAFao6q7EsVbqrIi2PGPDsmPQDs1DnSeXiLwlItNUdYtrxLbmVHU2cJeq9ifq3uJe7hSRm4Dvh8pVl2zOVIOqvioijwKzgTsZYp2JyEeB+4Afuul1XHclnaXwPTNZZTaKyDhgLyKzQMi1rZQLETmBqLM9VlV3xsc932ldjVyhbKr678Tb3wFXJa79UuraR9slV4IFwLeTB1qssyJ8steqr9FqShrIQy2RB80CYKVGqzhxHmqoNw/1SldfSL2DbJquYYxt+r1AptdCq2QTke7YFCMi+wBfAJ4fap257+8uIrvr8tS5OnWW+czkyDsfWOX0sxJYIJHX0gzgIOCvFWQpJZeIzAZ+C5yuqlsTxzO/05rkCpVtWuLt6UTpfyGaLZ/oZOwGTqRxBt1SuZxsBxMt5D6eONZqnRWxEvi68046BnjXDYDq1VerVteH6g84g6j33Am8BTzoju8H3J8odwrwElFPf0Xi+EyiH+0GYDkwvia59gYeAV52/6e443OAGxLlDgQ2AWNS168CniNq3P4E7FmjzgplAz7vPr/P/b+wE3QGnA/0A2sSf7NaobOsZ4bINHW6ez3B3f8Gp4+ZiWuvcNetB06u+Zkvkuth91uI9bOy6Dtto2w/BdY5GVYDhySu/abT5QbgG+2Uy72/EliWuq6lOiMaEG5xz/RGojWhRcAid16Aa53cz5HwvKxTXxYSwzAMw2hgtJqSDMMwDA/WMRiGYRgNWMdgGIZhNGAdg2EYhtGAdQyGYRhGA9YxGIZhGA1Yx2AYhmE08H9BqzgxRbG4FAAAAABJRU5ErkJggg==\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Generated 964 random numbers.\n",
"Generated 35 random numbers.\n",
"Generated 2 random numbers.\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"n_rands = int(1e3)\n",
"x = 2*nprnd.random(n_rands) - 1 # generate random x between -1 and 1\n",
"y = 2*nprnd.random(n_rands) - 1 # generate random y between -1 and 1\n",
"distance = np.sqrt(x**2+y**2) # calculate the distance the points are away from (0,0)\n",
"r = nprnd.random(n_rands) # generating random distance from the center\n",
"x = x/distance*r # These two lines keep the angle defined by (x,y) and move the \n",
"y = y/distance*r # point to the radius defined by the variable r.\n",
"plt.plot(x, y, 'o')\n",
"plt.title('Putative random numbers on a circle: Method 1')\n",
"plt.show()\n",
"\n",
"\n",
"r = nprnd.random(n_rands) # generate random distance from the center between 0 and 1\n",
"phi = 2*np.pi*nprnd.random(n_rands) # generate random angle between 0 and 2*pi\n",
"x = r*np.cos(phi) # calculate x\n",
"y = r*np.sin(phi) # calculate y\n",
"plt.plot(x, y, 'o')\n",
"plt.title('Putative random numbers on a circle: Method 2')\n",
"plt.show()\n",
"\n",
"r2 = nprnd.random(n_rands) # generate random distance to the center, squared\n",
"phi = 2*np.pi*nprnd.random(n_rands) # generate random angle\n",
"r = np.sqrt(r2) # generate r from r^2\n",
"x = r*np.cos(phi) # x is the cosine projection of (r,phi)\n",
"y = r*np.sin(phi) # y is the sine projection of (r,phi)\n",
"plt.plot(x, y, 'o')\n",
"plt.title('Putative random numbers on a circle: Method 3')\n",
"plt.show()\n",
"\n",
"# Because generating numbers using Method 4 is a bit complicated, we first \n",
"# define a function for this, and will then call the function later for the\n",
"# actual generation.\n",
"def rnd_circle_rejection(n_rands):\n",
" N = int(np.ceil(4/np.pi*n_rands)) # need to generate more points because of possible rejections.\n",
" # Note that np.ceil makes its argument a double precision number, which just happens to be\n",
" # an integer. We need to actually make it an integer type, hence int()\n",
" x = 2*nprnd.random(N) - 1 # generate random x\n",
" y = 2*nprnd.random(N) - 1 # generate random y\n",
" ind = (x**2+y**2 < 1) # which points fall in the circle?\n",
" x = x[ind] # choose x of points inside the circle\n",
" y = y[ind] # choose y of points inside the circle\n",
" print('Generated ', np.size(x), ' random numbers.',sep='') # we do not need this, and you should feel \n",
" # free to remove this line.\n",
" # I put it here so that you can see how additional data points get generated if we rejected\n",
" # too many numbers initially\n",
" if (np.size(x)n_rands): # if too many points were generated originally,\n",
" x = x[0:n_rands] # then truncate the arrays to the needed size\n",
" y = y[0:n_rands]\n",
" \n",
" return x, y # return the x and y coordinated\n",
"\n",
"x,y = rnd_circle_rejection(n_rands) # now let's actually generate the numbers \n",
"plt.plot(x, y, 'o')\n",
"plt.title('Putative random numbers on a circle: Method 4')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Which one of the generators is correct? \n",
"\n",
"The first method generates a cross of higher density at $\\pm 45^{\\rm o}$ angle. This is easy to understand: the rays that extend in these directions are longer than in all others, and, in particular, $\\sqrt{2}$ longer than in the horizontal and the vertical directions. Thus we generate more points along these diagonal rays, which, in turn, transforms into a higher density once we pull these numbers first onto the rim of the circle, and then spread them over the whole area of the circle. \n",
"\n",
"Hopefully you also see that the first two of the tried methods generate too many points at the center of the circle compared to the edges. Those of you who know multivariate calculus should be able to extend the calculation we did for generation of exponential random numbers to the multivariate case and relate the higher density of points near the center of the circle to the Jacobian of the transformation we make when we generate such two-dimensional random numbers from uniform standard numbers by transforming from the $(x,y)$ coordinates to $(r,\\phi)$ ones. One can also reason this without the more advanced math. By generating a uniform random $r$, we are putting the same number of points at $0\\le r<0.5$ as at $0.5\\le r<1$. But the area inside the circle of the radius $0.5$ is $\\pi/4$, while the area of the annulus of the width of $0.5$ and the external radius of $1$ is $3\\pi/4$. In other words, the density of points generated using a uniform random $r$ is 4 times as high in the inner circle as it is in the annulus, and this is what you see in the figures. \n",
"\n",
"> ### Your work\n",
"> Time how long it takes each of the generators to generate $10^6$ points in a circle. Which one is faster? (Focus only on *Methods 3, 4*, because the first two are incorrect. In general, performing complex arithmetic operations (trigonometric functions and roots) takes time, slowing down *Method 3*. On the other hand, memory management in *Method 4*, and specifically recursive calls to the function, as well as creating arrays and then stacking them to produce the final output, is also costly. Which of the methods won in your case? Now write an even faster method, which simply generates a bit too many points to start with, so that it almost never has to do the recursive calls. Suprisingly, even though this is wasteful (we generate and then throw away potentially many numbers), as long as it is not too wasteful, such method will be the fastest. *Note: it only takes a few small changes to the function `rnd_circle_rejection()` to implement this.*"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Generating a standard normal number \n",
"A Gaussian (or normal) random variable is a variable with the probability density function $P(x) = \\frac{1}{\\sqrt{2\\pi\\sigma^2}}\\exp \\left[-\\frac{(x-\\mu)^2}{2\\sigma^2}\\right]$. $\\mu"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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mcOHH37Igw8+SP/+/dm2bRuXXXYZy5cvp3v37pX6WJo6dSoTJkzA3TnzzDOZOHFixTyvvvpqZs+eTYcOHZgwYQLXXnsta9euZdKkSbHnJObOnUtxcTHZ2dksXbqUY489lj/84Q+YGbm5uZSUlJCdnU1JSQk//vGPK/K/8847vPfee/zjH//g9ttv55VXXuH555+nc+fO/PnPf654bedtt93GnDlzAHjsscf4+te/zoYNG7jyyitZu3YtAJMmTeL444+nuLiY9evXs2bNGrKzs7n++uu57LLL+OKLL9i5cyfTp0+nW7duDbqNdFpJRHa7Tz75hLy8PBYsWMAJJ5zAmDFjWLRoEUuXLmXbtm08++yzFXm3b9/OwoULmTRpEj//+c8BuPfee2ndujVLlizh+uuvr3iIbv369YwbN44XXniB0tJSFi1axNNPP10xz6KiIhYvXsz+++/Pz372M2bNmsVTTz3FDTfckLKer732GpMmTWL58uWsXr2al19+ucZle/vtt5k5cybPPPMMF110ESeddBJvvPEGrVq1YubMr65ZtW3bloULFzJmzBiuueYaAMaOHcsPfvADFi1axPTp07niiisq8if253TfffcxduxYSktLKSkpIScnp45boGYKDiKy2zVv3pzhw4dXDM+ZM4fCwkJ69uzJCy+8UKnfoVT9Hr344otcdNFFAOTn55Ofnw/AokWLKCoqomPHjrRo0YIRI0bw4osvArDPPvswaNAgIOrzaMCAAbRs2bJS/0fJ+vbtS05ODs2aNaOgoKDKfIlOP/30inJ37NhRaZ6J019wwQUV/8ufHJ89ezZjxoyhoKCAwYMH89FHH1U8LJfYn1O/fv2YMGECEydO5N13390lDwLqtJKI7HZZWVkV1xk+++wzrrrqKkpKSujSpQvFxcWV+h1K1e8RpH4NZnUP9bZs2bJimqr6P0pWVd9M1fUHlVhu8jyrqn/55507d1b51Hdif04XXnghhYWFzJw5k9NOO40HHniAk08+ucplrw+1HEQko8p/XLOzs/n4449r9bKexH6Pli5dWvGuhcLCQubNm8fGjRvZsWMHU6dOZcCAAQ1e57r2B5XKtGnTKv7369cPgIEDB3L33XdX5CktLU057erVqzn88MP5/ve/z+DBgyuWvyEpOIhIRrVv357vfOc79OzZk6FDh9KnT58apxk9ejQff/wx+fn53HrrrfTt2xeATp068ctf/pKTTjqJo48+ml69ejFkyJAGr/P48eMZO3Ys/fv3r/edVp9//jmFhYXceeed3HHHHQDcddddlJSUkJ+fT48ePbjvvvtSTjtt2jTy8vIoKCjgzTffrPSuiYaivpVE6qC2fSY1WL6EvOlK1c+O7NnUt5KIiDQoBQcREYlRcBARkRgFBxERiVFwEBGRGAUHERGJUXAQEamjNWvWkJeXl+lq7FIKDiLS6FXVvUV9uHtF1xdStRqDg5k9ZGbvm9nShLQDzGyWma0M/zuEdDOzu8xslZktMbNeCdOMDPlXmtnIhPRjzeyNMM1dlqrDFBFp8m6//Xby8vLIy8tj0qRJQPwI/Fe/+hXFxcVA9AKfn/70pwwYMIA777yzUlnFxcV8+9vfpqioiMMPP5y77rqrxvl0796dq666il69erFu3TratGnDuHHjOPbYYzn11FNZuHBhRXkzZsyomK5///706tWLXr168fe//31XrqJGpTYd700G7gYeTUi7Dvibu99iZteF4XHA6UC38FcI3AsUmtkBwHigN+DAYjOb4e4fhDyjgFeA54BBwPPpL5qINBaLFy/m4YcfZsGCBbg7hYWFDBgwgA4dOlQ73Ycffsi8efNSjnvzzTeZM2cOW7du5Rvf+AajR49myZIlVc7nrbfe4uGHH+aee+4BvurCe+LEiZx99tkVXXgvX76ckSNHMnjwYA466CBmzZpFVlYWK1eu5IILLmhSb5xLR40tB3d/EdiclDwEeCR8fgQYmpD+qEdeAdqbWSfgNGCWu28OAWEWMCiMa+vu8z3qx+PRhLJEZA/x0ksvcfbZZ7PffvvRpk0bhg0bxv/93//VON15551X5bgzzzyTfffdl+zsbA466CD+/e9/Vzufww47jOOOO65i+tp04f3ll19W9Pt07rnnsnz58jTWQtNS3y67D3b39wDc/T0zOyikdwbWJeQrC2nVpZelSE/JzEYRtTI49NBD61l1kaYp1g9TBt/kVldV9eGW2PU1xLu/TuymOlmq7rSr6ysuuazadOF9xx13cPDBB/P666+zc+dOsrKyqix/T9PQF6RTXS/weqSn5O73u3tvd+/dsWPHelZRRHa3E088kaeffppPP/2UTz75hKeeeor+/ftz8MEH8/7777Np0yY+//zzSm+Aa8j51NeWLVvo1KkT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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# generating Gaussian random numbers using built-in function\n",
"n_rands = int(1e5) # how many numbers to generate?\n",
"nbins = 30 # how many bins to histrogram into?\n",
"plt.hist(nprnd.randn(n_rands), nbins) # make sure to explore help(nprnd.randn)\n",
"plt.title('Built-in normal random numbers generation')\n",
"plt.show()\n",
"\n",
"# and comparing built-in to our own generator\n",
"phi = 2 * np.pi * nprnd.random(n_rands) # generating a random angle\n",
"r = np.sqrt(2 * nprnd.exponential(size=n_rands)) # generating a random exponentially distributed r^2, \n",
" # multiplying by 2, and taking a square root to get the correctly distributed r\n",
"rand_norm = r * np.cos(phi) # the x projection of this (x,y) pair is standard-normal distributed, and we \n",
" # discard the y projection for now\n",
"plt.hist([nprnd.randn(n_rands), rand_norm], nbins)\n",
"plt.title('Comparing built-in in our own normal random numbers')\n",
"plt.legend(('built-in normal\\n random numbers', 'our normal\\n random numbers'))\n",
"plt.show()\n",
"\n",
"# Now we show that generating just a single x instead of the (x,y) pair doesn't give us the right distribution\n",
"x = np.sqrt(2 * nprnd.exponential(size=n_rands)) # we do the same as above, but generate x as a square root of x^2,\n",
" # rather than r as a square root of r^2\n",
"si = np.round(nprnd.rand(n_rands))*2 - 1 # this generates a random sign for x -- some will be +1 and some will be -1\n",
"x = x*si # this is finally our putative standard normal\n",
"plt.hist(x, nbins)\n",
"plt.title('Incorrectly generated normal random numbers')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Using random numbers for Monte-Carlo (MC) calculations\n",
"We use random numbers to perform computations that are fundamentally random, and we will focus on those in the upcoming weeks. However, as we discussed a few lectures ago, there are computations that are fundamentally deterministic, but may be easier to perform with random numbers. One of these is calculation of areas under the curve (definite integrals), known as Monte Carlo integration.\n",
"\n",
"Suppose we want to calculate the areas under a curve $y=y(x)$, with the limits $x\\in [a,b]$. We can, of course, do this analytically for some functions $y$ or numerically by subdividing the range of $x$ into small segments $\\Delta x$ and adding up the areas of all small rectangles, $y(x)\\times \\Delta x$. An alternative (and dare I say, more fun?) way is as follows. Suppose we know that $y(x)$ is positive and smaller than $f_{\\rm max}$. Then the area under the curve can be written down as $(b-a)f_{\\rm max}\\alpha$, where $\\alpha$ is the fraction of the rectange $b-a$ by $f_{\\rm max}$ that is actually under the curve. How do we estimate this fraction? Suppose I generate random points (dart throws), uniformly distributed over the rectangle $b-a$ by $f_{\\rm max}$. The fraction of those that end up under the curve (and it's easy to check which ones do!) is an estimate of $\\alpha$. The next cell performs such calculation for an arbitrary $y=y(x)$. Note that our implementation is incomplete: we don't check if the function is ever below 0 or is ever above $f_{\\rm max}$, which a better implementation should do. We will address this later.\n",
"\n",
"The implementation below first defines the function that will be integrated. You can plug different expression there, to get integrals of different functions. Then we define the MC integrator itself. Finally we integrate the function using the integrator."
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Estimate of the area is 0.33663.\n"
]
}
],
"source": [
"# a function to integrate using the Monte Carlo approach\n",
"def to_integr(x):\n",
" return x**2\n",
" #return np.exp(np.sin(x))\n",
"\n",
"# Monte Carlo integrator\n",
"def mc_integr(func, a, b, fmax, N):\n",
" # func -- function to integrate\n",
" # a,b -- the x range of the integration\n",
" # fmax -- the maximum value of the integrand\n",
" # N -- number of random samples used for the integration\n",
" # return -- a real number, estimate of the area\n",
" N = int(N) # just making sure that the number of dart throws is integer\n",
" x = a+(b-a)*nprnd.random(N) # generating random x coordinated\n",
" y = fmax*nprnd.random(N) # generating random y coordinate\n",
" counts_under_curve = np.sum(y <= func(x)) # how many dots under the curve?\n",
" frac_under_curve = counts_under_curve/N # what is the fraction of dots under the curve?\n",
" area = (b-a)*fmax*frac_under_curve # estimate of the area\n",
" return area\n",
"\n",
"# calculating area under the function to_integr using MC integrator\n",
"area = mc_integr(to_integr, 0, 1, 3, 100000)\n",
"print('Estimate of the area is ', area, '.', sep='')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Above we integrated the function $x^2$ between 0 and 1. The integral should be $1/3$ -- and hopefully after running the cell above, you got a value very close to $1/3$. \n",
"\n",
">### Your work\n",
"Harden the function `mc_integr()` to be able to handle various user errors. First, expand the function to allow areas under the curve to be negative (this will require you to also have an `fmin` argument, in addition to `fmax`). Second, check if any values of `to_integr(x)` generated in the process of integration fall outside of the range $[f_{\\rm min}, f_{\\rm max}]$. If they do, then expand the range appropriately. Return not just the estimate of the area, but the estimates of $f_{\\rm min}$ and $f_{\\rm max}$ as well.\n",
"\n",
"## What is the error of MC methods?\n",
"The result of the area calculation above came out to be slightly different from $1/3$. Herewithin lies the problem of MC approaches: they are probabilistic, and every time we perform them, the results are different. But how different? We can verify, first of all, that our probabilistic estimate of the area converges to to true one as the number of random samples increases, $N\\to\\infty$ (at least when the true value of the area is known, e.g., when we integrate a function $x^2$). In fact, one can can convince onself that this should be the case rather easily if the numbers are truly uniformley distributed in the rectangle around the curve. \n",
"\n",
"Can we additionally understand how quickly the convergence happens? For this, we can explore the distribution of the estimates of the area when we perform the calculation with a varying number $N$ of dart throws. That is, we can generate many different estimates with different realizations of $N$ dart throws and see how different they are from each other. The cell below does precisely this. Hopefully you will see that the larger $N$ is, the more concentrated the estimates are. We quantify this decrease of the spread by calculating the standard deviation $\\sigma$ of the estimates calculated at the same value of $N$. We then compare the standard deviations to the $\\sigma = 1/\\sqrt{N}$ line."
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# investigating the dependence of the accuracy of the MC integrator\n",
"# on the number of samples\n",
"n_trials = 30 # number of area estimates for each N\n",
"N = np.logspace(1, 5, 9) # different values of N to be used\n",
"areaN = np.zeros((N.size, n_trials)) # array to store all of the estimated area values\n",
"\n",
"# for each N and each trial within a fixed value of N, calculate and store the area\n",
"for i in np.arange(N.size):\n",
" for j in np.arange(n_trials):\n",
" areaN[i, j] = mc_integr(to_integr, 0, 1, 3, N[i])\n",
"\n",
"\n",
"# plotting areas as a function of N\n",
"plt.semilogx(N, areaN, 'o')\n",
"plt.xlabel('N')\n",
"plt.ylabel('area')\n",
"plt.title('Estimated of the area vs. N')\n",
"plt.show()\n",
"\n",
"# plotting the standard deviation of the area estimates as a function of N\n",
"# and comparing to 1/sqrt(N)\n",
"plt.loglog(N, np.std(areaN, 1), 'o')\n",
"plt.loglog(N, 1/np.sqrt(N))\n",
"plt.xlabel('N')\n",
"plt.ylabel('standard deviation of the area')\n",
"plt.title('Standard deviation of MC estimates of the area vs. N')\n",
"plt.legend(('results of simulations', '1/sqrt(N) line'))\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Notice how the convergence of the estimators to their true value (the decrease of the standard deviation) goes as $\\sigma = A/\\sqrt{N}$, where $A$ is some constant. The general claim, which is known as the *Central Limit Theorem* is that the $1/\\sqrt{N}$ law holds true for essentially any function being integrated, and only the constant $A$ changes. Moreover, the same scaling is true for almost all simple MC methods, beyond just area estimation: you need to increase the number of smaples by a factor of 100 to get a 10-fold increase in precision. \n",
"\n",
">### Your work\n",
"Verify that MC integration of different function still converges as $\\sigma=A/\\sqrt{N}$. For this, integrate different functions you can think about. Think about how $A$ depends on the shape of the function being integrated. Suppose you overestimated $f_{\\rm max}$. How would this change $A$? \n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Random walks and the Central Limit Theorem\n",
"Every one of you who has taken any science lab can probably recall some mention of the Gaussian (also known as normal) distribution: in many experiments, the stochastic fluctuations around the mean are suppsed to be distributed according to the familiar bell-shaped curve, defined by two parameters: the mean $\\mu$ and the standard deviation $\\sigma$, namely: $P(x) = \\frac{1}{\\sqrt{2\\pi}}\\exp\\left(-\\frac{(x-\\mu)^2}{2\\sigma^2}\\right)$, shown in the next cell.\n",
"\n",
">### Your Turn\n",
"Vary the mean and the standard deviation, and explore how the distribution changes. Show many different normal distribution on the same axes."
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"sigma = 1.0 # standard deviation\n",
"mu = 1.0 # mean\n",
"x = np.arange(-5,5,0.1)\n",
"y = 1/np.sqrt(2*np.pi*sigma)*np.exp(-(x-mu)**2/(2*sigma**2))\n",
"plt.plot(x,y)\n",
"plt.xlabel('x')\n",
"plt.ylabel('P(x)')\n",
"plt.title('Normal distribution')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Why were your instructors so confident that the distribution of errors is Gaussian? To understand this, we will start from afar, from random walks.\n",
"\n",
"Random walks is probably my favorite subject in the modern physics curriculum. Many of the famous names in the late nineteenth and early twentieth century physics and math have contributed to the field, including Einstein, Polya, Wiener, and many others. A single lecture cannot do justice to the subject, and I hope you will pick some of the books to read instead. The \n",
"__[Introduction to Probability](http://www.dartmouth.edu/~chance/teaching_aids/books_articles/probability_book/pdf.html)__ by Grinstead and Snell is a good starting point. Another great book is __[Random Walks in Biology](https://www.amazon.com/Random-Walks-Biology-Howard-1993-09-07/dp/B01MQZYDZ4)__ by Howard Berg. \n",
"\n",
"In general, **random walk** is *a stochastic process that consists of a succession of random steps*. The usual and overused analogy is that of a drunkard, who tries to walk, falls, stands up, and, having forgotten which way he came from, chooses a random direction to go to, before falling again and repeating the cycle. There are many different types of random walks. *Discrete time* (DT) walks mean that every step takes a discrete unit of time. In contrast, in *continuous time* (CT) walks, the duration of each step is a real-values variable, sampled from some distribution. Similarly, one can define *discrete space* (DS) or *continuous space* (CS) random walks by whether the step length is fixed or sampled at random from some probability distribution. As we will see later in this lecture details of these probability distributions matter very little (as long as they have finite variances of their own), and we can learn a lot about many different random walks by studying the simplest version of a random walk, the DSDT walk with the duration of a step $\\Delta t=1$ and the step size $a=1$. Such walks can exist in any number of dimensions (with 1-d being, of course, the simplest). However, for illustration purposes, below we will mostly focus on 2-d walks on a square lattice, where the walker at any point in time can move in one of four directions: up, down, left, or right. Let's generate a few such walks of different lengths."
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYQAAAEWCAYAAABmE+CbAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJzt3X+cXHV97/HXO7M0ZAUMmFQMsLv+umigCma1WK1ENlVaf1Rbte2l9VfvY29366/bH95S1GJrbGnVcm0NNlVEZWuLIBd/1KpYE0ox6EYBCWhrbRKCIkFBxWo04dM/vt9hZzczszPszpxzdt/Px+M85pzvOTPz3rMz5zPnfM+cUURgZma2ougAZmZWDi4IZmYGuCCYmVnmgmBmZoALgpmZZS4IZmYGuCBYn0jaKGlf0Tm6JekSSW/K44v2N0h6vqTbJN0r6fQm80PSoxbjubrMVcn/ky0OF4RlTNJuST/IG6U78sbvqKJzLYSkv5G0pWH6CEnfb9F2RjEpAXgL8IqIOCoivlhUiIUWHkkvknSdpP+StK3J/NMk7czzd0o6rWGeJF0g6Vt5+HNJeqBZbOFcEOw5EXEUcBpwOnBuwXkW6hrgzIbpUWAv8LQ5bQA7+xWqiWFgV4HPv1i+DVwI/NncGZJ+ArgKuBQ4FngvcFVuBxgHngc8Hngc8Gzgf/chs7XggmAARMQdwCdIhQEASc+S9EVJ382HN85vmDeSP12+RNJeSXdJOq9h/qq8x3G3pFuAJzY+n6THStom6R5JuyQ9t2HeJZK2SPp43nv5V0nHS7owP96Xmx1mybYDj5W0Jk//LPD3wIPmtH02In6cn++DeQ/pO5KukXRKJ+tM0qsk3SLpxCbzVkh6naQ9ku6U9D5JD5a0UtK9QA24UdJ/dPA8KyW9Ja/nb0p6p6RVed5GSfsk/W5+nm9IelnDfR8i6SP5f/h5SW+SdG2ed01e7Ma8nn+l4X5NH2+uiLg6Ii4Dvt5k9kZgALgwIg5ExNsBAWfl+S8B3hoR+yLiduCtwEvnWx/WOy4IBkDeqP088NWG5u8DLwZWA88CJiQ9b85dnwqcDIwBb5D02Nz+R8Aj8/BM0pu//lxHAB8BPgn8JPBKYErSyQ2P+yLgdcAa4ADwWeALefpy4G3N/o6I2AfsIW30Ie0Z/Atw3Zy2axru9nHg0TnLF4CpZo/dSNLrSRuvM/NzzvXSPDwdeARwFPDXecNYPyz3+Ih45HzPBVwA/A9SsX4UcALwhob5xwMPzu2/CbxD0rF53jtI/8fjSf+D+/8PEVHfa3p8PnT1Dx08XjdOAW6K2dfHuSm31+ff2DDvxoZ5VoSI8LBMB2A3cC/wPSCATwOr2yx/IfCXeXwk3+fEhvmfA341j38NOLth3jiwL4//LHAHsKJh/geA8/P4JcDfNsx7JXBrw/RPAfe0yXkJ8JekDzx3AoPAbzW03U3akDe77+r8dz244bHelMc3AreTitG19WVaPM6ngcmG6ZOBHwMDeTqAR7W5f5A2/iJt0B/ZMO/JwH82ZPpB/XFz253AGaS9kB8DJzfMexNw7dznaZhu+XjzvJb+F7BtTtvrgb+f0zbV8H8+BDymYd6jcx4V/d5YroP3EOx5EXE0aUPwGNIncAAk/bSkz0jaL+k7pI3qmjn3v6Nh/L9In4QB1gG3Nczb0zC+DrgtIu6bM/+EhulvNoz/oMl0u87va0h7AT8FfC0i/ou0Aa+3rQKuz39jTdKfSfoPSd8lFUk4/O+sW00qbn8aEd9pk2Eds//mPaTDJw9tc59m1pIK2s58eO0e4J9ye923IuJgw3T9/7A2P2fj/6FxvJVWj9ete4Fj5rQdQ/oA0mz+McC9kauD9Z8LggEQEdtJn4bf0tD8d8CHgZMi4sHAO0mfWDvxDeCkhumhhvGvAydJWjFn/u1dxm7lGlJH5bNIh4sgdeCelNs+HxE/zO3/E/hFYBPpMMlIbm/1d95N6vx8j6SntMnwdVLHcd0QcJDZha0Td5EK4CkRsToPD46Zw07t7M/P2djHcVKLZXthF/C4OWcOPY6ZzvRdpP9T3eNZGh3tleWCYI0uBH6u4dTAo4FvR8QPJT2JtPHs1GXAuZKOzf0Tr2yYdz3pMMhr8ymgG4HnkDp/Fywivkra8L6aXBDyp87rc1tj/8HRpD6Kb5E+ib+5g8ffBpwDXCnpp1ss9gHg/0h6uNKpvG8G/mHOJ+9O/pb7gL8F/lLSTwJIOkHSMzu47yHgQ8D5kgYlPYbUJ9Tom6Q+jgck72EdSdoTWSHpyNxHBLCNdFjoVblj/BW5/Z/z7fuA38l/zzrgd0kfSqwgLgh2v4jYT3qTvj43TQJ/LOl7pE7My7p4uDeSDpP8J6nz+P0Nz/Mj4LmkTuy7gC3AiyPiywv9GxpcQzpk8q8Nbf9C6jhuLAjvyzlvB24BdnTy4BHxKeBlwIclbWiyyMWkv/ka0jr4IbOLYjf+L6mzf0c+rHU1qU+iE68g7fnckfN8gFQA684H3psPR73oAWT7DdIezEWkvqEfkApY/f/8PFIRugd4OekQ5Y/yff+GdHLBl4CbgY/lNiuIfLjObPmQdAFwfES8ZN6FbdnxHoLZEibpMZIep+RJpNNIryw6l5XTQNEBzKynjiYdJlpHOn30raRvD5sdxoeMzMwM8CEjMzPLKnXIaM2aNTEyMlJ0DDOzStm5c+ddEbF2vuUqVRBGRkaYnp4uOoaZWaVI2jP/Uj5kZGZmmQuCmZkBLghmZpa5IJiZGeCCYGZmWWEFIV8V8XOSbsw/ofjGorKY2cJMTsLAAEjpdnKy6ET2QBR52ukB4KyIuDdfLvdaSR+PiI6uNmlm5TA5CRddNDN96NDM9JYtxWSyB6awPYRI7s2TR+TB19Ewq5itW7trt/IqtA8h/7jGDaSLbn0qIq5vssy4pGlJ0/v37+9/SDNr69Ch7tqtvAotCBFxKCJOI/3E35Mkndpkma0RMRoRo2vXzvvNazPrs1qtu3Yrr1KcZRQR95B+bu/sgqOYWZfGx7trt/Iq8iyjtZJW5/FVpB85X8yfUDSzPtiyBSYmZqZrtTTtDuXqKfIso4eRfsu1RipMl0XERwvMY2YP0JYtM2cWHTxYbBZ74AorCBFxE3B6Uc9vZmazlaIPwczMiueCYGZmgAuCmZllLghmZga4IJiZWeaCYGZmgAuCmZllLghmZga4IJiZWeaCYGZmgAuCmZllLghmZga4IJiZWeaCYGZmgAuCmZllLghmZga4IJiZWeaCYGZmgAuCmZllhRUESSdJ+oykWyXtkvTqorKUydQUjIzAihXpdmqq6EStVSkrVCtvlbICbNo0My7NnrYKiYhCBuBhwBPy+NHAvwHr291nw4YNsZRdemnE4GAEzAyDg6m9bKqUNaJaeauUNSJibGx21vowNlZ0MqsDpqOD7bLSssWTdBXw1xHxqVbLjI6OxvT0dB9T9dfICOzZc3j78DDs3t3vNO21yrpyJZxxRt/jzGvHDjhw4PB2r9uF27699bySbF6WPUk7I2J0vuVK0YcgaQQ4Hbi+ybxxSdOSpvfv39/vaH21d2937UVqlanZRrcMWuXyujWbMVB0AElHAVcAr4mI786dHxFbga2Q9hD6HK+vhoaafzIcGup/lvm0yjo8DNu29T3OvFp96va6XTip6AS2WArdQ5B0BKkYTEXEh4rMUgabN8Pg4Oy2wcHUXjZVygrVylulrABjY921W4l10tHQiwEQ8D7gwk7vs9Q7lSNSx2G9U254uLwdiREp28qV1cgaUa28VcoacXjHsjuUy4WydypLeirwL8CXgPty8x9GxD+2us9S71Suq++CV6FDbuPGdFvGQxnNVClvlbJC9fIuJ512KhfWhxAR15L2EszMrARKcZaRmZkVzwXBzMwAFwQzM8tcEMzMDHBBMDOzzAXBzMwAFwQzM8tcEMzMDHBBMDOzzAXBzMwAFwQzM8tcEMzMDHBBMDOzzAXBzMwAFwQzM8tcEMzMDHBBMDOzzAXBzMwAFwQzM8tcEMzMDCi4IEi6WNKdkm4uMkeZTE7OjA8MzJ4um02bYPv2NEhpusyqlHdyciZr2V8HUK28mzal/399KPPrANK6HBhIWXu+biOisAF4GvAE4OZOlt+wYUMsZRMTEXD4MDFRdLLDjY01zzo2VnSy5qqUt0qvg4hq5a3S6yBi8dYtMB0dbGOVli2OpBHgoxFx6nzLjo6OxvT0dM8zFWVgAA4dKjrF8nPmmUUnmG379tbzypYVqpW3XdYqqdXg4MHOl5e0MyJG51uu9H0IksYlTUua3r9/f9FxesrFwMw60atthfcQSqTVHkK3nwb6QWo9r+CXVFNVylul1wFUK2+VXgeweOt2yewhLCfj4921F2lsrLv2olUpb5VeB1CtvFV6HUAB67aTjoZeDsAI7lS+38RERK2WOo5qtXJ2zNXN7aAra8dcXZXyVul1EDG787Pseav0OohYnHVLFTqVJX0A2AisAb4J/FFEvLvV8kv9kJH13saN6XbbtiJTLE1VWrf1Q0dlPEzUzELzdnrIaOCBPfziiIhfK/L5zcxshvsQzMwMcEEwM7PMBcHMzAAXBDMzy1wQzMwMcEEwM7PMBcHMzIAOCoKkh0p6t6SP5+n1kn6z99HMzKyfOtlDuAT4BLAuT/8b8JpeBTIzs2J0UhDWRMRlwH0AEXEQ8IWazcyWmE4KwvclPQQIAElnAN/paSozM+u7Tq5l9DvAh4FHSvpXYC3wwp6mMjOzvuukIOwCzgROBgR8BZ+dZGa25HSyYf9sRByMiF0RcXNE/Bj4bK+DmZlZf7XcQ5B0PHACsErS6aS9A4BjgME+ZDMzsz5qd8jomcBLgROBtzW0fw/4wx5mMjOzArQsCBHxXuC9kn45Iq7oYyYzMyvAvJ3KEXGFpGcBpwBHNrT/cS+DmZlZf3Vy6Yp3Ar8CvJLUj/BCYLjHuczMrM86OcvoZyLixcDdEfFG4MnASYvx5JLOlvQVSV+V9AeL8ZhVNzUFIyOwYkW6nZoqOlFrk5MwMJB+AHxgIE2X2SmnwPbtaZDSdFlVbd0ee+zsdXvssUUnam2w4ZQYafZ0GTX+73v+WoiItgNwfb7dQbqe0Urg3+e7XwePWwP+A3gE8BPAjcD6dvfZsGFDLGWXXhoxOBgBM8PgYGovm4mJ2Tnrw8RE0cmaW7++ed7164tOdriqrdvVq5vnXb266GSHW7WqedZVq4pO1txivRaA6ehgu6y0bGuSXg/8FTAGvIN0CYt3RcTrF1KIJD0ZOD8inpmnz80F6k9b3Wd0dDSmp6cX8rSlNjICe/Yc3r5yJZxxRt/jtLV9e+t5Z57ZvxydqlLeVllrNTh4sL9ZOiHNv4wtrm5fC5J2RsTofMt10qn8J3n0CkkfBY6MiMW4ltEJwG0N0/uAn567kKRxYBxgaGhoEZ62vPbubd5+4EB/c1g5HfIlJS3r1Wuhk0tXIOlngJH68pKIiPct8Lmbfa44bHclIrYCWyHtISzwOUttaKj5HsLwMGzb1vc4bQ0MNH9R1mrlywrtP8WWLW+7dVs18xyA6Lt2r4OyZYX+vxY6Ocvo/cBbgKcCT8zDvLseHdjH7M7pE4GvL8LjVtbmzYd3cA0OpvayGR/vrr1o69d3116kqq3b1au7ay/SqlXdtRet76+F+ToZgFsh9TUs5kDa2/ga8HBmOpVPaXefpd6pHJE6kIeHI6R0W8YO5brGDq9arbydnnVzO5bL2KFcV7V1O7djuYwdynVzO5bL2qFcNzGRXgMLeS2wiJ3KHwReFRHfWOxiJOkXgAtJZxxdHBFtPwsv9U7lKqrvgpdxd7uZKuWtUlaoVt4qZV0Mi9apDKwBbpH0OeD+7s2IeO4C8tUf4x+Bf1zo45iZ2cJ1UhDO73UIMzMrXiennbY5g9vMzJaKdr+HcG1EPFXS95h9OqiAiIhjep7OzMz6pt3lr5+ab4/uXxwzMytKuz2E49rdMSK+vfhxzMysKO36EHaSDhUJGALuzuOrgb2k7w+YmdkS0fKbyhHx8Ih4BPAJ4DkRsSYiHgI8G/hQvwKamVl/dPJ7CE/M3xcAICI+DpTs+pBmZrZQnXwP4S5JrwMuJR1C+nXgWz1NZWZmfdfJHsKvAWuBK/OwNreZmdkS0nYPQVINODciXt2nPGZmVpC2ewgRcQjY0KcsZmZWoE76EL4o6cPAB4Hv1xsjwmcamZktIZ0UhONInchnNbQFPvXUzGxJ6eTidi/rRxAzMytWJz+heaKkKyXdKembkq6QdGI/wpmZWf90ctrpe4APA+uAE4CP5DYzM1tCOikIayPiPRFxMA+XkL6LYGZmS0gnBeEuSb8uqZYHf1PZzGwJ6qQgvBx4EXBHHl6Q2x4wSS+UtEvSfZLm/eHnhZiagpERWLEi3U5N9fLZFm7TpvQD4PVh06aiE7V2yikz49Ls6TI69tiZcWn2dNlUKSvACSfMjEuzp8tmcnJmfGBg9vSyFxF9H4DHAicD24DRTu+3YcOG6Mall0YMDkbAzDA4mNrLaGxsdtb6MDZWdLLDrV/fPOv69UUna2716uZ5V68uOtnhqpQ1ImLduuZ5160rOtnhJiaaZ52YKDpZbwHT0cE2VmnZ1vIZRX8FPIX0/YNrgVdHxL6FFiNJ24Dfi4jpTpYfHR2N6emOFgXSHsGePQ8sm5kt3Jkluy7y9ha/EF+rwcGD/c3ST5J2RsS8R2NKf5aRpHFJ05Km9+/f39V99+7tUSgzW1IOHSo6QTl08k3ltRHRWAAukfSa+e4k6Wrg+CazzouIqzoNGBFbga2Q9hA6vR/A0FDzPYThYdi9u5tH6g+p9bx5duT6rkpZoVp5q5QV2ufdtq1vMToyMNB841+r9T9LGfXsLKOI2BQRpzYZOi4GC7V5MwwOzm4bHEztZTQ21l17kdav7669aKtXd9depCplBVi3rrv2Io2Pd9e+3HR7ltE3WISzjPrlnHNg69a0RyCl261bU3sZXX314Rv/sbHUXja7dh2+8V+/PrWX0d13H75BXb06tZdNlbIC3H774Rv/detSe9ls2QITEzPTtVqa3rKluExlMm+nck+eVHo+qaN6LXAPcENEPHO++3XbqVxVGzem27LtbjdTpaxQrbz1QzFlPEzUTJXyVul1sBgWrVNZ0nslrW6YPlbSxQsJFxFXRsSJEbEyIh7aSTEwM7Pe6uSQ0eMi4p76RETcDZzeu0hmZlaETgrCCkn3f09S0nF0dnaSmZlVSCcb9rcC10m6nPTFtBcBJT1Px8zMHqhOfiDnfZKmSb+YJuCXIuKWniczM7O+6ujQTy4ALgJmZktYJ30IZma2DLggmJkZ0Nn3EF7ReJaRmZktTZ3sIRwPfF7SZZLOltpdysrMzKpq3oIQEa8DHg28G3gp8O+S3izpkT3OZmZmfdRRH0L+xZ36T2geBI4FLpf05z3MZmZmfTTvaaeSXgW8BLgLeBfw+xHxY0krgH8HXtvbiGZm1g+dfA9hDenLaLN+aiYi7pP07N7EMjOzfuvkm8pvaDPv1sWNY2ZmRfH3EMzMDHBBMDOzzAXBzMwAFwQzM8tcEMzMDCioIEj6C0lflnSTpCsbf7N5sU1NwcgIrFiRbqemevVMi2NyErZvT8PAQJouq6kp2LEjZa3Cut20aWbdSmm6rE45ZWZcmj1dRo3/+7K/Fqr0HoM+b8Miou8D8AxgII9fAFzQyf02bNgQ3bj00ojBwQiYGQYHU3sZTUzMzlofJiaKTna4qq3bsbHm63ZsrOhkh1u/vnnW9euLTtZclV4LVXqPRSzeugWmo4NtrNKyxZH0fOAFEXHOfMuOjo7G9PR0x489MgJ79sy7WCWceWbRCWbbsQMOHDi8fXgYdu/ue5x5LZVLMhb8dm2q1fusjK+FgQE4dKjoFAvX7bqVtDMiRudbrgx9CC8HPt5qpqRxSdOSpvfv39/VA+/du9Bo1kqzYgBe58tRq/95GV8LS6EYQO/WbUc/oflASLqadOnsuc6LiKvyMueRLpbX8qhYRGwFtkLaQ+gmw9BQdT65QOtPL7UabNvW9zhttfpUODTU9ygLVrZP3VXbm2n1Pivja6FWa/0eO3iw/3nm0+/3Wc/2ECJiU0Sc2mSoF4OXAM8GzokeHbfavBkGB2e3DQ6m9jIaH++uvUhVW7djY921F2n9+u7ai1al10KV3mNQwLrtpKNhsQfgbOAWYG039+u2Uzkidb4MD0dI6baMHV2NJiYiarXUeVSrlbezK6J663Zux3IZO5Tr5nYsl7VDua5Kr4XGjuWyv8ciFmfdUuZOZUlfBVYC38pNOyLit+a7X7edymZVtnFjui3b4cKlYLmt2047lXvWh9BORDyqiOc1M7PWynCWkZmZlYALgpmZAS4IZmaWuSCYmRnggmBmZpkLgpmZAS4IZmaWuSCYmRnggmBmZpkLgpmZAS4IZmaWuSCYmRnggmBmZpkLgpmZAS4IZmaWuSCYmRnggmBmZpkLgpmZAS4IZmaWuSCYmRlQUEGQ9CeSbpJ0g6RPSlpXRA6zspqchO3b0zAwkKbLbGoKRkZgxYp0OzVVdKLWpqZgx460bsuetd+K2kP4i4h4XEScBnwUeENBOcxKZ3ISLrpoZvrQoTRd1qIwNQXj47BnD0Sk2/Hxcm5o61kPHEjTZc5aBEVEsQGkc4GhiJiYb9nR0dGYnp7uQyqz4gwMpCIwV60GBw/2P898RkbShnWu4WHYvbvfadqrUtbFJGlnRIzOt9xAP8I0I2kz8GLgO8DT2yw3DowDDA0N9SecWYGaFYN27UXbu7e79iJVKWsRenbISNLVkm5uMvwiQEScFxEnAVPAK1o9TkRsjYjRiBhdu3Ztr+KalUat1l170Vp9Tivj57cqZS1CzwpCRGyKiFObDFfNWfTvgF/uVQ6zqhkf7669aJs3w+Dg7LbBwdReNlXKWoSizjJ6dMPkc4EvF5HDrIy2bIGJhh61Wi1Nb9lSXKZ2zjkHtm6dmR4eTtPnnFNcplbqWVeuTNNlzlqEQjqVJV0BnAzcB+wBfisibp/vfu5UtuVESrcFn/fRsSrl3bgx3W7bVmSK/il1p3JE+BCRmVnJ+JvKZmYGuCCYmVnmgmBmZoALgpmZZS4IZmYGuCCYmVnmgmBmZoALgpmZZS4IZmYGuCCYmVnmgmBmZoALgpmZZS4IZmYGuCCYmVnmgmBmZoALgpmZZS4IZmYGuCCYmVnmgmBmZkDBBUHS70kKSWuKzGFWNpOTM+MDA7Ony6hKeaemYMcO2L4dRkbStCWFFQRJJwE/B+wtKoNZGU1OwkUXzUwfOpSmy7qRrVLeqSkYH4cDB9L0nj1p2kUhUUQU88TS5cCfAFcBoxFx13z3GR0djenp6Z5nMyvSwEDaqDZz5pn9zdKJ7dtbzytb3h07ZopBo+Fh2L2773H6RtLOiBidb7lC9hAkPRe4PSJu7GDZcUnTkqb379/fh3RmxWpVDGzhmhUDgL0+TgHAQK8eWNLVwPFNZp0H/CHwjE4eJyK2Alsh7SEsWkCzkqrVmheFWg22bet7nHm12qMpY96RkXSYaK6hob5HKaWe7SFExKaIOHXuAHwNeDhwo6TdwInAFyQ1Kx5my874eHftRatS3s2bYXBwdtvgYGq3Hu4htBIRXwJ+sj6di0JHfQhmy8GWLel269b0ybtWSxvXenvZVCnvOeek2/POS4eJhoZSMai3L3eFdSrfH6CLguBOZTOz7nXaqdz3PYS5ImKk6AxmZuZvKpuZWeaCYGZmgAuCmZllLghmZgaU4CyjbkjaDzT5WklH1gBVOrW1SnmrlBWqlbdKWaFaeauUFRaWdzgi1s63UKUKwkJImu7ktKuyqFLeKmWFauWtUlaoVt4qZYX+5PUhIzMzA1wQzMwsW04FYWvRAbpUpbxVygrVylulrFCtvFXKCn3Iu2z6EMzMrL3ltIdgZmZtuCCYmRmwzAqCpBdK2iXpPkmlPN1M0tmSviLpq5L+oOg87Ui6WNKdkm4uOst8JJ0k6TOSbs2vgVcXnakdSUdK+pykG3PeNxadaT6SapK+KOmjRWeZj6Tdkr4k6QZJpb6EsqTVki6X9OX8+n1yr55rWRUE4Gbgl4Brig7SjKQa8A7g54H1wK9JWl9sqrYuAc4uOkSHDgK/GxGPBc4Afrvk6/YAcFZEPB44DThb0hkFZ5rPq4Fbiw7RhadHxGkV+C7C/wP+KSIeAzyeHq7jZVUQIuLWiPhK0TnaeBLw1Yj4WkT8CPh74BcLztRSRFwDfLvoHJ2IiG9ExBfy+PdIb6oTik3VWiT35skj8lDaM0AknQg8C3hX0VmWEknHAE8D3g0QET+KiHt69XzLqiBUwAnAbQ3T+yjxRquqJI0ApwPXF5ukvXwI5gbgTuBTEVHmvBcCrwXuKzpIhwL4pKSdkkr4Y5/3ewSwH3hPPhz3LkkP6tWTLbmCIOlqSTc3GUr7SbuBmrSV9lNhFUk6CrgCeE1EfLfoPO1ExKGIOI30u+NPknRq0ZmakfRs4M6I2Fl0li48JSKeQDo8+9uSnlZ0oBYGgCcAF0XE6cD3gZ71LRb+i2mLLSI2FZ1hAfYBJzVMnwh8vaAsS46kI0jFYCoiPlR0nk5FxD2StpH6a8rYgf8U4LmSfgE4EjhG0qUR8esF52opIr6eb++UdCXpcG0Z+xb3Afsa9g4vp4cFYcntIVTc54FHS3q4pJ8AfhX4cMGZlgRJIh2HvTUi3lZ0nvlIWitpdR5fBWwCvlxsquYi4tyIODH/HO6vAv9c5mIg6UGSjq6PA8+gnIWWiLgDuE3SyblpDLilV8+3rAqCpOdL2gc8GfiYpE8UnalRRBwEXgF8gtTpeVlE7Co2VWuSPgB8FjhZ0j5Jv1l0pjaeAvwGcFY+1fCG/Im2rB4GfEbSTaQPCp+KiNKfzlkRDwWulXQj8DngYxHxTwVnaueVwFR+LZwGvLlXT+RLV5iZGbDM9hDMzKw1FwQzMwNcEMzMLHNBMDMzwAXBzMwyFwSzHshX01yTx69bwOO8VNK6xUtm1poLgtkCSWr7jf+I+JkFPPxLARcE6wsXBFsyJD1R0k35twQelH9H4LDr/0h6cV7uRknvz23Dkj6d2z8taWjdrfO8AAACOUlEQVSe9kskvU3SZ4ALJD1E0ifzBcj+hobrUkm6N99ulLSt4dr2U/kb1Eh6g6TP5+tubVXyAmCU9KWkGyStkrRB0vZ8UbZPSHpYr9erLSMR4cHDkhmANwFvIf2uxLlN5p8CfAVYk6ePy7cfAV6Sx18O/P952i8BPgrU8vTbgTfk8WeRLkpYf4578+1G4Duka1StIH3L+6mNOfL4+4Hn5PFtwGgePwK4Dlibp38FuLjode5h6QxL7uJ2tuz9MelSDz8EXtVk/lnA5RFxF0BE1H/P4cmkH0+CtEH+83naAT4YEYfy+NPqy0XExyTd3SLf5yJiH0C+tPUIcC3wdEmvBQaB44BdpGLU6GTgVOBTeceiBnyjxfOYdc0FwZaa44CjSJ+mjyRdLriR6OyS4q2WaWyf+9idPO6BhvFDwICkI4EtpD2B2ySdT8o+l4BdEdGzn1C05c19CLbUbAVeD0wBFzSZ/2ngRZIeAiDpuNx+HelKnQDnkD61t2uf65o8H0k/DxzbReb6xv+u/HsNL2iY9z3g6Dz+FWBt/Td1JR0h6ZQunsesLe8h2JIh6cXAwYj4u/z71NdJOisi/rm+TETskrQZ2C7pEPBF0pk8rwIulvT7pF+oelm+S6v2ud4IfEDSF4DtwN5Oc0f6vYO/Bb4E7CYd8qq7BHinpB+QDl+9AHi7pAeT3r8Xkg4vmS2Yr3ZqZmaADxmZmVnmgmBmZoALgpmZZS4IZmYGuCCYmVnmgmBmZoALgpmZZf8NVIGaoBzwZCQAAAAASUVORK5CYII=\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# This function will generate a 2d DSDT random walk\n",
"def DSDT_2d_walk(N):\n",
" # Input:\n",
" # N - duration of the walk\n",
" # Return:\n",
" # x,y -- arrays of length N, coordinates of the walker on every step\n",
" \n",
" directions = np.floor(nprnd.random(N)*4) # (0,1,2,3) directions of motion on each time step\n",
" # Do you understand why multiplication by 1.0 is needed in the next two lines?\n",
" # Check what happens if this multiplication is removed.\n",
" dx = (directions == 0) - 1.0*(directions == 1) # directions == 0/1 corresponds to right/left motion\n",
" dy = (directions == 2) - 1.0*(directions == 3) # directions == 2/3 corresponds to top/down motion\n",
" \n",
" x = np.cumsum(np.hstack((0,dx))) # x and y coordinates of the walker are a cumulative sum of steps\n",
" y = np.cumsum(np.hstack((0,dy))) # Notice that the initial position of the walker is always 0. \n",
" # Also notice that the walk of N steps has N+1 positions in it -- there is the initial and the final\n",
" # position, surrounding N steps.\n",
" \n",
" return x, y\n",
"\n",
"\n",
"N = np.array((100, 1000, 10000)) # we will explore random walks of these different lengths\n",
"for i in np.arange(N.size):\n",
" x, y = DSDT_2d_walk (N[i])\n",
" plt.plot(x, y, 'b-o')\n",
" plt.title('Random Walk of length ' + str(N[i]))\n",
" plt.xlabel('x coordinate')\n",
" plt.ylabel('y coordinate')\n",
" plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Notice how a moving particle comes back again and again, and how random walk eventually covers almost the entire 2-d space, with very few holes in the middle. This is a crucial property of random walks, which we will refer to again in one of the projects for this Module.\n",
"\n",
">### Verification\n",
"To verify that the function generates random walks correctly, generate very short walks, e.g., `N=4...10` and see if the walker makes any unallowed steps visually. \n",
"\n",
">### Your turn\n",
"Run the cells multiple times and convince yourself that the walks are not biased. Sometimes they move more to one side or the other, but other times it's the opposite.\n",
"\n",
"We can now see that the details of how the individual steps are generated in a walk matter much less than one might naively think. For this, we define a CSDT walk, where in each individual step, the walked moves in both $x$ and $y$ directions by steps of sizes taken from ${\\cal U}(0,2^{1/4})$. We then compare the DS and the CS walks to each other. \n",
"\n",
"Note the weird $(3/2)^{1/2}$ multiplier. We do this to ensure that the average steps we take in each of the walks are equal. Indeed, for CSDT walk, the steps, on average, are smaller than 1, but we make steps in both the $x$ and the $y$ direction always. The algrebra is a bit more complex than I want to go over here, but I hope the logic is clear; we will return to this multiplier later."
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# This function will generate a 2d CSDT random walk with steps taken from the uniform distribution\n",
"def CSDT_2d_walk(N):\n",
" # Input:\n",
" # N - duration of the walk\n",
" # Return:\n",
" # x,y -- arrays of length N, coordinates of the walker on every step\n",
" \n",
" dx = (3/2)**(1/2)*(2*nprnd.random(N) - 1) # displacements along x\n",
" dy = (3/2)**(1/2)*(2*nprnd.random(N) - 1) # displacements along y\n",
" \n",
" x = np.cumsum(np.hstack((0,dx))) # x and y coordinates of the walker are a cumulative sum of steps\n",
" y = np.cumsum(np.hstack((0,dy))) # Notice that the initial position of the walker is always 0. \n",
" # Also notice that the walk of N steps has N+1 positions in it -- there is the initial and the final\n",
" # position, surrounding N steps.\n",
"\n",
" return x, y# comparing different ways of generating random walks\n",
"\n",
"\n",
"N = np.array((100, 1000, 10000)) # we will explore random walks of these different lengths\n",
"for i in np.arange(N.size):\n",
" xD, yD = DSDT_2d_walk (N[i]) # discrete walk of this length\n",
" xC, yC = CSDT_2d_walk (N[i]) # continuous walk of this length\n",
" plt.plot(xD, yD, 'b-')\n",
" plt.plot(xC, yC, 'r-')\n",
" plt.title('Different types of Random Walks of length ' + str(N[i]))\n",
" plt.xlabel('x coordinate')\n",
" plt.ylabel('y coordinate')\n",
" plt.legend(('DSDT walk', 'CSDT walk'))\n",
" plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Notice that we can easily see the difference between the two walks when there are only a few steps, and the walks do not move far away from the origin. However, at $N=10000$, when individual steps are invisible, it would be hard to distinguish one walk from the other. \n",
"\n",
"To formalize this observation, we will look at the means and the variances of displacements in walkers of different types. For this, we will generate many different walks of the same type and the same length and average."
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"N = 10000 # length of a walk\n",
"N_walks = 5000 # number of walks for averaging\n",
"xD = np.zeros((N_walks,N+1)) # the x coordinates of the N_walks walks of length N, DSDT walk\n",
"yD = np.zeros((N_walks,N+1)) # the y coordinates of the N_walks walks of length N, DSDT walk\n",
"xC = np.zeros((N_walks,N+1)) # the x coordinates of the N_walks walks of length N, CSDT walk\n",
"yC = np.zeros((N_walks,N+1)) # the y coordinates of the N_walks walks of length N, CSDT walk\n",
"\n",
"for i in np.arange(N_walks):\n",
" xD[i,:], yD[i,:] = DSDT_2d_walk(N) # generate a DSDT walk\n",
" xC[i,:], yC[i,:] = CSDT_2d_walk(N) # generate a DSDT walk\n",
"\n",
"# mean x and y positions of both types of walks\n",
"mean_xD = np.mean(xD, 0)\n",
"mean_yD = np.mean(yD, 0)\n",
"mean_xC = np.mean(xC, 0)\n",
"mean_yC = np.mean(yC, 0)\n",
"\n",
"plt.plot(mean_xD, 'b-')\n",
"plt.plot(mean_xC, 'r-')\n",
"plt.title('Mean x displacements for different walks of length ' + str(N))\n",
"plt.xlabel('time')\n",
"plt.ylabel('x coordinate')\n",
"plt.legend(('DSDT walk', 'CSDT walk'))\n",
"plt.show()\n",
"\n",
"plt.plot(mean_yD, 'b-')\n",
"plt.plot(mean_yC, 'r-')\n",
"plt.title('Mean y displacements for different walks of length ' + str(N))\n",
"plt.xlabel('time')\n",
"plt.ylabel('y coordinate')\n",
"plt.legend(('DSDT walk', 'CSDT walk'))\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Note that, in the example above, we make $N=10^4$ steps, and the mean $x$ and $y$ displacements for 5000 random walks are on the order of about only 1 even at the very end of the time interval. This is relatively very small, and probably consistent with the displacement actually being zero, on average.\n",
"\n",
">### Your turn\n",
"Run the cells above with larger $N$ and convince yourself that the mean $x$ and $y$ displacements decrease as $N\\to\\infty$.\n",
"\n",
"So, both CS and DS walks result in the zero mean displacement. Let's now look at what's known as the *mean squared displacement* (which, for the unbiased walks like we are dealing with is equivalent to the walk variance), ${\\rm MSD}= \\left$, where $\\left<\\dots\\right>$ denotes averaging over realizations. "
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"mean_R2D = np.mean(xD**2 + yD**2, 0) # MSD for DS walk\n",
"mean_R2C = np.mean(xC**2 + yC**2, 0) # MSD for CS walk \n",
"\n",
"plt.plot(mean_R2D, 'b-')\n",
"plt.plot(mean_R2C, 'r-')\n",
"plt.plot(np.arange(N+1), 'g:')\n",
"plt.title('Mean squared displacements for different walks of length ' + str(N))\n",
"plt.xlabel('time')\n",
"plt.ylabel('MSD')\n",
"plt.legend(('DSDT walk', 'CSDT walk', 'MSD=time'))\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Both of the walks have the same MSDs! And both of the MSDs grow linearly with time. In fact, this is the crucial property of random walks: mean squared displacement grows linearly with time. Irrespective of the type of the walk and the distributions of individual steps (provided those have finite variances), we will always get this scaling. \n",
"\n",
">### Verification\n",
"In fact, the linear scaling of the walk variance (MSD) can be used for verification of computational models of random walks. Let's denote by $\\sigma^2_1$ the variance of a single step of the walk. Then the variance after $T$ steps is $\\sigma^2_T= T\\sigma^2_1$. If the computational model gives a different result, it is wrong.\n",
"\n",
">### Your turn\n",
"Derive the factor of $(3/2)^{1/2}$ used in the generation of the CSDT random walk above.\n",
"\n",
"Processes that have the linear scaling of the MSD with time are called *diffusive* processes. They include different random walks, Brownian motion, diffusion per se, and many others. One way to think about diffusion is a limit of a CTCS random walk with finite variances of durations and lengths of jumps, when the mean duration and length go to zero, and the number of steps goes to infinite in such a proportion that the MSD stays linear with time, $${\\rm MSD}=2dDT,$$ where $d$ is the dimensionality of the process, $T$ is its overall duration, and $D$ is what's called the *diffusion coefficient*, defined by the expression above.\n",
"\n",
">### Your turn\n",
"Generate either a CSDT random walk where the distribution of step sizes is exponential, or the DSCT walk where distribution of time steps is exponential and show that the same linear scaling of the MSD is observed. \n",
"\n",
"## Central Limit Theorem\n",
"Now we are well positioned to answer the original question we started this lecture from: why are distributions of experimental errors Gaussian? Well, errors usually are contributed to by many independent processes that describe irreproducibility of steps taken by the experimentalist and irreproducibility of the conditions that the system experimented on is in. None of the processes dominates the others, and so each produces small contributions, which collectively result in a big effect. Random walks model this: there are many individual steps, each of which is small, but collectively they result in a big displacement. So what is the distribution of displacements in a random walk? To study this, we plot the distribution of $x$ positionsof our CS and DS walkers."
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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nH766UycOJHy8vIc1KxuZPMcRCfgRTN7nejRhY+7+5NEgeFMM3sHODPMAzxB9ESsFURPihqTxbKJiOzj8MMPZ/LkyfziF7/A3Vm3bh1dunx2GvSYY46hWbNmNW6XxJgxY5g1axYAF1xwAZdeeikA9913HzfccAMAw4YNo2/fvvTq1YvJkydXm9+qVavo06cP8+fPT/T+SWWtBeHuq4ATYtI3AwNj0h34TrbKIyJSk6OOOoq9e/eyYcMGLr30Us466yxmzJjBwIEDGTlyJD179qxxu06dOtX4PgMGDOCFF17g/PPP5/3332fduqiz5MUXX2T48OEA3H///bRr146dO3dy0kkncdFFF9G+/X5PsGX58uUMHz6cBx54gN69ex9E7fenO6lFRFJUtgJ69+7NqlWr+OEPf8iWLVs46aSTWLZsWY3bJdG/f39eeOEFli5dynHHHUenTp1Yt24dL7/8MqeeeioAd999NyeccAKnnHIKa9as4Z133tkvn40bNzJ06FAeeuihOg8O0MBHcxURqUurVq2icePGHH54dPV9ixYtuPDCC7nwwgtp1KgRTzzxBMcee2yN29WkS5cubN26lSeffJIBAwawZcsWpk+fTosWLWjZsiXz5s3jmWee4eWXX+awww7j9NNPj72foXXr1nTt2pWXXnqJXr16HVzlY6gFISJCdDR+5ZVXMnbsWMyMl156ia1btwLwySefsHTpUrp161bjdkn169ePO++8kwEDBtC/f38mTpxI//79Adi2bRtt27blsMMO46233uKVV16JzeOQQw5h5syZTJ06lYcffvgAal09tSBEGrKbW6fNb8tNOepALq7w2rlzJ7179666XHXEiBFcc801AKxcuZKrrroKd2fv3r0MGTKEiy66qMbtkurfvz9PPfUUPXr0oFu3bmzZsqUqQAwaNIhJkyZx/PHHc8wxx3DKKadkzKd58+Y89thjnHnmmTRv3pyhQ4ce4Kexvwb9TOry8nLXA4OkvqVfvpppx1Yvl7k24ACxbNmy2O4aqVtxn7OZLXT3Gq+/VReTiIjEUoAQEZFYChAiIhJLJ6lF6lPScwYN+NyCFA61IEREJJYChIiIxFIXk8jBqoPuoP0unS05mAI1UOmf40HnV/P38I9//INx48Yxf/58mjVrRllZGXfeeSc9evRg3LhxPPvss5gZJSUlTJ8+ne7du1NWVkbLli0B+PTTT7nwwgu58cYbefvttxkxYgQA7733Hq1bt6Z169Z06NCBZ555pk6qlDpCbIsWLdixY0ed5JuJAoSIFCV354ILLmDkyJFMmzYNgEWLFrF+/XoWLlzI2rVrWbx4MY0aNaKiooLmzZtXbTt37lw6dOjAjh07GD16NKNHj2bKlClVQ4CPGjWKc889l4svvjgndasr6mISkaI0d+5cmjZtypVXXlmV1rt3b/r378+6devo3LkzjRpFu8jS0lLatm27Xx4tWrRg0qRJzJw5ky1btiR63zvuuIO7774bgKuvvpozzjgDgDlz5vDNb34TgKuuuory8nJ69erFTTfdVG1+mzZtol+/fjz+eN0+cAkUIESkSC1ZsoS+ffvGLrvkkkv485//TO/evbn22mt57bXXMubTqlUrunfvHjvaapzKob6BqifD7d69mxdffLFqqI1bb72VBQsWsHjxYp577jkWL14cm9f69esZMmQIP/3pTxkypO6HKlGAEBFJU1payvLly7ntttto1KgRAwcOZM6cORnXr82QRX379mXhwoVs376dZs2a0a9fPxYsWMALL7xQFSCmT5/OiSeeSJ8+fXjzzTdZunTpfvns3r2bgQMHcscdd3DmmWfWvpIJ6ByEiBSlXr16MWPGjIzLmzVrxuDBgxk8eDCdOnVi5syZDBy437PO2L59O6tXr+boo49O9L5NmzalrKyMBx54gFNPPZXjjz+euXPnsnLlSo499ljeffddJk6cyPz582nbti2jRo2KHeq7SZMm9O3bl9mzZ/PFL34xecVrQS0IESlKZ5xxBh9//DH33HNPVdr8+fN57rnnePXVV1m7di0Ae/fuZfHixbFDfe/YsYMxY8YwbNiw2HMUmQwYMICJEydWDfU9adIkevfujZnx4Ycf0rx5c1q3bs369ev5y1/+EpuHmXH//ffz1ltvMWHChNh1DpZaECKSH+r5bnEz409/+hPjxo1jwoQJlJSUVF3munLlSq644go+/vhjAE4++WTGjh1bte2XvvSlqmHAL7jgAm688cZavXf//v259dZb6devH82bN6ekpKSqe+mEE06gT58+9OrVi6OOOorTTjstYz6NGzdm2rRpnHfeebRq1YoxY8YcwCeRmQKEiBStI444gunTp++X3rNnTwYNGhS7zerVq2vM98EHH6x2+cCBA9m9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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.hist([xD[:,-1],xC[:,-1]],nbins)\n",
"plt.xlabel('x position')\n",
"plt.ylabel('frequency')\n",
"plt.title('Distribution of x displacements')\n",
"plt.legend(('DSDT walk', 'CSDT walk'))\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Shockingly, both of the distributions are indistinguishable Gaussians! This is a demonstration of what is known as a *Central Limit Theorem* (CLT), arguably one of the most important theorems in probability theory: a sum of many independent random variables is itself a random variable that tends to be normally distributed with the variance equal to the sum of variances of contributing variables (provided these variances are all finite). It is precisely because of the Central Limit Theorem why we also call Gaussian distributions normal.\n",
"\n",
">### Your turn\n",
"Show that the CLT property holds for the walks you defined in the previous Your Turn exercise.\n",
"\n",
">### Your turn\n",
"Verify that the variance of the $x$ displacement of the walk is, indeed, the sum of variances of the individual displacements (for this, you will need to calculate the latter variance analytically).\n",
"\n",
">### Track 2: Accuracy of MC methods, take 2 \n",
"Now we can explain why the error of MC methods usually scales as $\\sim 1/\\sqrt{N}$. Let's look again at our example of calculating the area under a curve $f(x)$ between $a$ and $b$ using MC. The estimate of the area is $A_{\\rm est}= n/N$, where $n$ is the number of darts that landed below the curve of the function, and $N$ is the total number of darts thrown. We can write this as $A_{\\rm est}=\\frac{1}{N}\\sum_{i=1}^N\\Delta_i$, where $\\Delta_i$ is 1 if the dart ended up below $f(x)$. In other words, $A_{\\rm est}$ is a sum of a 1-d random walk (possibly biased if $\\langle \\Delta_i\\rangle \\neq 0.5$). Thus by the CLT, for $N\\to\\infty$, $A$ is distributed as a Gaussian with the variance $\\sigma^2(A_{\\rm est}) = \\frac{1}{N^2}\\sum_{i=1}^N\\sigma^2(\\Delta_i)$ (here $1/N^2$ comes because of $1/N$ in the definition of $A$). Now, $\\Delta_i$ is a Bernoulli variable with $P(1)= \\frac{A}{(b-a)f_{\\rm max}}$, and its variance is $\\sigma^2(\\Delta_i)=P(1)P(0)$. Putting this all together, gives $\\sigma^2(A_{\\rm est}) = \\frac{1}{N}P(1)P(0)$, which scales as $\\sim1/N$. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Projects\n",
"\n",
"There are three projects available for you to choose from in this module. We will first introduce them, and then we will introduce a few more theoretical ideas and modeling topics that are needed to properly address them\n",
"\n",
">### Project 1: \n",
"**Diffusion-limited aggregation (physics)** Read about diffusion limited aggregation (DLA) __[here](http://paulbourke.net/fractals/dla/)__. Implement DLA as follows. Start with a large square lattice (at least $100\\times 100$, but generally larger; make this a changeable parameter in the model). Make the central point of the lattice the beginning of the DLA cluster (a stationary dot). Release a walking dot on a discretized circle slightly larger than the size of the stationary cluster. Let it perform a random walk, and at each step check if the walking dot comes in contact with a cluster. If it does, the walking dot becomes stationary itself and joins the cluster. If the dot tries to exit the circle, from which it was released, do not let it. Once the dot becomes stationary, repeat the cycle by releasing the next walking dot. Keep repeating this until the cluster consists of a larger number of stationary dots (e.g., 1000 -- again, make this a changeable parameter. At every attachment event, record the state of the lattice (which points have a stationary dot, and which don't), and combine these frames into a movie, as shown in Chapter 8.2 of the textbook. Finally, measure the maximum horizontal extent of the cluster at every frame and plot it as a function of the number of particles in the cluster. How does the size grow with time? Is this a power law? If yes, which one? The DLA cluster models the deposition of molecules on surfaces -- think of snowflakes, but also growth of bacteria in a bacterial film, where the movable dot is now a food particle, and the stationary dots are bacteria that divide when the food gets eaten.\n",
"\n",
">### Project 2:\n",
"**Annihilation in different dimensions (chemistry)** A chemical annihilation reaction, $A+A\\to0$, where $A$ denotes a particle, is one of the simplest reactions one can think of. But it also illustrates how properties of random walks depend strongly on the dimension of the system. First, write down the chemical kinetics equation for the system and solve it analytically. At $t\\to\\infty$, how does the concentration of A decrease? Now let's simulate this problem. Initiate walkers on a lattice of a linear size $L$ in 1, 2, and 3 dimensions. In a cellular automaton simulation, this would mean representing a lattice as an an array of size $L$, $L\\times L$, and $L\\times L\\times L$. In an agent-based simulation, this would mean dropping the agents at random over some part of the space with the linear scale of $\\sim L$. Play with different values of $L$, as long as it is much larger than 1. Release $N$ random walkers onto this lattice at random points (again, explore different *even* values of $N$). As the walkers do their 1, 2, and 3 dimensional walks, you should check if any pair of them ends on top of each other. When this happens, the two walkers annihilate each other and disappear. As time increases, measure the number of remaining walkers (you will need to average them over many repeats when this number is of order 1). Does the average number of walkers in different dimensions decrease with time as a power law? What is the power? Does the power depend on the dimension? Does any dimension match what we would expect from the analytical, deterministic solution? This model is used in various material science contexts, but also in population biology scenarios.\n",
"\n",
">### Project 3:\n",
"**Simulating a bistable gene (biochemistry)** Most cells in our bodies have the same DNA, and yet they have very different phenotypic properties. This is because different genes are active or inactive (express corresponding proteins or not) in different cells. Often this is achieved in cells by positive autoregulation: an expressed protein activates expression of additional copies of itself, so that if a large number of proteins is expressed, then they produce even more of themselves, resulting in a fully active gene. On the contrary, if originally only a small number of proteins is expressed, then their effect is insufficient to produce many more, and the gene is inactive. We model such dynamics as a combined effect of two processes. First, existing proteins degrade with the propensity $rn$, where $r$ is the rate and $n$ is the number of protein molecules. Second, existing proteins activate production of new proteins with the propensity $A_0 + \\frac{A_1n^2}{1+(n/n_0)^2}$, where $A_0$ is the basal expression rate, $A_1$ is the expression amplitude, and $n_0$ is the half-maximal expression protein concentration. Simulate this system by simulating production or degradation of individual molecules, or by tracking dynamics of the probability distribution of having a certain number of molecules expressed. Explore how the dynamics of expression depends on time and on the initial conditions. Find parameter values where, depending on the initial condition, there are two stable states: inactive, with $n\\approx 10$ and active with $n\\approx 25$. Does the system stay in either of the stable states forever? If not, quantify statistics of transitions between the states.\n",
"\n",
"How do we simulate such complex probabilistic systems? A key question is: what should be the dynamical degrees of freedom that we should use to represent the system? This is not a simple question, and it requires a serious discussion."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Cellular Automata vs Agent-based simulations\n",
"The same systems (usually stochastic, but often also deterministic) can sometimes be simulated in multiple different ways. Consider, for example, Project 2 for this module: the annihilation reaction, where two diffusing individuals of the same species annihilate each other when they meet. We can model this system by choosing random positions of $N$ individuals on the $L\\times L$ lattice. We would then run a loop over time steps, and in each of the time steps we would loop over the individuals. For each individual, we would first generate a step in a random direction, and then we would check if the individual is at the same point on the lattice as some other. If the latter is true, both individuals would then be removed from the future consideration. \n",
"\n",
"This is called an *agent-based* simulation. To specify such a simulation, one needs to specify the number of agents, their state (the coordinates on the lattice in our case), and the rules, by which the agents evolve with time. The agents are the primary units, the degrees of freedom of the system. The behavioral rules can include the rules for motion, the rules for creation, destruction, for interaction with other agents, and so on. The state of each agent may be much more complex than just the position, and it can include such attributes as reactivity, age, or whether the agent is mobile or not (which is relevant to Project 1, growth of the DLA cluster). The rules and states do not necessarily have to put the agents on the lattice; instead, they can move through the real space. The rules can be deterministic or probabilistic, or a mixture of both. All of these combinations are possible. Such agent-based simulations are used routinely in many different fields, and are a staple of modern science. We can track motion and interactions of individual molecules, including their creation and destruction in chemical reactions. We can track position of individual animals or humans in behavioral or sociological experiments. \n",
"\n",
"An alternative way of simulating the same annihilation system is to take not the individual, but rather the space itself (always represented as a lattice on a computer) as the main variable. The lattice consists of many cells, and each cell has a certain number of individuals in it. The simulations proceed by, again, looping over time. However, now in each time step, we loop over the lattice sites, the cells, and not the individuals themselves. Each cell has rules for its change based on its own state, as well as the state of the surrounding cells, with which it interacts. In our annihilation problem, the rules could be the following. First if there are more than two individuals in a cells, then the number of them is decreased by two (two are annihilated). And then a random number of individuals from each cell (distributed according to some probability law) is removed from a cell and added to one of the neighboring cells at random. It's pretty clear that one can match the rules, by which we model the cells, to the rules, by which agents are modeled, so that the results of simulations are the same.\n",
"\n",
"This type of simulations is called *cellular automaton* simulation (that is, there is an automaton that obeys a certain rules in every cell). To specify such simulation, we need to specific the number and the geometric arrangement of the cells, as well as the rules by which the cells evolve in time. As in agent-based approaches, the rules can be deterministic or probabilistic, and the state of the lattice can be either very simple (e.g., occupied or not) or very complex (how many individuals and of which type are in a cell). Cells may be real physical cells, or they can be discretized bins of the continuous space, for example exchanging molecules. These type of approaches are also used routinely in applications. For example, we can predict forest fires by viewing a forest as consisting of lattice sites that have states such as *on fire*, *combustible*, or *barren*, and with rules that define how fires emerge and how they spread to new combustible cells. Spread of epidemics can also be models by cellular automata. And even diffusion of molecules through space can be viewed as cells with rules for exchanging molecules.\n",
"\n",
"Cellular automata and agent-based simulations are not exclusive. Some problems may require the use of both, as we will illustrate below using the example of the DLA cluster growth. \n",
"\n",
"### Which representation to use?\n",
"If both methods can be used often to achieve the same results for the same systems, which one ''should'' be used? Both methods can be made equally accurate, and both are similarly easy (or hard) to code. So often the choice is left to the scientist, and either choice is reasonable. However, sometimes there is a big distinction: the execution time. And here common sense rules. In both methods, the main loop is over time. But then the first loops over the agents, and the second over the cells. It is clear that the number of operations per each time step that would need to be performed in each cycle of an agent-based simulation would scale at least as $N$, the number of agents, and may require even more time if many pairs of agents interact, e.g., $N^2$. (The time cost of a computation is called the *time complexity* or the *computational complexity*.) Let's generalize this and denote the scaling of the time in the agent-based formulation as $N^a$. In contrast, for cellular automata, this internal cycle would scale with the number of cells, $\\propto L^d$ in a $d$-dimensional system. If the agents and the cells have similarly complex rules, than the best type of simulations is determined by whether $N^a$ is larger than $L^d$ or not -- the smaller of the two should be chosen. For example, if we have only a handful of individuals diffusing on a big lattice and they only rarely interact with each other, then agent-based approaches are the way to go. If, on the other hand, each cell, on average, has $\\gg1$ individuals, then we can move many of them from one cell to another in just a few computer commands, rather than a few commands per individual -- and cellular automata simulations will be faster in this case.\n",
"\n",
"In my experience reviewing papers for scientific journals, the choice of the representation between cellular automata and agents is probably one of the most common and the most costly mistakes an computational scientist can (and do) make. Choose wrong, and your code will spend idle cycles moving millions of individuals one at a time, or analyzing cells where nothing at all happens."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Analysis for Project 1: DLA\n",
"The most important thing we should do is to decide how to represent the data. Let's consider the costs of different choices.\n",
"\n",
"*Cellular automaton*. There's only one walker at any given time. Thus nothing will be happening over most of the lattice, and running a cellular automaton would be unnecessarily costly. \n",
"\n",
"*Agent-based simulation*. From the first glance, this seems like a way to go. Since only one walker is moving, let's represent it as an agent. However, at every step of the walker, we need to check if it is touching the DLA cluster. Thus if the cluster is represented by agents that are inactive, and the walker is an active agent, then every step of the walker will require checking if it is touching any of the previous agents. This will require $O(N^2)$ steps, where the first power in $N^2$ comes from having to launch $N$ agents, and the second from having to check every other agent every time. This will be costly too.\n",
"\n",
"*Mixed simulation*. The best solution here is to represent the walker as an agent, but the cluster as a cellualr automaton, where, say, a 0 on the lattice at a certain point means that it does not belong to the cluster, while 1 says that it does. Then to decide whether an agent is touching the cluster, one only needs to check the state of the cell under it, which does not scale with $N$. Thus the time complexity of the problem decreases to $O(N)$ from $O(N^2)$ in this representation.\n",
"\n",
"The code below implements the simplest DLA cluster using this representation. Feel free to use this in your solution for Project 1. However, this is not the whole solution -- a lot of modifications to the code are still needed to answer the questions posed by the Project."
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Attached walker No. 0\n",
"Attached walker No. 100\n",
"Attached walker No. 200\n",
"Attached walker No. 300\n",
"Attached walker No. 400\n",
"Attached walker No. 500\n",
"Attached walker No. 600\n",
"Attached walker No. 700\n",
"Attached walker No. 800\n",
"Attached walker No. 900\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# initialization block\n",
"N_walkers = 1000 # how many walkers in a cluster\n",
"L = 100 # lattice size\n",
"lattice = np.zeros((L,L)) # the lattice itself\n",
"lattice[int(L/2), int(L/2)] = 1 # seeding the DLA cluster\n",
"\n",
"# The following function starts the walker somewhere on the lattice.\n",
"# For now, I coded the function to start a walker on one of the edges of the lattice.\n",
"# However, as the accompanying text describes, starting the walker on the edge is not really ok.\n",
"# Indeed, this will break the circular symmetry of the cluster. Further, it will take the walker a \n",
"# a very long time to find the claster if it starts far away. You will need to re-write this function\n",
"# to start the walker at a circle that is slightly larger than the current cluster size. This is why\n",
"# we supply the lattice as the argument to this function.\n",
"def start_walker(lattice):\n",
" L = lattice.shape[0] # getting the lattice size\n",
" side = np.floor(4*nprnd.random()) # which side the walker will be releazed on\n",
" start_coord = 1+int(np.floor((L-2)*nprnd.random())) # which site on the chosen side the walker \n",
" # will be released on. Notice that we don't let the walkers to be released at edges, but only\n",
" # with coordinates [1,L-2]. This makes it easier later to check if the walker is approaching an edge,\n",
" # which we block.\n",
" if (side==0): # left side\n",
" x = 1\n",
" y = start_coord\n",
" elif (side==1): # top\n",
" x = start_coord\n",
" y = L-2\n",
" elif (side==2): # right\n",
" x = L-2\n",
" y = start_coord \n",
" else: # bottom \n",
" x = start_coord\n",
" y = 1\n",
" \n",
" return (x,y) # return the walker initial position\n",
"\n",
"\n",
"# The following function runs a walker till it ends up joining the cluster.\n",
"# At this point, the function checks if the walker is trying to leave the finite range\n",
"# of the lattice. Instead, to speed things up, you should recode this so that\n",
"# the walker is not allowed to leave the circle that is slightly larger than the \n",
"# current cluster size.\n",
"def run_walker(lattice):\n",
" L = lattice.shape[0] # getting the lattice size\n",
" x, y = start_walker(lattice) # we initiate the walker position\n",
" ii=0\n",
" # keep running the walker till it hits the cluster and gets stuck\n",
" while (True):\n",
" # Keep generating plausible steps until an acceptable one (not hitting a wall)\n",
" # is generated.\n",
" while(True): \n",
" # this code is copied from the DSDT_2d_walk() function above\n",
" directions = int(np.floor(nprnd.random(1)*4)) # (0,1,2,3) directions of motion on each time step\n",
" dx = (directions == 0) - 1.0*(directions == 1) # directions == 0/1 corresponds to right/left motion\n",
" dy = (directions == 2) - 1.0*(directions == 3) # directions == 2/3 corresponds to top/down motion\n",
" # we now verify that the walker doesn't approach the edge. If it doesn't, we break the loop.\n",
" # If it does, we continue pulling random numbers and trying different steps.\n",
" if((int(x+dx)>0)&(int(x+dx)0)&(int(y+dy)0): # the walker is near the cluster\n",
" lattice[x,y] = 1 # add the walker to the cluster\n",
" break\n",
" \n",
" return (lattice)\n",
"\n",
"# release N_walkers walkers and build the DLA cluster on the lattice. \n",
"for i in np.arange(N_walkers):\n",
" lattice = run_walker(lattice)\n",
" if (np.round(i/100)==i/100): # signal attachment of every 100th walker\n",
" print('Attached walker No. '+str(i)) # we do this to monitor progress\n",
"\n",
"# now we show the final cluster lattice\n",
"plt.imshow(lattice, cmap='Greys', interpolation='nearest')\n",
"plt.title('DLA cluster')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
">### Your turn:\n",
"Use the code above and make the necessary improvements to it, and then use it to answer questions posed in Project 1."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Analysis for the Project 2: annihilation \n",
"First let's analyze this system assuming that it obeys the usual deterministic mass-action law. Then since annihilation requires *two* particles to be at the same place at the same time, the propensity of the particle number $n$ (or the concentration) decrease will be proportional to $n^2$ and will obey the following ordinary differential equation\n",
"$$\\frac{dn}{dt} = -r n^2.$$\n",
"This is easy to solve by separating the variables:\n",
"$$\\frac{dn}{n^2} = -rdt,$$\n",
"$$-\\left.\\frac{1}{n}\\right|_{n_0}^{n(t)} = -\\left.rt\\right|_0^t,$$\n",
"$$ \\frac{1}{n}=\\frac{1}{n_0}+rt,$$\n",
"$$n(t) = \\frac{n_0}{1+rtn_0},$$\n",
"where $n_0$ is the initial particle number. In the limit of long time, \n",
"$$n(t)\\to \\frac{1}{rt},$$\n",
"which is a slow, power-law decay. The problem formulation asks us to compare (quantitatively!) this decay to results of simulations in different number of dimensions. (As a side note, such comparison will require many simulation runs for averaging, and probably is better done in log-log axes.)\n",
"\n",
"Now we are in a good position to think how to code this problem. The first question we need to ask, as always, is how to represent the data and what the dynamical variables should be for this project. In the simplest case, if we have the lattice of size $L$, then each time step of the program will have the time complexity $O(L)$. In the agent-based approach, each time step will require looping over all agents, and then, for each agent, we will have to compare its position with all other agents to verify if the pair is annihilating. The resulting time complexity is $O(N^2)$. So it may seem that going with the cellular automaton formulation will be faster for all but the largest lattices. However, the situation is not that simple. First of all, the lattice doesn't have to be finite -- the particles can, in principle, walk very far from where they were released. Second, when doing loops over agents, we do not have to move and compare positions for agents that are inactive. Checking if an agent is active costs almost nothing, ans so if we are looping only over the active agents, the computational costs will scale as $O(N_{\\rm active}N)$, where the factor $N$ is due to checking if an active agent is at the same position as *any other one of $N$ agents*. Guided by the analytical solution above, we venture that most of the time the system will spend in the regime with very few remaining particles, so that $N_{\\rm active}\\sim 1$. Thus the computational complexity of the problem is closer to $O(N)$ rather than $O(N^2)$. At this point, it becomes clear that simulating the system as a set of agents is going to be faster than as a cellular automaton.\n",
"\n",
"The code below implements the simplest version of the annihilation problem using this representation. You should feel free to use this in your solution for Project 2. However, this is not the whole solution -- a lot of modifications to the code are still needed to answer the questions posed by the Project."
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Time step = 0; No. of active walkers = 198.0.\n",
"Time step = 0; No. of active walkers = 196.0.\n",
"Time step = 0; No. of active walkers = 194.0.\n",
"Time step = 0; No. of active walkers = 192.0.\n",
"Time step = 0; No. of active walkers = 190.0.\n",
"Time step = 0; No. of active walkers = 188.0.\n",
"Time step = 0; No. of active walkers = 186.0.\n",
"Time step = 0; No. of active walkers = 184.0.\n",
"Time step = 0; No. of active walkers = 182.0.\n",
"Time step = 0; No. of active walkers = 180.0.\n",
"Time step = 0; No. of active walkers = 178.0.\n",
"Time step = 0; No. of active walkers = 176.0.\n",
"Time step = 0; No. of active walkers = 174.0.\n",
"Time step = 0; No. of active walkers = 172.0.\n",
"Time step = 0; No. of active walkers = 170.0.\n",
"Time step = 0; No. of active walkers = 168.0.\n",
"Time step = 0; No. of active walkers = 166.0.\n",
"Time step = 0; No. of active walkers = 164.0.\n",
"Time step = 0; No. of active walkers = 162.0.\n",
"Time step = 0; No. of active walkers = 160.0.\n",
"Time step = 0; No. of active walkers = 158.0.\n",
"Time step = 0; No. of active walkers = 156.0.\n",
"Time step = 0; No. of active walkers = 154.0.\n",
"Time step = 0; No. of active walkers = 152.0.\n",
"Time step = 0; No. of active walkers = 150.0.\n",
"Time step = 0; No. of active walkers = 148.0.\n",
"Time step = 0; No. of active walkers = 146.0.\n",
"Time step = 0; No. of active walkers = 144.0.\n",
"Time step = 0; No. of active walkers = 142.0.\n",
"Time step = 0; No. of active walkers = 140.0.\n",
"Time step = 0; No. of active walkers = 138.0.\n",
"Time step = 0; No. of active walkers = 136.0.\n",
"Time step = 0; No. of active walkers = 134.0.\n",
"Time step = 0; No. of active walkers = 132.0.\n",
"Time step = 0; No. of active walkers = 130.0.\n",
"Time step = 0; No. of active walkers = 128.0.\n",
"Time step = 0; No. of active walkers = 126.0.\n",
"Time step = 0; No. of active walkers = 124.0.\n",
"Time step = 0; No. of active walkers = 122.0.\n",
"Time step = 0; No. of active walkers = 120.0.\n",
"Time step = 0; No. of active walkers = 118.0.\n",
"Time step = 0; No. of active walkers = 116.0.\n",
"Time step = 0; No. of active walkers = 114.0.\n",
"Time step = 0; No. of active walkers = 112.0.\n",
"Time step = 0; No. of active walkers = 110.0.\n",
"Time step = 0; No. of active walkers = 108.0.\n",
"Time step = 0; No. of active walkers = 106.0.\n",
"Time step = 0; No. of active walkers = 104.0.\n",
"Time step = 0; No. of active walkers = 102.0.\n",
"Time step = 0; No. of active walkers = 100.0.\n",
"Time step = 0; No. of active walkers = 98.0.\n",
"Time step = 0; No. of active walkers = 96.0.\n",
"Time step = 0; No. of active walkers = 94.0.\n",
"Time step = 0; No. of active walkers = 92.0.\n",
"Time step = 0; No. of active walkers = 90.0.\n",
"Time step = 0; No. of active walkers = 88.0.\n",
"Time step = 0; No. of active walkers = 86.0.\n",
"Time step = 0; No. of active walkers = 84.0.\n",
"Time step = 1; No. of active walkers = 82.0.\n",
"Time step = 1; No. of active walkers = 80.0.\n",
"Time step = 1; No. of active walkers = 78.0.\n",
"Time step = 1; No. of active walkers = 76.0.\n",
"Time step = 1; No. of active walkers = 74.0.\n",
"Time step = 1; No. of active walkers = 72.0.\n",
"Time step = 1; No. of active walkers = 70.0.\n",
"Time step = 2; No. of active walkers = 68.0.\n",
"Time step = 2; No. of active walkers = 66.0.\n",
"Time step = 2; No. of active walkers = 64.0.\n",
"Time step = 2; No. of active walkers = 62.0.\n",
"Time step = 3; No. of active walkers = 60.0.\n",
"Time step = 3; No. of active walkers = 58.0.\n",
"Time step = 3; No. of active walkers = 56.0.\n",
"Time step = 3; No. of active walkers = 54.0.\n",
"Time step = 4; No. of active walkers = 52.0.\n",
"Time step = 4; No. of active walkers = 50.0.\n",
"Time step = 5; No. of active walkers = 48.0.\n",
"Time step = 6; No. of active walkers = 46.0.\n",
"Time step = 6; No. of active walkers = 44.0.\n",
"Time step = 7; No. of active walkers = 42.0.\n",
"Time step = 8; No. of active walkers = 40.0.\n",
"Time step = 8; No. of active walkers = 38.0.\n",
"Time step = 10; No. of active walkers = 36.0.\n",
"Time step = 14; No. of active walkers = 34.0.\n",
"Time step = 14; No. of active walkers = 32.0.\n",
"Time step = 14; No. of active walkers = 30.0.\n",
"Time step = 17; No. of active walkers = 28.0.\n",
"Time step = 17; No. of active walkers = 26.0.\n",
"Time step = 26; No. of active walkers = 24.0.\n",
"Time step = 31; No. of active walkers = 22.0.\n",
"Time step = 38; No. of active walkers = 20.0.\n",
"Time step = 42; No. of active walkers = 18.0.\n",
"Time step = 81; No. of active walkers = 16.0.\n",
"Time step = 84; No. of active walkers = 14.0.\n",
"Time step = 157; No. of active walkers = 12.0.\n",
"Time step = 213; No. of active walkers = 10.0.\n",
"Time step = 223; No. of active walkers = 8.0.\n",
"Time step = 1039; No. of active walkers = 6.0.\n",
"Time step = 2856; No. of active walkers = 4.0.\n",
"Finished execution after 19999 steps; No. of active walkers remaining = 4.0.\n"
]
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYgAAAEaCAYAAAAL7cBuAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJzt3Xl8XHW9//HXJ0uTdEua7k1bukGxtGChlF7hqqDYVi1UEBVXEEH04nXhVot6r17lCoiCovwUBAX1yqZYKKsCAhekpYVSWqCltKVLui/pnrZpPr8/zkk7Tc8kJ80smZn38/GYR2bO+Z6Zz5wk85nzXc3dERERaa4o2wGIiEjHpAQhIiKRlCBERCSSEoSIiERSghARkUhKECIiEkkJQrLGzH5tZv+Zwdf7kpmtN7OdZtYzU6+b8Pr/amaLY5S7yMyey0RMbRGet2Hh/TvM7OpUlG3L60pmlWQ7AEktM3sb6As0AAeA14HfA7e6e2MWQzuCu1+eqdcys1LgBmCCu8/P0Gs6cKy7vwXg7v8HjMzEa6eDu3dNR9lEZvY08Ed3v629zyXtpyuI/DTF3bsBxwDXAt8Cbs9uSFnXFygHXkv3C5mZvnhJXlCCyGPuvs3dHwQ+DnzOzEab2alhNcvBDzEzO9/MXgnvf9/M7jWz35vZDjN7zczGJZSdbmZLw32vm9lHEvZdZGbPm9mNZlZnZsvM7F3h9lVmtsHMPpdQ/rCqBzM718xeMbPt4WtMSnjeZeFrLjezT0W9XzMrM7Ofmdma8PazcNtxQFPVTp2ZPRVx7BAzczO7LDx2rZldmbB/vJm9EL6vtWb2SzPrlLDfzezfzGwJsMTMng13zQ+rSD5uZu81s9UJxwwys/vNbKOZbTazXyZ5X8eb2d/NbIuZLTazj0WVC8tebGZvhOdqmZl9MWHfe81stZldGf4u1prZxc1+Hzeb2cPh8bPNbHiz9zgi4eV6tKFs0/YeZvZQ+J63hvcHhvv+B/hX4JfhOftl8+cys8rwb3Ojma0ws++aWVG47yIze87MfhI+93Izm5zsXEkM7q5bHt2At4H3R2xfCXwpvP86MDlh31+BK8P73wfqgQ8CxcA1wKyEshcAAwi+XHwc2AX0D/ddRFC1dXF47NXh694MlAEfAHYAXcPydwBXh/fHA9uAs8PnrgGOB7oA24GRYbn+wAlJ3vsPgFlAH6A38E/gh+G+IYADJUmObdp/V/iaY4CNTecSOAWYQFAtOwR4A/hawvEO/B2oBioSto1IKPNeYHV4vxiYD9wYvl45cEbCeXwuvN8FWBWe0xLgZGBTC+fgQ8BwwID3ALuBkxNevyE8T6Xh73g30CPh97El/F2UAP8L3N3sPY44yrJNv+eewPlAZ6AbcB8wI+G4p4EvNHtPic/1e+CB8NghwJvAJQnnbT9waXh+vwSsASzb/5e5est6ALql+BeaPEHMAr4T3v8W8L/h/erwQ6LpQ/77wBMJx40C9rTweq8A54b3LwKWJOwbE/5z903Ythl4Z3g/8YPjFuDGiOfvAtSFHyoVrbz3pcAHEx5PBN4O7w8hXoI4PmHbj4Hbk5T/GvDXhMcOnNWsTEsJ4l8IEtAR8XB4gvg48H/N9t8CfC/m38MM4KsJr78n8TWBDQTtMk2/j9sS9n0QWBT1fo6i7NVJ4nsnsDXh8dMkSRAEH/p7gVEJ+74IPJ1w3t5K2Nc5PLZfJv738vGmKqbCUUPwjQ/gj8AUM+sKfIzgA2htQtl1Cfd3A+VNVVJm9tmwGqjOzOqA0UCvhPLrE+7vAXD35tuiGh0HEXzAH8bddxF8SF4OrA2rNI5P8h4HACsSHq8It7XFqqjjzey4sDpknZltB37E4e+7+bGtGQSscPeGVsodA5zWdL7Dc/4poF9UYTObbGazwuqoOoIP7sQ4Nzd7zd0c/vto/rtvqYG4LWWb4utsZreE1UPbgWeBKjMrbu1YgvfRiSN/xzVRMbn77vCuGrmPkhJEATCzUwn+iZ4DcPda4AXgI8BngD/EfJ5jgN8AVwA93b0KWEhQndFeqwiqRo7g7o+7+9kE1UuLwhiirCH4QG0yONzWFoOSHP+r8LWPdffuwLc58n23ZWrkVcBga71BexXwjLtXJdy6uvuXmhc0szLgL8BPCK7aqoBHIuLMpisJenKdFp7Hd4fbm2Js6RxuIqhCav47rk11kBJQgshjZtbdzD4M3E3QdXBBwu7fA98kqAb6a8yn7ELwD7wxfP6LCa4gUuF24GIze5+ZFZlZTdg429fMzjGzLgTVCzsJuu9GuQv4rpn1NrNewH8RXC21xX+G33JPIKj3vyfc3o2gLWRneAVzxAd0hPVAsv77LwJrgWvNrIuZlZvZ6RHlHgKOM7PPmFlpeDvVzN4RUbYTQVvPRqAhbKD9QIw4M6kbwVVknZlVA99rtj/pOXP3A8C9wP+YWbfwC8s3aPvvWGJSgshPM81sB8G3z+8Q9P+/uFmZvxJ8E/trWI3TKnd/HfgpwdXHeoLk8nwqAnb3F8MYbyRorH4mjK+I4FvnGoIqsvcAX07yNFcDc4FXgQXAy+G2tngGeAt4EviJu/8t3P4fwCcJGtl/w6HE0ZLvA3eGVUOH9TwKP+ymENStrwRWE1Sl0azcDoIP+U8QnIN1wHUEiSCq7L8TfIhuDeN9MEacmfQzoILgamAW8Fiz/T8HPhr2Qrop4vivEHSMWEZwRfwn4LfpC7ewWdiYIwXIzJYCX3T3J7IdS7aZ2RBgOVAao11ApCDoCqJAmdn5BNVFR4wJEBEBTbVRkCyYzmAU8BnvYNNviEjHoSomERGJpComERGJpAQhIiKRcroNolevXj5kyJBshyEiklNeeumlTe7eu7VyOZ0ghgwZwty5c7MdhohITjGzFa2XUhWTiIgkoQQhIiKRlCBERCSSEoSIiERSghARkUhKECIiEkkJQkREIuVkgjCzKWZ267Zt27IdiohI3srJBOHuM939ssrKymyHIiKSt3IyQYiISPopQYiISCQlCBERiaQEISIikZQgREQkkhKEiIhEUoIQEZFIShAiIhJJCUJERCIpQYiISCQlCBERiaQEISIikZQgREQkkhKEiIhEUoIQEZFIShAiIhJJCUJERCIpQYiISCQlCBERiaQEISIikZQgREQkkhKEiIhEUoIQEZFIShAiIhJJCUJERCIpQYiISCQlCBERiaQEISIikZQgREQkkhKEiIhE6jAJwsymmtlvzOwBM/tAtuMRESl0aU0QZvZbM9tgZgubbZ9kZovN7C0zmw7g7jPc/VLgIuDj6YxLRERal+4riDuASYkbzKwYuBmYDIwCLjSzUQlFvhvuFxGRLEprgnD3Z4EtzTaPB95y92Xuvg+4GzjXAtcBj7r7y8me08wuM7O5ZjZ348aN6QteRKTAtSlBmFmRmXVv52vWAKsSHq8Ot30FeD/wUTO7PNnB7n6ru49z93G9e/duZygiIpJMqwnCzP5kZt3NrAvwOrDYzKa14zUtYpu7+03ufoq7X+7uv27H84uISArEuYIY5e7bganAI8Bg4DPteM3VwKCExwOBNe14PhERSYM4CaLUzEoJEsQD7r4f8Ha85hzgWDMbamadgE8AD7bj+UREJA3iJIhbgLeBLsCzZnYMsD3Ok5vZXcALwEgzW21ml7h7A3AF8DjwBnCvu792NMGLiEj6mHvbLwbMrCT8oM8KM5sCTBkxYsSlS5YsyVYYIiI5ycxecvdxrZWL00jd18xuN7NHw8ejgM+lIMaj5u4z3f2yysrKNh87Y14tp1/7FEOnP8zp1z7FjHm1aYhQRCT3xaliuoOgOmhA+PhN4GvpCiidZsyr5ar7F1BbtwcHauv2cNX9C5QkREQilMQo08vd7zWzqwDcvcHMDqQ5rlh27m3gn0s3xS5/9cOvs2f/4aHv2X+A6x9fzNSxNakOT0Qkp8VJELvMrCdhzyUzmwBsS2tUMS3ftItP/mZ2u5+ntm5PCqIREckvcRLENwi6oQ43s+eB3sBH0xpVTMN6deF3l02IXf4Tt86K3B41ck9EpNC1miDc/WUzew8wkuCzdHE4FiJrEnoxMWFYz3Y/X3sGdYiI5KukCcLMzkuy6zgzw93vT1NMrXL3mcDMcePGXZqtGERE8l1LVxBTWtjnQNYShIiIpF/SBOHuF2cyEBER6VjiDJT7kZlVJTzuYWZXpzcsERHJtjgD5Sa7e13TA3ffCnwwfSFlx/4DjSl/To3aFpFcFqeba7GZlbn7XgAzqwDK0htWyxJ7MaXKsd95lPLSIrqWldKtvISuZSUHf3YtL6Fb+LNrWSldy0vo3rTv4P7ScH8JnUqKmDGvlmn3zWd/Y9BHqrZuD9Pumw+gQXkikhPiJIg/Ak+a2e8IGqc/D9yZ1qhacbS9mHp0LmXr7iN76FaUFvPl9w5n594GduxtYEd9Azvr97NzbwMrt+xm596GYF99AwcaW+8UW1ZSxN6GI69I9jc633/wNSUIEckJccZB/NjMFgDvIxgH8UN3fzztkaXB96acwLQ/z2f/gUMf8qXFxjXnjYn1oe3u1O9vZMfe/eysD5LGzvogqeysb2BHmFR27G3glmeWRT5H3Z6sDiEREYktzhUE7v4o8GiaY0m7piRw/eOLWVO3hwFVFUybODL2N3ozo6JTMRWdiunTreWyyRKEiEiuaGmg3HPufoaZ7eDwwcZGsIZ097RHlwZTx9ZkpIqnyCCqNqpI83qISI5oaRzEGeHPVr4rS5RkTRUxmjCAoAfU0V7piIikQqtVTGb2B3f/TGvb5HDFZhxIslrf9L+8St/u5fSvLKdvZTn9wvuVFaWY2cF1K5qmJm9atwLUA0pEMidOG8QJiQ/MrAQ4JT3h5I9kyQHgyUUb2LRzL82LlJUU0a+ynLV19exrNi5D61aISKa11AZxFfBtoMLMtjdtBvYBt2YgtqTSMQ4i1WqqKiLXmaipquD56Wex/0AjG3bsZd22+uC2vZ712+tZu62eFZvXRD6n1q0QkUxqqQ3iGjO7DrjN3T+fwZhalQuzuU6bOPKwaiIIxltMmzgSgNLiImqqKqipqjji2EdeXRt5BVJsauEWkcxpsYrJ3RvN7KRMBZNP2tOlNln1VEvVViIiqRanDWKWmZ3q7nPSHk2eOdoutckauHUFISKZFCdBnAl80cxWALs4NA7ixLRGVsB0BSEiHUGcBDE57VHIYZJdQRhw94srOa5fN47r242uZcGvT2MmRCQd4szFtALAzPoA5WmPSJJeKTgwPRwPATCwRwWVFSW8vmbHwaHumjVWRFIlzkC5c4CfAgOADcAxwBs0Gx8hqZOsi+yAqnLuvvRfWLx+B4vXbWfx+p08NH8NzdOJZo0VkVSIs2DQD4EJwJvuPpRgVtfn0xpVgZs2cSQVpcWHbasoLeabE49ncM/OnD2qL1ecdSy/uHDsEcmhiWaNFZH2itMGsd/dN5tZkZkVufs/wvERWZMLA+Xao72zzjZ5ZVUdJwzoTmlxkdopRKTNzFvpGWNmTwBTgWuBngTVTKe6+7vSH17Lxo0b53Pnzs12GFk19gd/i1wEqUnnTsUM6lHB0o27aEiYKbCitDj2Ohgikl/M7CV3H9dauThVTOcCe4CvAY8BS4Ep7QtPUuV7U06gtPjw8RGlxcYPzh3FzZ88mQtOGXhEcoBgbqfrHlsEaO1sEYkWpxfTLjPrB4wHtgCPu/vmtEcmsbRWHfWhE/vz+xdWRB67dls9E298hmWbdh1cZU8zx4pIkzi9mL4A/BfwFEFX/F+Y2Q/c/bfpDk7iaW3E9oAkvaK6lpUkvbrQzLEiEqeKaRow1t0vcvfPEUz1/a30hiWplKxX1NVTRx+RHJpo5lgRiZMgVgM7Eh7vAFalJxxJh6lja7jmvDHUVFVgBOMsmhqok83vZKB2CZECF6ebay0w28weIBjMey7wopl9A8Ddb0hjfJIiyaqhWhq13XQVoXYJkcIU5wpiKTADDo7JegBYC3QLb5LDotajiNLULiEihSNOL6b/zkQgkh1RCxsls6ZujwbciRSQOFVMkseiusnu3tcQOfjOgSvvm8+BRnWJFSkEShByRPvEjHm1R1xVlJUU4cC+hsbDjlWXWJH8FacNosMxsylmduu2bduyHUpeiur1dN35Jx6RHJqoS6xIfoozF9NNEZu3AXPd/YG0RBWT5mLKrOFXPZJ0KdSl13wwCxGJyNGIOxdTnCqmcuB44L7w8fnAa8AlZnamu3/t6MOUXNLSUqjujpmpEVskj8RJECOAs9y9AcDMfgX8DTgbWNDSgZJfki1kBHDmT55mWO8uPP/WZvaGVVFqxBbJbXHaIGqALgmPuwAD3P0AsDctUUmHFDVlR3lJEReMG8jgnl14atHGg8mhSdCIvSiTYYpIisS5gvgx8IqZPU0wA8O7gR+ZWRfgiTTGJh1MazPHDp3+cOQKd7V19XzhzjmMHdyDkwf34KRBlXTudOhPT9VSIh1Tq43UAGbWn2C6bwNedPc16Q4sDjVSdyynX/tUZBVU507F9KssZ9nGXQAUFxnv6N+NUwb3oNGde+euPuzKQ4sZiaRXKhupIaiK2hiWH2FmI9z92fYEKPknalR2RWkxP/pI8GG/ddc+5q3ayksrtvLyijrue2k1u/cdOYJbYytEOoY460FcB3ycoOdS09c8B5Qg5DCtVUH16NKJs47vy1nH9wWg4UAjx37n0chqqTUaWyGSdXGuIKYCI91dDdLSqtYWL0pUUlxEZUUpdXuOnNajsqI01aGJSBvF6cW0DNB/q6RFkuUokm4XkcyJcwWxm6AX05MkdGt1939PW1RSMOoiJgVsabuIZE6cBPFgeBNJOVUxiXRccdaDuDMTgUhhUhWTSMeVNEGY2b3u/jEzWwBHdjRx9xPTGlkLzGwKMGXEiBHZCkFSRFVMIh1XS1cQXw1/fjgTgbSFu88EZo4bN+7SbMci7TMgyfxORUXGH2etoKykiJ89sUSjrEWyIGmCcPe14c8VmQtHCk3U4LpOxUa/ynK+O2PhYWU1+Z9IZrXazdXMzjOzJWa2zcy2m9kOM9ueieAk/0UtTvTjj57EM9POpFfXTkeUbxplLSLpF3eyvinu/ka6g5HClGxw3ead+yLLa5S1SGbEGSi3XslBsmFAVUWbtotIasVJEHPN7B4zuzCsbjrPzM5Le2RS8M48vnebtotIasVJEN0JRlN/AJgS3jpczybJP/9YtDFy+4OvrOGlFVvZf6Axcr+IpEacgXIXZyIQkeaStTVsr2/g/F/9k4rSYsYN6cGEYT2ZMKyaMTVVdCqJ851HROJoaaDcN939x2b2C6IHymkuJkmrZGMk+lWW870Pj2L28i3MWrb5YK+mitJiTjmmBxOGVTNhWE9OHBgkDK1YJ3J0WrqCaGqY1pJtkhXJFiCaPul4Jo/pz+Qx/QHYsmsfLy7fzKxlQcL4yd/eBKC8tIhBPSpYvmk3DY3BdxyNpRCJL9aSox2VlhzNf0fz7X/rrn3MXr6F2cs384cXVhxMDolqqip4fvpZ6QpbpENL2ZKjZtYb+BYwCihv2u7u+u+StGvLAkRNenTpxKTR/Zg0uh93PP92ZBmNpRBpXZyBcv8L3AN8CLgc+BzB+tQiHV6ydoySYuPmf7zFn2avVNuESBJxunz0dPfbgf3u/oy7fx6YkOa4RFJi2sSRVJQWH7atU7FRRLB2dm3dHpxDbRMz5tVmJU6RjihOgmiad3mtmX3IzMYCA9MYk0jKJJvrqbpr2RFlNc+TyOHiVDFdbWaVwJXALwgGzn09rVGJpFBUO8bX73klsqzaJkQOafUKwt0fcvdt7r7Q3c9091PcXUuQSk5LNp+TGfzlpdXkcu8+kVSJ04tpKPAVYEhieXc/J31hiaRX1BiLspIi+nUv48r75nPfS6s4c2Qffv/CCjViS8GKU8U0A7gdmAlo8hvJC00f9M3HWJxz0gDunrOKH8xcyKxlWw6W1wA7KUStDpQzs9nuflqG4mkTDZSTdJlwzZOs21Z/xHYNsJN8kLKBcsDPzex7wN+AvU0b3f3ldsTXLmY2BZgyYsSIbIUgeW59RHIANWJLYYmTIMYAnwHO4lAVk4ePs8LdZwIzx40bd2m2YpD8lmyAnRYrkkISZxzER4Bh7v6esBfTmZpmQ/Jd1AA7gJ179zN0+sOcfu1TGlQneS9OgpgPVKU7EJGOpPkAu+7lQbLYtqdBI6+lYMSpYuoLLDKzORzeBqFurpLXEgfYnX7tU2yvP7zKqWnktXo1Sb6KkyC+l/YoRDq4ZI3TTVcS44f24NQh1Qzs0TnDkYmkT5wlR58xs2OAY939CTPrDBxZOSuSx5I1WpeVFPHQ/DXc9eLKoFxlOeOGVHPq0GpOHdKD4/p0o6jIMh2uSErEGUl9KXAZUA0MB2qAXwPvS29oIh1HstXtrjlvDFNOGsCidduZs3wLc1ZsZdayzTw4fw0AlRWljDumB+OGVDN+aA+tmy05JU4V078B44HZAO6+xMz6pDUqkQ4m2cjrpu0nDKjkhAGVXHT6UNydlVt2M+ftrUHSeHsLTy7aAARXHCcNqmJ8eJVx8uAqupWXHnwdrZ8tHUnskdRmNs/dx5pZCfCyu5+YmRCT00hqyRWbdu5l7ttbgqTx9hZeW7OdA41OkcE7+nfn1CHVuDv3zFlFfcOhGW2arlKUJCSVUjmS+hkz+zZQYWZnA18mmJdJRGLq1bWMSaP7M2l0fwB27W1g3so6Xnx7C3OWb+HuOSup33/kVGfqKSXZFCdBTAcuARYAXwQeAW5LZ1Ai+a5LWQlnHNuLM47tBcD+A40c951Hibqe1/Qeki0tJggzKwbudPdPA7/JTEgihae0uEjTe0iH02J3Cnc/APQ2s04ZikekYEVN71FRWsy0iSOzFJEUujhVTG8Dz5vZg8Cupo3ufkO6ghIpRId6Si2itq6ezp2K+dFH1EAt2ROnQ/Ya4KGwbLeEm4ik2NSxNTw//X2M7NuVfQ2NfP2eVzQxoGRNnJHU/52JQEQkMGNeLUs37qKhMWiy1mp2ki0a0inSwVz/+OKDyaFJU3dXkUxSghDpYFqaGHDGvFq21+/PcERSqJImCDO7Lvx5QebCEZFk3VqLDL52zyuM++ETfP6OOdw7dxV1u/dlODopJEmn2jCzBcDJwGx3PzmjUcWkqTYkH82YVxs5MeCPpo5mcK8uPLpgLY8uXEdt3R6Ki4x3De/JpNH9+MCofvTuVpbFyCVXxJ1qo6UEcT3BLK5dgN2AEaxFbYC7e/fUhXt0lCAkX7U2aZ+7s7B2O48sXMtjC9exfNMuigxOHVLN5NH9mDS6P/0qy7P4DqQja3eCSHiiB9z93JRFlkJKECJBsli8fgePLFjHYwvX8ub6nQCcPLiKyaP7M2l0PwZVayEjOSRlCSJ8sr7AqeHD2e6+sZ3xpYQShMiR3tqwk8cWBtVQr63ZDsCYmkomje7H5NH9eHX1Nk0pXuBSeQVxAfAT4GmC6qV/Baa5+59TEGe7KEGItGzl5t08GiaLV1bVAYfqiptoSvHCk8oEMR842903hI97A0+4+0kpibQdlCBE4ltTt4fJP3+WbXsajthXU1XB89PPykJUkg1xE0SccRBFTckhtDnmcSLSgQyoqmB7RHIATSku0eJ80D9mZo+b2UVmdhHwMMGaECKSY5KOsSgyFtZuy3A00tG1miDcfRpwC3AicBJwq7t/K92BiUjqRU0pXlZSRJdOxZz/q39y/8ursxSZdERxpvvG3e8H7k9zLCKSZoemFD+8F9PpI3pxxZ9e5hv3zmf+qjq+86FRdCpRTXKhi9XNtaNSI7VI6jQcaOTaRxdx23PLOXVID27+5Mn06a7BdvkolY3UGWFmw8zsdjPLevdZkUJUUlzEdz88ipsuHMvC2u18+BfP8dKKLdkOS7IoVhXT0TKz3wIfBja4++iE7ZOAnwPFwG3ufq27LwMuUYIQya5zThrAcX278sU/vMQnbp3FuScN4IVlm1lTV6+BdQXmqK4gzOz7MYveAUxqdmwxcDMwGRgFXGhmo44mDhFJj+P7defBK87g2D5d+fPLtdTW1eMcWrxIK9wVhqOtYnopTiF3fxZofo06HnjL3Ze5+z7gbqBDzvUkUsgqK0qp23Pk2hNavKhwHFWCcPeZ7XjNGmBVwuPVQI2Z9TSzXwNjzeyqZAeb2WVmNtfM5m7c2CGmhBLJW2vr6iO3a2BdYWg1QZjZQDP7q5ltNLP1ZvYXMxvYjte0iG3u7pvd/XJ3H+7u1yQ72N1vdfdx7j6ud+/e7QhDRFqTbGBdsu2SX+JcQfwOeBDoT/Dtf2a47WitBgYlPB4IrGnH84lImkQNrKsoLWbaxJFZikgyKU6C6O3uv3P3hvB2B9Cer+5zgGPNbKiZdQI+QZCARKSDmTq2hmvOG0P/cPGhyooSzfxaQOIkiE1m9mkzKw5vnyaYsK9VZnYX8AIw0sxWm9kl7t4AXAE8DrwB3Ovurx3tGxCR9Jo6toYXrnof1V068cEx/ZUcCkiccRCfB34J3Egwjfw/w22tcvcLk2x/hHZM+GdmU4ApI0aMONqnEJE2Gt67C0s37Mp2GJJBcSbrW+nu57h7b3fv4+5T3X1FJoJrIaaZ7n5ZZWVlNsMQKSjDe3dl6cad2Q5DMijpFYSZ/VcLx7m7/zAN8YhIBzW8d1fu3rWKut37qOrcKdvhSAa0dAWxK+IGcAmg6b5FCsz6HcGYiLE/+DunX/uURlMXgKRXEO7+06b7ZtYN+CpwMcHI558mO05E8s+MebX84YWgZjlxyg1AjdZ5rMU2CDOrNrOrgVcJksnJ7v6tZkuQikieu/7xxextaDxsm6bcyH9JE4SZXU8wZmEHMMbdv+/uWzMWWQvMbIqZ3bptm5ZIFMmEZFNr1Nbt4ZpH3uCpRevZXn/kvE2S25IuGGRmjcBeoIHgqvLgLoJG6u7pD69lWjBIJDNOv/YpaiOSRKfiIhxn/wGnyGDUgO5MGNqT04b1ZPyQaio7l2YhWmlN3AWDWmqD6DCLCYlIdk2bOJKr7l/Anv0HDm6rKC3mmvPGMGl0P15euZVZy7Ywe9lmfj9rBbc9txyzYNrwCcOqOW1oT04bWk2PLur9lEu05KibFGayAAAJY0lEQVSIxDJjXu0Ra1lHNVDX7z/A/FV1zF6+hVnLNvPyyq3U7w/aL0b27cZpw6qZMKwn44dW06trWabfhhD/CkIJQkTSal9DI6+uPpQw5r699eCVyIg+XTltaDWnDevJhKHVWgM7Q5QgRKRD2n+gkQW125i9bAuzl29mzvIt7NoXJIxhvbpwWlOV1LBq+ldqWvF0UIIQkZzQcKCR19ZsZ/byzcxetoUXl29hx94GAI7p2Tm4wggTxsAenbMcbX7I6wSRMFnfpUuWLMl2OCKSQgcanTfWbmfWss3MXh4kjG3h0qcDe1QcTBYThvZkUHUFZlFrkElL8jpBNNEVhEj+a2x0Fq3bcfAKY/byzWzdHSSM/pXlTBjW82A7xpCenZUwYlCCEJG81NjoLNmw87CEsWnnPgD6dCsLGrzDdozhvbsoYURQghCRguDuLN24MxiHsTwYi7Fhx14AenUtC68ugq61x/bpqoRBCgbKiYjkAjNjRJ9ujOjTjU9POAZ3Z/mmXQeTxezlW3h4wVoAqrt0YvyQQwljZN9uFBUpYSSjBCEiecXMGNa7K8N6d+XC8YNxd1Zt2cOsZZuZFVZLPfbaOgCqOpdy6pBqThsaJIx39O9OcZHFHhSY75QgRCSvmRmDe3ZmcM/OfOzUQQCs2rL7sCuMv7++HoBu5SUM6lHBm+t30tAYVL8X8tTmShAiUnAGVXdmUHVnPnrKQCCYrbap0fu+l1ZzoPHwttmmqc0LLUHk5IR8mu5bRFJpQFUFHxk7kGvPP5HGxuiOO8mmPM9nOZkg3H2mu19WWVmZ7VBEJM8MqIqe3sOBL9w5h0Xrtmc2oCzKyQQhIpIu0yaOpKK0+LBt5aVFfGhMP2Yv38Lkn/8fX7/nFVZu3p2lCDNHbRAiIgma2hmiejHV7d7Hr55Zyh3Pv81Dr67hwvGDueKsEfTplp+z0GqgnIhIG63bVs9NTy3hnjmr6FRcxOfPGMJl7x5OZUVurKCnkdQiImm2fNMubvj7m8ycv4bKilK+/N7hfO5dQyhvVkXV0ShBiIhkyMLabVz/+GKeeXMjfbuX8dX3HccF4wZSWtwxm3njJoiOGb2ISA4ZXVPJnZ8fz92XTaCmqoJv/3UBZ9/wDDPnr0nabTYXKEGIiKTIhGE9+cuX3sVtnx1HWUkxX7lrHlN++RxPL95ALtbW5GQVkxYMEpGO7kCj8+D8Wn76tzdZvXUPpw2t5puTjueUY3pkOzS1QYiIdAT7Ghq568WV/OKpt9i0cy/vf0dfpk0cych+3bIWkxKEiEgHsmtvA797fjm3PLOMnfsa+Mg7a/j62ccxqDrz62wrQYiIdEBbd+3j188s5Y5/vk2jO5867Rj+7cwR9O5WlrEYlCBERDqwddvq+fmTS7h37irKSoq45IyhXPruYXQvT/9gOyUIEZEcsGzjTm74+5s89OpaqjoHg+0++y/pHWynBCEikkMSB9v1617OV99/LBecMpCSNAy200A5EZEckjjYbkBVOVfdv4AP3PgsD7+6NmuD7XQFISLSwbg7T7yxgesfX8Sb63cyuqY735x4PJt37uUnf3uz3Wtlq4pJRCTHHWh0Hnillhv+Hgy2KzJIvJioKC3mmvPGtDlJqIpJRCTHFRcZ5508kCevfA+VFaU0r2lqWis7XXIyQWhNahEpJGUlxWzfsz9yXzrXys7JBKE1qUWk0CRbKzvZ9lTIyQQhIlJootbKrigtZtrEkWl7Ta1JLSKSA1paKztdlCBERHLE1LE1aU0IzamKSUREIilBiIhIJCUIERGJpAQhIiKRlCBERCRSTs/FZGYbgTogakh1ZbPtzR/3AjalL7oWY0nXsXHKtlQmal+y8jq/bS8T91xGbdP5bb2Mzm/8sse4e+9Wj3D3nL4Bt8bZHvF4brZjTPWxccq2VCZqn85ves9v3POu86vzm4nz2/yWD1VMM2NuT1YuE9rz2m05Nk7ZlspE7dP5bVvZtp7fZNt1ftteRuc3xa+T01VM7WFmcz3GdLdydHR+00vnN710fgP5cAVxtG7NdgB5Tuc3vXR+00vnlwK+ghARkZYV8hWEiIi0QAlCREQiKUGIiEgkJYiQmXUxszvN7Ddm9qlsx5NvzGyYmd1uZn/Odiz5yMymhn+7D5jZB7IdT74xs3eY2a/N7M9m9qVsx5MpeZ0gzOy3ZrbBzBY22z7JzBab2VtmNj3cfB7wZ3e/FDgn48HmoLacX3df5u6XZCfS3NTG8zsj/Nu9CPh4FsLNOW08v2+4++XAx4CC6f6a1wkCuAOYlLjBzIqBm4HJwCjgQjMbBQwEVoXFDmQwxlx2B/HPr7TdHbT9/H433C+tu4M2nF8zOwd4Dngys2FmT14nCHd/FtjSbPN44K3wG+0+4G7gXGA1QZKAPD8vqdLG8ytt1Jbza4HrgEfd/eVMx5qL2vr36+4Puvu7gIKpgi7ED8IaDl0pQJAYaoD7gfPN7Fdkd9h9ros8v2bW08x+DYw1s6uyE1peSPb3+xXg/cBHzezybASWJ5L9/b7XzG4ys1uAR7ITWuYV4prUFrHN3X0XcHGmg8lDyc7vZkAfXO2X7PzeBNyU6WDyULLz+zTwdGZDyb5CvIJYDQxKeDwQWJOlWPKRzm966fyml85vgkJMEHOAY81sqJl1Aj4BPJjlmPKJzm966fyml85vgrxOEGZ2F/ACMNLMVpvZJe7eAFwBPA68Adzr7q9lM85cpfObXjq/6aXz2zpN1iciIpHy+gpCRESOnhKEiIhEUoIQEZFIShAiIhJJCUJERCIpQYiISCQlCJGYzKzKzL4c3h+gtS0k32kchEhMZjYEeMjdR2c5FJGMKMTJ+kSO1rXAcDN7BVgCvMPdR5vZRcBUoBgYDfwU6AR8BtgLfNDdt5jZcIK1BnoDu4FL3X1R5t+GSDyqYhKJbzqw1N3fCUxrtm808EmC9QT+B9jt7mMJpnL4bFjmVuAr7n4K8B/A/8tI1CJHSVcQIqnxD3ffAewws20cWlNkAXCimXUF3gXcZ3ZwRumyzIcpEp8ShEhq7E2435jwuJHg/6wIqAuvPkRygqqYROLbAXQ7mgPdfTuw3MwuAAiXCD0plcGJpJoShEhM4ap4z5vZQuD6o3iKTwGXmNl84DW0Vrd0cOrmKiIikXQFISIikZQgREQkkhKEiIhEUoIQEZFIShAiIhJJCUJERCIpQYiISCQlCBERifT/AacaE7GVt6VmAAAAAElFTkSuQmCC\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# The following function runs the walkers as agents till either all walkers are annihilated\n",
"# or the prescribed number of temporal steps is over. This is only done in 1d. \n",
"# To use this for your Project 2 solution, you'll need to extend the code to 2d and 3d.\n",
"# This you should do by writing different pieces of code -- do not try to make the same functions\n",
"# general enough to deal with all dimensions simultaneously. You may also need to think about\n",
"# how to speed up the code, specifically how to make the internal comparison loop (which \n",
"# checks if two walkers share the same position) faster. For this, you may want to sort the walkers\n",
"# by their activity status, so that one needs to compare the position of the currently analyzed\n",
"# walker with the positions of only other active walkers. However, leave this modification \n",
"# till the very end -- and first make the code work in different dimensions, and get it to \n",
"# answer the questions that the Project poses (that is, average over many runs and output\n",
"# the average particle number at a given time)\n",
"\n",
"N = 2*int(100) # Number of walkers; we need to make sure that the number is even, so that \n",
" # the walkers can annigilate each other\n",
"W = 100 # the spread along the x axis of where the walkers will be located\n",
"T = 20000 # simulation duration\n",
"\n",
"# initial positions of N walkers are integers pulled out of a Gaussian with std.dev. of W\n",
"position = np.round(W*nprnd.randn(N))\n",
"activity = np.ones(N) # originally all walkers are active\n",
"N_active = N # initial number of active walkers\n",
"\n",
"N_remaining = N # these will be the output arrays, recording the number of remaining walkers\n",
"t_events = 0 # and the times when this number changes\n",
"\n",
"for i in np.arange(T):\n",
" for n1 in np.arange(N):\n",
" # if the walker is active\n",
" if (activity[n1]>0):\n",
" # then move walker\n",
" position[n1] = position[n1] + (2*(nprnd.rand(1)>0.5)-1)\n",
" # now loop over all other walkers and see if two walkers are on the same site\n",
" for n2 in np.arange(N):\n",
" # if the second walker is active, is not the same as the first, \n",
" # and has the same position as the first\n",
" if ((activity[n2]>0)&(position[n1]==position[n2])&(n1!=n2)):\n",
" # then deactivate both walkers\n",
" activity[n1] = 0\n",
" activity[n2] = 0\n",
" N_active = np.sum(activity) # how many walkers remain active?\n",
" # output progress tracking\n",
" print('Time step = '+ str(i)+'; No. of active walkers = ' + str(N_active)+'.')\n",
" # append the number of walkers and the time stamp to the output variables\n",
" N_remaining = np.hstack((N_remaining, N_active)) \n",
" t_events = np.hstack((t_events,i))\n",
" break # do not check for more position coincidences if \n",
" # one coincidence was found (breaks for n2 loop)\n",
"\n",
" if (N_active==0): # if no more active walkers\n",
" break # stop running the time loop over i; exit the simulation\n",
"\n",
"print('Finished execution after '+str(i)+' steps; No. of active walkers remaining = ' + str(N_active)+'.')\n",
"\n",
"plt.loglog(t_events, N_remaining, '-o')\n",
"plt.xlabel('time')\n",
"plt.ylabel('No. of remaining particles')\n",
"plt.title('Dynamics of particle annihilation')\n",
"plt.show()\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
">### Your turn:\n",
"Use the code above and make the necessary improvements to it, and then use it to answer questions posed in Project 2."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Analysis for Project 3: biochemical bistability\n",
"\n",
"Before solving the actual, rather complex, problem in this Project, let's first deal with a simpler, toy problem. \n",
"Suppose proteins in a cell (or these could be other types of particles, such as molecules in a simpler chemical reaction, or nuclei of a certain chemical element, or even people with some attribute, such as infected by a disease) are produced at a certain constant rate $r$ randomly. They disappear similarly randomly, at some fixed rate $\\alpha$ per existing particle. This is known as the *birth-death process*. How do we model the number of individuals in the system, or the probabilities of this number? \n",
"\n",
"If we forgo the stochastic nature of birth and death processes, then the deterministic equation describing the mean number of particles in the system is \n",
"$$\\frac{dn}{dt}=\\alpha-rn.$$ How do we generalize this to account for the randomness? There are multiple ways, and we will consider two.\n",
"\n",
"#### Stochastic Simulations Approach (SSA)\n",
"This is a stochastic system, so that every time that we simulate it, the result is likely to be different. The system state is specified by a single number $n$, the number of protein molecules (or other types of particles), which changes with time. There are two types of *reaction* events that can lead to the change: the creation and the destruction of one particle at a time. The creation happens with the propensity of $\\alpha$ per unit time, and the destruction with the propensity $rn$, which is the destruction rate per particle times the current number of particles. The total propensity for *any* reaction to happen is thus $p_{\\rm tot}=\\alpha+rn$. If we are dealing with real chemical reactions in a well-mixed container, then it is known that the distribution of times between two successive reaction events is exponential, with the mean equal to the inverse of the total propensity (for non-chemical systems, the exponential distribution between the events is often a surprisingly good approximation too). This immediately suggests a way of simulating this system. We start at time $t$ with $n$ particles. We generate an exponentially distributed random number $\\Delta t$ with the mean $1/(\\alpha+rn)$, that is, $\\Delta t \\sim {\\cal E}\\left(\\frac{1}{p_{\\rm tot}}\\right)$. This will correspond to the waiting time to the next reaction event happening. We thus increment the time $t\\to t+\\Delta t$. Now we need to decide which of the two reactions will happen at that time? Clearly, the reaction with the higher propensity will have a higher chance to happen. So we generate a binary random number with the probability of 0 given by $\\alpha/(\\alpha+rn)$, and the probability of 1 given by $1-P(0)= rn/(\\alpha+rn)$. If the generated number is 0, it means that the creation event happened, and we change $n\\to n+1$. If the number is 1, then a particle was destroyed, and so we change $n\\to n-1$. We then continue by generating the next reaction event time and the next reaction event type, and so on. \n",
"\n",
"This method of generating a single random trajectory of a state of the system with time is known as Gillespie or the *stochastic simulation algorithm (SSA)*. One typically generates many equivalent random trajectories and then calculates averages of these many realizations to find means or variances of the number of particles at any time. The code below has an SSA simulation of this simple birth-death system, showing diversity of the random trajectories that can be realized. The algorithm is easy to update for many different particle types -- the state of the system is then described by the set of numbers of particles of each species. It is also easy to account for many types of reactions: the total propensity for all reactions is the sum of all propensities, and the identity of a reaction event is determined by drawing a multinomial random number, with the probability of each outcome proportional to its propensity.\n",
"\n",
"Importantly for this lecture, SSA is a type of an agent-based simulation. We have a single agent -- the system -- and the state of the agent, $n$, is changed according to some probabilistic rules. It is easy to extend such algorithms to more complicated scenarios, where the state is given not just by the number, but also by the physical position of the individual particles.\n"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# The following code implements the SSA solution for the simple\n",
"# birth-death toy process. To use this code for this Project, you will need to change the\n",
"# propensity of birth to be A0 + A1*n**2/(1+(n/n0)**2). You will then need to play with \n",
"# parameters of the simulation (A0, A1, n0, and r) until you are able to find parameters that \n",
"# create the two resuested stable states. After that you will need to simulate the system\n",
"# multiple times and study the statistics of transitions between the stable states, if such\n",
"# transitions happen.\n",
"#\n",
"# You may also need to change the code to execute not for a given number of reaction events,\n",
"# but for a certain duration of time.\n",
"\n",
"N_events = 100 # How many reaction events (birth and death events) to simulate\n",
"N_trials = 10 # How many different simulation runs to produce\n",
"a = 10.0 # birth rate\n",
"r = 1.0 # death rate\n",
"\n",
"# initializing the output\n",
"N_part = np.zeros((N_events, N_trials)) # N_parts[i] will be the number of particles after reaction event i\n",
"t_events = np.zeros((N_events, N_trials)) # t_events[i] will be the time of the reaction event i\n",
" # by convention, the 0'th event happens at t=0, and we will start with 0 particles\n",
"\n",
"for j in range(N_trials): # simulate N_trial random trials\n",
" for i in range(1, N_events): # with each simulation running for N_events events\n",
" prop_birth = a # propenisty of birth\n",
" prop_death = N_part[i-1, j]*r # propensity of death is given by r*(# of particles in run j at the\n",
" # current, i-1'th, time)\n",
" prop_tot = prop_birth + prop_death # total propensity\n",
" prob_birth = prop_birth / prop_tot # probability that the next event will be birth\n",
" which_event = (nprnd.random(1) < prob_birth) # randomly generate identity of the next event\n",
" if which_event: # if birth, \n",
" N_part[i, j] = N_part[i-1, j] + 1 # then increase the # of particles\n",
" else:\n",
" N_part[i, j] = N_part[i-1, j] - 1 # otherwise decrease it \n",
"\n",
" # now generate the time to the next reaction from the exponential distribution with \n",
" # the mean of 1/(total propensity) and increment the time\n",
" t_events[i, j] = t_events[i-1, j] + nprnd.exponential(1)*(1/prop_tot)\n",
"\n",
"plt.plot(t_events, N_part, '-')\n",
"plt.xlabel('time')\n",
"plt.ylabel('number of particles')\n",
"plt.title('Individual trajectories in the birth-death process')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
">### Your turn and Verification\n",
"To verify the simulation, we can look back to our deterministic chemical kinetics version of this system. Setting $dn/dt$ to zero in the equation above, we get a theoretical prediction for the steady state concentration of the protein is $\\left = \\frac{\\alpha}{r}$. Thus to verify the SSA code, we can calculate the mean of the simulated trajectories at large $t$. Does the mean agree with the theoretical prediction? Remebering our lecture about Random Walks, what should the variance of $n$ be as a function of the mean? Do the simulations agree with this prediction?\n",
"\n",
">Your turn\n",
"Change the code above to model positive auto-regulation for protein production. Then look for parameters that would achieve the required results. To help you look, consider that the deterministic chemical kinetics version of this system is \n",
"$$\\frac{dn}{dt}= A_0 + \\frac{A_1n^2}{1+(n/n_0)^2} - rn.$$\n",
"Steady states for this dynamics will be given by $A_0 + \\frac{A_1n^2}{1+(n/n_0)^2} - rn=0$. Sketch the left hand sizde of this algebraic equation to understand under which conditions it will have multiple solutions."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
">#### Track 2: Master Equation and the dynamics of the probability distribution \n",
"Another way of studying stochastic chemical kinetics systems relies on our observation that sometimes the same processes can be described as cellular automata or as agent-based processes. We will illustrate this here using the toy birth-death system, but similar analysis can be done for more complicated systems, including the auto-regulating protein. \n",
"\n",
">While the birth-deatch process is a stochastic system, with different outcomes for every simulation run, there's a very special cellular automaton that allows us to simulate the system *deterministically*. Specifically, let each cell of the cellular automaton represent a different value of $n$, the number of particles in the system. The state of each cell will be denoted by $P(n)$, and it will represent the probability that the system at the time $t$ has exactly $n$ particles. What are the rules by which this cellular automaton evolves?\n",
"\n",
">These rules for this cellular automaton are defined by what's called the *master equation*. The probability of being in the state $n$ changes with time. There are four ways, four rules, that can change it. First, starting in the state $n$, a new particle may get created, resulting in $n+1$ particles. This has the propensity of $\\alpha$, and leads to a decrease of $P(n)$. Second, starting in the state $n$, a particle may be destroyed with the propensity $rn$, resulting in $n-1$ particles. This also decreases $P(n)$, since the system leaves this state. Since both of these processes can only happen if the system has $n$ particles, it means the total rate of negative change of $P(n)$ is $-(\\alpha+rn)P(n)$. Two other rules increase the probability $P(n)$. Starting with $n-1$ particles, one can create one. This has a positive rate of change of the probability of having $n$ particles, $\\alpha P(n-1)$. Finally, starting with math $n+1$ particles, one can get destroyed. Since this ends in the state $n$, this has a positive effect on $P(n)$ particles, $r(n+1) P(n+1)$. \n",
"\n",
">Putting this all together, we get: \n",
"$$\\frac{dP(n)}{dt}=-P(n)(rn+\\alpha)+P(n+1)r(n+1)+P(n-1)\\alpha,$$\n",
"and for $n=0$, this changes to\n",
"$$\\frac{dP(0)}{dt}=-P(0)\\alpha+P(n+1)r(n+1)$$\n",
"because particles cannot be destroyed there. This is a set of coupled ordinary differential equations that describes the temporal evolution of the set of probabilities $P(0),P(1),P(2),\\dots$. It is collectively known as the *master equation* (even though these are many equations). If we discretize time, and use the usual Euler, RK2, odeint, or any other method of solving these equations, we will transform this system into a deterministic cellular automaton, which solves for probabilities of having $n$ particles at discrete time steps. \n",
"\n",
">The script below solves the master equation for the evolution of probability in the birth-death system."
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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cOLECTzyyCPs4ns0rrjiCtxzzz2Ym5vD/Pw8Dhw4EBF0ctddd8Hn8+G1117Dn//8ZzYfzm63o7y8HBqNBkeOHMFjjz0maizRqKmpwfj4OHw+X8jr1157Le677z68//77rAeBD1dccQV+9KMfYWRkBA6HA7fffjsuv/xy3tF/NTU1sFgsbEBMIrZu3Yri4mJ873vfg9vtBsMwOH78OI4ePRpzmxdffBF///vf4fP58M1vfhN9fX28Lbtkr69w+vv7oVKp8JOf/ASBQAB//OMfceTIEfb9G2+8EQ8++CAGBgZACIHT6cQLL7wAu90Op9MJhUKBqqoqAMAjjzwSEtwR67dMllRd39dffz0eeeQRvPLKKwgGg5iYmMCpU6dQV1eHj3/847j11lths9kQDAZhMBjwt7/9DQDw9NNPY3x8HMAZj4hCoYBSqcTRo0cxMDAAv9+PwsJCaDQaKJVKUd81l1iRwnfxxReH5PFxJyMqPJOTk7jooovY1z/2sY/h7rvvxmc/+1nU1dXBYDDgiSeeiLr/W265BWq1GjU1Ndi9ezeuuuqqkPf379+P3bt3o7S0FE899VTIe2q1Gs899xxeeuklVFZW4stf/jJ++9vfYs2aNUl/z66uLvzv//4v/uu//guVlZV4/vnn8fzzz0OtVvPaft++ffj973+PsrKyqHl+4VxyySX4f//v/2HXrl0oLi7GOeecg5deeinuNueffz46OjrwsY99DF/72tfw8Y9/POZn77jjDmzZsgXr169HT08PNm3aFJIHVltbi7KyMtTX1+Oqq67Cgw8+yJ63//mf/8Gdd96JoqIiHDhwAJdddpmosUTjggsuwLp161BbW4vKysqQ82IymXDJJZeEuGITcd111+Gaa67BRz7yEbS2tkKj0eCnP/0p7+3XrFmDK664Am1tbSgtLU3oulUqlXj++efx7rvvorW1FZWVlbjhhhviCueVV16Jb33rWygvL8fbb78dEkmbiOuvvx4ffPABSktL8ZnPfIb3dhS1Wo0//vGPOHjwIMrKyvDkk0/iP//zP9n3t2zZgoceegg333wzysrK0NHRgYMHDwIAuru7ceutt6K/vx81NTV4//338eEPf5jdNtZvmSypur63bt2KRx55BLfccgtKSkpCImh/+9vfwufzobu7G2VlZfjc5z6HqakpAMDRo0fR19cHvV6PnTt3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\n",
"text/plain": [
""
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"from scipy.integrate import odeint # importing functionf for solving ODEs\n",
"from mpl_toolkits.mplot3d import Axes3D # and for suface plotting\n",
"from matplotlib import cm\n",
"\n",
"maxn = 20 # the simulation requires us to choose what will be the maximal n we will track\n",
"p = np.zeros(maxn) # initializing p(n)\n",
"p[0] = 1 # for consistency with the SSA case above, at time t=0, there is exactly 1 particle,\n",
" # so that p[0]=1\n",
"t = np.arange(10) # we will simulate for 10 time points, t=0...9\n",
"n = np.arange(maxn) # create value of n corresponding to each p[n]\n",
"\n",
"# this function defines the right hand side of the dP/dt=... equation, as described above\n",
"def dpdt(p, t, a, r):\n",
" dpdt = 0*p # initializing the derivatives array\n",
" maxn = p.size # maximum number of particles read out from the size of p \n",
" n = np.arange(maxn) # setting values of n for each cell of p\n",
" dpdt[1:maxn] = a*p[0:maxn-1] # increase of p[n] due to creation from n-1\n",
" dpdt[0:maxn-1] = dpdt[0:maxn-1] + r*n[1:maxn]*p[1:maxn] # increase of p[n] due to destruction from n+1\n",
" dpdt = dpdt - a*p # decrease in p[n] due to creation from n\n",
" dpdt = dpdt - r*n*p # decrease in p[n] due to destruction from n\n",
" return dpdt\n",
"\n",
" \n",
"pp = odeint(dpdt, p, t, args=(a, r)) # solve for the evolution of probability\n",
"\n",
"# plotting \n",
"T, N = np.meshgrid(t, n)\n",
"ax = Axes3D(plt.figure())\n",
"ax.plot_surface(T, N, np.transpose(pp),cmap=cm.coolwarm)\n",
"plt.title('Evolution of the probability for the birth-death process')\n",
"plt.xlabel('time')\n",
"plt.ylabel('particle number')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
">### Track 2: Your turn and verification \n",
"Compare the mean and the variance of the solved probablity distribution in the cell above with the results of the SSA approach. The two methods must give the same results. Visually, they do: most of the individual trajectories concentrate where the probability is expected to be large. But it's always nice to compare things quantitatively.\n",
"\n",
">### Your turn \n",
"Change the code above to solve the auto-regulated gene problem isntead of the toy birth-death problem.\n",
"\n",
">### You turn \n",
"This is the first time we encounter surface plots. Figure out how to change the plot above to make it into a 2-d color intensity plot."
]
},
{
"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.7.1"
}
},
"nbformat": 4,
"nbformat_minor": 2
}