{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "\n", "
\n", " \n", " \"QuantEcon\"\n", " \n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Introductory Examples" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Contents\n", "\n", "- [Introductory Examples](#Introductory-Examples) \n", " - [Overview](#Overview) \n", " - [Example: Plotting a White Noise Process](#Example:-Plotting-a-White-Noise-Process) \n", " - [Example: Variations on Fixed Points](#Example:-Variations-on-Fixed-Points) \n", " - [Exercises](#Exercises) \n", " - [Solutions](#Solutions) " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Overview\n", "\n", "We’re now ready to start learning the Julia language itself" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Level\n", "\n", "Our approach is aimed at those who already have at least some knowledge of programming — perhaps experience with Python, MATLAB, Fortran, C or similar\n", "\n", "In particular, we assume you have some familiarity with fundamental programming concepts such as\n", "\n", "- variables \n", "- arrays or vectors \n", "- loops \n", "- conditionals (if/else) " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Approach\n", "\n", "In this lecture we will write and then pick apart small Julia programs\n", "\n", "At this stage the objective is to introduce you to basic syntax and data structures\n", "\n", "Deeper concepts—how things work—will be covered in later lectures\n", "\n", "Since we are looking for simplicity the examples are a little contrived\n", "\n", "In this lecture, we will often start with a direct MATLAB/FORTRAN approach which often is **poor coding style** in Julia, but then move towards more **elegant code** which is tightly connected to the mathematics" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Set Up\n", "\n", "We assume that you’ve worked your way through [our getting started lecture](https://lectures.quantecon.org/getting_started.html) already\n", "\n", "In particular, the easiest way to install and precompile all the Julia packages used in QuantEcon\n", "notes is to type `] add InstantiateFromURL` and then work in a Jupyter notebook, as described [here](https://lectures.quantecon.org/getting_started.html)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Other References\n", "\n", "The definitive reference is [Julia’s own documentation](https://docs.julialang.org/en/v1/)\n", "\n", "The manual is thoughtfully written but is also quite dense (and somewhat evangelical)\n", "\n", "The presentation in this and our remaining lectures is more of a tutorial style based around examples" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example: Plotting a White Noise Process\n", "\n", "To begin, let’s suppose that we want to simulate and plot the white noise\n", "process $ \\epsilon_0, \\epsilon_1, \\ldots, \\epsilon_T $, where each draw $ \\epsilon_t $ is independent standard normal" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Introduction to Packages\n", "\n", "The first step is to activate a project environment, which is encapsulated by `Project.toml` and `Manifest.toml` files\n", "\n", "There are three ways to install packages and versions (where the first two methods are discouraged, since they may lead to package versions out-of-sync with the notes)\n", "\n", "1. `add` the packages directly into your global installation (e.g. `Pkg.add(\"MyPackage\")` or `] add MyPackage`) \n", "1. download an `Project.toml` and `Manifest.toml` file in the same directory as the notebook (i.e. from the `@__DIR__` argument), and then call `using Pkg; Pkg.activate(@__DIR__);` \n", "1. use the `InstantiateFromURL` package " ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "hide-output": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001b[32m\u001b[1mActivated\u001b[0m /home/qebuild/repos/lecture-source-jl/_build/website/jupyter/Project.toml\u001b[39m\n", "\u001b[36m\u001b[1mInfo\u001b[0m quantecon-notebooks-julia 0.1.0 activated, 0.2.0 requested\u001b[39m\n" ] } ], "source": [ "using InstantiateFromURL\n", "github_project(\"QuantEcon/quantecon-notebooks-julia\", version = \"0.2.0\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If you have never run this code on a particular computer, it is likely to take a long time as it downloads, installs, and compiles all dependent packages\n", "\n", "This code will download and install project files from GitHub, [QuantEcon/QuantEconLecturePackages](https://github.com/QuantEcon/QuantEconLecturePackages/)\n", "\n", "We will discuss it more in [Tools and Editors](https://lectures.quantecon.org/more_julia/tools_editors.html#tools-editors), but these files provide a listing of packages and versions used by the code\n", "\n", "This ensures that an environment for running code is **reproducible**, so that anyone can replicate the precise set of package and versions used in construction\n", "\n", "The careful selection of package versions is crucial for reproducibility, as otherwise your code can be broken by changes to packages out of your control\n", "\n", "After the installation and activation, `using` provides a way to say that a particular code or notebook will use the package" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "hide-output": false }, "outputs": [], "source": [ "using LinearAlgebra, Statistics" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Using Functions from a Package\n", "\n", "Some functions are built into the base Julia, such as `randn`, which returns a single draw from a normal distibution with mean 0 and variance 1 if given no parameters" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "0.6511063828829073" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "randn()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Other functions require importing all of the names from an external library" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "hide-output": false }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "┌ Info: Recompiling stale cache file /home/qebuild/.julia/compiled/v1.2/Plots/ld3vC.ji for Plots [91a5bcdd-55d7-5caf-9e0b-520d859cae80]\n", "└ @ Base loading.jl:1240\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAIAAAD9V4nPAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nOy9ebwk11Xn+buRseT+8i31Xq2qTZKlckm2ZGQjGRjZYtiFwXiGxmaxaT7QAwxgYHD3BzDTYAZsphn8gcYfu6fF4P64abtpu7Exi6HBloyMF22lXbKqtNTbM/O9l2tkxnLnj8gXLzLiRmTkEpGRr+73r1JVKl68yBv33HPO75xDKKXgcDgcDudaRZj2DXA4HA6HM024IeRwOBzONQ03hBwOh8O5puGGkMPhcDjXNNwQcjgcDueahhtCDofD4VzTcEPI4XA4nGsabgg5HA6Hc03DDSGHw+FwrmkmYwj/+q//+sKFC6VS6cKFC5/73Ocmck0Oh8PhcGJgAobQMIy3v/3tf/iHf1itVn/zN3/zXe96l/czlNJLly4FX8Q0zfFvhjM+mqZN+xY4AGCapmEY074LDsA3qCQRxQY1AUOo6/rHPvaxN7/5zc1mU1GUUqnk/Yyqqm94wxsCLlKv1zudzvg3wxmfcrk87VvgAEC3263VatO+Cw7AN6gkUalUJt4iWxz/EoqifNd3fVej0SgWi4SQL37xi8yPGYZx9913e//+1a9+9W/91m/t7e0pitJut8e/H86Y7O7uKooy7bvgoNPptNtt3hY/CfANKjns7u5KkkQICfn5ubm5VCoV/JkJGEKLfD7faDQ++MEP/vzP//xXv/pV7wcEQfiVX/kV79+XSqVcLqdpmqIomUxmUvfDGZlsNpvL5aZ9FxykUilCCP8ukgDfoJKDtUGFN4SCMDjwScY/b16+fPnDH/7w+9//fgCbm5vnz59vNBquz7Tb7YWFhYDzlOWF8HWWBNbX148dOzbtu+BAVdV2uz0/Pz/tG+HwDSpBbGxsrKyshDeEYZhAjvD48eMf+chHHnjgAUrpxz/+8dtuu238a3I4HA6HEw8TCI2m0+lPfepTv/ALv3DlypWbbrrpvvvuG/+aHA6Hw+HEw2RyhHffffdDDz00kUtxOBwOhxMnvLMMh8PhcK5puCHkcDgczjUNN4QcDofDuaZJqCH82NfNd/wjby7F4XA4nMhJqCGcV8hOlzfU4HA4HE7kJNYQosob+3E4HA4nehJqCBcU7HBDyOFwOJzoSaghnJdJtcNDoxwOh8OJnIQawgUFu11wS8jhcDicqEmoIRQFZFKo8wGxHA6Hw4mYhBpCAPMKqarcJ+RwOBxOtCTXEC4o2OlO+yY4HA6Hc9hJriGcl3kFBYfD4XAiZ2IT6ifOQprsdCgwyemLHA6Hc4jRdf2OO+6Y9l1ExZve9Kbf//3fj+LKyTWE8zIvJeRwOJwhoJQ+8cQTX/nKV6Z9I5Pn85///Be+8IWILp5cQ7jAm8twOBzO8Nx2223TvoXJ89JLL0VnCBOcI+TtRjkcDocTPUk2hDw0yuFwOJzISa4h5KFRDofD4cRAcg3hvGypRjkcDofDiZDkGkLuEXI4HA4nBpJrCOd5ZxkOh8PhRE9yDeEC7zXK4XA4nOhJriEsymgZ0M1p3weHw+FwDjXJNYQEmJOwy6OjHA6Hw4mS5BpCAAtpPqeew+FwDhuGYdx0003TvosDEm0IebtRDofDOWR88IMfvOuuu5599tlp38gBye01Cl5BweFwODPOT/7kT958883vfve7AfzUT/3U+fPn77jjjvPnz997773TvrUDEm0I99uN8klMHA6HMyIf+7r5X6/ElGP64evJ2872BRrf9ra3ve9973v3u9/d7XY/+clPPvzww6dOnYrnZsKTaEPIPUIOh8MZk9uXSE6K6WddKLn9lje96U3veMc7Njc3v/a1r128eDGBVhAJN4S87zaHw+GMyc0lcrPHPsWGJEn33nvvpz/96S984Qs//MM/PK3bCCbhYhnebpTD4XBmm7e97W0f+9jH/uZv/uYHfuAHpn0vbBJtCHlolMPhcGade+6559FHH7377rtLpdK074VNog0hbzfK4XA4s46iKK9+9atdcVFKExTtS3SOcEEh1Q7vscbhcDiziqZpTz755AsvvPCd3/md074XXxLvEfLQKIfD4cwsn/nMZ77t277tj/7ojxRFmfa9+JJwjxC8xRqHw+HMLm9961vf+ta3TvsuBpBsj1AmXCzD4XA4nEhJtCHMiCBAW5/2fXA4HA7n8JJoQwhgnkdHORwOhxMlSTeECwrhFRQcDofDiY6kG8J5XlPP4XA4nChJuiFcUJLYZe1b/lL/7y/xAkcOh8M5DCS6fALAvJxEj3Czjd3k3RWHw7nGIYTIsvxzP/dz41yka4IAUsK8pMuXL4tiVAYr6YZwIZE19VttusszlxwOJ2GIovj3f//3X/3qV8e5yPseNZfT+Mkbk2UJr7/++vPnz0d08aQbwv3ZvAlCM7HXxR43hBwOJ3nceeedd9555zhX+MCf6fMF/Nz3JN06TJBk2XwvCRTLbLUpBfZiNM/P7yXrKMDhcA4xLZ3WrrGDftINYQJDo1sqAMQZGr1/gxtCDocTEy39mot4Jd0QzsskaQX15dgN4QPcEHI4nFgwKDpGrBGvJDAZQ/jJT37y4sWLpVLpW77lW5577rmJXNMiiR5hm65ksBujeX6sSmtabD+Nw+Fcu7R0ZEQ0dFxTlnAChvDKlSvvfOc777vvvvX19Xvvvfdd73rX+Ne0SeBs3i0VN86ROD3CagdPVK+pZcnhcKZDS0dBQjqFxrV0+J6AIbx8+fLb3/7217/+9ZlM5p3vfOezzz47/jVtFhRSVZNlA7bb9IZirIZwp0Of2EnWQ+DEA//WOTHT0mlWJEWJ1K6l6OgEBLL33HPPPffcA8AwjPe+970/+IM/yPyYYRg/9EM/5P37G2644Zd+6ZdqtZqiKN2u27wQE3tadndvj4x/oxPiak0+n6e7HXFvby+GH6ebaGjZhzc7e8disr21Wi2bzcbzszgB/PkV8yMvyJ/71jiWGScYvw3q8LFVE9JEUURcrbbyehJtYa1WS6fThIS1Cfl8PpVKBX9mYpUin/vc597znvd8+7d/+/ve9z7mBwghlr10sby8LEmSJEmiKEqS5PpXCcgItA15TkrKV1LuCt9VMus6ESUpBvO81yEUeGpP8D6ciLC+jnh+FieANjVeacezyjgD8NugDh9dkJwEgUClkpSYXdeJtUGFN4RhPjkBQ0gpfc973vOlL33p4x//+I033uj3MUEQfuInfsLvX7vdrqIomUzG+0+LGV0VpGPZpGwHO5p+el7OpHRDyhajfy9UjZZk/emakM0qkf8wAEAmk+EeYRLQhM5mR0gpijLgOMuJnIAN6pBBazQnGekUVEHKJmbXdWJtUOENYRgmkCO8//77P/3pT3/mM585fvx4o9FoNBrjX9NJ0tqNbraxnEZJJvEIR6sd3DhHCLDRjuGncRJEQycmxUuNJJ7KOYeVpoachKJMato1tPAmYAg///nPP/vss/Pz84V9xr+mk6RVUGyr9EiGzMkxlRLudjGv4JYF8jgXjl5jNDUK4HJ92vcxC5RV/MMaf0EmQEunmRSZk6+tmvoJGMLf+I3foP2Mf00niWo32tKhmyhKKCkxLZSdDp1XyMV5bgivOZoGEQiu1Pn3PpjHqvSXv2xM+y4OAy0DWRFFCddUl7Wkd5YBsJCkdqNbbbqcIQBKMnZjMc/VDhYUXJwnvILiWqPexdk85YYwDE2NNvRp38ShoKUjJ6Iog4dGk8V8kkKjWyqW0wBQkmMqJdzpYF7GxQVuCK85GjouFM0rPDQagqaOxrW0cUdHS7c8QsI9wmQxLydoSP1WG8sZwPIIYzHPO91eaPTpXWom5TFw4qCp48KccZl7hCFo6WheS51QosMyhDxHmDgSFRotq3QpTQDEJ5bpoCSjIOFImvA9MeH8/JeMj182J3W1hoYLRYOHRsPQNq659pgR0dZpRiRzMvaupYPFDBjCRI0kPAiNKiSeBu07XcwrAMD1MsnnpQZeqE3sag0dp7LUMBOUGkgsLR0mRYunCcemFxqVfVusvdyg5z9+2B70DBjCBSVRoVGnWCaOn1jt0AWFALg4jyd24viJnJFp6XRrcq1xmzopSDhbIC/yUsJBtHQK8OjoBOiFRiX4TbzZUrHaOmwLcgYMYaIGUNg5wthCozudfY+Q62UST9vA5uT6HtQ1mhPp2QK5XOPf+wAsE9hIZG/M2WLfI/TNEVZUdAwYh+tJz4AhTFSOcEuly2nLI4wrNNrBvAwAt/DQaOJp69ic3GG5qZOciLMFXJlws6ZDSMsAcG1NDoqIloFsyhLLsFdyWaXAYYtCz4AhnE9SaHRbjVs1Wu3QeYUAuKlEXmzQDi8aTjBtHVvqZC5FrbN5ip4tEK6XGYi1L3NDOD6OMUzsD1Q6ANDkhjBmChJUA9rEtHhjsdXGkV4dYRyhUc1Ex0ReAgBJwLkCeWaP74nJpWVgsz2ZL6ilQ0khRXCuyA3hYHqG8HDtzlOhqSErIiehY0Jn7boV1UrHHqo1OQOGkAAlOSnCubJKj1ihUYXE0Flmt4uSDLvL+q0L5BKPjiYYVafVDnv7GJaGhpxIAZwt4PLklKiHlZZOZYHX1E+AtoGsCAIUffQylkd4yM4cM2AIkZh2ozUNkoCMCCCmgtOd/bioxcV58iTXyySYtoFMCtuTiI42NJoXCYCzefJSg/dSGEBLx5EM4aHR8bHEMgCKPjKIXmj0cD3q2TCECdHLbLV77iAAWYAkRB4ot5UyFhfnwfUySaat43SeTCQ62tB7IfGMiHkFa4dOsD5ZWjqW04ctcTUVbEPoV0FRVmmKHLZHPRuGMCHtRjfbWHEM5oxhJKHVcdvm4gLhpYSJRTdhUJzKT0YvU+8iL/ZW19kCeZF3HA2kqWM5w8UyE6Cp06xIABRk9gCKsorjWdI6XJUqs2EIFxRSTYBw1K6mt4hBL2M1GrX/82yB7HZoPPWLnGGxkivL6Ql7hADOFnh3vQG0dCynSfNw7c5TwekRMrM/ZRXX5blHOA3mkyGWKatYSh/8Z0mJ3BBajUZtCHBhnjzBo6OJpK0jI2IlM5ma+qZGc2Lvz+cK4DMogmnpdDmD+mx6hB0D/+arSamLatuG0CdHWO3Q6/KE5winQEJyhJ7QaOSG0BUahaWX2eWGMIm0DZpJkZUs2ZqER1jXkN83hGd4KeEgWjqOpGd1d95W6QcuJaI+TDUgCkgRANZIQvcHWjoosJzhHuE0SIhqdFs9EMsAmIs+R+gKjYK33k4wLR0ZEcvpyXiEDR2F/dDoOW4IB9GycoSzuTtXOjDpZKpuxsSOiwKYY+UIyypdVEhO5J1lpkFCxDJb+21lLErRV1DYjUZteMfRxGLFlFYyE8oR7tcRwiol5KFRf7omAMwrsyqWKasAEtEzpLWvlAFQlIh3SH2lg6U0cuJhS8fOhiFcUJAUsUw6VrFMtb98AsCtC9wjTChWEeGkcoQNjeb2t6STOVJWeXc9Xyw/Ji+SGS2ot3q1dBNhCA88Qmbf7bKKRQU5kYdGp8G8TJLgEW73e4R+yeQJ4iqoB3AkDVHgVWVJxBLLLGewNaHQqK0aTRGcyJGX+DAmH1o6zYkkL83q7myVqCfDI0Q21fszs2dIRaVLaZKTeEH9NFhIJ0Is4yyoRyyqUXsqr5OL87yaMIm0dJpJkeU0KasTaATjDI2CC0cD6XmE0qyGRisqAHQT0D2ozyNkFdSXO1hMc49wSszL0x9AYVJUO/3lE9GHRl3lExavmiPP89bbyUM1kBEhCijKE5ig2XCoRsFLCQOxZEp5cVbLJ6y8TzcBoW+rFtaCGfGydOzcEE6HJJRPVDsoSJAcDyyGzjK7HtUogMLMnnwPNy0dmRSAydTUNxx1hODC0UD2PcJZzREmUyzjGxpVSE4ifPrEFFBSkFNTPu5tqX1tZTDMkPoHN0eJlWkmVONAQ2+TFUn7kM2HPhTYp+mJ6GXqWt9Xf4aHRv1p6siJM+ymlDsUQBIsizWDyaIoMcontlUspZGd2Uftx2wYQiSgy9r2/iRCm/DlE3/6vNkePu6x08GcYwaTTY57hInEEssAWM5MoKa+6RDLADjHQ6P+WIUrGRF6MqrxhsUKd81IaJQuKGR2zxx+zJAh7KWUp4XXIww5klA18InL5gj1p95qeovDV816OLDKJzAhj9AlluFz6gOwA3p5cSZr6isqSnISyye8YpmKatURctXolFicdprQ1V8NoTug/sVL5m4X7eHrT3c8/dUsstwQJhJ7O16ZhEdY7xfLLKVhmJGLs2YUKzQKIDebacKySo9lSRJyhE2HIZQFpAja/VuNFRrNSXz6xJSYemi0rNKlfrOkpCB4FoqXP33eBEaJJOywJKPADOdCDjdtHWlLLDMZj7BPLANLOFo7VLvPpGjtB6Xz4uxlDXQTDR1H0onwCNsOQwhLL9P/PKsdupjmodHpsaD0yk6nxVYbrtAoQuhlNtv48ha9qUQG2ksvVjje+/fZQ9ff6HAwQbEM9eQIYU0l5DX1LGyPcBZr6q3uUUoqcapRAEWZ1BzZn46BjoGC1AtKHaa1ODOGcHHaNfWuRqMWpUHNZT76vPn9Z4Sl9CjBTGY1PXiOMKnYfsn47UbbOpRUbwiADe846kdLp9l9QzhzHmGlQxfTRBYSYgj7PcL+mvqyShfTIECKQBJwmHr+zYwhnHpodLu/rYzFwOYyH33e/NEbhGwKreEXDbOaHsDh6290OFANu45w3CH1DQ2uuCiAc0W3XkY3oR6izWhk2jpmVyxTUbGgQE6RbgJqouxaWIs5GbsO96PaweJ+jGoWzxwBzJAhTKZHGGQIHy7Tlo5vPkqy4ii5ZT/V6OEr4jkctHQ6KY+wodO85P7qnTnCr27Tn/+ScfLPtIfL0989p47tx8xiTX2lQxcVIgmJyBG2jD6PsCj3DaCw+qtZHLIEjefYmVSmXj7B9gh7zWUY5grAnz5v/sgNhAAZcbCmxstOBxdKjL8/fJnqw0FbRyZFAGRESMRdET8UDdb/e7aAZ/bwW4+YH/u6CeAd1wsncmSE+tTDh8MQzp6bUulgMQ3dTGRotL9U2uq4bf35kO1CM2MIFxVS7UxtpegmahoWPRm7ALFM18R/uWx+6XtFjFrw4B1GaDGaf8mJGmcx8nKGbLZpwePVhaShuZUyAM7kSVunZZV+9O7U648QAF/eMkc4YB0+WkZvZkJuBlWjFRVLCiqdhBhCmhUPwoSu5jLWDCaLQ1ZKODOGcLoDKLZVLCgQPNtaQHOZv3rFvGmOnCsQjGwIu3ReYcSuD9lZ7NBgd5bBvnD0+uKIl3IVEVpkRay+XXIqaDIiUQ3fgMS1g90YLC/NYI6wQxfTpK7RRIRGA8snKo6pAznpUEn2ZihHOE2xjLetjMWc7Ntc5k+foz92Y+/xZlIYIYRV7TB8UAAZER0DCZjZwunDuYmMWVPf0GhBZqw3l440PdK6Ony0dJqTCICcOHvNoMsqltKQEqMadaq0ChKpO/a3siM0esiUCjNjCK3OMtNa41ttLKcZf+/nEVY6+Md18wfO7BtCEaOIZXxCo2RUy8qJFLvFGsauqWd6hF4yItRDtBmNTF+OcNYeiBVvlFOJ6DUa7BH2h0YPlVhmZgyhJECJawDFs3vUpVPfVukRlkdYUtiT5/7z183vuU6Y2y9+yIlkhDDCbpfOsdwC8L7biaSt0/S+yzZmTX1TRy6E0IY327Owt+9ZnFBm9c1IiEfoDO/DI5ax2spYf84friKumTGEsPQyahxnkLUWvv/vDKfjv+3rEbIL6v/0efPHbjh4tiNsWJrZa+LAhOtlEohTLLOSIVtjrNVGOI+Qh0YtbLHMTKpGVSymISekfMLVWUbq6yzj9Ah5aHRqxFZK2NJxqUrf9YWDAtctlVE7AauO0HNLz+/RjTbuOX7w+REModVo1E8FEade5oENutbiRncwztP0cnosj5BZR+glkyIjNHM/fNgeYU4kjVl7IPt1hERLQNrfPlJYuMsnnGIZbginRWztRls6/Z7rhFea9Hce7R3SttqManr4dJb5yjZ94wpxSkxHSOn5VdNbxNll7dcfMv5hbfqvaMLpmkiRAzHLmDX1zDpCLxmRd5YBnGOYZs0jpJYmbpBH+LuPmb/5SOQOo0nRNZDuD426W6wpdh3h7OmSApglQ7iYjkk42tIxr+CT3yp+6GnzL1+mALZV91ReizkJXtXoY1X6moU+GzaaR8hUytgXjO041tCwNfYshYjY6+I7/iYRLkCrP7mynBnroTHrCL1EqpnSzZlRJh+UT8xaHWGti0wKsjBANVrr0u2xB3sNpG0gneqLQhUdHqFmoqWjZItlePnEtIgzNJoVcSyLP78n9S8f0J/ZpVttdvlESSFej/CxCn3NossQDp3S2+lgntVo1CLOataGhjEbhkXHaov+7VUaZipk1Ljm14zrEephVaPRFdTXNTy5M9yvMP7wqRHQTZiAsp8jnK14XWVffhKsGu2acegEXZJRAHOO6RPVDuaVAzPJQ6NTI7Yua/aCeMMyef8dqe/7O+PlJlsskxOhm+6YxmNV+pqFvr8J9ggvsyaPDwiNxjgYs6GP20I6OtaaALCRADvdNmjGUeU3J6NjjB63rHdD5ggj9AjbBv3i5hAPlgJ/+fIU9B4tR9XKzIVGbflJsEfYMeIxhH1KGQB5EU29FxhwxkXBDeEUia2m3nkyeueNwrefJKtNdvkEPHqZjTYMipO5vg8Hn9yf3cVLnjlzyQmNNjU6/rz1iLBUPButad+HR3eO8WrqG55hhEzSqQg9wraOB4cxhF/fo0/tTmGdOGvAZ67ptiUZBQbkCLsmYvi9vB6hQJCXejbYqZQBN4RTZDG+0GjfyejfvSH1nafInE+gsqT0NZd5rOJOEGKQR9jU6Zc8O87A0GhsAfqGntwc4VoLQCIit85qeotxaurD5ghF0o5sdk/bwD8NYwgf3KLlaUQOnG+rtTtPfzWExpKMYpBH2DXjaBTgNYQAilKvQszlEWa5WGZaxJojdGxqooBPvFn0C1TNSX3C0ceq7gQhBhnChoYHtzyGMDA0GptHqBrQzenkfsKw1qLpFDYScHsthkc4ekg5ZB1hpJ1lWjqu1OlqM+xm9+Am3Y6lzNeFc/tOEchReskTJ6xHGFNolGEIbeGofasWuVlLxwYzW4aQVGIPjVoEHM9LSl+pDdMjzKSCTu4NVgwqODQam3bZmhA7Tm14pKy1cMsC2fAvc3y8GlO8ru1ZM8vp0fUyIUOj0eYIdQBDOIUPbk7LI+x78rMlHK10et07B3qE0zKEtnCUh0ZDYRjGTTfdNKmrMVmMawAFc0H4Uervu/2oRzKKgaFRDY9VqWtVDQiNxqVdbmh0KU0UIWj+8BRZb9HbFkmAR/jvnzL/0/NxKDhcYhn4dFmzqnEG0tDCiWWiVI1aJtYbq2Cy28XTu9MxhE2XIZRmqQdmZb+xfvCE+rhyhG6xDCyPsAuwxDK8fMLNBz/4wbvuuuvZZ5+dyNX8mIpYZiBOsUxbx4sNenPJ4xGK6Bi+qYuGTnUTX9nu+/cBodFUTMexpo68hOXxZilEx1oLty8FOV6rLRqPf8AUy7huTDXw24+G8uDChkaj9Qjpcgb/tBHqe//nLfraRTL10ChmTThaCaca7Rp0ah7hfo7Q7RHyXqNebr311l//9V+fyKUCWFCwE8sACubJyA/nbN4nd+kNRSJ7HioBFP/UhVUO7IqODgiNxucRWoYwiXoZCmxYHqG/anS1GVOjdq9YZsXz0D76vPn83uD129YhpyCGeDWj9gi/aUV4etcdq2Dy4Kb5HSeJZk6h043rbc2LszSAoqzu1xEOUo12jMi7cgfnCMsqdU6FO2TTJyYzmPdNb3rTwM+YpvmLv/iL3r8/ffr0j//4jzcajW63q+sDlrAiKGvVRlGK9guod2V0O/V6qHWXoeJ2A/W6DuDLq6kLRaFeZxiNTErZ2m0sKqySwbZ01xLuXzV+7vzBnl1V07LWrLNKDAEQTdhTxXo9krqBRqNRr9etP2/VhAwR8yJe2um8JpeArsAOKh2STcmLaK63ZPuGXVxtKtdlaUQPyslOUxQpcf6gPBXWGgffkUnxe48pNY343arNtkpyKbler6uqqqqqKPq+pHqHtHTf331MdhqpHBFuKZF/eLF598qAr/6BNflnX2UsKtKL5fqJbBS340u1kZKpYD/nNJG2a916ZlyDXNNIXqR2o8SQG9SwbLeVjNGp101NFVRNZG4dAFpdGRDWdxrzcoRb305TFM3eVmaTpuJWHfW6vtWUM+bBrmgaaOrpiNZeMI1GI5vNEhLWV8lms6lUKvgzsU6oL5VK3r8sFArEQfAVFhTsar6VDJOibZCsiJAPuqTguVrvzp/YE26dp8z/MZMiqsm+Zksnbz5q/t5TKec/W6FRv1vIiaRlhL3DYXF+ES2DZEUsp+l2RyAkWQfADZUcy2Ipjd0uMUFSnofRNVFWSUNjfyOTRTVIJtX3g1Yy2FYPnuRfrQoLMl1tE2t1BdAySU5EmJciK5K2HtUyUE2SEfGNS+aXK6k3HQ366g2KhyrkDUt0UaaVrnAyF+s6cb2tOZE0J/FMbvwL+avfpV23/7uE3KCGpdohCwolhMgCNOp7fY0SAE0dC/7pkvFpmySbcr8sRZnUdUoIqXbJUvrgwaZFGBQGJWFCF5Nl2O8izCfjM4SCILz3ve/1+1dd1xVFyWRYna0dLGV0NZXN56Pd1zqmvlQM+1NWCuYjezSfTwN4qqb/L9enmP9jTtKJkmP+kwrjwhGykDav6jkrv9g10TW1lVLO7w6WCrRDjXzeP3g6BrlcLp/PW3/WU2YpTU8UsWeSfD5ZGuO9XXoyb8wV8otprZXKH/M4Ii/WKYXepqmIHpQTI2XOZWg+f3DwPCNiu6PZT/IPn9Pfc5vwM/9kmEo+H7jMzS4tKkY+nxdFMZVK2VfwkqHomFrAB8bBTJnFNP3mo+SPnzat5e3HIxV6Km+cXMit5PSWEPnr6WL/yeqQuukAACAASURBVPfusJQxdFEac63udtEyNCgHv0vIDWpYql3tuoV8XsJchxow/L5KneoANWX2BjIpdMEoZd2v+ZG8+UKN5vOpalc7NZ9zLoRsSiPpfD5it8RLo9HI5/OTPZQka2sbSDwDKIYSy8zJ2O1QABS4xCoitAgQjjY1mpfIXcvEThPuBs5gsq4WT6a6YYtlkldBsdaix7MEwEqGMLusrbZQkOLKEeo0059XXlSw14VuAsAXN2i5g+87LRR9Blg6CamUAXrzLiKaY9c2kBFx14rwz1s0uGr/wU161woBsJSegl7GoxqdwKthVU9G/Yq1dZi0VyczsNdoDDOHfcQy2OvCoKhpbtVCTsKhSRPOmCGMZzZvcxixTEkmexoAvFinBYks+vgeAboGq8PynSsHhrDaCZKMIsbR5NY8oDHnrUfEahMncgBwNMPusrbapK+aI/FoCJntqRYUlDsA8IFL5i/fIggExRCGuR5uBpNFOhWVPqWt06xIltI4liVPBHbffnCTvnGFADiSRvwVFFGIZa42rSuPe51gyo6B7xJBQH1Ex8BimkQtAvKrI6xpqHZQkuHKPmRFcmgqKCZpCCmN3ETF01xmtPKJx6r0NYu+HwswXQ0NOQl3rRC7Zmuni4XAYF5s1axWQf1yOonlE+tteixDABzNsisoVlt4VSmm5pNe1Sj2Kyie3aNf3TZ/5HoB/XNt/AhZRGgRnXC0pfd+ozeukC8GFlH8k8MjLMfuEbre1pw0gZK71RYFIn/FKiqW9l/zgQX1iwrqEa9kH9Uo2etSVxGhxWGqqZ8xjzCG0CgFVNam5oc9m/dRVk8Zm4BJTE0deRG3zJP1Vq8kObh2AjFOn2jqNCeRZJZPrDVx3PYIWbdneYRxhUbddYTYr6n/vUvmz1xIWf9alA7m2vgRsq2MRUaMaki9FRoF8MYVEtBfZq1Fmzq9YY4AWFKwPQWP8KDpNqyC+gmERgFEHverdA6alg0KjdJFZWqh0VoXFbWviNDiMNXUz5whjLymXtWhpCCETsTanWUuVXFrkCEMyhHmJCIQvP4I+ectCmCnQ0ty0B3E6RHmxXGn60XEgUfokyNca+F8ETqNvAAL/h7hYxX6qRfN/+1C70WbC+ERNsN13LbIpNCKJjSq6kjve4QBhvDBTXrncu91OZKZSmjU3WJt/KPPWouS6HOEFZXaKlBZIF3/OchdAwvpyI90fp1l9jRUOtQrWJ2t3gXBzJghjKHLWsvo67g9kLzU60ztncfrJKAJSGP/SHvXCnlw0wSw0x3gEWZEqEYcA8Stgvp5BS0dndhrpYOxPcIV/xzhiSyJQWUAllgGwHIGv3fJeMf1gp05tsuTAwg5ldciur7bbaNnYG6YI6pBX/Hpvm0rZZCM0GhemkCOcLWJkzkSeWh0v78awoZGo72fgNCoq62MRfYQ1dTPmCFcUBC1R9jUhlDKACBAUcIrTbql0huKQ3uEBkV3f8e5a0X40hYFUO0MyBESaxZd9JbJCtORKQkCAzApNtv0aGCO8GoTJ3PIiaQR/evK3ERWMqTawc+/+uAtK+53bgygPkyOMLpl0No37QS4a1nwm0344JbDEE4jNOqStuUmIah+pUlfVYpeLKPiyH45xkBDuKBE3m40IDS63eah0SSxoJCoh9TbB+HwlGRy/wa9OE8CAqp+htAp/n7DEfJQmWomdgeFRjGhF34gzf1NOWnC0W0VJQWSAPjnCNfb9HiWhBFqjo9PaBRvOyucdxyP7M6NAYQcRmiRjUws48yUv/EoOzra1vFElX7DUu8XPJKZgkfomvtRkCZw7llr0RuKkbs71Y4zNOpbBmNSmBTzSgyhUcbWlxFhUqy3GaHRHA+NTosYVKNDSUYtSgq+sB6klEGAIXTsenMyzhbIY1U6MDQKIBdLl307bJs0vYxdRAjgaJYxianaQSaFjIi8hHr0ozN8xDLk/7i17xUrhgmNhq4jxKAJXy6GiqU7fyO/NOFDZfrq+YNGOdbo7JgtobeOcMzduWtir4szhQmIboKxO24DEIWewWPejyxMrY4QQFHGlTrbI+Sq0emwGL1YZgRDOCfhC+tBCUL4b1gurfxdK+TBTRo8g8kinriE7Z0sp5NVU7/ewvH9VjIlGarhLqdbbfYsZWESSaOBMD3Cbz5KXrfUtyrmpHA5wmHqCMN7hE8PM5rR+Rvdvkie22MMQHhwi965cvALSgJyInZimZVmM/HpE2tNejRDCtEPnq046gjhHx21DOFEREDB+A0bmJPJCzXqrZDmodGpMa9gpxvtkXMkj5Bcro/qEfaLv/cN4YCCesQ1pN72TpIWGnV6hLCay/Q7hautXrl9XiJRF2DBxyNklSeHCY3SYconhsgR+uX5mLQcv5GSwm2LPUmz64JvXOlbqPFHRxmDecd7L6yVE8P75RTLAJB8oqNdA3IKBTnyilhfj1DCi/XeAGEnOSmm8eAxMGOGUBKQTQ0WoI/DUG1lLEoyBBJUOwH/wud6f0LozmXyxU06UCyDuJrLNPSew5q0kYRXm9SycxZHs+404dUmPZkjiEvkHXJ0lyU9CKahoRC+oH6YzjIhp+xauHJvb1wh/7TZt09T4MFN887lvluNXy/T1GnOKZYZe3e2Vk4M7o5LgSIJvYZ8LjoGVVIkhvFSfoL5ooymzlKNxjUVNQZmzBACWEhHGx1tj+ARyjhfJMGneL94uqsc+Poi0U36Qp2WQoRGmRc0KB6pBD2fv7lK/2417AO0U5hJyxFutGBJRi2Oeiod1/Zjp/G0G2WGRr2EqSMcSiwzVGeZoTzCtkHTjp5ab1xxC0e/vkczIjnZ3xk+/gqK9qTrCK2VE8O8vWp/cZ4ioOMTGpWEyJdx14QA9hTMOZkAjMEX+eijx7Exe4ZwMWK9zCg5QpkEx0UBZHwOmN5+WncuC20dA0OjOZF98t1q447/HvQG/9Ur5mdeDlVhblKo+xrapNXUrzlyhGAJR1eb9ITlEYqRe4QU6BhIh1g2ocQyQ9URhi6fMCheqNHwjZnaep9pv2uFfHmL/sMafWaXWivZWThhE3O7UYNCM6E47jMjQqds1yok1sqJegK7bqKhw3nelQSisdQyXROKgHzEhjBg35uTQABvjjCe7Ew8xDqPcCIsKIi0gmKUHKGMgYYwK5I26+1s9HuEAO5aIZ99ZbBP4DekfqdLDRrUnWSvG7Y0vqkjI/aGYCynsRV7iVgA6y16PHdwjDuaddfUr7XovVkBiCO5YnUjChPNnJMHt1irD+cRhm2xttWGQXG5RhePhIq7qkZf1nNBwbteJbzvEWOthVea1Pp9/8/b3V7wUjrW0GjbsURtrGDJyFNLV1t43VLku3y1g3m5r4OVJLC7rPVyhFK0yzggtl+UMScznMV4KrjiYRYNoRUajWou12jlE+eKAz6T9WmF5bVYd62Q4BlMvQv6vKhWB/C9rm9Rdq2L3UF7sYVTx5+00KjLI1zJkEvVfrHM/myKvNgbJhAdIeOi2I/TBi/fYZtu11hddbxYDv3lOr0jhCHsGL0ZT07+4BsPfsmdDlZb9FjW4xF6VEuR0mS9rXmJNDQ6N6gS14+rTXoyJ0RdG+CSjAKQU4Gq0Sl6hDK8Shn0Krii714YCzMYGo24y1pLpxnvsPNAwnmEPqFRj0f4uiVy1LO/ePFL5u90AWDP/53Z69KQJq2pH+zIyxmyrbLHi8QvoTYoyipddrycRz2i1tVWfOUTLVZ/NSYpgsygUG1zmNBo+M4yVuj4cj3Uh9sGQwTrZF7BxXnG0LGYxTJMP2ZMXYl1hIpaLOMsIrTwVY2akAXkxN78wohosWTPFkWJLLIGM/PyiWkSdU39CB7h2QK5btDkaD9RQ9Nz/E+ncM/xwbtqVmR3x7emBAcoMvY0hMz2OVUb1pnU++RVA3/wRNynws02XUz3xWpcNfVWTfSRNIDIj9IYUmAVHB1t6xAJW7PAJBO6jnCjRUUBl2uhvnpXgjA8MYtlWjpD6DhOxxNqRd2zJOragLLXI/SrIzQgpyAQZKJ0UgP2vaJ8MC7KCS+onyYLCqlEqRptDd9i7eJ8KLsV0iME8N2nBn8vOZHd+cLyCAM0+rUuqp1QAxmsYYQ2zKmET+zQjzxjxtD+28laC8f7nWaXWMaqibYSMFEnVzBMaBTWyG//bXqoanrst18Pw0Ybr1kgl+vhDKER1sd1EbNYpqUj53lc48ijyiryEtKpyGsDhvUIgWibyzCPFBb3HCfvvoXxb1HrieJkFg0hqgkTy4SZ2eQ3j5CpavmWY+FCo6wd0M4R+v2Pe10qpxCmg7ZrU2amCR8p05ca9HOh6zEmwnp/NT2sgnqHkbar6RGXRxgcSHQS3Hd7qAQhhlGNbrTpXSskbGh0dI8w5tAoM0c4emjUmlgCICNCMxG6e93QuKrp4e8RdoyeIYy0NUTAvnfjHGHGqGKoMImN2TOEUXdZG8EQhmEoj1AO8bVkfSRbO90BodGahvMFEqZNjGtTZlZQPFKhty6Q//fZWKOjLqUMgKwIiRz81vZ2hojP0RZDeYTBXdaGajSKYVSjGy28/ghZb9EwwYCBOUI/Yu4s42MIR49qOo9QkfasqKju0KivatSkSmo/2x2hRzh0I5HDVD4xe4Yw6iH1rf5GFZPC6gDifTuHqp524veW7nRQ8i9WUw0Q4Lp8qH5pDQ0Fl0foOew/XKG/e0fqH9fMODWlq016POf+jpzDmFZbOOnwCKfVrZhJMTBHWO9/5gMZRixDT+XI8Sx5uTHYSIzQVsKiKKFrDtHsZkyarLd1HLGM3ZAIERvCstrLYdv49RrtGJBTwCS6xwXADDIHY+l3DodLOJOGMGlimTAIBJLAKOBr6jQ/kt31mz6x08HpvO9Wu9dFUQ7bL81V2e3NERoUT+7QbzpK3nJa+OjX43MKvR4h+tOEdjU9JjSyPBjmVF4/ilKQvz50jnAIsQyOZnGugBdCREeH8nFdLCrxOYW+odFRv3Hnyok09FfpwCXFlFNBBfWIOMg/WkpIEqKaCx0zs2cIFyNusRaRIYSPcLShDX0Qs/DTLu926ekC8ZNj7HXpnExCdtB23duy5/96Zpcez5KChJ94lfAfnolPMbPmyRGiXzi62sKJfUtZkCNvuj2cWCawuUxDo+EbjWI4sQw9miHniiSMcDR8QYiXOPUyzDrC3BhimdXmwcrxyz5MhLJKFxVPaNRfNYqIZV9+jUaDOTTC0dkzhPMydrvj1tPc+zn9a2X2JQLqacaEecBssnKE4a7mU1Dfxem8r89R01CUsBLOI3TFnVY8YplHK/S1iwTAXStEJPjiRkymcL2FY4Ee4VrzoNY7L6IVcQBnKLHMnBwkZXIpdQcSUiyjGugYmJNxrhBKOKqO8RYsxWgImaKe/BgGY9Vxxoq0l6a3sb6fWEYzewOoI203Otq+l49lKmoMzJ4hFAXkRMZG7zffmcnTu9j2cYkCZMRjwmw3GtALLRi/4+puF2fyxM8Q7nUxJzN8Oyau/KV3JOEjFXrb/hTGn7hJiE0y41WNon8Sk1PyIBCkU9HqvIcsnyCBqtGhyyfChEY3WnQlQwCcK4SqqR8nNLqUJmE0yROBXT4xhgFbbR5klyN1dxidZQaVTwSERq/U2c0uwtMeXiwD7hFOlwWPcLSu4W+vDrEL17q05nNmHCFpHJIs6/Be10bNEfqUT1RVejoP/xyhFRoN1UHbpWD0BlQfLtPb9wfP/ugNwqdfMmMYyqqZ2O26hQYAjmZ7t0eBtdaBahTj6enDMKRYJig0OqxYJqRqdL3dy6qeK5IrITzCceIicYZGmVrHcUKj/WIZdsnT+FBgx1M+ESCWUXqhUfbvpZs4/3F9d7xXb7SUUDzD4GJgJg2hdwDFnzxnDjU2tqb51nKNICMOCdsjHFIcYZNlTZ8wKFoGTuZ8PcJaF3MyVlj6Ty+eOsK+gCoFHqvS1+73lltU8O0nhT97IXKncL1Fl9PEW7t5dL+UsNpBJtW3j0ddUz+sWCbAI2zqNBdBHeFGi1p9+84VyAshcoRjeoTxiWVYma2RPcKmjo6J+X37FF3B+G4HWbEX8LSRU+zyic6BR8hexpUOKDBmIpyZbR3Ioampn0lD6BKOUuBDT5vhDyYdAx3D91TeGrWUeCBeeYtJ0Rm1YCvHetv3uihImFd8e5fsdVGUsJwO5RG6wrZzMjTzIBD3Up1mRLKcOfjAT7wqjugoM0EIR45wzSH8s4h6lttwdYSBQ+qHrSNM+5TluNhSsZwGgAUFBIMLkMbMEUZRU8/0lph+TGHUwvO1Zl8gIbq4X7XjVsrA3yPUTCoLvTpC5jK2Om0NHO8VzGgFM7noxwXHw2wawnRfl7X/sUqf2aXhx5NaK4b5qugmTPSNN5sg3nROkzVEJiRZER3PDrjTofMyCahU29MwJ+NIGhV1sODI2+Vk2RFTfbhCb1/s+9d7TpCahod9VEiTYrXltnMW9iSmqw7hn0XUpYQTDI029OFCowKBSNiehJP1Fj26/0zCREdHaD1vE1Fo9IkddmMmpmp0NAN21VF+iigLxssqY+C7b47QriP0WcaW3GHMFT6iRxhZ9DhmZtMQ9nuEf/y0eTo/xPdhmUBm8LA1RkRoIN6Uw1BzBlwQQEm5XczdLkoK5vwr1epdWpSJKKAoDy7H9Ha9cU4lfLRCX7vovqV33Sj8h4idwg0fj3A5TcoqNSmjuCJqj1A1kB7CIwysIxxePBUmT7PZxtFM75mEiY6O3FkGkYllHmIdsPzqCEf7uteafSsnSo/QXUQIf4/Q2WuUeYSakEc4kliGh0aniDNH+EqT3r9u/tgNJGR/Dew3pGYbwsiKCMHasJracAkhF97BmFZbmYzYC7p62dNQlIBwE+e9m7Kz3ahTMmrzzhvIJy6bkTYWYRYRAhAFzMmodPokoxaRNmnEkNKSYmCLtbpGhzWEYUoJrWp6izDC0ZF7jSIyj/CRCvXGMNhjmEIEAMoqHvBU+7hWTo6Vhp8Im+2eiNeJLJCuT0F9L0cosnOE1tOuhxsy6gevI5w9FhRS2T9yfvhp84dvEI5kyLChUeZmFJ1SBixD2BjDIwSQk9wu5m6XzisE/m6HVT6BcBPnvQ6rMzT6SAVeQ3giRwoSWY9yNOuaj0eI/Zr6VVaOMNLQ6ATHMDU0DNV0G0AmRdqDmkNvOHbeMDX1Y3qEUYhl1ppY86yrlsEou8yH2J3/nyeM/+gJXay6coTSEJLIofTSm22sZNx/6esRHhTUsxNyPUM43gofzQfghnCa2KHRron/+Kz50zcL4XvwA6h1oaTYBQYjt1gMg/cmR24rY+GdFLPTwbwMWA0tWYfHWrc3uXslSzYHmStvjtCWm2610dbp6QJjyy4Fhv7Gx88jxL5exrWdIfoBFG1jiIxaXkJL9x1rMKxYBuFKCTfaOLq/84apqR/HI1xM93SMk6XcoS813H/p13Q7WCS808FHnjE//bI7dHG16fIIh9jl/+0jQ4RBNpgeoY9qtK+OkPVmlVVKpmUII57aGBszagh7dYR/fsW8ZYHcOEeYlQl+1DR6PEuYHuFoGeOQMEKj43qErByhDAR6hPuh0cE19d4uJ3a70Ucq9LWLhLn3lxTsRmsIGY1GLawKijVvaHSMwrIwDNVZhgQa5mF7jSJcBcVmmzpyhCFCowYd2SO0xqmPWdbmpaLiRY/9Zm7fAw3YB5803nJaeN0S+ezLfS7YauugiBDDiGW+vEX/8zC9djcd5xIbiYBpU+wxTP6qURzLkqkYwkMzgGImDeFiuucR/vFT5s9cEABkw/XXsKhrOJlj13JFnCN0RzIb4+UIvatwp7MfGvXRyzhCo+42MS66JqhHQGubT2aC0KIkk93x0hXBuBQNrtvbaGG15fYIR9bTf+Ky+QdPDN7ghq26C4iOjiCWSQ9a/HtdyMKBqb4uP3gYU1vHyKpRRBMdLav0xXAeoShAEnyfSU3DHz9l/pvXCP/inPBnl/tuctXrEYazLr/9qFnpQA9tCtk5Qn+PUOmpRkmDJQksq/RsYdw6wtGyQjw0Ok2sSUyPVujVJr7nOgHh0iQ2tS5O5tgeYaSGMOMReY7rEXpWocMj9AmNaijKQAiPkLkj2zX1AYYwWBU5Jh0DTZ2huLM4miUvN+he161NH7mzzFO79B/XQ/VhGWrZBAygaAzfaWigR7jhcAcBSAKOZ8lLgcOYxskRIoJSQpOi2oH3npsae/sOmFj0R0+a33FSOF8kP3BW+PtV094HDIqt/gflzcEzeaxKH67QkoxyaCd4ozVUjpDKgfMIyyrOFqbjEYY/KyScGTWEpKrSP3rK/Fc3C9axNWTHRYuaRk/m2DnCiIYRWmRERo5wtLYyFl4X0+7kW/BpX7LbpSUrRzhINcrcke2RhA+V6euW/DzCyYfFbNZa9FiWHZIFcDSDh8r0WNbdd2bkOsK6hldCTO8b2hD6lxKOEhoViRq4X3tbEJwr4EpgdHTME+GRSXuE1Q4Mipe8oVGWWAb+uaumjj980vjV2wQAJRlvOiZ86sWe8dlo0aU0cXZ78ebgmfxfj5q/eFE4kQvVpKL3s9oHTeFtBpZPSAIEwlCDb6s4Wxgr+E8BdaSjj1+jx5ljJg3hvIw9DZ980fyXr+rd/1At72pdHM8SpmAhurYyYHWWGXn0hH1B13Fsb18Lw0zUGRTt/X122TNKwgWz95vVkqamYbNNb5jzN4SReYTrLUZyxeZollyqUm8GceQ6woaGV5ohZjUYND1MINHPaVYNiMTdeWsgAz3CzTZd7g/EnSsOKCUcqjLSy8Q9wkqHSgJcoVGrRijNeoP8PMIPPW3efVx41f7S/Rfnid0U0Jt7ZjZvcvHsHv3CuvlTNwvL6QEvlE3XRFM/aORmM7DpNnxKCSsqPVNgh7hC0taRTo3S2YOLZaaJKCAv4rtPCXbnZW/UMYCahjmZLViIuY6wodFxVKNescxOt/eCzckMj7CuIS/1lnuY0KjXSB9JY6eDh8v04jzx2/mDW4iNyUa71zOTydEMmjpOeD4wcq/RhoaKOjjYMJRYBr0BFIz7GS1CMDAcsuE5PQwUjo6jGkUEk5gqKl49T15p9s1YsFKzzNXAjAG0dfz+48avvvZg07v3OuEr29QyYN6ORWESYL/7mPm/vzqVE0MV5lpstemRNCOqMbCzDFgruWtCNXAyN1al7Mj7Hs8RTpkFhVgyGQtv1DGAWhdFib0ZxSyWaQ5fNNZ3QU/oZrfTyxEWJUaO0PYXEUIsw4zRWUXrf7dq+iUIEbFq1DvFzYklQHBJRjFG+URdA8Vgp3B4sQw7NFr31KuEIYxH6Do9DBSOto3RB/MigtBoWaWncqQo9broWQS8rUxD+JFnzDuXhYvzfbrQ7z4l/NcrJjxKGfjPvrZ5sU7/8mXzZy8ICCfDtmAWESJEaBSslVxW6YKC4niVsiPXT3NDOGW+9QT5xuWDby6TCjWMxqKm0aJMmHmaaMUynpO7t4fZUOQkuKZi7uwX1BdZwTdbMmrdjEQGjEpneicrGfK3V32VMgDmpOEM4YefGUJ3HmwIF9OQBHg7kY5cUF/XqCTglWbQZwwK3RyuP62fWGaEIkKE8Qg9Yv2BNfXD+rguJh4aLXewlMbpPHnRkbIN2L7zoltg2THwfz9u/tpt7h3vh873RqZ4y08Hxv0+cMn8qZuEngw73LBrsL4OCzlFuizFn10+AdZKLqtYShM/TUBIRt73/Kaizhyzagj/9Wv67jw7ikfIWDptI9bOMiNP5bXIicRdR7jvETLLJ2r7RYQWwTX1ft7qchqPVOhtPkoZACVliNDoJy6bv/3IEIbQrg9hQoCVDDnhyRHmxdFzhDcUSbBeZgSb4dfuYASlDID0kKpRhAmNjtRwyyYCjxBLaZwpEKdeZiiP8L7nzNcuMnoh/c8nyHN79KUGverxCIOL5NZa9BOXzV+42HtMw3iEjNoJBHuE+9+FdyVbT8av6UxIRg+NjjEDOVHMqiE829/TZKiC+rqGosxW7sWdIxzPI3S9qE0dotBzTZiJOmv0hE1wlzW/9m/LGZIiuGXe3xCGFss8XqU/9UVDDV33gkEeIYDvuY7cXPJ4hPKIOcK6hpvnydVAj3CE0X1+IwlHzBGmSPAzdDYatQgexqSZIIA4xt6wlB6iliAMZZUuKuR0vk8vE/C2emfzfvAJ81+/hvE9SQJ+4KzwX16grmp6oOeHMfN2AP7d4+aP3iDYhTrhc4R+odEAsYxie4SelVxW6VKajFwpazFGjpA0I5g+MXAwzsSZVUPoQhZAEbagtaahKLGLmiOvI+w/uTdHygnZuHIYu51eaQR8slA1R44Qg15dv/ZvyxlcKJGASGDI8omdDt7698bv3JFiNgcP+L/m5aAPfOiNqdd6Tv2je4Q6LpQG5AiHmspr4ZcjHKGIEKFCo9S78wZER8eZymuxlO7NBpoUPY8w31f+GNAHyjWb98FNSgjeuMJ+tlZ0dNUzvQv+acKyij99zvzlWw/2z+Vww67hGJLsYmCvUfh7hGM2ERyt4zZCpFGZDMxTPFqJ2xIeEkOI0KO6AdS6tCATZp4marGMK5E5AY/QsaRsySj8c4TFvonzQYJvv3zVSoZ4LY2TMKpRk+Idn9fvvY6860ahM8zUpmqHLviHRv2wzLbf0T6AepfeXCLBhnCEkhvmt4NRQ6PBK9+kqKhYTrsfWkB0dMwEIUYNjQYcZCtWjrBAXhwpNPonz5nvutF3r/umFVLt4Os1xpxLvzThZ18x7zkhODscjS+W8fcIe4N5weq7bWVPpcBmOgMZWSyjpHo58qH4x/Wg/2GrjUtVbghHJWR01KRo6ciLiQiNjpsjlPriEnaCED6Vak6xDAa9ug2d7a0up3G7f4IQVtNtbUDP5V9/yFB1fOD1KTkFzRyiQbPT2A/FCEdmCjR13Fwir3g6ezlpG0OvmYDyiaGm8loEe4TbKkoKI84ZIBwdcvO5+AAAIABJREFUwcd1UZShGuxBYAF8Zdt3IVgBwDN5vNQXGvVtf+Hsu93U8ckXzR+53nevEwh+8BzJiYyH76eKrKhu93E5TbbbNMxKZnbcRkiP0LOMKypdUoLm1zP5TH+T1XH2vRGEo5+7GvScHq7QnSibFTM5RIYwnHC0riEnQiB+5RNxj2Eas6DeecGdLrWNBDPwa8ll7f8cGBplGunlDENx4EQUkE4FRT8++aL5sa/Tj98jigIIIAtD7JgDc4R+jFBK2NKhpHCmMMAjHMF/8g+NTt4j3PQoZSwiDY0SYDGNoZxC3cT/WAswhD3V6EuNA2MT5BE6Cur/2xXzzmXiN7rL4ofOC153EP56GVuebaOkkBVDDWNidtxGiOkTYC1je9h9+DThCzX6q1+boCEcLk1Igc+tBhrCMt3tcI9wVEIKR21jEL9HmCJI9XdIGjNH6HpLdzqY37dz1kg2V8651h1CLOPXB/Vohrwm0BAiMDr67B79V180/tu3puxmCEpqGEOoBqlGAxjBI6xrKEgoyTBpUJ3JKGIZv9DoSOshuOm2n1g/0tAorOjoMHqZZ/foFX8hqyWWyUvIigfZx5Ch0eC4qMXtS+TNxxlP3q+X5k6HEZkIqZcZRTUaWEe4lB7OI7x/gz5epc65xGMZwiGH1Ne6eH6P+gm1ADxU5h7hGIQMjdolBEzlXqSGEB5rPe5gXpdYpovS/sspEOQ93ZhcOcLRPMLXLJLiIK8lQDj696v0+88Izj6l4Q2hbqJl9Nny8DBLCQ2K7/lb3W+8e0OjBYkAOJULqqAYpXzCJzRaH62OMDAW4ifNCGg3OpFGg8PqZR6vUu/cXQuDoqb1IgHOUsIwqtHLdfrkDr339OCN7t0XGZ/x66XJjEwMbFsIoGOgrR+8p06YOULNhEBg985l1BF2bI8wrCF8YIO+dpH8+6cOftg4+17Ijqw2lQ6lwENl3xX7cIUONeV4IhwiQ5iC347mxB6/UJQZ6ybSeYToWeveCqBjzwF2eYTVDnW+nN7ddk87SCJiYI7QxzsJ04IyQDi6rVKXgyILpBtOLr3TRUkepSMifFqNbLXx2Veo3yCI+n7G7mQOARUUI4TT/Zpur3nqHMKQEYNWvrfjtsV1ebLmM4xpzNETFsPqZS5V6VqL/U8VFfNyzxicKRwIRwNa9eb30+f/33Pm268X5BD73PkiMzTKHkDBFG2F8QitBCFzuUgC0TwvgrN2AqxlvN3uGcLwMY/7N+iHvyn1d6vmatM+UoyeEvI2egymvN+1n/mvlQ5erNNI57gxOTyGMGTfbXt3K0qM8N2YdcQDcZbAWykoYYyMZE7sk7TtdeGsjvDqZWrdvhxhcC+McfKXc/4eYbWDxX4FYzrcCQaDqumDYWZQ1lsUgF8U1/aJT+XJywEe4fCh0ZwIzWTEwa7UqatANgwDc4ReySgChzG1dTrOMEKLYUsJH9+haz652EqH2mvmTB4v7juyLX9Rj2UwTIqPPk8HxkUDyPn0JLLnnTkJU0Gx2cayT9d4pkfoVMqAtYwrHbpoNZMKlyNca9Fal95xhPyv54T7nhvsWw8k5z/xiklFRYr4GsKHyzRkqnWyHB5DmPE5u7mwjYFPjjBCsQz647djzmCC5yzmqrHzGkJXaHRORsfwNULj3F7JP0dYVrHYHxcKbwirg4oIA2CWElouiF/+r24bwhy56q+XGS2jxhwjcLlOz41gCAfmCH28zLOFA6PiZCIe4VIa26HHEgG4VEW1ww6S23oQoKeXsf48UCzzD2t0QcFrFiZWqmuzwwqNhvEI/bRL8MkROhOE8Czjlg6T9lZpSI/w/nX6TUcFAvz0zcJHnjGtyocxxTJhNl6bSod+wxESYAi/aYXMqiHc2dm59957FxYWvvd7v3dnZ2ci1xyWkKHRvS7m/HOETS36HOH+e9XUR6medmK5AvaCcpUWeC39XtednAhwCkfre2kR0He7rNIj/RuBn1jOS7XjO5J3IMzQ6GqLAr5NGut2jjAf1G50tE2k6JH11jWoBrvCLJjgFmsbLcboOwu/6OWYEXuLpWHEMrtd7HToqTxZZ6UJt1V6ZN8jPJ2H0xD6BS0sBcefPGf++KvG2uL8VKMVlREaDTOJad0/+s00hB2DKg7v3LWMnU8mZI7wgU36LUcJgFsWyLkC/uIlE2PmCIdsN7qt4g1HSK1Lmd1oHyrTbz0h7MxoaPT973//6dOn19fXr7vuug984AMTueawDBEa7c1wx57n+xttOmV4so7mMn6tW8IjEKRTB5bV2VkGLLesptFif9ovIE3Y9KkjDEOAWKbSGd0j3On/BYeCuU0MDI0W9j3CgAqK0Ub3eZvBvlAbJS6K/tOVF7/ybfh/Te3xhhFaHBlGLPN4lV6cJyeyYKYJK+qB+3WmQByhUd/tuyCRbZX+1SvmD50fa4vLsySRFKhpjNBomJr6Lf+vg3ki1My++ZSuZew8GoY0hPev028+2ltmP31B+OOnxzWE+SHbjVY7dDFNblskD7Ocwocr9M3HSXTja/yYzK7/qU996i/+4i8URfnZn/3Zt7zlLb/zO7/j/Yxpmkwbefz48e/7vu9rNpuaphnG6NOORSruNGmjMeAK5aaYprTRMFI62etIjcZBga5qQBKUdjOwfHo8ZIjVhmbdZLkuZEiq0RirS382JW/tNZcUCqCqyrLRaeyflzMQt+p9D2SvqwjdhjOgvyiJL+9qN2f6Hlqz2Ww0GvWujG6zMVLXvwzE7Qb7u9huKxmj1XCkpkQq7Ta7jcbg7hQb9VRBII3GKM27FCpWW+5benlPFEhqq95h3mq5kVJAGo32IiEv1fqWipPdViqdGvqucilps9ZtKAe/9VPbwnWZvvWgqqqqqpI04LhkdElL97299ZZcMDsNVi4wg9R2gzQ8GZ7dZko0R3zONjkqbDZTIS/ytfXUTQVS7ZLL1e6tOfdKWK+LRaH33R0RyJV675etqZKgG8yVQ3XUNeX7T5mK1hhnPpFoijsqbTQM5wZV10lakNSW+4EXIKw3BvzKV2viDUXfbUoUlJ1aw2n5dhtExMGXK3RJXTv4z1d2hHmpt2YUKm434f02nVS75JWGdL2iWhf4tiW8e0d5aK1ZU1OCPnjzZCJTsRpi47XZqIsX5ugtRXxpTX9jqe9u9zSy2ZKuV1STKuW9ht9pzNqgCFtyxCCbzQrCgPPQZAzh6urq6dOnAVh+od/Hrly54v1LQRCog5HvIS3QtoGBV6h16UoGlNKsQNsGMUxqy1VaOsmkxrqHgWRE0tQM60dYHuGYPy6TQlOjizIFsNslJeng/osS3eseXL9tEFGARPp+4BEFm233r0wpNSltGyQjmKPdXVE0X9AE5q9WUemC3PcTZYF2Qnxx6OUIR/yCciItN90/Zb2NU1la09g/vaEhL1JK6YksrrZ877BtjHJXRYnudfv+rxcb5EzOdP5NyJdCIVQ1CPNjHQMtg8xJ7O+xKMF1DxZtA+mxX4RF2ax0xZAXeXKPvHrOfL5ONtqMX6Ss9t5ZAPkUlQRUOliQaUunmRT7e0mnkCL44bPGmL9FNkU39IMvwrpaVUVJZvzcI4q5pQ74lTdVctcR37sSCdVMiOTgX1UdsnDws3IiGvrBI7LiK9Z/5lLmZZ+XzubBLXLHomlfTyT4sXP6R54T2gZJCyM+q0yKNn3eICbVLpmXjUUFf/6y+1k9WiUXS1QAnZPobhcrafY1h7UUYT48GUNIKbXsM6XUz6sTBOFDH/qQ3xUMw1AUJZMZPkOyTylrmAIpFAZcoUOMI/nex3KihnShsB/i2GvSnGQUCoWR72EgxbQBSSoUBABm1ZxTaKEwUqOUfQqyTtK5QoEA2NO0Ewt5u03UUt5s6dR+IM025iTN9dudLBp7lFj3Y9NoNFKZgpLSSsURH8VK0WxVaaHgTui1dZjQjs7nnX+ZUwxBdt8DkxaM6wqDv2ImS3nz+RZ1/b9bXf3CAlQiMq/ZFYwFhRQKmQKQEbWuXFhkfVeGYJRyQ9/VQsbQUrLzt17tGjct9l1HkiRRFAcuyDzQNbV8gRFX3WnQ5bRR9LnCSsF8Ysf9TACYKWNOHvE525xJodxxrzc/nq7rP3pTqrtJK13G/dRM4/biwf2cLehlmjtdIB3oi4UU6/cGgBvn9LfckB1T/bqQM59t0kIh49ygul26mGFsFOfS2B70K1c0/eyC7HfPckqTs/mCI+gqqTTj2JQKgGZqmVzB6pnXgHk019tDjhRMdZfx0jn52p7x5lPE+ZmfvZXe+kn9WJYsFXzvKpj5nFljfWt+7Or6yZJ8rohfv+R+hk+/aL5+hRYKykJa16Sc3/00m81CoRDeIwzDZHKEx48ff+WVVwCsrq6eOHFiItcclnS4FmvW6AkL11i4qIsI0Z/IHF816rygZqJt9DVLdKmB9vprJyz8xDJj3ltJJswmSeVOrwuGk/AF9c5c0bB45/IAWG3Sm0u+ovO6o/PnSf+a+lHFMm4p0+UaZZayDSSgTZ1fEaEFsyEtJtRWYiWD3W6oRucUeKJKb10gx31yhNtq37KxhaMBYhkAP31BGLsGhC2W8evzV5B6/WkD8Gv0YyEJ7gbWrvIJ9Pf2dD6ZMDnC+zd6ShmbEzny5uPCkzt0nPKJYesIj2RwtkCaGnVpix4qU6vVRkmOu4JiMobw3nvvve+++yil991331ve8paJXHNYsj49IFxYoyesP7tMRXsSDTWCcRrCgHLg8Nj9jSw1rHONu7Y5V8dtC7/0/piKVj8VRsVTO4FhxDK73dHLJwqy2+DpJnY6uL5I/ArqnaeBUznfYUwjimU8RuhyHWdHDUb4KcW2VHY3L4uSQpiVy6P9Ri4EgqMZ4lca6OTFOp2TSUnG8SxhNpep9KuFz+xXfbQCC1d+7IYJbG7MFmsB9azLgyooNlt0xUfEC0AWSKd/tKSrfAL9pYTOJ+Nd4S4aGp7Zpd/g6Zj/0xcEYHSR4LBNt61jBAFuWyIP949beqRMrT7G8/6y84iYjCF873vfe+nSpVOnTj355JO/9mu/NpFrDkuwds7G6RG6eh9H3V8N1khCh0c4pmoUjlXofTldsljXeHoLv8qnMe/Nz9Uoq4z6h/Ae4WgzmCy85+WNNj2SIfM+t4p+j/BU3ncGxYgeYX/fH5Pi5caIqlEAGc+ELwvvSF4nXuWqxQjzNJiczAWVndhcqtJbFwDgeBbrPqrRJcf5KaRHOMIcDy+uAS8WAUMxg4WjbR0aZbyGNtYwFideQ+isFyw7nsxAj/DBLXr7EmOS6N3HyIUSiW36hN0B4BuWyNcc80ZqGq42qTVVe14mO/H23Z7Mxl8qlT772c9O5FIj4ywkCKDW7bVYg1XU7NgImvoELFMwzg1rtJk7LvZbQBHvfKI5mdQckam9/qm8Fis+3RHr492bn6vhLHuyUQSEHElY7WBh5DpCT2h0rYUTWSs8zv7xdY0W9gV8ARUUbYNmUkMfKIty36Z/tUkX02RkP8zPq15r4Zh/IM6v3DPY0wrPqbzViGCAdb9UhdXG/ZiPR7jdX3t6Oo/PrwNAM+L2F/CJ+wXUsy6nrVwD+642/KvpLbylhK46QvSv5O02PZLprb2BhvCBDfN/Osr46QT46QuC30CrgQxVR9jUQdA7Zr1uiXzs6wdf9yNleusCsXKf8wpi7rt9eDrLhA2N9nmEfZV2E+ksFYzz9DSR19i+oLfnkzs0qjFCo36RnDHDtn6hUeYOEt4j3OnQ+cnVEa636NEs8XNe0T8m91Tet93oaJ1lXD/3Sh3nxhBpOSMNToJDo36/uzr2GCaLk9mgHq02T+zQi/MEwIIC1XAfZzUTLb1v6Z7ZH887kcL/YJjuzk7Xt5412CMMqOm08HZZc9URon8lO6tyCxKCQ6NWTxnmP/3IDcLI73ue5TT74WxE8Lqlvv4yj1Tobfth24BmxRFxeAyhX3TIhbPfpkuwEItHePCej9O6xcZODlU9rS6K0uAc4aKCvS5jwLQ9eGE0LM/G66Nsq3TJkyMcJjQ6ulgm7xnkttrEyRy7wZBFvesIjeZ8242OFhp1tVh7YaTmajZ+HmFwaLQksx33gB6eQ3EysDWdzWMVeut+F7RjGbdTWFZ7KSUbawAFncTcxIEw3Z2AdegXYrEYySOEK5jpXMnbKj1yUFBPAjzCjoGHK/Qbl9k/vSgxRjeHxK/5DpOyCvuGzxZI26Ab+4/ra+WD/OW8QmJuLnN4DGHIHKEz6OfaBFt6tB234RHLjK8aDfQI+/xdZo5QIFhQGM2RG9q4Qh6mU1hR3R23ASgpt0CASUODJLg3hfAUJHdr4PU2PZYhfjNy4coR+qe7RtuOXd/OaO22bTI+wziDd968BNVgHIMmpRoLbk1n/6xXmvTGud5NHs+5haNl1a00tozQeoumx+tZH4acxGikyRxGaBEslgk+l4BlCFlimQOP0NnCPiei7RlBavOVbfrqeTKRvKmLoVSjLt3T7Y7+Mg+X6e0HhnA2VaNJILgHv0VLhygcLKyiDGf5RExiGWeLtUl4hNaJlZUj7NvimTlC+Ohlxi/tYFZQ2LPTnITMEXpngg9FTnJvE2tNHM+h6N8fvKEfuMUnc2StRZm7zGih0WK/R3i5hnPFoS9i49doN3jnJT69vycnlhnsET65S2+cI3b073jW3W6UuWauy5OndyN/W+ETGg0Qba0EDqAYITTaMRhiGetIV9MgCwf6XoEg4++c3b9Bv3klklPDUIN5rQHL9n/a0dGGhpca9ELJERrlOcLRCDOY15kghCeYEIMhzDrit+M083Re0Dqx7nr6cEoCROHAS7YHMbpgThNtjO2tMoUYFc/pHoASrnxinLgoAAL3NrHWoscypLg/r8eL8zSgpDAns/e40SaWzMl90YjR5k7Y+KpGfYah2zCjoxOZUA9LNeo/vsriUvUgLgrAW0rIXDNn8uSpnciVMvCpSwlQjQZ7hH6z6W0kjyHsmu4oiO0Ren3lgDThAxvmN7OUMuOTE4fJEfYfa2xD+GiFXpw/OA/NK3GrRg+PIcyG8AhdA/lcm1HboJF23IanoH4ydYRW+YRnsgSsNOG+pWfmCOHjETY1OrKKzIIpzS/36+At0uFyhFX/eFRIXNO911o4noNA2EkO1YBA+nQKfnPqRwuNusZhjm0IGXmBmgaRDFhjTL3MpHJvRzNkZ1BN/eNVeovDEB7zeoSsNXOmgKd2R68BD0+KQBLcBzVv9MUmWCwTXE0PQA4RGs1LsHKEzulUFn5pQt3EP2/RN/ooZcZkqPKJskqdlcTfcIR8rUwBPFw5iIsCmJ/RgvokMIJH6JKTtHREfcaMIkdoXXCXdUp1JqL8Q6OMV3cSHiHD1RinjnBnjCJCi3z/5NK1Fj2etSZTMqKj3uIWvwqK0crPnUKthoaGNspsehtmXmCjRY/6125bMGNQ7QmJZcLU1D/e7xEe83iE3u0ewOmeRzj+PQ7Ge07yCtNsgkcShvII+79Hb2eZgkQaPY/QawjZFRSPVunpPGE2CBwfS5wR0n1zqQRO50nXoOstPFSmty86DCEvnxiZbAjVqKs8bq6/xVosodFJd5Y5EMvQkuflLDnO+3WNXcnL7LLWnECOkLHDVjt9GQKLkJ1ldjqMwTdD4dwmuibqWm8fYTqvdc0duD6Vh7emXjNBMIrizimsvVKnZ/JjdU5keoQBw9Bt5liHgLY+gc4yFidzAyooHt+hF+cP/vOEp5SwwjoAncnj6Vg8QljlAY5dwqBoGb5VtvMyGpqvEzzwG5FTROsP0weUT3ifjJ8E+stbvnrR8REIlHA13GAlOG5fIg9X6CP9HqFfj8boODyGMIxYptbvFRW8qtEYO8vUu5PJEVpvKTNv4fwFd31Doz4e4fiq0f7gRluHQRn21SsQYFL1DDIcFmcl8lqTHs30bI+37SdYLQWYHuE4a8betl6oj9hl1IbtEQ7yP+BTsNWakFgGVkcef49wow2T4nh2gEd4xGM8ThfItjqBc2QYXGnCnQ7mJF+1qkCwlMa2j1MYMCTZwpsj7BhU7v9h9mze7TaW+z1Cb42QxVqLnspFGOsKOQsW1lzu/rzmNyyRBzbMF2q9WlKLoowWS88cHYfHEKZFdAxf9bCFxyP0hEYjLp9wqrEnUrZo5wi95RPoj08yyyfgrxod8968rka5Q721EwDSIlFDJNt3OgyXdyicHuFG+6AbNTNP5q3yPMVybsZJp9mP6MoYXUYtmB7hdvugZsv/Hty/u26CUrcXMjLBNfWPV+kt833f6fGsO5RaYUURzuQJgKjbX1jkxL7CG2boxclKhvj07+1dLQB2jtAjlrHiWAyP0KcWaCtEbGAcciLbAHvxeoSvWyL/6Xn6qrm+3m+kX98QA4fHEJIQ+sNat88QFqfXa5QO6pQYkoMcIev9dAb9aho7R3h9EU/vuv+yoY3VdBvAnCc0WmGpHjBE+cRYqlEABfngdbUThPAJDzI8QpZzM046zV5+l2tjKWUAZFKk7anF3GzTYLE+WBHstjEZyahFcAXFpSq9dbHvF5+TYdC+nBwzR7iURl6Ko3wCnr7bA9XLfhUUYVK23uhI14TiFssMnSMMEyQfh/B6mbKnt9Trlshaqzd0wknMwtHDYwgRIjrqajPmanw8mg5+KLL7hc9tHXIKExkT09JBfSYzFOXei6GbUA22k3e+SHa7tNz/6k5ALONxNbZZOxpCi2XGLJ+AFRrdf11XmziR6/2ZmVmpawdTSixO5fCyJ0c4bmjUMoR1Ok4RIXzyrJttDAyNeoVCk53BEtx321U7YXE81+cU+i2b63Ik6j5QFq6438B1uJxm62UGSkbBLKhniGVgG0KXx+9tqGuxOaijzZh4T71+eEOj1+XJcgYMQxivcPRQGUK7qM6Perevc1hBQtNRZB2DR2hFnDQTzbGTcBbWWayhIZ1iSDbmZFih0ZqGgsTuBEyAWxfIY9W+5zYBsYxHNVr1CY2GV42OU1CP/vPyeutga3CN6bDwhkaPZ8lWm7ryFuNMLHKGRsf1CFlJmi3VnUPy4j2vtI3JSEYt9vtus3lixx0aBXAs05cmrKiM0CiAM4WYPEJXL83/v71zjZHkvM7z+9W1LzM90zN74c6SS8kk16PVStZSEiMvbFoSgxCQvaJkJJDBOAxpIaZiB5KRIF44gW3JImCJBhJRTBzacggEiBURkGWJAqyYkGVHskUBEiWapri7NMUlKc7O3uba90v1lx81XVPdde2u6q+rus7za7Ec1tRWd9Wpc8573uMc2B3Ca4LiSoMfCopGmuxQjTrHJ5T9OcKhG2powarFNUfIjJelcEYwLQNtw+XB8vYD7HZHIPRyhJ8QMxUI8wqavhn60FC5OUNmZQkCAiH6aWvVIUocj4LCal3uZXVRUpmZ63jNTpicWmbPDi4Gq0T2QXXW3LzuxpCBcCN6RmgLhJfq+xnhvMoqIUqjioSDebY++LIfXSzDgVciLGAycXWWCRTrw+1dPl4n6xuL8AqE3R7Ob/M3OwLhSnFfONoy0DLcjSDeMM+mIpbZ8F49YeK17Pqy75Jkk5AWa+Yjy5kRDk3KWlxpBFdloxDSGnSjxZdzLq/j/+Sg5CwMCN7ENFOBsCAHLKBwCkYWtP3qaFzOUv6YpmixzE6g38DwGpa3pBC7HrMTJqeW2Q8GA2Gty4vR4rRTheG1Xz7k+ITroORIzNs0des2/Z57RuhWHL6pODxBEU0sg90OLtX4QuR2l7tYxk1vOcSiszQax1ZeixvybLPlrgp+cZffWHRZg2ffSuj16ATwn98m/foJEY+v4mC90VWVZscrI7za5IfcKiJ2XHqEjtLoXP+9bcNRYpl3K/KbJz/Rl4ayjk1vYzmLjSZc39d/+VaXBWSCRwlnKhC6Pg7sOG3G7F6LNSEZYUFhDYNHN/PsHw1NwzNbsuQYXpHS5NQB9oPrA0/D6LsSnRmh0xHKJKRYxnnbj8qc7X15rY6V/ut5SXPrEbZd9m84Jyii9JXN3/tyBRFnJ+AzUD/tjNBnpv65DZcGIQa3El5rwrnA0mSlwFYmmeVYFAf3uwVuh/aaqV8fKyNsuTnLmA0d50CR01ke4QoDEVnSESYjvN5yrwm5fv8XqUc4Nl5b2SwqHV4afLrZE5fG5MUy6Fda4soIJQZNxuW6e+XT6kLt+gbCE4vslSq3Ll23hy6PmhY4R2I3PAYBw2yfMJWEPkltGIZ6hPsZodtAvXtG6Fin0OwiN35plO20+cvR9k6YOL1GmwbaPfeioh23HmHMu428Zur/YWvAXM3CbjfqVUUQyZCp9HaQsYOreS/CzTBoEmsPD9QPzxHKDDkZl+q8qDhn7QfUf3u/tzlZySj2ypjBP+bjyONyTI/l3hNitgKhxzIai5328KOhZHs4iskIzbQ1rh4hgIKM12vuzwvrEb/THn4DsKNKWF1kz/X1MvXe+Fs6LeZUtHsDr7fXB/eMW4TpEW61UPKeYg5/SmZG2OiiYexHZVeJgbNHCDe70box/uypma9frPBboklGAeQcGeHlOj+cD3arcY6OxOW4beE1U//9QVcti5WBjHBYZCieIQleYI/wcB7uGWEI6WaYfYQAiiouVuC8m6aVEYbcmuQlAI5yzLiYqUAY6LLmbJVZ8nGDo9uLszvihZkRxuK4bVJU2Vqdu/bPQpZGMdgmrHURS5AesnJ1dU9G2EAY1WgUwJyy5zVq7p2w/t51oN4jEA5nhFHChimWeXkXcWSEwzKxMJJRuGnz6l0e76C610z9M9ddpscw2CN0HSIUzNCQ3FaLl31Vo4dybKPl4uxxZbzxCUdpFMC8yl6puuy4ntdQcXyTrzgMaGJnSWebIYQtG24btbwQvIlppgJhcGnU0fixZshifxH2Yr80GtMUVFHBWg0epVHs9Mcn/Ktk9kBYN+LR4w1NUHg1MsOIZXz8/sNjlUaHujUezjIuKftNc+xiZVhaEtFZJuLxTSixAAAgAElEQVTeCRPnNz+MUgaAJkGRBv7fZqwD9fCYqX+tylWJufbM7BnhZlD6JYChQLjttubFjiKhpGLDkc1cHW98wiGWATCv4pWKy93kul3y2oSn6RFa2BLYXh08JqlGxyWwNLrbGU6MrJwprqZdIHmZ1bs8uhrFoqBgrcZd48SCxnZCjE8AuN2ml6l249lkPRRgvEqjZvrh3yWMPk0PW2l0rc6P2qwXS26dFdeM8NQyu97Ec7aZy0jjExp2O+YCpjGPYJFXhl8mwihlTBYcO1gE9Ai/e42/86D76c2pYNi7K681+YHIlYCIFAadZbxa3XacExQ7bSgs+KsSMiOcU3Gx4nI3zbt5jSaoNNoYpTRKYpmxKfiqRrs9tHvD30UrIxRgK2NSUFA3UI0v7hYVrNXdE6aigk4PnR522ljwjW1vXWIvbHPzJqx3WSyKVntxw9wO7/VPDqyOjvQu6YXVQblkk4zCw6HR9U1FlfCrq9J/e2H/WRXJYk3F5Qa22/A3Yg6D02LtajNgGbrFUOIer8UaPHqEXnVRE8txNBGl0cGB+jDGDs4JipCTfO4b6t0ywosVt9Kom8VayCJ5FEKXRt29EVyh8Ynx8S+N7ro92qxNTLG/CHthlkbr3aibby2KKtbr3EvJZvp4BZZGiwqOzbHz2xxALa7SqE046uW4bRJYHQ2U6oXB2kc4lC1Zrwt2vOZbHlyVvnixZxW+Is4R/miX3zzHIoqA4DY4dLURVmYyNEHRnIhqdNRAiPUGYNrKTFssYy+Ntnvo9oJfYZ0TFCHdPp2BsOPZI4TzyuRkGHz4CGFKshEJmb2NVOgWvIlppgKhOaLn9V+dsxOwzZCJmaZHP22Nvt7BoqiwTg9etk+mGshr9YQdq01Yj0ksY3/Cejlum4TICGMojVq+G+ZuejslxwRFxcN2/FAe7z8m/cn5vYdNJLGMxnoc0euicJsjDL9wYGiCIq6tvBbOmXoeGAj7dqPXR5FXTIiizVlmsxWqV+2coAjp9hm2NKrg9Rp3vTJOc5lJr54AoMtQpGDf7TBVZYtFDTudsPt+ozNTgTDnWxp1zk7A1l6uxReZ/LFUo7F4jZoHBDzjhFn7DdwdA1sgrBlSLOdmf8L6K6cDRwljKY2qEiSGloFLdX50sE5V0gaW18PcY+yRg37spPToCz3zgRUlEJrF6ujT9AB0GZ3egFIxfGdoaIKiHrdqzDlTf7HCiyrzqdxao4ROFzHx2HuEIb+HzoxwvR4sGYX7+ATXHSLeORXdnvsNZZU9LC5P2HHbJIy25VrD3VLDFUVCXnZfpjEJZioQFnxLo67yB+spEPscsRemWCZe1SjgOR2xqGOn7bmM0M5+RmjE4+tvbz7517gCS6OxqEbRf+9xenwMlQf9LQVOLbM3zOErr/YQ7WujSCgoMcxOmAyNEoYfox7SqU/iRhjSyzzjMUFoYZnLeDlui2RO3c91QpbonT3C9Xqo9xJNZu3BN0KP8QkAcJURlQbbhJ0eKh0RpgRlDZu+1dFuD9XuaA0OkcLR2QqEvqpR12AwHbFMF7Vu1IV/9gMC8Grgm/YlgT1CAG9bZn+/wTlQ67JYMkK7HNF/hCjQZW0rXEkqEHOFt30ZocnQJqZAz/GPvln67A97iFxIXNCiruS1yMsD5ZCrjWBnS+scBkuj8c8RDU1QPHOdv8NDMmpiZoSNLgwejxNhFExfe/PPIUv0h3K42hz49/7PF3t33ziOWMZjfIIB7v22Ib3MtSZf0qM6UYQhcAHFVhuL2mhnIlI4OlOB0HUZjcVuh5ccjTRLMShm9QT60Tour1EARQWa5NnANx2lA8cnABzIYV5lL+/yuAbq7cPa15t+7QExqlEA8youN9DpDSfQQ+XBatfFaNTOL75BuljBsxs84tfmn7/RxXd/PPIKa/aTCYNj08PX0cnQv30SGeGQEcH3rvF3eDcIAawU2Hqd+wushGHvEW61Q+0Csy+p/8cdfuap7ud+RvYaF7ETfnwCgGuZcSgQXg2xkzIWAhdQXB89uRe5iWm2AqFvhc3VXcVKBcTNEVpimdh6hMwnWzLVQLudgPEJk1MH2LMbvG7EPz7hXMhpRwsKhHF5Ts4peHFnYIjQxNpgbOJaRbejSPi3b5I++8NexLDx2Z+Wo0/Tm9jLy9ebWNRc9lO6MlwancAboT0j5MD3N7hz/5ydIwVcquNaY/oNQgB5BS1jr/+6Ge57eLgvlrnawC88ZXzy7fL7bw71YQwFwh6HwYcNRQHMqZCY+5nMDe4Uu9IIO0UTkbIeUBodYxJG5CammQqE/ot5vXqE5viESGeZWrzOMqq7rYzJooZLdW4aiARyahk/2OC1mOYI7amG/zbBXFAg3G5H3cFkMq/ixR1+xPFoGOoRVtrB+fqvrkpffrW3VhP0tQnEvjZvJMW8ozTKc7FarGGwR/ijXb6gMf8IZ2aEI4kMJwfbc+pgCLGDyeRQnl1p8J02/tnXuv/6NunDPxn2MTtUGu30XKIggHkVZQ2un9LQK50ws9bA0qjXXm4fRI4SzlQg9C+Nuo5PmGpjLrQ0uucsE5dqtKj49c/mVfbjaoDRqIWpl4nFdBtmqtG/N7x2MJnoUoBYZjPyenqTOZW9uIMVZ0Y46E3lunpiiAM5fPBm6cc1LkZjFYh9lHCkGeqhga3YB+oxOFPvPzhhUlCgSXhpdwSR4UQp9EcJQ5boCwpUCXf/3+7PHWH/6W0jPGOHLNZc66IA5lXmdWWGSqPiMsKg7G2M1xr7A2TSzFYglP3GJ3bdxifMJfWVjlCxTMMUy8S1fULxe0td0PBaLbhBaGIGwth6hPY5Ql+xTE7xG58wP9NYXlPmVVzY4SsOi8uSNuCyVukE9AhNPnpSApKSEdpVoyNnhLZHZ2MCzhL2mfrABqHJSoH9wyafutGoSVFh5rUNL9o6lGdvnGf/9V2jXcqh0mjLcA+Eb1lin3yH+6Pb0SOc+DS9SWD25q8S8DhmqMX3sTBTgTBANerR+DEfguIyQhl1I86W5C++QfriXZ7HWtDw42rYTX7H5ljbwCs1OR7VqLY/PhEglvFVjW623J1Ux2BOxUu73GlptjCUEYZzgv2pJfZzR5iY96dA7G+BI+UBQ+/dk8gID+fZZmvvER8mIwRwpIDnNl1cxKZCUUHdYNgTy4T6X375Vva/fk4eVa45VBpt97hTMgrghjz+xRu9AuHAHGFyeoRjmASJ3MQ0U4EwQDXqMUtnlsVEqkY3W1BYWC1DIKrkV8db0NhanYcsjQI4dYC9XJNj6hGi2tlTGWz4l0Z9e4RbbcQiGQUwr6LRhVtGONAnq4TW9H70zVJiSqP7qtFoPcL4bwSZ4XCerdW4qZQJEwhXCuz5raSURq3dvJst+O9gsvj47bJrMufPUEbYNuCcpvdnbigjbArKCJeCZv5G2sFkInIT02wFQtlvH6Hr+AT6ukphgTCv4FqDi1GoAiipaBl+apoh3rbEOOIZ7ZAY5lTsdoIHwvwDYUhfqzCYJd8VZ0aoDcwRht8Ncs/NUkJKo3aXtZHyAHviDqBh8Els5bypiNdr+McdvqyzMMLLlSJ22tP3VzMpyP2MsIWlSZ7S0IZ6rx6hD87xiUk7bpsEzvxtjFcaFaUaTcZNHBNjDNTDyggjrBofiYKCnTaOzQl61TVzwZClUQCnDjAgtrKtKcSQJReDYDsBGWFMQ4ToW3K4ZIQq27HVpCpuywhdiVtfOT6DYpmw0/QAShrqXRh879/S6GISxV5zguK1GvxH6S3Ml5XkZIT1vR5hwFbeiAxnhJEDocjSaECPsMWXc6P9Y0QO1M9UIHR68Nvxclfp9wh5Ia5ipS95ObaUKwxmIByhNLrM0LeuiOW373TQ4wEDYf49whhl9HN7gdDTV8Gk0sGxuXh+ozDsc4RXRhmjZqbzXN/EbkKlEXOmfr0eSikD7HngJSUjVFh9TzU6Wbsyp1hGH/HtfF5llf4hOHBNYGl0s+k/UD/yVCiNT4yJzCAzz9yi0nFPjBaE9wgRX8oViDkxEuivZnF8gRXk2Cq3phAjcBze32s0lh1MJvMq5lWXt5ChPlmMwy3CGJwjHG3hgOUK2+Po8pGzkDCYGWFIpQz6LytJmCMEMKegbrBaF4o0cmQaiZBzhD7YM8LtFnKyp2VuvAQuixjDHErkJqaZCoRwW9VtsdNORI9QlyEzcRlhSQPDCD1CmeHUYjeu3Nh8wgZO9Tq9hu3E5a8GYE5hTlsZOJbU+6yeSCz2l4mrzdGWkluusJOznr+xiNeqeDbIU8bCLF+LGQYPpKCgYbAYRVtexJERotJ/pROwm95CkVCQBxrtdnp8nGSaMsLxKXgIR7m3AsLcRScsEAIoKIhrK28gZtAN3yMEcMdSbLtPzCds4EJO/4wwrtUTAH5qGZ96p8t3fkEbGp+IbcpTGHllTym224HMRvsyW6aOk/NXurHI/t/l3uECC5ncrxTYw3fICREiFVXUumynHfbkx0aR0OP767Ta0TLCa2KXWJW999TvtFFURv635GQw+HW7YmTWAmFedt/NW+0gr7hLG+Y1VumImyMEkFeEeuqXtNFu4HctxfbVM5+w15o8oEfoK5aJy2gUwEqB3ePm+qhKUKT9V6hAr9EEYqlGr4Tb+GPHMsOrd3l+Mvqfm+aw1cI7w6WDAHQZ//GtSXk6mW5QG6MsWB8be1LY7kEfORDuzxFebvAbHO3wyeEz9udvNRxwTCEz9Un5qsWFV0ZY6XCvR9vCXkYY82JuHwoKE9YjBLCgwrUm7MXti7FlhOYk0GYroKbkb7G2Hc7yPyL2pVHVbvp6hJZS7Noo/mom1sBWcwLT9CaH80yVELIumjTMHuFOB4uTlIya2NuEbYNrI76XzKuo9h+Agl3Ll7wrmf5Wwz6UNSZGODprgdBLOLrbhtNo1MRUDAotjcqxOW6H4aF3SG8ZZddPUYntFcxMNQLdlXJKwByhgM2ilv06RhmoTw5WRjjGDLWlFZpcj1BmOFJgISWjSaOgoN5lcS3F9Ee1B8LRxycUCWq/tnG1ycUMEZr4jP2NnUwvijKXmblAKLuPEu52PEcISiqrdHjDEKfkzCtCK28ffIN0g5BZIiemavR6kx/0fTQ795HaERMI5227eSseuqokY/VZL9dHHh2zMsL6JHew3Dy3N6WaOooq6l1stpkAFasqodu/F8YQywCYU1DtAMDlOkSWRpe8XdbGL42KMpeZuUDoURrdbXvGnpKGq4290QsxiBTLTBdzjvB6E/6mkf5imRhVoz7YJygCN9QnEKsWMsYMtdUjnITjtsV7V9hIoq3kYDrLbLchoERvN5cZIyOErU040hKS6PjMv49hK7N3TFG+2zMXCD1c1rz81QCUVFxuiKuLYi8Qivt1U8ScBLreDCiM6LLn9okeR8U7m48RqzTa42gaQr8PsWDJxCKWRif3D/9AuOW0CaSosrqBrVY8SzH9GRDLGHA13fbHEo6KHJ+Ab9DaGH0ZYf+YVBodC2+xjGdGuKDhSmNSYjlXCgoT2SOcIqZqdLPFl/3FMt4Z4U4bcx5y33ixgkGti4KCUfcGTJ19sczoEon9QNjluYnVKt62nLZr2qeooNbFdoctTr40qtkU1GOMT8Bmk3StiYMCeyI+QWts4bcw3+20vfcG4WU36mU0CqCksW5PaAbwidsl/57ZzLCoYb0e4LgNQPfuEW4JkYzCtoCi0uGpU8rAPj7R4Ifzoz0+FzW23e5hkmKZVFPcE8uIKNFr0cYnYMsIrzZGsJyNjk+PcIzVEyZlnb1WpdLo6HiqRr29QuZVsJj2vobkLUtsWuoVwSxobL0eXBXx6RGKUcrAtpKw2onNalUk1jf/anM0fzUMZIRJ2TOcKIoqGgbbbrOUlEZZpc2bBpoGBKSwFj5L6jeaATUh72OmrTRqGMbq6mpcRxsbT9Vom3uNT8gMRTUrTTvBLGrgCK7U+QzUxzhN7898f0l9GqfpYdtQf7nObxix3mAVoCaxjHAGKCiodbHZDrVAKiKDA/VcG71Gb44SXmnwQzkm8oXOxxHtWnPMjNDyPJo08QTCRx555PTp0xcuXIjlaFHIK6i7i2X83CNLKqP7fxKoEopK8D3gEwjF1KNgywjTOESIvsVau4dad+Rxt33VKJVG3SgqpliGL02+0qhFmyNEvzQ6qvF6dHxLo3zM0qh3lhkv8Tz+3/rWt95yyy1nzpzx+RnO+ec//3nn3x84cODOO+9stVqccxb5DUaDtNHkzeawN8p2U8qDNz0Whcyrsi7xZrMZ8bfPBq1WK8ZLUVLlBaUXcMAuml3Z9Weu1ti8zJwfaOwUGNtssGazs1ljRZkl4cvQbDbDfxasg0ZXfn27uaxLrRFPPtfDdktuNpuVJlOYiKudLmQDtY7EGdONiX8vFCZVG4b5pKq32LLKmk3vGVs38oxt1tnru/yALvRrnOfYarnfxZstucBH/VYCQAHYdBzTvCnCBwtN0yQp4IUinkD4nve8J/Bner3eE0884fz71dXVd77znY1Go9cb7fN2RTbUaltqNIbfTLaaOZ13Gh57e4tSXgdvNKb/7EsCzWaz0WjEdbSSUigrhvMTsdNrsVav4PpLr9a0koxGY+L1EZ0r202l0Whu1pU8U5LwZWi1Wo1GQ9fD5Xc9NI25V7dbh/TcGB8fQ3Gr2qy01AO6iKudOnooFmXeaTUm/Y4g8Vyt2W00ugDqHR3dXmPE35lj2tUG1ip8WZVFfo1Vjlp3rlJrDO2uqXaZwgq8Pc4zJddjm83hJ4P5gAofCFU1uMIzfiBcXV01a6Gch0pdZVn+yle+4vVfGWO6rufzUZP55VLvH5u8XB7eQd5E90g5Vy67X7vlQnehwMrlbChYgmg2m+VyOa6jLRe6R0qK8xOxI7XRMjquv7QpGTcUWblcjOt8vDja4XVulMt5fqW3VORJ+DI0m01d18N/Fgbv1NXSDUVjjI+vrHdQWOSKsTQv4mqnjqLSLussxvvC8xfphlbQy2UJgKQai3PM/HN4DpV6r7d5lbEbS6K/xiW1I82VhyrzOxW+nBvnOwlAmcNud/jJ0Gq1yuVy9PKhnfF7hOfPn+ech4yCwsjLnl6jPkPZ86pQF+xMsagFb5XLyZ4b6n288eKl1Dfd3k2nWAZATsYrlTEXDphtwvoknWVSTV7mZU3Es84ulhnPYm1eRbUjeprexNVu9Pq4sxMA5lW0DD//xbiYtfEJr4F6/6fbgkb3/6S49xbp9OGAG1KT0em5r7euipKuWCsJaylcPWFSUPBqNWDjlRemPG9y2yfSTlGZ+DJCk1jEMrsdLl4sAw+9TKDDoj9278PJMWuBMK+wpptZl8/4BICSJnQdRKb4l7dKbw+yWmaAwgZ2c1tURdl+lvrKyUqbz6fNcdskJ7NXKhgvD+gvI6M3QnfyMhcwRIiY5ginlhG6jf29tMtvKY1/Jj5LLWIkzmdMEsqkPhmhz/jEvzshCXRYI1wwZ+qd77+1Lp8bw2ZqdOZV1Lt71qa3pDMryit4rcZ//tj4pdGmwfPKrL0cx0JR4YIyQhntfYs1rgXJHZ3Mq9jtoNsTuozQpL+kfuAbeH6bv2kxQiAUMlM/a19614H6lgHOkfN+t7q1xN44T5FwmniNEgorjTKgqKDSSetAPYCcjIuVMfMAszQqcitnuigogowdYjHdrnZEr6c3WXKzG31hK1IgFGM3OmuB0DUj3Gjx8dZCEsLIye417WpHnOnPos522rzaTeVAPYCCMv5ScrM02jT83hezTEHGgpBvRRw9Qrbd5lutMTcfRcHVXOb8Dn/TYpRjiiiNzlogdPUavVTHivCXI2IkPDNCgWHJFI5WOzyNXqMA8jI4Rl5GaGKWRslZxouDOX44J1o1OrZY5loDJXWczRURcQat7TZqHawUo/QIPZ3bYmTW6iDWVjY7r9f4jRE+CUIAXkvqqx0+JyosmftrfHY4J5ycAgaMuozQZFHH+W0qjXrymdtbYZ0NoqHaboTxxieKKhgTupveoqzhha2Bvzm3zd9UjjTxR6XRcXDdUH+phhW/eW5i+ugymm4qJ2GqUQAlFbttVLtpDYR5mZX1cXII9EXqtH1i6qgSOtE21JvdbpG76S2cPcJz0ZQyoNLoeBTcS6OcSqMJx3Wmvt0DxzgvxeNhlgdTaroNIK+MmQ5i772bNwyhG6oJJ5rEIoplAMyr7PBUMkLHkvpz0ZQyINXoeGgSDI7u4CN1rY6jZBqVbFx7hDWxMcksjaa6RzhegxB7LwGoU0Y4bVTJPj4xZn4/r04nIyw7BurPbUdSykDUJqZZC4Qw9TKDj9T1Oj9CGWGycd3NW+3yoiLug1tQsd1GrZvW5ZR5JdjNzotFDVstdHri8m/CFV2OqhoFUArhazgJ3EqjWF2ImBFSaXQsnNXRtRqOUo8w2egyazlUTsKGCE1KGrvS4KqElM6U5+XxXbUWNFxucF0GvTBOl8E5Qq6NVameV8evDURhKGg1urjc4D8RwVYGwJsW8feb/JXKZGNhOu94X5zC0Ut1HkW/SwjAvTQq1vZzQcNaLa1KGQC/cEz60E+MeUcvamyjSbMT0yf6HCGAf3Wr9K5DU3jizano9PbP/8IOv6XEIjadjxbZv3+L/NGnJ2u8PYuBcDAjbHTRMKYwW0qMhC65iGUE61ZKKtbqaW0QAvjZG9idN4x58vMqGENBYCGacEWJvH0CwP3HpbcsTeejXLRVR6NLRk3+w1ukH+3yr7w6wVg4i4FQHpigWCPJaBpwzQirHS4yEC5oeL2W1tUTEZEY5lVSykwfLfJA/XQpa6bdKBCHUsZEk/DYz8gffbpXndha5LRd5hAUBsUy63UcoQZh4tHdxDK1DkSKZUoaW6/zeSHeyglkUWNUGp06Vmm024PEIKXtHd6ulzm/jVgyQgA/ewN79xH2ie+7uU/FwQwGwqHSKNnKpALdZrpvIXi2fUFDy0hxjzAiCxplhNPHEsukMR3EoCPaC9v8REyBEMB/eZf8v1/q/f3mRFQzKbzSQeRlVu/uX6xLdbKVSQG65DY+IbxHCGAuq32yRVpPnQA0mbUNDqDltpUs+SztbWJCt4eLFX5btNkJO8s6Pv52+df/zs2bPzIpvNJBDJVGyVYmFSRhfGJBY0CWM0JGGeHUsWeEaZzpLPdLoy9X+EqBxbvM5N/8pNTj+D+vxS99nMFAOGQ3ShlhKnC1WKt1uUgd415GmNVAuKiB/NWmjtUj7PS4mroOoc0RLS7JqB2J4X/8jPx3G/G38WcxEMoDPcK1Gj9KPcLE46EaFarhzCvQpCxnhNQjnD5WRjj27MR0sexGX9hGLJLRIX5qif33U5XYDzuDgXCoNEq2MqnAPRAK35Fb0iBs61PSWNSpRzh9rIwwpWKZJR2bTSAOu22RpPBKBzFUGr3cIKPRFODqNSrYdBvAgsYyWxq9rcRilDYQ46H15dMpDYRlHWZGeH4nTYFwBksheZnV+qrRzRZ0mXaNpgBNcskIKx0+J9b3s6TudQozyH23pfC5O3Psi2XG3cE0Xcoa22qBA+e3+Wp6AuEMfvXtGeFajR+ldDANeIhlplIaFfobCcKOvUeYxoxwKYfNFl6v8ZLGFtLjTTGDuVLBFgjXG2Qrkw50mbWM4UhY7YjeiPQnPytPZX8NQZjsq0Z5KgOhuYDi3DZWF6Z9KqMwg4Ewb+s2ka1MWvASywjWcN4abWUMQURElVintzdQn07VKLbaOLfFT5TTdCul8JUjCHtp9FKNhgjTgZfpdpEKlUSW2FeNjruMcLrkZEgMz1xPk1IGMxkICwpr9MUyZCuTFrwt1ujjIzJE2r1GAZQ19u2rFAinjb1HeKmOleJUz4YIR04Zzgg5UO+K7hESxHSxj0+o6Xw8L+n40W6aJKOYyUCYl/cH6kk1mhaci3kbXegyUlgcIojxSbuzDICyjkUNN+SnfR6jMIPv2/Y1TGt1fpQywjTg7BEKdtwmiCTAAFlCt4d2D3o685Syzk6Up30SIzKLgVBG3QAAg2OjicN5yilSgEsg7PLMbkQisoypl0npQD2AJR2pm0GawUBY6GeEVxp8OUe1tXSQk1lzcA1TrQOSjBIZxAyEndT2CMsaUrfnIJ1X2pd8XzX6eg00RJgWnBlhRezqCYJICGabsJXm0mi6JKOYzUDYL43S7ESKcIplxK+eIIgkYM7Up7c0WtZxYgILmCbKLAZCBS0D3FzAREqZlKBI4Bz24mi1w2mIkMgg5gRFu8e1FC7mBXC0gGNzKTvzGQyEDNBlNLtYr/MjpJRJD0PV0RoNERKZJO1imZ8+LKUugs9gIER/lHCtThlhmhgKhNVOdpfFE1nG7BGm11kmXROEJum80kHkFVbv8rUaT514KcsMtQlpjpDIJmkPhGlkNq90Xkaji0t1ctxOE7rMWrYmYa3LizRHSGSPtJdG08hsBsKCgoaBS3XyV0sTztIozRESGYQyQvHM5pXOK9hooWmgrE/7VIjQ6PLAAooqzRESmcTMCFO6oT6lzOaVLsh4aYeGCFNGbigjpDlCIpNYGWFKTbfTyGwGwryCH1X4UWoQpgpnaZQCIZFB0j5HmEZmNRCyl3axQpLRVDGkGq2R6TaRSdLuLJNGZjMQmqVRygjTBWWEBAFLNUpiGYHM5pU2S6NHqEeYKoYWUFQ75CxDZBEKhOKZzSudV1DtgDLCdDGcEZJYhsgke9snqDQqkNkMhAUZQPp2YmUcR2mUTLeJLLKnGjVINSqO2QyEeYUBZCuTMlws1qg0SmSPvmqUSqPimM0rnVcAgOYI04U9IzQ4Or29z5EgMoVKPULhxHOlv/SlL508eXJxcfHOO+988cUXYzlmFPIylnR6jKaMnM1ZhiSjRGbR9kqjXJPpVV4QMQTCixcv3n///Y8//vj6+vqZM2ceeOCB6MeMSEGhdDB92DNCahASmYUyQvHEkDS9/PLL99577x133AHg/vvv/+lgKsMAAAtvSURBVPSnP+36Y5zzv/7rv3b+falUOnnyZKvVAiBJ8XzyKscNOWYekxiVdrs9lUsnc1Zvo9XiALbqKMhSxj/BVp9pnwiBeB9Q/kg91jTQ7jHeoc/eBfMBxVjYF2VN0wJ/OIZAeNddd911110ADMP4nd/5nQ996EOuP9br9X7rt37L+fcnT558+OGH6/W6YRi9Xs/5A2PwvoN430HUarEcLHPU6/XaNK4dM7Rqk9VqLQDXKnJe0mu1uvjTSA6tVqvRaGiaNu0TIRDvA8of3tXqXdYytG6zVmsL+IUpw3xAhQ+EiqLIcoAAd8xAuLq6euHCBQCc701AP/XUU2fPnr377rsfeugh1/9FluXvfOc7XgeUJEnX9Xw+hbuNZ45Wq7W0tCT+95bnetd7fGmpCEBq8cWcMZXTSA7NZjOXy5XL5WmfCCH0AbUw19ut8W6vd+jAErUHnLTb7aWlpfCBMAxjBsLz589bf+acnz179umnn37iiSeOHz8e04kRmcO+homm6YnMosmodaHJoCgojBhKo9/85jeffPLJ73znO4qiVKtVAHNzc9EPS2QN+xqmGolliKyiSqh2SCkjlBgC4d/8zd9cuHDBXsCx6qUEEZ4B1WiXpumJjKJJqHUpEAolhov9u7/7u3yQ6MckMsjg+ASVRomMokqodjgZjYqE3jqIpKBLrNXbe4ui1RNEZtH2SqPUGhAHBUIiKegymt29P9e6vEg9QiKTmD1CctwWCQVCIink5H3TbXLcJjKLJjPqEQqGLjaRFKhHSBCgHuE0oEBIJAV7IKzRHCGRVUg1Kh662ERS0CX79gleVKhHSGQRTULTgErPZoHQxSaSwtAc4TxlhEQmMUMgiWVEQoGQSAo5eWB8gkqjRDYxu4NUGhUJXWwiKQyJZWiOkMgm/YyQWgPioEBIJIVhizXKCIlMYuaClBGKhC42kRR0Ge0ezNoobagnMotKgVA4dLGJpMAAhaHTA4Bal0qjREYxzdVojlAk9LAhEoRZHe1xKIzk40RGoYxQPBQIiQRhBsKWQekgkV32VKOUEQqEnjdEgtBl1jJ4pwdqEBKZxfzu65QRCoQCIZEgTHOZhkGSUSK7UEYoHnrrIBKEuYCCpumJLCMzSAwq7SMUCAVCIkGYPcJal3YwEZlGlUgsIxS62ESCMAMhDRESGUejQCgWuthEgugHQiqNEplGlch0WygUCIkEYYplqjRNT2QbyggFQxebSBA5hbUMThkhkXFUiZFqVCQUCIkEoUt91ShlhESG0WTKCIVCF5tIEH3VKC+SWIbIMKQaFQxdbCJB7ItlKCMkMowm0UC9UCgQEglCl9E05wipR0hkGFXa20FBiIECIZEgcjQ+QRCARuMTYqEKFJEg+mIZXlToFY3ILl/8p/KSThmhOCgQEgnC3D5RpdIokW1WChQFhULv3USCIGcZgiDEQ4GQSBCkGiUIQjwUCIkE0bdYI9NtgiDEQYGQSBA5BS0DNSqNEgQhEAqERILQJTQMNA0UqDRKEIQoKBASCUKXsdnieQVUGCUIQhgUCIkEocvYaJJShiAIoVAgJBKELrPrLZBShiAIkVAgJBJETsZGk5NShiAIkVAgJBKELqHaofX0BEEIhQIhkSB0GRyYp4yQIAiBUCAkEoTpuE89QoIgREKBkEgQZiCk0ihBECKhQEgkiNxeRjjt8yAIIktQICQShC4zUCAkCEIsFAiJBKFLAFBUqEdIEIQ4KBASCUKn0ihBEMKhQEgkCFWCzMhijSAIoVAgJJKFJlNGSBCEUCgQEslClygQEgQhlHgC4de+9rUTJ04sLi6eOHHiqaeeiuWYRDbRZRLLEAQhlBgCoWEY995776OPPrq5ufl7v/d7DzzwQPRjEplFlxllhARBiCQGWUK32/3TP/3T9773vdVqVdf1xcVF1x/jnL/44ovOv8/n8ysrK0af6OdDRGS6H8TP34Rl1TAMSgpBN0VyoM8iOZgfBGNhHxGSJAX+MOOcRz4xAKhWq/Pz84yxv/3bvz19+vTQf200GqVS6ejRo87/8dSpU3/0R3+0s7Oj63oul4vlZIgoXLly5fDhw9M+CwKtVqvRaHi9WRIioQdUcrh69erBgwfDB8KlpSVFCUj5xswIV1dXL1y4AMCKo3Nzc9Vq9ZFHHvnYxz723e9+1+U3Kcorr7zidUBN03Rdz+fz450PESOGYRw6dGjaZ0Gg2Ww2Go1yuTztEyHoAZUger3eoUOHwgfCMIzZIzx//jzn3IyCL7/88tmzZwEUi8UPf/jD586di/H8CIIgCGKixCCWWVlZ+eM//uNvfetbnPMnnnji1KlT0Y9JEARBEGKIIRDmcrk///M//43f+I3l5eUvfOELn/vc58Y4yJ/92Z89//zz0U+GiM6nPvWpXq837bMgcP78+S984QvTPgsCAL785S8/++yz0z4LAgD+4A/+oN1ux3vMeOYI3/3udz/zzDObm5vf/va3V1dXxzjCX/zFX1BNNSH84R/+IanjksBLL7305JNPTvssCAD4y7/8S3pTTwiPPfZYQgMhQRAEQaQUCoQEQRBEpqFASBAEQWQaQQtvJElaXl6+7777vH7g+eef39jY+PrXvy7mfAgf8vn8r/zKr8Q7pkOMwdra2quvvupz1xDCePbZZ9fW1r71rW9N+0QIqKr64IMPBs7IWzz00EPHjh3z/5nYnGUC+f73v0/dZoIgCEIkZ86cCXSlEBcICYIgCCKBUI+QIAiCyDQUCAmCIIhMQ4GQIAiCyDRTDoRbW1tnzpxZWlp6//vfv7W1Nd2TySZf+tKXTp48ubi4eOedd1oLI0+fPs36fOQjH5nuGWYH52WnG0Q8zAHdDlPBMAzLp8x5I8R7a0w5EH7605+++eab19fXjx079vDDD0/3ZDLIxYsX77///scff3x9ff3MmTMPPPAAAM75hQsX1tfXK5VKpVL5zGc+M+3TzASul51uEPFUbPz2b//2b/7mb9LtIJ5HHnnk9OnT5rI/uN0IMd8afKocP3783LlznPNz584dP358uieTQb7+9a8/+OCD5p+vXr26vLzMOV9bWyuVSrfffvvc3Nw999xz5cqVqZ5jVnC97HSDTJHnnnvurrvuevXVV+l2EM83vvGNr371q1aEct4I8d4aUw6ExWKxXq9zzuv1+vz8/HRPJst0u92PfOQjv/Zrv8Y5/973vvee97znBz/4wcbGxn333fdLv/RL0z67TOB62ekGmRatVuuOO+744Q9/SLfDFLECofNGiPfWmPIcYbFY3NjYyOVy9Xr94MGDtVptiieTWZ566qmzZ8/efffdDz300JBfw/r6+pvf/ObNzc1pnVs2sS473SDT4vd///cvXbr06KOP2v+SbgfBMLYXoZw3Qry3hiCLNS9WVlZ+/OMf33bbbWtra0ePHp3uyWQQzvnZs2effvrpJ5544vjx4+ZfPvPMM61W6/Tp0wA0TdN1farnmBVcLzvdIFPBMIzHHnvsr/7qr0C3QzJw3gjx3hpTFsucOXPm8ccf55w//vjj99xzz3RPJoN885vffPLJJ7/61a+urKxUq9VqtQqgVqt98IMfPHfuXLvd/uQnP/mBD3xg2qeZCVwvO90gU+Eb3/jGTTfddOutt4Juh2TgvBFivjUillYjsrW19b73ve/o0aNnzpzZ3t6e7slkkI9//OPO70Ov13v00UdvueWWAwcO3HfffTs7O9M+zUzgetnpBpkK99577yc+8Qnzz3Q7TBErQjlvhHhvDfIaJQiCIDINOcsQBEEQmYYCIUEQBJFpKBASBEEQmYYCIUEQBJFpKBASBEEQmYYCIUEQBJFpKBASBEEQmYYCIUEQBJFpKBASBEEQmYYCIUEQBJFpKBASBEEQmYYCIUEQBJFpKBASBEEQmYYCIUEQBJFp/j8jaua8IUCTWAAAAABJRU5ErkJggg==" }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "using Plots\n", "gr(fmt=:png); # setting for easier display in jupyter notebooks\n", "\n", "n = 100\n", "ϵ = randn(n)\n", "plot(1:n, ϵ)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let’s break this down and see how it works\n", "\n", "The effect of the statement `using Plots` is to make all the names exported by the `Plots` module available\n", "\n", "Because we used `Pkg.activate` previously, it will use whatever version of `Plots.jl` that was specified in the `Project.toml` and `Manifest.toml` files\n", "\n", "The other packages `LinearAlgebra` and `Statistics` are base Julia libraries, but require an explicit using\n", "\n", "The arguments to `plot` are the numbers `1,2, ..., n` for the x-axis, a vector `ϵ` for the y-axis, and (optional) settings\n", "\n", "The function `randn(n)` returns a column vector `n` random draws from a normal distribution with mean 0 and variance 1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Arrays\n", "\n", "As a language intended for mathematical and scientific computing, Julia has\n", "strong support for using unicode characters\n", "\n", "In the above case, the `ϵ` and many other symbols can be typed in most Julia editor by providing the LaTeX and ``, i.e. `\\epsilon`\n", "\n", "The return type is one of the most fundamental Julia data types: an array" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "Array{Float64,1}" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "typeof(ϵ)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "5-element Array{Float64,1}:\n", " 2.8583018881820377\n", " 1.5316609607835108\n", " 0.2663576797419743\n", " 0.4833970744923147\n", " -1.9949973021021417" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ϵ[1:5]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The information from `typeof()` tells us that `ϵ` is an array of 64 bit floating point values, of dimension 1\n", "\n", "In Julia, one-dimensional arrays are interpreted as column vectors for purposes of linear algebra\n", "\n", "The `ϵ[1:5]` returns an array of the first 5 elements of `ϵ`\n", "\n", "Notice from the above that\n", "\n", "- array indices start at 1 (like MATLAB and Fortran, but unlike Python and C) \n", "- array elements are referenced using square brackets (unlike MATLAB and Fortran) \n", "\n", "\n", "To get **help and examples** in Jupyter or other julia editor, use the `?` before a function name or syntax" ] }, { "cell_type": "markdown", "metadata": { "hide-output": false }, "source": [ "```julia\n", "?typeof\n", "\n", "search: typeof typejoin TypeError\n", "\n", "Get the concrete type of x.\n", "\n", "Examples\n", "\n", "julia> a = 1//2;\n", "\n", "julia> typeof(a)\n", "Rational{Int64}\n", "\n", "julia> M = [1 2; 3.5 4];\n", "\n", "julia> typeof(M)\n", "Array{Float64,2}\n", "```\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### For Loops\n", "\n", "Although there’s no need in terms of what we wanted to achieve with our\n", "program, for the sake of learning syntax let’s rewrite our program to use a\n", "`for` loop for generating the data\n", "\n", ">**Note**\n", ">\n", ">In Julia v0.7 and up, the rules for variables accessed in `for` and `while` loops can be sensitive to how they are used (and variables can sometimes require a `global` as part of the declaration). We strongly advise you to avoid top level (i.e. in the REPL or outside of functions) `for` and `while` loops outside of Jupyter notebooks. This issue does not apply when used within functions\n", "\n", "Starting with the most direct version, and pretending we are in a world where `randn` can only return a single value" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "hide-output": false }, "outputs": [], "source": [ "# poor style\n", "n = 100\n", "ϵ = zeros(n)\n", "for i in 1:n\n", " ϵ[i] = randn()\n", "end" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here we first declared `ϵ` to be a vector of `n` numbers, initialized by the floating point `0.0`\n", "\n", "The `for` loop then populates this array by successive calls to `randn()`\n", "\n", "Like all code blocks in Julia, the end of the `for` loop code block (which is just one line here) is indicated by the keyword `end`\n", "\n", "The word `in` from the `for` loop can be replaced by either `∈` or `=`\n", "\n", "The index variable is looped over for all integers from `1:n` – but this does not actually create a vector of those indices\n", "\n", "Instead, it creates an **iterator** that is looped over – in this case the **range** of integers from `1` to `n`\n", "\n", "While this example successfully fills in `ϵ` with the correct values, it is very indirect as the connection between the index `i` and the `ϵ` vector is unclear\n", "\n", "To fix this, use `eachindex`" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "hide-output": false }, "outputs": [], "source": [ "# better style\n", "n = 100\n", "ϵ = zeros(n)\n", "for i in eachindex(ϵ)\n", " ϵ[i] = randn()\n", "end" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here, `eachindex(ϵ)` returns an iterator of indices which can be used to access `ϵ`\n", "\n", "While iterators are memory efficient because the elements are generated on the fly rather than stored in memory, the main benefit is (1) it can lead to code which is clearer and less prone to typos; and (2) it allows the compiler flexibility to creatively generate fast code\n", "\n", "In Julia you can also loop directly over arrays themselves, like so" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "-0.0922283618902345" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ϵ_sum = 0.0 # careful to use 0.0 here, instead of 0\n", "m = 5\n", "for ϵ_val in ϵ[1:m]\n", " ϵ_sum = ϵ_sum + ϵ_val\n", "end\n", "ϵ_mean = ϵ_sum / m" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "where `ϵ[1:m]` returns the elements of the vector at indices `1` to `m`\n", "\n", "Of course, in Julia there are built in functions to perform this calculation which we can compare against" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "true" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ϵ_mean ≈ mean(ϵ[1:m])\n", "ϵ_mean ≈ sum(ϵ[1:m]) / m" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In these examples, note the use of `≈` to test equality, rather than `==`, which is appropriate for integers and other types\n", "\n", "Approximately equal, typed with `\\approx`, is the appropriate way to compare any floating point numbers due to the standard issues of [floating point math](https://floating-point-gui.de/)\n", "\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### User-Defined Functions\n", "\n", "For the sake of the exercise, let’s go back to the `for` loop but restructure our program so that generation of random variables takes place within a user-defined function\n", "\n", "To make things more interesting, instead of directly plotting the draws from the distribution, let’s plot the squares of these draws" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "hide-output": false }, "outputs": [ { "data": { "image/png": "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" }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# poor style\n", "function generatedata(n)\n", " ϵ = zeros(n)\n", " for i in eachindex(ϵ)\n", " ϵ[i] = (randn())^2 # squaring the result\n", " end\n", " return ϵ\n", "end\n", "\n", "data = generatedata(10)\n", "plot(data)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here\n", "\n", "- `function` is a Julia keyword that indicates the start of a function definition \n", "- `generatedata` is an arbitrary name for the function \n", "- `return` is a keyword indicating the return value, as is often unnecessary \n", "\n", "\n", "Let us make this example slightly better by “remembering” that `randn` can return a vectors" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "5-element Array{Float64,1}:\n", " 0.34001302335532146\n", " 0.37708098999100004\n", " 0.9274690915091002 \n", " 1.8905433606687794 \n", " 1.341324090946678 " ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# still poor style\n", "function generatedata(n)\n", " ϵ = randn(n) # use built in function\n", "\n", " for i in eachindex(ϵ)\n", " ϵ[i] = ϵ[i]^2 # squaring the result\n", " end\n", "\n", " return ϵ\n", "end\n", "data = generatedata(5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "While better, the looping over the `i` index to square the results is difficult to read\n", "\n", "Instead of looping, we can **broadcast** the `^2` square function over a vector using a `.`\n", "\n", "To be clear, unlike Python, R, and MATLAB (to a lesser extent), the reason to drop the `for` is **not** for performance reasons, but rather because of code clarity\n", "\n", "Loops of this sort are at least as efficient as vectorized approach in compiled languages like Julia, so use a for loop if you think it makes the code more clear" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "5-element Array{Float64,1}:\n", " 0.012798858878692866 \n", " 0.0021508554969760694\n", " 1.7871380999619808 \n", " 0.01295700050813862 \n", " 1.160665588390568 " ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# better style\n", "function generatedata(n)\n", " ϵ = randn(n) # use built in function\n", " return ϵ.^2\n", " end\n", "data = generatedata(5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can even drop the `function` if we define it on a single line" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "5-element Array{Float64,1}:\n", " 0.19808826211030373 \n", " 2.0981378934403456 \n", " 0.012738734094808189\n", " 6.995407747278679 \n", " 0.1782546533164807 " ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# good style\n", "generatedata(n) = randn(n).^2\n", "data = generatedata(5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Finally, we can broadcast any function, where squaring is only a special case" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "5-element Array{Float64,1}:\n", " 0.5360235550381747 \n", " 0.2068942310590392 \n", " 0.11135078550830509\n", " 2.2804907572357043 \n", " 0.7938845122780964 " ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# good style\n", "f(x) = x^2 # simple square function\n", "generatedata(n) = f.(randn(n)) # uses broadcast for some function `f`\n", "data = generatedata(5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As a final – abstract – approach, we can make the `generatedata` function able to generically apply to a function" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "5-element Array{Float64,1}:\n", " 0.09458626955377404 \n", " 0.033005814857721576\n", " 2.3042374682752587 \n", " 0.20873148987991905 \n", " 4.9001337975643535 " ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "generatedata(n, gen) = gen.(randn(n)) # uses broadcast for some function `gen`\n", "\n", "f(x) = x^2 # simple square function\n", "data = generatedata(5, f) # applies f" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Whether this example is better or worse than the previous version depends on how it is used\n", "\n", "High degrees of abstraction and generality, e.g. passing in a function `f` in this case, can make code either clearer or more confusing, but Julia enables you to use these techniques **with no performance overhead**\n", "\n", "For this particular case, the clearest and most general solution is probably the simplest" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "hide-output": false }, "outputs": [ { "data": { "image/png": "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" }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# direct solution with broadcasting, and small user-defined function\n", "n = 100\n", "f(x) = x^2\n", "\n", "x = randn(n)\n", "plot(f.(x), label=\"x^2\")\n", "plot!(x, label=\"x\") # layer on the same plot" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "While broadcasting above superficially looks like vectorizing functions in MATLAB, or Python ufuncs, it is much richer and built on core foundations of the language\n", "\n", "The other additional function `plot!` adds a graph to the existing plot\n", "\n", "This follows a general convention in Julia, where a function that modifies the arguments or a global state has a `!` at the end of its name" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### A Slightly More Useful Function\n", "\n", "Let’s make a slightly more useful function\n", "\n", "This function will be passed in a choice of probability distribution and respond by plotting a histogram of observations\n", "\n", "In doing so we’ll make use of the `Distributions` package, which we assume was instantiated above with the project\n", "\n", "Here’s the code" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "hide-output": false }, "outputs": [ { "data": { "image/png": "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" }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "using Distributions\n", "\n", "function plothistogram(distribution, n)\n", " ϵ = rand(distribution, n) # n draws from distribution\n", " histogram(ϵ)\n", "end\n", "\n", "lp = Laplace()\n", "plothistogram(lp, 500)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let’s have a casual discussion of how all this works while leaving technical details for later in the lectures\n", "\n", "First, `lp = Laplace()` creates an instance of a data type defined\n", "in the `Distributions` module that represents the Laplace distribution\n", "\n", "The name `lp` is bound to this value\n", "\n", "When we make the function call `plothistogram(lp, 500)` the code in the body\n", "of the function `plothistogram` is run with\n", "\n", "- the name `distribution` bound to the same value as `lp` \n", "- the name `n` bound to the integer `500` " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### A Mystery\n", "\n", "Now consider the function call `rand(distribution, n)`\n", "\n", "This looks like something of a mystery\n", "\n", "The function `rand()` is defined in the base library such that `rand(n)` returns `n` uniform random variables on $ [0, 1) $" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "3-element Array{Float64,1}:\n", " 0.5816565788026318 \n", " 0.41039644413393894\n", " 0.01626862908942206" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rand(3)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "On the other hand, `distribution` points to a data type representing the Laplace distribution that has been defined in a third party package\n", "\n", "So how can it be that `rand()` is able to take this kind of value as an\n", "argument and return the output that we want?\n", "\n", "The answer in a nutshell is **multiple dispatch**, which Julia uses to implement **generic programming**\n", "\n", "This refers to the idea that functions in Julia can have different behavior\n", "depending on the particular arguments that they’re passed\n", "\n", "Hence in Julia we can take an existing function and give it a new behavior by defining how it acts on a new type of value\n", "\n", "The compiler knows which function definition to apply to in a given setting by looking at the types of the values the function is called on\n", "\n", "In Julia these alternative versions of a function are called **methods**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Example: Variations on Fixed Points\n", "\n", "Take a mapping $ f : X \\to X $ for some set $ X $\n", "\n", "If there exists an $ x^* \\in X $ such that $ f(x^*) = x^* $, then $ x^* $: is called a “fixed point” of $ f $\n", "\n", "For our second example, we will start with a simple example of determining fixed points of a function\n", "\n", "The goal is to start with code in a MATLAB style, and move towards a more **Julian** style with high mathematical clarity" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Fixed Point Maps\n", "\n", "Consider the simple equation, where the scalars $ p,\\beta $ are given, and $ v $ is the scalar we wish to solve for\n", "\n", "$$\n", "v = p + \\beta v\n", "$$\n", "\n", "Of course, in this simple example, with parameter restrictions this can be solved as $ v = p/(1 - \\beta) $\n", "\n", "Rearrange the equation in terms of a map $ f(x) : \\mathbb R \\to \\mathbb R $\n", "\n", "\n", "\n", "$$\n", "v = f(v) \\tag{1}\n", "$$\n", "\n", "where\n", "\n", "$$\n", "f(v) := p + \\beta v\n", "$$\n", "\n", "Therefore, a fixed point $ v^* $ of $ f(\\cdot) $ is a solution to the above problem" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### While Loops\n", "\n", "One approach to finding a fixed point of [(1)](#equation-fixed-point-map) is to start with an initial value, and iterate the map\n", "\n", "\n", "\n", "$$\n", "v^{n+1} = f(v^n) \\tag{2}\n", "$$\n", "\n", "For this exact `f` function, we can see the convergence to $ v = p/(1-\\beta) $ when $ |\\beta| < 1 $ by iterating backwards and taking $ n\\to\\infty $\n", "\n", "$$\n", "v^{n+1} = p + \\beta v^n = p + \\beta p + \\beta^2 v^{n-1} = p \\sum_{i=0}^{n-1} \\beta^i + \\beta^n v_0\n", "$$\n", "\n", "To implement the iteration in [(2)](#equation-fixed-point-naive), we start by solving this problem with a `while` loop\n", "\n", "The syntax for the while loop contains no surprises, and looks nearly identical to a MATLAB implementation" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "hide-output": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Fixed point = 9.999999173706609, and |f(x) - x| = 9.181037796679448e-8 in 155 iterations\n" ] } ], "source": [ "# poor style\n", "p = 1.0 # note 1.0 rather than 1\n", "β = 0.9\n", "maxiter = 1000\n", "tolerance = 1.0E-7\n", "v_iv = 0.8 # initial condition\n", "\n", "# setup the algorithm\n", "v_old = v_iv\n", "normdiff = Inf\n", "iter = 1\n", "while normdiff > tolerance && iter <= maxiter\n", " v_new = p + β * v_old # the f(v) map\n", " normdiff = norm(v_new - v_old)\n", "\n", " # replace and continue\n", " v_old = v_new\n", " iter = iter + 1\n", "end\n", "println(\"Fixed point = $v_old, and |f(x) - x| = $normdiff in $iter iterations\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The `while` loop, like the `for` loop should only be used directly in Jupyter or the inside of a function\n", "\n", "Here, we have used the `norm` function (from the `LinearAlgebra` base library) to compare the values\n", "\n", "The other new function is the `println` with the string interpolation, which splices the value of an expression or variable prefixed by `\\$` into a string\n", "\n", "An alternative approach is to use a `for` loop, and check for convergence in each iteration" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "hide-output": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Fixed point = 9.999999081896231, and |f(x) - x| = 9.181037796679448e-8 in 154 iterations\n" ] } ], "source": [ "# setup the algorithm\n", "v_old = v_iv\n", "normdiff = Inf\n", "iter = 1\n", "for i in 1:maxiter\n", " v_new = p + β * v_old # the f(v) map\n", " normdiff = norm(v_new - v_old)\n", " if normdiff < tolerance # check convergence\n", " iter = i\n", " break # converged, exit loop\n", " end\n", " # replace and continue\n", " v_old = v_new\n", "end\n", "println(\"Fixed point = $v_old, and |f(x) - x| = $normdiff in $iter iterations\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The new feature there is `break` , which leaves a `for` or `while` loop" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Using a Function\n", "\n", "The first problem with this setup is that it depends on being sequentially run – which can be easily remedied with a function" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "hide-output": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Fixed point = 9.999999173706609, and |f(x) - x| = 9.181037796679448e-8 in 155 iterations\n" ] } ], "source": [ "# better, but still poor style\n", "function v_fp(β, ρ, v_iv, tolerance, maxiter)\n", " # setup the algorithm\n", " v_old = v_iv\n", " normdiff = Inf\n", " iter = 1\n", " while normdiff > tolerance && iter <= maxiter\n", " v_new = p + β * v_old # the f(v) map\n", " normdiff = norm(v_new - v_old)\n", "\n", " # replace and continue\n", " v_old = v_new\n", " iter = iter + 1\n", " end\n", " return (v_old, normdiff, iter) # returns a tuple\n", "end\n", "\n", "# some values\n", "p = 1.0 # note 1.0 rather than 1\n", "β = 0.9\n", "maxiter = 1000\n", "tolerance = 1.0E-7\n", "v_initial = 0.8 # initial condition\n", "\n", "v_star, normdiff, iter = v_fp(β, p, v_initial, tolerance, maxiter)\n", "println(\"Fixed point = $v_star, and |f(x) - x| = $normdiff in $iter iterations\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "While better, there could still be improvements" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Passing a Function\n", "\n", "The chief issue is that the algorithm (finding a fixed point) is reusable and generic, while the function we calculate `p + β * v` is specific to our problem\n", "\n", "A key feature of languages like Julia, is the ability to efficiently handle functions passed to other functions" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "hide-output": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Fixed point = 9.999999173706609, and |f(x) - x| = 9.181037796679448e-8 in 155 iterations\n" ] } ], "source": [ "# better style\n", "function fixedpointmap(f, iv, tolerance, maxiter)\n", " # setup the algorithm\n", " x_old = iv\n", " normdiff = Inf\n", " iter = 1\n", " while normdiff > tolerance && iter <= maxiter\n", " x_new = f(x_old) # use the passed in map\n", " normdiff = norm(x_new - x_old)\n", " x_old = x_new\n", " iter = iter + 1\n", " end\n", " return (x_old, normdiff, iter)\n", "end\n", "\n", "# define a map and parameters\n", "p = 1.0\n", "β = 0.9\n", "f(v) = p + β * v # note that p and β are used in the function!\n", "\n", "maxiter = 1000\n", "tolerance = 1.0E-7\n", "v_initial = 0.8 # initial condition\n", "\n", "v_star, normdiff, iter = fixedpointmap(f, v_initial, tolerance, maxiter)\n", "println(\"Fixed point = $v_star, and |f(x) - x| = $normdiff in $iter iterations\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Much closer, but there are still hidden bugs if the user orders the settings or returns types wrong" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Named Arguments and Return Values\n", "\n", "To enable this, Julia has two features: named function parameters, and named tuples" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "hide-output": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Fixed point = 9.999999918629035, and |f(x) - x| = 9.041219328764782e-9 in 177 iterations\n" ] } ], "source": [ "# good style\n", "function fixedpointmap(f; iv, tolerance=1E-7, maxiter=1000)\n", " # setup the algorithm\n", " x_old = iv\n", " normdiff = Inf\n", " iter = 1\n", " while normdiff > tolerance && iter <= maxiter\n", " x_new = f(x_old) # use the passed in map\n", " normdiff = norm(x_new - x_old)\n", " x_old = x_new\n", " iter = iter + 1\n", " end\n", " return (value = x_old, normdiff=normdiff, iter=iter) # A named tuple\n", "end\n", "\n", "# define a map and parameters\n", "p = 1.0\n", "β = 0.9\n", "f(v) = p + β * v # note that p and β are used in the function!\n", "\n", "sol = fixedpointmap(f, iv=0.8, tolerance=1.0E-8) # don't need to pass\n", "println(\"Fixed point = $(sol.value), and |f(x) - x| = $(sol.normdiff) in $(sol.iter)\"*\n", " \" iterations\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In this example, all function parameters after the `;` in the list, must be called by name\n", "\n", "Furthermore, a default value may be enabled – so the named parameter `iv` is required while `tolerance` and `maxiter` have default values\n", "\n", "The return type of the function also has named fields, `value, normdiff,` and `iter` – all accessed intuitively using `.`\n", "\n", "To show the flexibilty of this code, we can use it to find a fixed point of the non-linear logistic equation, $ x = f(x) $ where $ f(x) := r x (1-x) $" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "hide-output": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Fixed point = 0.4999999999999968, and |f(x) - x| = 3.979330237546819e-8 in 7 iterations\n" ] } ], "source": [ "r = 2.0\n", "f(x) = r * x * (1 - x)\n", "\n", "sol = fixedpointmap(f, iv=0.8)\n", "println(\"Fixed point = $(sol.value), and |f(x) - x| = $(sol.normdiff) in $(sol.iter) iterations\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Using a Package\n", "\n", "But best of all is to avoid writing code altogether" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "hide-output": false }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "┌ Info: Recompiling stale cache file /home/qebuild/.julia/compiled/v1.2/NLsolve/KFCNP.ji for NLsolve [2774e3e8-f4cf-5e23-947b-6d7e65073b56]\n", "└ @ Base loading.jl:1240\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Fixed point = [9.999999999999972], and |f(x) - x| = 3.552713678800501e-15 in 3 iterations\n" ] } ], "source": [ "# best style\n", "using NLsolve\n", "\n", "p = 1.0\n", "β = 0.9\n", "f(v) = p .+ β * v # broadcast the +\n", "sol = fixedpoint(f, [0.8])\n", "println(\"Fixed point = $(sol.zero), and |f(x) - x| = $(norm(f(sol.zero) - sol.zero)) in \" *\n", " \"$(sol.iterations) iterations\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The `fixedpoint` function from the `NLsolve.jl` library implements the simple fixed point iteration scheme above\n", "\n", "Since the `NLsolve` library only accepts vector based inputs, we needed to make the `f(v)` function broadcast on the `+` sign, and pass in the initial condition as a vector of length 1 with `[0.8]`\n", "\n", "While a key benefit of using a package is that the code is clearer, and the implementation is tested, by using an orthogonal library we also enable performance improvements" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "hide-output": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Fixed point = [9.999999999999972], and |f(x) - x| = 3.552713678800501e-15 in 3 iterations\n" ] } ], "source": [ "# best style\n", "p = 1.0\n", "β = 0.9\n", "iv = [0.8]\n", "sol = fixedpoint(v -> p .+ β * v, iv)\n", "println(\"Fixed point = $(sol.zero), and |f(x) - x| = $(norm(f(sol.zero) - sol.zero)) in \" *\n", " \"$(sol.iterations) iterations\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note that this completes in `3` iterations vs `177` for the naive fixed point iteration algorithm\n", "\n", "Since Anderson iteration is doing more calculations in an iteration, whether it is faster or not would depend on the complexity of the `f` function\n", "\n", "But this demonstrates the value of keeping the math separate from the algorithm, since by decoupling the mathematical definition of the fixed point from the implementation in [(2)](#equation-fixed-point-naive), we were able to exploit new algorithms for finding a fixed point\n", "\n", "The only other change in this function is the move from directly defining `f(v)` and using an **anonymous** function\n", "\n", "Similar to anonymous functions in MATLAB, and lambda functions in Python, Julia enables the creation of small functions without any names\n", "\n", "The code `v -> p .+ β * v` defines a function of a dummy argument, `v` with the same body as our `f(x)`" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Composing Packages\n", "\n", "A key benefit of using Julia is that you can compose various packages, types, and techniques, without making changes to your underlying source\n", "\n", "As an example, consider if we want to solve the model with a higher-precision, as floating points cannot be distinguished beyond the machine epsilon for that type (recall that computers approximate real numbers to the nearest binary of a given precision; the *machine epsilon* is the smallest nonzero magnitude)\n", "\n", "In Julia, this number can be calculated as" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "2.220446049250313e-16" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "eps()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For many cases, this is sufficient precision – but consider that in iterative algorithms applied millions of times, those small differences can add up\n", "\n", "The only change we will need to our model in order to use a different floating point type is to call the function with an arbitrary precision floating point, `BigFloat`, for the initial value" ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "hide-output": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Fixed point = BigFloat[10.00000000000000222044604925031357388532909931412848377287867809936811555686155], and |f(x) - x| = 0.0 in 3 iterations\n" ] } ], "source": [ "# use arbitrary precision floating points\n", "p = 1.0\n", "β = 0.9\n", "iv = [BigFloat(0.8)] # higher precision\n", "\n", "# otherwise identical\n", "sol = fixedpoint(v -> p .+ β * v, iv)\n", "println(\"Fixed point = $(sol.zero), and |f(x) - x| = $(norm(f(sol.zero) - sol.zero)) in \" *\n", " \"$(sol.iterations) iterations\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here, the literal `BigFloat(0.8)` takes the number `0.8` and changes it to an arbitrary precision number\n", "\n", "The result is that the residual is now **exactly** `0.0` since it is able to use arbitrary precision in the calculations, and the solution has a finite-precision solution with those parameters" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Multivariate Fixed Point Maps\n", "\n", "The above example can be extended to multivariate maps without any modifications to the fixed point iteration code\n", "\n", "Using our own, homegrown iteration and simply passing in a bivariate map:" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "hide-output": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Fixed point = [9.999999961080519, 19.999999923853192], and |f(x) - x| = 9.501826248250528e-9 in 184iterations\n" ] } ], "source": [ "p = [1.0, 2.0]\n", "β = 0.9\n", "iv = [0.8, 2.0]\n", "f(v) = p .+ β * v # note that p and β are used in the function!\n", "\n", "sol = fixedpointmap(f, iv = iv, tolerance = 1.0E-8)\n", "println(\"Fixed point = $(sol.value), and |f(x) - x| = $(sol.normdiff) in $(sol.iter)\"*\n", "\"iterations\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This also works without any modifications with the `fixedpoint` library function" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "hide-output": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Fixed point = [9.999999999999998, 20.0, 1.0], and |f(x) - x| = 0.0 in 3 iterations\n" ] } ], "source": [ "using NLsolve\n", "\n", "p = [1.0, 2.0, 0.1]\n", "β = 0.9\n", "iv =[0.8, 2.0, 51.0]\n", "f(v) = p .+ β * v\n", "\n", "sol = fixedpoint(v -> p .+ β * v, iv)\n", "println(\"Fixed point = $(sol.zero), and |f(x) - x| = $(norm(f(sol.zero) - sol.zero)) in \" *\n", " \"$(sol.iterations) iterations\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Finally, to demonstrate the importance of composing different libraries, use a `StaticArrays.jl` type, which provides an efficient implementation for small arrays and matrices" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "hide-output": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Fixed point = [9.999999999999998, 20.0, 1.0], and |f(x) - x| = 0.0 in 3 iterations\n" ] } ], "source": [ "using NLsolve, StaticArrays\n", "p = @SVector [1.0, 2.0, 0.1]\n", "β = 0.9\n", "iv = @SVector [0.8, 2.0, 51.0]\n", "f(v) = p .+ β * v\n", "\n", "sol = fixedpoint(v -> p .+ β * v, iv)\n", "println(\"Fixed point = $(sol.zero), and |f(x) - x| = $(norm(f(sol.zero) - sol.zero)) in \" *\n", " \"$(sol.iterations) iterations\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The `@SVector` in front of the `[1.0, 2.0, 0.1]` is a macro for turning a vector literal into a static vector\n", "\n", "All macros in Julia are prefixed by `@` in the name, and manipulate the code prior to compilation\n", "\n", "We will see a variety of macros, and discuss the “metaprogramming” behind them in a later lecture" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Exercises\n", "\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 1\n", "\n", "Recall that $ n! $ is read as “$ n $ factorial” and defined as\n", "$ n! = n \\times (n - 1) \\times \\cdots \\times 2 \\times 1 $\n", "\n", "In Julia you can compute this value with `factorial(n)`\n", "\n", "Write your own version of this function, called `factorial2`, using a `for` loop\n", "\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 2\n", "\n", "The [binomial random variable](https://en.wikipedia.org/wiki/Binomial_distribution) $ Y \\sim Bin(n, p) $ represents\n", "\n", "- number of successes in $ n $ binary trials \n", "- each trial succeeds with probability $ p $ \n", "\n", "\n", "Using only `rand()` from the set of Julia’s built-in random number\n", "generators (not the `Distributions` package), write a function `binomial_rv` such that `binomial_rv(n, p)` generates one draw of $ Y $\n", "\n", "Hint: If $ U $ is uniform on $ (0, 1) $ and $ p \\in (0,1) $, then the expression `U < p` evaluates to `true` with probability $ p $\n", "\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 3\n", "\n", "Compute an approximation to $ \\pi $ using Monte Carlo\n", "\n", "For random number generation use only `rand()`\n", "\n", "Your hints are as follows:\n", "\n", "- If $ U $ is a bivariate uniform random variable on the unit square $ (0, 1)^2 $, then the probability that $ U $ lies in a subset $ B $ of $ (0,1)^2 $ is equal to the area of $ B $ \n", "- If $ U_1,\\ldots,U_n $ are iid copies of $ U $, then, as $ n $ gets larger, the fraction that falls in $ B $ converges to the probability of landing in $ B $ \n", "- For a circle, area = π * $ radius^2 $ \n", "\n", "\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 4\n", "\n", "Write a program that prints one realization of the following random device:\n", "\n", "- Flip an unbiased coin 10 times \n", "- If 3 consecutive heads occur one or more times within this sequence, pay one dollar \n", "- If not, pay nothing \n", "\n", "\n", "Once again use only `rand()` as your random number generator\n", "\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 5\n", "\n", "Simulate and plot the correlated time series\n", "\n", "$$\n", "x_{t+1} = \\alpha \\, x_t + \\epsilon_{t+1}\n", "\\quad \\text{where} \\quad\n", "x_0 = 0\n", "\\quad \\text{and} \\quad t = 0,\\ldots,n\n", "$$\n", "\n", "The sequence of shocks $ \\{\\epsilon_t\\} $ is assumed to be iid and standard normal\n", "\n", "Set $ n = 200 $ and $ \\alpha = 0.9 $\n", "\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 6\n", "\n", "Plot three simulated time series, one for each of the cases $ \\alpha = 0 $, $ \\alpha = 0.8 $ and $ \\alpha = 0.98 $\n", "\n", "(The figure will illustrate how time series with the same one-step-ahead conditional volatilities, as these three processes have, can have very different unconditional volatilities)\n", "\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 7\n", "\n", "This exercise is more challenging\n", "\n", "Take a random walk, starting from $ x_0 = 1 $\n", "\n", "$$\n", "x_{t+1} = \\, \\alpha \\, x_t + \\sigma\\, \\epsilon_{t+1}\n", "\\quad \\text{where} \\quad\n", "x_0 = 1\n", "\\quad \\text{and} \\quad t = 0,\\ldots,t_{\\max}\n", "$$\n", "\n", "- Furthermore, assume that the $ x_{t_{\\max}} = 0 $ (i.e. at $ t_{\\max} $, the value drops to zero, regardless of its current state) \n", "- The sequence of shocks $ \\{\\epsilon_t\\} $ is assumed to be iid and standard normal \n", "- For a given path $ \\{x_t\\} $ define a **first-passage time** as $ T_a = \\min\\{t\\, |\\, x_t \\leq a\\} $, where by the assumption of the process $ T_a \\leq t_{\\max} $ \n", "\n", "\n", "Start with $ \\sigma = 0.2, \\alpha = 1.0 $\n", "\n", "1. calculate the first-passage time, $ T_0 $, for 100 simulated random walks – to a $ t_{\\max} = 200 $ and plot a histogram \n", "1. plot the sample mean of $ T_0 $ from the simulation for $ \\alpha \\in \\{0.8, 1.0, 1.2\\} $ \n", "\n", "\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 8(a)\n", "\n", "This exercise is more challenging\n", "\n", "The root of a univariate function $ f(\\cdot) $ is an $ x $ such that $ f(x) = 0 $\n", "\n", "One solution method to find local roots of smooth functions is called Newton’s method\n", "\n", "Starting with an $ x_0 $ guess, a function $ f(\\cdot) $ and the first-derivative $ f'(\\cdot) $, the algorithm is to repeat\n", "\n", "$$\n", "x^{n+1} = x^n - \\frac{f(x^n)}{f'(x^n)}\n", "$$\n", "\n", "until $ | x^{n+1} - x^n| $ is below a tolerance\n", "\n", "1. Use a variation of the `fixedpointmap` code to implement Newton’s method, where the function would accept arguments `f, f_prime, x_0, tolerance, maxiter` \n", "1. Test it with $ f(x) = (x-1)^3 $ and another function of your choice where you can analytically find the derivative " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 8(b)\n", "\n", "For those impatient to use more advanced features of Julia, implement a version of Exercise 8(a) where `f_prime` is calculated with auto-differentiation" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "(0.010000000000000002, 0.2)" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "using ForwardDiff\n", "\n", "# operator to get the derivative of this function using AD\n", "D(f) = x -> ForwardDiff.derivative(f, x)\n", "\n", "# example usage: create a function and get the derivative\n", "f(x) = x^2\n", "f_prime = D(f)\n", "\n", "f(0.1), f_prime(0.1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "1. Using the `D(f)` operator definition above, implement a version of Newton’s method that does not require the user to provide an analytical derivative \n", "1. Test the sorts of `f` functions which can be automatically integrated by `ForwardDff.jl` " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Solutions" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 1" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "24" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "function factorial2(n)\n", " k = 1\n", " for i in 1:n\n", " k *= i # or k = k * i\n", " end\n", " return k\n", "end\n", "\n", "factorial2(4)" ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "true" ] }, "execution_count": 35, "metadata": {}, "output_type": "execute_result" } ], "source": [ "factorial2(4) == factorial(4) # built-in function" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 2" ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "hide-output": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "5, 4, 4, 5, 6, 3, 3, 3, 7, 5, 5, 5, 9, 4, 4, 2, 4, 3, 7, 7, 5, 6, 6, 6, 3, " ] } ], "source": [ "function binomial_rv(n, p)\n", " count = 0\n", " U = rand(n)\n", " for i in 1:n\n", " if U[i] < p\n", " count += 1 # or count = count + 1\n", " end\n", " end\n", " return count\n", "end\n", "\n", "for j in 1:25\n", " b = binomial_rv(10, 0.5)\n", " print(\"$b, \")\n", "end" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 3\n", "\n", "Consider a circle with diameter 1 embedded in a unit square\n", "\n", "Let $ A $ be its area and let $ r = 1/2 $ be its radius\n", "\n", "If we know $ \\pi $ then we can compute $ A $ via\n", "$ A = \\pi r^2 $\n", "\n", "But the point here is to compute $ \\pi $, which we can do by\n", "$ \\pi = A / r^2 $\n", "\n", "Summary: If we can estimate the area of the unit circle, then dividing\n", "by $ r^2 = (1/2)^2 = 1/4 $ gives an estimate of $ \\pi $\n", "\n", "We estimate the area by sampling bivariate uniforms and looking at the\n", "fraction that fall into the unit circle" ] }, { "cell_type": "code", "execution_count": 37, "metadata": { "hide-output": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "3.142236" ] } ], "source": [ "n = 1000000\n", "count = 0\n", "for i in 1:n\n", " u, v = rand(2)\n", " d = sqrt((u - 0.5)^2 + (v - 0.5)^2) # distance from middle of square\n", " if d < 0.5\n", " count += 1\n", " end\n", "end\n", "\n", "area_estimate = count / n\n", "\n", "print(area_estimate * 4) # dividing by radius**2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 4" ] }, { "cell_type": "code", "execution_count": 38, "metadata": { "hide-output": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Count = 1010120012\n", "payoff = 0\n" ] } ], "source": [ "payoff = 0\n", "count = 0\n", "\n", "print(\"Count = \")\n", "\n", "for i in 1:10\n", " U = rand()\n", " if U < 0.5\n", " count += 1\n", " else\n", " count = 0\n", " end\n", " print(count)\n", " if count == 3\n", " payoff = 1\n", " end\n", "end\n", "println(\"\\npayoff = $payoff\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can simplify this somewhat using the **ternary operator**. Here are\n", "some examples" ] }, { "cell_type": "code", "execution_count": 39, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "\"foo\"" ] }, "execution_count": 39, "metadata": {}, "output_type": "execute_result" } ], "source": [ "a = 1 < 2 ? \"foo\" : \"bar\"" ] }, { "cell_type": "code", "execution_count": 40, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "\"bar\"" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "a = 1 > 2 ? \"foo\" : \"bar\"" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Using this construction:" ] }, { "cell_type": "code", "execution_count": 41, "metadata": { "hide-output": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Count = 0001230123\n", "payoff = 1\n" ] } ], "source": [ "payoff = 0.0\n", "count = 0.0\n", "\n", "print(\"Count = \")\n", "\n", "for i in 1:10\n", " U = rand()\n", " count = U < 0.5 ? count + 1 : 0\n", " print(count)\n", " if count == 3\n", " payoff = 1\n", " end\n", "end\n", "println(\"\\npayoff = $payoff\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 5\n", "\n", "Here’s one solution" ] }, { "cell_type": "code", "execution_count": 42, "metadata": { "hide-output": false }, "outputs": [ { "data": { "image/png": "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" }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "using Plots\n", "gr(fmt=:png); # setting for easier display in jupyter notebooks\n", "α = 0.9\n", "n = 200\n", "x = zeros(n + 1)\n", "\n", "for t in 1:n\n", " x[t+1] = α * x[t] + randn()\n", "end\n", "plot(x)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 6" ] }, { "cell_type": "code", "execution_count": 43, "metadata": { "hide-output": false }, "outputs": [ { "data": { "image/png": "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1cTExKZNm97//veLogjrZ0ghEsJBZE5aGBfGAGBcSAVVQSEZcuPoCY9os2SZo+WZzZFN3uPxUGUZiqUIVSdp7xr9+tPftt2WjYQQCMR6pNU8wve9730nnHDCkSNHDhw4EI/HP/OZz8D6GVIY5BgmRFDMy5lxIQUAk+HxOTkYIZRNZQs13XRXU9fosfLM1millfBkaPyh449Bo0XYdgzT/UcfOm30lN894Q0rXDkCMci8Ujr62OxTq3OtE2Kbz5k4q3rL3XfffeONNx4+fJjjuOuuu84fpYRh2M033/zFL35xx44d3/3ud70u2F/72te++c1vzszMfOITn7juuutaHdueVkMUHnjgge9973s0TQPAxz/+8Ve96lVf+tKX1suQQiSEg8icNO9NIpwQxuakBRfcph1huqJNskyYDsum8ujsk6+Z3ONvPCbOnD99rvd4IjS26BqtS5ZpKYTzcloxlX964c43nfD6lS8egRhYdEvPqvnVudYoX98HcXDmEb761a++6aabbrjhBsMw/vIv/9LbtV6GFCIhHETm5fTrN+8FAJ7iaIIqauU4G13hOUVDauUaJXHi/77pC5996IvnTZ39p2e9l8JJqHONCqm0knVcV7HqkmVaTqh/KffyuVOvTivZh44/9rpNr1nh4hGIgWXnyLadI9vW6uqDM4/w29/+9gc/+MHp6elUKvXhD3/YG5awXoYUohjhIDIvpb0YIVQSVeYBYE5aWEm8sLpHaCOnJrf/3e996bg4e+vjfwcAqqVJhjTKJ729NEFHmHBOyzckyzC61TxGuD9/cHvipKt2/fd/fP4HPa8ZgUC05x3veMett946Ojraas5r+3mErY51G/B3eUMUAKBuiIIgCHfddZcoigcPHjzzzDM99X300UevvfbaiYmJG2644dFHHw3iFfcFJIQDh+O6aSU7Lox6f3oZm2VdvP4XnzkmzvR82ja9Rj0iTPiTe6994OjDebVwrDwzFZrAq+4KPSetaqk8uSSENE61arr9Uu7lnYltr9t0rmKpT84/2/OyEQhEG+69995PfvKTl1566T333AMN8wgty2o/j7DVsVgD/q7GIQrecIXrr7/+Ax/4QLlcnpub+/jHP/7hD38YALyRTJIk9W9IYSAgIRw4cmouQodogvb+nAiNHS4d+98PfDanFvJqsefTSoYcam0RekSZyEVbL/jX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" }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "αs = [0.0, 0.8, 0.98]\n", "n = 200\n", "p = plot() # naming a plot to add to\n", "\n", "for α in αs\n", " x = zeros(n + 1)\n", " x[1] = 0.0\n", " for t in 1:n\n", " x[t+1] = α * x[t] + randn()\n", " end\n", " plot!(p, x, label = \"alpha = $α\") # add to plot p\n", "end\n", "p # display plot" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Exercise 7: Hint\n", "\n", "As a hint, notice the following pattern for finding the number of draws of a uniform random number until it is below a given threshold" ] }, { "cell_type": "code", "execution_count": 44, "metadata": { "hide-output": false }, "outputs": [ { "data": { "text/plain": [ "2" ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "function drawsuntilthreshold(threshold; maxdraws=100)\n", " for i in 1:maxdraws\n", " val = rand()\n", " if val < threshold # checks threshold\n", " return i # leaves function, returning draw number\n", " end\n", " end\n", " return Inf # if here, reached maxdraws\n", "end\n", "\n", "draws = drawsuntilthreshold(0.2, maxdraws=100)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Additionally, it is sometimes convenient to add to just push numbers onto an array without indexing it directly" ] }, { "cell_type": "code", "execution_count": 45, "metadata": { "hide-output": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "There were 53 below 0.5\n" ] } ], "source": [ "vals = zeros(0) # empty vector\n", "\n", "for i in 1:100\n", " val = rand()\n", " if val < 0.5\n", " push!(vals, val)\n", " end\n", "end\n", "println(\"There were $(length(vals)) below 0.5\")" ] } ], "metadata": { "filename": "julia_by_example.rst", "kernelspec": { "display_name": "Julia 1.2", "language": "julia", "name": "julia-1.2" }, "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", "version": "1.2.0" }, "title": "Introductory Examples" }, "nbformat": 4, "nbformat_minor": 2 }