##// END OF EJS Templates
pass on IPython Kernel example notebooks...
Min RK -
Show More

The requested changes are too big and content was truncated. Show full diff

@@ -1,1359 +1,1359 b''
1 1 {
2 2 "cells": [
3 3 {
4 4 "cell_type": "markdown",
5 5 "metadata": {},
6 6 "source": [
7 "# Simple animations Using clear_output"
7 "# Simple Animations Using clear_output"
8 8 ]
9 9 },
10 10 {
11 11 "cell_type": "markdown",
12 12 "metadata": {},
13 13 "source": [
14 14 "Sometimes you want to clear the output area in the middle of a calculation. This can be useful for doing simple animations. In terminals, there is the carriage-return (`'\\r'`) for overwriting a single line, but the notebook frontend can clear the whole output area, not just a single line.\n",
15 15 "\n",
16 16 "To clear output in the Notebook you can use the `clear_output()` function. If you are clearing the output every frame of an animation, calling `clear_output()` will create noticeable flickering. You can use `clear_output(wait=True)` to add the *clear_output* call to a queue. When data becomes available to replace the existing output, the *clear_output* will be called immediately before the new data is added. This avoids the flickering by not rendering the cleared output to the screen."
17 17 ]
18 18 },
19 19 {
20 20 "cell_type": "markdown",
21 21 "metadata": {},
22 22 "source": [
23 23 "## Simple example"
24 24 ]
25 25 },
26 26 {
27 27 "cell_type": "markdown",
28 28 "metadata": {},
29 29 "source": [
30 30 "Here we show our progress iterating through a list:"
31 31 ]
32 32 },
33 33 {
34 34 "cell_type": "code",
35 35 "execution_count": 1,
36 36 "metadata": {
37 37 "collapsed": true
38 38 },
39 39 "outputs": [],
40 40 "source": [
41 41 "import sys\n",
42 42 "import time"
43 43 ]
44 44 },
45 45 {
46 46 "cell_type": "code",
47 47 "execution_count": 2,
48 48 "metadata": {
49 49 "collapsed": false
50 50 },
51 51 "outputs": [
52 52 {
53 53 "name": "stdout",
54 54 "output_type": "stream",
55 55 "text": [
56 56 "9\n"
57 57 ]
58 58 }
59 59 ],
60 60 "source": [
61 61 "from IPython.display import display, clear_output\n",
62 62 "for i in range(10):\n",
63 63 " time.sleep(0.25)\n",
64 64 " clear_output(wait=True)\n",
65 65 " print(i)\n",
66 66 " sys.stdout.flush()"
67 67 ]
68 68 },
69 69 {
70 70 "cell_type": "markdown",
71 71 "metadata": {},
72 72 "source": [
73 73 "## AsyncResult.wait_interactive"
74 74 ]
75 75 },
76 76 {
77 77 "cell_type": "markdown",
78 78 "metadata": {},
79 79 "source": [
80 80 "The AsyncResult object has a special `wait_interactive()` method, which prints its progress interactively,\n",
81 81 "so you can watch as your parallel computation completes.\n",
82 82 "\n",
83 83 "**This example assumes you have an IPython cluster running, which you can start from the [cluster panel](/#clusters)**"
84 84 ]
85 85 },
86 86 {
87 87 "cell_type": "code",
88 88 "execution_count": 3,
89 89 "metadata": {
90 90 "collapsed": false
91 91 },
92 92 "outputs": [
93 93 {
94 94 "name": "stdout",
95 95 "output_type": "stream",
96 96 "text": [
97 97 " 100/100 tasks finished after 6 s\n",
98 98 "done\n"
99 99 ]
100 100 }
101 101 ],
102 102 "source": [
103 103 "from IPython import parallel\n",
104 104 "rc = parallel.Client()\n",
105 105 "view = rc.load_balanced_view()\n",
106 106 "\n",
107 107 "amr = view.map_async(time.sleep, [0.5]*100)\n",
108 108 "\n",
109 109 "amr.wait_interactive()"
110 110 ]
111 111 },
112 112 {
113 113 "cell_type": "markdown",
114 114 "metadata": {},
115 115 "source": [
116 116 "## Matplotlib example"
117 117 ]
118 118 },
119 119 {
120 120 "cell_type": "markdown",
121 121 "metadata": {},
122 122 "source": [
123 123 "You can also use `clear_output()` to clear figures and plots."
124 124 ]
125 125 },
126 126 {
127 127 "cell_type": "code",
128 128 "execution_count": 4,
129 129 "metadata": {
130 130 "collapsed": false
131 131 },
132 132 "outputs": [],
133 133 "source": [
134 134 "%matplotlib inline\n",
135 135 "import numpy as np\n",
136 136 "import matplotlib.pyplot as plt"
137 137 ]
138 138 },
139 139 {
140 140 "cell_type": "code",
141 141 "execution_count": 5,
142 142 "metadata": {
143 143 "collapsed": false
144 144 },
145 145 "outputs": [
146 146 {
147 147 "data": {
148 148 "image/png": [
149 149 "iVBORw0KGgoAAAANSUhEUgAAAloAAAGKCAYAAADUje9YAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\n",
150 150 "AAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xd4U+fZx/GvJMt774H3wOABmG32CitANmkzmzRpk6ZN\n",
151 151 "SdpmJzTrzWpmm9WRBVklhB32DBsMBoyx8cA23lOesiyd8/5hcEKBBIxtedyf69J1dKxxbksY/fSc\n",
152 152 "Z2hUVVURQgghhBAdTmvtAoQQQggheisJWkIIIYQQnUSClhBCCCFEJ5GgJYQQQgjRSSRoCSGEEEJ0\n",
153 153 "EglaQgghhBCdRIKWEKJH+Pjjj/nVr371k/epqanh2muvxcXFhZdffrmLKhNCiIuToCWEYOHChWi1\n",
154 154 "2raLj48PM2fOZNeuXdYurY1Go/nZ+/ztb3/D09OTsrIyFixY0AVVXZjJZCIuLo4jR45YrQYhRPcg\n",
155 155 "QUsIgUaj4dZbb0VRFBRF4cSJE8TFxTF9+nQyMzOtXd4lS01NZf78+Tg4OGBra2u1OmxtbUlLSyMx\n",
156 156 "MdFqNQghugcJWkIIVFXlx4tEeHl58dprrxEYGMjKlSutWNnlqaurw97evsuPO3HiRLZv397lxxVC\n",
157 157 "dH8StIQQF2U2m3F3d7d2GZfFGquKaTQaqxxXCNH9SdASQpynoqKCRx99FFtbW+bPn3/ObWvXrmXw\n",
158 158 "4MHY29sTGRnJe++9d87tn3zyCTExMTg6OpKcnExqaioAFouFP/3pT/j7++Pi4sL8+fOpqqpqe1xJ\n",
159 159 "SQk333wzrq6ueHh4cOedd1JZWXlJ9X788cdotVq2bdvGpEmT0Ol0QGtL07Zt286578KFC9s61be0\n",
160 160 "tKDVatm9ezdXX301zs7OxMbGsnTp0nMeYzabefHFFwkPD8fe3p5hw4axYcOG846r1Wr59NNPAQgL\n",
161 161 "CyM/P7/tOQwGA/fffz++vr44Ojoyfvx49u7d23b7pdbyyiuvEBoaipOTE9OnTycvL++SXiMhhHVI\n",
162 162 "0BJCALB48eK2zvC+vr4sWrSIV199FWdn57b7LFmyhEceeYR33nmHmpoaVq9ezdKlS3nppZcAOHr0\n",
163 163 "KAsWLOCLL76gsrKSMWPG8PnnnwPw/vvvs337dg4ePEhOTg61tbVtp9sMBgNjx45l/PjxnDp1ipyc\n",
164 164 "HOLi4pg0aRJms/lna7/zzjtRFIUJEyawdetWLBYL0NrS9L+d6H+8r9frAbjnnnt44IEHKC8v55ln\n",
165 165 "nuH222+nrKys7X633nora9as4ZtvvqGmpobHHnuMF198kdtuu+2c4yqKwu23337ecZqbm0lOTsZk\n",
166 166 "MrF3716Kior49a9/zcyZM1m+fPnP1lJeXg7A6tWree+999iwYQPFxcX4+vqyatWqn319hBBWpAoh\n",
167 167 "+rxnnnlGve2229r2q6ur1S+//FL18PBQP/nkE1VVVdVisaj9+vVTc3Nzz3lsQUGB6ubmpqqqqi5f\n",
168 168 "vlyNiIhQTSbTecd46KGH1FtuueWCx3/00UfVZ5555ryfT506Vf3mm29UVVXVjz76SL3zzjt/8veY\n",
169 169 "OHGiunXr1nP2t23bds59Fi5ceM7zaDQa9d133z3nPqNHj1ZXrVqlqqqq7ty5U3V3d1crKysv+biq\n",
170 170 "qqphYWFqXl6eqqqq+tprr6mjR48+73EffPCBGhMTc8m1vP322+q4ceMuWocQovuRFi0hBHBu3yZ3\n",
171 171 "d3fmz5/P448/3tZalZOTQ2FhIREREedMBRESEkJdXR2FhYVMmTIFHx8fIiIiuO+++1i6dCmKogBw\n",
172 172 "9913s2HDBoYMGcKjjz56ztQRO3bs4Nlnnz3nebVaLZs3byY9Pf2yfo9LmQbif40bN+6c/YiIiLbT\n",
173 173 "mjt37mT06NF4enq2+7hbt25l7ty55/38mmuu4eTJk20tVher5ewp1BtvvJHi4mJiYmJYsGAB69ev\n",
174 174 "/+lfTAhhdRK0hBAXNWDAAHJzc4HWIKHVajEYDG3TQJy9WCwWgoKCcHJyYteuXXzyySd4eHiwYMEC\n",
175 175 "brjhBgAGDhxITk4OTz75JFVVVcycOZO3334bAK1WyzvvvHPB533iiSfajn+5NBrNeaceGxoazruf\n",
176 176 "o6PjOft6vb4teLbnuBeq41L9VC3+/v6kpaXxxhtvoKoqt956Kw899NAV1yeE6DwStIQQFw0CBw8e\n",
177 177 "JDY2FmhtWQkKCmrrc3VWfX09OTk5bfuKojB58mRefPFF9uzZw7Jly6iqqkJRFBwdHbn++uv58MMP\n",
178 178 "ef/99/nnP/8JwIQJE857XqCtI317eXh4nNdZ/Pvvv7+k4HM23IwZM4Y9e/ac03H/f2k0mrZ+YRcy\n",
179 179 "ceLEC06TsXz5cmJiYvDx8fnZes7SarXMnj2bN998k+XLl7e9hkKI7kmClhDivKkJysvL+eCDD3j5\n",
180 180 "5Zd56qmngNYw8dZbb/GXv/yFRYsWUVtby/Hjx5k7dy6vvPIKAIsWLWL06NHk5OTQ2NjIl19+iZ+f\n",
181 181 "H66urvzmN7/h7rvvpqqqivLyclauXElMTAwAf/nLXzh9+jR33303+fn5VFdX88ILLzBjxgxqa2sv\n",
182 182 "WOOlGDduHG+88QYZGRnU1tby+OOPk5ube1nPNXr0aKZPn84111zD4cOHaWpqYsmSJYwfP74tXPn7\n",
183 183 "+7Nz506amprOOQ141gMPPIDBYODee+8lNzeX6upqPv30Ux599NG21+5SvPDCC8ydO5fi4mIMBgPf\n",
184 184 "fPNN22sohOieJGgJIdBoNOeMOoyMjGTx4sUsWbKE6667ru1+11xzDUuWLOH111/H19eXmTNnMm7c\n",
185 185 "OP7+978DrX2Ixo8fT3JyMj4+PixbtozVq1djY2PDM888g8FgICwsjJiYGFRVbWuNcXFxYf/+/TQ1\n",
186 186 "NZGYmEhoaCj79+9nx44duLq6ttV4uafx7rvvPpKTkxk3bhzR0dHY2tpy//33YzKZzvndL/aanLVo\n",
187 187 "0SKmTZvG3Llz8fDw4OWXX2bhwoVt00gsWLCADz/8EF9fX7Zs2XLec9na2rJz5060Wi0jRowgMDCQ\n",
188 188 "Dz/8kNWrV5/Td+vnavnd736Hv78/8fHxBAcHk56ezpIlSy7rNRFCdC2N2p6viUIIIYQQ4mfZXMmD\n",
189 189 "V6xYwf79+wFISkri2muvveDtOp0OZ2dn7r///vM6egohhBBC9FbtDlrp6enk5uby3HPPAfDee+9x\n",
190 190 "9OhREhIS2u6zY8cOXnzxRfR6PR999BFZWVmyyKoQQggh+ox2B61Dhw4xZcqUtv0pU6awe/fuc4LW\n",
191 191 "9ddfz3333YezszNBQUESsoQQQgjRp7S7M3xdXR0uLi5t+66urhgMhrb95uZmVq5cyeuvv86bb75J\n",
192 192 "QECArG4vhBBCiD6l3S1aLi4ubcOuAWpra9tGBwEUFBQQERHR9rMJEyawYsUKxo8ff8Hn27RpU3tL\n",
193 193 "EUIIIYTocj8+s3cx7Q5aSUlJrFu3ru1U4ebNmxkzZkzb7f7+/mRnZ2MymbC1teXw4cMEBwf/7HOK\n",
194 194 "nmnlypXMmTPH2mWIdpL3r+eS965nk/ev50pJSbmk+7U7aMXGxpKRkcGTTz4JtIakhIQEFi9ezJw5\n",
195 195 "c3B1dWXevHk899xzaLVaAgICuOeee9p7OCGEEEKIHueKpneYN28e8+bNO+dnt9xyS9v1kSNHMnLk\n",
196 196 "yCs5hBBCCCFEjyUzwwshhBBCdBIJWkIIIYQQnUSClugQsrBtzybvX88l713PJu9f79fjgpaqqlQ2\n",
197 197 "tmA0K9YuRfxI//79rV2CuALy/vVc8t71bPL+9X5X1Bm+s1gUlfIGE0W1zRTXtm4La5sprm2mqM6E\n",
198 198 "vY2WZrNCpJcDgwKcSQhwJs7XCXu9ztqlCyGEEEK06VZB68l12RTVNlNab8Ld3oZAVzsCXO0IdLVj\n",
199 199 "sq8jgS6t+062OowtFtLKGjhaXM+ilBKyK5uI8HQgMcCZxABn4vyccJDgJYQQQggr6lZBa3asN4Gu\n",
200 200 "tvi72GFn89NnNe31OoYGuTI0qHXmeaNZIb20gSMl9XxxuISTFU2EediTGODMyBA3Evydu+JXEEII\n",
201 201 "IYRo062C1uhQt3Y/1t5Gy5AgF4YEuQABNJsVTpQ3cKS4nr9tzyPI1Z57RwYS6uHQcQULIYQQQvyE\n",
202 202 "bhW0OpKdjZZBAS4MCnDh5kF+rDhewZ9WZzE+3J3bkvxxd9Bbu0QhhBBC9HI9btRhe+h1Wq5P8OXf\n",
203 203 "NwxAp9Xw6yXpfH2kFJNFRi4KIYQQovP0iaB1lqu9DfeP7scbc2JIK2ng10vS2Z5Tjaqq1i5NCCGE\n",
204 204 "EL1QnwpaZwW72/PXqyJ4aFwInx8u5aFVJzlR1mDtsoQQQgjRy/TJoHXW4EAX/nFNf6bHeLFwYw4v\n",
205 205 "bTlFWb3J2mUJIYQQopfo00ELQKfVMKO/Fx/dOJAAVzvu+/YE6zIrrV2WEEIIIXqBPh+0znLQ67hj\n",
206 206 "aABvXB3Dl4dL+ceu05gV6bslhBBCiPaToPU/QjzseWdeDEW1Rh77LguD0WztkoQQQgjRQ0nQugBn\n",
207 207 "OxuevSqSWB9HHliWQXZlk7VLEkIIIUQPJEHrInRaDXePCOLu4YE8+l0W23KqrV2SEEIIIXqYXjsz\n",
208 208 "fEeZGOlBPzc7/roxl+zKJu4YGoBOq7F2WUIIIYToAaRF6xJEeTvyzrwYjpc18MyGHBpMFmuXJIQQ\n",
209 209 "QogeQILWJXJ30PPSzCgCXGz5/fIM8muM1i5JCCGEEN2cBK3LYKPV8LvkYG5K9OPhVSfZk2+wdklC\n",
210 210 "CCGE6Makj1Y7zOjvRYi7Pc9tyqUwoZnrE3ytXZIQQgghuiFp0WqngX5OvDU3hpXpFXydWmrtcoQQ\n",
211 211 "QgjRDUnQugK+zra8NjuK7zIq+VLClhBCCCH+hwStK+TtZMtrs6NZn1nJF4dLrF2OEEIIIboRCVod\n",
212 212 "wMtJz6uzo9l4sorFhyRsCSGEEKKVBK0O4uXYGrY2Z1exKKXY2uUIIYQQohuQoNWBPB31vDY7mm05\n",
213 213 "NXwmYUsIIYTo8yRodTAPBz2vzI5ie24NnxwsRlVVa5ckhBBCCCuRoNUJPBz0vDorip2nJGwJIYQQ\n",
214 214 "fZkErU7i7qDnlVlR7Mk38NEBCVtCCCFEXyRBqxO5O+h5eVY0+wpq+c/+IglbQgghRB8jQauTudnb\n",
215 215 "8MqsKA4U1vEvCVtCCCFEnyJBqwu42tvw8swoDhTU8vWRMmuXI4QQQoguIkGri7ja2/DCjEhWpVew\n",
216 216 "8WSVtcsRQgghRBeQoNWFvJ1seWF6JB/uLeTA6VprlyOEEEKITiZBq4uFeNjzzNRwXt6aR2ZFo7XL\n",
217 217 "EUIIIUQnkqBlBXH+zvxxbDBPr8+mqLbZ2uUIIYQQopNI0LKSMWHu3DokgMfXZlPT1GLtcoQQQgjR\n",
218 218 "CSRoWdHVA7yZGOHOU+tzaGqxWLscIYQQQnQwCVpWdsfQAMI87Hl+Uy5mRebYEkIIIXoTCVpWptFo\n",
219 219 "eHBsCBqNhjd25MuEpkIIIUQvIkGrG7DRanhychj5NUY+Plhs7XKEEEII0UEkaHUT9nodz10Vwfac\n",
220 220 "GlYcL7d2OUIIIYToABK0uhF3Bz0vzojki8OlfJ9bY+1yhBBCCHGFJGh1MwGudjx7VQRv7SwgraTe\n",
221 221 "2uUIIYQQ4gpI0OqGor0d+fOEUJ7blEtJnUxoKoQQQvRUErS6qRHBrswf5MfT63NoMMkcW0IIIURP\n",
222 222 "dEVBa8WKFTz11FM89dRTfPvttxe8T319PS+//DJGo/FKDtUnXRPnQ5yfEy9tOYVF5tgSQgghepx2\n",
223 223 "B6309HRyc3N57rnneO655ygpKeHo0aPn3W/58uXce++92NvbX1GhfZFGo+F3ycE0WxT+ta/I2uUI\n",
224 224 "IYQQ4jK1O2gdOnSIKVOmtO1PmTKFlJSUc+7z/fffc+zYMT788EOWL1/e/ir7sNY5tsLZk2/guxMV\n",
225 225 "1i5HCCGEEJeh3UGrrq4OFxeXtn1XV1cMBkPbfmNjI7t27WLhwoU88sgj1NfXs3Xr1isqtq9ytbfh\n",
226 226 "2asi+M+BYlKL66xdjhBCCCEuUbuDlouLC7W1tW37tbW1uLq6tu2np6fTv39/7OzsAJgwYQLp6elX\n",
227 227 "UGrfFuxuz2OTQnlh0ykKDTISUQghhOgJ2h20kpKS2Lx5c9v+5s2bGTp0aNu+i4sLx44dQ1EUAFJS\n",
228 228 "UggJCbmCUkVSkCu3Dw3g6Q3Z1DebrV2OEEIIIX6GTXsfGBsbS0ZGBk8++STQGrwSEhJYvHgxc+bM\n",
229 229 "ISYmhoSEBJ566ilsbGwICgri7rvv7rDC+6qrB3iTV23k+c2neGF6JDqtxtolCSGEEOIiNKqqdot5\n",
230 230 "AzZt2kRSUpK1y+gRLIrKU+uzCXS144HkYGuXI4QQQvQ5KSkp5wwKvBiZsLQH0mk1PDE5nMNF9bIA\n",
231 231 "tRBCCNGNSdDqoZxsdTx7VQSLD5VwsLD25x/QDoqi0ljfTFOjiW7S8CmEEEL0KO3uoyWsL9DVjicm\n",
232 232 "h/Pcplz+dnU0Ie4/PymsqqhUltVTV9tMU4OJxgYTTY0mmhpMNDW0tO6f+ZnRaMbe3gZVhRaTGUdn\n",
233 233 "O5xc7HBytm3d/vji/MN1GxvJ70IIIQRI0OrxEgOcuXt4IE+vz+GdeTG42J3/ljbUNXMqq4JTJyvI\n",
234 234 "y6rE1s4GNw8HHJ1scThz8Q10PWff0ckWewc92jOd7c0tFhrqTTTUNdNQ39y6rWumrKj2zM9ab2tq\n",
235 235 "bME3wIXgCE+Cwz0JDHHH9gI1CSGEEH2BfAL2AjP6e5Fb1cSLm0/x/PRIUFSK8mvIPVnBqcxyDNVN\n",
236 236 "hER4ERbjzdhpMbh5OFz2MWz0Otw8HH72sS0mC0X5NZzOrWLPlmxKi2rx8XehX3hr8AoKleAlhBCi\n",
237 237 "75BPvF7ipigP3l5xgnf+vgttdROe3o6ERXszec5AAoLd0Om65nSe3lZHaJQXoVFeALS0WCjOr6Eg\n",
238 238 "t4p923IoKTTg7efcFrxCIjyx0eu6pDYhhBCiq0nQ6uEKcqvYtSmLyrJ6kiK82GzWM/O6KGYk+Fm7\n",
239 239 "NAD0eh0hkV6ERP4QvEoKDG3Ba83XR4hN9CduaD/8g1zRaGReMCGEEL2HBK0eSFVVCnKq2L05mzqD\n",
240 240 "kVGTIhgwOBCdTsug6ib+vDqLMD9nYn2drF3qefR6XWv/rQhPkqdEUVvTRFpKIau+PIyNXkd8UhAD\n",
241 241 "Bwfi5GJn7VKFEEKIKyYTlvYgqqqSn13J7s3ZNNQ1M2pSJAMGBaD9n9OCO0/V8O7u07w9rz9ejnor\n",
242 242 "VXt5VEXldF41xw4WknW8lH7hnsQPDSIixgedjGIUQgjRzVzqhKXSotUDqKpKXlYluzZl0dRoYvSk\n",
243 243 "KGIT/c8LWGeNCXMnt6qJZzfm8OrsaGy7qH/WldBoNQSf6bdlah5AxtESDuw4xfpv0xg4OID4pH74\n",
244 244 "BLhYu0whhBDiskjQ6sZUVeXUyQp2bcqm2djC6EmR9E8MaJty4af8cog/uVVG3tlZwEPjQnpU3ydb\n",
245 245 "OxsShvUjYVg/qisbSDtYyNJPD+Lsas+oSRFE9PfpUb+PEEKIvktOHXZT+dmVbF+XSYvJwuhJkcQk\n",
246 246 "+F9SwPqxphYLC1ZmMqO/F9fE+XZSpV1DUVROppWyZ0s2Gg2MmhRJ9EA/NLKothBCCCuQU4c9lMWs\n",
247 247 "sGN9JhlHS5g4sz8x8f7tDhMOeh0Lp0Xw4IpMQt0dGBLUc0+9abUa+if4ExPvR86JcnZvyWbnxixG\n",
248 248 "TYygf8LFT6MKIYQQ1iRBqxuprmxg9ZepOLnYcdsDyTg62V7xc/q72PHYpDBe3HyKN+fGEOjas0fz\n",
249 249 "aTQaIgf4EhHrQ15W68CAnZtaA9fZkZdCCCFEdyFBq5s4friILavSGT05iiGjO7ZP1eBAF25N8ueZ\n",
250 250 "DTm8NScGR9ueP0GoRqMhLNqbsGhvCs7MQr9rUzYjJoQTnxQkk6AKIYToFiRoWZmp2cymlekU59dw\n",
251 251 "413D8Q107ZTjzBngTXZlE69sy+PpqeFoe1Fn8rOjFYvya9izNZs9W7IZPi6cQSNDZIFrIYQQViWf\n",
252 252 "QlZUWlTLZ//YhUYDtz0wutNCFrS2AD2Q3A+D0cziQyWddhxrCgxx57rbh3Lt7UPJz67kozd3cDKt\n",
253 253 "lG4y3kMIIUQfJC1aVqCqKim78tizJZvJcwYwYFBglxxXr9Py9NRwHliWQZiHA+PC3bvkuF3NL9CV\n",
254 254 "a28fSl5WJVtWp5OyO49Js2I7NcgKIYQQFyJBq4s1NphYu+QojQ0mbrlvNO5ejl16fA8HPc9Mi+CJ\n",
255 255 "tdkEudkR4enQpcfvSqFRXtz+QDJHDxay5OMDRA3wZczUaFneRwghRJeRU4ddKD+7kk/f2YmXnzO/\n",
256 256 "uHdkl4ess2K8HblvVBALN+RgMJqtUkNX0eq0DBoRzF0LxmFrZ8PHb33Pvu05mM2KtUsTQgjRB0jQ\n",
257 257 "6iLHUgpZ/fURZlyfwIQZ/a2+ft/kKE/Gh7vz/KZczErv78Nk76Bn4qxYfvnbURTl1fDRmzvITCuR\n",
258 258 "/ltCCCE6lQStLnBkfwE7N5xk/q9HEBbtbe1y2vxqWCC2Oi0f7Cm0dildxsPbiWtuS+Kqa+LZtTGL\n",
259 259 "r/+9n7KiWmuXJYQQopeSoNXJDu/NZ8+WbG769XA8fZysXc45dFoNj00K5WBhLWszKq1dTpc6238r\n",
260 260 "NjGAJR8fYOPyNJqNLdYuSwghRC8jQasTHdx5in3bc5n/6xF4eHWvkHWWs50Nf50Wwb/3F5FWWm/t\n",
261 261 "crrUj/tvKYrKx2/t5OTxUmuXJYQQoheRoNVJ9u/I5dDufG6+ZwRuntbp9H6pgt3t+fOEEJ7fdIry\n",
262 262 "BpO1y+ly9g56rro2nlk3JbJ9bQbLFx+ivtZo7bKEEEL0AhK0OsGerdkc2VfA/HtG4OreM6ZPGBHs\n",
263 263 "xjVxPizckENzHx2RFxzuyR2/H4OXrzOfvL2T1H0FqF04UEBVVRSzGVVRpJO+EEL0EjKPVgdSVZXd\n",
264 264 "m7M5caSY+feMwNnV3tolXZabEn3JqWrijR35PDIxtEPXW+wpbPQ6xk6LJjbBn3XfppF+uIhp18bh\n",
265 265 "5eN8Rc+rqiotVQaMxWUYi8sxFpVhLC6j+UfXjUXlWIzNoKqtF40GjVYL2h9tNT/sa/Q22Pl64RDo\n",
266 266 "h32QL/aBvti3XffDPsAHnb3MGSaEENakUbvJV+dNmzaRlJRk7TLaTVVVvt9wkuz0Mm68a3iPnRTT\n",
267 267 "aFZ4eGUmEyM9uDHRz9rlWJWiqKTuzWfXpiyGJIcycnzEJU3LYW5swnAwjeq9qVTvP0pTXiHGknJ0\n",
268 268 "DvbYB/hiH+CLXaBP6/Wz2wBf7AN8sHFp7cunnglbqqKA8qOt+sO+YmqhubSiNagVlmEsKqWpqHVr\n",
269 269 "LCzDWFKO3sW5LYQ5R4fhOngAboMHYB/o2yeDtBBCdJSUlBSmTJnys/eToNUBVFVl+9oM8rIqueGu\n",
270 270 "4Tg62Vq7pCtSVm/iDysyeHhcKMODZdma2pomNq04Tk11E9OvjSMwxOOc201VBqr3pbYGqz2p1J/I\n",
271 271 "wSU+Go+Rg/AYOQinyBDs/X3QOXZtC6eqKJgqqjEWltFUWEL9iRwMh9IxHE4HrQa3M6HLbfAA3AbF\n",
272 272 "Yuvt8fNPKoQQApCg1WVUVWXL6hMU5lVzw6+G4eDYs0PWWcdK6vnrxlzemBNNP7eedQq0M6iqSuax\n",
273 273 "UjavSic6wIb+DvXUHjxK9Z5UjMVluA2Nw3PkYDxGDsJtyEB0Dt23RVNVVYyFpRgOp7ddao9koHdz\n",
274 274 "bmvxch8aj/vQeLR66V0ghBAXIkGrC6iKyqaVxyktquX6O4dh76C3dkkdas2JCr45Vsbbc/vjZKuz\n",
275 275 "djlWZaqupWTZRgq+XEVt9mmaAsKIvHo0YTNG4xIXhdamZwcSVVFozCloDV6pJ6jem0pjXhFe44fh\n",
276 276 "M3k03pNHYe/XfSbbFUIIa7vUoNWzPx2sbNvaDMpL6rjhV8Oxs+99L+WsWG9yqpp4cfMpnr0qAp22\n",
277 277 "b/XpUcxmKrfuo/CrNVRs3Yv35NHEPHIv3hOGk5VRwcblxzEUa0iO0/b44bsarRanqFCcokIJvGEG\n",
278 278 "AM1llVRs2UP5xt2cWPgOjiEBeE8ejc+U0bglDezx4VIIIbqCtGi107GUQvZsyebW+0f3upasHzMr\n",
279 279 "Kk+szSbC04HfjAqydjldoj7zFIVfraFoyVrsA30Junk2AfOmoHc/t79aY30zG5Ydp7qqgVk3JOIb\n",
280 280 "2Hv7sylmMzUHjlGxeQ/lm3ZjLCzBa8JIfCaPwnvyKOx8PK1dohBCdCk5ddiJigtqWPrJQebfOxJv\n",
281 281 "3ysb9t8T1DWb+cPyTOYP8mNGfy9rl9MpWmpqKV6+icIvV2MsKiPwhhkE3TQT5/7hP/k4VVU5fqiI\n",
282 282 "rd9lMDQ5lBHjw9Hqenr71s8zFpe3tnZt3k3l9gO4xscQcP1V+F89Cb2bi7XLE0KITidBq5PU1xpZ\n",
283 283 "9O5ups6LI2qAr7XL6TIFNUYeXnWSJ6eEkxjQe8JlY34R2a9/ROnqrXhPHEnQzbPxmjD8sk+L1dY0\n",
284 284 "sW7pMUzNZmbekNjt1rXsTEqzifJNuyn6Zh2V2/fjNW4YAddPx2fKaJnHSwjRa0nQ6gTmFgtf/Wsf\n",
285 285 "EbG+jJ4Uae1yutzBwlpe3ZrHm3Nj8O+h84SdZSytIOeNjylevpGQX11P6D3zsfW4slN/qqJy+My8\n",
286 286 "W6MnRzFkVAiaPtavrcVQR+nqrRR9s566tEz8Zk0k4Pqr8Bw9pHXSVSGE6CUkaHUwVVVZ+80xWkxm\n",
287 287 "5vxicJ+d7HF5WjmrTlTw5pyYHjkS0VRlIPfvizj9xUqC5s8i4oHbOnz+qOqKBr5bchSdjZYZ1yfg\n",
288 288 "5tEzlmHqaMaiMoqXbaTom3WYqmoIvPYqAq6/CpeBUX3270cI0XtI0OpgKbvyOHrgNL/4zUhs7fru\n",
289 289 "aCtVVXln12nK600snNZzRiKa6xo49cGX5P1nCf5zJhP5xzuxD/DptOMpisr+Hbkc2JHLxNmxDBwc\n",
290 290 "2KfDRV1GDsXfrKf42/XYuLkQcsd1BFw3DRun7r3guhBCXIwErQ6Un13Jqq9SueW3o3DzlA8Gs6Ly\n",
291 291 "+NosorwcuXdk9x6JaGlqJv+jb8h9dzHek0YS9fBdOIb167LjlxXVsvqrVHwCXZk2byB29r13hOql\n",
292 292 "UBWFyu37yf/kW6r3HCbguumE3HEtzjFh1i5NCCEuy6UGLek08TMMVY2s+iqVq+cPkpB1ho1Ww5OT\n",
293 293 "w9mVZ2BdZqW1y7kgxdRC/sdL2Z58EzUHjzH8m3dIfOfpLg1ZAL6Brtz6u2Ts7W345J1dFOZVd+nx\n",
294 294 "uxuNVotHoGPcAAAgAElEQVT3xJEkffQSyRs/Qe/qxP4bfs++639PyYrNKC1ma5cohBAdSlq0foKp\n",
295 295 "2cznH+xh0PBghowOtXY53U7+mZGIT08NJ8G/+4xErNx5kLSHX8IxvB/Rj9yL2+AB1i4JgKz0MtZ/\n",
296 296 "e4xBI4IZPSmyT0wDcSkUUwula7dT8PFSGrIL6HfrXIJvmYt9YOeN6lVVlQZjLY3N9TSZGmhsbqDJ\n",
297 297 "VE9TcwONZ7ZNpoYz23qaTI3otDpsdLbodfrWrY0tel3rxcZGf+a6Hr2NHU72Lng4++Dh7IO7kxc6\n",
298 298 "bd/tbiBEbyWnDq+Qqqis/OIwdg56rro2rk/3r/kpB0/X8uq27jES0dzYRObz71H63TbiXv0LvlPH\n",
299 299 "WLWeC6mvNbL2m6M0Gy3Mnp+Iu7SSnqMuI4eCj7+l+Nv1eI4ZSsid1+E5dmi7/v5UVcXQWEVJdT4l\n",
300 300 "1QWUVOdTXF1AcVUepTUF2Gj1ONo542DnhIOt84+un7nYOeFo2/oze70DiqrQYjHRYjbRYjFhtrTQ\n",
301 301 "Yj6ztZz5mbn1er2xlur6cqrryqhtqsHFwR0PZ288nX3bApinS+vWy8WPAM9QbHR9+7SyED2NBK0r\n",
302 302 "tHtzFrmZFdz06xHY2EjLw09ZllbOmjMjER2tNBKxem8qRx98HvfhCQx47o/nzeLenaiKysFdeezd\n",
303 303 "ms2k2QMYOCTQ2iV1O+b6BoqXbiDv30vQ6HWE338L/nMmX3SR66r6cjJOH6agIqs1VFW1hiqdVkeA\n",
304 304 "Zwj+HiH4ewQT4PHDdUe7rmmFtShmDI3VVNeVUV1fTlV9eev2zH5FbQnlhiJ83YMI9o6kn3fkmW0E\n",
305 305 "/h7B0homRDclQesKZB0vZdPKdG65bxTOrvbWLqfbU1WVt3cWUNHYwsKpXTsS0dLUzMmXPqB42UYG\n",
306 306 "vvwn/GaM77JjX6mzHeV9A12ZKh3lL0hVVSo27Sb33cU05hcR9ptfEPSL2VSZqzlRcIj00ymkF6TQ\n",
307 307 "YKyjf7/BhPnGnBOqnB3crP0rXJIWs4miqjwKKrI4XZFNQUUOBRXZ1NRXEOAZQj+vCIJ9ogj2jiTS\n",
308 308 "fyDuzrLAtxDWJkGrnSpK6/jqn/u47o6hBAS7W7ucHsOsqDz2XRYx3o7c00UjEWsOHuPIH57HLSGG\n",
309 309 "AS8+jK1nz/hQ/bEWk4VtazPIyShn9k2JBIV27JxevYGqqhRW5pKyaw2H960lT1eK1tGegREjiIsa\n",
310 310 "xYB+QwjyjkCr6X0tz0ZTE4VVua3hqzybgoossorTcLJ3pX/QoLZLb/39hejOLjVoSZv0j7SYzCxf\n",
311 311 "dIiJs2IlZF0mG62Gp6aE8+CKTALd7Jgd23nfuC3GZrJe/TeFX69h4IsP4z9nUqcdq7PpbXVMnTuQ\n",
312 312 "7PQyVnx+mEEjghk1MaLPd5RvMjVwMGs7+zI3k16QgoOtEwOChzDupnu4TRNI4+KtlDy1Eb+rffD8\n",
313 313 "7Qi0Pr3z9bK3dSDSfyCR/gPbfqaoCkWVp8goTCWz8DCr9n9GXWMNUYEJrcGr3yAi/eOxt+2bE+UK\n",
314 314 "0d1Ii9aPa1h5nOYmM7NuSrRqHT1ZoaGZh1dl8vD4UIYHd3w/KcPhdI7+4XmcokMZ+PKfsPP27PBj\n",
315 315 "WEt9rZHvlhzFYlaYdVMiru5964PS1GLkUM5Odp1Yz5HcPQwIHsLI/lOICxmOt6v/+fevqCb/46Xk\n",
316 316 "f7QU9xEJhN9/Cx7DE6xQufXVNFSSWXiEzMLDZBSmkl9+kiCvCAYEJzEofDSx/YZga9Ozl80SoruR\n",
317 317 "U4eXqSCnitVfp3Lng2Oxd5C+MlcirbSehRtyeWlmJJFeHTOqTjG1kP3GRxR8tpzY5/5IwDVTe+VI\n",
318 318 "UPXsjPI7TzFtXhzRcX7WLqlTmS0tHDm1h93p60nJ3kGE/0CSB1zF8OhJl9y/ytJo5PRXqzn13hc4\n",
319 319 "9PMj8uG78ExO6pX/Pi6VydxMTslx0vIOkJq7i4KKbGL7DWFQ+GgGhScT4Bli7RKF6PEkaF0GU7OZ\n",
320 320 "j9/eydQ5A4iI7by5e/qS7TnVfLC3kDfnxuDjZHtFz9VcUcWhux5H7+JM3OuPYu/X+zsCF+XXsOqr\n",
321 321 "VCL6+zBhZn/0+p63ruTFKIqF4wUH2ZW+jv0ntxLoGUbygKsYGTPlijp5K2YzxUs3kP3mx9j5ehL5\n",
322 322 "0F14jRvWpwPXWfVNBo7m7SM1dxepObuw1dszKDyZweHJDAwZir2tTDMixOWSoHUZNixLw2JRmHF9\n",
323 323 "3zzt0Fm+PlLK5qwq/nZ1+xegrjueRcodfyHwhhlE/fnXaLS9sy/OhRibWtiwLI3K8nquvnkw3r7d\n",
324 324 "Z1LY9qisK2Xdwa/YlrYKL2dfRg+YzujYqXi7BnTocRSzmZLlm8h+4yP0Hm5EPXQXXhNHSOA6Q1VV\n",
325 325 "8suzWkNX7i6yi48TFRjPoPBkRkRPxM8j2NolCtEjdEnQWrFiBfv37wcgKSmJa6+99rz7KIrCW2+9\n",
326 326 "haqqPPTQQxd9LmsFrVMnK1i39Bh3PjhGhtd3sLMLUJfUNfPsVZHYXOa0D6XfbefYn15iwPMLCLx2\n",
327 327 "WidV2b2pqsqxg4VsX5vBuOkxJAzr1+MCw6nSDFbvX0RKzveMj5vNVUNuJMCz81daUC0WildsJvuN\n",
328 328 "j7BxdiLqoV/hPWV0j3v9OluTqYG0/AMcyv6eAye34u7szYiYyYyMmUI/74guqUFVVWioQ6muRK2p\n",
329 329 "hKYm1JZmMJlQW0xgOnPd1AwtZ7amZlSTCVDR2OhBbwt6PRq9Ldjo0di2btHbotGfvd0Wjas7GjeP\n",
330 330 "1q2LKxpt72ktFl2r04NWeno669ev58EHHwTgvffeY+zYsSQknNsq9N///pd+/fqxe/fubhe0mo0t\n",
331 331 "fPL2Tq66Np6w6N5/OsoaLIrK0+tz8HbS88exwZf0IaeqKjlvf0r+x0tJ+s9LuA3pHkvoWFNlWT2r\n",
332 332 "vkzFw8eJq66J6/b9CFVVJTV3N6v2f0ZhZS4zh/6CKYOuw8nepetrURRKVm0h+/WP0NrbEvXQXfhM\n",
333 333 "GyOB6wIUxUJGYSp7MzexL2MzDnZOjIyZwoiYyYT6xrRvhn7FglpRhlpdiVJdgVpdiXpmq1RVoNZU\n",
334 334 "olZXgo0NWg9vNO6e4OCIxtYObO1ag5OtHdjatl3X2NqC/sxWo0FtaQFzS2sIa2ndYm5pDWItJtQz\n",
335 335 "t9HcjFpnQDVUo9TWQGM9GieXc8OXm8cP17390PoFovH06VOt6eLSdHrQ+vzzz0lMTCQ+Ph6AzMxM\n",
336 336 "du/ezR133NF2n3379lFTU8OQIUP47LPPul3QWrf0GBoNXHVtfJcet69pNFl4ePVJJkR4cPOgn+7c\n",
337 337 "bWlq5tjD/0dDTj5JH72MfYBPF1XZ/ZlbLGz9rnXOravnJxIY0v3m3Goxm/j++HesPrAYrUbL1cNv\n",
338 338 "JXnA9G6xvIyqKJSu2Ub26x+h0WmJfPgufKePk8B1EYqqkF2cxt6MTezL3IxGo2kNXf0nE+l/4WXJ\n",
339 339 "1DoDlvwclILc1kt+DkpRfmuY8fJB4+6F1tMbjYcXGo/WrfbMVmPf9aNsVYsFtbbmzKW6dWuoRjW0\n",
340 340 "bpWKUtTSQtT6OjQ+/mj9AtH692sNX36BrVtvX2kV66M6fR6turo6XFx++Hbq6uqKwWBo2y8qKiI1\n",
341 341 "NZV77rmHsrKy9h6m0+RklJOXXcmdf+h+6+H1No62Op67KoIHV2Ti72zLxMgLBwRjSTmH7nwUh9Ag\n",
342 342 "Ri59F52jzMr/Yzb61jm3Th4vZdmiQyQlhzJifATaLpyJ/2LqmmrYePgb1qd8TYhvNHdMfpj40O7V\n",
343 343 "L0qj1eJ/9ST8Zk2gbO0Osl75FzlvfkL0o/fiNaF71dodaDVaogMTiA5M4JaJD3KqLIN9mZt5d/Uz\n",
344 344 "mJubmOo3kuGOEXgajCgFOSj5OajNRrQhEeiCI9BF9kc/YQba4DA0Dk7W/nUuSKPTofHwAg+vn7yf\n",
345 345 "amxCKS9BLSlEKS3EkpeFum87Skkhal0NGm9/tAH90IZGoguNRBsahcbbT/5NCeAKgpaLiwu1tbVt\n",
346 346 "+7W1tbi6/jBv0tGjRykvL+fVV1/FZDJRUFDAokWLuPXWW6+s4g5gbGph/bfHmHVjIrZ2MmdrV/B2\n",
347 347 "suW56ZE8siYLbyc98f7nduw2HE7n0F2PEXzbNUT88Q75D+onRA/0wy/QlTVfHyE/u4pZNyZYbako\n",
348 348 "Q0MV3+75NzvS1jAsagKP3fR3QnyirVLLpdJotfjNmoDvjHGUrNzM8SfewM7Xk5hHf4PHyEHWLq97\n",
349 349 "UhRC6iGoxou5ldGYM49R75BKjs0u9rvZ4TVgJLHzn8YzZGCv/NvV2DugCw6H4PDzblNNzShlxaiF\n",
350 350 "eVjyc2jZ+h1KXjZqc/OZ0NUavLShkWgDQ9DYyGdOX9PuU4cnTpxg3bp1bX203n//fcaMGXNeHy2A\n",
351 351 "8vLybnXq8Lv/HkFvZ8PUuQN//s6iQx08Xcsr2/L429XR9HNrDQfFyzdy/PHXiXvlL/jPnmjdAnsQ\n",
352 352 "xaKwe0s2R/afZsb18YTHdN1pVpO5me8OfM6q/YsYO3Amc0begadzzzzNq5jNFC1ZS/bf/oNTTDjR\n",
353 353 "j9yLW2J/a5dlVaqioJw+heX4YSxph7BkHEXr6YMubgi6gYPRxSagcXJBURUyTh9mx/E17MvYTKhv\n",
354 354 "DOPiZjEiZnKXLdrdXSmGapT8bJS81oslLwu1ogxtYAjasCh0kbHoYuLRBF5a31XR/XTJqMPly5ef\n",
355 355 "M+rwuuuuY/HixcyZM+ec1q2ysjIWL17MggULLvpcXRW0stLL2Lr6BHf8IRm9rXyzsIbvTlTw1ZFS\n",
356 356 "3pgdRcU/PqXw6zUkffwyrvEx1i6tRyrIqWLNf48Qm+jP2Gkx6Gw6r9OuqqrsSl/Hl9v/Tphff345\n",
357 357 "4Q9dMoKwKyjNJgo+X0nOm5/gPjye6D/fg3P/81sweiul+DSWtEOYjx/Gkp6Kxsm5NVQNHIJuQCJa\n",
358 358 "t5/uE2gyN3Mo+3u+P76GtPwDDApPZlzcLBLDRnWLPnrdgWpsQjl9CuXUSSwnj2PJTENtakAXHYcu\n",
359 359 "Jg5ddBzaiP6tnfxFtyfzaF1AU6OJj9/ayZxfDKJfWO9ZuqUn+mh3HrzwBv3VRoZ+/BJ2PvJ+XInG\n",
360 360 "BhNrvzlKY72Jq28ehLtnx09AmVGYymebX0dRLNw6aQEDQ4Z2+DG6A0ujkfyPviH33c/xnjySqIfv\n",
361 361 "wjGsn7XL6hRK8WnMe7dh3rMVtaEOXcLQ1mA1cBBaz/a3UNY11bAnYyM70tZQUp1Pcux0JiXOI9RX\n",
362 362 "vkz9L6W6EuVkGpaMY1gy01CK8lv7uZ0NXzFxaFy759q7qqrSoii0WCyYLBZMFqV1q1hosSjYaDXo\n",
363 363 "dTr0Wi22Oh16rQ69rvW6TqPp8S15ErQuYNWXqTi52DFpdmynHkf8NMXUwqF7nySrrJ70+3/PU7P6\n",
364 364 "o+sGHbp7OlVVSdmVx54t2UyeM4ABgwI75HlLa07zxbZ3OFl0jPnj72fswJloNb1/qLu5roFTH3xJ\n",
365 365 "3n+W4H/1JCIX/KpXjIJVyop/CFeGamxGjMdm5AS00QM7ZQqD0prTbD+2iq1HV+Lm5MnkxGtIHjC9\n",
366 366 "z59avBjV2IQlJwMlMw1LZhqWrONo3L2wiU9CF5+EbkBihw4uUFWVepOJqiYjVU1NVDU1UdnURLXR\n",
367 367 "SGVj636VsfW2umYTzRZzW6BqsVjQabXYarXodTpsz1zsdDpsdFosikKLRWkLXi1KaxhrsVhQVLU1\n",
368 368 "fJ0JYk62etzt7HG3t8Pd3h63s9sf/ax13w5PRwec9NZvJZWg9T8yjpXw/fpMbn9gDPp2zlIurpzS\n",
369 369 "bOLQr59AY6Mj7t2/8tdtBXg66Hl4fEiP/3bTXZQWGlj1ZSpBYR5MmTOg3afIG4x1fLv732w9uoJZ\n",
370 370 "w37J7OG3YKfvWwtdA5iqDOT+fRGnv1hJ8K3zCH/gVvRuXT8f2JVQKsp+CFeVZeiGj0U/aiLa/vFd\n",
371 371 "NjWBolg4cmovW44s42jeXoZHT2Jy4jXEBA2Sv/2foCqW1j5exw5hSUvBkpWONjgCXfwQbOKHoo2M\n",
372 372 "/dkO9iaLhcLaOvIMhtZLjaHtenlDI3qdDi8HBzwd7PF0cPjRpXXfy8EBD4fWkKPX6bDV6rCzaQ1I\n",
373 373 "unaGc4ui0KKcaQGzWGhoacFgNFJjbG7dNjdTc2a/xmjEYGymptlIjdFIVZMRW52WAGdnAl1cCHB2\n",
374 374 "JsDF+Zx9b0eHdtd2qSRo/UhjfTOfvLOLebcM7pZzD/UVFmMzh+56DJ2jPYPeexat3gZji4VHvssi\n",
375 375 "3t+Ze0YEWbvEXsPUbGbjiuOUnDYw5+bB+ARcejCwKGY2Hv6Gpbv+xdCo8dw49rd49NCO7h3JWFRG\n",
376 376 "1mv/pmzd94T/7hZC7roenb2dtcu6KMVQjXn3Fsx7t6EUn8Zm2BhsRk5AN3AwGp11v2waGqrYkbaa\n",
377 377 "zUeWATAp8RrGx83GzUm6EPwc1dTc2tJ1LAXLsRSU0kJ0/RPQxSdREx1Hho0DeYZa8gwG8g0GTtUY\n",
378 378 "KKmvx9/ZmVA3V0Ld3Qh1cyPEzY1Qdzf8nJyw72EjIVVVxdDcTFFdHcV19RTX11P0P1uD0YivkxOB\n",
379 379 "Ls6EurkR4eFBhIc7ER7uBLq4oO2AcC9B6wxVVVn5+WHcvByZMKNvjySyJktTMyl3PoLe3ZXEvz+N\n",
380 380 "Vv/DH3at0czDq04yLcaTmxJ/ekJTcXnSUgrZuuYEyVOjGTzy50c3FVRk896ahTjYOnH75IcJ9e3e\n",
381 381 "UzVYQ33mKTL/731qj2QQ9ee7CbpxptWDy49Zsk/QsmE55pQ92CSNwmb0JHRxSd1yWgFVVcksTGXz\n",
382 382 "kWXsP7mFhNCRTEq8hsSwkWhlEtCf1GAykVZewdGCfI7k5HCsxkC9RSHWWEuYiwth/UIIixlAmI8P\n",
383 383 "Qa4u2Hajf6NdodlspqShgaK6evJqasiuriG3uobcmhqqjUbC3NwIPxO8ItzdifDwINTd7bJCpwSt\n",
384 384 "M06mlbJjfSa3P5CMjb5v/UPrLiyNRg7e/mfsfL1IePtJtBf4h1zeYOKhlSe5Ncmf6TE/PXmguDxV\n",
385 385 "FQ2s+jIVV3d7pl8Xj4Pj+SOaLIqZVfsXsWrfZ9w87ndMHnStnM75GdUHjpL5/Lu0VNUS/fhvrDrL\n",
386 386 "vNpiwrx3Oy3rl6HWGdBPnYt+wnQ0zq4//+BuorG5jl3p69mUupR6Yy1TB1/PpIR5uDrKWQiTxUJG\n",
387 387 "ZSXHyso5WlrG0bJyiurq6O/tRYKvL/G+PiT4+hDi5galhZgP78NyaA+W7Ax0MXHYJI1CN3gkWm/5\n",
388 388 "IgutIfVUjYGc6mpyamrIqW69nK6txc/ZiYE+Pgzw9mKgjzcDvL3xdLhwlwkJWrQuWfLRm99z1bXx\n",
389 389 "hEbJh7c1mBsaSbntz9j38yfhjcd/8pt/QY2RP68+yR/GBpMc2j1H2fRUZrPCjnWZZB4rYdZNiQSH\n",
390 390 "/3CKprAyl/fWLMRO78BvZz6Nj1vHdKLvC1RVpXzTLjJfeB8bZ0dinrgPz1GDu+z4SlU5LRtXYt76\n",
391 391 "HdrQSPTT5qEbPKLHLwmTXZzG+kP/Zf/JLSRFjmPakBuJCUzsM+HfoiiklZezs+A0OwtOk15eQYib\n",
392 392 "K/G+viT4+pDg60uUpwf6n2mlUhsbsBw9gPnQXsyp+9C6e6IbMgqbwSPRRsX2+H8nHa3FYiHPYCC9\n",
393 393 "vIL0ikqOl1eQXlGBk62egd7eDDgTvAZ4e+Pv7MShQ4ckaO3dmk3xaQPX3Nq1ayiKVub6Bg7e8icc\n",
394 394 "I4KJf+2RSzq9klneyBPrsnlqSjiJATIqqaPlZJSzbukxEof1Y+TEMNYe+pLlez/mxrG/Zerg6/vE\n",
395 395 "aMLOoFosFC3dQNYrH+IcG0nME7/FJTayc46lqignjmBavxzL8cPox0xBP3UO2sCQTjmeNdU3Gdh2\n",
396 396 "bCUbDi/BTu/AtME3MHbgTOxtO376Emsrrqtn1+nTfJ9fwJ7Thfg6OTEmuB/Jwf1ICvDH8QpH2amK\n",
397 397 "BSU7A/OhPVgO70WprsRm0HBskpLRJQ6zylqTPYGqqpyureN4RcWZAFbB8fIKFFXlncEJfTto1dca\n",
398 398 "+eTtndxy32jcvXrfH2V3Z65r4MAvFuA8IJK4l/98WcPGDxXW8eKWU7w0M5JIee86XENdM19/uYF9\n",
399 399 "tZ/g7ePKA3P/ip9775wnqqspzSbyP/mWnLc/xWdqMtF/uQf7QN8OeW7V3IL5+420rPsW1WJGP20e\n",
400 400 "+rHT0Dj0/r8RRVU4lrePDYf+y/GCFMYOnMm0wTfQzzvC2qW1W2NLCweKitlZcJpdBQVUNhlJ7hfE\n",
401 401 "mJBgkvv1w8+5c9eHVCrKMB/ajeXATiw5Gejik7AZNhabIaPQOHbPtSm7C1VVKW9s5HRGRt8OWt/9\n",
402 402 "9whOrvaMny4T5HW1FkMdB25egNugWAa8+FC75ubZnlvNe7sL+dvV0QS6dt+RXT2NoiqsO/gVS3f/\n",
403 403 "k2F+19Nysj/T5sTRPzHA2qX1Ki219eT+fREFny1rnRLi97ehd21fC61qsWD+fiOmZYvQ+gWhnzO/\n",
404 404 "deRgHzmN9r8qakvYfORbNqcuI9AzlKuG3Miw6Ik9Yvb5GqORDTm5rM3KJrW0jDgf7zOtVsEM9PHu\n",
405 405 "kJFw7aHW1WJO2Y35wPdY0o+gi41vDV1Dk9G4uFmlpp6gT/fRKi6oYfniQ9y1YJwsGt3FTNW1HLj5\n",
406 406 "j3gMTyD2uT9e0YfB6hMVfJ1ayutzYvBy7P7/iXZ3JdUFvP/dX1FVlftmLcTfI5iS0wZWfZVKcLgn\n",
407 407 "k6+OlWWpOpixqIyTr/6L8g07ifjD7YTccS1au0tbXkVVLJh3b8G0dBFaT29sr78DXez5a8n2VWZL\n",
408 408 "C/tPbmX9oa8prT7NtCE3MmXQtd2u83y9ycTm3FOsycompbiEMcH9mBkVyZjgfjh1w6V21KaG1j5d\n",
409 409 "B3ZiOXoAXXgMuuFjsRk2Fq2H9HX+sT4btFRF5fMP9jBoZAjxSTIvU1dqMdSx/4bf4zkmif7P/L5D\n",
410 410 "vnF/fqiE7bnVvDY7GmcJze2iqiqbUpfy1Y53uWbUXcwcevM5Q+dNzWY2rThOcYGBq28ehG9gzxmp\n",
411 411 "1lPUncgm8/n3qM88RfRjvyFg3pSLtvSqioJ533ZMSz9F4+yK7Q13YjOw6zrY90SnSjNYm/IV+zM3\n",
412 412 "MzxmEtOT5hPuZ70VQJpaWtiWl8+ak1nsKSxieGAAM6MimRQW2i3D1cWozcbWzvT7v8d8eB/aoBBs\n",
413 413 "Rk3EZsR4tO59c84zi6KSV2PkWEk9/YwFfTNoHT9URMruPG757Sg0sqxLl1GaTWf6ZEUx4Pkra8n6\n",
414 414 "MVVVeX9PIScrGvm/mVHYdeKCyb1Rc0sT/1r/f+SVZfDg3JcI8rr4IsnHDxexZVU6oyZFkpQc2mdP\n",
415 415 "TXWmql0pZDz7D1RVpf+T9+M1bljbbaqiYDmwE9PST8HOHtsb7kQXnyTvw2Wobaxmy5FlrD/0X3zc\n",
416 416 "ApiRdHOXnVY0WSx8n1/Ad1nZbM/LJ9HPl5lRkUwJD8etG09se6lUcwuWoymY927FnLIHXVgUNqMn\n",
417 417 "YTNsLBqX3vvlzGRWyKho5FhJPcdKGjhe1oCHgw1xfk5Mcq7se0HL1GzmP2/sYO4vZQb4rqQqCkfu\n",
418 418 "X4hiNjP4g+c6fPJGRVV5dVsedc0Wnp4ajq1OwtalKK0u4PXlf6GfVwT3TH8Se9ufH1VUU9nIqq9S\n",
419 419 "cXCyZcZ18Ti59PwPiO5GVVVKVm4m84X3cYoMpv8T9+HQXIHpm09Aq209RThohASsK2BRzOw/uZV1\n",
420 420 "KV91+mnFrKoqvjx2nNUns4j28mRWVCTTIiLwcuy9o/hUUzOW1P2Y92zBfOQAupj41pauock9viN9\n",
421 421 "rdHM8bKG1mBV2kB2ZRNhHvbE+TkR7+dMvL8T7g6twb1Pnjr8fn0mhpomZt80qIOqEpci47l3qd5/\n",
422 422 "hOFfvYXOoXM+mM2Kyoubc7Eo8OSUMPQStn5SSvYOPvjuWa5L/jVXDbnpsj60LRaFXZuyOHawkOnX\n",
423 423 "xhER2zGj5sS5FFMLxe+8j+77lehdHXG45V4cps2UgNXBfnxacVj0RGYN+yWhvlc2SMpksbA59xRf\n",
424 424 "HEvjVI2BGwbGcv2AWAJdetYamB1BNTa1dqTfsxVLeiq6uCGtoWvwyB4xZYSiqmSWN7K3oJZ9+QYK\n",
425 425 "a5uJ9XEizr81WMX6OuJwkcnO+1zQMlQ18tk/dnPHH8bg4mbfgZWJn5L30Tfk//u/jFzxAbaenTs6\n",
426 426 "pcWi8MLmU2g18PjkcGzk1PB5FFVh6a5/sjl1GQ/Oe4n+Qe3/0nH6VBVrvj5KRKwPE2b0l8XYO5BS\n",
427 427 "XYnpy3+2jvC65jby9+RR8Nky+t0yl4jf39bjFq3uCWobq9mU+i3rD31NoGcoM4f9kqTIcZc1d1xJ\n",
428 428 "fT3/PZ7Of4+fIMLdnZvjBzIlPOxnJw7tK9SGOswHdmHeuxVLVjo2g0dhM2ZK6ynwbvQa1TebOVhY\n",
429 429 "x76CWvYV1OJub8OIEFdGBrsy0M/5kj9b+lzQWrH4ED6Broye1DmTBIrzlX63neOPvsbIle/jGNI1\n",
430 430 "s4mbLArPbczFzkbLY5PC0EnYalPfZODvq5+iuaWJB+f8H+7O3lf8nMamFjatOE5pUS2z5w/CTzrK\n",
431 431 "XxHVbKZl/TJMK75AP2kWtvN+2fat31hczslX/kn5+p1EPHh5IxTFpTNbWtiTsZE1Bz6nsbmOGUk3\n",
432 432 "MzFh7kUnQVVUlT2nC/niWBoHioq5OiaK+XFxRHlK95SfohiqMe/djnnnRtTyktb+XGOmoA2P6fJW\n",
433 433 "W1VVKahpZm+BgX0FtWRWNBLv58zIEFdGBLvi384uEn0qaOVnV7L2m2P8asFY9LKeYZeoPnCUlDse\n",
434 434 "Ydjiv+E2eECXHttkVvjrxhycbG14ZGKohC0gt/QEbyz7C8NjJvGL8Q90eOffsx3lh48PZ/jYcBlo\n",
435 435 "0g7m44cxffJ3NF4+2N32O7QBF54ktm2E4sk8Yh7/Df5zJrdrLjrx084uaL3m4Bek5e1nYsIcpifd\n",
436 436 "jI9b65xyBmMzyzIy+PLYcextdPwiPo7ZMdE4XeEM7X2RUnIa864ttOzcBBoN+jFTWkOXb+fN36eq\n",
437 437 "KifKG9maXc3ufAMWRWVkiBsjgl0ZHOiCfQcMrOozQUuxKHz2j92MmhxJ/3j/TqhM/K+GnAL2zruP\n",
438 438 "hK00V+0AACAASURBVDcex2dqslVqaDYrPLMhBw8HG/40vm+HrW3HVrJoy5vcNe1RRsdO67TjGKqb\n",
439 439 "WPP1EbQ6DTNvSMDVvfv3v+gOlKpyTIs/wJKTgd0tv0U3NPmSvtFX7jxIxnP/QIOG/k//Ds9kWUqs\n",
440 440 "s5QbiliX8hVbj64kvN8oGp1Hs7mgknGh/8/eeUZVdW5t+9r03nvvKNJRsYIdrIktakzvPTG9fCaa\n",
441 441 "k95PeqJpJ1GTaNTYsQuiIlVAQHrvve6+vh8knuMbCyBlb+QawwFD2GtNdlnrfp455z1dWDXGj2A7\n",
442 442 "25HauX5AEASUBTnI448gTziByNahW3SFR/abMWppk5ijBY0cK2hCS0PEdE9zJruZ4Wau1++v4Q0j\n",
443 443 "tNISSrmQXs0t940b+SAMApL6RhIWPIj7Y7fhfNtNQxqLWK5kbUwBNkY6PBPhMmSuykOFTC7lp6Mf\n",
444 444 "klWaxNM3vz8o40iUSoGzsYUkx5cwa+HoEUf5qyDIpMgObEe6dyvasxehs2AFIt3e1Y8KSiXVu46Q\n",
445 445 "+9Y3GPm64/P/HsbYV33Hzqgy1e3tfJucxJ85uVgpi/DTr2PZ+GWE+85UC9d5dUOQy1FkJneLrnNn\n",
446 446 "0fQNQHvqHDRDwhFp9y5lXtsu5XhhE8cKmmjpkjPd05zpnuZ4WuoPqC64IYSWuEvG9x/HseyusSMm\n",
447 447 "i4OAvLOLxCWPYTVjAt7P3z/U4QAglil4JaYQR1NdnprifMOIreaOBj7Y/jQWxjY8NPc1DHQHdwB3\n",
448 448 "VXkL+347h4OLGTMW+qGrN2Im+7/I05OQ/OcLNOyd0L39ketOkVwyQ3H2ZLyfu6/fZije6JS1tPJd\n",
449 449 "ahoxBYUsGT2Ku4ICsNTXI6XwJPsSN1PTXE502ApmBC7GUG+kSWEgELo6kSfGIT95GEVpIVrhkWhP\n",
450 450 "nY2G56grCqVWsZy4omaOFjRR3NTFVDczpnuZ429rNGgZjhtCaB3bm41cpmT2zWMGKKoR/kYpl5N6\n",
451 451 "z8vomJvg/8krKrV72CVT8PKBAtzM9XhisrNKxTYQVDWW8Pa2J4gYM5+lk+4fsr9XKpFzfF8OJfkN\n",
452 452 "zF0eiJPbSHGw0NaC5MfPUBTnoXvbI2iFhPfr8WUtbRR9sem/MxQfu22kQ7GPFDQ1sSE5ldjSMlaO\n",
453 453 "8eP2QH/M9f+ZDi+qzmZf0mZSCk8ydcw85oauxNbceQgivjFQ1td0D08/eQhEGmhPmYXWlFloWNqg\n",
454 454 "UAoklLWw/0IDGVXtjHM2YYanBWFOxkPirzjshVZDbTu/fpvA3WumYmA40pkzkAiCQNZLH9BZVEHY\n",
455 455 "z++joaN62+id0m6x5WWlz6MTnYat2MqrzODDHc+yYurDTA+8eajDASA/q4ZDf2bhF+zA5FleaN2g\n",
456 456 "DSnylNNIvv8ErUkz0Vl2F6IBHLUirqoj//2N1MacxP3x23C9e+lIh2IPya6v59vkVBIrK7k9MIBV\n",
457 457 "/mMw0b1211ljWy0xKb9xNH0no5xCmD9uNb6ON+5w74FGEASU+dnITh6iLiWZI54zOGTmj5WZEfP9\n",
458 458 "rJniZobBEFvODGuhJQgCf/yYjJu3FWOnuA1sYCNQ+NnPVO08TPjOL9EyVl3X3w6pghf35+NnY8hD\n",
459 459 "ExyH3QUwOT+Wr/ev5+F56wj1nDrU4VxCZ4eUQzvP01jfwbzlgTeUDYTQ2YHkly9R5GSg98Bzgzr4\n",
460 460 "ue1CIblvfk17dj5ezz+Aw9I5Ix2KVyC3oYF/JySSWVvHXcGB3DLGr08dhGJpJycy97A/eTOGuibM\n",
461 461 "G3vrSB3XACAIAueq2tmTXU9KRStTjcTMKYnDNfskWqGT0IqYg+aowCF9vw9roVWYU8vxfRe484nJ\n",
462 462 "aI7MvhtQqnYe4sIbXzJhz7fo2VkPdTjXpF0i54X9+QTaGfNAuMOwEVtH0razNf4bnlvyEZ72qpkq\n",
463 463 "FwSB7LQqju3LIXSiC+GRHmgMcwd/eWYKkg0fohkcju6q+4fMCbvxTBq5//oShVjSPUNx2sgIn7+p\n",
464 464 "7ejgs7NJHCsu5oHQEG4Z44ee1vXXFCqVir/quDb9Vce1cqSOqx9ol8g5nN/InuwGRCJYONqKmV4W\n",
465 465 "GP61e6VsaUJ+6ijy2BgEcRfaU2ejNWX2gFpFXAm1FFo76kzxtjL4658+lgba/7hYKJUCP30WT0SU\n",
466 466 "D54jo0EGlLasfM4uf4LxWz/F2M9rqMPpMa1iOS/tz2eUjSGPTnJS6wJ5QRDYGv818VkHeGn559ip\n",
467 467 "QW1IW4uYA39kIBHLmbs8AEvrwS3UHwwEcRfSXzciTz2N7n1PoxUw9toPGuiYBIGafSfIfetr9Oyt\n",
468 468 "8V37KKZBo4Y6rCGjQybjh9RzbMrIZJnfKO4PDelRirAvFFVnszdpE6mF8d11XGGrsDW7vE/aCJcn\n",
469 469 "t76TPdn1nCxqZqyTCQtGWxFgZ3jFBYMgCCiL85HHHUR2+hiaTm5oRUShNW7KoC141FJodZp7kNfQ\n",
470 470 "SV59J3n1XWiIwOei8OoWX7V5daSeLuPWh8JHVmwDiKyljdNR9+D1wgM4LB44b6aBokOq4NWDf1s/\n",
471 471 "uKrluB65QsbGg29RWpfPC0v/jamhxVCH1GMEQeDc2TLiD+UxYbonoRNdh43JqSI3E/E376Pp7Yfu\n",
472 472 "7Y8iMlQtIamUySnfvJuCj37AfEIw3i8+gKH7jXPTlyuV7Mi5wOdnkwh3dODJ8PE4mgzOLlNDWw0x\n",
473 473 "Kb9zLH0no51DmT92NT6OQSP3qiugFATOlrbya3oN9R1S5o+yItrXEnP93qVhBZkURWoCstgYFLnn\n",
474 474 "0Ro7Ge2IKDR8/UfsHf6X/5s6FASBug7ZX6Kr+19ufReSTineVgZE+Fox3dMck5G28n5HUCpJufMF\n",
475 475 "DFwdGP3GmqEOp8+I5d3jerQ0RLwyww0dNUozi6WdfLLrRUSIeHLR21ccD6LqNDV0sH9rBppaGkQv\n",
476 476 "DcDUXH1NTgWpFOkfPyGPP4zuXY+jNXbKUId0VeQdnZRs+J3ib3/DbuEMPJ++Gz3b6x/LpKoIgkBc\n",
477 477 "aRkfnD6DmZ4ez0+aiL/N0JQ7/F3HtS9pE8b6Zswbu5pw3xloaozcrwAUSoHjhU38dq4GLQ0RK4Js\n",
478 478 "meJm1i+2DMqmhv+mFuUytKfO6U4tWvV/BkzthdblyEwu50xyBb6zfThZ3D2zaKyTMdE+lgQ7GN/Q\n",
479 479 "7uD9ScHHP1J37Azjt32mkh2GvUGmUPLeiRKau+Ssn+0x5F0qPaGlo5F3/3gSF2tv7o96We0vzkql\n",
480 480 "QFJcEYlxRUTO9WVMqPo1KiiK8pB88x4ieyf07n4SkYnZUIfUY6QNzRR+/jMVv+7F+fabcX909bCz\n",
481 481 "hMiur+eDU2eobu/gmYnhTHdzVYn3mFKpIKUgjr1Jm6hrqSQ6dCUzgm7GQHd4Pf89RSJXEpPbwNb0\n",
482 482 "WuyMdVgRZEuYo/GAvFaCIKAsykV2IgZ5wnE03XzQioxCK2xyv3UEDzuhpVAo+f7jOKKXBuDs3p1C\n",
483 483 "aZPIOVbQRExuA81dcmZ7WxDlY4m9ycDk4W8E6o8lkLHmTSYe+E4tit97gkIp8Fl8GQWNXbwZ5anS\n",
484 484 "u6DVTWW8vfUxpvjNZdnkB1XiZtFf1FW3sW9rOsYmesy+eQzGpr1zSR8KBEFAFrMD2a4t6Kx+CK1J\n",
485 485 "M9T2NemqqCH/g++oOxiP+yO34nLPMjT11ftaWdvRwSdnznKytIxHxoWxdPQotDVVczFVUJ3FvsRN\n",
486 486 "pBWdItJ/AdGhK7ExcxzqsAaFdomc3dn17Dxfx2gbQ1YE2TLaZvA62AWpFHlyPPITMSiKc9EKn4Z2\n",
487 487 "ZDQa7t7X9XkedkIrI6mc7HOV3HLv+Mv+vKChi4O5DRwtaMLNXI8oH0umuJv1y+DI/kImVSDukiER\n",
488 488 "y5CI5Ui6ZIjF8u7vxTIkXd1fxWI5UrEMbR0tjEx0MTLWxchEDyMTXQxN9DAy1kVXT6vfL/hdZVWc\n",
489 489 "nnc/wd++gcXE4H499lAjCAIbEytJLGvl7bleWBqo3k5dQXUW7/+xhuVTHmJm0OKhDmdAUMiVJMQW\n",
490 490 "knqqhKlRPgSMVV3PM6GrA/GGjxBqq9B7Yu2QdDUNBO25xeS98w0tadl4PnMPjivmodEPXXiDiUKp\n",
491 491 "ZEtmFl8lJV8sdDcaQN+y/qS+tZqDKb9zLONPRjuHMm/srcPWj6uxU8b2zFr2X2hggospywNtcBvi\n",
492 492 "8gFlfW13AX3cQUQ6umhFRqM9eWafdqmHldBSyJV891Ec81cE4uh6dfdpqUJJQmkrMbkNZNd2MNXd\n",
493 493 "jPmjrPC2GtwaF0EQaKrvpLK0iYqSZipKmmht6kJXXxs9PS109bXR/eurnp4Wunra6Op3f9XT00JH\n",
494 494 "TwupVEFHq4T2VjHtbX99bZXQ3ipBqRQuEWFmlga4eFjg4GLWJ8NIRZeEhJsewmFZNG4PrBiAZ2To\n",
495 495 "EQSB387VcCC3gXfmemFnrDqr+fyqTN7/Yw33R73CWO9pQx3OgFNX3UbMHxno6GkTtXgMphaqVYOm\n",
496 496 "KC1E/OnraPoFo3vbIwNqPjpUNKecJ/eNr5DU1uP9woPYLpimFjf7rLo61h2PQ09bi9cip+Jprp4T\n",
497 497 "CbrruHazP3kLBrrGzB+7etj4cdV1SNmSVsOJwiZmeFqwLMAGW2PV+gwJSiXKCxndqcWUU2iODkY7\n",
498 498 "MgrNoPGIergrOqyEVlpCKQXZtSy9q3ct1PUdUg7nNbIrq54xtobcPc4BhwFKK8plCqorWqksaaKi\n",
499 499 "tJnKkia0dTRxcDXH0cUMB1dzrG2N+s1XSCqR094muSjE6mvbKS1opL6mDXtnM1w9LXDxtMTWweSa\n",
500 500 "5xQEgcw1b6HokhD09Xq1uNheD7uy6vjtXA1vRXviqgLF2XmVGby/fQ0PRb9GqJdqGZEOJEqFkqT4\n",
501 501 "YhJji5g4w4uQCS4q0Zkoi41BsmUDurc9hPbkWUMdzoAiCAINJ86S++ZXoKmBz4sPYhmpmh5cHVIp\n",
502 502 "n51NYl9ePmsmhnOzr49Kxtlb/uvHtZma5jLmhN7CzKAlGOmpn+lvq1h+cTE719eSZQE2mPWyg3Ao\n",
503 503 "ELo6kJ85gSz2IEJdFVqTZqIdGYWGo+tVHzdshJZcpuC7j+JYdGsw9s59K0AVy5Vsz6hle2YtM70s\n",
504 504 "WB1id911OoIgUF7UREFOLRUlzdRVt2FlY3iJsBqKGhSJWE55USOlhQ2UFDTQ1izGyd0CV09LXDwt\n",
505 505 "sLQx+sfFqeyXPyn59ncm7N+AlqFq7SwMFEfyG/k2oYJ/zfHEx3ro/uaLImvuayrn9j5YNNZ1ELM9\n",
506 506 "A4CoJQFYWA/N9AFBKkHy0+co8s6j98SraDq5DUkcQ4GgVFK9+yh5721E18YCnxcfxDw8aKjDusiR\n",
507 507 "wiLeOnmKCU6OPDsx/LIzCYcDRTU53XMV82OZ7BfN3LBV2Ftc/WavCnTJFGzPrGNHZi0RHuasDrbD\n",
508 508 "0lD1BdblUFaWIos9iPzkIUSWNmhHRqM1YRoig39el4aN0Eo5VUJJfj2L7wi77nM0d8n4JbWaE4XN\n",
509 509 "LA+w4aYx1uj2soaro03C+dQKMhLL0dTSwDfQHidXc+ycTNDWUb06h442CWWFjZQUNFBa2IBMqsDV\n",
510 510 "0xK/EEfcvCxpPZdD8m3PEv7nlxh6qe4HWtbciqS2EUFQgkKJoFQiKIXu7wUlgkIJyu6vgqBEJBKh\n",
511 511 "52CDnqMdGtqXf11Ol7TwUVwpa2e6EWg/+F1AuRXpfLDjaR6Zt55gj8mDfn5VQlAKpCWUcupIPuOm\n",
512 512 "ujN2itugusorq8sRf/oGGo4u6N67Zsgc3ocapVxO1R8x5H/wPYZeLni/8ACmwaOHLJ7Ktjbeioun\n",
513 513 "qLmF1yKnMt7RYchiGUwa2+s4lLqVI+e242Xvz7yxqxnjMlbldvCkCiX7cur5Na2GYAdjbg+1x9FU\n",
514 514 "dUoyrgdBoUCRntTtzXU+Ba3gCWhFRqE5Ouji2J9hIbRkUgUbP4xlyZ1h/To7rbxFzHeJleTVd3JX\n",
515 515 "mAMzvMyv6h4uKAWK8xvISCyjpKAB7zG2BI5zxt7ZVOXe+NeipamLotw60hPLkXRKME44wcQ7puF6\n",
516 516 "07ShDg2lXE5XaRUdBaV05JfSkV9CR0EJHfmlKLok6NpZIdLUQKTx1z9NDdDQQCQSdefUNUQXfy4o\n",
517 517 "lIgraxHX1KNna4m+iyP6LvYYuDqg7+LQ/dXVgSyJFm8dK2HNVGcmuQ5ey/6F8jQ+3Pksj8x7nWCP\n",
518 518 "SYN2XlWnpbGTmB3nkYhlRC8JwHoQBLA88SSSH/6NzpI70Jq5QO0+0wOBUiqjfNNuCv79I2ahY/B6\n",
519 519 "/j6MR3kO2vnlSiW/pGfybUoqtwf6c29IMDoq2k04kEhkXcSd38f+5C1oamgyN2wVk0dHo6M9tB27\n",
520 520 "CqXAkfxGfk6pxs1cj7vGOuBpOXwXJ0JbC7L4I93eXF2d3WN/ps4hraxS/YVWYlwRlaXN3LQ6ZEDO\n",
521 521 "mVndzoazFUgVAvePdyDU8VIx19YiJjO5nIykCvQNtAkY58ToIAd0VdgeoKco5XKO3f069e4B1GqZ\n",
522 522 "4zHKmuBwFxxczAblRiNtaqXhRAKtmXndwqqglK6SSnRtLDH0csHQ0wVDT1cMvbu/6tpZ9SkupUyO\n",
523 523 "uLKGzpJKukor6SqpvPh9Z2klSrEUDUdbsk3tcZoZTtTKaejbD+xop5zyVD7a+RyPzf8Xge4TB/Rc\n",
524 524 "6oggCGQmVxB74ALBE1wIn+aJ1gB0DwtyOdLfNiJPikfv8bVoevj0+znUHUWXhNIft1P0xS9YRozD\n",
525 525 "67n7BtxlPqO2lteOx2Kmp8drEVNxNTMd0POpA4IgkFF8hv3Jv1JQfZ6ZQUuYHbIcC6PBteARBIFT\n",
526 526 "JS38mFSFka4m94xzIMBOtSYjDCQXx/7ExiA7fYzcB15Rb6EllcjZ+GEst9wzDiu7gVvVCoJAXHEz\n",
527 527 "3ydW4miiyz1jHRDq2klPLKOypBnfADsCxzlh6zi8Puy5b31NS2oWYVs+QiJVcj6lknNnS9HU0iA4\n",
528 528 "3AW/YAd0dPtPUAqCQEduMbWH46k7FE9rZh4Wk0IxC/HrFlVeLhi4Ow+6r4+8rYPOkgrKTqVzZvsJ\n",
529 529 "7PJzMHG0wSpiHJYR47CYGIyWUf/VDGWXpfLRzmd5fOGbBLpN6LfjDkfaWsQc2ZVFQ107s28ag4un\n",
530 530 "Zb8dW9nUgPjTfyEyMkbvwecQGalf4fFgIm/voGTDVoo3/Ibt3Eg819yFvpNdv55DqlDwVVIyf2Tl\n",
531 531 "8NzkiSzw9hrZXbwMlY3FHEj+jfis/QR7TGbu2FV42fsP+Hkzq9v5NqECqULJ3WMdGO9sckO/PoJU\n",
532 532 "SmpmpnoLrYTjBdRVt7Ng5eAUZEplCn6LyaM0sQwDY12mR7gzJtheJeuurpea/bFkr/2YSQe+R8fq\n",
533 533 "v63RgiBQWtDIuYRSSgsb8Q2wIzjcpc/pG6VESuPpVGoPnaLuUDyCUoHNrMlYz56MxaRQlTNL7JAq\n",
534 534 "ePNwAcYlJSwWV9Aan0xLajYm/t5YTh2LZcQ4TEP8rljzdS2yy1L4aOdzPLHwLQLcwvs5+uFLflYN\n",
535 535 "R3Zn4+xhwbS5vhgYXd/7RlGUh/jj19CeuQDthSsv1luMcG2kTa0Uf7WZsp93Yn/zbDyeuAM9++vf\n",
536 536 "VclvbOSFw8ewNTRg/fRIrA1ujKac66FD3Max9J3EpPyGuZE10WGrGO8zvd/tIeo7pGw8W0lGdTv3\n",
537 537 "jHNguufVS21uJNS6RksilrHxg1hWPhiOpfXAb0uWFTZyfF8OIg0RY2d6sbmklfoOGS9Mc1WJ9v/+\n",
538 538 "pKusitPR9xH6y/uYhfhd8ffaW8WkJ5WTkViOhbUhEdG+PaqTk9Q2UHfkNHWH4mmIS8JolAfWsydj\n",
539 539 "M3syRqM8VH4FpFAKfHG6nPPV7fwryhNLDSVNiek0nEikIS6RzuIKLKaE4bRyPlYzJ/bY6DGrNJlP\n",
540 540 "dr3AEwvfwt/18qa7I1wZqUTOqSP5nE+tZOocbwLCnPpkBfF3PZbuPU+q/KxCVUZS30jRl5up2Lwb\n",
541 541 "+yVReDx+e58El0Kp5D/pGWxMSePpieEsGeWr8tcIVUOhlJOcH8v+5C3UNlcwJ2Q50wNvxsTg+vzF\n",
542 542 "pIrubv2tGbUsHG3FiiBb9Pvg0TicUWuhdepoPs0NncxbHjig52yoayd2/wXqatqJiPLBN8AOkUiE\n",
543 543 "IAjsv9DAD0lVrA6xZZGf9bBQ8IJCwdklj2EzZwruj67u0WMUCiUZSeWcPlqAi6cFU2b7/GMwsCAI\n",
544 544 "NJ1Opfjb32g8nYZV5HisZ0/GesYEdCzVZybc3wiCwPbMOrZl1LJ+tscl9g/S+iZqD8VTvmkXXeXV\n",
545 545 "OK6cj9OtCzFwuXI31PnSRP696yWeXPQ2Y1zGDcafMGyprWrl0M7zaGiImH3TmB6XFQiCgGzPb8gO\n",
546 546 "7UJvzXo03b0HONIbA0ldI0VfbaZiy55uwfXYbT0WXBWtbbx09BhKQeDtGdNxNh1J314vRTU5HEj+\n",
547 547 "laS844zzmU5U6ArcbUf16hiCIJBQ2srXCeW4mevzQLjjgPlPqjtqK7TEXTK++zCWWx+egLnlwPjp\n",
548 548 "dLZLOHW0gAvpVYyP9CBkoutli20rWsS8e7wEAx1Nno1wwcpQtZxte0vBJz/ScDKZcb//u9fpEqlE\n",
549 549 "TtLJYlJOleAf5kj4NA90NASq/zxM8be/o5RKcbt/BQ7LotE0UP0Zdj3hVEkzH8eV8dQUZya7/VMw\n",
550 550 "tuUUUL55D5V/xGAyxhun2xZhGzUVDd3/vk8ySxL5964XWXPTu/i59M5wd4TLo1QKpCeWEX8oj4Cx\n",
551 551 "Tkyc4YX2VYaFCzIpku8+QVlejN7Tr6NhYTWI0d4YSOoaKfpyU7fgWhqNx+O3XXFWqiAI7Mi5wIen\n",
552 552 "E7g3JIg7gwLRHEnf9iutnU0cTd/JodRtWJnYERW6okdpxbJmMV+fKae6TcrDE50Y6zQifq+G2gqt\n",
553 553 "kwdzaW+TEL00oN/PIZMpSIkvJulkMX4hDkyY7om+wdXFk0IpsDmtmt1Z9Tw2yYkID/Uc99CcmkXK\n",
554 554 "7c8x6eAP6Dn0vauuo01C/PZk6rftwTI3FYuQUbg/uBLLyHHDstYlt76TdQcLWexvzbIAm8umNRRi\n",
555 555 "CTX7YynftIv27EIclkfhdOsiqozaeO+Pp1hz03v4uVy/D9wIl9LRJuHYvhwqS5uZtcgPD99/3tiF\n",
556 556 "tha6PlmHyMQMvQefv2H9sQaL/xVcDsuicX/sUsFV39nJuuOxVLa1886s6fhY9l+Dwwj/RKGUk5R3\n",
557 557 "gpiU36hqKmVW8FJmBi3BzPDS571DqmBzajUxuQ2sCrZjkZ8V2oPoY6euqKXQGuXrz/cfxXH7Y5P+\n",
558 558 "kZ66HgSlQNa5Sk4ezMPeyZSp0T693i3Lqe3g3eMl+Nka8shEJwyvsoJWNeQdnZyadRc+Lz2E3aIZ\n",
559 559 "fT5Oa0YuxRt+ozbmJOZRkZS7BlMtN2DKbG9GBzugoQLjUwaC2nYprx4sYJSNIY9NckbrKn9nR1E5\n",
560 560 "FVv2ULr5T2r023C/YxkTHnjkkl2uEfqX4rx6Dv+ZhY2DMdPnj744kUFZUULXh2vRmjANnWV3DcuF\n",
561 561 "gKoiqW3oFly/7r0ouE52tvN67EkWj/Ll0XFhN6Qv1lBSUptHTOpvJOQcJtRzKnNCb8HT3p/DeY18\n",
562 562 "n1TJWEcT7hnngIWBejq6DwVqKbTaag2RiuXMvnlMvx23uqKFQzvOo6EpYtq8UdccSn01xDIF3yRU\n",
563 563 "kFTexvPTXNXGPyTz6bcRlEoCPnml148VFApqY05SvOE3ukoqcblnKU6rb0LHvHtLuaKkiRP7LyCT\n",
564 564 "KYiI8sXN23JYFrN2ShW8dawYuVJg7Uz3qwrtupYq1v98D8t05mB0rJT2vGI8n7wLxxXz0NAZuYgN\n",
565 565 "BDKZgrPHC0lLKCVsihshJvXIN36AzqoH0J46e6jDu2GR1DZw/qtNfFZXTYm3M29Oi2BiUP9d30fo\n",
566 566 "Pe1dLRzL2MXu1GPUay3FxMCKZ6b5EGCvntmaoaSnQktz3bp16wY+nGtTVFRE8vFa5q8IRFfv+m9G\n",
567 567 "SqXA2ROFHNmdzaSZXsxYMBoTs+vbJdPS1GCCiykOJrq8f6KEli45AXZGaKrwTk713uOUb9pF6I/v\n",
568 568 "oKHTu12V+uMJpN79Ei1p2bjet5wx7z2PxcSQS2wZTMz08Q9zxMBIhxP7cii8UIejqzl6ajBItDdo\n",
569 569 "a2oQ6WFOXn0nPyRVEexgjOlljGtbOhr5168PMXf8rcxeeD8Oy6IxC/On9MftFHz4A1rGBt3dlyO7\n",
570 570 "K/2KpqYGLp6W+Pjb0bJ9G3r7/0PLsicxnz59WAp/dSGvq5MXmmrwCRrNMyVNtLz6KR15xRh5u6Jj\n",
571 571 "oX6NMsMCDR2Sam051xLIDHctjDo3EZP4Ba2dTdiaOWKkP7w8IweSqqoqPDw8rvl7KrWj1VShx8yF\n",
572 572 "V7Yc6CktTV3s35qOSEPE3GUB1y2wLkdzl4yP4kpp7pLz2mwPLFVwu1VcVcep2XcR+tO7mIX13NCu\n",
573 573 "I7+EnPWf05FXjO+6x7GJmtqjm5VCoSQ5vpjE2CImzfImeLxzn1rwVZ0DFxr4LrGSxyY5Efk/NXud\n",
574 574 "knb+9euDhHhM4ZapD//jcY1n0sh//zvElTV4PXMP9otnd48OGqFfEBQKpL98hfx8Kg3LnuZIfCPG\n",
575 575 "ZnpMnz8aSxv12H0eLgiCwO9Z2XyakMhLUyaxwKe7y1PW3ErJ939Q+t02LCaF4PHkHZj4jzjyDxbn\n",
576 576 "q9v5+GQZjia6PDbZCeu/Gryqm8o4nPYHJzJ342Hnx5yQ5YR4TEZDY+T6dDXUMnXo4+WHkcn1daxl\n",
577 577 "pVVybG8O46a6MXaK+4DWDQmCwOa0Gvbl1LNutgfeVqpjsicolSStXIN5eBBez9zTo8fImlvJ/+gH\n",
578 578 "KrcdwOOx23G9d1mfaosaats58EcGWtqaRC/xx9RCdZ6X/iKvvpM3jhQx0dWU+8Y7olRKeXfbE9ib\n",
579 579 "u3LvnJeuKkwb4pPJe3cDsqYWvJ65B7tFM0d2uK4TQdyF+LM3QKlA7/G1iAwMUSiUpJ0p5cyxAvxC\n",
580 580 "HJk007NfdstHuDodUinrTsSR19jIx3Nm427+z50reUcnZf/5k+Kvt2AS4IPHU3diPrb/G6BG6KZD\n",
581 581 "quD7xEriS5p5ZKITU90uP2pNKhNz5sJhDqZupbmjnplBS5keeNM/iudH6EYthdb/nXXYG8RdP2Jl\n",
582 582 "SQAAIABJREFUMg7vyqKuspV5K4L6dQj1tYgtauKz+HIen+xEhLtq5LmLvt5Czd7jjN/xxTVNNZVy\n",
583 583 "OWU//0nBh99jOy8Sr+fvQ9fK4rrOr1QKJJ0sJjG2kEkzvQgOdxl2u1ttEjnvnSihVSzDTroBPW0t\n",
584 584 "nlz4Vo9WgYIg0BCbSN67G1B0dOH13L3YzoscEVx9QGhrpeuDV9BwcEH3vqf/sUvY2S4h7mAehRfq\n",
585 585 "mDLbG/9Qx2H3XlQVLtQ3sObgIcba2/Py1MnoXePaoxBLqPh1L0Vf/IK+iyOeT92JxZSwkXRvP3Km\n",
586 586 "pIXPTpUR5mTC/eMdMO7haLXC6mwOpW3j7IUjBHtMZnbIMnwdg0dem//hhhJaZYWN7N+WjudoGyKi\n",
587 587 "fK/qqTNQ5Nd38tqhQub6WrI6xG5I34yt5/NIvOVJJu7feFUjTeiuw8p59VN0bCwY/fqTGPt59Wss\n",
588 588 "w313S6FU8vKW/0dJfTnPLvmYsc69W/kJgkD9kdPkvb8RQa7A5+WHsJ45Mmi6pygb6+h650W0Qiag\n",
589 589 "s/K+q37uqitaOLo7G6VCyYyFo3FwUY1F0XBAEAS2ZefwyZmzvDh5Igt9e5cOVMrkVG0/SOFn/0HL\n",
590 590 "xBiPx27DJnrqyMLjOmjqkvHlqXLyGjp5aooLwQ59G6XWLm4lLnMvB1O3oqWpzcygxUwZMw8jvRGP\n",
591 591 "rUERWrt27SIxMRGA0NBQFi9efMnP4+Pj2bdvH9ra2hgaGvLII49gaHh5W4W+CC2FXMnJw3lkpVYS\n",
592 592 "tcT/sj46g0ljp4x1hwqxNdLhmUhX9C5jgjrQKLoknI66B/fHb8dxefQVf68jv4ScdZ/RUVCK72uP\n",
593 593 "9bgOqy8M592tLSc+I7MkkUURH/BxfA03+9twS6BNrycJCIJA7YE4Lqz/DGM/L0b96yn0HW0HKOrh\n",
594 594 "gbKylK73XkZ79iJ05t/So8cIgkD2uSpiD1zA2ePykw5G6B0dMhnrT8Rxob6Bj6Nm4WHedwErKBTU\n",
595 595 "7Iul6ItfkLV14P7QKhyWR6OpN+JM3lMEQeBgXiMbz1YS5WPBbaH2/XIvEgSBrLIkjpzbQVphPGO9\n",
596 596 "pjEzaDE+jkE37C7XgAut7OxsDh48yJNPPgnAV199xZQpUwgI6M6zKxQKvvzySx588EF0dHSIiYlB\n",
597 597 "LBZz0003XfZ4vRVaDbXt7P3tHMamekQt8b/uQbP9hVSu5OOTpZQ2i1k/22PQ3eSzXv4IaUMzQV+v\n",
598 598 "v7y5ZqeYvPe+pWLrX3VY9ywdNI+n4ba7tTfxF46c28G6WzdiYmBOXYeUN48UY6qnxXORLhj1cIv+\n",
599 599 "f1GIJRR9/gsl32/rfn3uv6XPQ6yHM4rCC4g/ehWd5fegHRnV68dLJXIS44pIPV1KwFhHwqd5DrtO\n",
600 600 "2cEgt6GBNTGHCbW34+Upk9DX7p/nsHusVxpFX26i5VwOrvcuw/nOJRdtZUa4PDVtUj6KK6VdImfN\n",
601 601 "VBe8BqhuuLWzidjMPRw5twNNTS1mBi1m6pj5N9wu14DbOxw6dIiJEydiY9PtMm5qakpiYiLBwcEA\n",
602 602 "aGhoEB4ejuZf9RLnz5/H2toaZ2fnyx6vqKgIe3v7Hp07PbGMfb+nMz7Sg8i5vuj04YY2UGhqiJjs\n",
603 603 "akq7VMkncWWMsTUcNLFVd/gUxd9sIezn99HU/2dTQXNqFkmr1qBlYkTYT+9hFTkOkdbgpVkNDHXw\n",
604 604 "D3Oiq0PGgW0ZaGtrYudoqparodjMPfyZ8ANrV36NuVH3TqqhjiYzvczJre/k24QKAu2Nem3+p6Gl\n",
605 605 "hcWkUGznRlLy/TaKv9qMsZ/XyO7W/yDPSEby6evo3rsG7YnT+nQMTS0NXDws8QtxuGh4KhKJsHUw\n",
606 606 "QWPEEfuaCILA9pwLvHj4GE+Ej+PhsWFo92MHrUgkQt/ZHoclc7CaOYG6Q6fIfukDJNX1GHm7oW3a\n",
607 607 "tzTYcEUQBA7lNfLG0WJmeFnwbITrgN53dLX18XEMIir0FpytPEnOP8EPh9+lvKEIEwMzLI2Htnxm\n",
608 608 "sOipvUOfhdapU6cYM2YMZmbdHSUymYyUlBTCw8P/8buxsbHk5+ezdOnSKx6vJ0JLqVBybF8OWamV\n",
609 609 "LL9nHO4+Vir5YopEIvztjHAw0eWtY8VYG2rjbjGw6QlJfSPJq58l6It1GHm7XfIzpUxOwcc/kPPa\n",
610 610 "p4x67XG8nr4bTYOhSZeIRCIcXc3xHGXDqaMFFOTU4u5jjZYaTYVPzo/lxyPv8/9WfIWd+aULB00N\n",
611 611 "EeOcTTA30ObtYyWY6mnhZdn7VaWOuSkOS6PQsTQj85l3aM8pxHxc4LCZI9lXZGdOIP3uI/SeeBWt\n",
612 612 "gOsfa6Sjq4XnaBs8R9mQmVzByUP56BvoYGVrpJLXFlVAIpfz2ok4DhYW8s2CeUx0chrQ8+lamWM7\n",
613 613 "NwKHpdG0nsvh/Avv0XY+DwNXR3RtR7rhmrtkvHeihLOlrbw224MId7Nely70FZFIhLWpA+G+M5ke\n",
614 614 "eDOtnU1si/+GQ2lbUSjl2Jo5oas9fFPzAy60cnNzMTMzw9a2e6VdWVlJbW3txR2tv/njjz+or6/n\n",
615 615 "vvvuu+rxriW0JGI5uzan0tkuZdndYy+O2VBlnM30GOtkwsdxZbSK5QTaD8zFWxAEzj34KlbTxuO0\n",
616 616 "euElP+vILyHl9ueQNbUQtvnDXvlpDSQGhjqMCXGkpqKV4/tycHIzv25rj8EgtyKdT3e/xPNLP8HN\n",
617 617 "xveKv+dmrs8EZ1O+PlPB+ZoOgh2M0O1lnYRIJMLY1wPn1YtoTs4k64X30TI1xsTf+4YUAbLDu5Bu\n",
618 618 "/QG9599G02tUvx7bwFCHUUH22DqacOZ4AWkJpZhaGGDWB5E8nKlp7+CBPfvQ19bmy3nR2F6h5nYg\n",
619 619 "0DI2xCpyPM533IykpoHstR9Tf/QMOpbmGLg63JCfiTOlLfy/gwUE2Rvz0gy3i75YQ0H3Llcgc0Ju\n",
620 620 "wcXah9SCOH44/C6FNTno6xhgY+qISDS8dosH3LA0JyeHmJiYizVaX3/9NZMnT76kRmvjxo24uroS\n",
621 621 "HX3louy/uVqNVktjJ9t/TsHJ1ZwZC0ejqWZb+81dMl4/XISZvhYvTHPr9Q33WpT98idl/9nJhD3f\n",
622 622 "XhzxIggCZT/uIO/9DXg/dz/Ody1W2QvRhfQqDu/KYmqUDwFjnVQ2zprmcl7bdC8PRq8lxHNKjx4j\n",
623 623 "kSv5LrGS+OJmno5wIcyx7zUMrZm5ZL3wAYjA793nMBnj3edjqROCICDb8Quy+MPov/AOGjY9KzG4\n",
624 624 "nvPlnq8hLiYXMwt9IqJ8sRlEuxhVJbWqmjUHD7E6wJ/7Qoa+zV8plVG14xDF3/6GUirF9d7lONwy\n",
625 625 "F60h2q0fTDql3ePgUiraeC7SlUB71TTk7ZS0cSr7IMczdtHYVkuE/wKmBSz6RyZAXRmUrsM///zz\n",
626 626 "kq7DJUuWsGnTJhYuXEhubi5fffUVLi4uF38/JCSERYsWXfZYVxJaFSVN7NqcRnikByETXYb8w91X\n",
627 627 "pAolH8aW0tgpY/1sDwz6yYKiq6KGU3PuZvwfn2E8yhMAcXUdmWveQtbUSuDnr2Lo5dov5xpIGura\n",
628 628 "2bUpDTsnU2Yt8hsSi46r0SFu49VNdzMnZDlRoSt6/fiUilY+jC1lkqsp94537HMXkKBUUr55N3nv\n",
629 629 "fIvDsii8n39gWKcTBaUS6c9foMg9j95zb6Fhdn3+br1BoVCSfraM08cKcPOyYtIsL8zUvIGjr2zL\n",
630 630 "yuaThLO8NWM6Ea4u137AIPJ34XzJxt9pPJOG48r5uN69DH1nu6EObUDIrG7n/RMlBNob8dAEp6vO\n",
631 631 "XVUlyuryOZ65m5Pn9+Fg6ca0gEWE+8xCT0d9hfGw8NH62+V97rKAIbdu6A8USoEvTpeTW9fJm9Ge\n",
632 632 "l52V1xsEQSDltucwDfW76P5evesoWS9/iMtdS/B48k616liTSuQc2nme+pp2Ft0ajLnV4KUlroZc\n",
633 633 "IePdbU/iaOnOXbOe6/Nx2iRyvjhVTl59J89Pc8XXuu9/n7S+iey1n9CamUvgF+swDbxyGlNdEeQy\n",
634 634 "JN+8j9DcgN6a1xEZDM37QSKWk3Syu0PRe4wtE6Z73jCWEDKFgnfiT3OmvILP50Zd1uVdlegsraT0\n",
635 635 "+21U/LYPi0mhuN53C+YThof9gFSh5OfkKg7lNfLEFGcmuar2a3El5AoZKQUnOZ7xJxfK0wj3ncm0\n",
636 636 "gJvwdghQu9dJrYWWoBSIP5JPVlolS24Pxcpu+HSYCILA90lVnClp4e25ntfVGVKx9QDFX21m4oHv\n",
637 637 "UHSJyX7lI5pTsgj8/FXMQsf0Y9SDhyAIpCWUcepwHnMW++M9Zmi77QRBYMPBN2lqr+O5xR/1y+yv\n",
638 638 "E4VNfHGqnIV+VqwKtkPrOjzFKrcfJGftv3F9cAUej64eNrMTBZm0e6SOIHSP1OnlQPSBoKtTSvLJ\n",
639 639 "YtISyvANsCN8mseAzFFVFRo6u1hz8BCG2tq8N2sGxrqqYaHTE+QdnVT8vp+SjVvRMtDD9b7l2N00\n",
640 640 "S239uIoau3j3eDF2xro8NcUZs2FiRdLYXkfc+b0cT98FQIT/fKb4zcPadGDLA64XhVxJwolC9Mxb\n",
641 641 "1VNoyaQK9m9Lp71Vws23haiMP1Z/8+u57hmJ78z1wsGk93+jpLaB+Ol3ELb5Q5RSGecefhXrWZPw\n",
642 642 "ffWxYVGjUFXWzO4t5/ANsGXqHJ8ha7nfffZn4s7vZf3q79DX6b8dlYYOGR/GldAmUfB8pCvOZn1P\n",
643 643 "/3WVV5PxxBsICgWBn7+KvrNqX6SuhSCVIv50PWjroPfoy4i0VOum0tkhJSmuiPTEckYF2RMe6aEW\n",
644 644 "zTm9IbuunscPxLDA25vHx49FU00d2gWlkvpjCZRs/J3WzDycb78J59tuQs/BZqhD6xGCILA9s45f\n",
645 645 "z9Vw33gH5nhbqN2uT08QBIH8qkxiM/dw5sJhnK08mTpmPuG+MzHQVa36s6qyZmK2Z2Jiro+bv0j9\n",
646 646 "hJaPlx87f07BwtqIOYvHqFXLf1/Yk13P5tRq3or2xK2X9g+p976MoacL+i725L39Lf4fv4TNnJ4V\n",
647 647 "aKsLXZ1S9v2ejkyqYMHKoEHvSjybe4wfD7/H67f9gJVJ/9d7CILA7ux6fk6p5vZQOxaO7rtdiaBU\n",
648 648 "Uvz1rxR+8QujXnsch+XRanlBFqQSxB+/hsjAEN2HX0J0jVl5Q0lnu4SzsUVkJlfgF+LA+Ah3teic\n",
649 649 "vRb78vJ5My6etRFTiPbyHOpw+o323GJKv99G1c5DmE8MweXOxVhGjFPZMT8tYjkfnCihRSzn5Rlu\n",
650 650 "2BkPz02H/4tMLiW1MJ6483vILEkixHMyEWPmE+AWjqbG0F0PZFIF8YfzyEqrZMb80fgG2pGamqp+\n",
651 651 "QivxUCtB450Jn+ahljeJvnCsoJGvTlfw+hwPRtn0bMekevcxct/9BovwYJoS0wn94R0MPVWrQLW/\n",
652 652 "EJQCp48XkH62jPkrgnB2H5xi6MLqbN7e+hgvLv8MTzu/AT1XeYuYd4+XYKijyTMRLtfVot16Po/0\n",
653 653 "R9Zj5OOG33vPq5WTtiARI/7oVUSm5ug++LzapEE72iScjS3kfEol/mGOjJvqjqEa3hQVSiWfJJzl\n",
654 654 "QH4hn82NYpTV8PSokrd3ULXjMKU/bUfR3onz7TfjuHI+OpaqU/OUXtXOu8eLmeZpzt1jHa6rvECd\n",
655 655 "aetq5nTOIWIz91DfWs2k0VFEjJmPq43PoGqE0oIGYnZk4uBsxvQFozH46xqtljVahjoO+PoPz06R\n",
656 656 "q5FQ2sIHsaW8PN2NEMer16NJG5o5GbEaHVsLDJwdCPz8VbSMVaNofCApzqtn39Z0IqJ88Q9zHNBz\n",
657 657 "1bdW8+ovd3PXrOcZ7zN9QM/1NwqlwK/nath5vo7VIbYsHG2NZh8vroouCblvfUX1nmMEfPIKVpHj\n",
658 658 "+zna/kcQdyH+cC0iS2t0H3gWUT/Uwg027a1iEk4Ukp1WhX+YI2GT3dQmpdgmkfDsoSNIFQo+mjML\n",
659 659 "c331Lz+4FoIg0JKaRdlPO6jZH4v17Mm43LkYs3FDV5StUApsSatmT3Y9T0e4Mt5ZfRZKA01VYwlx\n",
660 660 "5/cRd34vejqGTBodxaTRc7A1GzjDXHGXjNgDFyjKrWfWTX54jro05ayWQqu3Q6WHE+lVbfzrSDFP\n",
661 661 "TXFmstuVV1aJq56m+ew53B++Fc+n71bZbe+BoKGune0/JTMq0J4ps7wHZDB1l7SDdZvvY4rfXBaO\n",
662 662 "v6Pfj38tSpvFfBZfRodUwROTnXu8y3k56k+cJeOpN7FbMB2flx9GU181d1mErk66PngFDVtHdO9b\n",
663 663 "o5Yi639paxGTdLKY8ykVePnZMC7CHUtr1aoz+V8q29p4eO+Bi/MK+3OUjrogbWql4re9lP1nJxq6\n",
664 664 "OrjcsRiHZVGDuoht6JTxzrFiAF6c5oaloWrVJqoKSkHJhfJznMo+QELuEWxMHZk8OpoJo2ZdHIfW\n",
665 665 "H+Rn13L4z/N4jrIhItoX3cu4BIwILTUkt66TtQcLuH+8I7O8/5kiy177CSXfbSPoy3XY3zxrCCIc\n",
666 666 "ejo7pOz8OQVjMz2ilwag3Y91fAqlnA92PIO5kTX3z3llyFa1giBwtKCJDQkVTHYz4+6x9n0aUA3d\n",
667 667 "N5Dzz79LR24JQV+vx3i0atXcCJ0ddL3/MhpO7uje/cSwWjh0dUpJO1NK6plSHF3MGR/pjr2z6qSn\n",
668 668 "AM7X1vHo/gPcFRTEnUHq117f3wiCQOPJZEp/2k5DXDJ2C6bjuGo+ZmH+A/rcJJa18mFsCfNHW3Fr\n",
669 669 "sF2fd7NvNOQKGZkliZzKjiE5/wRutqOYPDqK8b4z+zzgurNdwpE92dRUtBK1xP+q5SojQktNKWnq\n",
670 670 "4uUDBSwPtOXmMd3qXCmTk/3KR5Rv2s2YD1/AaeWCIY5yaJHLFBz4I5PW5q5+7Uz98cj7lNcX8uKy\n",
671 671 "T9HSHPrVZJtEzg9JVZwqaeb+8Y7M8DTv08VeEAQqf99HzutfMHr9Ezgsu/akhsFA6Gin672X0HT3\n",
672 672 "QeeOR4eVyPpfZFI5GUkVJJ0sxtRCn/ER7rh5D/2c1qNFxaw9doJ10yKY7eE+pLGoIuKaeiq37qd8\n",
673 673 "y15EGiKcVi7A4Za56Fr3X52oXCnwY1IlR/ObeHG6K4H2w8fKaLCRysSkFsZzKjuG9OIE/JxDmTQ6\n",
674 674 "ijCvyB6bouacq+Lo3mzGhDoyaabXNRfyI0JLjaluk/Di/nzm+Vpxs6MOaQ+spbO4HMvIcQR8/MpQ\n",
675 675 "h6cS/O21lp1WyZI7w7C0ub7UTEzKb8Sk/M6/bvsRQz3Vutjl1Hbw7/gyjHU1eXySc5+tINqy8km9\n",
676 676 "92WsIsczav0TaOgOnTeV0N5K1zsvounrj85tDw+56BgMFAolF9KrORtbiEhDxPgId3z97YbEuuSX\n",
677 677 "9Aw2pKTx2dwoAm3Vw+pgqBAEgeaz6ZRv2UPN/lgsJgbjtGoBVjMmXpchdHWbhLePFWOsq8WzES7D\n",
678 678 "xhtLFeiUtJOUd5z47BjyKtMJdJvABN9ZBHtMuazo6uqUcnhXFvVVbUQvD8TeybRH5xkRWmpOfYeU\n",
679 679 "N745wpyfvsFhYiBNielMPb7phih87w2ZKRXEHrjA/FuCcPXqW5dUWmE8X+9/nfWrvxvQwsrrQaEU\n",
680 680 "+DOrjs2p1Sz0s2ZlkG2fZmbKWtrIePINJLWNBG94A33HwTeEFdpa6Hr7BTT9Q9FZdf8NIbL+F0EQ\n",
681 681 "KLpQR8KJItpbxYyd4saYUEd0+pge7g0KpfIvp/dyvp4/D0cT1VpUqDry9g6qdx+jfMseuoorcFgW\n",
682 682 "jeOqBRh5927M2cmiZv4dX8aKIBuW+NugcYN9BgaT1s4mkvKOk5B7hNyKDALcxhPuM5NQr6no6xhS\n",
683 683 "eKGOgzsy8Q2wZ8oc716Vo6il0DJxc8fLwnyoQ1EJqv48zPmXPuTYwhWY11Rx5x3TsZ4xYajDUknK\n",
684 684 "ihrZvSWNqXO6h1L3hqrGEl7bfC/P3PwBvk7BAxRh/1HfIeWrMxUUNHTy6ERnxvWhK0lQKin6chMl\n",
685 685 "3/5OwOevYhUxbgAivTzKlibE77yAZnA4Orfcc8OJrP9LRUkTiXFFlBc14R/mSPAElwGbp9ghk/H8\n",
686 686 "oSN0yWR8Ej0HEzVyeldFOvJLKN+yl8qt+9F3scdx5XzsFs5A2/TK4lWhFPgusZK4omZemeF2Xc0u\n",
687 687 "I/Se9q4WkvJPkHDhCLmlmYxmFTpdjsxdGoD3qN4vsnsqtDTXrVu3rg/x9jtFRUU8fSqBBd5e6Gvf\n",
688 688 "2FuoRV9toeDjHxn368cY5+SwwzccC3/v65qNN5wxNdfHc5QNh3dl0d4qxsXDskc38E5JO2/+/giL\n",
689 689 "J9zDuEGycbheDHQ0ifQwx8FEjy9Pl3G2rBU3c30sDHr+mRGJRJiPD8Ik0JeMx15HKZFgPj5wwEWP\n",
690 690 "0NaK+O3n0QydiM7yu294kQVgYqbPqEB7fAPtqalo5ciuLCpKmjEw1MbUXL/fnqPajg7u370XJxMT\n",
691 691 "PpgzC4Mb/BrbH+hYmGEVOQ7X+25B19aSmj3HyX7lY1rO5aChrYWBiwMirf/ujjR2ynjtUCFtEjlv\n",
692 692 "R3vhqCbWH8MJHW093Gx9cTecQGemL8ZmerQ6HGN76qdcqEhDoZBjZWKHjnbPXpuqqio8PDyu+Xsq\n",
693 693 "taN1VCwlo7aWDQvno3MDthgLSiUXXv+c+qMJhG35iK6yKs499Cqee37gpbgqVofYMW+U1VCHqbJ0\n",
694 694 "dkj585dUDI11mLs88KpbwEpByUc7nsPM0JL7ol4exCj7D5lCyb6cBjanVRPmaMydYQ7YGveu7kpc\n",
695 695 "VUfa/a+gbW5K4Gdr0TYbGN8eoaOdrneeR9MvBJ2V942IrCsgkyrIPldJyqkSBAFCJrowJsQBbZ2+\n",
696 696 "pxVzGxp4eO8BbhkzmgdCQ0ae+wFE1tJGzd7jVG6LoS07H9v503BYGk2lmydvHSsh2teS1SEjXYVD\n",
697 697 "hVyu7HZ3T61k9k1+ePl1l050StpJKYgj4cJhMksS8bAbzVjvaYz1mnbVuYtqmToMCg7m8f0x2Bga\n",
698 698 "8lrk1BvqgqCUysh48g3ElbWE/Pgumro6xM+6E99XH8U2OoKKFjHP78vnjjB7onyGp2NzfyCXK4nZ\n",
699 699 "nkFTfSdL7gy76OD7f/kjfgPnik/z6spvVKLD8HrokCrYllHLrqw6onwsWRlki8llPF+uhFIq48Lr\n",
700 700 "n1N76BQhG9/EJMCnX+MTujr/2114+yM31Oe6rwiCQFlhI6mnSykvbmRMqCMhE1ww7WVa8WRpGS8e\n",
701 701 "OcpLUyYz39trgKId4XJ0VdRQufMQf6bXEOsfzh3iMmYvHI/xKNWyWLlRqK1qZd/WdMwtDJl9s98V\n",
702 702 "u9Ulsi4yihNIzDtOSkEcFsY2jPOeRphXJG42vpdcv9Qydejo4MA0N1e+SExGISgJtB38Qt2hQN7W\n",
703 703 "QcpdL4CGiNAf3kXb2JC8t79By0APz6fuAsBET4vxzia8f6IUMz0tPCyHv3NzX9DQEOHtZ0trcxex\n",
704 704 "+y/gOdoGXb1LhVRS/gl2nN7IK7d8oXIdhn1BR1ODYAdjZnlbkFzRyuenykEALyuDHo3uEGlqYj1j\n",
705 705 "IrrW5px7ZB06lqaY+PeP2BIkYsQfrkXD3hndOx8fthYO/Y1IJMLUwqA7rRjQnVY8/FdaUU9fC1Nz\n",
706 706 "g2sK1u3ZObwZF88n0XOIdO1dsfYI149CX5/vu8wocPTgtUAjrLOzyH3zKyp+34+ivRM9exu0TVXX\n",
707 707 "yHa4oFQoORtbyOFd2Uye6cWUOd5XbTzR0tTGwdKNcd7TWDDuNpytvCity2P7qY3sTfqF2uZKtDS1\n",
708 708 "sTC2oaamVv1Sh393HVa0trFq+07emjGNKS7OQxvYACOpbSB59TOYhvjh9/YziDQ1aT2fR9ItTzH5\n",
709 709 "xM/oWl3q2VLS1MUL+/N5MNyR6Z6DM/dPXUk6WUxyfDHL7h570f6hoqGI9Vvu57klH+PtEDDEEQ4M\n",
710 710 "pc1ivk+sJK++kzvD7JnpZdHjVEXbhULS7n0Z84kh+L35NBo6fd/tE2TS7tmFxmboPvSc2ju+DzV/\n",
711 711 "pxXTE8vpaJMQMNaJMaGOmJpfuugSBIENKalszcphw8J5uJmplknqjUBFi5j1h4vwtjLg8cnO6P3V\n",
712 712 "ISwolTSdSaPyj4PU7D+BgasjdgtnYLdwBvrON974uYGmpamLvb+dQ0tbg+ilAZiY9X2DQhAEyhsK\n",
713 713 "Sco7TlLeCWqay3lkygfqlzr8X3uH5KoqnjxwkP/cvAgP8+HZidhRWEbSqqdxXDEPzzV3IRKJEJRK\n",
714 714 "EhY+hOOq+TjfdtNlH1fc2MWL+/N5ZKITER7D87npL86nVHDiwAUW3x6KqY0mr/znThaF38n0wMs/\n",
715 715 "t8OJ89XtbEispEuq4N7xDoxzMulR2k7e3kH6o68ja20jZONbfRq2K8jliD99HbS00Xv0ZbUZEK0u\n",
716 716 "1Fa1kpFUTs65KmwdTQkY54TXKBtEmiLePnmKpMpKvlkwDxvDkQaaweZUSTMfx5VxZ5g980dduTFH\n",
717 717 "KZPTGJ9M9e5j1ByIxcDF4S/RNR195yvXBY3QM3LOVXFkTzbhke6ETXLr95FtjW21FOeVq7fQgu6t\n",
718 718 "729TUvl16WLM9IZXh0ZLajYpdz6P1wv347x60cX/L/vPTiq27if8z6+ummYpaOji5QP5PD7JmSnu\n",
719 719 "IyvWq1GQXcuB7Zl0OMRj5aTNPbNfHOqQBg1BEDhV0sL3SZUY62qxKsiW8c7XFlyCQkHuW99QvecY\n",
720 720 "Yf95DyPfnjuHCwoFki/fRpBK0HvyVURa6l0Dp8rIZAryz9eQnlRObW0rCQ6tKAxEfHPTvBH7hkFG\n",
721 721 "oRT4KbmKI/mNrJ3p3ivrBqVMTuOpFKp3H6VmfywGzvbdomvRjBHR1UukEjlHdmdTWdrEghVB2Dr2\n",
722 722 "zHy0L6hljZa9/aVvqNHWVlS2tbMpI5N53l5oDpP6jrqjZ0i9/xX8P3wRh8VzLv6/pK6RtPv/H8Eb\n",
723 723 "3kDX5uoF7xYG2gQ7GPP2sWKcTPX67BZ+I2BhbUhO8zHaz7sxc/xcrG0HprNOFRGJRLiY6bFglBUG\n",
724 724 "Opr8klLF3px6jHS0cDbTu6JRokhDA6vIcWibGJH+yHqMfN0x9Lh2Gl9QKpFs+AChrRW9p9Yh0h46\n",
725 725 "9/kbAU1NDaztjHH3t+bb+iwUMiWTSk2puNDQbeNhZYDmEDjP32i0iOWsP1REXaeUd+a2hClfAAAg\n",
726 726 "AElEQVR64dTL67FIUwMDN0ds5kzB7cEVGLg50ZSQRs66z6jefQRZUyva5qZoW5iONJNcharyFrb9\n",
727 727 "kISZhQE33xaCifnAeNJdPF8P7R1UWmgBTHByJKawiHPVNUS6qX9BZ8XWA2S9+D6hP777D6PIrBfe\n",
728 728 "wzw8CIdlUT06lqWBNkH2xrx5tBhXMz2cRnxZLsvZ3GPsPfcd9y59gKN/5qGto4XdAK5yVBENkQg3\n",
729 729 "c33mj7LCxkiHbRm1/J5ei66mCFdzvSvWcJn4e2M2PpD0R9cj0tDANGzMFS/0giAg+eFTlLVV6D/z\n",
730 730 "L0QjOyqDQn1nJ/ft3ouvtSWfLIpi3GR3DAx1yEqr5NjeHBpq2tHS1sDUTL/f0ycjQGFjFy/syyfE\n",
731 731 "0ZhnI1wx0Lm+NLlIQwMD10tFV0vKefLe/Zayn3bQVVGNhp4uevbWI80lfyEoBRLjijiyK5vp80YR\n",
732 732 "Ps1jUBYYaumjdaURPO1SKav+2Mkqfz9uDfAf5Mj6B0EQKPpyE6U//MHYzR9j5ON2yc8b4pLIWPMm\n",
733 733 "U2I3o2XQu4K9nNoO1h4sZO1Mt5GhpP+H8vpC1m+5nxeXfYqn/RiaGzrZ+kMiAWOdCI/0uGFXh4Ig\n",
734 734 "kFHdzpa0GkqaxCwLtGGeryV6/5+98w6Pquji8Lslu5veIRBIpYUaEkKTpvQOKoIFAbuoCHYRAREQ\n",
735 735 "RRQVxV4QFJUPpHeQXkPogYT03kjP9nu/PxIQkJKEbHY32fd59plbZmdONrv3/u7MmXNuEXtMnZLJ\n",
736 736 "iQlv4BoaQusFr/3HSV4URXTLl2KMu4D9mwuQ2Jv2SdJGOSmFRTy9fiPDWzZncqfw/3yfS4u1XDyT\n",
737 737 "yfmT6RQVqGnZzofWoY3xaWIbGakJrqTSmdzN9IuTRFGk6EwMOdv2k7VlL5qMHBr0606DgT3x7NO5\n",
738 738 "yveNukJJkYZNf53BaBAYOrb9XTm8VxWrjKN1u1yHKYVFPLr6bxb0u4/uTS0zH92tEEWR2AXfkr15\n",
739 739 "L53+WIyqkfd1540aLQfue5xWs16kwcCe1erjZHox83YlMn9QMM29bDc5gFJNMe/8+jj3d3uSXm2H\n",
740 740 "XT1eUqRh1c/H8Q/2os/glvX+KT8mt4w/TmZxOrOEUW28GdHaC+ebLH82lJZxevJ7/3GSF0UR3Z8/\n",
741 741 "YjwTif3bHyFxtC1Zrw2ic3J5ftNmngsPY1zbNnesn59bSvSpDKJPpiOKEBLaiJAOjfGwZZyoMoIo\n",
742 742 "siIqky0X85jVP4gWZrjmqlMyyd6+n+wt+yg4cQ6PrqE0GNQT7/73oGpYPwJbx0Vns3XNWUK7+tG1\n",
743 743 "d1CtJ2ivc0IL4FhaOq9s28Gvo0dYzZJlURS5OGcJeXuPE/HHYhRe/10leGnRjxSdjSHspwV31deB\n",
744 744 "xAK+OJDCR0Ob41fPfbYEwchHq6fh496UiX1f/895jVrP6l8icfN0YOD9bW1+LEByvoY/TmdxOLmQ\n",
745 745 "QS08Gd7aCx/n66f/REEgZv7XZK7fTdiyD3FuGYRuzXIMR/Zg/84iJM71x//NnBxJS+PVbTt4t1dP\n",
746 746 "BgbfeeriWkRRJCutiOhT6Vw4nYmTi5KQDo1p1d4HJ5f6fd2oDGq9kY/2JJGvNjCzb2CV0l+ZCn1h\n",
747 747 "Mbm7D5O9ZR85u4/g4NcIr/u64XVvF9zC2yK1M33C8tpErzeyZ/NF4i/kMHRse3z9zbP6vk4KLYBV\n",
748 748 "56P5IeoUKx8YjavKsn1ARFEkesZiCiLP0On3xSjc/3sTKo1P4fCwZ+i+7Sfsm9x9HJVtMXksO5HB\n",
749 749 "J8Na0MCp/joir9z7JTFpp5n+0JJbRn7X64ys+y0KiVTC8IdDq5S1vS6TWaxl7blctsfmEdLAkeGt\n",
750 750 "vQj3dbnOjyvtz81cfG8JrSbeh2vWGexnfILUzRbXrTbYcimOufv288mA/nT2bXxXbQlGgeT4y0Sf\n",
751 751 "yuDS+Sy8fZxp3qYhzds0rNUpGGsho0jLrO3xtGrgyIvdm6CwwAc0QW+g8MQ5cnYdJnf3YcqS0vHs\n",
752 752 "GY7XvV3xvrcrqsYNzG3iXZGbXcKG30/i2dCJ/iPboLI3n9Cts0IL4IP9B0ksKOCrIYMsdiWiKAic\n",
753 753 "e3MhJefjCP/9E+xc/judIooix8dOxevergQ+/3CN9b36bDYbo3NZNKw5bmb8EpqL47H/8PPOhcx/\n",
754 754 "fDkuDrd/0jEaBbasOkNJsZbR48NuGzG4vqExCOyJz2fd+RyKtUaGhXgxsIUnrhXpfXJ++Ikz7/9I\n",
755 755 "wEvjCXzlaZvPTy2w8uw5vo48wdKhgwnxqtnpIYPeSFJcHrHnsoiLzsbV3b5CdPnYphcpd8/4YHci\n",
756 756 "D4f6MLK1l9V837XZeeT+c5TcXYfI3XMUZUMvvO/rhtd9XXCPaI9UaT0P5GdPpLFn0wV6DWpJ23Bf\n",
757 757 "s/8P6rTQMggCT63bSKhPQ6Z27Wxiy6qOaDRy9pUFlCWlEr78Y+RON79Ipa/ZTsKS5XTb+gNSec3e\n",
758 758 "4H+JzOBIciELhzbH8S5XwVgTWfkpvLtiUpUivwuCyPa/z5GXXcIDE8P/k7LHRvmCi/XRuRxKKqSb\n",
759 759 "vytjxCS8/1oCk94g6vXPcO/SnpC502r8e2zjX76NjOJ/0Rf4fvhQmrqadopWMAqkJuYTcy6LS+ez\n",
760 760 "UKrsro50NWjkbPYbXG0iiiLrzueyIiqTt+8NoKOv9S44Eo1GCk9dIHfXYXJ2HaY0NhH3zh3w6BmO\n",
761 761 "Z49wnFs3s8iVjHqdgR3roslMKWD4I6F4NbSM/0GdFloAl9Vqxvy1mjfv6caAKvoomBLBYODMlLlo\n",
762 762 "s/MIW/bRLVeC6AuL2d/rUTr+OB+38JpfSSmKIl8eSiXhsob5g4JRyi3vx1PT6PQaZq54gnvbj2Rg\n",
763 763 "2NgqvVcURHZuKP8hPzCpE/YO1vOUV5sUaQwc3XWQNqs+5Zd7niW0RwQ9GiiIfu5dpAo7Onwzp96u\n",
764 764 "fjIVoijy6eGj7E5M4ocRQ2s92rsoiGSkFhJ7LouYc5mIIrRo05DgkAY09nOr0/6NeqPAkoOpnM8u\n",
765 765 "ZU7/IBq5WLa7SlXR5RVw+WAUefuPk7c/En1+IR73hOHZoxOePcJxCGpqdlGdm1XM+t9P4ePrQr+R\n",
766 766 "rbFTWM7DXJ0XWgDnsnN4ZsMmfhk1nGYe5vcPEfQGTk+ejaGklI4/LkBmf+sf5bm3FoIg0uajN0xn\n",
767 767 "jyjy0T9JlOqMzOofVKkEw9bMN1veR6tX89KwedW6OIiiyN4tF0m8lMeYJyJwcLSJrRsxJsWh+fAt\n",
768 768 "FM+/SZRbC9ZH5xCdVUovP2c6/rYMWUIS4csX3jHgro3KIYgi7+/dz7nsHL4ZNhh3e/OKWFEUyc0s\n",
769 769 "IeZcJvEXcyjIK8O/mSdBLb0JaO5Vp5zp89V65uxIwFUl543edx8fyxpQp2Vx+cCJcuG17zgSiQSP\n",
770 770 "HuFXhVdt+3edjUxjz+YL9B7cirbhvrXad2WoF0ILYO3FGL4+foI/Hhxt1pQTglbHyWffRTQKhH43\n",
771 771 "F9ltHPULTpwjauJb9Ni7Ajs3004BGASR97bH46iQ8UYf/1tGArd2/jmzjnVHfmH+47+iUlR/qbUo\n",
772 772 "ihzccYmYs5mMeTKiTt047hYhKx313FdQPvY88i69rx7PLtGxKy6fnTF5NNu8njaRh2j144c0C29p\n",
773 773 "RmutH73RyDu7/iGztJSvhgzCSWF5wr+0WEtCTC7xMTkkxebi5uFAYEtvglp64dPEDamVPtzFX1Yz\n",
774 774 "a1s8/Zp7MD7Mp85eN2+HKIqUxaeQtz+SvP3HuXzgBHauzrh36YB71w64d+6AQ2ATk4x46XUGdqw9\n",
775 775 "T2ZqoUVNFd5IvRFaAPP2HSC1qIgvhwwyyw/CqNFy8sl3kKoUdFj63n+COV6LYDBwaNCTBD7/CI0f\n",
776 776 "qFwE+LtFaxCYviWOQA8VL3QzzQ/DnCRlxzD3j+eZ9fB3NPGqmWnkw//EcS4yjTFPRthWXwFCfh7q\n",
777 777 "96ehGDYWu/uG3rSOKIrE5ak5/O0aHH9cRtQzk+k4pBt9gt1xr4eLMu4GrcHAq9t2YBBFFg/sj8oK\n",
778 778 "fN+MRoH05AISLuaQEJNLcaGGgBZeBLXwJqCFl9WMEB9JLuTjvcm80K0JfYLNEzbAEhEFgZKLCeQf\n",
779 779 "PkX+kZNcPnIKjAJuXdrj0aUD7l1CcW4dfNcJ5HMzi1n/+0l8mrrRb0SIRU0V3ki9Elp6o5En1m2g\n",
780 780 "i68vL3buVMOW3R5jmYYTE99E4eFKuy9m3jFeSeK3f5C9bT8Rf31eq4KnVGfk9Y2xdPFzZUJ43UlS\n",
781 781 "WqYtZvqy8Tx4z7P0aD24Rts+vj+BE4eSGftkBK4e9TcIrFhajPr9V5B3vw/FiMqtjs3+5yhRz88i\n",
782 782 "6bHxbGnalpAGDtzXzIN7/F1vGX3eRjmlej0vbd6Km0rFgr73orjLG5e5KC7UkBCTQ/zFHJLjLuPq\n",
783 783 "bo9fsCd+wR40CfBAqbKsG6goiqw+m8NfZ7KY1S+IkCokha6PiKKIJjWTyxXCK//IKbSZubh1als+\n",
784 784 "6tUlFNcOrZA5VG5WQBRFzkamsXfLRYudKryReiW0oDzf19hVa5je8x76BgbUmF23w1Baxonxb6Bq\n",
785 785 "0pB2n06/o5LXpGdzoN8Euq77GsdmtZ+3sUCt55UNsQxt5cUD7aw7lgqU/zA/+fs13J28eaL/Wybp\n",
786 786 "I+pwMkf3xDPmyQg8vOrfhVfUqFF/+BayZq1RPPJMlR4OiqPjiHzsNRqPH0XK0GHsiivgfHYpEU1c\n",
787 787 "6O7vSkRTl3q1IrYyFGq0PLdxE808PJjdu6fFhq+pKkajQFZaEclxeSTH55GRUohXQyf8gsqFV2M/\n",
788 788 "d+zM+F0wCCJLDqYQnVXKnAHBNHS2jtE3S0OXm0/+sTMVwus0xRficGrmj2tYG9zCWuMa1hbH4Kb/\n",
789 789 "Wdmo0xrYse48WWlFDH+4g8VOFd5IvRNaAKezspm8aTPLRo0gyN20Q76GMjWRj76KY2BT2nz8ZqWW\n",
790 790 "xEY9OR3nkGCavfakSW27HdklOl7ZEMPE8Mb0a27+BQR3w4ajv3L44g5mPfwddnLTXRjPHE/lwI5Y\n",
791 791 "HpzUyWouADWBaNCj+WQWEjd3lE+/Vq0RWE1GDpGPvYZbeBtC5r9CoV7kYFIhh5IKOZtZQkgDR7r5\n",
792 792 "u9LN3xVvK5laMhW5ZWU8vX4jXZv48kb3bnVuiv9aDHoj6ckFJMdfJjkuj5zMYnx8XfEL9qBpkCc+\n",
793 793 "TVyR19JK6WKtgbk7E7GTSXj73gCb+K9BjBotxediKYg8R+GJcxREnkNfVIJrxxDcwtrgGtYawS+I\n",
794 794 "zRsvWcVU4Y3US6EFsDr6Aj9EneKPB0ebzHnUqNYSOf417H19aPvp25USWTm7DhM9fRH3/LP8to7y\n",
795 795 "tUFSvprXN17i9d7+RDS1zpQp0SlRLF77BnPHL8Pb1fRToedPprNn80UemBBOg8bW+ZlVBVEwol36\n",
796 796 "IaJOi2rKzLvyuzAUl3LymRlIpDI6fDsHuWP5NGyZzsjxtCIOJRVyNKWIRs5Kuvm70t3flQB3VZ0W\n",
797 797 "GjeSXlzMU+s3MrR5s5smh67r6LQGUhPzSYnPIznuMnk5pTRs7Iyvvzu+/u409nczSciVtEItM7fF\n",
798 798 "EdHUhac7+16X/cCGadDmXKYw6jwFkeeIjblMjEdL/OIjadZQhku7lrh0aIlL2xYmXyhWE9RboQUw\n",
799 799 "Z88+ssvK+HzQgBp3jjdqtBU+WW60/+LdSt2ABK2O/feOJ2TOy3j3616j9lSXc1klzN6ewNyBQbS0\n",
800 800 "sqjPBSW5TF82nmcGzSA06J5a6zfmbCY71p1n9OPhNGriWmv91jaiKKL7ZQlCWiKq1z9AUgMPLILe\n",
801 801 "wLk3PqL4XCxhvy78T9JbgyByNrPk6miXRALdK0a6WjdwxK4Ox2pKLCjgqfUbebx9Ox7v0N7c5lgE\n",
802 802 "Oq2BjJQC0pIKSEvKJyOlACcXVYXwcqOxvzvung53JUhPZ5Qwb1cC48MaMSykfiRhthSMBoF/Nl8g\n",
803 803 "/mIOw8e2x7Esn6KTFyg6c5GiMzEUnY1F4elWLrratcS1XUtc2rW4aa5gc1KvhZbOaGTS2vX08GvK\n",
804 804 "853Ca6RNAEGnJ+qJt5HZq2i/dHalo2DHf/Er+cfOEL7soxqzpSY4lFTIZ/uT+XhYc5q4WkcYA6Ng\n",
805 805 "YN4fL9CqaSgP9Xi+1vuPi85my+qzjB7fkcZ+lvWjryl0q3/FcOIg9u98jMS+5kS4KIrEffozab9v\n",
806 806 "oNPvn9zST1EUReIvaziUVMDh5CJSCzW0aehEmK8zHX2dCXBX1Znl9jF5eTy9fhNTukTwQEgrc5tj\n",
807 807 "sQhGgZysEtKT8q+KL4NBwNfPjcZ+bvg0caWhr0ulszpsi8nj+6PpvHWvP2G+lj9yUpcoLtSw7reT\n",
808 808 "ODjaMXhM+5vmKhSNRkrjUyuE10WKTl2k6GwMcmdHXNq1wKVtC5xbN8O5dTD2fo3NFs2+XgstgJzS\n",
809 809 "Uh5atYZZvXvSJ+DuHc8FvYFTz76LKIqEfju30tnQrzjAd9v0HQ4BTe7ajppm84Vcfj+VxafDW+Bp\n",
810 810 "AVno78TKvUuIyzjP22O+QCo1jy9F/MUcNq86w6jHOpota7yp0O/ehG7DH9jPXIzU1TR/W+pv64n5\n",
811 811 "4BvCfvkQt7A2d6xfpDFwKqOEqPRiTqQVU6Yz0tHXmY6NnQnzdbba5Onnc3J4bsNm3urRnSHNm5nb\n",
812 812 "HKujqEBNelIBGakFZKYWkZ1RhJOLEh9fVxr6upaLr8bO1/n8CKLIT8fS2ZdYwJwBwfi5WccDZl0h\n",
813 813 "6VIum/46Q1h3fzr3DERShalaURBQJ6dTdDqGojMXKY6Oozg6Dn1+EU6tgnAOCca5dTDOIcE4tQpG\n",
814 814 "4WH6WYd6L7QATmZm8eLmLSwfPZIAN7dqtyMYDJye/B7GMjUdf/zgtnGy/mPDszNxDG5K8zeernb/\n",
815 815 "pmZFVCb7EgpYNMyy8yJGXtrLj9s/5IMJd04WbWoSYnLY9FfdEluGE4fQ/rgY+xmfIPUx7dLq7B0H\n",
816 816 "OPPyPNp99g4N+lVt+jezWMvJ9BJOpBUTlV6Mk0JWPtrV2Jm2Po5WkUj9dFYWL2zayqzePekXFGhu\n",
817 817 "c+oEglHgck4pmWmFZKYVkZlaSG5WMW4eDjT0dcWjkTNrL2tRizB7QPDV5Og2TI8oiBzeE8/Jw8kM\n",
818 818 "fag9fsE1lzlCX1hMyYV4is/HUXwhjuLzlyi5EI/M0b581KtVME4tA3FsEYBTM3/kzjU3Sm8TWhX8\n",
819 819 "ce48y0+fZeWDo3G0q/oFWDQaOT1lLrq8fMJ+/rBKjux5ByI5O3UePfb8VulYIubgSl7EpHwN8wYG\n",
820 820 "o7DAvIjZBWm8u3wir45eRAtfy/BjSYzNZeOfpxn5aChNAqx7Bacx5hyaxbNRvTYXWVDtRHQviDzL\n",
821 821 "iYlv0eKd52gybli12hBEkYTLGqLSi4hKK+ZcVinu9na0buhI64aOtGngiJ+FTTVGpmfw8tZtzLu3\n",
822 822 "D71rYLTdxq0xGgRysoqJTSzgu5h8HLR6mqfn4+amwtvHGe9GLuWljzMubvVrAUZtoS7TsemvM+g0\n",
823 823 "eoaNC8W5FtxUrsT4Ko6uEF6xSZTGJFB6KRm5mzNOzQNwbB6AU3N/nFqUbyu83Kv8/7cJrQpEUeTd\n",
824 824 "3Xso1ev5ZEC/Kn2QoiBwdtoHqNMyCf/149vmLrwRQW/gYN8JNH/rGRoO6X3nN5gZoyAyf3ciANPv\n",
825 825 "DbCo1TcGo55ZK56ke8hAhkY8am5zriMxNpeNf5xixKMdaRponWJLSE9GPe81lM+8jrxDRK32XXop\n",
826 826 "ieMPv0KTx0YQNOXxu77RGQWR5AIN57NKOZ9dyrmsUgo1BkIaONCmoROtGzjS0tvBbHnrDqWm8fr2\n",
827 827 "HSzs15duTS3PlaAukpSvZsbWeAa28ODRjj4Igkh+TinZmcXkZBaTm1lMdkYxep2xQnw5XxVfXg2d\n",
828 828 "UChtI1/VJTO1kHW/n6R564b0GtTC7AnIRUFAk5ZFSUwiJbGJlMYmVZSJIIo4Ng/AsZk/jkFNcQhs\n",
829 829 "cvUld7h5dhCb0LoGrcHAY2vWMqR5MyaFdqjUe0RR5NwbH1Eam0j4b5/c8oO+FYnfrCRn92E6/f6p\n",
830 830 "1Twl6QwC07fGEeBuWal6lu1aRHZBOq+O/thibLqWpEt5bFh50irFlpCfh/q9l1E8MAG7nv3NYoMm\n",
831 831 "M4fIR1/DvXN7QuZOvesUHjdSoNZzPru0XHxllXIpT42vq5JW3g4083SgmZc9ge72Jh/J3ZuUzPRd\n",
832 832 "u1k8cACdGted7AyWzMn0YubvSuTZrr70bXb732ZZqY6cjHLxdeV1OacElb0dng2c8PB2xLOBE57e\n",
833 833 "5dsOTgqLvB5ZAqIocvpYKvu3xdBvVBtatvUxt0m3RRRFdHn5lMYkURqXTGlCCmXxKZTFp1KWnIad\n",
834 834 "m0uF+GqKQ1ATHCvK2LJCm9C6lvTiYsatWsPHA/rR2bfxbeuKokj0O59SdPoCnVZ+itypanO62uw8\n",
835 835 "9vd5zGwR4O+GUp2RVzfE0CvQnUc6mv/HcSx2N8t2LuKDCStwsrfckArJcXms//0kwx8OrVH/A1Mi\n",
836 836 "lpagnluRWmf4OLPaoi8qIWrS29i5O9N+ySyTxprTGwXi8tRcyCkjLq+M2Fw1aYUaGrkoaeZpT3CF\n",
837 837 "+Ar2sMephkYzdiYkMuufPSwZPIhQn4Y10qaN23NlZeGMvgG0b1S9QMOiIFJUoCYvp5S87BIuX1MC\n",
838 838 "V8WXh7cjnt6OuHk54upmj8wC3S9qC73eyM5158lIKWTkox3xsLLwQTciGo1o0nP+FV8JqZTGp1CW\n",
839 839 "kILj52/YhNaNHExJ5a2du/nzwdH4ODndtI4oilyc/QWXj5wk4s/PsXO5eb3bcXrK+yi9PWn57uS7\n",
840 840 "Ndks5JXqmbo+hkc7+jCopflEQ05hOu/8+jiv3/8pzRu3M5sdlSUl/jLrfouyCrEl6nVoPpqOtGkg\n",
841 841 "ivGTLeLJXNDqOP3S+2hz8gj7+UPsXGsvCr/OKJCUryEuT82lvDIu5aqJv6zG3V5OM08Hgj3t8XdX\n",
842 842 "4e+uopGzskpT61suxTF/3wG+GjqYtg28TfhX2IDya/gvkRnsjsvn/YGmWVkoiiJlJTou5/4rvC7n\n",
843 843 "lFCQp6a4UI2Tiwo3TwfcPR1w83TAzdOxvHS3R16Hc30W5qtZtyIKN08HBt7fts5Pu9qmDm/Bt5FR\n",
844 844 "7E5M5JdRI/6TrFUURWLnf03O7sN0XvVFtSLT5h89zcln36Xnvt+qPBJmSaQUaHhtYyzTevjR1b/2\n",
845 845 "R5IMRj2zf3uKLi37Mbzz+Frvv7qkJFxm3Yooho3rgH8zywyCKAoC2i/nIYqgenE6EjOFybgZoiBw\n",
846 846 "YeZn5O2PpNPvn6JqZD5hYhRE0oq0xOWVcSlPTXK+huQCDXllehq7KPF3U+HnrsLPTYW/m4rGrkoU\n",
847 847 "N/igrL8Yw8JDR/h22BBaeVm2+K4L6IwCn+xNJr1Iy5wBQWZZgWo0ChQVqCnIK6Mgr4z8q2UpRQUa\n",
848 848 "HBwVuHk64Opuj4u7PS5u9uXbbvY4uyiRWmlw3sTYXDb9dZrOvQIJvyfAIh7eTI1NaN0CQRSZsmUb\n",
849 849 "DRwcmNm753Xn4hb/TMaaHXRevQSFZ9XDQYhGIwcHPkHgC4/ReLR5/F1qkgvZpby7LZ7Z/QNp07Dq\n",
850 850 "I3t3w/Ldn5J2OZHX7/8UqcS6LjxXxNbQsR0IaG5ZYksURXTLlyIkx9VY1PeaRhRFEr5aQcrPqwlf\n",
851 851 "8QlOLQLMbdJ1aAwCqQXloiu5QENSRZlZrKOhkwI/NxVNXJWklKSzIzGaRf0HEuHbwKIWmNRFijQG\n",
852 852 "3tuRgJtKzht9/FFa4PSdYBQoLtSQn1dGUYGaonw1hQVqivI1FBWoKSvR4uisxMWtXIS5VpTOriqc\n",
853 853 "XVU4uahQWlhYClEUObonnhOHkhk2tgNNg6zLT/VusAmt21Cs1TL2f2t4Jqwjo1qVL2VP/O5Pkn9c\n",
854 854 "Ree/v/pPepDKkvzzajLW7qDz6i/rjJo/llLEx3uTWDikOX7utROi4sSlffywfQELJq7A2b768c/M\n",
855 855 "SWpiPmuXn2DIQx0IbGE5Yku34Q8MB3ZiP+MTJI61K56rStqfm7n4/pd0/OkD3DtZ/tSx3iiQVqQl\n",
856 856 "OV/D3xej2ZcaSyfvUIrUMgo0Bho4KmjsoqCRi5JGzkoauyhp5KLAx1mJygJFgTWRXqRlxtY4uvm7\n",
857 857 "8mREY4sK51EVjAaB4iINRfnqciFWoKEwv3w6sqRQS1GhBqkUnFz+FV7OLkqcXFU4u6hwclHi5KLC\n",
858 858 "3lGBtBaEvVZjYPOq05QW6xjxSO2EbrAkKiu0LEsa1xLOSiWfDxrAhL/X09LTE+cdh0n85ne6rFla\n",
859 859 "bZGlyyvg0sIfiPjrszojsgAimrrwZERj3tkax+LhLfB0NO1QfG5RBt9smcMroxZarcgCaBLgzqjx\n",
860 860 "Yfz96wmGPNSewBbm983R79+Bfsd67GcutniRBeD70GAUnm5ETXiLtp9Nr3Jg09rGTiYlwN2ePcmx\n",
861 861 "nM1LZM3Y0TRxKXc/0BkEMot1pBdrySjSkl6kIyq9mIwiLZklOhzsZHg72tHASYG3ox3ejop/t50U\n",
862 862 "eDrY2UbEbsH5rFLm7IjnsTqQs1Aml+Lm4YCbh8NNz4uiiFZjoKRIQ3Ghtrws0pCdXkTchRxKijSU\n",
863 863 "FGrQagzYOypwdFbi6HSlVF7dd3D+d1uhlFfrnpWbXcLa5SfwC/Jk2LhQ5LaHhVtSL0e0rrDlUhwb\n",
864 864 "li5n9I5Iuq5egmOwX7XbOvv6h8iUCkLmTqtBCy2Hlaey2H3pMouGNa+xlVg3YjDqmfP7M4Q3783I\n",
865 865 "LhNN0kdtk5aUz9+/nmDwmPYEtTSf2DKcPo726w+xf2cRUt/qf8/NQcGJc5yY8CYtZ0zGd+wQc5tz\n",
866 866 "W36IOslf56L5aeRwGjlXTswKokihxkB2iY6cEj3ZpeVlTqmu/FipnkKNAXd7+VXR5WEvx8PBDnd7\n",
867 867 "Ozyu2XdVyeuVINubkM8XB1J5vbc/nZvachZewWgUKCvRUVqipaxYS0mxltISHaXF5fulJVpKi3WU\n",
868 868 "FGsRBQF7RwUOjoqblvaOdtcdU6rsiD2XxY615+g9uBVtw02bRcKSsY1oVYKw+Az0Gw+y+eVx9Ams\n",
869 869 "fvDAwpPR5GzdT499v9WgdZbF2PYNyCvVMXtHAvNNFD3+z31LcVA5M7zz4zXetugF8cUAACAASURB\n",
870 870 "VLnw9Xdn9ONhrPk1isEPtjOL2DImxKL9+kNUU2dZncgCcAtrQ+fVXxL5yDS0uZcJnPyoRY4afxN5\n",
871 871 "grUXY/hl1AgaVmEhjFQiwd2+XDTd6uuhNwrklenJKdWTV6Ynv0zP5TI9qYVa8tXl25fLDBRrDbiq\n",
872 872 "5Lg72OFhb4e7vRxXVfnLRSXHraJ0VclwVclxVMgs8rO8E6Io8r+z2aw+k8OCwcEEe958BKi+IpNJ\n",
873 873 "r/p13Qm9zkhZqQ51mQ51qa58u1RHWamewvzCG47p0GoMIAEnZyUnDydx4XQ6KnsFKgc7VPYVr4pt\n",
874 874 "pUqOSmWH0l6OUiVHoZBXKb9hXaHejmjl7TvOqedm0WHZh7ySEk94o0ZM6VL1qNiiIHB42LM0fXxk\n",
875 875 "tdOIWAtXosdLgOn3BdSoH0RU3H6+3zafDyasMHseQ1OQnpxvFrEl5GSinjMV5eMvIo/oUWv9mgJN\n",
876 876 "Rg7HH56GZ68IWs1+CYnUcqYqvjx2nM2xcfw0chjejuZbbWwQRArVBvLU5WIsX22gSGOg8IZXkdZA\n",
877 877 "gdqA1iBUCK/yl5NShpNChrNSjpNChpNShrNShpNCXl5WnHdSypGb6YZpFES+PpzGyYxi5g0Mttqk\n",
878 878 "4tZGWYmW9StPIZVK6DeyDRJArdajKdOjUesqyopXmR51mR6txoBW82+p1wsoFDKUqnIRdvVlb4dC\n",
879 879 "KUeplKNQylAo5Te8ZCgqhJpSJcfOTmYRgq1WnOHXrVvHsWPHAAgLC2P06NHXnd+3bx9bt25FKpUS\n",
880 880 "GBjIpEmTbtlWbQqt/ONniJrwFqHfzcWje0dyy8p4aNVqZvTswX2BAVVqK3XlBlJ/XUeX9V9b1IXf\n",
881 881 "VFyJHh/obs/kbr418jScV5zF9GXjmTpiASFNa3f6uDZJTy5gza8nGPxAW4JaNTB5f2JJEWVzpmLX\n",
882 882 "bwSKAaNM3l9toC8o4sSEN1H5NqTd4neqlODdFIiiyJJjx9kWl8BPI4fh5WBdIyt6o0CR1lguvjQG\n",
883 883 "irVGSrQGinVGSrRGSnRGirWGa7bLz5fojNjJpDjaSXFQyHCwk+GgkOJgJ8NRIcPh2uMV2yq5FJWd\n",
884 884 "FHu5DJWdFJVcin1FqZRLK/XgpjEILNidSJneyMy+gSZzY7BxPRmphaz/LYqQDo25p3/zajvaC4KI\n",
885 885 "TmtAq74ivgxoNHq0agM67Y0vI9qbHNNpDej1RuRyGQqlDDs7GXZKGXZ28hv2ywWbnZ0MO4UM+dVS\n",
886 886 "ip3dNftyKXKF7N9jdlJkclml/kaTC63o6Gi2bdvGyy+/DMDSpUvp0aMH7dqVrw7Kzs7mq6++Ytas\n",
887 887 "WUgkElatWoWHhwf33XffTdurLaFVdCaG4+Om0e6Ld/G+r+vV4yczs3hx8xZWjB6Fv1vl4kbpC4vZ\n",
888 888 "3/MRwn5diGuHVqYy2eIo0Rp4ZUMsfZt5MLbD3UW5NgoG3l/5LB0CuzO625M1ZKHlckVsDXqgLcEm\n",
889 889 "FFuiTof6wzeRBYegfOQZk/VjDoxqLaeen4lRo6Xj9/PMFq9OFEUWHznKnqRkfhwxDA/7qqXpsmZE\n",
890 890 "UURrECjVC5TpjJTpjZTpBMr0Rkp1RsquPV6xrTEIaPQCaoOxohSuljqDgEIuxb5CjCnlUpSyilIu\n",
891 891 "QSmXIhHhTFYpLkoZXZq6YK+QXa1nJ5OgkElRyCTY3aJUVNSzk0mwk0qQy6TIJFjl1GltcuZ4Knu3\n",
892 892 "XGTA6LY0b2MZWQ1EQUSvN6LXlb90OsPV7Zvt6/VGDBX1DXrh6r5Bb0SvFzBcW0dvxGAQkEolyOXl\n",
893 893 "wkwulyKXy5Bd2bYrF2iB7aWm9dGKioq6roO+ffty6NChq0Lr5MmT9OrV6+qXuF+/fnz33Xe3FFq1\n",
894 894 "QUlMIpGPvkrrD1+7TmQBhPo05IWITkzZso3fHxiFg92dn5QvLfwe74E96pXIAnBSypk/KJip62Pw\n",
895 895 "cLCjf/Pqx035a/832MlVjOx669HOukRjPzfufzyM1ctMJ7ZEQUDz9YdI3b1QjHuqxts3NzJ7JaHf\n",
896 896 "z+P8Wx9z9MGX6LR8EQqv2p1uFkWRjw8d4VBqKj+NGIZ7PRJZUC5OVHYyVHYyPB3uflRRqBBuGoOA\n",
897 897 "Wi+gNVS8jAJag0h6kZbfTmbS0tuBsMZO6IwiWqN4dfpTL4jorpRGAb1BRC8I6Izlx3XGin2DiEEQ\n",
898 898 "0QsieqOAKIL8ivCSSiq2ywWZXHr9S3btvkyCXHL9Mdk1pUxCeSmVIL1aD2SSK+clSCUgvcW2TCKp\n",
899 899 "2C/34ZNKK8qKc5IrxyWSCrH47760Yrv8WPn/6oqglHCTYxIqjv+7LZFIMBoEdm2IJiX+MuOe6YJn\n",
900 900 "A8tZqSyRSq5OK5oCURQRjCIGg1AuyAwCBoMRo768NOgFDAaBgtKUSrVXbSuLi4txdv43RYaLiwuF\n",
901 901 "hYVX90tKSvDz87vufFFRUXW7u2vKktI4Pm4qLWZMxmfYvTetM65Na85kZTNz9x4W9u972yed4ovx\n",
902 902 "pK/ZTs+9ddcB/nZ4OSqYNzCY1zdewk0lJ6IaK35OJRxi79kNfDBhhdUFJb0bGjU1rdjS/f4tFBeg\n",
903 903 "fOODOjudLZXLabPwTS4t/J7DI56j08pPcfC7fQ7TmkIURRYcOERkRgY/jhiGm6p+xQ4yBVKJBHs7\n",
904 904 "GfZ2Mtxv0Kznskr4/WQmE8MbMaRVzYZvMAoixmuEl0GoEGLG8mMGQcRgLC+NwvXlta+r58TybaNY\n",
905 905 "3rYglrer1osYBf49X1FXEMtFplEoL2+2fW094brt8qk4gYp9AUTK3yMiIopcV1cURUSuPyaIIlSU\n",
906 906 "IlCxi9JgpEN2IXqplGgfV/638RJSrhdmV4TbTfclIOHfffj3GNe9B6BcHFZslp+/UvNKvWvqSq45\n",
907 907 "dl39a27X1/V7pZF/q/9bSrjuiOSGetxQ76r9FccfqmQ64GoLLWdn5+uEU1FRES4uLpU+X5toMnI4\n",
908 908 "NuZlgl56HN+HBt+ynkQiYWbvnjy2Zi2/nDrDxND2N60niiIX3v2MZtMmViuCfF3B392eWf0Cmb0j\n",
909 909 "gXkDg2nhXXn/lPySHJZums1Lw+fi6lh/Iglf4TqxdX9bgkNqRmzpNv8P4+nj2M/8FIld3XYSlkgk\n",
910 910 "NH/jaRTeHhwZ+Tzhyz/GpU1zk/YpiiLz9h3gTHY2PwwfhqsJk1/bgH0JBXx+IMVk4RuujDqV/1Is\n",
911 911 "JxWVOUlNvMyGlado38OfiF5BiJJ/BZgglAsyqBj1qdgRKjyQhIp6iCBUiL3yuuXi799tKs79K/6u\n",
912 912 "NCxeqXml3rV1rzl2Xf1rHKD+rV/Ruvjv8etKkeuO/Pf49fviDfUQgezKDR5VW2iFhYWxdevWq1OF\n",
913 913 "u3bt4p57/g0oGBoayldffUWfPn2QSqXs2LGD8PDw6nZXbXS5+Rx7aApNHx+J36T771hfJZfz+aAB\n",
914 914 "jFu1hhBvT7r4/jdGSPaWfWgzc2k64c7t1XXa+DgxrWdTZm6PY9HQFvi63vnGIwhGlmx4l36h99PG\n",
915 915 "r+orPesKjZq6cf+EcNYsi2Qgdy+2DEf2oN+0CvtZnyFxrL2EzObGf9IDKD3dOf7Q1KsLXEyBIIq8\n",
916 916 "v3c/F3Jz+X74UJyVNpFlSv53Jpv/ncnmg0HBNPOyrkUG1ogoipw8ksKhXZcY9IB5QtFYGyeyK1dP\n",
917 917 "Nnv27NnV6cDLy4usrCyWL1/Orl27aNasGX369GHFihUEBATg4eGBVCrlu+++Y8+ePahUKh544IFb\n",
918 918 "tpeQkECjRo2qY8ot0RcWc+yhKTQY1JNmrzxR6fc5K5W08vLkjR27GRQcjLPy35EBo0bLiQlv0nrB\n",
919 919 "azgGNa1Re62Vpm4q7OUyvjiYQu8gd+zvkJ1+zaEfyS5I5dlBM5HUoynDm+HsoqJJoAfrV57Cw9sR\n",
920 920 "D+/qOXYbL5xB++1CVG/MQ9a4/n0vnVoG4tKhJaeemYm9X2OcWgbWaPuCKDL7n73EXc7n2+FDbCLL\n",
921 921 "hBgFkW8Op7EvoYCPajH1V33GoDeybc054qKzefCJTjRuWn9naqpCRkYGQUFBd6xXZ+NoGUrLOD52\n",
922 922 "Kq6hIbR6f2q1Vpb8EHWSrZfi+XX0CJTy8sG/uMU/U3jqAmE/LagxW+sKyyIzOJJcyMKhzXFQ3Fxs\n",
923 923 "RadEsXjdm3zw+HI8nE0f4sBayEgtZM2ySAaMakOz1lVb2SOkJaOe9yrK599E3q6TiSy0DorOxhA5\n",
924 924 "/nWCXhqP/xMP1kibRkFg5j97SSkqYunQwThWYqGMjeqhNQgs+CeREq2Rmf0CcbaFbzA5RQVq1q2I\n",
925 925 "wtXDgYH3tzWZg3ldpLLhHerkcIJRoyVq4ls4NvOn1ZyXq71894nQDvi6OPP+3v2IoogmPZvEb1bS\n",
926 926 "avZLNWxx3WB8mA/NvR2YsyMBnVH4z/lidQFLNszg2UHv2kTWDTRq4sr9j4ez7e9zxJ7LqvT7hPw8\n",
927 927 "1B+/g+Lhp+u9yAJwaduCruu+JumHVcTM/5q7fY40CgLv7PqH9OJivraJLJNSoNbzxqZYlDIp8wYF\n",
928 928 "20RWLZAcl8eKpYdp2b4Rw8Z1sIksE1HnhJagN3Dq2ZnYubnQdtFbd7XqSiKRMPe+PpzOzubP89Fc\n",
929 929 "nPsVTR8fjYN//c3tdDskEgkvdW+KvULKwj1JVx0koXz+f+mm2XRt1Y+w4J5mtNJy8WniygMTwtm+\n",
930 930 "9hwXz2Tesb6oLkOzaAZ2vQdh13NALVhoHdg3bUTXdV+Ttz+Ss1PnIegN1WrHIAi8vXM3OWVlfDVk\n",
931 931 "UKVCvtioHmmFWqauj6VDI2fe6OOPQlbnbk0WhSiKHN+fwIY/TjFkTHsiegba4omZkDr1bRaNRs68\n",
932 932 "PBfRaKT9l7OQyO5+FYmjnR1fDBrIZwcOcTwugaAp42vA0rqLTCrh7T4B5KsNLD2UenVEYXPk7xSW\n",
933 933 "XubhXi+a2ULLpqGvKw9O6sSuDdFcOJVxy3qiwYDmi/eRBrbAbuQjtWihdaDwdCNi1efocgs4MfFN\n",
934 934 "DGXqKr3fIAi8uWMX+RoNXw4ZhL1NZJmM6OxSXt0Qw5h2DXgionGNpvay8V/0OgMb/zhN9MkMHn2+\n",
935 935 "G/7NPM1tUp2nzggtURQ59+ZCtJm5hH43r0ZTc/g5OzF+31mWje5Jvu0acEcUcinv9Q/iTGYpv53M\n",
936 936 "Ij4zmjWHfmDKiPnIZbYb1p1o0MiFMZM6sXvTBc5Hpf/nvCiKaH9cDFIpyolTbE+it0DuYE/Hnxeg\n",
937 937 "9Pbg2P0vosvNr9T79EYjr2/fSYlOx5LBA1HJbdMppuJAYgEzt8UzracfQ0NqNkaWjf9SkFfGb18f\n",
938 938 "QSaXMu7ZLrjeGLTMhkmoE0JLFEUuvvcFxefjCFv2ITL7ml0RlLpyIx0L1YwJC+WVrdvRG4012n5d\n",
939 939 "xFEhY96gYLZezGX2ur94ov9bNHRrYm6zrAYvH2fGPBnB3q0XOXsi7bpz+jW/IqQkoHpxRo2M2tZl\n",
940 940 "pHZy2n46Hc8+nTk84jnKktJuW19nNPLqth1oDQa+GDzw6iIYGzXP3+dyWHIwlXkDg+niV7m0Zzaq\n",
941 941 "T0JMDr99c5j2EU0Y9EBb7O6wOtxGzVEnhFbcoh/J23uc8BWLajzvmb6wmNgF3xIydxqTI8JxVihY\n",
942 942 "ePBwjfZRV/Gwl9NauY4CeX+MyvobL6u6eDVwYsyTEezfFsOZ46kA6PdsQb9vO6rX5iJR2Z5GK4NE\n",
943 943 "IqHFW88S8PRYjox8nqIzMTetpzMaeWXrdgRg8aABKGwi1iQIYnn4hvXROXw6vHmVAh3bqDqiIHJ4\n",
944 944 "dxxbV59lxCMd6djN3zYKXstYvdBK+Pp30tdsp9Mfi1G413zk4LhPfqLBgB64tm+JVCJhQb/72Juc\n",
945 945 "zPqLN79Y2/iXf86sJS//FAuGtOKzAymczig2t0lWh6e3E2Of6szBnZeIWr0P3Z8/Yv/GfKSutZvb\n",
946 946 "ry7gN+l+QuZO49i4qeTuPXbdOa3BwMtbtiGTSvlkQD+byDIROoPA/F2JxOSW8umwFvg42+KRmRKt\n",
947 947 "xsDa36KIv5jDY5O70STAdt0wB1YttFKWryX5h7+I+PMzlN41n8alJCaRtFVbaP72M1ePuSiVfDFo\n",
948 948 "IAsOHCI6J7fG+6wrpOTG8dueL3h5xAe09nFn+r0BvL8zkbi8MnObZnW4ezny4KAGHDmSyYUBryBt\n",
949 949 "VP8CktYUPsPupeP38zn9/GzSV28DykXWlC3bUMnlfNy/r01kmYgijYE3N19CIoEPBjXDRWWbljUl\n",
950 950 "eTklrFh6CEcnJWOf6oyTiy3wq7mwWqGVvmY7lz7+gU5/fo69b9UCPFYGURSJnrmY4CmPo/S6XsQ1\n",
951 951 "9/Tg3V49mLJlGwUaTY33be3o9Bo+W/c2j/R+iSZe5VFzO/o681L3JszYGk9GkdbMFloXQk4mqu/n\n",
952 952 "MGZwQyJjtEQeSDS3SVaNR7dQIlZ9Tsy8pcR8/gsvbtpS7hLQvy92NpFlEjKKtExbH0Obho68fW8A\n",
953 953 "CrnV3nqsgtjzWaz89igRPQPpP6oNMtvnbVas8tPP3rqPCzM/o9PKT3EMNI2Ddc62/WjSsvC7RXTp\n",
954 954 "Qc2CGRgcxKvbdmAQ/hucsz7zy65F+Hs3p0+7kdcd7xXkzsOhDXl7Sxz5ar2ZrLMuxJIi1AunYzds\n",
955 955 "LJ59ejH2qc6cOJTE8f0J5jbNqnEOCSZ0zRJOLFtDlz92ML9PL+R3EXPPxq25mFPKtA0xjGzjzVOd\n",
956 956 "fW3hG0yIIIjs3xbDrvXR3D8hnHadbAuQLAGru7Lk7j7C2VcWEL5sIc6tgk3Sh6DVcWHW54TMmYrU\n",
957 957 "7tbD29O6dkYmkdic46/h0IXtnEs+xpMD3r6pw+WI1t7cF+zOjC1xlOpsqzdvh6jTof50FvLQLigG\n",
958 958 "jgbA1d2esU915uThFI7ujTezhdZLmV7PtKgTnJ31LB0McOaJ6RhKbdPaNc2BxAJmbI3n5Xv8GNHa\n",
959 959 "lqTYlKjLdKz+JZK05ALGv9CNRk1sKzktBasSWnkHIjn94hw6/rwA144hJusn8ds/cGwRiNe9XW5b\n",
960 960 "TyaVsrB/P/YmJbM6+oLJ7LEWsgpS+WnHh0wZ/gEOSqdb1hsf5kMLbwfe2xF/01Q9NkAUBLTffIjU\n",
961 961 "zRPFuKevO+fiZs/Ypztz5ngqB3deuus0M/WNUp2OZzdsorGzM+8NHUj48o9ReHtw9P4X0Wbnmdu8\n",
962 962 "OsOas9lXwzd087fd9E1JVlohv355CG8fJ8ZM6oSDk22RganJOxBZ6bpWI7Tyj5zi1DMzCf1uLu4R\n",
963 963 "7UzWjyYzh4Slv9HqvSmVqu+qUvLlkIF8cvgIURl3TptSV9EbdHy29i1Gd32SIJ/bi2CJRMKL3Zvi\n",
964 964 "rJTzwe5EjIJNKNyI7vfvEAoLUD77xk3TSDm7qhj3dBdiz2WxZ/NFm9iqJMVaLU9v2ESwuzvv39sb\n",
965 965 "mVRaHmvrk7dpMLAnh4c+Q0lMornNtGqMgsjSQ6lsvJBnC99QC5yNTGXVT8fpPbglvQe3QmpLX2RS\n",
966 966 "BJ2ei3O/4vTk9yr9Hqv4jxREnSfqiem0/2oWHt07mrSvmHlLafLI8Cr5fgW5uzP/vnuZtm07GcUl\n",
967 967 "JrTOcvl97xd4ODdkUPi4StWXSSW82ccfrUHgk33J1+VFrO/otqzGcOoo9lNnIVEoblnP0VnJQ09F\n",
968 968 "kJqYz4615xFtgvW2FGq0PLV+I228vZjVu+d1vkISiYRmr0yi2WtPcvT+F7h8MMqMllovGoPA+zsT\n",
969 969 "iL+sZvHw5rbwDSbEYBDYtuYsR/ckMO6ZLrRs62Nuk+o8pXHJHB7+LCUX4um+8+dKv8/ihVbRmRhO\n",
970 970 "jH+dtoun49W7s0n7yj9+hrx9xwmeOqHK7+3l78f49u2YsmUrGkP1kthaK8cv7eFYzG6eGzyzSoHw\n",
971 971 "FDIpM/sFkVGk5atr8iLWZwxH96Hf+Bf2b8xH4nTnuHD2DgrGPBFBXnYJm/93BsE2FXtT8tVqnli3\n",
972 972 "gfBGjZje455bfk99xw6hw9L3OPn0DNLXbK9lK62bfLWe1zfG4qiQMX9QME5KW/gGU1FUoGblt0dQ\n",
973 973 "l+l5dHI3PBvc2lXDxt0jiiKpv63n8Ijn8B03lLBfF/4nGsHtsGihVXwhjshHX6X1h6/ToP89Ju1L\n",
974 974 "FASiZ3xKi3cmVzu6/BOhHQh0d+fd3XvqjWjILcrguy1zeXH4PJzsq+6HoZJLeX9gMNFZpfwceesk\n",
975 975 "yvUBY8xZtD9/jurV95F6VT5kiVIl54GJnSgr0bF+5SmMBpvYupa8MjWT1m2gh18TXu/e9Y4PA549\n",
976 976 "O1WEf/iK+CW/1pvf8t2QnK/h5XUxdG7qwmu9/LCzTV+ZjOS4PFYsPUyLtg0Z8UgoSls8MpOiyy/i\n",
977 977 "5NPvkPjdn3RevQT/SQ9UObK+xf4aSmKTOD52Gq3mTMFnaB+T95f2xyakMjmNHxhQ7TYkEglz+vQi\n",
978 978 "qaCQH6JO1aB1lonBqOfz9e8wJOJRWvp2qHY7V/Ii7k8s4M9TWTVoofUgpCWhWfweyufeRBbQrMrv\n",
979 979 "t1PIGDU+DET4e/kJ9Hrbik6AnNJSJq5dR/+gQKZ26VzpC6RzSDBd139LxpodnH/rY4R6NkpdFU5l\n",
980 980 "FPPaxlge6+jD+LBGtvQuJkIURY7ujWfjn6cZ+lB7OvcKsn3WJibvQCQH+z6OqlEDum3+HueWQdVq\n",
981 981 "xyKFVlliKsfHvkyL6c/RaFR/k/enLyoh9oNvCJk77aaOx1VBJZfzxeCBLD9zhn8Sk2rIQstk1YFv\n",
982 982 "sFc4MLzz43fdlpu9HR8ObsaGC7lsiK5fEfeFy7moF76D4pFnkbfvVO125HIpwx/ugMrBjtU/R6LT\n",
983 983 "1m9xkFlSwuN/r2dYi+a8ENGpyjclVSNvuvz9FerkdKImvoWhpNREllovOy9dZt7ORKbfF8CAFp7m\n",
984 984 "NqfOotUYWPfbSWLOZvHo813xC7Z91qZE0OmJmbeU05Pfo83HbxHy/lRkqur7G1qc0FKnZHJszBSC\n",
985 985 "p03Cd+yQWukz7pMf8erbrcZCRjR0cuSzgQOYsfsf4vLza6RNS+NUwiH2nt3I5CFzkEpq5mvk5ahg\n",
986 986 "weBm/BaVyc5Ll2ukTUtHLC1Bs3A6dn2HY9ej3123J5VJGfJge9y9HPjrx2No6mlg2PTiYib+vZ4x\n",
987 987 "rVvxbHhYtduROzsStmwhSh8vjox4HnVK/V1ZfC2iKLIiKpOfj2fw0dBmhDZ2NrdJdZa87PJUOg6O\n",
988 988 "CsY90wUXN1syeVNSGpfM4RHPUhwdR/edP+N9X9e7btOihJYmI4djY14i4NlxNB0/8s5vqAFKYpNI\n",
989 989 "+3MzLaY/V6PtdvBpyGvduvLCpi0UaupWypn8khyWbprNi8Pex9WxZnNMNnZRMn9wMN8eSeNgUkGN\n",
990 990 "tm1piHodmsWzkYV0wG7YQzXWrkQqof+oNjT2c+eP749SVlK3vn93IqWwiAl/r+fR9m15omPoXbcn\n",
991 991 "tZPTZuGb+I4byuFhz5B//EwNWGm96I0Ci/YmczCpgM9GtCDA3XbjNxXRJ9NZ+e0ROvcqT6Ujt6XS\n",
992 992 "MRmiKJKyYl25w/vYqju83w7Z7NmzZ9dIS3dJQkICiU/MoOmjIwl47uFa6VMURc68NAffh4aYZEVj\n",
993 993 "Ky8v0oqL+f3seYY0b1YnUk8IgpFFa16lS8u+9G433CR9uNnb0aGRM/N2JdLc04FGLnVvibgoCGiX\n",
994 994 "LgCFEuVTdz9lfSMSiYSA5p6UFmvZs+kizVo3rBdOs0kFhUxat4GnwkJ5tF3bGmtXIpHgFt4Wx+Z+\n",
995 995 "nH52FkofL5xbV92Xztop0hh4d1s8Egm8PyAI53rwnTIHBoPArg3RnDmeyv0TwglsYYuqb0q0uZc5\n",
996 996 "Pfk98vYeI2zZRzTod+uVydeSkZFBUNCd/bYsSh43un8ggS88Wmv95ew4iDo5Hf9b5DOsCV7tVj7s\n",
997 997 "uOhQ3UjTs+bQj4gi3N/tSZP208LbgXf7BjJ/dyLns+qWb4woiuh++wahMB/Vc28ikZomkbFEIuGe\n",
998 998 "fs1p26kJK789QkFe3U4xE5+fz8S165kcEc64tm1M0keDfvcQ8b/Pif3wO2IWfINYj/KcphZqmLIu\n",
999 999 "hlYNHJjZLxCVnS0BtykozFez8pvDlBZrGf9CNxo0unOYFxvVJ3vrPg7eNwGnFgF021R9h/fbYVFC\n",
1000 1000 "q9krk2qtL0Gr48K7i2k1ZypShZ3J+pFLpSwa0I9/EpNZc+GiyfqpDc4nH2f7yVW8OHwuUhOJg2tp\n",
1001 1001 "38iJ13v7MWt7PHF5apP3V1voN63CePYE9tNm3zYgaU3RuVcgEb0CWfndEbLSi0zenzm4kJvHpLUb\n",
1002 1002 "eLlLBA+EtDJpX86tgum26TvyD53k5NMzMJTVne/mrTiVUcwr62MZ274BT9sSQ5uM+AvZrFh6iFYd\n",
1003 1003 "GleEbjDdvam+Yygp5eyrC4h+9zNCv5tLi3eeN5kWsCihVZskfleez7AmHN3uhKtKyZIhA1l06DDH\n",
1004 1004 "060zVlRRWT5LNrzL80Nm4+FUe8PYnZu68lL3Jryz9RIpBZpa69dU6A/sRL9tDao35iNxrD0H4tAu\n",
1005 1005 "ftw7LIRVPx0nOa5u5fM7nZXF0+s38naP7oxq1bJW+lR4uRPx52fInRw4OmoymvTsWunXHGy5mHd1\n",
1006 1006 "ZeHgVl7mNqdOIhgF9m2NYfva84x8tCOdegTYQjeYkPxjZzjQdyKiIHDPzl9w71L98ESVoV4KLU1m\n",
1007 1007 "DglfVT6fYU0Q7O7Own59eWXrdhLyrcvJWxAFvtw4k55thtAhsFut998ryJ2J4Y15a/Ml0gqt17Hb\n",
1008 1008 "cPYEuhVfo3p9PlKP2ve5aNnWhxEPh7J+5SkunrZOwX8jR9PSmbxpC3Pv7c2gZsG12rdUqaDt4nfw\n",
1009 1009 "GdmXQ0OfpjAqulb7NzWCKPL90TRWnsrk42HNbSsLTURpsZa/fjpOZloh41/ohq+/u7lNqrMIOj0x\n",
1010 1010 "H3xD1BNv02rWi7T7dDpy5+oFKK8K9VJoVSefYU3QrWkTpnbtzPMbN3NZbT3TDRuO/opaW8KYHjW7\n",
1011 1011 "MrMqDGrpySMdfXhjU6xVii1j4iW0X32AaspMZE0CzGZH0yAPxjzRid2bLhB1yLrjvO1NSuaVbdtZ\n",
1012 1012 "NKAfvQP8zWKDRCIh6IXHaD3/VY4/9ioZ63aaxY6aRqM38v7OBKKzS/lsREv83FTmNqlOkpJwmV+/\n",
1013 1013 "PEiTAHcemNgJB6e6t/DHUii5mMDhoU9TfC6We3b+QsMhvWut73ontAoiUO6fYgAAIABJREFUz1Y7\n",
1014 1014 "n2FNcH9IKwY3D+bFzdaREzEm7TQbjy3npeHzkcvM6y8wtJXXVbGVXmQ9YkvIzkCzaAbKSS8ja9XO\n",
1015 1015 "3ObQoJELDz/ThRMHk9i/LcYqU8xsi4vnnV3/sGTwILr4+prbHBoO7kXEH4u5OGcJlz7+wSo/0yvk\n",
1016 1016 "lep5dWMsDnYyPhjcDFfbysIaRxTKo7yv//0kA+9vxz39miOV2qYKTYEoCCR9/ydHRk+m6fhR5WEb\n",
1017 1017 "GtRuwNd6JbREQSD6nbvLZ1gTTOkcga+zM2/v3I1gwRfkorJ8Pl//Nk8PfAdv10bmNgeoEFuhPry+\n",
1018 1018 "0TrEllhciPqj6diNeBh5RA9zm3MVVw8HHn6uK4mX8ti25pxVJaNedzGGufsO8O2wIYT6VD4npKlx\n",
1019 1019 "aduCbpu+J2fXYU4+M8MqI8nH5ZUxZd1FegS48VovPxS2nIU1jrpMx98roog9l81jk7sR2MLm92Yq\n",
1020 1020 "1CmZHB83jfTV2+m64VuaPj7KLL5v9epXlPbnJiRy2V3lM6wJJBIJ8+7rQ25ZGZ8ePmJWW26FIAp8\n",
1021 1021 "tWkWXVv2p1PzPuY25zqGhliH2BI1atQfz0DeuSeK/rUTgLcqODgqeOjJCIoLNaz97SR6neXnR1x5\n",
1022 1022 "9hyLjxzlp5HDCPG2vBuUsoEnnVcvwc7FmUNDnqb0kvVMzx5OKuStzXE828WXh0N9bM7YJiA1MZ9f\n",
1023 1023 "lxzEzcOBcU93tkV5NxGiKJKyfC0HBz2Bxz1hdFm3FMegpmazp94ILX1RCbHzayafYU2gkMn4YvBA\n",
1024 1024 "diYk8se58+Y25z+sPfwTGl0p43q9YG5TbsrQEC8eDi2fRsywQLEl6nVoPnsPaZMAFGNqL2xJVVEo\n",
1025 1025 "5YweH4ZSKeevH4+hLtOZ26Rb8mPUSX48eYpfRo4g2N1yHYZlKiVtF71FwDNjOTzyebI27TG3SbdF\n",
1026 1026 "FEX+OJXFZwdSeH9AEL2CLPeztVYEQeTw7jjW/RZF3xGtuXdoK2S2KO8mQZ2WReQjr5Cy7G86r/qC\n",
1027 1027 "4JcnIJWbd/q73vyn4z79qTyfYWjN5DOsCdxUKpYOHcyXxyLZl5xibnOuci75GFtP/MmU4R+Y3S/r\n",
1028 1028 "dgwL8WJcBx9etzCxJQpGtF9/BEoVyiemWvzIgEwuZfCD7Wjs58bKb49SVGBZCzVEUWTJ0eP8L/oi\n",
1029 1029 "y0aNoKmrdQRwbPrYSMKXf0z0u4uJmf81otHyRgy1BoEP/0lib0I+n49sQasG5nOpqKuUFGlY9dNx\n",
1030 1030 "EmNzGf9Cd4JbNTC3SXUSURRJ/X0DBwdMwr1zB7pu/A7nkNpdiXwr6oXQMlU+w5rA39WVzwb25+2d\n",
1031 1031 "u7iQa/74RvklOSxZP4PJQ9/Dw9nyLwjDQrwY276hxYgtURTR/vwFYnEhqsnTkcisI3q2RCqhz5BW\n",
1032 1032 "tA33ZeW3R8jNLjG3SUD55/nRwUPsTEhg2agR+Dg5mdukKuHWsTXdtv5AQeQ5jj/yKrrLheY26So5\n",
1033 1033 "pTpe2RADwCfDWuDtaPrgufWNhJhcfv3yEE0C3Hnoqc44u9pWb5oCTUYOkY+9RtIPf9H5r88JnjYR\n",
1034 1034 "qZ3lLOKo80JLFEUuzPqMoJfGo/Su2QTINUXHRj7M6NmDyZs2k1livhucUTDwxfr/t3ff0VGVWwOH\n",
1035 1035 "f1PTe68kpBJqQq/SiyBeUewodkUBC2C9NhSxIWDlKkVFsYECSu+9JrQQEhKSkE56nT7n+yPKd71S\n",
1036 1036 "QkgyM8n7rJU1M+HknE3KzJ637P0yw7pNoEtY8xdybSo3xflwRxc/Zq1Lp7DassmW/pdlmDPTsG+h\n",
1037 1037 "qu9NrefAcAaMiOanrw6RnV5i0VhMZjNv7NxNYkERS2++CS9H21zPYuftSY8fP8K1YxT7Rz1I5QnL\n",
1038 1038 "d4hILqph2uo0bgj34PnB7bAT01hNymQys3NDKhtXnWTcHV3pNyxS7CpsBpIkkffjOvYNn4x7Qkf6\n",
1039 1039 "rl9slT1IrSflaybFm/c2ez/DpjA6MoK86mqm/LGBb28Zj5MFXqR/3vMFCrmSCX0fbvFrX6+b4nyQ\n",
1040 1040 "gJl/pPP+2Ej8XVq+Ho1+/UqMh3bj+O95yBxsdwomLj4QF3d71q44Rr9hkXTrHdriMehNJp7fso1y\n",
1041 1041 "jZYl48da5O+hKcmVSmJefRK3bh04ctczxL76JEF3jLVILBtSS1l8OJ+ZN4TSK8TNIjG0ZpXlGn7/\n",
1042 1042 "4Tj2jirum9ofRzFS2Cy0hcUkz3gXbUFx/RuZTtGWDumyWvXbGJNGR8or8+nw9rPN2s+wqTzYrStd\n",
1043 1043 "/Hx5dtMWjC3crDYpYw+7Tv3BU+Napo9hcxgf58PELr7M/KPlR7YMuzdj2LASh+fnInN1b9FrN4eQ\n",
1044 1044 "cE/ueqw3iXuz2fZ7SouWf6jV63n8j/WYJYlF48bYfJL13/zHD6XXqk/IWPgtyc+/j1nXcpsPTGaJ\n",
1045 1045 "z/bn8tOJIj4cFyWSrGaQdqqQ5Z/tJ7qTHxMmJYgkqxlIkkT+LxvYN2wybt060Hf9V1adZEErT7Qy\n",
1046 1046 "P12Oa9cYvG/oZelQGkQmk/HKoPpaS2/v3ttiRQ9Lqgr4Yv0bTBs/Bzcn65xebaj/TrZaqoK8MXE/\n",
1047 1047 "+h++xGHWXOTe1r+uraE8vJy4+4k+lF6o4ddvE9Fpm7/Abmmdhsmr1xLq6sq8kcOxs/BuoebgEtOe\n",
1048 1048 "vuu/QldUwqEJT6EtKG72a1Zpjby0IYO8Si0Lx0eLSu9NzGAwsWV1Mjs3pDLhvgR6DgxHJqYKm5wm\n",
1049 1049 "p4Cj987g3Kff0X3FPCJnPGQTgyitNtGqy84je8kvxL7ecv0Mm4JSLmfeyOEcLyziP4lJzX49o8nA\n",
1050 1050 "/NUvMK7XJGKD45v9ei1hfJwPd3fzY8YfZ8kobd4ddKYzJ9B9NQ/752YjD2r5KbbmZu+gYsL93XHz\n",
1051 1051 "cOD7RQeoLKtrtmvlVlVx76+rGdQulNduGIjCCsqwNBeVqzPxS97BZ2R/9o96kOKt+5vtWlnlGqat\n",
1052 1052 "SSXSy4E3R0bgbNf6kldLupBfxfJP96PRGLjvqX4EhNj+iLa1MRuNZC36gX2jHsSjd1f6bVqKW5eW\n",
1053 1053 "aSDfFBSvv/7665YOAiAzM5OAgKarPn5i2lv4jx+G74j+TXbOlqJWKBga3o45u/chl8no7Nd8oyTf\n",
1054 1054 "bJ+HyWRk8vBZVl+G4FpEeTvi66zinW1ZdPB1wte56YfwTVnpaOe9it2TL6GM6dTk57cWcrmM8Bgf\n",
1055 1055 "JDNsWHmKwFD3Ji+0mFpSykNr/mByty48nBDfqn4XL0cmk+HZpxtuXWM59cwctPkX8OwXj0zZdFP3\n",
1056 1056 "+7IreHNLFg/2CGRiFz/kbeD72lLMZonDuzLZvOY0A0ZE0X94JEqVbS67sGZVp9JIvP95NDmFJCyb\n",
1057 1057 "i9/oQcispGNBQUEB7du3v+px1hFtE7uwZS+16dmEP3anpUNpNB8nJxaPH8dXScdYm5rWLNc4kLqF\n",
1058 1058 "o+m7eGLsG63yhW1QuAfPD2nHG1syOZTTtNvqzYW5aD94GbsHpqPs2DpGAq9EJpOR0K8doyZ04rfl\n",
1059 1059 "SZxOym+ycx/NL+Chtb8zs18f7uncehPWy/Hsl0C/LV9Tdz6fA+MebZJq8mZJ4tvEAj7dl8vske0Z\n",
1060 1060 "HmXbSwKsTWW5hp++OkRmWgn3TulLXHxgq3wOtSRTnZbU2Z9x5M5nCH1gAj1/WWjR6u7Xo9WNaJm0\n",
1061 1061 "OhInzaLjO8/hFNmuCSKzHFc7OwaEhjBry3ZCXV1p34TVsAvKzjPvtxnMmDAPf/fgJjuvtQl0taOL\n",
1062 1062 "vzNztmfh5agi3PP6R2LMZSVo5sxEfcu9qPoPa4IobYeHtxPtY7zZ9GsydbV6QsM9r+sFZltmFs9v\n",
1063 1063 "3cZ7w4cxNDysyeK0NQoHe/xvHgZmiRNTZ6P2csOlY1SjvreVWiOzt2aSV6lnzphIsR6rCUmSRHJS\n",
1064 1064 "Pmu/T6JT92BG/KsjDo7Wv0bI1pTsOszRe2agdHIg4ev38Ozd1SoT2YaOaLW6yfrMT7/DtWMk3kN6\n",
1065 1065 "WzqUJhHh4cHnN47msT/W4ahW0zc46LrPqTdo+Wj1LCYOeJwI/7gmiNK6xfo68e6Nkby8IYMavYnx\n",
1066 1066 "cT6NPpdUXYX23RdQDR2HasiNTRil7fD2c+GeKX1ZvTyRtSuOMWZiF1Tqa58yWZVyhvkHDvH52DF0\n",
1067 1067 "9m09mwgaSyaTETp5Ah59unL8sdco3XGIuPdmoXJteJHW1OJa3tqaxaD27jzYIxCFWJDdZDR1ejb/\n",
1068 1068 "mkxpSS0TH+qJb4BtdCiwJfrSCs688THl+5OIe2cGPsP7WTqkJtGqpg7rzueT/dVPxL4x3dKhNKmO\n",
1069 1069 "vj7MHzWSmZu3cLyw6LrPt3Tr+wR7t2dEN+uuLdaUwjwc+HBcFKtOFbM8saBROzql2ho0776AIr4P\n",
1070 1070 "6pvuaIYobYejk5qJD/VCqVbww5cHr6ltjyRJLE46xmdHjvL1v8aLJOt/uMRG0HfDYpTuLuwbdj/l\n",
1071 1071 "R05e9WskSeL3lBJe2XiOx3oH8UivIJFkNaHMtBK+XrgXVw8HJk3pK5KsJvZXyYY9g+9F5e5K/x3L\n",
1072 1072 "W02SBa1s6vDk9LfwHzcE31EDmigq6xHo4kKkpyczNm+lf0gw3o6OjTrP1mOr2H9mMzNv/QiVsm3V\n",
1073 1073 "eHG2U3JDe3eWHikgp1JH92CXBg9HS5paNO++iCK6I+q7H7XKYeyWJpfLiIzzRac1sWHlSbz9nPHw\n",
1074 1074 "unKhVrMk8cG+A2w+l8mym8cTbCN9C1uaXKXEd3h/HEICOPHkG5j1Bjx6dkZ2iZ2YWoOJebvPc/B8\n",
1075 1075 "JXPGRNDJ37baFFkzg97EjnVnOLw7kxsndqFr71DkVrIQu7WoScvixJTXKd11hG6fv0nw3eNsomQD\n",
1076 1076 "tMHF8MVb9lGTmkn4E3dbOpRmM6hdKC8P7M9jf6wju+LaF3en5Z3gxz2fMWPChziobbdy+fXwcFDx\n",
1077 1077 "wdhI0kvqeH9nNkbz1Ue2JK0GzfsvIw+LQn3vEyLJ+i8ymYxeg8K56a5ubFx1ir1bzmK+zPdUZzTy\n",
1078 1078 "wpZtHCsq4pt/jcfPuW3+Dl4LvzGD6LdpKaW7DnN44vR/1NzKrdQybU0aMmDBzTEEi156TaYwr5Jv\n",
1079 1079 "P92Hps7A/dP6ExrhZemQWhVjdS1n3vyEg7dMwWdEf/puWIxbfAdLh9UsWkWiZdLqSHnlIzq89Qxy\n",
1080 1080 "u9Y9SjM6MoKnevbgobW/U1Dd8L6I5TXFzF/9PI+NfpVAz7DmC9AGONspmTMmkhqdiTe3nENnvHzV\n",
1081 1081 "c0mnRfvhv5EHhGB3/1MiybqMkHBPJj3Zj9ysclYuO0Jdzd+LxZZrNDy09g8MZjNLxo/D3V4kBA1l\n",
1082 1082 "H+hLz58X4jWwB/tGTKZg9RYkSWJPZgXPrD3LzXE+zLyhHfaiX2GTMBpM7NqYxsplR+k7JIJxd3TF\n",
1083 1083 "3sE2RlhswV/ThLsH3oWhrJIBO5YT9sjtVtUEuqnJpJYqP34VW7duJSEhoVFfm/HRMiqPp5Cw7N0m\n",
1084 1084 "jsp6LT12nF9On+HbW8bj6XDlnXRGk4HZPzxO57De3Nb/0RaK0PoZzRIf7MymuFbPmyMjcPqfBd2S\n",
1085 1085 "Xo/2o1eRubpj99hMZDbamqglmU1m9m5N53RSPuPu7EpQOw+yKip4/I/1jIpoz/TevUQtp+tQkZjM\n",
1086 1086 "yafnUOzhzfobb2fmhHiifRq3jED4p9yscjauOomPnwvDxsfhZIGeqa1Z1ak0Ul7+CJNWR9ycZ3Hv\n",
1087 1087 "btvlXBITExk27Oo7z60qhZR0WmR21/ZOV5NTSNZ/fqDfpqXNFJV1eqBbV6p1eh5Zu45lN4/Dxe7y\n",
1088 1088 "TwjfbPsQZ3tXJvSzvWbRzUkplzFrcDu+OJDH02vSeHNkewJc67+PktGAduGbyBydsHtUJFkNJVfI\n",
1089 1089 "GTgymqBQd1Z/l0RAV2/mFR1jep+e3BbXOqcFWpIpNprVz7xM9Pq13LHwbRzdpiDdMVaMtF4nvc7I\n",
1090 1090 "7k1ppJ0qYthNHYju5G/pkFoVfXkV6e99SeHabUS98CjBd41Dpmg7z6lWNdas/eI9pGtspnzmtQW0\n",
1091 1091 "e/h2HEKarqq8rZjaqwcJAf48sW4DGoPhksdsP7GaU9mHeXLcm8hlVvXjtgpymYwpfYO5Kc6bp9em\n",
1092 1092 "caKgGsloRPvJ26BQYvfEi23qCaGptI/1xW+UH0eOZPOAKZKb2kdaOiSbdziniid/O0PXdh48vGgW\n",
1093 1093 "vX6cz/nFv3DkrmfQ5BRaOjyblXW2hGUL96LXmZg8vb9IspqQZDKRs3w1ewbdDZLEgN0rCLn35jb3\n",
1094 1094 "nGpVr7xSVTn6X5Y1+PjibQeoSk4n/Ml7mi8oKyaTyXhxQD9CXF2Zun7TP5Kt9IJTfL9zIc/d8gGO\n",
1095 1095 "di4WitI2jI/zYdbgdry1NYvfv/wOjAbsn3oJWStsatzcJEnik0NH+OL0ce57oi+hfu58++l+LuRX\n",
1096 1096 "WTo0m6Q3mvniQC7z95znxSFhTEoIQC6T4dopmj7rvsKzXwL7Rj1A9tKV1/xGtS3TagxsWHmSTb+e\n",
1097 1097 "YsTNcYy5rTMOjq17jW9LqkhMZv/YR8j7aT09Vswjbu4M1B5tc5dxo9doZWdns2TJEuRyOWq1mqlT\n",
1098 1098 "p+Ls/PdtxSUlJXz++eeYzWaMRiMTJ06kS5culzzf1q1biY+KoO71aahvvhvVoFFXvL5Zp2fP4HuJ\n",
1099 1099 "nT0d3+G218+wKRnNZl7ZtoO86mo+HzsGZ7WaitpSXv5mEpOHz6Rn1BBLh2gTJLOJjP98xluyrvTp\n",
1100 1100 "FMYjfUNELaJrpDeZeGX7TrIrKvn0xlEXy5CkHMtn2+8pDBodQ+cerbcTQVPLLtfwzvYsglztmT4g\n",
1101 1101 "BFf7Syf+NWezOfXsHGQKOZ0+fBGniNbX4LwpnT1dxNY1p4mM82PQqGjUotF2k6nLyiVtziLKDx0n\n",
1102 1102 "5pUpBNw6qtVObTd0jVaj62i99957PPfcc4wePRovLy9WrVpF795/r8a+bds2+vfvz8SJE+nRowef\n",
1103 1103 "ffYZw4cPv+T5MjMzCQwLR9m5O7rP5qJoH4Pc5/JDuOc+XY5ZZyDquYcaE36rIpfJGBoexqkLxSxO\n",
1104 1104 "Os7QdiEsXD2DntGDGRk/0dLh2QTJbEa3ZAEuxTmMfOge1p6tZFdmBb1D3VCLujkNUq7R8Pgf67FT\n",
1105 1105 "KPhkzCjc/mtnoY+/C+1jfdnxewoFOZWEtPcUDXiv4K8CpO/vOs/d3fx5sGcA9lf4fqm93Am640ZM\n",
1106 1106 "dRpOTJsNgFtC3CXrbrVltdU6Nqw6RUpSPmMmdiG+TygKsVuzSehKykh763NS/j0fv9ED6fLZ67h1\n",
1107 1107 "7dBqkyxo5jpaeXl5BAQE4PFn7724uDgKC/+5RmDcuHHExdW3eNHr9Xh6Xr2xqTwwFLspL6L95G3M\n",
1108 1108 "hbmXPEaTU0jWFyvoMLt1VYC/HnKZjFcHDaB7gD8TVnwDSldu6/+YpcOyCZIkof/mU8x557F/7i3c\n",
1109 1109 "XJ14e3QEfs5qnl6TRkGV7uonaeOyKyq5a9VvxPv7MW/UCBxU/9wO7+3rzL1P9kVtr+TrhXvJTCu+\n",
1110 1110 "xJmESq2R1zdnsiG1lHnjohgd49WgFyuZQkG7h2+n7/qvKN1xiAPjHqUq+WwLRGz9zGaJE4dz+Prj\n",
1111 1111 "vbh5OHDftP6EhItG203BWFtH+odL2DPoHmQKOQN3ryDi6ckoHa+/r2xrccXx0oqKChYsWPCPz3fs\n",
1112 1112 "2BFX17/PtSqVSkwmE4pLLHK7cOECixYt4rHHGvbCr+yUgHTr/Wg+eAXH1xcic/77tVJenU+7hybi\n",
1113 1113 "2O76+/61JjKZjF6uxewynuOgoSfFtRpRFPIqJElCv/xzTOdScXjhXWT29U8OSrmMqf1DWHO6mKfX\n",
1114 1114 "pvHy0DC6BIh1bpdyNL+AZzZuZmrvnky8ys5ClVrJ8PFxRMX5sXHVScKivBl8Y6yYuvlTYl4VH+w8\n",
1115 1115 "z5BID14ZFoaqEaOpju2C6PHTAnK/X8uRO57Gb+xgomY+jNq76ZrS25KCnAq2rjmNXCHn1sk98Ats\n",
1116 1116 "m+uEmprZYCT3+7VkzFuKZ794+q7/SrwmX8YVn93c3d157bXX/vH5/Px8Vq5c+bfPGQyGSyZZGRkZ\n",
1117 1117 "rFixgilTpuDl1fDKuqqhYzEX5KJd8Cb2z7+DTFn/Drlo3U5q0rLo+vkbDT5XW3GuMIXvdizg87v+\n",
1118 1118 "w6acaib9tpol48cR7CqeWC5FMpvQLVmAOTcLh+fnInP8Z1I6Ps6HIDc7Zm/N4qGegYyOEdWh/yJJ\n",
1119 1119 "Ej8mn+aTw0d4b/gw+oU0fO1Vu0gv7p82gB3rzrBs4V7G3NqZkPZtd4TBYDKz7GgB29PLmXFDKAlB\n",
1120 1120 "1/c3K5PJCLlnPH43Dibjw8XsvuEe2k+dRLsHb7OZ9ibXq65Gx66NaWSmlTBodDRx3QJb9TRWS5Ek\n",
1121 1121 "iaI/dpD2ziIcAn1J+OY93LrGWjosq9aoNVouLi6sWbOGhIQEHBwcSElJoaSkhF69ev3tuCNHjrBh\n",
1122 1122 "wwamT5/+jxGw/3WpXoeKTvEYj+7DdPo4ioS+mGrqSLxvJp3nv4RTeMi1ht2qVdaW8fZPT/DA8FnE\n",
1123 1123 "hXYnIcAfhUzGqzt2MSg0FA8HUYn7v0lGI7pF7yOVFuMwc84lk6y/BLra0TfUjU/25VJYrSM+0KXN\n",
1124 1124 "F93UGo28vnM32zKz+Wr82EY1hlYq5UR28MXDy5ENK09SVaElOMwTRRtbE5dToeWVjRkYzfD26AjC\n",
1125 1125 "PZtuykXhYIfP0L74juhPzje/kbHgaxxCA3BsH9Jqkw6zyUzSgfOsXXGMwFB3xt8dT0CIe6v9/7ak\n",
1126 1126 "sv3HOP7Yq5TtPUqHN6YROfNh7P19LB2WxTR0jVajdx1mZWWxePFiFAoFarWaadOm4ezsTGJiInq9\n",
1127 1127 "nj59+vDggw8SEhKC/M8FmXK5nH//+9+XPN/lKsNLWg2a2c+g7DuE9H15mDRaOn/0UmNCbrWMJgNz\n",
1128 1128 "fnqS6KCu3Dnoyb/9269nUpl/4BD/GXcjMd5iNAZAMujRfjIHTAbsp72KTN2w6s9VWiNvb8tCIYdZ\n",
1129 1129 "N7TDvY225cirqmb6xk2Eubnx5pAbcLzEeqxrpanTs21tCoV5lYy5rTOBoa1/msssSaw5XcJ3SYXc\n",
1130 1130 "l+DPuA7ezZ4MFG/dz5nXF2If6Efsm9Nwibn6i4Qtyc0qY+uaFOwdVQy7qQPefmK6vymU7T9GxoJl\n",
1131 1131 "1GWcJ+r5RwmYMFJstKDhuw5togWPuayY2pemkH6qlo5rf2iztTguRZIkFm+eS3FlPs/fOh/5JSqY\n",
1132 1132 "rz+bzpw9+/hs7OhGjTy0JpJOi3b+62DviP2TL16ckm4oo1li2ZF8tqWXM2twO7oFtq0n8n05ubyw\n",
1133 1133 "ZRsPJXTjvi6dmzwxSDtVyJY1p+mUEES/4VEoW+mOsPPlWubtOY8ceGZgKCHuLTfibDYYyfl6FRkf\n",
1134 1134 "fY3/+KFEznwYtadbi12/OdRUadm5IZXczHIGj4khurO/GMG6TpIkUbrzEBnzl6ErLCF86iSCJo5p\n",
1135 1135 "M1PPDWGTLXguy8WDtAw5UdFKFOWFIBKti9Yd+Y60vGO8fvfiSyZZAGOiIrFXqXjij/UsGD2S7gFt\n",
1136 1136 "r4o+gKSpRfPBv5H7+GH3yIxGVSdWymU83CuI+CAX5u7IYmSUF/d1D0DZyuttSZLEV0nHWH7iFB+M\n",
1137 1137 "HE6voMBmuU50J3+CwzzY/Ntpln+6jzG3dcYvyLaTgP9mNEv8fKKIlScvcF/3AMZ18G7xaWi5Skm7\n",
1138 1138 "h28nYMIo0j9YzJ6Bd9P+6fsJnTzB5hr7moxmEvdnc2jnObr0DOGBpzuKjRXXSTKbubBpDxnzl2Gq\n",
1139 1139 "0xIx/X78bx6GXBRvbjSbGNE69/G3lO1LpOuzt6L/5lMc3liI3LPtzgv/5VDadpZueZfZ9y7F2/Xq\n",
1140 1140 "ydP+nFxmbtl6zQuXWwOppgrN+y8jD4vE7v6pTTLsXaEx8P7ObGr0Jl4cEoZ/K21AW6PX8/K2HRTV\n",
1141 1141 "1jJ/1Aj8/6cwcXOQJImU4wVs/+MMMZ396T880uardp8tqWPe7vN4OCiZ3j8UPxfr+P9Up57jzGsL\n",
1142 1142 "0eYWEvHsg/iPH2r1L6qSWeLMiQL2bknHw9uRIeM64OktdlhfD8lkonDtNjIWfINcqaD905PxGzNI\n",
1143 1143 "TBFeQauZOqzNzOXA2Efou2ExjqGB6P/4CePebTi8+tHFrfhtUUZBMnN/mcaLEz+hvX/Dm/UeLShg\n",
1144 1144 "+oZNzOrXl/Ex0c0YofUwV5ajffcFFJ0SUN/1aJNOKZgliV9PFfPD8SKe7BfM4Pata23RufJypq3f\n",
1145 1145 "RI+gAF4a0B91C/co09Tp2bv5LGnJRfQdGknXnsHIbWyxvM5oZnlSIRtTS3mkdxDDIz2sblpLkiRK\n",
1146 1146 "dx0m46Ol6IpKaT/9PgJvHW11I1ySJHEutZg9m86iUMoZNCqa0Aix9vR6mA1GClZtJGPht6g9XIl4\n",
1147 1147 "ejLew/pa3e+oNWoViZYkSRy5fTreQ/oQPuXui5/TLZmPVJSP/Yy3GryQuTUprizg1e8e4KERL9Aj\n",
1148 1148 "avA1f316WRlT1m1gdEQET/fp1ap30JnLitG88zyqvoNR3TKp2Z480krqmLMtiy4BzkzpE3TFKt62\n",
1149 1149 "Ysu5TF7fuYtn+vTm1g6W3b5dXFDNtj9S0NTpGTYuzmZKQZwqrGHe7vOEezrwVL9gPGxgA0XZ/mNk\n",
1150 1150 "fLSUuswcwp+8l6A7x6Kwt/zzbE5mGbs3pqHTGRk4IoqIDr4iGbgOxupa8n5eT9bn3+PQLoiIZybj\n",
1151 1151 "2S9BfE+vQatItPJ+3kDWohX03bD4b0PZktmE7ov3kKorsX/mTWRq6xiCbwl1umpe++5hBncez9ie\n",
1152 1152 "jW+mXa7R8PTGzTir1bw3fChOrfB7aL5QgOadWaiG34R67O3Nfr06vYlP9+dy5kItLw0NI8LLsdmv\n",
1153 1153 "2RxMZjMLDx3h97SzLBg9kk6+1jFNL0kSaclF7FyXin+wKzeMicXNwzpHtev0JpYcyWdvViVP9g1m\n",
1154 1154 "QLi7pUO6ZhVHT5Ex/2uqTqUR/sTdhNx7MwrHli8TU5RfxZ5NaZQW19J/eCQdugYib+VrIptTdeo5\n",
1155 1155 "cpauouC3zXgO6E7Y43fh0aOzpcOySTafaOlLK9hzwz10//YD3OL/OTUmmUzoPpuDpNNh//Rr17x7\n",
1156 1156 "zBYZTQbeXfk0AR4hPDD8+et+56E3mZizey9JhUV8euOoVlXY1Jx/Hs3cF1CPvxPV8PEteu2t6WV8\n",
1157 1157 "cSCPe+L9uTmu+bfsN6Xcqipe2LIdO6WC90cMw9PB+hIZg8HE4d20Xun0AAAgAElEQVSZJO7NJr5P\n",
1158 1158 "KL1uCEelto4pLkmSOJhTxSf7cogPdOHR3kG42Pji7KqTaWQsWEb5wROEPXYHoZMnoGyBjhNlJbXs\n",
1159 1159 "3XyW3Kxy+gxuT5eeIaIvYSOZDUYurN/F+WUrqc3IIfje8YTcezP2AdbxJspW2XyidWLabFTurnR4\n",
1160 1160 "8/L9DCWjEe3HbwFgP/UVZFa+gPN6SJLEl5vepqz6AjMnzEMhb5r/qyRJfH8qmUVHk5g3cjg9Am1/\n",
1161 1161 "R6IpPQXt/NdR3/EQqoEjLRJDXqWOd7Zn4emo5OkBoXg6WvcbAUmSWJN2lvf27ufhhG7c37WL1U8p\n",
1162 1162 "V1Vo2LUhjbzscm4YHUNMF8tu6c8q17DoQB4XavRM6RdM9+us7m5tqlPPcW7BN5TsPES7B24l9MHb\n",
1163 1163 "mqUsRHWllv3b0jmbXESPAWEk9GtnNYm0rdEWFpO7fA05y1fjGB5M6AO34jfmBqtbe2erbDrRKt19\n",
1164 1164 "hJPPvM2And+hdLry9ItkNKCd/wYyOzvsprzUqC37tmDtoW/YnbyON+5ZjIO66d9N7s/JZdaWbUxr\n",
1165 1165 "QL86a2Y8tAvt0oXYPzoDZXwfi8ZiMJn5NrGQ9amlTErwZ2ysNwornPKo0Gp5c9ce0svKeG/4MGJt\n",
1166 1166 "rLBtblYZ29amoFIrGTQ6mqB2LbshoVJr5JujBezKrOCeeD/GdfBp1eU+as/lcO7jbyn6Ywc+Q/sQ\n",
1167 1167 "fO/4+rU917k7raSwmsN7sshIuUCXnsH0HBRu8ztNLUGSJMr3J5G9dCWlu44QcMtwQidPwCU2wtKh\n",
1168 1168 "tTo2m2iZNDr2DrmX2NlP4zuif4O+VtLr0X70KjIXd+wen4nsMvWkbNWB1C18s/VDZk9ahpeLX7Nd\n",
1169 1169 "J6uigifXbaR/SDCz+vdFaUPbeiVJwvDHTxg2rcb+2TdRhEVaOqSLsso1fLw3F63RxPT+oUT7WM/a\n",
1170 1170 "rf25eby8bTsj2rfn2T69sLPRUWGzWSI5MY8D2zNwdXeg9+D2tIv0atYRLoPJzJrTJfxwvIjB7T2Y\n",
1171 1171 "lOCPq71tfv8aw1BRRf6qTeQuX4OpTkPQ3TcRdMeN2Pt5N/gckiRxPqOUw7uzKC6sJr5vKF17hYgE\n",
1172 1172 "qxHqzudTuHor+T9vQEIi9IFbCbptNEoXUfaiudhsopX2ziLqzuXQ7cu3runrJb0O7QevIPP2xe7h\n",
1173 1173 "51pN7Y+z+Sd5b+XTvDTxE8KvoYxDY1XpdMzYtAWzBB+OHI6bFew2uhrJaET39ceYM1KxnzHbKmus\n",
1174 1174 "SZLE5rNlLD6cz8BwdyZ3D8DZgmt3dEYjCw4eZn16Bm8NvYH+Ia2jd6jZZObMiUIO7jyHSiWn9+AI\n",
1175 1175 "Ijv4ImvCESZJkjh4vopFB/MIdLXjsd5BhHq03V6ikiRReSyF3OVrKPx9O5794gm+5yZ8hvS57AyD\n",
1176 1176 "yWjmzMkCjuzJwmyS6DEgjA7dAlttJ4Dmoi0opnDtNgp+20Jddh7+44YQ8K8RePTpalNrQ22VTSZa\n",
1177 1177 "UQ5uHLptKv23fXNN74r+Imk19UUpA0Owe2C6zSdbxZX5vLr8AR4Z9QoJkQNb7LpGs5kP9h1g1/nz\n",
1178 1178 "fHbjaMLcrXfHlFRXi3bhbFAqsH/yZWQO1jNadClVWiNLj+Sz/3wlj/QKYmhEy9dUSistZdaWbbRz\n",
1179 1179 "c+ONwYNwt299SYJklkhPucCBHRkYDWZ639Ce2C7+112DK6tMwxcH8yiu1fNY72B6hbSudVjXy1hT\n",
1180 1180 "S8HqreQuX4OuqISgu8YRfOc4HEL8AdBqDJw4nEPivmw8fZzoMSCc8Gjb2jBiafqScgp/307B6i3U\n",
1181 1181 "pGTgO3oQATcPx3NAd7H2qoXZZKKl//cXBN1xIyH3/avR55E0dWjeexFFWCTq+56y2T/gWm01r333\n",
1182 1182 "IMO6TWBM97ssEsPKlDPMP3CI2UNuYHBYO4vEcCXmkiK0H7yCokMX1PdOsan1eSkXalm4NwcXOwVP\n",
1183 1183 "9QshtAV63ZklieUnTrLoaBLP9e3NLbExNvv30VCSJJGdXsqB7RlUV2rpdUN7OsYHorzGOmcVGgPf\n",
1184 1184 "JhayK7OCe+P9GdvBu1Wvw2oK1afTyVm+hoJfN+EYG0lteAfSFX6E9Iyix4Bw/AJFktpQhspqitbv\n",
1185 1185 "pOC3LVQmnsZnWF8C/jUc78G9kduJaVZLsc1E6/X/0Pu3z657JEqqq0Uz93kUMZ1Q3/2Yzb2Y6A1a\n",
1186 1186 "5v4ynRCfCB4YPsuisSQWFPL8lm30DwlmZv++OKmsY/ec6Vwq2o9eQzX2dlSjbrG5nzGAySyx5nQx\n",
1187 1187 "3yUVMraDN3d188e+maZOimpqeWnbdjRGI3OHDSHUrfX0D2yo3KxyDu7IoLiwmh4DwujSM+SqffEq\n",
1188 1188 "NAZWnSpm3ZkShkZ6cm9821qHdT2MBhMZKRdIPpRF5Z7DBNfkIDudjL2vJ74j+uMzoj/u3Tva1Buk\n",
1189 1189 "liKZTFSdOkvpniOU7j5CxZFTeA/qif+/huMzvB9KR+sru9IW2WSiFe3kgXNMeJOcT6qtRvPOLBSd\n",
1190 1190 "uqO+4yGbeSE2mgx8+OsMHO2ceXLsm5dtFN2SavR65u7Zx+H8AuYMG2zxptTGI3vQLp6P/cPPouze\n",
1191 1191 "z6KxNIXSWgNfHMwltbiOR3sF0S/MrclKKxjNZr4/eYovjiZxT+eOPNY9waY2OTSHovwqDu7I4HxG\n",
1192 1192 "GVEd/eiYEEhQu79P4RbX6vnlxAW2pJdxQ3sPbu/i22p7WTYlSZLIy67gdFIeaaeK8A10pWN8IFEd\n",
1193 1193 "/VDbKZFMJiqPpXBh816KN+1FW1SCz9A++I4YgNfgXqhcm7+PpjWSJIm6zFxKdx+hdPdhyvYmovZy\n",
1194 1194 "x2tgT7wG9sBzQPc2+72xZjaZaF2uqXRjSdVVaObMQBHfB/XEB6w+2TKZjSxc8xJmycT08XNRKqxj\n",
1195 1195 "9Ogv2zKzeGPnbm6KjmJqrx4tvkNNkiQM63/BsH4V9s++gSK8dfVqPJpXxZJD+RjNEnfH+zMgzP26\n",
1196 1196 "ykEkFhQye9duPOzteXnQACI8WlcfxutVU6Xl9LF8khPzMRpMdEwIwjvKm3XZVezOqmBklBe3dfbF\n",
1197 1197 "y8m6/g6tUUVZHaeT8klOykOpkBOXEESHrgG4ul955EWTW0jxln1c2LyX8oPHcevWAd8R/XHv1QWX\n",
1198 1198 "DhFW0fqnuegulP6ZWNV/SCYTXgN71CdXA7pjH+hr6RCFqxCJ1p/MleVoP/w38oBg7B5+FpnKOuez\n",
1199 1199 "zZKZz/94jSpNOTNumYdKaZ1xlmk0vLFzN1kVlcwdPoQO3te+aaExJJMJ3TefYE5Lxv65t5B7t84n\n",
1200 1200 "IUmSOJRTxXdJhdQaTNzdzZ/B7T2uKeEqrdMw78BB9ubkMKtfX8ZERlj9mwxLkiSJY2eK2bwjE1N+\n",
1201 1201 "JQ7uDvTtF0q3+EDs7EWSdTlajYG0U4UkJ+ZTVlJLbBd/OsYH4Rfk2qjfN2OdhrLdR7iwZR+Viaep\n",
1202 1202 "PXcep4hQ3LrE4to1FrcusbjERdjcmiRJktDmFVGdkkF1SgY1p9OpSj6L7kIZnv3iLyZXTpGh4u/U\n",
1203 1203 "xohE679IOi3aL95DqirH4enXkblY1/oUSZL4atMc8suyeOG2hdiprHv+XZIkfk87y7v79jOpS2ce\n",
1204 1204 "iu/WrNNR5rJitJ++g8zOHvupLyNzaP11YSRJIjG/mu+TCimtM3JXNz+GRXpecQG2yWzm59MpfHL4\n",
1205 1205 "CDdFR/Fkzx44t8Ielk0praSOFccKSS6sZUInH26M8aIos4zkxDzOZ5TRPtaHjvFBtIv0Ev31qB+5\n",
1206 1206 "yjpbQtbZEs5nlBEW6UVcQhDhUd5N3h7HpNFRnZJO1fFUKo+nUHUildrMHJwj2+HaJRa3rrG4donB\n",
1207 1207 "OTrcIj0YL8VQVUPNmXNUn06n+kwGNSnnqE7JQGFvh3NcBC4dInDpEIlLhwicO7T/Ww9fwfaIROt/\n",
1208 1208 "SGYz+p+XYjy0C4cZbyEPsI66QZIk8e32eaTlneDlOz5rlqrvzaWguoaXt++gzmBg7rAhzVIGwnjs\n",
1209 1209 "ILovP0Q18l+obrrT5kt2NMaJgmqWJxVSUKXnzq5+jIj2RP0/ZQpOXrjA7J17UCsVvDpoANFetlXd\n",
1210 1210 "vSWZzBJH86r4LbmY7HItt3X2ZUys9z82ItTV6kk9UUByYh7VVTrCorwJjfAktL0XLm7W8cLe3PQ6\n",
1211 1211 "I+fPldUnV2klGAwmwiK9aBflTXi0d4sXFjVpdFSfPkvl8TMXE7C6zFzk9nbY+/tg5+998fa/79v7\n",
1212 1212 "+6D28WhUYiNJEsbqWvQl5ehLytEVl9Xf//NWV1p/X5NbiKGsCufoMFziInHuEIFLXAQusRGovay3\n",
1213 1213 "RI7QeCLRugzDzg3of1yM3VMvo4zr1uzXu5ofd39GUsYeXrnzC5ztbW+7s1mSWHEqmU8PH+Wpnt25\n",
1214 1214 "s1PHJlnILRmN9Ynx/u3YT3kRRazoLp9cVMP3SYVklWu5vYsfo2O80Bj1zD94iG2Z2TzXtzfjo6PE\n",
1215 1215 "9MNl5FZq2ZhWxpazZXg7qRgb683QSI9/JK2XUl5SS3ZGKefTSzl/rgxHJzWhEZ6ERHgR2t6z1VQy\n",
1216 1216 "l8wSRflVF0etivKrCAx1p12kN+FR3nj7O1vd75ckSRjKq9AVlaAtKL7kra6wBH1ZBSpXF2QqRf0b\n",
1217 1217 "Nrms/v8ik9cXtJX/eSuTIZPJQSbDWFOfYMlUSuy8PVB7e6D28UTt7fG3x3beHtgF+OIYGiB2UbYh\n",
1218 1218 "ItG6AuPpY+g+eRv1HQ+jumFUi1zzUn47sJTdyX/w2l1f4upo2wuVM8sreGHrdpxUSmb173dd/fLM\n",
1219 1219 "JUVoP3kbmZML9o/PsrqpXktLLa7lu6RCjhdUUW0spleIMy8OSsCtFRYevV61ehO7zpWz8WwZBVU6\n",
1220 1220 "hkd6MiLakzCPxk/PS2aJ4sLq+sTrXBl5WeW4ezoQGuFFaIQXwWEeVy0bYQ0kSaK6UktJYTXFRTVc\n",
1221 1221 "yK/ifEYpjs52hEV5ERblTXCYJyp160gczEYjhrJKJJMZyWwGs4QkmUGSkMwSmM3/f4sEZgmlsxNq\n",
1222 1222 "L3ermZoUrItItK7CnH8ezYf/RtlrUP2OxBaeklp/dAUbjv7Aa3d/haez9bWMaQyj2cwPp07zn6OJ\n",
1223 1223 "9A0JZlqvngS5ulzbOY7uQ7f4I1RjJ6Iac1ubnCq8EqPZzB9n01l0NBFXtQs9fGM4nq/DXiVnWKQn\n",
1224 1224 "QyM88HVuHaMrjWWWJE4W1rAprYx92ZV0DXBmVLQXPUNcm6XIqMlkpjC3kvPnyjifUUphbiVung54\n",
1225 1225 "eDnh4e2Ep7cj7l71tw5OaouMCOm0BooLaygpqq5PrAqrKSmqQalS4O3njI+/Cz7+LoS097zqTkFB\n",
1226 1226 "EOqJRKsBpOpKNB+9hszNs37kxK5l3rVsP/EbK/d9yWt3fYWPm2VrUjWHWr2eZcdPsPzEKcbHRPNY\n",
1227 1227 "93g8Ha785C0ZDehXfInx6D7sn3wJRVRcC0VrGwwmE2vTzrLoaBL+zk5M6dmdXoGByGQyJEkiuaiW\n",
1228 1228 "rell7M6sINzTgWGRngwIc7NoP8WWVlitY2t6OZvSSrFTyhkV7cWwSA/cHVp256DBYKKsuJbykr8+\n",
1229 1229 "6igvraWsuBYADy9HPLzrkzAPL0fcPB1QqZQo1XKUSgVKlRylSoFSKb9iUmY2mdFqjWjrDGjq9Gg1\n",
1230 1230 "BjR1BrR1BrR/Pq6sqB+x0moMePnWJ1R/JVbe/i44OrXtpFwQrodItBpIMujRfTkPc2Eu9s++idzd\n",
1231 1231 "s1mvt+f0er7bsYBX71xEgKf1tbVpSiV1dSw6msjvaenc17Uz93XtcsnK8uYLBWg/fguZpzf2jzyH\n",
1232 1232 "zNn21qo1F73JxG9nUvky8Rihbq480aM7PQIvn5zrTWYO51SxNb2MpPwauge5MCzSkx7BLqius8+f\n",
1233 1233 "tanVmziWX01iXv1Hrd7EwHB3RkV7EeXtYJVriTR1BipKaykrqatPwkrrqCrXYDCYMBpMGA3mP29N\n",
1234 1234 "mMwSSuX/J18qlQKFSo5Bb0JbZ0CvN2Fnp8TBUYW9owp7RzUODn/dV+HgoMLZ1R5vf2fcPRybtLG2\n",
1235 1235 "IAgi0bomkiRh+G05hp0bsX9uNoqQpqlO/78OpW1n8eZ3eOX2zwjxiWyWa1ij85WVfHzoCIfy8nm8\n",
1236 1236 "RwK3dYhF9eeCUeOhXeiWfYxq/F0220qnOeiMRladSeWrxGNEenrwePcE4gP8r+kc1TojuzMr2Jpe\n",
1237 1237 "xvkKHfGBLnT0c6KjnxPhng7XVQzVEoxmidQLtSTmV3M0r5rMMg0dfJ3oHuRCQpAr4Z72TVZR3xqY\n",
1238 1238 "zRImownDxeTLjNFoQqVWYO+gwt5eJZInQbAgkWg1gmHfNvTLP0d91yMoB4xo0hf9/Wc2s3TLu7xw\n",
1239 1239 "28e09+/QZOe1JaeLi/nowCFyqqqY1rULgw9sQjqdhP1Tr6Bo37qqvDeW1mjk59MpLEk6TgdvLx7v\n",
1240 1240 "0Z0uftdfnLWoWs+xgmqSi2pJLqqhtNZArI8THf2diPNzooOPE45WtujZLEnkVepI+nPU6nhBDf4u\n",
1241 1241 "ahKCXOge5EJHP2fsmqk3pCAIwtWIRKuRTNnp6BZ9gMzTG7sHn0buef2Vz9cfXcHag9/w/G0LaOfb\n",
1242 1242 "thMKSZLYs3Et85NTwdGZBwYOYkRsTIu387E2OZVVrElL48fkFLr6+fJ49wQ6+jbfJokqrZHTF2pJ\n",
1243 1243 "LqrldFENZ0s0BLraXRzxivZxxNtRhb2q+ZOvWr2JnAotuZU6ciu15FTqyK3Qkl+lw91BRdcAZ7oH\n",
1244 1244 "uxAf6NLi660EQRAuRyRa10EyGjCsWYFhy9rrGt2SJIkVuz7hyNkdvDjxY3zcApshWtthzstGt2wh\n",
1245 1245 "kqYO1f1T2S6356fkFJKLi7kxKpIJsTHE+Xi3menDKp2OjRnnWJ2aRlZFBWMiI7mtQywx11Eao7EM\n",
1246 1246 "JjPppRpO/znilVGqobTOgFIuw9NRhZejCk9HFZ4OKryclH/e1j/2cKhPkg1mCb1RwmA2ozdJGEz/\n",
1247 1247 "f2swSRfvl2uM5FTWJ1Y5FVo0BjPBbnYEu9kT4m538X6wmx0OLZDoCYIgNIZItJrA/49ueWH34DPX\n",
1248 1248 "NLplNBn4z4a3yC/LYtat822+Ttb1kLQa9L99h2HHetQTJqEadtPfivrlV1fz25k0fj2TipNaxYTY\n",
1249 1249 "GMZFR111p6ItMphM7M3JZXVqGntzcukXHMT4mGgGhIagtrJCh5IkUas3UVpnoKzOSJnGQGmtof62\n",
1250 1250 "zkBZnYHSOiPlGgMyQK2Qo1LILt7+7b5cjlpZf+vuoCTYzY4QN3uC3e3wdlS1meRaEITWQyRaTaR+\n",
1251 1251 "dOsHDFvWoL7zYZQDR171RUGrr+Oj1c8jl8uZftNc7NWtL2FoCEmSMCXuR/ftZyiiO6K+61HkHpcf\n",
1252 1252 "rTFLEofz81mVksqOrGz6BgcxoUMs/UKCm7WXYnOTJImUkhJWp55l3dl0Qt1cGR8TzeiICNzs7Swd\n",
1253 1253 "niAIgtAIItFqYqbsDHT/eR+Zx5VHt6rqynn3l+mE+ETyyKiXUMjb5toj84UCdN9+hrkwD7vJU1F2\n",
1254 1254 "jL+mr6/W6ViXnsGvZ1IprKnh5phoRkdGEO3picIGki6t0cipC8UcyS9gXXo6GoORm2OiuSk6inbu\n",
1255 1255 "otK9IAiCrROJVjOQjEYMa1dg2LwG9R0Poxz099Gtoopc3vl5Kv1iRzJxwONtcjpEMugxrPsF/fqV\n",
1256 1256 "qMfciurG25Cprq8oYnpZGavOpLI9M5tSjYbOvj508/ejm78/Xf18cbWz/KhQSV0dSYVFJBUUklhY\n",
1257 1257 "yNnSMiI9PYj392dE+3DiA/xbVekBQRCEtk4kWs3IlJ2B7ssPkLl5YvfANOTefmQWpvDeqme4pe9D\n",
1258 1258 "jIyfaOkQW5xkNGI8uBP9b98h9w/CbtIU5L5NX/W+XKPheNEFkgqLOF5YxKniYgKcnenm70e8vx9d\n",
1259 1259 "/f0Id3dv1qTGLElklJWTVFh4Mbmq0Gnp6udHQoA/8f7+dPb1weESxVkFQRCE1kEkWs1MMhox/P4j\n",
1260 1260 "+g0rqY6O4lPTUcbf/BK9oodaOrQWJWk1GHasx7B+JXJff1Tj7kTRpUeLjeYZzWbSSks5VlhU/1FU\n",
1261 1261 "RLVOTydfH3wcHXG1s8PVzg43+z9v//xwvfihRqVQ1C/8Nhgo1Wgo12j/vNVQptFQqtFSrtFQ+ufj\n",
1262 1262 "gpoa3Ozsiff3Iz7AnwR/fyI8PcSIlSAIQhvS0ESrbS4gagIypRL1v+4hMcSRnJ8/Y2aFC+r1uzEp\n",
1263 1263 "g1C0j7F0eM3OXFGGYdNvGLavQxnXFfvpr1rk/62Uy4nz8SHOx4e7O3cCoLiujuQLxZRpNFTp9FTq\n",
1264 1264 "tJwrr6BKp6NSq6VSp6+/r9NRrdNhp1RiNJtRymR4Ojrg6eCAp719/a2DAwHOznTy8cbDwQEvBwf8\n",
1265 1265 "nJ1a5Y5IQRAEoemJRKuRzGYTvx5Ywrbjv/HCc5/j6hKEYecGtAveQO4fjGr8XSjiurW6dVrmghz0\n",
1266 1266 "637BeGg3qr5DcHx9IXI/66oP5uPoyOCwhvWR/GskSyGTiak+QRAEocmJRKsRSquL+PT3fyOTyZh9\n",
1267 1267 "71I8XepbpKhH3YJq2E0Y929D9/UnyOwdUN90J4ru/ZDZwE65KzGdPY3+958wn01GNfwmnN5fgszV\n",
1268 1268 "3dJhXTeZTIaz+voW6wuCIAjC5YhE6xodStvO4k1zGNPjbsb3ug+5/O9FJmVKJaqBI1H2H44pcT/6\n",
1269 1269 "tT8g/bQE9bg7UPYfikxpO6MmUnUlxhOHMWz9HamiDNWYW7Gf8gIyO3tLhyYIgiAINkEkWg2kM2j4\n",
1270 1270 "dvt8TmTuZ8aEeUQFdr7i8TK5HGWP/ii698OUchzDmh/Q/7wERddeKDp3R9kxAZmLawtF3zCSJGHO\n",
1271 1271 "zsB07CDGYwcx52WjiItHNfIWlD0H/K2auyAIgiAIVycSrQbIvnCWj9e+RDvfaOZO/g5HO5cGf61M\n",
1272 1272 "JkMZ1w1lXDfMBbkYTx7FuHcruq8+Qh4QXJ90de6OPCrOIqNdkqYOU3IixmOHMB07CPYOKLv1Rn3r\n",
1273 1273 "/ShiO193DSxBEARBaMtEonUFkiSxMfFHVu77kklDnmFgx7HXtbhdHhCMOiAYRt6MZDRgPnsa48mj\n",
1274 1274 "6L7/D+bCXBSxXVB07oGyc3dk/kHNspBe0mkxXyjAdCoR07GDmDLOoIiMQ9GtF+pxtyP3D27yawqC\n",
1275 1275 "IAhCWyUSrcuoqivni/VvUFFbyux7l+HvEdKk55cpVSg6dEXRoSvc/mD9eqjkJEwnj6L5/UeQy5EH\n",
1276 1276 "hiBzdkPm4orMxe3Pj/r7OP/5OWdXZMr6H6Ok1yGVFWMuK0EqLa6/X3oBqazkz/vFoNci8/JF0aEr\n",
1277 1277 "qpH/wr5jPDJ7UapAEARBEJqDSLQu4VT2IT774zUGxI3h2X+9j1LR/FN6Mhc3VH0Go+ozGEmSkApy\n",
1278 1278 "MBcXIlVXIVVXIlVXYs5KR6qpgprK//98TRWo7UChBK0GmYcXMi9f5J7eyDx9kIeEI+/aq/6+lw+4\n",
1279 1279 "uLW6khOCIAiCYK1EovVf6nTVrNr3FXtTNvLEja/TJayPReKQyWTIAkORB4Ze9VjJbAZNHZLRUD/C\n",
1280 1280 "ZeNlJARBEAShNRGJFqDVa9iY9CO/H/qWhIiBvDt5Ba6OHpYOq0Fkcjk4OSPGqARBEATB+rTpRMtg\n",
1281 1281 "1LPtxK/8tn8JMcHdeP3urwjyCrd0WIIgCIIgtBJtMtEymY3sSV7PL3sXEewdwazbFhDuF2vpsARB\n",
1282 1282 "EARBaGXaVKJllswcSt3KT3u+wNXRgyfHzSY2ON7SYQmCIAiC0Eq1iURLkiSOZ+7jh92fIUfG/cNm\n",
1283 1283 "0CWsj9h9JwiCIAhCs2rViVZVXTlJ5/aw/cRvVGsquWPgFHpGDREJVjNITU0lJibG0mEIjSR+frZL\n",
1284 1284 "/Oxsm/j5tX6tKtGSJImcknSOpu8mKWM3OSXn6BzWi5Hxt9MnZvg/GkALTSctLU08Wdgw8fOzXeJn\n",
1285 1285 "Z9vEz6/1a3SilZ2dzZIlS5DL5ajVaqZOnYqzs/Mlj921axdLly7liy++wM7OrtHBXorBqOd0zlGO\n",
1286 1286 "pu8iKWM3yGR0jxjEbf0fpUNId1RK0atPEARBEATLaHSitWjRImbOnImHhwenT59m6dKlTJ069R/H\n",
1287 1287 "ZWVlkZeXR1hYGJIkNTpQSZLQG7XU6Wqo09WQlneCxIzdnMo+TIhPBN0jBjLrtgUEe7UXU4OCIAiC\n",
1288 1288 "IFiFRiVaeXl5BAQE4OFRX9QzLi6O77777h/H1dTUsHbtWqZMmcJbb7111QRoyea51Olq0OhqqdPX\n",
1289 1289 "/P99XQ0afS1yuQJHtRMOds60842mZ9RgHhn1ss0UFxUEQRAEoW25YqJVUVHBggUL/vH5jh074urq\n",
1290 1290 "+vcTKZWYTCYUivp1UGazma+//pp77rnn4ueuNqIV5BWOg9oJRztnHO2cL953+PNxS/QcFARBEARB\n",
1291 1291 "aCoyqRHzefn5+axcufJvU4UvvfQSc+bMufi4rKyMefPm4ebmBsCZM2eIiYnhwQcfxNvb+x/n3Lp1\n",
1292 1292 "a2PiFwRBEARBsIhhw4Zd9ZhGTR0GBgZSWFhIeXk5Hh4epKSkEBgY+LdjPD09eeutty4+fuONN5g+\n",
1293 1293 "ffplF8M3JFhBEARBEARb0ujF8I888gjz5s1DoVCgVquZNm0aAImJiej1evr06dNkQQqCIAiCINii\n",
1294 1294 "Rk0dCoIgCIIgCFcnt3QAgiAIgiAIrZVItARBEARBEJqJSLQEQRAEQRCaiVX0OlyzZg2HDx8GICEh\n",
1295 1295 "gVtuucXCEQnXwmg08v3335OSksI777xj6XCEa7Bu3Tr27NmDUqkkICCARx55BKXSKp4WhAb4+uuv\n",
1296 1296 "SU1NRaVS0atXL8aOHWvpkIRroNPpmDNnDpGRkUyaNMnS4QjXYNq0aXh5eV18PHXqVDw9PS95rMWf\n",
1297 1297 "UVNSUsjMzGT27NkAfP7555w8eZLOnTtbODKhoVasWEGnTp1ISUmxdCjCNaipqeH8+fO8/fbbyGQy\n",
1298 1298 "li9fzqFDh+jXr5+lQxMaQKvV0rFjR+6//36gvoTOwIED/1FMWrBey5cvZ8iQIeTk5Fg6FOEaOTk5\n",
1299 1299 "8dprrzXoWItPHSYlJf2thtawYcNITEy0YETCtZo0aRIJCQmWDkO4Rs7Ozjz++OMXW2PpdDp8fHws\n",
1300 1300 "HJXQUPb29vTo0QOAurq6i58TbMP69euJj4/H19fX0qEIjWAwGJg9ezazZs1iw4YNVzzW4iNa1dXV\n",
1301 1301 "uLi4XHzs6upKZWWlBSMShLbn119/xdHRkaioKEuHIlyjZQL/KLAAAAHbSURBVMuWsXv3bu655x7U\n",
1302 1302 "arWlwxEaICUlhaqqKsaMGUNycrKlwxEa4Z133kGlUmEwGJg7dy6xsbGEhYVd8liLj2i5uLhQVVV1\n",
1303 1303 "8XFVVZUY+haEFmI2m/nqq69QqVTcddddlg5HaITJkyfz+eefc/ToUbKysiwdjtAAx44dIysri/ff\n",
1304 1304 "f58ff/yRI0eOsGbNGkuHJVwDlUp18bZnz55kZ2df9liLj2glJCSwcePGi2uytm3bRv/+/S0clSC0\n",
1305 1305 "flqtlk8//ZSBAwfSq1cvS4cjXKOMjAzKysro2bMnarUaNze3v71pFazXf7+pOX36NEePHmX8+PEW\n",
1306 1306 "jEi4Frm5uRw7doxx48ZhNBpJSkrivvvuu+zxFk+0YmNjSU1N5ZVXXgHqEy+xEF4Qmt+2bdtIT0+n\n",
1307 1307 "pqaG9evXAzBkyBAGDRpk4ciEhvD392fNmjX8/vvvAMTExNClSxcLRyU0xl/rJAXb4O/vT15eHq+8\n",
1308 1308 "8gpyuZyRI0cSFBR02eNFCx5BEARBEIRmYvE1WoIgCIIgCK2VSLQEQRAEQRCaiUi0BEEQBEEQmolI\n",
1309 1309 "tARBEARBEJqJSLQEQRAEQRCaiUi0BEEQBEEQmolItARBEARBEJqJSLQEQRAEQRCaiUi0BEEQBEEQ\n",
1310 1310 "msn/AbPOyGwnPY5DAAAAAElFTkSuQmCC\n"
1311 1311 ],
1312 1312 "text/plain": [
1313 1313 "<matplotlib.figure.Figure at 0x10f01b310>"
1314 1314 ]
1315 1315 },
1316 1316 "metadata": {},
1317 1317 "output_type": "display_data"
1318 1318 }
1319 1319 ],
1320 1320 "source": [
1321 1321 "from scipy.special import jn\n",
1322 1322 "x = np.linspace(0,5)\n",
1323 1323 "f, ax = plt.subplots()\n",
1324 1324 "ax.set_title(\"Bessel functions\")\n",
1325 1325 "\n",
1326 1326 "for n in range(1,10):\n",
1327 1327 " time.sleep(1)\n",
1328 1328 " ax.plot(x, jn(x,n))\n",
1329 1329 " clear_output(wait=True)\n",
1330 1330 " display(f)\n",
1331 1331 "\n",
1332 1332 "# close the figure at the end, so we don't get a duplicate\n",
1333 1333 "# of the last plot\n",
1334 1334 "plt.close()"
1335 1335 ]
1336 1336 }
1337 1337 ],
1338 1338 "metadata": {
1339 1339 "kernelspec": {
1340 1340 "display_name": "Python 3",
1341 1341 "language": "python",
1342 1342 "name": "python3"
1343 1343 },
1344 1344 "language_info": {
1345 1345 "codemirror_mode": {
1346 1346 "name": "ipython",
1347 1347 "version": 3
1348 1348 },
1349 1349 "file_extension": ".py",
1350 1350 "mimetype": "text/x-python",
1351 1351 "name": "python",
1352 1352 "nbconvert_exporter": "python",
1353 1353 "pygments_lexer": "ipython3",
1354 1354 "version": "3.4.2"
1355 1355 }
1356 1356 },
1357 1357 "nbformat": 4,
1358 1358 "nbformat_minor": 0
1359 1359 }
@@ -1,404 +1,404 b''
1 1 {
2 2 "cells": [
3 3 {
4 4 "cell_type": "markdown",
5 5 "metadata": {},
6 6 "source": [
7 7 "# Simple interactive bacgkround jobs with IPython\n",
8 8 "\n",
9 9 "We start by loading the `backgroundjobs` library and defining a few trivial functions to illustrate things with."
10 10 ]
11 11 },
12 12 {
13 13 "cell_type": "code",
14 14 "execution_count": 1,
15 15 "metadata": {
16 16 "collapsed": false
17 17 },
18 18 "outputs": [],
19 19 "source": [
20 20 "from IPython.lib import backgroundjobs as bg\n",
21 21 "\n",
22 22 "import sys\n",
23 23 "import time\n",
24 24 "\n",
25 25 "def sleepfunc(interval=2, *a, **kw):\n",
26 26 " args = dict(interval=interval,\n",
27 27 " args=a,\n",
28 28 " kwargs=kw)\n",
29 29 " time.sleep(interval)\n",
30 30 " return args\n",
31 31 "\n",
32 32 "def diefunc(interval=2, *a, **kw):\n",
33 33 " time.sleep(interval)\n",
34 34 " raise Exception(\"Dead job with interval %s\" % interval)\n",
35 35 "\n",
36 36 "def printfunc(interval=1, reps=5):\n",
37 37 " for n in range(reps):\n",
38 38 " time.sleep(interval)\n",
39 " print 'In the background...', n\n",
39 " print('In the background... %i' % n)\n",
40 40 " sys.stdout.flush()\n",
41 " print 'All done!'\n",
41 " print('All done!')\n",
42 42 " sys.stdout.flush()"
43 43 ]
44 44 },
45 45 {
46 46 "cell_type": "markdown",
47 47 "metadata": {},
48 48 "source": [
49 49 "Now, we can create a job manager (called simply `jobs`) and use it to submit new jobs.\n",
50 50 "\n",
51 51 "Run the cell below, it will show when the jobs start. Wait a few seconds until you see the 'all done' completion message:"
52 52 ]
53 53 },
54 54 {
55 55 "cell_type": "code",
56 "execution_count": 10,
56 "execution_count": 2,
57 57 "metadata": {
58 58 "collapsed": false
59 59 },
60 60 "outputs": [
61 61 {
62 62 "name": "stdout",
63 63 "output_type": "stream",
64 64 "text": [
65 65 "Starting job # 0 in a separate thread.\n",
66 66 "Starting job # 2 in a separate thread.\n",
67 67 "Starting job # 3 in a separate thread.\n"
68 68 ]
69 69 },
70 70 {
71 71 "data": {
72 72 "text/plain": [
73 73 "<BackgroundJob #3: printfunc(1,3)>"
74 74 ]
75 75 },
76 "execution_count": 10,
76 "execution_count": 2,
77 77 "metadata": {},
78 78 "output_type": "execute_result"
79 79 },
80 80 {
81 81 "name": "stdout",
82 82 "output_type": "stream",
83 83 "text": [
84 84 "In the background... 0\n",
85 85 "In the background... 1\n",
86 86 "In the background... 2\n",
87 87 "All done!\n"
88 88 ]
89 89 }
90 90 ],
91 91 "source": [
92 92 "jobs = bg.BackgroundJobManager()\n",
93 93 "\n",
94 94 "# Start a few jobs, the first one will have ID # 0\n",
95 95 "jobs.new(sleepfunc, 4)\n",
96 96 "jobs.new(sleepfunc, kw={'reps':2})\n",
97 97 "jobs.new('printfunc(1,3)')"
98 98 ]
99 99 },
100 100 {
101 101 "cell_type": "markdown",
102 102 "metadata": {},
103 103 "source": [
104 104 "You can check the status of your jobs at any time:"
105 105 ]
106 106 },
107 107 {
108 108 "cell_type": "code",
109 "execution_count": 11,
109 "execution_count": 3,
110 110 "metadata": {
111 111 "collapsed": false
112 112 },
113 113 "outputs": [
114 114 {
115 115 "name": "stdout",
116 116 "output_type": "stream",
117 117 "text": [
118 118 "Completed jobs:\n",
119 "0 : <function sleepfunc at 0x314f848>\n",
120 "2 : <function sleepfunc at 0x314f848>\n",
119 "0 : <function sleepfunc at 0x10521f2f0>\n",
120 "2 : <function sleepfunc at 0x10521f2f0>\n",
121 121 "3 : printfunc(1,3)\n",
122 122 "\n"
123 123 ]
124 124 }
125 125 ],
126 126 "source": [
127 127 "jobs.status()"
128 128 ]
129 129 },
130 130 {
131 131 "cell_type": "markdown",
132 132 "metadata": {},
133 133 "source": [
134 134 "For any completed job, you can get its result easily:"
135 135 ]
136 136 },
137 137 {
138 138 "cell_type": "code",
139 "execution_count": 12,
139 "execution_count": 4,
140 140 "metadata": {
141 141 "collapsed": false
142 142 },
143 143 "outputs": [
144 144 {
145 145 "data": {
146 146 "text/plain": [
147 147 "{'args': (), 'interval': 4, 'kwargs': {}}"
148 148 ]
149 149 },
150 "execution_count": 12,
150 "execution_count": 4,
151 151 "metadata": {},
152 152 "output_type": "execute_result"
153 153 }
154 154 ],
155 155 "source": [
156 156 "jobs[0].result"
157 157 ]
158 158 },
159 159 {
160 160 "cell_type": "markdown",
161 161 "metadata": {},
162 162 "source": [
163 163 "## Errors and tracebacks"
164 164 ]
165 165 },
166 166 {
167 167 "cell_type": "markdown",
168 168 "metadata": {},
169 169 "source": [
170 170 "The jobs manager tries to help you with debugging:"
171 171 ]
172 172 },
173 173 {
174 174 "cell_type": "code",
175 "execution_count": 13,
175 "execution_count": 5,
176 176 "metadata": {
177 177 "collapsed": false
178 178 },
179 179 "outputs": [
180 180 {
181 181 "name": "stdout",
182 182 "output_type": "stream",
183 183 "text": [
184 184 "Starting job # 4 in a separate thread.\n",
185 185 "Starting job # 5 in a separate thread.\n"
186 186 ]
187 187 }
188 188 ],
189 189 "source": [
190 190 "# This makes a couple of jobs which will die. Let's keep a reference to\n",
191 191 "# them for easier traceback reporting later\n",
192 192 "diejob1 = jobs.new(diefunc, 1)\n",
193 193 "diejob2 = jobs.new(diefunc, 2)"
194 194 ]
195 195 },
196 196 {
197 197 "cell_type": "markdown",
198 198 "metadata": {},
199 199 "source": [
200 200 "You can get the traceback of any dead job. Run the line\n",
201 201 "below again interactively until it prints a traceback (check the status\n",
202 202 "of the job):\n"
203 203 ]
204 204 },
205 205 {
206 206 "cell_type": "code",
207 "execution_count": 14,
207 "execution_count": 6,
208 208 "metadata": {
209 209 "collapsed": false
210 210 },
211 211 "outputs": [
212 212 {
213 213 "name": "stdout",
214 214 "output_type": "stream",
215 215 "text": [
216 216 "Status of diejob1: Dead (Exception), call jobs.traceback() for details\n",
217 217 "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m\n",
218 218 "\u001b[1;31mException\u001b[0m Traceback (most recent call last)\n",
219 "\u001b[1;32m/home/fperez/usr/opt/virtualenv/ipython-0.13.2/lib/python2.7/site-packages/IPython/lib/backgroundjobs.pyc\u001b[0m in \u001b[0;36mcall\u001b[1;34m(self)\u001b[0m\n",
220 "\u001b[0;32m 482\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n",
221 "\u001b[0;32m 483\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mcall\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
222 "\u001b[1;32m--> 484\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mfunc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0margs\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
219 "\u001b[1;32m/Users/minrk/dev/ip/mine/IPython/lib/backgroundjobs.py\u001b[0m in \u001b[0;36mcall\u001b[1;34m(self)\u001b[0m\n",
220 "\u001b[0;32m 489\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n",
221 "\u001b[0;32m 490\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mcall\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
222 "\u001b[1;32m--> 491\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mfunc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0margs\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
223 223 "\u001b[0m\n",
224 "\u001b[1;32m<ipython-input-1-fbbbd0d2a1c3>\u001b[0m in \u001b[0;36mdiefunc\u001b[1;34m(interval, *a, **kw)\u001b[0m\n",
224 "\u001b[1;32m<ipython-input-1-169e49434ce0>\u001b[0m in \u001b[0;36mdiefunc\u001b[1;34m(interval, *a, **kw)\u001b[0m\n",
225 225 "\u001b[0;32m 13\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mdiefunc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0minterval\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m2\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m*\u001b[0m\u001b[0ma\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mkw\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
226 226 "\u001b[0;32m 14\u001b[0m \u001b[0mtime\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0msleep\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0minterval\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
227 227 "\u001b[1;32m---> 15\u001b[1;33m \u001b[1;32mraise\u001b[0m \u001b[0mException\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Dead job with interval %s\"\u001b[0m \u001b[1;33m%\u001b[0m \u001b[0minterval\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
228 228 "\u001b[0m\u001b[0;32m 16\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n",
229 229 "\u001b[0;32m 17\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mprintfunc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0minterval\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mreps\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m5\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
230 230 "\n",
231 231 "\u001b[1;31mException\u001b[0m: Dead job with interval 1\n"
232 232 ]
233 233 }
234 234 ],
235 235 "source": [
236 "print \"Status of diejob1:\", diejob1.status\n",
236 "print(\"Status of diejob1: %s\" % diejob1.status)\n",
237 237 "diejob1.traceback() # jobs.traceback(4) would also work here, with the job number"
238 238 ]
239 239 },
240 240 {
241 241 "cell_type": "markdown",
242 242 "metadata": {},
243 243 "source": [
244 244 "This will print all tracebacks for all dead jobs:"
245 245 ]
246 246 },
247 247 {
248 248 "cell_type": "code",
249 "execution_count": 15,
249 "execution_count": 7,
250 250 "metadata": {
251 251 "collapsed": false
252 252 },
253 253 "outputs": [
254 254 {
255 255 "name": "stdout",
256 256 "output_type": "stream",
257 257 "text": [
258 "Traceback for: <BackgroundJob #4: <function diefunc at 0x314f668>>\n",
258 "Traceback for: <BackgroundJob #4: <function diefunc at 0x10521f7b8>>\n",
259 259 "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m\n",
260 260 "\u001b[1;31mException\u001b[0m Traceback (most recent call last)\n",
261 "\u001b[1;32m/home/fperez/usr/opt/virtualenv/ipython-0.13.2/lib/python2.7/site-packages/IPython/lib/backgroundjobs.pyc\u001b[0m in \u001b[0;36mcall\u001b[1;34m(self)\u001b[0m\n",
262 "\u001b[0;32m 482\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n",
263 "\u001b[0;32m 483\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mcall\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
264 "\u001b[1;32m--> 484\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mfunc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0margs\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
261 "\u001b[1;32m/Users/minrk/dev/ip/mine/IPython/lib/backgroundjobs.py\u001b[0m in \u001b[0;36mcall\u001b[1;34m(self)\u001b[0m\n",
262 "\u001b[0;32m 489\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n",
263 "\u001b[0;32m 490\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mcall\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
264 "\u001b[1;32m--> 491\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mfunc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0margs\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
265 265 "\u001b[0m\n",
266 "\u001b[1;32m<ipython-input-1-fbbbd0d2a1c3>\u001b[0m in \u001b[0;36mdiefunc\u001b[1;34m(interval, *a, **kw)\u001b[0m\n",
266 "\u001b[1;32m<ipython-input-1-169e49434ce0>\u001b[0m in \u001b[0;36mdiefunc\u001b[1;34m(interval, *a, **kw)\u001b[0m\n",
267 267 "\u001b[0;32m 13\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mdiefunc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0minterval\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m2\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m*\u001b[0m\u001b[0ma\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mkw\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
268 268 "\u001b[0;32m 14\u001b[0m \u001b[0mtime\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0msleep\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0minterval\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
269 269 "\u001b[1;32m---> 15\u001b[1;33m \u001b[1;32mraise\u001b[0m \u001b[0mException\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Dead job with interval %s\"\u001b[0m \u001b[1;33m%\u001b[0m \u001b[0minterval\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
270 270 "\u001b[0m\u001b[0;32m 16\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n",
271 271 "\u001b[0;32m 17\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mprintfunc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0minterval\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mreps\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m5\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
272 272 "\n",
273 273 "\u001b[1;31mException\u001b[0m: Dead job with interval 1\n",
274 274 "\n",
275 "Traceback for: <BackgroundJob #5: <function diefunc at 0x314f668>>\n",
275 "Traceback for: <BackgroundJob #5: <function diefunc at 0x10521f7b8>>\n",
276 276 "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m\n",
277 277 "\u001b[1;31mException\u001b[0m Traceback (most recent call last)\n",
278 "\u001b[1;32m/home/fperez/usr/opt/virtualenv/ipython-0.13.2/lib/python2.7/site-packages/IPython/lib/backgroundjobs.pyc\u001b[0m in \u001b[0;36mcall\u001b[1;34m(self)\u001b[0m\n",
279 "\u001b[0;32m 482\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n",
280 "\u001b[0;32m 483\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mcall\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
281 "\u001b[1;32m--> 484\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mfunc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0margs\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
278 "\u001b[1;32m/Users/minrk/dev/ip/mine/IPython/lib/backgroundjobs.py\u001b[0m in \u001b[0;36mcall\u001b[1;34m(self)\u001b[0m\n",
279 "\u001b[0;32m 489\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n",
280 "\u001b[0;32m 490\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mcall\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
281 "\u001b[1;32m--> 491\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mfunc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0margs\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
282 282 "\u001b[0m\n",
283 "\u001b[1;32m<ipython-input-1-fbbbd0d2a1c3>\u001b[0m in \u001b[0;36mdiefunc\u001b[1;34m(interval, *a, **kw)\u001b[0m\n",
283 "\u001b[1;32m<ipython-input-1-169e49434ce0>\u001b[0m in \u001b[0;36mdiefunc\u001b[1;34m(interval, *a, **kw)\u001b[0m\n",
284 284 "\u001b[0;32m 13\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mdiefunc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0minterval\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m2\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m*\u001b[0m\u001b[0ma\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mkw\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
285 285 "\u001b[0;32m 14\u001b[0m \u001b[0mtime\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0msleep\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0minterval\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
286 286 "\u001b[1;32m---> 15\u001b[1;33m \u001b[1;32mraise\u001b[0m \u001b[0mException\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m\"Dead job with interval %s\"\u001b[0m \u001b[1;33m%\u001b[0m \u001b[0minterval\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
287 287 "\u001b[0m\u001b[0;32m 16\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n",
288 288 "\u001b[0;32m 17\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mprintfunc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0minterval\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mreps\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;36m5\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
289 289 "\n",
290 290 "\u001b[1;31mException\u001b[0m: Dead job with interval 2\n",
291 291 "\n"
292 292 ]
293 293 }
294 294 ],
295 295 "source": [
296 296 "jobs.traceback()"
297 297 ]
298 298 },
299 299 {
300 300 "cell_type": "markdown",
301 301 "metadata": {},
302 302 "source": [
303 303 "The job manager can be flushed of all completed jobs at any time:"
304 304 ]
305 305 },
306 306 {
307 307 "cell_type": "code",
308 "execution_count": 16,
308 "execution_count": 8,
309 309 "metadata": {
310 310 "collapsed": false
311 311 },
312 312 "outputs": [
313 313 {
314 314 "name": "stdout",
315 315 "output_type": "stream",
316 316 "text": [
317 317 "Flushing 3 Completed jobs.\n",
318 318 "Flushing 2 Dead jobs.\n"
319 319 ]
320 320 }
321 321 ],
322 322 "source": [
323 323 "jobs.flush()"
324 324 ]
325 325 },
326 326 {
327 327 "cell_type": "markdown",
328 328 "metadata": {},
329 329 "source": [
330 330 "After that, the status is simply empty:"
331 331 ]
332 332 },
333 333 {
334 334 "cell_type": "code",
335 "execution_count": 17,
335 "execution_count": 9,
336 336 "metadata": {
337 337 "collapsed": true
338 338 },
339 339 "outputs": [],
340 340 "source": [
341 341 "jobs.status()"
342 342 ]
343 343 },
344 344 {
345 345 "cell_type": "markdown",
346 346 "metadata": {},
347 347 "source": [
348 348 "Jobs have a `.join` method that lets you wait on their thread for completion:"
349 349 ]
350 350 },
351 351 {
352 352 "cell_type": "code",
353 "execution_count": 18,
353 "execution_count": 10,
354 354 "metadata": {
355 355 "collapsed": false
356 356 },
357 357 "outputs": [
358 358 {
359 359 "name": "stdout",
360 360 "output_type": "stream",
361 361 "text": [
362 362 "Starting job # 0 in a separate thread.\n"
363 363 ]
364 364 }
365 365 ],
366 366 "source": [
367 367 "j = jobs.new(sleepfunc, 2)\n",
368 368 "j.join?"
369 369 ]
370 370 },
371 371 {
372 372 "cell_type": "markdown",
373 373 "metadata": {},
374 374 "source": [
375 375 "## Exercise\n",
376 376 "\n",
377 377 "1. Start a new job that calls `sleepfunc` with a 5-second wait\n",
378 378 "2. Print a short message that indicates you are waiting (note: you'll need to flush stdout to see that print output appear).\n",
379 379 "3. Wait on the job and then print its result."
380 380 ]
381 381 }
382 382 ],
383 383 "metadata": {
384 384 "kernelspec": {
385 385 "display_name": "Python 3",
386 386 "language": "python",
387 387 "name": "python3"
388 388 },
389 389 "language_info": {
390 390 "codemirror_mode": {
391 391 "name": "ipython",
392 392 "version": 3
393 393 },
394 394 "file_extension": ".py",
395 395 "mimetype": "text/x-python",
396 396 "name": "python",
397 397 "nbconvert_exporter": "python",
398 398 "pygments_lexer": "ipython3",
399 399 "version": "3.4.2"
400 400 }
401 401 },
402 402 "nbformat": 4,
403 403 "nbformat_minor": 0
404 404 }
This diff has been collapsed as it changes many lines, (1618 lines changed) Show them Hide them
@@ -1,1823 +1,2523 b''
1 1 {
2 2 "cells": [
3 3 {
4 4 "cell_type": "markdown",
5 5 "metadata": {
6 6 "slideshow": {
7 7 "slide_type": "slide"
8 8 }
9 9 },
10 10 "source": [
11 11 "# IPython: beyond plain Python"
12 12 ]
13 13 },
14 14 {
15 15 "cell_type": "markdown",
16 16 "metadata": {},
17 17 "source": [
18 18 "When executing code in IPython, all valid Python syntax works as-is, but IPython provides a number of features designed to make the interactive experience more fluid and efficient."
19 19 ]
20 20 },
21 21 {
22 22 "cell_type": "markdown",
23 23 "metadata": {
24 24 "slideshow": {
25 25 "slide_type": "slide"
26 26 }
27 27 },
28 28 "source": [
29 29 "## First things first: running code, getting help"
30 30 ]
31 31 },
32 32 {
33 33 "cell_type": "markdown",
34 34 "metadata": {},
35 35 "source": [
36 36 "In the notebook, to run a cell of code, hit `Shift-Enter`. This executes the cell and puts the cursor in the next cell below, or makes a new one if you are at the end. Alternately, you can use:\n",
37 37 " \n",
38 38 "- `Alt-Enter` to force the creation of a new cell unconditionally (useful when inserting new content in the middle of an existing notebook).\n",
39 39 "- `Control-Enter` executes the cell and keeps the cursor in the same cell, useful for quick experimentation of snippets that you don't need to keep permanently."
40 40 ]
41 41 },
42 42 {
43 43 "cell_type": "code",
44 44 "execution_count": 1,
45 45 "metadata": {
46 46 "collapsed": false
47 47 },
48 48 "outputs": [
49 49 {
50 50 "name": "stdout",
51 51 "output_type": "stream",
52 52 "text": [
53 53 "Hi\n"
54 54 ]
55 55 }
56 56 ],
57 57 "source": [
58 "print \"Hi\""
58 "print(\"Hi\")"
59 59 ]
60 60 },
61 61 {
62 62 "cell_type": "markdown",
63 63 "metadata": {
64 64 "slideshow": {
65 65 "slide_type": "slide"
66 66 }
67 67 },
68 68 "source": [
69 69 "Getting help:"
70 70 ]
71 71 },
72 72 {
73 73 "cell_type": "code",
74 74 "execution_count": 2,
75 75 "metadata": {
76 76 "collapsed": false
77 77 },
78 78 "outputs": [],
79 79 "source": [
80 80 "?"
81 81 ]
82 82 },
83 83 {
84 84 "cell_type": "markdown",
85 85 "metadata": {
86 86 "slideshow": {
87 87 "slide_type": "slide"
88 88 }
89 89 },
90 90 "source": [
91 91 "Typing `object_name?` will print all sorts of details about any object, including docstrings, function definition lines (for call arguments) and constructor details for classes."
92 92 ]
93 93 },
94 94 {
95 95 "cell_type": "code",
96 96 "execution_count": 3,
97 97 "metadata": {
98 98 "collapsed": false
99 99 },
100 100 "outputs": [],
101 101 "source": [
102 102 "import collections\n",
103 103 "collections.namedtuple?"
104 104 ]
105 105 },
106 106 {
107 107 "cell_type": "code",
108 108 "execution_count": 4,
109 109 "metadata": {
110 110 "collapsed": false
111 111 },
112 112 "outputs": [],
113 113 "source": [
114 114 "collections.Counter??"
115 115 ]
116 116 },
117 117 {
118 118 "cell_type": "code",
119 119 "execution_count": 5,
120 120 "metadata": {
121 121 "collapsed": false
122 122 },
123 123 "outputs": [],
124 124 "source": [
125 125 "*int*?"
126 126 ]
127 127 },
128 128 {
129 129 "cell_type": "markdown",
130 130 "metadata": {
131 131 "slideshow": {
132 132 "slide_type": "slide"
133 133 }
134 134 },
135 135 "source": [
136 136 "An IPython quick reference card:"
137 137 ]
138 138 },
139 139 {
140 140 "cell_type": "code",
141 141 "execution_count": 6,
142 142 "metadata": {
143 143 "collapsed": false
144 144 },
145 145 "outputs": [],
146 146 "source": [
147 147 "%quickref"
148 148 ]
149 149 },
150 150 {
151 151 "cell_type": "markdown",
152 152 "metadata": {
153 153 "slideshow": {
154 154 "slide_type": "slide"
155 155 }
156 156 },
157 157 "source": [
158 158 "## Tab completion"
159 159 ]
160 160 },
161 161 {
162 162 "cell_type": "markdown",
163 163 "metadata": {},
164 164 "source": [
165 165 "Tab completion, especially for attributes, is a convenient way to explore the structure of any object you’re dealing with. Simply type `object_name.<TAB>` to view the object’s attributes. Besides Python objects and keywords, tab completion also works on file and directory names."
166 166 ]
167 167 },
168 168 {
169 169 "cell_type": "code",
170 "execution_count": 8,
170 "execution_count": null,
171 171 "metadata": {
172 172 "collapsed": false
173 173 },
174 174 "outputs": [],
175 175 "source": [
176 176 "collections."
177 177 ]
178 178 },
179 179 {
180 180 "cell_type": "markdown",
181 181 "metadata": {
182 182 "slideshow": {
183 183 "slide_type": "slide"
184 184 }
185 185 },
186 186 "source": [
187 187 "## The interactive workflow: input, output, history"
188 188 ]
189 189 },
190 190 {
191 191 "cell_type": "code",
192 192 "execution_count": 7,
193 193 "metadata": {
194 194 "collapsed": false
195 195 },
196 196 "outputs": [
197 197 {
198 198 "data": {
199 199 "text/plain": [
200 200 "12"
201 201 ]
202 202 },
203 203 "execution_count": 7,
204 204 "metadata": {},
205 205 "output_type": "execute_result"
206 206 }
207 207 ],
208 208 "source": [
209 209 "2+10"
210 210 ]
211 211 },
212 212 {
213 213 "cell_type": "code",
214 214 "execution_count": 8,
215 215 "metadata": {
216 216 "collapsed": false
217 217 },
218 218 "outputs": [
219 219 {
220 220 "data": {
221 221 "text/plain": [
222 222 "22"
223 223 ]
224 224 },
225 225 "execution_count": 8,
226 226 "metadata": {},
227 227 "output_type": "execute_result"
228 228 }
229 229 ],
230 230 "source": [
231 231 "_+10"
232 232 ]
233 233 },
234 234 {
235 235 "cell_type": "markdown",
236 236 "metadata": {
237 237 "slideshow": {
238 238 "slide_type": "slide"
239 239 }
240 240 },
241 241 "source": [
242 242 "You can suppress the storage and rendering of output if you append `;` to the last cell (this comes in handy when plotting with matplotlib, for example):"
243 243 ]
244 244 },
245 245 {
246 246 "cell_type": "code",
247 247 "execution_count": 9,
248 248 "metadata": {
249 249 "collapsed": false
250 250 },
251 251 "outputs": [],
252 252 "source": [
253 253 "10+20;"
254 254 ]
255 255 },
256 256 {
257 257 "cell_type": "code",
258 258 "execution_count": 10,
259 259 "metadata": {
260 260 "collapsed": false
261 261 },
262 262 "outputs": [
263 263 {
264 264 "data": {
265 265 "text/plain": [
266 266 "22"
267 267 ]
268 268 },
269 269 "execution_count": 10,
270 270 "metadata": {},
271 271 "output_type": "execute_result"
272 272 }
273 273 ],
274 274 "source": [
275 275 "_"
276 276 ]
277 277 },
278 278 {
279 279 "cell_type": "markdown",
280 280 "metadata": {
281 281 "slideshow": {
282 282 "slide_type": "slide"
283 283 }
284 284 },
285 285 "source": [
286 286 "The output is stored in `_N` and `Out[N]` variables:"
287 287 ]
288 288 },
289 289 {
290 290 "cell_type": "code",
291 291 "execution_count": 11,
292 292 "metadata": {
293 293 "collapsed": false
294 294 },
295 295 "outputs": [
296 296 {
297 297 "data": {
298 298 "text/plain": [
299 299 "True"
300 300 ]
301 301 },
302 302 "execution_count": 11,
303 303 "metadata": {},
304 304 "output_type": "execute_result"
305 305 }
306 306 ],
307 307 "source": [
308 308 "_10 == Out[10]"
309 309 ]
310 310 },
311 311 {
312 312 "cell_type": "markdown",
313 313 "metadata": {
314 314 "slideshow": {
315 315 "slide_type": "slide"
316 316 }
317 317 },
318 318 "source": [
319 319 "And the last three have shorthands for convenience:"
320 320 ]
321 321 },
322 322 {
323 323 "cell_type": "code",
324 324 "execution_count": 12,
325 325 "metadata": {
326 326 "collapsed": false
327 327 },
328 328 "outputs": [
329 329 {
330 330 "name": "stdout",
331 331 "output_type": "stream",
332 332 "text": [
333 333 "last output: True\n",
334 334 "next one : 22\n",
335 335 "and next : 22\n"
336 336 ]
337 337 }
338 338 ],
339 339 "source": [
340 "print 'last output:', _\n",
341 "print 'next one :', __\n",
342 "print 'and next :', ___"
340 "from __future__ import print_function\n",
341 "\n",
342 "print('last output:', _)\n",
343 "print('next one :', __)\n",
344 "print('and next :', ___)"
343 345 ]
344 346 },
345 347 {
346 348 "cell_type": "code",
347 349 "execution_count": 13,
348 350 "metadata": {
349 351 "collapsed": false,
350 352 "slideshow": {
351 353 "slide_type": "-"
352 354 }
353 355 },
354 356 "outputs": [
355 357 {
356 358 "data": {
357 359 "text/plain": [
358 "u'_10 == Out[10]'"
360 "'_10 == Out[10]'"
359 361 ]
360 362 },
361 363 "execution_count": 13,
362 364 "metadata": {},
363 365 "output_type": "execute_result"
364 366 }
365 367 ],
366 368 "source": [
367 369 "In[11]"
368 370 ]
369 371 },
370 372 {
371 373 "cell_type": "code",
372 374 "execution_count": 14,
373 375 "metadata": {
374 376 "collapsed": false
375 377 },
376 378 "outputs": [
377 379 {
378 380 "data": {
379 381 "text/plain": [
380 "u'In[11]'"
382 "'In[11]'"
381 383 ]
382 384 },
383 385 "execution_count": 14,
384 386 "metadata": {},
385 387 "output_type": "execute_result"
386 388 }
387 389 ],
388 390 "source": [
389 391 "_i"
390 392 ]
391 393 },
392 394 {
393 395 "cell_type": "code",
394 396 "execution_count": 15,
395 397 "metadata": {
396 398 "collapsed": false
397 399 },
398 400 "outputs": [
399 401 {
400 402 "data": {
401 403 "text/plain": [
402 "u'In[11]'"
404 "'In[11]'"
403 405 ]
404 406 },
405 407 "execution_count": 15,
406 408 "metadata": {},
407 409 "output_type": "execute_result"
408 410 }
409 411 ],
410 412 "source": [
411 413 "_ii"
412 414 ]
413 415 },
414 416 {
415 417 "cell_type": "code",
416 418 "execution_count": 16,
417 419 "metadata": {
418 420 "collapsed": false,
419 421 "slideshow": {
420 422 "slide_type": "subslide"
421 423 }
422 424 },
423 425 "outputs": [
424 426 {
425 427 "name": "stdout",
426 428 "output_type": "stream",
427 429 "text": [
428 430 "last input: _ii\n",
429 431 "next one : _i\n",
430 432 "and next : In[11]\n"
431 433 ]
432 434 }
433 435 ],
434 436 "source": [
435 "print 'last input:', _i\n",
436 "print 'next one :', _ii\n",
437 "print 'and next :', _iii"
437 "print('last input:', _i)\n",
438 "print('next one :', _ii)\n",
439 "print('and next :', _iii)"
438 440 ]
439 441 },
440 442 {
441 443 "cell_type": "code",
442 444 "execution_count": 17,
443 445 "metadata": {
444 446 "collapsed": false
445 447 },
446 448 "outputs": [
447 449 {
448 450 "name": "stdout",
449 451 "output_type": "stream",
450 452 "text": [
451 " 1: print \"Hi\"\n",
453 " 1: print(\"Hi\")\n",
452 454 " 2: ?\n",
453 455 " 3:\n",
454 456 "import collections\n",
455 457 "collections.namedtuple?\n",
456 458 " 4: collections.Counter??\n",
457 459 " 5: *int*?\n"
458 460 ]
459 461 }
460 462 ],
461 463 "source": [
462 464 "%history -n 1-5"
463 465 ]
464 466 },
465 467 {
466 468 "cell_type": "markdown",
467 469 "metadata": {
468 470 "slideshow": {
469 471 "slide_type": "subslide"
470 472 }
471 473 },
472 474 "source": [
473 475 "**Exercise**\n",
474 476 "\n",
475 477 "Write the last 10 lines of history to a file named `log.py`."
476 478 ]
477 479 },
478 480 {
479 481 "cell_type": "markdown",
480 482 "metadata": {
481 483 "slideshow": {
482 484 "slide_type": "slide"
483 485 }
484 486 },
485 487 "source": [
486 488 "## Accessing the underlying operating system"
487 489 ]
488 490 },
489 491 {
490 492 "cell_type": "code",
491 493 "execution_count": 18,
492 494 "metadata": {
493 495 "collapsed": false
494 496 },
495 497 "outputs": [
496 498 {
497 499 "name": "stdout",
498 500 "output_type": "stream",
499 501 "text": [
500 "/home/fperez/ipython/tutorial/notebooks\r\n"
502 "/Users/minrk/dev/ip/mine/examples/IPython Kernel\r\n"
501 503 ]
502 504 }
503 505 ],
504 506 "source": [
505 507 "!pwd"
506 508 ]
507 509 },
508 510 {
509 511 "cell_type": "code",
510 512 "execution_count": 19,
511 513 "metadata": {
512 514 "collapsed": false
513 515 },
514 516 "outputs": [
515 517 {
516 518 "name": "stdout",
517 519 "output_type": "stream",
518 520 "text": [
519 521 "My current directory's files:\n",
520 "['BackgroundJobs.ipynb', 'Custom Display Logic.ipynb', 'Customizing IPython - Condensed.ipynb', 'Customizing IPython - Config.ipynb', 'Customizing IPython - Extensions.ipynb', 'Customizing IPython - Magics.ipynb', 'data', 'figs', 'flare.json', 'Index.ipynb', 'Interactive Widgets.ipynb', 'IPython - beyond plain Python.ipynb', 'kernel-embedding', 'Markdown Cells.ipynb', 'myscript.py', 'nbconvert_arch.png', 'NbConvert from command line.ipynb', 'NbConvert Python library.ipynb', 'Notebook and javascript extension.ipynb', 'Notebook Basics.ipynb', 'Overview of IPython.parallel.ipynb', 'parallel', 'Rich Display System.ipynb', 'Running a Secure Public Notebook.ipynb', 'Running Code.ipynb', 'Sample.ipynb', 'soln', 'Terminal usage.ipynb', 'text_analysis.py', 'Typesetting Math Using MathJax.ipynb']\n"
522 "['Animations Using clear_output.ipynb', 'Background Jobs.ipynb', 'Beyond Plain Python.ipynb', 'Capturing Output.ipynb', 'Cell Magics.ipynb', 'Custom Display Logic.ipynb', 'Index.ipynb', 'Old Custom Display Logic.ipynb', 'Plotting in the Notebook.ipynb', 'Raw Input in the Notebook.ipynb', 'Rich Output.ipynb', 'Script Magics.ipynb', 'SymPy.ipynb', 'Terminal Usage.ipynb', 'Third Party Rich Output.ipynb', 'Trapezoid Rule.ipynb', 'Working With External Code.ipynb', '__pycache__', 'data', 'example-demo.py', 'gui', 'ipython-completion.bash', 'ipython-get-history.py', 'ipython-qtconsole.desktop', 'ipython.desktop', 'mod.py', 'test.txt']\n"
521 523 ]
522 524 }
523 525 ],
524 526 "source": [
525 527 "files = !ls\n",
526 "print \"My current directory's files:\"\n",
527 "print files"
528 "print(\"My current directory's files:\")\n",
529 "print(files)"
528 530 ]
529 531 },
530 532 {
531 533 "cell_type": "code",
532 534 "execution_count": 20,
533 535 "metadata": {
534 536 "collapsed": false
535 537 },
536 538 "outputs": [
537 539 {
538 540 "name": "stdout",
539 541 "output_type": "stream",
540 542 "text": [
541 "[BackgroundJobs.ipynb, Custom Display Logic.ipynb, Customizing IPython - Condensed.ipynb, Customizing IPython - Config.ipynb, Customizing IPython - Extensions.ipynb, Customizing IPython - Magics.ipynb, data, figs, flare.json, Index.ipynb, Interactive Widgets.ipynb, IPython - beyond plain Python.ipynb, kernel-embedding, Markdown Cells.ipynb, myscript.py, nbconvert_arch.png, NbConvert from command line.ipynb, NbConvert Python library.ipynb, Notebook and javascript extension.ipynb, Notebook Basics.ipynb, Overview of IPython.parallel.ipynb, parallel, Rich Display System.ipynb, Running a Secure Public Notebook.ipynb, Running Code.ipynb, Sample.ipynb, soln, Terminal usage.ipynb, text_analysis.py, Typesetting Math Using MathJax.ipynb]\r\n"
543 "[Animations Using clear_output.ipynb, Background Jobs.ipynb, Beyond Plain Python.ipynb, Capturing Output.ipynb, Cell Magics.ipynb, Custom Display Logic.ipynb, Index.ipynb, Old Custom Display Logic.ipynb, Plotting in the Notebook.ipynb, Raw Input in the Notebook.ipynb, Rich Output.ipynb, Script Magics.ipynb, SymPy.ipynb, Terminal Usage.ipynb, Third Party Rich Output.ipynb, Trapezoid Rule.ipynb, Working With External Code.ipynb, __pycache__, data, example-demo.py, gui, ipython-completion.bash, ipython-get-history.py, ipython-qtconsole.desktop, ipython.desktop, mod.py, test.txt]\r\n"
542 544 ]
543 545 }
544 546 ],
545 547 "source": [
546 548 "!echo $files"
547 549 ]
548 550 },
549 551 {
550 552 "cell_type": "code",
551 553 "execution_count": 21,
552 554 "metadata": {
553 555 "collapsed": false
554 556 },
555 557 "outputs": [
556 558 {
557 559 "name": "stdout",
558 560 "output_type": "stream",
559 561 "text": [
560 "BACKGROUNDJOBS.IPYNB\r\n"
562 "ANIMATIONS USING CLEAR_OUTPUT.IPYNB\r\n"
561 563 ]
562 564 }
563 565 ],
564 566 "source": [
565 567 "!echo {files[0].upper()}"
566 568 ]
567 569 },
568 570 {
569 571 "cell_type": "markdown",
570 572 "metadata": {},
571 573 "source": [
572 574 "Note that all this is available even in multiline blocks:"
573 575 ]
574 576 },
575 577 {
576 578 "cell_type": "code",
577 "execution_count": 27,
579 "execution_count": 22,
578 580 "metadata": {
579 581 "collapsed": false
580 582 },
581 583 "outputs": [
582 584 {
583 585 "name": "stdout",
584 586 "output_type": "stream",
585 587 "text": [
586 "00 - BackgroundJobs\r\n",
587 "01 - Custom Display Logic\r\n",
588 "02 - Customizing IPython - Condensed\r\n",
589 "03 - Customizing IPython - Config\r\n",
590 "04 - Customizing IPython - Extensions\r\n",
591 "05 - Customizing IPython - Magics\r\n",
588 "00 - Animations Using clear_output\n",
589 "01 - Background Jobs\n",
590 "02 - Beyond Plain Python\n",
591 "03 - Capturing Output\n",
592 "04 - Cell Magics\n",
593 "05 - Custom Display Logic\n",
594 "06 - Index\n",
595 "07 - Old Custom Display Logic\n",
596 "08 - Plotting in the Notebook\n",
597 "09 - Raw Input in the Notebook\n",
598 "10 - Rich Output\n",
599 "11 - Script Magics\n",
600 "12 - SymPy\n",
601 "13 - Terminal Usage\n",
602 "14 - Third Party Rich Output\n",
603 "15 - Trapezoid Rule\n",
604 "16 - Working With External Code\n",
592 605 "--\n",
593 606 "--\n",
594 607 "--\n",
595 "09 - Index\r\n",
596 "10 - Interactive Widgets\r\n",
597 "11 - IPython - beyond plain Python\r\n",
598 608 "--\n",
599 "13 - Markdown Cells\r\n",
600 609 "--\n",
601 610 "--\n",
602 "16 - NbConvert from command line\r\n",
603 "17 - NbConvert Python library\r\n",
604 "18 - Notebook and javascript extension\r\n",
605 "19 - Notebook Basics\r\n",
606 "20 - Overview of IPython.parallel\r\n",
607 611 "--\n",
608 "22 - Rich Display System\r\n",
609 "23 - Running a Secure Public Notebook\r\n",
610 "24 - Running Code\r\n",
611 "25 - Sample\r\n",
612 612 "--\n",
613 "27 - Terminal usage\r\n",
614 613 "--\n",
615 "29 - Typesetting Math Using MathJax\r\n"
614 "--\n"
616 615 ]
617 616 }
618 617 ],
619 618 "source": [
620 619 "import os\n",
621 620 "for i,f in enumerate(files):\n",
622 621 " if f.endswith('ipynb'):\n",
623 622 " !echo {\"%02d\" % i} - \"{os.path.splitext(f)[0]}\"\n",
624 623 " else:\n",
625 " print '--'"
624 " print('--')"
626 625 ]
627 626 },
628 627 {
629 628 "cell_type": "markdown",
630 629 "metadata": {},
631 630 "source": [
632 631 "## Beyond Python: magic functions"
633 632 ]
634 633 },
635 634 {
636 635 "cell_type": "markdown",
637 636 "metadata": {},
638 637 "source": [
639 638 "The IPyhton 'magic' functions are a set of commands, invoked by prepending one or two `%` signs to their name, that live in a namespace separate from your normal Python variables and provide a more command-like interface. They take flags with `--` and arguments without quotes, parentheses or commas. The motivation behind this system is two-fold:\n",
640 639 " \n",
641 640 "- To provide an orthogonal namespace for controlling IPython itself and exposing other system-oriented functionality.\n",
642 641 "\n",
643 642 "- To expose a calling mode that requires minimal verbosity and typing while working interactively. Thus the inspiration taken from the classic Unix shell style for commands."
644 643 ]
645 644 },
646 645 {
647 646 "cell_type": "code",
648 "execution_count": 28,
647 "execution_count": 23,
649 648 "metadata": {
650 649 "collapsed": false
651 650 },
652 651 "outputs": [],
653 652 "source": [
654 653 "%magic"
655 654 ]
656 655 },
657 656 {
658 657 "cell_type": "markdown",
659 658 "metadata": {},
660 659 "source": [
661 660 "Line vs cell magics:"
662 661 ]
663 662 },
664 663 {
665 664 "cell_type": "code",
666 "execution_count": 29,
665 "execution_count": 24,
667 666 "metadata": {
668 667 "collapsed": false
669 668 },
670 669 "outputs": [
671 670 {
672 671 "name": "stdout",
673 672 "output_type": "stream",
674 673 "text": [
675 "10000000 loops, best of 3: 190 ns per loop\n"
674 "10000 loops, best of 3: 19.3 µs per loop\n"
676 675 ]
677 676 }
678 677 ],
679 678 "source": [
680 "%timeit range(10)"
679 "%timeit list(range(1000))"
681 680 ]
682 681 },
683 682 {
684 683 "cell_type": "code",
685 "execution_count": 30,
684 "execution_count": 25,
686 685 "metadata": {
687 686 "collapsed": false
688 687 },
689 688 "outputs": [
690 689 {
691 690 "name": "stdout",
692 691 "output_type": "stream",
693 692 "text": [
694 "1000000 loops, best of 3: 888 ns per loop\n"
693 "100000 loops, best of 3: 2.78 µs per loop\n"
695 694 ]
696 695 }
697 696 ],
698 697 "source": [
699 698 "%%timeit\n",
700 "range(10)\n",
701 "range(100)"
699 "list(range(10))\n",
700 "list(range(100))"
702 701 ]
703 702 },
704 703 {
705 704 "cell_type": "markdown",
706 705 "metadata": {},
707 706 "source": [
708 707 "Line magics can be used even inside code blocks:"
709 708 ]
710 709 },
711 710 {
712 711 "cell_type": "code",
713 "execution_count": 31,
712 "execution_count": 26,
714 713 "metadata": {
715 714 "collapsed": false
716 715 },
717 716 "outputs": [
718 717 {
719 718 "name": "stdout",
720 719 "output_type": "stream",
721 720 "text": [
722 "size: 010000000 loops, best of 3: 129 ns per loop\n",
723 " size: 1001000000 loops, best of 3: 649 ns per loop\n",
724 " size: 2001000000 loops, best of 3: 1.09 µs per loop\n",
725 " size: 3001000000 loops, best of 3: 1.74 µs per loop\n",
726 " size: 400100000 loops, best of 3: 2.72 µs per loop\n",
727 "\n"
721 "size: 100 100000 loops, best of 3: 1.86 µs per loop\n",
722 "size: 200 100000 loops, best of 3: 2.49 µs per loop\n",
723 "size: 300 100000 loops, best of 3: 4.04 µs per loop\n",
724 "size: 400 100000 loops, best of 3: 6.21 µs per loop\n"
728 725 ]
729 726 }
730 727 ],
731 728 "source": [
732 "for i in range(5):\n",
729 "for i in range(1, 5):\n",
733 730 " size = i*100\n",
734 " print 'size:',size, \n",
735 " %timeit range(size)"
731 " print('size:', size, end=' ')\n",
732 " %timeit list(range(size))"
736 733 ]
737 734 },
738 735 {
739 736 "cell_type": "markdown",
740 737 "metadata": {},
741 738 "source": [
742 739 "Magics can do anything they want with their input, so it doesn't have to be valid Python:"
743 740 ]
744 741 },
745 742 {
746 743 "cell_type": "code",
747 "execution_count": 32,
744 "execution_count": 27,
748 745 "metadata": {
749 746 "collapsed": false
750 747 },
751 748 "outputs": [
752 749 {
753 750 "name": "stdout",
754 751 "output_type": "stream",
755 752 "text": [
756 "My shell is: /bin/bash\n",
757 "My memory status is:\n",
758 " total used free shared buffers cached\n",
759 "Mem: 7870888 6389328 1481560 0 662860 2505172\n",
760 "-/+ buffers/cache: 3221296 4649592\n",
761 "Swap: 3905532 4852 3900680\n"
753 "My shell is: /usr/local/bin/bash\n",
754 "My disk usage is:\n",
755 "Filesystem Size Used Avail Capacity iused ifree %iused Mounted on\n",
756 "/dev/disk1 233Gi 216Gi 16Gi 94% 56788108 4190706 93% /\n",
757 "devfs 190Ki 190Ki 0Bi 100% 656 0 100% /dev\n",
758 "map -hosts 0Bi 0Bi 0Bi 100% 0 0 100% /net\n",
759 "map auto_home 0Bi 0Bi 0Bi 100% 0 0 100% /home\n"
762 760 ]
763 761 }
764 762 ],
765 763 "source": [
766 764 "%%bash\n",
767 765 "echo \"My shell is:\" $SHELL\n",
768 "echo \"My memory status is:\"\n",
769 "free"
766 "echo \"My disk usage is:\"\n",
767 "df -h"
770 768 ]
771 769 },
772 770 {
773 771 "cell_type": "markdown",
774 772 "metadata": {},
775 773 "source": [
776 774 "Another interesting cell magic: create any file you want locally from the notebook:"
777 775 ]
778 776 },
779 777 {
780 778 "cell_type": "code",
781 "execution_count": 33,
779 "execution_count": 28,
782 780 "metadata": {
783 781 "collapsed": false
784 782 },
785 783 "outputs": [
786 784 {
787 785 "name": "stdout",
788 786 "output_type": "stream",
789 787 "text": [
790 "Writing test.txt\n"
788 "Overwriting test.txt\n"
791 789 ]
792 790 }
793 791 ],
794 792 "source": [
795 793 "%%writefile test.txt\n",
796 794 "This is a test file!\n",
797 795 "It can contain anything I want...\n",
798 796 "\n",
799 797 "And more..."
800 798 ]
801 799 },
802 800 {
803 801 "cell_type": "code",
804 "execution_count": 34,
802 "execution_count": 29,
805 803 "metadata": {
806 804 "collapsed": false
807 805 },
808 806 "outputs": [
809 807 {
810 808 "name": "stdout",
811 809 "output_type": "stream",
812 810 "text": [
813 811 "This is a test file!\r\n",
814 812 "It can contain anything I want...\r\n",
815 813 "\r\n",
816 814 "And more..."
817 815 ]
818 816 }
819 817 ],
820 818 "source": [
821 819 "!cat test.txt"
822 820 ]
823 821 },
824 822 {
825 823 "cell_type": "markdown",
826 824 "metadata": {},
827 825 "source": [
828 826 "Let's see what other magics are currently defined in the system:"
829 827 ]
830 828 },
831 829 {
832 830 "cell_type": "code",
833 "execution_count": 35,
831 "execution_count": 30,
834 832 "metadata": {
835 833 "collapsed": false
836 834 },
837 835 "outputs": [
838 836 {
839 837 "data": {
840 838 "application/json": {
841 839 "cell": {
842 840 "!": "OSMagics",
843 841 "HTML": "Other",
844 842 "SVG": "Other",
845 843 "bash": "Other",
846 844 "capture": "ExecutionMagics",
847 845 "debug": "ExecutionMagics",
848 846 "file": "Other",
849 847 "html": "DisplayMagics",
850 848 "javascript": "DisplayMagics",
851 849 "latex": "DisplayMagics",
852 850 "perl": "Other",
853 851 "prun": "ExecutionMagics",
854 852 "pypy": "Other",
855 853 "python": "Other",
856 854 "python2": "Other",
857 855 "python3": "Other",
858 856 "ruby": "Other",
859 857 "script": "ScriptMagics",
860 858 "sh": "Other",
861 859 "svg": "DisplayMagics",
862 860 "sx": "OSMagics",
863 861 "system": "OSMagics",
864 862 "time": "ExecutionMagics",
865 863 "timeit": "ExecutionMagics",
866 864 "writefile": "OSMagics"
867 865 },
868 866 "line": {
869 867 "alias": "OSMagics",
870 868 "alias_magic": "BasicMagics",
871 869 "autocall": "AutoMagics",
872 870 "automagic": "AutoMagics",
873 871 "autosave": "KernelMagics",
874 872 "bookmark": "OSMagics",
875 873 "cat": "Other",
876 874 "cd": "OSMagics",
877 "cl": "Other",
878 875 "clear": "KernelMagics",
879 "clk": "Other",
880 876 "colors": "BasicMagics",
881 877 "config": "ConfigMagics",
882 878 "connect_info": "KernelMagics",
883 879 "cp": "Other",
884 "d": "Other",
885 "dd": "Other",
886 880 "debug": "ExecutionMagics",
887 881 "dhist": "OSMagics",
888 882 "dirs": "OSMagics",
889 "dl": "Other",
890 "doctest_mode": "KernelMagics",
891 "dx": "Other",
883 "doctest_mode": "BasicMagics",
892 884 "ed": "Other",
893 885 "edit": "KernelMagics",
894 886 "env": "OSMagics",
895 887 "gui": "BasicMagics",
896 888 "hist": "Other",
897 889 "history": "HistoryMagics",
898 890 "install_default_config": "DeprecatedMagics",
899 891 "install_ext": "ExtensionMagics",
900 892 "install_profiles": "DeprecatedMagics",
901 893 "killbgscripts": "ScriptMagics",
902 894 "ldir": "Other",
903 895 "less": "KernelMagics",
904 896 "lf": "Other",
905 897 "lk": "Other",
906 898 "ll": "Other",
907 899 "load": "CodeMagics",
908 900 "load_ext": "ExtensionMagics",
909 901 "loadpy": "CodeMagics",
910 902 "logoff": "LoggingMagics",
911 903 "logon": "LoggingMagics",
912 904 "logstart": "LoggingMagics",
913 905 "logstate": "LoggingMagics",
914 906 "logstop": "LoggingMagics",
915 907 "ls": "Other",
916 908 "lsmagic": "BasicMagics",
917 909 "lx": "Other",
918 910 "macro": "ExecutionMagics",
919 911 "magic": "BasicMagics",
920 912 "man": "KernelMagics",
921 913 "matplotlib": "PylabMagics",
922 914 "mkdir": "Other",
923 915 "more": "KernelMagics",
924 916 "mv": "Other",
917 "namespace": "Other",
925 918 "notebook": "BasicMagics",
926 919 "page": "BasicMagics",
927 920 "pastebin": "CodeMagics",
928 921 "pdb": "ExecutionMagics",
929 922 "pdef": "NamespaceMagics",
930 923 "pdoc": "NamespaceMagics",
931 924 "pfile": "NamespaceMagics",
932 925 "pinfo": "NamespaceMagics",
933 926 "pinfo2": "NamespaceMagics",
934 927 "popd": "OSMagics",
935 928 "pprint": "BasicMagics",
936 929 "precision": "BasicMagics",
937 930 "profile": "BasicMagics",
938 931 "prun": "ExecutionMagics",
939 932 "psearch": "NamespaceMagics",
940 933 "psource": "NamespaceMagics",
941 934 "pushd": "OSMagics",
942 935 "pwd": "OSMagics",
943 936 "pycat": "OSMagics",
944 937 "pylab": "PylabMagics",
945 938 "qtconsole": "KernelMagics",
946 939 "quickref": "BasicMagics",
947 940 "recall": "HistoryMagics",
948 941 "rehashx": "OSMagics",
949 942 "reload_ext": "ExtensionMagics",
950 943 "rep": "Other",
951 944 "rerun": "HistoryMagics",
952 945 "reset": "NamespaceMagics",
953 946 "reset_selective": "NamespaceMagics",
954 947 "rm": "Other",
955 948 "rmdir": "Other",
956 949 "run": "ExecutionMagics",
957 950 "save": "CodeMagics",
958 951 "sc": "OSMagics",
952 "set_env": "OSMagics",
959 953 "store": "StoreMagics",
960 954 "sx": "OSMagics",
961 955 "system": "OSMagics",
962 956 "tb": "ExecutionMagics",
957 "tic": "TimerMagics",
963 958 "time": "ExecutionMagics",
964 959 "timeit": "ExecutionMagics",
960 "toc": "TimerMagics",
965 961 "unalias": "OSMagics",
966 962 "unload_ext": "ExtensionMagics",
967 963 "who": "NamespaceMagics",
968 964 "who_ls": "NamespaceMagics",
969 965 "whos": "NamespaceMagics",
970 966 "xdel": "NamespaceMagics",
971 967 "xmode": "BasicMagics"
972 968 }
973 969 },
974 970 "text/plain": [
975 971 "Available line magics:\n",
976 "%alias %alias_magic %autocall %automagic %autosave %bookmark %cat %cd %cl %clear %clk %colors %config %connect_info %cp %d %dd %debug %dhist %dirs %dl %doctest_mode %dx %ed %edit %env %gui %hist %history %install_default_config %install_ext %install_profiles %killbgscripts %ldir %less %lf %lk %ll %load %load_ext %loadpy %logoff %logon %logstart %logstate %logstop %ls %lsmagic %lx %macro %magic %man %matplotlib %mkdir %more %mv %notebook %page %pastebin %pdb %pdef %pdoc %pfile %pinfo %pinfo2 %popd %pprint %precision %profile %prun %psearch %psource %pushd %pwd %pycat %pylab %qtconsole %quickref %recall %rehashx %reload_ext %rep %rerun %reset %reset_selective %rm %rmdir %run %save %sc %store %sx %system %tb %time %timeit %unalias %unload_ext %who %who_ls %whos %xdel %xmode\n",
972 "%alias %alias_magic %autocall %automagic %autosave %bookmark %cat %cd %clear %colors %config %connect_info %cp %debug %dhist %dirs %doctest_mode %ed %edit %env %gui %hist %history %install_default_config %install_ext %install_profiles %killbgscripts %ldir %less %lf %lk %ll %load %load_ext %loadpy %logoff %logon %logstart %logstate %logstop %ls %lsmagic %lx %macro %magic %man %matplotlib %mkdir %more %mv %namespace %notebook %page %pastebin %pdb %pdef %pdoc %pfile %pinfo %pinfo2 %popd %pprint %precision %profile %prun %psearch %psource %pushd %pwd %pycat %pylab %qtconsole %quickref %recall %rehashx %reload_ext %rep %rerun %reset %reset_selective %rm %rmdir %run %save %sc %set_env %store %sx %system %tb %tic %time %timeit %toc %unalias %unload_ext %who %who_ls %whos %xdel %xmode\n",
977 973 "\n",
978 974 "Available cell magics:\n",
979 975 "%%! %%HTML %%SVG %%bash %%capture %%debug %%file %%html %%javascript %%latex %%perl %%prun %%pypy %%python %%python2 %%python3 %%ruby %%script %%sh %%svg %%sx %%system %%time %%timeit %%writefile\n",
980 976 "\n",
981 977 "Automagic is ON, % prefix IS NOT needed for line magics."
982 978 ]
983 979 },
984 "execution_count": 35,
980 "execution_count": 30,
985 981 "metadata": {},
986 982 "output_type": "execute_result"
987 983 }
988 984 ],
989 985 "source": [
990 986 "%lsmagic"
991 987 ]
992 988 },
993 989 {
994 990 "cell_type": "markdown",
995 991 "metadata": {},
996 992 "source": [
997 993 "## Running normal Python code: execution and errors"
998 994 ]
999 995 },
1000 996 {
1001 997 "cell_type": "markdown",
1002 998 "metadata": {},
1003 999 "source": [
1004 1000 "Not only can you input normal Python code, you can even paste straight from a Python or IPython shell session:"
1005 1001 ]
1006 1002 },
1007 1003 {
1008 1004 "cell_type": "code",
1009 "execution_count": 36,
1005 "execution_count": 31,
1010 1006 "metadata": {
1011 1007 "collapsed": false
1012 1008 },
1013 1009 "outputs": [
1014 1010 {
1015 1011 "name": "stdout",
1016 1012 "output_type": "stream",
1017 1013 "text": [
1018 1014 "1\n",
1019 1015 "1\n",
1020 1016 "2\n",
1021 1017 "3\n",
1022 1018 "5\n",
1023 1019 "8\n"
1024 1020 ]
1025 1021 }
1026 1022 ],
1027 1023 "source": [
1028 1024 ">>> # Fibonacci series:\n",
1029 1025 "... # the sum of two elements defines the next\n",
1030 1026 "... a, b = 0, 1\n",
1031 1027 ">>> while b < 10:\n",
1032 "... print b\n",
1028 "... print(b)\n",
1033 1029 "... a, b = b, a+b"
1034 1030 ]
1035 1031 },
1036 1032 {
1037 1033 "cell_type": "code",
1038 "execution_count": 37,
1034 "execution_count": 32,
1039 1035 "metadata": {
1040 1036 "collapsed": false
1041 1037 },
1042 1038 "outputs": [
1043 1039 {
1044 1040 "name": "stdout",
1045 1041 "output_type": "stream",
1046 1042 "text": [
1047 "0 1 2 3 4 5 6 7 8 9\n"
1043 "0 1 2 3 4 5 6 7 8 9 "
1048 1044 ]
1049 1045 }
1050 1046 ],
1051 1047 "source": [
1052 1048 "In [1]: for i in range(10):\n",
1053 " ...: print i,\n",
1049 " ...: print(i, end=' ')\n",
1054 1050 " ...: "
1055 1051 ]
1056 1052 },
1057 1053 {
1058 1054 "cell_type": "markdown",
1059 1055 "metadata": {},
1060 1056 "source": [
1061 1057 "And when your code produces errors, you can control how they are displayed with the `%xmode` magic:"
1062 1058 ]
1063 1059 },
1064 1060 {
1065 1061 "cell_type": "code",
1066 "execution_count": 38,
1062 "execution_count": 33,
1067 1063 "metadata": {
1068 1064 "collapsed": false
1069 1065 },
1070 1066 "outputs": [
1071 1067 {
1072 1068 "name": "stdout",
1073 1069 "output_type": "stream",
1074 1070 "text": [
1075 "Writing mod.py\n"
1071 "Overwriting mod.py\n"
1076 1072 ]
1077 1073 }
1078 1074 ],
1079 1075 "source": [
1080 1076 "%%writefile mod.py\n",
1081 1077 "\n",
1082 1078 "def f(x):\n",
1083 1079 " return 1.0/(x-1)\n",
1084 1080 "\n",
1085 1081 "def g(y):\n",
1086 1082 " return f(y+1)"
1087 1083 ]
1088 1084 },
1089 1085 {
1090 1086 "cell_type": "markdown",
1091 1087 "metadata": {},
1092 1088 "source": [
1093 1089 "Now let's call the function `g` with an argument that would produce an error:"
1094 1090 ]
1095 1091 },
1096 1092 {
1097 1093 "cell_type": "code",
1098 "execution_count": 39,
1094 "execution_count": 34,
1099 1095 "metadata": {
1100 1096 "collapsed": false
1101 1097 },
1102 1098 "outputs": [
1103 1099 {
1104 1100 "ename": "ZeroDivisionError",
1105 1101 "evalue": "float division by zero",
1106 1102 "output_type": "error",
1107 1103 "traceback": [
1108 "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[1;31mZeroDivisionError\u001b[0m Traceback (most recent call last)",
1109 "\u001b[1;32m<ipython-input-39-a54c5799f57e>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mmod\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 2\u001b[1;33m \u001b[0mmod\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
1110 "\u001b[1;32m/home/fperez/ipython/tutorial/notebooks/mod.py\u001b[0m in \u001b[0;36mg\u001b[1;34m(y)\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 6\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m+\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
1111 "\u001b[1;32m/home/fperez/ipython/tutorial/notebooks/mod.py\u001b[0m in \u001b[0;36mf\u001b[1;34m(x)\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[1;36m1.0\u001b[0m\u001b[1;33m/\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m-\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 4\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1104 "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
1105 "\u001b[1;31mZeroDivisionError\u001b[0m Traceback (most recent call last)",
1106 "\u001b[1;32m<ipython-input-40-a54c5799f57e>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0mmod\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 2\u001b[1;33m \u001b[0mmod\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
1107 "\u001b[1;32m/Users/minrk/dev/ip/mine/examples/IPython Kernel/mod.py\u001b[0m in \u001b[0;36mg\u001b[1;34m(y)\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 6\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m+\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
1108 "\u001b[1;32m/Users/minrk/dev/ip/mine/examples/IPython Kernel/mod.py\u001b[0m in \u001b[0;36mf\u001b[1;34m(x)\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[1;36m1.0\u001b[0m\u001b[1;33m/\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m-\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 4\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1112 1109 "\u001b[1;31mZeroDivisionError\u001b[0m: float division by zero"
1113 1110 ]
1114 1111 }
1115 1112 ],
1116 1113 "source": [
1117 1114 "import mod\n",
1118 1115 "mod.g(0)"
1119 1116 ]
1120 1117 },
1121 1118 {
1122 1119 "cell_type": "code",
1123 "execution_count": 40,
1120 "execution_count": 35,
1124 1121 "metadata": {
1125 1122 "collapsed": false
1126 1123 },
1127 1124 "outputs": [
1128 1125 {
1129 1126 "name": "stdout",
1130 1127 "output_type": "stream",
1131 1128 "text": [
1132 1129 "Exception reporting mode: Plain\n"
1133 1130 ]
1134 1131 },
1135 1132 {
1136 1133 "ename": "ZeroDivisionError",
1137 1134 "evalue": "float division by zero",
1138 1135 "output_type": "error",
1139 1136 "traceback": [
1140 1137 "Traceback \u001b[1;36m(most recent call last)\u001b[0m:\n",
1141 " File \u001b[0;32m\"<ipython-input-40-5a5bcec1553f>\"\u001b[0m, line \u001b[0;32m2\u001b[0m, in \u001b[0;35m<module>\u001b[0m\n mod.g(0)\n",
1142 " File \u001b[0;32m\"mod.py\"\u001b[0m, line \u001b[0;32m6\u001b[0m, in \u001b[0;35mg\u001b[0m\n return f(y+1)\n",
1143 "\u001b[1;36m File \u001b[1;32m\"mod.py\"\u001b[1;36m, line \u001b[1;32m3\u001b[1;36m, in \u001b[1;35mf\u001b[1;36m\u001b[0m\n\u001b[1;33m return 1.0/(x-1)\u001b[0m\n",
1138 " File \u001b[0;32m\"<ipython-input-41-8932f4bf53fa>\"\u001b[0m, line \u001b[0;32m2\u001b[0m, in \u001b[0;35m<module>\u001b[0m\n mod.g(0)\n",
1139 " File \u001b[0;32m\"/Users/minrk/dev/ip/mine/examples/IPython Kernel/mod.py\"\u001b[0m, line \u001b[0;32m6\u001b[0m, in \u001b[0;35mg\u001b[0m\n return f(y+1)\n",
1140 "\u001b[1;36m File \u001b[1;32m\"/Users/minrk/dev/ip/mine/examples/IPython Kernel/mod.py\"\u001b[1;36m, line \u001b[1;32m3\u001b[1;36m, in \u001b[1;35mf\u001b[1;36m\u001b[0m\n\u001b[1;33m return 1.0/(x-1)\u001b[0m\n",
1144 1141 "\u001b[1;31mZeroDivisionError\u001b[0m\u001b[1;31m:\u001b[0m float division by zero\n"
1145 1142 ]
1146 1143 }
1147 1144 ],
1148 1145 "source": [
1149 1146 "%xmode plain\n",
1150 1147 "mod.g(0)"
1151 1148 ]
1152 1149 },
1153 1150 {
1154 1151 "cell_type": "code",
1155 "execution_count": 41,
1152 "execution_count": 36,
1156 1153 "metadata": {
1157 1154 "collapsed": false
1158 1155 },
1159 1156 "outputs": [
1160 1157 {
1161 1158 "name": "stdout",
1162 1159 "output_type": "stream",
1163 1160 "text": [
1164 1161 "Exception reporting mode: Verbose\n"
1165 1162 ]
1166 1163 },
1167 1164 {
1168 1165 "ename": "ZeroDivisionError",
1169 1166 "evalue": "float division by zero",
1170 1167 "output_type": "error",
1171 1168 "traceback": [
1172 "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[1;31mZeroDivisionError\u001b[0m Traceback (most recent call last)",
1173 "\u001b[1;32m<ipython-input-41-81967cfaa0c3>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[0mget_ipython\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mmagic\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34mu'xmode verbose'\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 2\u001b[1;33m \u001b[0mmod\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m \u001b[1;36mglobal\u001b[0m \u001b[0;36mmod.g\u001b[0m \u001b[1;34m= <function g at 0x237fc08>\u001b[0m\n",
1174 "\u001b[1;32m/home/fperez/ipython/tutorial/notebooks/mod.py\u001b[0m in \u001b[0;36mg\u001b[1;34m(y=0)\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 6\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m+\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m \u001b[1;36mglobal\u001b[0m \u001b[0;36mf\u001b[0m \u001b[1;34m= <function f at 0x2367c08>\u001b[0m\u001b[1;34m\n \u001b[0m\u001b[0;36my\u001b[0m \u001b[1;34m= 0\u001b[0m\n",
1175 "\u001b[1;32m/home/fperez/ipython/tutorial/notebooks/mod.py\u001b[0m in \u001b[0;36mf\u001b[1;34m(x=1)\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[1;36m1.0\u001b[0m\u001b[1;33m/\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m-\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m \u001b[0;36mx\u001b[0m \u001b[1;34m= 1\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1169 "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
1170 "\u001b[1;31mZeroDivisionError\u001b[0m Traceback (most recent call last)",
1171 "\u001b[1;32m<ipython-input-42-539f73e80e01>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[0mget_ipython\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mmagic\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m'xmode verbose'\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 2\u001b[1;33m \u001b[0mmod\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m \u001b[1;36mglobal\u001b[0m \u001b[0;36mmod.g\u001b[0m \u001b[1;34m= <function g at 0x105887d08>\u001b[0m\n",
1172 "\u001b[1;32m/Users/minrk/dev/ip/mine/examples/IPython Kernel/mod.py\u001b[0m in \u001b[0;36mg\u001b[1;34m(y=0)\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 6\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m+\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m \u001b[1;36mglobal\u001b[0m \u001b[0;36mf\u001b[0m \u001b[1;34m= <function f at 0x105887d90>\u001b[0m\u001b[1;34m\n \u001b[0m\u001b[0;36my\u001b[0m \u001b[1;34m= 0\u001b[0m\n",
1173 "\u001b[1;32m/Users/minrk/dev/ip/mine/examples/IPython Kernel/mod.py\u001b[0m in \u001b[0;36mf\u001b[1;34m(x=1)\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[1;36m1.0\u001b[0m\u001b[1;33m/\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m-\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m \u001b[0;36mx\u001b[0m \u001b[1;34m= 1\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1176 1174 "\u001b[1;31mZeroDivisionError\u001b[0m: float division by zero"
1177 1175 ]
1178 1176 }
1179 1177 ],
1180 1178 "source": [
1181 1179 "%xmode verbose\n",
1182 1180 "mod.g(0)"
1183 1181 ]
1184 1182 },
1185 1183 {
1186 1184 "cell_type": "markdown",
1187 1185 "metadata": {},
1188 1186 "source": [
1189 1187 "The default `%xmode` is \"context\", which shows additional context but not all local variables. Let's restore that one for the rest of our session."
1190 1188 ]
1191 1189 },
1192 1190 {
1193 1191 "cell_type": "code",
1194 "execution_count": 42,
1192 "execution_count": 37,
1195 1193 "metadata": {
1196 1194 "collapsed": false
1197 1195 },
1198 1196 "outputs": [
1199 1197 {
1200 1198 "name": "stdout",
1201 1199 "output_type": "stream",
1202 1200 "text": [
1203 1201 "Exception reporting mode: Context\n"
1204 1202 ]
1205 1203 }
1206 1204 ],
1207 1205 "source": [
1208 1206 "%xmode context"
1209 1207 ]
1210 1208 },
1211 1209 {
1212 1210 "cell_type": "markdown",
1213 1211 "metadata": {},
1214 1212 "source": [
1215 1213 "## Running code in other languages with special `%%` magics"
1216 1214 ]
1217 1215 },
1218 1216 {
1219 1217 "cell_type": "code",
1220 "execution_count": 43,
1218 "execution_count": 38,
1221 1219 "metadata": {
1222 1220 "collapsed": false
1223 1221 },
1224 1222 "outputs": [
1225 1223 {
1226 1224 "name": "stdout",
1227 1225 "output_type": "stream",
1228 1226 "text": [
1229 1227 "July"
1230 1228 ]
1231 1229 }
1232 1230 ],
1233 1231 "source": [
1234 1232 "%%perl\n",
1235 1233 "@months = (\"July\", \"August\", \"September\");\n",
1236 1234 "print $months[0];"
1237 1235 ]
1238 1236 },
1239 1237 {
1240 1238 "cell_type": "code",
1241 "execution_count": 44,
1239 "execution_count": 39,
1242 1240 "metadata": {
1243 1241 "collapsed": false
1244 1242 },
1245 1243 "outputs": [
1246 1244 {
1247 1245 "name": "stdout",
1248 1246 "output_type": "stream",
1249 1247 "text": [
1250 1248 "Hello World!\n"
1251 1249 ]
1252 1250 }
1253 1251 ],
1254 1252 "source": [
1255 1253 "%%ruby\n",
1256 1254 "name = \"world\"\n",
1257 1255 "puts \"Hello #{name.capitalize}!\""
1258 1256 ]
1259 1257 },
1260 1258 {
1261 1259 "cell_type": "markdown",
1262 1260 "metadata": {},
1263 1261 "source": [
1264 "### Exercise"
1265 ]
1266 },
1267 {
1268 "cell_type": "markdown",
1269 "metadata": {},
1270 "source": [
1271 "Write a cell that executes in Bash and prints your current working directory as well as the date.\n",
1272 "\n",
1273 "Apologies to Windows users who may not have Bash available, not sure how to obtain the equivalent result with `cmd.exe` or Powershell."
1274 ]
1275 },
1276 {
1277 "cell_type": "code",
1278 "execution_count": null,
1279 "metadata": {
1280 "collapsed": false
1281 },
1282 "outputs": [],
1283 "source": [
1284 "%load soln/bash-script"
1285 ]
1286 },
1287 {
1288 "cell_type": "markdown",
1289 "metadata": {},
1290 "source": [
1291 1262 "## Raw Input in the notebook"
1292 1263 ]
1293 1264 },
1294 1265 {
1295 1266 "cell_type": "markdown",
1296 1267 "metadata": {},
1297 1268 "source": [
1298 1269 "Since 1.0 the IPython notebook web application support `raw_input` which for example allow us to invoke the `%debug` magic in the notebook:"
1299 1270 ]
1300 1271 },
1301 1272 {
1302 1273 "cell_type": "code",
1303 "execution_count": 45,
1274 "execution_count": 40,
1304 1275 "metadata": {
1305 1276 "collapsed": false
1306 1277 },
1307 1278 "outputs": [
1308 1279 {
1309 1280 "ename": "ZeroDivisionError",
1310 1281 "evalue": "float division by zero",
1311 1282 "output_type": "error",
1312 1283 "traceback": [
1313 "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[1;31mZeroDivisionError\u001b[0m Traceback (most recent call last)",
1314 "\u001b[1;32m<ipython-input-45-5e708f13c839>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mmod\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
1315 "\u001b[1;32m/home/fperez/ipython/tutorial/notebooks/mod.py\u001b[0m in \u001b[0;36mg\u001b[1;34m(y)\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 6\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m+\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
1316 "\u001b[1;32m/home/fperez/ipython/tutorial/notebooks/mod.py\u001b[0m in \u001b[0;36mf\u001b[1;34m(x)\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[1;36m1.0\u001b[0m\u001b[1;33m/\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m-\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 4\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1284 "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
1285 "\u001b[1;31mZeroDivisionError\u001b[0m Traceback (most recent call last)",
1286 "\u001b[1;32m<ipython-input-46-5e708f13c839>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mmod\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
1287 "\u001b[1;32m/Users/minrk/dev/ip/mine/examples/IPython Kernel/mod.py\u001b[0m in \u001b[0;36mg\u001b[1;34m(y)\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 6\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m+\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
1288 "\u001b[1;32m/Users/minrk/dev/ip/mine/examples/IPython Kernel/mod.py\u001b[0m in \u001b[0;36mf\u001b[1;34m(x)\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[1;36m1.0\u001b[0m\u001b[1;33m/\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m-\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 4\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1317 1289 "\u001b[1;31mZeroDivisionError\u001b[0m: float division by zero"
1318 1290 ]
1319 1291 }
1320 1292 ],
1321 1293 "source": [
1322 1294 "mod.g(0)"
1323 1295 ]
1324 1296 },
1325 1297 {
1326 1298 "cell_type": "code",
1327 "execution_count": 38,
1299 "execution_count": 41,
1328 1300 "metadata": {
1329 1301 "collapsed": false
1330 1302 },
1331 1303 "outputs": [
1332 1304 {
1333 1305 "name": "stdout",
1334 1306 "output_type": "stream",
1335 1307 "text": [
1336 "> \u001b[0;32m/Users/bussonniermatthias/ipython-in-depth/notebooks/mod.py\u001b[0m(3)\u001b[0;36mf\u001b[0;34m()\u001b[0m\n",
1337 "\u001b[0;32m 2 \u001b[0;31m\u001b[0;32mdef\u001b[0m \u001b[0mf\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
1338 "\u001b[0m\u001b[0;32m----> 3 \u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0;36m1.0\u001b[0m\u001b[0;34m/\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
1339 "\u001b[0m\u001b[0;32m 4 \u001b[0;31m\u001b[0;34m\u001b[0m\u001b[0m\n",
1308 "> \u001b[1;32m/Users/minrk/dev/ip/mine/examples/IPython Kernel/mod.py\u001b[0m(3)\u001b[0;36mf\u001b[1;34m()\u001b[0m\n",
1309 "\u001b[1;32m 2 \u001b[1;33m\u001b[1;32mdef\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1310 "\u001b[0m\u001b[1;32m----> 3 \u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[1;36m1.0\u001b[0m\u001b[1;33m/\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m-\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1311 "\u001b[0m\u001b[1;32m 4 \u001b[1;33m\u001b[1;33m\u001b[0m\u001b[0m\n",
1340 1312 "\u001b[0m\n",
1341 "ipdb> x\n",
1342 "1\n",
1343 1313 "ipdb> up\n",
1344 "> \u001b[0;32m/Users/bussonniermatthias/ipython-in-depth/notebooks/mod.py\u001b[0m(6)\u001b[0;36mg\u001b[0;34m()\u001b[0m\n",
1345 "\u001b[0;32m 4 \u001b[0;31m\u001b[0;34m\u001b[0m\u001b[0m\n",
1346 "\u001b[0m\u001b[0;32m 5 \u001b[0;31m\u001b[0;32mdef\u001b[0m \u001b[0mg\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0my\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
1347 "\u001b[0m\u001b[0;32m----> 6 \u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mf\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0my\u001b[0m\u001b[0;34m+\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
1314 "> \u001b[1;32m/Users/minrk/dev/ip/mine/examples/IPython Kernel/mod.py\u001b[0m(6)\u001b[0;36mg\u001b[1;34m()\u001b[0m\n",
1315 "\u001b[1;32m 4 \u001b[1;33m\u001b[1;33m\u001b[0m\u001b[0m\n",
1316 "\u001b[0m\u001b[1;32m 5 \u001b[1;33m\u001b[1;32mdef\u001b[0m \u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1317 "\u001b[0m\u001b[1;32m----> 6 \u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m+\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1348 1318 "\u001b[0m\n",
1349 "ipdb> y\n",
1350 "0\n",
1351 "ipdb> up\n",
1352 "> \u001b[0;32m<ipython-input-37-5e708f13c839>\u001b[0m(1)\u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n",
1353 "\u001b[0;32m----> 1 \u001b[0;31m\u001b[0mmod\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mg\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
1319 "ipdb> down\n",
1320 "> \u001b[1;32m/Users/minrk/dev/ip/mine/examples/IPython Kernel/mod.py\u001b[0m(3)\u001b[0;36mf\u001b[1;34m()\u001b[0m\n",
1321 "\u001b[1;32m 2 \u001b[1;33m\u001b[1;32mdef\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1322 "\u001b[0m\u001b[1;32m----> 3 \u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[1;36m1.0\u001b[0m\u001b[1;33m/\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m-\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1323 "\u001b[0m\u001b[1;32m 4 \u001b[1;33m\u001b[1;33m\u001b[0m\u001b[0m\n",
1324 "\u001b[0m\n",
1325 "ipdb> bt\n",
1326 " \u001b[1;32m<ipython-input-46-5e708f13c839>\u001b[0m(1)\u001b[0;36m<module>\u001b[1;34m()\u001b[0m\n",
1327 "\u001b[1;32m----> 1 \u001b[1;33m\u001b[0mmod\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1328 "\u001b[0m\n",
1329 " \u001b[1;32m/Users/minrk/dev/ip/mine/examples/IPython Kernel/mod.py\u001b[0m(6)\u001b[0;36mg\u001b[1;34m()\u001b[0m\n",
1330 "\u001b[0;32m 2 \u001b[0m\u001b[1;32mdef\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1331 "\u001b[0;32m 3 \u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[1;36m1.0\u001b[0m\u001b[1;33m/\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m-\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1332 "\u001b[0;32m 4 \u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1333 "\u001b[0;32m 5 \u001b[0m\u001b[1;32mdef\u001b[0m \u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1334 "\u001b[1;32m----> 6 \u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m+\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1335 "\u001b[0m\n",
1336 "> \u001b[1;32m/Users/minrk/dev/ip/mine/examples/IPython Kernel/mod.py\u001b[0m(3)\u001b[0;36mf\u001b[1;34m()\u001b[0m\n",
1337 "\u001b[1;32m 1 \u001b[1;33m\u001b[1;33m\u001b[0m\u001b[0m\n",
1338 "\u001b[0m\u001b[1;32m 2 \u001b[1;33m\u001b[1;32mdef\u001b[0m \u001b[0mf\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1339 "\u001b[0m\u001b[1;32m----> 3 \u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[1;36m1.0\u001b[0m\u001b[1;33m/\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mx\u001b[0m\u001b[1;33m-\u001b[0m\u001b[1;36m1\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1340 "\u001b[0m\u001b[1;32m 4 \u001b[1;33m\u001b[1;33m\u001b[0m\u001b[0m\n",
1341 "\u001b[0m\u001b[1;32m 5 \u001b[1;33m\u001b[1;32mdef\u001b[0m \u001b[0mg\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0my\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
1354 1342 "\u001b[0m\n",
1355 1343 "ipdb> exit\n"
1356 1344 ]
1357 1345 }
1358 1346 ],
1359 1347 "source": [
1360 1348 "%debug"
1361 1349 ]
1362 1350 },
1363 1351 {
1364 1352 "cell_type": "markdown",
1365 1353 "metadata": {},
1366 1354 "source": [
1367 1355 "Don't foget to exit your debugging session. Raw input can of course be use to ask for user input:"
1368 1356 ]
1369 1357 },
1370 1358 {
1371 1359 "cell_type": "code",
1372 "execution_count": 39,
1360 "execution_count": 42,
1373 1361 "metadata": {
1374 1362 "collapsed": false
1375 1363 },
1376 1364 "outputs": [
1377 1365 {
1378 1366 "name": "stdout",
1379 1367 "output_type": "stream",
1380 1368 "text": [
1381 "Are you enjoying this tutorial ?Yes !\n",
1382 "enjoy is : Yes !\n"
1369 "Are you enjoying this tutorial? yes\n",
1370 "enjoy is: yes\n"
1383 1371 ]
1384 1372 }
1385 1373 ],
1386 1374 "source": [
1387 "enjoy = raw_input('Are you enjoying this tutorial ?')\n",
1388 "print 'enjoy is :', enjoy"
1375 "enjoy = input('Are you enjoying this tutorial? ')\n",
1376 "print('enjoy is:', enjoy)"
1389 1377 ]
1390 1378 },
1391 1379 {
1392 1380 "cell_type": "markdown",
1393 1381 "metadata": {},
1394 1382 "source": [
1395 1383 "## Plotting in the notebook"
1396 1384 ]
1397 1385 },
1398 1386 {
1399 1387 "cell_type": "markdown",
1400 1388 "metadata": {},
1401 1389 "source": [
1402 1390 "This magic configures matplotlib to render its figures inline:"
1403 1391 ]
1404 1392 },
1405 1393 {
1406 1394 "cell_type": "code",
1407 "execution_count": 46,
1395 "execution_count": 43,
1408 1396 "metadata": {
1409 1397 "collapsed": false
1410 1398 },
1411 1399 "outputs": [],
1412 1400 "source": [
1413 1401 "%matplotlib inline"
1414 1402 ]
1415 1403 },
1416 1404 {
1417 1405 "cell_type": "code",
1418 "execution_count": 47,
1406 "execution_count": 44,
1419 1407 "metadata": {
1420 1408 "collapsed": false
1421 1409 },
1422 1410 "outputs": [],
1423 1411 "source": [
1424 1412 "import numpy as np\n",
1425 1413 "import matplotlib.pyplot as plt"
1426 1414 ]
1427 1415 },
1428 1416 {
1429 1417 "cell_type": "code",
1430 "execution_count": 48,
1418 "execution_count": 45,
1431 1419 "metadata": {
1432 1420 "collapsed": false
1433 1421 },
1434 1422 "outputs": [
1435 1423 {
1436 1424 "data": {
1437 1425 "image/png": [
1438 "iVBORw0KGgoAAAANSUhEUgAAAXoAAAEKCAYAAAAcgp5RAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\n",
1439 "AAALEgAACxIB0t1+/AAAIABJREFUeJztnXt4VdWZ/78nJBDCJRBCEkgCIQmXgNwsmCkaDQpSQPF+\n",
1440 "QQtUcEpVtNP2acfO/KZFn9Zi1c5MSzti6wXqCIhWwQoolIkgFFMFQQUhIIHcSCAQCJCQ5Jz9+2O5\n",
1441 "ITk5l31Za+2193k/z5NHQvY5exmS7/me7/uud/k0TdNAEARBeJY4pxdAEARBiIWEniAIwuOQ0BME\n",
1442 "QXgcEnqCIAiPQ0JPEAThcUjoCYIgPA4JPeEJiouL8eKLLwIA/vd//xfTpk0z9fjFixdjzpw5XNf0\n",
1443 "yiuvoKioKOzXZ8yYgT//+c9c70kQoSChJ5SmuLgYKSkpaGlpiXidz+eDz+cDANx///147733Ln0t\n",
1444 "Li4OX3311aXPS0pKkJ2d3enxslm/fj33FxeCCAUJPaEs5eXlKC0tRVpaGtatW2fruaLtC1Rt36Df\n",
1445 "73d6CYSHIKEnlGXFihWYMmUK5syZg+XLlxt+XPvI5NprrwUAjB07Fr1798aKFSswY8YMVFdXo1ev\n",
1446 "Xujduzdqamo6PcfOnTsxadIk9O3bF+PGjcMHH3wQ9n4VFRW4/fbbkZaWhtTUVDz66KMdvv7jH/8Y\n",
1447 "KSkpyM3NxcaNGy/9ffu46ZVXXsHVV1+NH/7wh0hNTcXixYuxfPlyXH311Xj00UfRp08fFBQUYMuW\n",
1448 "LYa/DwShQ0JPKMuKFStwzz334O6778Z7772Huro608+xdetWAMDevXtx9uxZzJ07Fxs2bMDAgQPR\n",
1449 "2NiIs2fPYsCAAR0eU1VVhZtuugk/+9nPcPr0aTz77LO44447cPLkyU7P7/f7cdNNN2HIkCE4evQo\n",
1450 "qqqqMHv27Etf/+ijjzBixAjU19fjJz/5CRYsWHDpa+3jJgAoLS1FXl4e6urq8O///u/QNA2lpaXI\n",
1451 "z89HfX09nnjiCdx+++04ffq06e8DEduQ0BNK8uGHH6KqqgqzZs3C0KFDMXLkSLz22mtcnjtaTPPq\n",
1452 "q69ixowZ+Na3vgUAmDJlCiZMmID169d3ura0tBQ1NTV45pln0L17d3Tr1g2TJk269PXBgwdjwYIF\n",
1453 "8Pl8mDt3LmpqasK+YA0cOBCPPPII4uLikJiYCABIS0vD97//fXTp0gV33303hg8fjnfffdfq/zoR\n",
1454 "o5DQE0qyfPly3HjjjejVqxcA4K677jIV39jh6NGjWLNmDfr27XvpY/v27Th+/HinaysqKjB48GDE\n",
1455 "xYX+VcrIyLj056SkJADAuXPnQl4bXCAGgMzMzA6fDx48GNXV1Yb/XwgCAOKdXgBBBNPU1ITXX38d\n",
1456 "gUDgUqxy8eJFNDQ0YO/evRgzZoyt54/WYTNo0CDMmTMHL7zwQtTnys7OxrFjx+D3+9GlSxfu66qq\n",
1457 "qurw+dGjR3HLLbfYug8Re5CjJ5Tj7bffRnx8PPbv3489e/Zgz5492L9/P4qKirBixQrTz5eeno7D\n",
1458 "hw93+Ly+vh5nz54Nef23v/1tvPPOO3j//ffh9/vR3NyMkpKSTqILAIWFhRgwYAAef/xxXLhwAc3N\n",
1459 "zdixY4fpNYajrq4Ov/3tb9Ha2oo1a9bgwIEDmDFjBrfnJ2IDEnpCOVasWIH58+cjKysLaWlpSEtL\n",
1460 "Q3p6OhYtWoTXXnsNgUAg4uODi5yLFy/GvHnz0LdvX7zxxhsYMWIEZs+ejdzcXKSkpKCmpqbDY7Ky\n",
1461 "srB27Vo89dRTSEtLw6BBg/Dcc8+FvG9cXBzeeecdHDp0CIMGDUJ2djZef/31kOvQ/87ImnUKCwtR\n",
1462 "VlaG/v374z/+4z/wxhtvoG/fvpG/gQQRhM/uwSPz58/Hu+++i7S0NHz22Wchr3nsscewYcMGJCUl\n",
1463 "4ZVXXsH48ePt3JIgYoJXXnkFL774IrZt2+b0UgiXY9vRP/DAAx16g4NZv349Dh06hLKyMrzwwgt4\n",
1464 "6KGH7N6SIAiCMIFtoS8qKor4VnLdunWYN28eAPY2tKGhAbW1tXZvSxCeJ1ycQxBmEZ7RV1VVdWgb\n",
1465 "y8rKQmVlpejbEoTrmTdv3qUNXwRhBynF2OAyALkUgiAIeQjvo8/MzERFRcWlzysrKzttAgGA/Pz8\n",
1466 "Di1wBEEQRHTy8vJw6NChiNcId/SzZs261Pu8c+dO9OnTB+np6Z2uO3z4MDRNc+3Hz3/+85B/7/dr\n",
1467 "uP9+DVOmaDhzpuPXWls1zJ2rYcYMdp1qa3fq4803NRQVaQgENLz7roaRI9mfVV//8eMakpM1tLRo\n",
1468 "GDZMQ2mp89//Bx/U8MtfarjmGg1vvSX35+fZZzXcc4+Gvn01VFaK//5Pm6bh5ps13H03n/WH+35m\n",
1469 "ZGj40Y/k/VxF+zBikG0L/ezZszFp0iQcOHAA2dnZeOmll7Bs2TIsW7YMADtcITc3F/n5+Vi4cCH+\n",
1470 "8Ic/2L2lq3jySeCrr4B164DevTt+LT4e+NOfgDNngGefdWZ9KvLqq8B3vgP4fMD06UBjI7B/v9Or\n",
1471 "is7//R9w3XVAQgIweTLAcd+UZXbsAGbOBK69FtizR+69P/4YuOkmdv933hF7L00Ddu8G5swBjhwR\n",
1472 "d589e4D//E9g6FBx9xCB7ehm5cqVUa9ZunSp3du4kg8+AJYtA3btArp3D31NQgLw5z8DEycC994L\n",
1473 "DBokd42q0dAA/O1vwMsvs899PiYW77wDjBzp7NqisWULcMMN7M9XX83W/P3vO7ee1lZmMoYPB664\n",
1474 "AvjLX+Te/9AhID8fqKsT/0JdUwMEAkBREfDww2Lu0dYGfPEFe+H6egSTa6CdsZwoLi7u8HlLC/Dd\n",
1475 "7wLPPw8ETcHtxJAhwKJFwL/9m7j1RSJ47U6ybRtw1VVAcvLlv7v55siOUJX1l5QwJw8AkyYB27cz\n",
1476 "pxkNUesvKwOys4HERCb0n38u5DZh13/4MBP6wYOBo0fF3Ftn925g/HggPR24cIG9CzSK0e9/WRn7\n",
1477 "XXabyAMk9NwI/mH5r/9ib++Mzp/64Q+B995jP0yyUUUoASb0wcesFhezd0XNzaEfo8L6m5qAY8eA\n",
1478 "ggL2eW4uc4BGOolFrX/fvsvvgoYPB8rLw38P7RBq/adOAX4/0K+fHKE/eJB9730+ZpzMxDdGv/8H\n",
1479 "DwIjRlhbn9OQ0Augqgr49a+Z2Buld2/gkUeAZ54Rty43EErou3cHhg0D9u51Zk1GKCsD8vJY3QVg\n",
1480 "glNQwMTBKb74Ahg1iv25a1f24nPggJx7627e55Mj9LW1gD4ROjeXRVa8OXkSSEvj/7wyIKEXwM9+\n",
1481 "xmKb/Hxzj/ve94A1a1hxNha5cAH47DOgsLDz1yZOBP7xD/lrMsqXX3Z2e/n5LKd2ivaOHmDr+/JL\n",
1482 "Ofc+dIi98AFAaipw8aK5OMUstbWXRVik0Kem8n9eGZDQc6a8HHj7beDHPzb/2IwMYNo0wMIkXk+w\n",
1483 "Zw8To6/P5+jAhAmsi0NVVBT6o0dZjKGTlcXebcpAd/SAHFdfW8vyecB8dGOUEydI6ImvWbIEWLgQ\n",
1484 "sDpJdsGC2BX6vXuBsWNDf82Njn7oUGeFvqoKaL83MTMTkHU4VWUle2HRkSn0GRms04c3J08C/fvz\n",
1485 "f14ZkNBzpLISeP114Ac/sP4ckyez53Ey23WKPXuAcIdHjRrFRLO1Ve6ajHLggFqOPhBg4te+4ysz\n",
1486 "U56jr6u7LLyAXKHv1w+or+d/D4puCADAb34DPPCAvVf9+HjgnnsAA9sTPMeePeEdfbdurFVQ1SkZ\n",
1487 "7TNpnbw8tt4o56QIoa4O6NOHFWF1Bg6U5+hPnOj4ezBwIBDiyF0uaBr7/9Uz+pQUMUIf/P/kJkjo\n",
1488 "OXHuHLB8OfDYY/af6847gbfesv88biIQYIXYSMfByiwmmuHsWdZKGBzX9ezJ9gPU1MhfU3BsA8h3\n",
1489 "9O07VFJTmSMWQUMD68xKTGSfk6PvDAk9J/78Z9bvPXiw/ef65jeZ8xK5lVs1jh1jLaYpKeGvUVXo\n",
1490 "KyrYu41QQ1mzs9nXZVNdzVx0e3RHb2QTl11OnOgo9P36iRP69rGNfi8S+o6Q0HNA04Df/Q549FE+\n",
1491 "z9elC9sNum4dn+dzA6GKmcGoLvShkFkAbU8oR9+zJxu50dAg9t4tLayVsk+fy38n0tEHC32PHmyz\n",
1492 "Gs/NYRcvsk1x7XdsuwkSeg787W9MnK+7jt9zzpjBdsrGCgcPsk1RkXCj0A8cKC8uaU8oodfXI/qF\n",
1493 "R3e+ce3UJTVVjMsGOgu9z8feGZ46xe8e9fXsnYJbj9IgoefA88+zXa08fwgmTwY+/JC5o1jg4EG2\n",
1494 "TT8Sw4fL29lphmPH1HP0oaIbfT2iX3hCFS1FRjfh7sfzhcXNsQ1AQm+bkyeBzZuB2bP5Pm9KCuvD\n",
1495 "Li3l+7yqYsTR9+vH3pKLjh7MoqKjDyf06enMAYskuBALXBZ6EfWBhobOhXAS+o6Q0NvktddYni4i\n",
1496 "u7v+ejb6NhYwIvT6wKrycilLMoyKGX24zT0iIxSd4EIswLpiEhKA8+f536+hofPvH2+hD/Vi4iZI\n",
1497 "6G3y0kusd14EN9zA8n+v09TEeqyNdCzl5KjXjaSiow/nQEV1pLSnri70i4yo+ObMmY6FX/1ePP8/\n",
1498 "z55153hiHRJ6G+zezX7IRE3JLSoCPvlEjAtSia++YiIfb+AYHBUdfbiYBJDbu96ecEIvsvtFJ5zQ\n",
1499 "i7r3mTOdHT3vYmxjY+cT4twECb0NXnqJHXkXJ+i72KMHcOWVrCjrZY4eZU7dCKo5+nPn2GapcCKQ\n",
1500 "nMzqCiInNwbT3MzaAUM5UBmO/tQpdp9gRMVGDQ1yHD0JfQzS3MzGFMybJ/Y+sZDTHz1qfKOZqMmE\n",
1501 "VtHnoIfruPL5mNuXuTu2vp6Jaqg1yXD04fJskdGNaEdP0U2Msm4dm8ti1Ila5eqrgb//Xew9nObo\n",
1502 "UeNn5ebkqBXdBPdwhyItTcw0xXBE6hCR4ehDOWxA3ItMqPslJzNx5gVFNzHKq6+Kd/MAG8+7axd7\n",
1503 "++9Vjh0z7uhVE/rjxy+fbBSO/v1ZJ4osIgm9LEcfSuh5u2ydUI6+Vy++Qk+OPgZpaAA++AC49Vbx\n",
1504 "9+rTh3V0iDrYWQXMRDfJyawXm+cvsR2OH4/u6FUSet3Ri5x3E07oe/cW8+8W6n69e/Oti1BGH4O8\n",
1505 "/TbLzmX9wxcWAh99JOdeTmBG6H0+dqCFkUO3ZdD+rNJwqBTddO/OmgcuXBB3/3BCn5zM/5jMixfZ\n",
1506 "u93u3Tv+PW9HT9FNDLJ6NZsZLwsvC31LCxPBUHNZwqGS0LvN0QPi4xuZQq/30AcXnkU4eopuYoj6\n",
1507 "emDHDuCmm+Td08tCX1nJTkEy0kOvI/Ps02gYcfSqCb3IgmxTE/uvPhu+PaKEPtSudHL0HSGhN8lf\n",
1508 "/sIO8O7ZU949R49m8YYquTRPzHTc6GRmusvRqxTdAOIPAQnl5gH+nTBA6F2xABP6xkZ+tQhy9DGG\n",
1509 "7NgGYDNCxo1T+3Bsq5jpuNFRKbox0l7phKMPtWFJR9RRe0Bkoe/dm7+jDzXnBmC/MwkJl99h2IWK\n",
1510 "sTFEbS3w8cdsVrxsvBrfmCnE6qgk9KEGeAUjW+ijDeDq04e/4La/dyRHLyqjDwWvLp+2Nlb0TUqy\n",
1511 "/1xOQUJvgjfeAGbO7Fzhl8GECWzujdewKvQqZPQXL7JicrS39LrQyzjCDwBOnw4vfoC3hD6cowf4\n",
1512 "FWQbG9m/sVsPHQFI6E3hRGyjM24csGePM/cWiRWhVyWjr69nMUg0AejWjblBWXP0jTh6UWuJJPTd\n",
1513 "uzN3zPMwnUiRCq+CrNsLsQAJvWGqqtimpWnTnLn/0KFsXorM4VgysCL0qanMGba2ilmTUfTj5Ywg\n",
1514 "K77RtMhiCzgn9D4f/4LsuXPh31HxcvRuL8QCJPSGWbMGuOUW5s6cID4eGDkS+OwzZ+4vgkAg8iz3\n",
1515 "cMTFMbGX2ckSCjNC36+fmO3/wZw7x1obExLCX5Oc7IzQA/wLsufOhe+A4+Xo3V6IBUjoDeNkbKMz\n",
1516 "dqy34pu6OvbL2KOH+cdmZIg/Ei8aZoRe1JyXYKLl84Bzjh7gn9NHEnpexVg9o3czJPQGOHoUOHSI\n",
1517 "nfjkJF4T+spKVli1goyzT6OhotAbOfJOZDE23AYmHd5CH0mE9V56u0R6MXELJPQGeP114LbbIr8d\n",
1518 "lsHYscCnnzq7Bp5UV5sbfdAeNwq96PHAgPOOPpr7daOjP3/e3a2VAAm9IVSIbQBgzBhWEPb7nV4J\n",
1519 "H2pq2PgDK6Sns12pTqJiRm/E0YvM6KMVLkUUYyNl9Dwc/YUL1uJFlSChj8KhQyxiuO46p1fCnFhq\n",
1520 "KnD4sNMr4UOks1ajQRl9aFRw9JEKlyKiGxmOnoTe47z+OnDHHeaGbonESzm9HaF3Y3Qjy9FHE/qk\n",
1521 "JNaaevEi//tHi25EdN1EyuhJ6Bkk9FFQJbbR8ZLQ241uSOg7YyS68fnEFWSjRTe9ejFx5kWk6KZH\n",
1522 "DybSdiGh9zhffskGRF1zjdMruczo0d45bcquo3dTRq9SdAOIGUcARI9uevbkK/SRohueQk/FWA+z\n",
1523 "ejVw111sg44qjBwJ7N/v9Cr4EEvRjUrFWEBcTh8tuuFVINWR4eipGOthNE292AZgoxCOHhWTr8qk\n",
1524 "rY0JZbTJj+Ho18/ZMQiBAHPPKSnGrlfN0YsQ+rY2oLk5sijydPStreyeoQ45ASi6aQ8JfRg+/5z9\n",
1525 "A//TPzm9ko507Qrk5ABlZU6vxB61tayDyGqRu0sX9niZ43/bc+YM++U3urdCz8RFt8ZG27CkI6LF\n",
1526 "8tw59j2JNOStZ09+jv78efZ84e5HQn8ZEvowrF4N3H23mqNJCwrcH9/YKcTqOJnT19dHPsUpmC5d\n",
1527 "WGwhakeqjtHt+rzPVNXvHW0mDM9ibKR8HmBfo4yeQUIfAk0DVq1SL7bRKSgA9u1zehX2sJPP6ziZ\n",
1528 "05vJ53VkxDdGhZ53Vm703jyjm2ijCSijvwwJfQh27WJi/41vOL2S0HihIBuLQi9yo5KO0dnpIoTe\n",
1529 "yDhfntFNpB56gKKb9pDQh2D1auDee9WMbQCKbnSc3B1rVehViW5EOXqVopvERFawtVsXIaEHsHHj\n",
1530 "RowYMQJDhw7F008/3enrJSUlSE5Oxvjx4zF+/Hj84he/sHtLoWga2w2ramwDACNGAAcPunvmTSw6\n",
1531 "epEzZgBjXS86sRDd+HwsW7fr6r2Q0dva2O/3+7Fo0SJs3rwZmZmZmDhxImbNmoWCgoIO11133XVY\n",
1532 "t26drYXK4qOP2JFno0c7vZLw9OjBRO7IESA/3+nVWIOX0Dt1jq6Kjt5I14uOU9GN7rLb2uyPFTEy\n",
1533 "PliPb+wcHBLzGX1paSny8/ORk5ODhIQE3HvvvVi7dm2n6zRZpyJzQO+dVzW20Rk50t0FWV5dN+To\n",
1534 "L2PmbFOnohufj5+rj5bRA/Zzek1jQu92R29L6KuqqpDd7hy4rKwsVFVVdbjG5/Nhx44dGDt2LGbM\n",
1535 "mIF9CquT3385n1cdt+f0PBy9GzN60UJv9CQkp6IbgF9B9ty56AJsV+ibmtjxoV26WH8OFbD15sln\n",
1536 "wPZeeeWVqKioQFJSEjZs2IBbb70VBw8eDHnt4sWLL/25uLgYxcXFdpZnmq1bmXiMGCH1tpYoKAA+\n",
1537 "/NDpVVijrY21GVrdFavjRkd/5IiY9QDmDrEWFd0YeUfBy9EbiVTsCr2K+XxJSQlKSkpMPcaW0Gdm\n",
1538 "ZqKiouLS5xUVFcgKOhuuV7ufvOnTp+Phhx/GqVOnkBJi73h7oXeC114DZs92dAmGGTYMePllp1dh\n",
1539 "jdpaJpJ2M9qUFOaQ/X75joscfWfOnTN2YhivzhujQm/nXirm88Em+Iknnoj6GFvRzYQJE1BWVoby\n",
1540 "8nK0tLRg9erVmDVrVodramtrL2X0paWl0DQtpMg7zcWLwF/+ona3TXuGDnXvGITjx9k7J7vExzPR\n",
1541 "EN2bHgqrjl5kMVYFoTciiryiGyPZOQ9Hr5rQW8GWp4qPj8fSpUsxbdo0+P1+LFiwAAUFBVi2bBkA\n",
1542 "YOHChXjjjTfwP//zP4iPj0dSUhJWrVrFZeG8ee89YNQoYNAgp1dijIwMlh8aOWhCNWprWezCg9RU\n",
1543 "NkrarOjaxcxAMx0Zjt7JYqw+eyYabotuYl7oARbHTJ8+vcPfLVy48NKfH3nkETzyyCN2byOclSvd\n",
1544 "E9sArHshP5+5+okTnV6NOUQI/fDhfJ7PCG1t7EXWiKi1RyVHr4utpvHrMDMqijzPcpXh6FXL6K1A\n",
1545 "O2PBfuA3bGCz593EsGHujG9ECL1M9AmRZgVStKM3U4yNj2fdJBcu8Lu/meiGl6MXLfQqZvRWIKEH\n",
1546 "sG4dMGmSuWmEKjB0KNsh6zbq6ux33Og4IfRW4zKVHD3AP74xGt3wLMbKEHpy9B7BbbGNjlsLsjwd\n",
1547 "fb9+rDAqk4YGYzPfg0lOZq5b1P5BMxk9wO/wbB2j0U2PHnxeYIzEKnZHFTc1sZ3ybifmhb6+nvXP\n",
1548 "33qr0ysxDwm9uxx9fDwbAcDzzNT2qODojQo9j8hIhqMnofcIb74JTJtm7hdEFfSM3kUTJgDErtAD\n",
1549 "YnN6p4XeyOwZgO+ceBJ6Y8S80L/6KnDffU6vwhp6S6FsobOL2zP6M2esC73InN5MMRZw1tHLEvqk\n",
1550 "JHvvHiij9wCHDwNffgnMmOH0Sqzh87kvvvH72fiD/v35PB85+ss46ehbWtiB6V27Rr/WrvjqGOmI\n",
1551 "SUpirtwq5Og9wIoVrAhr5IdTVdwm9CdPMrGzO/5Ap18/dwm9SEdvpRjL86BuoyOSZTr67t3tvaiQ\n",
1552 "0LucQABYvhz4znecXok9hg1zV4tlXR2/fB4gR98eJx290dZKgI/Qa5oxEbb77oGE3uVs3crcz7hx\n",
1553 "Tq/EHvn5wKFDTq/COLW1/PJ5AOjbl2XTbW38njMaqjp6JzN6M6MCeAh9czPb8BUXRcF4ZPQk9C7m\n",
1554 "lVeYm1f9gJFo5OaKHX3LG54dNwCbWtmnD5s9IwsVHb2mGTuIoz08hd7orliAT0ZvdDQBj4yeirEu\n",
1555 "5dw54O23gfvvd3ol9snNBb76yulVGIe30APy4xsVHf2FC6zWZKb24eboxmg3DGX0jJgU+jffBIqK\n",
1556 "+AuOE6SlsR9GkVvrecI7owecEXorO2MBcY7ebCEWcHd0Y1ToKaNnxKTQv/SS+4uwOj6fu+Ib3hk9\n",
1557 "IL/zRkVHb7YQC7g7ujE6bIyEnhFzQr9vH+tSCTofxdW4Tei94OhVy+jNFmIB56IbPTcPBKzfz0x0\n",
1558 "09xsffc4bZhyKS+8AMyfDyQkOL0SfgwZ4p6cXpTQyxps5vczUbM6MiM5WVx047TQG3X0cXFs5o+d\n",
1559 "IqlRAY6LY7WL5mZr9/GKo+e0bcUdNDWxkQcff+z0SviSmwscOOD0KowhKqOXdUi4fgB2tLa+cPTp\n",
1560 "Iy66cUtGD1zO6a3OejfjtPX4xopge0XoY8rRv/46cNVVQE6O0yvhi1s6bzSN75wbHZnRjd2jG73q\n",
1561 "6I0ONNOROYPGToslCb0LWbYM+N73nF4Ff9wi9A0N7C17YiLf55VZjLUr9KIcvQoZvRVHb+d+Zh29\n",
1562 "FWjDlMvYuxeoqHDvALNI5OQAR4/aK27JQEQ+D7jL0SclsQFgLS381gRYc/Q9egAXL/LZVSxb6M04\n",
1563 "eju99LRhymU8/zzw4IP8hmmpRFISGwVQXe30SiIjIp8H3CX0Pp8YV29F6H0+Jrg8DkIx014J2D98\n",
1564 "xMxZrlYdvd/PXgTdPPRQJyaE/tQpYNUq4LvfdXol4nBDfCOihx6QL/RWN0vpiMjprRRjAX7xjZn2\n",
1565 "SoCJryxHbzWj1/N5t49JAWJE6JctA265BRgwwOmViMMtQi/C0ScnM7GSMdjMrqMHLp8dyxMrjh7g\n",
1566 "K/Rei268UogFYqC9sqUF+N3vgI0bnV6JWNywaUqU0LcfbMbrQJNw8BD63r35RzdWirEAP6G3Et3I\n",
1567 "dPRWhN4rm6WAGHD0q1YBo0YBY8Y4vRKxuMHRi8roAdZ5I2PTFDn60JiNbnhk9KKF3kuO3tNCr2nA\n",
1568 "c88BP/qR0ysRjxt2x4rK6AEgJYXVYkTDy9GLEHqnM3ozjt5NGb0X8LTQb9nCcttp05xeiXjc4OhF\n",
1569 "RTeA+xy9Cl03AHsMj64blfvoKaP3uND/+tfAD3/ojap5NAYOZBk1j0OXReEFoT9zRk1Hbyej59Ve\n",
1570 "KTu6Ed1e6ZXNUoCHhf6jj4D9+4E5c5xeiRzi4tjGqfJyp1cSHpEZPUU31oS+Z0/7Qq9p5oQXcEcx\n",
1571 "1iubpQAPC/2TTwI//ak3NjsYReX45vx5tgHFjOszA0U31oXebkbf3MymwXbpYvwxlNHLxZNC/49/\n",
1572 "sJEH8+c7vRK5qFyQ1WMbUTGam4Set6NvaWHjL6zMEOLh6M3GNgD10cvGk0K/eDHw+OPslPhYIjcX\n",
1573 "OHzY6VWERsTUyvbIiG4CAevOuT28hV5fk5UXUR5Cb2XcMLVXysVzQl9SwrL5Bx90eiXyGTJE3Yxe\n",
1574 "ZD4PyHH0Z88yYTQTUYSCd3RjtRALOCv0qkc3tGFKUTQN+MlPgF/+MvbcPAAMHsymWKqIaEcvQ+h5\n",
1575 "xDaAOEdvBV7RjVmht5PR68Vfo26bHL3HhH7NGvb2+p57nF6JM8Sy0MuIblQWeiubpQA+7ZVmd8UC\n",
1576 "9hx9SwvrMjN6HChl9B4S+gsXgH/9V9Y7b/WYN7fTrx/7JeDduscDcvSX4R3dOO3oZWf0Zls5ydF7\n",
1577 "SOifeoodE3j99U6vxDl8vsuHkKiGaKHv2RNobbV+CLQReAl9r17sxVjT7D8X4LzQW4lu7Dh6s9m5\n",
1578 "nYyehF4hDh5kB4v85jdOr8R5Bg9WsyArWuh9PvHxDS+h79qVxQ68djHbLcba7aO3Et3YyejNCr2d\n",
1579 "6IaKsYoQCAAPPcQ2R2VmOr0a51E1pxc5/kBHdHzDY/yBDs8Jlk47eivRTfful/v/zWLF0VN043L+\n",
1580 "8Af2g/b97zu9EjVQVehFO3pAvNDzcvQA34KsnWKsLvR2YiQrQu/zWXfaJPTmcbXQl5WxzVHLl3vz\n",
1581 "LFgrqCj0fj+LVFJTxd7HLdENwLcga8fRd+3KRNfOYeVWdsYC1uMbK9FNU5P5FzMSegW4eBG4/37g\n",
1582 "Zz8Dhg93ejXqoGIx9tQpJmyiX4xlOHq758Xq8HT0djJ6wH6LpRVHD1gvyJoV+oQE9mLW2ir2Pirj\n",
1583 "WqF/7DGBCpV3AAAezUlEQVRg0CDg0UedXolaqFiMlRHbALEd3dgRers5vR2htxKpWLmflfjGS47e\n",
1584 "lYHHn/4EbN0KlJbGxqx5M2RksEhApR9SWUIfy9GN1YwesC/0VtorAXmOHrgs9Gb+/VT6HbKL6xz9\n",
1585 "X/8K/L//B7z1lv3hUl4kLg7IygKOHXN6JZchR98Zrzl6lTN6/V5me+lJ6B1i61bggQeAtWuBESOc\n",
1586 "Xo26qFaQJaHvjGpCb6eXXnZ0Y0XorXT40IYpB3j3XeDOO4GVK4HCQqdXozaqFWQpuukMz+jGbjE2\n",
1587 "lqIbM9CGqXZs3LgRI0aMwNChQ/H000+HvOaxxx7D0KFDMXbsWOzevdvU82sa65V/8EHgnXeAKVPs\n",
1588 "rtj7qFaQ9YKjDwSYoNrJwtujmqN3IrqRLfQU3VjE7/dj0aJF2LhxI/bt24eVK1di//79Ha5Zv349\n",
1589 "Dh06hLKyMrzwwgt46KGHDD//8ePArFms+LptGzl5o6gW3cjYFQswoRfl6BsbmTDxahFVZcMU4Fx7\n",
1590 "peyM3oyj11sxjU7IVB1bQl9aWor8/Hzk5OQgISEB9957L9auXdvhmnXr1mHevHkAgMLCQjQ0NKC2\n",
1591 "tjbi8544AfzbvwGjRgFjxwI7dwL5+XZWGluoJvQyo5v6en7DwtrDc/wBwC+68fuZ87QitDpORjdW\n",
1592 "M3orIxfM3MtLbh6wKfRVVVXIzs6+9HlWVhaqqqqiXlNZWRny+Z58Epg8GcjLA06fBj75BPjFL2Lr\n",
1593 "gG8exKrQJyYyB2Z3dksoeG6WAvg5+nPnmFu1M5rbbdHN+fPiHb2XNksBNvvofQab2LUgixXucZs2\n",
1594 "LUZ2NtsENXVqMXJyiu0sL2bJymJxSWurGm89ZQk9cDm+4d16y7MQC/AbasbjDNuePVlMagW/n+1S\n",
1595 "t+J+k5KAmhrzj5OR0avs6EtKSlBSUmLqMbaEPjMzExUVFZc+r6ioQFZWVsRrKisrkRlmzOS2bYvt\n",
1596 "LIf4moQElolXVbEOHCdpamJCwKuIGQ09vhk8mO/z8hb63r35RDd283nAXnulLrpWNi6q3F6pstAX\n",
1597 "FxejuLj40udPPPFE1MfYim4mTJiAsrIylJeXo6WlBatXr8asWbM6XDNr1iysWLECALBz50706dMH\n",
1598 "6TIqczGOKp03J04wNy9rB7OozhsRQq+So7ca3VgdaAao3V6pstBbwZajj4+Px9KlSzFt2jT4/X4s\n",
1599 "WLAABQUFWLZsGQBg4cKFmDFjBtavX4/8/Hz06NEDL7/8MpeFE5FRJaeXGdsA4jpvRAh9YyMrHNt5\n",
1600 "EXRa6K123ADWxwfLEHovbZYCOMy6mT59OqZPn97h7xYuXNjh86VLl9q9DWGSWBV6PbrhDW+h79KF\n",
1601 "Ccm5c/aE2u5mKcBee6UdoZft6M0YAC9tlgJctDOWMIcqu2OdcPRuEHqAT3zjtKO32loJ2Oujp/ZK\n",
1602 "c5DQexRVHH1tLUU34eDRecOrGGvH0dvJ6FWNbsjRE65AlWJsXZ2cXbE6boluAD6dN047eieiG1l9\n",
1603 "9OToCeUZNAiorLR2+DJPKLoJD4/ohkdG72R0Y9bRt7ayn2mz+0Os9NGToyeUp3t3Fg1Y3QjDC690\n",
1604 "3Zw5w3dnLMBnDAIvR2+1j95udGPW0esCbLZTyWxGT46ecA0qFGSp6yY8qhRju3ZlbZ5WDgi3215p\n",
1605 "VuitjiagjJ7wLCoUZL0U3fB29LyE3m4x1uez3mJpJ7rp3p29uJiJF+0IvZnohhw94RqcLshqGtsZ\n",
1606 "27+/vHv27cviEJ61CU3jP70SUCe6Aazn9HaiG5/PWqRCjt48JPQexmlH39DAflm6dZN3z/h4JjwN\n",
1607 "Dfyes7GRCRLvAXGqFGMBe0JvZ0Sy2fjGSg89QBk9Cb2HcVroZcc2OrzjGxH5PMCvj95Jobcz6wYw\n",
1608 "30tPjt4aJPQexulirJNCz7PzRpTQ8+qj5zEZ1InoBjDv6K300Ov3oYye8CR6Ri/ixCUjyDpCMBje\n",
1609 "nTcihV4lR2+lxdJOMRaQ5+i7dmU9+G1txq4nR0+4ht692Q+4qAOzo0HRTWTsRjea5o3oxmxGb0WA\n",
1610 "fT5zrp4cPeEqnMzpvRLdnD7Nunl4Yze6aWpixWceRWI77ZUyoxs7R/yZyenJ0ROuwsmc3imhj5Xo\n",
1611 "hpebB5zL6M1GN1YzeoAcPeFhnOylp+gmMnajG16FWMBedOOG9krAXIslOXrCVVB0Yx9RQt+zJxM5\n",
1612 "v9/a41Vw9LIzelknWpGjJ1wFRTf2ESX0cXFMtKxOjuS1WQqwJvSaZs9hA9aiGxlCT46ecBXk6O3T\n",
1613 "0CCmGAvYi2+cdvRNTayrq0sX6/e10kdvR+gpoyc8iVMZfUsLEyJRAhkJ3hn96dNiHD1gr/OGd0Zv\n",
1614 "to/ebmwDyC3GGs3o29pYnNa1q7X7qAgJvcfp14+Jrt2NOWY5cQJITWXxhGzcEt0A9jpveDp6K+2V\n",
1615 "djtuAPmO3ojQ6+fFmp15rzIk9B7H53Mmp3cqtgFYHNLUxHZC8kCk0Ls5uuHl6GV13RiNbryWzwMk\n",
1616 "9DGBEzn98eNARobce+r4fCwy4pXTi3b0VqMbp4uxdlsrATWLsV7L5wES+pjAiZzeSaEH+MU3gQAT\n",
1617 "NN6HjujEuqOXGd0YzejJ0ROuxAlHX1vrrNDz6rw5e5aJmahag92M3skNUzwyetk7Y8nRE57FiYze\n",
1618 "aUfPq/NGZMcNYL/rhhy9uXtRRk94lljL6AF+0Y3IfB6wF93wzOi7dWNthWYK2LwyetVGIJCjJ1xJ\n",
1619 "LGb0vKIb0UKviqO3ckC47OgmEACam62LsJn2SnL0hOvIyGBiYuaEHbuoIPS8HL3ITV92MvqzZ/kW\n",
1620 "ic3GN7Kjm6YmIDHRer2EMnrC08TFAdnZwLFj8u7ptNDHQnRz5oz7hd5MdGOnEAtQRk/EADJz+qYm\n",
1621 "9iFSIKPBK7pRuRh79iy/rhvAmtDbzei7d2dxTCAQ/Vo7hVj9XuToCU8jM6fXWyud3ELOM7oRLfRW\n",
1622 "HL2mOS/0PDL6uDgWxxhx2naFnjJ6wvPIdPROxzaA96ObCxfY0C0exwjqOBHdAMYLsnZHIpvJ6Eno\n",
1623 "CVcis5deBaHn2XUjuhhrJbrh7eYBZ6IbwHhBloejN5rRU3RDuBKZ0Y0qQu8GR9+jB8uo29rMPY53\n",
1624 "IRZg7ZVmRhXziG4A4wVZu8VYMxk9OXrClciObtLT5dwrHN27Xz4ByQ6ihd7nY87c7Cx4VRw9D6E3\n",
1625 "GqnIzOjJ0ROuJDOTFUl5je6NhAqO3ufjE9+I7roBrMU3Ihy9kxm9StENOXrCtSQkAAMGAJWV4u+l\n",
1626 "gtADfOIb0Y4esFaQVcXR88joZQl9YqKxVk5y9ISrkZXTqyL0PDpvZAi9lRZLFRw9r4zeTDeMHaGP\n",
1627 "i2MzfZqbo9+HHD3hWmTl9KoIvd3opqUFuHiR3zyZcFiJbpx29IEAv35zWcVYwNiLCjl6wtXIEHpN\n",
1628 "Y7UAp4uxgP3o5tQp9q5A9MYvq9GNk45e3z3KY06/rGKsfq9oOT05esLVyOilP3uW1QN4ZLd2sRvd\n",
1629 "1Nez5xCN1eiGt6M3M72Sh+jqyMroAWMtluToCVcjI6NXJbYB7Ec39fXsOURjNboR4eiNtnny6rgB\n",
1630 "5Aq9kXcP5OgJVyMjuqmuVkvoeUQ3orES3Yhw9GaiG55C37OnWkJPjp5wNYMGsfZKI5MCrVJVxXr2\n",
1631 "VYBHdCPL0butvZK30Bu5Lw+nTRk94XkSE5n41dSIu4dKQm83upHl6N24YYpnRm/0vpTRW4eEPsYQ\n",
1632 "ndNXV6sl9G5w9G7cMOWEo5cR3bS1sXe8PKeCqoBloT916hSmTp2KYcOG4cYbb0RDQ0PI63JycjBm\n",
1633 "zBiMHz8eV111leWFEnwQndOr5OhTUtzj6FVor0xMZCMyjAxY86rQ627eybMURGBZ6JcsWYKpU6fi\n",
1634 "4MGDuOGGG7BkyZKQ1/l8PpSUlGD37t0oLS21vFCCD7Eo9Jpm7fEqd92IKMb6fHILozqyhT5SRu/F\n",
1635 "fB6wIfTr1q3DvHnzAADz5s3D22+/HfZazepvGsEd0b30Kgl9167MpVo9k1VWH73Z6CYQYKInYseu\n",
1636 "0RZLtxZjo2X0XsznARtCX1tbi/Svtz+mp6ejtrY25HU+nw9TpkzBhAkT8Mc//tHq7QhO5OQAR46I\n",
1637 "ee5AgPXRDxgg5vmtYKcge+qUml03jY3M2fLYlRqMUdH1anTjVUcfH+mLU6dOxfHjxzv9/S9/+csO\n",
1638 "n/t8PvjChFrbt2/HgAEDcOLECUydOhUjRoxAUVFRyGsXL1586c/FxcUoLi6OsnzCLLm5wFdfiXnu\n",
1639 "EyeYO+3WTczzW0EvyA4ZYv6xMh29mehGRD6vY0Z0eb2gG7lnWxv7sPuzlZTEBtWFww2OvqSkBCUl\n",
1640 "JaYeE1HoN23aFPZr6enpOH78ODIyMlBTU4O0tLSQ1w34+qehf//+uO2221BaWmpI6Akx5OQAx44B\n",
1641 "fj/QpQvf51YpttGx00svy9EnJjIRa2lhcVM0ROTzOkaFvrERyM+Xd0/dzdstkiYlsc6wcLjB0Qeb\n",
1642 "4CeeeCLqYyy/+Zs1axaWL18OAFi+fDluvfXWTtdcuHABjV8HfufPn8f777+P0aNHW70lwYHERCAt\n",
1643 "Daio4P/cKgq91ejmwgVWxJXh7vRTpozGNyo4+sZGfi82iYnsRS5Stw+v4i9l9CZ5/PHHsWnTJgwb\n",
1644 "NgxbtmzB448/DgCorq7GzJkzAQDHjx9HUVERxo0bh8LCQtx000248cYb+aycsIyo+EZVobfi6HU3\n",
1645 "L6vNzkxBVrSjN1KM5dnHb6Tbh8eIYiD6QeT6VE6vETG6iURKSgo2b97c6e8HDhyId999FwCQm5uL\n",
1646 "Tz/91PrqCCHk5QGHDwPXX8/3eauqgIED+T6nXaxGN7LyeR0zLZYiNku1X4dsoQcuv5MI907F7qEj\n",
1647 "7e8T7QWFV5FZJWhnbAwiytGrtCtWx2p0I6uHXqdvX3Y+rRFERjdGC8OihD4cvKKbaPfh2U2kEiT0\n",
1648 "MQhFN9GRVYjVMSP0IqMbo+8sSOjdBQl9DKJHN7xRUejdEt2Qo1dD6Hnu+FUJEvoYJNYcvZXoJlYd\n",
1649 "vZGisKaxa3juzDUiwDyKseToiZghNZUNrzIqLEZoamIFM5niaASr0U2sOnoj0c3Fi6xThufGuGjH\n",
1650 "GPJ09JGKsST0hGfw+Vh8w9PVV1eznZKqTf2zGt3EsqOPJvROjEjm2XVDjp6IGXjHN5WVQFYWv+fj\n",
1651 "Rd++7Je3tdXc41R39CKLsdGiG56bpXSiCXBjI5+oqGtXNpOppSX01ymjJzxFbi7fgmx5ORuvoBpx\n",
1652 "ccyZnzhh7nGy2yvNzM5vaGAvDCJQ1dHzume0zVnk6AlPwTu6UVXoASA9HairM/cYWYeO6Jhx9KdO\n",
1653 "eU/oe/WK/E6C57uISC8qJPSEp8jLA8rK+D2fykKflgaEmaIdFpU3TJ0+Le5FyEh0I0Loo92XZ5dP\n",
1654 "NKGn6IbwDMOH8xX6o0fZ6VUqkp5uTugDAXUdvd/P3K2orpvERPbf5ubw1/BurQSMCb0MR08jEAhP\n",
1655 "kZ3NXKvRw6CjobKjNxvdNDSwX3aZc/X79GGRSSAQ+Tq940bEoSM60eIbJxw9RTf2IKGPUeLi2Dxx\n",
1656 "Hq6+rY1tlsrOtv9cIjAb3dTVscfIJD6ebQiKNlBMZD6vE62XXoTQG3lxoejGOiT0Mczw4cDBg/af\n",
1657 "p7qabcJS6WSp9piNbmpr5Qs9YCy+EZnP60TbHetURi/a0QcC7jh4xAok9DHMsGHAgQP2n+foUXVj\n",
1658 "G8C80Dvh6AFjLZaqOHrZGb2M6EY/dIT3yWsqQEIfwwwbxsfRq5zPA+YzeqeE3si4htOnxQt9tBil\n",
1659 "oYHVFGTeU0Z049V8HiChj2mGD+fj6FUXejdk9ACLv06ejHyNjG6gaKIr4sVG76PXtM5fa2lh3UZ6\n",
1660 "R5BdIgm9F/N5gIQ+ptEdfahfLjOUl6vbWgkw0T5xInpHi47KQi/D0aekRK4ViFhD166sIB2qrVOP\n",
1661 "bXjNUSJHT8QU/foBCQnmd40Go3pG37UrixqMjkFQWehlOPpotQIR0Q0Q/p2ErJHIXu2hB0joYx4e\n",
1662 "BVnVoxuAnWVbU2Ps2ro6luvLRhVH37dvZKEXtYZwBVneQ9TCHYBO0Q3hWewWZP1+oKICGDSI35pE\n",
1663 "MHAgawM1Ajl6+dENEF7oebdz9uoVXujJ0ROexG4vfU0NEwZehTJRmBX6/v3FricUqalqdN1Eim6a\n",
1664 "m9mLu4hec1nRjb4LOZgzZ8SNlnAaEvoYZ9gw4MsvrT/+yBH1YxvAuNDrJ2XJnHOjY8TRnzgh/kUo\n",
1665 "ktDrLzQiDpiRFd0kJ7M6QzANDST0hEe54grg88+tP76sDBg6lN96RDFggDGhr6lx7qQsI0IvI1aK\n",
1666 "tENX5DsKWdFNJEcvosisAiT0MU5+PusxjzZjJRxlZexdgeoYLcZWV7NrnaBfPyb04dpd/X4mRk52\n",
1667 "3YgWehnRDTl6Iubo0gUoKLDu6g8edI/QG3H0Tgq9vv0+3OlH9fVMZEVv0e/Th4mr39/5ayKFPtyM\n",
1668 "Hd7zffT7BL+gkqMnPM2YMcDevdYe65boxg1CD0SOb2QVibt0YQ46lLsW1UMPsOcNFRnx7jRKSGB7\n",
1669 "K4JfUMnRE55m9Gjgs8/MPy4QYOfOukHo09NZIbOtLfJ1Tgt9//7hN7DJKMTqhMvpRTr6cLN+RLSU\n",
1670 "hsrpydETnsaq0FdVMQfkht7jhARWxIzm6p0W+owM4Pjx0F+T2d8fLqf3itCHyunJ0ROeRo9uzM68\n",
1671 "OXDAHfm8zqBBbFxDJJwW+gEDwgu9TEfvdaHv06ez0JOjJzxNWhrLLKuqzD3uiy9Ye6ZbGDwYOHYs\n",
1672 "8jVOC31GRvjuIBUcfX29uK4f2Y4+OLohR094HisF2c8/B0aNErMeEURz9JrGXuycdvThhF6mo09N\n",
1673 "DT0ErrZW3BygcEIv4sUl2NFrGu2MJWIAKzn9F1+4S+ijOfrTp9lZuk7+skcTelmOPiMj9Ax/kULf\n",
1674 "ty8T3/bjpFtbWXeM6DNqz59n72q7duV7H1UgoScAmHf0muY+oY/m6PUpnE7sitWJJPQyZ/CEKwqL\n",
1675 "nOwZH8/aOts7bb2dM46zUgU7ei+7eYCEnviaK68EPvnE+PWVlWyDT79+4tbEm2iO/sgRYMgQeesJ\n",
1676 "RaRibGUlkJkpZx3p6Z3XEQiIf1cRHN+ImtYZ7OhF7g9QARJ6AgAwciTLpyONp23P3r0s7nETuqMP\n",
1677 "112kwlx9/SDz4DUGAuzfJytLzjpCRTenTrFWWpHxhiyhJ0dPxCTx8czVf/yxses//hiYMEHsmniT\n",
1678 "nMzGKYc7P7a83HlHn5jIDr8ILkqeOMFyalnjoEM5epH5vI5MoW9varzcWgmQ0BPtuOoqoLTU2LWf\n",
1679 "fOI+oQciz99XZeRyqJy+ogLIzpa3hvR0lse3L4zKOHmrX7+ObZ2ihD74HYvItlEVIKEnLlFYCOzc\n",
1680 "aezajz8GvvENsesRQaSjE1Vw9ACrJQQXjSsr5cU2ANCtG3tn0d71OuHoRQlwcLFZH0/tVUjoiUsU\n",
1681 "FQHbt4eeWtie6mqgpYUJktsI5+g1TY2MHgByc9kMofbIdvRAZzGUIfTB/fvV1WIEOHhjGgk9ETOk\n",
1682 "p7OPaG2WO3cCEyc624ZolXBn5B47xjJa3v3aVsjLA776quPfVVTIdfRAaKEX3cefmcneveiIeoHr\n",
1683 "0we4eJGdJgaQ0BMxRnExUFIS+ZoPPmDXuZHhw0NHN59/rs44h1COvrJSvqMPLsjW1DDxF0lwbCVK\n",
1684 "6H2+ji9kJPRETFFcDGzZEvmakhL3Cn1eHhOSixc7/r1K4xxyczs7+mPH5Dv6IUM6ruPQIfb9E8mg\n",
1685 "QR33OoiMrNrvWSChJ2KKqVOZY9ff0gZz6hTrTrnySrnr4kViIotvgsc9qObojxy53PGi70IuKJC7\n",
1686 "juCYS8YhM9nZbL+A388+amrEbRIjR0/ELCkprG1y06bQX9+0iRVtExLkrosnEyd2biNVSeh79GA9\n",
1687 "/3qxsLqafb9FF0KDaV+4bmxkx++J3pnbrRv7GaypYSKcksL+TgR6G+v582ymDm2YImKKW24B3n47\n",
1688 "9NfeeAO44w656+FN8H6B5mYmaCNHOremYIYNA/btY3/+7DNndiHrjl7TWGyTn89/5kwo9JxedKeR\n",
1689 "7uh1N+/G5gKjWP5nW7NmDUaNGoUuXbpg165dYa/buHEjRowYgaFDh+Lpp5+2ejtCInfeCaxdy1xc\n",
1690 "e86fB95/n70QuJlgod++HRg7ljlpVfjmN4EdO9ifnRL6fv2Y+J08KfdsYD2nr6hgfxaF7ui9HtsA\n",
1691 "NoR+9OjReOutt3DttdeGvcbv92PRokXYuHEj9u3bh5UrV2L//v1Wb6k0JdFaVRQmeO2ZmazY+tpr\n",
1692 "Ha9bswaYNEm9QWZmv/ejRrFfbv1YwU2bWG3CKUKt/+qrnRd6n+/yBrNIQs/7Z1939EeOiBX6ggJg\n",
1693 "927g3XdLhN5HBSwL/YgRIzAsyjlypaWlyM/PR05ODhISEnDvvfdi7dq1Vm+pNF4SegBYtAh49lkW\n",
1694 "awCsMParXwE/+YnctRnB7Pc+IQG4/fbLL2Tvv6+e0E+axPYrtLYC27Y5N25i1CjgH/9g74DCdSXx\n",
1695 "/tmfOBH429+A9euByZO5PnUHCgtZJLV6dYmj//4yEJq4VVVVIbtdyJaVlYUqs+fVEY5w/fWsOPnz\n",
1696 "n7OMdskStlnGrW2VwcydCyxfDmzYwKKJwkKnV9SR1FR20tUPfsBm0I8d68w6vvMd4De/AT78ELjt\n",
1697 "Njn3vPlmNmLj00+BG28Ud5+EBNZYUF4OzJwp7j4qEB/pi1OnTsXxEMOxn3rqKdx8881Rn9zn5epG\n",
1698 "DPD737NfgDffZI5++3bvFKyKilhxccYM5hxV7CJ6/nlg+nRg2TLn1nDNNaxoec01bESxDLp3ZwX/\n",
1699 "c+fET+ucOpW9oMjuaJKOZpPi4mLtk08+Cfm1v//979q0adMuff7UU09pS5YsCXltXl6eBoA+6IM+\n",
1700 "6IM+THzk5eVF1emIjt4oWpiTHCZMmICysjKUl5dj4MCBWL16NVauXBny2kOHDvFYCkEQBBGE5Yz+\n",
1701 "rbfeQnZ2Nnbu3ImZM2di+vTpAIDq6mrM/Drwio+Px9KlSzFt2jSMHDkS99xzDwpkb+8jCIKIcXxa\n",
1702 "ODtOEARBeALHd8a6eUPV/PnzkZ6ejtFuOzz1ayoqKjB58mSMGjUKV1xxBX772986vSRTNDc3o7Cw\n",
1703 "EOPGjcPIkSPx05/+1Oklmcbv92P8+PGGmhtUJCcnB2PGjMH48eNx1VVXOb0cUzQ0NODOO+9EQUEB\n",
1704 "Ro4ciZ1GT91RgAMHDmD8+PGXPpKTkyP//lqov3Kjra1Ny8vL044cOaK1tLRoY8eO1fbt2+fkkkyx\n",
1705 "detWbdeuXdoVV1zh9FIsUVNTo+3evVvTNE1rbGzUhg0b5qrvv6Zp2vnz5zVN07TW1latsLBQ27Zt\n",
1706 "m8MrMsdzzz2n3XfffdrNN9/s9FIskZOTo9XX1zu9DEvMnTtXe/HFFzVNYz8/DQ0NDq/IGn6/X8vI\n",
1707 "yNCOHTsW9hpHHb3bN1QVFRWhb9++Ti/DMhkZGRg3bhwAoGfPnigoKEC1vl3UJSQlJQEAWlpa4Pf7\n",
1708 "keKigz8rKyuxfv16PPjgg2EbGtyAG9d+5swZbNu2DfPnzwfA6onJLp1qtnnzZuTl5XXYsxSMo0JP\n",
1709 "G6rUoby8HLt370ahajuHohAIBDBu3Dikp6dj8uTJGKnSZLIo/OAHP8AzzzyDOBmTwgTh8/kwZcoU\n",
1710 "TJgwAX/84x+dXo5hjhw5gv79++OBBx7AlVdeiX/+53/GhXCzuRVn1apVuO+++yJe4+hPGG2oUoNz\n",
1711 "587hzjvvxH//93+jp6xdMZyIi4vDp59+isrKSmzdutU1oyj++te/Ii0tDePHj3elI9bZvn07du/e\n",
1712 "jQ0bNuD3v/89tm3b5vSSDNHW1oZdu3bh4Ycfxq5du9CjRw8sWbLE6WWZpqWlBe+88w7uuuuuiNc5\n",
1713 "KvSZmZmoqKi49HlFRQWyZB+jE+O0trbijjvuwLe//W3ceuutTi/HMsnJyZg5cyY+/vhjp5diiB07\n",
1714 "dmDdunUYMmQIZs+ejS1btmDu3LlOL8s0A74e+9i/f3/cdtttKA0e9K8oWVlZyMrKwsSJEwEAd955\n",
1715 "Z8QpvKqyYcMGfOMb30D//v0jXueo0LffUNXS0oLVq1dj1qxZTi4pptA0DQsWLMDIkSPxL//yL04v\n",
1716 "xzQnT55EQ0MDAKCpqQmbNm3C+PHjHV6VMZ566ilUVFTgyJEjWLVqFa6//nqsWLHC6WWZ4sKFC2j8\n",
1717 "epb1+fPn8f7777umAy0jIwPZ2dk4+PXJKps3b8YoVc6SNMHKlSsxe/bsqNdx2RlrlfYbqvx+PxYs\n",
1718 "WOCqDVWzZ8/GBx98gPr6emRnZ+PJJ5/EAw884PSyDLN9+3a8+uqrl9rjAOBXv/oVvvWtbzm8MmPU\n",
1719 "1NRg3rx5CAQCCAQCmDNnDm644Qanl2UJN8aYtbW1uO3rSWdtbW24//77caPIKWSc+d3vfof7778f\n",
1720 "LS0tyMvLw8svv+z0kkxx/vx5bN682VBthDZMEQRBeBz3lvsJgiAIQ5DQEwRBeBwSeoIgCI9DQk8Q\n",
1721 "BOFxSOgJgiA8Dgk9QRCExyGhJwiC8Dgk9ARBEB7n/wOimSfhIIMDngAAAABJRU5ErkJggg==\n"
1426 "iVBORw0KGgoAAAANSUhEUgAABK8AAAMQCAYAAADhP0bKAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\n",
1427 "AAAWJQAAFiUBSVIk8AAAIABJREFUeJzs3Xm8JGV97/FPMTMMM8My7DsOggIiIpoS96XcjXG3o6Ci\n",
1428 "YlySGDVJZfHqjWYxNymviTc3iV6jaNSIjUZNTNyw3KOxFFBRFAGRfWeAgRlmq/vH8zzn9Jw5p08v\n",
1429 "VfU81fV9v16+yj6nTvdvzgzndH/79/tVVJYlIiIiIiIiIiIiIdrDdwEiIiIiIiIiIiJLUXglIiIi\n",
1430 "IiIiIiLBUnglIiIiIiIiIiLBUnglIiIiIiIiIiLBUnglIiIiIiIiIiLBUnglIiIiIiIiIiLBUngl\n",
1431 "IiIiIiIiIiLBUnglIiIiIiIiIiLBUnglIiIiIiIiIiLBUnglIiIiIiIiIiLBUnglIiIiIiIiIiLB\n",
1432 "UnglIiIiIiIiIiLBUnglIiIiIiIiIiLBUnglIiIinRNF0VejKNoZRdExHmu4Moqinb4ef1xRFL3N\n",
1433 "fs/O8l2LiIiIdIvCKxEREQlWFEVn2MBkaxRFh1d89+Uij7cmiqJvRlH0yyiKTqz48UaqoQUmqjmK\n",
1434 "ogdEUXRVFEVfj6JoddVFiYiIyOxSeCUiIiIh+217XAm8puL7jhb52AOARwJHA0+v+PG67unAUcCj\n",
1435 "MN9nERERkZEovBIREZEgRVF0GvBw4Hb7oVdHUbSy5oe9EPgg8CXgYzU/Vtd8DPgy8AHgIs+1iIiI\n",
1436 "SIsovBIREZFQvd4e3w18FzgMeEGdD1iW5c6yLF9ZluVTy7K8YeHnoyjaYMcYvzLsfqIo+qA977H1\n",
1437 "VdsuZVleV5blk8uy/I2yLNs4LikiIiKeKLwSERGR4ERRdADwImAHcA7wfvup317yi5ql8EVERESk\n",
1438 "IQqvREREJESvAvYCzi/L8mrgXGAz8Mgoik71WJdCKxEREZGGKbwSERGRoERRtAfwOnvz/QBlWd4F\n",
1439 "nGc/5rP7arEl71WeLyIiIiILKLwSERGR0DwTuA9wC/DpgY+70cEzoihaX9eDR1H0Vbuv6piBj+2M\n",
1440 "omgncIX90OPdx+z/zomi6G0D573MnveVBecds/DxlqnlYXZ/1pVRFG2JoujmKIq+GEXRmRX9WR8a\n",
1441 "RdF7oyi6NIqiu6MoujOKoiKKot+PomivZb72hVEU5VEUbYyiaFMURT+MouitURStGfI1O6Mo+sUi\n",
1442 "H3+5/dybI+OVURR9N4qiO+zHT7TnXWm/v0RRtEcURS+LouhzURTdGEXRvVEUXR1F0blRFD1j2u+N\n",
1443 "iIiIhKPuK/aIiIiIjMt1Vn2kLMvt7oNlWX4jiqKfA/cDzgb+d401LBwP/Jr92BrgdOAOzJUJnUuA\n",
1444 "G4Gv2tsnAYdirqq3ceC8LaM8eBRFK4B3Mb+0/ibge8A+wBOAJ0VR9Grg2WVZblz8Xobe/yrg/wCv\n",
1445 "sR+6A7gYWAWcAjwUeF0URc8oy/JnC758ZRRFHwdeiAkYL8Ys03+g/d/Toyh6XFmW25Z4+GGjlxHw\n",
1446 "z8CZmO/bT4A9yrL86eDXR1F0EPBZ4GHANsz3/zLgGKAH9KIoOh94cVmWtw79ZoiIiEjw1HklIiIi\n",
1447 "wYii6ATgSZiA4/2LnHKOPb4uiqI6R/J2ue+yLJ9QlmWCWSIPcGFZlsnA//66LMsPudvAF+x5b1xw\n",
1448 "3k0jPv7fYYKrGzABzGFlWT66LMtTgcMx34fHAJ+a8PvwT5jg6hbgDOCgsixPL8vyIcBRmADpWObH\n",
1449 "Nwf9EfAs4OyyLA+xdR0PPAq4FXg4k492Ps/W8xbgsLIsH1GW5ekLzokw39/TgD8BDi7L8sFlWT6q\n",
1450 "LMujMd+XH2D+HX1xWCeYiIiItIPCKxEREQnJb9ljUZbljxf5/IeAncB9gac3VtW82ndYRVH0OOC1\n",
1451 "wJXAg8uy/Pjg58uyvKUsy7OBTwKPw3QpjXP/TwVeCtwFPK4sy3PLstyx4P5fDjylLMs3LnIXxwOv\n",
1452 "KMvynMEPlmX5beDN9mZvnJoGnAb8SVmW7yjLcuuQ8x4IPKssyz8ry/LOBXV8C3g0JsA6DXjrhLWI\n",
1453 "iIhIIBReiYiISBCiKNobOMveXKzrirIsrwf+0970ubi9Tm+yx99dplPrT+3xVWPe/xvsMSvL8pKl\n",
1454 "TirL8vwlPnVRWZbnLvG5T9rjiWPW5NwK/NUI5/2fsiy/sNQny7K8GzNaCvD65fZ3iYiISNgUXomI\n",
1455 "iEgoXobZ6XQ38LEh57lg66lRFB1Xe1UNsldafBKwA/iPYeeWZfkjzL6n0+3XjXr/j8OMZQ77Hg+z\n",
1456 "ZF1lWd4G3I75e5zEBUN2Zc09DPCe5e6oLMsLMLuw1gGPnbAeERERCYDCKxEREQmFGxn8RFmWm4ac\n",
1457 "9x+YBebRwNfMigOBtcAK4N4FVyrc7X+YBet7AgeNcf9rgB1lWV4+YY3XLfP5TUw+XnntCOdsGaP2\n",
1458 "n9jjfSasR0RERAKgqw2KiIiId1EUJZgr9AGcFUXRWcPOH/DyKIreUpblPTWV1jR3Jb5twLd8FjLE\n",
1459 "3ct8ftjVBEVERETGpvBKREREQuD2V92LWSQ+igOB9ZiF5e+roygPbsWEQ6uBXy3LcnMN978FWB1F\n",
1460 "0XFTdF/5tNcYtbtA9Moa6xEREZGaaWxQREREvIqi6GjgWfbm68uyPGSU/wGfsV8zM6ODZVmWwBcw\n",
1461 "bzC+uIb73wl8FTPW96Kq778hEfDqZU+KotOAB2DGGL9ed1EiIiJSH4VXIiIi4tvrMM9JbgE+PMbX\n",
1462 "vcseHxRF0WMqr2px2+1xuYXk7rx9J3iMd9rjX0RRdMxSJ0VR9Ogoij5ir9I4jnfb4x9EUXTCkPv/\n",
1463 "tTHvt0lviqLoyUt9MoqidcA/2Zt/V5blvc2UJSIiInVQeCUiIiLeRFG0GniVvfnecUKGsiy/CXzf\n",
1464 "3vztYecudRcTfO5mYCtwahRFD3QfjKLo0AXnXWWPZwycs08URWuXLaosvwP8LXAo8O0oip4/eDVB\n",
1465 "ez+/D3wJ+HXgCcvd54L7/wImJNwH+EYURS+OomjFwP0fHEXRh4HPRFH0f8e57wb9APhsFEVvjaJo\n",
1466 "v8FPRFH0aOCbwGnABcCfeahPREREKqTwSkRERHz6dcyV8rYCfz/B17vuq+dGUXT4mF877Ip4i37O\n",
1467 "hmvnYsb6vhtF0XeiKLoceM+CU8/FLF1/URRFV0RRVGCu0nf8iLX9HqYD6zDgPOAW+1g/Am4E/hq4\n",
1468 "B3hxWZb/PuJ9DjobeC/me/9R4LYoioooii4ErsHsEbsM+JsJ7rtuJfB04IfA24Gboyj6YRRF/xVF\n",
1469 "0bWYEcFTgfOBp5RlucVfqSIiIlIFhVciIiLi029hwoh+WZY3TPD15wHXAiuA14zxdSVLd1cN+xyY\n",
1470 "ms8B7gROwYRUX9zlDsryUuC5mIDlUGADphvoxgWPs3gBxh8ADwXej1m0fgpwJPAT4E+BE8uy/MSQ\n",
1471 "OpdUluX2sixfB5wOfAC4ATgROBa4CEiBUxYsRV/u+zJ43tgljXVyWd6Cqf1s4GuYkO80YAfwSeDZ\n",
1472 "ZVk+pSzL2yaoRURERAITmb2gzev1ekcA/wFs6Pf7+4/xdYdi2r+fDhwAXAH8336//95aChURERGR\n",
1473 "IERRdCVwdFmWK5Y7V0RERGaHl86rXq/3QOA7wIMY4522Xq+3HtMK/gTgbcALgM8C7+71en9ZfaUi\n",
1474 "IiIiIiIiIuLTyqYfsNfrPRHTzv1T4NPAS8f48j8F1gOn9vt9N1rwuV6v93Pg//V6vXP7/f4PKi1Y\n",
1475 "RERERERERES88dF59TLMlYGeCIy8h6DX660GzsKMCC7ciXEOcCXw6opqFBERERERERGRAPgIr14L\n",
1476 "PL3f79895tc9BHNJ5/9Y+Il+v18CnwMeP3V1IiIiIiIiIiISjMbHBvv9/uYJv9RdWvqnS3z+UuA3\n",
1477 "JrxvEREREREREREJkJeF7RM6ANje7/fvWeLzG4E9e73e2gZrEhERERERERGRGrUpvNoH2DLk8y7U\n",
1478 "2q+BWkRERESkeSNfpVpERERmR+Njg1O4C9hryOddx9UdDdQiIiIiIg0ry/JY3zWIiIhI89oUXt0G\n",
1479 "rOz1emuXGB3cD9g6ZKxwUV/+8pf1Dp6IiIiIiIiISA2e+MQnRtPeR5vGBi+3xxOW+PyJA+eIiIiI\n",
1480 "iIiIiMgMaFPn1QWY0cFnAhcOfqLX60XA04AvTHrnVSSBIpPo9Xplv9/38u8vzvKHAe8GHm4/dAPw\n",
1481 "GeDTwH8BdxdpsiPO8jXA6cDjgecAp9rzfwi8qUiTvMm6pRo+/+1J8+IsfxPwLmAz8AbgPsATgEcC\n",
1482 "PwFOK9Jka1P16N/f7ImzfC3mudijgcuAw4F1QK9Ik/N81jZI//amE2f5U4HPD3zoG8DjijTRNMMy\n",
1483 "mvi3F2f5a4D3DHzoPkWaXFXnY3ZVnOWnYV6jAvwIeGyRJhs9ljRU6D/74iz/C+DN9ubLijT5sM96\n",
1484 "pBpVTroF23nV6/X26/V6a9ztfr+/BfgQ8Pper3fogtNfDhwLvK+5CkXaK87ylXGW/w3w35jg6gbg\n",
1485 "FcBRRZq8tkiTzxdpcmeRJjsAijTZXKTJV4s0eRvwEOAlwNXAg4Dz4yx/U5zlwf4yFOk6+2Lznfbm\n",
1486 "WUWavK9Ik7cAT8SEDA8A3uirPmm/OMtXAh/HBFfXAk8CUvvpf4yzfOFzN2kh+7v+bfbmXwI3A48B\n",
1487 "XuSrJpkXZ/lq4C325rX2qL+b+sQD//8U4FP270Am8ysD///NcZYHm1WIH0H+g+j1euuAK1jQYQX8\n",
1488 "T2Aj8I1er3d2r9d7Rq/X+wvgH4B39vv9ixouVaR14izfH/hPzAvVbcBfAfcv0uSDLqwapkiTnUWa\n",
1489 "fBQzwvvnQITp5nh3nOUr6qtcRCYRZ/l9MaHCHsCfDXbAFGmyBfgte/NP4iw/xkOJMhueg+mOvw14\n",
1490 "SpEmvwTeC3wZOBB4j97kmAlPwbzpdQvwDuCP7cezOMv39laVOGcDR2G6gF5vP3aGv3Jmnguv/ha4\n",
1491 "HjOh8M8KXcZnfz881N68FbMS6Hn+KpIQ+f4Pq2TxSx5vw/wA2KXFtd/vbwQeC3wd+FPgPOBZwO/1\n",
1492 "+/0/rLdUkfaLs/xETLfVk4GbgCcUafJHRZrcNe592W6stwJnAlsxT5I+aUcMRSQcv4e5qMm/Md8x\n",
1493 "MadIky9ifp+uxTwBF5nEM+wxK9LkJ2De7ABeiVn78Bzg6Z5qkwrYF5dvtzf/ukiTTcA5wPeAI5kf\n",
1494 "9xEP4izfC/gf9ubbMG9UbgROjbP8JF91zbiH2eMnMD/f7gJ6mOfZMp5jMG903IppWAH4H3rTQwZ5\n",
1495 "Da/6/f7b+/3+AYt8fGu/339gv99/yiKfu6Hf77+q3+8f2e/31/X7/VP6/f4/NFOxSHvFWf4gzB6r\n",
1496 "+wE/AOIiTb417f0WafIvmHdiNwLPBj6kd5xEwmDD5DPtzbfYMGExbwI2Ac+Ns/xXGylOZoZ9cfFU\n",
1497 "e/Nzg5+zu3beZW/q31a7PRWz//IWzNSDCyhdh8+bNDLl1W8AR2Ce4326SJN7gX+1n3uxt6pmlN3x\n",
1498 "dzKwA7iwSJMfYFbcgBkhlPG4rqvvAx/ArDR5MPNvjIh477wSkQbEWX4C8CVgf+CzwKOqXN5ZpMnX\n",
1499 "MF2RdwIvBN5a1X2LyFSej+m6Koo0+dFSJxVpci3zHRW/20RhMlNOxrxovgFzIY+FvmyPj2usIqnD\n",
1500 "a+0xK9LkbvfBIk2+A/wc2AtQh48/r7HHtw+8UfEv9niGOlgqdxqwAvhxkSb32I/93B6P91NSq7nw\n",
1501 "6nt2pYHb0/kW/dsVR+GVyIyLs3wDcD5wCPBF4AWDTzqrYl8YvwjYCbwtzvIXVv0YIjK2s+3x/SOc\n",
1502 "+35gO/C4OMsPqq8kmUFPs8cvLHHFue8CW4CT4yw/uLmypGKn2eNnFvmc2zv74IZqkQFxlq/C7CKF\n",
1503 "Xa8E+VVMqHwcuy7Dlum5fVfFwMcus0eFV+Nz/z6/b4/vxYwQPpxdF+NLhym8Eplh9upO52OWd34T\n",
1504 "eK5tI69FkSafA37f3vxQnOUPHXa+iNQnzvLjMMtjNwPnLnd+kSa3AznmneRn1VqczBo3MviFxT5p\n",
1505 "f+982958bCMVSaXiLF+P2UmzhfkX6IN+YI+nNlaUDNoArASuKtJks/ugvRBP397U6GC1XKDy3YGP\n",
1506 "uc6r+zVcS6stWNb+fQC7U++3gccXafLdpb5WukXhlciMsu/CnYd5t+37wDMH2prr9LeYDo41QN/u\n",
1507 "BBCR5r3SHs8r0uSOEb/mk/b4/BrqkRkUZ/k6TCBVYsbTl/I1e9ToYDu5HT4XL3FlYnVe+XV/e7x0\n",
1508 "kc+5Ny+e2VAtXeGWtQ92Xv0SswPraLtAX0YzuKx9bq1JkSbn2tUkIoDCK5FZlgGPAa7DBFejvnid\n",
1509 "ih0Z+U3M3pP7Yq4MKiINirN8JfBye3OUkUHn05jR3yfHWb5f1XXJTHocsCdmT8ktQ85TeNVuD7LH\n",
1510 "xXaawUDnlfbTeOFGBn+2yOcutMdj7e8GmVKc5ftjRgO3ABe7jxdpshUTYEXAsX6qa6W5rqslRs9F\n",
1511 "AIVXIjMpzvIzgTcA2zA7rm5o8vHtL++zMS+C3xRnuWbVRZr1VMwC7Z8D3xj1i4o0ucmevwq9Sy+j\n",
1512 "GToyOOC/ga3AKXGW73alaQnecuHVtZiuif2BoxupSAYt2Xlll19fhxkrPKrJomaY2890UZEm2xZ8\n",
1513 "TqOD43Pfz+95rUKCp/BKxL+3L3/K6OIsPxV4n735O0WafHvY+XUp0uR7mMuj7wG8P87yPX3UIUNV\n",
1514 "+m9PgvJye/zABO9iukur1z06qH9/s8GFV58fdpLdw/PfmI6Ex9Rd1DL0b298Q8Mr+3NGe6+WV9e/\n",
1515 "vWGdVwBX2KO6gaqx2L4rJ+Sl7aH+7Ntl35XIUhReiXjW7/ffVtV9xVm+Bvg4Zt/UBzFX6vDpT4DL\n",
1516 "Mbsy/tBzLbJAlf/2JBx2LOQp9ubHJrgLF149ze4zqoX+/bWfvZrtCcAdmGBqOUGMDurf3njiLN+D\n",
1517 "+Z1XPxpyqvZeLaPGf3vDdl4B/MIe71vT43fNYvuunGDDqxB/9i22rF1kKQqvRGbLOzAvJC4BftP3\n",
1518 "3LhdEP8b9uZb4yzXkyaR+p0G7AtcVqTJL8f94iJNrsEEEWuAp1Vcm8wW13V1fpEm20c4P4jwSsZ2\n",
1519 "LLAOuG6ZvWbqvPIgzvJ9MGPi9zKw7HoB13ml52HVcJ1Xi4VXbmwwuPAqUIsuaxdZjMIrkRkRZ/nj\n",
1520 "gTdirnLyssFLJftUpMlXgA9jduiE2q4sMksSe8ynuA9ddVBG8QR7/OKI538bs4vxwbogQKsst+/K\n",
1521 "cZ1XCq+a5XYrXbbElSBhvvNKY4NTirP8CExYeCfzQdUg13mlnVej0bJ2GZnCK5EZYN91O8fe/Au7\n",
1522 "byok/xPzguXMOMtPWe5kEZlKleHVM3V1KhnC/Twf6XdOkSZ3YzoV9gAeXVdRUrlRw6ufYn7XH2+f\n",
1523 "l0gzlhsZBHVeVWmu66pIk52LfP5KzAWLjomzfHVjVbWXlrXLyBReicyGdwIbMJdD/gu/peyuSJMr\n",
1524 "Mfu3IgKsT2RW2AsjuGXYX530foo0uQLzYmcf4OTpK5NZY/+t3R8oMaHFqDQ62D4jhVf2SsM/tjf1\n",
1525 "RlVz3LL2YeGVOq+q4wLAnyz2ySJN3PjmHpjn5jKcG6/88dCzRFB4JdJ6cZY/Dng15hLkL7NPHkP0\n",
1526 "58A9wK/FWf5I38WIzKjTMbuqLi7S5MYp7+s79viIKe9HZtP9gJXAFXa/4ai+bo/6d9Ueo3Zewfze\n",
1527 "Ky1tb47rvFrqSoMA12GeJx4SZ/ne9Zc00w63x+uHnKO9V6M7xB5v8FqFtILCK5EWi7N8FfD39uY7\n",
1528 "ijS52Gc9w9gX0n9jb77DXl1ERKrlRga/UsF9fdseH17BfcnscR15i3YfDOHeXT+xwlqkJjboOA4z\n",
1529 "DjgsHHG096p5y3Ze2fE2dV9V4zB7HBZeae/V6Fx4dZPXKqQVFF6JtNsbMC8gLgf+ynMto3gncDtm\n",
1530 "XOTJnmsRmUVV7Lty1Hklw7jwatxRj2sxXbgHxVl+QLUlSQ1Oxoz8XzJiZ7c6rxpk3wgcpfMKFF5V\n",
1531 "xXVeDesUcuGVOq+Wp/BKRqbwSqSl4iw/Cnibvfn6Ik22eCxnJEWabAT+2t78A5+1iMyaOMvXYoKm\n",
1532 "kvm9QtP4AbAFuH+c5QdWcH8yWyYKr2wHiOsQOWHYuRKEcUYGYT68OiXO8hU11CO7OhSzm/B24NZl\n",
1533 "ztXS9mqM0nmlscER2AvCHIh53rLcv18RhVciLfYuYB3wr0WafM53MWN4D3A38MQ4yx+03MkiMrJH\n",
1534 "AauAC4o0uX3aOyvSZBvzV/85fdr7k5kzaecVzHeIKLwK31jhVZEmtwFXY3bvaWSqfnMjg0WalMuc\n",
1535 "q86raozTeaX/BoY7yB5vKdJkh9dKpBUUXom0UJzlTwJeiBm9eKPncsZiu68+YG++yWctIjOmypFB\n",
1536 "R3uvZDf28u/3w1wOfpwrDToKr9pj3M4rGOi+qrgW2d2oI4Ogzqup2ausHgjsAG4ecuovMN1EG+zX\n",
1537 "yOI0MihjUXgl0jK2Df+d9uafF2lytc96JvRuzC/1M+IsP2y5k0VkJHWEV9p7JYu5P7ACc6XBzRN8\n",
1538 "vcKrFrD7lCYJry63x/tUW5EsYtll7QPUeTW9Q+3xRjsCvSi7yuMqzGtt/XewNIVXMhaFVyLtcybm\n",
1539 "Kj5XMX/1vlYp0uRy4NPAnsBvei5HpPXiLN8P+BVgO/DNCu/ahVena3+NDJhmZBDmu7UUXoXtYGA9\n",
1540 "sJHxLmPv3lQ7uvKKZKGJOq90xeeJjTIy6Ghp+/IUXslYFF6JtEic5WuAP7c339KGJe1DuODtdfbP\n",
1541 "JSKTewjmd/qFRZpsqupOizS5DhOU7wOcVNX9SutNG165LpHjFYoGzYVPV42wT2nQNfZ4VMX1yO5G\n",
1542 "7rwq0uQOzGL3Ncx3EMl4RlnW7mjv1fIUXslYFF6JtMvvYJ5MXgR81HMt0/omZhn0QcBLPNci0nYP\n",
1543 "scfv13Df2nslC00VXtmA9VpM9+2GimqS6rnwatz1BOq8akCc5auY31912bBzB7juK40OTmaczitd\n",
1544 "cXB5Cq9kLAqvRFoizvKDgDfbm+mwWfs2sO/ivsve/B21sItMxYVXF9Rw39p7JQtN23kF82NO9x96\n",
1545 "lvik8CpsG4CVmM64e0b8Grf3SkvbJ+PCq1E6r9z3WjuvlubCq2HL70XmKLwSaY+3APsCny/S5Hzf\n",
1546 "xVTkk5hfWA/E7OsRkcnUGV6p80rmxFm+F6aTYCej7dlZipa2h8+N/V0z9KzdXY/593GorrRWK/f3\n",
1547 "c9UYX6POq+mMMzboApmDaqplFqjzSsai8EqkBeIsPwp4HeYKfX/ouZzKFGmyFfiwvfkKn7WItFWc\n",
1548 "5ftgAoDtwMU1PMRFwFbgAXGWr6/h/qVdTsA8f7xsyr2LCq/CN1HnVZEm2zEv7iPgiKqLkjlub9U4\n",
1549 "y/TnlrZXXEtXjDM2eIs9Krxa2sH2qPBKRqLwSqQd3ozZDdIv0mScy1W3wTn2eIYWt4tM5FTMi8SL\n",
1550 "izS5t+o7t/fpOroeVvX9S+tUMTIICq/aYNKxQZjv1tLoYH1ceHXjGF+jscHpjNN5pfBqeeq8krEo\n",
1551 "vBIJXJzl9wFehem6ervncipXpMnFQAHsBzzXczkibVTnyKDjFsE/qMbHkHZQeNUd04RX7mt0xcH6\n",
1552 "uCBlnPBKY4PTGafz6jbMc/f94yxfWV9JrabwSsai8EokfG8GVgH/UqTJJb6LqckH7FGjgyLjq/NK\n",
1553 "g44LKk4eepZ0QVXh1VXAvcARdvRVAhJn+R7AkfbmtRPchZa212+SscGrMIHK0dpHNh57YaGRO6+K\n",
1554 "NNmBCbAi4IAaS2ulOMvXAntj1hLc6bkcaQmFVyIBi7P8WOCVmMWnf+q5nDqdC2wBnhhn+QbPtYi0\n",
1555 "TROdVwqvxKkkvLIv7Nyl5HXFwfAcirmS3S1Fmmye4Os1Nli/sccG7a7RqzGBiq6CN54DMG8mbxxj\n",
1556 "359GB5c2t+/KXoFcZFkKr0TC9hbMk8ePFGlyqe9i6lKkyUbgXzFPps7yXI5Ia9g9cQ/ABNx17sOb\n",
1557 "C69sR4Z0UJzlqzG7cnYCVfxO0uhguKYZGRz8Oo0N1meSsUGY/7s5cuhZstA4I4OOwqulaWRQxqYn\n",
1558 "oCKBirP8vpggZwfwZ57LacLc6KBeHIuM7EHACuCSIk3uqetBijS5FfOEfS16t77LjsY8d7ymoosD\n",
1559 "KLwKV1XhlTqv6jPJ2CDMhwUHDz1LFnLh1SjL2p2b7VHh1e4UXsnY9AJRJFwp5kXpR4s0ucx3MQ34\n",
1560 "CvBLzAvjR3uuRaQtmhgZdDQ6KC64vLKi+1N4FS7XMXXN0LOW5r5OnVc1sG/yuRf/43ZeuUBF4dV4\n",
1561 "xrnSoOM6r/S93p3CKxmbwiuRAMVZfhhmeXkJ/C/P5TSiSJOdwMftzRf6rEWkRRReSZM22OMvK7o/\n",
1562 "hVfhmrbz6npM5/ihdtxUqrU/Zv/SnWPsX3IUXk1GY4PVUnglY1N4JRKmNwGrgU/P8BUGF9O3xxfE\n",
1563 "Wb7CayUi7dDElQYdhVdSV+fV/TUuHpypwiu7kP86e1O7lao36cggKLya1CSdVxobXJrCKxmbniiI\n",
1564 "BCbO8v2B19mbf+mzFg8uAH6BeYLwKM+1iATNdjOcYm9e1MBDKrySDfZYSeeVvVjHzZhdaocvc7o0\n",
1565 "a9rOK9DoYJ3GvtLgABeoHDL0LFloms4rBYW7U3glY1N4JRKe3wL2Ab5cpEnhu5gm2Uvluu6rns9a\n",
1566 "RFrgZMzYyKVFmtzVwOO58Ookdcl0VtWdVwBX2aMWe4dl2p1XoKXtdZomvNLC9slMsrBdY4NLU3gl\n",
1567 "Y9OTT5GAxFm+FniDvfkOn7V4dJ49Pl+jgyJDNbnvynXJXAesAY5t4jElOBvssaqdVzAfcKg7JxD2\n",
1568 "d+8R9ua1U9yVwqv6uBG2aTqvFF6NZ5qF7QqvdqfwSsam8EokLGdjfsF9F3P1vS66ALgC8yRBVx0U\n",
1569 "WdoD7fEHDT7mxQseWzoizvKVmN1FJdONki2kgCM8h2OudnxjkSb3TnE/Ghusj3ZeNW+SsUHtvFqa\n",
1570 "wisZm8IrkUDYdzrfaG/+lR2h65wFo4O66qDI0k6yxyYv6qC9V911JCbQuH7KQGMhBRzhcUHiNCOD\n",
1571 "oGCyTtMLQem7AAAgAElEQVSMDbpuoAM1Aj4aOxmxL7AVuH2ML9XOq0XEWR4xH17dPOxckUH6gSUS\n",
1572 "jmcD98V0HX3Gcy2+udFBXXVQZGkPsEeFV9KEDfZY5cggKOAIURXL2ge/Xn+31Zt4bLBIk63AHZgw\n",
1573 "ev8qi5ph7vt9w5hvLm/CBF5rbQAmxnpgJXBnkSZbfBcj7aHwSiQcv2ePf2svMd1lFwKXY95ZfIzn\n",
1574 "WkSCE2f5PphOla2YwLspCq+6q45l7TDf3aOAIxyuC27a8EpddfWZZmwQdMXBcU2yrN1NE8x1ulVa\n",
1575 "UbtpZFAmovBKJABxlj8ceCSwETjHczne2V/2rvvqeT5rEQnUifZ4aZEm2xt83J+4x1dXZOdssMe6\n",
1576 "Oq8UcISjqs6rG4HtwMFxlu815X3JrqYZGwRdcXBckyxrd7RjbHcaGZSJKLwSCcPv2uN7izTZ5LWS\n",
1577 "cLjRyWfa2XgRmedj3xVFmtyJeUG7GjiuyccW7+rqvLoOswT+CLsUXvyrZOeV7SK/zt5UOFkRu6dq\n",
1578 "2vBKgcp4JlnW7uiKg7tT55VMROGViGdxlh8LPB/z7uTfeS4nJAXmydWxzL9QFxHDS3hlaXSwmzbY\n",
1579 "Y6WdV3b/zo2Y56SHLXO6NKOqzqvB+1B4VZ39MfuC7phiX5DCq/FM03ml8Gp3Cq9kIgqvRPz7Hcx/\n",
1580 "i+cWaXKt72JCYd+x/U9785k+axEJkM/w6mJ7VHjVLXV1XoEWe4emqp1Xg/ehv9vqTNt1BQqvxjVN\n",
1581 "55X7Xiu8mqfwSiai8ErEI7t0+Wx7810+awnUZ+1R4ZXIrtR5JY2xY0rH2JtX1fAQWtoeiDjLV2Fe\n",
1582 "qJfMj/xNQ3+31Zv4SoMDtLB9PFV0XikonOe+FwqvZCwKr0T8OgvYB/hGkSYX+i4mQF/EjFM+Ks7y\n",
1583 "A3wXIxKCOMv3xOybKoFLPZTgHvN+Hh5b/DgcWAXcVKTJPTXcv0bLwnEEEAE3FGmyrYL7099t9aro\n",
1584 "vNLC9vG4KwXeMvSsxWlscHfqvJKJKLwS8cS+k/3b9qZ2XS3CLof+GuZn1dM8lyMSivsBK4ArijTZ\n",
1585 "7OHxL7dHLWzvjg32WPWVBh1154Sjyn1Xg/ej8Ko6LryaZITN0djgePa3x9sn+FqFV7tTeCUTUXgl\n",
1586 "4s+TgBOAa4FPe64lZBodFNmVz5FBME827wbWqyOyM+rcdwXaixSSKvddwfyLU42nVUc7r5rnwquN\n",
1587 "E3ytdl7tTuGVTEThlYg/r7fHf6yoNX9WufDq6bqMugjgObwq0qQELrM31X3VDRvsse7OK3Xn+OcW\n",
1588 "U1ex7woUktShyp1X+ntZRpzlEbDe3pym80rf63kKr2QiCq9EPIiz/L7ArwJbgfd5LidoRZpcBvwM\n",
1589 "88ThkZ7LEQnBA+zRV+cVaHSwa9R51R1Vv6hUSFK9KscGD7JrLGRpazE7/zYXaXLvBF+vscEB9t+b\n",
1590 "69q+zWct0j76YSXix29hFqKeW6SJ3nVYnkYHReb5HhuE+fDqeI81SHNceFVX59V1mAsQHG6vdif+\n",
1591 "VH0VsI2YC6/sE2f56orus+umHhu0IcxdwErmu4pkcdOMDALcao8H2S6urtsH8xpoU5Em230XI+2i\n",
1592 "8EqkYXGWrwNeaW9qUftoFF6JAHGWr8DsyoMwwit1XnXDBnusJbyyo/M3YF7QHL7M6VIv13l189Cz\n",
1593 "RmTHjDU2Va0qxgZBVxwc1TQjgy4ovBNzoRUFhbCvPd7htQppJYVXIs07A/PL6ztFmnzPdzEt8S1g\n",
1594 "E3BSnOVH+i5GxKP7AHsB1xVp4vOJn8KrjrCdAnV3XoFGB0NRdecVaHSwMnbkygWM04ZX+nsZzTRX\n",
1595 "GnQ0OjhvP3u802sV0koKr0QaZF8EvM7e/AeftbSJfVf+a/bmk3zWIuJZCCODoIXtXXIIJjC9vUiT\n",
1596 "Ol9saGl7GCrtvFpwXwpJprc/ZtTvjiJNtkx5X/p7Gc20Y4Og8GqQC6/UeSVjU3gl0qwYOA2zoPA8\n",
1597 "z7W0zZfsUeGVdFko4dXVwDbgiDjL13iuRepV97J2R51XYVDnVdiqGhkE/b2MqorOq7kF+VPWMgvc\n",
1598 "2KA6r2RsCq9EmuW6rs6p4B2zrjnfHp+khZfSYUGEV0Wa7GA+zLivx1Kkfk2MDII6r7yLs3wvzDLl\n",
1599 "bVTbFaGQpDpTL2sfoL+X0Uy188rS3rd56rySiSm8EmlInOUHAC+yN9/rs5aW+glwPeZdx5M91yLi\n",
1600 "SxDhlaUrDnaD2zN4zdCzpqfOK//cC+ub7aL1qigkqY4Lr26o4L5cd90hQ88S7byqlsIrmZjCK5Hm\n",
1601 "nIXZG/KlIk1+7ruYtrFPpOe6r3zWIuLR/ezxUq9VGFra3g3u6n/X1/w4Cq/8q2Pf1eD9Kbyanjqv\n",
1602 "mqedV9XS2KBMTOGVSAPsmNtr7c1/9FlLyym8ks6Ks3xfzBPfzcB1nssBhVddcYQ91v1vTmOD/rnw\n",
1603 "qsp9V6CQpEoKr5pXxdigvtfz1HklE1N4JdKMJwD3B64F/t1zLW3mwqvHx1m+p9dKRJrnQqIrKh7p\n",
1604 "mZSuONgNTXVeXQ/sBA7Tz3dv5sYGK75fvXCvzoH2eGsF96W/l9FobLBaCq9kYgqvRJrxant8X5Em\n",
1605 "271W0mJFmlyH2X21DjjdczkiTXO7pS4belZz1HnVDa7zqtbwqkiTbZg9PhHzgZk0S51X4XNBym0V\n",
1606 "3Jf+XkajscFqaWxQJqbwSqRmcZYfBDwX847yBzyXMws0Oihd5UKiy4ee1Zxf2OOGOMtXeq1E6uSC\n",
1607 "pCZGVbX3yi8XYii8CtcB9jhNF5Az9/eiqzgPVeXVBhVeqfNKpqDwSqR+LwH2BD5fpMnVy50sy/qS\n",
1608 "PT7ZaxUizQsqvCrSZDNmFHolcIzncqQGcZavwbxw20Y1Y0rLcXuvFF75UdfC9tuAEtg/zvJVFd93\n",
1609 "11TWeWV/hm8CVjEfKMjuqhgbVIA7T+GVTEzhlUiN7DtZr7I3/8lnLTPka8AO4GFxluvJlnRJaGOD\n",
1610 "oNHBWee6rm5oaM+alrb7VUvnVZEmO5gPPw8cdq4sq4ogZZBCleVVMTa4ETOBsZ8CXI0NyuQUXonU\n",
1611 "6+HAyZgngp/1XMtMKNLkLuA7wArgMZ7LEWlSUJ1Xlpa2z7YmRwbB7LyC+SuqSbPq6rwavE+FJNOp\n",
1612 "cmwQ9PcylL14xFrMm6abJr2fIk12Mh/W7Dvs3A5Q55VMTOGVSL1c19UH7TJaqcbX7PGxXqsQaUic\n",
1613 "5XthulF2AFd5LmeQOq9mW1NXGnRutEeFV37UtfMKFJJMLc7yFZjgo6S6F/76exlubt9VBd2n7u9M\n",
1614 "4ZWh8ErGpvBKpCZxlu8LvMjefL/PWmbQ1+1R4ZV0xbGYq7BdGVgQ7sKr44eeJW3VyJUGByi88kud\n",
1615 "V2FzQcoddhSzCvp7Ga6KkUHHdV51feWFxgZlYgqvROrz65hW468XaXKp72JmzH9hdgc8NM7yvX0X\n",
1616 "I9KAEEcGQZ1Xs67psUEXXh0y9CypXJzl6zDPWe4F7qrhIRSSTK/qkUGY77LTf3OLq+JKg07nO69s\n",
1617 "F/memIuAbPFcjrSQwiuR+mhRe03s3qsLMFc5e7jnckSa4DqbQg2v7qtLrc8kjQ12hwuVbq5pOb/C\n",
1618 "q+lVdqXBAe7v5aAK73OWVLkgX51X88HdHQ1dBERmjMIrkRrEWf4g4GGYd1k+6bmcWaW9V9IlrrMp\n",
1619 "pCsNUqTJ7ZhxinXoReksanps0HWBHBxnuZ6jNst13tSx7woUXlWh6isNDt7X+qFndVeVY4Ou86rL\n",
1620 "4ZX7s2tkUCaiJwYi9TjbHj9apMk9XiuZXdp7JV0S6tggwC/t8WivVUgdGh0bLNJkK+bF9ArgwCYe\n",
1621 "U+bMdV7VdP8Kr6ZXx9igC2UUXi2uysCw82ODaFm7TEnhlUjF7Dz3S+1NjQzW55v2+PA4y1d7rUSk\n",
1622 "fqGODcL81Q+P8VqF1KHpsUHQ6KAv6rwKXx1jgwqvhqty55XGBgfGBr1WIa2l8Eqkes/FPMG4oEiT\n",
1623 "C30XM6uKNLkN+BGwGjOiKTKT4ixfCWywN6/wWMpSFF7NIPumwIHADurrxlmMwis/XKik8CpcdYwN\n",
1624 "KrwaTmOD1dLYoExF4ZVI9bSovTkaHZQuOBpYBVwX6Bjy1fao8Gq2HGaPNxRpsrPBx1V45YfrvNLY\n",
1625 "YLg0Ntg8jQ1WS2ODMhWFVyIVirP8OCABNgMf81xOFyi8ki4Ied8VqPNqVjW9rN1ReOVH3Z1Xt9jj\n",
1626 "gVrGPzGNDTZPY4PVcsGdOq9kIvrlIVKtV9rjeUWaVNFiLMO58OpRdrRKZBYFeaXBAQqvZlOjy9oH\n",
1627 "KLzyo9bOqyJNtmGCkj2Y7yCS8dQxNjg3yqZQcVF1jA2q80qdVzIh/ZASqYgNT15hb77fZy1dUaTJ\n",
1628 "DcClwDrgNM/liNQl5GXtoPBqVvlY1g4Kr3ypu/MKNDo4LRf6VdZ5VaTJdmAT5jXh3lXd7wypMjBU\n",
1629 "55XCK5mSwiuR6jwN82T/58A3PNfSJa776nFeqxCpT+hjg9djlnofpit/zhSNDXZL3TuvBu9b4dVk\n",
1630 "6ui8Ao0ODlPl2KAWtmtsUKak8EqkOmfZ4weKNCm9VtItLih8lNcqROrjOq+CHBu079xfa28e5bMW\n",
1631 "qZTGBjsizvKI+fBKnVfhUnjVPC1sr5Y6r2QqCq9EKhBn+YHAs4AS+Ijncrrm2/b4CPsEXGRm2H/T\n",
1632 "97U3Q+28Ao0OziKNDXbH3sBqYHORJnfX+DgKr6ZT+digpfBqEXYHWJVhi8YGFV7JlBReiVTjRcCe\n",
1633 "wJeKNLnGdzEdcxnmKkaHAhv8liJSuUMxO91uK9Kk6nfbq6Twavb4Hhs8RG9INKaJritQeDWxOMv3\n",
1634 "BNZiRrQ3VXz3Cq8Wty8QAXcWabKjgvtz4dW+Hf7ZprFBmYrCK5FquJHBD/osoovsiOZ37M1H+KxF\n",
1635 "pAau6+oXXqtYnsKr2eNlbLBIky2YFzarmB/ZkXq5MKnOfVeD96/wanxz42s1rKZQeLW4Ssc0izTZ\n",
1636 "CmwBVmCCyC5S55VMReGVyJTiLD8ZiDFPtj/tuZyuUngls+o+9nilzyJGoPBqhsRZvgoTMOyk/m6c\n",
1637 "xWh0sFnqvApfXSODoPBqKS682jj0rPF0fWm7wiuZisIrkem5rqtzizTZ7LWS7prbe+W1CpHqKbwS\n",
1638 "Hw6zx5sqGpcZl8KrZrkwSeFVuOpa1g4Kr5ZSx/e860vbNTYoU1F4JTKFOMtXAi+xNz/ks5aO+y6m\n",
1639 "Q+DUOMu72oots2mDPf7SZxEjUHg1W3xdadBReNUs13mlscFwKbxqnvt+VPk97+zS9jjLVwD72Jt3\n",
1640 "+axF2kvhlch0nox5kv9z5rt/pGFFmmwCfgSsBH7FczkiVWpd51WHF9HOEl9XGnQUXjVLnVfh09hg\n",
1641 "8+ocG+xi59VccOWpo1dmgMIrkem83B4/WMMCTRmPCw8f7rUKkWptsMegO6+KNLkD847yWuZfZEl7\n",
1642 "+brSoKPwqllNd14dpJB7bOq8al4d3/POdl6hkUGpgMIrkQnFWb4/8BygBD7suRzR3iuZMfbFneu8\n",
1643 "Cjq8sjQ6ODs0NtgtjVxt0F5JchPmSpJd7DyZhntTQOFVc+oYG+zywnYta5epKbwSmdyvA3sCXy7S\n",
1644 "5Grfxch8eKV3dGVGHAysATbazqbQKbyaHRob7JYD7fGWBh7LBQH7Dz1LFnLfL40NNkdjg9VSeCVT\n",
1645 "U3glMrmX2+MHPdYg8y7DPPE+lPlRK5E2a1PXFcyHV0d7rUKqoPCqW+rcp7SQwqvJaGyweRobrJbG\n",
1646 "BmVqCq9EJhBn+YnA6ZirZXzKczkC2J1j37E3NToos2CDPV7psYZxqPNqdrgdSDcOPas+Cq+apfAq\n",
1647 "fFrY3jyNDVZLnVcyNYVXIpM5yx4/XqTJPV4rkUHaeyWzpK2dVwqv2s+FV3VffW4pc+GVxsDrZS9f\n",
1648 "vx9mf2cTLyoVXk2mzs6ruUAlznK9NpxXx9ig6zrS2KDIBPQDSmRM9oney+zND/msRXaj8EpmiQuv\n",
1649 "rvRZxBgUXs0AGxZ5Da+KNLkbuBtYTTdf5DXJdZfc0dDl6xVeTaa28KpIk+2YRfp7AHtXff8tVsf3\n",
1650 "vMudVxoblKkpvBIZ35MwlxG/HPiW51pkVwWwEzg1zvK9fBcjMqUN9qjOK2nSOsyFArZgAiRfNDrY\n",
1651 "jCZHBkHh1aTq/nvS6ODu6hwb7GIor84rmZrCK5HxuZHBD9o9SxKIIk02AZcAK4FTPZcjMq22jQ1e\n",
1652 "hwmPj4izfJXvYmRiB9vjTZ5/xym8aobCq8DZbsg6xwZB4dUuFnzP6xgb7GLnlcIrmZrCK5ExxFm+\n",
1653 "H/Bce/PDPmuRJX3PHmOvVYhMwT5x3mBvXumvktEVabINE2BFwJGey5HJ+d535Si8aobCq/CtAfYE\n",
1654 "7i3SZHNNj6HwaldrgVXAliJNtlR4vxob1NigTEHhlch4ng/sBXy1SJO2dEN0TWGPCq+kzdYD+2DG\n",
1655 "tpp6UVkFjQ62nwuvbvZahcKrpii8Cl8Tf0cKr3blwqUqu65AC9tBnVcyBYVXIuN5qT2q6ypcLrz6\n",
1656 "Fa9ViExngz1e2bLx5Kvt8T5Dz5KQqfOqW+oeR1tI4dX4mvg7Uni1Kxcu3VXx/Xa588r9mdV5JRNT\n",
1657 "eCUyojjLjwEej1li+wm/1cgQPwS2AyfFWb6P72JEJtS2fVfONfZ4hNcqZBpzO6+8VqHwqinqvAqf\n",
1658 "wqvmueePVYdXm4ASWBtn+cqK7zt0LhBU55VMTOGVyOjOtMfPFGmidw0CZXcT/BCzd+chnssRmZQL\n",
1659 "r670WcQErrVH7bxqL3VedYvCq/BpbLB5Lryq9Pm+7aTu6uigxgZlagqvREZglydrZLA9NDoobbfB\n",
1660 "HtvWeXWdParzqr2086pbFF6FT51Xzaur8wq6OzqosUGZmsIrkdE8BDgJ82T+i55rkeXpioPSdm0d\n",
1661 "G1R41X6hjA268Owgr1XMPheMNB1erbdvDMryFF41r87wqnOdV/a/dY0NytQUXomMxnVdfcxeDl7C\n",
1662 "pisOStttsMcrPdYwCY0Ntl8oY4O32OOBXquYfa7zqpGF7fY51N3ACuYDAhlOY4PNq2thO3Sz82ov\n",
1663 "YBWw1a73EJmIwiuRZdiFii+2NzUy2A4/xizWv2+c5Qcsd7JIgNraeXW9PR4eZ7meY7RTKOHVRsxi\n",
1664 "4/07uNi4SU2PDYJGB8elzqvm1bLzynLhVWc6r9DIoFRETyxFlvcUzJP5nwHf91yLjKBIk+3Ahfam\n",
1665 "9l5Jq9irZB6ACWBvXOb0oBRpshnzIngVGvdqHTva4cYGve68KtJkB/OBikKO+ii8Cp/Cq+Y1MTbY\n",
1666 "pc4rjQxKJRReiSxvblG7vUqItIOWtktbua6rq1r6M0d7r9prP0zweFcgox232qOC0BrYsLLRscEF\n",
1667 "j6XO6NFobLB5WtheLV1pUCqh8EpkiDjL9wWeY29+1GctMjbtvZK2cuHVlT6LmILCq/YKZWTQcXuv\n",
1668 "FF7VYx2wErin4bBSnVfjUedV8+rcedW5he3M/1k1NihTUXglMtzzMUsGv16kyZWea5Hx6IqD0lYb\n",
1669 "7LFt+64cLW1vLxdeeR0ZHKCl7fXy0XU1+HgKr0bTxBUh57qBtK8QaGbnlTqvRMakH04iw82NDHqt\n",
1670 "QiZxKeZJx5Fxlh/uuxiRMbR1Wbujzqv2Cq3zSmOD9fKx7woUXo3LdUNtHHrWFOyu0E2Y14Z71/U4\n",
1671 "LaKxwWq5f1N1fD+lQxReiSwhzvKjgccD9wKf8FuNjKtIk53ML9h/qM9aRMZ0lD1e7bWKyanzqr3c\n",
1672 "svZQwit1XtVL4VU7NNW1otHBeU0sbO/S2KALr+72WoW0nsIrkaWdCUTAvxVpUtu7XVIrd8XB07xW\n",
1673 "ITKeo+2xreGVOq/aS51X3dLEONpiFF6NKM7y1cCewDbMm6l1Ung1r86dV13svFpnj5u8ViGtp/BK\n",
1674 "ZBH2CjwaGWw/hVfSRi68usZrFZNTeNVeoe68UnhVD3VehW9u0XUDV59VeDVPnVfVUueVVELhlcji\n",
1675 "TgMegHni/HnPtcjkFF5Jq8RZvoL5cbu2hlcaG2yvUDuvNDZYDy1sD1+Ti64VXs3TwvZqufBKnVcy\n",
1676 "FYVXIotzXVfnFmmyzWslMo2fAVuADXGWH7DcySIBOARz6fpbijTZ7LuYCd0E7AQOibN8le9iZCyh\n",
1677 "7rxS51U91HkVvrnOqwYeS+EVc9MXWtheLY0NSiUUXoksEGf5SuDF9qZGBlvMXj3nh/bmg33WIjKi\n",
1678 "tu+7cv/d3WBv6kqf7RLq2KA6r+qh8Cp8LuBQeNWc1Zg3kbYWabK1hvvX2KDIhBReiezuycChwKVA\n",
1679 "4bkWmZ5GB6VN2r7vytHeq3YKdWxQnVf10ML28LmAQ2ODzalzWTvMh1f72S6vLtDYoFRC4ZXI7uYW\n",
1680 "tTewHFPqp/BK2uQoe2xt55Xl9l4pvGoJu2/NhUS3DDu3QbcDJbC/rU+q5Xvn1foOvXiflMYGm1fn\n",
1681 "viuKNLkXc+XIFcCaOh4jQBoblEoovBIZEGf5PsBz7M2P+KxFKqPwStqk9WODluu80tL29jgAiIDb\n",
1682 "Qtn1aEdQN2LqUpdO9byMDdpRrLsxL973Web0rtPC9ubVue/K6dreK40NSiUUXons6vmYd0G+UaTJ\n",
1683 "lZ5rkWr8CNgBnBhn+VrfxYgsQ2OD4kto+64cLW2vj6+dV6DRwVGp86p5Cq+qp84rqYTCK5FduZFB\n",
1684 "dV3NCHvFtp9ift6d4rkckeXM2tigOq/aI7R9V47be6Wl7dVTeBU+hVfNq3vnFXRvabs6r6QSCq9E\n",
1685 "rDjLjwKeAGwFzvNcjlTrAnvU6KCEbtbGBtV51R4H22No4ZU6r2oQZ/memG6IHdT7In0pCq9Go7HB\n",
1686 "5tW688rqWueVFrZLJRReicw7E7NX49+LNGl6eanUS3uvJHh2IbULe64ddm4LaGF7+4TaeaXwqh4u\n",
1687 "NLrd08VpFF6NRp1XzWtibLBrnVcaG5RKKLwSAezVbuauMuizFqmFwitpg8MwC4xvslcjajMtbG+f\n",
1688 "UHdeaWywHj5HBkHh1aiaDK9cN5DCK6OJ8GrmO6/sG3Nu5+w9PmuR9lN4JWKcCpyMeRL3Oc+1SPUu\n",
1689 "sscHxVm+ymslIkublZFBMC9M7wX2jbN87+VOliCo86pbFF61Q5Njgy6s2ce+qdtVTey8cve9buhZ\n",
1690 "s2EuuCrSZKfXSqT1FF6JGK7r6lx7CWeZIUWabAR+AawGTvRcjshSZia8smNIGh1sl1B3Xqnzqh4u\n",
1691 "NFJ4FbbGOq9sx+9WYCXm+VJXNbHzyo3PdeHNHY0MSmUUXknnxVm+EjjD3tTI4OzS6KCEzoVX13it\n",
1692 "ojpa2t4uoY4NqvOqHuq8agfXedXE2CAMdF819HghamJssEvhla40KJVReCUCCWbXzGXAf3uuReqj\n",
1693 "8EpCd5Q9tr7zylLnVbtobLBbXHjl6wI1Cq9G4zqvmhgbhO4tEl+MwqtqqfNKKqPwSmR+ZPAjnq64\n",
1694 "I82Y23vltQqRpc3M2KClpe3tEmp4pbHBeqjzKnB271STC9tBnVeg8Kpq6rySyii8kk6zi4SfZ29+\n",
1695 "xGctUrsf2uOpHV9EKuGa1fBKnVeBsxeyWA/sxF+YsRR1XtVD4VX41mD2T21pcB+rwqtmFra7IKdL\n",
1696 "4ZU6r2RqCq+k656DuQrGt4s0udx3MVKrqzFt9wdixkRFQuPGBmdl55XGBtvDBUO3Bng1KBeu7G8v\n",
1697 "uS7V0ML28DXddTX4WBob1ML2qmhsUCqj8Eq6zo0MalH7jLMjoa77SqODEhR74YjDgcGr9LWdxgbb\n",
1698 "w43k3TL0LA+KNNkObMQ8Z13vuZxZos6r8PkIr9R5pbHBqmlsUCqj8Eo6K87yw4EnAduAvudypBkK\n",
1699 "ryRUR2B+J99QpMk238VU5AZ7PNRrFTKKuc4rr1UsTXuvqhfMwnaN8i/JXWmwqWXtoPAKmg2v1g09\n",
1700 "azao80oqo/BKuuzFmP8G/rNIk1CfsEu1FF5JqGZtZBDmwyuN6YYv2M4rS3uvque188rucLoHWEE3\n",
1701 "uk8m4bPzqstjg03svOpi55XCK5mawivpMo0Mdo/CKwnVrC1rB/OCawuwd5zlXXh3uc1C77xSeFU9\n",
1702 "3zuvQKODy/G586qTnVd2hH8vzMUr7qnxoboYXmlsUKam8Eo6Kc7yBwIPxuzR+KzncqQ5F9vjSXGW\n",
1703 "7+m1EpFdzVx4ZffM3WhvanQwbKF3XmlssEJxlu/BfGDka2xw8LEVXi1OY4PNmxsZtL/D6tKl8Epj\n",
1704 "g1IZhVfSVS+xx36RJvd6rUQaU6TJJuByYBVwgudyRAbN4tggaHSwLdR51S37Yl4D3GkX4vui8Go4\n",
1705 "jQ02r4l9VzDfhbR3B3a+qfNKKqPwSjrHvuN4pr35EZ+1iBcaHZQQzVznlaXwqh3UedUtLiza6LUK\n",
1706 "hVfL0dhg8xoJr+zOt62YnW+r63ysAGjnlVRG4ZV00eMxXQ5XAt/yWon4oPBKQqTwSnxS51W3uHE0\n",
1707 "hVdh09hg85oMDLsyOqixQamMwivpIjcy+JEiTXZ6rUR8UHglIdLYoPjUls4rhVfVWG+PvsMr9/j7\n",
1708 "DT2ruzQ22LymxgahO+GVxgalMgqvpFPiLF8LvMDe1MhgNym8kqDYqxsdCpTA9Z7LqZrCq3ZoS+eV\n",
1709 "xgar4cKrJjt6FuMeX+HV4nx0Xmls0FB4VR11XkllFF5J1zwL84upKNLkZ76LES+uwFz++Ig4y/VC\n",
1710 "SEJwKOb38U1FmmzzXUzFdLXBdnA/C0MPr9R5VY1QxgZdUKLwanE+O68UXtWvK+GVdl5JZRReSde4\n",
1711 "kcEPe61CvLGjoj+yN0/xWYuIdaQ9Xuu1inqo8ypwtvNvPabz7/ZlTvdFC9urFcrYoDqvhtPYYPPc\n",
1712 "n1vhVXU0NiiVUXglnRFn+SHA04AdwMc9lyN+aXRQQuLCq+u8VlEPhVfhO8Aeby/SZIfXSpY2F17Z\n",
1713 "KwbLdEIbG+xqULIcjQ02z/25tbC9OhoblMroCYB0yYswl6T9fJEmN/kuRrxSeCUhmeXOKzc2eFic\n",
1714 "5ZHXSmQpoS9rx47T3ol53rp+mdNleaGMDarzajgfnVdbMG/yro6zfM8GHzcUGhusnjqvpDIKr6RL\n",
1715 "NEHm2fUAACAASURBVDIojhsbVHglITjCHmcuvCrS5B7MC689UegQqtCXtTta2l6dUDqvtPNquMbD\n",
1716 "qyJNSrq990rhVYVsp+xae/Men7XIbFB4JZ0QZ/kJQIz5ZfRvnssR/1zn1QPjLF/htRKR2R4bBI0O\n",
1717 "hi74zivrNns8YOhZMgp1XgXOdqr66LwafLwuhlfaeVWtueAq4LF0aRGFV9IVL7XHTxRpstlrJeJd\n",
1718 "kSa3Y4KCNcCxnssRmeWxQVB4Fbq2dF65ZfL7e61iNoS2sF07r3a3DvM67Z4iTbY3/NjqvNLOq6po\n",
1719 "ZFAqpfBKZp5tWT3T3tTIoDgX2+PJXqsQmf3wyu29OtRrFbKUtnReKbyqTihjg+q8Wpqvrivo9hUH\n",
1720 "NTZYLS1rl0opvJIueBSwAbgG+JrfUiQgP7bHB3qtQmSGd15Z6rwKW1s6rzQ2WJ1QxgbvwSwHXxNn\n",
1721 "+SrPtYTGx5UGnS6PDfoIr9YNPavdXDCn8EoqofBKusCNDH60SJOdXiuRkKjzSryLs3xvzLvb9zLf\n",
1722 "WTJrFF6FTZ1X3RNE55VdDq6l7YsLofNK4VW9utB5pbFBqZTCK5lpcZbvBfTsTY0MyiDXeaXwSnya\n",
1723 "Gxm0L+RmkcKrsKnzqkPsInCfXT0Lae/V4tz3w8ffUZfHBpsMDbsQXmlsUCql8Epm3a9inqRdVKTJ\n",
1724 "j5c7WTrlJ/Z4YpzlK71WIl026/uuQOFV6NR51S1rgZXA5iJN7vVdDNp7tRT3/fDReaWxwWY6r1w3\n",
1725 "0iyHV+q8kkopvJJZ50YG1XUluyjS5C7gl8CewPGey5HumvV9V6DwKnTqvOqWIEYGB2hscHEhjA12\n",
1726 "qvPKdiU2uaOpC51X2nkllVJ4JTMrzvIDgWcAO4GPeS5HwqTRQfHNdV5d57WKermrDSq8CpM6r7ol\n",
1727 "lGXtjjqvFudztLOrO6/WARFwT5EmOxp4vC6EVxoblEopvJJZ1gNWAecXaXK972IkSG5pu644KL50\n",
1728 "YWzwJns8OM7yFV4rkV3Yvw/XyXTbsHMD4OpTeDWd0DqvFF4tzmfnVVfHBpv+nnchvNLYoFRK4ZXM\n",
1729 "Mo0MynLUeSW+zXx4VaTJNkxXzx7Mj6hJGNZjOg3uKNJku+9iluE6rzQ2OJ3QOq9cUNCpEbURaGyw\n",
1730 "eU3uu4JuhFfqvJJKeVtS3Ov1VgJ/ALwC8+T9RuA84O39fn9oOtvr9R4P5ENOWd/v9338sJdAxFl+\n",
1731 "HPAITNL/Kc/lSLhceKXOK/HF7bya5bFBMHuvDsKMDt64zLnSnLaMDILGBqviOq9CCa/UebU4jQ02\n",
1732 "T+FV9bTzSirls/Pqo8AfAR8Ange8C9Mp87lerzfqWMGrgMcv8j+1JspL7PFTRZro34Ms5RKgBO4X\n",
1733 "Z/mevouRTpr5zitLS9vD1JZl7WCe220D1sRZvpfvYlpMY4PtoLHB5jUdXm3GPAfda4aveq2xQamU\n",
1734 "l/9Qer3e84AXAk/p9/vn2w9/vtfrnQ9cAPwm8Hcj3NX3+v3+D2sqU1rKXi1EI4OyrCJN7omz/Arg\n",
1735 "OOD+zO/AEqldnOV7AIfbm13ovAKFV6FpTedVkSZlnOW3A4dguq+0y3IyoY0NKrxanMYGm+f+vI2E\n",
1736 "V/Zn2iZMaLaOcALlKmlsUCrlq/PqNcBXBoIrAPr9/iWYq8K91ktVMitOx4QR1wNf9lyLhE9L28WX\n",
1737 "gzFvIt1apMkW38XUTFccDFObOq9gfmm79l5NLrTOK+28WpzGBpvn/rxNBoazPjqoziupVOPhld11\n",
1738 "9SjgP5Y45T+Bk3q93ihLXaPKCpNZcpY9fqyhS91Ku2lpu/jiRgZnvesK1HkVqtZ0XlnaezU9dV61\n",
1739 "g8YGm9f02CDMfnilziuplI+xwcOBtcBPl/j8z+zxOJZ/MvXPvV7vWEwI9z3gzxd2c0m32D0YL7I3\n",
1740 "P+SzFmkN13ml8Eqa1pV9V6DwKlRt7bxSeDU5LWxvBxde+ey86lo3nI/l4rMeXmlhu1TKx9iga/Ve\n",
1741 "6pem+/iBS3wezHK77wPvwSx7/01gT+ALvV7vjCqKlNZ6JuaJ2UVFmmgfmoxCVxwUX7oYXh3qtQpZ\n",
1742 "qK2dVxobnFxoY4MKrxbnvh8+Oq/uxrzWWjPDi8QXo/CqehoblEr5CK9cS+bmJT5/jz0O+yX2rX6/\n",
1743 "H/f7/X/s9/vn9/v9fwYeA3wD+Ider9e1dwpknhsZVNeVjOpnwA7guDjL1/guRjrlCHvU2KD4os6r\n",
1744 "7gltbFA7rxawF/Nwr5ca71gp0qRkvvtqVkOVxfgYcZv18Epjg1IpH+GV+2G41IvEtfa45DtC/X5/\n",
1745 "+yIf2wH8HuaX37OnKVDaKc7yQ4GnA9uBf/FcjrREkSb3Aj/H/Dw80XM50i1d7LxSeBUWdV51j8YG\n",
1746 "wze3e8nj7tYujg766BJyoc66oWe1l8YGpVI+wiv3rtn6JT7vfnmN/S5gv9//PuaX8QkT1CXtdwaw\n",
1747 "AvhckSY3+S5GWkVL28WHLoVXt2HeWNg/zvLVvouROeq86h6fV7FbzNxycNtxJH6XtTtdvOKgOq+q\n",
1748 "p7FBqZSPXxLXY0YGl+pwcB+/YsL734oZAZLu0cigTOoSezzJaxXSNZ0Jr4o02Qm4NxW09yoc6rzq\n",
1749 "nqA6r2xn0SbMFcS7FJQMo/DKD5+dVzMXXtkw2k1U3TPsXJFRNR5e2ZG/bwK/usQpzwAu6ff7Ny91\n",
1750 "H71e78Ber7fbu269Xu9+wCHMXz1MOiLO8lOBUzFPbD/ruRxpH4VX4kOXdl7BfHh1sNcqBIA4yyPm\n",
1751 "w6u2dF658EqdVxOIs3wV5sXkDsLqhNDeq135XNbudPHvRJ1X1XLB1WaP468yY3y1574XeEKv13vi\n",
1752 "4Ad7vd5JwIvt593H9uv1emsGbh8MXA68e8HXrgT+FrNX49/rK10C5bquPmZ3GImM4yf2qPBKGmEv\n",
1753 "DnAAsA1Y8s2aGePCq0O8ViHOfphR+7uKNNnqu5gRaWxwOnMjg3Ypdyi092pXrttJnVfNUudVtbSs\n",
1754 "XSrn5fKn/X7/X3u93ieBT/Z6vf8F/AA4Hvhj4PvA3wP0er11mPHBm7HjhP1+/+Zer/f3wB/3er19\n",
1755 "gH/G/DneAJwGPLvf729p+I8kHtl3Es+0NzUyKJP4Geay0MfHWb6qSJNtvguSmee6rq63I3VdoPAq\n",
1756 "LG3rugKNDU4rqJHBAQqvdjW3sN1jDV0Mr9R5VS0ta5fK+VyM+GLgfwNnA58Efhdzhbin2isHgnlH\n",
1757 "+nrgqsEv7Pf7/wPTaXMk8GHgPcCNwCP6/f75jVQvIXkq5sXQT4HCcy3SQkWabAauxAThx/utRjqi\n",
1758 "ayODoPAqNG1b1g7qvJpWaMvaHYVXu3KBkc8X/V0cG1TnVbW0rF0q56XzCuZ2X/2Z/d9S52wFHrjE\n",
1759 "5z6MCa5E5ha1B9YGL+1yCXAsZnTwkmXOFZmWwivxrW3L2mGg8yrO8ki/88cWaudVF4OSYdyLfnVe\n",
1760 "NUudV9XS2KBUTpeklVaLs/wA4FmYka+PeC5H2s0FVg/wWoV0xeH2eL3XKpql8Cosreu8sru57sbs\n",
1761 "6prFF3t1c+GVOq/CprFBP9R5VS2NDUrlFF5J2/06sCdwfpEm1/guRlpNVxyUJrnwSp1X4ovbG9Wa\n",
1762 "8MrSFQcn58Kh0DqvFF7tKoTwqlPdcHGW78H81fHuafChuxBeaWxQKqPwStpubmTQaxUyCxReSZPm\n",
1763 "FrZ7raJZCq/C0tbwyu290tL28YU+NqjwygghvOpa59UaIAI2F2myY7mTK+SCnVkMrzQ2KJVTeCWt\n",
1764 "FWf5CcDpmF+wn/JcjrSfC69OtO/AidSpi2ODN9qjwqswuPDntqFnhUedV5MLfWF7J7p8RhDCwvau\n",
1765 "hVe+ghZ1XomMQS/QpM1c19V5RZo02eIrM6hIk9uBGzDvvh3juRyZfV0cG7zZHg+JszzyWolA+8Mr\n",
1766 "dV6NL9TOK40N7iqEhe2dGhvEX9Ayy+GVOq+kcgqvpJVsZ8xL7U2NDEpVtLRdmtK5scEiTTZjXozt\n",
1767 "iV6khqCt4ZWrV51X49PC9nbQ2GDz1HlVPS1sl8opvJK2eiJwFPAL4Juea5HZob1XUrs4y9dgXkRu\n",
1768 "o337hqalvVfhaGt4pc6ryYW6sF07r3al8Kp5vjqv5nZezWBHssYGpXIKr6StXmmP5xRpstNrJTJL\n",
1769 "FF5JEw6zxxs6+PNL4VU42hpeqfNqcqGPDXZlRG05IYRXXRsb9NJ5VaTJdmALZln8miYfuwEaG5TK\n",
1770 "KbyS1omz/ADguUCJRgalWgqvpAmdGxkcoPAqHG0Nr7SwfXIaG2wHLWxvns8uoVkdHdTYoFRO4ZW0\n",
1771 "0YuB1cCXijS5yncxMlN+Yo8nzWD7toSji8vaHYVXAYizfAXhduEsx4VtGhscX6hjgwqvdhXCwva5\n",
1772 "QKUjV2D22SXkHnPd0LPax/15NDYolenCDyOZPW5k8ANeq5BZdAPmSfT+6MW11MeFV+q8El/2w4yp\n",
1773 "bCzSZIfvYsakzqvJhdp5NbfzSm8cAQGMDdqfC3P7mHzV0SB1XlVvrT3qivBSGYVX0ipxlp8KPATz\n",
1774 "ruFnPJcjM6ZIkxJdcVDqp7FBhVe+tXVkENR5NRHbPeP2FwUVXhVpsgXYCqwE9vJcjldxlq8GVgHb\n",
1775 "ijS513M5XRod9DnipvBKZEQKr6RtXmGPH7VPdkSqpr1XUjeNDSq88q3N4ZU6ryazN+Z5/ya7JDo0\n",
1776 "Gh00vHddDehSeOVzxE3hlciIFF5Ja9h3o15ib2pkUOqi8ErqprFBhVe+tTm8UufVZEIdGXQUXhkh\n",
1777 "Lbnu0hUH1XlVPYVXUjmFV9ImvwYcCPwAuNBzLTK7XHh1otcqZJa5sUF1XokvbQ6v7sBcbXg/u3he\n",
1778 "RhPqsnZnbu+V1yr8U+eVH+q8qp7CK6mcwitpk7lF7XY3kUgdfmaPJ3itQmaZOq8UXvnW2vCqSJOd\n",
1779 "qEtnEqFfXdL9nXahy2eYkMKrWQ1VFqPOq+opvJLKKbySVoiz/CjgqZiFnh/1XI7Mtl8A24Cj4yyf\n",
1780 "tcsWi2d2/PlAYAdws+dyfLgV0zVzYJzlK30X02GtDa8sjQ6OzwV9GhsMW4jhVReeC6nzqnoKr6Ry\n",
1781 "Cq+kLV6G+ff6mSJNbvVdjMwuu8j2Mnvz/j5rkZl0mD3eYDtIOsVefv0We/Mgn7V0XNvDKy1tH19b\n",
1782 "Oq8UXhkh7Lya1VBlMeq8qlCc5RHz4dVmn7XIbFF4JcGzPwDnRgZ91iKdodFBqUuXRwYdjQ761/bw\n",
1783 "Sp1X4wt9Ybt2XhkuwAip82pmQpUh1HlVrdVABGwN9Oqm0lIKr6QNHgMcB1wLfMlzLdINP7VHLW2X\n",
1784 "qim8UngVgraHV+q8Gl9bxga188pQeNUsdV5Va409amRQKqXwStrAdV19yI6ciNRNnVdSly5fadBR\n",
1785 "eOVf28MrdV6Nz4VCoYdXXe+8UnjlhzqvqqWRQamFwisJWpzl+wAvtDfP8VmLdIrCK6mLOq/gRntU\n",
1786 "eOVP28MrdV6Nz4VXdw49yx+NDRoKr/wIofNqn6FntYuWtUstFF5J6HqYH4BfL9LksuVOFqnIXHgV\n",
1787 "Z7l+TkqVXHilziuFVz7NSni1fuhZMqgtY4MKrwwtbG+Wz84r95hrh57VLgqvpBZ6USahO9setahd\n",
1788 "GlOkyW3AzZhfvkd6Lkdmixsb7HLnlcIrj+xFUFx4dfuwcwPmrpin8Gp0oXdeKbwytLC9YfZnovsz\n",
1789 "+givXMCzbuhZ7aLwSmqh8EqCFWf5KcAjME+0PuG5HOkejQ5KHTQ2qPDKt32AFcCmIk22+i5mQgqv\n",
1790 "xhd6eOXqmqXRqUlobLB5qzGvibcWabLNw+O7wEzhlcgyFF5JyH7DHj9apImPd0Kk2xReSR00Nqjw\n",
1791 "yre2jwyCwqtJhD426MIrXW3QCCG8cs+9Zz288rnvCjQ2KDIyhVcSpDjL1wAvtTf/n89apLN+ao8n\n",
1792 "eq1CZkac5aswgc1O5gOcLnJ/9kO9VtFdCq+6KfTOKxfWqPPKCCG8cmHOLHUELcbnvivQ2KDIyBRe\n",
1793 "SahegHlSWhRpcpHvYqST1HklVXNhzU1FmuzwWolf6rzyS+FVN6nzqh18dwEN6srYoO/vuTqvREak\n",
1794 "8EpC9Wp7VNeV+KLwSqqmkUFjE7AFWBtn+Sy909wWsxRe7e+1ipawC6ldKBRCR89iXF1723q7KsTO\n",
1795 "q1kPr4LpvJqhf/sKr6QWCq8kOHGWPwB4NOaX5rmey5Hu+gWwHThGL7ClIrrSIFCkSYm6r3yahfDK\n",
1796 "dQ+tn6EXe3Vag1nSvyXUJf1FmmzHhNp7MFsdKP+fvXuPsuw86zv/K/W1Wi2puyVZkmVbMrIMuc0Q\n",
1797 "YM/AwHDZWYtbmBBDfAjMeALYXBMgBvYYFgyYSxJgBzOBGGM8wSYM2BzHDMkMGIJn4zDADNlczCwS\n",
1798 "jG0J2ZYl69ZqSa2+X+aP/b5V1dXnnDqnau/9Pu/7fj9rae11uk93PX3UXXX2r57neVdFeDW+oJ1X\n",
1799 "bkn8RXX/Rg+GqGEAhFcYBOEVLPKL2n+prUoLbdPIkHsz8SH38P6QtSAZnDS4ifAqnOjDKxfAnFF3\n",
1800 "s8c3F3ZmfWTQY3TQVnjlg4cjRd3sC1rJsEJ3Xm392KkEt+vuSniFXhFewZSibg5L+h/dQ0YGERqj\n",
1801 "g+gTY4ObCK/CiT68cth7tTzry9q9rJe2F3VzSNIBSRfbqjwfup62Kq8ovVBlltA7r6T0lrb7vy9n\n",
1802 "g1aB5BBewZovU/fG+o/bqvyj0MUgez684sRB9IHOq02EV+GkEl497a6EVzuj8yoOFkKU7XIYHbTU\n",
1803 "eZVaeEXnFXpFeAVrWNQOS+i8Qp8IrzY94a6EV+NLJbyi82p5dF7FwdLIoJdDeGUhNEytw43wCoMg\n",
1804 "vIIZRd18oqTPUfeJ7u2BywEk6f3uSniFPtzprh8PWoUNPry6LWgVeSK8yk8s4VXunVeEV2FY6LxK\n",
1805 "dWyQ8Aq9IryCJX5R+9vbqrT+Bgt52Oi84kQr9MB3XhFebYZXtwetIk+EV/mJZWyQzqsO4dW4LHVe\n",
1806 "EV4BCxBewQS3pPKr3UNGBmFCW5VPSXpK3ZuJFwYuBxEr6uYGSXe4h4RXhFchEV7lJ7bOK8IrO3II\n",
1807 "ryx0XjE2CCyB8ApWvELSrZL+VFIbuBZgqw+46/1Bq0DsbpW0X9LTFk6RMuBJdyW8GpHrICW8yk8s\n",
1808 "4ZUPbXIdG7TQAbSdryWVjqBZLLzujA0CSyC8ghV+ZPBn26q8GrQS4Fo+vHp50CoQO7/vimXtHXZe\n",
1809 "hbEu6ZCkc21Vxn6EOeHV8hgbjIPFzivfEUTn1bDovAKWQHiF4Iq6uV9SKemspF8MXA6w3QfdlfAK\n",
1810 "e8Gy9msxNhhGKl1XEuHVKmLpvGJhe8dSeJXD2KCFzit2XgFLILyCBV/vrtO2Kq1/VxD5YWwQfWBZ\n",
1811 "+7VOSzov6UhRN6l8pzkGKYZXx4NWEQc6r+JAeBWGhc4rxgaBJRBeIaiibtYlfa17+KaQtQBzMDaI\n",
1812 "PjA2uIUbD2fv1fhSDK/ovNoZnVdx8OGVxZ1XKYdXljqvUvlmzrq7xj6eDmMIrxDa31f3ZvqPJP3H\n",
1813 "wLUAs3zIXe8r6mZ/0EoQMzqvrsfo4PgIr/IUS3iVe+eVD1HovBoXnVf9o/MKgyC8QjDu1KN/6B6+\n",
1814 "kUXtsKityuclfUzSAUn3BC4H8aLz6nosbR8f4VWeYhkb9OFaruEVY4NhWOq8ij68cvd3Pryi8wq9\n",
1815 "IrxCSP+VpE9V9yb6HYFrARZh7xX2is6r69F5NT7CqzzF1nmV+9gg4dW4LHRepTQ2eNhdz7dVeTlo\n",
1816 "JUgO4RVC8l1XP5fAkd1IG3uvsFecNng9dl6NL6XwyncRHXPf6cd8dF7FgfAqDAudVymNDTIyiMEQ\n",
1817 "XiGIom5uk/QVkq6KRe2wj/AKe8XY4PXovBpfMuFVW5UX1d1s3qC0b6z3pKibG2QzFJkl984rCyHK\n",
1818 "dkmHV0XdHFS3FuKypAsBS0lmbFCEVxgQ4RVCebWkg5Le3Vblg6GLAXbwQXclvMLK3Kmqt6h7Y/x0\n",
1819 "4HIsYefV+JIJrxxGB3d2o6Q1Sc9HMMKzsbA90246iyGjD69SCFVm8X+u04F376Y0Nkh4hcEQXmF0\n",
1820 "Rd3sk/RN7uEbQ9YCLImdV9iLjZFBDqa4Bp1X4/PhVSohKuHVzmIZGfTddOfU3Z+kcBO/KsvhVZKd\n",
1821 "V7Kx70pibBBYCuEVQvhidae2PSjpNwLXAizjL9W1lN9T1M3hnZ4MbMOy9tnYeTU+Oq/yE8uydm+j\n",
1822 "+ypoFWEQXo3PyqgmnVfAEgivEIJf1P6mtiqvBK0EWEJblRfUBVhrku4LXA7iw76r2ei8Gt9xd6Xz\n",
1823 "Kh/RdF45OS9ttxhe+VAl1fDKSucVO6+AJRBeYVRF3dwv6QvUtYX/XOBygFX4vVeMDmJVdF7NRng1\n",
1824 "vlTDq+MLn5W3WDuvslravmVx+CWFXRy+3UbnVaJ7yKx0XqU0NrjuroRX6B3hFcbmd129va3KVMYW\n",
1825 "kAdOHMRubey8ClqFPU9LuiLpWFE3B0IXk7qibvar6+y4qniCjJ3QebWz2MKrXDuvNrquLO1GdJ3n\n",
1826 "FyXtV3fQUmp8eGWl8yqlscGzQatAkgivMJqibo5I+hr3kEXtiA3hFXaLscEZ3Mln/psYt4asJRM+\n",
1827 "4HkmoZF9wqudxTY2mGXnlWyODHop773aOG0wZBHusIJLkva7LryYMTaIwRBeYUxfpe4N5h+0VflH\n",
1828 "oYsBVuTHBgmvsCrGBudjdHA8qY0MSoRXy6DzKg6EV2FY6byS0tl7RXiFwRBeYRRuTt4vaqfrCjHy\n",
1829 "nVfsvMKq6Lyaj/BqPIRXeYotvKLzyp6UwysTnVdOKqODhFcYDOEVxvKZkj5Z3dHo7wxcC7AbH5V0\n",
1830 "XtKdRd3k9qYae0Pn1Xw+vLotaBV5ILzKU6xjg7l1XllZHD5LyuGVpc6rVJa2E15hMIRXGMtr3fXN\n",
1831 "bVWeC1oJsAtuRwwnDmIlRd3cIOkO9/CxkLUY9aS70nk1PMKrPMXWecXYoD0+vIo9VJnFYudV7K8z\n",
1832 "4RUGQ3iFwRV181JJf1fdaSWMDCJm7L3Cqm6TtE/SybYqz4cuxiDGBsdDeJWnWDuvcutwjiG8ovNq\n",
1833 "WIwNAjsgvMIYvlXd37W3t1XJzhfEzIdXLwtaBWLi910xMjgb4dV4fMBDeJUXOq/iQHgVhqXOK8YG\n",
1834 "gR0QXmFQRd3cIuk17uFPhKwF6MGH3PW+oFUgJixrX4ydV+Oh8ypPsYVXuXdeWQhRtks5vKLzqn+E\n",
1835 "VxgM4RWG9mp1Xxje21bl+0IXA+yRD6/ovMKyWNa+GJ1X40kxvPKjcLe4/XK4Xmxjg7l2XvkQhc6r\n",
1836 "cVnqvGLnFbADvtBjMEXd7Fc3MihJbwhZC9ATwiusirHBxVjYPp7kwqu2Ki+pu9m/QfmFHcui8yoO\n",
1837 "lscGfaiSYnhlqfMqlbHBdXclvELvCK8wpFdIukfdnqBfC1wL0IePSTov6Y6ibrhRwjJ85xVjg7PR\n",
1838 "eTWe5MIrh9HBxei8igOdV2H4oMhCeJXa2ODZoFUgSYRXGNJr3fVftFV5JWglQA/c3+MH3UP2XmEZ\n",
1839 "dF4t5juvbmPsa3CEV5kp6mafupvzq7Jxc74MH97kGl5ZGF/bjvBqHIwNAjvgjSIGUdTNp0v6DHVv\n",
1840 "kt8WthqgV4wOYhV0Xi3QVuV5dZ0W+7TZIYJhEF7lZ2MULaJvIuY6Nkh4FYal8CqVsUHCKwyG8ApD\n",
1841 "8V1XP9tWpYUvCEBfOHEQq6DzamfsvRoH4VV+YhsZlLZ0XhV1sxa0knERXoXhgxYL9yqpjQ0SXqF3\n",
1842 "hFfoXVE390j6ckmXJP3LwOUAfaPzCqsgvNoZe68G5sbHYgwylkF4NV9sy9rVVuUFdbsl92lz8XMO\n",
1843 "YgivYu8ImsX/mSwELXReATsgvMIQvkXdm45pW5UPhy4G6BnhFZZS1M0RdTePF5Vet0ufCK+GtxFc\n",
1844 "tVV5OWgl/SO8mi/WwDLHpe0xhFdJdV65zj6LnVeEV8AchFfolTuB7evcw58IWQswEMIrLOsOd/14\n",
1845 "W5VXg1Zimw+vbgtaRdpSHRmUCK8Wia7zyslx7xXh1fgOS1qTdN5IqB/92KA7eOWwe3guZC1IE+EV\n",
1846 "+vY16t5s/G5blX8YuhhgAB9RNxL7oqJuchppwOp8ePVY0CrsY+fV8Aiv8hRreEXnlS2phleWRgal\n",
1847 "NMYG/fvisxEdEoGIEF6hN0Xd7Jf0j93DN4SsBRhKW5WXJD3kHn5CwFJgH/uulsPY4PAIr/IU69jg\n",
1848 "xtL2oFWMxHWrWAtStko9vLIwMiilMTbIyCAGRXiFPk0kvVTdWNW/C1wLMCROHMQyCK+WQ3g1PMKr\n",
1849 "PMXeeZXL2OC6uvG1M0bG17ZLNbyytO9KSmBsUIRXGBjhFXrhvmv03e7hjxr94gv0hb1XWAZjg8sh\n",
1850 "vBoe4VWeYg2vsuq8ku2RQUk6K+mqpCPu5NJUWOt2S2psMGgVSBbhFfrytyX9dUmPSPqFwLUAQyO8\n",
1851 "wjLovFoOO6+Gl0N4dXzhs/IU+9hgLp1XpsMrt7vIBysxdwVtZ3VsMObXmM4rDIrwCnvmjpr1XVc/\n",
1852 "3lbl+ZD1ACMgvMIyCK+W48OrW4NWkbYcwis6r64Xa+dVbgvbTYdXToqjg1bHBmPuvCK8wqAIr9CH\n",
1853 "z5b0GZJOSvrZwLUAYyC8wjIYG1wO4dXwfHh1auGz4uS7im5Z+Kw80XkVB8KrMBgb7B/hFQZFeIU+\n",
1854 "+K6rn2yr0vIXXqAvD0m6Iumeom4OBq4FdtF5tZxnJV2SdLSom8Ohi0lUyp1XG8u9XSc4NtF5FQfC\n",
1855 "qzBMjQ22VXlB3dfC/UXdHAhdzy4RXmFQhFfYk6JuPlXSF6j7xP9TgcsBRuFGYz+q7nPovWGrgUXu\n",
1856 "JprwagltVV6V9JR7SPfVMJINr9qqvKjuRukGpXVj3YdYwysWttvja4u5K2g7a2ODUvzdV4RXGBTh\n",
1857 "Ffbqu9z1zW1VngxaCTAuPzp4X9AqYNVRdafunJXtGxIrGB0cVrLhlcPo4Gyxhlcb3XRBqxhPTOFV\n",
1858 "SgGxtbFBKf69V4RXGBThFXatqJtPlPTlki5KekPgcoCxsfcKi2x0XbnOIizmO69uC1pFugivBAOA\n",
1859 "JgAAIABJREFU8hRreEXnlT0ph1eWOq9iP3GQ8AqDIrzCXrxO0pqkn2+r8mOhiwFGRniFRRgZXI3v\n",
1860 "vCK8Gkbq4ZVfRE94da1Ywys6r+xJMbxibLB/hFcYFOEVdqWomxdLepW6pdU/FrgcIATCKyzCSYOr\n",
1861 "YWxwIEXd3KDNUCfF0wYlOq+uU9TNPnU3kldl6+Z8GXRe2ZNieMXYYP8IrzAowivs1ndI2i/pnW1V\n",
1862 "fjB0MUAAhFdYhM6r1TA2OJyb1XVJP9dW5aXQxQzEh1fHglZhiw9+notwdJnOK3tSDq8shbuxjw2u\n",
1863 "uyvhFQZBeIWVFXVzu6Svcw9/JGQtQEAPuutL3Xe4ga0Ir1bD2OBwUh8ZlOi8miXWkUGJziuLUgyv\n",
1864 "GBvsn39NzwatAskivMJufJu6T07vbqvyfaGLAUJoq/KMpEckHZD04sDlwB7GBlfD2OBwCK/ylER4\n",
1865 "VdTNWtBKxkF4FYblscFYO68YG8SgCK+wkqJuTkj6Vvfwn4SsBTCA0UHMQ+fVahgbHA7hVZ6iDa/a\n",
1866 "qrwg6by69RSHA5czhhjCKx+qpBheWeq8YucVsADhFVb1WnVt3O9pq/L3QhcDBEZ4hXkIr1ZD59Vw\n",
1867 "CK/y5EfuoguvHN99lcPeqxjCK19brKHKLIwN9o/wCoMivMLSXNfVt7mHrw9YCmAF4RXmYWxwNey8\n",
1868 "Gg7hVZ586PPcwmfZ5etOqdNnnhjCq5Q7rywFLYwNAgsQXmEV367uO3m/RdcVIInwCjO4HS2+84rw\n",
1869 "ajmMDQ6H8CpP0Y4NOjktbY8pvIq1I2gWi2ODdF4BCxBeYSlF3dyqzV1Xrw9YCmAJ4RVmOa5ukf+z\n",
1870 "brE/dvaMpMuSjhZ1cyh0MYnJIbw65a6EV5sIr+IRQ3jF2OA4Yg8JCa8wKMIrLMvvuvr3bVX+fuhi\n",
1871 "ACMecNdPKOqGz6fwGBlcUVuVV8Xeq6HkEF75zqtjQauwhfAqHjGEV4wNjoOxQWABbrawo6Jubtfm\n",
1872 "rqsfCFkLYElblc9KekLSuqS7ApcDO1jWvjuMDg4jp/CKzqtNPvSJdeeVD3KSDq/cmLkPhCx1AG2X\n",
1873 "VOeVe90tdl4xNggsQHiFZXyXui+sv0HXFXAdRgexHeHV7tB5NQzCqzyl0nmVUqfPLIck7Zd0oa3K\n",
1874 "C6GLWSC1zqvDktYknW+r8nLoYrZgbBBYgPAKCxV18yJJ/9A9/J6QtQBGEV5hO8YGd4cTB4eRQ3jl\n",
1875 "A5qbGeHekEp4lXTnleIYGZTiD1W2szgyKMU/NrjurtZeVySCL/DYyfeq+67QO9uq/OPQxQAGEV5h\n",
1876 "OzqvdoexwWEkH161VXlJ3U3f1hGs3BFexSGW8OqspKuSDhd1sy90MT2weNKgFPHYoPt7cUjd35Pz\n",
1877 "gctBogivMFdRNy+T9GpJVyR9X+ByAKsIr7Ad4dXuMDY4jOTDK4fRwWvFvvOK8MoQd6hGSt1XFvdd\n",
1878 "SXF3Xvmuq7Pu7wvQO8IrLPJ6dXP4/7qtyvcHrgWwivAK2zE2uDuMDfbMjdD5E/hOhaxlBIRX16Lz\n",
1879 "Kg5RhFdOSuGV9bHBGF9j9l1hcIRXmKmom78h6askXRQnDAKLPOCu97nTawA6r3aHscH+3aTuvd7p\n",
1880 "tiovhi5mYD6cO7bwWfmIPbzK4rRBxRVepXTiIGOD/SO8wuAIrzDPj6jbHfHmtiofClwLYNlJdTdN\n",
1881 "N0m6PXAtsIHwancYG+xfLiODEp1X28UeXuVy2mBM4VVKJw4yNtg/wisMjvAK1ynq5vMkfbG6Nw4/\n",
1882 "FLgcwDQ318/oICRtLCz1IebjIWuJEGOD/SO8ypDrAvbhFTuvbIspvEqx88pa0ELnFbAA4RWu4fZj\n",
1883 "/Jh7+KNtVXLzBeyM8ArerZL2STrZVuWF0MVEhrHB/vnwKvV9VxLh1VaH1O0svdBWZaynfhFe2ZNS\n",
1884 "55XVscELki5LOlDUzYHQxayI8AqDI7zCdhNJnybpEUk/EbgWIBaEV/AYGdw9xgb7R+dVnmIfGZQI\n",
1885 "ryyKeZn4dibHBiM/1ZHwCoMjvMKGom4OSfqn7uH3t1XJJx9gOYRX8DhpcPeeUfcd55vc1yPsHeFV\n",
1886 "nlIIr1jYbg9jg+PwNa0HrWJ1hFcYHOEVtvomSS+V9J8lvS1sKUBUfHh1X9AqYAGdV7vkvuPsRwfp\n",
1887 "vuoH4VWeYt93JbGw3SLGBsfhw5/Ylrb7sI3wCoMhvIIkqaibWyV9n3v4urYqL4WsB4jMA+5K5xUI\n",
1888 "r/aG0cF+EV7lyXcrxdx5tTE26BbQpyqm8CqlziuTY4NO7GODZ4NWgaQRXsF7vbo3ue+R9GthSwGi\n",
1889 "85i6Nxsniro5EboYBMXY4N5w4mC/jrlrDuGVX0p/bOGz8hD92KD7Juo5dfcqsY1PrSKm8CrFziuL\n",
1890 "XUKxdl4xNojBEV5BRd38NXUjg1ckvdaNbgBYkvs347uvXhqyFgRH59XecOJgv+i8ylP04ZWTw9L2\n",
1891 "GMOr2DqCZmFssH+EVxgc4VXmXCv2G9Qd7f7mtir/LHBJQKwedNdPCFoFQiO82hvGBvtFeJUnwqt4\n",
1892 "xBReMTY4DsIrYA7CK3yxpM9X96bv+3Z4LoD5CK8gMTa4V4wN9ovwKk8pLGyXNsOSFMbU5okpvGJs\n",
1893 "cByEV8AchFcZK+rmoLquK0n6gbYqn1z0fAAL+fCKEwfzRufV3jA22C/CqzylsLBdovPKGsYGxxHr\n",
1894 "60x4hcERXuXttZJeLukDkt4YuBYgdnReZa6omwPqQpcrkp4IXE6sGBvsV07hlQ9qbirqJvf3t4wN\n",
1895 "xiOm8IqxwXHQeQXMkfsX92wVdfNibY4J/qO2Ki+ErAdIAOEVbnfXJ9uqvBy0kngxNtgTt9Mym/DK\n",
1896 "/Zs7LWlNaYcdyyC8ikdM4RVjg+MgvALmILzK1xvUfZJ5Z1uVvxW6GCABD0m6KuklrgMH+WFkcO8Y\n",
1897 "G+zPUXWHsZzJ6BtUjA52Utl5RXhlS0qdV5bHBgmvgDkIrzJU1M3nS/p76j5hf3vgcoAktFV5XtLD\n",
1898 "6m4WXxy4HIRBeLV3jA32J5uuqy18eHUsaBXhpbLzyoclSYZX7htdh9SNmp8LXM4yUuq8Ymywf4RX\n",
1899 "GBzhVWaKujkk6afcwx9sq/LhkPUAiWF0MG+cNLh3jA32J8fw6pS70nnViT288p1XKYQls/jun9Nt\n",
1900 "VV4NWslyYl0kPgtjg/1bd1eLrykSQXiVn9epW9L+fkn/S+BagNQQXuWNzqu9e0bSZXVLtw+GLiZy\n",
1901 "OYZXjA12Uguvkuy8Ulwjg1IiY4NuH6DlzqtYQ0L/mp4NWgWSRniVkaJuPknS97iH35zRDgxgLD68\n",
1902 "ui9oFQiF8GqPXPeB33vF6ODeEF7li51XcYgtvNoYG3QBUKwOqzvY4bzRw1Vi7bxibBCDI7zKhDs2\n",
1903 "+mclHZT0c21V/nbgkoAU0XmVN8YG+8HoYD8Ir/JF51Ucogqv2qq8JOmCuvvHQ4HL2QvLI4MS4RUw\n",
1904 "F+FVPl4t6b+V9LikKnAtQKoIr/JG51U/OHGwH4RXGXLfrIwqFFkg6YXtivP/Uwqjg5ZPGpQIr4C5\n",
1905 "CK8yUNTNXZJq9/Db2qo8GbIeIGGEV3kjvOoHJw72g/AqTxuBiNGRqFWkvrA9xvAqhRMHLe+7kgiv\n",
1906 "gLkIrxLnZtJ/St0buV+X9MthKwKS9oS6N6HHiro5vtOTkRw/Nkh4tTeMDfaD8CpPqey7khgbtCil\n",
1907 "ziurIUt04VVRNwckHZB0Rd1oKTAIwqv0TSR9ubovNt8cyVG8QJTcvy+6rzJU1M1hScckXVJeYcEQ\n",
1908 "GBvsR87h1bGgVYSVyr4rifDKohQ6r6yPDcZ42uC6u57hXhNDIrxKWFE3d0r6affwO9qq/HDIeoBM\n",
1909 "EF7laWNZe1uVV4JWEj/GBvuRY3h1yl1z7rzyQQ/hlX0xh1cxBSvbMTbYP0YGMQrCq0S5ccGfkXRC\n",
1910 "0m9JekvYioBsEF7liZHB/jA22I8cwyvGBum8ikmM4RVjg8MjvALmILxK11dJ+lJ1b15eTQsnMBof\n",
1911 "Xt0XtAqMzS9rfyxoFWlgbLAfPrw6tfBZaSG8Siu88kHJUfdN2dTEGF4xNjg8witgDsKrBBV18yJ1\n",
1912 "S9ol6bVtVX40ZD1AZui8yhMnDfaHscF+0HmVp2QWtrdVeUnSOXX3K+s7PD1GMYZXKXReWR8bvKBu\n",
1913 "8fnBom72hy5mSRs7r4JWgeQRXiWmqJt9kn5B3ZvWX5P01rAVAdkhvMoTY4P9YWxwj1yXCuFVnlLq\n",
1914 "vJLSHh2MMbxKqfPKZNDipmX86xxL95Wv82zQKpA8wqv0fKekz5X0uKSvZVwQGN1Dkq5Keok7Ohh5\n",
1915 "YGywP4wN7t2NkvZLOtdW5bnQxYxoI+hw38zLUUoL2yXCK2tSWNhufWxQim90kLFBjILwKiFF3Xya\n",
1916 "pB92D7+6rcrHQ9YD5KityvOSHpa0T9KLA5eD8TA22J9nJF1WF0AcDF1MpHLsulJblZeVdtixDDqv\n",
1917 "4hFjeMXY4DgIr4AZCK8SUdTNjZJ+Sd13Wn+yrcp3By4JyBmjg/lhbLAnbVVe0Wb3FXuvdueYu2YV\n",
1918 "Xjl+dPDYwmelK5mdV44PSwivbGBscByEV8AMhFcJcLst3iTpfkl/Jul1YSsCskd4lR/GBvvF6ODe\n",
1919 "ZNl55fjTFXPde5Vq51XMYck8MYdXMXdeMTbYP8IrjILwKg2vkfQqdZ8w/n5m+y0Ai3x4dV/QKjAm\n",
1920 "xgb7xYmDe5NzeJX70nZ2XsUjxvCKscFxEF4BMxBeRa6om78p6afcw29oq/I/hawHgCQ6r7JS1M1R\n",
1921 "dW/kzymdG8bQOHFwbwiv8g2vUu28IryygbHBccTW4UZ4hVEQXkWsqJtbJL1T0iFJb2mr8n8LXBKA\n",
1922 "DuFVXvy+q8c44bU3jA3uDeEV4VUqO69yCK8sdwBtl0LnFWOD/SO8wigIryJV1M0Nkn5e3VjS+yR9\n",
1923 "a9iKAGxBeJUXRgb7x9jg3hBeEV7ReWWYex8fQ4iyXQqdV4wN9o/wCqMgvIrX6yV9qbo3aa9kzxVg\n",
1924 "yhPq3hQdK+rm+E5PRvQ4abB/jA3uDeEV4VUq4ZXv9Ik5LJll42a/rcrLQStZTWzjbLPEMDYYW3i1\n",
1925 "7q6WX1MkgPAqQkXdvFLS/yzpiqSvaKvyQ4FLArCFGx2j+yofnDTYP8YG94bwSjoWtIpwWNgehxj3\n",
1926 "XUmMDY4ltvDK13k2aBVIHuFVZIq6+WRJb3MPq7YqfzNgOQDme8BdCa/Sx9hg/xgb3BvCqww7r4q6\n",
1927 "OaRuD+pldQdIpIDwyhbGBscRW4cbY4MYBeFVRIq6uUvSv1X3CeLnJf1E2IoALOA7r+4LWgXGwNhg\n",
1928 "/xgb3Jucw6tT7ppdeKUtXVcJHR5BeGVLbKHKLIwN9o/wCqMgvIpEUTc3Sfo1SS+R9P9K+saE3pgA\n",
1929 "KWJsMB+MDfaPscG9yTm8yrbzSumdNCgRXllzVtJVSYeLutkXuphVFXWzpjg6rwivgBkIryJQ1M0B\n",
1930 "SVNJf1PShyT9HRa0A+YRXuWDscH+MTa4N4RXeYZXPuB5ZuGz4uLDHcIrA9w3zmPuvjosaU3SeeOL\n",
1931 "8gmvgBkIr4xz3yH4GUlfqO7N/Be1VflE2KoALIHwKh+MDfbvGXV7e24u6uZg6GJi4t43EF7lGV6l\n",
1932 "dtKgtNl5FfOOpVmiDK+cmJe2xzAyKBFeATMRXtn3TyR9rbo23S/hZEEgGh9W11r/Etc9iQS5oICx\n",
1933 "wZ61VXlF0kn3kO6r1axLOqiusyDHk58IrxgbjEHM4VXMS9tjOGlQIrwCZiK8Mqyom++R9N3qvvv8\n",
1934 "FW1V/kHgkgAsyY32fkzSPkkvDlwOhnOLutO9TrdVaf3NcGwYHdydnLuuJMIrKc3OK8IrO2IeG4xh\n",
1935 "35UU32tMeIVREF4ZVdTNayX9sLrOjf+hrcr/I3BJAFbH6GD6GBkcDicO7k7u4dVz6t47HS3qZn/o\n",
1936 "YkaWYnjlw52jrtM1FTGHV4wNDo/OK2AGwiuDirr5JklvcA9f3VblO0LWA2DXHnBXwqt0MTI4HE4c\n",
1937 "3J2swys3cuq7dW5e9NwEJRdetVV5SdI5dfcssdzILyPm8IqxweERXgEzEF4Z4zqufto9/EdtVb41\n",
1938 "ZD0A9sR3Xt0XtAoMiZMGh8PY4O5kHV45uY4O+tG6ZMIrJ8Wl7TGHVzF3XsUyNhhNeOX2uu6TdKmt\n",
1939 "youh60HacmunNsu1Qn+vpB90P/QtbVW+MWBJAPaOscH0MTY4HDqvdofwSjqlbtdgbuFVcp1XznOS\n",
1940 "blcXzqXS5RpzeJVC55X1DqFowitt1pjjASEYGeGVAS64+meSXifpirpRwbcFLQpAHwiv0sfY4HDY\n",
1941 "ebU7Prw6FbSKsHLtvErxtEEpzaXtKYRXMXZeMTbYP0YGMRrCq8CKujkk6V9J+u8lXVK3nP2Xw1YF\n",
1942 "oCeEV+ljbHA4jA3uDp1XhFcpdl5JhFdWMDY4vJgCQsIrjIadVwEVdXNC0r9XF1w9L+lLCa6ApDyh\n",
1943 "7t/2saJuju/0ZESJscHhMDa4O8fclfCK8CoVhFe2MDY4vPPqTk09VNTNvtDF7IDwCqMhvAqkqJv7\n",
1944 "Jf0/kj5b0iOSPqutyl8PWxWAPrVVeVV0X6WOscHh0Hm1O3ReEV6lFl75gIfwyoaYuoK2i2Js0L1/\n",
1945 "9GHQeshalkB4hdEQXgVQ1M2XSfpDSS+X9P9J+q/bqnxf2KoADITwKm2MDQ6HnVe7Q3i1GV4dW/is\n",
1946 "9HDaYDxiDq8YGxxHLHuvCK8wGnZejaiom/3qFrN/p/uhd0n6mrYqU1usCWDTA+56X9Aq0Luibm6Q\n",
1947 "9AL3kM6r/jE2uDuEV3RepRpe0XllA2OD4yC8Arah82okRd28TNJ/UBdcXZb07ZJeSXAFJI/Oq3Sd\n",
1948 "UPdNoFNtVZ4PXUyCTqk7gffmom4OhC4mIoRXhFepvbckvLIl5s6rKMYGnVjGMwmvMJognVeTyWS/\n",
1949 "pP9J0tdIulvdd6zfKekHptPpjp9MJpPJHZJ+SNIXqbt5eFDSv5xOp28erOhdKupmTdI3Svrn6v5x\n",
1950 "PyLpK9qq/N2ghQEYiw+v6LxKDyODA2qr8kpRN09Jul3d3ite5+UQXnXBp5RReOU6QX24Q3hlmLs3\n",
1951 "8OFVDCHKdjF3XjE22D/CK4wmVOfVL0r6Lkk/J+nLJL1B0qskvXsymSw8UWEymRyT9DuSPk/S6yX9\n",
1952 "PUn/p6R/MZlM/tmANa+sqJuXqztN8KfV/cP+JUl/g+AKyMpfuutLg1aBIXDS4PAYHVwd4VWenVc3\n",
1953 "SlqTdKatykuhi+lZagvbD0naJ+lCW5UXQhezC7F0BM3C2GD/CK8wmtE7ryaTyZdJeqWkz59Op+9x\n",
1954 "P/wbk8nkPZL+WNI3S/qpBb/FD6pbwPlfTqdTf8Pw7slk8kFJPzuZTN4xnU7/dKDyl1LUzVFJ36tu\n",
1955 "NPCAujff39hW5b8JWReAIB5y15cUdbM/wZuKnHHS4PA4cXAFRd0clnRY0kXlfSORY3iV6r4rKb2F\n",
1956 "7TGPDEqMDY4llvDKn4Z4NmgVyEKIzqtvkPTbW4IrSdJ0Ov1zSW9XN2I302QyOSTpH6gbEdz+ne63\n",
1957 "qrtJ/Ppeq11BUTcHirp5jaT3S3qduuDqrZL+KsEVkKe2Ks+pGxfeJ+lFgctBvxgbHB4nDq5mo+vK\n",
1958 "HbWeqxzDq1RPGpQSGxtU/OEVY4PjiCW8ovMKoxk1vHK7rj5T0q/NecqvS/ork8lk3pvUT1H3heu6\n",
1959 "Xz+dTq9Kerekz917patxodWrJX1A0lvU7fFqJX16W5Vf21bl42PXBMAUPzrI0va0MDY4PMYGV8PI\n",
1960 "YCfH8CqHzivCKxsYGxwH4RWwzdhjg3ep+wv+/jk//xfuep82v9u61cvcdd6v/4Ckr9t1dSsq6uZu\n",
1961 "Sa9xH/Nu98PvV7dM/h1tVV4ZqxYApj2oLrhn71VaGBscHp1Xq/Hh1amFz0qfD6+OBa1iXKmeNCgR\n",
1962 "Xlnj66bzalixhISEVxjN2OHVCXed96bK//i83RYnJF2aTqfz/nGcknRwMpkcWfCcPSnq5hZJf1vS\n",
1963 "RNKXqBsFkqQ/VxdaTduqvDzExwYQLZa2p4mxweH5zit2Xi3HhzW5d16dlnRV0pGibg60VXkxdEEj\n",
1964 "oPMqHrGHVxuhSlE3a5GNKLPzqn+EVxjN2OGV/6Izb6Gb/0s/r837JknnFvz+W399L/+A3PLTT5H0\n",
1965 "30j6W+6/A+6nL0l6p6Q3SXpvZJ+8AYyHscE0MTY4PBa2r4axQUltVV4p6uZZde8Hb9ZmCJqylMOr\n",
1966 "mDt9Zok6vGqr8lJRN+fVnZp4SIvvzaxhbLB/hFcYzdjhlf/Oyfqcn/d/+Z+Z8/PPqTtFZ56dfv1c\n",
1967 "Rd28Qt0Xk5sl3aPuJvM+SX9V0sEtT70i6T9I+hVJ72yr8tFVPxaA7DzornRepYWxweGx82o1hFeb\n",
1968 "TqkLr24R4VXs6Lyy53l1wdVRRRJeFXWzprjGBgmvgG3GDq9Ouuu8HQS+42rem4yTkvYvGAu8RdKF\n",
1969 "XY4M/sqcH78q6c8k/Z6k35f07rYqn9jF7w8gX4wNJqaom/2Sblf3NYKvCcNhbHA1hFebclvanvJp\n",
1970 "gxudVxGOqc2SSnh1Ql0n06w9xRYdlrQm6XwkK14Ir4Btxg6vHlU3MvhJ6k4W3O6T3PXBGT8nSQ+4\n",
1971 "6ydK+pM5v/6BGT++jF9V90XkeUkPu9/nAUl/0Vblyp1cALDFI5IuSrqjqJsb26qM4Tt+WOw2dW+C\n",
1972 "n8hkn04ojA2uhvBqU27hVbKdV25M7ay6yY0jiqNrZpEUwitfu/Vl4lvFNDIosbAduM6o4dV0Or00\n",
1973 "mUx+V93C8zfMeMoXS/rz6XQ677vYf6yudfhLtC28mkwma5K+UNJv7qa2tipfsZtfBwA7aavyclE3\n",
1974 "D0m6X9K9kv5T0ILQB0YGx8HY4GoIrzYRXqXlOXXh1U0ivLLA/z+IaQ9ZTCODEp1XwHVuCPAx3yzp\n",
1975 "8yaTyd/a+oOTyeSvSPpK9/P+x26ZTCYb+7Gm0+k5ST8v6Vsmk8kdutZXqxvJectAdQPAXjA6mBZO\n",
1976 "GhzH0+pGM4+5UU0sRni1Kdfw6rmFz4qXD3pS2HuVQngVc+cV4VW//L064RUGN/obwel0+iuTyeRd\n",
1977 "kt41mUx+RNKfSnqZpO+W9EeS3ihJk8nkRnXjg09oc5xQkr5PXYfV/z2ZTH5U3SjiZ0r6dkn/fDqd\n",
1978 "vm+sPwsArIATB9PCSYMjcF2LT6vbrXJc7BfbCeHVJh9ezduzmpocOq+kuDp95kkhvIqx8yq2scFY\n",
1979 "witf39mgVSALITqvpK7D6sclvVrSu9QFT78k6Qum06lfoHdRXTD1ka2/cDqdnpL02ZJ+R9IPSnqn\n",
1980 "pL8j6Tum0+nrRqkeAFbHiYNpYWxwPIwOLo/walNunVcpL2yX0jpxMKXwKqbOK8YGh8HYIEYTpAV/\n",
1981 "Op1ekvRD7r95z7kg6a/P+bmPS3rNMNUBwCAYG0wLY4PjeVLdvjiWtu+M8GpTbuFVLp1XhFc2MDY4\n",
1982 "PMIrYJtQnVcAkBvfecXYYBoYGxyP77wivNqZD69OBa3CBsKrtBBe2cLY4PDMd7cVdbMmxgYxIsIr\n",
1983 "ABjHRueV+2KPuDE2OB7GBpdQ1M1BdTcRl5Xu0u5V+ACP8CoNLGy3xXywMgNjg/07qC5PuNhW5cXQ\n",
1984 "xSB9hFcAMI6n1d1UHBUdJClgbHA8T7or/24W84vJT7VVeTVoJTbk2nmVanDJwnZbGBscXgzhFSOD\n",
1985 "GBXhFQCMwN1MMjqYDsYGx8PY4HLYd3WtbMIr13V3SF3XXaqjO4wN2sLY4PAIr4BtCK8AYDwsbU9A\n",
1986 "UTeHJJ1Qd6P41A5Px94xNrgcwqtr+fDq2MJnpWHjpMGEu+4Ir2yJsfMqtrHBc+66XtSN1Xt2wiuM\n",
1987 "yuo/BABIkQ+v6LyK2wvc9bG2Kq8ErSQPjA0uh/DqWtl0Xin9fVcS4ZU1MXdeRRFeufcXvpPycMha\n",
1988 "FiC8wqgIrwBgPH5skM6ruLHvalyMDS6H8OpahFdpSSK8KurmgLoRzyva7KyJUYwL22MbG5Tsv86E\n",
1989 "VxgV4RUAjIexwTQQXo2LscHlEF5d67S6gGDdBQYpyyG8SuW0QR9CnI58xJOxwXFY33u17q6EVxgF\n",
1990 "4RUAjIexwTTc5a6EV+NgbHA5hFdbuGDAhzmpd1+lftKglM5pgymMDEqMDY7Fenjl60r1oAgYQ3gF\n",
1991 "AON5yF1fUtTNvpCFYE/ovBrXSXc9YXhprQWEV9c75a65hFcpd14lMTao9MKrmDqvYhwbjCW8iuk1\n",
1992 "RcR4EwgAI2mr8qykRyXtl/SiwOVg9wivRtRW5QV1N677lH4IsRc+vDq18Fl5yWXv1cZpg0GrGBbh\n",
1993 "lS2+/pg6rxgb7B/hFUZFeAUA42J0MH6EV+NjdHBndF5dL5fwis6reKQSXsXceRVTeGX9dSa8wqgI\n",
1994 "rwBgXJw4GD8fXj0atIq8cOLgzo65K+HVJh9eHVv4rPjlEF6lsrA9lfAqxoXtjA32j/AKoyK8AoBx\n",
1995 "ceJg/Oi8Gh8nDu6Mzqvr0XmVjo0xtaJu1oJWsjephFfnJF2VdDiiHZ6MDfaP8AqjIrwCgHExNhgx\n",
1996 "d9NEeDU+xgZ3Rnh1vdzCq2RPG2yr8pK6E83WZPdGfhlJhFfuNE/rI23bxTg2SHgFbEF4BQDjYmww\n",
1997 "bjdJWpf0fFuVUd98RIaxwZ0RXl0vt/Aq5c4rKY29V0mEV05so4OMDfaP8AqjIrwCgHExNhi3u9yV\n",
1998 "rqtx+c4rxgZnKOpmv7ob+qtKP8BYRS7hVQ6nDUpphVcpdMn5DibzJw66rmnGBvtHeIVREV4BwLg+\n",
1999 "JumipDuLurH6ZgTzMTIYBp1Xi/mF5KfaqrwStBJbcgmv6LyKB51XYRxWN3J6vq3Ky6GLWYH10UzC\n",
2000 "K4yK8AoARuTeNH3YPbw3YCnYHcKrMFjYvhgjg7MRXqVlY2l70Cr2JqXwKprOK8U5MijZ77xad9ez\n",
2001 "QatANgivAGB8jA7Gi/AqDBa2L0Z4NdspdyW8SgOdV7ZY7wraKsaRQcl+eEXnFUZFeAUA4/NL2zlx\n",
2002 "MD4+vHo0aBX5YWxwMcKr2XLrvEphj9IihFe2xDQ2GONJgxLhFXANwisAGB+dV/Gi8yqSsiF5AAAg\n",
2003 "AElEQVQMxgYX8+HVqYXPyk/y4ZVbRO3DHMIr+1IKrxgbHB7hFbAF4RUAjI/wKl6EV2FsdF65m3Vc\n",
2004 "i86r2ZIPr9TdlK9JOtNW5aXQxQyM8MoWxgaHZ/01JrzCqAivAGB8jA3Gi/AqgLYqz6hbCHtQdt/E\n",
2005 "h+RPGyS8ulYO4VUu+66kzcCH8MoGxgaHR+cVsAXhFQCMb6Pzii6S6NzlroRX42N0cD46r2Z7XtJl\n",
2006 "SetF3RwIXcxAcgqvfOdVDGNq86QUXjE2ODzCK2ALwisAGN9JdW/Cb5J0InAtWFJRN/sk3e4ePh6y\n",
2007 "lkxx4uB8hFcztFV5VZuhTqrdVzmGV3Re2RBT51WsY4OEV8AWhFcAMDJ3Q8XoYHxuV/d188m2Ki+G\n",
2008 "LiZDnDg4H+HVfKmPDuZy0qBEeGVNjJ1XhFc9cZMDvq6zIWtBPgivACAMlrbHx++7ejRoFflibHA+\n",
2009 "wqv5Ug+vfJBD55VxRd3coHjH12axvkx8q1hfd7PhlaTD7nq+rcrLQStBNgivACAMwqv4sKw9LMYG\n",
2010 "5yO8ms+HV8cWPitejA3GY2N0ra3KK0Er6Qdjg8OzHBCuu2tsgSAiRngFAGEwNhgfwquwGBucj/Bq\n",
2011 "vtQ7r3IKr3xYEsOY2iwpjQxKjA2OwY/jHTF4wA8jgxgd4RUAhEHnVXwIr8JibHA+wqv5CK/SEXvn\n",
2012 "VWrhVUydV1GODboOvXPu4eFFzw2AZe0YHeEVAIThwys6r+JBeBUWY4MzuFMwfTDzzKLnZorwKh2E\n",
2013 "V7bE1HkV69igZHfvFeEVRkd4BQBhPOSuL3E3n7CP8CosxgZn86HMsyzNnSmX8IrTBu1LNbyKqfOK\n",
2014 "8Ko/hFcYHeEVAATQVuUZdSHIAUl3By4Hy7nLXQmvwvCdV4wNXouRwcVSD69yOm1wY+eVwf0/y0gt\n",
2015 "vGJscByEV4BDeAUA4TA6GBc6r8Ki82o2f4oe4dVsqYdX2YwNus7Cs5LWFEdgsl1q4RVjg+Ow2uFG\n",
2016 "eIXREV4BQDj+xEGWtsfBh1ePBq0iX4RXs9F5tRjhVVr86GAMgcl2qYZXN0bQCcfYYP8IrzA6wisA\n",
2017 "CIcTByNR1M0RdTeJFySdClxOrp6TdFHdjZK1U5dCIrxajPAqLTHvvUoqvGqr8pKk8+ruJw8FLmcn\n",
2018 "jA32j/AKoyO8AoBwfOcVY4P23eGuH2+r8mrQSjLlXne6r65HeLUY4VVaCK9siWV0MOaxQcIrwCG8\n",
2019 "AoBw6LyKB/uubCC8uh7h1WK+UzL18CqH0wYlwitrYlnazthg/wivMDrCKwAIh/AqHoRXNnDi4PUI\n",
2020 "rxZLvfMqp9MGpc2whPDKhlg6r2IeG7S6sH3dXWN8TREpwisACOdhSZck3VXUzfpOT0ZQhFc20Hl1\n",
2021 "PcKrxZINr4q6OSjpsCR/Cl8OWNhui9VgZYNbJs/YYP98Pbl87oEBhFcAEIg79vvD7uG9AUvBzu5y\n",
2022 "V8KrsAivrkd4tdjz6sKd9aJuDoQupmcbXVcZ7eJjbNCWGMYGD0tak3Teve+KjfXwis4rjIbwCgDC\n",
2023 "YnQwDnRe2cDY4PUIrxZwoY4fqUut+yq3Ze0S4ZU1MYwNxjwyKBFeARsIrwAgLE4cjIMPrx4NWgXo\n",
2024 "vLqeD69OLXxW3lIdHSS8ikvK4ZXlzquYRwYlwitgA+EVAIRF51Uc6LyygfDqenRe7SzV8MoHOLmc\n",
2025 "NCgRXlnj/ywxdF4RXvWL8AqjI7wCgLAIr+JAeGUDY4PXO+auhFfzpRpe5dh5FUNYMk+K4VUMnVex\n",
2026 "jw1afY0JrzA6wisACIuxQePcSUU+vHosZC2g82qrom5u0GZ4xdjgfIRX6aDzypYYFrYzNjgMwiuM\n",
2027 "jvAKAMLa6LxyIQnsOS7pgKRn2qrkSOiwCK+udZO693Kn26q8GLoYwwiv0kF4ZUtMC9sJr/pFeIXR\n",
2028 "EV4BQFhPqXsje7M2d9fAFkYG7WBs8Frsu1oO4VU6ogyv3DenfMATa4gyi9WRtq1iHxskvAIcwisA\n",
2029 "CMgd487ooG2EV3acknRF0i1F3ewPXYwBhFfLIbxKR5ThlaRDkvZJOp9YlyRjg8OzGl6tuyvhFUZD\n",
2030 "eAUA4bG03ba73PXRoFVAbVVekXTSPTwRshYjCK+Wk2p4leNpgz4siS28SnFkUGJscAxWu9t8mMY6\n",
2031 "BYyG8AoAwiO8so3OK1v83itGBwmvlpVqeJVz55XlsGSWVMOrGDqvGBscBmODGB3hFQCEx9igbYRX\n",
2032 "trC0fRPh1XIIr9IR69hgquEVnVfDMxdeuZNu/dggnVcYDeEVAIRH55VthFe2+KXthFeEV8sivEqH\n",
2033 "D3+ORnZCb+rhVQydV4RX/TnsrufcOD8wCsIrAAjPd14RXtlEeGULY4ObfHh1KmgV9hFeJaKtysvq\n",
2034 "bubXZDsw2S7V8CqmscFYwyvf2XTEUGDLyCCCILwCgPAectd7i7rZF7IQzER4ZQtjg5vovFoO4VVa\n",
2035 "YhwdTDW8YmxwYG1VXpJ0Qd19+8HA5XiEVwiC8AoAAmur8oykxyQdkPTCwOXgeoRXtjA2uOmYuxJe\n",
2036 "LZZqeJXjaYPSltHBoFWsJvXwis6rYVl7nQmvEAThFQDYwNJ2g4q6OaBuPO2KNkMThMXY4CY6r5aT\n",
2037 "anhF51U8Ug2vGBsch7W9V4RXCILwCgBsYGm7TXe462Nu1wrCY2xwE+HVck6rC6CPuEA6em73jQ+v\n",
2038 "cuu8Iryy45ykq5IOG157QHjVP8IrBEF4BQA2EF7ZxMigPYwNbiK8WkJblVeVXvfVjeqWlp9xO3Fy\n",
2039 "QnhlhPu3Zb37ivCqf4RXCILwCgBsYGzQJsIrexgb3ER4tbzUwqtcRwYlwitrrC9tJ7zq37q7El5h\n",
2040 "VIRXAGADnVc2EV7Zw9igNsbGCK+WR3iVDh8AEV7ZYG2Z+Ha+rphfe2vhla/jbNAqkB3CKwCwgfDK\n",
2041 "JsIre06664mibnJ+H3NU0j51Y2MXQhcTgdTCq1xPGpQ2/8xWO31mSTm8sj426F/7mDuvrAWEjA0i\n",
2042 "iJzf9AGAJQ9LuiTphUXdrO/0ZIyG8MqYtiovqgsibpB0LHA5IdF1tZrUwqucO68YG7SFscHhWe28\n",
2043 "IrzCqAivAMAAt3D3I+7hPSFrwTUIr2xidJDwalWEV+kgvLLFWlfQhqJu9ks6qO5ExHOBy9kLwitA\n",
2044 "hFcAYAmjg/b48OrRoFVgO3/iYM5L2314dSpoFfEgvEoH4ZUt/s9ksfNqo+vKnYwYK8IrQIRXAGAJ\n",
2045 "Jw7ac5e70nllC51XdF6tivAqHSxst8Vs55XSGBmUCK8ASYRXAGAJnVeGuNPcGBu0ifBqc98X4dVy\n",
2046 "UguvfHCTY3jFwnZbLC9sTyW8shYQEl4hCMIrALCD8MqWo+reoJ1RmjccMWNskM6rVaUWXvnOq5xP\n",
2047 "G6TzygbLC9tTCa/ovAJEeAUAljA2aMtG11XkuzJSROcV4dWqUg2vcu68IryywVpX0FaEV8MgvEIQ\n",
2048 "hFcAYAedV7YwMmiX77wivCK8WhbhVTqiCq+Kujkg6ZCky5LOBy5nCIwNDo/wChDhFQBY8qS6N4G3\n",
2049 "FHVzfKcnY3CEV3b5zivGBgmvlkV4lY6owittBiinE+3iZWxweNbCq3V3JbzCqAivAMAI96bWd18x\n",
2050 "Ohge4ZVdjA0SXq2K8CodvtPHYlgyS8ojg1IcnVexv/bWwitfx9mgVSA7hFcAYAujg3b48OrRoFVg\n",
2051 "FsYGCa9WdcpdUwmvcj5tcCO8cqfCWpd6eGW588rXFHvnlbW9YowNIgjCKwCwxS9tJ7wKj84ruxgb\n",
2052 "JLxaVaqdV9mdNthW5WV1N81rsnMzv0gu4ZXF/xeMDQ6D8ApBEF4BgC2MDdpxl7sSXtmzMTYYSefF\n",
2053 "EAivVvO8uoXZR4q6ORi6mB7kPDYoxbX3KvXwKoaxQcKrfhFeIQjCKwCwhbFBO17orowNGtNW5Tl1\n",
2054 "NyMHZHNUZVAusPPh1alFz0XH7RRMqfuK8KpDeBWe5bFBwqthEF4hCMIrALCFsUE7fOcV4ZVNOY8O\n",
2055 "HlEX3J1vq5KFuctLYu+V6xw7rK6TLNf//z4IIrwKj7HB4RFeASK8AgBrHnLXe4u64XN0IEXd7Jd0\n",
2056 "u6Srkh4PXA5m80vbcwyvjrkrI4Or8Z1XxxY+y76NZe2uoyxHvvPKYrfPdqmHV4wNDs9MQFjUzT5J\n",
2057 "h9zDcyFrQX64MQIAQ9qqfF5dWHJQm2NrGN8d6pYBP9ZW5aXQxWCmnE8cZN/V7iTReaW8Txr0GBu0\n",
2058 "g7HB4fkOyyMG9jyuu+uZjMNzBEJ4BQD2MDoYHvuu7Mu58+qEu54MWkV8fHgVe+dVticNbkF4ZcdG\n",
2059 "V5CBYGW7JMKrtiovSrooaZ+6kfGQGBlEMIRXAGAPJw6Gx74r+wivCK9WlcrC9tyXtUuEV2a47uTz\n",
2060 "6u4rDwcuZ7skwivHyt6rjc6roFUgS4RXAGAPJw6GR3hlX84L2wmvdie1zivCK8IrK8zsZNqG8Kp/\n",
2061 "/uPnelgEAiK8AgB7GBsMj/DKPjqvCK9WlcrCdsKrzSDI4p6l7XIIr6wubff1pPDaWwuv6LzC6Aiv\n",
2062 "AMAexgbD8zuvHglaBRbJObzyC9sJr1aTysJ2wis6r6yxurTd15NC55WV7jbCKwRDeAUA9jA2GB6d\n",
2063 "V/blHF7RebU7qYwNctog4ZU1VoKV7Rgb7B/hFYIhvAIAez4q6bKku4u6sbb8NBeEV/b58OrWoFWE\n",
2064 "QXi1O6ktbOe0QcIrK6yOcRJe9Y/wCsEQXgGAMe7kno+4h/eErCVjhFf20XlFeLWqVDqvGBskvLLG\n",
2065 "XOdVUTf7JB2SdFVpLBcnvEL2CK8AwCaWtgfi3vDe6R5+PGQtWGjjtMGibtaCVjI+H149HbSK+LCw\n",
2066 "PR0+CCK8ssHiwnZfy5m2Kq8GraQfhFfIHuEVANjE0vZwblf39fHJtiovhC4Gs7VVeV5d98V+bd7M\n",
2067 "54LOq91hYXs6fOeVtTG1WXIIrywubE9pZFAivAIIrwDAKJa2h8PIYDxyHR0kvNqdVDqvWNjO2KA1\n",
2068 "5sYGlV54ZeU1JrxCMIRXAGATY4PhEF7FI7vwqqgb32l2VZthDJbjX6+bi7qJ+T0wnVeRhFfu79nG\n",
2069 "+FrIWgZmeWwwlfCKzitkL+Yv3ACQMsYGw3mhuxJe2ZddeKXNrqGn26q8ErSSyLjDME6re/9rabxp\n",
2070 "VZw2GEl4pc0b/ecT//fK2ODwrIRX6+5KeIXREV4BgE2MDYbjO68eCVoFlpFjeMXI4N6kMDrod3bl\n",
2071 "3Hm1EZYY76LLYWRQovNqDFbCK//xUzjBEZGx/MkeAHL2hLo3XMeKujkeupjMMDYYD8IrrCqFpe2+\n",
2072 "9mzHRtuqvCw7N/OL5BJeWe68SuW1t/L3nbFBBEN4BQAGuWOd6b4Kg/AqHjmHV08HrSJeUXdeFXWz\n",
2073 "T5ujcjmPDUpxjA7mFl5Z6rzyr30qnVdWXmPCKwRDeAUAdhFehcHOq3g85a45hld0Xu1O7J1XG8GV\n",
2074 "6z7KGeGVHYwNDo/OK2SP8AoA7OLEwTDovIpHjp1XfoyY8Gp3fHgVZeeVNpe1ZzsyuAXhlR2WxwYJ\n",
2075 "r/pFeIVgCK8AwC5OHBxZUTdrku50Dwmv7MsxvKLzam986BNr51X2+662ILyyw8pI21aEV8NI7XVF\n",
2076 "RAivAMAuxgbHd6ukA5JOtVXJSTr2EV5hVbF3XhFebfKBEOFVeIwNDs+HV6FfY//x6bzC6AivAMAu\n",
2077 "xgbHx76ruBBeYVVRL2zXZnj1bNAqbPCdV5ZG1bbLJbxibHB4VrrbUntdERHCKwCw6yF3fWlRN3y+\n",
2078 "Hgf7ruLiA5wT7hS2HBBe7U3sC9vpvNrE2KAddF4Nz0p45ccWU3ldERFuhgDAqLYqT0t6QtJBbYYq\n",
2079 "GJZ/nR8JWgWW0lblRXVhxA2Kt5NmVYRXe5NK5xXhFeGVJXReDc9KeMXYIIIhvAIA2xgdHBedV/HJ\n",
2080 "bXTQh1dPB60iXnRepYPwyo5zkq5KOmSoC5bwqmfuUBs6rxAM4RUA2MaJg+Ni51V8cguvjrsrnVe7\n",
2081 "E/vC9pvdlfCKhe1mtFV5VfZGB30dqbz2G6cNuhAphMOS1iSdb6vycqAakDHCKwCwjRMHx0XnVXyy\n",
2082 "Ca/cDQudV3vD2GA6YljY7oO1VAKURayNDibVeeXCorPqwqP1QGUk9ZoiPoRXAGAbY4PjIryKTzbh\n",
2083 "lbob4X2STrdVeSF0MZFibDAdMYwN+tqeW/isNAQfa9vGh2gpBS2hX2P2XSEowisAsI2xwXGxsD0+\n",
2084 "OYVXLGvfu1Q6r54NWoUNMYRXfswzh/DKd5fReTWc0N1tKb6miAjhFQDYRufVSNxIFjuv4kN4hVWc\n",
2085 "lXRR3WLpw6GL2QU6rzbFEF7ReRVOikFL6NeYZe0IivAKAGz7qKTLku4u6uZQ6GISd0zSIXUjWTns\n",
2086 "J0mFD69uDVrFOAiv9sgtlo55dJDwalNM4VUOnXJWF7anFLSEDq8YG0RQhFcAYFhblZfUBVhrku4J\n",
2087 "XE7q7nbXjwWtAqt6yl1z6LzyJw2yrH1vfPBDeBU3a2Nqs+TYeRX8/0dRN/vUnYwndd2WqbASXqUU\n",
2088 "CCIihFcAYB+jg+PwI4Psu4oLY4NYle+8inHvFeHVppg6r3IKryx0XvnxtjNtVV4JWkm/Qr/GjA0i\n",
2089 "KMIrALCPpe3j8OEVnVdxIbzCqqJc2u728vkF4DmMoe3EdHhV1M0BdaPolyWdC1zOGCyNDabaIRQ6\n",
2090 "vEr1dUUkCK8AwD4fXtF5NSw/NkjnVVwIr7CqWHde3ajuvfuZtiovhi7GgI2xwaJuLN7TbHRduV1r\n",
2091 "qTMzNqh0QxYr4RU7rxCExU/0AIBrMTY4Djqv4vS0pKuSjhd1sz90MQMjvOpHlJ1XYmTwGm4cLPTN\n",
2092 "/CK+Sy6HkUGJzqsxhP77ztgggiK8AgD7GBscBzuvItRW5WVthjknFj03AYRX/Yi188rXy8jgJh+Y\n",
2093 "WBwdzGnflWSz8yq1k4NDh1ephoKIBOEVANjH2OA4GBuMVy6jg4RX/Yh1YTudV9ezvPfK15RL2Bg6\n",
2094 "WNnKB2iphSyhX2PGBhEU4RUA2Pe4ujcKx4u6ie1mKyaMDcYrl/DquLs+HbSK+DE2mA4fDFkOr3Lp\n",
2095 "vGJscHhWwqvUXldEgvAKAIxzi17pvhpQUTf7JN3pHj4ashbsSi7hFZ1X/Yh9bJDwapMPr25e+Kww\n",
2096 "cguvLI4NphayhA6v2HmFoAivACAOhFfDeoGkfZKeaKvyQuhisDLCK6wi1s4rH9AQXm0ivLIjdLCy\n",
2097 "FeHVMFJ9XREJwisAiAMnDg6LZe1xSz68KupmXdK6pAti38he0XmVDsvhVa6nDdJ5NRwr4RVfgxAE\n",
2098 "4RUAxIETB4fFsva4+fDq9qBVDMvvuzrpRomxeyxsT4fl8IrOq3BSDa9C7xVjbBBBEV4BQBwYGxwW\n",
2099 "y9rjlkN4xchgf3z4E2vnVS6n1y2D8MqO0MHKVqmGV6EDwlRfV0SC8AoA4sDY4LAYG4zbE+6a7Nig\n",
2100 "tnReBa0iDXRepSOG8CqXsJGF7cML/RozNoigCK8AIA4bnVdF3fC5u39+bJDOqzj58IrOKyzDd8Lc\n",
2101 "7E4ajQXh1fViCK9y6bwK3RW0VerhFWODyBI3QAAQgbYqT6u7QT8k6c7A5aSIzqu45RRePR20igS0\n",
2102 "VXlZm6HHTYueawzh1fUIr+zYCFaKulkLWgnh1VBSfV0RCcIrAIgHe6+Gw8L2uG2EVwZumoZC51W/\n",
2103 "fAAU0+gg4dX1CK+MaKvykqTz6u4vDwcux4cspxc+Kz6EV8ga4RUAxIMTB4fDwva4PS/pnLobJgsj\n",
2104 "K0MgvOqX33sV09J2H9AQXm2yHF75mrIIr5zQ4Yrnd0KlFrIE625zKyv82ODZMT824BFeAUA8WNo+\n",
2105 "gKJuDkm6VdIlbXbwICJtVV5V+qODfhn9U0GrSIcPr44vfJYtdF5dz3J4lVXnleM7nUIvbU+yQ8iN\n",
2106 "PJ+XtKbxu9v8xzvn6gBGR3gFAPFgbHAYvuvq0bYqrwStBHuRenh1q7sSXvUjqhMHXZcF4dX1CK9s\n",
2107 "sdJ5lWR45YR6jVN+TREJwisAiAdjg8NgWXsannTX2xY+K16EV/3yi++jCK/UdT0ckHShrcrzoYsx\n",
2108 "hPDKFt95ZSW8Sm3nlRQ+vDoz8scFNhBeAUA8GBscBuFVGui8wipiGxuk62o2k+GV65Tzo3M5hVc+\n",
2109 "WAk9NuiDQ8Kr/vh9V3ReIRjCKwCIx0clXZH0oqJuDoYuJiH+pEGWtceN8Aqr8J1XhFdxO6duX+Eh\n",
2110 "t7/QihvV7SU6k9l+ICtjgykHh6E7rwivEAzhFQBEoq3Ki+oCrDVJ9wQuJyV0XqUh2fDKdXEQXvUr\n",
2111 "trFBwqsZ3GENvvvqpkXPHVmOI4OSgbFB9829g5L8cvPUEF4hW4RXABAXRgf7R+dVGpINr9SNaxyS\n",
2112 "dLatSvaN9CO2sUE/Fkd4dT2Lo4O+ltzCKwtjg/5jn3bhZmpCjw3yNQjBEF4BQFw4cbB/dF6lIeXw\n",
2113 "iq6r/jE2mA6L4RWdV+GkPDIo0XmFjBFeAUBcOHGwf4RXaUg5vPInKBJe9YexwXQQXtlhqvMqYA1D\n",
2114 "IrxCtgivACAujA32yO0SYmwwDSmHV3Re9S+2sUEfXj278Fl5Iryyw8LC9pRPGpTCdbf5j8fYIIIh\n",
2115 "vAKAuNB51a+b1L0hOyNuCmPnw6vbFj4rToRX/WNsMB2Ww6vcvq4wNji80Duv6LxCMIRXABAX33lF\n",
2116 "eNWPja6rRBe75uQZdadL3VzUzaHQxfSM8Kp/jA2mw3J4lWqAMg9jg8ML9RozNojgCK8AIC6Pq3vj\n",
2117 "cLyom1g6Bixj31Ui2qq8IulJ9zC17ivCq/6dkXRJ0nokYSfh1XwWw6tcTxv0gRHh1XDYeYVsEV4B\n",
2118 "QERcd9AD7uF9IWtJhO+8IrxKQ6p7rwiveuY+l8bUfUV4NZ/F8CrXzisL4VXqr33osUF2XiEYwisA\n",
2119 "iA/hVX98ePVw0CrQl9TDqycXPgurimnvlQ9mCK+uR3hlh//z3rTwWcOi82oYdF4hOMIrAIgP4VV/\n",
2120 "XuSuhFdpSD28ovOqXzGdOEjn1XyEV3YQXg2P8ArZIrwCgPgQXvWH8CotqYZXfocX4VW/GBtMA+GV\n",
2121 "HRbCK/+xCa/6xdgggiO8AoD4EF71h/AqLT68YmE7lhHT2KAPr55d+Kw8EV7ZYSG88p1Xqb72dF4h\n",
2122 "W4RXABAfwqv+EF6lJdXOK8KrYTA2mAbL4VVuYaOl8IrOq34RXiE4wisAiM9H1B3xfndRN4dDFxOr\n",
2123 "om4OSXqBpMuSHgtcDvqRXHhV1M0BdTflV0Rw0bcoxgaLujko6bC6z1WM7FzPYnjla0m1+2eeM+o+\n",
2124 "V60XdbM/UA2MDQ6D8ArBEV4BQGTaqrwk6cOS1iS9NHA5MXuhuz7SVuXloJWgL/40vmTCK0kn3PVk\n",
2125 "W5VXglaSnlg6rza6rtqqvBq0EpsshldZjg26v58+NDq66LkDYmxwGOy8QnCEVwAQJ0YH946RwfQk\n",
2126 "13klRgaHFMvOKx/K0Hk3G+GVLaFHBxkbHAadVwiO8AoA4kR4tXeEV+khvMIqohgbFPuudvK8pKuS\n",
2127 "bizqZl/oYhzCq3DhVTZjg0XdrI34cQmvEBzhFQDEifBq7wiv0uMDnhOGbmL3yodXTy58FnYjlrFB\n",
2128 "H66dWvisTLlx2tCByQa3o+yguh1l5wKXE0Lo/xdJjw22VXlR0kVJ+9T9PRtcUTc3SFp3D8+O8TGB\n",
2129 "WQivACBOhFd7R3iVGLcP7qS6fXC37vD0WNB5NZxYOq98uEZ4NZ+l0cGNrqtMd5RZCa9S7bySxh8d\n",
2130 "3Aiu2L2IkAivACBOhFd758OrjwWtAn3zo4O3Ba2iP/7PQXjVv1h2Xvlw7emFz8qbpfDK1/Dswmel\n",
2131 "K1h45cbocgiv/J9trPCKkUGYQHgFAHF60F1fmtB41NjovEpTanuv6LwaDmOD6bAUXuW870oK23l1\n",
2132 "SNJ+SRfaqrwQ4OOPxYdIY53oSHgFEwivACBCbVU+L+nj6vYd3B24nFgRXqWJ8ArL8gvQb3Y7Xaxi\n",
2133 "bHBnhFd2hAyvcui6ksYfGzzirmdG+njATJa/UAMAFmN0cJeKutkv6U51J1Q9Grgc9IvwCktpq/Ky\n",
2134 "ugBrTZsn+lnE2ODOCK/sILwa3tjhFZ1XMGF/iA86mUxKSd8v6b+QdEnSf5T0PdPp9H1L/vqHJL1k\n",
2135 "zk//4+l0+pN91AkAxj0g6TPVhVe/HbiW2Nyp7hs4H098tCBH/lQ+wiss45S64Oq47IZDdF7tjPDK\n",
2136 "jpDhVS6vPeEVsjR659VkMvnvJP2munGXr5H0zerGXn5nMpl86pK/zVVJ/0bS58747109lgsAltF5\n",
2137 "tXuMDKaLziusIoYTB+m82hnhlR10Xg2PsUFkadTOq8lksi7pLZLeMZ1OX7Xlx98l6T2S3izp05b8\n",
2138 "7R6eTqe/03+VABANwqvdI7xKV6rh1ZMLn4XdiuHEQRa274zwyg7Cq+HReYUsjd159XclvUDS92z9\n",
2139 "wel0ekXS6yV9ymQyKUauCQBiRXi1e4RX6UomvHLHvvvw6mTIWhIWw4mDjA3uzFJ45WsgvBqf/5iE\n",
2140 "V/0ivIIJY4dXnyvpz6bT6Udm/NzvqfvC8zlL/l5rfRUFAJHaCK/cTS6WR3iVLh9e3Ra0in7cImmf\n",
2141 "pOfYzTYYxgbTYCm88gHKswuflS4LnVepB4ehxgYJrxDU2AvbXybp/bN+YjqdXp5MJh/Sch0Ea5Je\n",
2142 "MZlMXqnuzelHJP1rST82nU55cwcgF0+qe4N2i6QTYifOKgiv0uXDqxcEraIf7LsaHmODabAYXqUe\n",
2143 "oMxjIbyi86pf/uOw8wpBjd15dUKLv/Ce0nLfKX1S0jskfYOkL1O3L+v7Jf3qZDKh+wBAFtqqvKrN\n",
2144 "7quXhawlQoRX6XrcXW8v6mb0g2l6Rng1PNNjg0XdHJK0ru50bm4c5yO8soPwaniMDSJLY3deHZV0\n",
2145 "dsHPn9VyX3Q+fTqdXtry+Ncnk8mfqFv4/g8kvW3XFQJAXD4k6ZPVda3+QeBaYkJ4lai2Ki8UdXNK\n",
2146 "XbfKccUd/BBeDc/62ODGyKD7hgVmI7yyw8LOq9Rfe8IrZGlP4dVkMvlOST+2xJVVU8sAACAASURB\n",
2147 "VFPfO51OS3WfSNYXPO+IlniDti248j/2lslk8i2SXiXCKwD5+JC70nm1JNeNc7d7+LGQtWAwj6u7\n",
2148 "6X+B4g5+CK+GZ31skJHB5RBe2UHn1fBC7byi+xNB7bXz6l9J+ndLPM//RT+pxW8ObpH0gT3U839J\n",
2149 "muzh1wNAbHx4dX/QKuLyAnVf/55sq/Jc6GIwiMckvVzSHZL+PHAte0F4NTwfClntvOKkweUQXtlB\n",
2150 "eDU8Oq+QpT2FV9Pp9GmtdvLJA5I+Y9ZPTCaTG9R1DvzyHkq6oG4nAADk4oPuSufV8hgZTJ/fexX7\n",
2151 "0nbCq+HF0nnFSYOLWQqvfA1ZhldtVZ4v6uaipANF3Rxqq/L8iB8+l+CQ8ApZGnuR6Xsl/bXJZPKS\n",
2152 "GT/3Weo+2b930W8wmUzWJpPJvBMJP0vSn+2lQACIDGODqyO8Sl9q4dWTQatIm/Xwis6r5fiw4uai\n",
2153 "bkIf3uQDlGcXPittvvNp7O6rXDqv/J9v7LFBwisENXZ49avqjrD+4a0/6LquXi/pT6bTabv1xyeT\n",
2154 "yR3bfo9flPT7k8nkzm2/x1eq6+r6XweoGwCselTdYRe3FXVjdezFGsKr9D3mrtvfQ8TGn8BM59Vw\n",
2155 "rI8N0nm1hLYq/WmMaxrvhn6eXLp/Fgk1OphLeBWq84qdVwhq1PBqOp2elfQNkr5yMpm8fTKZvGIy\n",
2156 "mbxS0rslFe7ntnqTpI9NJpOto4Y/LumwugDr6yeTyRdOJpM3SPoFST83nU7/9+H/JABggzt9iu6r\n",
2157 "1RBepS+1zivCq+FsdF4Z6NiZhYXtyws+OugOBMklQFkkVHiVS3Dow6ujC5/VH8YGYcLYnVeaTqf/\n",
2158 "VtIXqTvp6a2SfkbSZUmfM51O/3Db0x9W96bimS2//o/UdVi1kn5I0q9I+mxJ3zCdTl8z+B8AAOxh\n",
2159 "79VqfHjFSYPp8uFV7J1XhFcDc/t4zko6oM3RGEsYG1xe8PBKm+HJ6bYqLwesIzQ6r4YV6rRBwisE\n",
2160 "tdfTBndlOp2+R9J7lnjeD6kLqLb/+H+W9BUDlAYAMaLzajUvdlc6r9LlxwZj77xibHAcpyStq+ty\n",
2161 "snZzxtjg8iyEV7e46zMLn5U+wqthMTaILI3eeQUA6B3h1Wp8ePXhoFVgSNGPDboRttvdwydC1pIB\n",
2162 "y0vbGRtcHuGVHaHDq1zGBjltEFkhvAKA+BFeLamom31i51UOUhgbPCrpkKSzbVVywzAsy+EVY4PL\n",
2163 "8+HV2IHJVoRXndHDKxf4+/Aq6c+ZbVVekHRJ0v6ibg6O8CEJr2AC4RUAxM/vvLo/aBVxuEPdbpsn\n",
2164 "2qo8G7oYDOYZSRckHS3qxuIeo2XQdTUeyycOMja4PDqv7AjRebWu7t72nDt9MnWjdF+5QwgOu4e8\n",
2165 "b0JQhFcAEL9HJJ2T9IKibkK+aY/BS9z1I0GrwKDcKZy+++r2Rc81jPBqPHRepcFSePXswmelL0R4\n",
2166 "lcvIoDfW6KD/BtAZ97UVCIbwCgAi11blFUkPuIf3hawlAoRX+Yh9dJDwajw+vLLceUV4tTMfGN2y\n",
2167 "8FnDovOqEyK82jjpccSPGZL/cx5d+Ky9Y2QQZhBeAUAa2Hu1HMKrfMR+4iDh1Xh8MGSq88rt8CG8\n",
2168 "Wp4PjAivwgvZeZVLeDXWa+x//1w62mAY4RUApMHvvSK8WozwKh+xnzhIeDUeq2ODRyXtUzeucyF0\n",
2169 "MRHwgVHIDjrCqw7h1fDGeo1ze11hGOEVAKTBd16xtH0xwqt8+M4rxgaxE6vhFV1Xq/GvE51X4YUc\n",
2170 "G8ylQ4jOK2SH8AoA0sDY4HIIr/JB5xWW9ZS73hq0iutx0uBqLJwaSXjVofNqeIRXyA7hFQCkgfBq\n",
2171 "OYRX+WBhO5Z10l1PBK3iepw0uBrCKzsIr4bH2CCyQ3gFAGn4qKTzku4q6mboY5Oj5F6XWyVd0Gaw\n",
2172 "gXSxsB3LovMqDYRXdjA2ODw6r5AdwisASEBblVckPege0n0124vd9aPu9ULaGBvEsqx2XrHzajXs\n",
2173 "vLKDzqvhjd15RXiF4AivACAdjA4uxshgXhgbxLI2wquibiy9N2ZscDUbpw0WdbMWqAbCqw7h1fD8\n",
2174 "n3OszqtcXlcYZukLNABgbwivFiO8yosPfW4r6mZf0EpWVNTNuqQbJV2U9GzgcpLXVuUlda/zDZJu\n",
2175 "DlzOVowNrqCtynPqxucPSjocqAz/94fwqnN0xCAxtw4hxgaRHcIrAEjHB9315UGrsIvwKiNtVV5U\n",
2176 "11Fzg+yNg+1ko+uqrcqrQSvJh+++srT3is6r1QXbe+VCGh9eZR06u0D4nLrPv+sjfdjcOoRY2I7s\n",
2177 "EF4BQDo+4K73B63CLsKr/MQ6OsjI4Pj80nZLQSc7r1YXcmn7UXX3VmdceJ67sUcHcwtZNrrbBv44\n",
2178 "dF7BDMIrAEiH77wivJqN8Co/sZ44SHg1PoudV4wNri7k0nb2XV0rVHiVS8jC2CCyQ3gFAOl4WF2b\n",
2179 "/p1F3Vja22KFP22Q8CofsZ44SHg1PoudV4wNrm5jaXuAj014da2xwyvGBoeRW0cbDCO8AoBEtFV5\n",
2180 "RXRfzeROEPPh1UdD1oJRMTaIZVnuvCK8Wl7IsUHCq2sxNjgsOq+QHcIrAEiL33vF0vZr3S7pkKSn\n",
2181 "2qp8PnQxGA1jg1iWxc4rxgZXR3hlB2ODwyK8QnYIrwAgLYRXs7HvKk+MDWJZFjuvGBtcHeGVHYwN\n",
2182 "DouxQWSH8AoA0kJ4NRvhVZ4YG8SyTHVeFXWzX91N6VVJzwYuJyYsbLeDscFhnZV0RdJh9/liKHRe\n",
2183 "wQzCKwBIC+HVbIRXeWJsEMuy1nm1EYS4fYZYDgvb7RgtvHJ7LW90D7NYDdBW5VVtBnWDvMZF3awp\n",
2184 "v442GEZ4BQBp2Qiv3JsOdAiv8kTnFZZlqvNKLGvfLcYG7Riz8+qIuz6fWdg79Gt8UNJ+SRfbqjw/\n",
2185 "0McAlkZ4BQBpeUrdm/ebFV+3yZAIr/LEzissy1rnFcvad4fwyo4xw6tcu4OGfo0ZGYQphFcAkBDX\n",
2186 "Rs7o4PUIr/L0nKRzko4UdXPjTk+2oKibg+pugi+L4GJM1jqvWNa+O4RXdowZXuW278rzr/HRhc/a\n",
2187 "vVxDQRhFeAUA6SG8uh7hVYZcmBvb6OBt7vpUZuMvoW2EHkXd7AtaSYexwd1hYbsddF4Nb+jX2Idi\n",
2188 "dF7BBMIrAEiPD6/uD1qFEUXdHFY3NnZR0scDl4Px+aXtsYRXjAwG0FblZXXBx5rCdO1sx9jg7rCw\n",
2189 "3Y4xw6tcX3vGBpEVwisASA+dV9e6x10fppMlS4RXWJYfHbSw94qxwd2xMDb4bICPbdGY4dXN7kp4\n",
2190 "1a9cxzFhFOEVAKSH8Opa97rrX4YsAsE86q53Ba1ieYRX4fil7Rb2XjE2uDtnJF2StF7UzaGRP3au\n",
2191 "3T/z0Hk1PB8q0XmFLBBeAUB6PuiuLzOyuyW0l7or4VWe/KjonUGrWB7hVTiWOq98gMbY4ArcnrtQ\n",
2192 "e69yDVDmIbwa3lhjg3RewQTCKwBITFuVpyU9IumQpBcHLscCH149FLIIBEPnFZZlqfPKB2hPLXwW\n",
2193 "Zhk9vCrqZk35jq7NEyK8ym1kk4XtyArhFQCkidHBTfe6K51XeaLzCsuy1HlFeLV7IfZeHZG0T9K5\n",
2194 "tiovjPhxLWPn1fBY2I6sEF4BQJr86CDhFZ1XuaPzCsui8yoNIU4czHVsbZHn3fXGEVYY5Pr6MzaI\n",
2195 "rBBeAUCa6LzadK+70nmVJx9e0XmFndB5lYYQnVe5hidzudN9/Rjf0N1XjA0Og7FBmEJ4BQBpIryS\n",
2196 "VNTNUXVhwHltjo8hL4+5651F3cTwvofwKhw6r9JAeGXHWF1wuY8NHl34rN1jbBCmxPAmDgCwOsKr\n",
2197 "zj3u+mH3XWBkpq3Kc+pObNsvGx01OyG8CsdE51VRN+uS1iVdFOM6uxHitEHCq9nG+n+R6+vP2CCy\n",
2198 "QngFAGl6UNJlSfcWdXM4dDEB+X1XjAzmLYql7W4vjO/6oeNmfFY6rzb+DrRVeTVoJXGi88oO/3oQ\n",
2199 "Xg2DsUFkhfAKABLkTjt6QNKapPsDlxMSy9ohxbO0/VZ1/2ZPtlV5KXQxGfKBYejwipHBvWFhux1j\n",
2200 "BYm57rzyHVGcNogsEF4BQLre766fFLSKsO51Vzqv8hZF55UYGQzNd16FHi8lvNobOq/sGKvzKved\n",
2201 "V4wNIguEVwCQLsIrOq/QiaXz6gXuSngVxjOSrki6uaibAwHr8OHVyYXPwjyEV3YM3gXnDuLItUOI\n",
2202 "sUFkhfAKANJFeEXnFTqxdF75+h5d+CwMwh3q8LR7eDxgKXRe7Q0L2+0Y4//FTerGrU+3VXl5wI9j\n",
2203 "0Tl1+00PFnVzcIDfn84rmEJ4BQDpIrxiYTs6sXRe+fDqsaBV5M3C0nbCq72h88qOMfaP5ToyKHeg\n",
2204 "w5DdV7l2tMEowisASNdfuOsnubb6rBR1c0zdG+Yzkp4MXA7Ciq3z6uMLn4Uh+cAo5N4rwqu9YWG7\n",
2205 "HWN0XuX+2g8SXrnR6UPqRqnP9vl7A7uV3c0MAOSircqTkh6XdETS3YHLCeFed/1LjpvPXiydV3e4\n",
2206 "K+FVOHRexY/OKzvGCBJzf+2H6rzy+65O8x4KVhBeAUDach4dZFk7PDqvsCw6r+J3Wl23yNGibvaP\n",
2207 "9DFzD1DmGbPz6v9v787DJLvreo+/JzOTmUkmM9kzQZIMSYAQEUEoWRKvuScqiwsu8FMuj3IRVJTF\n",
2208 "BUrUiwpcLsst8MplUbZrQFE5EGQNCKQMyF6sMWxJTCY72UkmyyyZmfvH+Z3uyaS7upazVZ3363ny\n",
2209 "nFT3qVO/p7unu+pT3+/3d3uJj9FkZYdXtgyqMQyvJGm+tTm82hqPzrvSrcBOsl3kDql7MUMYXtWv\n",
2210 "CZVX+WMbXk0gDt7PQ6RNw84tkOHV0vKvR5nhVWtnXkX5MPWNQ88an/Ou1DiGV5I039ocXll5JWBh\n",
2211 "qO0sVF8ZXtXPyqv5UHXroOHV0qr4PrT9a19W5ZU7DapxDK8kab61ObzaGo9WXgkWA6FGzr3q9Pqr\n",
2212 "gWPizRvqXEvLNaHyyvBqepUNbe/0+qswQFlOFZVXtg1mbBvU3DO8kqT51ubwKq+8MrwSLA5tb2rl\n",
2213 "1dFkz8tuHnST3XUvpsVqrbyKO8PmwdmtdaxhTlRZebUBWAPsHHSTnRU83ixxYHv5rLxSaxheSdJ8\n",
2214 "uxLYAdyv0+tXNfujdvGd8K3x5rb6VqIGaXTlFbYMNkXdlVebyZ6fbx90k101rWEeVBletT08GeZu\n",
2215 "YDewrtPrry/pMdo+86rs8MrKKzWG4ZUkzbFBN9kDXBxvPrjOtVTsKLKS99sG3cTqBcFi5ZXhlYap\n",
2216 "e+aVLYPFqGKXu5zh1TLivMGyWwfb/vW3bVCtYXglSfOvja2DDmvXgZo+sN3wqhnqrrwyvCpGlZVX\n",
2217 "ba/8WUnZQaIzrzK2DWruGV5J0vxrY3i1NR6dd6XcrFReXV/rKpSHRkfX9PiGV8WwbbA5yp571fbw\n",
2218 "0LZBtYbhlSTNvzaGVyfHo+GVclZeaRTbgV3AIZ1e/5AaHt/wqhiV7TaIlT8rqaryyvCqWLYNqnEM\n",
2219 "ryRp/rUxvDo1Hi+tdRVqkqZXXh0Xj4ZXNYozem6MN4+pYQl5u6Lh1XSqrLw6Ih5vGXpWe5UdJLY9\n",
2220 "PMzb+mwb1NwzvJKk+ZcPbH9gp9dfU+tKqmN4pQPdEI/Hdnr91bWuZGlWXjXHws9KDY9t5VUxqhzY\n",
2221 "nn/PDK+WZuVVufLKqI1DzxqfbYNqHMMrSZpzg25yJ3AlsJbFQebzzvBK9zLoJruAm8ie+9RRUbMS\n",
2222 "w6vmqLPyyiCkGFVWXuXVcn7PllbaboOdXn8Vzrwqu23Qyis1huGVJLVD3jp4eq2rqECn198A3B+4\n",
2223 "hyy0k3J562AT514ZXjWHlVezr47wyu/Z0spsG1xP9sbczkE32VnC9WeBA9vVGoZXktQO34rHuQ+v\n",
2224 "2G9Y+6Cb3FPrStQ0eTDUqLlXnV5/HdncnD34ArgJmlB55c/BdPLw6oihZxXDyqvhymwbbPu8KzC8\n",
2225 "UosYXklSO+Th1Q/Xuopq2DKo5TS18iqv8Llh0E321roSgZVX8yD/+h019KxiGF4NV2blVdtbBmG/\n",
2226 "8Cq2URbFtkE1juGVJLXDt+PR8Ept1sjKK2wZbBorr2bfHcBu4NBOr7++5MdyTtlwVVRetTa8iu2S\n",
2227 "u4E1wLoCL23llRrH8EqS2iEPr05r6E5rRTK80nLyyivDKw1j5dWMG3STfVRXfWXl1XBlVl7ZNpgp\n",
2228 "o3Uwr7wyvFJjGF5JUgsMusltwNVkw01PXuH0WWd4peVcE48/VOsq7svwqllqqbyKs88OJdtsou0v\n",
2229 "xotQdXhl4Lg0K6/Kl7f2FRJedXr9g8h+FwHcWcQ1pSIYXklSe7Rl7pXhlZZzdTzev9ZV3FceXl1f\n",
2230 "6yqUq6vyaqH9LFYOaTqlh1dxd9v1wE7g7rIeZ8Y586p8RVde5VVXdzqHUU1ieCVJ7TH34VWsXDgR\n",
2231 "2Atsq3c1aqCmVl4dF49WXjXDQuVVwQOQV2IFT7GqqLwycFxZHixZeVWessIrh7WrUQyvJKk98vDq\n",
2232 "9FpXUa6tZH/brhh0k101r0XNcx2wDzi+0+uvrXsx+7FtsFnuAHYAG1hsnamCg7+LVUV45byrleXB\n",
2233 "0qbYjlYkZ15l8vBq49CzRuewdjWS4ZUktcfcV15hy6CGGHST3WQB0SoWA6MmMLxqkFhBU8fcK4e1\n",
2234 "F+umeDS8qtGgm9xDNjfpIIoLV3JWXmWKrrwyvFIjGV5JUnu0YcdBwyutpIlzrwyvmqeOuVeGV8Wq\n",
2235 "svLK79lwZQ1td+ZVxrZBtYLhlSS1xKCbbAeuAtYBp9S8nLIYXmklhlcahZVXs8+2weYoa2i7bYMZ\n",
2236 "K6/UCoZXktQu8946aHillTQqvOr0+hvJ5irtxBdgTWLl1ezLv45Hl/gYzikbTVmVV7YNZvK/HUV9\n",
2237 "fQ2v1EiGV5LULoZXarum7Ti4sNOgu5U1ipVXs8/Kq+Yoq/LKtsFMHg4W9fW1bVCNZHglSe0yt+FV\n",
2238 "3D3uAWS7yV1W83LUXI2qvMKWwaay8mr2OfOqOay8Ktet8XhEQdfLQ0Err9QohleS1C55eHV6raso\n",
2239 "x0nAauDqQTfZUfdi1FiGVxqFlVezz8qr5nDmVbny8Kqor28egt069CypYoZXktQu++84uKbWlRTP\n",
2240 "lkGNwvBKo6ij8soqnmItVKOUuMOu4dVo8vDKyqtyFF15ZXilRjK8kqQWGXSTO4ArgIOZvx0HDa80\n",
2241 "ioWZV51evwnPg/Lw6vpaV6ED1VF5lQ8WNwgpwKCb3EPWrraK4it+cg5sH03RM5mIb8AdQjYqoO2z\n",
2242 "mfKvb1HhVf59MrxSozThSZskqVp59dW8zb0yvNKKYkvpTcAaqq2qWc7x8XhdravQgSqtvIovxPPw\n",
2243 "6sZh52osZbcOWnk1mjIqr/K5TLe72YWVV2oHwytJap95HdpueKVR5a2DTdhxMG9fvKrWVehAC5VX\n",
2244 "nV5/VQWPdzRZhdDNg26yu4LHa4uqwitbPYcrY2C7LYOLypp59YOhZ0kVM7ySpPa5KB4fWusqivfg\n",
2245 "eLyk1lVoFuStg02Ye3VCPF499CxVatBN7gTuAtaxuG18mY6LR2efFeumeCw8vOr0+huADcAusp8V\n",
2246 "La+Mge155ZXhVTawfh9wWEHzTK28UiMZXklS+1wYjw+rdRUF6vT664CTgb0YXmllTRranq/B8Kp5\n",
2247 "8uqrKloH8/DK2WfFKrPyKn+Bf4ttayuy8qpEg26yl2IDQmdeqZEMrySpfb4D7AEeFN85ngcPJPub\n",
2248 "dnmcaSQN04jwqtPrbyKrHtiBM3OaKJ97VcXQdsOrcuTh1dFDz5qMw9pHV0blVR5e3V7gNWdZIXOv\n",
2249 "Ypu0bYNqJMMrSWqZGO58l+xvwLy0Dp4Wj9+pdRWaFY0Ir1icuXW1lRuNZOXV7Cuz8sp5V6Oz8qp8\n",
2250 "Rc29OgRYC+wcdJO7p7yWVCjDK0lqp3lrHXxIPH631lVoVjQlvLJlsNmqrLzaEo+GV8WqIryy8mpl\n",
2251 "zrwqXx4QTrvjoC2DaizDK0lqp2/G44/WuoriWHmlcTRlt0HDq2az8mr2GV41w51k4wo2dHr9gwu6\n",
2252 "pm2D91ZI2yAOa1eDGV5JUjvNW3iVV14ZXmkUC7sNxvkedcnDq6tqXIOW58yr2VdmeOXMqxHFtui8\n",
2253 "Qqqo1kHbBu+t6PDKeVdqHMMrSWqnhbbBml+8T63T6x8EPDjetG1QKxp0k+1k79ZvYPon+tOw8qrZ\n",
2254 "rLyafVZeNUfR4ZXh4b0VNfPKtkE1luGVJLXTdcBNZE9STqh5LdM6gWzA6PWDbuKTLY2qCXOvDK+a\n",
2255 "zcqr2efA9uYoemh7/j29qaDrzbqiZl7ZNqjGMrySpBaKJfzzMrQ9n3dl1ZXGYXillVRSedXp9Vez\n",
2256 "GJDdMOxcjW0hvCqhytjKq/EUPbT96Hg0PMzYNqi5Z3glSe01L3OvnHelSTQhvMqrHg2vmqmqyquj\n",
2257 "yJ6T3zroJrtKfqxWGXSTu4AdwDqyCt0iGV6Nx8qrchUVXtk2qMYyvJKk9pqX8MqdBjWJWncc7PT6\n",
2258 "h5K9yNiFL76aaqHyquTZgHnL4PdLfIw2y/99HT30rPE5c2k8eRhy5NCzRpd/P/39mSlq5pVtg2os\n",
2259 "wytJaq95aRvMK69sG9Q4FnYcrOnx89DsmkE32VvTGjTEoJvcDdwBrAU2lfhQzrsqV1lzr5x5NZ7C\n",
2260 "QsQYJuffT7/+GWdeae4ZXklSe30b2AM8sNPrF91OUSUrrzSJutsGnXc1G6qYe2V4Va6ywysrr0aT\n",
2261 "h1dFtOFuBlYD2221XeDMK809wytJaqlBN9lJVq10EPDQmpczkU6vfyTZi8o7MQTQeJoSXl1V0+Nr\n",
2262 "NFXMvdoSj4ZX5Sg8vOr0+uvJZmjtJvv7o5XlQXAR7ZtWXd2XM6809wyvJKnd8rlXs9o6uLDTYNxB\n",
2263 "URpVHl6dUPI8o+VYeTUb8vBqy9CzpmPlVbnKqLzKA4Jb/NszsiIrr5x3dV8LA/E7vf40r/FtG1Rj\n",
2264 "GV5JUrvN+tB2dxrUpG4FtgOHUdwA4XEYXs2Ga+PxfiU+huFVucoIrxzWPj4rr0o06CZ5FeBBZH/X\n",
2265 "JmXboBrL8EqS2m3Wh7Y7rF0TidUSl8ebD6hhCYZXsyEf7F/mrpSGV+UqI7xyWPv4rLwqXxGtg7YN\n",
2266 "qrEMrySp3RYqr2pqnZqWw9o1DcMrrSQPr6y8ml1lhldWXo3OyqvyTRVedXr9tcChZJv5bC9qUVJR\n",
2267 "DK8kqd2+T/aCaTNwcs1rmYSVV5qG4ZVWkrcNWnk1uwyvmuF2sgH3G+PA+2lYebW0PLw6fOhZy1to\n",
2268 "GXSWm5rI8EqSWiw+OflKvPmoOtcyrvjk9wFk7xBeWvNyNJtqCa/iz+4xwD0sDgRXM5XaNhgHKx8b\n",
2269 "b/qzUA7DqwaIzzfysGna6isrr5aWz6matG0wD72cd6VGMrySJM1keEVWdbUKuHTQTXbVvRjNpLoq\n",
2270 "r/Ig5NpBN9lT8WNrPGXPvDoSWA3cNugmO0p6jLbLA44i2tVyDmyfTFHhlZVXS5t25pU7DarRDK8k\n",
2271 "SV+Nx0fWuorx5UPmvzn0LGl5dYVXecvgVRU/rsZ3K7ADOKzT60+zg9dy8pbB75dwbWXygMOB7fXL\n",
2272 "515NO7TdyqulGV5prhleSZIWwqvYwjIrfjQeDa80qW3xeFLFP/vOu5oRsdUpn3tVxtB2512V7zZg\n",
2273 "L7ApDqQuQh5e+SJ/PFZelauwmVcFrEUq3Cy9SJEklWDQTa4le3G2CTi15uWMIw+vLqx1FZpZg25y\n",
2274 "B1klwDpgS4UPbXg1W8psHTS8Ktmgm+xlsb3vyGHnjiH/vjmnbDxWXpWrqJlXhrJqJMMrSRLMWOtg\n",
2275 "p9dfhZVXKkYdrYOGV7OlzPAqD00Nr8pV9ND24+PxuoKu1xZTV17Fv//5/Q2v7s22Qc01wytJEsze\n",
2276 "0Pb7kb0IuRUDAE3H8EorycMr2wZnV17xc+zQs0aXh47OKhtPEZVXG4G1wF2DbnL39EuaK4ZXmmuG\n",
2277 "V5IkmL3wamFYe5xJI03K8EoryWde2TY4u/IKqeOHnjWCTq+/kSxA2UE2T0ujK2LmlfOuljftzKv8\n",
2278 "fs68UiMZXkmSYLFt8MdmZGi7865UlDrCqxPi0fBqNjjzavYVOXQ/r7q6zjdPxlZE5ZUtg8ubduaV\n",
2279 "lVdqtFl4gSJJKtmgm1xP9kJ6I/CgmpczCuddqSiVhlexauM4YBfOy5kVtg3OvsIqr/a7hi2D4yui\n",
2280 "8iqfW2bl1X3ZNqi5ZnglScrNUuug4ZWKUnXl1cn54w66yZ6KHlPTsfJq9pVSeVXAtdrGyqtyLbQN\n",
2281 "xsH243K3QTWa4ZUkKTcT4VWn198APBjYC3yr5uVo9l0J7ANO6PT6ayt4vFPi8T8reCwVY6Fqp8i2\n",
2282 "6vjiMh8gbnhVLiuvmmFh18cp/i1ZebWMOMB+J3AwsGGCS+SVV868UiMZXkmScvncq0fWuoqVnU72\n",
2283 "9+t7g26yo+7FaLYNuskuspbZg1icRVUmw6sZE3/P3Aysobjd6iB7obgW2O6uaaWz8qoB4u/b24DV\n",
2284 "TD5U3Mqr4aaZe2XboBrN8EqSlNt/aPvqWlcynC2DKlqVrYOGV7OpjLlXecugFTzls/KqOaade2Xl\n",
2285 "1XATzb2KlXCb40130VQjGV5JkgAYdJMbgSuAQ4DTal7OMIZXKprhlVZSxtyrvILHlsHy/QDYARwW\n",
2286 "N02YRh5eWXk1mWnnXll5NdzC3Ksx77cJWEVWCXpPsUuSimF4JUnaXz736tG1rmI4wysVzfBKK8nb\n",
2287 "zooMr06Mx6sKvKaWMOgm+yiu+ioPHa28moyVV+WadMdBWwbVeIZXkqT9fSEeH1frKpYRBxwbXqlo\n",
2288 "lYRXnV5/DXAS2YD4y1c4Xc1SRuXVSfF4RYHX1PKKmntl5dV0pg2vrLwabtKZV4ZXajzDK0nS/j4X\n",
2289 "j40Mr4D7k5XC34wvHFScqiqvTiQbVHyNmw3MnDJmXhleVWvqyqsYQB9DFkDfUMSiWmjatkErr4ab\n",
2290 "tPIqbzM0vFJjGV5Jkvb3NbK5IA/p9PpH1r2YJSxUXcU2EKkIVYVXtgzOgnQbeAAAG9xJREFULiuv\n",
2291 "Zl8RlVfHks0FutG5QBObuPIqVl9beTXcpDOv8rDrB0PPkmpkeCVJWhC3sR7Em02svnp4PNoyqCJd\n",
2292 "B+wGjuv0+oeU+DiGV7OrjJlXhlfVKmLmVT7vysrfyU1TeXUIsI7sTba7ClvRfHHmleaW4ZUk6UCf\n",
2293 "j8cmhlf5IPnB0LOkMQy6yR4WA4StJT6U4dXsKrRtMG5Lnw9sv7KIa2pFRVRe5cGXw9onN83Mq/w+\n",
2294 "N1l9vaxJZ17ZNqjGM7ySJB0on3t1Rq2rOEBsF3hMvPnFOteiuXRZPJ4y9KzpGF7NrpvIqvOO7PT6\n",
2295 "Gwq43rHAwcAtg25yRwHX08qsvGqGaSqv8nlXtgwub9rKK9sG1ViGV5KkA+WVVz/e6fUPrnUl93Yy\n",
2296 "2buuNwLb6l2K5tB34/G0Eh/D8GpGDbrJXorbrQ5sGayDlVfNUEjlVUFrmUfTzryy8kqNZXglSbqX\n",
2297 "QTe5meyF/HoWZ0w1Qd4y+EXbBVSC78Tj6WVcPFYOGl7NtiLnXhleVa+Iyqv8vlZeTc7Kq3LdEo9H\n",
2298 "DT3rvmwbVOMZXkmSlpJXXzWpddCWQZXp2/H4kJKufyxwKHDroJv44mA2FTn3yvCqercCO4FNnV7/\n",
2299 "0AmvkbcNWnk1udvJWnA3dnr99WPe18qrleXB6ri/p6y8UuMZXkmSltLEuVd55dWXal2F5tVC5VWs\n",
2300 "kiqaVVezLw+vrLyaQbFid9rqKyuvphS/D5O2Dlp5tbKbycLBw8fcPffIeHTmlRrL8EqStJSF8Kqk\n",
2301 "F/Jjie/OPgLYhzsNqgSDbnIj2QuqwygmnDiQ4dXsM7yafdOGVw5sL8ak4ZWVVys4YD7fOD/neaWW\n",
2302 "P9tqLMMrSdJSLiZ7924LsLXepQDZ7K21wLcH3eT2uhejuZVXX5XROmh4Nfvy8OqEAq51YjwaXlVr\n",
2303 "4qHt8Y0cB7YXY9K5V1ZejWas+XydXn81iz/b1w47V6qT4ZUk6T5iWX+T5l4570pVyOdelTG03fBq\n",
2304 "9uXfu1MLuJaVV/WYpvJqE9lGJncMuskdxS2play8Kte4Ie2xwGrgpkE32VnOkqTpGV5JkpbTpLlX\n",
2305 "zrtSFay80jCXxOMDp2mn7vT6m4HNwN1YQVK1iSuvsOqqSJNWXuXhlf9uhht3c4m8QuuaoWdJNTO8\n",
2306 "kiQt5zPxmNS6ioyVV6qClVda1qCb3EK2Df2hLM4+msRC1VWsclV1pqm8clh7cay8KtdYbYP7nXd1\n",
2307 "CWuRCmN4JUlazoBsS+sHdXr9E1c6uSydXv84srlbd7AYLkhlKKXyqtPrH0bWlrET54nMuoXqqymu\n",
2308 "YctgfaapvMoDSyuvpjd25VWn119L9n3bh79HV2LlleaS4ZUkaUmDbnIP8G/x5k/XuJS8ZXAw6CZ7\n",
2309 "alyH5t81wHbg6E6vP247yzAnx+NlcScozS7Dq9lm5VUz5JVT4/ye/SGy167XDbrJruKXNFcmrbwy\n",
2310 "vFKjGV5Jkob5ZDw2IbyyZVClii1cZVRf5de6uMBrqh6GV7OtiMorw6vp5V/Dcb4PW+NxW6ErmU/j\n",
2311 "/pwbXmkmGF5JkobJw6uzO71+XX8z8nlXDmtXFcqYe/XwePxmgddUPYoIr/I2bMOr6t0C7AI2d3r9\n",
2312 "Q8a8rwPbi7MtHh8wxn0MfUe30DY44uYShleaCYZXkqRhLgGuJBuS+vAVzi1cp9dfDzwu3vx81Y+v\n",
2313 "Viqj8upH49HwavZZeTXDYnXlpK2DVl4V5xpgN7Cl0+tvGPE+/rsZ0aCbbCebE7oBOHyEuxheaSYY\n",
2314 "XkmSlhWf6OfVVz9VwxLOANYD3xh0kxtXOlkqQBmVV4ZX8yMPr06dohrVF+H1mjS8svKqIHF+5ZXx\n",
2315 "5tYR75aft63g5cyrcYa2G15pJhheSZJWUufcq/wxPzn0LKk4eeVVIeFVp9c/luxF73bg8iKuqfoM\n",
2316 "usltZDulbWCCuUmxmnQLsAcreOoy6dwrK6+Klf8+HLV10NB3PCP9nHd6/Y3AJmAHcGvZi5KmYXgl\n",
2317 "SVpJPx5/Yozy/qLk4dWnKn5ctdc2sifx9+v0+psLuF5edXWhOw3OjWlaB0+Ix6vjjq6q3tiVV51e\n",
2318 "fx1wFFnoeHMZi2ohw6tyjbrj4ELVVay2lxrL8EqSNFRs1/s6sA44s6rH7fT6RwOPAHYC/17V46rd\n",
2319 "YjvL9+LNIuZe2TI4f6YJr3wBXr9RX9Tv75R43BZ/R2h6I4dXsUXXjQ7GM2rboC2DmhmGV5KkUdTR\n",
2320 "Ong2sAr47KCb3F3h40r53Ksiwqt8o4NvFHAtNcM04ZUvwOt3WTw+aIz7nBaP3y14LW02TuXV8cBa\n",
2321 "4MZBN7mrvCXNlbErr0pci1QIwytJ0ijqCK/yAfG2DKpqRc69svJq/lwaj1ZezaZJwuk8vPre0LM0\n",
2322 "jnHCK//djG/U2W6GV5oZhleSpFF8lmwO0MM7vf79y36wTq+/Coe1qz7/EY8/Ns1F4nDu04C9wEXT\n",
2323 "LkqNMU3l1anxuK2YpWgCF5P9mzyl0+sfPOJ9HhyPVl4VZ5Lwals5S5lLtg1q7hheSZJWNOgmO4CP\n",
2324 "xZu/UsFDnkr2ZPVmsnlbUpW+EI+P7vT6a6a4zunAGuBiW13mSh5enRJn8YwjbyO1Eq8m8e/Z5cBq\n",
2325 "Rg8gbRss3o3AXcDhnV7/8BXO3RqPVl6NzrZBzR3DK0nSqN4bj0+p4LHyqqvz3aFNVRt0k+uB/wQO\n",
2326 "BX5kikvZMjiHBt1kO3A92SYWI1eixt1aTyPbse5b5axOIxq5NThWAhteFSzubDdq9ZVtg+PLd9Xc\n",
2327 "0un1Vw85z/BKM8PwSpI0qo+Q7fx3RqfXX6kMfVp5eOW8K9Xl8/H4uCmuYXg1vyZpHfwRsufe33UT\n",
2328 "itrl4dUoc6+2AJuAW4CbSltROxlelWTQTXaS/byuBo4ZcqrhlWaG4ZUkaSSx2uDjZDsAltY6GNu0\n",
2329 "knjTeVeqSxHhlS1i82uS8Cr/ebAVun7jhFcLVVexWkjFGTW82hqP20pbyXwa2joYK7K2xJvXLXWO\n",
2330 "1CSGV5KkceStg08t8THOJHuX+9JBN9lW4uNIw0wVXsVWo7zy6huFrEhNMk145c9D/cbZcdCWwfKs\n",
2331 "GF7F36VWXk1mpaHtx5FVZt0w6Ca7qlmSNDnDK0nSOD5M1jp4ZqfXP76kx/hv8fi+kq4vjeJbwHZg\n",
2332 "64RtsicAh5O1bfiO9vyZJLx6RDwaXtUvD6IevMI8IDC8KlMeXp085JyjgQ3AbYNuclv5S5oreeXV\n",
2333 "cn/DbBnUTDG8kiSNbNBNbgf+lZJaBzu9/joWq7reXfT1pVENuske4Ivx5mMnuMRCy6CtRnNprPAq\n",
2334 "BiQPizcNr2oWQ5BrgfUstqQtx/CqPKO0DeZVV9vKXcpcykOp5XYcNLzSTDG8kiSNK6+IKmPXwSeQ\n",
2335 "VatcOOgmF5VwfWkc07QO2jI43y6Nx1Ni6L6SU4FDgKsG3eTm8palMYw698rwqjx5eLU1tgcuZWs8\n",
2336 "2jI4vpUqr/LdUg2vNBMMryRJ4/oQsAv4L51ef8tKJ4/p6fH4jwVfV5rENOHVmfH4tYLWogYZdJM7\n",
2337 "yVpL1wKdEe5iy2DzrBhedXr9Q4ETgd0sBi0qSKzmvoWsAm655xPOu5rc0IHtWHmlGWN4JUkaS2y3\n",
2338 "+ARZ6+DTVzh9ZJ1efxPw8/HmPxV1XWkKXwL2AY/s9PrrR71Tp9ffCJwV7+uOmfPrgng8a4Rz3Wmw\n",
2339 "eUapvHpQPF4y6Cb3lLyetlqpddC2wcmtNLDd8EozxfBKkjSJt8bj8zu9/pqCrvlLZO++/vugm1xZ\n",
2340 "0DWlicWg9iKy6ppHjnHXs4GDgS8NusmNZaxNjfDpePzJEc51p8HmGWXHQVsGy7dSeLU1Hq28Gp8D\n",
2341 "2zVXDK8kSZP4KNnMl5OAJxd0zXyXQQe1q0kmaR18Ujx+tOC1qFny8OqMTq9/8HInxVk+tg02z0Ll\n",
2342 "1ZB5Sw+OR8Or8oxaeWV4Nb4bgD3A0cvM5jO80kwxvJIkjW3QTfYCr483/2Da68XZWT9FNlfkfSuc\n",
2343 "LlVprPAqvgjOw6vzSlmRGmHQTW4gC0A2AI8acuoW4FjgNmx9apIbgFuBzcDxy5xj5VX5bBssSXyu\n",
2344 "dl28udTcK8MrzRTDK6lmIYSX1r0GtVMBP3vnkL0YO7PT6w974TaKp5P9Tfq4O3G1wwz97svDqzM6\n",
2345 "vf7qEc5/GNkOTtfhfKNGKvhn74J4PGvIOQstg4Nusq/Ax9YU4vdipblXeXj1vSIec4Z+71Vp2fCq\n",
2346 "0+sfThYu3gX43GAyeXvs4/b/+YtzRjcCdwM/qGFd0tgMr6T6/WXdC1BrTfWzN+gmdwBvjzd/f9Lr\n",
2347 "dHr9Q4BuvPn2YedqrszK777/JHtxdQxZdeBKfjYezzOoaKwif/ZGmXtly2BzLRtedXr9g1hsGywk\n",
2348 "vGJ2fu9VaVjl1dZ4vMLfpxP7WDw+iXv//OW/ly73a6tZUUt4FUJYFUJ4TQhhbwhh7FkpIYTnhBAu\n",
2349 "CiHcGUK4KoTwlhDCsWWsVZI01BuAvcCvdXr95QaCruR5wHHAV4APF7UwqQjxSf074s3fGuEuzrtq\n",
2350 "l/3nXq1d5hx3GmyuYZVXJ5JtInJd3LxB5chnWZ2wxOy4x8ejwe/k8vb1J+zjXqPdfiUeP1LtcqTJ\n",
2351 "VR5ehRDWAf8IvIhsC+mxkt4QwmvI5qx8GHgK8FIgAT4dQthU6GIlSUMNuskVwPuBNcDzx71/p9ff\n",
2352 "DLw43nyJ7/6poc4hC2mf3On1l32zrNPrHwU8lmx226eqWZrqNOgm3yeryjmU5XektPKquYbtOOi8\n",
2353 "qwoMuskO4FvAauCJB3w638jlnypd1Hy5hKyC+IidG7M/X7GqMA+vnDOqmVFpeBVCOAL4JPBzwO8C\n",
2354 "y+3ssdz9H0kWev1emqZ/mqbpx9I0fQdwJnAkluJKUh1eF49/1On1f3jM+/4B2e/vfwc+UeiqpIIM\n",
2355 "usk1ZJVUa4BnDDn18WTPrT4z6Cbbq1ibGuGCeDzrwE90ev3HAaeSDQb/zoGfV+3y8OrHOr3+xgM+\n",
2356 "9wvxeGGF62mrv4vHherW+HziYWT/dv61jkXNg/im4HkAd20+Mf/wo4H7AVeSVb1LM6HqyqtHAqeT\n",
2357 "Pbmb5EXKbwOXxcBqQZqm1wNvAp4ZQlgz9SolSSMbdJMvAm8DDgbO6fT6I/0ejlUqL4w3rbpS070t\n",
2358 "Hp8ddxRcSj7vypbBdhk29yqf5/fmQTfZVdF6NLoryTZl2Az8Tv7BWGH5zHjzLTWsq23eRVax+sRO\n",
2359 "r3//+LGnxeP7/LcztfMA7l4Mr54Sj+f63EuzpNLwKk3TTwGnpmn6+RVPXtpZLA6dO9B5wOEszhWQ\n",
2360 "JFXnRWQvAh4F/PGI9/kT4DDgE4Nu8pmyFiYV5GPAtcCDgJ848JNx5tvPxZuGV+2Sh1dn7h/ed3r9\n",
2361 "04AnAzvJ5gOqYeIL91fGmy/s9Prr4/8/l2ze1YcH3cSKuZINusmNwAfIXps+M75BkIdXtgxO79PA\n",
2362 "3bsOPYZOr388iy2D59a4Jmlslc+8StN0oq04QwirgJNZvu883wXklEmuL0ma3KCb3A48O958aafX\n",
2363 "f+iw8zu9/q+zWHX152WuTSrCoJvcw2Jry7P3/1ycH3IOsAn42KCbXFzt6lSnQTe5lmyuzEbuXX31\n",
2364 "QrIRGe8cdJPr61ibRnIe8E3geOAZnV7/ULKNRAB6ta2qffLq1mcBjyF73Xct4JtbUxp0k7uBfrz5\n",
2365 "EuAk4DrgC7UtSppALbsNTmgT2SC/JcOvNE23A3uAo6pclCQpM+gmnwTeCqwF3t3p9U9Y6rxOr/8U\n",
2366 "shf6q4AXD7rJlytbpDSdfGzBUzu9/pb9Pv4C4KeBm4DfrHxVaoIPxuN7O73+o2J1w2+QbUz0uuXv\n",
2367 "prodUH31YrK5S0cCXwQ+W9e6Wuh8YBtZsPLm+LF/HnSTPbWtaL7kuw7+bjy+f9BN9ta1GGkSsxRe\n",
2368 "HRaPdw85526ynnVJUj1eBFxONmT1Pzq9/jP2nw/U6fV/jqwF4CDg5YNu8r/rWaY0vkE3uZxsZud6\n",
2369 "4FudXv85nV7/EcBr4inPirvPqX1eAnwIOILsRfjfkM0B/ICVeDPhXOBi4AEs/nvuOQ+oOjFIyd8g\n",
2370 "yMfA2DJYnHz0Tv6czF0GNXMmHm4eQngRMMqLjgvSNE0mfZz95Lv2bBhyzgbgtgIeS5I0gUE32R53\n",
2371 "13oL2U5N55C1YewBHgrk1SqvBV5axxqlKf0WWftgQhZQ3EP2fOqtg27yoToXpvoMusnOWFX6buCp\n",
2372 "ZLOuYLTnyqrZoJvs6fT6rwb+H1noeAmL1XSqzt8BLyN7g+sS4Kv1Lmd+DLrJ5Y97+bns3nAEwI1k\n",
2373 "uzxLM2XVvn2TvaEQQjgCOGaEU+9K0/TqJe6/FbgM+MU0TVd8shdnXu0Cfj9N0zcv8fmNwO3A09I0\n",
2374 "fc8I6wLg/PPP9x0VSZIkSZKkEpx99tnL7dQ8sokrr9I0vRW4ddoFjPF4+0IIlwGnLXNK/vHLKlqS\n",
2375 "JEmSJEmSSjZxeFWTC4AnLvO5J5ENc//GOBcsIgGUJEmSJElSORo7sD2EcFAI4bgDPvw24OQQwm8e\n",
2376 "cO5xwHOBc9I03V3VGiVJkiRJklSuxoZXZENQrwkhPDb/QJqmXwH+D/DmEMIrQwg/G0J4FtnAuR/g\n",
2377 "8F9JkiRJkqS5Und4NWxY+tVkM7XutXtgmqYvAl5ItotVCrwc+DTwE2ma3l7SOiVJkiRJklSDiXcb\n",
2378 "lCRJkiRJkspWd+WVJEmSJEmStCzDK0mSJEmSJDWW4ZUkSZIkSZIay/BKkiRJkiRJjWV4JUmSJEmS\n",
2379 "pMYyvJIkSZIkSVJjGV5JkiRJkiSpsdbUvYA6hRDWAH8MPBP4IeB64L3Ay9I0vbPOtakdQgj3Az4K\n",
2380 "bE3T9Ii616P5F0JYB7wAeAZwMvAD4BPAS9M03Vbj0tQCIYSHAi8F/guwHrgYeAvwjjRN99a4NLVI\n",
2381 "CGE18FXgYcAvpWn6wZqXpDkXQhj2++0X0zT9UGWLUSuFEM4GPgm8IE3TN9a9Hs23EMI24MQhp7ws\n",
2382 "TdOXjXvdVodXwLuBJwKvAr4OPBD4M+AxIYT/mqbpnjoXp/kWX8SdRxac3lbzctQCIYSDgBR4PPB6\n",
2383 "4NPACcAfAV8OIfy4AZbKEkL4ceACstDgD4BbgEcDrwN+hCxUlarwe8AWYF/8T6rCG4H3LfHxb1W9\n",
2384 "ELVLLNj4v2Svd99U83LUDr8KrFvi4ycB7wSumOSirQ2vQgi/DDwV+Jk0TT8VP/zxEMKngK+RPbF5\n",
2385 "Q13r03yL736cC3wX+ADw6/WuSC3x8/G/Z6Rp+vf5B0MI55I9ef4L4DdrWpvm3w7gr4A/T9M0Dww+\n",
2386 "HkK4BnhrCOENaZpeUt/y1AYhhGOBlwEvBN5R83LULpemafqZuhehVno+cBrw2P3+/kqlSdP0S0t9\n",
2387 "PITwKrKuj3+e5Lptnnn1O8C/7RdcAZCm6XeAfwKeU8uq1Ba/QVZ9cDZZ9YFUhTuBHvAP+38wTdOb\n",
2388 "yFoHH13HotQOaZpemKbpS5Z44vy5eDyp6jWplV4DnA/0616IJJUtBvZ/Cbw9TdMv170etVccXfJs\n",
2389 "4J1pmu6Y5BqtrLyKpZNnkFUZLOU84L+HEI6OL+qkoj0H2JOm6a4QQt1rUUvEsP5Ty3x6PbCrwuVI\n",
2390 "uUcAu4GL6l6I5lsI4bFAAE4HVtW8HLWPP3Oqw6vJnt/9Sd0LUev9GnAU8DeTXqCV4RVwPHAIWcvW\n",
2391 "Ur4Xj6cAhlcqXJqmd9e9BikXQjiGbP6fLTSqRAhhPXAk8ASymVf/I03T79e7Ks2zOPPvTcBr0zS9\n",
2392 "IoSwteYlqX2eG0L4M2AzcAnwt2maOn9IpYmzJp8B/DawO4SwftKKF6kAzwXOT9P04kkv0Na2wSPj\n",
2393 "8QfLfD7/+FEVrEWSahNCWAW8jezNjL+qeTlqj+8DVwNvB/4yTdPX1rwezb/nkD2ve1XdC1ErXQP8\n",
2394 "PdnYiF8FLgTeEEL421pXpXn318Ae4A+B24E7Qwj/FkJ4ZL3LUtuEEB4NPIopqq6gvZVXh8XjctUv\n",
2395 "d8Xj5grWIkl1+ivgF8i2Tp5o5w9pAj9FttPlk4HXhhA2pmn6yprXpDkVQjga+J/A71l1oJpsPWAX\n",
2396 "8w/GreT/NITwz2maXlDPsjSvQgg/AzyGbEfz9wL/AWwl29n3MyGEs9I0HdS3QrXM88hC/A9Mc5G2\n",
2397 "hlfb43HDMp8/JB5vq2AtklSLEMJLgN8H3pim6RvrXo/aI03TrwBfAf4lhNAHzgkhfCRN0wtrXprm\n",
2398 "06uAi9I0fU/dC1E7HRBc5V5BNrz414ELKl2Q2uD5ZIUaj0nTNB+JQwjh7WSVf68HHlfT2tQicTzJ\n",
2399 "U4FXpmm6d5prtbVtMN/d7fBlPp9XXN1cwVokqXIhhOcALwfelabpC+pej9orTdN3kb0b97S616L5\n",
2400 "E0I4DXgm8OoQwpb8P+CYeMoR8WPr61ul2ijOP/0ccFrda9Fceizwnv2DK4A0TW8nayd8TAjBETmq\n",
2401 "wm+T5U5vnfZCbQ2vriNLopf7Y5F//LJqliNJ1Qkh/CrwRiAle1En1e0a4KS6F6G5tIXs+e5HgWv3\n",
2402 "++9L8fN/F2+79a/qsBu4p+5FaC4dRrYxwFLyjx+zzOelQoQQVgO/A3ygiI15Wtk2mKbpPSGEzwI/\n",
2403 "y9IDip8EfCdN0xurXZkklSuE8HjgXWQv5J6epum+mpekFog7vf00cEOapl8/4HOrgFNZDBOkIn2T\n",
2404 "bDfVA3/XbQHOAV4GfAG4qNplqS1CCGuB+x04VzKEsIZsJtFHalmY5t01ZH9bl3IqsJesoEMq0y8C\n",
2405 "9wfeXMTFWhleRW8B3hdCODtN0/PzD4YQHkLWuvDi2lYmSSUIITwGOJdstsZTlpnBIZVhI/Bu4Ntx\n",
2406 "SOz+Mw+eTbYL8AdrWZnmWpqmtwL/euDHQwhb4/9+PU3TT1S6KLXNp4HNIYRHp2l6x34f75K9qHtH\n",
2407 "PcvSnHsv8NwQwivSNL08/2AI4VCyoe2fStPU+c4q2/PIioIuKOJirQ2v0jR9fwjhXODcEMKryd6Z\n",
2408 "OxX4U+CrwJvqXJ8kleA8so0o/ho4I4T7dsm445HKkKbp7SGE5wL/AHwyDoy9g6wa63eBd6Zp2q9z\n",
2409 "jZJUkv8FvB/4XAjhtWSzd58K/AbwF2mafq3OxWluvQJ4AvDlEMJrgG8DJwJ/SPaG0vNqXJtaIITw\n",
2410 "w8BPkoWlhWjrzKvc04DXAc8iq0b4I+AfgcdbkaAK7eO+7QxSGQ4na5X5KNBf4r/zl7+rNJ2401tC\n",
2411 "NnPy9WQz184Enp+mqbPXVAf/9qp0aZp+FDgLuJrszaP3AKcAv5ym6StqXJrmWJqm24EzgLeTvUn0\n",
2412 "L8BfkFUCPiJN00trXJ7a4bnAncA7i7rgqn37/LstSZIkSZKkZmp75ZUkSZIkSZIazPBKkiRJkiRJ\n",
2413 "jWV4JUmSJEmSpMYyvJIkSZIkSVJjGV5JkiRJkiSpsQyvJEmSJEmS1FiGV5IkSZIkSWoswytJkiRJ\n",
2414 "kiQ1luGVJEmSJEmSGsvwSpIkSZIkSY1leCVJkiRJkqTGMrySJEmSJElSYxleSZIkSZIkqbEMryRJ\n",
2415 "kiRJktRYhleSJEmSJElqLMMrSZIkSZIkNZbhlSRJkiRJkhrL8EqSJEmSJEmNZXglSZIkSZKkxvr/\n",
2416 "gUJ07DcuELgAAAAASUVORK5CYII=\n"
1722 2417 ],
1723 2418 "text/plain": [
1724 "<matplotlib.figure.Figure at 0x3436950>"
2419 "<matplotlib.figure.Figure at 0x106c2a9b0>"
1725 2420 ]
1726 2421 },
1727 "metadata": {},
2422 "metadata": {
2423 "image/png": {
2424 "height": 392,
2425 "width": 599
2426 }
2427 },
1728 2428 "output_type": "display_data"
1729 2429 }
1730 2430 ],
1731 2431 "source": [
1732 2432 "x = np.linspace(0, 2*np.pi, 300)\n",
1733 2433 "y = np.sin(x**2)\n",
1734 2434 "plt.plot(x, y)\n",
1735 2435 "plt.title(\"A little chirp\")\n",
1736 2436 "fig = plt.gcf() # let's keep the figure object around for later..."
1737 2437 ]
1738 2438 },
1739 2439 {
1740 2440 "cell_type": "markdown",
1741 2441 "metadata": {},
1742 2442 "source": [
1743 2443 "## The IPython kernel/client model"
1744 2444 ]
1745 2445 },
1746 2446 {
1747 2447 "cell_type": "code",
1748 "execution_count": 43,
2448 "execution_count": 46,
1749 2449 "metadata": {
1750 2450 "collapsed": false
1751 2451 },
1752 2452 "outputs": [
1753 2453 {
1754 2454 "name": "stdout",
1755 2455 "output_type": "stream",
1756 2456 "text": [
1757 2457 "{\n",
1758 " \"stdin_port\": 50023, \n",
1759 " \"ip\": \"127.0.0.1\", \n",
1760 " \"control_port\": 50024, \n",
1761 " \"hb_port\": 50025, \n",
1762 " \"signature_scheme\": \"hmac-sha256\", \n",
1763 " \"key\": \"b54b8859-d64d-48bb-814a-909f9beb3316\", \n",
1764 " \"shell_port\": 50021, \n",
1765 " \"transport\": \"tcp\", \n",
1766 " \"iopub_port\": 50022\n",
2458 " \"stdin_port\": 62401,\n",
2459 " \"key\": \"64c935a7-64e8-4ab7-ab22-6e0f3ff84e02\",\n",
2460 " \"hb_port\": 62403,\n",
2461 " \"transport\": \"tcp\",\n",
2462 " \"signature_scheme\": \"hmac-sha256\",\n",
2463 " \"shell_port\": 62399,\n",
2464 " \"control_port\": 62402,\n",
2465 " \"ip\": \"127.0.0.1\",\n",
2466 " \"iopub_port\": 62400\n",
1767 2467 "}\n",
1768 2468 "\n",
1769 2469 "Paste the above JSON into a file, and connect with:\n",
1770 2470 " $> ipython <app> --existing <file>\n",
1771 2471 "or, if you are local, you can connect with just:\n",
1772 " $> ipython <app> --existing kernel-30f00f4a-230c-4e64-bea5-0e5f6a52cb40.json \n",
2472 " $> ipython <app> --existing kernel-25383540-ce7f-4529-900a-ded0e510d5d8.json \n",
1773 2473 "or even just:\n",
1774 2474 " $> ipython <app> --existing \n",
1775 2475 "if this is the most recent IPython session you have started.\n"
1776 2476 ]
1777 2477 }
1778 2478 ],
1779 2479 "source": [
1780 2480 "%connect_info"
1781 2481 ]
1782 2482 },
1783 2483 {
1784 2484 "cell_type": "markdown",
1785 2485 "metadata": {},
1786 2486 "source": [
1787 2487 "We can connect automatically a Qt Console to the currently running kernel with the `%qtconsole` magic, or by typing `ipython console --existing <kernel-UUID>` in any terminal:"
1788 2488 ]
1789 2489 },
1790 2490 {
1791 2491 "cell_type": "code",
1792 "execution_count": 83,
2492 "execution_count": 47,
1793 2493 "metadata": {
1794 2494 "collapsed": false
1795 2495 },
1796 2496 "outputs": [],
1797 2497 "source": [
1798 2498 "%qtconsole"
1799 2499 ]
1800 2500 }
1801 2501 ],
1802 2502 "metadata": {
1803 2503 "kernelspec": {
1804 2504 "display_name": "Python 3",
1805 2505 "language": "python",
1806 2506 "name": "python3"
1807 2507 },
1808 2508 "language_info": {
1809 2509 "codemirror_mode": {
1810 2510 "name": "ipython",
1811 2511 "version": 3
1812 2512 },
1813 2513 "file_extension": ".py",
1814 2514 "mimetype": "text/x-python",
1815 2515 "name": "python",
1816 2516 "nbconvert_exporter": "python",
1817 2517 "pygments_lexer": "ipython3",
1818 2518 "version": "3.4.2"
1819 2519 }
1820 2520 },
1821 2521 "nbformat": 4,
1822 2522 "nbformat_minor": 0
1823 2523 }
@@ -1,505 +1,505 b''
1 1 {
2 2 "cells": [
3 3 {
4 4 "cell_type": "markdown",
5 5 "metadata": {},
6 6 "source": [
7 7 "# Capturing Output With <tt>%%capture</tt>"
8 8 ]
9 9 },
10 10 {
11 11 "cell_type": "markdown",
12 12 "metadata": {},
13 13 "source": [
14 14 "IPython has a [cell magic](Cell Magics.ipynb), `%%capture`, which captures the stdout/stderr of a cell. With this magic you can discard these streams or store them in a variable."
15 15 ]
16 16 },
17 17 {
18 18 "cell_type": "code",
19 "execution_count": 9,
19 "execution_count": 1,
20 20 "metadata": {
21 21 "collapsed": false
22 22 },
23 23 "outputs": [],
24 24 "source": [
25 25 "from __future__ import print_function\n",
26 26 "import sys"
27 27 ]
28 28 },
29 29 {
30 30 "cell_type": "markdown",
31 31 "metadata": {},
32 32 "source": [
33 33 "By default, `%%capture` discards these streams. This is a simple way to suppress unwanted output."
34 34 ]
35 35 },
36 36 {
37 37 "cell_type": "code",
38 "execution_count": 10,
38 "execution_count": 2,
39 39 "metadata": {
40 40 "collapsed": false
41 41 },
42 42 "outputs": [],
43 43 "source": [
44 44 "%%capture\n",
45 45 "print('hi, stdout')\n",
46 46 "print('hi, stderr', file=sys.stderr)"
47 47 ]
48 48 },
49 49 {
50 50 "cell_type": "markdown",
51 51 "metadata": {},
52 52 "source": [
53 53 "If you specify a name, then stdout/stderr will be stored in an object in your namespace."
54 54 ]
55 55 },
56 56 {
57 57 "cell_type": "code",
58 "execution_count": 11,
58 "execution_count": 3,
59 59 "metadata": {
60 60 "collapsed": false
61 61 },
62 62 "outputs": [],
63 63 "source": [
64 64 "%%capture captured\n",
65 65 "print('hi, stdout')\n",
66 66 "print('hi, stderr', file=sys.stderr)"
67 67 ]
68 68 },
69 69 {
70 70 "cell_type": "code",
71 "execution_count": 12,
71 "execution_count": 4,
72 72 "metadata": {
73 73 "collapsed": false
74 74 },
75 75 "outputs": [
76 76 {
77 77 "data": {
78 78 "text/plain": [
79 79 "<IPython.utils.capture.CapturedIO at 0x1076c9310>"
80 80 ]
81 81 },
82 "execution_count": 12,
82 "execution_count": 4,
83 83 "metadata": {},
84 84 "output_type": "execute_result"
85 85 }
86 86 ],
87 87 "source": [
88 88 "captured"
89 89 ]
90 90 },
91 91 {
92 92 "cell_type": "markdown",
93 93 "metadata": {},
94 94 "source": [
95 95 "Calling the object writes the output to stdout/stderr as appropriate."
96 96 ]
97 97 },
98 98 {
99 99 "cell_type": "code",
100 "execution_count": 13,
100 "execution_count": 5,
101 101 "metadata": {
102 102 "collapsed": false
103 103 },
104 104 "outputs": [
105 105 {
106 106 "name": "stdout",
107 107 "output_type": "stream",
108 108 "text": [
109 109 "hi, stdout\n"
110 110 ]
111 111 },
112 112 {
113 113 "name": "stderr",
114 114 "output_type": "stream",
115 115 "text": [
116 116 "hi, stderr\n"
117 117 ]
118 118 }
119 119 ],
120 120 "source": [
121 121 "captured()"
122 122 ]
123 123 },
124 124 {
125 125 "cell_type": "code",
126 "execution_count": 14,
126 "execution_count": 6,
127 127 "metadata": {
128 128 "collapsed": false
129 129 },
130 130 "outputs": [
131 131 {
132 132 "data": {
133 133 "text/plain": [
134 134 "'hi, stdout\\n'"
135 135 ]
136 136 },
137 "execution_count": 14,
137 "execution_count": 6,
138 138 "metadata": {},
139 139 "output_type": "execute_result"
140 140 }
141 141 ],
142 142 "source": [
143 143 "captured.stdout"
144 144 ]
145 145 },
146 146 {
147 147 "cell_type": "code",
148 "execution_count": 15,
148 "execution_count": 7,
149 149 "metadata": {
150 150 "collapsed": false
151 151 },
152 152 "outputs": [
153 153 {
154 154 "data": {
155 155 "text/plain": [
156 156 "'hi, stderr\\n'"
157 157 ]
158 158 },
159 "execution_count": 15,
159 "execution_count": 7,
160 160 "metadata": {},
161 161 "output_type": "execute_result"
162 162 }
163 163 ],
164 164 "source": [
165 165 "captured.stderr"
166 166 ]
167 167 },
168 168 {
169 169 "cell_type": "markdown",
170 170 "metadata": {},
171 171 "source": [
172 172 "`%%capture` grabs all output types, not just stdout/stderr, so you can do plots and use IPython's display system inside `%%capture`"
173 173 ]
174 174 },
175 175 {
176 176 "cell_type": "code",
177 "execution_count": 16,
177 "execution_count": 8,
178 178 "metadata": {
179 179 "collapsed": false
180 180 },
181 181 "outputs": [],
182 182 "source": [
183 183 "%matplotlib inline\n",
184 184 "import matplotlib.pyplot as plt\n",
185 185 "import numpy as np"
186 186 ]
187 187 },
188 188 {
189 189 "cell_type": "code",
190 "execution_count": 17,
190 "execution_count": 9,
191 191 "metadata": {
192 192 "collapsed": false
193 193 },
194 194 "outputs": [],
195 195 "source": [
196 196 "%%capture wontshutup\n",
197 197 "\n",
198 198 "print(\"setting up X\")\n",
199 199 "x = np.linspace(0,5,1000)\n",
200 200 "print(\"step 2: constructing y-data\")\n",
201 201 "y = np.sin(x)\n",
202 202 "print(\"step 3: display info about y\")\n",
203 203 "plt.plot(x,y)\n",
204 204 "print(\"okay, I'm done now\")"
205 205 ]
206 206 },
207 207 {
208 208 "cell_type": "code",
209 "execution_count": 18,
209 "execution_count": 10,
210 210 "metadata": {
211 211 "collapsed": false
212 212 },
213 213 "outputs": [
214 214 {
215 215 "name": "stdout",
216 216 "output_type": "stream",
217 217 "text": [
218 218 "setting up X\n",
219 219 "step 2: constructing y-data\n",
220 220 "step 3: display info about y\n",
221 221 "okay, I'm done now\n"
222 222 ]
223 223 },
224 224 {
225 225 "data": {
226 226 "image/png": [
227 227 "iVBORw0KGgoAAAANSUhEUgAAAXoAAAEACAYAAAC9Gb03AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\n",
228 228 "AAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xt8z3X/x/HHmOqHcupq2HaZy7A5j0nJNKcUWVI/h1Rz\n",
229 229 "qKSEUnT8oStSOlxqV4WrRK5rDv1ySCMp39KYoVXE9UPlalsskgiF+f7+eIewscP3u/fn+/k+77fb\n",
230 230 "98by2b7P28qr917vU4jX6/UiIiKuVc52ABER8S8VehERl1OhFxFxORV6ERGXU6EXEXE5FXoREZcr\n",
231 231 "daEfNGgQYWFhNG3atNBnhg8fTv369WnevDlZWVmlfUsRESmGUhf6gQMHsmzZskL/PC0tje3bt7Nt\n",
232 232 "2zamTZvG0KFDS/uWIiJSDKUu9AkJCVSrVq3QP1+8eDHJyckAtGnThn379pGXl1fatxURkSLye48+\n",
233 233 "NzeXyMjIkx9HRESQk5Pj77cVEZHflclk7JmnLISEhJTF24qICBDq7zcIDw8nOzv75Mc5OTmEh4ef\n",
234 234 "9Vx0dDRff/21v+OIiLhKvXr12L59+zmf8fuIPikpiVmzZgGQkZFB1apVCQsLO+u5r7/+Gq/Xq5fX\n",
235 235 "y9ixY/3ydQ8d8vKvf3lJSvJy8cVe2rf3MnGil08+MX9W2q+/d6+XpUu9PPywl2bNvFx6qZfkZC8f\n",
236 236 "fODl2DFnfS8C8aXvhb4XBb2KMkAu9Yi+X79+fPzxx+zZs4fIyEjGjx/P0aNHARgyZAjdunUjLS2N\n",
237 237 "6OhoKlWqxIwZM0r7llJMX3wBr7wC8+dD69Zw663wxhtQo4Zv36daNbj2WvN6+mn47jt45x0YPRp2\n",
238 238 "74bbb4ehQyEiwrfvKyLnVupCn5qaet5nUlJSSvs2UkxeL7z/Pjz/PGzZAvfcA19+WbZF9s9/hpEj\n",
239 239 "zWvjRvjHP6BZM/M/glGjoFWrsssiEsy0M9aBEhMTS/y5Xi+kpUHLljBmjBlFf/MNPPqo3ZF006Yw\n",
240 240 "ZYrJ0qoV9OwJSUnmp41zKc33wm30vThF34viCfF6vY64eCQkJASHRAlYq1fDww/Dnj0wcSLccAM4\n",
241 241 "dYHTr7/Ca6/BpEmQmGjy/uUvtlOJBJ6i1E6N6F0gLw9uuw369oVBg0ybpGdP5xZ5gIsuMi2d7duh\n",
242 242 "SRMzdzB2LBw+bDuZiPuo0Aew/HwzydqkCdSuDZs3w4ABUL687WRFV7kyPP44ZGWZ/I0awZIltlOJ\n",
243 243 "uItaNwFq+3ZITjZF/dVXoXFj24l8Y8UKuOsuaN8e/vY3qFrVdiIRZ1PrxoW8XtPbvuIK6N0bPB73\n",
244 244 "FHmAzp3N6qCKFc0E7jnOyxORItKIPoD8+KNZRfPDD/DWWxATYzuRf61YYeYc+vQxk7UVKthOJOI8\n",
245 245 "GtG7yNq1Zslk48ZmdY3bizyY0f2J3n379vCf/9hOJBKYVOgdzuuFl1+GHj3MOvRnnw2ukW2NGvDu\n",
246 246 "u9CrF1x+uVo5IiWh1o2D/fYb3HmnWS759ttQr57tRHatWmXmJcaMgREjnL18VKSsFKV2qtA71O7d\n",
247 247 "cOONULMmzJplJifFtG+SkiA+3iwtvfBC24lE7FKPPkBt3gxt2pi+9Lx5KvJ/VKcOpKfD3r2mh//j\n",
248 248 "j7YTiTifCr3DfPKJORJg7Fiz0qSc/g2dpXJl+N//NUtMExLgD9cdiEgB/H7xiBTdu++a5YSpqWa0\n",
249 249 "KoUrVw4mT4ZateCqq2DpUnftJxDxJRV6h5g9Gx58EN57z6wukaJ54AEIC4OOHc3Z91ddZTuRiPNo\n",
250 250 "MtYBXnoJnnvOLB1s1Mh2msD0/vvmYLd580zrSyRYaNVNAJg8GaZNM7tA69SxnSawrVxpll/OmQOd\n",
251 251 "OtlOI1I2tOrG4Z5/3hR5j0dF3hc6dDCTtH37wvLlttOIOIcKvSUvvmhOnVy5EsLDbadxj/btYeFC\n",
252 252 "cy/u0qW204g4g1o3FkyZYvryK1eae1XF99asMTdsqWcvbqfWjQNNn27OWf/oIxV5f7rySpg71/Ts\n",
253 253 "MzNtpxGxSyP6MvTOOzBsmNkUFR1tO01wePddc17QihXmJi4Rt9GI3kFWroS77zbr5FXky06PHmY+\n",
254 254 "pGtXcyuXSDDShqky8Nln5vKM+fMhLs52muDTrx/s32+K/erVZoOVSDBRofezbdvg+uvNMsqrr7ad\n",
255 255 "JngNGQLff29G+CtXQqVKthOJlB316P1ozx4zKThmDNxxh+004vXCwIHm5MsFC8zF6iKBTjtjLfr1\n",
256 256 "V3MwWfv25hRKcYYjR6B7d2jQAFJSdHmJBD4Veku8XrNh5+hRsx1fRw07y88/m+ONb7sNHnrIdhqR\n",
257 257 "0ilK7VSP3g/GjYOvvza9YBV556lSBdLSTFstOtrc5CXiZir0PvbWW+bqv4wM+K//sp1GChMRYfr0\n",
258 258 "111n7uJt1sx2IhH/0XjTh9auNeejL1miJXyBID7eHEVxww3mjl4Rt1Kh95Fdu+Dmm+H113XTUSDp\n",
259 259 "1w9uucX8uztyxHYaEf/QZKwPHDlibjjq0sXc9SqB5fhx06evWRNee00rcSSwaNVNGRk6FHbuNGfZ\n",
260 260 "aPI1MB04AG3bwj33mH+fIoFCq27KwPTp5uKQtWtV5APZxRebydm2baFVK93bK+6iEX0pnDjzfNUq\n",
261 261 "aNjQdhrxhUWLYPhw2LABLr3UdhqR89PplX60Z485qOz111Xk3eSGG05N0Obn204j4hsa0ZfA8eNm\n",
262 262 "G32zZvDMM7bTiK8dOwbXXAPt2sGTT9pOI3JuGtH7yaRJ8Msv8NRTtpOIP4SGQmoqzJhh7g8QCXQa\n",
263 263 "0RfTxx9D376wfr0u9Xa79HTo1ctcRVinju00IgXTiN7H8vKgf3+YOVNFPhhcdZU59KxfP3NAnUig\n",
264 264 "0oi+iPLzzQ1FV14Jf/2r7TRSVk7Mx7RsCRMm2E4jcjZtmPKhJ5806+U/+EAXVgSbH34wV0DOmgWd\n",
265 265 "OtlOI3I6FXofSU+Hm24yd7/Wrm07jdiwYgUkJ0NWFlx2me00IqeoR+8DP/9sLhGZNk1FPph17gwD\n",
266 266 "Bphif/y47TQixaMR/Xn0728uqnjlFdtJxLajR80F7716wYMP2k4jYuism1KaPdv8qL5+ve0k4gQV\n",
267 267 "Kpj19a1bQ2KiOc9eJBCUunWzbNkyYmJiqF+/Ps8UsE3U4/FQpUoV4uLiiIuL46kA2WX0zTdw//3m\n",
268 268 "L3bFirbTiFPUqWMuK7ntNjh0yHYakaIpVesmPz+fhg0bsmLFCsLDw2ndujWpqanExsaefMbj8fDC\n",
269 269 "Cy+wePHicwdxUOvm2DFzeXTv3qbYi5ypf3+oXh1eftl2Egl2fp+MzczMJDo6mqioKCpUqEDfvn1Z\n",
270 270 "tGjRWc85pYAX1ZNPwiWXwIgRtpOIU6WkmJMu33/fdhKR8ytVoc/NzSUyMvLkxxEREeTm5p72TEhI\n",
271 271 "CKtXr6Z58+Z069aNzZs3l+Yt/S4jw6ywefNNnS8vhatWzfw3Mngw/Pij7TQi51aqydiQIty51rJl\n",
272 272 "S7Kzs6lYsSJLly6lZ8+ebN26tcBnx40bd/L3iYmJJCYmliZesR06ZJbPpaRArVpl+tYSgDp2NO29\n",
273 273 "u++GefN0BaGUDY/Hg8fjKdbnlKpHn5GRwbhx41i2bBkATz/9NOXKlWPMmDGFfk7dunXZsGED1atX\n",
274 274 "Pz2IA3r0I0fC7t3wz39ajSEB5NdfzeqbMWPMBK1IWfN7jz4+Pp5t27axY8cOjhw5wty5c0lKSjrt\n",
275 275 "mby8vJMhMjMz8Xq9ZxV5J1i5Et5+W5NrUjwXXWQGBqNGwX/+YzuNSMFK1boJDQ0lJSWFrl27kp+f\n",
276 276 "z+DBg4mNjWXq1KkADBkyhLfffptXX32V0NBQKlasyJw5c3wS3Jf274dBg0xv3oH/DxKHa97cFPpB\n",
277 277 "g8xZSJrbEafRzljgzjvNr9OnW3l7cYH8fHOs8YABpmcvUlZ0qFkRpKXBPffAl1+aJZUiJbVlC7Rv\n",
278 278 "D+vWQVSU7TQSLFToz2PvXnPv61tvQYcOZfrW4lLPPmvW1quFI2VFp1eex333wc03q8iL7zzwgLlP\n",
279 279 "eNo020lETgnaQ80WLTJ3gX7xhe0k4iahoWYjVfv2cO21auGIMwRl62bfPmjSBP71L/MXUsTXTrRw\n",
280 280 "VqzQRirxL/XoC3HHHXDBBTpjXvzn2DGzCmfgQK3CEf9SoS/Ahx+av3ybNmmVjfiXVuFIWdBk7BkO\n",
281 281 "HjRr5l97TUVe/C821txEdddd4IzhlASroCr0jz9ufpzu1s12EgkWo0bBnj1mCa+ILUHTulmzxtz1\n",
282 282 "uWkT1Kjht7cROctnn8F118HGjXDZZbbTiNuodfO7334z54ZPmaIiL2WvZUu4/XbdVib2BMWI/okn\n",
283 283 "zGhqwQItdRM7Dh2Cpk3N6ahqHYovadUNZkNU587m19q1ff7lRYpsxQrzk+WmTXDxxbbTiFsEfaHP\n",
284 284 "z4crroAhQ8zaeRHbBg40K76mTLGdRNwi6Av9yy+by0Q8HrVsxBl+/NHsyl64ENq0sZ1G3CCoC31O\n",
285 285 "DrRoAZ9+CjExPvuyIqU2Zw5MmAAbNpgd2iKlEdSrboYPh3vvVZEX5+nTB+rUMefhiJQFV47oFy2C\n",
286 286 "0aPNBOxFF/nkS4r41HffmWWX6enQsKHtNBLIgrJ1c+AANG4MM2fqnHlxtilTzKDkww81hyQlF5St\n",
287 287 "m7FjoWNHFXlxvnvvNUdmz55tO4m4natG9Ce2mn/1FVx6qY+CifjRunXQowds3gzVq9tOI4EoqFo3\n",
288 288 "+flmudqwYTBggO9yifjbsGFw9ChMnWo7iQSioCr0U6aYtckffaR+pwSWn3+GRo1g/nxo29Z2Ggk0\n",
289 289 "QVPos7MhLk4rGCRwzZ17am19hQq200ggCZrJ2OHD4b77VOQlcPXuDbVqwd/+ZjuJuFHAj+gXLoQx\n",
290 290 "Y+DLL+HCC/0QTKSMfP21mWfasMFsqBIpCte3bg4eNL3NN9/Uckpxh6eeMitxFi2ynUQChetbN3/9\n",
291 291 "KyQkqMiLezz0EGzdan5SFfGVgB3Rb9kC7dubC0Vq1vRjMJEy5vGYG6k2b4bKlW2nEadzbevG64VO\n",
292 292 "naBnTzMRK+I2AwaYTX/PPWc7iTidawt9aqo5+W/dOggN9XMwEQt27zbn1i9fDs2b204jTubKQr9/\n",
293 293 "P8TGanOJuN/06WahwapVUC6gZ9PEn1w5GTtuHHTtqiIv7jd4MBw7BrNm2U4igS6gRvQbN5re/Fdf\n",
294 294 "wZ/+VEbBRCzasAG6dzeLD6pVs51GnMhVrRuv16yy6d8f7r67DIOJWHbPPeb8pr//3XYScSJXFfqZ\n",
295 295 "MyElBTIyoHz5MgwmYtlPP5l5qffeg1atbKcRp3FNof/pJ7MD9t13IT6+jIOJOMCMGfDaa7BmjSZm\n",
296 296 "5XSumYx9/HGzZl5FXoJVcrJZSvz667aTSCBy/Ij+xGSUbuCRYPf552bF2ebNUKOG7TTiFAHfujl+\n",
297 297 "HK680ky+DhxoKZiIg4wYAYcPw7RptpOIUwR86+Yf/zA/riYn204i4gxPPglLlsDatbaTSCBx7Ih+\n",
298 298 "zx5o3FhbwEXONHs2vPgiZGZqBZoE+Ij+kUegXz8VeZEz9e9vTrVU+0aKypEj+owM6NXL7AasUsVy\n",
299 299 "MBEH2rQJOnY0v152me00YlNAjujz881OwMmTVeRFCtOkCdx2Gzz8sO0kEggcV+hffdUU+FtusZ1E\n",
300 300 "xNnGjjVzWOnptpOI0zmqdbNrl5cmTeDjj81OWBE5tzlz4OmnzX4T3c0QnMqkdbNs2TJiYmKoX78+\n",
301 301 "zzzzTIHPDB8+nPr169O8eXOysrIK/VoPPWTWy6vIixRNnz5m89Qrr9hOIk5WqhF9fn4+DRs2ZMWK\n",
302 302 "FYSHh9O6dWtSU1OJjY09+UxaWhopKSmkpaWxdu1aRowYQUZGxtlBQkKIjPTqnkyRYtqyBRISzDHe\n",
303 303 "tWrZTiNlze8j+szMTKKjo4mKiqJChQr07duXRYsWnfbM4sWLSf59x1ObNm3Yt28feXl5BX69F15Q\n",
304 304 "kRcprthYc0nJQw/ZTiJOVapCn5ubS2Rk5MmPIyIiyM3NPe8zOTk5BX69m24qTRqR4PXEE/DJJ2Z+\n",
305 305 "S+RMpZq+CQkJKdJzZ/5YUdjnjR8/7uTvExMTSUxMLGk0kaBSubLZLXvvvZCVBRUq2E4k/uLxePB4\n",
306 306 "PMX6nFIV+vDwcLKzs09+nJ2dTURExDmfycnJITw8vMCvN27cuNLEEQlqvXqZ3bJTpsCDD9pOI/5y\n",
307 307 "5iB4/Pjx5/2cUrVu4uPj2bZtGzt27ODIkSPMnTuXpKSk055JSkpi1u+3G2dkZFC1alXCwsJK87Yi\n",
308 308 "UoCQEHML26RJUEh3VIJUqUb0oaGhpKSk0LVrV/Lz8xk8eDCxsbFMnToVgCFDhtCtWzfS0tKIjo6m\n",
309 309 "UqVKzJgxwyfBReRs9evD0KEwahTMnWs7jTiFozZMOSSKSEA7dMic/Dp9OnTubDuN+FtAnnUjIqVT\n",
310 310 "sSK89JKZmP3tN9tpxAlU6EVcqEcPaNgQnn/edhJxArVuRFzq22+hdWtYvx6iomynEX9R60YkiNWt\n",
311 311 "CyNHmpcENxV6ERd78EH46it47z3bScQmFXoRF7voIrO2/r774PBh22nEFhV6EZfr2hVatoRCThGX\n",
312 312 "IKDJWJEgkJ0NcXGwdi3Uq2c7jfiSJmNFBIDISBg92rRwNJ4KPir0IkFi5EjYsQMWLrSdRMqaWjci\n",
313 313 "QcTjgeRk2LwZKlWynUZ8Qa0bETlNYiK0awdPPWU7iZQljehFgszOndC0KXz6KcTE2E4jpaURvYic\n",
314 314 "pVYtePxxGDZME7PBQoVeJAgNGwa7d8O8ebaTSFlQ60YkSKWnQ58+sGULXHyx7TRSUkWpnSr0IkFs\n",
315 315 "4ECoXl3HGQcyFXoROacffoAmTeDDD80ErQQeTcaKyDlddhmMH29uo9I4y71U6EWC3F13mZMt33rL\n",
316 316 "dhLxF7VuRIR16yApyZxdX7267TRSHOrRi0iR3Xcf/PorTJ9uO4kUhwq9iBTZzz9D48aQmgoJCbbT\n",
317 317 "SFFpMlZEiqxKFZgyBYYMgd9+s51GfEmFXkRO6tULoqNh8mTbScSX1LoRkdN89525enDNGqhf33Ya\n",
318 318 "OR+1bkSk2P78Z3j0URg6VGvr3UKFXkTOMnw47N0Ls2fbTiK+oNaNiBRo/Xq4/nqztr5GDdtppDBa\n",
319 319 "XikipTJiBPzyC7z+uu0kUhgVehEplf37zdr62bPh6qttp5GCaDJWRErlkkvgpZe0tj7QqdCLyDnd\n",
320 320 "eKO5W3bSJNtJpKTUuhGR88rONmvrP/4YGjWynUb+SK0bEfGJyEh48kkYPBjy822nkeJSoReRIhky\n",
321 321 "BC64AF5+2XYSKS61bkSkyLZuhbZtITMT/vIX22kE1LoRER9r0ABGjza3UmlcFjhU6EWkWB54APbt\n",
322 322 "gzfesJ1EikqtGxEpti+/hE6d4IsvoHZt22mCm1o3IuIXzZqZ0y11wmVgUKEXkRJ57DHYvh3mzbOd\n",
323 323 "RM5HrRsRKbGMDLNzduNGuPRS22mCkw41ExG/e+AB2LnTXCouZU89ehHxuwkTICsL5s+3nUQKoxG9\n",
324 324 "iJTa2rWQlGRW4dSsaTtNcFHrRkTKzGOPwaZNsHAhhITYThM8/Nq62bt3L126dKFBgwZcc8017Nu3\n",
325 325 "r8DnoqKiaNasGXFxcVx++eUlfTsRcbixY2HHDpg503YSOVOJC/2kSZPo0qULW7dupVOnTkwq5LDq\n",
326 326 "kJAQPB4PWVlZZGZmljioiDjbBRfArFnw0EPw3Xe208gflbjQL168mOTkZACSk5NZuHBhoc+qJSMS\n",
327 327 "HJo3h/vvh0GD4Phx22nkhBIX+ry8PMLCwgAICwsjLy+vwOdCQkLo3Lkz8fHxTJ8+vaRvJyIBYvRo\n",
328 328 "c6H4q6/aTiInhJ7rD7t06cKuXbvO+ucTJkw47eOQkBBCCpl9SU9Pp1atWuzevZsuXboQExNDQkJC\n",
329 329 "gc+OGzfu5O8TExNJTEw8T3wRcZrQUNOnv+oquOYaqF/fdiJ38Xg8eDyeYn1OiVfdxMTE4PF4qFmz\n",
330 330 "Jjt37qRDhw78+9//PufnjB8/nsqVKzNq1Kizg2jVjYirvPQS/POf8OmnUKGC7TTu5ddVN0lJScz8\n",
331 331 "fXp95syZ9OzZ86xnDh06xIEDBwA4ePAgy5cvp2nTpiV9SxEJIMOGQfXqMH687SRS4hH93r176d27\n",
332 332 "N9999x1RUVHMmzePqlWr8v3333PnnXfy3nvv8c0339CrVy8Ajh07Rv/+/XnkkUcKDqIRvYjr5OVB\n",
333 333 "ixYwdy60b287jTtpw5SIWJeWZo4z/vxzqFbNdhr3UaEXEUcYPhx27TIje+2a9S0daiYijvDss7Bl\n",
334 334 "C7z5pu0kwUkjehEpE5s2QYcOsHq1llz6kkb0IuIYTZqY83D69YPffrOdJrhoRC8iZcbrhV69IDLS\n",
335 335 "rLOX0tOIXkQcJSQE3ngDliyBt9+2nSZ4aEQvImVu/Xro1s3066OjbacJbBrRi4gjxcebfv1//zcc\n",
336 336 "Pmw7jftpRC8iVni90LcvVK0KU6faThO4NKIXEccKCYHp02HlSnP4mfiPRvQiYtUXX0DnzvDRR6Az\n",
337 337 "D4tPI3oRcbzmzeHFF6FnT9i713Yad9KIXkQc4YEHzO7ZtDRzeYkUjUb0IhIwnn0W8vPh0UdtJ3Ef\n",
338 338 "FXoRcYTQUHO65fz5MGeO7TTuotaNiDjKicnZ5cshLs52GudT60ZEAk7z5pCSYiZnd+60ncYdVOhF\n",
339 339 "xHH69IE77oAePeDgQdtpAp9aNyLiSF4vDBgA+/ebA9DKl7edyJnUuhGRgHVi5+xPP8GYMbbTBDYV\n",
340 340 "ehFxrAsugHfegXff1Xk4paFtCSLiaNWrm01U7dpBrVqQlGQ7UeDRiF5EHK9ePTOqv+MO+Phj22kC\n",
341 341 "jwq9iASE+HhITTVn2Gdl2U4TWFToRSRgdOoEr74K3bvDtm220wQO9ehFJKDcdJM55bJrV1i1CsLD\n",
342 342 "bSdyPhV6EQk4d95pll127Agej5mklcKp0ItIQBo92px22aGDuaVKxb5wKvQiErAeeQSOHzcj+5Ur\n",
343 343 "oWZN24mcSYVeRALaY4+dKvYffaRiXxAVehEJeE88YY5MSEiADz6AqCjbiZxFhV5EXOHxx6FqVVPs\n",
344 344 "ly6FJk1sJ3IOFXoRcY1hw8yRCZ07w8KFcMUVthM5gzZMiYir3HILvPGGORNn6VLbaZxBhV5EXKdb\n",
345 345 "NzOiHzQIXn7ZnG0fzHTxiIi41rffwvXXw9VXw5QpUKGC7US+p4tHRCSo1a0Lq1ebgt+9O/z4o+1E\n",
346 346 "dqjQi4irValijjhu2hRatYLMTNuJyp4KvYi4XmgoPP88vPCCaeWkpARX3149ehEJKtu3mzPto6Ph\n",
347 347 "tdegRg3biUpHPXoRkTNER5u+fUQENGtmril0O43oRSRoeTwwYAB06QKTJ5udtYFGI3oRkXNITIQv\n",
348 348 "v4Ty5SE2FmbPdmfvXiN6ERFg7VoYOhQuucRssmra1HaiotGIXkSkiNq0gXXroHdv08q59Vb45hvb\n",
349 349 "qXxDhV5E5Hfly8M995iLxxs0gMsvN6P87dttJzvbsWPmspWiKHGhnz9/Po0bN6Z8+fJ89tlnhT63\n",
350 350 "bNkyYmJiqF+/Ps8880xJ305EpMxcfDH8z//Av/9tTsO88kq48Ub49FP7Pfyffzb7AaKjzdHMRVHi\n",
351 351 "Qt+0aVMWLFhA+/btC30mPz+fYcOGsWzZMjZv3kxqaipbtmwp6VsGDY/HYzuCY+h7cYq+F6eU1ffi\n",
352 352 "0kthwgTYscMcfTxwIDRuDM8+C99/XyYRAHM37vLl0L8/1KljWkzz5kF6etE+v8SFPiYmhgYNGpzz\n",
353 353 "mczMTKKjo4mKiqJChQr07duXRYsWlfQtg4b+Qp+i78Up+l6cUtbfi0qV4N57YetWmDrV/Nq4MVx1\n",
354 354 "FUyaBF995fuR/oEDsGABDB4M4eHw6KPmfP3t2yE11bSVisqvF4/k5uYSGRl58uOIiAjWrl3rz7cU\n",
355 355 "EfGbE9cVJiSYYxQ8HliyxByYdvCgafFceaW53aphQ3OoWlFOzNy7F/7v/8xr3TpYs8b8vm1bc2TD\n",
356 356 "o49CvXolz33OQt+lSxd27dp11j+fOHEiPXr0OO8XDwkJKXkyEREHu+giuPZa80pJgZwcU6AzMuCV\n",
357 357 "V8yoPzcXqlUzxyzUqAEXXGA+1+uF/fvNaZp79ph/1qCBebVqZVb8tGwJF17oo7DeUkpMTPRu2LCh\n",
358 358 "wD9bs2aNt2vXric/njhxonfSpEkFPluvXj0voJdeeumlVzFe9erVO2+d9knrxltIcyo+Pp5t27ax\n",
359 359 "Y8cOateuzdy5c0lNTS3w2e1OXL8kIuICJZ6MXbBgAZGRkWRkZNC9e3euu+46AL7//nu6d+8OQGho\n",
360 360 "KCkpKXTt2pVGjRrRp08fYmNjfZNcRESKxDFHIIiIiH9Y3xmrDVWnDBo0iLCwMJoGyiEbfpKdnU2H\n",
361 361 "Dh1o3LgxTZo04aWXXrIdyZpff/2VNm3a0KJFCxo1asQjjzxiO5J1+fn5xMXFFWlBiJtFRUXRrFkz\n",
362 362 "4uLiuPw8ay2tjujz8/Np2LAhK1asIDw8nNatW5Oamhq07Z1Vq1ZRuXJlbr/9djZu3Gg7jjW7du1i\n",
363 363 "165dtGjRgl9++YVWrVqxcOHCoP3v4tChQ1SsWJFjx47Rrl07nnvuOdq1a2c7ljUvvPACGzZs4MCB\n",
364 364 "AyxevNh2HGvq1q3Lhg0bqF69+nmftTqi14aq0yUkJFCtWjXbMayrWbMmLVq0AKBy5crExsbyfVlu\n",
365 365 "Q3SYihUrAnDkyBHy8/OL9BfbrXJyckhLS+OOO+7QabcUvhDmTFYLfUEbqnJzcy0mEqfZsWMHWVlZ\n",
366 366 "tGnTxnYUa44fP06LFi0ICwujQ4cONGrUyHYka+6//34mT55MuXLWu87WhYSE0LlzZ+Lj45k+ffo5\n",
367 367 "n7X63dKGKjmXX375hZtvvpkpU6ZQuXJl23GsKVeuHJ9//jk5OTl88sknQXsUwpIlS7jsssuIi4vT\n",
368 368 "aB5IT08nKyuLpUuX8ve//51Vq1YV+qzVQh8eHk52dvbJj7Ozs4mIiLCYSJzi6NGj3HTTTdx66630\n",
369 369 "7NnTdhxHqFKlCt27d2f9+vW2o1ixevVqFi9eTN26denXrx8fffQRt99+u+1Y1tSqVQuAP/3pT9x4\n",
370 370 "441kZmYW+qzVQv/HDVVHjhxh7ty5JCUl2YwkDuD1ehk8eDCNGjVi5MiRtuNYtWfPHvbt2wfA4cOH\n",
371 371 "+eCDD4iLi7Ocyo6JEyeSnZ3Nt99+y5w5c+jYsSOzZs2yHcuKQ4cOceDAAQAOHjzI8uXLz7laz2qh\n",
372 372 "14aq0/VNJLb3AAAAlUlEQVTr14+2bduydetWIiMjmTFjhu1IVqSnpzN79mxWrlxJXFwccXFxLFu2\n",
373 373 "zHYsK3bu3EnHjh1p0aIFbdq0oUePHnTq1Ml2LEcI5tZvXl4eCQkJJ/+7uP7667nmmmsKfV4bpkRE\n",
374 374 "XE5T1yIiLqdCLyLicir0IiIup0IvIuJyKvQiIi6nQi8i4nIq9CIiLqdCLyLicv8PoaUAhzXYTeQA\n",
375 375 "AAAASUVORK5CYII=\n"
376 376 ],
377 377 "text/plain": [
378 378 "<matplotlib.figure.Figure at 0x10866ae90>"
379 379 ]
380 380 },
381 381 "metadata": {},
382 382 "output_type": "display_data"
383 383 }
384 384 ],
385 385 "source": [
386 386 "wontshutup()"
387 387 ]
388 388 },
389 389 {
390 390 "cell_type": "markdown",
391 391 "metadata": {},
392 392 "source": [
393 393 "And you can selectively disable capturing stdout, stderr or rich display, by passing `--no-stdout`, `--no-stderr` and `--no-display`"
394 394 ]
395 395 },
396 396 {
397 397 "cell_type": "code",
398 "execution_count": 19,
398 "execution_count": 11,
399 399 "metadata": {
400 400 "collapsed": false
401 401 },
402 402 "outputs": [
403 403 {
404 404 "name": "stderr",
405 405 "output_type": "stream",
406 406 "text": [
407 407 "hello, stderr\n"
408 408 ]
409 409 }
410 410 ],
411 411 "source": [
412 412 "%%capture cap --no-stderr\n",
413 413 "print('hi, stdout')\n",
414 414 "print(\"hello, stderr\", file=sys.stderr)"
415 415 ]
416 416 },
417 417 {
418 418 "cell_type": "code",
419 "execution_count": 20,
419 "execution_count": 12,
420 420 "metadata": {
421 421 "collapsed": false
422 422 },
423 423 "outputs": [
424 424 {
425 425 "data": {
426 426 "text/plain": [
427 427 "'hi, stdout\\n'"
428 428 ]
429 429 },
430 "execution_count": 20,
430 "execution_count": 12,
431 431 "metadata": {},
432 432 "output_type": "execute_result"
433 433 }
434 434 ],
435 435 "source": [
436 436 "cap.stdout"
437 437 ]
438 438 },
439 439 {
440 440 "cell_type": "code",
441 "execution_count": 21,
441 "execution_count": 13,
442 442 "metadata": {
443 443 "collapsed": false
444 444 },
445 445 "outputs": [
446 446 {
447 447 "data": {
448 448 "text/plain": [
449 449 "''"
450 450 ]
451 451 },
452 "execution_count": 21,
452 "execution_count": 13,
453 453 "metadata": {},
454 454 "output_type": "execute_result"
455 455 }
456 456 ],
457 457 "source": [
458 458 "cap.stderr"
459 459 ]
460 460 },
461 461 {
462 462 "cell_type": "code",
463 "execution_count": 22,
463 "execution_count": 14,
464 464 "metadata": {
465 465 "collapsed": false
466 466 },
467 467 "outputs": [
468 468 {
469 469 "data": {
470 470 "text/plain": [
471 471 "[]"
472 472 ]
473 473 },
474 "execution_count": 22,
474 "execution_count": 14,
475 475 "metadata": {},
476 476 "output_type": "execute_result"
477 477 }
478 478 ],
479 479 "source": [
480 480 "cap.outputs"
481 481 ]
482 482 }
483 483 ],
484 484 "metadata": {
485 485 "kernelspec": {
486 486 "display_name": "Python 3",
487 487 "language": "python",
488 488 "name": "python3"
489 489 },
490 490 "language_info": {
491 491 "codemirror_mode": {
492 492 "name": "ipython",
493 493 "version": 3
494 494 },
495 495 "file_extension": ".py",
496 496 "mimetype": "text/x-python",
497 497 "name": "python",
498 498 "nbconvert_exporter": "python",
499 499 "pygments_lexer": "ipython3",
500 500 "version": "3.4.2"
501 501 }
502 502 },
503 503 "nbformat": 4,
504 504 "nbformat_minor": 0
505 505 }
@@ -1,717 +1,689 b''
1 1 {
2 2 "cells": [
3 3 {
4 4 "cell_type": "markdown",
5 5 "metadata": {},
6 6 "source": [
7 7 "# Cell Magics in IPython"
8 8 ]
9 9 },
10 10 {
11 11 "cell_type": "markdown",
12 12 "metadata": {},
13 13 "source": [
14 "IPython has a system of commands we call 'magics' that provide effectively a mini command language that is orthogonal to the syntax of Python and is extensible by the user with new commands. Magics are meant to be typed interactively, so they use command-line conventions, such as using whitespace for separating arguments, dashes for options and other conventions typical of a command-line environment.\n",
14 "IPython has a system of commands we call 'magics' that provide a mini command language that is orthogonal to the syntax of Python and is extensible by the user with new commands. Magics are meant to be typed interactively, so they use command-line conventions, such as using whitespace for separating arguments, dashes for options and other conventions typical of a command-line environment.\n",
15 15 "\n",
16 16 "Magics come in two kinds:\n",
17 17 "\n",
18 18 "* Line magics: these are commands prepended by one `%` character and whose arguments only extend to the end of the current line.\n",
19 19 "* Cell magics: these use *two* percent characters as a marker (`%%`), and they receive as argument *both* the current line where they are declared and the whole body of the cell. Note that cell magics can *only* be used as the first line in a cell, and as a general principle they can't be 'stacked' (i.e. you can only use one cell magic per cell). A few of them, because of how they operate, can be stacked, but that is something you will discover on a case by case basis.\n",
20 20 "\n",
21 21 "The `%lsmagic` magic is used to list all available magics, and it will show both line and cell magics currently defined:"
22 22 ]
23 23 },
24 24 {
25 25 "cell_type": "code",
26 26 "execution_count": 1,
27 27 "metadata": {
28 28 "collapsed": false
29 29 },
30 30 "outputs": [
31 31 {
32 32 "data": {
33 33 "application/json": {
34 34 "cell": {
35 35 "!": "OSMagics",
36 36 "HTML": "Other",
37 37 "SVG": "Other",
38 38 "bash": "Other",
39 39 "capture": "ExecutionMagics",
40 40 "debug": "ExecutionMagics",
41 41 "file": "Other",
42 42 "html": "DisplayMagics",
43 43 "javascript": "DisplayMagics",
44 44 "latex": "DisplayMagics",
45 45 "perl": "Other",
46 46 "prun": "ExecutionMagics",
47 47 "pypy": "Other",
48 48 "python": "Other",
49 "python2": "Other",
49 50 "python3": "Other",
50 51 "ruby": "Other",
51 52 "script": "ScriptMagics",
52 53 "sh": "Other",
53 54 "svg": "DisplayMagics",
54 55 "sx": "OSMagics",
55 56 "system": "OSMagics",
56 57 "time": "ExecutionMagics",
57 58 "timeit": "ExecutionMagics",
58 59 "writefile": "OSMagics"
59 60 },
60 61 "line": {
61 62 "alias": "OSMagics",
62 63 "alias_magic": "BasicMagics",
63 64 "autocall": "AutoMagics",
64 65 "automagic": "AutoMagics",
65 66 "autosave": "KernelMagics",
66 67 "bookmark": "OSMagics",
68 "cat": "Other",
67 69 "cd": "OSMagics",
68 70 "clear": "KernelMagics",
69 71 "colors": "BasicMagics",
70 72 "config": "ConfigMagics",
71 73 "connect_info": "KernelMagics",
74 "cp": "Other",
72 75 "debug": "ExecutionMagics",
73 76 "dhist": "OSMagics",
74 77 "dirs": "OSMagics",
75 "doctest_mode": "KernelMagics",
78 "doctest_mode": "BasicMagics",
76 79 "ed": "Other",
77 80 "edit": "KernelMagics",
78 81 "env": "OSMagics",
79 "gist": "Other",
80 82 "gui": "BasicMagics",
81 83 "hist": "Other",
82 84 "history": "HistoryMagics",
83 85 "install_default_config": "DeprecatedMagics",
84 86 "install_ext": "ExtensionMagics",
85 87 "install_profiles": "DeprecatedMagics",
86 88 "killbgscripts": "ScriptMagics",
89 "ldir": "Other",
87 90 "less": "KernelMagics",
91 "lf": "Other",
92 "lk": "Other",
93 "ll": "Other",
88 94 "load": "CodeMagics",
89 95 "load_ext": "ExtensionMagics",
90 96 "loadpy": "CodeMagics",
91 97 "logoff": "LoggingMagics",
92 98 "logon": "LoggingMagics",
93 99 "logstart": "LoggingMagics",
94 100 "logstate": "LoggingMagics",
95 101 "logstop": "LoggingMagics",
102 "ls": "Other",
96 103 "lsmagic": "BasicMagics",
104 "lx": "Other",
97 105 "macro": "ExecutionMagics",
98 106 "magic": "BasicMagics",
99 107 "man": "KernelMagics",
100 108 "matplotlib": "PylabMagics",
109 "mkdir": "Other",
101 110 "more": "KernelMagics",
111 "mv": "Other",
102 112 "notebook": "BasicMagics",
103 113 "page": "BasicMagics",
104 114 "pastebin": "CodeMagics",
105 115 "pdb": "ExecutionMagics",
106 116 "pdef": "NamespaceMagics",
107 117 "pdoc": "NamespaceMagics",
108 118 "pfile": "NamespaceMagics",
109 119 "pinfo": "NamespaceMagics",
110 120 "pinfo2": "NamespaceMagics",
111 121 "popd": "OSMagics",
112 122 "pprint": "BasicMagics",
113 123 "precision": "BasicMagics",
114 124 "profile": "BasicMagics",
115 125 "prun": "ExecutionMagics",
116 126 "psearch": "NamespaceMagics",
117 127 "psource": "NamespaceMagics",
118 128 "pushd": "OSMagics",
119 129 "pwd": "OSMagics",
120 130 "pycat": "OSMagics",
121 131 "pylab": "PylabMagics",
122 132 "qtconsole": "KernelMagics",
123 133 "quickref": "BasicMagics",
124 134 "recall": "HistoryMagics",
125 135 "rehashx": "OSMagics",
126 136 "reload_ext": "ExtensionMagics",
127 137 "rep": "Other",
128 138 "rerun": "HistoryMagics",
129 139 "reset": "NamespaceMagics",
130 140 "reset_selective": "NamespaceMagics",
141 "rm": "Other",
142 "rmdir": "Other",
131 143 "run": "ExecutionMagics",
132 144 "save": "CodeMagics",
133 145 "sc": "OSMagics",
146 "set_env": "OSMagics",
134 147 "store": "StoreMagics",
135 148 "sx": "OSMagics",
136 149 "system": "OSMagics",
137 150 "tb": "ExecutionMagics",
138 "tic": "TimerMagics",
139 151 "time": "ExecutionMagics",
140 152 "timeit": "ExecutionMagics",
141 "toc": "TimerMagics",
142 153 "unalias": "OSMagics",
143 154 "unload_ext": "ExtensionMagics",
144 155 "who": "NamespaceMagics",
145 156 "who_ls": "NamespaceMagics",
146 157 "whos": "NamespaceMagics",
147 158 "xdel": "NamespaceMagics",
148 159 "xmode": "BasicMagics"
149 160 }
150 161 },
151 162 "text/plain": [
152 163 "Available line magics:\n",
153 "%alias %alias_magic %autocall %automagic %autosave %bookmark %cd %clear %colors %config %connect_info %debug %dhist %dirs %doctest_mode %ed %edit %env %gist %gui %hist %history %install_default_config %install_ext %install_profiles %killbgscripts %less %load %load_ext %loadpy %logoff %logon %logstart %logstate %logstop %lsmagic %macro %magic %man %matplotlib %more %notebook %page %pastebin %pdb %pdef %pdoc %pfile %pinfo %pinfo2 %popd %pprint %precision %profile %prun %psearch %psource %pushd %pwd %pycat %pylab %qtconsole %quickref %recall %rehashx %reload_ext %rep %rerun %reset %reset_selective %run %save %sc %store %sx %system %tb %tic %time %timeit %toc %unalias %unload_ext %who %who_ls %whos %xdel %xmode\n",
164 "%alias %alias_magic %autocall %automagic %autosave %bookmark %cat %cd %clear %colors %config %connect_info %cp %debug %dhist %dirs %doctest_mode %ed %edit %env %gui %hist %history %install_default_config %install_ext %install_profiles %killbgscripts %ldir %less %lf %lk %ll %load %load_ext %loadpy %logoff %logon %logstart %logstate %logstop %ls %lsmagic %lx %macro %magic %man %matplotlib %mkdir %more %mv %notebook %page %pastebin %pdb %pdef %pdoc %pfile %pinfo %pinfo2 %popd %pprint %precision %profile %prun %psearch %psource %pushd %pwd %pycat %pylab %qtconsole %quickref %recall %rehashx %reload_ext %rep %rerun %reset %reset_selective %rm %rmdir %run %save %sc %set_env %store %sx %system %tb %time %timeit %unalias %unload_ext %who %who_ls %whos %xdel %xmode\n",
154 165 "\n",
155 166 "Available cell magics:\n",
156 "%%! %%HTML %%SVG %%bash %%capture %%debug %%file %%html %%javascript %%latex %%perl %%prun %%pypy %%python %%python3 %%ruby %%script %%sh %%svg %%sx %%system %%time %%timeit %%writefile\n",
167 "%%! %%HTML %%SVG %%bash %%capture %%debug %%file %%html %%javascript %%latex %%perl %%prun %%pypy %%python %%python2 %%python3 %%ruby %%script %%sh %%svg %%sx %%system %%time %%timeit %%writefile\n",
157 168 "\n",
158 169 "Automagic is ON, % prefix IS NOT needed for line magics."
159 170 ]
160 171 },
161 172 "execution_count": 1,
162 173 "metadata": {},
163 174 "output_type": "execute_result"
164 175 }
165 176 ],
166 177 "source": [
167 178 "%lsmagic"
168 179 ]
169 180 },
170 181 {
171 182 "cell_type": "markdown",
172 183 "metadata": {},
173 184 "source": [
174 185 "Since in the introductory section we already covered the most frequently used line magics, we will focus here on the cell magics, which offer a great amount of power.\n",
175 186 "\n",
176 187 "Let's load matplotlib and numpy so we can use numerics/plotting at will later on."
177 188 ]
178 189 },
179 190 {
180 191 "cell_type": "code",
181 192 "execution_count": 2,
182 193 "metadata": {
183 194 "collapsed": false
184 195 },
185 196 "outputs": [],
186 197 "source": [
187 198 "%matplotlib inline\n",
188 199 "import numpy as np\n",
189 200 "import matplotlib.pyplot as plt"
190 201 ]
191 202 },
192 203 {
193 204 "cell_type": "markdown",
194 205 "metadata": {},
195 206 "source": [
196 207 "## <!--====--> Some simple cell magics"
197 208 ]
198 209 },
199 210 {
200 211 "cell_type": "markdown",
201 212 "metadata": {},
202 213 "source": [
203 214 "Timing the execution of code; the 'timeit' magic exists both in line and cell form:"
204 215 ]
205 216 },
206 217 {
207 218 "cell_type": "code",
208 219 "execution_count": 3,
209 220 "metadata": {
210 221 "collapsed": false
211 222 },
212 223 "outputs": [
213 224 {
214 225 "name": "stdout",
215 226 "output_type": "stream",
216 227 "text": [
217 "100 loops, best of 3: 6.05 ms per loop\n"
228 "100 loops, best of 3: 7.06 ms per loop\n"
218 229 ]
219 230 }
220 231 ],
221 232 "source": [
222 233 "%timeit np.linalg.eigvals(np.random.rand(100,100))"
223 234 ]
224 235 },
225 236 {
226 237 "cell_type": "code",
227 238 "execution_count": 4,
228 239 "metadata": {
229 240 "collapsed": false
230 241 },
231 242 "outputs": [
232 243 {
233 244 "name": "stdout",
234 245 "output_type": "stream",
235 246 "text": [
236 "100 loops, best of 3: 6.07 ms per loop\n"
247 "100 loops, best of 3: 7.4 ms per loop\n"
237 248 ]
238 249 }
239 250 ],
240 251 "source": [
241 252 "%%timeit a = np.random.rand(100, 100)\n",
242 253 "np.linalg.eigvals(a)"
243 254 ]
244 255 },
245 256 {
246 257 "cell_type": "markdown",
247 258 "metadata": {},
248 259 "source": [
249 260 "The `%%capture` magic can be used to capture the stdout/err of any block of python code, either to discard it (if it's noise to you) or to store it in a variable for later use:"
250 261 ]
251 262 },
252 263 {
253 264 "cell_type": "code",
254 265 "execution_count": 5,
255 266 "metadata": {
256 267 "collapsed": false
257 268 },
258 269 "outputs": [],
259 270 "source": [
260 271 "%%capture capt\n",
261 272 "from __future__ import print_function\n",
262 273 "import sys\n",
263 274 "print('Hello stdout')\n",
264 275 "print('and stderr', file=sys.stderr)"
265 276 ]
266 277 },
267 278 {
268 279 "cell_type": "code",
269 280 "execution_count": 6,
270 281 "metadata": {
271 282 "collapsed": false
272 283 },
273 284 "outputs": [
274 285 {
275 286 "data": {
276 287 "text/plain": [
277 288 "('Hello stdout\\n', 'and stderr\\n')"
278 289 ]
279 290 },
280 291 "execution_count": 6,
281 292 "metadata": {},
282 293 "output_type": "execute_result"
283 294 }
284 295 ],
285 296 "source": [
286 297 "capt.stdout, capt.stderr"
287 298 ]
288 299 },
289 300 {
290 301 "cell_type": "code",
291 302 "execution_count": 7,
292 303 "metadata": {
293 304 "collapsed": false
294 305 },
295 306 "outputs": [
296 307 {
297 308 "name": "stdout",
298 309 "output_type": "stream",
299 310 "text": [
300 311 "Hello stdout\n"
301 312 ]
302 313 },
303 314 {
304 315 "name": "stderr",
305 316 "output_type": "stream",
306 317 "text": [
307 318 "and stderr\n"
308 319 ]
309 320 }
310 321 ],
311 322 "source": [
312 323 "capt.show()"
313 324 ]
314 325 },
315 326 {
316 327 "cell_type": "markdown",
317 328 "metadata": {},
318 329 "source": [
319 330 "The `%%writefile` magic is a very useful tool that writes the cell contents as a named file:"
320 331 ]
321 332 },
322 333 {
323 334 "cell_type": "code",
324 335 "execution_count": 8,
325 336 "metadata": {
326 337 "collapsed": false
327 338 },
328 339 "outputs": [
329 340 {
330 341 "name": "stdout",
331 342 "output_type": "stream",
332 343 "text": [
333 344 "Writing foo.py\n"
334 345 ]
335 346 }
336 347 ],
337 348 "source": [
338 349 "%%writefile foo.py\n",
339 350 "print('Hello world')"
340 351 ]
341 352 },
342 353 {
343 354 "cell_type": "code",
344 355 "execution_count": 9,
345 356 "metadata": {
346 357 "collapsed": false
347 358 },
348 359 "outputs": [
349 360 {
350 361 "name": "stdout",
351 362 "output_type": "stream",
352 363 "text": [
353 364 "Hello world\n"
354 365 ]
355 366 }
356 367 ],
357 368 "source": [
358 369 "%run foo"
359 370 ]
360 371 },
361 372 {
362 373 "cell_type": "markdown",
363 374 "metadata": {},
364 375 "source": [
365 376 "## <!--====--> Magics for running code under other interpreters"
366 377 ]
367 378 },
368 379 {
369 380 "cell_type": "markdown",
370 381 "metadata": {},
371 382 "source": [
372 383 "IPython has a `%%script` cell magic, which lets you run a cell in\n",
373 384 "a subprocess of any interpreter on your system, such as: bash, ruby, perl, zsh, R, etc.\n",
374 385 "\n",
375 386 "It can even be a script of your own, which expects input on stdin."
376 387 ]
377 388 },
378 389 {
379 390 "cell_type": "markdown",
380 391 "metadata": {},
381 392 "source": [
382 393 "To use it, simply pass a path or shell command to the program you want to run on the `%%script` line,\n",
383 394 "and the rest of the cell will be run by that script, and stdout/err from the subprocess are captured and displayed."
384 395 ]
385 396 },
386 397 {
387 398 "cell_type": "code",
388 399 "execution_count": 10,
389 400 "metadata": {
390 401 "collapsed": false
391 402 },
392 403 "outputs": [
393 404 {
394 405 "name": "stdout",
395 406 "output_type": "stream",
396 407 "text": [
397 "hello from Python 2.7.2 (default, Oct 11 2012, 20:14:37) \n",
398 "[GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)]\n"
408 "hello from Python 2.7.9 (default, Jan 29 2015, 06:27:40) \n",
409 "[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.56)]\n"
399 410 ]
400 411 }
401 412 ],
402 413 "source": [
403 "%%script python\n",
414 "%%script python2\n",
404 415 "import sys\n",
405 416 "print 'hello from Python %s' % sys.version"
406 417 ]
407 418 },
408 419 {
409 420 "cell_type": "code",
410 421 "execution_count": 11,
411 422 "metadata": {
412 423 "collapsed": false
413 424 },
414 425 "outputs": [
415 426 {
416 427 "name": "stdout",
417 428 "output_type": "stream",
418 429 "text": [
419 "hello from Python: 3.3.1 (v3.3.1:d9893d13c628, Apr 6 2013, 11:07:11) \n",
420 "[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)]\n"
430 "hello from Python: 3.4.2 |Continuum Analytics, Inc.| (default, Oct 21 2014, 17:42:20) \n",
431 "[GCC 4.2.1 (Apple Inc. build 5577)]\n"
421 432 ]
422 433 }
423 434 ],
424 435 "source": [
425 436 "%%script python3\n",
426 437 "import sys\n",
427 438 "print('hello from Python: %s' % sys.version)"
428 439 ]
429 440 },
430 441 {
431 442 "cell_type": "markdown",
432 443 "metadata": {},
433 444 "source": [
434 445 "IPython also creates aliases for a few common interpreters, such as bash, ruby, perl, etc.\n",
435 446 "\n",
436 447 "These are all equivalent to `%%script <name>`"
437 448 ]
438 449 },
439 450 {
440 451 "cell_type": "code",
441 452 "execution_count": 12,
442 453 "metadata": {
443 454 "collapsed": false
444 455 },
445 456 "outputs": [
446 457 {
447 458 "name": "stdout",
448 459 "output_type": "stream",
449 460 "text": [
450 "Hello from Ruby 1.9.3\n"
461 "Hello from Ruby 2.0.0\n"
451 462 ]
452 463 }
453 464 ],
454 465 "source": [
455 466 "%%ruby\n",
456 467 "puts \"Hello from Ruby #{RUBY_VERSION}\""
457 468 ]
458 469 },
459 470 {
460 471 "cell_type": "code",
461 472 "execution_count": 13,
462 473 "metadata": {
463 474 "collapsed": false
464 475 },
465 476 "outputs": [
466 477 {
467 478 "name": "stdout",
468 479 "output_type": "stream",
469 480 "text": [
470 481 "hello from /usr/local/bin/bash\n"
471 482 ]
472 483 }
473 484 ],
474 485 "source": [
475 486 "%%bash\n",
476 487 "echo \"hello from $BASH\""
477 488 ]
478 489 },
479 490 {
480 491 "cell_type": "markdown",
481 492 "metadata": {},
482 493 "source": [
483 "## Exercise: write your own script that numbers input lines"
484 ]
485 },
486 {
487 "cell_type": "markdown",
488 "metadata": {},
489 "source": [
490 "Write a file, called `lnum.py`, such that the following cell works as shown (hint: don't forget about the executable bit!): "
491 ]
492 },
493 {
494 "cell_type": "code",
495 "execution_count": 29,
496 "metadata": {
497 "collapsed": false
498 },
499 "outputs": [
500 {
501 "name": "stdout",
502 "output_type": "stream",
503 "text": [
504 "0: my first line\n",
505 "1: my second\n",
506 "2: more\n",
507 "---- END ----\n"
508 ]
509 }
510 ],
511 "source": [
512 "%%script ./lnum.py\n",
513 "my first line\n",
514 "my second\n",
515 "more"
516 ]
517 },
518 {
519 "cell_type": "markdown",
520 "metadata": {},
521 "source": [
522 494 "## Capturing output"
523 495 ]
524 496 },
525 497 {
526 498 "cell_type": "markdown",
527 499 "metadata": {},
528 500 "source": [
529 501 "You can also capture stdout/err from these subprocesses into Python variables, instead of letting them go directly to stdout/err"
530 502 ]
531 503 },
532 504 {
533 505 "cell_type": "code",
534 "execution_count": 30,
506 "execution_count": 14,
535 507 "metadata": {
536 508 "collapsed": false
537 509 },
538 510 "outputs": [
539 511 {
540 512 "name": "stdout",
541 513 "output_type": "stream",
542 514 "text": [
543 515 "hi, stdout\n"
544 516 ]
545 517 },
546 518 {
547 519 "name": "stderr",
548 520 "output_type": "stream",
549 521 "text": [
550 522 "hello, stderr\n"
551 523 ]
552 524 }
553 525 ],
554 526 "source": [
555 527 "%%bash\n",
556 528 "echo \"hi, stdout\"\n",
557 529 "echo \"hello, stderr\" >&2\n"
558 530 ]
559 531 },
560 532 {
561 533 "cell_type": "code",
562 "execution_count": 31,
534 "execution_count": 15,
563 535 "metadata": {
564 536 "collapsed": false
565 537 },
566 538 "outputs": [],
567 539 "source": [
568 540 "%%bash --out output --err error\n",
569 541 "echo \"hi, stdout\"\n",
570 542 "echo \"hello, stderr\" >&2"
571 543 ]
572 544 },
573 545 {
574 546 "cell_type": "code",
575 "execution_count": 32,
547 "execution_count": 16,
576 548 "metadata": {
577 549 "collapsed": false
578 550 },
579 551 "outputs": [
580 552 {
581 553 "name": "stdout",
582 554 "output_type": "stream",
583 555 "text": [
584 556 "hello, stderr\n",
585 557 "\n",
586 558 "hi, stdout\n",
587 559 "\n"
588 560 ]
589 561 }
590 562 ],
591 563 "source": [
592 564 "print(error)\n",
593 565 "print(output)"
594 566 ]
595 567 },
596 568 {
597 569 "cell_type": "markdown",
598 570 "metadata": {},
599 571 "source": [
600 572 "## Background Scripts"
601 573 ]
602 574 },
603 575 {
604 576 "cell_type": "markdown",
605 577 "metadata": {},
606 578 "source": [
607 579 "These scripts can be run in the background, by adding the `--bg` flag.\n",
608 580 "\n",
609 581 "When you do this, output is discarded unless you use the `--out/err`\n",
610 582 "flags to store output as above."
611 583 ]
612 584 },
613 585 {
614 586 "cell_type": "code",
615 "execution_count": 33,
587 "execution_count": 17,
616 588 "metadata": {
617 589 "collapsed": false
618 590 },
619 591 "outputs": [
620 592 {
621 593 "name": "stdout",
622 594 "output_type": "stream",
623 595 "text": [
624 596 "Starting job # 0 in a separate thread.\n"
625 597 ]
626 598 }
627 599 ],
628 600 "source": [
629 601 "%%ruby --bg --out ruby_lines\n",
630 602 "for n in 1...10\n",
631 603 " sleep 1\n",
632 604 " puts \"line #{n}\"\n",
633 605 " STDOUT.flush\n",
634 606 "end"
635 607 ]
636 608 },
637 609 {
638 610 "cell_type": "markdown",
639 611 "metadata": {},
640 612 "source": [
641 613 "When you do store output of a background thread, these are the stdout/err *pipes*,\n",
642 614 "rather than the text of the output."
643 615 ]
644 616 },
645 617 {
646 618 "cell_type": "code",
647 "execution_count": 34,
619 "execution_count": 18,
648 620 "metadata": {
649 621 "collapsed": false
650 622 },
651 623 "outputs": [
652 624 {
653 625 "data": {
654 626 "text/plain": [
655 "<open file '<fdopen>', mode 'rb' at 0x112cd55d0>"
627 "<_io.BufferedReader name=52>"
656 628 ]
657 629 },
658 "execution_count": 34,
630 "execution_count": 18,
659 631 "metadata": {},
660 632 "output_type": "execute_result"
661 633 }
662 634 ],
663 635 "source": [
664 636 "ruby_lines"
665 637 ]
666 638 },
667 639 {
668 640 "cell_type": "code",
669 "execution_count": 35,
641 "execution_count": 19,
670 642 "metadata": {
671 643 "collapsed": false
672 644 },
673 645 "outputs": [
674 646 {
675 647 "name": "stdout",
676 648 "output_type": "stream",
677 649 "text": [
678 650 "line 1\n",
679 651 "line 2\n",
680 652 "line 3\n",
681 653 "line 4\n",
682 654 "line 5\n",
683 655 "line 6\n",
684 656 "line 7\n",
685 657 "line 8\n",
686 658 "line 9\n",
687 659 "\n"
688 660 ]
689 661 }
690 662 ],
691 663 "source": [
692 "print(ruby_lines.read())"
664 "print(ruby_lines.read().decode('utf8'))"
693 665 ]
694 666 }
695 667 ],
696 668 "metadata": {
697 669 "kernelspec": {
698 670 "display_name": "Python 3",
699 671 "language": "python",
700 672 "name": "python3"
701 673 },
702 674 "language_info": {
703 675 "codemirror_mode": {
704 676 "name": "ipython",
705 677 "version": 3
706 678 },
707 679 "file_extension": ".py",
708 680 "mimetype": "text/x-python",
709 681 "name": "python",
710 682 "nbconvert_exporter": "python",
711 683 "pygments_lexer": "ipython3",
712 684 "version": "3.4.2"
713 685 }
714 686 },
715 687 "nbformat": 4,
716 688 "nbformat_minor": 0
717 689 }
This diff has been collapsed as it changes many lines, (1321 lines changed) Show them Hide them
@@ -1,1341 +1,1556 b''
1 1 {
2 2 "cells": [
3 3 {
4 4 "cell_type": "markdown",
5 5 "metadata": {},
6 6 "source": [
7 7 "# Custom Display Logic"
8 8 ]
9 9 },
10 10 {
11 11 "cell_type": "markdown",
12 12 "metadata": {},
13 13 "source": [
14 14 "## Overview"
15 15 ]
16 16 },
17 17 {
18 18 "cell_type": "markdown",
19 19 "metadata": {},
20 20 "source": [
21 21 "As described in the [Rich Output](Rich Output.ipynb) tutorial, the IPython display system can display rich representations of objects in the following formats:\n",
22 22 "\n",
23 23 "* JavaScript\n",
24 24 "* HTML\n",
25 25 "* PNG\n",
26 26 "* JPEG\n",
27 27 "* SVG\n",
28 28 "* LaTeX\n",
29 29 "* PDF\n",
30 30 "\n",
31 31 "This Notebook shows how you can add custom display logic to your own classes, so that they can be displayed using these rich representations. There are two ways of accomplishing this:\n",
32 32 "\n",
33 33 "1. Implementing special display methods such as `_repr_html_` when you define your class.\n",
34 34 "2. Registering a display function for a particular existing class.\n",
35 35 "\n",
36 36 "This Notebook describes and illustrates both approaches."
37 37 ]
38 38 },
39 39 {
40 40 "cell_type": "markdown",
41 41 "metadata": {},
42 42 "source": [
43 43 "Import the IPython display functions."
44 44 ]
45 45 },
46 46 {
47 47 "cell_type": "code",
48 48 "execution_count": 1,
49 49 "metadata": {
50 50 "collapsed": false
51 51 },
52 52 "outputs": [],
53 53 "source": [
54 54 "from IPython.display import (\n",
55 55 " display, display_html, display_png, display_svg\n",
56 56 ")"
57 57 ]
58 58 },
59 59 {
60 60 "cell_type": "markdown",
61 61 "metadata": {},
62 62 "source": [
63 63 "Parts of this notebook need the matplotlib inline backend:"
64 64 ]
65 65 },
66 66 {
67 67 "cell_type": "code",
68 68 "execution_count": 2,
69 69 "metadata": {
70 70 "collapsed": false
71 71 },
72 72 "outputs": [],
73 73 "source": [
74 74 "%matplotlib inline\n",
75 75 "import numpy as np\n",
76 76 "import matplotlib.pyplot as plt"
77 77 ]
78 78 },
79 79 {
80 80 "cell_type": "markdown",
81 81 "metadata": {},
82 82 "source": [
83 83 "## Special display methods"
84 84 ]
85 85 },
86 86 {
87 87 "cell_type": "markdown",
88 88 "metadata": {},
89 89 "source": [
90 90 "The main idea of the first approach is that you have to implement special display methods when you define your class, one for each representation you want to use. Here is a list of the names of the special methods and the values they must return:\n",
91 91 "\n",
92 92 "* `_repr_html_`: return raw HTML as a string\n",
93 "* `_repr_json_`: return raw JSON as a string\n",
93 "* `_repr_json_`: return a JSONable dict\n",
94 94 "* `_repr_jpeg_`: return raw JPEG data\n",
95 95 "* `_repr_png_`: return raw PNG data\n",
96 96 "* `_repr_svg_`: return raw SVG data as a string\n",
97 97 "* `_repr_latex_`: return LaTeX commands in a string surrounded by \"$\"."
98 98 ]
99 99 },
100 100 {
101 101 "cell_type": "markdown",
102 102 "metadata": {},
103 103 "source": [
104 104 "As an illustration, we build a class that holds data generated by sampling a Gaussian distribution with given mean and standard deviation. Here is the definition of the `Gaussian` class, which has a custom PNG and LaTeX representation."
105 105 ]
106 106 },
107 107 {
108 108 "cell_type": "code",
109 109 "execution_count": 3,
110 110 "metadata": {
111 111 "collapsed": false
112 112 },
113 113 "outputs": [],
114 114 "source": [
115 115 "from IPython.core.pylabtools import print_figure\n",
116 116 "from IPython.display import Image, SVG, Math\n",
117 117 "\n",
118 118 "class Gaussian(object):\n",
119 119 " \"\"\"A simple object holding data sampled from a Gaussian distribution.\n",
120 120 " \"\"\"\n",
121 121 " def __init__(self, mean=0.0, std=1, size=1000):\n",
122 122 " self.data = np.random.normal(mean, std, size)\n",
123 123 " self.mean = mean\n",
124 124 " self.std = std\n",
125 125 " self.size = size\n",
126 126 " # For caching plots that may be expensive to compute\n",
127 127 " self._png_data = None\n",
128 128 " \n",
129 129 " def _figure_data(self, format):\n",
130 130 " fig, ax = plt.subplots()\n",
131 131 " ax.hist(self.data, bins=50)\n",
132 132 " ax.set_title(self._repr_latex_())\n",
133 133 " ax.set_xlim(-10.0,10.0)\n",
134 134 " data = print_figure(fig, format)\n",
135 135 " # We MUST close the figure, otherwise IPython's display machinery\n",
136 136 " # will pick it up and send it as output, resulting in a double display\n",
137 137 " plt.close(fig)\n",
138 138 " return data\n",
139 139 " \n",
140 140 " def _repr_png_(self):\n",
141 141 " if self._png_data is None:\n",
142 142 " self._png_data = self._figure_data('png')\n",
143 143 " return self._png_data\n",
144 144 " \n",
145 145 " def _repr_latex_(self):\n",
146 146 " return r'$\\mathcal{N}(\\mu=%.2g, \\sigma=%.2g),\\ N=%d$' % (self.mean,\n",
147 147 " self.std, self.size)"
148 148 ]
149 149 },
150 150 {
151 151 "cell_type": "markdown",
152 152 "metadata": {},
153 153 "source": [
154 154 "Create an instance of the Gaussian distribution and return it to display the default representation:"
155 155 ]
156 156 },
157 157 {
158 158 "cell_type": "code",
159 159 "execution_count": 4,
160 160 "metadata": {
161 161 "collapsed": false
162 162 },
163 163 "outputs": [
164 164 {
165 165 "data": {
166 166 "image/png": [
167 "iVBORw0KGgoAAAANSUhEUgAAAXIAAAENCAYAAAASUO4dAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\n",
168 "AAALEgAACxIB0t1+/AAAElNJREFUeJzt3X+wXGV9x/H3JpefITfhCr1JSyCIRH5UJbQgrVhXChas\n",
169 "DXE6onbaBoownRG0tVUSOg63vxQY+8tRoVOQuTIOSq3QQGtNiGyr1SK0IfxqTBNNB2zuhUJoLogk\n",
170 "kO0fz9ncvZu9956z9+yefXbfr5mdPefZs7tPbnY/++z3POcsSJIkSZIkSZIkSZIkSZIkSZIkSZJ6\n",
171 "1olFd6DNlgJHFt0JKYt5RXdAXe8sYAtwEyHEzym2O233DPCxojshZVEqugPqGjcD/wrc3tB+E/BV\n",
172 "4EFgHXBNm57/1wij4bOBu4Avtel5Gp0B/Drw+3VtZwGnAl/oUB+m06xvq4HTgP3AD5n8/8raLqkH\n",
173 "fQf424a204GLkuU3AVe36blfV/fYxwC76UwJ5yOED6nbmtyWJcTfTPjweQoYSNqGCR9G9wI/n1Pf\n",
174 "FgH/Xrf+HeA1GduPaaEv6nKWVgQwH7gPOA84vK69DHwjWX5X3XLeTmeynPG/wHbgZ9r0XPX+HPj7\n",
175 "aW57hvABk8YDwD8B24BfTdrGCSH+HuDbOfXtF4An6ta3EP7PsrS/vYW+qMsNzL6J+sDpwCbCV/mL\n",
176 "CKNLgCOAl5Pls4BPZHzc1wJXzHD7vxHC6h+ZHPmXCCWW7RmfK+tz1kxXXtxC+DBJ0495wD7g08BH\n",
177 "gS8n7QuAl3Ls23HA83XrzwMnA89lbFePMcgFoS59O6EU8H5CkB8G7K3b5kigWrc+H/hn4Nxk/Vbg\n",
178 "k0wNvu8T6uqz2Qc8liz/MvAQ8PA0264A/gQ4FvhZoAL8A6HGn+U5a6rTtO9OniuNMwl9fowwkj4T\n",
179 "+I8mjz3Xvi0Gfly3vhc4KtkuS7t6jKUVQXhzvwysB94B/AQh3B+o22Z+w31+DvjvZLmUrLc6iq5Z\n",
180 "DFxK2MHXzBAhsH+TUCLYlGx78zTbpzHdiPwl4NCUj/FG4BHCDsXPEer9rwe+N4d+NevbREPbEYRR\n",
181 "d9Z29RhH5FoE/ChZniDUeq8CngU+W7fdKw33uxD4erK8Eni0yWNnKSWUgLXAB4AXgBOY/KCo+WDS\n",
182 "p9oo87C6vrfynDD9iHwR6UOvfkB0C+ED7Qngr3Lu2w7Ct5Ca1xBG/s+nbD8maZfUI44izET5babO\n",
183 "ZDgT+D8OroePMvVr+YPATyfLHweuBFbNoT8fItSklxC+DbwtaT+ZyaC8kTAtEEJd/1NzeL6aS2k+\n",
184 "a+Uq4Bfr1uv7Ue8QwjeEejcT6v55920BUz8wtxC+PWVtV49p/Lqs/lEGvkUoCdxb174LeAOwmamj\n",
185 "tyFCMPyAUJ9eRxjxLSSURBYBOwl14KzOJdTnrwR+D7ic8OEwQZjbvr3u8k7CTr8zCDX5/S08X81V\n",
186 "hNLMm5J/w2Ymd+5eCfw1k99E6vtRcxZh1H08oQw1kbR/n1DG+FbOfXshuawi/P/dSxjF78vYrj61\n",
187 "GPgK8J+Er4xvJryxNxKmXG1ItlFchjNsu5iwkxFCwPxp/t1p6lDgrR16rprDCTsti+6HlKtR4LeS\n",
188 "5QHC6OtGJuf+XgNcX0C/1Fm/QyjDfJrOzPMGeC+d/+Z4KWFnZdH9kHKziOZfl7cyOaJbkqyrt5WY\n",
189 "eWddL1gGXFx0J6S8nUGo/91GqJn+DaFWurtum1LDuiSpQ9LMIx8gzGT4XHL9ImGaWL0q00/jkiS1\n",
190 "UZp55E8llweT9a8QZiyMEUoqY4RDqp9uvONJJ51U3bFjRz49laT+sYP05/pJNSIfA55k8nDl84HH\n",
191 "gXuANUnbGuDug3qyYwfVatVLDpfrrruu8D700sW/p3/Pbr4AJ6UNcUh/ZOfVwBcJU7B2AJcR9uDf\n",
192 "SZjzuxO4JMsTS5LykTbItxAOfmh0fo59kSS1wJNmRaJcLhfdhZ7i3zNf/j2L1e6feqsm9R5JUkql\n",
193 "Ugky5LMjckmKnEEuSZEzyCUpcga5JEXOIJekyBnkUocMDg5RKpUYHBwquivqMU4/lDokTCmrAiV8\n",
194 "X2gmTj+UpD5jkEsdN0CpVLLMotxYWpE6pL60Mnn6fsssOpilFUnqMwa5JEXOIJe6iFMU1Qpr5FKH\n",
195 "pKmRO0VRYI1ckvqOQS5JkTPIJSlyBrkkRc4gl6TIGeSSFDmDXGoT54SrU5xHLrVJ45xw55ErLeeR\n",
196 "S1KfMcglKXIGuSRFziCXpMgNpNxuJ7AHeBXYB5wNDAFfBk5Ibr8EeD73HkqSZpR2RF4FysBKQogD\n",
197 "rAU2AiuATcm6JKnDspRWGqfCrAJGk+VRYHUuPZIkZZJlRH4f8BBwRdI2DIwny+PJuiSpw9LWyN8C\n",
198 "7AKOJZRTtjbcXmXyCAdJUgelDfJdyfUzwF2EOvk4sAQYA5YCTze748jIyIHlcrlMuVxuradSTxqg\n",
199 "VCqxcOHR7NnzXNGdUUEqlQqVSqXl+6c5BPRIYD4wASwANgB/CJwPPAvcQNjRuZiDd3h6iL76VtpD\n",
200 "9KfbxvdO/8p6iH6aEfkwYRRe2/6LhDB/CLgTuJzJ6YeSpA7zpFlSmzgiV6s8aZYk9RmDXJIiZ5BL\n",
201 "UuQMcqmL+StDSsOdnVKb5LGz052f/cmdnZLUZwxySYqcQS5JkTPIJSlyBrkkRc4gl6TIGeSSFDmD\n",
202 "XJIiZ5BLUuQMcmmO2nMY/UDt6D5pVh6iL83RdIfRz/UQ/cZr30v9w0P0JanPGOSSFDmDXJIiZ5BL\n",
203 "UuQMckmKnEEuSZEzyCUpcga5JEXOIJekyBnkkhQ5g1ySImeQS1LkDHJJilzaIJ8PbAbuSdaHgI3A\n",
204 "NmADsDj/rkm9wlPSqr3SBvmHgSeYPPfmWkKQrwA2JeuSmnqFybeOlL80QX4c8E7gFibPj7sKGE2W\n",
205 "R4HV+XdNkpRGmiD/C+CjwP66tmFgPFkeT9YlSQUYmOX2dwFPE+rj5Wm2qTLD98aRkZEDy+VymXJ5\n",
206 "uoeRpP5UqVSoVCot33+2PTCfAH6DUOQ7HBgEvgqcRQj2MWApcD9wSpP7+1Nv6nlpfuqt+TX4U29q\n",
207 "Ju+fersWWAacCLwP+AYh2NcDa5Jt1gB3Z+2oJCkfWeeR14YE1wMXEKYfnpesS5IK0O7JrZZW1POK\n",
208 "KK0MDg4xMbEbgIULj2bPnufa+C9Up2UtrRjk0hwVEeST23HQbYpf3jVySVKXm236oaSOmO0w/trt\n",
209 "hwD7OtQnxcIgl7pC7TD+6cK8/vaZtlM/srQiSZEzyCUpcga5JEXOIJekyBnkkhQ5g1ySImeQS1Lk\n",
210 "DHJJipxBLkmRM8glKXIGuSRFziCXpMgZ5JIUOYNckiJnkEtS5AxySYqcQS5JkTPIpdyEn2MbHBwq\n",
211 "uiPqM/7Um5Sb8HNsExP+DJs6yxG5JEXOIJekyBnkUvSszfc7a+RS9KzN9ztH5JIUudmC/HDgAeBh\n",
212 "4Angk0n7ELAR2AZsABa3q4OSpJnNFuQ/Bt4OnAG8MVk+F1hLCPIVwKZkXZJUgDSllR8l14cC84Hd\n",
213 "wCpgNGkfBVbn3zVJUhppgnweobQyDtwPPA4MJ+sk18Nt6Z0kaVZpZq3sJ5RWFgFfJ5RX6lWTS1Mj\n",
214 "IyMHlsvlMuVyOWsfpcINDg4xMbGbhQuPZs+e54rujnpMpVKhUqm0fP+s85U+DrwEfAAoA2PAUsJI\n",
215 "/ZQm21er1WkzXopGqVQijFdKNL6m62+r36ZZ+9RrZrgt7fXUx/D91hvCayd9Ps9WWjmGyRkpRwAX\n",
216 "AJuB9cCapH0NcHemXkqScjNbaWUpYWfmvORyO2GWymbgTuByYCdwSfu6KEmaSbsPBbO0op7QrLRS\n",
217 "q5sH3VBaOQR4xTp+D8haWjHIpRSaBflMQV1UjdxaeW/Iu0YuSepyBrkkRc4gl6TIGeSSFDmDXJIi\n",
218 "Z5BLuRuozTqQOsIgl3IXfrFH6hSDXJIiZ5BLUuQMckmKnEEuSZEzyCUpcga5JEXOIJekyBnkkhQ5\n",
219 "g1ySImeQS1LkDHJJipxBLkmRM8glKXIDRXdAiounqFX3cUQuZVI7Ra2nqVX3MMglKXIGuSRFziCX\n",
220 "ZjA4OGRNXF3PIJdmMDGxG+vh6nYGuSRFLk2QLwPuBx4HHgM+lLQPARuBbcAGYHE7OihJmlmaIN8H\n",
221 "/C5wOnAO8EHgVGAtIchXAJuSdUldolbfHxwcKrorarNW9uLcDXwmubwNGAeWABXglIZtq9Wq9UXF\n",
222 "K+zorBLeKvXXNGnLet2+x6hWq1P67vswLskO9tT5nLVGvhxYCTwADBNCnOR6OONjSZJykOUQ/aOA\n",
223 "vwM+DEw03DbtoW4jIyMHlsvlMuVyOVMHJanXVSoVKpVKy/dPO3Q/BLgX+Brwl0nbVqAMjAFLCTtE\n",
224 "La2op1haURHaUVopAbcCTzAZ4gDrgTXJ8hpC7VyS1GFpEv9c4F+AR5gcAqwDvgvcCRwP7AQuAZ5v\n",
225 "uK8jckXNEbmKkHVE3u5jjw1yRc0gVxHaPWtFktRlDHJJipxBLkmRM8ilJjx9rWJikEtNePpaxcQg\n",
226 "l6TIGeSSFDmDXKpjbVwxMsilOtbGFSODXJIiZ5BLPWfA8lCfMcilnvMKlof6i0EuSZEzyCUpcga5\n",
227 "JEXOIJekyBnkkhQ5g1ySImeQS1LkDHJJipxBLkmRM8ilPlM7w+Pg4FDRXVFOBorugKTOqp3hcWLC\n",
228 "87H0CkfkkhQ5g1ySImeQS1LkDHJJipxBLkmRSxPknwfGgUfr2oaAjcA2YAOwOP+uSZLSSBPktwEX\n",
229 "NrStJQT5CmBTsi4pKuEn4ZxTHr80Qf5NYHdD2ypgNFkeBVbn2SlJnVD7SbhqMrdcsWq1Rj5MKLeQ\n",
230 "XA/n0x1JUlZ57Oys4i+9SlJhWj1EfxxYAowBS4Gnp9twZGTkwHK5XKZcLrf4lJJaE2rhCxcezZ49\n",
231 "zxXdGTVRqVSoVCot3z/tyRaWA/cAb0jWbwSeBW4g7OhcTPMdntVq1cG64lEqlQhfMGe7JsU23fcY\n",
232 "1Wq1yb+RA7epO4T/o9T5nKq0cgfwbeD1wJPAZcD1wAWE6YfnJeuSpAK0+/RnjsjVlQYHh5iY2H1Q\n",
233 "ucERubpB1hG5p7FVX/JUruolHqIvSZEzyCUpcga5+kbtJ86S+mMfGujjf3tvM8jVN2p18f49fq12\n",
234 "SL56jUEuSZEzyCUpcga5el6tNq6ZDHg624g5j1w9b7I2bphPL9TPnVcfJ0fkkhQ5g1x9zpKC4mdp\n",
235 "RX3OkoLi54hckiJnkEtS5AxySYqcQS5JkTPIJSlyBrkkRc4glwBP8aqYGeQS4CleFTODXJIiZ5BL\n",
236 "UuQMckmKnEEuSZHzpFmKyq5du3jxxRc57LDDWLZsWdHdkbqCI3JFY//+/Rx//AmsXHkhy5efyNjY\n",
237 "2JTba78E5Clp5yJMwyyVDm167d+2OzkiVzSq1SqvvvoqL7ywnQULjmfv3r1Tbq/9EpCnpJ2L2jTM\n",
238 "UtNr/7bdyRG5JEVurkF+IbAV+C/gmrl3R5KU1VyCfD7wGUKYnwa8Hzg1j07pYJVKpeguRGRqnVd5\n",
239 "mvrTeLX9Es3arKd3zlyC/GxgO7AT2Ad8Cbg4hz6pCYM8i1qddx8edp+32k/j7QYm90vAdQe11dbV\n",
240 "fnMJ8p8CnqxbfyppkyR10FyC3KGOClBlcPBXePnlZ5g3z331EoQ5Ra06Bxgh1MgB1gH7gRvqttkO\n",
241 "nDSH55CkfrQDeF0nnmggebLlwKHAw7izU5KicxHwPcLIe13BfZEkSZIE8B7gceBV4MyG29YRDh7a\n",
242 "Cryjw/3qBSOE2UGbk8uFM26t6XggW752Ao8QXpPfLbYr0fk8MA48Wtc2BGwEtgEbgMUF9ItTgBXA\n",
243 "/UwN8tMIdfRDCHX17XiKgKyuAz5SdCciN5/w2ltOeC26b2fufkAIH2X3VmAlU4P8RuBjyfI1wPWz\n",
244 "PUg7gnQr4ZOk0cXAHYSjNHYS3kxnt+H5e52HKs6NB7K1h6/L1nwTaDxyahUwmiyPAqtne5BOjoh/\n",
245 "klAWqPEAotZcDWwBbqWgr1yR80C2/FWB+4CHgCsK7ksvGCaUW0iuh2e7Q6unsd0ILGnSfi1wT4bH\n",
246 "8aCig033t/0D4Cbgj5L1Pwb+DLi8Q/3qFb7m8vcWYBdwLOH1u5Uw0tTcVUnxmm01yC9o4T4/BOp/\n",
247 "0uW4pE1Tpf3b3kK2D00Fja/DZUz9pqjsdiXXzwB3EcpXBnnrxgmDuTFgKfD0bHdod2mlvm62Hngf\n",
248 "4eChE4GTcQ93Vkvrlt/N1B0kSuchwmtvOeG1+F7Ca1OtORJYmCwvIMxG83U5N+uBNcnyGuDuIjrx\n",
249 "bkIN8iXCJ8rX6m67lrCjaSvwS53vWvS+QJjmtYXwnztr7UxNeSBbfk4kzPx5GHgM/55Z3QH8D7CX\n",
250 "kJuXEWYA3UfB0w8lSZIkSZIkSZIkSZIkSZIkSZIktcn/A4eK9UXawRDUAAAAAElFTkSuQmCC\n"
167 "iVBORw0KGgoAAAANSUhEUgAAAlEAAAGLCAYAAADnMccKAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\n",
168 "AAALEgAACxIB0t1+/AAAGsJJREFUeJzt3X2QndddH/DvsUQs5cXIRoCNA9mGGIR5Dy9KiBMnMmnq\n",
169 "BAbamjOdYIOBafEMGd4MocEGUrAbG1Sgw7sLwWAI5bhT6tC0abCN4rQlSjEhmVAbG1yRRHgTYgsp\n",
170 "xEKOlKd/3LvmeiOvdo/26t6VPp9/ds9znufe32rvaL/znHOeU4ZhCAAAa3PWrAsAANiIhCgAgA5C\n",
171 "FABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghRsIGVUraMv5ZSyq5Z1zMPSinnllK+atZ1AKc/\n",
172 "IQo2oFLKV5ZS3pPkQClla5IfTPIXp+i9P7eUclMp5d+XUv6glPIVp+J9n6KWraWUXy6lvHjp2DAM\n",
173 "B5K8opTyvFnVtRrHq32i77NLKb9SSvmuUsqvllIWTrYPWH9CFMypUsofl1JecZzjm5Jcn+Tnkrwo\n",
174 "yRcleWwYhvefgprOSnJtktcNw/A9SX4zydtKKdun/d7HqeU7k7w+yRVJyrLun0zyE6e6ptU6Qe1J\n",
175 "cluS24Zh+IUkv5rkd9ahD1hnQhTMoXEo+fKM/sgu97IkvzgMw68Ow/AnSb4/ya+fotIuSvI1ST5r\n",
176 "3P6dJM9I8o2n6P2fMAzDrwzD8ENJPnqcvseT3F9KedFaX7eUcnYp5UdKKftLKfeVUspE36tLKfeX\n",
177 "Un6/lPJPp1F7KeXzknzpMAz/c3zuO5N8finlczr7ntNbJ7AyIQrm08VJfiPJPy+lPG1Z38uS/GGS\n",
178 "lFLOS/IpwzB87BTV9XdJnp3kgiQZhuHo+Ni5p+j91+ItSV691ouGYTiS0Z2s25JcmImAOAzDm5L8\n",
179 "xjAMXz8Mw++tV6HLfEmSDyw79sGM7jr29H3NFGoEIkTBvPqKJD+S5ONJXrms7+xhGD4+/v5lSd59\n",
180 "qooahmH/MAzbh2H442Q0ByfJeUn+6FTVsAbvSfLCzmtfnOSOjIbEfnBZ3ydOpqhV+Iwkh5cdeyzJ\n",
181 "+Uk+vaPvM6dQI5Bk86wLAI7r3GEY9pdS3pTkqiT/JUlKKV+Q5P9OnPeFSf58+cWllG9J8vnDMFw3\n",
182 "bv/LJOcPw/ATE+dsS/LTOf6cnEk/MwzDe5+i77uSvGVpCOl4SinfkeS7M7p7tX1c7+NJXj4Mw4fX\n",
183 "sZYnGYbh4+PJ25uGYTi2mmsmfFWSmzK6k/OXpZQXD8PwjlLKjiz7955C7edm9O8z6fEkz0qytbMP\n",
184 "mAIhCubM+LEFS38MfzPJO0spnzkMw4eS/OMkbeL07UnedZyX+Wfja5d8U5KfnzxhGIa/TfLtJ1Hn\n",
185 "FyV5RZLLVjjnRzO6Q/L8jELGHyV5zTAMe9ezlhUsDTV+ZI3XbRqGYUjygVLK7yR5bZJ3ZHTn77cn\n",
186 "T5xC7Z80TyrJ05M8muMHtdX0AVNgOA/mz2VJ7kmSYRjeneT+JNeM+549DMPDE+c+LcnRyYvHq/cu\n",
187 "SXLXuL0lyQsynke1Hkopz8roTs0rh2E47h/p8V2zK5N8zzAMx8bzp/YlOZUTnR/PGv+fK6V8ZpLF\n",
188 "iUM/leTyUsrFGd0hPLSO9R3Pw0meuezYM8Y1LXb0fWgKNQJxJwrm0aXDMLx2ov2LSf5tKeWX8snD\n",
189 "NY8k2bbs2FckeWgYhoPj9ouTvC/Jx0op5y2FnlLKuUn+XfqGoW7K6I7Sw+PVa/9iGIbly+lfleRt\n",
190 "wzB8Yvx+mzMaJvu+5W9wkrWs5FMz+jdai8uSvG2pMQzD+0opb83osRL3Lj95CrW/M6PJ+0uvvzmj\n",
191 "4Pm+JB/r7AOmQIiCOVBKOSej0PFQkr9e1v3GJD+U5Pcy+mM96QMZTUSe9LXj11ny6ozubO0av/aj\n",
192 "yRMPpVzzMFQp5bUZzRXaMZ4j9DkZ3T1JKeUrk5wzDMPdSf4m41V8Y9+V5JeHYfjg8tfsrWWyrKc4\n",
193 "PkzOh1pW31N57ngV3qSfTLIno2dzLX+Dda19GIYPlFL+Xyll53jY8+VJ/mQYhvvHP0NXH7D+hCiY\n",
194 "Dy/MaK7Ngxk9H+oJ4wnS35Nkd8ZDdBPuSfIDy45dluRYKeXqJJ+S5O7xsc8bhuHOkylyPER3Y5JN\n",
195 "kyVmNME9Sb45o3lDX5bRIwLeMJ7U/swkHxmG4baTef9ltXxrksuTfHaSnymlvCPJDyytXBw/rfvP\n",
196 "ll326ozC5Jcd5/Wen9Gw6TeUUs4ahuHHn/gBh+GeUsp/T7J3+XXTqD3JtyS5vpTygozuLH7zxOW9\n",
197 "fcA6K6O5k8CsjR+W+KGJYbjVXnfnMAxfO/5+S5L9Ga3E+/jKV05HKeU7hmH4tVm897I6viXJJ4Zh\n",
198 "+K1lx+eiPmDjW9WdqFrr1yX5vNbaT9daL05yS5JjGU94ba1JYnCShmF4oPPSVkp5+TAMf5DRhPI/\n",
199 "nVWAGvvUGb73pMszejzEcvNSH7DBnXDVSq31mUle2Fr76fGh3UmuaK1dmuSBjFbfALPzxiTfON7X\n",
200 "7oszfqbULJRSXpXkpIYM16mOf5LkzeMVgZPH56I+4PSwmjtRNyS5qNb6n5L8WJLHWmtLy39vS3Lz\n",
201 "+CswA8MwHC2l3JDkW4dh+JkZ1/KWWb5/8sRquX80DMMvLe+bh/qA08eKd6JqrRcl2dRae1WS12T0\n",
202 "sL7J5cKPZLTlAzBDwzA8PAzDqdqEeK4Nw3DgeAEKYL2d6E7U5Un+c5K01hZrrR9J8mkT/duzwtNw\n",
203 "77rrLnOlAIAN47LLLjvRM9+ecKIQ9UhGy4H/sNb6rIw2uTxYa72gtfZwRpM2V5xfsJZiOLPVWl/f\n",
204 "Wnv9rOtg/vmssBY+L6zWWm/+nChE/cckv1RrvWfcfl1Ge1DdXms9luS+1trutZcJALCxrRiiWmvH\n",
205 "kvyr43RdMp1yAAA2BhsQAwB0EKIAADoIUcyTPbMugA1jz6wLYEPZM+sCOD1Nde+8u+66a7A6DwDY\n",
206 "CNaaW9yJAgDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAA\n",
207 "OghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA6bZ10AwOli\n",
208 "74P7b108dGRhqX3+OWfv23nRhVfPriJgmoQogHWyeOjIwg1377t0qX39roUZVgNMm+E8AIAOQhQA\n",
209 "QAchCgCggxAFANBBiAIA6CBEAQB0EKIAADoIUQAAHYQoAIAOnlgOMGO2i4GNSYgCmDHbxcDGZDgP\n",
210 "AKCDEAUA0EGIAgDoIEQBAHQwsRxgzmzbunnHHfc+tCexUg/mmRAFMGcOHD665cbxaj0r9WB+Gc4D\n",
211 "AOggRAEAdBCiAAA6CFEAAB1MLAeYgcn98jadVXbMuBygwwlDVK310STvGTffmuT3k9yS5FiS+5Nc\n",
212 "01obplYhwGlocr+863YtHJx1PcDareZO1N7W2uVLjVrrf0tyRWttsdZ6bZIrk9w2rQIBAObRakLU\n",
213 "F9da70ny8STfnuSx1triuO+2JDdHiAIAzjCrmVj+3NbaS5K8LsmtSR6Z6HskyXlTqAsAYK6dMES1\n",
214 "1h4ff31XkseTfNpE9/Ykj06nNACA+bViiKq17qy1XjH+/vlJ9ifZUmu9YHzKVUnunG6JAADz50Rz\n",
215 "ou5L8sO11tdkdMfpmoyG726vtR5Lcl9rbfeUawQAmDsrhqjW2qEk37Ds8IeTXDK1igAANgBPLAcA\n",
216 "6CBEAQB0sO0LwJRs27p5xx33PrQnSc4/5+x9Oy+68OrZVgSsJyEKYEoOHD665cbx1i7X71qYcTXA\n",
217 "ejOcBwDQQYgCAOggRAEAdBCiAAA6mFgOcApMrtRLkk1nlR0zLAdYB0IUwCkwuVIvSa7btXBwlvUA\n",
218 "J89wHgBAByEKAKCDEAUA0EGIAgDoYGI5wBxbvqrPHnwwP4QogDm2fFWfPfhgfhjOAwDoIEQBAHQQ\n",
219 "ogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDo4InlABvU3gf337p46MjCUtuWMHBqCVEA\n",
220 "G9TioSMLN9gSBmbGcB4AQAchCgCggxAFANBBiAIA6GBiOcAGsm3r5h133PvQniTZdFbZMeNy4Iwm\n",
221 "RAFsIAcOH91y43hF3nW7Fg7Ouh44kxnOAwDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCD\n",
222 "EAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDosHk1J9Van5Pk\n",
223 "niTflOTvktyS5FiS+5Nc01obplYhAMAcOuGdqFrrWUlel+RNSUqS3UmuaK1dmuSBJFdOtUIAgDm0\n",
224 "muG8a5P8SpK/H5//WGttcdx3W5JdU6oNAGBurRiiaq1fnaS01t49cf6jE6c8kuS8KdUGADC3TjQn\n",
225 "aleSr6m1vjDJjiSvSvL+if7teXKoAgA4I6wYolprNy19X2v9sSRvTfKjtdYLWmsPJ7kqyZ3TLREA\n",
226 "YP6sanXeMtcmub3WeizJfa213etcEwDA3Ft1iGqt/ZuJ5iVTqAUAYMPwsE0AgA5CFABAByEKAKCD\n",
227 "EAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDosHnWBQAwHXsf\n",
228 "3H/r4qEjC0ly/jln79t50YVXz7YiOL0IUQCnqcVDRxZuuHvfpUly/a6FGVcDpx/DeQAAHYQoAIAO\n",
229 "QhQAQAchCgCggxAFANBBiAIA6CBEAQB0EKIAADoIUQAAHYQoAIAOtn0BOE1s27p5xx33PrRnqb3p\n",
230 "rLJjhuXAaU+IAjhNHDh8dMuN473ykuS6XQsHZ1kPnO4M5wEAdBCiAAA6CFEAAB3MiQI4CXsf3H/r\n",
231 "4qEjC8l8T+RePun8/HPO3rfzoguvnl1FsPEJUQAnYfHQkYUbxpO553ki9/JJ59fvWphhNXB6MJwH\n",
232 "ANBBiAIA6CBEAQB0EKIAADqYWA6wBpOr8ZL5XpHXa/JntIoPnpoQBbAGk6vxkvlekddr8me0ig+e\n",
233 "muE8AIAOQhQAQAchCgCggxAFANDBxHKAFZwJq/GAPkIUwArOhNV4QB/DeQAAHYQoAIAOQhQAQAch\n",
234 "CgCggxAFANBhxdV5tdbNSX4tyfOSPJbku5OUJLckOZbk/iTXtNaGKdcJADBXTnQn6hlJ3thae1GS\n",
235 "b0/yw0l2J7mitXZpkgeSXDndEgEA5s+Kd6JaaweTvH3cXEjy4SRbWmuL42O3Jbl5/BUA4Iyxqodt\n",
236 "1lr/R0ZDei9O8vqJrkeSnLf+ZQEAzLdVTSxvrb0iyeVJfj5PDk3bkzw6hboAAObaiiGq1vrCWutL\n",
237 "xs2PJHl6ki211gvGx65KcucU6wMAmEsnGs77yyRvrLW+PqNVef86ycEkt9dajyW5r7W2e7olAgDM\n",
238 "nxNNLP9wkq87Ttcl0ykHAGBj8LBNAIAOQhQAQIdVPeIAgNPX3gf337p46MjCUnvTWWXHDMuBDUOI\n",
239 "AjjDLR46snDD3fsuXWpft2vh4CzrgY3CcB4AQAchCgCggxAFANBBiAIA6CBEAQB0EKIAADoIUQAA\n",
240 "HYQoAIAOQhQAQAchCgCgg21fgDPS5H5x559z9r6dF1149WwrAjYaIQo4I03uF3f9roUZVwNsRIbz\n",
241 "AAA6CFEAAB2EKACADkIUAEAHIQoAoIMQBQDQQYgCAOggRAEAdBCiAAA6eGI5cMbbtnXzjjvufWjP\n",
242 "Uts2MMBqCFHAGe/A4aNbbhxvAZPYBgZYHcN5AAAdhCgAgA5CFABAByEKAKCDieUAy0yu1tt0Vtkx\n",
243 "43KAOSVEASwzuVrvul0LB2ddDzCfDOcBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGI\n",
244 "AgDoIEQBAHTwxHKAM5CtbeDkCVEAZyBb28DJM5wHANBBiAIA6CBEAQB0EKIAADqYWA5Al70P7r91\n",
245 "8dCRhaX2+eecvW/nRRdePbuK4NQSogDosnjoyMIN4xV+SXL9roUZVgOn3oohqtZ6VpJfSPKFGQ39\n",
246 "/UiSDyW5JcmxJPcnuaa1Nky5TgCAuXKiOVFfkuSB1tpLkrwqyeuS7E5yRWvt0iQPJLlyuiUCAMyf\n",
247 "Fe9Etdb+NMmfjptPT/K3SUprbXF87LYkN4+/AgCcMVa1Oq/Wel6S/5DkZ5McmOh6JMl5U6gLAGCu\n",
248 "nXBiea31M5K8Mcn3Jflgku+f6N6e5NHplAbAvJlckWfPPc50K96JqrV+VpJbk7ymtfZga+1wkq21\n",
249 "1gvGp1yV5M7plgjAvFhakXfD3fsuPfqJYcus64FZOtGdqGuTPCfJr9dak9Fdp2uT3F5rPZbkvtba\n",
250 "7umWCAAwf040sfzajELTcpdMpxwAgI3Bti8AAB2EKACADrZ9AeApbdu6eccd9z60Z6ltRR78AyEK\n",
251 "gKd04PDRLTdO7I933a6Fg7OsB+aJ4TwAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghR\n",
252 "AAAdhCgAgA6eWA6ctvY+uP/WxUNHFpLk/HPO3rfzoguvnm1FwOlEiAJOW4uHjizcMN6y5PpdCzOu\n",
253 "BjjdGM4DAOggRAEAdBCiAAA6CFEAAB1MLAdgXWzbunnHHfc+tGepbUUkpzshCoB1ceDw0S03jldD\n",
254 "JlZEcvoznAcA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQB\n",
255 "AHQQogAAOghRAAAdhCgAgA5CFABAh82zLgBgvex9cP+ti4eOLCy1N51VdsywHOA0J0QBp43FQ0cW\n",
256 "brh736VL7et2LRycZT3A6c1wHgBAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA5C\n",
257 "FABAByEKAKCDbV+AM8K2rZt33HHvQ3uW2vbVA07WCUNUrXVbkjcleXtr7eZa68VJbklyLMn9Sa5p\n",
258 "rQ3TLRPg5Bw4fHTLjfbVA9bRaobzbkrylon27iRXtNYuTfJAkiunURgAwDw7YYhqrV2T5H1JUmvd\n",
259 "muSx1triuPu2JLumVx4AwHxa68Tyc5M8OtF+JMl561cOAMDGsNaJ5Qfy5NC0PU8OVQBTtffB/bcu\n",
260 "HjqysNQ+/5yz9+286MKrZ1cRT2VyMr/fE6ejNYWo1trhWuvWWusFrbWHk1yV5M7plAbwyRYPHVm4\n",
261 "YWKC+PW7FmZYDSuZnMzv98TpaC0hamkF3rVJbq+1HktyX2tt9/qXBQAw31YVolprb0/y9vH39ye5\n",
262 "ZJpFAQDMO08sBwDoIEQBAHSw7QuwoU2uALOVC3AqCVHAhja5AsxWLsCpZDgPAKCDEAUA0EGIAgDo\n",
263 "IEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgA\n",
264 "gA6bZ10AwEr2Prj/1sVDRxaW2pvOKjtmWA7AE4QoYK4tHjqycMPd+y5dal+3a+HgLOsBWGI4DwCg\n",
265 "gxAFANBBiAIA6CBEAQB0MLEcmLnlK/DOP+fsfTsvuvDq2VXEetu2dfOOO+59aM9Se6Xf8eTnwWeB\n",
266 "eSZEATO3fAXe9bsWZlgN03Dg8NEtN67ydzz5efBZYJ4ZzgMA6CBEAQB0EKIAADoIUQAAHUwsB+CU\n",
267 "m1ytt9IKvLWs6oNTTYgC4JSbXK230gq8tazqg1PNcB4AQAchCgCggxAFANBBiAIA6GBiOQAbxmpX\n",
268 "9S1nf0amQYgCYMNY7aq+5ezPyDQYzgMA6CBEAQB0EKIAADqYEwWcEmuZ2Ds5eXjTWWXHKSkQYI2E\n",
269 "KOCUWMvE3snJw9ftWjg4/eoA1s5wHgBAByEKAKCDEAUA0MGcKGDVDhw4sDXJxROHPn7uuee+d1b1\n",
270 "AMySEMXcqLW+tLW2Z9Z1sKKFO/7sb+58919/9Owk+fov2P7+Z33ksXcurbo7/1lPe/biRx//4NLJ\n",
271 "ttZgNSZXYyarX5G5/LrJz9vkatC/P/zYtmc84xnnr2fNkAhRzJeXJtkz4xo4gfv/5mPlf//Vwa1J\n",
272 "svNzzjnyscePPbHq7rpdCwdvvHvf5y6da2sNVmNyNWay+hWZy6+b/LwtXw1qlSfT0B2iaq0/leQF\n",
273 "Gc2r+v7W2t51qwoAYM51TSyvtb4iySdaay9O8sokP7muVQEAzLne1XkvS/JbSdJaO5jkz2qtz1m3\n",
274 "qgAA5lzvcN55SR6ZaH9kfOyvTroiYK699LnnPvZZ55z90SR53qc9/WkPHzoy65IAZqIMw7Dmi2qt\n",
275 "NyV5U2vtveP2Lya5qbX2/snz7rrrrrW/OADAjFx22WVltef23om6K8k3J3lvrXVbkouXB6i1FgIA\n",
276 "sJF0zYlqrf1BktRa35HkLUl+cD2LAgCYd13DeQAAZzp75wEAdBCiAAA6CFEAAB2mtnderfUlSX43\n",
277 "yZe21j48Pva9Sb4po/D2htbam6f1/mxMtdarM1qo8OHxoe9trb1ndhUxb2w5xVrUWh9NsvR/yFtb\n",
278 "azfPsh7my/gJA29K8vbW2s211ouT3JLkWJL7k1zTWnvKyeNTCVG11s9O8m1J7k5Sxsd2JHlBa+1F\n",
279 "tdbNSe6utb6ttfb306iBDWtI8uOttd+ddSHMn8ktp2qtn5rkzUkuPcFlnNn2ttYun3URzK2bMnrK\n",
280 "wDPH7d1JrmitLdZar01yZZLbnuriqQzntdY+0Fr7tiSPZ/RHMUlemuS3x/1Hk/zXJDun8f5seD9Q\n",
281 "a31XrXX3rAth7thyirX64lrrPbXWu2qtz551McyX1to1Sd6XJLXWrUkea60tjrtvS7JrpetP6k5U\n",
282 "rfXzk/zsssMfaq1dfZzTz0vy3on20lYxnIGe6rOT5Dtba78xPufnaq0vX3ouGcSWU6zdc1trj9da\n",
283 "vzrJG5JcNeuCmFvnJnl0ov1ITpBTTipEtdb+PMlqb5M+mmT7RPvTk/zFybw/G9cqPzu/l+TLkwhR\n",
284 "LFn6f+Svx+3teXKogidprT0+/vquWuv2E53PGe1AnhyatufJoeqTnIrVeUtbv9yd5NVJUmv9lCSv\n",
285 "TGJCKE9Sa31trfUzxs2vS3LvLOth7ixtObU0IfS4W05BktRad9Zarxh///z8Q/iGT9JaO5xka631\n",
286 "gvGhq5LcudI1pyJEDUnSWnsgyR/VWv9XknuS/FRrzfbvLPd/kry51vr2JI+21vbMuB7miC2nWKP7\n",
287 "klxVa92T5Pokr5ttOcyxpfnb1ya5ffw36Hmttd9e6SLbvgAAdPCwTQCADkIUAEAHIQoAoIMQBQDQ\n",
288 "QYgCAOggRAEAdBCiAAA6CFEAAB2EKACADv8fn0xUCxJB1sMAAAAASUVORK5CYII=\n"
251 289 ],
252 290 "text/latex": [
253 291 "$\\mathcal{N}(\\mu=2, \\sigma=1),\\ N=1000$"
254 292 ],
255 293 "text/plain": [
256 "<__main__.Gaussian at 0x106e7ae10>"
294 "<__main__.Gaussian at 0x10665a4e0>"
257 295 ]
258 296 },
259 297 "execution_count": 4,
260 298 "metadata": {},
261 299 "output_type": "execute_result"
262 300 }
263 301 ],
264 302 "source": [
265 303 "x = Gaussian(2.0, 1.0)\n",
266 304 "x"
267 305 ]
268 306 },
269 307 {
270 308 "cell_type": "markdown",
271 309 "metadata": {},
272 310 "source": [
273 311 "You can also pass the object to the `display` function to display the default representation:"
274 312 ]
275 313 },
276 314 {
277 315 "cell_type": "code",
278 316 "execution_count": 5,
279 317 "metadata": {
280 318 "collapsed": false
281 319 },
282 320 "outputs": [
283 321 {
284 322 "data": {
285 323 "image/png": [
286 "iVBORw0KGgoAAAANSUhEUgAAAXIAAAENCAYAAAASUO4dAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\n",
287 "AAALEgAACxIB0t1+/AAAElNJREFUeJzt3X+wXGV9x/H3JpefITfhCr1JSyCIRH5UJbQgrVhXChas\n",
288 "DXE6onbaBoownRG0tVUSOg63vxQY+8tRoVOQuTIOSq3QQGtNiGyr1SK0IfxqTBNNB2zuhUJoLogk\n",
289 "kO0fz9ncvZu9956z9+yefXbfr5mdPefZs7tPbnY/++z3POcsSJIkSZIkSZIkSZIkSZIkSZIkSZJ6\n",
290 "1olFd6DNlgJHFt0JKYt5RXdAXe8sYAtwEyHEzym2O233DPCxojshZVEqugPqGjcD/wrc3tB+E/BV\n",
291 "4EFgHXBNm57/1wij4bOBu4Avtel5Gp0B/Drw+3VtZwGnAl/oUB+m06xvq4HTgP3AD5n8/8raLqkH\n",
292 "fQf424a204GLkuU3AVe36blfV/fYxwC76UwJ5yOED6nbmtyWJcTfTPjweQoYSNqGCR9G9wI/n1Pf\n",
293 "FgH/Xrf+HeA1GduPaaEv6nKWVgQwH7gPOA84vK69DHwjWX5X3XLeTmeynPG/wHbgZ9r0XPX+HPj7\n",
294 "aW57hvABk8YDwD8B24BfTdrGCSH+HuDbOfXtF4An6ta3EP7PsrS/vYW+qMsNzL6J+sDpwCbCV/mL\n",
295 "CKNLgCOAl5Pls4BPZHzc1wJXzHD7vxHC6h+ZHPmXCCWW7RmfK+tz1kxXXtxC+DBJ0495wD7g08BH\n",
296 "gS8n7QuAl3Ls23HA83XrzwMnA89lbFePMcgFoS59O6EU8H5CkB8G7K3b5kigWrc+H/hn4Nxk/Vbg\n",
297 "k0wNvu8T6uqz2Qc8liz/MvAQ8PA0264A/gQ4FvhZoAL8A6HGn+U5a6rTtO9OniuNMwl9fowwkj4T\n",
298 "+I8mjz3Xvi0Gfly3vhc4KtkuS7t6jKUVQXhzvwysB94B/AQh3B+o22Z+w31+DvjvZLmUrLc6iq5Z\n",
299 "DFxK2MHXzBAhsH+TUCLYlGx78zTbpzHdiPwl4NCUj/FG4BHCDsXPEer9rwe+N4d+NevbREPbEYRR\n",
300 "d9Z29RhH5FoE/ChZniDUeq8CngU+W7fdKw33uxD4erK8Eni0yWNnKSWUgLXAB4AXgBOY/KCo+WDS\n",
301 "p9oo87C6vrfynDD9iHwR6UOvfkB0C+ED7Qngr3Lu2w7Ct5Ca1xBG/s+nbD8maZfUI44izET5babO\n",
302 "ZDgT+D8OroePMvVr+YPATyfLHweuBFbNoT8fItSklxC+DbwtaT+ZyaC8kTAtEEJd/1NzeL6aS2k+\n",
303 "a+Uq4Bfr1uv7Ue8QwjeEejcT6v55920BUz8wtxC+PWVtV49p/Lqs/lEGvkUoCdxb174LeAOwmamj\n",
304 "tyFCMPyAUJ9eRxjxLSSURBYBOwl14KzOJdTnrwR+D7ic8OEwQZjbvr3u8k7CTr8zCDX5/S08X81V\n",
305 "hNLMm5J/w2Ymd+5eCfw1k99E6vtRcxZh1H08oQw1kbR/n1DG+FbOfXshuawi/P/dSxjF78vYrj61\n",
306 "GPgK8J+Er4xvJryxNxKmXG1ItlFchjNsu5iwkxFCwPxp/t1p6lDgrR16rprDCTsti+6HlKtR4LeS\n",
307 "5QHC6OtGJuf+XgNcX0C/1Fm/QyjDfJrOzPMGeC+d/+Z4KWFnZdH9kHKziOZfl7cyOaJbkqyrt5WY\n",
308 "eWddL1gGXFx0J6S8nUGo/91GqJn+DaFWurtum1LDuiSpQ9LMIx8gzGT4XHL9ImGaWL0q00/jkiS1\n",
309 "UZp55E8llweT9a8QZiyMEUoqY4RDqp9uvONJJ51U3bFjRz49laT+sYP05/pJNSIfA55k8nDl84HH\n",
310 "gXuANUnbGuDug3qyYwfVatVLDpfrrruu8D700sW/p3/Pbr4AJ6UNcUh/ZOfVwBcJU7B2AJcR9uDf\n",
311 "SZjzuxO4JMsTS5LykTbItxAOfmh0fo59kSS1wJNmRaJcLhfdhZ7i3zNf/j2L1e6feqsm9R5JUkql\n",
312 "Ugky5LMjckmKnEEuSZEzyCUpcga5JEXOIJekyBnkUocMDg5RKpUYHBwquivqMU4/lDokTCmrAiV8\n",
313 "X2gmTj+UpD5jkEsdN0CpVLLMotxYWpE6pL60Mnn6fsssOpilFUnqMwa5JEXOIJe6iFMU1Qpr5FKH\n",
314 "pKmRO0VRYI1ckvqOQS5JkTPIJSlyBrkkRc4gl6TIGeSSFDmDXGoT54SrU5xHLrVJ45xw55ErLeeR\n",
315 "S1KfMcglKXIGuSRFziCXpMgNpNxuJ7AHeBXYB5wNDAFfBk5Ibr8EeD73HkqSZpR2RF4FysBKQogD\n",
316 "rAU2AiuATcm6JKnDspRWGqfCrAJGk+VRYHUuPZIkZZJlRH4f8BBwRdI2DIwny+PJuiSpw9LWyN8C\n",
317 "7AKOJZRTtjbcXmXyCAdJUgelDfJdyfUzwF2EOvk4sAQYA5YCTze748jIyIHlcrlMuVxuradSTxqg\n",
318 "VCqxcOHR7NnzXNGdUUEqlQqVSqXl+6c5BPRIYD4wASwANgB/CJwPPAvcQNjRuZiDd3h6iL76VtpD\n",
319 "9KfbxvdO/8p6iH6aEfkwYRRe2/6LhDB/CLgTuJzJ6YeSpA7zpFlSmzgiV6s8aZYk9RmDXJIiZ5BL\n",
320 "UuQMcqmL+StDSsOdnVKb5LGz052f/cmdnZLUZwxySYqcQS5JkTPIJSlyBrkkRc4gl6TIGeSSFDmD\n",
321 "XJIiZ5BLUuQMcmmO2nMY/UDt6D5pVh6iL83RdIfRz/UQ/cZr30v9w0P0JanPGOSSFDmDXJIiZ5BL\n",
322 "UuQMckmKnEEuSZEzyCUpcga5JEXOIJekyBnkkhQ5g1ySImeQS1LkDHJJilzaIJ8PbAbuSdaHgI3A\n",
323 "NmADsDj/rkm9wlPSqr3SBvmHgSeYPPfmWkKQrwA2JeuSmnqFybeOlL80QX4c8E7gFibPj7sKGE2W\n",
324 "R4HV+XdNkpRGmiD/C+CjwP66tmFgPFkeT9YlSQUYmOX2dwFPE+rj5Wm2qTLD98aRkZEDy+VymXJ5\n",
325 "uoeRpP5UqVSoVCot33+2PTCfAH6DUOQ7HBgEvgqcRQj2MWApcD9wSpP7+1Nv6nlpfuqt+TX4U29q\n",
326 "Ju+fersWWAacCLwP+AYh2NcDa5Jt1gB3Z+2oJCkfWeeR14YE1wMXEKYfnpesS5IK0O7JrZZW1POK\n",
327 "KK0MDg4xMbEbgIULj2bPnufa+C9Up2UtrRjk0hwVEeST23HQbYpf3jVySVKXm236oaSOmO0w/trt\n",
328 "hwD7OtQnxcIgl7pC7TD+6cK8/vaZtlM/srQiSZEzyCUpcga5JEXOIJekyBnkkhQ5g1ySImeQS1Lk\n",
329 "DHJJipxBLkmRM8glKXIGuSRFziCXpMgZ5JIUOYNckiJnkEtS5AxySYqcQS5JkTPIpdyEn2MbHBwq\n",
330 "uiPqM/7Um5Sb8HNsExP+DJs6yxG5JEXOIJekyBnkUvSszfc7a+RS9KzN9ztH5JIUudmC/HDgAeBh\n",
331 "4Angk0n7ELAR2AZsABa3q4OSpJnNFuQ/Bt4OnAG8MVk+F1hLCPIVwKZkXZJUgDSllR8l14cC84Hd\n",
332 "wCpgNGkfBVbn3zVJUhppgnweobQyDtwPPA4MJ+sk18Nt6Z0kaVZpZq3sJ5RWFgFfJ5RX6lWTS1Mj\n",
333 "IyMHlsvlMuVyOWsfpcINDg4xMbGbhQuPZs+e54rujnpMpVKhUqm0fP+s85U+DrwEfAAoA2PAUsJI\n",
334 "/ZQm21er1WkzXopGqVQijFdKNL6m62+r36ZZ+9RrZrgt7fXUx/D91hvCayd9Ps9WWjmGyRkpRwAX\n",
335 "AJuB9cCapH0NcHemXkqScjNbaWUpYWfmvORyO2GWymbgTuByYCdwSfu6KEmaSbsPBbO0op7QrLRS\n",
336 "q5sH3VBaOQR4xTp+D8haWjHIpRSaBflMQV1UjdxaeW/Iu0YuSepyBrkkRc4gl6TIGeSSFDmDXJIi\n",
337 "Z5BLuRuozTqQOsIgl3IXfrFH6hSDXJIiZ5BLUuQMckmKnEEuSZEzyCUpcga5JEXOIJekyBnkkhQ5\n",
338 "g1ySImeQS1LkDHJJipxBLkmRM8glKXIDRXdAiounqFX3cUQuZVI7Ra2nqVX3MMglKXIGuSRFziCX\n",
339 "ZjA4OGRNXF3PIJdmMDGxG+vh6nYGuSRFLk2QLwPuBx4HHgM+lLQPARuBbcAGYHE7OihJmlmaIN8H\n",
340 "/C5wOnAO8EHgVGAtIchXAJuSdUldolbfHxwcKrorarNW9uLcDXwmubwNGAeWABXglIZtq9Wq9UXF\n",
341 "K+zorBLeKvXXNGnLet2+x6hWq1P67vswLskO9tT5nLVGvhxYCTwADBNCnOR6OONjSZJykOUQ/aOA\n",
342 "vwM+DEw03DbtoW4jIyMHlsvlMuVyOVMHJanXVSoVKpVKy/dPO3Q/BLgX+Brwl0nbVqAMjAFLCTtE\n",
343 "La2op1haURHaUVopAbcCTzAZ4gDrgTXJ8hpC7VyS1GFpEv9c4F+AR5gcAqwDvgvcCRwP7AQuAZ5v\n",
344 "uK8jckXNEbmKkHVE3u5jjw1yRc0gVxHaPWtFktRlDHJJipxBLkmRM8ilJjx9rWJikEtNePpaxcQg\n",
345 "l6TIGeSSFDmDXKpjbVwxMsilOtbGFSODXJIiZ5BLPWfA8lCfMcilnvMKlof6i0EuSZEzyCUpcga5\n",
346 "JEXOIJekyBnkkhQ5g1ySImeQS1LkDHJJipxBLkmRM8ilPlM7w+Pg4FDRXVFOBorugKTOqp3hcWLC\n",
347 "87H0CkfkkhQ5g1ySImeQS1LkDHJJipxBLkmRSxPknwfGgUfr2oaAjcA2YAOwOP+uSZLSSBPktwEX\n",
348 "NrStJQT5CmBTsi4pKuEn4ZxTHr80Qf5NYHdD2ypgNFkeBVbn2SlJnVD7SbhqMrdcsWq1Rj5MKLeQ\n",
349 "XA/n0x1JUlZ57Oys4i+9SlJhWj1EfxxYAowBS4Gnp9twZGTkwHK5XKZcLrf4lJJaE2rhCxcezZ49\n",
350 "zxXdGTVRqVSoVCot3z/tyRaWA/cAb0jWbwSeBW4g7OhcTPMdntVq1cG64lEqlQhfMGe7JsU23fcY\n",
351 "1Wq1yb+RA7epO4T/o9T5nKq0cgfwbeD1wJPAZcD1wAWE6YfnJeuSpAK0+/RnjsjVlQYHh5iY2H1Q\n",
352 "ucERubpB1hG5p7FVX/JUruolHqIvSZEzyCUpcga5+kbtJ86S+mMfGujjf3tvM8jVN2p18f49fq12\n",
353 "SL56jUEuSZEzyCUpcga5el6tNq6ZDHg624g5j1w9b7I2bphPL9TPnVcfJ0fkkhQ5g1x9zpKC4mdp\n",
354 "RX3OkoLi54hckiJnkEtS5AxySYqcQS5JkTPIJSlyBrkkRc4glwBP8aqYGeQS4CleFTODXJIiZ5BL\n",
355 "UuQMckmKnEEuSZHzpFmKyq5du3jxxRc57LDDWLZsWdHdkbqCI3JFY//+/Rx//AmsXHkhy5efyNjY\n",
356 "2JTba78E5Clp5yJMwyyVDm167d+2OzkiVzSq1SqvvvoqL7ywnQULjmfv3r1Tbq/9EpCnpJ2L2jTM\n",
357 "UtNr/7bdyRG5JEVurkF+IbAV+C/gmrl3R5KU1VyCfD7wGUKYnwa8Hzg1j07pYJVKpeguRGRqnVd5\n",
358 "mvrTeLX9Es3arKd3zlyC/GxgO7AT2Ad8Cbg4hz6pCYM8i1qddx8edp+32k/j7QYm90vAdQe11dbV\n",
359 "fnMJ8p8CnqxbfyppkyR10FyC3KGOClBlcPBXePnlZ5g3z331EoQ5Ra06Bxgh1MgB1gH7gRvqttkO\n",
360 "nDSH55CkfrQDeF0nnmggebLlwKHAw7izU5KicxHwPcLIe13BfZEkSZIE8B7gceBV4MyG29YRDh7a\n",
361 "Cryjw/3qBSOE2UGbk8uFM26t6XggW752Ao8QXpPfLbYr0fk8MA48Wtc2BGwEtgEbgMUF9ItTgBXA\n",
362 "/UwN8tMIdfRDCHX17XiKgKyuAz5SdCciN5/w2ltOeC26b2fufkAIH2X3VmAlU4P8RuBjyfI1wPWz\n",
363 "PUg7gnQr4ZOk0cXAHYSjNHYS3kxnt+H5e52HKs6NB7K1h6/L1nwTaDxyahUwmiyPAqtne5BOjoh/\n",
364 "klAWqPEAotZcDWwBbqWgr1yR80C2/FWB+4CHgCsK7ksvGCaUW0iuh2e7Q6unsd0ILGnSfi1wT4bH\n",
365 "8aCig033t/0D4Cbgj5L1Pwb+DLi8Q/3qFb7m8vcWYBdwLOH1u5Uw0tTcVUnxmm01yC9o4T4/BOp/\n",
366 "0uW4pE1Tpf3b3kK2D00Fja/DZUz9pqjsdiXXzwB3EcpXBnnrxgmDuTFgKfD0bHdod2mlvm62Hngf\n",
367 "4eChE4GTcQ93Vkvrlt/N1B0kSuchwmtvOeG1+F7Ca1OtORJYmCwvIMxG83U5N+uBNcnyGuDuIjrx\n",
368 "bkIN8iXCJ8rX6m67lrCjaSvwS53vWvS+QJjmtYXwnztr7UxNeSBbfk4kzPx5GHgM/55Z3QH8D7CX\n",
369 "kJuXEWYA3UfB0w8lSZIkSZIkSZIkSZIkSZIkSZIktcn/A4eK9UXawRDUAAAAAElFTkSuQmCC\n"
324 "iVBORw0KGgoAAAANSUhEUgAAAlEAAAGLCAYAAADnMccKAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\n",
325 "AAALEgAACxIB0t1+/AAAGsJJREFUeJzt3X2QndddH/DvsUQs5cXIRoCNA9mGGIR5Dy9KiBMnMmnq\n",
326 "BAbamjOdYIOBafEMGd4MocEGUrAbG1Sgw7sLwWAI5bhT6tC0abCN4rQlSjEhmVAbG1yRRHgTYgsp\n",
327 "xEKOlKd/3LvmeiOvdo/26t6VPp9/ds9znufe32rvaL/znHOeU4ZhCAAAa3PWrAsAANiIhCgAgA5C\n",
328 "FABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghRsIGVUraMv5ZSyq5Z1zMPSinnllK+atZ1AKc/\n",
329 "IQo2oFLKV5ZS3pPkQClla5IfTPIXp+i9P7eUclMp5d+XUv6glPIVp+J9n6KWraWUXy6lvHjp2DAM\n",
330 "B5K8opTyvFnVtRrHq32i77NLKb9SSvmuUsqvllIWTrYPWH9CFMypUsofl1JecZzjm5Jcn+Tnkrwo\n",
331 "yRcleWwYhvefgprOSnJtktcNw/A9SX4zydtKKdun/d7HqeU7k7w+yRVJyrLun0zyE6e6ptU6Qe1J\n",
332 "cluS24Zh+IUkv5rkd9ahD1hnQhTMoXEo+fKM/sgu97IkvzgMw68Ow/AnSb4/ya+fotIuSvI1ST5r\n",
333 "3P6dJM9I8o2n6P2fMAzDrwzD8ENJPnqcvseT3F9KedFaX7eUcnYp5UdKKftLKfeVUspE36tLKfeX\n",
334 "Un6/lPJPp1F7KeXzknzpMAz/c3zuO5N8finlczr7ntNbJ7AyIQrm08VJfiPJPy+lPG1Z38uS/GGS\n",
335 "lFLOS/IpwzB87BTV9XdJnp3kgiQZhuHo+Ni5p+j91+ItSV691ouGYTiS0Z2s25JcmImAOAzDm5L8\n",
336 "xjAMXz8Mw++tV6HLfEmSDyw79sGM7jr29H3NFGoEIkTBvPqKJD+S5ONJXrms7+xhGD4+/v5lSd59\n",
337 "qooahmH/MAzbh2H442Q0ByfJeUn+6FTVsAbvSfLCzmtfnOSOjIbEfnBZ3ydOpqhV+Iwkh5cdeyzJ\n",
338 "+Uk+vaPvM6dQI5Bk86wLAI7r3GEY9pdS3pTkqiT/JUlKKV+Q5P9OnPeFSf58+cWllG9J8vnDMFw3\n",
339 "bv/LJOcPw/ATE+dsS/LTOf6cnEk/MwzDe5+i77uSvGVpCOl4SinfkeS7M7p7tX1c7+NJXj4Mw4fX\n",
340 "sZYnGYbh4+PJ25uGYTi2mmsmfFWSmzK6k/OXpZQXD8PwjlLKjiz7955C7edm9O8z6fEkz0qytbMP\n",
341 "mAIhCubM+LEFS38MfzPJO0spnzkMw4eS/OMkbeL07UnedZyX+Wfja5d8U5KfnzxhGIa/TfLtJ1Hn\n",
342 "FyV5RZLLVjjnRzO6Q/L8jELGHyV5zTAMe9ezlhUsDTV+ZI3XbRqGYUjygVLK7yR5bZJ3ZHTn77cn\n",
343 "T5xC7Z80TyrJ05M8muMHtdX0AVNgOA/mz2VJ7kmSYRjeneT+JNeM+549DMPDE+c+LcnRyYvHq/cu\n",
344 "SXLXuL0lyQsynke1Hkopz8roTs0rh2E47h/p8V2zK5N8zzAMx8bzp/YlOZUTnR/PGv+fK6V8ZpLF\n",
345 "iUM/leTyUsrFGd0hPLSO9R3Pw0meuezYM8Y1LXb0fWgKNQJxJwrm0aXDMLx2ov2LSf5tKeWX8snD\n",
346 "NY8k2bbs2FckeWgYhoPj9ouTvC/Jx0op5y2FnlLKuUn+XfqGoW7K6I7Sw+PVa/9iGIbly+lfleRt\n",
347 "wzB8Yvx+mzMaJvu+5W9wkrWs5FMz+jdai8uSvG2pMQzD+0opb83osRL3Lj95CrW/M6PJ+0uvvzmj\n",
348 "4Pm+JB/r7AOmQIiCOVBKOSej0PFQkr9e1v3GJD+U5Pcy+mM96QMZTUSe9LXj11ny6ozubO0av/aj\n",
349 "yRMPpVzzMFQp5bUZzRXaMZ4j9DkZ3T1JKeUrk5wzDMPdSf4m41V8Y9+V5JeHYfjg8tfsrWWyrKc4\n",
350 "PkzOh1pW31N57ngV3qSfTLIno2dzLX+Dda19GIYPlFL+Xyll53jY8+VJ/mQYhvvHP0NXH7D+hCiY\n",
351 "Dy/MaK7Ngxk9H+oJ4wnS35Nkd8ZDdBPuSfIDy45dluRYKeXqJJ+S5O7xsc8bhuHOkylyPER3Y5JN\n",
352 "kyVmNME9Sb45o3lDX5bRIwLeMJ7U/swkHxmG4baTef9ltXxrksuTfHaSnymlvCPJDyytXBw/rfvP\n",
353 "ll326ozC5Jcd5/Wen9Gw6TeUUs4ahuHHn/gBh+GeUsp/T7J3+XXTqD3JtyS5vpTygozuLH7zxOW9\n",
354 "fcA6K6O5k8CsjR+W+KGJYbjVXnfnMAxfO/5+S5L9Ga3E+/jKV05HKeU7hmH4tVm897I6viXJJ4Zh\n",
355 "+K1lx+eiPmDjW9WdqFrr1yX5vNbaT9daL05yS5JjGU94ba1JYnCShmF4oPPSVkp5+TAMf5DRhPI/\n",
356 "nVWAGvvUGb73pMszejzEcvNSH7DBnXDVSq31mUle2Fr76fGh3UmuaK1dmuSBjFbfALPzxiTfON7X\n",
357 "7oszfqbULJRSXpXkpIYM16mOf5LkzeMVgZPH56I+4PSwmjtRNyS5qNb6n5L8WJLHWmtLy39vS3Lz\n",
358 "+CswA8MwHC2l3JDkW4dh+JkZ1/KWWb5/8sRquX80DMMvLe+bh/qA08eKd6JqrRcl2dRae1WS12T0\n",
359 "sL7J5cKPZLTlAzBDwzA8PAzDqdqEeK4Nw3DgeAEKYL2d6E7U5Un+c5K01hZrrR9J8mkT/duzwtNw\n",
360 "77rrLnOlAIAN47LLLjvRM9+ecKIQ9UhGy4H/sNb6rIw2uTxYa72gtfZwRpM2V5xfsJZiOLPVWl/f\n",
361 "Wnv9rOtg/vmssBY+L6zWWm/+nChE/cckv1RrvWfcfl1Ge1DdXms9luS+1trutZcJALCxrRiiWmvH\n",
362 "kvyr43RdMp1yAAA2BhsQAwB0EKIAADoIUcyTPbMugA1jz6wLYEPZM+sCOD1Nde+8u+66a7A6DwDY\n",
363 "CNaaW9yJAgDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAA\n",
364 "OghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA6bZ10AwOli\n",
365 "74P7b108dGRhqX3+OWfv23nRhVfPriJgmoQogHWyeOjIwg1377t0qX39roUZVgNMm+E8AIAOQhQA\n",
366 "QAchCgCggxAFANBBiAIA6CBEAQB0EKIAADoIUQAAHYQoAIAOnlgOMGO2i4GNSYgCmDHbxcDGZDgP\n",
367 "AKCDEAUA0EGIAgDoIEQBAHQwsRxgzmzbunnHHfc+tCexUg/mmRAFMGcOHD665cbxaj0r9WB+Gc4D\n",
368 "AOggRAEAdBCiAAA6CFEAAB1MLAeYgcn98jadVXbMuBygwwlDVK310STvGTffmuT3k9yS5FiS+5Nc\n",
369 "01obplYhwGlocr+863YtHJx1PcDareZO1N7W2uVLjVrrf0tyRWttsdZ6bZIrk9w2rQIBAObRakLU\n",
370 "F9da70ny8STfnuSx1triuO+2JDdHiAIAzjCrmVj+3NbaS5K8LsmtSR6Z6HskyXlTqAsAYK6dMES1\n",
371 "1h4ff31XkseTfNpE9/Ykj06nNACA+bViiKq17qy1XjH+/vlJ9ifZUmu9YHzKVUnunG6JAADz50Rz\n",
372 "ou5L8sO11tdkdMfpmoyG726vtR5Lcl9rbfeUawQAmDsrhqjW2qEk37Ds8IeTXDK1igAANgBPLAcA\n",
373 "6CBEAQB0sO0LwJRs27p5xx33PrQnSc4/5+x9Oy+68OrZVgSsJyEKYEoOHD665cbx1i7X71qYcTXA\n",
374 "ejOcBwDQQYgCAOggRAEAdBCiAAA6mFgOcApMrtRLkk1nlR0zLAdYB0IUwCkwuVIvSa7btXBwlvUA\n",
375 "J89wHgBAByEKAKCDEAUA0EGIAgDoYGI5wBxbvqrPHnwwP4QogDm2fFWfPfhgfhjOAwDoIEQBAHQQ\n",
376 "ogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDo4InlABvU3gf337p46MjCUtuWMHBqCVEA\n",
377 "G9TioSMLN9gSBmbGcB4AQAchCgCggxAFANBBiAIA6GBiOcAGsm3r5h133PvQniTZdFbZMeNy4Iwm\n",
378 "RAFsIAcOH91y43hF3nW7Fg7Ouh44kxnOAwDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCD\n",
379 "EAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDosHk1J9Van5Pk\n",
380 "niTflOTvktyS5FiS+5Nc01obplYhAMAcOuGdqFrrWUlel+RNSUqS3UmuaK1dmuSBJFdOtUIAgDm0\n",
381 "muG8a5P8SpK/H5//WGttcdx3W5JdU6oNAGBurRiiaq1fnaS01t49cf6jE6c8kuS8KdUGADC3TjQn\n",
382 "aleSr6m1vjDJjiSvSvL+if7teXKoAgA4I6wYolprNy19X2v9sSRvTfKjtdYLWmsPJ7kqyZ3TLREA\n",
383 "YP6sanXeMtcmub3WeizJfa213etcEwDA3Ft1iGqt/ZuJ5iVTqAUAYMPwsE0AgA5CFABAByEKAKCD\n",
384 "EAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDosHnWBQAwHXsf\n",
385 "3H/r4qEjC0ly/jln79t50YVXz7YiOL0IUQCnqcVDRxZuuHvfpUly/a6FGVcDpx/DeQAAHYQoAIAO\n",
386 "QhQAQAchCgCggxAFANBBiAIA6CBEAQB0EKIAADoIUQAAHYQoAIAOtn0BOE1s27p5xx33PrRnqb3p\n",
387 "rLJjhuXAaU+IAjhNHDh8dMuN473ykuS6XQsHZ1kPnO4M5wEAdBCiAAA6CFEAAB3MiQI4CXsf3H/r\n",
388 "4qEjC8l8T+RePun8/HPO3rfzoguvnl1FsPEJUQAnYfHQkYUbxpO553ki9/JJ59fvWphhNXB6MJwH\n",
389 "ANBBiAIA6CBEAQB0EKIAADqYWA6wBpOr8ZL5XpHXa/JntIoPnpoQBbAGk6vxkvlekddr8me0ig+e\n",
390 "muE8AIAOQhQAQAchCgCggxAFANDBxHKAFZwJq/GAPkIUwArOhNV4QB/DeQAAHYQoAIAOQhQAQAch\n",
391 "CgCggxAFANBhxdV5tdbNSX4tyfOSPJbku5OUJLckOZbk/iTXtNaGKdcJADBXTnQn6hlJ3thae1GS\n",
392 "b0/yw0l2J7mitXZpkgeSXDndEgEA5s+Kd6JaaweTvH3cXEjy4SRbWmuL42O3Jbl5/BUA4Iyxqodt\n",
393 "1lr/R0ZDei9O8vqJrkeSnLf+ZQEAzLdVTSxvrb0iyeVJfj5PDk3bkzw6hboAAObaiiGq1vrCWutL\n",
394 "xs2PJHl6ki211gvGx65KcucU6wMAmEsnGs77yyRvrLW+PqNVef86ycEkt9dajyW5r7W2e7olAgDM\n",
395 "nxNNLP9wkq87Ttcl0ykHAGBj8LBNAIAOQhQAQIdVPeIAgNPX3gf337p46MjCUnvTWWXHDMuBDUOI\n",
396 "AjjDLR46snDD3fsuXWpft2vh4CzrgY3CcB4AQAchCgCggxAFANBBiAIA6CBEAQB0EKIAADoIUQAA\n",
397 "HYQoAIAOQhQAQAchCgCgg21fgDPS5H5x559z9r6dF1149WwrAjYaIQo4I03uF3f9roUZVwNsRIbz\n",
398 "AAA6CFEAAB2EKACADkIUAEAHIQoAoIMQBQDQQYgCAOggRAEAdBCiAAA6eGI5cMbbtnXzjjvufWjP\n",
399 "Uts2MMBqCFHAGe/A4aNbbhxvAZPYBgZYHcN5AAAdhCgAgA5CFABAByEKAKCDieUAy0yu1tt0Vtkx\n",
400 "43KAOSVEASwzuVrvul0LB2ddDzCfDOcBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGI\n",
401 "AgDoIEQBAHTwxHKAM5CtbeDkCVEAZyBb28DJM5wHANBBiAIA6CBEAQB0EKIAADqYWA5Al70P7r91\n",
402 "8dCRhaX2+eecvW/nRRdePbuK4NQSogDosnjoyMIN4xV+SXL9roUZVgOn3oohqtZ6VpJfSPKFGQ39\n",
403 "/UiSDyW5JcmxJPcnuaa1Nky5TgCAuXKiOVFfkuSB1tpLkrwqyeuS7E5yRWvt0iQPJLlyuiUCAMyf\n",
404 "Fe9Etdb+NMmfjptPT/K3SUprbXF87LYkN4+/AgCcMVa1Oq/Wel6S/5DkZ5McmOh6JMl5U6gLAGCu\n",
405 "nXBiea31M5K8Mcn3Jflgku+f6N6e5NHplAbAvJlckWfPPc50K96JqrV+VpJbk7ymtfZga+1wkq21\n",
406 "1gvGp1yV5M7plgjAvFhakXfD3fsuPfqJYcus64FZOtGdqGuTPCfJr9dak9Fdp2uT3F5rPZbkvtba\n",
407 "7umWCAAwf040sfzajELTcpdMpxwAgI3Bti8AAB2EKACADrZ9AeApbdu6eccd9z60Z6ltRR78AyEK\n",
408 "gKd04PDRLTdO7I933a6Fg7OsB+aJ4TwAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghR\n",
409 "AAAdhCgAgA6eWA6ctvY+uP/WxUNHFpLk/HPO3rfzoguvnm1FwOlEiAJOW4uHjizcMN6y5PpdCzOu\n",
410 "BjjdGM4DAOggRAEAdBCiAAA6CFEAAB1MLAdgXWzbunnHHfc+tGepbUUkpzshCoB1ceDw0S03jldD\n",
411 "JlZEcvoznAcA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQB\n",
412 "AHQQogAAOghRAAAdhCgAgA5CFABAh82zLgBgvex9cP+ti4eOLCy1N51VdsywHOA0J0QBp43FQ0cW\n",
413 "brh736VL7et2LRycZT3A6c1wHgBAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA5C\n",
414 "FABAByEKAKCDbV+AM8K2rZt33HHvQ3uW2vbVA07WCUNUrXVbkjcleXtr7eZa68VJbklyLMn9Sa5p\n",
415 "rQ3TLRPg5Bw4fHTLjfbVA9bRaobzbkrylon27iRXtNYuTfJAkiunURgAwDw7YYhqrV2T5H1JUmvd\n",
416 "muSx1triuPu2JLumVx4AwHxa68Tyc5M8OtF+JMl561cOAMDGsNaJ5Qfy5NC0PU8OVQBTtffB/bcu\n",
417 "HjqysNQ+/5yz9+286MKrZ1cRT2VyMr/fE6ejNYWo1trhWuvWWusFrbWHk1yV5M7plAbwyRYPHVm4\n",
418 "YWKC+PW7FmZYDSuZnMzv98TpaC0hamkF3rVJbq+1HktyX2tt9/qXBQAw31YVolprb0/y9vH39ye5\n",
419 "ZJpFAQDMO08sBwDoIEQBAHSw7QuwoU2uALOVC3AqCVHAhja5AsxWLsCpZDgPAKCDEAUA0EGIAgDo\n",
420 "IEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgA\n",
421 "gA6bZ10AwEr2Prj/1sVDRxaW2pvOKjtmWA7AE4QoYK4tHjqycMPd+y5dal+3a+HgLOsBWGI4DwCg\n",
422 "gxAFANBBiAIA6CBEAQB0MLEcmLnlK/DOP+fsfTsvuvDq2VXEetu2dfOOO+59aM9Se6Xf8eTnwWeB\n",
423 "eSZEATO3fAXe9bsWZlgN03Dg8NEtN67ydzz5efBZYJ4ZzgMA6CBEAQB0EKIAADoIUQAAHUwsB+CU\n",
424 "m1ytt9IKvLWs6oNTTYgC4JSbXK230gq8tazqg1PNcB4AQAchCgCggxAFANBBiAIA6GBiOQAbxmpX\n",
425 "9S1nf0amQYgCYMNY7aq+5ezPyDQYzgMA6CBEAQB0EKIAADqYEwWcEmuZ2Ds5eXjTWWXHKSkQYI2E\n",
426 "KOCUWMvE3snJw9ftWjg4/eoA1s5wHgBAByEKAKCDEAUA0MGcKGDVDhw4sDXJxROHPn7uuee+d1b1\n",
427 "AMySEMXcqLW+tLW2Z9Z1sKKFO/7sb+58919/9Owk+fov2P7+Z33ksXcurbo7/1lPe/biRx//4NLJ\n",
428 "ttZgNSZXYyarX5G5/LrJz9vkatC/P/zYtmc84xnnr2fNkAhRzJeXJtkz4xo4gfv/5mPlf//Vwa1J\n",
429 "svNzzjnyscePPbHq7rpdCwdvvHvf5y6da2sNVmNyNWay+hWZy6+b/LwtXw1qlSfT0B2iaq0/leQF\n",
430 "Gc2r+v7W2t51qwoAYM51TSyvtb4iySdaay9O8sokP7muVQEAzLne1XkvS/JbSdJaO5jkz2qtz1m3\n",
431 "qgAA5lzvcN55SR6ZaH9kfOyvTroiYK699LnnPvZZ55z90SR53qc9/WkPHzoy65IAZqIMw7Dmi2qt\n",
432 "NyV5U2vtveP2Lya5qbX2/snz7rrrrrW/OADAjFx22WVltef23om6K8k3J3lvrXVbkouXB6i1FgIA\n",
433 "sJF0zYlqrf1BktRa35HkLUl+cD2LAgCYd13DeQAAZzp75wEAdBCiAAA6CFEAAB2mtnderfUlSX43\n",
434 "yZe21j48Pva9Sb4po/D2htbam6f1/mxMtdarM1qo8OHxoe9trb1ndhUxb2w5xVrUWh9NsvR/yFtb\n",
435 "azfPsh7my/gJA29K8vbW2s211ouT3JLkWJL7k1zTWnvKyeNTCVG11s9O8m1J7k5Sxsd2JHlBa+1F\n",
436 "tdbNSe6utb6ttfb306iBDWtI8uOttd+ddSHMn8ktp2qtn5rkzUkuPcFlnNn2ttYun3URzK2bMnrK\n",
437 "wDPH7d1JrmitLdZar01yZZLbnuriqQzntdY+0Fr7tiSPZ/RHMUlemuS3x/1Hk/zXJDun8f5seD9Q\n",
438 "a31XrXX3rAth7thyirX64lrrPbXWu2qtz551McyX1to1Sd6XJLXWrUkea60tjrtvS7JrpetP6k5U\n",
439 "rfXzk/zsssMfaq1dfZzTz0vy3on20lYxnIGe6rOT5Dtba78xPufnaq0vX3ouGcSWU6zdc1trj9da\n",
440 "vzrJG5JcNeuCmFvnJnl0ov1ITpBTTipEtdb+PMlqb5M+mmT7RPvTk/zFybw/G9cqPzu/l+TLkwhR\n",
441 "LFn6f+Svx+3teXKogidprT0+/vquWuv2E53PGe1AnhyatufJoeqTnIrVeUtbv9yd5NVJUmv9lCSv\n",
442 "TGJCKE9Sa31trfUzxs2vS3LvLOth7ixtObU0IfS4W05BktRad9Zarxh///z8Q/iGT9JaO5xka631\n",
443 "gvGhq5LcudI1pyJEDUnSWnsgyR/VWv9XknuS/FRrzfbvLPd/kry51vr2JI+21vbMuB7miC2nWKP7\n",
444 "klxVa92T5Pokr5ttOcyxpfnb1ya5ffw36Hmttd9e6SLbvgAAdPCwTQCADkIUAEAHIQoAoIMQBQDQ\n",
445 "QYgCAOggRAEAdBCiAAA6CFEAAB2EKACADv8fn0xUCxJB1sMAAAAASUVORK5CYII=\n"
370 446 ],
371 447 "text/latex": [
372 448 "$\\mathcal{N}(\\mu=2, \\sigma=1),\\ N=1000$"
373 449 ],
374 450 "text/plain": [
375 "<__main__.Gaussian at 0x106e7ae10>"
451 "<__main__.Gaussian at 0x10665a4e0>"
376 452 ]
377 453 },
378 454 "metadata": {},
379 455 "output_type": "display_data"
380 456 }
381 457 ],
382 458 "source": [
383 459 "display(x)"
384 460 ]
385 461 },
386 462 {
387 463 "cell_type": "markdown",
388 464 "metadata": {},
389 465 "source": [
390 466 "Use `display_png` to view the PNG representation:"
391 467 ]
392 468 },
393 469 {
394 470 "cell_type": "code",
395 471 "execution_count": 6,
396 472 "metadata": {
397 473 "collapsed": false
398 474 },
399 475 "outputs": [
400 476 {
401 477 "data": {
402 478 "image/png": [
403 "iVBORw0KGgoAAAANSUhEUgAAAXIAAAENCAYAAAASUO4dAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\n",
404 "AAALEgAACxIB0t1+/AAAElNJREFUeJzt3X+wXGV9x/H3JpefITfhCr1JSyCIRH5UJbQgrVhXChas\n",
405 "DXE6onbaBoownRG0tVUSOg63vxQY+8tRoVOQuTIOSq3QQGtNiGyr1SK0IfxqTBNNB2zuhUJoLogk\n",
406 "kO0fz9ncvZu9956z9+yefXbfr5mdPefZs7tPbnY/++z3POcsSJIkSZIkSZIkSZIkSZIkSZIkSZJ6\n",
407 "1olFd6DNlgJHFt0JKYt5RXdAXe8sYAtwEyHEzym2O233DPCxojshZVEqugPqGjcD/wrc3tB+E/BV\n",
408 "4EFgHXBNm57/1wij4bOBu4Avtel5Gp0B/Drw+3VtZwGnAl/oUB+m06xvq4HTgP3AD5n8/8raLqkH\n",
409 "fQf424a204GLkuU3AVe36blfV/fYxwC76UwJ5yOED6nbmtyWJcTfTPjweQoYSNqGCR9G9wI/n1Pf\n",
410 "FgH/Xrf+HeA1GduPaaEv6nKWVgQwH7gPOA84vK69DHwjWX5X3XLeTmeynPG/wHbgZ9r0XPX+HPj7\n",
411 "aW57hvABk8YDwD8B24BfTdrGCSH+HuDbOfXtF4An6ta3EP7PsrS/vYW+qMsNzL6J+sDpwCbCV/mL\n",
412 "CKNLgCOAl5Pls4BPZHzc1wJXzHD7vxHC6h+ZHPmXCCWW7RmfK+tz1kxXXtxC+DBJ0495wD7g08BH\n",
413 "gS8n7QuAl3Ls23HA83XrzwMnA89lbFePMcgFoS59O6EU8H5CkB8G7K3b5kigWrc+H/hn4Nxk/Vbg\n",
414 "k0wNvu8T6uqz2Qc8liz/MvAQ8PA0264A/gQ4FvhZoAL8A6HGn+U5a6rTtO9OniuNMwl9fowwkj4T\n",
415 "+I8mjz3Xvi0Gfly3vhc4KtkuS7t6jKUVQXhzvwysB94B/AQh3B+o22Z+w31+DvjvZLmUrLc6iq5Z\n",
416 "DFxK2MHXzBAhsH+TUCLYlGx78zTbpzHdiPwl4NCUj/FG4BHCDsXPEer9rwe+N4d+NevbREPbEYRR\n",
417 "d9Z29RhH5FoE/ChZniDUeq8CngU+W7fdKw33uxD4erK8Eni0yWNnKSWUgLXAB4AXgBOY/KCo+WDS\n",
418 "p9oo87C6vrfynDD9iHwR6UOvfkB0C+ED7Qngr3Lu2w7Ct5Ca1xBG/s+nbD8maZfUI44izET5babO\n",
419 "ZDgT+D8OroePMvVr+YPATyfLHweuBFbNoT8fItSklxC+DbwtaT+ZyaC8kTAtEEJd/1NzeL6aS2k+\n",
420 "a+Uq4Bfr1uv7Ue8QwjeEejcT6v55920BUz8wtxC+PWVtV49p/Lqs/lEGvkUoCdxb174LeAOwmamj\n",
421 "tyFCMPyAUJ9eRxjxLSSURBYBOwl14KzOJdTnrwR+D7ic8OEwQZjbvr3u8k7CTr8zCDX5/S08X81V\n",
422 "hNLMm5J/w2Ymd+5eCfw1k99E6vtRcxZh1H08oQw1kbR/n1DG+FbOfXshuawi/P/dSxjF78vYrj61\n",
423 "GPgK8J+Er4xvJryxNxKmXG1ItlFchjNsu5iwkxFCwPxp/t1p6lDgrR16rprDCTsti+6HlKtR4LeS\n",
424 "5QHC6OtGJuf+XgNcX0C/1Fm/QyjDfJrOzPMGeC+d/+Z4KWFnZdH9kHKziOZfl7cyOaJbkqyrt5WY\n",
425 "eWddL1gGXFx0J6S8nUGo/91GqJn+DaFWurtum1LDuiSpQ9LMIx8gzGT4XHL9ImGaWL0q00/jkiS1\n",
426 "UZp55E8llweT9a8QZiyMEUoqY4RDqp9uvONJJ51U3bFjRz49laT+sYP05/pJNSIfA55k8nDl84HH\n",
427 "gXuANUnbGuDug3qyYwfVatVLDpfrrruu8D700sW/p3/Pbr4AJ6UNcUh/ZOfVwBcJU7B2AJcR9uDf\n",
428 "SZjzuxO4JMsTS5LykTbItxAOfmh0fo59kSS1wJNmRaJcLhfdhZ7i3zNf/j2L1e6feqsm9R5JUkql\n",
429 "Ugky5LMjckmKnEEuSZEzyCUpcga5JEXOIJekyBnkUocMDg5RKpUYHBwquivqMU4/lDokTCmrAiV8\n",
430 "X2gmTj+UpD5jkEsdN0CpVLLMotxYWpE6pL60Mnn6fsssOpilFUnqMwa5JEXOIJe6iFMU1Qpr5FKH\n",
431 "pKmRO0VRYI1ckvqOQS5JkTPIJSlyBrkkRc4gl6TIGeSSFDmDXGoT54SrU5xHLrVJ45xw55ErLeeR\n",
432 "S1KfMcglKXIGuSRFziCXpMgNpNxuJ7AHeBXYB5wNDAFfBk5Ibr8EeD73HkqSZpR2RF4FysBKQogD\n",
433 "rAU2AiuATcm6JKnDspRWGqfCrAJGk+VRYHUuPZIkZZJlRH4f8BBwRdI2DIwny+PJuiSpw9LWyN8C\n",
434 "7AKOJZRTtjbcXmXyCAdJUgelDfJdyfUzwF2EOvk4sAQYA5YCTze748jIyIHlcrlMuVxuradSTxqg\n",
435 "VCqxcOHR7NnzXNGdUUEqlQqVSqXl+6c5BPRIYD4wASwANgB/CJwPPAvcQNjRuZiDd3h6iL76VtpD\n",
436 "9KfbxvdO/8p6iH6aEfkwYRRe2/6LhDB/CLgTuJzJ6YeSpA7zpFlSmzgiV6s8aZYk9RmDXJIiZ5BL\n",
437 "UuQMcqmL+StDSsOdnVKb5LGz052f/cmdnZLUZwxySYqcQS5JkTPIJSlyBrkkRc4gl6TIGeSSFDmD\n",
438 "XJIiZ5BLUuQMcmmO2nMY/UDt6D5pVh6iL83RdIfRz/UQ/cZr30v9w0P0JanPGOSSFDmDXJIiZ5BL\n",
439 "UuQMckmKnEEuSZEzyCUpcga5JEXOIJekyBnkkhQ5g1ySImeQS1LkDHJJilzaIJ8PbAbuSdaHgI3A\n",
440 "NmADsDj/rkm9wlPSqr3SBvmHgSeYPPfmWkKQrwA2JeuSmnqFybeOlL80QX4c8E7gFibPj7sKGE2W\n",
441 "R4HV+XdNkpRGmiD/C+CjwP66tmFgPFkeT9YlSQUYmOX2dwFPE+rj5Wm2qTLD98aRkZEDy+VymXJ5\n",
442 "uoeRpP5UqVSoVCot33+2PTCfAH6DUOQ7HBgEvgqcRQj2MWApcD9wSpP7+1Nv6nlpfuqt+TX4U29q\n",
443 "Ju+fersWWAacCLwP+AYh2NcDa5Jt1gB3Z+2oJCkfWeeR14YE1wMXEKYfnpesS5IK0O7JrZZW1POK\n",
444 "KK0MDg4xMbEbgIULj2bPnufa+C9Up2UtrRjk0hwVEeST23HQbYpf3jVySVKXm236oaSOmO0w/trt\n",
445 "hwD7OtQnxcIgl7pC7TD+6cK8/vaZtlM/srQiSZEzyCUpcga5JEXOIJekyBnkkhQ5g1ySImeQS1Lk\n",
446 "DHJJipxBLkmRM8glKXIGuSRFziCXpMgZ5JIUOYNckiJnkEtS5AxySYqcQS5JkTPIpdyEn2MbHBwq\n",
447 "uiPqM/7Um5Sb8HNsExP+DJs6yxG5JEXOIJekyBnkUvSszfc7a+RS9KzN9ztH5JIUudmC/HDgAeBh\n",
448 "4Angk0n7ELAR2AZsABa3q4OSpJnNFuQ/Bt4OnAG8MVk+F1hLCPIVwKZkXZJUgDSllR8l14cC84Hd\n",
449 "wCpgNGkfBVbn3zVJUhppgnweobQyDtwPPA4MJ+sk18Nt6Z0kaVZpZq3sJ5RWFgFfJ5RX6lWTS1Mj\n",
450 "IyMHlsvlMuVyOWsfpcINDg4xMbGbhQuPZs+e54rujnpMpVKhUqm0fP+s85U+DrwEfAAoA2PAUsJI\n",
451 "/ZQm21er1WkzXopGqVQijFdKNL6m62+r36ZZ+9RrZrgt7fXUx/D91hvCayd9Ps9WWjmGyRkpRwAX\n",
452 "AJuB9cCapH0NcHemXkqScjNbaWUpYWfmvORyO2GWymbgTuByYCdwSfu6KEmaSbsPBbO0op7QrLRS\n",
453 "q5sH3VBaOQR4xTp+D8haWjHIpRSaBflMQV1UjdxaeW/Iu0YuSepyBrkkRc4gl6TIGeSSFDmDXJIi\n",
454 "Z5BLuRuozTqQOsIgl3IXfrFH6hSDXJIiZ5BLUuQMckmKnEEuSZEzyCUpcga5JEXOIJekyBnkkhQ5\n",
455 "g1ySImeQS1LkDHJJipxBLkmRM8glKXIDRXdAiounqFX3cUQuZVI7Ra2nqVX3MMglKXIGuSRFziCX\n",
456 "ZjA4OGRNXF3PIJdmMDGxG+vh6nYGuSRFLk2QLwPuBx4HHgM+lLQPARuBbcAGYHE7OihJmlmaIN8H\n",
457 "/C5wOnAO8EHgVGAtIchXAJuSdUldolbfHxwcKrorarNW9uLcDXwmubwNGAeWABXglIZtq9Wq9UXF\n",
458 "K+zorBLeKvXXNGnLet2+x6hWq1P67vswLskO9tT5nLVGvhxYCTwADBNCnOR6OONjSZJykOUQ/aOA\n",
459 "vwM+DEw03DbtoW4jIyMHlsvlMuVyOVMHJanXVSoVKpVKy/dPO3Q/BLgX+Brwl0nbVqAMjAFLCTtE\n",
460 "La2op1haURHaUVopAbcCTzAZ4gDrgTXJ8hpC7VyS1GFpEv9c4F+AR5gcAqwDvgvcCRwP7AQuAZ5v\n",
461 "uK8jckXNEbmKkHVE3u5jjw1yRc0gVxHaPWtFktRlDHJJipxBLkmRM8ilJjx9rWJikEtNePpaxcQg\n",
462 "l6TIGeSSFDmDXKpjbVwxMsilOtbGFSODXJIiZ5BLPWfA8lCfMcilnvMKlof6i0EuSZEzyCUpcga5\n",
463 "JEXOIJekyBnkkhQ5g1ySImeQS1LkDHJJipxBLkmRM8ilPlM7w+Pg4FDRXVFOBorugKTOqp3hcWLC\n",
464 "87H0CkfkkhQ5g1ySImeQS1LkDHJJipxBLkmRSxPknwfGgUfr2oaAjcA2YAOwOP+uSZLSSBPktwEX\n",
465 "NrStJQT5CmBTsi4pKuEn4ZxTHr80Qf5NYHdD2ypgNFkeBVbn2SlJnVD7SbhqMrdcsWq1Rj5MKLeQ\n",
466 "XA/n0x1JUlZ57Oys4i+9SlJhWj1EfxxYAowBS4Gnp9twZGTkwHK5XKZcLrf4lJJaE2rhCxcezZ49\n",
467 "zxXdGTVRqVSoVCot3z/tyRaWA/cAb0jWbwSeBW4g7OhcTPMdntVq1cG64lEqlQhfMGe7JsU23fcY\n",
468 "1Wq1yb+RA7epO4T/o9T5nKq0cgfwbeD1wJPAZcD1wAWE6YfnJeuSpAK0+/RnjsjVlQYHh5iY2H1Q\n",
469 "ucERubpB1hG5p7FVX/JUruolHqIvSZEzyCUpcga5+kbtJ86S+mMfGujjf3tvM8jVN2p18f49fq12\n",
470 "SL56jUEuSZEzyCUpcga5el6tNq6ZDHg624g5j1w9b7I2bphPL9TPnVcfJ0fkkhQ5g1x9zpKC4mdp\n",
471 "RX3OkoLi54hckiJnkEtS5AxySYqcQS5JkTPIJSlyBrkkRc4glwBP8aqYGeQS4CleFTODXJIiZ5BL\n",
472 "UuQMckmKnEEuSZHzpFmKyq5du3jxxRc57LDDWLZsWdHdkbqCI3JFY//+/Rx//AmsXHkhy5efyNjY\n",
473 "2JTba78E5Clp5yJMwyyVDm167d+2OzkiVzSq1SqvvvoqL7ywnQULjmfv3r1Tbq/9EpCnpJ2L2jTM\n",
474 "UtNr/7bdyRG5JEVurkF+IbAV+C/gmrl3R5KU1VyCfD7wGUKYnwa8Hzg1j07pYJVKpeguRGRqnVd5\n",
475 "mvrTeLX9Es3arKd3zlyC/GxgO7AT2Ad8Cbg4hz6pCYM8i1qddx8edp+32k/j7QYm90vAdQe11dbV\n",
476 "fnMJ8p8CnqxbfyppkyR10FyC3KGOClBlcPBXePnlZ5g3z331EoQ5Ra06Bxgh1MgB1gH7gRvqttkO\n",
477 "nDSH55CkfrQDeF0nnmggebLlwKHAw7izU5KicxHwPcLIe13BfZEkSZIE8B7gceBV4MyG29YRDh7a\n",
478 "Cryjw/3qBSOE2UGbk8uFM26t6XggW752Ao8QXpPfLbYr0fk8MA48Wtc2BGwEtgEbgMUF9ItTgBXA\n",
479 "/UwN8tMIdfRDCHX17XiKgKyuAz5SdCciN5/w2ltOeC26b2fufkAIH2X3VmAlU4P8RuBjyfI1wPWz\n",
480 "PUg7gnQr4ZOk0cXAHYSjNHYS3kxnt+H5e52HKs6NB7K1h6/L1nwTaDxyahUwmiyPAqtne5BOjoh/\n",
481 "klAWqPEAotZcDWwBbqWgr1yR80C2/FWB+4CHgCsK7ksvGCaUW0iuh2e7Q6unsd0ILGnSfi1wT4bH\n",
482 "8aCig033t/0D4Cbgj5L1Pwb+DLi8Q/3qFb7m8vcWYBdwLOH1u5Uw0tTcVUnxmm01yC9o4T4/BOp/\n",
483 "0uW4pE1Tpf3b3kK2D00Fja/DZUz9pqjsdiXXzwB3EcpXBnnrxgmDuTFgKfD0bHdod2mlvm62Hngf\n",
484 "4eChE4GTcQ93Vkvrlt/N1B0kSuchwmtvOeG1+F7Ca1OtORJYmCwvIMxG83U5N+uBNcnyGuDuIjrx\n",
485 "bkIN8iXCJ8rX6m67lrCjaSvwS53vWvS+QJjmtYXwnztr7UxNeSBbfk4kzPx5GHgM/55Z3QH8D7CX\n",
486 "kJuXEWYA3UfB0w8lSZIkSZIkSZIkSZIkSZIkSZIktcn/A4eK9UXawRDUAAAAAElFTkSuQmCC\n"
479 "iVBORw0KGgoAAAANSUhEUgAAAlEAAAGLCAYAAADnMccKAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\n",
480 "AAALEgAACxIB0t1+/AAAGsJJREFUeJzt3X2QndddH/DvsUQs5cXIRoCNA9mGGIR5Dy9KiBMnMmnq\n",
481 "BAbamjOdYIOBafEMGd4MocEGUrAbG1Sgw7sLwWAI5bhT6tC0abCN4rQlSjEhmVAbG1yRRHgTYgsp\n",
482 "xEKOlKd/3LvmeiOvdo/26t6VPp9/ds9znufe32rvaL/znHOeU4ZhCAAAa3PWrAsAANiIhCgAgA5C\n",
483 "FABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghRsIGVUraMv5ZSyq5Z1zMPSinnllK+atZ1AKc/\n",
484 "IQo2oFLKV5ZS3pPkQClla5IfTPIXp+i9P7eUclMp5d+XUv6glPIVp+J9n6KWraWUXy6lvHjp2DAM\n",
485 "B5K8opTyvFnVtRrHq32i77NLKb9SSvmuUsqvllIWTrYPWH9CFMypUsofl1JecZzjm5Jcn+Tnkrwo\n",
486 "yRcleWwYhvefgprOSnJtktcNw/A9SX4zydtKKdun/d7HqeU7k7w+yRVJyrLun0zyE6e6ptU6Qe1J\n",
487 "cluS24Zh+IUkv5rkd9ahD1hnQhTMoXEo+fKM/sgu97IkvzgMw68Ow/AnSb4/ya+fotIuSvI1ST5r\n",
488 "3P6dJM9I8o2n6P2fMAzDrwzD8ENJPnqcvseT3F9KedFaX7eUcnYp5UdKKftLKfeVUspE36tLKfeX\n",
489 "Un6/lPJPp1F7KeXzknzpMAz/c3zuO5N8finlczr7ntNbJ7AyIQrm08VJfiPJPy+lPG1Z38uS/GGS\n",
490 "lFLOS/IpwzB87BTV9XdJnp3kgiQZhuHo+Ni5p+j91+ItSV691ouGYTiS0Z2s25JcmImAOAzDm5L8\n",
491 "xjAMXz8Mw++tV6HLfEmSDyw79sGM7jr29H3NFGoEIkTBvPqKJD+S5ONJXrms7+xhGD4+/v5lSd59\n",
492 "qooahmH/MAzbh2H442Q0ByfJeUn+6FTVsAbvSfLCzmtfnOSOjIbEfnBZ3ydOpqhV+Iwkh5cdeyzJ\n",
493 "+Uk+vaPvM6dQI5Bk86wLAI7r3GEY9pdS3pTkqiT/JUlKKV+Q5P9OnPeFSf58+cWllG9J8vnDMFw3\n",
494 "bv/LJOcPw/ATE+dsS/LTOf6cnEk/MwzDe5+i77uSvGVpCOl4SinfkeS7M7p7tX1c7+NJXj4Mw4fX\n",
495 "sZYnGYbh4+PJ25uGYTi2mmsmfFWSmzK6k/OXpZQXD8PwjlLKjiz7955C7edm9O8z6fEkz0qytbMP\n",
496 "mAIhCubM+LEFS38MfzPJO0spnzkMw4eS/OMkbeL07UnedZyX+Wfja5d8U5KfnzxhGIa/TfLtJ1Hn\n",
497 "FyV5RZLLVjjnRzO6Q/L8jELGHyV5zTAMe9ezlhUsDTV+ZI3XbRqGYUjygVLK7yR5bZJ3ZHTn77cn\n",
498 "T5xC7Z80TyrJ05M8muMHtdX0AVNgOA/mz2VJ7kmSYRjeneT+JNeM+549DMPDE+c+LcnRyYvHq/cu\n",
499 "SXLXuL0lyQsynke1Hkopz8roTs0rh2E47h/p8V2zK5N8zzAMx8bzp/YlOZUTnR/PGv+fK6V8ZpLF\n",
500 "iUM/leTyUsrFGd0hPLSO9R3Pw0meuezYM8Y1LXb0fWgKNQJxJwrm0aXDMLx2ov2LSf5tKeWX8snD\n",
501 "NY8k2bbs2FckeWgYhoPj9ouTvC/Jx0op5y2FnlLKuUn+XfqGoW7K6I7Sw+PVa/9iGIbly+lfleRt\n",
502 "wzB8Yvx+mzMaJvu+5W9wkrWs5FMz+jdai8uSvG2pMQzD+0opb83osRL3Lj95CrW/M6PJ+0uvvzmj\n",
503 "4Pm+JB/r7AOmQIiCOVBKOSej0PFQkr9e1v3GJD+U5Pcy+mM96QMZTUSe9LXj11ny6ozubO0av/aj\n",
504 "yRMPpVzzMFQp5bUZzRXaMZ4j9DkZ3T1JKeUrk5wzDMPdSf4m41V8Y9+V5JeHYfjg8tfsrWWyrKc4\n",
505 "PkzOh1pW31N57ngV3qSfTLIno2dzLX+Dda19GIYPlFL+Xyll53jY8+VJ/mQYhvvHP0NXH7D+hCiY\n",
506 "Dy/MaK7Ngxk9H+oJ4wnS35Nkd8ZDdBPuSfIDy45dluRYKeXqJJ+S5O7xsc8bhuHOkylyPER3Y5JN\n",
507 "kyVmNME9Sb45o3lDX5bRIwLeMJ7U/swkHxmG4baTef9ltXxrksuTfHaSnymlvCPJDyytXBw/rfvP\n",
508 "ll326ozC5Jcd5/Wen9Gw6TeUUs4ahuHHn/gBh+GeUsp/T7J3+XXTqD3JtyS5vpTygozuLH7zxOW9\n",
509 "fcA6K6O5k8CsjR+W+KGJYbjVXnfnMAxfO/5+S5L9Ga3E+/jKV05HKeU7hmH4tVm897I6viXJJ4Zh\n",
510 "+K1lx+eiPmDjW9WdqFrr1yX5vNbaT9daL05yS5JjGU94ba1JYnCShmF4oPPSVkp5+TAMf5DRhPI/\n",
511 "nVWAGvvUGb73pMszejzEcvNSH7DBnXDVSq31mUle2Fr76fGh3UmuaK1dmuSBjFbfALPzxiTfON7X\n",
512 "7oszfqbULJRSXpXkpIYM16mOf5LkzeMVgZPH56I+4PSwmjtRNyS5qNb6n5L8WJLHWmtLy39vS3Lz\n",
513 "+CswA8MwHC2l3JDkW4dh+JkZ1/KWWb5/8sRquX80DMMvLe+bh/qA08eKd6JqrRcl2dRae1WS12T0\n",
514 "sL7J5cKPZLTlAzBDwzA8PAzDqdqEeK4Nw3DgeAEKYL2d6E7U5Un+c5K01hZrrR9J8mkT/duzwtNw\n",
515 "77rrLnOlAIAN47LLLjvRM9+ecKIQ9UhGy4H/sNb6rIw2uTxYa72gtfZwRpM2V5xfsJZiOLPVWl/f\n",
516 "Wnv9rOtg/vmssBY+L6zWWm/+nChE/cckv1RrvWfcfl1Ge1DdXms9luS+1trutZcJALCxrRiiWmvH\n",
517 "kvyr43RdMp1yAAA2BhsQAwB0EKIAADoIUcyTPbMugA1jz6wLYEPZM+sCOD1Nde+8u+66a7A6DwDY\n",
518 "CNaaW9yJAgDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAA\n",
519 "OghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA6bZ10AwOli\n",
520 "74P7b108dGRhqX3+OWfv23nRhVfPriJgmoQogHWyeOjIwg1377t0qX39roUZVgNMm+E8AIAOQhQA\n",
521 "QAchCgCggxAFANBBiAIA6CBEAQB0EKIAADoIUQAAHYQoAIAOnlgOMGO2i4GNSYgCmDHbxcDGZDgP\n",
522 "AKCDEAUA0EGIAgDoIEQBAHQwsRxgzmzbunnHHfc+tCexUg/mmRAFMGcOHD665cbxaj0r9WB+Gc4D\n",
523 "AOggRAEAdBCiAAA6CFEAAB1MLAeYgcn98jadVXbMuBygwwlDVK310STvGTffmuT3k9yS5FiS+5Nc\n",
524 "01obplYhwGlocr+863YtHJx1PcDareZO1N7W2uVLjVrrf0tyRWttsdZ6bZIrk9w2rQIBAObRakLU\n",
525 "F9da70ny8STfnuSx1triuO+2JDdHiAIAzjCrmVj+3NbaS5K8LsmtSR6Z6HskyXlTqAsAYK6dMES1\n",
526 "1h4ff31XkseTfNpE9/Ykj06nNACA+bViiKq17qy1XjH+/vlJ9ifZUmu9YHzKVUnunG6JAADz50Rz\n",
527 "ou5L8sO11tdkdMfpmoyG726vtR5Lcl9rbfeUawQAmDsrhqjW2qEk37Ds8IeTXDK1igAANgBPLAcA\n",
528 "6CBEAQB0sO0LwJRs27p5xx33PrQnSc4/5+x9Oy+68OrZVgSsJyEKYEoOHD665cbx1i7X71qYcTXA\n",
529 "ejOcBwDQQYgCAOggRAEAdBCiAAA6mFgOcApMrtRLkk1nlR0zLAdYB0IUwCkwuVIvSa7btXBwlvUA\n",
530 "J89wHgBAByEKAKCDEAUA0EGIAgDoYGI5wBxbvqrPHnwwP4QogDm2fFWfPfhgfhjOAwDoIEQBAHQQ\n",
531 "ogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDo4InlABvU3gf337p46MjCUtuWMHBqCVEA\n",
532 "G9TioSMLN9gSBmbGcB4AQAchCgCggxAFANBBiAIA6GBiOcAGsm3r5h133PvQniTZdFbZMeNy4Iwm\n",
533 "RAFsIAcOH91y43hF3nW7Fg7Ouh44kxnOAwDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCD\n",
534 "EAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDosHk1J9Van5Pk\n",
535 "niTflOTvktyS5FiS+5Nc01obplYhAMAcOuGdqFrrWUlel+RNSUqS3UmuaK1dmuSBJFdOtUIAgDm0\n",
536 "muG8a5P8SpK/H5//WGttcdx3W5JdU6oNAGBurRiiaq1fnaS01t49cf6jE6c8kuS8KdUGADC3TjQn\n",
537 "aleSr6m1vjDJjiSvSvL+if7teXKoAgA4I6wYolprNy19X2v9sSRvTfKjtdYLWmsPJ7kqyZ3TLREA\n",
538 "YP6sanXeMtcmub3WeizJfa213etcEwDA3Ft1iGqt/ZuJ5iVTqAUAYMPwsE0AgA5CFABAByEKAKCD\n",
539 "EAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDosHnWBQAwHXsf\n",
540 "3H/r4qEjC0ly/jln79t50YVXz7YiOL0IUQCnqcVDRxZuuHvfpUly/a6FGVcDpx/DeQAAHYQoAIAO\n",
541 "QhQAQAchCgCggxAFANBBiAIA6CBEAQB0EKIAADoIUQAAHYQoAIAOtn0BOE1s27p5xx33PrRnqb3p\n",
542 "rLJjhuXAaU+IAjhNHDh8dMuN473ykuS6XQsHZ1kPnO4M5wEAdBCiAAA6CFEAAB3MiQI4CXsf3H/r\n",
543 "4qEjC8l8T+RePun8/HPO3rfzoguvnl1FsPEJUQAnYfHQkYUbxpO553ki9/JJ59fvWphhNXB6MJwH\n",
544 "ANBBiAIA6CBEAQB0EKIAADqYWA6wBpOr8ZL5XpHXa/JntIoPnpoQBbAGk6vxkvlekddr8me0ig+e\n",
545 "muE8AIAOQhQAQAchCgCggxAFANDBxHKAFZwJq/GAPkIUwArOhNV4QB/DeQAAHYQoAIAOQhQAQAch\n",
546 "CgCggxAFANBhxdV5tdbNSX4tyfOSPJbku5OUJLckOZbk/iTXtNaGKdcJADBXTnQn6hlJ3thae1GS\n",
547 "b0/yw0l2J7mitXZpkgeSXDndEgEA5s+Kd6JaaweTvH3cXEjy4SRbWmuL42O3Jbl5/BUA4Iyxqodt\n",
548 "1lr/R0ZDei9O8vqJrkeSnLf+ZQEAzLdVTSxvrb0iyeVJfj5PDk3bkzw6hboAAObaiiGq1vrCWutL\n",
549 "xs2PJHl6ki211gvGx65KcucU6wMAmEsnGs77yyRvrLW+PqNVef86ycEkt9dajyW5r7W2e7olAgDM\n",
550 "nxNNLP9wkq87Ttcl0ykHAGBj8LBNAIAOQhQAQIdVPeIAgNPX3gf337p46MjCUnvTWWXHDMuBDUOI\n",
551 "AjjDLR46snDD3fsuXWpft2vh4CzrgY3CcB4AQAchCgCggxAFANBBiAIA6CBEAQB0EKIAADoIUQAA\n",
552 "HYQoAIAOQhQAQAchCgCgg21fgDPS5H5x559z9r6dF1149WwrAjYaIQo4I03uF3f9roUZVwNsRIbz\n",
553 "AAA6CFEAAB2EKACADkIUAEAHIQoAoIMQBQDQQYgCAOggRAEAdBCiAAA6eGI5cMbbtnXzjjvufWjP\n",
554 "Uts2MMBqCFHAGe/A4aNbbhxvAZPYBgZYHcN5AAAdhCgAgA5CFABAByEKAKCDieUAy0yu1tt0Vtkx\n",
555 "43KAOSVEASwzuVrvul0LB2ddDzCfDOcBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGI\n",
556 "AgDoIEQBAHTwxHKAM5CtbeDkCVEAZyBb28DJM5wHANBBiAIA6CBEAQB0EKIAADqYWA5Al70P7r91\n",
557 "8dCRhaX2+eecvW/nRRdePbuK4NQSogDosnjoyMIN4xV+SXL9roUZVgOn3oohqtZ6VpJfSPKFGQ39\n",
558 "/UiSDyW5JcmxJPcnuaa1Nky5TgCAuXKiOVFfkuSB1tpLkrwqyeuS7E5yRWvt0iQPJLlyuiUCAMyf\n",
559 "Fe9Etdb+NMmfjptPT/K3SUprbXF87LYkN4+/AgCcMVa1Oq/Wel6S/5DkZ5McmOh6JMl5U6gLAGCu\n",
560 "nXBiea31M5K8Mcn3Jflgku+f6N6e5NHplAbAvJlckWfPPc50K96JqrV+VpJbk7ymtfZga+1wkq21\n",
561 "1gvGp1yV5M7plgjAvFhakXfD3fsuPfqJYcus64FZOtGdqGuTPCfJr9dak9Fdp2uT3F5rPZbkvtba\n",
562 "7umWCAAwf040sfzajELTcpdMpxwAgI3Bti8AAB2EKACADrZ9AeApbdu6eccd9z60Z6ltRR78AyEK\n",
563 "gKd04PDRLTdO7I933a6Fg7OsB+aJ4TwAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghR\n",
564 "AAAdhCgAgA6eWA6ctvY+uP/WxUNHFpLk/HPO3rfzoguvnm1FwOlEiAJOW4uHjizcMN6y5PpdCzOu\n",
565 "BjjdGM4DAOggRAEAdBCiAAA6CFEAAB1MLAdgXWzbunnHHfc+tGepbUUkpzshCoB1ceDw0S03jldD\n",
566 "JlZEcvoznAcA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQB\n",
567 "AHQQogAAOghRAAAdhCgAgA5CFABAh82zLgBgvex9cP+ti4eOLCy1N51VdsywHOA0J0QBp43FQ0cW\n",
568 "brh736VL7et2LRycZT3A6c1wHgBAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA5C\n",
569 "FABAByEKAKCDbV+AM8K2rZt33HHvQ3uW2vbVA07WCUNUrXVbkjcleXtr7eZa68VJbklyLMn9Sa5p\n",
570 "rQ3TLRPg5Bw4fHTLjfbVA9bRaobzbkrylon27iRXtNYuTfJAkiunURgAwDw7YYhqrV2T5H1JUmvd\n",
571 "muSx1triuPu2JLumVx4AwHxa68Tyc5M8OtF+JMl561cOAMDGsNaJ5Qfy5NC0PU8OVQBTtffB/bcu\n",
572 "HjqysNQ+/5yz9+286MKrZ1cRT2VyMr/fE6ejNYWo1trhWuvWWusFrbWHk1yV5M7plAbwyRYPHVm4\n",
573 "YWKC+PW7FmZYDSuZnMzv98TpaC0hamkF3rVJbq+1HktyX2tt9/qXBQAw31YVolprb0/y9vH39ye5\n",
574 "ZJpFAQDMO08sBwDoIEQBAHSw7QuwoU2uALOVC3AqCVHAhja5AsxWLsCpZDgPAKCDEAUA0EGIAgDo\n",
575 "IEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgA\n",
576 "gA6bZ10AwEr2Prj/1sVDRxaW2pvOKjtmWA7AE4QoYK4tHjqycMPd+y5dal+3a+HgLOsBWGI4DwCg\n",
577 "gxAFANBBiAIA6CBEAQB0MLEcmLnlK/DOP+fsfTsvuvDq2VXEetu2dfOOO+59aM9Se6Xf8eTnwWeB\n",
578 "eSZEATO3fAXe9bsWZlgN03Dg8NEtN67ydzz5efBZYJ4ZzgMA6CBEAQB0EKIAADoIUQAAHUwsB+CU\n",
579 "m1ytt9IKvLWs6oNTTYgC4JSbXK230gq8tazqg1PNcB4AQAchCgCggxAFANBBiAIA6GBiOQAbxmpX\n",
580 "9S1nf0amQYgCYMNY7aq+5ezPyDQYzgMA6CBEAQB0EKIAADqYEwWcEmuZ2Ds5eXjTWWXHKSkQYI2E\n",
581 "KOCUWMvE3snJw9ftWjg4/eoA1s5wHgBAByEKAKCDEAUA0MGcKGDVDhw4sDXJxROHPn7uuee+d1b1\n",
582 "AMySEMXcqLW+tLW2Z9Z1sKKFO/7sb+58919/9Owk+fov2P7+Z33ksXcurbo7/1lPe/biRx//4NLJ\n",
583 "ttZgNSZXYyarX5G5/LrJz9vkatC/P/zYtmc84xnnr2fNkAhRzJeXJtkz4xo4gfv/5mPlf//Vwa1J\n",
584 "svNzzjnyscePPbHq7rpdCwdvvHvf5y6da2sNVmNyNWay+hWZy6+b/LwtXw1qlSfT0B2iaq0/leQF\n",
585 "Gc2r+v7W2t51qwoAYM51TSyvtb4iySdaay9O8sokP7muVQEAzLne1XkvS/JbSdJaO5jkz2qtz1m3\n",
586 "qgAA5lzvcN55SR6ZaH9kfOyvTroiYK699LnnPvZZ55z90SR53qc9/WkPHzoy65IAZqIMw7Dmi2qt\n",
587 "NyV5U2vtveP2Lya5qbX2/snz7rrrrrW/OADAjFx22WVltef23om6K8k3J3lvrXVbkouXB6i1FgIA\n",
588 "sJF0zYlqrf1BktRa35HkLUl+cD2LAgCYd13DeQAAZzp75wEAdBCiAAA6CFEAAB2mtnderfUlSX43\n",
589 "yZe21j48Pva9Sb4po/D2htbam6f1/mxMtdarM1qo8OHxoe9trb1ndhUxb2w5xVrUWh9NsvR/yFtb\n",
590 "azfPsh7my/gJA29K8vbW2s211ouT3JLkWJL7k1zTWnvKyeNTCVG11s9O8m1J7k5Sxsd2JHlBa+1F\n",
591 "tdbNSe6utb6ttfb306iBDWtI8uOttd+ddSHMn8ktp2qtn5rkzUkuPcFlnNn2ttYun3URzK2bMnrK\n",
592 "wDPH7d1JrmitLdZar01yZZLbnuriqQzntdY+0Fr7tiSPZ/RHMUlemuS3x/1Hk/zXJDun8f5seD9Q\n",
593 "a31XrXX3rAth7thyirX64lrrPbXWu2qtz551McyX1to1Sd6XJLXWrUkea60tjrtvS7JrpetP6k5U\n",
594 "rfXzk/zsssMfaq1dfZzTz0vy3on20lYxnIGe6rOT5Dtba78xPufnaq0vX3ouGcSWU6zdc1trj9da\n",
595 "vzrJG5JcNeuCmFvnJnl0ov1ITpBTTipEtdb+PMlqb5M+mmT7RPvTk/zFybw/G9cqPzu/l+TLkwhR\n",
596 "LFn6f+Svx+3teXKogidprT0+/vquWuv2E53PGe1AnhyatufJoeqTnIrVeUtbv9yd5NVJUmv9lCSv\n",
597 "TGJCKE9Sa31trfUzxs2vS3LvLOth7ixtObU0IfS4W05BktRad9Zarxh///z8Q/iGT9JaO5xka631\n",
598 "gvGhq5LcudI1pyJEDUnSWnsgyR/VWv9XknuS/FRrzfbvLPd/kry51vr2JI+21vbMuB7miC2nWKP7\n",
599 "klxVa92T5Pokr5ttOcyxpfnb1ya5ffw36Hmttd9e6SLbvgAAdPCwTQCADkIUAEAHIQoAoIMQBQDQ\n",
600 "QYgCAOggRAEAdBCiAAA6CFEAAB2EKACADv8fn0xUCxJB1sMAAAAASUVORK5CYII=\n"
487 601 ]
488 602 },
489 603 "metadata": {},
490 604 "output_type": "display_data"
491 605 }
492 606 ],
493 607 "source": [
494 608 "display_png(x)"
495 609 ]
496 610 },
497 611 {
498 612 "cell_type": "markdown",
499 613 "metadata": {},
500 614 "source": [
501 615 "<div class=\"alert alert-success\">\n",
502 616 "It is important to note a subtle different between <code>display</code> and <code>display_png</code>. The former computes <em>all</em> representations of the object, and lets the notebook UI decide which to display. The later only computes the PNG representation.\n",
503 617 "</div>"
504 618 ]
505 619 },
506 620 {
507 621 "cell_type": "markdown",
508 622 "metadata": {},
509 623 "source": [
510 624 "Create a new Gaussian with different parameters:"
511 625 ]
512 626 },
513 627 {
514 628 "cell_type": "code",
515 629 "execution_count": 7,
516 630 "metadata": {
517 631 "collapsed": false
518 632 },
519 633 "outputs": [
520 634 {
521 635 "data": {
522 636 "image/png": [
523 "iVBORw0KGgoAAAANSUhEUgAAAXcAAAENCAYAAAD0eSVZAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\n",
524 "AAALEgAACxIB0t1+/AAAE3lJREFUeJzt3X2UXOVBx/HvkE2AQJZ0S00CpCZNGyHYVmIDVEEGBExr\n",
525 "TwjHU160GFqKx9PSUvW0JKBlfSlStGp7tPQIpSdUCaZa3qStCSmjPYq8CAkvIQ2JRgltFoSk2R6j\n",
526 "hDL+8dzJ3pmd3Z258/7M93POnNx79748XO7+9pnnPve5IEmSJEmSJEmSJEmSJEmSJEmSJElSD1jY\n",
527 "6QK02DxgZqcLIdXqsE4XQD1rGbAFuJkQ7Kd3tjgt9xLwqU4XQqpVrtMFUNf7EvDPwFcrlt8MfB14\n",
528 "FFgDXNOi468ElgCvAy9UKUcr/DKhpn4qcBdwZ7J8GXAScHsbyjCRico20Xmqd7mkPvEQ8LWKZScD\n",
529 "70mm3wl8rEXHPgb4t4qyHNuiY5W8lbH/nmOBvZQ3OdUT7KcRAng3MJAsm0MI5L8HfqYJZVtA9fP0\n",
530 "xjqXt/q8qs1sltFkpgEPAOcAR6SW54FvJ9PvS003288BW1PzW4CzW3SskpMZa375b2AH8NOpn79E\n",
531 "CNlaPAx8C9gO/FKybIQQ7O8H/qUJZVtG9fN0Tp3LW31e1WYDU6+iPnYysAn4KUJN/a5k+ZHA/yXT\n",
532 "y4Ab6tzvW4ArJ/n5vwL3ACcA+1LL9wFvq/NY9R7zG4x9K8kRmkB2pNbbQgj7HUztMOAg8AXgk8Df\n",
533 "JMuPAg40qWzPAe+m+nl6pc7liojhrsmcSmiLvRO4lBDuhwOvptaZCRRT89OAfwTOSOa/DPwh5WH4\n",
534 "74R2+qnMBv43Nf8qcPQE6y4G/gB4E/AuoADcT7hnUM8xDwJPJ9O/CDwGbE79fG9yrFosTbZ/GviT\n",
535 "ZP5xys9XM8r2Xqqfp2KdyxURm2U0maMJNfR7gfOBHyME/sOpdaZVbPNu4D+T6VwyX0stt5pRym/6\n",
536 "H0modVYaIoT4rxKaFzYBH2As2LOYDVye7CftADCjxn28A3iScNPyi4T28p8AvttAuaqVbT/Vz9NE\n",
537 "56/W86oeZs1dEzkG+J9kepTQdnwV8DLwF6n1XqvYbjnwD8n0KcBTVfZdazPETkItvORYQs230keT\n",
538 "MpVqo4enyl7vMSEE32rgw8APgR9n7A/WMdQehOnK062EP3Jbgc83uWyV5+mNhPO0r8blE51XSRE5\n",
539 "mtAD5tcp70GxFPgB49vX11L+lf5R4CeT6d8Bfg1YkbEsR1H+x2EL4dsDhDbiUnjeROiiCOE+wR9n\n",
540 "PF7Jxwnt6nMJ31TOSv3sKuDnU/PpcqRNJ3yTSPsSod282WWbSfXzNNH5m+y8SorU+YRmhM9U+dlf\n",
541 "E2qMaR8i9MCA0N49AlxLaAf+LeA64NwGynMZ8NvAp4FfSS1/lvAtAUJXxasJPVKuprFvpGcAPyKc\n",
542 "g9eT6eNTP7+V8p5D6XKULCM8A/BXFdsuoba29Sxlm+g81btcfeI2wi9r+q/8HxEu6C2EC/iY1M/W\n",
543 "EO7ebyOEhHrTnDrWnU24kQmhDbjaH4VWmAGc2aZjlRxBuDHa6XJIDTuT8e2m5zH2NfTG5AOhVrKZ\n",
544 "8HV0AaF90Ru2/eEThCacL1DeJ7yVLmb8zdxWu5xwQ7TT5ZCaYgHVb4oBXEj46gnjH0H/FvGPN6Ig\n",
545 "x+Q3BGMwH7ig04WQatVob5kPAeuS6eMId/VLdlPe3qh4FYFbOl2IFns++Ug9oZFmk+sIDz/cMck6\n",
546 "lQ9rSJLaIGvN/XJCb4h0l7AXCF9dS05IlpVZtGhRcefOnRkPK0l9aye1j2uUqea+nDBOxgWUP8J8\n",
547 "L3AJoffAQkL/30fGlW7nTorFop8mfa6//vqOlyGmj+fT89mtH2BRPUE9Vc19HeEhiWMJ7Y3XE26c\n",
548 "zgA2Jus8BHyE8OTd+uTf15JlNstIUgdMFe6XVll22yTr30D9IwRKkprMfug9Lp/Pd7oIUfF8Npfn\n",
549 "s3M68Zq9YtJ+JEmqUS6Xgzoy25q7JEXIcJekCBnukhQhw12SImS4S1KEDHf1jcHBIXK53KHP4OBQ\n",
550 "p4sktYxdIdU3Qley9LWXw2tRvcKukJIkw12SYmS4S1KEDHdpEt6EVa/yhqr6RpYbqt6EVbfwhqqU\n",
551 "qKx1S/3EmruiVa3Wbc1dvcqauyTJcJekGBnukhQhw12SImS4S1KEDHdJipDhLjWgsi+9T7GqW9jP\n",
552 "XdFqRz/38T+vbb9SveznLkky3CUpRoa7JEXIcJdSHGxMsZgq3G8DRoCnUsuGgI3AdmADMDv1szXA\n",
553 "c8A24PzmFVNqj9HRvYQbpKWP1JumCvevAMsrlq0mhPtiYFMyD7AEuDj5dznwxRr2L3XQwLhujFIs\n",
554 "pgrf7wB7K5atANYm02uBlcn0BcA64CCwC9gBnNqUUkot8RrltXRr6opHlpr1HEJTDcm/c5Lp44Dd\n",
555 "qfV2A8dnL5okKatGm02mqu5YFZKkDhjIsM0IMBfYA8wDXkyWvwDMT613QrJsnOHh4UPT+XyefD6f\n",
556 "oRiSFK9CoUChUMi8fS13kBYA9wFvT+ZvAl4GPku4mTo7+XcJcAehnf144AHgrYyvvTv8gNqiluEH\n",
557 "qg0dUM+QBQ4/oHapd/iBqWru64CzgGOB54FPAzcC64ErCDdOL0rW3Zos30q4U/URbJaRpI5w4DBF\n",
558 "y5q7YuLAYZIkw12SYmS4S1KEDHdJipDhLkkRMtzVEyqH4vU9pdLk7AqpnjDVu0xr3caukOpVzX6I\n",
559 "SVKZAYcGVk8w3KW6lIYJLjHo1Z1sc5ekCBnukhQhw12SImS4S1KEDHdJipDhLkkRMtwlKUKGuyRF\n",
560 "yHCXpAj5hKp6VOUwANOBg50qjNR1DHf1qGrDAFQbBEzqTzbLSFKEDHdJipDhLkkRMtwlKUKGuyRF\n",
561 "yHCXpAgZ7pIUIcNdkiJkuEtShBoJ9zXAM8BTwB3A4cAQsBHYDmwAZjdaQElS/bKG+wLgSmAp8HZg\n",
562 "GnAJsJoQ7ouBTcm8JKnNsob7fsIoTTMJ49PMBL4HrADWJuusBVY2WkCp1w0ODpHL5Q59BgeHOl0k\n",
563 "9YGs4f4K8Dngvwihvo9QY58DjCTrjCTzUl8bHd1LGNQsfMK81FpZR4VcBHyC0DzzA+BrwAcq1ild\n",
564 "zeMMDw8fms7n8+Tz+YzFkKQ4FQoFCoVC5u2zjol6MXAe8OFk/jLgdOAc4GxgDzAPeBA4sWLbYrFY\n",
565 "NfOlCYWx2ycb4neiIX9bvU31faSv8Wpl93dA9UreX1BzZmdtltlGCPMjk4OdC2wF7gNWJeusAu7O\n",
566 "uH9JUgOyNstsAW4HHgNeBx4H/hKYBawHrgB2ARc1XkRJUr068aoam2VUN5tl1O/a1SwjSepihrsk\n",
567 "Rchwl6QIGe6SFCHDXZIiZLhLUoQMd0mKkOEuSREy3CUpQoa7JEXIcJekCBnukhQhw12SImS4S1KE\n",
568 "DHdJilDWl3VImtBAaextqWMMd6npXmP8Cz2k9rJZRpIiZLhLUoQMd0mKkOEuSREy3CUpQoa7JEXI\n",
569 "cJekCBnukhQhw12SImS4S1KEDHd1pcHBIXK53KGPpPo0Eu6zgb8FngW2AqcBQ8BGYDuwIVlHqtvo\n",
570 "6F7C+CylT0wGyv5w5XI5BgeHOl0oRaaRcP888A3gJOAdwDZgNSHcFwObknlJZUoDi419wh8zqXmy\n",
571 "ft89BngCeEvF8m3AWcAIMBcoACdWrFMsFmOriakeg4NDZWE2a9Yb2L//lbJ1QlNM5ciK9cy3a5vm\n",
572 "HdffC00maZ6sObOz1twXAi8BXwEeB24BjgLmEIKd5N85GfeviFU2uVhrlZov63juA8BS4CrgUeDP\n",
573 "GN8EM2Fj6fDw8KHpfD5PPp/PWAxJilOhUKBQKGTePmuzzFzgIUINHuAMYA2hmeZsYA8wD3gQm2VU\n",
574 "oVqTS+U1YbOMVK5dzTJ7gOcJN04BzgWeAe4DViXLVgF3Z9y/+sr43iOSGtPIb9E7gVuBGcBO4IPA\n",
575 "NGA98GZgF3ARsK9iO2vufW7qWnm1Zdbc1d/qrbl3oopkuPc5w73aNtMJXSSDaj2I1N/qDXdfkC11\n",
576 "hfKXao+O2jSlxjj8gCRFyHCXpAgZ7pIUIcNdkiJkuEtShAx3SYqQ4S5JETLcJSlChrskRchwl6QI\n",
577 "Ge6SFCHDXepKA75AWw1x4DCpKzmQmBpjzV0tNzg45Is4pDaz5q6WG3shdokBL7WaNXdJipDhLkkR\n",
578 "MtwlKUKGu9QT7Bqp+nhDVeoJdo1Ufay5S1KEDHdJipDhLkkRMtwlKUKGuyRFyHCXpAgZ7pIUoUbD\n",
579 "fRrwBHBfMj8EbAS2AxuA2Q3uX5KUQaPhfjWwlbGnK1YTwn0xsCmZlyS1WSPhfgLwXuBWxsZwXQGs\n",
580 "TabXAisb2L8kKaNGwv1PgU8Cr6eWzQFGkumRZF6S1GZZx5Z5H/Aiob09P8E6Rcrf0HDI8PDwoel8\n",
581 "Pk8+P9EuJKk/FQoFCoVC5u2zjj50A3AZYTSjI4BB4OvAMkLY7wHmAQ8CJ1ZsWywWq2a+IhVerVf5\n",
582 "JqbJ5mtZpxX76K3j+nvUX5JXVNac2VmbZa4F5gMLgUuAbxPC/l5gVbLOKuDujPtXj6h8P6pD0Urd\n",
583 "oVlD/paqEDcC64ErgF3ARU3av7pU5ftRHYpW6g6d+E20WSYi45tcphNa6yrF2zzSmeOOP8+zZr2B\n",
584 "/ftfQXGqt1nGl3WoycpfKhFYm2++8efZb01Kc/gBSYqQ4S5JETLcJSlChrskRchwl6QIGe6SFCHD\n",
585 "XZIiZLhLUoQMd0mKkOEuRWPAQdx0iMMPSNEoH5LA4Qj6mzV3SYqQ4S5JETLcJSlChrskRchwl6Jl\n",
586 "75l+Zm8ZKVr2nuln1twlKUKGuyRFyHCXpAgZ7pIUIcNdkiJkuEtShAx3SYqQ4a66DA4OlT0YI6k7\n",
587 "+RCT6jI6upf0gzFgwEvdyJq71DccjqCfZA33+cCDwDPA08DHk+VDwEZgO7ABmN1oASU1S2k4gvAJ\n",
588 "38IUq6zhfhD4DeBk4HTgo8BJwGpCuC8GNiXzkqQ2yxrue4DNyfQPgWeB44EVwNpk+VpgZUOlkyRl\n",
589 "0ow29wXAKcDDwBxgJFk+ksxLktqs0XA/Gvg74GpgtOJnpcY9SVKbNdIVcjoh2L8K3J0sGwHmEppt\n",
590 "5gEvVttweHj40HQ+nyefzzdQDEmKT6FQoFAoZN4+ayflHKFN/WXCjdWSm5JlnyXcTJ3N+JuqxWLR\n",
591 "Cn03GhwcqtKDYjrh/nlaZT/3yeZrWacZ23jcLPvwd7F3JA8N1pzZWcP9DOCfgCcZu1rWAI8A64E3\n",
592 "A7uAi4B9Fdsa7l0qXDzdEDoe13BXpXaFeyMM9y5luPfbcQ33XlJvuPuEqiRFyHCX+lb5cAQOSRAX\n",
593 "Bw6T+lZpOIIxo6MOBBcLa+6SFCHDXZIiZLhLUoQMd0mKkOEuSREy3CUpQoZ7H/Nl11K87Ofex3zZ\n",
594 "tRQva+6SFCHDvY/YDKOpVQ5JMMPhCXqUzTJ9xGYYTa1ySILykSQdnqB3WHOXpAgZ7pIUIcM9EpXt\n",
595 "6baPSv3NNvdIjG9Pt31U6mfW3KM2YO8YNZkv+OgV1tyjVq3ng9QIX/DRK6y5S1KEDHdJipDhLkkR\n",
596 "MtwlKUKGexeo7KNeS+8Dx4lR9xiw90wXMty7wFgf9fAJ8/VtI3VOqQdN9es3S+WlFq3abyw6UeUr\n",
597 "FouGUVqoeZd3WZzqHFXbZnzIT7VOt+7D4/bOPqqvk75+s1zftWjVfrtV8g295sy2n7ukJhuwqbAL\n",
598 "tKJZZjmwDXgOuKYF+5fU1cqbadQZzQ73acCfEwJ+CXApcFKTj9EHxj/iXfnShDGFThVSqkGhyrKp\n",
599 "r++p5/1mMJVmN8ucCuwAdiXzdwIXAM82+Tg96/77v8n992+YYq3xj3hXb/uE8MuTb0rZpOYrVFlW\n",
600 "6/VdS1u/JtLscD8eeD41vxs4rcnH6Gm33HIH99zzOvCuZMljnSyOpEg1O9xtYJvC9OmHceSRTzN9\n",
601 "+n4ADh7czYEDHS6UpOg0O9xfAOan5ucTau9pO3O53KImH7fnHDiwuWJJ5VfMal85J1rndzNs04zj\n",
602 "tnIfHrd39tE9x428LX5nJw8+kBRgATAD2Iw3VCUpCu8Bvku4sbqmw2WRJEmSVK/3A88APwKWVvxs\n",
603 "DeGhp23A+W0uVwyGCfc2nkg+yztamt7kw3fNtQt4knA9PtLZovSk24AR4KnUsiFgI7Ad2ADM7kC5\n",
604 "qjoRWAw8SHm4LyG0zU8ntNXvwAHN6nU98JudLkQPm0a47hYQrkPvFTXuPwhhpGzOBE6hPNxvAj6V\n",
605 "TF8D3DjZDtoZotsIf3EqXQCsAw4S/trvIDwMpfpE3U2gxdIP3x1k7OE7NcZrMrvvAJXDw64A1ibT\n",
606 "a4GVk+2gG2rIx1HeXXI34WEo1edjwBbgy3TR17UeUe3hO6/BxhSBBwhP6V3Z4bLEYg6hqYbk3zmT\n",
607 "rdzsfu4bgblVll8L3FfHfnwYaryJzu11wM3A7yXzvw98DriiTeWKgddb8/0s8H3gTYRrdxuhNqrm\n",
608 "mHJUtmaH+3kZtql88OmEZJnK1Xpub6W+P6Sq7eE71ef7yb8vAXcRmr4M98aMECp4e4B5wIuTrdyp\n",
609 "Zpl0W9y9wCWEh54WAm/Du+v1mpeavpDymzCa2mOE624B4Tq8mHBdKpuZwKxk+ihCDzivycbdC6xK\n",
610 "plcBd3ewLGUuJLRrHiD85flm6mfXEm5obQN+of1F63m3E7qdbSH8D5+0LU5V+fBd8ywk9DjaDDyN\n",
611 "5zOLdcD3gFcJuflBQu+jB+jCrpCSJEmSJEmSJEmSJEmSJEmSJEmS+tD/AzUxDUJku6WfAAAAAElF\n",
612 "TkSuQmCC\n"
637 "iVBORw0KGgoAAAANSUhEUgAAAlYAAAGLCAYAAAAF7dxzAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\n",
638 "AAALEgAACxIB0t1+/AAAG4FJREFUeJzt3X+U5lddH/D3d3chu0LiJi64MQhTMLrGqlXEBAmuTEAK\n",
639 "2FbbeE8PJHaptU2PHEUieDiJP6qbkkD80UqhUquLgVBveqqhcsrRZN2EenRtI8gBE7M2XYGVCWV3\n",
640 "3QWyzpLNt388z8TJMDObmb3zzDwzr9c5c3a+3/v9Ps8nz+7OvnPv/d7b9X0fAADO3abVLgAAYL0Q\n",
641 "rAAAGhGsAAAaEawAABoRrAAAGhGsAAAaEawAABoRrAAAGhGsYJ3pum7r8Neu67rJ1a5nLei67sKu\n",
642 "616w2nUA659gBetE13Xf1nXdnyY53nXdtiRvTPIXI3rvr+667le6rvvhrut+teu6iVG87zx1PK/r\n",
643 "upu7rvt3Xdf9Xtd1z0+Svu+PJ3l513Vfsxp1PRkL1T6rfcHPeLltwAro+96XL19j8pXkfyd5+Tzn\n",
644 "Nyf57ST/Ism3JnlBkteNsK4DSa4cfn9Fkj9chc9mU5J3JOmGx9cmOZpkx/D4qUnet9q/h8up/Wyf\n",
645 "8XLbfPny1f5LjxWMia7rdiT5liRXz9P8kiTv6Pv+V/u+/5Mkb0jy6yOq62uTfHPf9/8zSfq+/6Mk\n",
646 "X9d13XNG8f6zXJrkO5J81fD4fUmeluR7h3WdTvJA13UvWuoLd113Xtd1P9l13ZGu6+7vuq6b1fbq\n",
647 "ruse6Lruv3dd930rUfsin/Gzl9k26t8b2DAEKxgflyV5d5J/0nXdU+e0vSTJ7ydJ13UXJXlK3/df\n",
648 "GFFd35Tkk3POfSqDoDBKn0/yrCQXJ0nf948Oz10465oPJHn1Ul+47/vpJG9NcluSSzIMPMO225O8\n",
649 "u+/7f9D3/W+tUO0LfcYvWmbbqH9vYMPYstoFAE/a85P8ZJJXJXllBkN/M87r+/6Lw+9fkuTDI6zr\n",
650 "mUlOzTn3SJKvHGEN6fv+SJIdM8dd1311kouS/OGsy/40yQuX+RYvTnJnBkOKb0wyO0Q9tszXTPKk\n",
651 "al/oM96Z5G+W0TbS3xvYSAQrGB8X9n1/pOu62zOYg/PbSdJ13dcn+bNZ131Dkj+fe3PXdT+Q5Ov6\n",
652 "vr9hePxDSXb2ff9zs67ZnuQXknRz75/jF/u+/+hMXUlOz2k/neT8hW7uuu4Hk/xIBj00O4b1nk7y\n",
653 "sr7vP3MOtcz2w0k+MDMMliR933+x67ptXddt7vv+zFled64XJLk5gx6f/9N13Yv7vv9Q13W7Mufz\n",
654 "XoHaF/uMty2zDVgBghWMgeESCjP/QP5Gkj/quu4r+75/OMl3J6mzLt+R5I/neZl/PLx3xvcnefvs\n",
655 "C/q+/+sk/3yJ5X1unnNfluTYfBd3XfdTSZ6RwST7LoNemdf1fX+wQS0z7/F3k7w8yVXzNM8MsX12\n",
656 "iS+7ue/7Psknu657X5I3JflQBj2E75194QrUvthnPF94ezJtwAowxwrGw1VJ7k2Svu8/nOSBJNcN\n",
657 "257V9/2nZ1371CSPzr6567rNSa5McvfweGsGT4j9foPaPp3k6XPOPS3Jw3MvHPauXZPkR/u+PzOc\n",
658 "S3Q4SbPJ1F3XnZ9Bz9Ir+76fL0CczhJ/9nVd95VJpmadeluSV3Rdd1kGPYknl1vvnPdZqPaFPuOp\n",
659 "4ddS277k9wZoQ48VjIfdfd+/adbxO5L8267r3pkvHeo5mmT7nHPPT/JQ3/cnhscvTvKxJF/ouu6i\n",
660 "mX/Eu667MMnPZ2lDWH+UwcTrDF9jSwZB6WPz3PeqJL/b9/1js659QZIfm3vhMmtJBsHkdX3ff3r4\n",
661 "9N4/7fv+fbPavzyDz2gprkryuzMHfd9/rOu6Dya5Mcl9I6h9sc/4C8tsA1aAYAVrVNd1F2QQRB5K\n",
662 "8ldzmn8tyU9kMIH65+e0fTKDyc6zvXT4OjNenUEP2OTwtY8ljy+kuaQhrL7vP9l13f/tuu7y4XDe\n",
663 "y5L8Sd/3Dwz/O74tyQV93+9P8v8yfPJt6IeT/Me+7z81z+suuZau696UwRyoXcO5T8/OoLdnzkv/\n",
664 "7fyqOfUt5LnDp/9me2sGa0T98krX/iQ+42W1Ae0JVrB2vTCDuTuHMli/6nHDSdg/muTWDIf3Zrk3\n",
665 "yY/POXdVkjNd1+1J8pQk+4fnvrbv+7sa1PoDSW7suu6KDHrHXjOr7dUZBLi/l8FyBW8ZTpx/epLP\n",
666 "9n1/W4P3nxlmvCmDxVJn9BlM5p+5ZiLJx+fcOru+ua/5rRkMuf6jrus29X3/s4+/cN/f23Xd/0hy\n",
667 "cO59K1F7Fv+Ml9sGNDazyi+wBg0XeHx41hDek73vrr7vXzr8fmuSIxk8AfjFxe9cGV3X/WDf9/95\n",
668 "Nd57Th0/kOSxvu/fM+f8mqgPGH+L9liVUrYnuT3JPbXWW0opV2QwafOxDIYVfqjW+mgp5W0ZTITd\n",
669 "lOQNtdZz/j84IOn7/sFl3lq7rntZ3/e/l8Gk9Y+sVqga+vJVfO/ZXpHBUhVzrZX6gDF3tidjbs5g\n",
670 "peIZJcn31lp3Z/B/wC8ppbw8yWO11hdnsGjhW1ekUmApfi3J93ZdtynJN+aJi4mOVNd1r0rSYrjx\n",
671 "XOv4+0neP3wScfb5NVEfsD4sGqxqrddl1tMjtdY31FpnnqZ5eobhKsl7hu0nkny8lGIfKlhFw/Cw\n",
672 "N8k/6/v+F/u+/5IJ1iOs5QMLLII5MsOn9P7OnKcDk6yN+oD1Y1nrWJVSXpvkkVrrn2Ww7cLsR5c/\n",
673 "OzwHrKK+7z/d9/1INmJe6/q+P973/TtXuw5g/VvyU4GllH+d5Nm11jcPTx3LYKXnmcfBd2SRNWLu\n",
674 "vvtus+UBgLFx1VVXnW1NusctKViVUt6Q5OmzQlUyeNT7NUk+Opzsflmt9ROtCmRjK6X8TK31Z1a7\n",
675 "DtY+f1ZYCn9eeLKW2iH0ZINVX0q5IMnPJTlYSnnJ8PzP11p/p5Ty0lLKhzIYWnz9UgoAAFgvzhqs\n",
676 "aq33JLlnePi0Ba75iZZFAQCMI5swAwA0IlgBADQiWLHWHVjtAhgbB1a7AMbKgdUugPVp5HsF3n33\n",
677 "3b2nAgGAcbDU3KLHCgCgEcEKAKARwQoAoBHBCgCgEcEKAKARwQoAoJElbcIMsFQHDx3ZN3VyemK+\n",
678 "tp0XnHf48ksv2TPaigBWjmAFrKipk9MTe/cf3j1f242TEyOuBmBlGQoEAGhEsAIAaESwAgBoRLAC\n",
679 "AGhEsAIAaESwAgBoRLACAGhEsAIAaESwAgBoRLACAGhEsAIAaESwAgBoRLACAGhEsAIAaESwAgBo\n",
680 "RLACAGhEsAIAaESwAgBoRLACAGhEsAIAaESwAgBoRLACAGhEsAIAaESwAgBoRLACAGhEsAIAaESw\n",
681 "AgBoRLACAGhEsAIAaESwAgBoZMtqFwCwEg4eOrJv6uT0xHxtOy847/Dll16yZyXuBTY2wQpYl6ZO\n",
682 "Tk/s3X9493xtN05OrNi9wMZmKBAAoBHBCgCgEcEKAKARwQoAoBGT14GxtNiTe0myeVO3a4TlACQ5\n",
683 "S7AqpWxPcnuSe2qtt5RSLkvyriRnkjyQ5Lpaa19KeVuSKzLoAXtDrfXgCtcNbHCLPbmXJDdMTpwY\n",
684 "ZT0AydmHAm9O8oFZx7cmubrWujvJg0muKaW8PMljtdYXJ3llkreuSKUAAGvcoj1WtdbrSim7k1xR\n",
685 "StmW5JFa69Sw+bYktyR5OMl7htefKKV8vJTynFrrX65k4QCrYfu2LbvuvO+hAwu1W0AUNralzLG6\n",
686 "MMmxWcefTXJRki8mOTrPecEKWHeOn3p0602LDEFaQBQ2tqUEq+MZBKYZz8ggaB1LsiPJXw3P78gT\n",
687 "gxbAvPT+AOvNkw5WtdZTpZRtpZSLa62fTnJtkruSfCbJa5J8dDjZ/bJa6ydWplxgPdH7A6w3TzZY\n",
688 "9cNfr09yRynlTJL7a623Jkkp5aWllA9lMBn+9e3LBABY+84arGqt9yS5Z/j9A0munOean2hfGgDA\n",
689 "eLHyOgBAI4IVAEAjtrQBaGixJx095Qjrn2AF0NBiTzp6yhHWP0OBAACNCFYAAI0IVgAAjQhWAACN\n",
690 "CFYAAI0IVgAAjQhWAACNCFYAAI0IVgAAjQhWAACN2NIG2HAW288vSTZv6naNsJzHHTx0ZN/UyemJ\n",
691 "+drsMwjjQbACNpzF9vNLkhsmJ06Msp4ZUyenJ/baZxDGmqFAAIBGBCsAgEYEKwCARgQrAIBGBCsA\n",
692 "gEYEKwCARiy3AKxZi603tVprTQEsRrAC1qzF1ptarbWmABZjKBAAoBHBCgCgEcEKAKARwQoAoBHB\n",
693 "CgCgEcEKAKARwQoAoBHrWAHn7OChI/umTk5PzNdmIU9gIxGsgHM2dXJ6Yq+FPAEMBQIAtCJYAQA0\n",
694 "IlgBADQiWAEANCJYAQA0IlgBADQiWAEANCJYAQA0IlgBADQiWAEANCJYAQA0IlgBADQiWAEANCJY\n",
695 "AQA0IlgBADSyZbULANaGg4eO7Js6OT0xX9vOC847fPmll+wZbUUA40ewApIkUyenJ/buP7x7vrYb\n",
696 "JydGXA3AeFpysCqlbE3y7iTPSLI5yU1JPpXkXUnOJHkgyXW11r5hnQAAa95y5lg9N8nxWutkktcm\n",
697 "eU2SW5NcXWvdneTBJNe0KxEAYDwsOVjVWv8sybZSyv1J7k1yc5JHaq1Tw0tuSzLZrkQAgPGw5GBV\n",
698 "SnlRki/UWr8+yXcn+fdJjs665GiSi9qUBwAwPpYzFPiiJHckj/deJclXzGrfkeTYOdYFADB2lhOs\n",
699 "HkjyXUlSSrk4gwnrW4ffJ8m1Se5qUh0AwBhZzhyr9ye5sJRyT5Lbk7wxyY8nuWN47mtqre9tWyYA\n",
700 "wNq3rHWsaq0/Ms/pK8+xFgCAsWZLGwCARgQrAIBGBCsAgEYEKwCARgQrAIBGBCsAgEYEKwCARpa1\n",
701 "jhWwsWzftmXXnfc9dGCh9s2bul0jLAdgzRKsgLM6furRrTftP7x7ofYbJidOjLIegLXKUCAAQCOC\n",
702 "FQBAI4IVAEAjghUAQCMmrwOMiKcrYf0TrABGxNOVsP4ZCgQAaESwAgBoRLACAGhEsAIAaESwAgBo\n",
703 "RLACAGhEsAIAaESwAgBoRLACAGhEsAIAaESwAgBoRLACAGhEsAIAaGTLahcAjMbBQ0f2TZ2cnlio\n",
704 "ffOmbtcIywFYlwQr2CCmTk5P7N1/ePdC7TdMTpwYZT0A65GhQACARgQrAIBGBCsAgEYEKwCARgQr\n",
705 "AIBGBCsAgEYEKwCARgQrAIBGBCsAgEYEKwCARgQrAIBGBCsAgEZswgxj5OChI/umTk5PLNS+84Lz\n",
706 "Dl9+6SV7RlcRALMJVjBGpk5OT+zdf3j3Qu03Tk6MsBoA5jIUCADQiGAFANCIYAUA0IhgBQDQiGAF\n",
707 "ANDIsp8KLKV8T5KvrbX+QinlsiTvSnImyQNJrqu19o1qBAAYC8vqsSqlPD3JC2utvzA8dWuSq2ut\n",
708 "u5M8mOSaRvUBAIyN5fZY7U1yaSnlvyb56SSP1Fqnhm23Jbll+CsAwIax5B6rUsqlSTbXWl+V5HVJ\n",
709 "3p7k6KxLjia5qE15AADjYzlDga9I8t+SZNhL9dkkXzGrfUeSY+deGgDAeFlOsDqaZDJJSinnJ9mZ\n",
710 "ZGsp5eJh+7VJ7mpTHgDA+FjOHKv/kuSdpZR7h8dvzqDX6o5Sypkk99dab21VIADAuFhysKq1nkny\n",
711 "L+dpuvLcywEAGF8WCAUAaESwAgBoRLACAGhEsAIAaESwAgBoZNmbMAOwdhw8dGTf1Mnpifnadl5w\n",
712 "3uHLL71kz2grgo1JsAJYB6ZOTk/s3X9493xtN05OjLga2LgMBQIANCJYAQA0IlgBADQiWAEANCJY\n",
713 "AQA0IlgBADQiWAEANCJYAQA0IlgBADRi5XVYR7Zv27LrzvseOjBf2+ZN3a4RlwOw4QhWsI4cP/Xo\n",
714 "1psW2NbkhsmJE6OuB2CjMRQIANCIYAUA0IhgBQDQiGAFANCIYAUA0IhgBQDQiGAFANCIdawAxsBi\n",
715 "i78mFoCFtUKwAhgDiy3+mlgAFtYKQ4EAAI0IVgAAjQhWAACNCFYAAI0IVgAAjQhWAACNCFYAAI0I\n",
716 "VgAAjQhWAACNCFYAAI0IVgAAjQhWAACNCFYAAI0IVgAAjQhWAACNCFYAAI0IVgAAjQhWAACNCFYA\n",
717 "AI0IVgAAjQhWAACNCFYAAI0IVgAAjWxZ7o2llOckuTfJ9yf5fJJ3JTmT5IEk19Va+yYVAgCMiWUF\n",
718 "q1LKpiRvTnJ7ki7JrUmurrVOlVKuT3JNktuaVQnryMFDR/ZNnZyeWKh95wXnHb780kv2jK4iAFpZ\n",
719 "bo/V9Ul+Jck/zGA48ZFa69Sw7bYkt0SwgnlNnZye2Lv/8O6F2m+cnBhhNQC0tOQ5VqWUb0/S1Vo/\n",
720 "POs1js265GiSixrUBgAwVpbTYzWZ5DtKKS9MsivJq5J8Ylb7jjwxaAGwirZv27LrzvseOrBQu+Fn\n",
721 "aGfJwarWevPM96WUn07ywSQ/VUq5uNb66STXJrmrXYkAnIvjpx7depPhZxiJZT8VOMf1Se4opZxJ\n",
722 "cn+t9dZGrwsAMDbOKVjVWv/NrMMrz7EWAICxZoFQAIBGBCsAgEYEKwCARgQrAIBGBCsAgEYEKwCA\n",
723 "RgQrAIBGBCsAgEYEKwCARgQrAIBGWu0VCDSyfduWXXfe99CB+do2b+p2jbgcAJZAsII15vipR7fe\n",
724 "tP/w7vnabpicODHqegB48gwFAgA0IlgBADQiWAEANCJYAQA0IlgBADQiWAEANCJYAQA0IlgBADQi\n",
725 "WAEANCJYAQA0YksbgA1usf0pd15w3uHLL71kz2grgvElWAFscIvtT3nj5MSIq4HxZigQAKARPVYA\n",
726 "LNvBQ0f2TZ2cnpivzTAiG5FgBcCyTZ2cnthrGBEeJ1jBCljs/+I3b+p2jbgcAEZEsIIVsNj/xd8w\n",
727 "OXFi1PUAMBomrwMANCJYAQA0IlgBADQiWAEANCJYAQA0IlgBADQiWAEANCJYAQA0IlgBADQiWAEA\n",
728 "NGJLGwAWtH3bll133vfQgYXa7X0JTyRYAbCg46ce3XrTAvteJva+hLkMBQIANCJYAQA0IlgBADQi\n",
729 "WAEANCJYAQA0IlgBADQiWAEANCJYAQA0suQFQkspm5L8hyTfkEEw+8kkDyd5V5IzSR5Icl2ttW9Y\n",
730 "JwDAmrecHqtvSvJgrfU7k7wqyZuT3Jrk6lrr7iQPJrmmXYkAAONhyT1WtdaPJPnI8PDLkvx1kq7W\n",
731 "OjU8d1uSW4a/AgBsGMueY1VKuSjJf0ryS0mOz2o6muSic6wLAGDsLCtYlVKemeQ3kvxYkg/niUFq\n",
732 "R5Jj514aAMB4WXKwKqV8VZJ9SV5Xaz1Uaz2VZFsp5eLhJdcmuatdiQAA42HJc6ySXJ/kOUl+vZSS\n",
733 "DHqnrk9yRynlTJL7a623tisRAGA8LGfy+vUZBKm5rjz3cmA8HDx0ZN/UyemJhdo3b+p2jbAcANaI\n",
734 "5fRYwYY3dXJ6Yu/+w7sXar9hcuLEKOsBYG2w8joAQCOCFQBAI4IVAEAjghUAQCMmr7Nhne3Jvp0X\n",
735 "nHf48ksv2TO6imBjWezvoL9/jCvBig3rbE/23Tg5McJqYONZ7O+gv3+MK0OBAACNCFYAAI0IVgAA\n",
736 "jQhWAACNmLwOC9i+bcuuO+976MB8bfYCBGA+ghUs4PipR7fetMATS/YCBGA+hgIBABrRYwXAilhs\n",
737 "OD0xpM76JFgBsCIWG05PDKmzPglWAIwV21GxlglWAIwV21Gxlpm8DgDQiGAFANCIYAUA0IhgBQDQ\n",
738 "iMnrjLWzPh10/lOfNfW505+ar80aOgC0Jlgx1s72dNANkxMnbtp/+HkLta1cZQBsRIYCAQAaEawA\n",
739 "ABoRrAAAGhGsAAAaEawAABoRrAAAGhGsAAAaEawAABoRrAAAGhGsAAAasaUNAGvO9m1bdt1530MH\n",
740 "5muzzydrmWAFwJpz/NSjW29aYB9Q+3yylhkKBABoRLACAGhEsAIAaESwAgBoRLACAGhEsAIAaMRy\n",
741 "C4zEwUNH9k2dnJ6Yr23nBecdvvzSS/aMtiJgI1rsZ1Gy+M+jc7mXjUOwYiSmTk5P7F1gTZobJydG\n",
742 "XA2wUS32syhZ/OfRudzLxmEoEACgET1WrHmLdb/b2gKYy3Y4rCbBijVvse53W1sAc9kOh9VkKBAA\n",
743 "oBE9Vqy6xbrt/+bUI9uf9rSn7RxxScAGdS7DiIvd64nBjUOwYtUt1m2f6LoHRudchhEXu9cTgxtH\n",
744 "02BVSnlbkisyGGJ8Q631YMvX59wcP378/Ic/d/r7Huv7br7287ZsOvq8S575O6OuCwDWi2bBqpTy\n",
745 "8iSP1VpfXEr58iTvT7JgLwSr4qs++ODRt//B4b8+f77GPc+/+CPPuyQLBquzLo53/lOfNfW505+a\n",
746 "r82TOMBGttgwYWJh0vWkZY/VS5K8J0lqrSdKKR8vpTyn1vqXDd+Dc/SZz58+c/j438zb9sgXHzu9\n",
747 "2L1nWxzvhsmJEzftP/y8hdqWVCjAOnK2KQ8WJl0/Wgari5IcnXX82eE5wWoN+a7nXnhq5/lP/fx8\n",
748 "bc++cOtTRl0PAKwnXd/3TV6olHJzkttrrR8dHr8jyc211k/Mvu7uu+9u84YAACNw1VVXzTs3eT4t\n",
749 "e6zuTvKaJB8tpWxPctncULXU4gAAxkmzBUJrrb+XJKWUDyX5QJI3tnptAIBx0GwoEABgo7OlDQBA\n",
750 "I4IVAEAjghUAQCMj3SuwlPKdSX4zyTfXWj8zPPf6JN+fQch7S631/aOsibWvlLIng4chPjM89fpa\n",
751 "65+uXkWsNbbTYilKKceSzPwM+WCt9ZbVrIe1Zbiywe1J7qm13lJKuSzJu5KcSfJAkutqrQtOUB9Z\n",
752 "sCqlfHWS1ybZn6QbntuV5Ipa64tKKVuS7C+l/G6tdf6lwdmo+iQ/W2v9zdUuhLXHdlosw8Fa6ytW\n",
753 "uwjWrJszWN3g6cPjW5NcXWudKqVcn+SaJLctdPPIhgJrrZ+stb42yekM/qFMku9K8t5h+6NJfifJ\n",
754 "5aOqibHy46WUPy6l3LrahbDmPGE7rSQfL6U8Z3VLYo37xlLKvaWUu0spz1rtYlhbaq3XJflYkpRS\n",
755 "tiV5pNY6NWy+LcnkYvc377EqpXxdkl+ac/rhWuueeS6/KMlHZx3PbIPDBrTQn50k/6rW+u7hNb9c\n",
756 "SnnZzLppENtpsXTPrbWeLqV8e5K3JLl2tQtizbowybFZx0dzlpzSPFjVWv88yZPtYj2WZMes42ck\n",
757 "+YvWNTEenuSfnd9K8i1JBCtmzPwc+avh8Y48MWjBE9RaTw9//eNSyo6zXc+GdjxPDFI78sSg9SVW\n",
758 "66nAmW1t9id5dZKUUp6S5JVJTDrlCUopbyqlPHN4+D1J7lvNelhzZrbTmpl0Ou92WpAkpZTLSylX\n",
759 "D7//1vxtIIcvUWs9lWRbKeXi4alrk9y12D2rFaz6JKm1PpjkD0spf5Dk3iRvq7VOr1JNrF3/K8n7\n",
760 "Syn3JDlWaz2wyvWwhthOiyW6P8m1pZQDSW5M8ubVLYc1bGY++PVJ7hj+G/Q1tdb3LnaTLW0AABqx\n",
761 "QCgAQCOCFQBAI4IVAEAjghUAQCOCFQBAI4IVAEAjghUAQCOCFQBAI4IVAEAj/x8Ld0kx4zM3zgAA\n",
762 "AABJRU5ErkJggg==\n"
613 763 ],
614 764 "text/latex": [
615 765 "$\\mathcal{N}(\\mu=0, \\sigma=2),\\ N=2000$"
616 766 ],
617 767 "text/plain": [
618 "<__main__.Gaussian at 0x106e9ce90>"
768 "<__main__.Gaussian at 0x106ab8c18>"
619 769 ]
620 770 },
621 771 "execution_count": 7,
622 772 "metadata": {},
623 773 "output_type": "execute_result"
624 774 }
625 775 ],
626 776 "source": [
627 777 "x2 = Gaussian(0, 2, 2000)\n",
628 778 "x2"
629 779 ]
630 780 },
631 781 {
632 782 "cell_type": "markdown",
633 783 "metadata": {},
634 784 "source": [
635 785 "You can then compare the two Gaussians by displaying their histograms:"
636 786 ]
637 787 },
638 788 {
639 789 "cell_type": "code",
640 790 "execution_count": 8,
641 791 "metadata": {
642 792 "collapsed": false
643 793 },
644 794 "outputs": [
645 795 {
646 796 "data": {
647 797 "image/png": [
648 "iVBORw0KGgoAAAANSUhEUgAAAXIAAAENCAYAAAASUO4dAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\n",
649 "AAALEgAACxIB0t1+/AAAElNJREFUeJzt3X+wXGV9x/H3JpefITfhCr1JSyCIRH5UJbQgrVhXChas\n",
650 "DXE6onbaBoownRG0tVUSOg63vxQY+8tRoVOQuTIOSq3QQGtNiGyr1SK0IfxqTBNNB2zuhUJoLogk\n",
651 "kO0fz9ncvZu9956z9+yefXbfr5mdPefZs7tPbnY/++z3POcsSJIkSZIkSZIkSZIkSZIkSZIkSZJ6\n",
652 "1olFd6DNlgJHFt0JKYt5RXdAXe8sYAtwEyHEzym2O233DPCxojshZVEqugPqGjcD/wrc3tB+E/BV\n",
653 "4EFgHXBNm57/1wij4bOBu4Avtel5Gp0B/Drw+3VtZwGnAl/oUB+m06xvq4HTgP3AD5n8/8raLqkH\n",
654 "fQf424a204GLkuU3AVe36blfV/fYxwC76UwJ5yOED6nbmtyWJcTfTPjweQoYSNqGCR9G9wI/n1Pf\n",
655 "FgH/Xrf+HeA1GduPaaEv6nKWVgQwH7gPOA84vK69DHwjWX5X3XLeTmeynPG/wHbgZ9r0XPX+HPj7\n",
656 "aW57hvABk8YDwD8B24BfTdrGCSH+HuDbOfXtF4An6ta3EP7PsrS/vYW+qMsNzL6J+sDpwCbCV/mL\n",
657 "CKNLgCOAl5Pls4BPZHzc1wJXzHD7vxHC6h+ZHPmXCCWW7RmfK+tz1kxXXtxC+DBJ0495wD7g08BH\n",
658 "gS8n7QuAl3Ls23HA83XrzwMnA89lbFePMcgFoS59O6EU8H5CkB8G7K3b5kigWrc+H/hn4Nxk/Vbg\n",
659 "k0wNvu8T6uqz2Qc8liz/MvAQ8PA0264A/gQ4FvhZoAL8A6HGn+U5a6rTtO9OniuNMwl9fowwkj4T\n",
660 "+I8mjz3Xvi0Gfly3vhc4KtkuS7t6jKUVQXhzvwysB94B/AQh3B+o22Z+w31+DvjvZLmUrLc6iq5Z\n",
661 "DFxK2MHXzBAhsH+TUCLYlGx78zTbpzHdiPwl4NCUj/FG4BHCDsXPEer9rwe+N4d+NevbREPbEYRR\n",
662 "d9Z29RhH5FoE/ChZniDUeq8CngU+W7fdKw33uxD4erK8Eni0yWNnKSWUgLXAB4AXgBOY/KCo+WDS\n",
663 "p9oo87C6vrfynDD9iHwR6UOvfkB0C+ED7Qngr3Lu2w7Ct5Ca1xBG/s+nbD8maZfUI44izET5babO\n",
664 "ZDgT+D8OroePMvVr+YPATyfLHweuBFbNoT8fItSklxC+DbwtaT+ZyaC8kTAtEEJd/1NzeL6aS2k+\n",
665 "a+Uq4Bfr1uv7Ue8QwjeEejcT6v55920BUz8wtxC+PWVtV49p/Lqs/lEGvkUoCdxb174LeAOwmamj\n",
666 "tyFCMPyAUJ9eRxjxLSSURBYBOwl14KzOJdTnrwR+D7ic8OEwQZjbvr3u8k7CTr8zCDX5/S08X81V\n",
667 "hNLMm5J/w2Ymd+5eCfw1k99E6vtRcxZh1H08oQw1kbR/n1DG+FbOfXshuawi/P/dSxjF78vYrj61\n",
668 "GPgK8J+Er4xvJryxNxKmXG1ItlFchjNsu5iwkxFCwPxp/t1p6lDgrR16rprDCTsti+6HlKtR4LeS\n",
669 "5QHC6OtGJuf+XgNcX0C/1Fm/QyjDfJrOzPMGeC+d/+Z4KWFnZdH9kHKziOZfl7cyOaJbkqyrt5WY\n",
670 "eWddL1gGXFx0J6S8nUGo/91GqJn+DaFWurtum1LDuiSpQ9LMIx8gzGT4XHL9ImGaWL0q00/jkiS1\n",
671 "UZp55E8llweT9a8QZiyMEUoqY4RDqp9uvONJJ51U3bFjRz49laT+sYP05/pJNSIfA55k8nDl84HH\n",
672 "gXuANUnbGuDug3qyYwfVatVLDpfrrruu8D700sW/p3/Pbr4AJ6UNcUh/ZOfVwBcJU7B2AJcR9uDf\n",
673 "SZjzuxO4JMsTS5LykTbItxAOfmh0fo59kSS1wJNmRaJcLhfdhZ7i3zNf/j2L1e6feqsm9R5JUkql\n",
674 "Ugky5LMjckmKnEEuSZEzyCUpcga5JEXOIJekyBnkUocMDg5RKpUYHBwquivqMU4/lDokTCmrAiV8\n",
675 "X2gmTj+UpD5jkEsdN0CpVLLMotxYWpE6pL60Mnn6fsssOpilFUnqMwa5JEXOIJe6iFMU1Qpr5FKH\n",
676 "pKmRO0VRYI1ckvqOQS5JkTPIJSlyBrkkRc4gl6TIGeSSFDmDXGoT54SrU5xHLrVJ45xw55ErLeeR\n",
677 "S1KfMcglKXIGuSRFziCXpMgNpNxuJ7AHeBXYB5wNDAFfBk5Ibr8EeD73HkqSZpR2RF4FysBKQogD\n",
678 "rAU2AiuATcm6JKnDspRWGqfCrAJGk+VRYHUuPZIkZZJlRH4f8BBwRdI2DIwny+PJuiSpw9LWyN8C\n",
679 "7AKOJZRTtjbcXmXyCAdJUgelDfJdyfUzwF2EOvk4sAQYA5YCTze748jIyIHlcrlMuVxuradSTxqg\n",
680 "VCqxcOHR7NnzXNGdUUEqlQqVSqXl+6c5BPRIYD4wASwANgB/CJwPPAvcQNjRuZiDd3h6iL76VtpD\n",
681 "9KfbxvdO/8p6iH6aEfkwYRRe2/6LhDB/CLgTuJzJ6YeSpA7zpFlSmzgiV6s8aZYk9RmDXJIiZ5BL\n",
682 "UuQMcqmL+StDSsOdnVKb5LGz052f/cmdnZLUZwxySYqcQS5JkTPIJSlyBrkkRc4gl6TIGeSSFDmD\n",
683 "XJIiZ5BLUuQMcmmO2nMY/UDt6D5pVh6iL83RdIfRz/UQ/cZr30v9w0P0JanPGOSSFDmDXJIiZ5BL\n",
684 "UuQMckmKnEEuSZEzyCUpcga5JEXOIJekyBnkkhQ5g1ySImeQS1LkDHJJilzaIJ8PbAbuSdaHgI3A\n",
685 "NmADsDj/rkm9wlPSqr3SBvmHgSeYPPfmWkKQrwA2JeuSmnqFybeOlL80QX4c8E7gFibPj7sKGE2W\n",
686 "R4HV+XdNkpRGmiD/C+CjwP66tmFgPFkeT9YlSQUYmOX2dwFPE+rj5Wm2qTLD98aRkZEDy+VymXJ5\n",
687 "uoeRpP5UqVSoVCot33+2PTCfAH6DUOQ7HBgEvgqcRQj2MWApcD9wSpP7+1Nv6nlpfuqt+TX4U29q\n",
688 "Ju+fersWWAacCLwP+AYh2NcDa5Jt1gB3Z+2oJCkfWeeR14YE1wMXEKYfnpesS5IK0O7JrZZW1POK\n",
689 "KK0MDg4xMbEbgIULj2bPnufa+C9Up2UtrRjk0hwVEeST23HQbYpf3jVySVKXm236oaSOmO0w/trt\n",
690 "hwD7OtQnxcIgl7pC7TD+6cK8/vaZtlM/srQiSZEzyCUpcga5JEXOIJekyBnkkhQ5g1ySImeQS1Lk\n",
691 "DHJJipxBLkmRM8glKXIGuSRFziCXpMgZ5JIUOYNckiJnkEtS5AxySYqcQS5JkTPIpdyEn2MbHBwq\n",
692 "uiPqM/7Um5Sb8HNsExP+DJs6yxG5JEXOIJekyBnkUvSszfc7a+RS9KzN9ztH5JIUudmC/HDgAeBh\n",
693 "4Angk0n7ELAR2AZsABa3q4OSpJnNFuQ/Bt4OnAG8MVk+F1hLCPIVwKZkXZJUgDSllR8l14cC84Hd\n",
694 "wCpgNGkfBVbn3zVJUhppgnweobQyDtwPPA4MJ+sk18Nt6Z0kaVZpZq3sJ5RWFgFfJ5RX6lWTS1Mj\n",
695 "IyMHlsvlMuVyOWsfpcINDg4xMbGbhQuPZs+e54rujnpMpVKhUqm0fP+s85U+DrwEfAAoA2PAUsJI\n",
696 "/ZQm21er1WkzXopGqVQijFdKNL6m62+r36ZZ+9RrZrgt7fXUx/D91hvCayd9Ps9WWjmGyRkpRwAX\n",
697 "AJuB9cCapH0NcHemXkqScjNbaWUpYWfmvORyO2GWymbgTuByYCdwSfu6KEmaSbsPBbO0op7QrLRS\n",
698 "q5sH3VBaOQR4xTp+D8haWjHIpRSaBflMQV1UjdxaeW/Iu0YuSepyBrkkRc4gl6TIGeSSFDmDXJIi\n",
699 "Z5BLuRuozTqQOsIgl3IXfrFH6hSDXJIiZ5BLUuQMckmKnEEuSZEzyCUpcga5JEXOIJekyBnkkhQ5\n",
700 "g1ySImeQS1LkDHJJipxBLkmRM8glKXIDRXdAiounqFX3cUQuZVI7Ra2nqVX3MMglKXIGuSRFziCX\n",
701 "ZjA4OGRNXF3PIJdmMDGxG+vh6nYGuSRFLk2QLwPuBx4HHgM+lLQPARuBbcAGYHE7OihJmlmaIN8H\n",
702 "/C5wOnAO8EHgVGAtIchXAJuSdUldolbfHxwcKrorarNW9uLcDXwmubwNGAeWABXglIZtq9Wq9UXF\n",
703 "K+zorBLeKvXXNGnLet2+x6hWq1P67vswLskO9tT5nLVGvhxYCTwADBNCnOR6OONjSZJykOUQ/aOA\n",
704 "vwM+DEw03DbtoW4jIyMHlsvlMuVyOVMHJanXVSoVKpVKy/dPO3Q/BLgX+Brwl0nbVqAMjAFLCTtE\n",
705 "La2op1haURHaUVopAbcCTzAZ4gDrgTXJ8hpC7VyS1GFpEv9c4F+AR5gcAqwDvgvcCRwP7AQuAZ5v\n",
706 "uK8jckXNEbmKkHVE3u5jjw1yRc0gVxHaPWtFktRlDHJJipxBLkmRM8ilJjx9rWJikEtNePpaxcQg\n",
707 "l6TIGeSSFDmDXKpjbVwxMsilOtbGFSODXJIiZ5BLPWfA8lCfMcilnvMKlof6i0EuSZEzyCUpcga5\n",
708 "JEXOIJekyBnkkhQ5g1ySImeQS1LkDHJJipxBLkmRM8ilPlM7w+Pg4FDRXVFOBorugKTOqp3hcWLC\n",
709 "87H0CkfkkhQ5g1ySImeQS1LkDHJJipxBLkmRSxPknwfGgUfr2oaAjcA2YAOwOP+uSZLSSBPktwEX\n",
710 "NrStJQT5CmBTsi4pKuEn4ZxTHr80Qf5NYHdD2ypgNFkeBVbn2SlJnVD7SbhqMrdcsWq1Rj5MKLeQ\n",
711 "XA/n0x1JUlZ57Oys4i+9SlJhWj1EfxxYAowBS4Gnp9twZGTkwHK5XKZcLrf4lJJaE2rhCxcezZ49\n",
712 "zxXdGTVRqVSoVCot3z/tyRaWA/cAb0jWbwSeBW4g7OhcTPMdntVq1cG64lEqlQhfMGe7JsU23fcY\n",
713 "1Wq1yb+RA7epO4T/o9T5nKq0cgfwbeD1wJPAZcD1wAWE6YfnJeuSpAK0+/RnjsjVlQYHh5iY2H1Q\n",
714 "ucERubpB1hG5p7FVX/JUruolHqIvSZEzyCUpcga5+kbtJ86S+mMfGujjf3tvM8jVN2p18f49fq12\n",
715 "SL56jUEuSZEzyCUpcga5el6tNq6ZDHg624g5j1w9b7I2bphPL9TPnVcfJ0fkkhQ5g1x9zpKC4mdp\n",
716 "RX3OkoLi54hckiJnkEtS5AxySYqcQS5JkTPIJSlyBrkkRc4glwBP8aqYGeQS4CleFTODXJIiZ5BL\n",
717 "UuQMckmKnEEuSZHzpFmKyq5du3jxxRc57LDDWLZsWdHdkbqCI3JFY//+/Rx//AmsXHkhy5efyNjY\n",
718 "2JTba78E5Clp5yJMwyyVDm167d+2OzkiVzSq1SqvvvoqL7ywnQULjmfv3r1Tbq/9EpCnpJ2L2jTM\n",
719 "UtNr/7bdyRG5JEVurkF+IbAV+C/gmrl3R5KU1VyCfD7wGUKYnwa8Hzg1j07pYJVKpeguRGRqnVd5\n",
720 "mvrTeLX9Es3arKd3zlyC/GxgO7AT2Ad8Cbg4hz6pCYM8i1qddx8edp+32k/j7QYm90vAdQe11dbV\n",
721 "fnMJ8p8CnqxbfyppkyR10FyC3KGOClBlcPBXePnlZ5g3z331EoQ5Ra06Bxgh1MgB1gH7gRvqttkO\n",
722 "nDSH55CkfrQDeF0nnmggebLlwKHAw7izU5KicxHwPcLIe13BfZEkSZIE8B7gceBV4MyG29YRDh7a\n",
723 "Cryjw/3qBSOE2UGbk8uFM26t6XggW752Ao8QXpPfLbYr0fk8MA48Wtc2BGwEtgEbgMUF9ItTgBXA\n",
724 "/UwN8tMIdfRDCHX17XiKgKyuAz5SdCciN5/w2ltOeC26b2fufkAIH2X3VmAlU4P8RuBjyfI1wPWz\n",
725 "PUg7gnQr4ZOk0cXAHYSjNHYS3kxnt+H5e52HKs6NB7K1h6/L1nwTaDxyahUwmiyPAqtne5BOjoh/\n",
726 "klAWqPEAotZcDWwBbqWgr1yR80C2/FWB+4CHgCsK7ksvGCaUW0iuh2e7Q6unsd0ILGnSfi1wT4bH\n",
727 "8aCig033t/0D4Cbgj5L1Pwb+DLi8Q/3qFb7m8vcWYBdwLOH1u5Uw0tTcVUnxmm01yC9o4T4/BOp/\n",
728 "0uW4pE1Tpf3b3kK2D00Fja/DZUz9pqjsdiXXzwB3EcpXBnnrxgmDuTFgKfD0bHdod2mlvm62Hngf\n",
729 "4eChE4GTcQ93Vkvrlt/N1B0kSuchwmtvOeG1+F7Ca1OtORJYmCwvIMxG83U5N+uBNcnyGuDuIjrx\n",
730 "bkIN8iXCJ8rX6m67lrCjaSvwS53vWvS+QJjmtYXwnztr7UxNeSBbfk4kzPx5GHgM/55Z3QH8D7CX\n",
731 "kJuXEWYA3UfB0w8lSZIkSZIkSZIkSZIkSZIkSZIktcn/A4eK9UXawRDUAAAAAElFTkSuQmCC\n"
798 "iVBORw0KGgoAAAANSUhEUgAAAlEAAAGLCAYAAADnMccKAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\n",
799 "AAALEgAACxIB0t1+/AAAGsJJREFUeJzt3X2QndddH/DvsUQs5cXIRoCNA9mGGIR5Dy9KiBMnMmnq\n",
800 "BAbamjOdYIOBafEMGd4MocEGUrAbG1Sgw7sLwWAI5bhT6tC0abCN4rQlSjEhmVAbG1yRRHgTYgsp\n",
801 "xEKOlKd/3LvmeiOvdo/26t6VPp9/ds9znufe32rvaL/znHOeU4ZhCAAAa3PWrAsAANiIhCgAgA5C\n",
802 "FABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghRsIGVUraMv5ZSyq5Z1zMPSinnllK+atZ1AKc/\n",
803 "IQo2oFLKV5ZS3pPkQClla5IfTPIXp+i9P7eUclMp5d+XUv6glPIVp+J9n6KWraWUXy6lvHjp2DAM\n",
804 "B5K8opTyvFnVtRrHq32i77NLKb9SSvmuUsqvllIWTrYPWH9CFMypUsofl1JecZzjm5Jcn+Tnkrwo\n",
805 "yRcleWwYhvefgprOSnJtktcNw/A9SX4zydtKKdun/d7HqeU7k7w+yRVJyrLun0zyE6e6ptU6Qe1J\n",
806 "cluS24Zh+IUkv5rkd9ahD1hnQhTMoXEo+fKM/sgu97IkvzgMw68Ow/AnSb4/ya+fotIuSvI1ST5r\n",
807 "3P6dJM9I8o2n6P2fMAzDrwzD8ENJPnqcvseT3F9KedFaX7eUcnYp5UdKKftLKfeVUspE36tLKfeX\n",
808 "Un6/lPJPp1F7KeXzknzpMAz/c3zuO5N8finlczr7ntNbJ7AyIQrm08VJfiPJPy+lPG1Z38uS/GGS\n",
809 "lFLOS/IpwzB87BTV9XdJnp3kgiQZhuHo+Ni5p+j91+ItSV691ouGYTiS0Z2s25JcmImAOAzDm5L8\n",
810 "xjAMXz8Mw++tV6HLfEmSDyw79sGM7jr29H3NFGoEIkTBvPqKJD+S5ONJXrms7+xhGD4+/v5lSd59\n",
811 "qooahmH/MAzbh2H442Q0ByfJeUn+6FTVsAbvSfLCzmtfnOSOjIbEfnBZ3ydOpqhV+Iwkh5cdeyzJ\n",
812 "+Uk+vaPvM6dQI5Bk86wLAI7r3GEY9pdS3pTkqiT/JUlKKV+Q5P9OnPeFSf58+cWllG9J8vnDMFw3\n",
813 "bv/LJOcPw/ATE+dsS/LTOf6cnEk/MwzDe5+i77uSvGVpCOl4SinfkeS7M7p7tX1c7+NJXj4Mw4fX\n",
814 "sZYnGYbh4+PJ25uGYTi2mmsmfFWSmzK6k/OXpZQXD8PwjlLKjiz7955C7edm9O8z6fEkz0qytbMP\n",
815 "mAIhCubM+LEFS38MfzPJO0spnzkMw4eS/OMkbeL07UnedZyX+Wfja5d8U5KfnzxhGIa/TfLtJ1Hn\n",
816 "FyV5RZLLVjjnRzO6Q/L8jELGHyV5zTAMe9ezlhUsDTV+ZI3XbRqGYUjygVLK7yR5bZJ3ZHTn77cn\n",
817 "T5xC7Z80TyrJ05M8muMHtdX0AVNgOA/mz2VJ7kmSYRjeneT+JNeM+549DMPDE+c+LcnRyYvHq/cu\n",
818 "SXLXuL0lyQsynke1Hkopz8roTs0rh2E47h/p8V2zK5N8zzAMx8bzp/YlOZUTnR/PGv+fK6V8ZpLF\n",
819 "iUM/leTyUsrFGd0hPLSO9R3Pw0meuezYM8Y1LXb0fWgKNQJxJwrm0aXDMLx2ov2LSf5tKeWX8snD\n",
820 "NY8k2bbs2FckeWgYhoPj9ouTvC/Jx0op5y2FnlLKuUn+XfqGoW7K6I7Sw+PVa/9iGIbly+lfleRt\n",
821 "wzB8Yvx+mzMaJvu+5W9wkrWs5FMz+jdai8uSvG2pMQzD+0opb83osRL3Lj95CrW/M6PJ+0uvvzmj\n",
822 "4Pm+JB/r7AOmQIiCOVBKOSej0PFQkr9e1v3GJD+U5Pcy+mM96QMZTUSe9LXj11ny6ozubO0av/aj\n",
823 "yRMPpVzzMFQp5bUZzRXaMZ4j9DkZ3T1JKeUrk5wzDMPdSf4m41V8Y9+V5JeHYfjg8tfsrWWyrKc4\n",
824 "PkzOh1pW31N57ngV3qSfTLIno2dzLX+Dda19GIYPlFL+Xyll53jY8+VJ/mQYhvvHP0NXH7D+hCiY\n",
825 "Dy/MaK7Ngxk9H+oJ4wnS35Nkd8ZDdBPuSfIDy45dluRYKeXqJJ+S5O7xsc8bhuHOkylyPER3Y5JN\n",
826 "kyVmNME9Sb45o3lDX5bRIwLeMJ7U/swkHxmG4baTef9ltXxrksuTfHaSnymlvCPJDyytXBw/rfvP\n",
827 "ll326ozC5Jcd5/Wen9Gw6TeUUs4ahuHHn/gBh+GeUsp/T7J3+XXTqD3JtyS5vpTygozuLH7zxOW9\n",
828 "fcA6K6O5k8CsjR+W+KGJYbjVXnfnMAxfO/5+S5L9Ga3E+/jKV05HKeU7hmH4tVm897I6viXJJ4Zh\n",
829 "+K1lx+eiPmDjW9WdqFrr1yX5vNbaT9daL05yS5JjGU94ba1JYnCShmF4oPPSVkp5+TAMf5DRhPI/\n",
830 "nVWAGvvUGb73pMszejzEcvNSH7DBnXDVSq31mUle2Fr76fGh3UmuaK1dmuSBjFbfALPzxiTfON7X\n",
831 "7oszfqbULJRSXpXkpIYM16mOf5LkzeMVgZPH56I+4PSwmjtRNyS5qNb6n5L8WJLHWmtLy39vS3Lz\n",
832 "+CswA8MwHC2l3JDkW4dh+JkZ1/KWWb5/8sRquX80DMMvLe+bh/qA08eKd6JqrRcl2dRae1WS12T0\n",
833 "sL7J5cKPZLTlAzBDwzA8PAzDqdqEeK4Nw3DgeAEKYL2d6E7U5Un+c5K01hZrrR9J8mkT/duzwtNw\n",
834 "77rrLnOlAIAN47LLLjvRM9+ecKIQ9UhGy4H/sNb6rIw2uTxYa72gtfZwRpM2V5xfsJZiOLPVWl/f\n",
835 "Wnv9rOtg/vmssBY+L6zWWm/+nChE/cckv1RrvWfcfl1Ge1DdXms9luS+1trutZcJALCxrRiiWmvH\n",
836 "kvyr43RdMp1yAAA2BhsQAwB0EKIAADoIUcyTPbMugA1jz6wLYEPZM+sCOD1Nde+8u+66a7A6DwDY\n",
837 "CNaaW9yJAgDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAA\n",
838 "OghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA6bZ10AwOli\n",
839 "74P7b108dGRhqX3+OWfv23nRhVfPriJgmoQogHWyeOjIwg1377t0qX39roUZVgNMm+E8AIAOQhQA\n",
840 "QAchCgCggxAFANBBiAIA6CBEAQB0EKIAADoIUQAAHYQoAIAOnlgOMGO2i4GNSYgCmDHbxcDGZDgP\n",
841 "AKCDEAUA0EGIAgDoIEQBAHQwsRxgzmzbunnHHfc+tCexUg/mmRAFMGcOHD665cbxaj0r9WB+Gc4D\n",
842 "AOggRAEAdBCiAAA6CFEAAB1MLAeYgcn98jadVXbMuBygwwlDVK310STvGTffmuT3k9yS5FiS+5Nc\n",
843 "01obplYhwGlocr+863YtHJx1PcDareZO1N7W2uVLjVrrf0tyRWttsdZ6bZIrk9w2rQIBAObRakLU\n",
844 "F9da70ny8STfnuSx1triuO+2JDdHiAIAzjCrmVj+3NbaS5K8LsmtSR6Z6HskyXlTqAsAYK6dMES1\n",
845 "1h4ff31XkseTfNpE9/Ykj06nNACA+bViiKq17qy1XjH+/vlJ9ifZUmu9YHzKVUnunG6JAADz50Rz\n",
846 "ou5L8sO11tdkdMfpmoyG726vtR5Lcl9rbfeUawQAmDsrhqjW2qEk37Ds8IeTXDK1igAANgBPLAcA\n",
847 "6CBEAQB0sO0LwJRs27p5xx33PrQnSc4/5+x9Oy+68OrZVgSsJyEKYEoOHD665cbx1i7X71qYcTXA\n",
848 "ejOcBwDQQYgCAOggRAEAdBCiAAA6mFgOcApMrtRLkk1nlR0zLAdYB0IUwCkwuVIvSa7btXBwlvUA\n",
849 "J89wHgBAByEKAKCDEAUA0EGIAgDoYGI5wBxbvqrPHnwwP4QogDm2fFWfPfhgfhjOAwDoIEQBAHQQ\n",
850 "ogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDo4InlABvU3gf337p46MjCUtuWMHBqCVEA\n",
851 "G9TioSMLN9gSBmbGcB4AQAchCgCggxAFANBBiAIA6GBiOcAGsm3r5h133PvQniTZdFbZMeNy4Iwm\n",
852 "RAFsIAcOH91y43hF3nW7Fg7Ouh44kxnOAwDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCD\n",
853 "EAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDosHk1J9Van5Pk\n",
854 "niTflOTvktyS5FiS+5Nc01obplYhAMAcOuGdqFrrWUlel+RNSUqS3UmuaK1dmuSBJFdOtUIAgDm0\n",
855 "muG8a5P8SpK/H5//WGttcdx3W5JdU6oNAGBurRiiaq1fnaS01t49cf6jE6c8kuS8KdUGADC3TjQn\n",
856 "aleSr6m1vjDJjiSvSvL+if7teXKoAgA4I6wYolprNy19X2v9sSRvTfKjtdYLWmsPJ7kqyZ3TLREA\n",
857 "YP6sanXeMtcmub3WeizJfa213etcEwDA3Ft1iGqt/ZuJ5iVTqAUAYMPwsE0AgA5CFABAByEKAKCD\n",
858 "EAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDosHnWBQAwHXsf\n",
859 "3H/r4qEjC0ly/jln79t50YVXz7YiOL0IUQCnqcVDRxZuuHvfpUly/a6FGVcDpx/DeQAAHYQoAIAO\n",
860 "QhQAQAchCgCggxAFANBBiAIA6CBEAQB0EKIAADoIUQAAHYQoAIAOtn0BOE1s27p5xx33PrRnqb3p\n",
861 "rLJjhuXAaU+IAjhNHDh8dMuN473ykuS6XQsHZ1kPnO4M5wEAdBCiAAA6CFEAAB3MiQI4CXsf3H/r\n",
862 "4qEjC8l8T+RePun8/HPO3rfzoguvnl1FsPEJUQAnYfHQkYUbxpO553ki9/JJ59fvWphhNXB6MJwH\n",
863 "ANBBiAIA6CBEAQB0EKIAADqYWA6wBpOr8ZL5XpHXa/JntIoPnpoQBbAGk6vxkvlekddr8me0ig+e\n",
864 "muE8AIAOQhQAQAchCgCggxAFANDBxHKAFZwJq/GAPkIUwArOhNV4QB/DeQAAHYQoAIAOQhQAQAch\n",
865 "CgCggxAFANBhxdV5tdbNSX4tyfOSPJbku5OUJLckOZbk/iTXtNaGKdcJADBXTnQn6hlJ3thae1GS\n",
866 "b0/yw0l2J7mitXZpkgeSXDndEgEA5s+Kd6JaaweTvH3cXEjy4SRbWmuL42O3Jbl5/BUA4Iyxqodt\n",
867 "1lr/R0ZDei9O8vqJrkeSnLf+ZQEAzLdVTSxvrb0iyeVJfj5PDk3bkzw6hboAAObaiiGq1vrCWutL\n",
868 "xs2PJHl6ki211gvGx65KcucU6wMAmEsnGs77yyRvrLW+PqNVef86ycEkt9dajyW5r7W2e7olAgDM\n",
869 "nxNNLP9wkq87Ttcl0ykHAGBj8LBNAIAOQhQAQIdVPeIAgNPX3gf337p46MjCUnvTWWXHDMuBDUOI\n",
870 "AjjDLR46snDD3fsuXWpft2vh4CzrgY3CcB4AQAchCgCggxAFANBBiAIA6CBEAQB0EKIAADoIUQAA\n",
871 "HYQoAIAOQhQAQAchCgCgg21fgDPS5H5x559z9r6dF1149WwrAjYaIQo4I03uF3f9roUZVwNsRIbz\n",
872 "AAA6CFEAAB2EKACADkIUAEAHIQoAoIMQBQDQQYgCAOggRAEAdBCiAAA6eGI5cMbbtnXzjjvufWjP\n",
873 "Uts2MMBqCFHAGe/A4aNbbhxvAZPYBgZYHcN5AAAdhCgAgA5CFABAByEKAKCDieUAy0yu1tt0Vtkx\n",
874 "43KAOSVEASwzuVrvul0LB2ddDzCfDOcBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGI\n",
875 "AgDoIEQBAHTwxHKAM5CtbeDkCVEAZyBb28DJM5wHANBBiAIA6CBEAQB0EKIAADqYWA5Al70P7r91\n",
876 "8dCRhaX2+eecvW/nRRdePbuK4NQSogDosnjoyMIN4xV+SXL9roUZVgOn3oohqtZ6VpJfSPKFGQ39\n",
877 "/UiSDyW5JcmxJPcnuaa1Nky5TgCAuXKiOVFfkuSB1tpLkrwqyeuS7E5yRWvt0iQPJLlyuiUCAMyf\n",
878 "Fe9Etdb+NMmfjptPT/K3SUprbXF87LYkN4+/AgCcMVa1Oq/Wel6S/5DkZ5McmOh6JMl5U6gLAGCu\n",
879 "nXBiea31M5K8Mcn3Jflgku+f6N6e5NHplAbAvJlckWfPPc50K96JqrV+VpJbk7ymtfZga+1wkq21\n",
880 "1gvGp1yV5M7plgjAvFhakXfD3fsuPfqJYcus64FZOtGdqGuTPCfJr9dak9Fdp2uT3F5rPZbkvtba\n",
881 "7umWCAAwf040sfzajELTcpdMpxwAgI3Bti8AAB2EKACADrZ9AeApbdu6eccd9z60Z6ltRR78AyEK\n",
882 "gKd04PDRLTdO7I933a6Fg7OsB+aJ4TwAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghR\n",
883 "AAAdhCgAgA6eWA6ctvY+uP/WxUNHFpLk/HPO3rfzoguvnm1FwOlEiAJOW4uHjizcMN6y5PpdCzOu\n",
884 "BjjdGM4DAOggRAEAdBCiAAA6CFEAAB1MLAdgXWzbunnHHfc+tGepbUUkpzshCoB1ceDw0S03jldD\n",
885 "JlZEcvoznAcA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQB\n",
886 "AHQQogAAOghRAAAdhCgAgA5CFABAh82zLgBgvex9cP+ti4eOLCy1N51VdsywHOA0J0QBp43FQ0cW\n",
887 "brh736VL7et2LRycZT3A6c1wHgBAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgAgA5C\n",
888 "FABAByEKAKCDbV+AM8K2rZt33HHvQ3uW2vbVA07WCUNUrXVbkjcleXtr7eZa68VJbklyLMn9Sa5p\n",
889 "rQ3TLRPg5Bw4fHTLjfbVA9bRaobzbkrylon27iRXtNYuTfJAkiunURgAwDw7YYhqrV2T5H1JUmvd\n",
890 "muSx1triuPu2JLumVx4AwHxa68Tyc5M8OtF+JMl561cOAMDGsNaJ5Qfy5NC0PU8OVQBTtffB/bcu\n",
891 "HjqysNQ+/5yz9+286MKrZ1cRT2VyMr/fE6ejNYWo1trhWuvWWusFrbWHk1yV5M7plAbwyRYPHVm4\n",
892 "YWKC+PW7FmZYDSuZnMzv98TpaC0hamkF3rVJbq+1HktyX2tt9/qXBQAw31YVolprb0/y9vH39ye5\n",
893 "ZJpFAQDMO08sBwDoIEQBAHSw7QuwoU2uALOVC3AqCVHAhja5AsxWLsCpZDgPAKCDEAUA0EGIAgDo\n",
894 "IEQBAHQQogAAOghRAAAdhCgAgA5CFABAByEKAKCDEAUA0EGIAgDoIEQBAHQQogAAOghRAAAdhCgA\n",
895 "gA6bZ10AwEr2Prj/1sVDRxaW2pvOKjtmWA7AE4QoYK4tHjqycMPd+y5dal+3a+HgLOsBWGI4DwCg\n",
896 "gxAFANBBiAIA6CBEAQB0MLEcmLnlK/DOP+fsfTsvuvDq2VXEetu2dfOOO+59aM9Se6Xf8eTnwWeB\n",
897 "eSZEATO3fAXe9bsWZlgN03Dg8NEtN67ydzz5efBZYJ4ZzgMA6CBEAQB0EKIAADoIUQAAHUwsB+CU\n",
898 "m1ytt9IKvLWs6oNTTYgC4JSbXK230gq8tazqg1PNcB4AQAchCgCggxAFANBBiAIA6GBiOQAbxmpX\n",
899 "9S1nf0amQYgCYMNY7aq+5ezPyDQYzgMA6CBEAQB0EKIAADqYEwWcEmuZ2Ds5eXjTWWXHKSkQYI2E\n",
900 "KOCUWMvE3snJw9ftWjg4/eoA1s5wHgBAByEKAKCDEAUA0MGcKGDVDhw4sDXJxROHPn7uuee+d1b1\n",
901 "AMySEMXcqLW+tLW2Z9Z1sKKFO/7sb+58919/9Owk+fov2P7+Z33ksXcurbo7/1lPe/biRx//4NLJ\n",
902 "ttZgNSZXYyarX5G5/LrJz9vkatC/P/zYtmc84xnnr2fNkAhRzJeXJtkz4xo4gfv/5mPlf//Vwa1J\n",
903 "svNzzjnyscePPbHq7rpdCwdvvHvf5y6da2sNVmNyNWay+hWZy6+b/LwtXw1qlSfT0B2iaq0/leQF\n",
904 "Gc2r+v7W2t51qwoAYM51TSyvtb4iySdaay9O8sokP7muVQEAzLne1XkvS/JbSdJaO5jkz2qtz1m3\n",
905 "qgAA5lzvcN55SR6ZaH9kfOyvTroiYK699LnnPvZZ55z90SR53qc9/WkPHzoy65IAZqIMw7Dmi2qt\n",
906 "NyV5U2vtveP2Lya5qbX2/snz7rrrrrW/OADAjFx22WVltef23om6K8k3J3lvrXVbkouXB6i1FgIA\n",
907 "sJF0zYlqrf1BktRa35HkLUl+cD2LAgCYd13DeQAAZzp75wEAdBCiAAA6CFEAAB2mtnderfUlSX43\n",
908 "yZe21j48Pva9Sb4po/D2htbam6f1/mxMtdarM1qo8OHxoe9trb1ndhUxb2w5xVrUWh9NsvR/yFtb\n",
909 "azfPsh7my/gJA29K8vbW2s211ouT3JLkWJL7k1zTWnvKyeNTCVG11s9O8m1J7k5Sxsd2JHlBa+1F\n",
910 "tdbNSe6utb6ttfb306iBDWtI8uOttd+ddSHMn8ktp2qtn5rkzUkuPcFlnNn2ttYun3URzK2bMnrK\n",
911 "wDPH7d1JrmitLdZar01yZZLbnuriqQzntdY+0Fr7tiSPZ/RHMUlemuS3x/1Hk/zXJDun8f5seD9Q\n",
912 "a31XrXX3rAth7thyirX64lrrPbXWu2qtz551McyX1to1Sd6XJLXWrUkea60tjrtvS7JrpetP6k5U\n",
913 "rfXzk/zsssMfaq1dfZzTz0vy3on20lYxnIGe6rOT5Dtba78xPufnaq0vX3ouGcSWU6zdc1trj9da\n",
914 "vzrJG5JcNeuCmFvnJnl0ov1ITpBTTipEtdb+PMlqb5M+mmT7RPvTk/zFybw/G9cqPzu/l+TLkwhR\n",
915 "LFn6f+Svx+3teXKogidprT0+/vquWuv2E53PGe1AnhyatufJoeqTnIrVeUtbv9yd5NVJUmv9lCSv\n",
916 "TGJCKE9Sa31trfUzxs2vS3LvLOth7ixtObU0IfS4W05BktRad9Zarxh///z8Q/iGT9JaO5xka631\n",
917 "gvGhq5LcudI1pyJEDUnSWnsgyR/VWv9XknuS/FRrzfbvLPd/kry51vr2JI+21vbMuB7miC2nWKP7\n",
918 "klxVa92T5Pokr5ttOcyxpfnb1ya5ffw36Hmttd9e6SLbvgAAdPCwTQCADkIUAEAHIQoAoIMQBQDQ\n",
919 "QYgCAOggRAEAdBCiAAA6CFEAAB2EKACADv8fn0xUCxJB1sMAAAAASUVORK5CYII=\n"
732 920 ]
733 921 },
734 922 "metadata": {},
735 923 "output_type": "display_data"
736 924 },
737 925 {
738 926 "data": {
739 927 "image/png": [
740 "iVBORw0KGgoAAAANSUhEUgAAAXcAAAENCAYAAAD0eSVZAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\n",
741 "AAALEgAACxIB0t1+/AAAE3lJREFUeJzt3X2UXOVBx/HvkE2AQJZ0S00CpCZNGyHYVmIDVEEGBExr\n",
742 "TwjHU160GFqKx9PSUvW0JKBlfSlStGp7tPQIpSdUCaZa3qStCSmjPYq8CAkvIQ2JRgltFoSk2R6j\n",
743 "hDL+8dzJ3pmd3Z258/7M93POnNx79748XO7+9pnnPve5IEmSJEmSJEmSJEmSJEmSJEmSJElSD1jY\n",
744 "6QK02DxgZqcLIdXqsE4XQD1rGbAFuJkQ7Kd3tjgt9xLwqU4XQqpVrtMFUNf7EvDPwFcrlt8MfB14\n",
745 "FFgDXNOi468ElgCvAy9UKUcr/DKhpn4qcBdwZ7J8GXAScHsbyjCRico20Xmqd7mkPvEQ8LWKZScD\n",
746 "70mm3wl8rEXHPgb4t4qyHNuiY5W8lbH/nmOBvZQ3OdUT7KcRAng3MJAsm0MI5L8HfqYJZVtA9fP0\n",
747 "xjqXt/q8qs1sltFkpgEPAOcAR6SW54FvJ9PvS003288BW1PzW4CzW3SskpMZa375b2AH8NOpn79E\n",
748 "CNlaPAx8C9gO/FKybIQQ7O8H/qUJZVtG9fN0Tp3LW31e1WYDU6+iPnYysAn4KUJN/a5k+ZHA/yXT\n",
749 "y4Ab6tzvW4ArJ/n5vwL3ACcA+1LL9wFvq/NY9R7zG4x9K8kRmkB2pNbbQgj7HUztMOAg8AXgk8Df\n",
750 "JMuPAg40qWzPAe+m+nl6pc7liojhrsmcSmiLvRO4lBDuhwOvptaZCRRT89OAfwTOSOa/DPwh5WH4\n",
751 "74R2+qnMBv43Nf8qcPQE6y4G/gB4E/AuoADcT7hnUM8xDwJPJ9O/CDwGbE79fG9yrFosTbZ/GviT\n",
752 "ZP5xys9XM8r2Xqqfp2KdyxURm2U0maMJNfR7gfOBHyME/sOpdaZVbPNu4D+T6VwyX0stt5pRym/6\n",
753 "H0modVYaIoT4rxKaFzYBH2As2LOYDVye7CftADCjxn28A3iScNPyi4T28p8AvttAuaqVbT/Vz9NE\n",
754 "56/W86oeZs1dEzkG+J9kepTQdnwV8DLwF6n1XqvYbjnwD8n0KcBTVfZdazPETkItvORYQs230keT\n",
755 "MpVqo4enyl7vMSEE32rgw8APgR9n7A/WMdQehOnK062EP3Jbgc83uWyV5+mNhPO0r8blE51XSRE5\n",
756 "mtAD5tcp70GxFPgB49vX11L+lf5R4CeT6d8Bfg1YkbEsR1H+x2EL4dsDhDbiUnjeROiiCOE+wR9n\n",
757 "PF7Jxwnt6nMJ31TOSv3sKuDnU/PpcqRNJ3yTSPsSod282WWbSfXzNNH5m+y8SorU+YRmhM9U+dlf\n",
758 "E2qMaR8i9MCA0N49AlxLaAf+LeA64NwGynMZ8NvAp4FfSS1/lvAtAUJXxasJPVKuprFvpGcAPyKc\n",
759 "g9eT6eNTP7+V8p5D6XKULCM8A/BXFdsuoba29Sxlm+g81btcfeI2wi9r+q/8HxEu6C2EC/iY1M/W\n",
760 "EO7ebyOEhHrTnDrWnU24kQmhDbjaH4VWmAGc2aZjlRxBuDHa6XJIDTuT8e2m5zH2NfTG5AOhVrKZ\n",
761 "8HV0AaF90Ru2/eEThCacL1DeJ7yVLmb8zdxWu5xwQ7TT5ZCaYgHVb4oBXEj46gnjH0H/FvGPN6Ig\n",
762 "x+Q3BGMwH7ig04WQatVob5kPAeuS6eMId/VLdlPe3qh4FYFbOl2IFns++Ug9oZFmk+sIDz/cMck6\n",
763 "lQ9rSJLaIGvN/XJCb4h0l7AXCF9dS05IlpVZtGhRcefOnRkPK0l9aye1j2uUqea+nDBOxgWUP8J8\n",
764 "L3AJoffAQkL/30fGlW7nTorFop8mfa6//vqOlyGmj+fT89mtH2BRPUE9Vc19HeEhiWMJ7Y3XE26c\n",
765 "zgA2Jus8BHyE8OTd+uTf15JlNstIUgdMFe6XVll22yTr30D9IwRKkprMfug9Lp/Pd7oIUfF8Npfn\n",
766 "s3M68Zq9YtJ+JEmqUS6Xgzoy25q7JEXIcJekCBnukhQhw12SImS4S1KEDHf1jcHBIXK53KHP4OBQ\n",
767 "p4sktYxdIdU3Qley9LWXw2tRvcKukJIkw12SYmS4S1KEDHdpEt6EVa/yhqr6RpYbqt6EVbfwhqqU\n",
768 "qKx1S/3EmruiVa3Wbc1dvcqauyTJcJekGBnukhQhw12SImS4S1KEDHdJipDhLjWgsi+9T7GqW9jP\n",
769 "XdFqRz/38T+vbb9SveznLkky3CUpRoa7JEXIcJdSHGxMsZgq3G8DRoCnUsuGgI3AdmADMDv1szXA\n",
770 "c8A24PzmFVNqj9HRvYQbpKWP1JumCvevAMsrlq0mhPtiYFMyD7AEuDj5dznwxRr2L3XQwLhujFIs\n",
771 "pgrf7wB7K5atANYm02uBlcn0BcA64CCwC9gBnNqUUkot8RrltXRr6opHlpr1HEJTDcm/c5Lp44Dd\n",
772 "qfV2A8dnL5okKatGm02mqu5YFZKkDhjIsM0IMBfYA8wDXkyWvwDMT613QrJsnOHh4UPT+XyefD6f\n",
773 "oRiSFK9CoUChUMi8fS13kBYA9wFvT+ZvAl4GPku4mTo7+XcJcAehnf144AHgrYyvvTv8gNqiluEH\n",
774 "qg0dUM+QBQ4/oHapd/iBqWru64CzgGOB54FPAzcC64ErCDdOL0rW3Zos30q4U/URbJaRpI5w4DBF\n",
775 "y5q7YuLAYZIkw12SYmS4S1KEDHdJipDhLkkRMtzVEyqH4vU9pdLk7AqpnjDVu0xr3caukOpVzX6I\n",
776 "SVKZAYcGVk8w3KW6lIYJLjHo1Z1sc5ekCBnukhQhw12SImS4S1KEDHdJipDhLkkRMtwlKUKGuyRF\n",
777 "yHCXpAj5hKp6VOUwANOBg50qjNR1DHf1qGrDAFQbBEzqTzbLSFKEDHdJipDhLkkRMtwlKUKGuyRF\n",
778 "yHCXpAgZ7pIUIcNdkiJkuEtShBoJ9zXAM8BTwB3A4cAQsBHYDmwAZjdaQElS/bKG+wLgSmAp8HZg\n",
779 "GnAJsJoQ7ouBTcm8JKnNsob7fsIoTTMJ49PMBL4HrADWJuusBVY2WkCp1w0ODpHL5Q59BgeHOl0k\n",
780 "9YGs4f4K8Dngvwihvo9QY58DjCTrjCTzUl8bHd1LGNQsfMK81FpZR4VcBHyC0DzzA+BrwAcq1ild\n",
781 "zeMMDw8fms7n8+Tz+YzFkKQ4FQoFCoVC5u2zjol6MXAe8OFk/jLgdOAc4GxgDzAPeBA4sWLbYrFY\n",
782 "NfOlCYWx2ycb4neiIX9bvU31faSv8Wpl93dA9UreX1BzZmdtltlGCPMjk4OdC2wF7gNWJeusAu7O\n",
783 "uH9JUgOyNstsAW4HHgNeBx4H/hKYBawHrgB2ARc1XkRJUr068aoam2VUN5tl1O/a1SwjSepihrsk\n",
784 "Rchwl6QIGe6SFCHDXZIiZLhLUoQMd0mKkOEuSREy3CUpQoa7JEXIcJekCBnukhQhw12SImS4S1KE\n",
785 "DHdJilDWl3VImtBAaextqWMMd6npXmP8Cz2k9rJZRpIiZLhLUoQMd0mKkOEuSREy3CUpQoa7JEXI\n",
786 "cJekCBnukhQhw12SImS4S1KEDHd1pcHBIXK53KGPpPo0Eu6zgb8FngW2AqcBQ8BGYDuwIVlHqtvo\n",
787 "6F7C+CylT0wGyv5w5XI5BgeHOl0oRaaRcP888A3gJOAdwDZgNSHcFwObknlJZUoDi419wh8zqXmy\n",
788 "ft89BngCeEvF8m3AWcAIMBcoACdWrFMsFmOriakeg4NDZWE2a9Yb2L//lbJ1QlNM5ciK9cy3a5vm\n",
789 "HdffC00maZ6sObOz1twXAi8BXwEeB24BjgLmEIKd5N85GfeviFU2uVhrlZov63juA8BS4CrgUeDP\n",
790 "GN8EM2Fj6fDw8KHpfD5PPp/PWAxJilOhUKBQKGTePmuzzFzgIUINHuAMYA2hmeZsYA8wD3gQm2VU\n",
791 "oVqTS+U1YbOMVK5dzTJ7gOcJN04BzgWeAe4DViXLVgF3Z9y/+sr43iOSGtPIb9E7gVuBGcBO4IPA\n",
792 "NGA98GZgF3ARsK9iO2vufW7qWnm1Zdbc1d/qrbl3oopkuPc5w73aNtMJXSSDaj2I1N/qDXdfkC11\n",
793 "hfKXao+O2jSlxjj8gCRFyHCXpAgZ7pIUIcNdkiJkuEtShAx3SYqQ4S5JETLcJSlChrskRchwl6QI\n",
794 "Ge6SFCHDXepKA75AWw1x4DCpKzmQmBpjzV0tNzg45Is4pDaz5q6WG3shdokBL7WaNXdJipDhLkkR\n",
795 "MtwlKUKGu9QT7Bqp+nhDVeoJdo1Ufay5S1KEDHdJipDhLkkRMtwlKUKGuyRFyHCXpAgZ7pIUoUbD\n",
796 "fRrwBHBfMj8EbAS2AxuA2Q3uX5KUQaPhfjWwlbGnK1YTwn0xsCmZlyS1WSPhfgLwXuBWxsZwXQGs\n",
797 "TabXAisb2L8kKaNGwv1PgU8Cr6eWzQFGkumRZF6S1GZZx5Z5H/Aiob09P8E6Rcrf0HDI8PDwoel8\n",
798 "Pk8+P9EuJKk/FQoFCoVC5u2zjj50A3AZYTSjI4BB4OvAMkLY7wHmAQ8CJ1ZsWywWq2a+IhVerVf5\n",
799 "JqbJ5mtZpxX76K3j+nvUX5JXVNac2VmbZa4F5gMLgUuAbxPC/l5gVbLOKuDujPtXj6h8P6pD0Urd\n",
800 "oVlD/paqEDcC64ErgF3ARU3av7pU5ftRHYpW6g6d+E20WSYi45tcphNa6yrF2zzSmeOOP8+zZr2B\n",
801 "/ftfQXGqt1nGl3WoycpfKhFYm2++8efZb01Kc/gBSYqQ4S5JETLcJSlChrskRchwl6QIGe6SFCHD\n",
802 "XZIiZLhLUoQMd0mKkOEuRWPAQdx0iMMPSNEoH5LA4Qj6mzV3SYqQ4S5JETLcJSlChrskRchwl6Jl\n",
803 "75l+Zm8ZKVr2nuln1twlKUKGuyRFyHCXpAgZ7pIUIcNdkiJkuEtShAx3SYqQ4a66DA4OlT0YI6k7\n",
804 "+RCT6jI6upf0gzFgwEvdyJq71DccjqCfZA33+cCDwDPA08DHk+VDwEZgO7ABmN1oASU1S2k4gvAJ\n",
805 "38IUq6zhfhD4DeBk4HTgo8BJwGpCuC8GNiXzkqQ2yxrue4DNyfQPgWeB44EVwNpk+VpgZUOlkyRl\n",
806 "0ow29wXAKcDDwBxgJFk+ksxLktqs0XA/Gvg74GpgtOJnpcY9SVKbNdIVcjoh2L8K3J0sGwHmEppt\n",
807 "5gEvVttweHj40HQ+nyefzzdQDEmKT6FQoFAoZN4+ayflHKFN/WXCjdWSm5JlnyXcTJ3N+JuqxWLR\n",
808 "Cn03GhwcqtKDYjrh/nlaZT/3yeZrWacZ23jcLPvwd7F3JA8N1pzZWcP9DOCfgCcZu1rWAI8A64E3\n",
809 "A7uAi4B9Fdsa7l0qXDzdEDoe13BXpXaFeyMM9y5luPfbcQ33XlJvuPuEqiRFyHCX+lb5cAQOSRAX\n",
810 "Bw6T+lZpOIIxo6MOBBcLa+6SFCHDXZIiZLhLUoQMd0mKkOEuSREy3CUpQoZ7H/Nl11K87Ofex3zZ\n",
811 "tRQva+6SFCHDvY/YDKOpVQ5JMMPhCXqUzTJ9xGYYTa1ySILykSQdnqB3WHOXpAgZ7pIUIcM9EpXt\n",
812 "6baPSv3NNvdIjG9Pt31U6mfW3KM2YO8YNZkv+OgV1tyjVq3ng9QIX/DRK6y5S1KEDHdJipDhLkkR\n",
813 "MtwlKUKGexeo7KNeS+8Dx4lR9xiw90wXMty7wFgf9fAJ8/VtI3VOqQdN9es3S+WlFq3abyw6UeUr\n",
814 "FouGUVqoeZd3WZzqHFXbZnzIT7VOt+7D4/bOPqqvk75+s1zftWjVfrtV8g295sy2n7ukJhuwqbAL\n",
815 "tKJZZjmwDXgOuKYF+5fU1cqbadQZzQ73acCfEwJ+CXApcFKTj9EHxj/iXfnShDGFThVSqkGhyrKp\n",
816 "r++p5/1mMJVmN8ucCuwAdiXzdwIXAM82+Tg96/77v8n992+YYq3xj3hXb/uE8MuTb0rZpOYrVFlW\n",
817 "6/VdS1u/JtLscD8eeD41vxs4rcnH6Gm33HIH99zzOvCuZMljnSyOpEg1O9xtYJvC9OmHceSRTzN9\n",
818 "+n4ADh7czYEDHS6UpOg0O9xfAOan5ucTau9pO3O53KImH7fnHDiwuWJJ5VfMal85J1rndzNs04zj\n",
819 "tnIfHrd39tE9x428LX5nJw8+kBRgATAD2Iw3VCUpCu8Bvku4sbqmw2WRJEmSVK/3A88APwKWVvxs\n",
820 "DeGhp23A+W0uVwyGCfc2nkg+yztamt7kw3fNtQt4knA9PtLZovSk24AR4KnUsiFgI7Ad2ADM7kC5\n",
821 "qjoRWAw8SHm4LyG0zU8ntNXvwAHN6nU98JudLkQPm0a47hYQrkPvFTXuPwhhpGzOBE6hPNxvAj6V\n",
822 "TF8D3DjZDtoZotsIf3EqXQCsAw4S/trvIDwMpfpE3U2gxdIP3x1k7OE7NcZrMrvvAJXDw64A1ibT\n",
823 "a4GVk+2gG2rIx1HeXXI34WEo1edjwBbgy3TR17UeUe3hO6/BxhSBBwhP6V3Z4bLEYg6hqYbk3zmT\n",
824 "rdzsfu4bgblVll8L3FfHfnwYaryJzu11wM3A7yXzvw98DriiTeWKgddb8/0s8H3gTYRrdxuhNqrm\n",
825 "mHJUtmaH+3kZtql88OmEZJnK1Xpub6W+P6Sq7eE71ef7yb8vAXcRmr4M98aMECp4e4B5wIuTrdyp\n",
826 "Zpl0W9y9wCWEh54WAm/Du+v1mpeavpDymzCa2mOE624B4Tq8mHBdKpuZwKxk+ihCDzivycbdC6xK\n",
827 "plcBd3ewLGUuJLRrHiD85flm6mfXEm5obQN+of1F63m3E7qdbSH8D5+0LU5V+fBd8ywk9DjaDDyN\n",
828 "5zOLdcD3gFcJuflBQu+jB+jCrpCSJEmSJEmSJEmSJEmSJEmSJEmS+tD/AzUxDUJku6WfAAAAAElF\n",
829 "TkSuQmCC\n"
928 "iVBORw0KGgoAAAANSUhEUgAAAlYAAAGLCAYAAAAF7dxzAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\n",
929 "AAALEgAACxIB0t1+/AAAG4FJREFUeJzt3X+U5lddH/D3d3chu0LiJi64MQhTMLrGqlXEBAmuTEAK\n",
930 "2FbbeE8PJHaptU2PHEUieDiJP6qbkkD80UqhUquLgVBveqqhcsrRZN2EenRtI8gBE7M2XYGVCWV3\n",
931 "3QWyzpLNt388z8TJMDObmb3zzDwzr9c5c3a+3/v9Ps8nz+7OvnPv/d7b9X0fAADO3abVLgAAYL0Q\n",
932 "rAAAGhGsAAAaEawAABoRrAAAGhGsAAAaEawAABoRrAAAGhGsYJ3pum7r8Neu67rJ1a5nLei67sKu\n",
933 "616w2nUA659gBetE13Xf1nXdnyY53nXdtiRvTPIXI3rvr+667le6rvvhrut+teu6iVG87zx1PK/r\n",
934 "upu7rvt3Xdf9Xtd1z0+Svu+PJ3l513Vfsxp1PRkL1T6rfcHPeLltwAro+96XL19j8pXkfyd5+Tzn\n",
935 "Nyf57ST/Ism3JnlBkteNsK4DSa4cfn9Fkj9chc9mU5J3JOmGx9cmOZpkx/D4qUnet9q/h8up/Wyf\n",
936 "8XLbfPny1f5LjxWMia7rdiT5liRXz9P8kiTv6Pv+V/u+/5Mkb0jy6yOq62uTfHPf9/8zSfq+/6Mk\n",
937 "X9d13XNG8f6zXJrkO5J81fD4fUmeluR7h3WdTvJA13UvWuoLd113Xtd1P9l13ZGu6+7vuq6b1fbq\n",
938 "ruse6Lruv3dd930rUfsin/Gzl9k26t8b2DAEKxgflyV5d5J/0nXdU+e0vSTJ7ydJ13UXJXlK3/df\n",
939 "GFFd35Tkk3POfSqDoDBKn0/yrCQXJ0nf948Oz10465oPJHn1Ul+47/vpJG9NcluSSzIMPMO225O8\n",
940 "u+/7f9D3/W+tUO0LfcYvWmbbqH9vYMPYstoFAE/a85P8ZJJXJXllBkN/M87r+/6Lw+9fkuTDI6zr\n",
941 "mUlOzTn3SJKvHGEN6fv+SJIdM8dd1311kouS/OGsy/40yQuX+RYvTnJnBkOKb0wyO0Q9tszXTPKk\n",
942 "al/oM96Z5G+W0TbS3xvYSAQrGB8X9n1/pOu62zOYg/PbSdJ13dcn+bNZ131Dkj+fe3PXdT+Q5Ov6\n",
943 "vr9hePxDSXb2ff9zs67ZnuQXknRz75/jF/u+/+hMXUlOz2k/neT8hW7uuu4Hk/xIBj00O4b1nk7y\n",
944 "sr7vP3MOtcz2w0k+MDMMliR933+x67ptXddt7vv+zFled64XJLk5gx6f/9N13Yv7vv9Q13W7Mufz\n",
945 "XoHaF/uMty2zDVgBghWMgeESCjP/QP5Gkj/quu4r+75/OMl3J6mzLt+R5I/neZl/PLx3xvcnefvs\n",
946 "C/q+/+sk/3yJ5X1unnNfluTYfBd3XfdTSZ6RwST7LoNemdf1fX+wQS0z7/F3k7w8yVXzNM8MsX12\n",
947 "iS+7ue/7Psknu657X5I3JflQBj2E75194QrUvthnPF94ezJtwAowxwrGw1VJ7k2Svu8/nOSBJNcN\n",
948 "257V9/2nZ1371CSPzr6567rNSa5McvfweGsGT4j9foPaPp3k6XPOPS3Jw3MvHPauXZPkR/u+PzOc\n",
949 "S3Q4SbPJ1F3XnZ9Bz9Ir+76fL0CczhJ/9nVd95VJpmadeluSV3Rdd1kGPYknl1vvnPdZqPaFPuOp\n",
950 "4ddS277k9wZoQ48VjIfdfd+/adbxO5L8267r3pkvHeo5mmT7nHPPT/JQ3/cnhscvTvKxJF/ouu6i\n",
951 "mX/Eu667MMnPZ2lDWH+UwcTrDF9jSwZB6WPz3PeqJL/b9/1js659QZIfm3vhMmtJBsHkdX3ff3r4\n",
952 "9N4/7fv+fbPavzyDz2gprkryuzMHfd9/rOu6Dya5Mcl9I6h9sc/4C8tsA1aAYAVrVNd1F2QQRB5K\n",
953 "8ldzmn8tyU9kMIH65+e0fTKDyc6zvXT4OjNenUEP2OTwtY8ljy+kuaQhrL7vP9l13f/tuu7y4XDe\n",
954 "y5L8Sd/3Dwz/O74tyQV93+9P8v8yfPJt6IeT/Me+7z81z+suuZau696UwRyoXcO5T8/OoLdnzkv/\n",
955 "7fyqOfUt5LnDp/9me2sGa0T98krX/iQ+42W1Ae0JVrB2vTCDuTuHMli/6nHDSdg/muTWDIf3Zrk3\n",
956 "yY/POXdVkjNd1+1J8pQk+4fnvrbv+7sa1PoDSW7suu6KDHrHXjOr7dUZBLi/l8FyBW8ZTpx/epLP\n",
957 "9n1/W4P3nxlmvCmDxVJn9BlM5p+5ZiLJx+fcOru+ua/5rRkMuf6jrus29X3/s4+/cN/f23Xd/0hy\n",
958 "cO59K1F7Fv+Ml9sGNDazyi+wBg0XeHx41hDek73vrr7vXzr8fmuSIxk8AfjFxe9cGV3X/WDf9/95\n",
959 "Nd57Th0/kOSxvu/fM+f8mqgPGH+L9liVUrYnuT3JPbXWW0opV2QwafOxDIYVfqjW+mgp5W0ZTITd\n",
960 "lOQNtdZz/j84IOn7/sFl3lq7rntZ3/e/l8Gk9Y+sVqga+vJVfO/ZXpHBUhVzrZX6gDF3tidjbs5g\n",
961 "peIZJcn31lp3Z/B/wC8ppbw8yWO11hdnsGjhW1ekUmApfi3J93ZdtynJN+aJi4mOVNd1r0rSYrjx\n",
962 "XOv4+0neP3wScfb5NVEfsD4sGqxqrddl1tMjtdY31FpnnqZ5eobhKsl7hu0nkny8lGIfKlhFw/Cw\n",
963 "N8k/6/v+F/u+/5IJ1iOs5QMLLII5MsOn9P7OnKcDk6yN+oD1Y1nrWJVSXpvkkVrrn2Ww7cLsR5c/\n",
964 "OzwHrKK+7z/d9/1INmJe6/q+P973/TtXuw5g/VvyU4GllH+d5Nm11jcPTx3LYKXnmcfBd2SRNWLu\n",
965 "vvtus+UBgLFx1VVXnW1NusctKViVUt6Q5OmzQlUyeNT7NUk+Opzsflmt9ROtCmRjK6X8TK31Z1a7\n",
966 "DtY+f1ZYCn9eeLKW2iH0ZINVX0q5IMnPJTlYSnnJ8PzP11p/p5Ty0lLKhzIYWnz9UgoAAFgvzhqs\n",
967 "aq33JLlnePi0Ba75iZZFAQCMI5swAwA0IlgBADQiWLHWHVjtAhgbB1a7AMbKgdUugPVp5HsF3n33\n",
968 "3b2nAgGAcbDU3KLHCgCgEcEKAKARwQoAoBHBCgCgEcEKAKARwQoAoJElbcIMsFQHDx3ZN3VyemK+\n",
969 "tp0XnHf48ksv2TPaigBWjmAFrKipk9MTe/cf3j1f242TEyOuBmBlGQoEAGhEsAIAaESwAgBoRLAC\n",
970 "AGhEsAIAaESwAgBoRLACAGhEsAIAaESwAgBoRLACAGhEsAIAaESwAgBoRLACAGhEsAIAaESwAgBo\n",
971 "RLACAGhEsAIAaESwAgBoRLACAGhEsAIAaESwAgBoRLACAGhEsAIAaESwAgBoRLACAGhEsAIAaESw\n",
972 "AgBoRLACAGhEsAIAaESwAgBoZMtqFwCwEg4eOrJv6uT0xHxtOy847/Dll16yZyXuBTY2wQpYl6ZO\n",
973 "Tk/s3X9493xtN05OrNi9wMZmKBAAoBHBCgCgEcEKAKARwQoAoBGT14GxtNiTe0myeVO3a4TlACQ5\n",
974 "S7AqpWxPcnuSe2qtt5RSLkvyriRnkjyQ5Lpaa19KeVuSKzLoAXtDrfXgCtcNbHCLPbmXJDdMTpwY\n",
975 "ZT0AydmHAm9O8oFZx7cmubrWujvJg0muKaW8PMljtdYXJ3llkreuSKUAAGvcoj1WtdbrSim7k1xR\n",
976 "StmW5JFa69Sw+bYktyR5OMl7htefKKV8vJTynFrrX65k4QCrYfu2LbvuvO+hAwu1W0AUNralzLG6\n",
977 "MMmxWcefTXJRki8mOTrPecEKWHeOn3p0602LDEFaQBQ2tqUEq+MZBKYZz8ggaB1LsiPJXw3P78gT\n",
978 "gxbAvPT+AOvNkw5WtdZTpZRtpZSLa62fTnJtkruSfCbJa5J8dDjZ/bJa6ydWplxgPdH7A6w3TzZY\n",
979 "9cNfr09yRynlTJL7a623Jkkp5aWllA9lMBn+9e3LBABY+84arGqt9yS5Z/j9A0munOean2hfGgDA\n",
980 "eLHyOgBAI4IVAEAjtrQBaGixJx095Qjrn2AF0NBiTzp6yhHWP0OBAACNCFYAAI0IVgAAjQhWAACN\n",
981 "CFYAAI0IVgAAjQhWAACNCFYAAI0IVgAAjQhWAACN2NIG2HAW288vSTZv6naNsJzHHTx0ZN/UyemJ\n",
982 "+drsMwjjQbACNpzF9vNLkhsmJ06Msp4ZUyenJ/baZxDGmqFAAIBGBCsAgEYEKwCARgQrAIBGBCsA\n",
983 "gEYEKwCARiy3AKxZi603tVprTQEsRrAC1qzF1ptarbWmABZjKBAAoBHBCgCgEcEKAKARwQoAoBHB\n",
984 "CgCgEcEKAKARwQoAoBHrWAHn7OChI/umTk5PzNdmIU9gIxGsgHM2dXJ6Yq+FPAEMBQIAtCJYAQA0\n",
985 "IlgBADQiWAEANCJYAQA0IlgBADQiWAEANCJYAQA0IlgBADQiWAEANCJYAQA0IlgBADQiWAEANCJY\n",
986 "AQA0IlgBADSyZbULANaGg4eO7Js6OT0xX9vOC847fPmll+wZbUUA40ewApIkUyenJ/buP7x7vrYb\n",
987 "JydGXA3AeFpysCqlbE3y7iTPSLI5yU1JPpXkXUnOJHkgyXW11r5hnQAAa95y5lg9N8nxWutkktcm\n",
988 "eU2SW5NcXWvdneTBJNe0KxEAYDwsOVjVWv8sybZSyv1J7k1yc5JHaq1Tw0tuSzLZrkQAgPGw5GBV\n",
989 "SnlRki/UWr8+yXcn+fdJjs665GiSi9qUBwAwPpYzFPiiJHckj/deJclXzGrfkeTYOdYFADB2lhOs\n",
990 "HkjyXUlSSrk4gwnrW4ffJ8m1Se5qUh0AwBhZzhyr9ye5sJRyT5Lbk7wxyY8nuWN47mtqre9tWyYA\n",
991 "wNq3rHWsaq0/Ms/pK8+xFgCAsWZLGwCARgQrAIBGBCsAgEYEKwCARgQrAIBGBCsAgEYEKwCARpa1\n",
992 "jhWwsWzftmXXnfc9dGCh9s2bul0jLAdgzRKsgLM6furRrTftP7x7ofYbJidOjLIegLXKUCAAQCOC\n",
993 "FQBAI4IVAEAjghUAQCMmrwOMiKcrYf0TrABGxNOVsP4ZCgQAaESwAgBoRLACAGhEsAIAaESwAgBo\n",
994 "RLACAGhEsAIAaESwAgBoRLACAGhEsAIAaESwAgBoRLACAGhEsAIAaGTLahcAjMbBQ0f2TZ2cnlio\n",
995 "ffOmbtcIywFYlwQr2CCmTk5P7N1/ePdC7TdMTpwYZT0A65GhQACARgQrAIBGBCsAgEYEKwCARgQr\n",
996 "AIBGBCsAgEYEKwCARgQrAIBGBCsAgEYEKwCARgQrAIBGBCsAgEZswgxj5OChI/umTk5PLNS+84Lz\n",
997 "Dl9+6SV7RlcRALMJVjBGpk5OT+zdf3j3Qu03Tk6MsBoA5jIUCADQiGAFANCIYAUA0IhgBQDQiGAF\n",
998 "ANDIsp8KLKV8T5KvrbX+QinlsiTvSnImyQNJrqu19o1qBAAYC8vqsSqlPD3JC2utvzA8dWuSq2ut\n",
999 "u5M8mOSaRvUBAIyN5fZY7U1yaSnlvyb56SSP1Fqnhm23Jbll+CsAwIax5B6rUsqlSTbXWl+V5HVJ\n",
1000 "3p7k6KxLjia5qE15AADjYzlDga9I8t+SZNhL9dkkXzGrfUeSY+deGgDAeFlOsDqaZDJJSinnJ9mZ\n",
1001 "ZGsp5eJh+7VJ7mpTHgDA+FjOHKv/kuSdpZR7h8dvzqDX6o5Sypkk99dab21VIADAuFhysKq1nkny\n",
1002 "L+dpuvLcywEAGF8WCAUAaESwAgBoRLACAGhEsAIAaESwAgBoZNmbMAOwdhw8dGTf1Mnpifnadl5w\n",
1003 "3uHLL71kz2grgo1JsAJYB6ZOTk/s3X9493xtN05OjLga2LgMBQIANCJYAQA0IlgBADQiWAEANCJY\n",
1004 "AQA0IlgBADQiWAEANCJYAQA0IlgBADRi5XVYR7Zv27LrzvseOjBf2+ZN3a4RlwOw4QhWsI4cP/Xo\n",
1005 "1psW2NbkhsmJE6OuB2CjMRQIANCIYAUA0IhgBQDQiGAFANCIYAUA0IhgBQDQiGAFANCIdawAxsBi\n",
1006 "i78mFoCFtUKwAhgDiy3+mlgAFtYKQ4EAAI0IVgAAjQhWAACNCFYAAI0IVgAAjQhWAACNCFYAAI0I\n",
1007 "VgAAjQhWAACNCFYAAI0IVgAAjQhWAACNCFYAAI0IVgAAjQhWAACNCFYAAI0IVgAAjQhWAACNCFYA\n",
1008 "AI0IVgAAjQhWAACNCFYAAI0IVgAAjWxZ7o2llOckuTfJ9yf5fJJ3JTmT5IEk19Va+yYVAgCMiWUF\n",
1009 "q1LKpiRvTnJ7ki7JrUmurrVOlVKuT3JNktuaVQnryMFDR/ZNnZyeWKh95wXnHb780kv2jK4iAFpZ\n",
1010 "bo/V9Ul+Jck/zGA48ZFa69Sw7bYkt0SwgnlNnZye2Lv/8O6F2m+cnBhhNQC0tOQ5VqWUb0/S1Vo/\n",
1011 "POs1js265GiSixrUBgAwVpbTYzWZ5DtKKS9MsivJq5J8Ylb7jjwxaAGwirZv27LrzvseOrBQu+Fn\n",
1012 "aGfJwarWevPM96WUn07ywSQ/VUq5uNb66STXJrmrXYkAnIvjpx7depPhZxiJZT8VOMf1Se4opZxJ\n",
1013 "cn+t9dZGrwsAMDbOKVjVWv/NrMMrz7EWAICxZoFQAIBGBCsAgEYEKwCARgQrAIBGBCsAgEYEKwCA\n",
1014 "RgQrAIBGBCsAgEYEKwCARgQrAIBGWu0VCDSyfduWXXfe99CB+do2b+p2jbgcAJZAsII15vipR7fe\n",
1015 "tP/w7vnabpicODHqegB48gwFAgA0IlgBADQiWAEANCJYAQA0IlgBADQiWAEANCJYAQA0IlgBADQi\n",
1016 "WAEANCJYAQA0YksbgA1usf0pd15w3uHLL71kz2grgvElWAFscIvtT3nj5MSIq4HxZigQAKARPVYA\n",
1017 "LNvBQ0f2TZ2cnpivzTAiG5FgBcCyTZ2cnthrGBEeJ1jBCljs/+I3b+p2jbgcAEZEsIIVsNj/xd8w\n",
1018 "OXFi1PUAMBomrwMANCJYAQA0IlgBADQiWAEANCJYAQA0IlgBADQiWAEANCJYAQA0IlgBADQiWAEA\n",
1019 "NGJLGwAWtH3bll133vfQgYXa7X0JTyRYAbCg46ce3XrTAvteJva+hLkMBQIANCJYAQA0IlgBADQi\n",
1020 "WAEANCJYAQA0IlgBADQiWAEANCJYAQA0suQFQkspm5L8hyTfkEEw+8kkDyd5V5IzSR5Icl2ttW9Y\n",
1021 "JwDAmrecHqtvSvJgrfU7k7wqyZuT3Jrk6lrr7iQPJrmmXYkAAONhyT1WtdaPJPnI8PDLkvx1kq7W\n",
1022 "OjU8d1uSW4a/AgBsGMueY1VKuSjJf0ryS0mOz2o6muSic6wLAGDsLCtYlVKemeQ3kvxYkg/niUFq\n",
1023 "R5Jj514aAMB4WXKwKqV8VZJ9SV5Xaz1Uaz2VZFsp5eLhJdcmuatdiQAA42HJc6ySXJ/kOUl+vZSS\n",
1024 "DHqnrk9yRynlTJL7a623tisRAGA8LGfy+vUZBKm5rjz3cmA8HDx0ZN/UyemJhdo3b+p2jbAcANaI\n",
1025 "5fRYwYY3dXJ6Yu/+w7sXar9hcuLEKOsBYG2w8joAQCOCFQBAI4IVAEAjghUAQCMmr7Nhne3Jvp0X\n",
1026 "nHf48ksv2TO6imBjWezvoL9/jCvBig3rbE/23Tg5McJqYONZ7O+gv3+MK0OBAACNCFYAAI0IVgAA\n",
1027 "jQhWAACNmLwOC9i+bcuuO+976MB8bfYCBGA+ghUs4PipR7fetMATS/YCBGA+hgIBABrRYwXAilhs\n",
1028 "OD0xpM76JFgBsCIWG05PDKmzPglWAIwV21GxlglWAIwV21Gxlpm8DgDQiGAFANCIYAUA0IhgBQDQ\n",
1029 "iMnrjLWzPh10/lOfNfW505+ar80aOgC0Jlgx1s72dNANkxMnbtp/+HkLta1cZQBsRIYCAQAaEawA\n",
1030 "ABoRrAAAGhGsAAAaEawAABoRrAAAGhGsAAAaEawAABoRrAAAGhGsAAAasaUNAGvO9m1bdt1530MH\n",
1031 "5muzzydrmWAFwJpz/NSjW29aYB9Q+3yylhkKBABoRLACAGhEsAIAaESwAgBoRLACAGhEsAIAaMRy\n",
1032 "C4zEwUNH9k2dnJ6Yr23nBecdvvzSS/aMtiJgI1rsZ1Gy+M+jc7mXjUOwYiSmTk5P7F1gTZobJydG\n",
1033 "XA2wUS32syhZ/OfRudzLxmEoEACgET1WrHmLdb/b2gKYy3Y4rCbBijVvse53W1sAc9kOh9VkKBAA\n",
1034 "oBE9Vqy6xbrt/+bUI9uf9rSn7RxxScAGdS7DiIvd64nBjUOwYtUt1m2f6LoHRudchhEXu9cTgxtH\n",
1035 "02BVSnlbkisyGGJ8Q631YMvX59wcP378/Ic/d/r7Huv7br7287ZsOvq8S575O6OuCwDWi2bBqpTy\n",
1036 "8iSP1VpfXEr58iTvT7JgLwSr4qs++ODRt//B4b8+f77GPc+/+CPPuyQLBquzLo53/lOfNfW505+a\n",
1037 "r82TOMBGttgwYWJh0vWkZY/VS5K8J0lqrSdKKR8vpTyn1vqXDd+Dc/SZz58+c/j438zb9sgXHzu9\n",
1038 "2L1nWxzvhsmJEzftP/y8hdqWVCjAOnK2KQ8WJl0/Wgari5IcnXX82eE5wWoN+a7nXnhq5/lP/fx8\n",
1039 "bc++cOtTRl0PAKwnXd/3TV6olHJzkttrrR8dHr8jyc211k/Mvu7uu+9u84YAACNw1VVXzTs3eT4t\n",
1040 "e6zuTvKaJB8tpWxPctncULXU4gAAxkmzBUJrrb+XJKWUDyX5QJI3tnptAIBx0GwoEABgo7OlDQBA\n",
1041 "I4IVAEAjghUAQCMj3SuwlPKdSX4zyTfXWj8zPPf6JN+fQch7S631/aOsibWvlLIng4chPjM89fpa\n",
1042 "65+uXkWsNbbTYilKKceSzPwM+WCt9ZbVrIe1Zbiywe1J7qm13lJKuSzJu5KcSfJAkutqrQtOUB9Z\n",
1043 "sCqlfHWS1ybZn6QbntuV5Ipa64tKKVuS7C+l/G6tdf6lwdmo+iQ/W2v9zdUuhLXHdlosw8Fa6ytW\n",
1044 "uwjWrJszWN3g6cPjW5NcXWudKqVcn+SaJLctdPPIhgJrrZ+stb42yekM/qFMku9K8t5h+6NJfifJ\n",
1045 "5aOqibHy46WUPy6l3LrahbDmPGE7rSQfL6U8Z3VLYo37xlLKvaWUu0spz1rtYlhbaq3XJflYkpRS\n",
1046 "tiV5pNY6NWy+LcnkYvc377EqpXxdkl+ac/rhWuueeS6/KMlHZx3PbIPDBrTQn50k/6rW+u7hNb9c\n",
1047 "SnnZzLppENtpsXTPrbWeLqV8e5K3JLl2tQtizbowybFZx0dzlpzSPFjVWv88yZPtYj2WZMes42ck\n",
1048 "+YvWNTEenuSfnd9K8i1JBCtmzPwc+avh8Y48MWjBE9RaTw9//eNSyo6zXc+GdjxPDFI78sSg9SVW\n",
1049 "66nAmW1t9id5dZKUUp6S5JVJTDrlCUopbyqlPHN4+D1J7lvNelhzZrbTmpl0Ou92WpAkpZTLSylX\n",
1050 "D7//1vxtIIcvUWs9lWRbKeXi4alrk9y12D2rFaz6JKm1PpjkD0spf5Dk3iRvq7VOr1JNrF3/K8n7\n",
1051 "Syn3JDlWaz2wyvWwhthOiyW6P8m1pZQDSW5M8ubVLYc1bGY++PVJ7hj+G/Q1tdb3LnaTLW0AABqx\n",
1052 "QCgAQCOCFQBAI4IVAEAjghUAQCOCFQBAI4IVAEAjghUAQCOCFQBAI4IVAEAj/x8Ld0kx4zM3zgAA\n",
1053 "AABJRU5ErkJggg==\n"
830 1054 ]
831 1055 },
832 1056 "metadata": {},
833 1057 "output_type": "display_data"
834 1058 }
835 1059 ],
836 1060 "source": [
837 1061 "display_png(x)\n",
838 1062 "display_png(x2)"
839 1063 ]
840 1064 },
841 1065 {
842 1066 "cell_type": "markdown",
843 1067 "metadata": {},
844 1068 "source": [
845 1069 "Note that like `print`, you can call any of the `display` functions multiple times in a cell."
846 1070 ]
847 1071 },
848 1072 {
849 1073 "cell_type": "markdown",
850 1074 "metadata": {},
851 1075 "source": [
852 1076 "## Adding IPython display support to existing objects"
853 1077 ]
854 1078 },
855 1079 {
856 1080 "cell_type": "markdown",
857 1081 "metadata": {},
858 1082 "source": [
859 1083 "When you are directly writing your own classes, you can adapt them for display in IPython by following the above approach. But in practice, you often need to work with existing classes that you can't easily modify. We now illustrate how to add rich output capabilities to existing objects. We will use the NumPy polynomials and change their default representation to be a formatted LaTeX expression."
860 1084 ]
861 1085 },
862 1086 {
863 1087 "cell_type": "markdown",
864 1088 "metadata": {},
865 1089 "source": [
866 1090 "First, consider how a NumPy polynomial object renders by default:"
867 1091 ]
868 1092 },
869 1093 {
870 1094 "cell_type": "code",
871 1095 "execution_count": 9,
872 1096 "metadata": {
873 1097 "collapsed": false
874 1098 },
875 1099 "outputs": [
876 1100 {
877 1101 "data": {
878 1102 "text/plain": [
879 "Polynomial([ 1., 2., 3.], [-10., 10.], [-1., 1.])"
1103 "Polynomial([ 1., 2., 3.], [-10., 10.], [-1, 1])"
880 1104 ]
881 1105 },
882 1106 "execution_count": 9,
883 1107 "metadata": {},
884 1108 "output_type": "execute_result"
885 1109 }
886 1110 ],
887 1111 "source": [
888 1112 "p = np.polynomial.Polynomial([1,2,3], [-10, 10])\n",
889 1113 "p"
890 1114 ]
891 1115 },
892 1116 {
893 1117 "cell_type": "markdown",
894 1118 "metadata": {},
895 1119 "source": [
896 1120 "Next, define a function that pretty-prints a polynomial as a LaTeX string:"
897 1121 ]
898 1122 },
899 1123 {
900 1124 "cell_type": "code",
901 1125 "execution_count": 10,
902 1126 "metadata": {
903 1127 "collapsed": false
904 1128 },
905 1129 "outputs": [],
906 1130 "source": [
907 1131 "def poly_to_latex(p):\n",
908 1132 " terms = ['%.2g' % p.coef[0]]\n",
909 1133 " if len(p) > 1:\n",
910 1134 " term = 'x'\n",
911 1135 " c = p.coef[1]\n",
912 1136 " if c!=1:\n",
913 1137 " term = ('%.2g ' % c) + term\n",
914 1138 " terms.append(term)\n",
915 1139 " if len(p) > 2:\n",
916 1140 " for i in range(2, len(p)):\n",
917 1141 " term = 'x^%d' % i\n",
918 1142 " c = p.coef[i]\n",
919 1143 " if c!=1:\n",
920 1144 " term = ('%.2g ' % c) + term\n",
921 1145 " terms.append(term)\n",
922 1146 " px = '$P(x)=%s$' % '+'.join(terms)\n",
923 1147 " dom = r', $x \\in [%.2g,\\ %.2g]$' % tuple(p.domain)\n",
924 1148 " return px+dom"
925 1149 ]
926 1150 },
927 1151 {
928 1152 "cell_type": "markdown",
929 1153 "metadata": {},
930 1154 "source": [
931 1155 "This produces, on our polynomial ``p``, the following:"
932 1156 ]
933 1157 },
934 1158 {
935 1159 "cell_type": "code",
936 1160 "execution_count": 11,
937 1161 "metadata": {
938 1162 "collapsed": false
939 1163 },
940 1164 "outputs": [
941 1165 {
942 1166 "data": {
943 1167 "text/plain": [
944 1168 "'$P(x)=1+2 x+3 x^2$, $x \\\\in [-10,\\\\ 10]$'"
945 1169 ]
946 1170 },
947 1171 "execution_count": 11,
948 1172 "metadata": {},
949 1173 "output_type": "execute_result"
950 1174 }
951 1175 ],
952 1176 "source": [
953 1177 "poly_to_latex(p)"
954 1178 ]
955 1179 },
956 1180 {
957 1181 "cell_type": "markdown",
958 1182 "metadata": {},
959 1183 "source": [
960 1184 "You can render this string using the `Latex` class:"
961 1185 ]
962 1186 },
963 1187 {
964 1188 "cell_type": "code",
965 1189 "execution_count": 12,
966 1190 "metadata": {
967 1191 "collapsed": false
968 1192 },
969 1193 "outputs": [
970 1194 {
971 1195 "data": {
972 1196 "text/latex": [
973 1197 "$P(x)=1+2 x+3 x^2$, $x \\in [-10,\\ 10]$"
974 1198 ],
975 1199 "text/plain": [
976 1200 "<IPython.core.display.Latex object>"
977 1201 ]
978 1202 },
979 1203 "execution_count": 12,
980 1204 "metadata": {},
981 1205 "output_type": "execute_result"
982 1206 }
983 1207 ],
984 1208 "source": [
985 1209 "from IPython.display import Latex\n",
986 1210 "Latex(poly_to_latex(p))"
987 1211 ]
988 1212 },
989 1213 {
990 1214 "cell_type": "markdown",
991 1215 "metadata": {},
992 1216 "source": [
993 1217 "However, you can configure IPython to do this automatically by registering the `Polynomial` class and the `plot_to_latex` function with an IPython display formatter. Let's look at the default formatters provided by IPython:"
994 1218 ]
995 1219 },
996 1220 {
997 1221 "cell_type": "code",
998 1222 "execution_count": 13,
999 1223 "metadata": {
1000 1224 "collapsed": false
1001 1225 },
1002 1226 "outputs": [
1003 1227 {
1004 1228 "name": "stdout",
1005 1229 "output_type": "stream",
1006 1230 "text": [
1007 " text/plain : PlainTextFormatter\n",
1008 " image/jpeg : JPEGFormatter\n",
1009 " text/html : HTMLFormatter\n",
1010 " image/svg+xml : SVGFormatter\n",
1011 1231 " image/png : PNGFormatter\n",
1012 " application/javascript : JavascriptFormatter\n",
1232 " application/pdf : PDFFormatter\n",
1233 " text/html : HTMLFormatter\n",
1234 " image/jpeg : JPEGFormatter\n",
1235 " text/plain : PlainTextFormatter\n",
1013 1236 " text/markdown : MarkdownFormatter\n",
1014 " text/latex : LatexFormatter\n",
1015 1237 " application/json : JSONFormatter\n",
1016 " application/pdf : PDFFormatter\n"
1238 " application/javascript : JavascriptFormatter\n",
1239 " text/latex : LatexFormatter\n",
1240 " image/svg+xml : SVGFormatter\n"
1017 1241 ]
1018 1242 }
1019 1243 ],
1020 1244 "source": [
1021 1245 "ip = get_ipython()\n",
1022 1246 "for mime, formatter in ip.display_formatter.formatters.items():\n",
1023 " print '%24s : %s' % (mime, formatter.__class__.__name__)"
1247 " print('%24s : %s' % (mime, formatter.__class__.__name__))"
1024 1248 ]
1025 1249 },
1026 1250 {
1027 1251 "cell_type": "markdown",
1028 1252 "metadata": {},
1029 1253 "source": [
1030 1254 "The `formatters` attribute is a dictionary keyed by MIME types. To define a custom LaTeX display function, you want a handle on the `text/latex` formatter:"
1031 1255 ]
1032 1256 },
1033 1257 {
1034 1258 "cell_type": "code",
1035 1259 "execution_count": 14,
1036 1260 "metadata": {
1037 1261 "collapsed": false
1038 1262 },
1039 1263 "outputs": [],
1040 1264 "source": [
1041 1265 "ip = get_ipython()\n",
1042 1266 "latex_f = ip.display_formatter.formatters['text/latex']"
1043 1267 ]
1044 1268 },
1045 1269 {
1046 1270 "cell_type": "markdown",
1047 1271 "metadata": {},
1048 1272 "source": [
1049 1273 "The formatter object has a couple of methods for registering custom display functions for existing types."
1050 1274 ]
1051 1275 },
1052 1276 {
1053 1277 "cell_type": "code",
1054 1278 "execution_count": 15,
1055 1279 "metadata": {
1056 1280 "collapsed": false
1057 1281 },
1058 1282 "outputs": [
1059 1283 {
1060 1284 "name": "stdout",
1061 1285 "output_type": "stream",
1062 1286 "text": [
1063 1287 "Help on method for_type in module IPython.core.formatters:\n",
1064 1288 "\n",
1065 "for_type(self, typ, func=None) method of IPython.core.formatters.LatexFormatter instance\n",
1289 "for_type(typ, func=None) method of IPython.core.formatters.LatexFormatter instance\n",
1066 1290 " Add a format function for a given type.\n",
1067 1291 " \n",
1068 1292 " Parameters\n",
1069 1293 " -----------\n",
1070 1294 " typ : type or '__module__.__name__' string for a type\n",
1071 1295 " The class of the object that will be formatted using `func`.\n",
1072 1296 " func : callable\n",
1073 1297 " A callable for computing the format data.\n",
1074 1298 " `func` will be called with the object to be formatted,\n",
1075 1299 " and will return the raw data in this formatter's format.\n",
1076 1300 " Subclasses may use a different call signature for the\n",
1077 1301 " `func` argument.\n",
1078 1302 " \n",
1079 1303 " If `func` is None or not specified, there will be no change,\n",
1080 1304 " only returning the current value.\n",
1081 1305 " \n",
1082 1306 " Returns\n",
1083 1307 " -------\n",
1084 1308 " oldfunc : callable\n",
1085 1309 " The currently registered callable.\n",
1086 1310 " If you are registering a new formatter,\n",
1087 1311 " this will be the previous value (to enable restoring later).\n",
1088 1312 "\n"
1089 1313 ]
1090 1314 }
1091 1315 ],
1092 1316 "source": [
1093 1317 "help(latex_f.for_type)"
1094 1318 ]
1095 1319 },
1096 1320 {
1097 1321 "cell_type": "code",
1098 1322 "execution_count": 16,
1099 1323 "metadata": {
1100 1324 "collapsed": false
1101 1325 },
1102 1326 "outputs": [
1103 1327 {
1104 1328 "name": "stdout",
1105 1329 "output_type": "stream",
1106 1330 "text": [
1107 1331 "Help on method for_type_by_name in module IPython.core.formatters:\n",
1108 1332 "\n",
1109 "for_type_by_name(self, type_module, type_name, func=None) method of IPython.core.formatters.LatexFormatter instance\n",
1333 "for_type_by_name(type_module, type_name, func=None) method of IPython.core.formatters.LatexFormatter instance\n",
1110 1334 " Add a format function for a type specified by the full dotted\n",
1111 1335 " module and name of the type, rather than the type of the object.\n",
1112 1336 " \n",
1113 1337 " Parameters\n",
1114 1338 " ----------\n",
1115 1339 " type_module : str\n",
1116 1340 " The full dotted name of the module the type is defined in, like\n",
1117 1341 " ``numpy``.\n",
1118 1342 " type_name : str\n",
1119 1343 " The name of the type (the class name), like ``dtype``\n",
1120 1344 " func : callable\n",
1121 1345 " A callable for computing the format data.\n",
1122 1346 " `func` will be called with the object to be formatted,\n",
1123 1347 " and will return the raw data in this formatter's format.\n",
1124 1348 " Subclasses may use a different call signature for the\n",
1125 1349 " `func` argument.\n",
1126 1350 " \n",
1127 1351 " If `func` is None or unspecified, there will be no change,\n",
1128 1352 " only returning the current value.\n",
1129 1353 " \n",
1130 1354 " Returns\n",
1131 1355 " -------\n",
1132 1356 " oldfunc : callable\n",
1133 1357 " The currently registered callable.\n",
1134 1358 " If you are registering a new formatter,\n",
1135 1359 " this will be the previous value (to enable restoring later).\n",
1136 1360 "\n"
1137 1361 ]
1138 1362 }
1139 1363 ],
1140 1364 "source": [
1141 1365 "help(latex_f.for_type_by_name)"
1142 1366 ]
1143 1367 },
1144 1368 {
1145 1369 "cell_type": "markdown",
1146 1370 "metadata": {},
1147 1371 "source": [
1148 1372 "In this case, we will use `for_type_by_name` to register `poly_to_latex` as the display function for the `Polynomial` type:"
1149 1373 ]
1150 1374 },
1151 1375 {
1152 1376 "cell_type": "code",
1153 "execution_count": 18,
1377 "execution_count": 17,
1154 1378 "metadata": {
1155 1379 "collapsed": false
1156 1380 },
1157 1381 "outputs": [],
1158 1382 "source": [
1159 1383 "latex_f.for_type_by_name('numpy.polynomial.polynomial',\n",
1160 1384 " 'Polynomial', poly_to_latex)"
1161 1385 ]
1162 1386 },
1163 1387 {
1164 1388 "cell_type": "markdown",
1165 1389 "metadata": {},
1166 1390 "source": [
1167 1391 "Once the custom display function has been registered, all NumPy `Polynomial` instances will be represented by their LaTeX form instead:"
1168 1392 ]
1169 1393 },
1170 1394 {
1171 1395 "cell_type": "code",
1172 "execution_count": 19,
1396 "execution_count": 18,
1173 1397 "metadata": {
1174 1398 "collapsed": false
1175 1399 },
1176 1400 "outputs": [
1177 1401 {
1178 1402 "data": {
1179 1403 "text/latex": [
1180 1404 "$P(x)=1+2 x+3 x^2$, $x \\in [-10,\\ 10]$"
1181 1405 ],
1182 1406 "text/plain": [
1183 "Polynomial([ 1., 2., 3.], [-10., 10.], [-1., 1.])"
1407 "Polynomial([ 1., 2., 3.], [-10., 10.], [-1, 1])"
1184 1408 ]
1185 1409 },
1186 "execution_count": 19,
1410 "execution_count": 18,
1187 1411 "metadata": {},
1188 1412 "output_type": "execute_result"
1189 1413 }
1190 1414 ],
1191 1415 "source": [
1192 1416 "p"
1193 1417 ]
1194 1418 },
1195 1419 {
1196 1420 "cell_type": "code",
1197 "execution_count": 20,
1421 "execution_count": 19,
1198 1422 "metadata": {
1199 1423 "collapsed": false
1200 1424 },
1201 1425 "outputs": [
1202 1426 {
1203 1427 "data": {
1204 1428 "text/latex": [
1205 1429 "$P(x)=-20+71 x+-15 x^2+x^3$, $x \\in [-1,\\ 1]$"
1206 1430 ],
1207 1431 "text/plain": [
1208 "Polynomial([-20., 71., -15., 1.], [-1., 1.], [-1., 1.])"
1432 "Polynomial([-20., 71., -15., 1.], [-1, 1], [-1, 1])"
1209 1433 ]
1210 1434 },
1211 "execution_count": 20,
1435 "execution_count": 19,
1212 1436 "metadata": {},
1213 1437 "output_type": "execute_result"
1214 1438 }
1215 1439 ],
1216 1440 "source": [
1217 1441 "p2 = np.polynomial.Polynomial([-20, 71, -15, 1])\n",
1218 1442 "p2"
1219 1443 ]
1220 1444 },
1221 1445 {
1222 1446 "cell_type": "markdown",
1223 1447 "metadata": {},
1224 1448 "source": [
1225 1449 "## More complex display with `_ipython_display_`"
1226 1450 ]
1227 1451 },
1228 1452 {
1229 1453 "cell_type": "markdown",
1230 1454 "metadata": {},
1231 1455 "source": [
1232 1456 "Rich output special methods and functions can only display one object or MIME type at a time. Sometimes this is not enough if you want to display multiple objects or MIME types at once. An example of this would be to use an HTML representation to put some HTML elements in the DOM and then use a JavaScript representation to add events to those elements.\n",
1233 1457 "\n",
1234 1458 "**IPython 2.0** recognizes another display method, `_ipython_display_`, which allows your objects to take complete control of displaying themselves. If this method is defined, IPython will call it, and make no effort to display the object using the above described `_repr_*_` methods for custom display functions. It's a way for you to say \"Back off, IPython, I can display this myself.\" Most importantly, your `_ipython_display_` method can make multiple calls to the top-level `display` functions to accomplish its goals.\n",
1235 1459 "\n",
1236 1460 "Here is an object that uses `display_html` and `display_javascript` to make a plot using the [Flot](http://www.flotcharts.org/) JavaScript plotting library:"
1237 1461 ]
1238 1462 },
1239 1463 {
1240 1464 "cell_type": "code",
1241 "execution_count": 21,
1465 "execution_count": 20,
1242 1466 "metadata": {
1243 1467 "collapsed": false
1244 1468 },
1245 1469 "outputs": [],
1246 1470 "source": [
1247 1471 "import json\n",
1248 1472 "import uuid\n",
1249 1473 "from IPython.display import display_javascript, display_html, display\n",
1250 1474 "\n",
1251 1475 "class FlotPlot(object):\n",
1252 1476 " def __init__(self, x, y):\n",
1253 1477 " self.x = x\n",
1254 1478 " self.y = y\n",
1255 1479 " self.uuid = str(uuid.uuid4())\n",
1256 1480 " \n",
1257 1481 " def _ipython_display_(self):\n",
1258 " json_data = json.dumps(zip(self.x, self.y))\n",
1482 " json_data = json.dumps(list(zip(self.x, self.y)))\n",
1259 1483 " display_html('<div id=\"{}\" style=\"height: 300px; width:80%;\"></div>'.format(self.uuid),\n",
1260 1484 " raw=True\n",
1261 1485 " )\n",
1262 1486 " display_javascript(\"\"\"\n",
1263 1487 " require([\"//cdnjs.cloudflare.com/ajax/libs/flot/0.8.2/jquery.flot.min.js\"], function() {\n",
1264 1488 " var line = JSON.parse(\"%s\");\n",
1265 1489 " console.log(line);\n",
1266 1490 " $.plot(\"#%s\", [line]);\n",
1267 1491 " });\n",
1268 1492 " \"\"\" % (json_data, self.uuid), raw=True)\n"
1269 1493 ]
1270 1494 },
1271 1495 {
1272 1496 "cell_type": "code",
1273 "execution_count": 22,
1497 "execution_count": 21,
1274 1498 "metadata": {
1275 1499 "collapsed": false
1276 1500 },
1277 1501 "outputs": [
1278 1502 {
1279 1503 "data": {
1280 1504 "text/html": [
1281 "<div id=\"e75b8189-92cb-4cbb-9996-bb8ad5ff1b4e\" style=\"height: 300px; width:80%;\"></div>"
1505 "<div id=\"4ad544ff-a161-4493-ba2c-f99531e317bd\" style=\"height: 300px; width:80%;\"></div>"
1282 1506 ]
1283 1507 },
1284 1508 "metadata": {},
1285 1509 "output_type": "display_data"
1286 1510 },
1287 1511 {
1288 1512 "data": {
1289 1513 "application/javascript": [
1290 1514 "\n",
1291 1515 " require([\"//cdnjs.cloudflare.com/ajax/libs/flot/0.8.2/jquery.flot.min.js\"], function() {\n",
1292 " var line = JSON.parse(\"[[0.0, 0.0], [0.20408163265306123, 0.20266793654820095], [0.40816326530612246, 0.39692414892492234], [0.61224489795918369, 0.57470604121617908], [0.81632653061224492, 0.72863478346935029], [1.0204081632653061, 0.85232156971961837], [1.2244897959183674, 0.94063278511248671], [1.4285714285714286, 0.98990307637212394], [1.6326530612244898, 0.99808748213471832], [1.8367346938775511, 0.96484630898376322], [2.0408163265306123, 0.89155923041100371], [2.2448979591836737, 0.7812680235262639], [2.4489795918367347, 0.63855032022660208], [2.6530612244897958, 0.46932961277720098], [2.8571428571428572, 0.28062939951435684], [3.0612244897959187, 0.080281674842813497], [3.2653061224489797, -0.12339813736217871], [3.4693877551020407, -0.32195631507261868], [3.6734693877551021, -0.50715170948451438], [3.8775510204081636, -0.67129779355193209], [4.0816326530612246, -0.80758169096833643], [4.2857142857142856, -0.91034694431078278], [4.4897959183673475, -0.97532828606704558], [4.6938775510204085, -0.99982866838408957], [4.8979591836734695, -0.98283120392563061], [5.1020408163265305, -0.92504137173820289], [5.3061224489795915, -0.82885773637304272], [5.5102040816326534, -0.69827239556539955], [5.7142857142857144, -0.53870528838615628], [5.9183673469387754, -0.35677924089893803], [6.1224489795918373, -0.16004508604325057], [6.3265306122448983, 0.043331733368683463], [6.5306122448979593, 0.24491007101197931], [6.7346938775510203, 0.43632342647181932], [6.9387755102040813, 0.6096271964908323], [7.1428571428571432, 0.75762841539272019], [7.3469387755102042, 0.87418429881973347], [7.5510204081632653, 0.95445719973875187], [7.7551020408163271, 0.99511539477766364], [7.9591836734693882, 0.99447136726361685], [8.1632653061224492, 0.95255184753146038], [8.3673469387755102, 0.87109670348232071], [8.5714285714285712, 0.75348672743963763], [8.7755102040816322, 0.60460331650615429], [8.979591836734695, 0.43062587038273736], [9.183673469387756, 0.23877531564403087], [9.387755102040817, 0.037014401485062368], [9.591836734693878, -0.16628279384875641], [9.795918367346939, -0.36267842882654883], [10.0, -0.54402111088936989]]\");\n",
1516 " var line = JSON.parse(\"[[0.0, 0.0], [0.20408163265306123, 0.20266793654820095], [0.40816326530612246, 0.39692414892492234], [0.6122448979591837, 0.5747060412161791], [0.8163265306122449, 0.7286347834693503], [1.0204081632653061, 0.8523215697196184], [1.2244897959183674, 0.9406327851124867], [1.4285714285714286, 0.9899030763721239], [1.6326530612244898, 0.9980874821347183], [1.836734693877551, 0.9648463089837632], [2.0408163265306123, 0.8915592304110037], [2.2448979591836737, 0.7812680235262639], [2.4489795918367347, 0.6385503202266021], [2.6530612244897958, 0.469329612777201], [2.857142857142857, 0.28062939951435684], [3.0612244897959187, 0.0802816748428135], [3.2653061224489797, -0.12339813736217871], [3.4693877551020407, -0.3219563150726187], [3.673469387755102, -0.5071517094845144], [3.8775510204081636, -0.6712977935519321], [4.081632653061225, -0.8075816909683364], [4.285714285714286, -0.9103469443107828], [4.4897959183673475, -0.9753282860670456], [4.6938775510204085, -0.9998286683840896], [4.8979591836734695, -0.9828312039256306], [5.1020408163265305, -0.9250413717382029], [5.3061224489795915, -0.8288577363730427], [5.510204081632653, -0.6982723955653996], [5.714285714285714, -0.5387052883861563], [5.918367346938775, -0.35677924089893803], [6.122448979591837, -0.16004508604325057], [6.326530612244898, 0.04333173336868346], [6.530612244897959, 0.2449100710119793], [6.73469387755102, 0.4363234264718193], [6.938775510204081, 0.6096271964908323], [7.142857142857143, 0.7576284153927202], [7.346938775510204, 0.8741842988197335], [7.551020408163265, 0.9544571997387519], [7.755102040816327, 0.9951153947776636], [7.959183673469388, 0.9944713672636168], [8.16326530612245, 0.9525518475314604], [8.36734693877551, 0.8710967034823207], [8.571428571428571, 0.7534867274396376], [8.775510204081632, 0.6046033165061543], [8.979591836734695, 0.43062587038273736], [9.183673469387756, 0.23877531564403087], [9.387755102040817, 0.03701440148506237], [9.591836734693878, -0.1662827938487564], [9.795918367346939, -0.3626784288265488], [10.0, -0.5440211108893699]]\");\n",
1293 1517 " console.log(line);\n",
1294 " $.plot(\"#e75b8189-92cb-4cbb-9996-bb8ad5ff1b4e\", [line]);\n",
1518 " $.plot(\"#4ad544ff-a161-4493-ba2c-f99531e317bd\", [line]);\n",
1295 1519 " });\n",
1296 1520 " "
1297 1521 ]
1298 1522 },
1299 1523 "metadata": {},
1300 1524 "output_type": "display_data"
1301 1525 }
1302 1526 ],
1303 1527 "source": [
1304 1528 "import numpy as np\n",
1305 1529 "x = np.linspace(0,10)\n",
1306 1530 "y = np.sin(x)\n",
1307 1531 "FlotPlot(x, np.sin(x))"
1308 1532 ]
1309 },
1310 {
1311 "cell_type": "code",
1312 "execution_count": null,
1313 "metadata": {
1314 "collapsed": false
1315 },
1316 "outputs": [],
1317 "source": []
1318 1533 }
1319 1534 ],
1320 1535 "metadata": {
1321 1536 "kernelspec": {
1322 1537 "display_name": "Python 3",
1323 1538 "language": "python",
1324 1539 "name": "python3"
1325 1540 },
1326 1541 "language_info": {
1327 1542 "codemirror_mode": {
1328 1543 "name": "ipython",
1329 1544 "version": 3
1330 1545 },
1331 1546 "file_extension": ".py",
1332 1547 "mimetype": "text/x-python",
1333 1548 "name": "python",
1334 1549 "nbconvert_exporter": "python",
1335 1550 "pygments_lexer": "ipython3",
1336 1551 "version": "3.4.2"
1337 1552 }
1338 1553 },
1339 1554 "nbformat": 4,
1340 1555 "nbformat_minor": 0
1341 1556 }
@@ -1,184 +1,198 b''
1 1 {
2 2 "cells": [
3 3 {
4 4 "cell_type": "markdown",
5 5 "metadata": {},
6 6 "source": [
7 7 "<img src=\"../images/ipython_logo.png\">"
8 8 ]
9 9 },
10 10 {
11 11 "cell_type": "markdown",
12 12 "metadata": {},
13 13 "source": [
14 14 "Back to the main [Index](../Index.ipynb)"
15 15 ]
16 16 },
17 17 {
18 18 "cell_type": "markdown",
19 19 "metadata": {},
20 20 "source": [
21 21 "# IPython Kernel"
22 22 ]
23 23 },
24 24 {
25 25 "cell_type": "markdown",
26 26 "metadata": {},
27 27 "source": [
28 28 "IPython provides extensions to the Python programming language that make working interactively convenient and efficient. These extensions are implemented in the IPython Kernel and are available in all of the IPython Frontends (Notebook, Terminal, Console and Qt Console) when running this kernel."
29 29 ]
30 30 },
31 31 {
32 32 "cell_type": "markdown",
33 33 "metadata": {},
34 34 "source": [
35 35 "## Tutorials"
36 36 ]
37 37 },
38 38 {
39 39 "cell_type": "markdown",
40 40 "metadata": {},
41 41 "source": [
42 42 "* [Cell Magics](Cell Magics.ipynb)\n",
43 43 "* [Script Magics](Script Magics.ipynb)\n",
44 44 "* [Rich Output](Rich Output.ipynb)\n",
45 45 "* [Custom Display Logic](Custom Display Logic.ipynb)\n",
46 46 "* [Plotting in the Notebook](Plotting in the Notebook.ipynb)\n",
47 47 "* [Capturing Output](Capturing Output.ipynb)"
48 48 ]
49 49 },
50 50 {
51 51 "cell_type": "markdown",
52 52 "metadata": {},
53 53 "source": [
54 54 "## Examples"
55 55 ]
56 56 },
57 57 {
58 58 "cell_type": "markdown",
59 59 "metadata": {},
60 60 "source": [
61 61 "* [Background Jobs](Background Jobs.ipynb)\n",
62 62 "* [Trapezoid Rule](Trapezoid Rule.ipynb)\n",
63 63 "* [SymPy](SymPy.ipynb)\n",
64 64 "* [Raw Input in the Notebook](Raw Input in the Notebook.ipynb)"
65 65 ]
66 66 },
67 67 {
68 68 "cell_type": "markdown",
69 69 "metadata": {},
70 70 "source": [
71 71 "## Non-notebook examples"
72 72 ]
73 73 },
74 74 {
75 75 "cell_type": "markdown",
76 76 "metadata": {},
77 77 "source": [
78 78 "This directory also contains examples that are regular Python (`.py`) files."
79 79 ]
80 80 },
81 81 {
82 82 "cell_type": "code",
83 83 "execution_count": 1,
84 84 "metadata": {
85 85 "collapsed": false
86 86 },
87 87 "outputs": [
88 88 {
89 89 "data": {
90 90 "text/html": [
91 91 "<a href='example-demo.py' target='_blank'>example-demo.py</a><br>"
92 92 ],
93 93 "text/plain": [
94 "/Users/bgranger/Documents/Computing/IPython/code/ipython/examples/IPython Kernel/example-demo.py"
94 "/Users/minrk/dev/ip/mine/examples/IPython Kernel/example-demo.py"
95 95 ]
96 96 },
97 97 "metadata": {},
98 98 "output_type": "display_data"
99 99 },
100 100 {
101 101 "data": {
102 102 "text/html": [
103 103 "<a href='ipython-get-history.py' target='_blank'>ipython-get-history.py</a><br>"
104 104 ],
105 105 "text/plain": [
106 "/Users/bgranger/Documents/Computing/IPython/code/ipython/examples/IPython Kernel/ipython-get-history.py"
106 "/Users/minrk/dev/ip/mine/examples/IPython Kernel/ipython-get-history.py"
107 107 ]
108 108 },
109 109 "metadata": {},
110 110 "output_type": "display_data"
111 111 }
112 112 ],
113 113 "source": [
114 114 "%run ../utils/list_pyfiles.ipy"
115 115 ]
116 116 },
117 117 {
118 118 "cell_type": "markdown",
119 119 "metadata": {},
120 120 "source": [
121 121 "There are also a set of examples that show how to integrate IPython with different GUI event loops:"
122 122 ]
123 123 },
124 124 {
125 125 "cell_type": "code",
126 126 "execution_count": 2,
127 127 "metadata": {
128 128 "collapsed": false
129 129 },
130 130 "outputs": [
131 131 {
132 132 "data": {
133 133 "text/html": [
134 "data/<br>\n",
135 "&nbsp;&nbsp;<a href='data/flare.json' target='_blank'>flare.json</a><br>"
136 ],
137 "text/plain": [
138 "data/\n",
139 " flare.json"
140 ]
141 },
142 "metadata": {},
143 "output_type": "display_data"
144 },
145 {
146 "data": {
147 "text/html": [
134 148 "gui/<br>\n",
135 149 "&nbsp;&nbsp;<a href='gui/gui-glut.py' target='_blank'>gui-glut.py</a><br>\n",
136 150 "&nbsp;&nbsp;<a href='gui/gui-gtk.py' target='_blank'>gui-gtk.py</a><br>\n",
137 151 "&nbsp;&nbsp;<a href='gui/gui-gtk3.py' target='_blank'>gui-gtk3.py</a><br>\n",
138 152 "&nbsp;&nbsp;<a href='gui/gui-pyglet.py' target='_blank'>gui-pyglet.py</a><br>\n",
139 153 "&nbsp;&nbsp;<a href='gui/gui-qt.py' target='_blank'>gui-qt.py</a><br>\n",
140 154 "&nbsp;&nbsp;<a href='gui/gui-tk.py' target='_blank'>gui-tk.py</a><br>\n",
141 155 "&nbsp;&nbsp;<a href='gui/gui-wx.py' target='_blank'>gui-wx.py</a><br>"
142 156 ],
143 157 "text/plain": [
144 158 "gui/\n",
145 159 " gui-glut.py\n",
146 160 " gui-gtk.py\n",
147 161 " gui-gtk3.py\n",
148 162 " gui-pyglet.py\n",
149 163 " gui-qt.py\n",
150 164 " gui-tk.py\n",
151 165 " gui-wx.py"
152 166 ]
153 167 },
154 168 "metadata": {},
155 169 "output_type": "display_data"
156 170 }
157 171 ],
158 172 "source": [
159 173 "%run ../utils/list_subdirs.ipy"
160 174 ]
161 175 }
162 176 ],
163 177 "metadata": {
164 178 "kernelspec": {
165 179 "display_name": "Python 3",
166 180 "language": "python",
167 181 "name": "python3"
168 182 },
169 183 "language_info": {
170 184 "codemirror_mode": {
171 185 "name": "ipython",
172 186 "version": 3
173 187 },
174 188 "file_extension": ".py",
175 189 "mimetype": "text/x-python",
176 190 "name": "python",
177 191 "nbconvert_exporter": "python",
178 192 "pygments_lexer": "ipython3",
179 193 "version": "3.4.2"
180 194 }
181 195 },
182 196 "nbformat": 4,
183 197 "nbformat_minor": 0
184 198 }
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: file was removed
The requested commit or file is too big and content was truncated. Show full diff
General Comments 0
You need to be logged in to leave comments. Login now