Skip to content

Instantly share code, notes, and snippets.

@rokroskar
Created December 1, 2014 17:13
Show Gist options
  • Save rokroskar/1d3d8ad1233082544fd8 to your computer and use it in GitHub Desktop.
Save rokroskar/1d3d8ad1233082544fd8 to your computer and use it in GitHub Desktop.
single decade notebook
Display the source blob
Display the rendered blob
Raw
{
"metadata": {
"name": "",
"signature": "sha256:4a46d0e7efceadcc2d6b7c0a18808ade6008f59a458088be9a98a2731aa14a76"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "code",
"collapsed": false,
"input": [
"import time\n",
"print 'starting job at %s'%(time.strftime(\"%d/%m/%Y %H:%M:%S\"))"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"starting job at 01/12/2014 16:10:23\n"
]
}
],
"prompt_number": 1
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%matplotlib inline\n",
"import matplotlib.pylab as plt\n",
"import numpy as np\n",
"plt.rcParams['figure.figsize'] = (10,6)\n",
"plt.rcParams['font.size'] = 20"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 2
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#Post-Process full Bloomberg corpus using Spark MLLib"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"##Set up the environment and Spark runtime"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"import os\n",
"os.environ['SPARK_HOME'] = '/cluster/home/roskarr/spark'\n",
"os.environ['SPARK_SLAVES'] = '%s/slaves_%s'%(os.environ['HOME'],os.environ['LSB_JOBID'])\n",
"spark_home = os.environ['SPARK_HOME']\n",
"spark_slaves = os.environ['SPARK_SLAVES']"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 3
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"First make sure that if there are processes running from before, we can shut them down:"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%bash\n",
"SPARK_SLAVES=$HOME/hosts_$LSB_JOBID $HOME/spark/sbin/stop-all.sh\n",
"pkill mpirun"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"no org.apache.spark.deploy.master.Master to stop\n"
]
},
{
"output_type": "stream",
"stream": "stderr",
"text": [
"cat: /cluster/home/roskarr/hosts_2405675: No such file or directory\n"
]
}
],
"prompt_number": 4
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"you can check in the console to see any output from the spark initialization and tear-down scripts. "
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%bash\n",
"sleep 5"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 5
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"os.environ['SPARK_EXECUTOR_MEMORY'] = '50g'\n",
"os.environ['SPARK_LOCAL_DIRS'] = '/scratch'"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 6
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%run ../cluster_scripts/start_spark.py -c 12 -m 50g"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"mpirun -hostfile /cluster/home/roskarr/hosts_2405675 --cpus-per-rank 24 --pernode /cluster/home/roskarr/spark/sbin/start-slave.sh 1 spark://e1304:7077 -c 12 &\n",
"master command /cluster/home/roskarr/spark/sbin/start-master.sh\n",
"slaves command mpirun -hostfile /cluster/home/roskarr/hosts_2405675 --cpus-per-rank 24 --pernode /cluster/home/roskarr/spark/sbin/start-slave.sh 1 spark://e1304:7077 -c 12 &\n"
]
}
],
"prompt_number": 7
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%bash\n",
"sleep 5"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 8
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"##Initialize the Spark Context"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"import os\n",
"master_url = 'spark://%s:7077'%(os.environ['HOSTNAME'])\n",
"print master_url"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"spark://e1304:7077\n"
]
}
],
"prompt_number": 9
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"import sys\n",
"sys.path.insert(0,os.environ['SPARK_HOME']+'/python')\n",
"sys.path.insert(0,os.environ['SPARK_HOME']+'/python/lib/py4j-0.8.2.1-src.zip')"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 10
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"import pyspark\n",
"from pyspark import SparkContext"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 11
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%bash\n",
"sleep 5"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 12
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"try : \n",
" sc.stop()\n",
"except : \n",
" pass\n",
"\n",
"sc = SparkContext(master = master_url, appName = 'Case Notebook', batchSize=10)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 13
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%bash\n",
"sleep 5"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 14
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now we've got a ``SparkContext`` initialized, allowing us to distribute the computation across the set of compute nodes. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"##Load the corpus data and make an RDD of LabeledPoint objects"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"import bloomberg_ngrams, sparkgram, string\n",
"JUDGE_BIO_PATH = '/cluster/home/roskarr/work/ngram/inputs/bio_database_app_and_dist.csv'\n",
"CASE_DB_PATH = '/cluster/home/roskarr/work/ngram/inputs/BloombergCASELEVEL_Touse.csv'\n",
"import sklearn\n",
"from operator import add\n",
"sw = sklearn.feature_extraction.text.ENGLISH_STOP_WORDS.union(set(string.ascii_lowercase))"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 15
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"year_range = [str(x) for x in range(2000,2014)]"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 16
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"reload(sparkgram)\n",
"reload(sparkgram.document_vectorizer)\n",
"reload(bloomberg_ngrams)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 17,
"text": [
"<module 'bloomberg_ngrams' from '/cluster/home/roskarr/bloomberg_ngrams/bloomberg_ngrams.pyc'>"
]
}
],
"prompt_number": 17
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"cv = bloomberg_ngrams.SparkBloombergCaseVectorizer(sc, year_range, JUDGE_BIO_PATH, CASE_DB_PATH, \n",
" ngram_range=[1,8], stop_words = sw, num_partitions=sc.defaultParallelism*3,\n",
" tokenizer = sparkgram.document_vectorizer.StemTokenizer(),\n",
" randomize_cases = True, load_path='/cluster/home/roskarr/work/ngram/RDDs/raw/')"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"Loaded 3 RDDs: \n",
"vocab_rdd\n",
"ngram_rdd\n",
"doc_rdd\n"
]
}
],
"prompt_number": 18
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Select the years from the raw text RDD"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"cv.doc_rdd = cv.doc_rdd.combineByKey(str, lambda a,b : a + b, lambda a,b : a+b)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 19
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"del(cv.ngram_rdd)\n",
"del(cv.vocab_rdd)\n",
"del(cv.docvec_rdd)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 20
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"cv.doc_rdd = cv.doc_rdd.filter(lambda (context, _): context.split('||')[3] in year_range)\\\n",
" .filter(lambda (context, text): len(text) > 0 and text != '\\n')\\\n",
" .filter(lambda (context, _): context.split('||')[10] == '0' or context.split('||')[10] == '1')"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 21
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Reduce the dimensionality"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"cv.ngram_rdd = cv.ngram_rdd\\\n",
" .flatMap(lambda (context, ngrams): [(ngram, (context, count)) for (ngram,count) in ngrams if count > 2])\\\n",
" .aggregateByKey([], lambda a,b : a+[b], add)\\\n",
" .flatMap(lambda (ngram, meta): [(context, (ngram,count)) for (context, count) in meta if len(meta) > 5])\\\n",
" .aggregateByKey([], lambda a,b : a+[b], add)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 22
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"###Construct $\\chi^2$ weighting and filter "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Define:\n",
"\n",
"$$\\chi^2_{pl} = \\frac{(c_{plr} c_{\\sim pld} - c_{pld} c_{\\sim plr})^2}\n",
"{(c_{plr} + c_{pld}) (c_{plr} + c_{\\sim plr}) (c_{pld} + c_{\\sim pld}) (c_{\\sim plr} + c_{\\sim pld})}$$\n",
"\n",
"e.g. from [Gentzkow & Shapiro (2010)](http://faculty.chicagobooth.edu/matthew.gentzkow/research/biasmeas.pdf)\n",
"\n",
"$\\chi^2_{pl}$: statistic for phrase $p$ of length $l$\n",
"\n",
"$c_{pl(r,d)}$: number count of phrase $p$ of length $l$ occuring in $r$ or $d$ - labeled documents\n",
"\n",
"$c_{\\sim pl(r,d)}$: number count of phrases *not* $p$ of length $l$ occuring in $r$ or $d$ - labeled documents, e.g. *all* phrases of length $l$ except for $p$\n",
"\n",
"$c_{\\sim pl(r,d)} = c_{l(r,d)} - c_{pl(r,d)}$, where $c_{l(r,d)}$ is the count of all phrases of length $l$ occuring in $r$/$d$ documents. So, we should only need to calculate $c_{l(r,d)}$ once and calculate $c_{pl(r,d)}$ for each phrase $p$."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Phrase counts of different $l$ (i.e. $c_{l(r,d)}$ from above):"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"ngrams_rep = cv.ngram_rdd.filter(lambda (context,text) : context.split('||')[10] == '0')\\\n",
" .flatMap(lambda (context, ngrams): [(ngram, count) for (ngram,count) in ngrams]).cache()\n",
"ngrams_dem = cv.ngram_rdd.filter(lambda (context,text) : context.split('||')[10] == '1')\\\n",
" .flatMap(lambda (context, ngrams): [(ngram, count) for (ngram,count) in ngrams]).cache()"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 23
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"c_lds = ngrams_dem.map(lambda (ngram,count): (len(ngram.split()),count))\\\n",
" .reduceByKey(add, cv._num_partitions).map(lambda (length,count): count).collect() \n",
"c_lrs = ngrams_rep.map(lambda (ngram,count): (len(ngram.split()),count))\\\n",
" .reduceByKey(add, cv._num_partitions).map(lambda (length,count): count).collect()"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 24
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"c_plds = ngrams_dem.reduceByKey(add).cache()\n",
"c_plrs = ngrams_rep.reduceByKey(add).cache()"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 25
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Distribute the $c_{ld}$ and $c_{lr}$ counts"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"c_ld_b = sc.broadcast(c_lds)\n",
"c_lr_b = sc.broadcast(c_lrs)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 26
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Calculate $\\chi^2$"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"def get_data(i) : \n",
" return float(i.data[0]) if len(i.data) else 0.0\n",
"\n",
"def chi_sq_func(length, c_plr, c_pld, c_ld, c_lr) : \n",
" c_not_plr = float(c_lr.value[length-1]) - c_plr\n",
" c_not_pld = float(c_ld.value[length-1]) - c_pld\n",
" \n",
" return (c_plr*c_not_pld - c_pld*c_not_plr)**2.0\\\n",
" /(c_plr + c_pld)\\\n",
" /(c_plr + c_not_plr)\\\n",
" /(c_pld + c_not_pld)\\\n",
" /(c_not_plr + c_not_pld)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 27
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"chi_sq = cv.vocab_rdd.map(lambda ngram: (ngram, len(ngram.split())))\\\n",
" .groupWith(c_plrs, c_plds)\\\n",
" .map(lambda (ngram, (length, c_plr, c_pld)): \n",
" (ngram,chi_sq_func(length.data[0], get_data(c_plr), get_data(c_pld), c_ld_b, c_lr_b)))"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 28
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### plot the $\\chi^2$ distribution"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"for n in [2,3,4,5,6,7,8] : \n",
" bins, vals = chi_sq.filter(lambda (ngram, x): len(ngram.split()) == n).map(lambda (ngram,x): np.log10(x)).histogram(list(np.linspace(-10,0,50)))\n",
" bins = np.array(bins)\n",
" vals = np.array(vals)\n",
" plt.plot(0.5*(bins[:-1]+bins[1:]),vals*1.0/vals.sum(), label = '%d'%n)\n",
"\n",
"plt.xlabel('$\\chi^2$')\n",
"plt.ylabel('normalized frequency')\n",
"plt.legend(fontsize='small', frameon=False)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 270,
"text": [
"<matplotlib.legend.Legend at 0x2b12ad861910>"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAAocAAAGdCAYAAABgsdmCAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XeclNXZ//HPNTPbd2FhERALzRJCbLFrVNCgUWOJEo0x\nsUVTxZLy5ImxQIz5pVtiEqOxRCPRRNPsJUDsYgk+RlBAYC0rsLuU7bOzM+f3xz2zbpnZnXvKNr7v\n12tes3OXc58VZK8917nOMeccIiIiIiIAgcHugIiIiIgMHQoORURERKSTgkMRERER6aTgUEREREQ6\nKTgUERERkU4KDkVERESkk4JDEREREek0ZIJDM9vRzG4zsxozazOztWZ2rZlVpnn/WDM738z+Zmar\nzazFzLaY2dNmdp6ZWZJ7pphZrI/Xn3L/nYqIiIgMXaHB7gCAmU0HngO2A/4OvAkcCFwMfMrMDnXO\nbeqnmdOA3wA1wGLgHWAicArwe+BY4LMp7l0Wf25P//X3nYiIiIgMbzYUdkgxs8eAOcA859yvuxz/\nBXAp8Dvn3Nf6aWM2UOqce6jH8QnAUmAnYK5z7q9dzk0B1gB3OOfOy813IyIiIjJ8DXpaOT5qOAdY\n2zUwjLsKaAG+YGalfbXjnFvcMzCMH98A3BT/eEQOuiwiIiIyYg2FtPLs+PvjPU8455rM7Fm84PEg\nYFGGz+jo8d7TDmb2FaAKqAeec869nuGzRERERIatoRAc7h5/X5ni/Cq84HBXMggOzSwEnBX/+GiK\ny+bEX13vWwKc7Zx71+8zRURERIarQU8rA6Pj71tTnE8cT6tqOYkfAzOBh5xzT/Q41wz8APh4vP1K\nvNTzYmAW8K/+0tkiIiIiI8lQCA7zxswuAr4JrAC+2PO8c67WOTffObfMOdcQfz0NHA28COwCnD+g\nnRYREREZREMhOEyMDI5OcT5xfIufRs3sQuA64A1gtnMu7fudc1G85W8ADvPzXBEREZHhbCjMOXwz\n/r57ivO7xt9TzUnsxcwuAX4JvA4c5Zyry6BfiXvKkrQ/+Ov/iIiIiKTJOddrM5BUhkJwuDj+PsfM\nzHVZeNHMKoBD8eYGvpBOY2b2XeD/Af8B5qSxeHYqB8Xf1yQ7ORTWh5TMzJ8/n/nz5w92NyQD+rMb\n3vTnN3zpz254S7JJXJ8GPa3snFuDt4zNVOAbPU4vAEqBu5xzreBVH5vZR8xsWs+2zOwKvMDwZbwR\nwz4DQzP7eIpt9Y7CW3zbAX/0/12JiIiIDE9DYeQQ4Ot42+fdEA/MEtvnzQLeAr7f5dodgeVANV5A\nCYCZnY0XTEaBZ4BLksR9a51zf+jy+ZfALmb2HPB+/NieeGsvOuAK51xaI5YiIiIiI8GQCA6dc2vM\nbD+8ZWU+BRyHt0fydcAC51yyZW565nWnxN8DwCUpHrUE6Boc3gl8Btgfb+/lAmA9cC9wo3PuWb/f\niwx9s2bNGuwuSIb0Zze86c9v+NKf3bZlSOytPNz0mBopIiIiMmSZma+ClEGfcygiIiIiQ4eCQxER\nERHppOBQRERERDopOBQRERGRTgoORURERKSTgkMRERER6aTgUEREREQ6KTgUERERkU4KDkVERESk\nk4JDEREREemk4FBERERkEL300ktceOGFzJw5k/LyciZPnszpp5/OqlWrBqU/2ls5A9pbWURERHJl\n7ty5PP/883z2s59lzz335IMPPuDGG2+kqamJF154gZkzZ2bVvt+9lRUcZkDBoYiIiOTK888/z/77\n708oFOo8tnr1avbYYw/mzp3LXXfdlVX7Cg4HgIJDERERybd9992XQCDASy+9lFU7foNDzTkUERER\nGWKcc2zYsIFx48YN+LMVHIqIiIgMMXfffTc1NTWcfvrpA/5spZUzoLSyiIiI5Mubb77JgQceyB57\n7MHTTz+NWdoZ4aQ053AAKDgUEREZHrKMq/qV63Bg/fr1HHrooUSjUV544QUmTpyYdZt+g8NQ/5eI\niIiIDE/DaSxn69atHHvssTQ0NPD000/nJDDMhIJDERERkUHW1tbGCSecwOrVq3nyySf5yEc+Mmh9\nUUGKiIhIjqz7wTpqfl8z2N2QYSYajXL66afz4osv8pe//IUDDzxwUPujkUMREZEcaXqtibJo2WB3\nQ4aZb33rWzzwwAOccMIJ1NXV8cc//rHb+S984QsD2h8VpGRABSkiIpLMy/u+TOURlezyy10Guysy\njMyePZunnnqKZLGFmRGNRrNqXwUpIiIig6Stuo1oY3Y/yGXbs3jx4sHuQjeacygiIpID0eYoHfUd\ndDR2DHZXRLKi4FBERCQH2qrbAIg2aeRQhjcFhyIiIjnQVt1GoDigtLIMewoORUREcqCtuo3Sj5Yq\nOJRhT8GhiIhIDoSrw5R9rEzBoQx7Cg5FRERyoK26jbKZZSpIkWFPwaGIiEgOtFW3aeRQRgQFhyIi\nIjnQts4bOYy1xnBRbZQgw5eCQxERkSzF2mNE6iIU7lBIsCxItFmjhzJ8KTgUERHJUvjdMIXbFxII\nBQhWBJValmFNwaGIiEiW2qrbKJ5cDECwIqiiFBnWFByKiIhkqVtwWK6RQxneFByKiIhkqefIobbQ\nEz/eeOMNPvvZzzJ9+nTKysqoqqrikEMO4e677x6U/oQG5akiIiIjSLg6zKhDRwEQqghp5FB8eeed\nd2hqauKcc85h0qRJtLS0cN999/HFL36RdevW8f3vf39A+2POqdzeLzNz+u8mIiIJy45cxs7f25mx\nc8ay/PPLqTq+iglnThjsbskwFovF2Hfffdm0aRPV1dVZtWVmOOcs3euVVhYREcmSClIk1wKBADvu\nuCMFBQUD/myllUVERLLgoo7we2GKdi4CVJAimWtpaaGlpYWtW7fyz3/+k8cee4wbb7xxwPuh4FBE\nRCQL4Q/CFIwtIFgcBFSQIpn75je/yc033wxAKBTihhtu4Mtf/vKA90PBoYiISBbC1WGKJhd1fg5V\nhAi/Hx7EHslwdemll3LaaadRU1PD3XffzYUXXkhJSQlnn332gPZDBSkZUEGKiIgkbFi4gbp/1DHz\n3pkA1NxcQ+NLjex+y+6D3DMBsAVp12FkxF2Vv3jgmGOOYenSpdTU1FBSUpJxO34LUjRyKCIikoWu\nxSiggpShJp/BW76deuqpPPHEE7z11lvsvffeA/ZcVSuLiIhkoVdwqIIUyZHW1lbAq1weSAoORURE\nstBzzqEKUsSv2traXscikQh33nknVVVVzJw5c0D7o7SyiIhIFnqOHGqHFPHry1/+Mo2NjRx++OFM\nmjSJ9evXc/fdd7Ny5Upuv/12gsHggPZHwaGIiEiGnHNJ5xwqOBQ/Pve5z3Hrrbfy29/+lvr6ekaN\nGsWBBx7IjTfeyFFHHTXg/VFwKCIikqFIfYRAYYDQqA9/nKogRfw6/fTTOf300we7G50051BERCRD\n4eowxVOKux1TQYoMdwoORUREMtS2rq1bMQpAsCxIrDWGiw7fJVRk25Z2cGhmE/LVCTPb0cxuM7Ma\nM2szs7Vmdq2ZVaZ5/1gzO9/M/mZmq82sxcy2mNnTZnaemaVc+NHMDjGzh81sU/y+18zsYjNT4Cwi\nIn3qOd8QwAJGsCxItFmjhzI8+QmA3jWzP5tZTmdGmtl04BXgHOAF4JfAGuBi4HkzG5tGM6cBNwP7\nA88D1wL3Ax8Dfg/8OcWzTwKeAj4Rv/5XQGH8/nsy/Z5ERGTbkCw4BBWlyPDmJzh8C5gLPGFmK83s\n22ZWlYM+/AbYDpjnnDvFOXeZc+4ovABtd+CaNPt2gnNuR+fcF51z33fOfQn4CPAucKqZndL1BjMb\nBdwCRIBZzrkLnHPfBfbGCzDnmtnQmR0qIiJDTl/BoYpSZLhKOzh0zu2BN8J2J7Aj8FPgPTNbaGZH\nZPLw+KjhHGCtc+7XPU5fBbQAXzCz0n76ttg591CS4xuAm+Ife/ZxLjAOuMc592qXe8LA5fGPX0v3\nexERkW1PzwWwE1SUIsOZr3l1zrnnnHPnAJPw0r6rgc8Bi81suZldYmZjfDQ5O/7+eJJnNQHPAmXA\nQX762UNHj/eEI+Pvjya55ymgFTjYzAqyeLaIiIxgfaaVtUuKDFMZFV0457Y4537VYzRxMt58wffM\n7A9mtn8aTe0ef1+Z4vyq+PuumfTTzELAWfGPPYPAlM92zkWBtXjrQE7L5NkiIjKydTR2EAvHKBjX\newxBu6TIcJaLitx6YBPQFv9cDHwReNHM/tFPQcno+PvWFOcTx9OqWk7ix8BM4CHn3BNJnu36ebZl\n8WwRERnB2qrbKN65mGQLYqggRYazjIJDMys0szPMbAmwArgE2AhcClQBnwQeA07AKzgZcGZ2EfDN\neP++OBh9EBGRkSvZAtgJKkiR4cxXcGhmu5rZz4D3gbuBQ4C/Ap90zs1wzl0fTzkvcs4dGz93TB9N\nJkbtRqc4nzi+xWc/LwSuA94AZjvnkt2fGBnM6bNFRGTb0FbdewHshHwUpKxefSmtrWtz2qZIMmnv\nrWxmi4BZ8Y81wALgFudcTR+3vQKc0sf5N+Pvu6c4n5hrmGpOYi9mdgne3MfXgaOcc3UpLn0L2Df+\n7P/0aCMETMVb5mZNspvnz5/f+fWsWbOYNWtWul0UEZERoG1d8mIUyE9BSl3dA4wdexwlJVNz2q6M\nPEuWLGHJkiUZ3592cIgXGC7GSxP/PV600Z8H8QLJVBbH3+eYmTnnOvcaMrMK4FCgGW9x7H6Z2XeB\n/4cX7M1xzm3q4/J/AZ8HPkXvBa8PB0qAfzvnIslu7hociojItqetuo1xe49Lei5UESL8fjhnz3LO\n0d5eQzTamLM2ZWi75ppruOKKK5g5cyavv/66r3t7DlotWLDA1/1+0sofdc4d5Zy7P83AEOfc6865\nP/Rxfg3eMjZTgW/0OL0AKAXucs61gjeiZ2YfMbNeFcRmdgVeYPgy3ohhX4EhwH1AHfA5M9u3SzvF\nwA/jH3/bTxsiIrKNSrWMDeS+ICUabSAWayUabcpZmzJ0vffee/zoRz+irKwsacFTvqU9cuice7P/\nqzLydeA54Ib41nxvAgfijVS+BXy/y7U7AsuBaryAEgAzOxsvmIwCzwCXJPmPubZroOqcazSzC/CC\nxCVmdg+wGTgR2A34i3Mu6bZ7IiIiqRbAhtwXpITDXhJOI4fbhm9/+9sccsghdHR0UFeXanZc/viZ\nc/hZvB1DvpBsnqGZ7Yi33uGNzrm/ptuuc26Nme0H/AAvxXscXir6OmCBcy7ZUjOux+cp8fcAXuV0\nMkuAbqOYzrl/xHd3+T5wKt4yPKvwqq5vSPd7EBGRbUu0LUpkU4Si7QemIKW9/QMAOjoUHI50Tz31\nFPfffz/Lli3jG9/4xtAeOQTOB8akKkBxzr1nZqPj16UdHCbuBc5L47p1JEmFO+cW4I0c+uacew44\nPpN7RURk2xR+N0zRDkVYMPkP7lwXpCSCQ6WVR7ZoNMq8efO44IILmDlz5qD1w09wuAfQa//iHl4C\nPp15d0RERIa+vuYbQu53SAmHazArUFp5hLvpppt45513WLRo0aD2w09BylhgQz/X1APbZd4dERGR\noa+v+YaQ+4KU9vYPKCnZRcHhCFZfX8+VV17JlVdeSVVV1aD2xU9wWE//exzvghaNFhGREa6tui3l\n7iiQn4KUkpLdlFYewS6//HLGjRvHvHnzBrsrvtLKzwAnmtkM59yKnifNbAZwEt7ahiIiIiNW27o2\nKmdXpjyfj5HDUaMOpLnZ33p3AuS7oMP1rJH1b9WqVdxyyy1cd911vPfee53H29raaG9vp7q6mlGj\nRjFmzJisn5UOPyOHvwAKgKfN7GIz283Mysxs9/iuJM/gBZs/z0dHRUREhor+5hwGS4PEWmO4aPaB\nAyTSyrupWjkTzuX3lQPvv/8+sViMiy66iGnTpnW+li5dysqVK5k6dSpXX311Tp6VDj/rHC41s6/h\n7ZBybfyV+K9iQAfwVedcWruZiIiIDFf9BYcWMIJlQaLNUUKj/CTpkguHaygt3U1zDkeoPfbYg7/9\n7W/dlq1xznH55ZfT1NTE9ddfz/Tp0wesP77+xjrnbjGzZ/HWOzwIqMSbY/g88Ntk6WYREZGRJNYR\no72mnaKdUhekwIep5WyDQ2+00FFYOElzDkeoqqoqTjrppF7Hr732WgBOPPHEAe2P77+xzrnlwODP\nlhQRERkE7TXtFGxXQKCw75lZiaKUIvoOIvt9XnsNRUWTCIUqNHK4jTGzIb8ItoiIyDavv5RyQq6K\nUsLhDygs3J5gUMHhtmbx4sWD8lzfwaGZhfD2Hh4DBJNd45x7Kst+iYiIDElpB4c52kKvvd0LDgOB\nEmKxdmKxDgIBje1I/vj622VmV+LtOzy6j8scKYJGERGR4a6/BbATQhWhnGyhl0grmxnBYDnRaBOB\nQOpldESylXZwaGb/A8wHtgJ3Ae/iVSj3lJu6bhERkSGorbqN8n3K+70u12lloDO1XFCg4FDyx8/I\n4QVADbCPc642T/0REREZ0tqq2xj3mXH9XperXVLa22soL98bIF6UooplyS8/i2DvBPxNgaGIiGzL\n2tYNbEFKe/sHFBV1HzkUySc/weFGVN0sIiLbMOcc4XfCA1qQ0j2tXK7gUPLOT3B4L3C0mWW3YJOI\niMgwFdkYIVAWIFjWf91lLgtSCgsnAd7IobbQk3zzExxeBXwA3G9m0/LUHxERkSEr3WVsIDdp5Y6O\nJpyLEAp5i4R4aWXNOZT88pMmfgMoACYBx5rZVryt83pxzil4FBGREcdvcJhtQYq3xuGkzl0ylFaW\ngeAnODQgArzT5ViykUctZSMiIiPSQI8cJhbATtAWejIQ0g4OnXNT8tgPERGRIS9cHaZ4eprBYQ4K\nUrpWKoPSyjIw/Mw5FBER2ab5GTnMRUFKOPxhMQoorSwDI+Pg0MzGmNlOueyMiIjIUDbYaWVVK8tA\n8BUcmlmFmf3SzDYA9cC6LucONLOHzezjOe6jiIjIkNBW3UbxlIErSAmHvX2VO9tUWnlEWrJkCYFA\nIOlr6dKlA94fP3srjwaeBT4KvAbUATO6XPJf4DDg88CrOeyjiIjIoItsiUAUQmPS+9GpghTx6+KL\nL2b//ffvdmz69OkD3g8/1crfxwsMz3XO/cHM5gNXJk4655rN7CngyNx2UUREZPCFq8MUTS7qXFam\nP8HSILHWGC7qsGB69/TUO62sOYcj2WGHHcYpp5wy2N3wlVY+BXjcOfeHPq6pBnbIrksiIiJDj5/5\nhgAWMIJlQaLNmY8eKq28bXHO0djYSEdHdtMRsuUnONwRL53clyagMvPuiIiIDE1+g0PILrUcjbYQ\ni7URCo35sL2g0soj2bnnnsvo0aMpKSnhyCOP5JVXXhmUfvhJKzcB4/u5ZgreXEQREZERJdPgsKOx\ngyKKfD8vscZh1zR2MFiuauURqKioiLlz53Lccccxbtw43njjDX7+859z2GGH8dxzz7H33nsPaH/8\nBIdLgU+b2SjnXEPPk2a2PXAc8FCuOiciIjJUhKvDVOxX4euebEYOw+Hu8w1BI4cj1cEHH8zBBx/c\n+fnTn/40c+fOZc899+R73/sejzzyyID2x09weD3wCPCwmV1Al23yzOyjwC1ACXBDTnsoIiIyBGQ0\ncpjFLik9i1EAgsFSYrE2nItiFsyo3W2NLVmS1/bdrFl5aXf69OmcdNJJ/PWvf8U5l3YhVC742T7v\nMTNbAFwFvIG3zzJmVgeMjV/2v865Z3PeSxERkUGWSXCYzS4p7e3di1EAzAIEg6VEo82EQqMyandb\nk6/gbSDsuOOOtLe309zcTHl5+YA919ci2M65BcBRwD+AzUDib/xDwCedcz/NbfdEREQGX7Q1SsfW\nDgonFvq6L9dpZVBqeVuyZs0aSkpKBjQwBH9pZQCcc4uBxXnoi4iIyJAUfidM8U7FWMBfai+bXVLa\n22soLf1I7za1nM2IU1tby3bbbdft2GuvvcY///lPjj/++AHvj+/gUEREZFvTtq6Nosn+K46zGTlM\nVCv3alMVyyPO6aefTmlpKQcffDDjx49n+fLl3HzzzZSXl/PjH/94wPuj4FBERKQfmcw3hOwKUpRW\n3nZ85jOf4e677+baa6+loaGB8ePHM3fuXK666iqmTZs24P3xs7dyjC4VyqkuA5xzTiVUIiIyYmQa\nHIYqQoTfD2f0zPb2GgoLJ/U67u2vrLTySDJv3jzmzZs32N3o5Gfk8KkUxyuB3YBivB1UtmTbKRER\nkaGkrbqNsXPG9n9hD5mmlaPRNqLRZgoKqnq3qZFDyTM/S9nMSnXOzEYBvwQOAU7NvlsiIiJDR7g6\nnPGcw0wKUrw1DicmXdsuGCxXcCh55Wspm1TiO6Z8BW9pm2ty0aaIiMhQkfGcwwxHDpMtgN3ZZrBC\nBSmSVzkJDgGcc1G8JW5OylWbIiIigy0WidG+vp2iHTMYOcywICVVpTJoKRvJv5wFh3HFfLhbioiI\nyLAXfj9M4YRCAgX+f2RmukNKOJy8GAWUVpb8y1lwaGYzgLnA6ly1KSIiMtgynW8I+Ukre9XKCg4l\nf/wsZXM7yZeyCQE7AZ8AgsC3c9M1ERGRwde2ro3iKf7nG0LmBSnhcA2VlYcnb1NpZckzP0vZnN3P\n+TeBnznnbs+iPyIiIkNKpsUokK+CFKWVJb/8BIepluiOAZudc/qbKiIiI05bdRujDhyV0b3B0iCx\n1hgu6rBg+vsyewUpqeYcqlpZ8svPOofr8tgPERGRIamtuo3xp43P6F4LGMGyINHmKKFR6Y/HeAUp\nqlaWwZHramUREZERJZuCFPCfWo7FwkSjDRQUjEt6XgUpkm9+ClKSz4xNg3Mu1dZ7IiIiQ1r4/XBG\naxwmJIpSikivjfb29RQWTsAs+fiN5hxKvvmZc7gk/u6AZBMn+joe9NctERGRwRdtiYKDYFnmP8b8\njhyGw6mLUUB7K49kr776KvPnz+fZZ5+lra2NadOm8eUvf5l58+YNaD/8BIc/AA4APgW8DTwLrAcm\n4i1jMw14FFja475ky9+IiIgMio0bN3LnnXfiXP8/niKbI2wq2sRhHJbx8/zukuJVKicvRgEIBsuI\nRltwLpZydFGGn8cff5wTTjiBfffdlyuvvJLy8nJWr17N+++/P+B98RMcPgr8L3AJcKNzLpY4YWZB\n4ELgJ8AC59yLOe2liIhIjjz22GPccccdHHvssf1e276hnZsbb+Y7G7/DhAkTMnpeqCLkMzisSbl1\nHoBZkECgmGi0hVCoPKM+ydDS0NDAWWedxQknnMB999032N3xFRxeDfzLOXdDzxPxfZWvN7Nj4tcd\nnaP+iYiI5FRtbS1z5szhZz/7Wb/XbnpiE3+77280NjZmHBwGK4K+ttDrL60MH6aWFRyODAsXLmTj\nxo1cc801ADQ3N1NSUkIgMDgjw36eegDwn36uWQYclElHzGxHM7vNzGrMrM3M1prZtWZW6aONuWb2\nKzN72swazCxmZnf1cf2U+DWpXn/K5HsREZGhq66uju222y6tayN1EcqKymhoaMj4eX53SWlvT72v\ncoJXsazlbEaKJ598klGjRvHuu++y++67U1FRwejRo/n6179OOBwe8P74GTkMALv0c830TDphZtOB\n54DtgL/j7bZyIHAx8CkzO9Q5tymNpi4H9gQagfeAj5DenMdl8ef29N807hURkWGktraWKVOmpHVt\npC5CRWlF1sGh3zmHfaWVQRXLI82qVavo6Ojg5JNP5vzzz+cnP/kJixcv5le/+hVbtmxh4cKFA9of\nP8Hhs8ApZnaCc+6BnifN7ETgFODJDPrxG7zAcJ5z7tdd2vwFcClwDfC1NNq5BHjXOfe2mR0BLE7z\n+cuccz/w2WcRERmGamtrfY0cVpRV0NiYeSDmtyDFSyv3PXKoiuWRpampiZaWFr72ta9x3XXXAXDy\nySfT3t7O7373O37wgx+wyy79jc/ljp/g8PvA08Dfzewp4N/ABmACMAs4HGiNX5e2+KjhHGBt18Aw\n7irgK8AXzOxbzrmWvtpyzi3p2rSffoiIyPC1vLmZKcXFlAb7X3LGV3BYH2HUqFFZjRyGKkKE30s/\nNeilldOZc6i0cjqW2JK8tj/Lzcq6jZKSEgDOOOOMbsfPOOMMfve73/HCCy8MzeDQOfeKmX0SuA04\nIv7q6i3gS865V332YXb8/fEkz2wys2fxgseDgEU+207XDmb2FaAKqAeec869nqdniYhIjp21YgVf\nmTSJCyb1PeIG3pzDceOS7z7SU6QuwqjK7IJDPwUpsViEjo7NFBb2Hbxqf+X05SJ4y7dJkyaxfPny\nXkVP48d72zZu3rx5QPvjqwzGOfccMAM4DG8+4JXx908452bEz/u1e/x9ZYrzq+Lvu2bQdrrmAL8F\nfhh/f83MFpnZTnl8poiI5EBrNMprzc0s3rIlrev9ppVHjx09YAUp7e3rKSgYj7dCXB9tas7hiLLf\nfvsB8N5773U7XlNTA5D239dc8V0j7TzPOud+5Zz7Yfw9k6AwYXT8fWuK84njaVct+9CMt7j3x+Pt\nV+KNiC7GS5X/y8xK8/BcERHJkWVNTYwrKGDxli39LmwdiURobGxkzJgxabUdqYswervsg8N05xx6\nC2D3nVIG7a880px22mkA3Hrrrd2O//73v6egoIBZs2YNaH/8zDnsZGZlwG5AuXPu6dx2aeA452qB\n+T0OP21mRwPP4FVMnw/0WttRRESGhqWNjZw8bhwP19fzZksLM8rKUl67adMmxowZk/b6cR31HVSO\nr6S6vjrj/vkpSPEqlftPjWvO4ciy9957c95553HbbbfR0dHB4YcfzpIlS7jvvvu47LLLmDhx4oD2\nx9fIoZntZGZ/BbYAr/DhfsuY2WFmttzMZvnsQ2JkcHSK84nj6eULciC+qPfv4x8z3zNJRETy7sWG\nBg6sqODIMWP6TS37SSk754jURRgzcUzWBSnpBofhcP/FKKC08kh00003MX/+fF588UUuvfRSXnvt\nNa677jp++MMfDnhf0h45NLPtgRfwqpMfAMYDB3e55MX4udPpEjSm4c34++4pzifmGqaak5gvdfH3\npL+Czp+mCRk3AAAgAElEQVQ/v/PrWbNmDfiQr4iIeJY2NHDF5MkEzHigvp6v77BDymv9BIexlhgY\njB6Xg7RymgUp6aaVg8EKWlvXZNwnGXpCoRBXXnklV155ZdZtLVmyhCVLlmTeFx/XXoUX/B3tnFtk\nZvPpEhw659rN7GngUJ99SKxFOMfMzHWZMGJmFfH2mvEC04GU2Okl6f99XYNDEREZHHXt7dRFIuxe\nWkp5MMg3V68m5hwBS76amd9K5YJxBVkvZeOnICUcrmHUqAP6b1NpZelDz0GrBQsW+LrfT1r5OOCf\nzrm+lpN5B+h/skQXzrk1eMvYTAW+0eP0AqAUuMs51wpgZiEz+4iZTfPznGTM7ONmvf8FMbOj8Bbf\ndsAfs32OiIjkx0uNjexXUUHAjJ2KixlTUMB/m5tTXu+3UjlXwWGuC1KUVpZ88jNyOIH+U7sRIJNd\nwL+Ot33eDfHALLF93iy89RO7Lqy9I7AcqMYLKDuZ2cnAyfGPidmbh5jZHfGva51z3+lyyy+BXczs\nOeD9+LE98dZedMAVzrmBHrEUEZE0vdjQwAGjRnV+nl1ZyeItW9izPPmPIr8LYBdUFVA2qiy7HVJK\ng8RaY7iow4J978+QbkGKqpUln/yMHG4G+lv3b1dgvd9OxEcP9wPuwAsKv4kX+F0HHOScS7b6Y7L1\nCvYCzgK+iLd2oYu3c1b8dWqP6+8E/gPsj1eV/DW8/aHvBQ53zv3I7/ciIiIDZ2ljIwdUVHR+nl1Z\nyeI+FgwejLSyBYxgWXrzDtMvSFFaWfLHz8jhM8CJZra9c+6DnifNbFfgU8DdmXTEOfcecF4a160j\nRVDrnFuAl4pO95m34e34IiIiw4xzjqUNDdy6+4f1jLMrK/n6qlVEnSOYZN5hbW0thxxySFrtJ4LD\nioqKrIJD+LAoJTQ69Y/dWKyDjo56CgrG99+e9laWPPIzcvgzoAT4t5kdG/8aMys3s+OAB/FG6n6R\n816KiIj0sKatjZJgkO2LijqPTSwqYvvCQpY1JR9Vy2TOYXl5OS0tLcRisYz7mk5RSiSygYKCcQQC\n/Y/bBIPl2j5P8ibt4NA59yLwZWAK8BCQmLu3FS8wnAKc55z7b267KCIi0tvS+PqGPfWVWvabVg5V\nhQgEApSVldGUIuBMRzpFKeFwesUooLSy5JffvZVvAz4GXA8sBd7Gm7P3a2BP51xGKWURERG/uhaj\ntLSsIhptA7zgcFGKxbB9F6SMKwDIvmI5jV1SvErl9Bb88KqVm/rdLlAkE2kHh2Z2tpkd45xb6Zy7\n1Dl3kHNuV+fcfs65ec65t/LZURERka6WNjZyYDw4fPPNc1m//g4AZlVW8uzWrUR6pIGdcxkVpED2\nwWE6u6S0t9dQVJTeyGEgECIQKCAWa824TyKp+Bk5vBWv4ERERGRQtcdivNbUxL7xJWtaW9+ivv5B\nAMYVFjKluJhXeiw/09DQQElJCUVd5ij2pWtwmG1RSjq7pPhJK4OKUiR//ASHG3xeLyIikhevNzcz\nraSE8lCISGQT0WgzW7c+RTTaAiRPLdfW1qY9agi5HTlMpyClvb0m7bQyaN6h5I+fYO8RYLaZKUAU\nEZFB9WKXYpTW1lWUls6gomJfNm/2NvE6cswYFicJDtOdb+ic84LDqg+Dw6wWwk6jIMVbANvPyKEq\nliU//AR63wcqgNvMLP1fvURERHJsabdilJWUlu5GVdWnO1PLh48ezQsNDYS7zDusq6tLOziMNkex\nkBEsCQIDU5DipZX9jhwqOBwJzjnnHAKBQMrXBx/0Wl46r/wsgn0P0IC308jpZrYObzeUXqVSzrkj\nc9I7ERGRJJY2NnLpTt6mXa2tKykp8YLDd989CucclQUF7F5SwtKGBg6rrAT8pZW7ppQhNwUp4ffC\nfV7jpZXTHzn0ttBTWnkk+OpXv8rRRx/d7VgsFuOrX/0qU6dOZfvt0/97kQt+gsMjunxdBOwef4mI\niAyYrR0dvNPWxszSUsAbORw37kRKSnYjGCyhqWkZFRX7cOSYMSzasqVbcOh3AeyEfBekOBclEqml\nsHBC+m1q5HDEOOiggzjooIO6HXvmmWdoaWnhzDPPHPD++FkEO5DuK58dFhGRbdvLjY3sU1FBKOD9\nuPFGDnfHzKiqOqEztdxzMWw/aeVcjxz2V5DS3r6RUGgsgUBBymt6tRksV3A4gi1cuBAz4/Of//yA\nPztlIGdmF5vZAQPZGRERkf50LUZxztHSsorS0l0Bus07/MTo0bzc2Ehr1Bux85NW7qjv6CxGgfwX\npHgLYPtLHapaeeSKRCL8+c9/5tBDD2XnnXce8Of3Ncp3LV3WNTSzmJldmf8uiYiIpNa1GKW9vYZg\nsJxQaDQAo0d/gtbWlbS3b6AiFGKP8nKei4/4ZZNWzndBilepnH4xCnjBoaqVR6bHHnuMTZs2DUpK\nGfoODsN4cwtFRESGBOccL3bZGSVRqZwQCBQyZswc6usfBuDILqnlwZxz2N8OKeGwv2IUUFp5JFu4\ncCGFhYWcdtppg/L8voLDtcAxZjZxoDojIiLSl/fCYWLOsXN8l5NEpXJXXmr5ASA+7zC+3mGmW+dB\nbuYc9lWQkkla2atWVnA40jQ1NfGPf/yDY445hjFjxgxKH/qqVr4JuA6oMbPEcjXzzeyqPu4xwDnn\ngrnqoIiISEJiP2UzA6Cl5a1uI4cAY8cex6pV84jFwhwyejSvNTXR1NGRdVo52zmHfRWkhMM1lJfv\n6a9NzTlMy5Illtf2Z83qtaJfVv7+97/T2to6aCll6CM4dM7dYGYbgU8Dk4BZQHX81Zfc/lcSERGJ\ne7GhgQPixSjgpZVHjz682zWFheMoK/sYW7b8m7Fjj2bfigoWbdhAe3s7FV3u7UukPtKrICXrkcN+\nC1KO8dem0sppyXXwlm933303FRUVnHjiiYPWhz7XOXTO3YO3+DVmFgPucM4tGIiOiYiI9LS0oYHL\nJk/u/NzaurLXyCF8WLU8duzRzK6s5NG1axk3blzniGN/cp5WLg0Sa4vhog4L9u6DClIEvHmxTz75\nJGeeeSbFxcWD1g8/axL+AFiSp36IiIj0KeocrzQ1sX989C8Wi9DWVk1JyfRe1yaCQ+ccs8eM4d/V\n1WmnlCH3BSkWMIKlqecdZlaQorTySHPvvfcSjUYHNaUM/hbBnu+c+3c+OyMiIpLK8uZmJhUWMqbA\nC9ra2tZSVLQDgUDvhTXKyj6Gc1FaWpZz0KhRrFm/njFpFqM454jURQhVfZhcKyoqwjlHONz3Fnh9\nSVWU4lyMSGQjhYX+6j9VkDLyLFy4kAkTJvDJT35yUPuh3UxERGRYeLGhoXMJG0gsY5N8F9euu6UU\nBQJMb28n2uXevkQbo1ihESz+sLbSzPJWlBKJ1BIKjSYQKPTXnuYcjjjPPfccH3zwQdrTH/JFwaGI\niAwLSxsbuxWjJFvGpquuu6VMbmujsbw8redE6runlBPyVZQSDvtfxgaUVpb8UXAoIiLDwotddkaB\n3gtg91RZOYumpv8jEqlnu5YW1peWpvWcnvMNE7INDlMthO1VKvsrRoEPRw6dG17VuDL0KTgUEZEh\nrzkaZVVrK3t1Gf3rb+QwGCymsnI2mzY9SmFDA5vLyqiPRPp9VqrgMNuilFRb6LW311BU5H/k0EtD\nB4jFMp8HKZKMgkMRERnyXm1sZI+yMooCH/7Y6m/kED5MLdfX1TFj0iT+Hd8tpS/5GjlMNecw07Qy\nJFLLmncouaXgUEREhryexSgdHU10dNRTVLRTn/dVVR3Ppk2PUVu7kQN32qlzK72+ROq6L4CdkIuC\nlGTVyu3tNRmllSFRsax5h5JbCg5FRMQf5+Dtt+HPf4Yf/hBaW/P+yN7FKKsoKdkFs75/jBUVbU9J\nyXQ2bHiX2ZMns2jz5n6fNdAFKd4C2JmOHKpiWXIv5Q4pZraYDLfCc84dmXGPRERk6EgEgq+88uHr\n1VehvBz23RfeeAP22QeOPz6v3XixoYFrpk7t/NzffMOuqqo+TW3tTzh8yhRqVq1iQ3s7EwpTLxsT\nqYtQvlfvyuZ8FaR4aeXMRg6VVpZ86Gv7vCMGrBciIjI0RKNw//3w0ksfBoKjRnmB4L77wre/7b2P\nH+9d/6MfwRNP5DU4XB8O0xiNsktJSeexdOYbJlRWHktDw3y2q6risI0bWbJlC6cn+p9EPgtSwu/1\nLh7x0srZzDlUWllyK+V4vHMu0PUFlAAPAGuAc4GpQCkwDTgvfvwfwOBtBigiItm591644goYMwa+\n+11YtQreeQf+9je4/HI49tgPA0OAo4+Gxx/Pa5eWNjayf0VFt4WBvZHD5Atg9xSJTKGszGhvX8uR\nlZX9ppb7KkjJ9SLYzsVob1/ve3eUzja1v7LkgZ85h5cD+wH7O+f+4Jyrds61OefWOefuAA6Iv67I\nQz9FRGQgLFoE8+bBZZfBMcdAf/sR77MPbNwI772Xty4t7VGMAv5GDuvq6qmqGkV9/YPMHjOm36KU\njvqOlAUpWc857FGQEonUEwxWEAxmNq6iOYeSD36CwzOB+51zSX/lcs5tAu6PXyciIsPRokVwpI9p\n48EgHHWUl1rOk57FKM45X3MOa2trGT9+B+rrH2SPsjI2RSK819aW8vp8LmXTc86htwB2ZillULWy\n5Ief4HAS0N9Km5H4dSIiMtysXQstLTBjhr/78phajjnHS42N3XZGiUTqAKOgoCqtNurq6th+++k0\nNr5ELNrArMrKlKOHzjmvWjnJyGG2cw6TFaR4lcqZ/9hUQYrkg5/g8H3gJDNLWuJlZkXAifHrRERk\nuFm82Bs17DK3Ly1z5sCTT0IslvMurWptpTIUYnyX6uLEqKGl2c/a2lq2224io0d/gk2bHmf2mDEs\nSREcRhuiBIoDBIp6/3jMeuQwyQ4p4XDmxSigtLLkh5/g8A5gF2CxmR1hZkEAMwua2SxgETA9fp2I\niAw3flPKCTvvDFVVsGxZzrv0YkNDt5Qy+JtvCIngcLvO3VL2LCtjRUtL0mtTpZQhPwUp2aaVVa08\ncrz88sucdNJJTJo0ibKyMmbMmMHVV19N6wCsI9qTn+DwJ8A/gYOBxUCbmW0A2vACw4Pj53+c606K\niEieOZd5cAheajkP8w6TFaP4mW8I3YPDTZseZlpxIW+n+IGbKqUM+SlIyUVaWdXKw9/rr7/OJz7x\nCV5//XUuueQSrr/+eg4++GCuuuoqzjjjjAHvT1/rHHbjnGs3s88AZ+AtZfNxoArYCrwC3O6c+1Ne\neikiIvn11ltQWAhdFpr2Zc4cuO46b/mbHHqxsZHP9ViTsKVlJePHn552G3V1dey///4UF+9MYeEk\nStv+Q2M0SlNHB+Wh7j8G+xs5zHVBSjhcw+jRh2feptLKI8I999xDe3s7Dz30EDPic37PP/98YrEY\nd955J1u3bmX06NED1h9f2+c5z0Ln3BznXJVzLhR/P1qBoYjIMJYYNfQ73zBh1ixYutQraMmRtmiU\nN5qb+XivtPJbGY0cgrdbyuZNDzG1uJi1SSqW+woOy8vLaWpqIpbh3MpgaZBYWwwX/XDzsWxHDr1q\nZQWHw11JfIH38T1+EZo4cSLBYJDCPnb0yQftrSwiItmllAEqKrw1D596Kmddeq25md1LSykNBjuP\nORelre1tSkt3TbudnsFhff2DTCspSZpa7is4DAaDlJSU0Nzc7PM78VjACJZ2Ty1nX5CiOYcjwXnn\nnceECRP40pe+xGuvvca7777Lvffey0033cRFF13UGTwOFN/BoZntZWY/MbN/mtm/uhyfYmanmdnY\n3HZRRETyKhbzKpVnz86unRwvafNiQwMH9hg1bGt7l4KCcQSDZWm3U1dXx7hx4wAYNeoA2tvXMzNU\nz5oUI4ehqtQzrnJZlOKci++Oomrlbd2kSZN49tlnefPNN9lnn32YPHkyZ5xxBhdddBG/+MUvBrw/\nac85BDCzq4HLgETewXU5HQTuAS4BbshJ70REJP9ee83bCWWHHbJr5+ij4Utfyk2f8IpRjhwzptsx\nv8UozrluI4dmQcaOPY49Ys/yXGvvdG6kPkL5zuUp20vMO5w0KXkq2LlYnyN5ge3aaG/YTKijjI6O\nzQSDJQSDmY8KqSBlZNiwYQPHHnssALfccgtVVVU8+OCDXHPNNUyYMIFvfOMbA9qftINDM/sc8H3g\nMeB/gdOA7yXOO+feNrOXgRNQcCgi0inmYmxu3UxtSy0bmzeysXkjtc1dvo4fP27X4/ifQ/9n4DuY\nbUo5Yd994f33oaYGUgRPfrzY2Mj/7rxzt2N+l7FpamoiFAp1S8uNHTuHCe/fy5roCb2u7yutDP0X\npaxdeyXvvvtzAoHkc8SiP4mxbGMAq/c+V1QckOZ3kpzSyv1Ldz3MTDnn+r+oH1dffTXvv/8+K1eu\n7PzF4+STTyYWi/Hd736XM844g7FjBy4x62fk8CLgbeBk51w4Xrnc0wrgiJz0TERkmDvvH+fxyOpH\nqGupo7ywnPFl49mudDvGl43v/Poj4z7CYWWHUVlcyQUPXMBeE/bimF2OGdiOLloE556bfTtdt9I7\n++ysmqprb2dDezszyrqnj/2OHHZNKScUFu5ASayeNT7nHEL/u6SEw++w2243sf325yQ9v2z2MiZf\nMZkxs8YkPe+XClL6l4vgLd+eeeYZ9tlnn14j0ieccAJ33HEHy5Yt48hc/AKXJj/B4R7AHc65vrbQ\nqwEmZtclEZHhb0PTBv664q+8/rXXmVA+gcJg/9WGd558J2f+9Uz+85X/MKF8wgD0EohE4Jln4A9/\nyE17c+bkJDh8cvNmjqisJNhj1KelZSVjx6YfPHdNKScUFFQRim2huq2NqHPdnpHOyGFfcw4jkfo+\nt/VLtktKNrxNy2LEYu0pRytl6ItEIkSjvf9eRCIRADo6Onqdyyc/BSkG9Fe/PwFvUWwRkUHhHNx7\nL/z97/Cf/8CmTd6xgfbI6kf45LRPstPondIKDAFmT53Nefucx9l/P5uYy/1WdEm9/LK3tmGP0bWM\nJYLDLLfSe3TTJo5NkkbLdAHsrgoKquiI1FNVUMD74e7jHZG61ItgQ/9p5X6DwyS7pGTDzJRaHgE+\n/vGP8+qrr7Jq1apux//0pz8RDAbZc889B7Q/fkYOVwOHpDppZgHgUOCNbDslIpKp730PHnzQi3fe\neQeqq6GjAyZP9l4779z9ffJk2HHHzJf3S+WhVQ9x/K7H+77vqiOu4og7juDa56/lW4d8K7edSiZX\n8w0Tpk6F0aPh9ddhr70yaiLmHI9u2sSVU6Z0Px4LEw7XUFw8Jel9ySRLKxcUVNHRsYnpFcWsaW1l\n5+JiwEs/dmzqyCo47OjoPzjsuUtKtrzgsJGCAi0WMlx95zvf4f777+ewww7jwgsvZOzYsTz44IM8\n+uijXHDBBUycOLBJWT8jh/cC+5rZt1OcvwzYFViYda9ERDJw/fXeiOGSJfDAA14R7pYtXo3EPffA\n178Oe+zhHXvgAfjOd2Dvvb37cikSjfDkmic5btfjfN9bECxg4akL+cmzP+Hlmpdz27Fkch0cgjd6\nmMWSNsuamhgdCjGtx9pura1vU1w8mUAgdfDWU7KRw0CgiECgiN2LorzdZTmbjq0dBEoDBApT/2hM\nZ+QwFOonOMxhWhm85WxUsTy87bnnnixZsoR99tmHn/3sZ1x66aWsXbuWH/3oR/z2t78d8P74GTm8\nHvgs8FMz+2zioJn9HDgc2A94Abg5pz0UEUnDPffAz34Gzz7bO0M6erQXFO6xR+/7XngBzjoLLr44\nd6OHz7zzDLuO3TXjeYNTKqdw43E3csb9Z/Dql1+loqii/5sy0dYGL74Ih2e+fVtSRx8Nv/61F31n\n4NFNm/hUkpRyS8tbviqVIXlwCBAKVbFrYVu3opT+5huCV5CyefPmpOeci9LR0UBBQepik1BFKA/B\noYpSRoIDDjiARx55ZLC7AfgYOXTOtQBHAncC+wL7x099E2+f5buAY5xzkVx3UkSkL4sWwUUXwcMP\ne2liPw48EEIhL6jMlUxTyl2dNvM0Zk2exYWPXJijXiXx/PPwsY/BqFG5bXfWLK/tJNXA6Xikz/mG\nu/tqK1laGbzU8pSClm67pKQTHPZVkBKJbCYUGoVZMOl5yH1BCiQqljXnUHLH797KW5xz5+AVnhwH\nfBE4EdjeOXe2c06/uojIgFq2DD73OfjLXyCTOdtm3rrNt96auz49uPJBjt8tu+AQ4LpPXcfS95fy\nx//7Yw56lUQ+UsrgDdXutRc8/bTvW7dEIixrauKIyspe5/yucQipRw4LCqrYIdjcbZeUjvq+5xtC\n32nl/uYbQu4LUkC7pEjuZbS3snOu3jn3qHPubufcg8652lx3TESkP2vXwvHHw29+A0dkscLqF74A\nf/sbZLErWqe3N73NlrYtfHz7j2fdVllhGfeceg+XPnYpqzetzr5zPeUrOAQvtfzEE75ve3LzZj4x\nejQlwd6jb34rlaHv4HC7QJPvtHJfwWF/8w0hvwUpIrmSdnBoZreb2Y197Z1sZieZ2W256ZqISGq1\ntXDMMXDZZTB3bnZtTZjgbSv85z9n36+HVj3EcbseR8Ay+t27l70m7sWVh1/JGfefQXu0PSdtAl4k\n/NprcEjKRSiyk2FRSqr5hpDZyGGqtHIoVEWp20JbLMbW+Bpy6c457Cs4TGfkMD9zDpVWltzx86/X\n2cDXgefNbHqKa/aJX+eLme1oZreZWY2ZtZnZWjO71sx65xVStzHXzH5lZk+bWYOZxczsrjTuO8TM\nHjazTWbWYmavmdnF8aV5RGQIamryRgxPOw1yteXoeefBbTn41TYX8w17uvCAC5lYPpHLF12eu0af\neQb22w9KS3PXZlf77++tJbR+fdq3uPgSNsnmG0YiW4hGmyks3N5XN/oaOYxENjGtpKRz9DAXI4f9\nBYf5KkhRtbLkkt8A6FVgGl6AmOrXTV/1fvFA8xXgHLxq518Ca4CL489Jd+Gmy4FvAHsC78WP9bn0\nrZmdBDwFfAK4H/gVUAhcC9zj5/sQkYERiXhB4R57wNVX567dY4/10tQrVmTeRlN7E8+/+zxzps/J\nXcfwFjq+/aTbWfj6Qh5/O/MlYrrJZ0oZvCqf2bPhySfTvuW/zc0UBQLs2mMJG4DW1lWUlu7ma5/c\n9vZ2mpubqUwyf9Fb67Ce6SUlnfMOsy1ISWvOYZeClHfeeYfy8nKKiorSepWWlvKf//ynd5tZzjmM\nRCLstddetLfncGRahjW/weE/8QpRioAnzez0HPThN8B2wDzn3CnOucucc0fhBWi7A9ek2c4lwK7O\nudHA1/q72MxGAbcAEWCWc+4C59x3gb2B54G5Ofr+RCRHnIPzz4dAAH73u9wuXB0KeUva3H575m38\na82/OGCHAxhVlOPqX2Bc6Tju+sxdnPP3c9jQtCH7BvMdHII379BHavmReEo5WQCYyXzD+vp6qqqq\nkrbnjRzWM624uLNiOVLf9+4okJs5h4mClHXr1rHXXnvR0NCQ1mvu3Lm88sorvdrMtlp59erV/N//\n/R+rV+dhXqsMS75Tp865J/B2QqkF7jaz/8304fFRwznAWufcr3ucvgpoAb5gZv3mPZxzS5xzbyea\nTuPxc4FxwD3OuVe7tBPGG4WENIJMERk4l10GK1d6cwNDflZpTdO558Jdd3mjk5nIR0q5q8T2euf8\n45zsttfbtAlWrYIDDshd55JJFKWkuX9hqpQy5LZSGbw5h5FI/YCnlbsWpNTV1TFhwoS0Rw5nzpzJ\n8uXLe7eZZUFKos1kbcu2KdNq5f8CBwGvAT8ys1usr4WdUpsdf+/1q6Vzrgl4FiiLPyvXEr8yP5rk\n3FNAK3CwmaW/FL+I5M0NN3gVxQ88kL9pcrvvDrvs4q2X6JdzzgsOc7CETV+uOuIqtrZt5boXrsu8\nkX//2ytEKUxvz+eMTZvm/WH997/9XtrY0cFLjY3MHpN8AelcVirDhyOH04uLO3dJSSc4LC4uJhKJ\nJE3B+i1Iqa2tTVosk8qMGTNYkWTeQ7Zp5RUrVhAMBpO2LdumjIsunHMf4O2M8hDwJeBhwG8uJbGa\n6coU5xM7UO/qu4NZPNs5FwXW4u0gMy0PzxYRHx57DH76U+/dx8/SjGRamLJs/TJKC0rZrcpfAONX\nYnu9nz77U+7+v7sza2TRIjjqqNx2LJU0l7T51+bNHDRqFGVJlrCBzEcOUwVfiTmHfkcOzSzlvMO0\n5hyWBom1xXBR12fwmsxHP/rRFMFhdgUpK1asYPbs2QoOpVNWFbnOuWbgZODXeOnhi+mnCKSH0fH3\nrSnOJ46nXbXs89mun2dbnp4tImlyDr73PfjVr/zvfpKJz34WnnrKV5EtkP+UcldTKqfw5FlP8t0n\nv8uvl/ackZOGgZhvmJDmkjZ9LWHjnMto5LCurq6fkcM6phQX8144TKQjSmRThNDY/ucrpAoO05lz\naAEjWOqllv0Gh1OnTmXDhg00NXWfX5jtUjbLly/n1FNPVVpZOvkJDt8hSSDlnIs65+bhbaMHPquV\nRUT68uCDEI3CSScNzPPKy+GUU7y5h34MZHAI8LHxH+Ppc5/m2heu5YdP/RCX5rw+1q+HDz6AvffO\nbwcTjjzS25uwy04kPTnnUm6ZB9De/gGBQCkFBf5+V+8r+AoGRxGLtRGig4mFhVRvbCFYHiRQ0P+P\nxVTzDtNJK8OHRSmp1mBMeV8wyG677cZbb73V43jmaeVYLMbKlSs56aSTWLlyJdFobpfZkeHJz97K\nU5xz1/dx/jpgB/ylYRPB5ugU5xPHt/ho08+zbZCeLSJpcA4WLIArr/QqlAdKYju9dOOt2uZaVtSu\n4PDJh+e3Yz1MHTOVp899mj+/8We+9fi30gsQFy/2tpNJkb7NucpKb92hPjavfrOlBQfMSDGZNJOU\nMvQdHJoZodDYzqKUde839ZtSTkgWHDrniETq0g4OMxk5hOTzDr1q5cyCw+rqaqqqqth+++3Zbrvt\nqCK9MVwAACAASURBVK6uzqgdGVlyWu/nnPOZiOHN+HuqndQTcw1TzUnMxlvAvvFnd1s4ysxCwFS8\nZW7WJLt5/vz5nV/PmjWLWbNm5aGLItu2hx+GcBg+85mBfe7BB3vvzz+f3gYij65+lCOnHklRqCi/\nHUti+4rtWXLOEo5feDxf+ueXuPmEmwkF+vinfSBTygmJ1HKKeY6JUcNUaxhmklKG1LujJHQtSnn/\nnRY+lmZwmGyXlGi0GbMgwWD/1VKJopRMg8Oe6d9s0srLly9nxowZ3dqeNk1T7Ye7JUuWsGTJkozv\nT/kviJntHP+yxjnX0eVzv5xz76R56eL4+xwzM9fl114zq8BbMqcZb3HsXPsX8HngU/Re8PpwoAT4\nt3Mu6aIWXYNDEcm9wRo1BG/9xERhSjrB4UCnlHsaWzKWJ7/4JJ+59zOcft/pLDxlYepAddEiuOSS\nge3g0UfDvHnwk58kPf3opk18bdKklLfnY+QQuhalTKFufaOvkcOecw7TKUZJSOyS4jetDF5RysKF\nC7sdy2YpmxUrVvDRj360s+0VK1bw6U9/OqO2ZOjoOWi1YMECX/f39U/uOryK3Wk9Pq/r57U23Yc7\n59bgLWMzFW93k64WAKXAXc65VvBG9MzsI2aWi19r7gPqgM+Z2b6Jg2ZWDPww/vG3OXiOiGTg0Ueh\nuRlOPXVwnn/WWXD//d5WfX2JRCM8/vbjHLfrcQPTsRTKCst44IwHCFiA4xceT1N7ko6vW+d9Q/Fg\nYMAccACsWQMbN/Y61RyN8nxDA0elWMIGMh857C847FzrsLiYLRvD/S6AnZAsrZxOMUpCsDxIR0NH\nzkYOA4FiYrEIsViHr7Yg+cihSF9p5TvxqnkbunxOh59qZfD2a34OuMHMjsJLNR8IzMJL/X6/y7U7\nAsuBaryAspOZnYxXOQ0wMf5+iJndEf+61jn3nc5OOtdoZhfgBYlLzOweYDNwIrAb8Bfn3J99fi8i\nkgOJUcMrrhj4UcOEiRPh8MPhL3/xFsdO5bl3n2PqmKlsX+Fvz998KAoVcc+p9/CVB7/CJ+/8JA+f\n+TBjS7oUeSxe7KWUc7m1TDoKCmDWLPjXv+CMM7qdWrJlC/tVVDCqj1XNMx05TDutXF7C0towBeNS\nTUHvLlVwmO7IYbAiyNbarYRCIUqSbBXYl1133ZXq6mra29spjK9TaWbxopQmAgF/RTsrVqzg3Phf\n8BkzZnDrrbf6ul9GppT/Nzrnzunrc64459aY2X7AD/BSvMcBNcB1wALnXLKlZpIFoHsBZ3U55/AC\nyK4jn9/peoNz7h9mdgReAHoqUIy3tuKlwA2Zf1ciko0nnoCtW71lZQbTeefBz3/ed3A42CnlnoKB\nILeccAv/88T/cPjth/P4Fx9nUkU8ZTsY8w0TElvp9QgOH6mvT7mEDUAs1kFb2zqKi6f7elwsFqO+\nvj6t4HBaSYm3xuHM7EYO/QSHtev9LYCdUFRUxOTJk1m1ahUzZ87sPJ4oSvFT0e2c65ZWThS7OOd8\n7WEtI88g/U7enXPuPefcec65Sc65IufcVOfcN3sGhs65dc65gHOuV1rZObcgfi7Y4xVIdU/8vuec\nc8c758Y650qdc3s5567vOv9RRAZO11HDgSqoTeW447xd5lb2URI31IJD8EaSfjrnp5y5x5kcdvth\nvL3pbe8/7GAGh4milB7/tPa1ZR5AW9s6ioq2Jxj8/+ydd3hb5dn/P4+Gp+Tt2LETx86eQCZQEgIk\njJQVaPmxA4RdSFtWW1YhBMrbsvoChdIXKHsUKDNQSkiAsDKAQIKdOMt24jjejmVL1jy/P45lS7LG\nOZJs2eR8rkuX8RnPeawY+/b9vb/3naLqcW1tbZhMJozG0AGf0ZiHy9VMjsFAxgFw5Cj7lRjMkKKm\n5lBv1tPYoF5S9hLclKK+nU1dXR1JSUnk5sr7zs3NJSUlhX379kW1L42fDoMiONTQ0NDw8vHH0NwM\nZ5+d6J3IauiFF4aemFLVVkWTtYnZxbMHdmMKEEJw87ybuelnN3H0M0ezZ8PH8kDqRDlRx46Vx/X5\ntGHZbrVi83iYlp4e8rb+cipDb+ZQCEFhh44ms7KcQDBDipqaQ4PZQGNTbMFhYDubaEwpFRUVPfWG\n4dbWOPgI51b+J+rrBwGQJGlp1DvS0NA4aPFmDW+7LfFZQy9Ll8odWO6+W46tfFlZuZJFYxehE4P3\n7+yrZl1FRWMFm195mJGJqDf0IoScPXz//R5DzAfdU1HCSZhyvWGobmehUWL28BpSAHItgjqTsgbQ\noWTllJRSRffrTXqaW5rJK4huFuTkyZN5P2AAeDTtbHwlZd+1KyoqWLhwYVR70/hpEM6QclEM62rB\noYaGhmo++UQe4HHOOYneSS+TJkFpqeyeDuzwsXL7Si45LExB4iDhuLLjMH9+JSy7L7EbuewyefzM\nNddAair/aWnhksLCsLfYbNtIS5sS9ppgKAkOvZlDgIwDsD1dmds3VHBoNs8McYc/erOeprYm8qdG\nnzm8//77/dfUm1TPV/Z1KvuurTmWNcL9uTs6hpeGhoaGarxZwzDG1YSwdKk8McWXTkcnn9d8zglj\nTkjMplRw1IgjmfxjA+75AzvBpQ9z5sDhh8Ojj2Jzu1l74ADHh2lhA/3nVIbePocAKa0SO1IditaO\nR81h84HmqGXliRMnsn37dr9Rd5qsrBFPwrmVqwZwHxoaGgc5n34Ke/fC+ecneid9OftsuOkmqK+H\nggL52Ordq5lZNJPMFGXtTxJJ3s46dpuM1BhbmM6oxG7m7rth/nw+O/tsDk1PJyuMYQT6r8ch9GYO\nJbeE/oCbrcnKgsOY+xya9bR0tkTlVgYwmUzk5+dTVVXFmDGyi1t2K8dPVtY4uBm8hTIaGhoHFcuX\nw623Dr6sIYDZDIsXwwsv9B4bjC7lkKxeTfWMMXxe83midyLr9KecwgeffMKi3PDBlNvdidPZRErK\nSNWPUVZzmIPL1Yqz1Yk+Q88OZ5eitUMZUtRMSGmxtkSdOYS+8q/azGFLSws2m42igMk0w4cPp6ur\ni+bm5qj3pjH0iSo4FELohRAFQoiSYK94b1JDQ+Onzdq18vCOCy5I9E5C4x2nJ0lyf7ghExxKErz8\nMtKJJ/D5nsjBYYPDwcr+DgzuvJP/6PWcFKZjmMfpofbt9aSkjEEI9e4kJbKyTmdEp0ujq6mJpFwj\n+x0OHB5PxLVj7nNo0tPa1RpTcBiY4VPbysYrKQeagYQQWvZQQ11wKIQ4RAjxPtCB3Ki6it6RebtR\nOT5PQ0NDA+Cuu+CWW+TWMYOVuXPB6YR162Bzw2aS9ElMzJuY6G1F5q23wOFg1IXX8nnN50Rq4Xr7\n7t1cUFFBl1uZczcadufn05qby/QHHgh5jWWjhV0Pf0qSK7oydqWj6YzGXLqaG0jKS2JEcjLVXZGz\nh2azGYvF0vNeejwu3O4ODAZlDaj1Zj0tjuhlZQiVOVQuKwczo4RaW+PgQ3FwKISYBHwBzAM+AgTw\nffd/t3R/vgblY/Y0NDQ0+PJLudH0kiWJ3kl4hOg1pqyslLOGg36KhNsta/X33ktZzhgkSaKqrSrk\n5bttNt5obGRsairv9WP28D8tLZxUUIDupZdgd/B8Qvu6dsToWpybwruZQ6EqOGxtwJhnZHRqKjtt\ntoj3GAwGkpKSsFqtALhcLRgMWQiFLY30Zj0H3AdilpX9M4dmVW7lYGaUUGtrHHyoyRzeBiQBR0mS\ndFr3sTclSToReUzdP4HJwB/ju0UNDY2fMsuXy1nD7jGxg5oLL4Q33oB3tw0RSfn55yEvD046CSEE\n80bNY23N2pCXr6iu5priYq4pKuL5+vp+29YHLS2cVFQEy5bBHXcEvcay3kL6olZsq3NxtjpVP0OJ\nrAxyr0O7pVEODlNS2KUgcwj+dYdqJGUAd7Ibm2QjK0vdHGRffEfdQXSycqAZxYsmK2uoCQ6PAd6T\nJOkHn2MCQJKkDuAqoA24O26709DQ+Enz9dewdStcfHGid6KM4mKYMquZ7+s2M790fqK3Ex67He68\nE+69t6fx9dyRc0OaUrZbrbzb3Mx1I0bwi/x8Pm1ro8mhzL2ralseD5+2tXFCTg5cfz18+CFs2dLn\nuvZ17UhFe8gYNYX9/9yv+jlqMocOayOGXANjFGYOwb/uUG1w2GptJYMMiFzeGJLc3FxSU1Opra0F\n1LuVNVlZIxxqgsM8wHfCqAtI834iSZITWVY+Pj5b09DQ+Klz111w882JzRq+vPllrvvPdbxe/jp1\nlrqI10869UMyW48hxaBu1u+A8/e/w7RpcNRRPYfmloQODu+qruY3xcVkGY2YDQZ+npvLKw0Ncd/W\n5wcOMCktjVyjETIy4A9/kKVvHxxNDpxNTuzSDkb88khq/1aL5FY+sMtqteLxeEgPM5bPi9GYi9PR\nFFXm0BscqulxCNDc0kyWLgt3R2x1nb7yrxq3ckdHB42NjZSWlgY9P2rUKJqamujoUNcaR+Ong5rg\nsBUw+XzeDAQ6kx1A9HlyDQ2Ng4b162HzZrgkgQNG3B43v1/1eww6A89seoYpj01h7MNjueiti/i/\nb/6P8sZyPJJ/eqcl7z1a159MW1uCNq0Ei0XOGN5zj9/haQXTqLXU0mRt8jte0dnJhy0t/HrEiJ5j\nSwoK+kVa/qC52b+FzdVXw6ZNcvGpd/sbLKTPcyNJbnIOL8OYY6T5A+U1kF5JWUlNqLfXobfmcFfU\nmUPl5pLGxkayDdm4LMomsoTCV/5VIytv27aN8ePHo++eUSlJHioqliB1f6/r9XomTJjA1q1bY9qf\nxtBFTXC4Eyj1+XwjcLwQogBACJEOnIbmVtbQ0IhARQX86ldy0ig5OXH7WLVrFcPSh3HfCffx3nnv\n0fS7Jt4+521+NuJnrK1ZyykvnUL+ffmc+vKp/PnzP7O2ei1r9nzIMcU/59//Tty+I/LQQ7BwIRxy\niN9hg87AESOO4Ms9X/odX15VxQ0jR5Lh02RyYXY2NXY727pNF/HiP93zlHtISZHrDm++WW67gywp\np85rJC1tAjqdjuJlxdQ+Uqv4GUolZZBrDl1SC8Y8Y4+sHMnRDf5TUtQ0wPbuLzspG7cl9syhV/5V\nY0gJlJS7umqor3++Z5Rg4NoaBx9qgsMPgeO6g0CAvwM5wLdCiNeALcjB45Nx3aGGhsZPhqYmuPZa\nOPpoeRLKVVcldj9PffcUl06/tOdzndAxZdgUrpx1Jc+d8Ry7frOLzVdvZskhS6jrqOO6D6/j0IJD\nufSsEbz0UgI3Ho6mJnj4YVmzD8K8knmsre41pWzu6OCTtjauLS72u86g03HusGE8v199vV8o9nR1\nsd/hYJbZ7H9iyRJoaJDrD5HNKPpp+3vG5g07exgdmzqwblMWqKoJDo3GXNyiFWOekUyDgWSdjkZn\nZANMLIaUpqYmslOz+0FWViYDBzqVbTa5Yszh2Bd0bY2DDzXB4ZPApXTXGUqStBK4rvvzXwD5wP8A\nD8d5jxoaGkMchwMefFAejiGEbEK57jrQq+9tHDcaOxv5787/cu60c8NeV2Qu4qwpZ/HXk/7Kxis2\nsvqi1Zx8MnzzDdRFLlEceO69V573Nzp4f8C5JXP9mmHfUVXF70pKSA/yj7GkoIAX6uvxKMikKWFl\nczMn5OSgD5R7DQZ5rN4ttyC53bSvb0eM2NMzNk+XrGP45cOpfVRZ9rCxsVFxD0GjMRePsRVjrtxk\nc4xCaTmWmsPGxkZy03Jjzhz6ysqyIUVZ5jDQqWy1ysGh3d77Da05lg9uFAeHkiTtkyTpFUmSGn2O\n/S9yUFgEZEiSdIskSf3XOVVDQ2NIIUnw9tswZQp8/DF89hk88ghEmJo2ILzwwwucOuFUslLUl0mn\npsrj9F55pR82Fgt79sAzz8Btt4W8ZE7xHH6o/wGr08q3Fgvr2tu5OmCEmpdDTSbMBgOfHzgQ89Zc\nHg8P7d3LJYUh+haeeSbo9XQ9+ib6VD123a6ezCFA0VVF1L9Yj6s9cp1eU1OTqsyhJ+UAxjw5OByd\nksJOBaYU/5rDJvXBoTn24HD48OHY7XaamprQ6dLweLpQ8is4UFbuzRz2BoearHxwE/NsZUmSXJIk\n7ZckKQZTvoaGxk+NTZtgwQK5h+Gjj8LKlXLmcDAgSVIfSVkt553H4JOWly+HK6+E4cNDXpJmTGPa\nsGlsqN3AHVVV/KGkhNQQKVwhBBcWFPBcHKTllxoaKEhKYmF2dvALhIB776X93rcwzzJhs1X2ZA4B\nUkakkL0gm/3PRd6LqppDXQ6kH8CQLddbKjWlxFJz2NTURE5GTsyGFN9Rd0II9Pp03O7OsPc4HA5q\namoYN25czzGrtZL09Gl+svLYsWPZs2cPdrs9pj1qDE1iDg41NDQ0fNm/Hy67DE46Cc46C77/Hk48\nMdG78md97XrsbjvzR0Xfq/C442DvXqisjHztgLB1q5ym/d3vIl46t2Qur1Rv4vuODi4PE0gCnF9Q\nwL+bmrDFME7P6fGwvKqKu0pLwzuIFy6kPWkaZl05NtsOUlPH+Z0uXlZM7aO1SJ7wMrcaWZmODMho\nR2eQfx0q7XUYS5/DxsZG8rLzYs4cgvp2Ntu3b2fUqFEk+fSPstkqycqa7ycrJyUlUVpaSuWg+QbX\nGEjUzlYeKYR4UAjxsRBimxBiV7BXf21WQ0Nj8OJ2w//8D0ydCtnZcqxy9dVyOdlg46nvnmLpYUtj\nGn+n18ulfYMme3j77XDjjaBg6sa8knm8bjNz66hRpEQo/CxOTmam2cy7MYzTe66+ntKUFI4JlTX0\nwZJ1JCnlj2LQZ2EwmPzOZc7LRJeso3VVa9g11MjK7pZkMLhwu2UpWWmvw1gMKY2NjeTl5sVsSIFA\nx7IpomM5UFL2eOzY7bVkZPzML3PoXVurOzw4UTNb+RjkJti/RZ6vnN59f+BrkA8b1dDQ6A9eeUV+\nff013HefohglIXQ6Onm9/HUuOuyimNc6/3x48cWeDiyJY+NGuU/gsmWKLtdnHUYz6SwZpiyAujCG\nnocOj4cVVVXcVVYW8VqPw0PHTtAv1JPWnNrnvBBCUVsbNbKyu8WNsGbhcsnBr1pDiiRJuFwtqt3K\n+fn5cckc+vc6jOxYDjSj2Gw7SUkZRUrKKL+aw8C1NQ4u1GQO7+u+fgmQIknSCEmSSoO8Iv8E0NDQ\n+Enhdstm0/vug7FjE72b8LxW/hpHlRxFkTm4CUMNs2bJHzdujHmp2LjlFjlzmJYW+Vrgof2tFDR/\nyLamHxVdf2ZeHmvb2miIYpzeU3V1TExL46jMzIjXdm7uJHV0KvaLjyZ13T6CdRovOK+AA18dwLYr\ndACnJjh0NjnRObJ6evwVJyfT5HRGlNG9waHbbUGIJHQ6ZQ07PR4Pzc3N5A2Ln6zszRwqcSwHZg6t\n1krS0iaQlDTcT1YOXFvj4EJNcDgVeEWSpBc084mGhoYvb7wBmZly3+XBzpPfPhmTEcUXIQaBMWX1\nati1Cy5V9jV90tpKdVcXPzcbQo7SC8RkMHBqXp7qcXpdbjd/qqlRlDUEufm1+XAz1ox20rKmwf33\n97lGn6Zn+CXDqX0sdPbQOyFFCc4mJzpXdk9wqBeCkpQUqiJIy15DilpJua2tDZPJREpWSsyGFJBH\n3TU3N2OxWBRNSQnW4zA1dTxJScNxOOr8GoBrsvLBi5rgsA15ZJ6GhoZGDx4PrFgBf/yjHCwNZrY2\nbWVHyw5OHndy3NY87zxZTo/BrxE9kiRPFlmxAoxGBZdL/LGqijtKSzm65CjFwSFEJy3/o66O6SYT\nczIyFF3fvr6djDkZ2GzbSD35SnjssaCafdGvitj/zH7cnX3fdJfLRXt7Ozm+U1jC4GxyYiDHbzrI\nmNTUiHWH3prDqOoN8/LQm/VxyRz6jrqLZEhxu91s376diRMn9hyzWreRljYevT4FvT4dl6ul59zE\niRPZsWMHLlfsQazG0EJNcLgSiN7ap6Gh8ZPk7bflEXiLFiV6J5F5+runuejQizDqIwdSSpkwAYqL\nYc2auC2pnLfeArtddsYoYFVrKw0OB+cVFDBv1DzW1qxVNCoOYEF2NrV2OxWd4VuleLG63fxPTQ3L\nS0sVXQ9gWWfBPMcsS52l88Bshp07+1yXWpZK5lGZ1L/YN1htbm4mOzsbnU7ZrzdnkxODLqen5hC6\nex1GqDv0yspqG2B76w31Zn1cDCnQK/9GqjncvXs3w4YNIz09veeYb8sgWVruNaWkpaVRUFDA7t3a\nVNyDDTXB4c1AthDiMZ8RehoaGgcxkiRPabv99sGfNXS6nTz3/XMsnb407mt7jSkx8eSTMGOGLA8/\n9hisWwfhAhS3G269Ff70J1AQCEmSxO27d3NnaSl6ISjLKkOSJKraqhRtTy8E56vIHj6+bx9HZmQw\nPXBUXghcB1x07ekidbIBu72WlJQymDkzZEGn15gSGNyqkZQBnM1OjMZcv8yhkl6H3uAwmrnK+fn5\nGMyGuGQOoVf+jTRfOVBSBm/NoRwcJicX9TGlaNLywYmaCSmNwM+B84D9QohvhBCrg736bbcaGhqD\nivfekwPE005L9E4is3L7SsbljmNC3oS4r3322XIST4HJNTjV1fCHP8iR9uzZ8N13ch+g3Fw45BC4\n5BK5k/hXX4G1e77w889DXp7ilO0HLS10ejz8v2HDANn5O7dkrmppWck4vQ6Xi/vUZg03WjBPN2N3\nVpGSUoJOZ5QdP998E/T67AXZSC6Jtk/9TStqzCggZw6TUvL8ZWUFU1LS0tKw2+3YbA3Rycqm+MjK\n0OsqjlRzGOhUdjrbcLs7SUqSzVneusNga2scXCjuQCaEmAp8AniLR6b3x4Y0NDSGBpIkl7rddtvg\nzxoCMU9ECUdRkZzkev99+MUvVN4sSXDNNfKw6VNO8T9nt8PmzXKA9O238mi88nIYM0buNv7WW4re\nfEmS+OPu3SwvLUXnc703OLzw0AsVbfUQk4lsg4FP29o4NkzPwkdrazkmK4upJlPIawLxmlFsth97\nJ6PMnCk3zwyCEILia+XsYfYxvXuJJjhMN+Vhd/ZKp0oyh0IITCYTbW11ZGZGJyvHw5ACvbKywXC0\nnywcSHl5OXPnzu353GbbTlrauJ5+n0lJRX3unzRpEp999llc9qkxdFAjKz8IZAN/BEYBSZIk6YK9\n+mWnGhoag4oPP4TOTnkk7mCntr2WL2q+4KzJZ/XbM847L0pp+fXXoaoKbrqp77nkZDl7duWV8MQT\nssTa1gbPPguvvgpHHaXoEe80N+MGFgfIrXNL5vL5HuWZQ4AlhYVhpeV2l4sH9+7lThVZQ+g1o/jK\nnMycKQfFnuANMgqWFNC2po2umt4sn2pZuclJcsawPjWHu7u6ItZjZmRkcOBAverMYU/NYZwyh95R\nd05nSsTMYTCnspfk5L6ZQ01WPjhRE8gdAbwpSdLdkiTtkSRJsy9paByk+NYaKqz7TyjPfv8sZ00+\ni/Sk/iuXPvNM+PjjoK35QtPWBr/9rRz4+YwzC0tSklybeNxxih/zeG0tfygp8csaAhxScAh72/fS\nbFXeiOK8YcN4s6kJawh79l/37uWknBwmpit/ryVJwrLOQsbhGf4BS16ePG5nx46g9xnMBgouLGDf\n33uzXdFkDpOz8v1kZZPBgFmvpy5CX8eMjAza2hpU1xz2uJXjZEhJSkqirKyMmhpLyOBQkqQ+waFf\nIE5fQwr0BodKjUsaPw3U/Fh3ApplSUNDg9WroaVFnp082PFIHp7+7mkundE/krKXrCy5z+Mbb6i4\n6eab4dRTFWcAo8Hh8fBlezsnBJGBDToDR4w4gi/2fKF4veHJycwxm3m7qanPuVank4f37uWPo0ap\n2qN9rx3JI5FcktwnYAlXdwhQfE0xdU/W4e6SAy01waHH5cHV7iI1pwCn0//rUWpKaWuL0q2crsfT\n5UFyxyfomjRpEtu3t4R0K9fW1pKWlubX4kcOxHtrcJOS+hpSsrOzMZlM7N27Ny771BgaqAkO1wBz\n+msjGhoaQ4e77pKNshHG8g4KPqv+jFRjKrOLZvf7s1Q1xP7yS3jnnZA1dfFig8XCuNRUskP0QZw7\nUp0pBUJLyw/u3cvpeXmMVTipxUv7OllSFkL0kTrDOZYB0sanYZ5ppuEVuUG3GlnZ1erCkGXAmOxv\nSAFlphRZVm7BaFQuY3uDVyEE+vT4ZQ8nT57Mjh0NId3KgWYU6Js5DCYre9fWpOWDCzXB4e+ByUKI\nm0Us0+o1NDSGNJ9+CrW1cO65id6JMrxGlIH4sXXyybLRuDb86F9wOOCKK+Chh/p9CPXq1laODfMM\ntY5lkGsXv2pvZ7/d3nOsyeHgsdpablOZNQSwrLdgPtyMy9WOy2UhObm492SEzCHQY0yRJEn16Dxj\nnhGDIRuX6wCS1BuoKckcylNSDkTlVgbQm+JrSqmsrA0pKweOzZMkqTsQH9dzLNiUFO/a2hi9gws1\nweFtwBbgHmCHEOINIcTTwV79s1UNDY3BwIoV8ihfg+JeB4mjrauNd7e9ywWHXDAgz0tJgcWLZa9I\nWO6/H0aNGhBdfk1bG8eFcRbPKZ7D9/XfY3Mq78OTrtdzWm4uL/uM07t/zx7Oys+nLDVV9R57J6P4\nu2cBub4yjCkFIGdRDq4DLtq/ao8qONTpDBgMZlyu3oLR0SkpCqektEclKwNxNaXIwWF1yOAwsN7Q\n4diPTpeK0dj7vaHXpyFEst/74F1byxweXKgJDi+id0JKGXAGcHGIl4aGxk+QL7+UvQEXKut8knBe\n3vwyJ4w5gbw05bJfrESUlnfsgAcfhL/9rd97AHW53WywWJiXmRnymvSkdKYOm8qGfRtUre07Tq/e\n4eAfdXXcGkXWUHJLdHzTgXm2Gat1m7+kDHKvx7w82L495BpCJyi+ppjaR2tVz1U25spyu8GQ22eE\nXqQpKWZzOp2dTvR6ZeMBrVYrHo+nZ0JJPE0pEydOZNeuPdjtymTloO81XmnZ35SiycoHH2qCezEP\nhwAAIABJREFUw9EqXhoaGj9BVqyQPRQKxvgOCp767ikum3HZgD7z2GNh3z7Yti3ISUmCq66S30SV\nrV6i4av2dqakpWGOkOadVzJPtbR8bHY2DQ4HP3Z28peaGs4vKGBkSorqPXaWd5JUlIQx29jXjOIl\nQt0hQOElhTS/3+yXmYuEs1nOHAJRTUlJTzdis6UqLlnwSsre6+M5JSUtLY3CwgL27m0Pej5QVrbZ\ngr/Xcq/Dvu1sNFn54EJNcFgCZEmSVBXp1U971dDQSCDr18OWLXDxxYneiTI27d9Eo7WRhaMXDuhz\n9Xp5YkrQ7OELL8g279/8ZkD2EklS9jK3ZC5ra9aqWts7Tu8vNTU8s38/t5SURLXH9nXtZBwuZ976\nmFG8KKg7NGYZSTszjSSSSE5OVvRsr6wMfYPD4UlJHHC76QzRsgcgPV3Q1aXsWUCfwDWesjLIQdyu\nXTYkyV+Cb2pqwul0UlhY2HPMag3+XgebklJQUIDb7aaxsTFue9UY3Kh1K1/RXxvR0NAY3KxYIU94\nU/h7N+E89e1TXHLYJejEwDdi9M5a9qvrb2qSG13/4x8DVrC5pq0trBnFy1Ejj+KrPV/h9qgLVC4s\nKOC5+nouLixkeJTfGJb1Fsxz5PnLsWQOAYxnGclwZ+BxhK5P9CUwOPRthK0TgrKUlLDZw7Q0sNmU\np9ED6yHjaUgBmDx5Cnv2GHC7rX7HvZKyb4YzVOZQnq/sLysLITRp+SBDzU/NZiDayaEaGhpDmO++\nkz0Bl/Zvq8C40eXq4uUtL3PJYZck5PkzZ8rNwTf4lvHddBOcc46cBRsAOt1uvrNYOCpMvaGX/PR8\nCk2FbGnYouoZU00mbi0p4fdRZg2ht41NMPdsDzNnwqZNECaLB2DNtpKTlkPj68oyXL7BYWDNIUQ2\npaSlSdhsygN9X6cy9E/msKZG38eUEigpQ/jMYaCs7F1bk5YPHtRmDn/WXxvR0NAYvKxYIcc2UZSU\nJYQ3K95kxvAZjMpSb5CIB0LI2cMeaXnNGnl8yooVA7aHLw4cYIbZTJrCZpTRtLQBuHv0aIYpne4S\ngLvTjW27DdOhJhyOenS6ZIzGnL4XZmdDfj5UVoZdr7GxkeHjh1P7SKReQjKuZlePISVQVobIppTU\nVCedncpNRQMhK1dXS32Cw0CnssfjoquritTUMX3WkGXlvvOZNcfywYWa4PB2YIIQ4m4hxBApR9fQ\n0IiVzZvhq6/ktnxDhUQYUQI591x45RVwdXTJJpRHHwWzecCer1RS9jKvZJ7qOcuxYvnWQvq0dHTJ\nutD1hl4U1B02NjYyfPJw7PvstG8MbszwJVzNIUQ2paSmOrBalU84CZSVDWZD3NzK4A0OnX0aYQc6\nlbu6qkhOHo5e37ftkCwrB2+ErWUODx7UBIc3I/c5vAWoFkJ8IIT4p9bnUEPjp83dd8P118v1VUOB\nVbtWUdlcyekTTk/oPsaPh6IiqL32Xpg6FU47bUCfvyZC8+tA5pbMZW312gGdoetrRglZb+hFQd1h\nU1MTwwqGUfwrua1NJPyDwzy/mkOILCunpNjo7FQe3PW3rJydnU1amoHq6p1+x4M5lUMF4uFkZS1z\nePCgpir6Ip//Lux+hWJpdNvR0NAYTFRUyIroU08leifK6HB0cPm7l/PEKU+QbEi8c+b8GRXkvfwY\nVG4a0Oe2u1z8aLVyRIay/nsAo7NH45bcVB+opjSrtP8254NlvYXc0+QG0ooyh3fcEXY9b2Zu+KXD\nWTd2HY5GB0n5oSXvSJnDSLJySoqVzk5n2D0F25+XeBtSAEaPNlNRsZVp0+TP29vbaWlpYZRPD8pw\ngbhXVpYkyc/AUlJSQltbG+3t7WSo+L7SGJpofQ41NDSCYrfDlVfKtYYmU6J3o4xbPr6F+aPms2jc\nokRvBYCLv/01TxTcAcXFkS+OI2sPHGCO2UyKiuHXQoio6w6jxWtGAW/AMiH0xTNmRDSleDNzxlwj\neWfmUfd/fTNgXjwuDy6LPFsZghtSylJSqO7qwh0im5qc3EFHhz3ouWD0d80hwJgx2Wzd2tswfOvW\nrUyYMAGdrvfXfbhA3GAwIYQBt9tfltfpdEyYMEHLHh4kKA4OlfQ31Pocamj8NJAkOTDMzYUbbkj0\nbpSxtnotb1S8wYMnPpjorcjs2EFO7Q+saLgSS/ChFf2GWknZy9yRAxcc2vfbcVvcpI6T695stuAT\nO3rIyoLCwhDdxWV8g6/iZcXse3wfHlfwtjauFhfGbCNCJ2fHgmUOU/V6co1G9tmDB4BJSQewWGyK\npfj+lpUBxo4dRmVldc/ngWYUkKejhJPwNWlZY+AbgGloaAx6/vIX+OEHuWezbgj8lLA5bVz6zqX8\n7ed/Iyc1iNs1ETz7LOK885g+x8hnnw3so1e3tXGsgubXgcwbpX5SSrRY1lswzzYjhMDjcWGz7Q7q\nnvUjQt2hr2xrPsxMSmkKTW81Bb3WV1KGvn0OvYwOIy0L0YrBYKArwgzmYPuD+BtSAMaPH05l5d6e\nzwPNKBBZwg/W6xC0MXoHE6p/7AshjhRCPCWE+EYIsVMI8a0Q4kkhhNbmRkPjJ8C//w2PPALvvgvd\nI2AHPXd8cgczhs9g8cTFid6KjMcDzz0HF13EggWwatXAPbrF6WSHzcbsKJzRhxQcQs2BGlpsLf2w\nM3/a1/eaUez2apKSCoO6Z/2I4FgOzMwVXxvamBIYHOr1suMqsIF0OFOK09mM2WyivT2yM9rlctHe\n3k62T9CuN+txtce35nD8+BK2b9/fk80MNKO43Z04HI2kpITuTRlsSgpovQ4PJlQFh0KIe4AvgEuA\n6UAZcBiyAWWtEOLeuO9QQ0NjwPjmG1lOfvvtAS+Ti5r1tet57vvneGTRI4neSi+ffir35jvsMBYs\nkFscDhSftbXxs4wMkqJI+Rp0Bo4YcQRf1HzRDzvzR9FklEBmzQqbOQys6cs7Mw/bdhsdP3T0uTYw\nOITgdYehTCmSJOFytZKRkYlFQd1Ac3Mz2dnZ6H3qQFNGp+BsdNL4VvzG0hUUFOLxeHpG3QXKyjbb\nDlJTxyBE6HpUWVbWeh0ezCj+6SGEOAu5nU01cBmy8SQNGNP9eQ3wOyHE2f2wTw0NjX6mthYWL4Yn\nnpDVu6GA3WVn6dtL+etJfyU/PT/yDQPFM8/ARXKDh1mzoKYGGhoG5tHRSspeBsKUInkkLBssPWaU\niE5lL9Onw/ffg6tvts1ut2O32/2ctDqjjqKrioJmD51NTgy5/g07gvY6DJE5dLkOoNOlkpGRqShz\nGCgpgzwPeupbU6m8vBLLt/EpTDUYMhgzJouKigq6urrYu3cvY8eO7TmvJBAP1etwzJgx1NbWYgvj\n4Nb4aaDmT8tlQAMwR5Kkp7vNJ12SJO2WJOlpYDbQBFzTHxvV0NDoPzo75TZ811wDZ56Z6N0o5561\n9zA2ZyxnTxlEf5N2dMA778gjUpDHKM+fD6tXD8zj17S1cVwUZhQv80rm8VlN/xZJ2rbbMGQZSBom\nt5lRnDnMzJRT2lu39jnllZR9268AFF1RRONrjThb/FvOOJv7Zg6D1R2OCdEI2+VqxmjMJSMjQ1Fw\nGJjV9JIxO4PxT4xny+lbsNcqdz6HQq83MXq0ifLyciorKykrK8No7P065UA8jCuc0LKy0Whk9OjR\nVEaYVKMx9FETHB4KvC5JUtD8tyRJTcBr3ddpaGgMETweuOACmDYNfv/7RO9GOZv2b+LvG//OYyc/\n1icgSCivvw7z5sGwYT2HBqrusMHhYE9XF9Nj6D105Mgj2dKwhXZ75IAnWtrXtfdIyqAicwhyWjtI\n3WFTU5NfvaGXpIIkck/Jpe5p/2AnmKwsZw79DSyhDClOZzNGY57i4DCwHtKX/DPzKb62mM2nbsbV\nEVsNosFgprQ0mYqKihBO5ciBeFJSUVBZGTRp+WBBTXBoADojXGMFtNF6GhpDiFtugeZmWU4eTDFW\nOJxuJ0vfXspfjv8LReaiRG/Hn2ef7ZGUvQxU3eEnbW3My8rCEIPFPMWQwuHFh/Np1adx3Jk/vmYU\nUJE5hJB1h8FkWy/Fy4rZ97d9SO7eljNKaw6HGY04JIl6h8PvuNPZjMGQi9lsjlpW9mXk70Zimm6i\n4vwKv32qRa83U1pq6AkO1TqVAZKTg2cOQRujd7Cg5ifILuAUIUTQe7qPLwJ2BjsfCSHEiO7xe/uE\nEF1CiN1CiIeEEKr0ETXrCCFKhRCeMK+Xo/laNDSGCv/8J7z2muxQTk78QBHF3PflfQxLH8ZFh14U\n+eKBpKoKtmyBU07xOzx5MnR1wa5d/fv4WCVlLwvKFvDx7v6LZn3NKG63DYejnpSUURHu6iZE5jBc\n8JUxJwPjMCPNK3sDv9CZQ//gUAjBKbm5vBZQNCpnDmVZWYkhJZSs7Puc8Y+Px21xs/N3Uf0aBWRZ\nedQoifLy8j5OZVCaOQxuSAEtc3iwoCY4fBGYBLwjhPD7zhJCjAXeAKYAL6ndhBBiDPANcDHwNfAg\ncjD6G+ArIYSixmUxrLMJuDPI6zW1X4uGxlDh009lGXnlSgihdg1KyhvLeejrh/jHqf8YXHIyyO1r\nzj67T6QtxMBkD6Ntfh3IgtELWLWrf3Rwd5ebzh87Mc+Qg0PZPTs6rHvWj+nT5SacAaaUULKyl8C2\nNs4mJ8bcyMEhwJKCAp6rr/c7prbmMFLmEECXpGPK61Nofq+ZfU8ED84iodebyc93cODAAdatW+eX\nOXQ6m5EkN0Zj+H3o9fK/jcvVN+jVeh0eHKgJDh8CPgN+DpQLIWqEEOuEENXANuB04HPkgEwtjwH5\nwDJJks6UJOkWSZIWdD9zAnBPP6+zSZKku4K8/h3F16KhMejZsUOOYV56CSZOTPRulOP2uFn69lJW\nHLuCkszQfdoSgiT19DYMRn8Hh/vsdhqdTg6Jw6zDmcNnUmupZX/H/jjszJ/O7ztJG5+GPk0OBm22\nCGPzAsnIgBEj5MHfPkQKvob9v2F0/NBB51a5OkqpIQVgYXY2e+x2tll7eyD6Zg5jrTn020OOkWkr\np7H7jt20fKS+36Reb8bj6WDChAns2bOHCRN631tv1jDSH1VCiJDS8vjx49m5cyeuII5xjZ8Oasbn\n2YETgFuB3cAIZIfySOTs3K3Agu7rFNOd7Tse2C1J0t8CTt+BXMd4gRAibSDW0dD4qdPaKqued94J\nCxcmejfq+N91/0uqMZUrZl6R6K305Ysv5IzhrFlBT3uDQ0/waW4xs6atjWOystDFIZuq1+k5pvQY\nVu+Ov8W6fV075sN7zShWa4SxecEIUncYKTjUJesoury3rY3SmkMAg07HucOG8fz+3mBZbc1hJFnZ\nl7SxaUz51xQqzq+gszxSqb8/er0Jt9vCpEmTKC0tJTW1t7G4mvc6lCklNTWVoqIidu6MXvrWGPwY\nIl/SiyRJDuBe4F4hhBnIBA5IkhRLg6Zjuz/+N8jzOoQQXyAHfUcA4X5SxbJOsRDiSiAXaAa+lCRp\ns6qvQkNjCODxyBnDRYvgqqsSvRt1bG/ezp/W/ol1l61DF7z0ObF4exuGCM5KSuTxwJs3w6H90NMh\nXpJyS0sLjz/+OM4aJw+8/QA7J8U3CJjy9RSO/MWRPZ9brZVkZc1Tt4i37vCSS3oORZKVAYquKmLD\ntA2ULS/D0+nBkBm5z6GXJQUFLN6yhbvKytAJ4ZM5tCuqOVQiK/uSdXQWY+4fw+ZTNjPj6xk9bX8i\nIQeHHUyaNIm2tja/c3KWVmlwGN6U8qc//cmvf2I4pk2bxuLFg2R6kYYiov4JK0mSRZKkvTEGhiDL\nvQChGidt7/44rh/XOR54HLi7++P3QojVQoiREZ6poTGkePxxuQ3f/fcneifq8EgeLn3nUm47+jbG\n5ESYv5sIrFbZ1XPBBWEv609peU2Mza+9fPjhh/zrX/9ipGkkO5p2YLfbcTgccXlt2LCB5z9/Pvo2\nNl6CZA6rqqooKQlfapBcnEz28dnseXAPhhwDQucfyIcLDg81mTAbDKw9cACIruZQiazsS+GSQgrO\nL2DL4i24u5TNYNbpDOh0yZxzzpn84Q9/8DtntSp/r2VZOXjd44033khJSYmif/OmpiZuuOEGRc/U\nGDyoyhz2E5ndHw+EOO89HulP4mjW6QTuAt5ClsZB7tN4J3Im8mMhxGGSJPkP29TQGIJUV8Mdd8Da\ntaBXWPs/WPjr13/F5XGxbM6yRG8lOG+9BYcfDkXh2+osXCg7xK+/Pr6Pr+7qosPtZnJa7FUz5eXl\nLF68mDvvvJO3H3ybiy+5mLE5yjJEkfjo7Y+48f0bSZ/UO7RbVRsbL9OnyylYpxOMRjweD1u3bmWi\nggLa4mXFbF60meSRfe35oWoOQa7Du7CggOf372d+VpZP5lAXMTiUJEmVrOxL6fJSrJVWti3dxqQX\nJykyYen1ZkaOzGHMGH+nsrrMYRF2e/DM4fz585k/f76idVwuF0888QQ2m81P4tYY3KidrXyMEGKl\nEKJBCOEUQrgDXh4hhLI/bwYBkiQ1SpJ0pyRJmyRJau9+rUWurVwHjEUeDaihMaSRJFlGvu46COhs\nMej5cs+X/PmLP/PimS+i1w3SqNZnXF44jj1WDs4DWubFjFdSjod729s4WQjBwtEL+XhX/FKdI6wj\nqBE1CL28T9k968RoHBbhzgBMJhg1Crr77e3Zs4esrCwyMzMj3AiZR2WSOja1T70hgMGQhctlweMJ\nbrY4v6CAfzc1YXO7e2oOlWQO29vbSUlJITmKflFCJ5j4zERsu2xULa9SdI9eb+rjNJYkT7czPHZZ\nWQ0Gg4ExY8awbdu2mNfSGDjUzFY+GViF3MvQhhw8rQ14fdb9UoM3oxfq/2rv8bYQ5+O9DpIkuYEn\nuz9VWQyjoTH4eOEFqKuD3/0u0TtRR5O1iXNeP4cnT32SsuyyRG8nOHv3yhLn6adHvDQ3F8aOhfXr\n47uFeEnKgF/j5Hj3OzRuMiIZJBob5UFbVut2Re7ZoMyc2SMtB+vnFwohBCNuGEFKWUqQc3oMhkxc\nrtag9xYnJzPTbObd5uaezKESQ0o0krIv+lQ9096eRt2TdbRvjCxh6/Vm3O4Ov2N2+14MhmwMBmVu\ndnm+cnTtdALR2t8MPdTIyncCTuB0SZL6mD5iwDskM1QvA2+NYKRhjvFax4t3hlJ6sJN33nlnz38f\nc8wxHHPMMQqX1dAYWOrr4cYb4YMPwDiE5hd5JA8X/PsCzpt2HqdOODXR2wnN88/DWWeBQsnMW3c4\nd258Hi9JEqvb2rh1lMIm0mFwOp3s2rWL8ePl7NKC0Qu44b834JE8MZuA3F1u6p+pZ9KkSZSXlzN/\n/vzo6g29zJolm1IuvTTomLhwFF4g1/IFw1t3mJQUXAK+sKCAF+uquV5yoNebFDXBVmtGCUZSQRJ5\np+dx4LMDZMzKCHutwWDG7fbfk1r5Xm6EHXvmEOj5N9cYOD755BM++eSTqO9XExxOBV6Nc2AIsKb7\n4/FCCCFJUs/coG5H9FHItYFfD9A6Xo7o/hh0poFvcKihMZhZtkw2dc6YkeidqOOez+7B5rJx93F3\nJ3oroZEkeVze008rvmXhQrjnHrn+Mx7stNmQJIlxcajn2rlzJ8XFxaSkyFm1ERkjyE3L5fv93zN9\n+PSY1m78VyOmw0xMGTmFiooK5s+fH129oZeZM+HFFwE52zlz5kxVt4fKVoarOwQ4My+POyu/RG/I\nRQihSFaOtt4wkIzDM2h+P/TevHjb2fiiNhCXZeX4ZA4nTZrEG2+8EZe1NJQRmLRavny5qvvV/CnY\nidzmJa5IkrQLuf1MGXBNwOnlQBrwvCRJNgAhhEEIMVEIMTqWdbrXmiGC/IQQQiwArgMk4IUYvjwN\njYTy5puwaVP8ApGBYtWuVTy+8XFe+cUrGHSDwTcXgvXr5f5ARx4Z+dpu5s6Fb7+VXePxwCspx6ve\nMHAWbzykZUmSqH2kluJlxX4SY0yZw8MOgx9/BIdDlawcCaMxL6RjGcBkMHBKlo4OIWfv0tPTsVqt\nuN2hy+1jlZW9mOeYsayL3CAkmKysNhA3GDKRJBdut7o+i8HQZOWhh5rgcBWg/CegOn4FNAAPCyHe\nFELcK4RYDfwWefrKrT7XjgDKgWA/rdSsA/I0lz1CiH91z19+SAjxMfARYARulyRJaaZRQ2NQ0doK\n114LTz6pWPEcFNS213LhmxfywpkvMNw8PNHbCU+E3obBSE+Xk15r18ZnC2va2uLS3xCC1+4tHL0w\n5uCwfV07zhYnuYty/STGmDKHJhOUliJt2aJaVg5HqEbYvpyaJah1y7V7Op0Ok8lER5hoPx6yMkDa\n+DScrU4cDeEdTXJwGFvmUAgRN2nZO1XF6XTGvJbGwKAmOPwDMEYIcXuwbFssdGf9ZgHPAIcD1yNn\nAP8KHCFJUrDqYKnPAfXrPAd8hzzp5TLgamAM8CpwtCRJf4rxS9PQSBg33SR7JI4+OtE7UY7T7eSc\nN87hmtnXcFzZcYneTni6uuBf/4ILL1R9a7z6HUqSxOrWVo6LU3AYLHN4TOkxfFHzBQ539Bbr2kdr\nKb6mGKEXPVkk2T27PfrMIcCsWTR88gk6nS4uwReE73XoZVqKg2aPiYpOOasWyZQSL1lZ6AQZszOw\nbAifPQzmVrZat6kOxONlSklNTWXEiBHaVJUhhBq95g7gR2SJ9hIhxCZCOH8lSVqqdiOSJO0FIt4n\nSVIVYYJapet0X/s0oLxYSENjiLBqFXz0kdwKbihx6+pbMSWZuGXeLYneSmTefVfutxeh8XIwFiyQ\ns7qxstVqJVWvpzROqeHy8nJ+/etf+x3LSc1hfO541u1dx7xR6ps32PfbaVnZwrhHZE/gyJEjaWtr\no6GhAoMhE4PBHGGFMMycSflHH/W03okHkWoOATyuFgrTCnm+vp4/jR4d0ZTS2NgYt8ymeY6Z9nXt\n5J6cG/KawMyhx2PHbt9LSoo6x3+82tlArylFSS9KjcSjJnN4EXBM93+XAouBi0O8NDQ0EkRnJ1xx\nhTwNJSO8qXFQ8c62d3j1x1d5/oznB+d4vEAU9jYMxpw5sGsXdHd0iZp4Ssoej4dt27YF/eW9oGwB\nq3atimrdun/Ukf//8jFmy1Z5nU7HhAkT+OGHNbFlDQFmzaLihx/iFniBssyh09nMeHMxL9TX45Gk\niKaUeMnKIJtS2teHN8DIbuVemdtm20VKSgk6nbIRfF5kWTl+phSt7nDooOYn8GgVLw0NjQRx221w\n1FHw858neifK2d26m8vfvZxXf/kqeWmxF+73O/v3w5dfwplnRnW70Qjz5sGaNZGvDUc8JeWamhpy\ncnLICPIXxYLR0ZlSPA4P+/6+j+Jri/2OT548mS1b1kdfb+jlsMOoqK1l8vgY1/FBSc2h09lMUdpw\nsg0GPm1rixgcxktWhm5TynoLPg05+hCYOZTrDUN1eQuNLCvHJ3OomVKGFoqDQ0mSqpS++nG/Ghoa\nYfj6a3jlFXjooUTvRDldri7Oeu0sbpl7C0eMOCLyDYOBF1+EM86Q3SVREmvdoUeS+PTAgbg1vw7n\n+J1bMpdN+zfR4VBnsW78dyNpE9IwTfNvvOyVGGPOHKalUZ6SwqSUvg2to0Vp5tBozGNJoSwtK8kc\nxsOtDJBcmIzerMe2wxbymsBWNtEaf/pDVtYYGgwB7UZDQ0MJdjssXQr/+78Qp99DA8L1H15PaVYp\nvz7815EvHgxIUkySspdYg8MtnZ1kGwwURzGSLRjhHL9pxjRmF8/ms2p1A7C87WsCmTRpEpWVe2LP\nHAIVHg+T4tUXCG9w2BT2GpdLno5y3rBhvNnURKrJFLHmMF6ZQ4CMORlY1od+XmArm2hbBsVTVp44\ncSLbtm3D4/HEZT2N/kULDjU0fiLccw+MHy8P6xgqvLT5JT7a9RFPnfZU3AwF/c5338lNCufFNllz\n6lSwWKCqKrr74ykpQ3Cnsi8LyhaomrNs+daCfa+d3NP6GicmT57Mrl2tMWcO29rasHg8jNwVdFZB\nVCgxpHhH5w1PTmaO2UyT0Rgyc9jV1YXdbg8q10eL15QSCr3e7OdWjjZzGE9ZOTMzk+zsbGpqauKy\nnkb/ogWHGho/AX74QTagPPaYqpZ7CaWisYLf/Oc3vH7W62SmhBqJPgjxZg11sf341OnguOOizx7G\nc54yRJ5PvKBsAat2Kzel1D5aS9HVRegMfd+nsrKRNDQ4gdj6WFZUVDCxrAzxzTcxreOLt+YwXE2f\n09mMwSAHvUsKC9kuRMjgsKmpiby8vLj+8RPJlBIoKw+GzCFo0vJQYhCPHtDQ0FCCywWXXgr33gtF\nRYneTWQkSeLtbW+z7INl/Hnhnzm08NBEb0kZVivs2ycXdX4dn974Xmn50kuh4/sO6p5SlqXxSBKF\n1lbmPzwu8sUKkCQpYiPp2cWzqWqroqGzgWHpw8Ku52hy0PRmE3O2zwl63uXaQ3GxkR07qjj00Oj/\n/SsqKpg8Y4Y8CshuhzhI7Hp9CkIYcbs7QrbZ8WYOARbn5XGZwUBda7B2vPGXlAFMM0x0bu7EY/eg\nS+4bfPu6lV2udlyudpKT1f9wMBiy8Xi6cLtt6PWxt0vyOpZ/PpTccgcpWnCooTFEkSR47z1YvhwK\nCuQAY7BT1VbFsg+Wsb15O88ufnZwNLp2OqG6Gurq5OAv1MeuLhg+HH75Sxgdn6YMCxbArbfK/5Z7\nH9mLx+Yh4/DI8uP3HR3MfkfHgd9WU/CP8TFnperr6zEYDGGDGIPOwNGjjmbN7jWcPfXssOvVPVlH\n3uI8kvKCt06xWisZOzaXioqKmILD8vJyJk2bJjf03LwZZs2Kei1fvKaUYMGhJHlwudowGOSsbbpe\nz6H5+WzasSPoWv0RHBpMBlLHptLxQwcZs/t+v/i6leVG4+MQUbSHEkKQnCybUlJTY/+enzx5Mhs3\nbox5HY3+RwsONTSGGJIk919evlzOGv7xj7JxdjDLyQ63gwe+fID7v7qf64+4ntfPep3VPRXxAAAg\nAElEQVRkQ3yMFDHx1VfyhBOPR067Dh/e+3HqVP/Ps7Pj/iaXlclT4DZvluj4TwuHrT6MtPFpEe+7\n4LvvuOacMbSfsZc9D+yh5Eb1jbh9UTqbeGGZPEovXHDocXnY99g+pr41NeQ1Nlsl48eXxCwxVlRU\ncMUVV8hB4TffxDU4lOsOS/uckwNDMzqfmd/HjRjB39etC7qWV1aON15TSvDgsFdWjmlEIb3ScjyC\nw0mTJvHcc8/FvI5G/6MFhxoaQwRJgnfekYNCtxvuuAMWL4659K3f+bTqU65eeTVl2WVsuHwDo7MH\nQStUpxPuugv+7//kYs0zzkjYVhYsgC9f6OSwJB2p4yJLdz90dLDdZmPxoQW438vm2yO/JXVMKvln\nRJ+dimRG6dnr6AU8vP7hsNc0v9NM8shkzDNCTz6xWrcxefJU1qyJre9dz7737oWNG+HKK2Naz0u4\nXoe+9YZeDi8s5EGLhR87O5kS0N6oPzKHIJtSDqw9QPE1fd3gXkOKJElYrdtiMv4kJcW/16EkSUPH\ngHaQMsh/rWhoaEgSvPUWzJwJd94Jt98uG2bPPHNwB4YNnQ1c9NZFXPDmBdx93N28d+57gyMwrKiA\nI4+U38RNm/o1MHQoaNuxYAE0vNtCzqIcRb8wH62t5aqiIow6HSkjU5j61lQqr6jE8k34ebvhUJo5\nnJI/hU5HJ7tbd4e8JlT7Gl+s1kqmTTs8pqbIVquVuro6ysrKejOHcSJcr0PfekMv2ZmZ5DudPL9/\nf5/r+ys4DGdK0emMCGHA47Fjs8WWOZRl5fiYUvLz89Hr9ewP8j5pDC4G8a8WDY2DG49HrrOfMUPO\nFt5xB3z7rRzLDOag0CN5eGLjE0x9bCp5qXmU/6qcMyedmfhMgccDjzwit6C5/HJZmy8s7LfHtTid\nlH39Ne81he+Zd9xxkLW9hczjcxSt+VpjI1f4OI8yZmUw/h/j2Xz6Zrr2dkW110hmFC9CCI4rOy7k\ntJSOLR1YK63k/yJ8MGSzVTJ16rHs3LkTl8sV1Z63bdvG2LFjMRgMcMghsHWrXBcaB8IFh94eh75k\nZGSQ3tXFiw0NuANczv0lK6dNTsNR68DZ6gx6XjalWLplZfXTUbwkJRVht8cncwjaGL2hwiD+FaOh\ncfCyapUcFK5YIQeG334Lp58+uOsKATbt38TPnvoZz37/LKuWrOKBEx/AnBxaXhwwamth0SJ5sslX\nX8nyYz+/mTft3ElRcjK37d6NJ0xblOwUF+MlCzvMkdvSPF1Xxym5uRQk+Rs98s/IZ8SvR7D5lM24\nOtQHW0plZejudxgiOKx9tJaiK4vQGUP/anG5LLhcbWRljaG4uJidO3eq3m+fPaemyk0+f/ghqrUC\nCdfrMFjm0Gw24+joIN9o5JO2Nr9z/ZU51Bl0mGaYsGwMnjH21h3KbWyid7XHc0oKaGP0hgpacKih\nMcj4z3/g/PPloPCbb+C00wZ/UAjw2o+vccLzJ3DZjMv4fOnnHFJwSKK3JPOvf8mR9ty58PnnMC4+\n7V/Csbq1lY9aW/n40EMxCMGbYbKHbavbsIzIYPWX+rBruiWJx/btY1lxcMl25E0jMc8yU3FuBZI7\ndDAaSGtrK52dnRSHWDeQhaMXsnr36j59AJ2tThpfbWT4FeF7F/q6Z2Ppe9dHCl+wQLbvxwG1NYcZ\nGRlYLBYuLCjoIy33V3AIsiklVDNsvd6MzbYDnS4ZozFyVjoU8ZSVQet1OFTQgkMNjUHEl1/K5tk3\n3xwamUIvH+74kGs/uJZVS1Zx2YzL0EXRNiPutLXBBRfIRZrvvSd/NPS/B8/mdnNlZSV/GzeODIOB\nu8rKuGP37j5yo5fmD5rJPD4nYjPs95ubyTcamRNi0oYQgvGPjcdtdbPzJuXZuIqKCiZOnKhY9h+V\nNQpzkpktDVv8ju//535yfp5DcmF4F7qvezYWibGPFH7OOfDyy3KRboyorTn0zlY+d9gw3m5uxup2\n95zrL1kZwHy4OeQYPb3ejMXyTcxTaDRZ+eBkEPwE19DQAFkRO+MMeOEF+NnPEr0b5Xy15ysuePMC\n/v3//j14soWrV8t1aFlZsvFk9uwBe/Rd1dVMN5k4tTsgWJSTg0mv57WGhj7XSpJEywctTL8qh40b\n5T7boXiktjZk1tCLLknHlNen0Px+M7WP1yrarxpJ2cuCsgWs2tU7LUVyS9T+LbIRBfyndcQiMfbZ\n96xZcmAYB2OK2prD5O7m29nAkRkZfpnifs8crm8POs1FrzdhsXwT8/xqWVaOX+ZQk5WHBlpwqKEx\nCNi5Uy6Je/hhOPHERO9GOVsatrD41cU8t/g5jio5KtHbkQ0JN9wAS5bAP/4Bjz4KaZH7BsaL7zs6\neKqujofHju05JoRgRVkZd1ZV4QpwL1u3WkGCvJlpHHaYrHoHY2tnJz90dHDWsPCTSQCM2UamvTeN\nquVVtHzYEvF6pU5lXxaM9q87bP6gGWOOUVED78DMYTQSo9PpZNeuXYwf7xP4CAHnnitnD2NEbc0h\n9GYPfaVlt9tNa2srubl9r48HySPloNReY+9zTq8309HxbcyZQ6MxF7e7E7c7PmafESNG0NHRQWuI\niTIagwMtONTQSDD79sEJJ8jNrM8OP3hiULGrdRcnvXASfz3xrywatyjR25Hb0syaBTU18P33cNJJ\nA/p4tyRx2bZt3Dt6NIUBY9wWZmeTn5TEywHZw5YPelvYLFwo15sG49HaWi4vKiJZoU09bWwaU16b\nQsWFFXT+2Bn2WqVOZV+OLT2WtTVrcbplp2zto3LWUIk07Zs5nDhxItu2bcOjoOWPLzt27GDkyJE9\nGbsezj0XXn1VdqbHgNGYp6rmEGRTisVi4fS8PNZbLNTZ7bS2tpKRkSE7qvsBIUTIljYGg5murt0x\nZw6FECQlFeJwxKf9jBCCiRMnatnDQY4WHGpoJJCWFjlTeOmlcevfOyDUWeo4/vnjuXXerZw77dzE\nbsbthj//GY4/Hn7/e9mA0k+ZmnA8vHcvJr2epUHa4wghWFFayvKqKpw+gUvLf+TgEGQT0vPPg83m\nf2+7y8VLDQ1cpXJwdta8LMY8OIbNp2zGUe8IeV00snJ+ej5lWWVs2LcB6zYrHZs6GHZ25Kym3JS5\nN3OYmZlJVlYWe/bsUfX8kHuePBlyckKnYBUS3pDSFDZzmKbXszgvj5cbGvpVUu55bghTil5vAog5\ncwiatHwwok1I0dBIEJ2dcMopcnB4882J3o1yWm2tnPjCiVxy2CVcPfvqxG5m925ZQtbr5QkZo0Yl\nZBtVNhv3VFfz1YwZIbNnx2RnMyolhefq67l0+HDcnW7av2pnyutTANlEPXu2rIouXdp73zP793N8\ndjbFgVkyBRReUIit0saWxVsY9/g4hM5/b53WTur315Nvyafjhw5Va5/BGXz10VfkfJ7D8MuGo0uO\nnGtwOhsQQu8XXHml5VEq/u3CSuFeafnooxWvF4jBkInHY8XjcaLTGf3ORZKVAS4sKOC6HTuYZbP1\ne3BoPtxM9V3VfY7r9WZAkJo6tu9NKklOjt+UFNAcy0MBLTjU0EgAdrs84WTiRLjvvqHjSu50dHLK\ny6ewoGwBt867NXEbkSR45hn43e/gD3+A665LWGdwSZK4qrKSG0aOZFyE+sa7yso4v7ycCwsKsHzS\nhnmWGUNG74/hX/9a/nIuuUT+nvBIEn+rreWpCdE3MS5dXoqzxcnWJVv7nNtq20oxxVReVKl63XmO\neTR0NmAdaaVsRZmie4I1ZPa6VxctUl6aUFFRwYmhinPPOQfmzJELeI3G4NdEQAiBwZCNy9VCUlKB\n37lghhTwDw7nZ2XR4nLxzZ49/eZU9mKeZcbyrQWPy4PO0Pv/gF5vJjm5BL0+8kjGSHjnK8eLSZMm\n8dlnn8VtPY34owWHGhoDjNstt6tJS5M9E0MlMHS4HfzytV8yLmccD5z4QOImnjQ2yhr8zp2yK3na\ntJiWczpb0OvT0enUZ+YAXmpooM7h4MaRI/ucs9vrSEoq7HmvjsrMZGJaGk/X1XHcB53knOTff+6E\nE+QA8fPP5UEuH7W2kqbXc1RmZtC1k5PD9xSE7hY3jwaXFre9sI2Z781k9ivq3dwdjg4K7y+k/sZ6\nkpOUvXe+9YZeJk+ezDcqHcbl5eX89re/DX6yrAzGjpU7yasIOAPxOpZ9g0O3W7aT63R9/wjwDQ51\nQnBBQQEffPwxo/o5c2jMMpI8Ihnrj1ZMh5p6juv15pjrDb3EO3M4efJkLXM4yNFqDjU0BhBJgl/9\nCpqbZeVrANruxQW3x82SN5eQpE/iydOeTFwfw5Ur4dBDZQ12/fqYA0OArVuXUl19T1T3Njkc3LBj\nB/83YQLGgMylJHnYuHE6LS3+LpO7ysq4p7qa5g966w296HRw7bXylD+AR/bu5drivkYPq3UHX39d\ngsMRfjRfJKIxo3gxJZmYPnw6n9cor+9rb9+AyeT/b6ZWYvR4PFRWVjJx4sTQF517LrzyiuI1gxGs\n7tBrRgn2h5HXkOLlwoICvq6pIbefM4cQfM5yRsYcCgrOj8v68Z6SUlZWRn19PZ2d4c1SGolDCw41\nNAaQW2+V2+699RakpCR6N8qQJIlr37+W+s56Xv3lqxh0CYhoOzvhqqvkyOmVV2QDShQ1eIG43TZa\nWz+iufndqO6/YedOzhk2LGhjaotlA05nfZ+152RkcExLGh2dTtKnpfe57+KL5aTX2l021lksnBek\nfU1z83tIkqtP4KmWaMwovoQbpReIJEm0tKwkJ+dkv+Nec0KwXn3BqK6uJjc3F7M5zFjGs86Cd97p\n6+5RgZw59A++Q9Ubgn/mEGBSejqp7e20mUxBr48nwUwpGRlzKCy8KC7rx1tWNhgMjBs3jm3btsVt\nTY34ogWHGhoDxAMPyEHh++9DuN9rg43b19zOhn0bePuct0kxJCCitdvlcTGtrXK7mhiMBoG0tX2C\nyXQYXV01dHXtVXXvf1ta+LStjbvLgtfbNTe/R27uqd2BnH/g86tyM5/PlrAFabmSkSE7l29cW8vS\nwkJS9X3H6vmuHQvR9Dj0ZeHohX7NsMPR0fE9QiT3qTnMz89Hp9NRX1+vaB1Fex4+XB6Z+P77itYM\nRrBG2KHqDaFvcAgw0m5nywDIA+EmpcSDeMvKoJlSBjtacKih0c90dcGyZfDYY/Df/8IAqExxod3e\nzg0f3sDr5a/zwfkfkJEcucFx3PEWaGZmwksvyR/jSHPze+TlLSYnZxEtLSsV39fpdnNVZSWPjx+P\nKcQv/+bm9xg58iaEMNLZudnvXPonndiOSefv+4JnYy75lYsNOftZmtd34ojL1Y7Fsp6xYx+itfVD\nPB6n4n374nA4qKqqYlwMs6YPLz6cHS07qO+IHNjJAe0pQSVZNSPVFEvhMTbEDtYIW03mEMBksfCd\nXk+HyxX1PpRg+v/tnXd8VFX6/98nk0x6SCYFElogJCQQQALSUVBQaStY1wKigLs2dldXRVe/tp91\nFd21K1aWXSuIghRFAakioSShhNBDQkJ6LzNzfn+cSUjPTDIp6nm/Xvd1M7ece+bezL2f+zzneZ7B\nPpQeLcVc1DbHcbblEHQZvc6OFocaTRty8CCMHAmZmaqqV48eHd2j5qm0VPLaz68R9WoU2aXZbJy7\nkWDvth1U3yBSquiMc+dg2TKVrsapzUuys78hMHA6gYHTycqy37X8+IkTjPLzY0oj+RTLyk5TVnYK\nP7/RBAZOr+VatpRayN+Sz03XR/DCqVMNCoddXTIJTvdnx1f1LbU5Oevo0mUcnp4ReHr2Iz+/ZTn9\nUlJS6N27d/1E0g7gZnDjxkE38trPrzW7rRLiMxpc50jeO7td4VddBd99BwX1cwDaQ1NjDhvC19e3\nnjjMz84mrkePWuX02gIXows+g30o2u1YOiJ7cXMLwmIpwGptPF+mo+hch50bLQ41mjZASliyRHlA\n77lHDZPz9+/oXjWNlJLlB5cz8I2BfH34a9bdvI4PZ35IN5/6SZ3bhSeegO3bYeXKNhmgWVycgBBu\neHlFYzJdTn7+pupo1KaILyzk47NneaVf4/njsrNXYzJNwcXF1SYOz7t/8zfn4zPEhyE9/LnY35/X\nztSugSyl5NXUVBb27M6//63+l2q3rSxwQL22HaG1LuUq7h9zP2/+8iYF5Y2LsIqKDEpKDtGly/gG\n1zviYrS73yaT+gGuXGlXu3VpyK3cnOWwZkAKQFZWFtdHRrLUTpd5a/Ad4dtgpRRnIIQLRmNXp1VJ\nAe1W7uxocajROJm8PJVq7dVXYfNmmD+/86er2X56O+M+GMcTm57gtamvsX72eoZ0G9JxHXr9dWUt\nXLNGDcJrA2q6Od3cAvDxGUZu7g9N7lNisTD/8GFeiIggxGhstm0Af/+LKC4+QEWFKp2XvSa7OoXN\n4+HhLE5NpaCG9XBjXh4SWHSZP/n5Sh9XIaWFnJxvCQxUQR2tEYetiVSuSYQpgskRk3n7l7cb3SY7\new0m02RcXBo+Z/a6GKWUjvW7Fa7l1o45lFJy7tw5boiK4pfCQs6U169/7Ewaq5TiLJztWo6KiuLE\niRNUVDjPGqlxHlocajROZPt2GDoUQkJg505wwrO3TUnJSeGaz67hui+uY0HcAuJvj+eyiMs6tlOf\nfgrPPAPr1kHXrs1v30JqCjhoWmjFFxZyZ3IyPbZvZ4iPD3Oa6JfFUkJ+/mZMJpWk2cXFnYCASeTk\nrAHO11MGFdF6WUAA/0o9Hwzz6pkz3N29OwaDqJXWBqCg4GeMxlA8PFQ1ER+foVgshZSUOJ7EurWR\nyjVZNHYRL+94mTJzWYPr657rutjrYjx79ixGo9H+xNJ/+ANs3QotcOu2dsxhUVERBoOBQF9frgoK\n4r9tbD1s66AUo9G5QSnu7u706tWLlJQUp7WpcR5aHGo0TsBiUXpm5kx45RX1QO/MqWqySrJYuGYh\no5aMIi40jsN3H2buBXMxuDh3XJ/DfPed8sOvWQN9+7bZYSoqzlFcfAB///ORz0FBtSOL881m3jxz\nhmG//MJViYmEGo3sGz6cD6Kjm0wAnpv7A76+w3BzC6heVhVZXHqsFHOeGZ8Lzqc3eSw8nH+lppJX\nWcnJsjI25eUx2yY+b70V1q6FqriVuiJLCBebqLU/mKYKZ7mVAYZ0G8LQ0KF8tPejeuus1nJyc7/H\nZGo8IXWPHj0oLCwkLy+vyeM43GcfH5UI+4sv7N/HhqNjDuuKw6ysrGoRO7tbtzZ3LXtGeGIptlCe\n3jYWSnd359ZXBu1a7sxocajRtJK0NJg8WUUi796tsq50VqzSyovbXiT6tWis0sqBuw7w8PiH8XJr\nuuxbu7BrF9x4I3z5JQwe3KaHysn5loCASbWqonh6RmEweLIl/SfmHjxI7+3b+SEvj2f79uXYqFE8\nGh5OTzsUf0NWssDAKeTkfEf22rOYrjDVqnEc6eXFjKAgFqem8uaZM8zp1q06ArpLF3VK3nqrqu1v\nCAycUaft6Q7nabRYLM0nknaQh8Y9xAvbXsBsrR1gk5e3GW/vGIzG+vkaqxBCEB0d3az1sEWu8Ba6\nlh0dc1g3Cfa5c+eq6yqP79KFfLOZfUVtEzAC6hz6jfBrM+uhcis7P52NDkrpnGhxqNG0glWrVDq1\niRNhw4bOHY1cWF7IVZ9excrDK9k2bxuvTX2NEO/GH9jtyqFDygX43nuqblwbU1fAnauoYHFqKqsq\nh7Pi2DIG+fiQPHIknw8cyGUmEy52DhpVEdD1xaHR2BUvr2gyDnxfr2QewP/17q1qKJ89y11hYbXW\n3X23KrNYUHCSiop0/PxG1FofEHCpLeF201a3mpw8eZLg4GB8nJigeVyvcYT5hvF50ue1llflZGwO\ne1zLBw4ccNwVfsUVkJAAqY7lsVRu5ZxaOSodGXNYUxy6CMHsrl35+KzzAjoaoi2DUpztVgYdsdyZ\n0eJQo2kBaWkwbx7cdZfyWD36qNMzrTiV47nHGfP+GIK9gtkwZwNRgfbVXE3/MJ20d5zrSqpHaqp6\ngD/7rBKIbYzVWkFOzncEmK5gfU4O1yYlEblzJwlFRUzu/Udu8tzLfT17Nhlw0hhFRXsxGDzr1Q8G\nMPlPo8i4HtNl9cVhH09PrgkOZoSvL/28altxY2JUlcANG1ZjMk1FiNr/aAaDN126jCc3d73d/XSm\nS7kmD417iOe2PlctqGqmC2oOe1yMLbIcurur8R6ffebQbi4uRlxcPLBYzoutpiyHPj4+FBUVYbUl\nNq/pVgblWv5vZibmBhKfO4u2DErRbuXfF1ocajQOUFQEjz2mHtZBQbBvH4wb19G9appNJzYx+r3R\nLIhbwDsz3sFosE/0WCutHH/kOMf/cZyslW2Upy0nBy6/XKnsuXPb5hh1SDm3gVxDH6Ljj7Po2DEu\n8ffnxKhRfBgTw7juUygpOUxFRcvGhzWV6Nn9xMUwdjuupoaTZr8aGcknjVjFFi6EjIzGgzocjVp2\nZjBKTab0m4JA8O0RVZmkpOQQUprx9m6+BrY9VqQW97uFruWa4w6ltGA2F+Dq2nBOKoPBgJeXV3W9\n4JqWQ4D+Xl70dHdnQzPjKluD7whfCn8pRFrtK0XoCEZjmNPdytHR0SQnJ2OxWJzarqb1aHGo0diB\n2axce1FRcPQoxMer8r6dPXfhO7vf4bovrmPprKUsHLmwyUCKumStyMKzryeDvh3E4fmHKYx38lim\n4mKYPh2mToX773du23WotFpZce4c0/bv5+1DH3DS/WKWx8YSP3w4d3Tvjr+bG6CsRSbTZWRnt6zs\nWlMu1OI1obh4WykpabierNHFBd9Gqq1cfnkxvXtv4dixhiPJAwOnk5OzBinte8i2leVQCMGicYt4\ndsuzQNNiuS7NWZFycnIoLS0lrI7b3S4mToTTp+HIEYd2qznusLIyF1fXLvUstzWp6VquKw4B5nTt\nytI2dC0bg424mdwoOdx8vk6H2zY633Lo6+tLUFAQJ06ccGq7mtajxaFG0wRSwurVMGSIMjx8/TX8\n5z/Qu3dH96xpzFYzC9csZPH2xfx0609MjpjscBtnXj1D93u643ehH1FvR5F4ZSLlZ5wUCbljB1x2\nmVLbzz/vnDYb4EhJCYuOHqXXjh0sTk3luuBgrnGPZ27UXOIaKXDdkgAPUImeS0uT6dKlYVNy7tpc\nAnymtCgvYUHB91RWXsirrzZcPtDDoxdGYxgFBTvtas9ZOQ4b4poB13C26Cw/nfzJbpcyQJ8+fTh7\n9iwlJQ0Lm4MHDxLdTKR4o7i6wrXXqjRJDlBTHDY13rCKmkEpdd3KAH8MCWFVdjaFbVhOz29k2wSl\nGI3BmM25LS7X2Bg6KKVzosWhRtMI8fEwaRL8/e/w3HPwww8wfHhH96p5cktzmbJsCsnZyeyYv8Pu\n8YU1KdxbSOnxUoJmqodb8FXBdL+7OwkzElpXv3XbNuVGvv56VTN5yRJwcf5t6PPMTCbu3cvYPXsw\nS8kPQ4bw09ChXOOXD7IcH5/GE3ybTFPIzd2A1eqYEM7O/paAgIYTPZedLqMyo5Ju/We1SBxmZ68i\nOnoG334LjRme7BW1DieSdhBXF1ceGPsAL299gqKivfj7X2Lffq6uREZGcvhww5bVVrvC//hH9YZX\nt+RME9TMddjUeMMqmrMcBhmNXOTvz/I2LKfXVkEpQhhwcwtp8ZCLxtBBKZ0TLQ41mjqcPg1z5sC0\nacrYkJAAM2Z0/ionAIeyDjFyyUgGhQxi1Y2r8Pdomd/7zGtn6H5Hd1zczt8iej7QE5+hPhy86SDS\n4uCYpq1blaXwhhvg6quVe+/Pf1YWHSfzxpkzPHz8OHeGhZE6ejQv9utHjLc3YJ+b02gMxtt7IHl5\nmxw6blNWspw1OQRcFkCA6VKKiuKprMy1u10prWRnr6ZHj+lcfz283UghEnvHHaalpeHh4UFgI3Wh\nncEtQ27BUL4b4RmHwWB/ws+mXMutdoWPHq0GDSck2L2Lm1tQDbdy4zkOq2hOHALMbmPXst/ItgtK\naQvXsg5K6ZxocajRoIwJe/YoK+EFFyi3cXJym+mXNmHNkTVc9MFFLBq3iMWXL8bVpWUdr8yuJOvL\nLEIXhNZaLoQg6s0oLIUWjj5w1L7GfvpJmV9vvlkp7SNH4PbboQWRwPawLieHJ0+cYO3gwVwbEoKx\njlWyuUodVTga4KESPW9oNNFzztocTFeYMBg88fe/mJyctXa3XVS0B4PBDy+vftx9txKHDVUc8/Mb\nYXNtn2iyvba0Glbh7urOHyPC2ZBe7NB+TbkYW91vF5fz1kM7qRmQ0hLLYUOVXGYEBrKnqIjUsoar\nybQWn6E+lBwowVLm/CAPd3fnp7PRbuXOiRaHmt8tVqsqd/f3v0NEBFxzjXp+7NsHTz0FjQxJ63RI\nKVm8fTHzvp7HiutXcNvQ21rVXvp76QT+IRBjSH0B52J0YeAXA8lelU3a201YEDZvhksvhVtuUdbC\n5GRYsKDNRCFAYlERsw8e5IuBA4nw9Ky3vrIyl6KieLvcnKqiyTe1ctw1RV7eJry9YzEa61uKrBVW\ncn/IxXS5qUbb9gvPrKzzFsnYWJXapqGCH0IYMJmmkpPTdLWUtopUronVaiZEnOC/R4+SkmN/ebSm\nXIxO6fcNN8Ann9jtWq4dkJKFm1vTZftqisOsrKwGLYceBgNXBwezLDPTwc7bh8HTgFe0F0V7nJ9w\n29n1leH8Nbf3t6ZpH7Q41PyuMJvhxx9VYuGePWH+fPDyguXLISUFXnihcyeyronZauazpM8Y/d5o\nlu5fyvZ52xnba2yr2pQWyZk3ztD97u6NbuNmcmPQ6kEcf+w4Od/lnF9htaqTO3Giqvt2881w+LBK\nCGmLBm4rMioqmJGYyMv9+jGukRDynJx1+PtfjMFQXzjWxds7FimtlJTY5+5qyiJZsL0Ar0ivarEd\nGDiNnJy1WK32jd2s2/Y999Sut1wTeyyebRWpXJOCgq14evbl+iF388LWF+zer89oIR4AACAASURB\nVDEXY1FREZmZmYSHh7euY0OGqLyHO+0L3Kk55tCRgJSKigqKi4vxb+R/sSohdlsJorYLSgl1uuUw\nMDAQd3d30tLaOJ+qxiG0ONT85qmoUKV658+H0FBlKQwLUxVNkpLgySeVK/nXMKYQIL8sn5e2vUTE\nvyN47efXWDRuEb8s+IXe/q0Poc76JgtjNyN+F/oB8MixYzx78mS97bz6uDPwBW8OXr2H4tmPqqom\nXboo1X3LLariya23trkoBCi1WLgyIYE5Xbtyk60mcUM4EjkrhLDbtdxYVZTq467JrlUVxd29Ox4e\nvSko2N5s2+XlaZSVHaNLl/Oif8YMSE9X1QbrYjJdRn7+Fszmxq1G7eFWrjofC0cu5IsDX5BWaN+D\nPyoqiuPHj1NZWTsi9vDhw0RGRmJobaZ5IRzKeagshyp4xBG3clZWFiaTCZdGgq3GdulCqdXKnjYq\np9dWQSlt4VYG7VrujGhxqPlNYrUqz+a8edCtGzz9NAwYoB6ou3fDww+DE8vKtgvHc4/zt7V/o8+/\n+hB/Np4vr/uSzbduZmb0TAwuzinPcubVM/S4R5lOXz9zhi+zsngnLY2Pf/kFPvoI/vIXlfXb3x//\nJ68hImYjCd+OpWLhY3DypFLbc+e2iygEsErJrYcO0dfTk8ebsCpZrWZyctbaLQ7B/nGHJSUHkNKC\nt3dsg+tz1uZgmlK7Koq9kcXZ2d9iMl2Oi8v582kwqJzhDVkPXV398PUdSW7u94222R5u5ap8j0Fe\nQcwZMofF2xfbtZ+7uzu9evUiJaW2K9qpfb7hBlUtxY7Ey3XHHNobkNKYS7kKFyG4uWtXlmY4N/K3\nuh9tFJTSFm5l0BHLnREtDjW/KVJSVAWTiAi4804lABMSYMsWuPdeaK1XqiPYfno7135+LRe+eyFG\ng5F9f97HsquWMTzMuXl1ig8UU3KghOBrg1mbnc3/S0lh9VtvsWrePP6elsbmvXuVz/3JJ1VId0oK\n3XY+Rdc7+5P4sgmLV8M5+NqSx06c4FR5Oe/3799kBHJBwXY8PHrj7t64u7wu/v4TKSraVy0OGqOp\nCOjytHLKT5XjO6L2AFZ7hWdjFsl582D9evjww/r7NNV2dnY2ZWVlhIaGNrjeGZSUpGA25+HrGwfA\nfaPv4/0975NTmtPMnoqGXMtOdYVHRSnXwcaNzW5ae8yh/ZbDxiKVazK7a1f+l5HRJuX0vPp7UZlZ\nSWW2c3MStqXlUEcsdy60ONT86snLU9VLxo5VU36+GkOYkKAKb3S3Xw90GqrGE45aMorZK2ZzUa+L\nOPHXEzw/+Xl6dunZJsc889oZQm8P5cD+eObs3MmX//d/9B00iIHbtvGfceO47pprSLnrLrjkklql\nYcKfCMe9pzuHbz3croPKPz57lmUZGXwVG4tHM+5Ge6OUa2IweODvfwnZ2WvsaLvhqig5a3MImByA\ni2vtW62v73AqK3MoLW086ttiKSMv7wdMpivqrTOZlLZ54gkVPFXztAcFzSAnZzVS1hcdVS7lFiWS\ntpOcnNWYTNMQQn3nnl16MjN6Jq/9/Jpd+zfkYnS6K/yGG2DxYihvOpdlS5JgV4nDhiKVaxLp5UW4\nhwff5dqf1shehEHgO9z5ruW2shxqt3Ln41eSpEOjqY3ZDOvWwccfq/nkyfDQQyq/cjt5NO0iqySL\nrae2suXUFvZm7KW0spRKayWVlkoqLBVUWm3zGp8rLZWUW8oZ1WMUi8YtYkbUDKe5jRvDnG8m8z9p\n9L5kKdNjr+CVkhLGrF0Ltqjfy4DHw8OZnpDA9rg4AmqcZOEiiP4wmr0T95L8p2R8L7QvzFsYBMHX\nBOPq5/htaHNeHn8/epSNF1xAiB0R0CqJ9AcOH6fKCtet280AWIotZH6eiaxUaszikkNh+D5Kd0eR\nJus/NM9+dJbQefWtdEK4EBg4zZa/cGGDx87L+xEfnyGNCpLoaBVtP3WqMuS+8YZKu+TpGYGrqz+F\nhfH4+dW2Lh84cKBdXMphYXfVWvbg2AcZ/8F47ht9H95G7yb3HzBgAOvWrau1zOn9vuMOdfIuvhi+\n/LLRN0iDwRcpK7Bay+22HBYWFjbrVq5iTrduvJeezhUmk9MFu99IPwp2FBA4xXn5LN3cQjCbs7Fa\nzbi0MFVWQwwYMEBbDjsZWhxqfjVkZsKmTSogdvly6NtXJat+6y0ICOjo3qnAhJScFLaeVmJwy6kt\npBelM7rHaMb1Gse9o+7F190XNxc33AxuGA1G3Fxsc4Nbrb+NBiNGQ9ulfanF7t2k3/I1fhYvrrn9\nam6NjOTGyMh6m/25e3eSS0u5OimJtYMH18ohaPA0MGjlIE48dcLuKMnS46VkfpLJoNWDaiXbbo6U\n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\n",
"text": [
"<matplotlib.figure.Figure at 0x2b12ad861810>"
]
}
],
"prompt_number": 270
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Top 50 $\\chi^2$ ngrams by length"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"dem_dict = c_plds.collectAsMap()\n",
"rep_dict = c_plrs.collectAsMap()"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 30
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The output format: \n",
"\n",
"label // phrase // democrat_count // republican_count // $\\chi^2$\n",
"\n",
"label is 'D' if democrat_count > republican_count"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"with open('/cluster/home/roskarr/work/ngram/top_chisq.txt', 'w') as outfile : \n",
" for n in range(1,9) : \n",
" print '----------------------'\n",
" print 'Highest chi^2 %d-grams'%n\n",
" print '----------------------'\n",
" outfile.write('----------------------\\nHighest chi^2 %d-grams\\n----------------------\\n')\n",
" for (phrase, chisq) in chi_sq.filter(lambda (ngram, _): len(ngram.split()) == n)\\\n",
" .sortBy(lambda (ngram,chisq): chisq, False)\\\n",
" .take(50) :\n",
"\n",
" d_count = dem_dict.get(phrase, 0)\n",
" r_count = rep_dict.get(phrase, 0)\n",
" label = 'D' if d_count > r_count else 'R'\n",
" print '%s %-80s %8d %8d %1.3e'%(label, phrase, d_count, r_count, chisq)\n",
" outfile.write('%s %-80s %8d %8d %1.3e'%(label, phrase, d_count, r_count, chisq))"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"----------------------\n",
"Highest chi^2 1-grams\n",
"----------------------\n",
"D california 7595 5636 4.035e-05"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\n",
"D belmont 972 121 3.789e-05\n",
"R illinoi 1543 4318 3.202e-05\n",
"D cal 4549 3111 3.085e-05\n",
"D bia 7648 6174 3.004e-05\n",
"D stb 788 132 2.740e-05\n",
"D hayn 658 83 2.554e-05\n",
"D lin 639 89 2.395e-05\n",
"R indiana 580 2091 2.314e-05\n",
"D gall 554 59 2.264e-05\n",
"D higg 450 16 2.213e-05\n",
"R chicago 509 1885 2.158e-05\n",
"D compact 809 219 2.122e-05\n",
"D militari 2092 1211 2.107e-05\n",
"R cir 79206 111142 2.076e-05\n",
"R ill 1896 4346 2.034e-05\n",
"D igra 566 92 1.994e-05\n",
"D homestead 658 150 1.943e-05\n",
"R id 62518 70610 1.872e-05\n",
"R mr 14733 23110 1.757e-05\n",
"R bankruptci 8993 14845 1.681e-05\n",
"R bowman 76 720 1.642e-05\n",
"D navajo 492 96 1.588e-05\n",
"D marriag 1157 572 1.552e-05\n",
"D worrel 284 0 1.531e-05\n",
"D soto 475 97 1.496e-05\n",
"D br 1997 1317 1.491e-05\n",
"D wilder 614 188 1.457e-05\n",
"D rptr 1614 984 1.455e-05\n",
"R class 8574 13981 1.450e-05\n",
"D persecut 4503 3823 1.429e-05\n",
"D op 1928 1285 1.401e-05\n",
"D callahan 389 62 1.382e-05\n",
"D bridgeston 369 53 1.367e-05\n",
"R ander 101 696 1.360e-05\n",
"R plan 17088 25762 1.329e-05\n",
"D guez 291 19 1.325e-05\n",
"D dori 362 54 1.322e-05\n",
"D hagu 541 163 1.302e-05\n",
"R diesel 37 504 1.298e-05\n",
"D rivera 1554 980 1.296e-05\n",
"R tile 16 434 1.278e-05\n",
"D monro 577 193 1.263e-05\n",
"R barnett 178 844 1.257e-05\n",
"D moussaoui 602 212 1.251e-05\n",
"R unit 53331 74438 1.250e-05\n",
"R debt 2121 4219 1.244e-05\n",
"R sbc 6 388 1.234e-05\n",
"D tribe 3663 3078 1.217e-05\n",
"D bolano 309 38 1.209e-05\n",
"----------------------\n",
"Highest chi^2 2-grams\n",
"----------------------\n",
"R unit state 47417 67584 1.282e-04"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\n",
"D district columbia 889 373 8.625e-05\n",
"R ill dec 278 1105 8.358e-05\n",
"D cal rptr 1604 981 8.088e-05\n",
"R st paul 117 673 7.069e-05\n",
"D fed cir 397 88 6.871e-05\n",
"D tri state 268 29 6.306e-05\n",
"D hagu convent 407 107 6.277e-05\n",
"R coast guard 94 568 6.169e-05\n",
"R ill app 134 657 6.098e-05\n",
"D law school 297 50 5.948e-05\n",
"R virgin island 292 957 5.656e-05\n",
"D phase ii 322 72 5.543e-05\n",
"D quotat mark 3148 2694 5.233e-05\n",
"R app ill 98 511 4.989e-05\n",
"R bankruptci court 4019 6625 4.921e-05\n",
"D rec vol 193 16 4.856e-05\n",
"R lead plaintiff 26 319 4.784e-05\n",
"D rail line 186 14 4.776e-05\n",
"D plaintiff appel 284 69 4.632e-05\n",
"R morgan stanley 8 256 4.608e-05\n",
"R mr jackson 5 242 4.523e-05\n",
"D grand canyon 157 5 4.518e-05\n",
"D wilder act 144 0 4.502e-05\n",
"D defens counsel 2662 2272 4.481e-05\n",
"D aplt app 472 203 4.430e-05\n",
"D puerto rico 1182 813 4.407e-05\n",
"D iii game 201 28 4.353e-05\n",
"D joint represent 180 18 4.329e-05\n",
"R southwestern bell 23 285 4.287e-05\n",
"D titl ii 643 346 4.226e-05\n",
"D buy sell 190 25 4.201e-05\n",
"R district court 110145 144430 4.191e-05\n",
"D substant consolid 144 4 4.188e-05\n",
"R ernst young 42 330 4.164e-05\n",
"D nation guard 180 21 4.141e-05\n",
"D intern quotat 3242 2922 4.108e-05\n",
"D sexual batteri 136 3 4.015e-05\n",
"R district judg 1106 2185 3.966e-05\n",
"D electron communic 337 122 3.897e-05\n",
"D sale quota 141 7 3.872e-05\n",
"D state engin 170 21 3.840e-05\n",
"D park servic 399 169 3.823e-05\n",
"D st luke 178 26 3.785e-05\n",
"D elig asylum 360 142 3.774e-05\n",
"D mark omit 2143 1812 3.770e-05\n",
"R right action 316 862 3.736e-05\n",
"D indian tribe 586 321 3.724e-05\n",
"D santa maria 143 10 3.723e-05\n",
"D drug point 158 19 3.601e-05\n",
"----------------------\n",
"Highest chi^2 3-grams\n",
"----------------------\n",
"D intern quotat mark 2651 2077 4.168e-04"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\n",
"R app ill dec 97 510 3.386e-04\n",
"R ill app ill 97 504 3.315e-04\n",
"D class iii game 197 24 2.952e-04\n",
"D quotat mark omit 2137 1755 2.762e-04\n",
"D court feder claim 226 51 2.550e-04\n",
"R privat right action 195 613 2.312e-04\n",
"D tangibl employ action 312 122 2.171e-04\n",
"R cir unit state 1235 2276 2.163e-04\n",
"D cal cal rptr 448 235 2.018e-04\n",
"D california court appeal 329 142 2.016e-04\n",
"D california suprem court 577 358 1.833e-04\n",
"D cal app cal 534 327 1.750e-04\n",
"D net oper loss 130 21 1.750e-04\n",
"D app cal rptr 531 326 1.729e-04\n",
"R ex post facto 348 803 1.630e-04\n",
"R asset purchas agreement 30 204 1.607e-04\n",
"D use pepper spray 104 13 1.545e-04\n",
"R illinoi appel court 15 151 1.427e-04\n",
"D tribal state compact 69 0 1.427e-04\n",
"D rule fed reg 163 52 1.408e-04\n",
"D citat intern quotat 343 190 1.393e-04\n",
"R oklahoma court crimin 21 164 1.390e-04\n",
"D aplt app vol 178 63 1.386e-04\n",
"D um uim coverag 115 24 1.360e-04\n",
"D servic program activ 106 19 1.359e-04\n",
"R risk physic injuri 70 272 1.357e-04\n",
"R georgia suprem court 23 164 1.327e-04\n",
"R summari plan descript 20 155 1.309e-04\n",
"R victim impact evid 34 189 1.307e-04\n",
"D unit state fed 111 24 1.285e-04\n",
"D state habea applic 72 5 1.240e-04\n",
"R alabama suprem court 18 140 1.185e-04\n",
"D diminish mental capac 57 0 1.178e-04\n",
"D averag week wage 111 28 1.162e-04\n",
"R seek death penalti 5 102 1.158e-04\n",
"R yield spread premium 0 85 1.148e-04\n",
"D contract disput act 55 0 1.137e-04\n",
"D court district columbia 62 3 1.129e-04\n",
"R potenti risk physic 50 209 1.129e-04\n",
"R state suprem court 318 680 1.112e-04\n",
"D maximum extent practic 53 0 1.096e-04\n",
"R file proof claim 29 159 1.089e-04\n",
"D nomin fair use 69 8 1.050e-04\n",
"D violat titl ix 82 15 1.041e-04\n",
"R subject matter jurisdict 1591 2527 1.029e-04\n",
"D new jersey suprem 165 71 1.015e-04\n",
"D jersey suprem court 165 71 1.015e-04\n",
"D special use permit 123 42 9.940e-05\n",
"D direct effect unit 48 0 9.924e-05\n",
"----------------------\n",
"Highest chi^2 4-grams\n",
"----------------------\n",
"R ill app ill dec 96 503 1.925e-03"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\n",
"D intern quotat mark omit 1841 1415 1.683e-03\n",
"D cal app cal rptr 531 322 9.654e-04\n",
"D citat intern quotat mark 319 158 8.661e-04\n",
"R oklahoma court crimin appeal 21 164 7.982e-04\n",
"R potenti risk physic injuri 50 208 6.464e-04\n",
"D new jersey suprem court 165 71 5.549e-04\n",
"D direct effect unit state 48 0 5.501e-04\n",
"D unit state fed cir 78 15 5.322e-04\n",
"R present potenti risk physic 34 153 5.129e-04\n",
"R ex post facto claus 155 374 5.001e-04\n",
"D district court district columbia 46 3 4.434e-04\n",
"R ct ed unit state 118 296 4.316e-04\n",
"D cal bus prof code 53 7 4.267e-04\n",
"R court subject matter jurisdict 56 182 4.190e-04\n",
"R intent hinder delay defraud 4 65 4.035e-04\n",
"D texa court crimin appeal 78 24 3.824e-04\n",
"R ineffect assist trial counsel 37 136 3.680e-04\n",
"D crime involv moral turpitud 108 48 3.466e-04\n",
"R risk physic injuri anoth 51 159 3.441e-04\n",
"R southern district new york 63 181 3.430e-04\n",
"D rule feder rule civil 98 42 3.311e-04\n",
"R illeg reenter unit state 0 42 3.234e-04\n",
"R exercis discret independ judgment 7 62 3.191e-04\n",
"D natur res def council 34 3 3.081e-04\n",
"R common law right access 4 52 3.054e-04\n",
"R unit state attorney offic 10 67 3.005e-04\n",
"D establish suprem court law 45 9 3.004e-04\n",
"R state ala crim app 0 39 3.003e-04\n",
"R creat privat right action 22 92 2.870e-04\n",
"R singl common scheme plan 0 37 2.849e-04\n",
"R south carolina suprem court 13 71 2.789e-04\n",
"R impli privat right action 20 86 2.759e-04\n",
"R bona fide purchas valu 4 48 2.754e-04\n",
"D fals claim unit state 24 0 2.750e-04\n",
"D new york court appeal 169 107 2.750e-04\n",
"R district court virgin island 29 104 2.729e-04\n",
"R blue cross blue shield 21 87 2.688e-04\n",
"D final rule fed reg 90 42 2.683e-04\n",
"R prior feloni drug convict 3 44 2.667e-04\n",
"D trial counsel render ineffect 30 3 2.634e-04\n",
"R alabama court crimin appeal 5 48 2.551e-04\n",
"D california anti slapp statut 29 3 2.522e-04\n",
"D motion summari judgment base 29 3 2.522e-04\n",
"D possess intent distribut distribut 31 4 2.516e-04\n",
"R violat ex post facto 90 208 2.499e-04\n",
"D protect claus fourteenth amend 45 12 2.486e-04\n",
"D equal protect claus fourteenth 45 12 2.486e-04\n",
"D counsel render ineffect assist 38 8 2.463e-04\n",
"R establish prima faci case 508 824 2.443e-04\n",
"----------------------\n",
"Highest chi^2 5-grams\n",
"----------------------\n",
"D citat intern quotat mark omit 279 154 2.745e-03"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\n",
"R present potenti risk physic injuri 34 153 2.176e-03\n",
"D rule feder rule civil procedur 98 42 1.446e-03\n",
"R potenti risk physic injuri anoth 46 147 1.395e-03\n",
"D trial counsel render ineffect assist 30 3 1.138e-03\n",
"D clear establish suprem court law 41 9 1.123e-03\n",
"D equal protect claus fourteenth amend 45 12 1.079e-03\n",
"R ineffect assist trial counsel claim 6 48 1.000e-03\n",
"R violat ex post facto claus 77 182 9.715e-04\n",
"D rais genuin issu materi fact 79 39 9.402e-04\n",
"R court southern district new york 9 52 8.993e-04\n",
"D ct citat intern quotat mark 25 3 8.987e-04\n",
"D court eastern district new york 25 3 8.987e-04\n",
"R motion judgment matter law new 0 27 8.828e-04\n",
"D servic program activ public entiti 26 4 8.528e-04\n",
"D cruel inhuman degrad treatment punish 24 3 8.512e-04\n",
"D appel argu district court er 24 3 8.512e-04\n",
"D district court eastern district new 22 3 7.566e-04\n",
"R district court abus discret admit 0 23 7.519e-04\n",
"D district court did err dismiss 21 3 7.096e-04\n",
"R substanti limit major life activ 187 335 7.052e-04\n",
"D convict crime involv moral turpitud 28 7 7.032e-04\n",
"R district court subject matter jurisdict 34 94 6.986e-04\n",
"R district court entri summari judgment 4 33 6.971e-04\n",
"D minor engag sexual explicit conduct 78 45 6.918e-04\n",
"D contrari clear establish feder law 62 34 6.094e-04\n",
"R clear establish suprem court preced 28 79 6.089e-04\n",
"D servic facil privileg advantag accommod 28 9 5.718e-04\n",
"R intern citat quotat mark omit 20 62 5.591e-04\n",
"R district court grant summari judgment 1315 1414 5.542e-04\n",
"D cir intern quotat mark omit 113 82 5.476e-04\n",
"R district court er deni motion 22 65 5.425e-04\n",
"R vessel subject jurisdict unit state 16 53 5.271e-04\n",
"D id citat intern quotat mark 22 6 5.176e-04\n",
"D intern quotat mark citat omit 301 276 5.135e-04\n",
"D state district court eastern district 41 20 4.966e-04\n",
"D unit state district court eastern 41 20 4.966e-04\n",
"D intern quotat mark alter omit 23 7 4.937e-04\n",
"R district court southern district new 3 23 4.689e-04\n",
"R conduct present potenti risk physic 19 56 4.652e-04\n",
"R deni ct ed unit state 51 110 4.565e-04\n",
"R cert deni ct ed unit 51 110 4.565e-04\n",
"D clear improb weapon connect offens 17 4 4.448e-04\n",
"R contrari clear establish suprem court 6 29 4.369e-04\n",
"D unreason appli clear establish feder 20 6 4.348e-04\n",
"R limit major life activ work 19 54 4.211e-04\n",
"R titl unit state code section 17 50 4.138e-04\n",
"D account race religion nation membership 32 15 4.128e-04\n",
"D cir citat intern quotat mark 25 10 4.021e-04\n",
"R grant summari judgment favor defend 27 67 3.984e-04\n",
"----------------------\n",
"Highest chi^2 6-grams\n",
"----------------------\n",
"R present potenti risk physic injuri anoth 31 115 4.016e-03"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\n",
"D district court eastern district new york 22 3 2.915e-03\n",
"D state district court eastern district new 22 3 2.915e-03\n",
"R motion judgment matter law new trial 0 27 2.858e-03\n",
"D ct citat intern quotat mark omit 19 3 2.381e-03\n",
"D account race religion nation membership particular 32 12 2.248e-03\n",
"D unit state district court eastern district 41 20 2.075e-03\n",
"D unreason appli clear establish feder law 20 6 1.725e-03\n",
"R district court southern district new york 3 23 1.472e-03\n",
"D revers district court grant summari judgment 46 29 1.468e-03\n",
"D pursuant rule feder rule civil procedur 18 6 1.416e-03\n",
"D id citat intern quotat mark omit 18 6 1.416e-03\n",
"R conduct present potenti risk physic injuri 19 56 1.344e-03\n",
"D membership particular social group polit opinion 53 37 1.327e-03\n",
"D tradit notion fair play substanti justic 20 8 1.306e-03\n",
"R substanti limit major life activ work 18 53 1.268e-03\n",
"D good servic facil privileg advantag accommod 21 9 1.263e-03\n",
"D cir citat intern quotat mark omit 22 10 1.226e-03\n",
"R cert deni ct ed unit state 51 110 1.194e-03\n",
"R cir cert deni ct ed unit 29 72 1.186e-03\n",
"D district court grant summari judgment defend 41 27 1.184e-03\n",
"D religion nation membership particular social group 48 34 1.155e-03\n",
"D nation membership particular social group polit 48 34 1.155e-03\n",
"D race religion nation membership particular social 48 34 1.155e-03\n",
"D district court grant summari judgment citi 17 7 1.072e-03\n",
"D conclud district court did abus discret 30 18 1.058e-03\n",
"R district court grant judgment matter law 8 30 1.047e-03\n",
"R ill app ill dec ill app 11 36 1.033e-03\n",
"D ct ed intern quotat mark omit 19 9 9.989e-04\n",
"R attempt use threaten use physic forc 35 79 9.919e-04\n",
"R use attempt use threaten use physic 35 79 9.919e-04\n",
"R district court lack subject matter jurisdict 15 42 9.080e-04\n",
"D commenc proceed adjud case execut remov 17 8 9.017e-04\n",
"D proceed adjud case execut remov order 17 8 9.017e-04\n",
"D breach coven good faith fair deal 18 9 8.733e-04\n",
"R race color religion sex nation origin 4 19 8.614e-04\n",
"D impli coven good faith fair deal 94 87 8.603e-04\n",
"D contrari unreason applic clear establish feder 36 26 8.190e-04\n",
"R district court er grant summari judgment 27 62 8.184e-04\n",
"R impli duti good faith fair deal 6 22 7.439e-04\n",
"R establish prima faci case age discrimin 9 28 7.370e-04\n",
"D lack indicia probabl caus render offici 13 6 7.079e-04\n",
"D district court did abus discret admit 13 6 7.079e-04\n",
"D probabl caus render offici belief exist 13 6 7.079e-04\n",
"D indicia probabl caus render offici belief 13 6 7.079e-04\n",
"D district court grant partial summari judgment 20 12 7.039e-04\n",
"R element use attempt use threaten use 26 58 6.983e-04\n",
"D fair integr public reput judici proceed 104 102 6.918e-04\n",
"R feder law determin suprem court unit 60 111 6.173e-04\n",
"R impair substanti limit major life activ 61 112 5.975e-04\n",
"----------------------\n",
"Highest chi^2 7-grams\n",
"----------------------\n",
"D state district court eastern district new york 22 3 7.597e-03"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\n",
"D unit state district court eastern district new 22 3 7.597e-03\n",
"D account race religion nation membership particular social 32 12 5.982e-03\n",
"R conduct present potenti risk physic injuri anoth 13 49 4.098e-03\n",
"D race religion nation membership particular social group 48 34 3.238e-03\n",
"D nation membership particular social group polit opinion 48 34 3.238e-03\n",
"D religion nation membership particular social group polit 48 34 3.238e-03\n",
"R cir cert deni ct ed unit state 29 72 2.731e-03\n",
"D commenc proceed adjud case execut remov order 17 8 2.412e-03\n",
"D contrari unreason applic clear establish feder law 36 26 2.292e-03\n",
"R use attempt use threaten use physic forc 35 79 2.250e-03\n",
"D indicia probabl caus render offici belief exist 13 6 1.889e-03\n",
"D lack indicia probabl caus render offici belief 13 6 1.889e-03\n",
"R element use attempt use threaten use physic 23 55 1.858e-03\n",
"R establish feder law determin suprem court unit 59 111 1.454e-03\n",
"R feder law determin suprem court unit state 60 111 1.318e-03\n",
"R district court grant summari judgment favor defend 6 19 1.198e-03\n",
"R involv conduct present potenti risk physic injuri 16 36 9.921e-04\n",
"R affect fair integr public reput judici proceed 63 65 9.499e-04\n",
"R applic clear establish feder law determin suprem 55 92 5.077e-04\n",
"R attempt use threaten use physic forc person 29 52 4.886e-04\n",
"R fact light evid present state court proceed 19 36 4.707e-04\n",
"D substanti injuri effect influenc determin juri verdict 16 15 3.993e-04\n",
"R breach impli coven good faith fair deal 37 41 3.166e-04\n",
"R contrari involv unreason applic clear establish feder 29 49 2.892e-04\n",
"R unreason applic clear establish feder law determin 65 102 2.722e-04\n",
"R base unreason determin fact light evid present 29 32 2.560e-04\n",
"R unreason determin fact light evid present state 23 39 2.362e-04\n",
"R use threaten use physic forc person anoth 19 32 1.817e-04\n",
"R motion new trial base newli discov evid 24 27 1.766e-04\n",
"R clear establish feder law determin suprem court 139 203 1.338e-04\n",
"R determin fact light evid present state court 23 36 8.905e-05\n",
"R decis contrari involv unreason applic clear establish 15 22 1.467e-05\n",
"R cal app cal rptr cal ct app 13 17 5.671e-06\n",
"R involv unreason applic clear establish feder law 67 93 2.443e-06\n",
"----------------------\n",
"Highest chi^2 8-grams\n",
"----------------------\n",
"D unit state district court eastern district new york 22 3 1.559e-02"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\n",
"D account race religion nation membership particular social group 32 12 1.263e-02\n",
"D race religion nation membership particular social group polit 48 34 7.343e-03\n",
"D religion nation membership particular social group polit opinion 48 34 7.343e-03\n",
"D lack indicia probabl caus render offici belief exist 13 6 4.000e-03\n",
"R element use attempt use threaten use physic forc 23 55 3.108e-03\n",
"R involv conduct present potenti risk physic injuri anoth 13 36 3.009e-03\n",
"R establish feder law determin suprem court unit state 59 111 2.204e-03\n",
"R clear establish feder law determin suprem court unit 58 104 1.435e-03\n",
"R determin fact light evid present state court proceed 19 36 6.888e-04\n",
"R use attempt use threaten use physic forc person 29 52 6.759e-04\n",
"R applic clear establish feder law determin suprem court 55 92 6.251e-04\n",
"R base unreason determin fact light evid present state 20 22 5.090e-04\n",
"R unreason applic clear establish feder law determin suprem 55 89 3.810e-04\n",
"R contrari involv unreason applic clear establish feder law 29 49 3.567e-04\n",
"R attempt use threaten use physic forc person anoth 19 32 2.202e-04\n",
"R involv unreason applic clear establish feder law determin 32 50 1.064e-04\n",
"R unreason determin fact light evid present state court 23 36 7.832e-05\n",
"R decis contrari involv unreason applic clear establish feder 12 19 5.134e-05\n"
]
}
],
"prompt_number": 31
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"#filtered_chisq = chi_sq.filter(lambda (ngram, chisq): 1e-5 < chisq < 1e-3).sortBy(lambda (ngram, x) : x, False)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 32
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"#filtered_chisq.count()"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 33
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"#cv.apply_filter(filter_rdd = filtered_chisq.keys(), cache=True)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 34
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"#from pyspark.mllib.linalg import SparseVector\n",
"#def get_unique_elements(vec) :\n",
"# un_val, un_ind = np.unique(vec.indices, return_index=True)\n",
"# new_vals = np.zeros(len(un_val),dtype='int')\n",
"# for i in range(len(un_ind)) : \n",
"# inds = np.append(un_ind, len(vec.values))\n",
"# new_vals[i] = np.sum(vec.values[inds[i]:inds[i+1]])\n",
"# vec.indices = un_val\n",
"# new_vec = SparseVector(vec.size, un_val, new_vals)\n",
"# return new_vec\n",
"#cv.docvec_rdd = cv.docvec_rdd.mapValues(get_unique_elements)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 35
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from pyspark.mllib.regression import LabeledPoint\n",
"from pyspark.mllib.linalg import SparseVector"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 36
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from pyspark.mllib.util import MLUtils"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 37
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# append year to the feature vector\n",
"def append_year_to_features(data) :\n",
" context, vec = data\n",
" year = context.split('||')[3]\n",
" size = vec.size\n",
" old_ind = vec.indices\n",
" old_vals = vec.values\n",
" new_ind = np.append(old_ind, [size+int(year)-int(year_range[0])])\n",
" new_vals = np.append(old_vals, [1.0]) \n",
" return (context, SparseVector(size+len(year_range),new_ind, new_vals))"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 38
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"labeled_rdd = cv.docvec_rdd.filter(lambda (context, _): len(context.split('||')[3]) > 0)\\\n",
" .map(lambda (context,vec) : LabeledPoint(float(context.split('||')[10]),vec)).cache()"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 39
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"###Construct the training set and fit the model"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"training_set = labeled_rdd"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 40
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"if False: \n",
" indexed_label = labeled_rdd.sample(False, 1.0, 1).zipWithIndex().cache()\n",
" count = indexed_label.count()\n",
" training_set = indexed_label.filter(lambda (p,i) : i < count*0.8).map(lambda (p, i) : p).cache()\n",
" test_set = indexed_label.filter(lambda (p,i) : i > count*0.8).map(lambda (p,i): p).cache()"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 41
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from pyspark.mllib.regression import LabeledPoint\n",
"from pyspark.mllib.classification import LogisticRegressionWithSGD, NaiveBayes, SVMWithSGD\n",
"from pyspark.mllib.regression import LassoWithSGD, RidgeRegressionWithSGD, LinearRegressionWithSGD\n",
"from pyspark.mllib.util import MLUtils"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 42
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%time model1 = LogisticRegressionWithSGD.train(training_set)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"CPU times: user 990 ms, sys: 620 ms, total: 1.61 s\n",
"Wall time: 22.8 s\n"
]
}
],
"prompt_number": 43
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%time model2 = LogisticRegressionWithSGD.train(training_set, regType='l1', regParam = .01)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"CPU times: user 1.02 s, sys: 500 ms, total: 1.52 s\n",
"Wall time: 13.8 s\n"
]
}
],
"prompt_number": 204
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%time model3 = LogisticRegressionWithSGD.train(training_set, regType='l2', regParam = .01)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"CPU times: user 1.23 s, sys: 420 ms, total: 1.65 s\n",
"Wall time: 14 s\n"
]
}
],
"prompt_number": 203
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"def assess_model(model, test_set) : \n",
" labelsAndPreds = test_set.map(lambda p: (p.label, model.predict(p.features)))\n",
" trainErr = labelsAndPreds.filter(lambda (v, p): v != p).count() / float(training_set.count())\n",
" print(str(model) + \"Training Error = \" + str(trainErr))\n",
" return labelsAndPreds, MSE"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 266
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"####Testing the model: "
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"vals1,MSE = assess_model(model1, training_set)\n",
"vals2,MSE = assess_model(model2, training_set)\n",
"vals3,MSE = assess_model(model3, training_set)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"<pyspark.mllib.classification.LogisticRegressionModel object at 0x2b12a58290d0>Training Error = 0.556600205328\n",
"<pyspark.mllib.classification.LogisticRegressionModel object at 0x2b12ad0f5e10>Training Error = 0.405630302048"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\n",
"<pyspark.mllib.classification.LogisticRegressionModel object at 0x2b12ad0f5910>Training Error = 0.551683146917"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\n"
]
}
],
"prompt_number": 267
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Sort by the weights"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"vocab_map = cv.docvec_rdd.vocab_map\n",
"vocab_map = np.array(vocab_map)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 207
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"vocab_map[0:20]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 208,
"text": [
"array([[u'file claim', u'0'],\n",
" [u'sector', u'1'],\n",
" [u'vwpa', u'2'],\n",
" [u'task central', u'3'],\n",
" [u'adjourn', u'4'],\n",
" [u'overrid', u'5'],\n",
" [u'exist condit', u'6'],\n",
" [u'loss requir', u'7'],\n",
" [u'compact', u'8'],\n",
" [u'blm', u'9'],\n",
" [u'new jersey law', u'10'],\n",
" [u'defend repres', u'11'],\n",
" [u'conspiraci case', u'12'],\n",
" [u'terror', u'13'],\n",
" [u'refus work', u'14'],\n",
" [u'court summari', u'15'],\n",
" [u'organ brain damag', u'16'],\n",
" [u'day file', u'17'],\n",
" [u'earli', u'18'],\n",
" [u'hierarchi', u'19']], \n",
" dtype='<U64')"
]
}
],
"prompt_number": 208
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"inds1 = np.argsort(model1.weights)\n",
"inds2 = np.argsort(model2.weights)\n",
"inds3 = np.argsort(model2.weights)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 209
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Sorted weights:"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"model1.weights[inds1]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 210,
"text": [
"array([-1.00715789, -0.88842074, -0.83998456, ..., 0.89928743,\n",
" 1.28846254, 1.45024042])"
]
}
],
"prompt_number": 210
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### L1 reg. "
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"model2.weights[inds2]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 211,
"text": [
"array([-1.66332107, -1.22029822, -1.14037721, ..., 0.49867505,\n",
" 0.5198579 , 0.88827589])"
]
}
],
"prompt_number": 211
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### L2 reg. "
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"model3.weights[inds3]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 212,
"text": [
"array([ 0.07288444, -0.82926676, -0.89346026, ..., 0.68768653,\n",
" 0.72733299, 1.1183516 ])"
]
}
],
"prompt_number": 212
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"sorted_vocab1 = vocab_map[inds1]\n",
"sorted_vocab2 = vocab_map[inds2]\n",
"sorted_vocab3 = vocab_map[inds3]"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 213
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"####Top 20 ngrams from either side for each of the three models:"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Lowest 20 weights:"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"for vocab in [sorted_vocab1, sorted_vocab2, sorted_vocab3]:\n",
" print vocab[0:20]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"[[u'ani' u'13187']\n",
" [u'cir' u'25676']\n",
" [u'doe' u'4269']\n",
" [u'illinoi' u'31598']\n",
" [u'fail' u'5295']\n",
" [u'class' u'33119']\n",
" [u'follow' u'5468']\n",
" [u'indiana' u'30162']\n",
" [u'ill' u'20859']\n",
" [u'dure' u'1757']\n",
" [u'enforc' u'21533']\n",
" [u'section' u'30731']\n",
" [u'citi' u'5697']\n",
" [u'market' u'38214']\n",
" [u'univers' u'1864']\n",
" [u'unit state' u'9597']\n",
" [u'pennsylvania' u'34743']\n",
" [u'count' u'15352']\n",
" [u'mere' u'23249']\n",
" [u'abort' u'16738']]\n",
"[[u'court' u'41918']\n",
" [u'cir' u'25676']\n",
" [u'ani' u'13187']\n",
" [u'doe' u'4269']\n",
" [u'district' u'43153']\n",
" [u'state' u'16323']\n",
" [u'unit state' u'9597']\n",
" [u'fail' u'5295']\n",
" [u'claim' u'5570']\n",
" [u'illinoi' u'31598']\n",
" [u'did' u'34573']\n",
" [u'onli' u'26020']\n",
" [u'class' u'33119']\n",
" [u'appeal' u'6729']\n",
" [u'follow' u'5468']\n",
" [u'dure' u'1757']\n",
" [u'feder' u'3506']\n",
" [u'case' u'5237']\n",
" [u'ct ed' u'25179']\n",
" [u'section' u'30731']]\n",
"[[u'court' u'41918']\n",
" [u'cir' u'25676']\n",
" [u'ani' u'13187']\n",
" [u'doe' u'4269']\n",
" [u'district' u'43153']\n",
" [u'state' u'16323']\n",
" [u'unit state' u'9597']\n",
" [u'fail' u'5295']\n",
" [u'claim' u'5570']\n",
" [u'illinoi' u'31598']\n",
" [u'did' u'34573']\n",
" [u'onli' u'26020']\n",
" [u'class' u'33119']\n",
" [u'appeal' u'6729']\n",
" [u'follow' u'5468']\n",
" [u'dure' u'1757']\n",
" [u'feder' u'3506']\n",
" [u'case' u'5237']\n",
" [u'ct ed' u'25179']\n",
" [u'section' u'30731']]\n"
]
}
],
"prompt_number": 214
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Highest 20 weights:"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"for vocab in [sorted_vocab1, sorted_vocab2, sorted_vocab3]:\n",
" print vocab[-20:]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"[[u'provis' u'39100']\n",
" [u'histori' u'9296']\n",
" [u'govern' u'43791']\n",
" [u'requir' u'8892']\n",
" [u'second' u'40957']\n",
" [u'protect' u'35756']\n",
" [u'app' u'25790']\n",
" [u'intern' u'6563']\n",
" [u'remand' u'10876']\n",
" [u'question' u'7852']\n",
" [u'major' u'1332']\n",
" [u'bia' u'34242']\n",
" [u'omit' u'21520']\n",
" [u'therefor' u'1937']\n",
" [u'cal' u'33795']\n",
" [u'defend' u'40773']\n",
" [u'howev' u'21230']\n",
" [u'conclud' u'15622']\n",
" [u'california' u'27213']\n",
" [u'id' u'3503']]\n",
"[[u'regard' u'7236']\n",
" [u'protect' u'35756']\n",
" [u'br' u'18521']\n",
" [u'explain' u'35968']\n",
" [u'question' u'7852']\n",
" [u'militari' u'35076']\n",
" [u'second' u'40957']\n",
" [u'histori' u'9296']\n",
" [u'major' u'1332']\n",
" [u'app' u'25790']\n",
" [u'id' u'3503']\n",
" [u'intern' u'6563']\n",
" [u'remand' u'10876']\n",
" [u'conclud' u'15622']\n",
" [u'therefor' u'1937']\n",
" [u'bia' u'34242']\n",
" [u'howev' u'21230']\n",
" [u'omit' u'21520']\n",
" [u'cal' u'33795']\n",
" [u'california' u'27213']]\n",
"[[u'regard' u'7236']\n",
" [u'protect' u'35756']\n",
" [u'br' u'18521']\n",
" [u'explain' u'35968']\n",
" [u'question' u'7852']\n",
" [u'militari' u'35076']\n",
" [u'second' u'40957']\n",
" [u'histori' u'9296']\n",
" [u'major' u'1332']\n",
" [u'app' u'25790']\n",
" [u'id' u'3503']\n",
" [u'intern' u'6563']\n",
" [u'remand' u'10876']\n",
" [u'conclud' u'15622']\n",
" [u'therefor' u'1937']\n",
" [u'bia' u'34242']\n",
" [u'howev' u'21230']\n",
" [u'omit' u'21520']\n",
" [u'cal' u'33795']\n",
" [u'california' u'27213']]\n"
]
}
],
"prompt_number": 215
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### $\\chi^2$ values for the top 20 weights"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"chi_sq_map = chi_sq.collectAsMap()"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 216
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"for ngram, id in sorted_vocab1[:100] : \n",
" print ngram, chi_sq_map[ngram]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"ani 5.8363773067e-06\n",
"cir 2.07567020652e-05\n",
"doe 3.69191075291e-06\n",
"illinoi 3.201781553e-05\n",
"fail 2.24018097257e-06\n",
"class 1.45037432954e-05\n",
"follow 1.44395426654e-06\n",
"indiana 2.31351558604e-05\n",
"ill 2.03445464893e-05\n",
"dure 2.53859136647e-06\n",
"enforc 2.50741015836e-06\n",
"section 2.84504333989e-06\n",
"citi 4.14943559502e-06\n",
"market 4.69842442205e-06\n",
"univers 6.05995785133e-06\n",
"unit state 0.000128249844694\n",
"pennsylvania 6.40596097659e-06\n",
"count 7.38263082722e-06\n",
"mere 2.44477674337e-06\n",
"abort 4.41145773893e-06\n",
"resid 4.5445738557e-06\n",
"chicago 2.15832483416e-05\n",
"impair 5.62206239478e-06\n",
"ordin 4.78767016425e-06\n",
"copyright 4.21094927647e-06\n",
"make 1.26192937701e-06\n",
"busi 4.46178497883e-06\n",
"thoma 8.15619834744e-06\n",
"opinion 8.14104149975e-07\n",
"comput 7.88226218258e-06\n",
"deliveri 1.15382186993e-05\n",
"wit 2.53763384213e-06\n",
"matter 5.15534532975e-07\n",
"physician 6.73077194755e-06\n",
"commerc 9.22675914794e-06\n",
"feder 1.567365795e-06\n",
"ex 5.15952814358e-06\n",
"date 3.25496808731e-06\n",
"trade 6.52744140527e-06\n",
"alabama 9.29042207617e-06\n",
"school 3.48513513409e-06\n",
"statement 2.40738486447e-06\n",
"mrs 7.8912023828e-06\n",
"subject 4.93030348155e-07\n",
"condit 1.32835675854e-06\n",
"share 4.20757909162e-06\n",
"enterpris 5.7258954863e-06\n",
"virginia 4.24607038625e-06\n",
"restrict 1.41672014614e-06\n",
"ct ed 7.21493742173e-06\n",
"properti 5.37065334698e-06\n",
"say 2.95950294323e-06\n",
"wisconsin 1.10568309236e-05\n",
"establish 1.58004297055e-09\n",
"consequ 2.01942696182e-06\n",
"onli 6.03574646256e-07\n",
"student 3.32233141589e-06\n",
"vehicl 5.05976826171e-06\n",
"supra 9.47098727316e-06\n",
"perform 1.74650029777e-06\n",
"suicid 9.65254787345e-06\n",
"forest 2.10800850584e-06\n",
"debt 1.24393716693e-05\n",
"chief 4.44962467252e-06\n",
"patient 2.10597945565e-06\n",
"misrepresent 5.000576489e-06\n",
"preempt 3.7637072549e-06\n",
"kennedi 6.40717902018e-06\n",
"florida 2.27384254536e-06\n",
"argument 9.34015285135e-07\n",
"express 5.18073231302e-07\n",
"creat 6.06888131689e-07\n",
"barnett 1.25741444595e-05\n",
"alleg 4.08974761957e-07\n",
"languag 8.33606644133e-07\n",
"packag 8.18607202416e-06\n",
"reach 9.27702236755e-07\n",
"island 8.12023874121e-06\n",
"commiss 6.02529464919e-07\n",
"constitut 1.64539294107e-07\n",
"paul 8.20931964761e-06\n",
"ward 6.89692818282e-06\n",
"wright 8.10727344141e-06\n",
"corp 2.37186733603e-06\n",
"appeal 4.30629242334e-06\n",
"note 2.99053518874e-07\n",
"pay 2.56607038427e-06\n",
"trial 7.51883216074e-07\n",
"elli 8.00869977141e-06\n",
"credit 6.66997819901e-06\n",
"consum 2.30785883909e-06\n",
"post 1.66142734672e-06\n",
"address 2.15777428582e-07\n",
"substanti 4.63899960686e-07\n",
"loss 3.44708386755e-06\n",
"bear 2.57763353235e-06\n",
"sergeant 7.05121084896e-06\n",
"power 6.36483551346e-07\n",
"interst 7.05908388421e-06\n",
"associ 5.40013875323e-07\n"
]
}
],
"prompt_number": 217
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Plot corelation between $\\chi^2$ and model weights"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"chisq_map = chi_sq.filter(lambda (ngram, _): len(ngram.split()) == 2)\\\n",
" .sortBy(lambda (ngram,chisq): chisq, False)\\\n",
" .collectAsMap()"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 250
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"vocab_map = dict(cv.docvec_rdd.vocab_map)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 251
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%time\n",
"chisq_points = np.zeros(len(chisq_map))\n",
"model_points = np.zeros(len(chisq_map))\n",
"for i, (phrase, chisq) in enumerate(chisq_map.iteritems()) : \n",
" ind = vocab_map[phrase]\n",
" chisq_points[i] = chisq\n",
" model_points[i] = model3.weights[ind]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"CPU times: user 30 ms, sys: 20 ms, total: 50 ms\n",
"Wall time: 35.9 ms\n"
]
}
],
"prompt_number": 252
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"plt.plot(np.log10(chisq_points), np.log10(np.abs(model_points)), 'k.')\n",
"plt.xlabel(r'$\\rm{log}_{10}(\\chi^2)$')\n",
"plt.ylabel(r'$\\rm{log}_{10}(|\\theta|)$')"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 253,
"text": [
"<matplotlib.text.Text at 0x2b12ad6ddc90>"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "iVBORw0KGgoAAAANSUhEUgAAAngAAAGeCAYAAAAHYnw4AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsvXuQY9d95/fFs9HobjwaQA8IY6bVFEfDx8ywW9N2M27G\naK171iIiLZCpQtxhypDsdfcmdtZbsYuyN6sypd1slTd24sfalmtWZXmt1VhLOiXFquWsLcYj1oiJ\nqLWKbsmSrFEkgZZNc6mhMaQoRuRQPPkDfe787sE59wFcvH+fqlMzDdzHuQeP+8XvGRJCgGEYhmEY\nhpkewqOeAMMwDMMwDBMsLPAYhmEYhmGmDBZ4DMMwDMMwUwYLPIZhGIZhmCmDBR7DMAzDMMyUwQKP\nYRiGYRhmymCBxzAMwzAMM2VMtcALhULlUCj0u6FQ6NlQKPTdUCj0jVAo9KuhUCgz6rkxDMMwDMMM\nitC0FjoOhUJvBvB/AygA+DiAvwSwBeBtAL4CYFsI8XejmyHDMAzDMMxgmGYL3m+jI+7+sRDighDi\nfxZC/DCAXwVwCsC/HOnsGIZhGIZhBsRUWvCOrHdfBfANIcSblecWATwHQAA4JoR4ZQRTZBiGYRiG\nGRjTasF729G/f6I+IYR4GcCTABYA3DfMSTEMwzAMwwyDaRV4p47+vWZ4/qtH/54cwlwYhmEYhmGG\nyrQKvPTRvy8anpePczYtwzAMwzBTx7QKPIZhGIZhmJklOuoJDAhpoUsbnpeP31CfCIVC05d1wjAM\nwzDM1CKECKmPTasF7y+P/j1leF7G3mlj9IQQUzkefvjhkc+BB79+szr49Zvcwa/dZI9pf/1MTKvA\nu3L07/lQKGRTtaFQaAnANoDvAPjMsCfGMAzDMAwzaKZS4Akhvo5OiZQ1AD+tPP1+AEkAHxZC/H/D\nnhvDMAzDMMygmdYYPAD4KXRalf1GKBT6YdxqVbaDTquyfza6qY2GnZ2dUU+B6QN+/SYbfv0mF37t\nJptZff2mspOFJBQKlQH8cwBvB5AD8CyAjwF4vxBCW0IlFAqJaV4ThmEYhmGmh1AoBKFJsphqgdcL\nLPAYhmEYhpkUTAJvKmPwGIZhGIZhZhkWeAzDMAzDMFMGCzyGYRiGYZgpgwUewzAMwzDMlMECj2EY\nhmEYZspggccwDMMwDDNlsMBjGIZhGIaZMljgMQzDMAzDTBks8BiGYRiGYaYMFngMwzAMwzBTBgs8\nhmEYhmFGzsHBAXZ2dlCtVnHjxo1RT2fiYYHHMAzDMMzIuXbtGp544glcvnwZBwcHo57OxMMCj2EY\nhmGYkZNMJgEAm5ubuHjx4kDPNQvWQhZ4DMMwDMOMnEuXLmFtbQ1zc3N48MEHByq8ZsFaGB31BBiG\nYRiGYTKZDE6cOIEnnngCQMfKlslkcO3aNSSTSVy6dAmZTCaQcw3TWjgq2ILHMAzDMMxYoAqvQVna\nLl26hEajgU9+8pOBicZxIySEGPUcxopQKCR4TRiGYRhm+Ny4cQMHBwe4ePEiMpkMqtUqLl++jM3N\nzakWY/0QCoUghAh1Pc5ixg4LPIZhGIYZLgcHB1pXrCr4mG5Y4HmEBR7DMAzDDJednR0r9q7RaOCR\nRx7p6TgmoTjNmAQeJ1kwDMMwDDNSgkh6ODg4wCOPPIIXX3zR9veswkkWDMMwDDOlTEq9tyCSHq5d\nu2aJu2w2O7XZsV5hCx7DMAzDTCkyCxWwW7TGxZWpzuM973lPz/OSVsBsNounn356JtyzTrAFj2EY\nhmGmFJPrc1wK/arz6Gde0gr49a9/HaurqwOa8eTAAo9hGIZhphST63NcCv2q8+hnXplMBo888sjM\nW+4knEWrwFm0DMMwzLTTS/mRQbh11XlwWRT/cJkUj7DAYxiGYZhugihlMi6xf9OESeCxi5ZhGIZh\nxpR+smCDzqANwq07LrF/swALPIZhGIYZU/oRREGLKV08n05EOgnLcYn9mwVY4DEMwzDMmNKPIHLa\ntxfrni6JQSci6WNvectbbOdQReLBwQFuu+02LC8v4/z5874sjZNS429UcAyeAsfgMQzDMOPCjRs3\n8Na3vhWlUgmpVMpT3JqMc4vFYlhcXMSHPvShrn16iac7ODjAJz7xCbz66qs4d+4cHn30UTz44IO4\nfPkyNjc3LdFWrVZx+fJlLC4u4uWXX+46B43De+mll/Dkk09a53Cbi2nfRqOBTCYzk/F9phg8CCF4\nkNFZEoZhGIYZDyqVigAgAIhGo9H1/P7+vqhUKuKBBx4Q7XbbdXshhHjggQcEALG5uSna7bbvechj\nt9tt61+JfGx3d1cAEIuLi2J3d9fahh6nWCxa/9/Y2DDORV5jNpu1tp+fnxcARDqdFq1Wy9N1TyNH\nuqVbz+genOXBAo9hGIYZB6SoyefzjmJMFTZexJtOmLkhj+smxug5CoVCl+ii82u1WqJWq4l6ve54\nPFVcbm5uiq2tLd/XPY2YBB67aBXYRcswDMOMA9SNWi6X8YUvfEHrdpQuUekmBdBVS85reRKn7W7c\nuIF3v/vdCIVCSKVSeOaZZ1yPp85N1rrz63aWx1lfX0e73Ua5XMZXvvIVXL9+3fG6Z4GZctGi02P3\nnwD4EIA/B/AagDcA/EMP+/ahoxmGYWYT1U3I9I9Xi5TOGteL21YI7+5g6ip1Oh6dG53T9va2dn/T\n+4geh86xXC7P/PsNs+SiBZA5EnTfA/AsgGeO/v4JD/v2udQMwzCzxyTHP42rOPXrRnUSUFIs5vN5\nsb29bbxWVVQ6CUUv4pOii72j++/v74t0Oj2Q+MFpZtYEXgzAjwA4dvT3+1jgMQzDDI5JvulOsjil\n6ASUTHC4/fbbRTQaFdFo1PFaT548KaLRqMjlctrEhXK5LACIpaUlUa1WbeJMCsE77rhDpNNpkc/n\nRavVso6txt6p4pWeK5vNBho/OM2YBF7Us5N3ghBC3ATwx6OeB8MwzKxw6dKliY1/mpbiu/I68vk8\nVldX8cILL+Dll1/G448/jmg0itdff93a1nStzz//PF5//XW88MILuP/++3HmzBnb9qdOnQIAfPvb\n30Y8Hrdea1n7DoDtXPfffz+++c1vAuh+j2QyGdTrdSuOT84/m83i6aef7nofcZszn+hU37QNsAWP\nYRiGMTAtFiF5HdQ9iyOL2fLyslVahFreVGTGbjKZFK1Wq2ttwuGwddzl5WXrcWqdi8fj1japVMoq\nkSKtfOVyWWxvb9vi+IrFomXVazabWpc5tfAVCoWxc6mPCsySi7brIlngMQwzpYxr/NgsMK5rL8XW\n+vq6VX6k1WqJZDIptra2tPOV11KpVESpVLK5VilU4AEQ9XpdCGEXybR8iRxra2u2+DrdkC5jk8tc\nXtfi4uJUuNSDggUeCzyGYaaQaYkfm0SCWPtBiESTRZLOd21tTRSLRZHNZsXu7q4xq1Ull8vZRFku\nl+uaO62XJy19qVTK+lvGAW5sbIiVlZWu2E1TPGe73bYJRS+1+GYBk8Ab2xi8UCjUAnDCxy4fEUL8\n2ICmwzAMM5ZMS/zYJOJ17Z1ix2js2sHBgaeWYfSYX/va17C6umqrJyd7xjrNd25uzmrz9fjjjyOR\nSAAA0uk0fvmXf9k459dee806XigUwgsvvGD1oZWtwr761a8im83ilVdeQTKZxBtvvIGXXnoJABCL\nxfDOd74TV69eRS6Xw8c+9jE89NBDuHjxIt7znvdYLdZqtRp+7/d+r6uO340bN/Diiy8CAE6cOMFx\neE7oVN84DACPA/iSj/FLDsd6H3xY8B5++GFrXLlyJRiJzTAMMwCmJX5sEAzahep17Z0sfX6zj+U1\n0Tg307Gd5kutbAsLC13lSUxzjkQiXeeVGa+07ZhuZDIZbWaurrbe3NycZV3stzzLtHHlyhWbToHB\ngjcTnSxCodD7APwigJ8UQvyuy7ZiFtaEYfzCGWzMpL0HaCcItyb2fjk4OMAnPvEJvPrqqzh37hxK\npVJXZ4c777wTzz33HF555RXcvHnT1s1B8q53vQuXL1/Gvffei0cffdR1Tek1UfL5PE6dOmXsDKG+\ndgDw7ne/G5/+9KfxwgsvWNvJOT744IO4fPmy7biFQgG///u/bztuJBJBoVDAm9/8Zjz11FO2TF2V\nbDaL++67Dzdv3sTjjz+Ozc1N3H333fiDP/gD3Lx509pucXERL7/8svV3rVbDa6+9hsuXL2NjYwMn\nTpywWfdmnZnqZKEOcAwew/QNx3oxk/Ie8NrD1WlfN6ufalHS9VylVrFEIqGtGafGvrmdX1relpaW\nBABx9uxZUavVbMdZW1vrOga1rsnECHo8WSOvUqmIdrutzcilNfQymUxXPJ46dNY+HMXtzc/Pi0Kh\nYDsmABGPx7uOKxNF2FKtB5xkwQKPYfphkgvZMsEwKe+BXltZee2kIIQ9kWBjY0Ps7u52rY1ackQ3\nP7Wjg5uIvuOOO0Q0GhWZTEZUq1XRbDZFsVgUoVBIAJ2yJDSLVZYTicVi1mPVatW6XrWkinpeKgDV\n7egxvQ41C5cOeg7pgl5YWLDctIyemRN4AH4BwO8djT8/EnifJo9p+9KywGMYPfwLmpmU90CvQtRr\nJwUhOmtRq9Us65JubVqtliiXyzZxt7+/b8Wara+vd3V0cJs7FaDlcrnLkkhFoxR96qjVal3XK0co\nFBKJREJEIhGRy+XE4eGhrSyJHAsLC9pjy2xZ07mdhB8Vf9Vq1RLIbmJ71plFgXcFt/rR0iEf+13D\nfn0vNsMwzKgZ1xptXuln/r0KUSmustmssQ5cv1BRRV2lElkKxNQvVrUKqiVJYrGY2NraEsVi0Wgt\nW1paEvl8vispIhwOi3PnznkSZLK8CR1zc3Pi8PDQJsx6sfRFIhFRKpVEJpMRAJdDccMk8GYiycIP\nnGTBMMygGGaSglOCwSQkS/STIOHl+nTb3LhxAwcHB5ifn+9KmPB7fBPVahWXL1/WJlzorr1QKGBz\ncxOFQgHPPPMMAOCzn/0szp49i+XlZXzgAx/AD/zAD+D5559HOp3GnXfeiaeeesp2vKMg/K7zxGIx\nW3LDvffei7/5m7/B9evXHa8hk8ng7W9/Oz760Y92PZfL5RAKhXD9+nVEIhFks1msrq7ic5/7nOMx\nw+Ew3njjDe1ztVoNH//4xx33n2VmOsnCzwBb8BiG6RE3q9MwkxScXH2TkCzh1c2qW3Mv1+e0DbVs\n6Qr5el0/3dx01sVTp06JdDot8vm8zSpHY9Jo4gF9vFAoiN3dXctVrOv2YBpOljX1OelylRZCWtJE\nN5xi7fyMdDrN1jsXMGsu2l4HCzyGYXqFCgMZ50TpJ0nBr8vSyU05CckSvdaYozFuTq49pzXQiRdd\n4oG6r/oauQlFiRpXJ6+dPi4Fl0m4yc4UUojpkiL6GVtbW13ZukEPnSiUCSGMGRZ4LPAYhhkwVBiY\n4qt6TVII0uo2KckSXlDFFl0nnciWOK2BzIiVpUh0LbPovrpCvY1Gw1UoSkzZtnIeVPypjwEQ+Xw+\ncEGnGwsLC9Z55ufntdv4Ta5wGmy98wYLPBZ4DMMMGHnzHURQ+CRY3UaBKrZ6XSdqfZOZrWqGq25b\npy4LqlBcXFzUlvzQZdsKIUSz2bQsd+vr61a2LhVROzs74tixYwMXd+qYm5vztb2pJp76vFyrQSa6\nTBss8FjgMQwzYAZpGZsmq9sgMa1TkPGRah07KuxrtVpXvF2r1dIWQnbDlHFLXZmJRELbtmyQI5lM\nigsXLriKNqchCytvb2/b4gur1Sq/z31iEnicRavAWbQMwzDTx2233YbnnnsOgD4r05TdqsuYldtK\narUaPv/5z6NUKhlbhXnJnpXIc37xi1/E9evXu/aJx+NW9qva1mtciUQi+N73vmf9TTN74/E4Xnvt\nNU9rw3RjyqJlgafAAo9hGGZyMZUwWV5eRrvdBgDU63V87GMfs+0nS6RcvHjRJjB05Vpu3LiBu+66\nC88995wlSur1urXd2toaTpw44bsEi+xve/36daunazKZxOLiIm7evIlz586h1Wrhueeew8svv4xk\nMolXXnllcIsZEJlMBolEwhLYQLfgK5fL+MIXvsDirgdMAi86iskwDMPMApNQb27auHbtmiW0Dg4O\nrPp5586dw+OPP46FhQW8/PLLuHHjhu31yGQy2lp7yWQSALC5uYmLFy9a2375y1+2CcKvfe1rAIB0\nOo2VlRXbHDKZjPU+ePbZZ/Hkk092zU/OnYogoFOr7vnnnwcAPP7447bnJkHcAcCpU6fwla98xfYY\nFXdsuRsQOr/tLA9wDB7DMAExCfXmBsWoOmmYkiza7ba29ZWcZ7lc7uoeIXu1FotFY8C/3J+WNHHq\nL0ufO3nypK3+nan9lxx+Yt76iY8b5KDzOnv2rC1mkekNcJIFCzyGYYaDvOlLQTGszNdxak82KnHr\npf5fPp+3xJyu5Zacr9M1yLVWExw2Nzdt2bdq79m9vT2rODEtJhyPx8dWlAU9SqWSVZiZ6R8WeCzw\nGIYZElQYyMK1wz7vqC2Ggy7r4lfMUmvc1taWtU5qx4Z0Om1Z67x2A6HCxWm7lZWVgRYKnoTBfWWD\nhwUeCzyGYYbEqGrWuZ13mBa+Xsu6eJ2jXzFrcpPK/9PacsVi0ao5Zyq5Iq1ysrPE8vJyl4tXCNFV\ngNipEHAymRy5ABvUSKfTolqtsrgbACzwWOAxTKCMkztw0ATZJmyQuJ13mBa+Xt8fXufoV0TT7akL\n1WRRW1tbM86fzlHWbaPHyefz1n5B9WSdxEGv3amrCNMfLPBY4DFMoAxaLIyTgBwn12c/DNOy2Oua\neZ1ju90Wa2tr2sQI3ftGJ36pJe7MmTMikUgIACKVStkKE6vihM6x2Wza4i1pr9hisWhzAVPX8CwM\nuZ6RSERUKpWRf46nFRZ4LPAYJlAGLRbGSVSNe5swr2JYihwpSnTbByWs1TVzO658fnd3tyuz0rSv\n7j1iet/ojkG3XV1dFalUyvqbulLVhvdULKrxlmqv2Ntuu02EQiGxsrLiu73XJI9MJtMlaEf9OZ5W\nWOCxwGOYQBm0G3KcRNW4twnTiRonQeUknoMS1nTN9vf3bWVEdMel51Xdo6Y56d4jpveN7hhy28XF\nRdv8stms7W+de3F/f18Ui0Urxm5hYUHs7u6KVqtls9qpMXizMqrVqrW+wK1eukzwsMBjgccwE8W4\ni6pxQidqnISak3j2IqydxKObpSybzTqWMFHFVqPR0M7JVKPO9L7RHaPdbttcsUDHcnfu3DmxvLzs\nKEx0WbQARC6Xs/VWncWxuLgoWq2WaLfbol6vc627AcMCjwUewzBTik7UOAk1J/HsRVg7uUF1ljo5\nl2w2K1qtllYE6sSWnLtqDSwWi7aacV6slm7Cj8bOyRGPx8Xu7q6jIOWhH+yOHR4s8FjgMYxvxinR\nYVoZ1BoPwgLqVsDZZKlT5+Lmcl1YWBArKyva7hGq5SyTyXiyWqrX8MADD4hms2lZAeW+0r1KBWQ+\nn+/qdNFut2fW/eo22B07XEwCj3vRMgxjxNTXkwmOQa2xqbeqV3R9dOlcy+VyV/9Q2bc1m83i6aef\nxnve8x5tL165XT6fx7PPPotqtYpLly6hUCggGo3iO9/5Dr7zne/goYce6roGua/kB3/wB7uOu7m5\nifn5eezs7CCZTKJQKOCZZ55BMpnESy+9ZPWCjcViuHnzJgDgvvvuw9raGq5fv46bN29avVLD4TCu\nX78OAPjrv/5rAEChUEAmk0E0GsXrr7/e8xpPG4uLi/ihH/ohfOQjH+G+suOATvXN8gBb8BjGYpwS\nHQbNuPVODYog6tEVCgXxwAMPWBmii4uLWtelV0tds9kU+XxeZDIZ6/n5+XlbFqspVq/dblvtxdSu\nCLR0iix/Iucv/y8LG9Oh6xnLw9uIxWKiWCxyEeMRAoMFb+SCatwGCzyGucUsJTqMqizLoNfYz3VR\nMUjFnNy/Xq9b7lkvx9PVi3vggQdc23XFYjGte1airhmdt3rsTCZjCcmFhQVRqVRs9e6kMKE18dQh\n3bWz0ivW7+B4u9HCAo8FHsMwDgRlSRu3uEU/10XFYK1WE41GwxJ6cn8/xzPVi5NWtFwuZ8WxLS0t\nWSLKVBTXSz081UKn9poFOskT8v8rKyui2WzakkPUMTc3Z8uOjcViLPaOhsnSygwPFngs8BiGccDN\nkjaoHqmDxo+F0FRKhHaMoG2+/ECzVSuViqjX6zZrW7VadbUOqkJOtbxtbGyIVqtlK1IsBaQUejrB\n56cA8dzcnGi1WlpX76wNmRXNjBYWeCzwGIbpA6/CbZLjFk2uT+q6dOrR6nZsVcCpa+W2duVy2SYw\nCoWCbW6yILF8raiVzclCJ62HXkcoFJppC97p06dFvV6fuPf3tMICjwUewzB94KdH6qjjFk3WRvm4\nWvLDhJp0sLm5abO6+bVQSoGWTqetQrh0rdzWzil2jyZ+SKsjFWEyMWOWhVkQo1QqsbAbM1jgscBj\nGKYPxkG4ecVkbdRliXqxRm5sbFjdCExdJZwEpXycCrRYLGbLxFW31R1Tnlu1zNHOEdLCGA6Hbde5\nvb0tarWa70xZ9TizPLi+3XjCAo8FHsMwM4LJ2igfl+VIerFGqjF5Tr1iaZzaiRMntFmq9XpdCCHE\n/Py89djx48e1HTGazaYoFAqWoJMxYPR6paVON2KxmDg8PPQVP5dIJGwxfbM0IpGI1tLKjBcmgRfq\nPMdIQqGQ4DVhGG/oiuEyo+dd73oXLl++jHvvvRePPvqo9brcuHEDBwcHiEQi+NjHPoZEIoHv//7v\nx6OPPmosSqxjZ2fHKnjcaDTw8ssv4/Lly9jc3LQVP15eXka73QYA5HI5vPDCC13HyuVymJ+ft4oI\nA/YCxNlsFl//+teRyWRw22234bnnngMAhEIhpNNpbG5u4oMf/CAeeughzM/P49KlS76LD9PzUcLh\nMDY2NvC5z33O1/GmhXw+j29961ujngbjQigUghAi1PWETvXN8gBb8BjGM+OWMTpsRlUSxe281EJV\nq9W6tlfdlI1Gw/ZYPp93vCbVQmiy8MgSKxsbG7b/y2SLhYUFreVIWhgzmYwtS9NUp06+93opVBwO\nh23JH+qY5XZkxWIxwHctMyhgsOCFuxQfwzCMR2hrqIsXL454NsNHtu66fPkyDg4Oxua8r776qvX/\nUCjUtT1t97WxsYGLFy9ajy0uLuL69euO13Tp0iU0Gg3cfffduOuuu3D77bdblrqDgwPs7OygWq3i\ngx/8IBqNBv70T/8UpVIJc3Nz+Iu/+AvcvHkTKysrWFpa0h7/pZdeAgBUKhWsrq5aj587dw4AbPvF\nYjH81V/9FarVKmKxWNex7r//fv0iHvHGG29Yrch0zGorsnA4jM985jOjngbTDzrVN8sDbMFjGM9M\namxOUJa3oEuieJ2X23mptUyXGNFut0WtVrOVupCvJS1sTLtP0P/rWpFBYwmMx+OWBa4X69rh4aFt\nXUqlklheXu4q3SIHJ0QEM6LRqLX2zPgDgwVv5IJq3AYLPEaI8etGIBnXeU0aQbmWgxS4+/v72sQC\nHTLZQNcPVjcvP/Ok21JXLy0QLOcmhSPQcbfu7u5aAlGOcrncta3XIfd1Eoe0lRqP/sfc3Bx/t0wY\nMyXwAJwE8PMA/hTANwG8CuA5AB8HsOOyb79rzUwB4xpbNq7zmjSGWYy4lw4YpvZPusLDsqMD3aZY\nLIpsNit2d3e1ljevc9bFn6ldLur1ulheXraeX11dtf6fTCZFq9US+/v7Ynt7W6ysrFgZsF6sbVev\nXhVC3Hq9nIoV8whmPPbYY37e3swYMGsC76MA3gDwBQAfAPAvAfwfAG4ePf6PHfbte7GZyWdcuxGM\n67wmjWG6lnWi3KnGWzabFXt7e649V+lwqnVXKBSs/7slTzid5+zZs1YtPPUaqFtXbT+mHk/2uPXi\nspUWPPl67e3tzWzJkmGNRCIR3Ju/T9hj4Q3MmMB7F4B7NY//EDrWvO8CKBr27W+lmalgXGPLxnVe\nfhjEl/agbwT9HF8nynWij7pdTd0iaOFhWe/NVOtObifFF3VlOglNeozl5WURj8dFNBoVlUrFKDbr\n9bpoNBqi2Wxa1kVaFNfU45Za/oCONVJa+EKhkE3MpVIpkclkehIts5wJ62eEQqGxir1jj4U3Zkrg\nOQ0Af4KOFe+C4fk+lplhGDeC/tL2E7vmdAyvyQR+j68T5W6iT8a+qeKNHssk9tUEClmYWIojmXjh\ndF3y2GprMJ3YNF2DLGCsW4NTp06JdDrdZY2rVqtib29PxONx38JE/p9j8vyPVColEonEWIk7Idhj\n4RUWeLcE3H84EnjvNDzfxzL7g83PzCwS9Je2W+yal8+ZWgNOFTRBz9lJ9C0uLopKpeK7mbvuOnUx\ne7VareucputSkyhKpZLVwaLVanWJNmkpO3v2rLbd2KlTp2zJGupYWVlx7DfLYzCDivFxYho8FsOA\nBV5HvK2i4579NoC0YZt+1tkXbH5mZpGgv7Rp7Botiivx8jmjQofGk/WShSrx+wOu3W7b4uVkT1Wv\n+6sWQF1BYyeLoG7uu7u7olqt2nq90rWk1yiLEwOdhvTqnPL5vCdXqbTeccmT4QwpxpnJZeYFHoA5\nAJ9Gx3r3cw7b9bPOvmDzM8P0jypSVGHl5XPmxfXpl15+wNG5muLwdNdI96X7lMtlAUAsLS2JarXq\n+Zro3NfW1iwL4NLSkgA6pTRSqZRWsM3Pz1tCm1ol/YiOZDJpE4w8ghvSnZ1Op329J5jxZeIEHoDW\nkRjzOj7scKwIgEeOtrvkct7AFt0NNj8zk8i4hxaowqrfz1mv10vFjalenQqdq9w/n8+L7e1tUS6X\nLfeoTvzRunVSzDqJRC9z12XFNhoNR/EVjUZFMpkU0WjUEhN+kxy8lkPh5An/Q76G4/jZZXoDBoEX\n6jw3foRCoccBlHzs8kdCiF/QHCcC4N8B+FEA/x7AfyeEeMPhvOLhhx+2/t7Z2cHOzo6PaTDMdKM2\nmn/kkUdGPCM71WpV2/hex8HBAa5du4ZkMolLly5pt+31em/cuIGTJ09abbDW1tZw4sQJfO1rX8Pq\n6ipSqRQ7GcdrAAAgAElEQVQKhQKeeeaZrvMfHBzgS1/6krXtU089ZTt2IpHAd7/7XaRSKXz+85+3\n2nnduHEDBwcHuHjxIjKZjKe10K0BPc6DDz7YdYxCoYDr169jfn4ei4uL3JB+QshkMvjGN77h+Jlg\nxp9PfepT+NSnPmX9/f73vx9CiFDXhjrVNy0DQAy3LHcfBjqC1mWfnlU0w8wCwwot8Go5U7fzY7Hz\nG5/ndkwn97AueUCX0KHOS1rlIpGI9RhNmnCyzNG1kJmr+XzecqHu7+/bkh7q9XpXoeRWqyXW1tYs\n62Gz2RRbW1tibm5OvOlNb2JX6oSMVCqljVFlJh8YLHgjF2GDGgDi6HSueAPAh3zs18cyM8xk0Yv7\ncRgJB0J4j2HrJdZNzkcKLOkGlfOj81WzRf3MWedylYJoc3NTlEolAXRckvTmS4WhPL889vr6ele/\n2Pn5eRGNRsXy8rJNvNE1p25PUwuwXC7X1eM1kUjYRJybW3R5eVlsbW0JAFyUeAxGNBrlWLsp50i3\nzIbAQyehQpZDuQgPljuyb18LzTCTxCAyuXVirt+EA6e2XVKk+bEo0vnI2DY6v17XxTRn2aqrWCyK\nw8NDS/SZYuTa7bZYXFwUqVTKsriZEkFUkabLYG00GtY6yfZhdL7ycTex4FWwra6uinA4bLM68hj+\nSCaTnuM/mckFmC2B9yF0xN3zAN5nGBXDvn0vNsP0ihdLV5BJDoNwt+rEUS/ncbMU0vMkk0mbBc4N\ndT5uf3vFNGfpZgXsNceczqOzuDldixyFQkF7Da1WS5TLZZuFb2VlRUSjUZHP5605Li0tGZMcVHfs\nwsJC1zZLS0uWBY/HeAwuwzXdALMl8K4A+N7R0GXcfg/ALxr27X+1GcaAmzjzYjkK0uo2iExuU1sq\np/P0Ilq9lhTRoc7H7e9+MRUadjqPzuImhD7mkNbPk2sgjy07c9AsXJpxKwcVdbIWneqOle3RZF9a\n6SoG7DGCNK6P3bSjGbKkDZfhmn4wSwKvn8ECjxkkbuLMi+UoSKvbIEqe9CKOehGtuvi2cb2ZSSG0\nsLDg2WWmWtwkurWigk2WZZHCTo2pk/vpHqejVCqJVqvVJQQBiO3tbdFut8XJkydFJBIR4XDYGJvn\nteQJj/5HNBoV58+fF7VazVfsKDPZsMBjgceMAW5CxIs4CtK6NC7dVNR16aULxDjfzNrttpibm7PW\nmlrx3PrgqpjeQ6olj2boAvbkjmaz6Sq8FhcXRTqdNnaUKBQKHGM3RsPUyYWZfljgscBjxoBxEyLj\nYPmiCQjyBuUmPMeh2LLfMi7UwkXj8KiFjLYEMwlup/eQruXaxsaGqNVqYm9vTxQKBVEqlVxLm0Qi\nERZvEzBCoZDI5/MiFouJSqUyNt8rzHBhgccCb6YZB0Hgh2HNdxwEZy9JGU4CsN+187q/WqvOtK3q\n4tzY2LBtS12lMsatV8HdbretmnW7u7uiVqtpM5l1I5PJeBYWbuIvHo+zQBzwWF9f76qtyMkUs8mR\nbmGB5zaOFoqZMsbFFemVcZ3vIIRnL0kZdB/Vrel17dLptIhEIiIWi4nDw0Prca/763q/6qACLhaL\nWTF4ci2Xl5etG7Zb3BQtVry3t6d9Lej84/G4aLVaYn9/3zXmrlAo2CyIppFOp13FIo/BCjsp3Ol7\nUP3hwMwOAAs8FngzjFdX5LhY+nrpY2rC7Zr8XHM/RYVNx+/FimiqA1csFm1FgJ2OSS1MiUTCetzr\ne4UmNjhtSxMs5PnW1ta6yqB4uX66D81OLRQKXd0z6LFNgozGBcr1cxMYxWKxaz8egxuxWEycO3fO\n9nrT5JparSbq9TqLuxkGYIHHAm+G8SoixsVy1m63jW2s/OJ2TfR5KhR0eBE/qqDzsqb9CGtV0Kys\nrNhckyboDfPq1avW49TNqetsoSY2eE2KocKTutbi8bitDZjTOuiE1eLiom192+22VeZEllhR1wi4\nZTGkIrXVao1c0PDojGg0aqsnOD8/b/0/lUpxAWPGAmCBxwKPccWpE0G/lj2/xwgqAcLtONRaSIWC\nDi+CRhV0XjpSUMuUXzGrq+nmJS7v3Llzxu3Va9DF2/l5Pff398WxY8esYHjZogywx7NR0anLtNVl\nvkrRR3uNqiVW2u22JRBkKQ3qDqeCltaw62dwDF5/o1qt2j47uuLR4xS+wYwOgAUeCzzGFZOACcKy\n5/cY/SZASFGgBtubzuPVtak7BxU5qqBzuw66Ltls1vf1yixcabXSzd9vIod8TvaoVUuOeGlnRtdG\nDYb3EutGM21NLtaNjQ3bjV9aYGlx42PHjolsNmsTbtFoVCSTSRGLxUQ0GuVadWM20ul012dHtcJy\nzB0jAVjgscBjtHixxARhTRt2SZJ+BGUvmaQ0LsiPMJXrIut4+bV00jlEIhFb/1b1HF4TOZrNpigU\nCtqODF7bmanJDvL/uVzOGEsnS6nQm/f+/r5Viy4SidiyXWu1mtb9qgpSHuM/pCXWVM9OxttVq1WO\nuWNsACzwWOAxFibrSj+uSTf6OUa/rbz8ntNvJmk/orXZbIp8Pm/FFPkVpnQOtL6b7N+q1tnb398X\nxWJRZLPZroxWXdwgHclk0rKIVSoVxxutKrzm5+e14k6Kv1AoZFnaKkc1zVT3NQBL7EmXbLPZHKjw\n4FZjgx/r6+tWnUKOrWP8ArDAY4E3QQw6m1WNqQLGt82VEP238vKLn0zSfoWvl5g9p/cDnYOuf6tT\nPJ3uMToHOsLhcFdXB/la6LpR7O7u2uraqW5at7G6utoVDzc/P2+LHVxbWwssZs40WOANdpRKpa7O\nIhxbx/gBYIHHAm+CGHQ2KxURk9CzcdDuXV0D+0GsiVPMniwJQ18PuT2t4aa+H2htuKtXr3b1b1XX\nTlc7jM6hVCqJra0tm1s1lUpZzdvVfYXozkSW/19dXbWskzLGcX193VMMnrrN3Nyc2Nvbs9ZiY2PD\nEpA8JnOk02nRarUc41DHpXQTM74ALPBY4E0QgxY0fgXMqL9kByW4JCZBHfR1m2L2qCii51etbTqr\nHm0BJt2yFHXtZCzT6uqqWFlZsdytOtFVKpWsBBVaomRnZ8dW0oQmqMgM2VgsZhOFOrFHxz333GNZ\nIBcWFmznu+uuu7pcx7VazbV4MdCJx5PH4szW8RiqtU6NQ/Xy2WQYCcACjwUeYdSCxY1BCxq/DPJL\ndhxeC5OgDvq6Tedxe1z2UzXNTY5z585p11G3xur+0lUv4/hkBq3cR81WpRa+eDxuxc7pylkAdlen\nDJSvVquiWq2KEydOWO3FdEJTZtSq6ySFYjwet5W5oePChQtie3u7y9VKCy/zGO6QP0oWFha6rNZe\nPzMMIwFY4LHAI/CvQn/08iXbTyZqP/QiGE2COsibi5rs4OX8TkJfzi2ZTBoFkc7FWywWRbPZtD22\nvLwstra2RLFYFIeHh6LRaHQl3+jqBeqGl5g4WgJFCH1MqBSai4uLIplMilQqJXK5nKhWq7Y4P2rB\n1A01blAO7kYxmqF7vzr1Mg76x+44/KBkggVggccCj8C/Cv3Ry5fsMDNRezmvF4Kqxec1W7mXuUkr\nFnU/rq6udgk7OqiVrFQqdc1tf3/fstAtLS2JVqvVdT7d8GIVO3v2rG09T506Zc399OnTljVnb29P\nK97i8bgn1yyP8RwyblLNjh7WD23+cT99ACzwWOARxs0FOg4E/cu230zUXuczDPHei3VyUNnKcv3k\nudbX17syVtfX121iiWa30iQL6ZZVBRTtKtFud3fOiMViIpFIuBYMjkajYnl52VauRd3GKWtVtcZx\nvbvJGLQItxTwaps4t89EUN9P/ON++gBY4LHAG1PGxWUQ9C/bfkV0r/MZtHj301psmNnK9LrV2L1m\ns2kVCD579qxotVq29lxybseOHdPeoFWXarvdtkSiF6tdPB63WRjL5bKx1p5pxGIxS3hGo1ERCoU4\naWJMhozBpI9J8S17/voNQVAJ6vuJf9xPHwALPBZ4Y8q4uAzUX7ajFp7j+kvbqaSDyiBuJl5eF/W8\ndM4rKytdVjhpoaOWO2l1UVtCyfOXSiWRy+U8lTyhIxKJiK2trZ6tbzS5g8d4DLWd3dmzZ8Xe3p6t\ngHe/jOv3ATN6ABZ4LPDGlHH54nISBaMQnkGIo0GIVKeSDr3iZ55Orws9zh133GHVx9MVN6ZiTlro\nZImTpaUlK9lCFXc6N6zXYsOhUEgsLy87buNklYvFYlx4eIxGKBSyFZ4ulUpWdxPd+9T0Pu/lRwvD\nSAAWeCzwxpRx/eIaF+HZD4MQqbJPq5Nlop9+sm7zNL0uqviiMXelUqkr3kkmS2xsbFhZqWopE6d5\n0pFIJDyLgkF3nuAxvHH+/Hnj+7FcLluv99bWlmOi0ah/TDKTDcACjwXeBKNrBeVVPPRqxRpX4emH\nQYhULzcjvzcsP/NUBaauFEo2m7UsZbJtma7gsfxbJ9yKxaIQovP+mZ+fF5FIxBJnVDwuLS15dtMu\nLi4a4/x4TN6oVqu29xH9rtHVQzQlVUzDj0lmdAAs8FjgTTD0BkxjXbyIBzWTc5a+QJ1Eqk74ehHD\nXm5GvfaTpeJdJ+RVK52uF2skEhGVSkUcHh6Kcrks9vb2XK9T13s2Go12tZECOta6vb09T65SnfCj\n9efC4bBIp9Ns1ZvgUalUtGEdaoa0DGnoN9mCYVQAFngs8CYYKhhoWygvpUXUm/ekuUAGleyhs7LR\nxwqFgqMY85tc4RSTlEwmjVmIpvlFo1Fj1wjTPvIxevOt1+vijjvuENFotCv+rVwu294/0hqoij66\nn7QcyuxJJ3HgVlZFHRx/N/qhq0EoPyv0u4mWQQkyXpVhVAAWeCzwJhgqGJwEhu5mTjMmvYpCp8eH\nzaDic3RZw/LmRUt/RKNRkc/n+75B6ax6ppi2aDRqPUe3V8W6Kgql61S3D32M3qRrtZpRaF29elW0\n221RrVZFqVSyrIFqBqy01C0sLIhKpWKVZvFbCoXHeI+NjQ3RarVsmcz0s1Kv141hAAwzKAAWeCzw\nZgAZ2JxKpSxB4tQiS4hua45kXAKfBxWf02w2bWUc1FIigL2wbrlc7ut8upudzjUqx+rqaleZCSrW\n1ZZh6XRam/mqnnd/f9+qiXf69GnRbreNJUsikYiViata7qg17fjx47a4vEajoS1irBu61lU8xnPI\nxJu9vT0Ri8VEoVDQ/hBRGZcfi8x0AugFXhgMM0Wsrq4CAF566SU89NBDAIBr167hySefxHPPPWc9\nRnn11Vet/3c+Kx2SySQAYHNzExcvXhzktB25dOkSGo0GPvnJTyKTyQR23GeeeQbXr1/H448/joOD\nA9v1fvazn0Wj0UA2mwXQWYtPf/rTAICDgwPcdtttWF5exvnz53Hjxg1P58tkMshkMqjX6zh+/Dju\nv/9+3Lx5E/V6HeGw/asolUqhWCza5ieP8eUvfxmNRgP33XcfAGBjYwO1Wg2tVgu/+Zu/ieeffx4P\nPvgg0uk0otEoVlZW8N73vtdau2vXrllzvuOOO5DJZPBnf/ZnSCaTiEQi1hwSiQSSySRefPFFXL9+\nHW95y1vwxS9+EQCwuLiIdDoNAFhfX8eJEyfw+uuvW/u+973vtb2vJOp1AsDNmzc9rR8zemKxGADg\nb//2b3Hz5k1861vfQiaTcf18fuITn8ATTzyBy5cv48d//MeHOWVmltGpvlkenSVhxhmnX8M6a5eb\nBUzGzayvr9sy4XZ3d0WtVpu4X9xerQXquuiyAWVBX2r51NWU8zoXncuy0WhokxHUdmIqbnF+dITD\nYWsephhOdd9KpWLNS20RJkcsFhO7u7tW/Tw54vG4LZlCHuPw8JATKiZ0SGsvDWWQ3xluqCEBDBMk\ngN6CN3JBNW7jaKGYMcbJdaq76bvFwYxbgWNKL64dXYcG3TF3d3etoqzq81SEqMegLsV77rnHcV7q\nWkpRKWPepMi6/fbbu26o1WrVU/zSqVOnRDqdFnNzc8ZYOiogTceVc6Nirlqt2tqK9dv7tVAoiFQq\nNTRRwl0v+h/hcFhks1ltKIPaws6E+iOSYYIEYIHHAm9KCDomzVQyYxxqUvUiNnUdGrweU9epIZfL\n2QQmFX/xeLwnK6FaLkI9p+lGqNZD9BLnVigUbFmuJgtKu922ibtUKmVZbI4dOyZisZhWQJp60dKY\nPDr8FEXmMfyhy5KVg/5I8fP94CfZguP1GL8AAQo8ABsAfgHAHwD4DIAvA/jLo/9fAvBzAM72cuxR\nj6OFYsYYv5lpbl+YquAxFS4dxZdtLzcT2m5Ll1TidEzVTUkTCaQYVIWLSXg6Jbeo6yrdmeFwWJw/\nf1679qr4dLKmFYtFrds3lUo5FsqmQlAWOu4nE1Z13Tq1IeMxvOFUXuf8+fOiVqtZIQJyyL7Lbt8/\n/X5njJMHgZkMgD4FHoAogJ8E8FUAfwfgjwD8CoB/BuC/B/BTAN4L4H8H8B8BvATgLwD8OICQ1/OM\nehwtFDOh6L5c3b4wdZm3kmF82XopAOznlz8VQbo5Ox3TlNVqKm3i5HJyqntHrSRra2tiaWmpa1u6\n/9ramu26pMtM/i0zGoGOsN3b27POobpcneZFr/nq1atCiFvvj16GKhLUwfF4oxlO9QSXl5fFAw88\n0HMdu36/M4LwIIz6hykzXIA+BB6AuwD8JwAfAvBWAGEP+0QB/CCARwE8BeDNXs416nG0UMwY4/Tl\npSt54vaFaeoP6WXfIAhKRKoCpZc5y9Ip9DiqG7bdbot6vW5LQJFxcLRenpe6d5ubm7b1D4fDIpVK\niXw+b72W6XS6y+JSqVTE3t6eiMfjVs08uo0Ue/RmHg6HRS6X05a10Ll65+bmRLvdts3PNPqx8rmJ\nvHK5rLX8hUIhLnw8wFGtVq22eKVSSWxvb3sSTP1+ZwRRO4+tgLMF0KPAQ0ek/QcAJ9y2dTjGKQB/\nAmCz12P4PN9xAL+NjrB8DsB3ATwL4El0rI0Jh30DWnJmUDglEVBrzfnz54UQ+i9MKkic6lgNo1Bp\nUCJSHmdubk5Eo1GRy+W0Vged61P+rRMz0lVp2l8IewydrJd38uTJrnnIOW5sbFjFgKWlLRKJ2F4/\nmiCgE2BUxAG3YtvS6bSj4CoWi12vqSlLttFouFrwcrmcVRdNnl+6nINwyWYyGd8dL+SgllEe5iFD\nA+jrVSqVjFnfTgT5ndGrJW6c4oiZwQP0IPDQscL9IoCo03ZeBoAEgH/e73E8nmsHwA10XMW/DeB/\nAfA7AJ4B8AY6wm/OsG9AS84MCqckAvUL2gS9YZZKpaFUmzd9WQd1Q5DHoVmauuLE6q97+rcUUnId\nE4mEJ7c1jaE7PDwUQgjbTXFlZUV7rSYhlkwmbcK71WrZBJ3qoqVzBjrC33Qzl8Vq5ethEnCJRELs\n7u52CUndoCVRotGo1a5s1INdwN5HqVSyvY7b29vWe0x+pnoVTL0KtV4tcdxBY7YAerTgTeIAEDM8\nHgXwp+iIvB8zbNPXQjODR5bpiEQilpiQSKsPFRo6pBtS9hYdBsNym+jEFkX9dU//ltmt9MZ31113\niXK5bLmodHXkqHtUXhs9Rjwe185ViivpalxcXLSSMtRkF2rR297eFq1WSxvjJuelu4kvLS2J22+/\n3ZdFzE0kbW5uehJSJishj+GOu+++W2udq1arXaEAsvWYmvXtl14/+2yJY7wAzJDAcxoA/gk6Au/n\nDc/3sczMMHCyUOmEho5WqyXK5fJQG4AP68vabQ3UX/e6rGGnG2StVjO2HKPXRvfZ2dnRzvXYsWNd\nx9fNeX5+vms7WcNPWh2Xl5dFLpez6pXRbal1z1S+RDfi8bgl3tTWaMAtS2KvLlTOqh3OCIfDYmdn\nxxY32m63LetsNpsV29vbNguefKxcLouVlRVbLTy/9PrZZ0sc4wWgR4EH4BiA1QDGCQDzbucb5AAQ\nAfDHAL4H4D7DNkGvPRMwTtY33RfpuGSUOX1ZBznHfoSkqa6cWphYnbuMf8tkMtZrQuO/TLXn1Jpj\nukxmIYRWCNVqNXHq1CmRSqVEPB63lUVZXV21bStF3fr6eleHCcBcEFgVg6akBt0xAW8JFKMWP7Mw\nLly4IObn50UkErHFhMrPpC72VFdmB+jN+t5ut8Xa2prnRA2G8QPQu8D7dXSyZ4MY73A7X5ADQA7A\n+wC8H51YvK8CeBHATznsM4DlZ4LEyfoms97oL20398ioBaBa361f920/v/pVwfWmN71J1Go1sbe3\nZ1tXumaqFU4mZVBRJkuOqEh3Ly0WrLt+9WabTqdFu902Ci66nnQe9Xq9K0v4zjvv1Lqm/QzTPJyK\n5obD4b7ctvfcc48va+QsD/X9o1r+5Y8iGmsn35v0vbSxsTF0Ny3DuAH0KPAmeQC4Ex137PeO/n0D\nwL8FcIfDPn0uNTNo0um0iEQiIhaLdcWY6b5E3Sxao/7ipeeXxVTdGIQoPXXqlCWG7rzzTlsbM6fE\nDNVKJRMq6GNzc3Pac0pBLpMSTK/R3t6e7Xjb29vGODt5PqAj7qTIksdWRVexWLQsK35ae8nrXl9f\nN7panQQYx+QFO5zWk8ZqRiIRsbW1ZcsilwW5Dw8PrR9HtOtKrVbTtvVT8dsnm2GCAJgwgQeghVui\nzMv4sMOxQuiUTvkZdLJr/w7A3YZtA1x2ZhDQm2kikbA9Ry0pjz32mBBCb9WjX8QyvisajTomZgwK\n+cXvp5iqrt5fv1BLxfz8vO1GpRaDpjcrXbC6EKLrBquD7huPx431xkzlKnTCKhwOi3e84x2290Iy\nmbSOq4vnM41EImEJuUwmY3tuZ2dHNBoN0Ww2uR7dmI97773Xqq1Is6JrtVqgP/CcjsXxdMygAAIS\neOjEsWmzVIMcAB4H8CUf45c8HvdH0RGEjxieFw8//LA1rly5EtiLwASDvOGGQqEuQUa/1MPhsBBC\n/6VLH6NWFl1ZkUHTyxc/tUKZ4ttMmKwMNLZRvQmqxaDpnGmw+unTp7tq4+lKrUhMnTPUG6S63V13\n3SXa7bZW+MnX3uvNX4rEzc3NLsGodsGg7xUpZHspchwOh41xe36GqQ8uD/N7in52VldXrb+9uF/d\nLOdspWOGwZUrV2w6BehD4AFYRCcWT9aRewMdS9gT6MS43ePlOOMwAKSP5v9lw/NBrD8zQA4PD0Ui\nkdBa2+iXubTg6b506WPSPTjMkin9IuODnFqFmTBZGWRso+oOPX/+vOuNS2cl9ZKp3G63tT1l1fM0\nm03b89IiqD7e6yiXy12CUXbVkH/X63XbPpFIROzu7nbV45NjY2Ojqy6hl+Ens3ZlZcWXW3nah/ws\nr6+vW/+XIl2+p+TrtbGxYfvhsrq66hr24GbtYysdMwqA/gTeowB+FkADnX60/xuAzwB4HbcE36cA\n/JdejjfKAeDuo/k+ZXg+mBVnBobTr+h777236wtYJz7oY4eHh0MvmdIv/dxIdL13nbpZrKysuJ5P\nd+PTvU66x6h17p577rGVspCoblWZyGHK+nUa99xzj816Ri03aoyezA4Gul20cpiKKstC2yYBGMSQ\nNSF5dN7Ph4eHYm1tTSQSCUsoP/bYY8ayQPSHi1PLQkmvFrpRJ3Ix0w3Qn8DTuj/RcaM+AOBfA/jP\n6Ain3wEQ93LcQQ0AG9D0y0XHEvnJo3n+gmHfYFacGRjUwiHbkUnc+p/qXLSzltGmu5HpulnQv51u\nUPv7+5YoohZFXZygbt3b7bY2iJ2eU3W5SmHqlKVKx2OPPWY7R7vdFidOnLDVzROik2gi4+mi0ai2\n9h0dZ86cMbqKK5WKdS5d9m4Qg+vo2YeaAAR0h13QNoU0qcKLeOv1h9Usf98wgwfoT+D9DoBjmscv\nk/9HAbwTHUvekxihyAPwcQDPH/37rwH8KwCXALTREXd/bJrf0UIxYwz98lazM3XWOt0Xt7RipdPp\nibLcSfqxCLi5rFutli1p4PDw0PEGRa1ruVzOOqYuTtDtJmqyJFKBJ13vQgjPFqzt7e2uc+kEqN+C\nxdK6aXIVNxoNsb+/7yuxw+tYWlpi9ywZkUhEVCoVm8V0fn5e7O3tWe+pZrNpE8VU/JnEWxDWN47N\nYwYJ0J/AexOAzwF4N0hfWhCBp2z/EwB+zcuxBzEAVAF8GMBX0IkVfA3A3wK4DEOLMrJvQEvODAr6\npa7euE0WIvWLm9ZuMyUpjLNbpR+LgLoetEyEFLvU2lSr1RxvUOqNVs5HFyfox9UrBdjm5qY4d+6c\n9npN8W06yxZlf3/fljBRq9W6HvOaqNFoNLQCTq6Vmxu5Hyuc3/i+WRi1Wk1Uq1UxPz8vtra2bD80\n6OsbiUQ8/bgLwvrGsXnMIDn6futN4Am7yPtrdAoH3w2DwDva/gNejz1OQ70RMOMH/TJXy294/aVM\nv/RNZUbG2a0SpEVAd51U3Jw/f97xBqXeYOVNs9lsinw+39XeyUk40/hA6j7TxQ0KYc/8pXNQLXH3\n33+/7TxUdIXDYdFqtXrKhpXxe+rjsVjMtxu5l+GlB+60DinWqLWZZnGrryd1t8sMfPlepL2WuX4d\nM2kAfQq8zjEQB/AQgOvouDpfAfDvAPw0gLcBuAvASQD/AMAn/Bx7XMbRQjFjDP3SVgWeSVSo0Ey6\nZrOpFRzj/MXu1SLgxQrp1kc2Go067q9aoKRINNXqc0rIoIkMVFTr4gb39/fF1taWmJubE4eHh10C\ngN74z507Zytsq865Xq8bS7bIbEzdkNZf3XNynpwIEewIh8MikUho4yOly5y+r9fX18Xq6qol+mk7\nPVN9xV4+awwzKoAABJ64JYIS6Lhr/090XKBq0eFPA7irl2OPehwtFDPG0Bu3mmTh1epGv7RN+4zz\nF7tX97GX9dBdp5NgUaFCbnFx0bp50n13dnas7d0SYdTnhBC2nq2xWExkMhmbGFQ7RqRSKW0XiUaj\noXWZysxd9XG3VmPyh4T6XCqVsubPbtRgxZ3bNjQ0Q/Z/NdWN1LUoc/o8jXPYBjO7AAEKPGEXRBEA\nJ4Jq4qcAACAASURBVAB8PzrZq7l+jznKcbRQzBhD3VKy2KykF6ub0z6mL/RRf9E7CTc6N2mp9JLU\nQJ9Xg/fp/uo+tA0UvYHSx2QyjBrvJ48lXa0bGxvaMim6ZvCmm34kEhGHh4dd3SWi0ajY3d3tcmvS\nGEH12FtbWwLoJI/kcjltxwpdD1v6vpTXNj8/P1B3rW6cPXt25KLMy6hWq9qagbLo9vnz50WtVrPe\nz+p28j2guvB1blpduaRKpeKpFdk4h20ws8uRbgle4E3bOFooZoyh4kMVeL1Y3Zz2MX2hj/qL3kmU\n0rnV63Xf9euEELY6ccVi0ba/uo8qWnStymQyjLov/VsWG9ahs8YtLCyIarWqdaHWajVP7cMKhYKj\n5XJubk40Gg2jwJTrr4qNra0tK65LJmBks9me4vychptFa5Ji9GKxmCWo1ZHL5US5XBZbW1tWz1ia\nhEP303VA2djYsL1Pei2XNM5hG8zsAvQo8AAcA7AawDgBYN7tfKMeRws1NEZtCZpEnCx4QeDFAhbk\nF30v7wGnWEM/pUhM10fFkSwqrB5fWkNUl6fOgieP4dTT1unaTaJgbW3NisNTXfdU/MgfBZubm13H\noOuuPvd93/d9Ngsjjd2TQs6p3ZpuqPF//fSxPX/+vEgmk1oB7DaG0T93aWnJV/2/RCJhvZ+csouL\nxaLY29uzPgOm97GpqLFTCSUnxjlsg5ld0IfA+3UAHwpovMPtfKMeGLLAG7UlaBKhsVdqiZMgBLMX\nC1iQX/S9vAec9vFTiqRWq2m3pYIhm83a1rPdbtt61VJrXzQadYzBc+pp64TuJn/27Flbpwk6SqWS\nNa9wOOxq6ZJJIKrooYH88Xh8rCxi6XRaNJvNsZqTOtQ+xnSoax0KhcSFCxcsF77cb2lpSQDdgi+X\nyxk/p7rvAafyQLRWHos3ZtIAehR4szaOFmposMnfP6VSSQDd8TZCBCOYh/2aBB036IbM6pSxajp0\ndd0KhYJ1A6TnVwWGXHf6mLTgmebtJszlzX5ubk7E43GrdItOOMzPz4tWq2UTnm5DWoJNViMna9fm\n5qbWgnbPPfd0xSdSwdLv2N7ettVz1I2dnR3jNQ06+SMajYpCoWCtTTqd1l57NBq1MqGpNTifz4t6\nvS5arZbtB4Uccm3dwhRMrfPoNtTKyD+0mUmDBd6YCjw2+fuH3jTVGnY6AeG1J6pk2K+J0/lM8+xn\njvTGrrZxkqiijVqyZGaiTJRQa85dvXpVCGG3AkoBZXItuwnzdrutvQlT4UVbjFUqFV8FhOX8dJa+\nbDZrFHhzc3Oi1WppY8dMmbnq8FpQuZexsrIyNhY+U7s2+iNDjecsFoui2Wx2PZ5Op8Xe3l5X1xqJ\nl5aFdBu3ZCSGGWdY4I2pwGP8Yyp5IIRe+OjEgxdL3zjER5rm2c/caHFgUyV/ejOVgkzeAFU3K20N\nJUUPnbvs1+p0PdKqGI1GjVbFhYUFAdgtj17Fy2/91m+JcDgsTp8+rX1evo+oKCwUCtZ7yenYxWLR\nsirLEYvFrGt2io+LRCIDz6xV4wZN2/USx+dnpNNpsb293TUH+j5Q30vydaB/h0Ihce7cOdu6eQlT\nUEUf3YZ/aDOTTE8CD50SKO922sbrABAC8DNBHGuQAyzwxh4nF6NO+PQaXD0O8ZGmDg79zG1vb0/E\n43FRqVSM164KGKdgdbUPaz6fF0Lo+wKbegB7sSrqtjH1Yl1YWLAJllKpJIQQ2oQI+j7SWR3Vx3VD\nnQd9X3rJnHVLeNAJWa8WShqLqLsOKZgGKe7ooNms2Wy2yzKtutbl2pjEqS5UQ4dJxI3DDzmG6Yee\nBF5nP1wA8GsAEm7bOhwjC+APAZzv9RjDGizwxh96s5M3bolO+Oi+2Oljpi/4cYiPNPXM7WduXsSh\nSegI0b2eqoB529veZjyPriOFEN6sirptnFyn9O/77rvPmrt08dN9pWCkIkK6mum13HnnnaJUKnWV\n6aDvSZpoQgP5ncThoNy0qVTKWHpEitKlpSVf8YrqKBaLnjNyl5eXrbUyxYC6WTRlSIC06Mo5BJFU\nxfF3zCTSs8Dr7IsKgKcA/AyArJd9jvYrAfhXAD4P4Pu97jfKwQJv/HESH16Fz6lTp0Q6nRb5fN5Y\nQ6uX2LigMfXM7cel5Md6Sd2rOvb397VxU0LorY+mc7daLVEulx0tMTrLo0kEvP3tb+96TL5eMnZL\nCg0qGKnQSiQS1rmlNbJUKoljx46JeDwu0um0WFlZEa1Wq8vCNjc31xXIbxr0nEEnPkSjUVu2qSq2\n+j1+JpPpsuCaxvz8fNf1yRg7+lnSuWnlKJVKotVqiUaj0eUWz+fzPX0ex+GHHMP0Q18Cr7M/UgB+\nCcALAP4MwG8A2AfQAHAewI8A+G8B/I8AfhvAX6DTs/Z9AJJezzPqwQJv/JHWENoWS+K1Fy1NDJDW\nCz9f8MP61U975vrJOnXCizj0KiB1AkaKbp21rldhur+/b3vN5PFMrlNVcNHtaExXKBSyCUZqidJZ\n8HSjVqvZSvfQOVLxINfDydqVzWatHxx33nmn0QUdxPCSzevkBo5Go2Jvb0/rPtbN2yQ06Th+/Lgt\niYqePxaLie3tbes9T99fdDu/n0eOv2MmHfQr8MQtAbQA4L8B8G8A/CcA3wLwGoBXAfxnAJ8B8CsA\ndgHM+T3+qAcLvPHH5OYTwh4kr/appVB33+Hhoe8v+GH96tfFsQlh7/+qJpoME7kOUrRQt5sp3q4X\n6PWm0+ku9/Dp06eNIg641XKMZkzSIa2jNMuTrquM+9SNer2uPebW1pbY3d21smmbzaYnV2gkEhHR\naFQsLy9b781+ihInk8m+9i+VSloBe/z48a4MahwJx8PDQ5ugi0ajjm5qkzCUYo8KX/m5l+892iFE\nFt9WrYIMM80EJvCmfbDAG3+cxBW9OVAXm4oXl6ATw/rVb7IUmly3vdKrRVCugy6hwRQ/2MucqMCg\nbnn6Osi1WlhY6CqTUiqVRKPREM1mU2xvb3cJHjk/07qaXKfSsnrHHXcYRcva2pqoVCpGa5xTZ4tk\nMunJzRvU0FlEq9VqlxteV+OP1k5sNBqWwDeJN3UkEgnbtW5sbFjuWF1yj3zt5WtKLYnDrmvn9/PD\niR1MkLDAY4E3NTiJK/klHwqFLEvSJH+ZmsSsyXUrRG/XqxZ99btWapswIZx7Bvudk+xYsbS0ZBTl\nzWbT6LJ97LHHuo4pRyqVsq5VrqvalF5Xv42+JqqbUq5HOp02Jjl4Gf3G5PkpfbK8vCyKxWLXPjoL\npS4pRK6BXBdqac9ms11WwKtXr9osrdVqVbTbbVGr1US9XnesT0nf42qnjFHUtfMbssGJHUyQDFXg\nAXgTgP8KwB46rtqTgzjPgObe10Izo+XChQsiFAqJ7e1t19prk4BJzDqJXLfrdSolQwsae60PuL+/\nb7vBSoFHb+i9WBnpnKjQMc2LWsJUC5205spjyvizTCZjE4yqSJTnkhZfVeRInFygUhx6cZOGw2HP\ndfEikYgtk1Q3HnvsMe15vZZYkUk27XbbEnXhcNj2PlHnL+PkZBJENBoVFy5csLlzt7a2RLPZtGXy\nOrULc+pCIV2/Gxsbljt82HF1fkM2OLGDCZKhCDwAbwbwWQDfBvBXAK4BeBbAdwF8DsAdQZ5vEIMF\n3mSji00z1ZKbVtxuHk6lZKTlI5/P2wLanfZXrWLSRetkZfSC2r3C7TV0EirSmiuvk7r+TNdGy51I\nqFiiVj6ngsvFYrHLjU2HFD6xWExcuHDB9tzS0pKo1+vaY7ZaLdv66IRcP+VP5DFzuZzIZrO2pAyd\nuzUUCtlEHI3B07UaU9eM/q2KeKcuFPK1HGXcnV9ByYkdTJAMS+D9DoBNACHl8SiAHwbwoSDPN4jB\nAm/8cXJB6tyCTkkZbsebRNxuHk7t3GRSgNOaqckT1LKVSCQsURTETUzOlVqqTK8hFRq0BMjy8rLn\nUjeqlU7Gz8lt3vGOd3QJlUajYbNWRqNR6+9kMmlZplThRS118Xhc7O7udrkbV1ZWhBDmjh1LS0ti\nZWVFVKtV32VPeu1ckUqltOtAh+omldY8L1bM5eXlrh8XTl0oJJNsqWeYfhiWwPsxl+ebQZ5vEIMF\n3vjj9EVOb7TSgteLRWua8XJzdFozVfzRv/P5fJdo7Ec4q5ZFL6/h8vJyV7yX7nV1K8SczWa7rlUV\nauvr67babdLlS5N41OxR6faUYpK6S1XLWDwe78ogVYcs0izPub6+bhNxtEuFn/68TkNnkQM6QlzW\nBqTvM1W4Ap0fCNVqtUu8UsufqbwOfW9Jy520ZrLbk5k1hiXwfh3AMcNzxwH8TpDnG8RggTf+OIkP\neaOVN14herNozRpeLCSmbdX2X1JYBymcvb6GOqGkq5dI98nn82JlZUVks1lLXEQiEcuiCXQsbqlU\nyhIjmUzGSgqg89O5CamlrlQqiZMnT4p0Ou3bgmay4hUKBZHNZi13sWqFPH/+vFhdXe2y8MmYOi/1\n8OigFjnTUF9vudbShZvNZi3LJp3XxsaGUcybEiuom7pcLnuuFxmU5X7aPADM5DEsgbcJoIVOkeMn\nAFwG8B8B/DmAvwHw94I83yAGC7zxx+lm34tbkONh/K2Bum273ba53qRrXBWC/dwI3fZV4+BUMUOz\neJ3c0ao4rNfrotFodGWzZjIZbTFtnaiVYkhmAKu142irsFQqZUxg8DLy+XyX9TKRSGjr1SUSCZHP\n523lTZxGIpGwRC1dMzXOj/64ksgC5JVKxUqEoGtVKpWszFnTe1GXWOGWMev0IyOoHyCz5gFgxo+h\nCLzOeTCHTmeLfQD/FMD/AOBtAKJBn2sQgwUeM+nQNmy9JpX4FWO62Ef1Rt3PjdDLvjSpQy3rQXsW\nm9zRUhjSzE65fqZkBTmXU6dO2QQm3Vd180qLk9f+s5lMxuhapcLTr/vV6/kXFhaspA4JFe+q+ziX\ny3W9b6iI7PUHgC6xwq+12etzfmAPADNqhibwJn2wwBt/2CXiDBUaVNj4wa8Yo+c01bzr50ZoyoSm\nYvbChQtWmzraH3Z+ft4oTqRAqNfrWmueLO+ii4Gjlipd8oBcN3XusqeuqRwKFWqJREK0221tm6+t\nrS3rdcpkMtb/e02ecJpHNBoVc3NzYmtrSzzwwAO2zFV6HaYyO7pC2E4/AIrFoq/SQCaCtvb7PQfD\nDIOxEHgAfnqY5+txjj0vMjMcnMQHiz/7zVQntnQB6up6ObUZ062xLrlFxelGqLM60vOobaok1PVI\nRVa9Xjd2K5HuwlKpZMzWVK9FPk6tXuvr69a+qjg6e/asdUynRA2dZVAK02QyKVqtltjf3zcmWeRy\nOVGr1USz2bSKQfc6ZKbymTNnxOrqqrY9mfoaqG5Wk7tUusxVsU1R177RaPDn2QCvC0MZisBDJ5Hi\nhGGsAviDIM83iDFsgccfVP841bXjeJhba0BFhu55wJ4NSdeLtqFSBZtujXXJLX7e21SoyaxQU8wV\nPRbtKUyP4dQaTc2EBW5179jb27ME8unTp7uSKExiRxVD9PxSuKiJGtLVWK/XLaG3tLQkrl69agnT\nU6dOubpe19bWHOvwJZNJsby8LEKhkE0Eqxm71Wq1q+2bbpw+fdqYuWoS8V5aA7bb7a7XmT/Penhd\nGMqwBN4fAnjDYXwvyPMNYgxb4PEH1T/UUqFaqJxqvE2iiO5l7n6yhk0WF6c2Y7o1bjabolAo2BIP\ndHFXpuuiQk2KAFPMFaXVaolkMim2trYsN6YuyJ8ifyBIIUfdijQjc2Vlpes4qtiRRZz39vasx+QP\nD5rMUa/XbfFy0vUqMfXtVZMjVFfwmTNntCVI6NDVx5N9XuVnSf2xJNde1ypNFdOyhp+XOLr9/X1R\nLBZtWb8U9b3L8W16eF0YyrAE3hKAhx2e/+0gzzeIMWyBxx9U/9CbXLFYtD2nEzeTLKIHMXfpopSx\najrh5BRT53WNqSiQBXtN2+ssPF5jm+ixZJkMJ6FBBVG5XLb1n1Vj3dQ1p5ZNKsbUWndra2s2EUST\nK6iIldA4NtrWTdcDlwqrvb29rli+hYUF6xrX19e7Ek5isZglrkwFreXay/eHFPzhcNhWV09t66a+\nrk4txug5Ta8Xx7fp4XVhKEMReJ3z4B86PPdg0OcbwPx7X+Ue4A+qf6jLys0yJMRki+hBzN2LaPSS\nNOE2T3ojV4W4un0/mb+0np2MqXPqxKFuv7u7axN2Ms5OFwKgFkKW10pFVjqd1m5HrY2qkKEZwDQu\n8vDw0GZNVRMoTAJweXnZynxtt9va+Lx6ve75/UVjAKWYzWaz1ntJ7k/DJ26//Xbj+aQQlUJT956c\nZMs7wwyToQm8SR/DFniMf5xizHQ3ikkW0b3M3U+5CdNxnQSeevz9/X2xvb3dVUpDih5dYL16XboY\nPK/XJI9FEyCkW1JXgkNapagIo7FfpoQOIezuXdnfVohbte4ikYg4PDy01jibzdqu3SSuqYubzmtt\nba1LPMq4ST8Fh1XLIwCrHp2XPq7yehYXF0WlUhEnTpwQ29vbolQqieXlZUuo6c6jnq9Wq3V1q9C9\nJ3u1XrMwZGaNwAUegH8E4J0u25wE8F8DKPR6nmEPFnjjj5PocUrAmBXcboxeRKNTVqx6fNP5dG5X\n083XyX3p5ZqEEDYxMTc351qDzxTjp7MISpFIhS+t96YmpdA1ptdMYx6pqDKJTZ1gCoVC2oLDcsi4\nOXoO1fK3tLRkdZJQz18oFLSuUpqQo2tV1mg0jKVfFhcXbcfTlapZW1uz1puWX5Fxjm7xe37eKwwz\nTQxC4F0B8CMOzz8I4LvodLH4fwEs93quYQ4WeJMNvSHSWCaVaf6V72ah83LtuqxY0/H9uJH9iEE/\n1yTELatjKBQSh4eHRmGlZsaqx5PWNDWGzpRZqgob9X1H96vVatY5adyefN/m83lRKBRELBYTxWLR\nmEGbTCZFpVLpKrMSj8dFxdAtQu4n/0/du9KFS89HXaXFYtESibSQtFwjua7y8YWFBZtF1W8cJ52b\nrvWdk3ib5JAMhumFQQi8XwbwVgC/D+AjAN5KngsB+CaAnz36++8D+Be9nmuYgwXeZENvtF5LZUzb\nr3w3C52Xa3c6hvqcHzdyrzdfL+e4cOGCCIVCYnt7u0vcyJZjbufc39/vylw19dwFbsXX0Rg6N0Es\noe9VWaLElBGrdp0wWcrkkIWC1TnTEi1U9KoWOWr9U88lxePa2polRiuVimWJU4+lWxMd1HIqLch0\nX3otaqwiJ2Yws8wgBN5PAngdwHMAbgB4GcBbjp4rolMW5U1k+9/t9Vz9DgAfxK1SLbe7bBvMijMj\nwcnyROlVaEyD5W9YFg7dWg3y5qsK116uk1rVUqmU1R9VxhmurKxY1iUaX+dHEEt0opCKmKWlJes8\nh4eHtvNKASS3MYm8VqvVleErM41pNjV1ycuyJzqxSedqsqjJa1hfXxf1et01vk9dJ3pe+iNNxu/J\n12Saf6QxjB8GIfA+CuAO8vfbAfza0f/feiSm4uT53+z1XP0MAO88mstLAL7HAm+68SogehUa03BT\nGZaFY9hrpcZfmq7TSaSrVjXdtdTrdVu8mNd1VM+rzo+KyGq1aosLpIksNAmkWq12CThVdDWbTcty\nZxJo0kVMawLqjpvJZKz4N9WiZhLx9Di1Wk27/m7udB3simWYDoMQeL+ieex/Pfq3AuAN5bnf6PVc\nfcyxcGRhvIROzCBb8Ji+mJWbit+yJb2Up/FjDfWyrdf4SyfhaXK1qt0o1PpvXuboJnTovNREB/qc\nLJtCExTksdfX16110HWDiEajXQItGo2KVColVlZWrG1ltqxJOEqBu7KyIo4fP+4odmmZl+PHj3fF\nNqrXR+MUnWBXLMN0GITA+/cAlsjfdwP41aP///CRmAqR5z/U67n6mOPHADwLIAvgUyzwZpMg3aqz\nclOh2aKyObwTqngRwl8s4NramuNr5MUa6DX+0inT2pT9ure3JwqFQlcsnJ+yHnR+iUTC1iWi0WhY\n89IlOqixdNLNKoToKlOjrrsudlCWZFHbldXrdVsMnXQLU8vexsaGzY2qE7sU6v6lXTVoHcFB/nCa\nhrAKhnFiEALvJwB8G8D/A+BpAK8C+HkAZwD8EYDrAHaPtv0vMGQLHoB3Hwm6dx79zQJvRpkGt+qw\noTdtt0LH+/v7NlHiZD2j0Ju6U2FidVuvmb+mG7vbuSSqRY0KoWQyaZUq8TpHtaMEFTrNZrOrLZja\nCk52cHEqcWIqi0MFOBVrVMhnMhmbZW9xcVEUi0WRy+VEpVIR5XJZ5HI5sbu7a6v7pxNsEpq0cvr0\naWsN1PqAQfxwMr3e/Plnpp3ABV7nmPhHAD4P4P8C8DYAPwjg5wDsAcgD+DKAjwP4KwBr/ZzL57xW\nAbwI4N+Sx1jgzSiz4lYNEnlTlMWknawg9AYqRYIX6E3d7TXyIgDUbUwWQilOYrGYtquEvFZpvaIZ\np6dPnxalUknrtnabIxVaUsxls1mxt7dnE1qxWMwSUqaEBloeRZY4SafTRne6TFBYXV21BNfGxoZ1\nXLpvu93WdsigIlctz6IKNokauzjMJBsJf/6ZaWcgAs9tADgB4H8CcM8gz6OcM3wk5r4JIE0eZ4E3\no8yKWzVInMSSqfWX6Sbfy/l6QRWhJguh2m+WXpNaJkW6QuX8vGaEul0nTaBQxRsVe9LVTN2s6+vr\nNrcndf3q+r9S1Fg303XJ80khms/nbcKQnr9UKhnXwqlotLQK0uLG/aytScjx55+ZdgYq8ABsAGgA\n+CEA4QCO18KtsiZexofJvj939NjblWOywGOYHnGygpw8eVJEo1GRy+U8da0IEnoO1VVJy4DQzEz5\nf9rxQSdkdS7Hft19TskounH+/HkhRMdFm8vlxMrKimi1WrZkENUiqQo+iul1VK9LFaJ0bWkyhls5\nIl3pE1PRaGoh7GVtWcgxs8pABB6AdXTi76jYegZApc/jPg7gSz7GLx3t9xZ0umd8UHNMKfDe7HJu\n8fDDD1vjypUrQb8WDDMxSEGyu7trWXxUTH1khxH7RM9BW3ypljFa6FhnRZO4WSP7dffp1qTdbltu\nVrWuXSKREBWl2DAVYO22vl2ZaY5U9PqJH1RFqNdMV9PxVQsh7as7qjaDnIzBTApXrlyx6ZTABd6R\nmPoGgF8D8FMA9gH8AoBHAXwLQ3TLkjnV4d3qVzMcI9AXghk9/MXdO15EmqmP7DBin0z9ZHs9v5sV\nSLYxUwWS1/eYaU4mkaZ2kVB72FKxJF27kUjEWN7G9Hp6iR+cn58XQKerRrFY7HKtSncrdbtKdyzN\n8qXno6+Z1+SXQRHkDxL+zmGGySAE3u8BuNPw3JrOijboAeBeAP8GwEXNePZI2H306O+zhmMEtebM\nmMBZdL3jRSSZ+sgOw2XmdI5ezu92Yza9l7yWfDHNSfaIjUQi4ty5cwKAOHPmjM0Vq+svS615tACy\n6b1OX08vMW90PdTjy6FmGKtz8Lo2o06GCPL8/J3DDJNBCLxfc3l+6IWNXebzKXAM3lTg99dxP1/c\ns/5LPGiR1ut6Dut1cLsxm95LbiVf3OZPEyuKxaLNnSyLCkvLGM3upceSdfSATravfI6e25TcYRIh\nOhc4iCuZulZlyRQ1tpHWHaQiUT3nqGPogjz/qMUqM1sMQuB1dbJQnv+tXo89iMECb3rQFdV1op8v\nbv4lHiy9rmcv+5lElZPYojXgpBtWLXisi2FzK/mimz89Lq0np9Yd1CUk0ELHEtrJI5vNajtkmMqH\nnDx5Utu5RHWBy16wVCgeO3bMOr4sIUM/b1TwqnGS08qoxSozWwxC4H0YQM7wXBHAR3o99iAGOq3K\nuBftFEDjkrwW1e0V/iXuDa+tzXpdz1728+JO1VmR1GxOur2XTE/dzd1N9MnjnjlzxjXGzpSEoMbr\nyR9AXsqH0ESZZDIp5ufnRTQaFdlstqugs9N5dZ9HVSTSPr79lkZhGGYwAm8LwF8C+BkAfx/A30On\nwPH70KlBd3+vxx7lYIE3/pj6hQ4C/iXuDVMmrUqv62nK/nTCzZ2q1mYTomNVk4JFlgChx5HvPd2+\nTriJPifXqXTT0gzbeDxuiTxpCZT1/Wg7NVkw2ZQBLaGJMmqsXSwWc7xOt8+jmphCr48WVGYLOcP0\nRuACr3NMvBOdlmQ0O/VlAA/2c9xRDhZ44w+LruHHBrqdz5RJG9Txe3HRmt4nptps6nmkNYoKFF1d\nOLfiwl7mR/enNft01j7qDlWfi8fjlkBdWFjwvGY0UcZUl8+PxZKivnbUDS5FKVvIGaZ3BiLwOsfF\nIoAfBfBP0en/mjt6fK7fY49isMBjJoFhxwa6nc+USRvU8Xtx0bqJLt0xaUKAvBbd3NR9/bweunmp\nwtJk7VMta1SQ0R6z5XJZKxS9rNn29rblDpbH7EeAqWvVbttboeniCRmG8c7ABJ5pALgyqGMPcrDA\nYyaBQccGOrX9GsT5guhFq+ImunTH1Fn1dIkX6r5e1keuqa7ThJfrp8lF1Ion56IKOpOFUJddqxOa\nUrD3W2rGa0wiwzC90ZfAA/CzAH7Rx/gXAF72cuxxGyzwmEnASfAE4b411VobVGmTQbjdexERun10\niRe9zF91s6rnoPvr1q7dbot6vW47Bs24pSVV1DXXiV01Fs7kHvaLF2tmkK/3rJcyYph+Bd6X0Ymt\n+4bH8dcAvufl2OM2WOAxk04Q7tsgLCyjLjHTi4gw7RPEeshj0KLFJpzWTj535syZrmPQ/WRR4XK5\nLDKZjADsvWN1rl2/LcicrjNId7oTo3qfsbBkxoV+Bd6nAax62Zbs82d+th+XwQKPmXSCECNBWFim\nyQ0XxHr4OYbT2pmsfeVy2cpm3tjY0LY/o2VMTK7dfoWLF2ukSj8ibVTvs1H/gGEYSb8Cr+ZlO2Wf\nf+B3n3EYLPCYSWdcsoxHPY9JtrC4rR29Np2Qo/XvZGcJU2kX9VxOwsVpTU3PeRFC/Yi0Ub3PVf1a\naAAAHYtJREFUpukHDDPZ9CXwZmmwwGOY6YAmJQy6IHaQ+LV4yeuU1js1yUIWF5ZCz83ipAoXk5g0\nuY7V59T+t8ViUWSzWVtNw2GKtKCE/6h/wDCMhAUeCzyGmVh6uSnH43FtMsIgzhUkXoSprkiyU8Yr\nFV/ZbNa2jVvWq05M6qxWJmFICy2riSajcG2ya5WZNkwCLwqGYZgx59q1a3jiiScAAAcHB3jkkUdc\n9+l87w3nXP1ycHCAa9euIZlM4rvf/a71OL0Gus0HPvABPPTQQ5ifn8e73vUuJJNJpNNp41yTySQA\nIJvN4umnn0Ymk7Ge010vPY7cd3NzE3/4h3+I/7+9e4+StK7vPP7+CogZkR5E2NEdGTBghBgURIng\nOk1EV9vooOtogotm0SndmGh0Ha9LltXobgQ9R41Rx/t6HDkjkgDqqFxmBkGJVwQRbRkddUFQlEYD\ni5fw3T+eqqGoqWvX/an365w+NV3P7Vf1dE99+nfduHEjmzZtusc5ADZv3kylUtm9rf6869evZ+XK\nlbvPBfDIRz6STZs2dXw/Nm/evMe1+lH/elpdXyqFZqlvlr+wBk+aOMvp71QbOUqPTbTj6FtVX6t0\n8MEH7zHitXGfZlOdtKuNatec2GnpthNPPDFXrVrVchLrVjWeraacOeWUU/oaRdwvm1ZVNthEa8CT\nhqXfZs1Ox3fzodx4juWuWTzsOQababUubbN96idcbuzf1usAiPrX22nptlZBq9U+/QQpBzBI3TPg\nGfCkoel3QMMgamwGMTnzcss56KlFWu1Tv8RX42vsZu68du9vs1DVTdAaRhib1Fq2cffPlJox4Bnw\npKGpX35r3bp1PR8/yImEl3OObj+4W12jMUANq0aztlbu3NzcHk2mzdbRbSx3fe1fo2ahqpvazJNP\nPjlPOeWUmQg8DtDQJDLgGfCkoak1hzb2G+vWqCcSbtRLX7Zmy4E1Br9+g0Cr49tNU9Ju2/Oe97zc\ne++9O5apVbDstG7trIQdm441iQx4BjxpaCa1Sa1bvXxwNws2ja+/3yDQ6vh25223rd00Ka32W7Vq\nVdsw125wRllN+8+5ysmAZ8CTMnO8/YgmtQ9TLx/c7YJUs7nfBlmeduVstW3Dhg27m9D32WefPP74\n4/cYKVu7J7Wa2FZhrnFEbKvBGZJGx4BnwJsJkxogJsk4V3goQ7Neu5A1ia+vvkwHHnhg25Gy69at\nazqZcTfTrPRSW+nvqTQ4BjwD3kyY1uWpRqnZgIhRfeCWvQ/TJL6++jLVaujajZTttRlyOc2WkxiE\npWllwDPgzYR+R3POgmYDIgY9CrSZbibNnQbdzCk3KeEu855l6nWkbC96+ZmZxCAsTSsDngFvJvQ7\nmnMWNPtAH/Qo0GbKUGuzYcOGnJubm/rXMQiNga6X+zuJQViaVq0C3r2QSuQTn/gE69evZ9u2bQNd\nv7JMXvWqV/HTn/6UU089laWlJaBYR3T9+vVcdNFF91gzdJDrdTY7Z6VSYX5+noWFhd1lGadO5Vlc\nXOS2224DinVdZ3kt09pas1u3bqVSqfT0M7Ny5Uq2bNni76g0TM1S3yx/YQ2eSq6bmpZealg2bNiQ\nq1atygMOOKDlJLqtzjmOWr12TYmdylOr6TzggAMmrpl5Oc3qjcf008xqrZw0HthEa8ArC0fg9WfQ\n/Z/qQ1F9MOrmPo2jL1a7ENepPJMcYpYTlhuPsZlVmj6tAp5NtJo6jU1D6k1jc2y/ak1zAMccc8zu\n5rlu7tOgy1KvVXNru6bEgw46iIMOOqhlWfptWhxmk3Sr19Xumo3HLLeZddKa2iVhDV7jF9bgTTxH\n4E2WW2+9NdetW7fHeqSDvk+91ty2qo0a5zx2gz5/ffP42rVrm64J2+6aje/FcmvlyjCARppW2ERr\nwCsLm4amw6DvU68hYjkBc/Xq1Qnk3NzcUPrYjap5fJjXbGYS/uiy64ZmlQHPgCdNtV5DxHICZqdl\nt9qFiG4CxqBDb+09AfKYY44ZSL/Bbl5H4z6T8EeXtYiaVQY8A57GwFqFwRlFiOgUItuFiH4CxnJ/\nTlo1j/dz3m5eR/2KMZMyofigahH9ndW0MeAZ8DQG1ipMl04hsl2I6CdgLPfnpFMYaXfeVsd28zrq\nV4zpZ0nAQYapQf0B4O+spo0Bz4CnMZiEvklqrpdwUdv35JNPbllb1k/AWO7PSbfz9jU7b/2xhx12\n2O73YteuXR1fR23FmFbNwoMq/zj4O6tpY8Az4GkMJqFvkprrJVwMO4gs9+ekn3n76o/t1PdwUOXt\ntfzj4O+sps1MBTzgUOCuNl8fb3Ns32+2pMnXS7joNYiMqh9XP2Gk/thhBq1274VhSupfq4AXxbZy\niYhDge8DVwH/3GSXb2XmeS2OzTK+JxqdSqXC4uIiK1asYPPmza63OaGWlpaoVCps2rSp7T2qVCp8\n+9vfZufOnVx55ZWsWbOm6T719/yUU05hx44dAKxfv54tW7a0Lcu4f2a6fS+WY35+vqf3QlJvIoLM\njMbn9x5HYUboqsx8w7gLodlSW8EBig9uP9AmU20lhk4WFxe54oorANi4cWPTYxrveS8rQjQ7ftQ/\nM53ei34CaK/vhaTBcKkyacD8QCuXbu5n4z69LsE26T8z/SwPOMzl6CS1VvYm2ouA84ADgZ8DX8zM\nazocaxOt+jLM5i6NXjf3s9973s3x42jGrV3z2muv5ZZbbuG4444zqEkTplUTbdkDXjPbgedn5o9b\nHGvAkzRxxtGXrf6aq1ev5pprrjHcSROmVcAraxPt7cAbgGOBldWvtcA2YB64JCJWjK10ktSjfppx\nK5UK8/PzLCwssLS0tKxrGu6k6TKxNXgRsQs4pIdDPpaZp3U4517A5cDxwN9k5jua7GMNnqSJ008z\ncC+1f/VNwe9+97vZuHHjxDUdS7rbNI6ivR64o4f9b+i0Q2b+W0S8nyLg/Qdgj4AHcOaZZ+7+9/z8\nPPPz8z0UQ5IGr9tRv830UvtXP6K31ajhVvv3OgK4WTg0MErtbd++ne3bt3fcb2Jr8IYlItYB/wR8\nNjMXmmy3Bk9SqfRS+7ewsMDWrVu7HlDR6/71mtUsDqKvoSFRs2TW+uC188fVx1aDMCSpVGq1f90E\nnV6nNelnGpRmNYuDmDKmn2ldpLIoZQ1eRBwLfKOxKi4ingB8GtgHODEzr2xyrDV4kjQCzWoWBzHN\nUD+1itK0mbVpUrYDhwNf5O6+eUcDJ1EsqH1GZr65xbEGPEmaYs5FqVkyawHvdOAZwMOBB1DU2N0E\nfAn4h8y8os2xBjxpCg2z31Xt3Dt37mTNmjXsv//+M9e3y35t0mSaqYDXDwOeNJ06dc7vJ6DUn7tm\nVJMNT4pxTLQsqTMHWUgqtZ07dwIwNzfHWWedtcf2fjre1zr+z83NAZO7ZuwwTfp6uZLuyYAnqRTW\nrFkDwG233cbGjRv32N5PQKmNFP3mN7+57BGj066f0bKSRs8m2gY20UrTqdPIyW473tvXTNI0sQ9e\nlwx40nQa1MhJ+5pJmibTuFSZJHWtn6W86tnXTFIZWIPXwBo8abY5h1p/bOKWRssm2i4Z8KTpZLCY\nDDZxS6PlNCmSxq5SqTA/P8/CwgJLS0sDPbfrj04Gm7ilyWDAkzQywwxhBovxq1Qq/PKXv2TVqlWc\ne+651qJKY2TAkzQywwxhztNWGGYtaafrLC4ucsUVV3DTTTc1nYtQ0ugY8CSNzDBDWG0U7SyHOxhd\nU3Wz61iLKk0OA56kkTGEDd+oQlaz61iLKk0OR9E2cBStpGk2qmlenE5GmgxOk9IlA540nZwmRdIs\ncpoUSaXmNCmSdDcDnqRSsIO/JN3NJtoGNtFK08k+YZJmkX3wumTAk6Tu2fdRGi/74EmaKaOa8HfW\nddv30fshjZYBT1IpOehiNLrt++j9kEbLgCeplBx0MRrdTm7s/ZBGyz54DeyDJ5WDgy4mi/dDGg4H\nWXTJgCepEwcWSJoUDrKQpAGxP5mkSWfAk6Qe2Z9M0qSzibaBTbSSOrE/maRJYR+8LhnwJEnStLAP\nniRJ0oww4EmSJJWMAU+SJKlkDHiSJEklY8CTJEkqGQOeJElSyZQ24EXEXhHxwoi4LCJujYg7ImJn\nRJwTEUeMu3ySZk+lUmF+fp6FhQWWlpZGdqyk2bP3uAswDBGxH3A+cBLwDeBDwJ3AauBxwBHA98ZW\nQEkzqbbEGRSBbcuWLSM5VtLsKWXAA95LEe5elJnva9wYEWV93ZImWD9LnLk8mqRelG4li4g4Fvgq\ncE5mnrqM413JQiqBSqXC4uIiK1asYPPmzROxpFg/S5y5PJqkZmZmqbKIOBt4BbAOuAx4GvBg4OfA\nJZm5s8PxBjypBObn53c3aa5fv94mTUml1CrglbGp8tHVx0Mp+t7dv25bRsS7gZdm5l2jLpik0bFJ\nU9IsK+Mo2oOrj28DLgUeBuwHnAzsBP4SOGM8RZM0Kps3b2b9+vVcdNFFNmlKmjkT2UQbEbuAQ3o4\n5GOZeVr12O9SjJL9FvCI+vbWiDga+DpwO/CAzPxtk2vbRCtJkqbCtDXRXg/c0cP+N9T9uzZB1IWN\nSS0zr66Gx8OAI4Grm53szDPP3P3v+fl55ufneyiKJEnScGzfvp3t27d33G8ia/D6EREfAU4DXp2Z\nZzXZ/hXgUcAfZ+aXm2y3Bk+SJE2FVjV4ZeyDd3H18Y8aN0TEvhTNtwnsGmGZJEmSRqaMAe+TwI3A\ncyLi0Q3bzgD2B7Zl5k9HXjJJkqQRKF0TLUBEnAx8qvrteRSB73jgROBm4HGt5sOziVbSLJvECaIl\ntTYzEx3XVEfMngGsBeaAnwCfBt6YmTe1Oc6AJ2lmOUG0NF2mbRRt3zLzamD9uMshSdPECaKlciht\nDd5yWYMnaZa55q00XWauiXa5DHiSJGlazNI0KZIkSTPNgCdJklQyBjxJkqSSMeBJkiSVjAFPkiSp\nZAx4kiRJJWPAkyRJKhkDniRJUskY8CTtoVKpMD8/z8LCAktLS+MujiSpRwY8SXtYXFxkx44dbN26\nlUqlMu7iSJJ6ZMCTtAcXnJek6eZatA1ci1ZywXlJmhat1qI14DUw4EmSpGnRKuDZRCtJklQyBjxJ\nkqSSMeBJkiSVjAFPkiSpZAx4kiRJJWPAkyRJKhkDniRJUskY8CRJkkrGgCdJklQyBjxJkqSSMeBJ\nkiSVjAFPkiSpZAx4kiRJJWPAkyRJKhkDniRJUskY8CRJkkrGgCep9CqVCvPz8ywsLLC0tDTu4kjS\n0BnwJJXe4uIiO3bsYOvWrVQqlXEXR5KGrpQBLyI+HBF3dfi6eNzllDQaK1asAOC4445j06ZNYy6N\nJA1fZOa4yzBwEbEOeESLzc8DHgK8MjPf1uTYLON7Is2ypaUlKpUKmzZtYuXKleMujiQNTESQmbHH\n87MUZiJiJXAjEMC/z8xfNNnHgCdJkqZCq4BXyibaNk4D7gOc1yzcSZIklcGsBbwN1ceZ7ISzffv2\ncRdBffD+TTfv3/Ty3k23Wb1/MxPwIuKxwMOB72bmjnGXZxxm9Ye8LLx/0837N728d9NtVu/fzAQ8\noDY3wvvGWgpJkqQhm9iAFxG7upjqpP7ro23ONQc8G/g18OFRvQZJkqRxmNhRtNV56h7UwyEXZOZr\nWpzrJcA7gY9n5nM7XHcy3xBJkqQmZnaalIi4CjgamM/My8ZdHkmSpGEqfcCLiOOBL1EMrjhy3OWR\nJEkatontgzdAtcEVMzk1iiRJmj2lrsGLiP0pVq64F7DayY0lSdIsKHsN3nOBFcA/zWK4i4i9I+Jl\nEfGhiLgqIn5THXH8gjbHnBgRb4mIr0TEzyLizoj4fkS8LyJ+f5Tln3XLuX91xz4/Ir4cEb+KiKWI\n2BYRTx1FudVZRNwvIjZGxNci4pbqffp2RLw9Ig4Zd/nUXkTsFREvjIjLIuLWiLgjInZGxDkRccS4\ny6fuRcT762bjeMi4yzNIpa7Bm3XVtXd/ASRwM/Bb4MHACzPzgy2OuQk4EPgi8DXgd8AJ1a/bgSdm\n5pXDL72Wc/+qx50NvAL4MXAusC/wZ8D9gb/OzHcNuehqIyJ+D/gXionXrwMuppjC6THA44HbgBMy\n87qxFVItRcR+wPnAScA3gB3AncBq4HHAX2XmZ8ZXQnUrIp5GcS//FbgvcERmfn+8pRqcvcddAA3V\n7cBTgKsy8+aIOBP42w7HvBX4aGbeVP9kRLwWeBNFX8ajh1BW7ann+xcRJ1CEu+uBR2fmbdXnz6II\n7GdHxKcy84dDLbnaeTZFuLs4M59Uv6HuHr8S6FhTq7F4L0W4e1Fm7jFxfkT4uToFIuIgioUPzgEe\nCKwdb4kGr+xNtDMtM3+bmZ/LzJt7OOasxnBX9fcUf6X+YUQcMLBCqqXl3D/gxdXHN9XCXfVcPwTe\nRVGb918GWEz17qDq46ebbLug+viAEZVFPYiIY4E/B85pFu4AMvN3oy2VlmkTcBfwEmCPOeTKwICn\nXtT+4/q3sZZC7fwJRZPuZ5ts21p9PGl0xVETl1Lco4WIaPxg+dPq48WjLZK6dGr18eMRMRcR/zki\nXhsRFfsoT4+I+AtgHUUt7K1jLs7QWJWsbq0H9gO+lJm/HHdhtKeIuC/F6i+/alHrd3318aGjK5Ua\nZebXI2IDcDZwTURcAvwGeBRwIvAOitpWTZ5HVx8PBT5E0a+1JiPi3cBLM/OuURdM3YmINcDbKboi\nXTju8gyTNXjqKCIOo1jq7bcU/bs0meaqj7e12F57fuUIyqL2Pg98AjgS+GvgvwHzwGUUSyoaECbT\nwdXHt1HUxD6M4g/fk4GdwF8CZ4ynaOokIu4FfAT4JfDSMRdn6Ax4Ey4idtUN4e7m66MDvv7BFE17\nBwIvy8x/GeT5y27c90/D0c99rf7B9FWKvlwvBlYB+wMLwBrgsoh4+jhe1yzo83ey9pl5HfCczFzM\nzDsy81LgWRR9ul4REfuM+nXNij7v38spRqpvqO+jXFY20U6+64E7etj/hkFduBruLgWOoAh37xnU\nuWfIKO9f7T+suRbba88v9XENFfq5r/+DoibopQ0d9T8bEc8CrqJoQroADUM/9672u3NhNswxlplX\nR8Qu4DCKmtmr+ymkWlrW/YuIh1LMBPHBzGzWRxlKNtjCgDfhMvPkcVw3Ih4IXELRX+slhrvlGeX9\ny8zbI+JG4IERsarJaOjaBKyLoypTWfV5X4+jGGSxrcl5r46IJeCQiDigzB3Ax6XPe/cdin54rf5I\nuhV4CHCfPq6hNvq4f0cB9wZOj4jTW+zzveq4p2dk5vnLvM7EMOBpDxGxmqLm7iHAizPz/WMukrp3\nCXAa8GTgww3bnlJ9vHSUBdIefkNRU3AwcG39hojYF7hf3X6aLBdT/H79UeOG6r07giK87xptsdSF\nHwAfoLg/jf6UoqvEFor+eT8YYbmGxoCne6iOMNpGsWLC6Zn5f8ZcJPXmPRQfQK+PiH/OzCWAiDiU\nYr6nOylG/2l8LgYeCbwuIq7IzPogdyawF/DlzLx9HIVTW58E/hfwnIh4Z2Z+pW7bGRR9KS/NzJ+O\npXRqKTO/CWxoti0itlMEvNeVaSULlyoruYh4DcVILyg+VI6mWIasNmXGFzLzA3X7/4Cio/fXgE/R\nvE/Ch1wJYTR6vX/VY2pLlf1fig+kewPPAQ6gWKrsH0dQdLUQEQcCXwIOp6jp+Rzw/yimSHk0Rf+i\nJzigaTJFxMkU/zcCnAfcCBxPcf9uBh6XmTvHVDwtQzXgPR443ICnqRER2yiWYGm80VF97iOZeXrd\n/ndVn2/V2TSBkzLzsiEUVw16vX91xz2fosbuKIqJqb8OnOUamZMhIuaAVwNPp+gKsRdFULgU+PvM\ntJ/kBIuIoylq7NZSDF76CcXKJG9ssRKQJlj1/9nHU7K1aA14kiRJJeM8eJIkSSVjwJMkSSoZA54k\nSVLJGPAkSZJKxoAnSZJUMgY8SZKkkjHgSZIklYwBT5IkqWQMeJIkSSVjwJMkSSqZvcddAElS7yKi\ntsD9/sAJwN+5RrSkGgOeJE2ZiFgBnJKZr61+/yxga0QckZk3jrd0kiaBTbSSNCYRsdcyDz0ceHVE\nPKT6/eeB36Ooyet0Tf+wl2aAAU+SxiAingmctpxjM/Nq4ITM/H71qdXVx+91cfjrIqJjEJQ03Qx4\nkkohItZFxOURcV1EvGLc5WknItYCj8/MDy/3HJl5Zd23rwXempnf7OLQNwOvj4gjl3ttSZPPqnpJ\npZCZ50fEVcC1wH7jLk8rEbE/8BZg7YDO9wLghsx8TTf7Z+bvIuK/Ap+MiMdm5u8GUQ5Jk8UaPEml\nkZk/BH427nJ08DrgY5l5Z78nioinAndl5msiYt+IWNPNcZn5I+BbwF/0WwZJk8mAJ0kjEhH3BTYA\nHx3AudYC/w74TESsAhaAB/ZwincCr+63HJImk020kjQ6TwV+kJm39nOS6ujZC7lnU3QCcz2c5irg\nwIg4JjO/0U95JE0eA56k0qtOCvxXwM0U/++tBN6cmYsN+50O/EfgxxQjUy8G/gA4DjgnM9/bZ1Ge\nCHyxRRmfBDwJeDLwOeCVmZkN+8wBZ2bmyykmOF62zLwrIi6neL0GPKlkDHiSSi0ingacBZyYmT+v\nPvcw4HMR8YzMvKr63IuAs4EHZeavIuJw4DvAYyiC3r0HUJxHAptabDsoM18ZEV8CPkExWOSDda9j\nb+B/A2cMoBw1i8AjBng+SRPCPniSSisi9gM+BPxjLdwBZOZ3gPOr22peAnwrM39V3ed64BbgbzLz\nc5l54QCKdCiw1GxDZn6s+s/zgBuq5an3RoqpUG4ZQDlqbgUOG+D5JE0IA56kMnsqcH+KmrhGi8Aj\nIuKY6vc/A+7TsM99gOWuNtHMHC0CXk21WfbDwDHVWkQi4mXA+dXQOUg/p7d+e5KmhAFPUpnVlvJq\nNtfbb6uPh1cf/w44KiKOAoiIJ1N0Y3nrAMuTdPf/7keqj8+srnixq2Fi40G5FxBDOK+kMTPgSSqz\nn1QfD26y7cDq483Vx18DfwtsiIi3UAx2ODYzv954YETcLyLOjYgHNzx/XES8PSJOi4j3RMTvNxy6\nRFGj2Fa1pu57wIuAAzPz/E7HLNP96VCjKGk6OchCUpldCNwBPKzJtkdRjJa9vPr9Y4HPZOY17U5Y\nXTliNfBM4BV1z+8LnAscn5k3R8R1wMcpBmnU/IC7g2UnnwFeBlzQ5f7LcX/g+x33kjR1rMGTVDb7\nVL+oDqyoAC+oTgYMQEQcBswDz8vMu6pP3wC8KSKeEBFrI+LYiFgVEfdowszMD2Tm/2xy3ccD/5qZ\ntRrBrwFHRsShdftcDhzV6QVUp0Op1Q4udNq/D0dRlFNSyRjwJJVCRDw9Ir5KsZrDyyNiW0Tsm5mb\ngT8H3hoR74qIdwCvB+Yzc0fdKS4GTgAuArYBXwVuBH4UEad2UYRDKQYtALsHS9wK/GHdPp+lCILt\nXse9KUbMbqie75Qurt2z6rQrtdcrqWRsopVUCpl5AS2aMzPzcu5uit1DRBxCMbnwnwGXZGZWg9aD\nKJpiPxgRX8nM77UpwgMomoPr3Qncr+77LwCrIuJBmXljk3IE8GbgrMy8NSLOB06LiAPrp3kZkMcA\nP8rMqwd8XkkTwBo8SYL/BHw3My+urR6Rmb/JzF2Z+TaKaVYe3uEcS+w5InU/irn0qJ7z18A/UPSt\na+b1wMcz88fV7z9G0dz83F5eTJdezmBHCEuaIAY8SYLPA8dGxGMbN1SXENuPNjWAVd8B6vv57U0x\niOGHDfu9BXhKRBzQcJ0NwNWZubtPXGZuA64DXhwR94qIh0bE0d2/rOYi4g+AQyjm25NUQjbRSpp5\nmXltRKyl6LtXAX5F8QfwCorBF4/JzF80ObS+xu4LwEER8eBqDdxa4NrGZt3MvKM6Evd9EbG+2hx8\nHLBvtZm50XOB9wJbgB8B/72f1xoR9wHeCZzauNatpPIIf78lqXvVARePo5ijbgtweWa+q7rtT4Bn\nA18ETgLe1Gr1iYh4InBkZr5jJAW/+7pvAC7IzK+O8rqSRsuAJ0mSVDL2wZMkSSoZA54kSVLJGPAk\nSZJKxoAnSZJUMgY8SZKkkjHgSZIklYwBT5IkqWQMeJIkSSVjwJMkSSqZ/w/6XtXLTz83TAAAAABJ\nRU5ErkJggg==\n",
"text": [
"<matplotlib.figure.Figure at 0x2b12b02cffd0>"
]
}
],
"prompt_number": 253
},
{
"cell_type": "code",
"collapsed": false,
"input": [],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 221
}
],
"metadata": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment