├── .gitignore ├── LICENSE ├── README.md ├── __init__.py ├── esn_cell.py ├── esn_cell_test.py ├── example.ipynb └── mgdata.dat.txt /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | 3 | # Byte-compiled / optimized / DLL files 4 | __pycache__/ 5 | *.py[cod] 6 | *$py.class 7 | 8 | # C extensions 9 | *.so 10 | 11 | # Distribution / packaging 12 | .Python 13 | env/ 14 | build/ 15 | develop-eggs/ 16 | dist/ 17 | downloads/ 18 | eggs/ 19 | .eggs/ 20 | lib/ 21 | lib64/ 22 | parts/ 23 | sdist/ 24 | var/ 25 | *.egg-info/ 26 | .installed.cfg 27 | *.egg 28 | 29 | # PyInstaller 30 | # Usually these files are written by a python script from a template 31 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 32 | *.manifest 33 | *.spec 34 | 35 | # Installer logs 36 | pip-log.txt 37 | pip-delete-this-directory.txt 38 | 39 | # Unit test / coverage reports 40 | htmlcov/ 41 | .tox/ 42 | .coverage 43 | .coverage.* 44 | .cache 45 | nosetests.xml 46 | coverage.xml 47 | *,cover 48 | .hypothesis/ 49 | 50 | # Translations 51 | *.mo 52 | *.pot 53 | 54 | # Django stuff: 55 | *.log 56 | local_settings.py 57 | 58 | # Flask stuff: 59 | instance/ 60 | .webassets-cache 61 | 62 | # Scrapy stuff: 63 | .scrapy 64 | 65 | # Sphinx documentation 66 | docs/_build/ 67 | 68 | # PyBuilder 69 | target/ 70 | 71 | # IPython Notebook 72 | .ipynb_checkpoints 73 | 74 | # pyenv 75 | .python-version 76 | 77 | # celery beat schedule file 78 | celerybeat-schedule 79 | 80 | # dotenv 81 | .env 82 | 83 | # virtualenv 84 | venv/ 85 | ENV/ 86 | 87 | # Spyder project settings 88 | .spyderproject 89 | 90 | # Rope project settings 91 | .ropeproject 92 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2016 Michele Colombo 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Tensorflow-EchoStateNetwork 2 | Echo state network implementation on TensorFlow. The reservoir is provided as an `RNNCell`. 3 | ## How to 4 | - See [`example.ipynb`](example.ipynb) for an example on how to use the library. 5 | - Read the docs in [`esn_cell.py`](esn_cell.py) for more in depth details. 6 | - See [PracticalESN](https://pdfs.semanticscholar.org/11bb/0941b1f6088783e26d7f9603789ee1db7faa.pdf) for some good advice on how to use Echo State Networks successfully. 7 | If link is broken search for: 8 | >Lukoševičius, Mantas. "A practical guide to applying echo state networks." Neural networks: Tricks of the trade. Springer, Berlin, Heidelberg, 2012. 659-686. 9 | ## Tensorflow Versions: 10 | Currently it has been tested on 1.12 on python 2.7. Some older version are supported on dedicated branches. 11 | 12 | ## Contributing 13 | Feel free :) -------------------------------------------------------------------------------- /__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/m-colombo/Tensorflow-EchoStateNetwork/4487ba44affc478a3766bf668c5dfd7265c7ea62/__init__.py -------------------------------------------------------------------------------- /esn_cell.py: -------------------------------------------------------------------------------- 1 | from tensorflow.python.ops import rnn_cell_impl 2 | from tensorflow.python.ops import init_ops 3 | from tensorflow.python.ops import math_ops 4 | from tensorflow.python.ops import random_ops 5 | from tensorflow.python.ops import array_ops 6 | from tensorflow.python.ops import variable_scope as vs 7 | from tensorflow.python.framework.ops import convert_to_tensor 8 | 9 | 10 | class ESNCell(rnn_cell_impl.RNNCell): 11 | """Echo State Network Cell. 12 | 13 | Based on http://www.faculty.jacobs-university.de/hjaeger/pubs/EchoStatesTechRep.pdf 14 | Only the reservoir, the randomized recurrent layer, is modelled. The readout trainable layer 15 | which map reservoir output to the target output is not implemented by this cell, 16 | thus neither are feedback from readout to the reservoir (a quite common technique). 17 | 18 | Here a practical guide to use Echo State Networks: 19 | L., Mantas. "A practical guide to applying echo state networks." N 20 | eural networks: Tricks of the trade. Springer, Berlin, Heidelberg, 2012. 659-686. 21 | https://pdfs.semanticscholar.org/11bb/0941b1f6088783e26d7f9603789ee1db7faa.pdf 22 | 23 | Since at the moment TF doesn't provide a way to compute spectral radius 24 | of a matrix the echo state property necessary condition `max(eig(W)) < 1` is approximated 25 | scaling the norm 2 of the reservoir matrix which is an upper bound of the spectral radius. 26 | See https://en.wikipedia.org/wiki/Matrix_norm, the section on induced norms. 27 | 28 | """ 29 | 30 | def __init__(self, num_units, wr2_scale=0.7, connectivity=0.1, leaky=1.0, activation=math_ops.tanh, 31 | win_init=init_ops.random_normal_initializer(), 32 | wr_init=init_ops.random_normal_initializer(), 33 | bias_init=init_ops.random_normal_initializer()): 34 | """Initialize the Echo State Network Cell. 35 | 36 | Args: 37 | num_units: Int or 0-D Int Tensor, the number of units in the reservoir 38 | wr2_scale: desired norm2 of reservoir weight matrix. 39 | `wr2_scale < 1` is a sufficient condition for echo state property. 40 | connectivity: connection probability between two reservoir units 41 | leaky: leaky parameter 42 | activation: activation function 43 | win_init: initializer for input weights 44 | wr_init: used to initialize reservoir weights before applying connectivity mask and scaling 45 | bias_init: initializer for biases 46 | """ 47 | self._num_units = num_units 48 | self._leaky = leaky 49 | self._activation = activation 50 | 51 | def _wr_initializer(shape, dtype, partition_info=None): 52 | wr = wr_init(shape, dtype=dtype) 53 | 54 | connectivity_mask = math_ops.cast( 55 | math_ops.less_equal( 56 | random_ops.random_uniform(shape), 57 | connectivity), 58 | dtype) 59 | 60 | wr = math_ops.multiply(wr, connectivity_mask) 61 | 62 | wr_norm2 = math_ops.sqrt(math_ops.reduce_sum(math_ops.square(wr))) 63 | 64 | is_norm_0 = math_ops.cast(math_ops.equal(wr_norm2, 0), dtype) 65 | 66 | wr = wr * wr2_scale / (wr_norm2 + 1 * is_norm_0) 67 | 68 | return wr 69 | 70 | self._win_initializer = win_init 71 | self._bias_initializer = bias_init 72 | self._wr_initializer = _wr_initializer 73 | 74 | @property 75 | def output_size(self): 76 | return self._num_units 77 | 78 | @property 79 | def state_size(self): 80 | return self._num_units 81 | 82 | def __call__(self, inputs, state, scope=None): 83 | """ Run one step of ESN Cell 84 | 85 | Args: 86 | inputs: `2-D Tensor` with shape `[batch_size x input_size]`. 87 | state: `2-D Tensor` with shape `[batch_size x self.state_size]`. 88 | scope: VariableScope for the created subgraph; defaults to class `ESNCell`. 89 | 90 | Returns: 91 | A tuple `(output, new_state)`, computed as 92 | `output = new_state = (1 - leaky) * state + leaky * activation(Win * input + Wr * state + B)`. 93 | 94 | Raises: 95 | ValueError: if `inputs` or `state` tensor size mismatch the previously provided dimension. 96 | """ 97 | 98 | inputs = convert_to_tensor(inputs) 99 | input_size = inputs.get_shape().as_list()[1] 100 | dtype = inputs.dtype 101 | 102 | with vs.variable_scope(scope or type(self).__name__): # "ESNCell" 103 | 104 | win = vs.get_variable("InputMatrix", [input_size, self._num_units], dtype=dtype, 105 | trainable=False, initializer=self._win_initializer) 106 | wr = vs.get_variable("ReservoirMatrix", [self._num_units, self._num_units], dtype=dtype, 107 | trainable=False, initializer=self._wr_initializer) 108 | b = vs.get_variable("Bias", [self._num_units], dtype=dtype, trainable=False, initializer=self._bias_initializer) 109 | 110 | in_mat = array_ops.concat([inputs, state], axis=1) 111 | weights_mat = array_ops.concat([win, wr], axis=0) 112 | 113 | output = (1 - self._leaky) * state + self._leaky * self._activation(math_ops.matmul(in_mat, weights_mat) + b) 114 | 115 | return output, output 116 | -------------------------------------------------------------------------------- /esn_cell_test.py: -------------------------------------------------------------------------------- 1 | import tensorflow as tf 2 | import numpy as np 3 | from esn_cell import ESNCell 4 | 5 | 6 | class ESNCellTest(tf.test.TestCase): 7 | 8 | def test_esn_dynamics(self): 9 | """ Simple test of reservoir dynamics """ 10 | 11 | # Data 12 | w_r = np.array([[0.03887243, -0.28983904, -0.53829223], 13 | [0.06456875, 0.0, 0.151112258], 14 | [-0.042949107, -0.48700565, -0.22361958]]) 15 | w_in = np.array([[0.3, 0.2], [-0.2, 0.01], [0.1, -0.4]]) 16 | w_bias = np.array([[0.2, -0.1, -0.34]]) 17 | 18 | x = np.array([[1, 0.3], [0.1, 0.4], [-1, 0.3], [-0.3, 0.4]]) 19 | states_zero = np.array([[0.0, 0.0, 0.0]]) 20 | 21 | # Manually compute reservoir states 22 | s = states_zero 23 | states_manual = np.array(states_zero) 24 | for i in x: 25 | s = np.tanh(np.matmul(w_in, i) + np.matmul(s, w_r) + w_bias) 26 | states_manual = np.append(states_manual, s, axis=0) 27 | states_manual = states_manual[1:] 28 | 29 | # Oger 30 | # ESN_O = Oger.nodes.ReservoirNode(w_in=w_in, w_bias=w_bias, w=w_r.transpose(), output_dim=3, reset_states=True) 31 | # ESN_O.states = states_zero 32 | # states_Oger = ESN_O(x) 33 | 34 | # Tensorflow 35 | with tf.variable_scope("rnn/ESNCell"): 36 | tf.get_variable(initializer=w_r, name='ReservoirMatrix') 37 | tf.get_variable(initializer=w_in.transpose(), name="InputMatrix") 38 | tf.get_variable(initializer=w_bias[0], name="Bias") 39 | 40 | tf.get_variable_scope().reuse_variables() 41 | cell = ESNCell(num_units=np.size(w_r, axis=1)) 42 | (outs, _) = tf.nn.dynamic_rnn(cell=cell, inputs=np.reshape(x, [1, 4, 2]), initial_state=states_zero, 43 | time_major=False) 44 | with tf.Session() as sess: 45 | sess.run(tf.global_variables_initializer()) 46 | states_tf = sess.run(outs) 47 | 48 | self.assertAllClose(states_manual, states_tf[0]) 49 | 50 | def smoke_test(self): 51 | """ A simple smoke test with random initialization""" 52 | 53 | input_size = 4 54 | input_length = 4 55 | batch_size = 2 56 | n_units = 4 57 | 58 | cell = ESNCell(n_units) 59 | inputs = np.random.random([input_length, batch_size, input_size]) 60 | 61 | state = cell.zero_state(batch_size, tf.float64) 62 | for i in range(input_length): 63 | if i > 0 : tf.get_variable_scope().reuse_variables() 64 | state, _ = cell(inputs[i, :, :], state) 65 | 66 | with self.test_session() as sess: 67 | sess.run(tf.global_variables_initializer()) 68 | 69 | final_states = sess.run(state) 70 | 71 | expected_final_states = [[-0.56735968, -0.21625957, 0.69647415, -0.91361383], 72 | [-0.22654705, -0.15751715, 0.85077971, -0.89757621]] 73 | 74 | self.assertAllClose(final_states, expected_final_states) 75 | 76 | if __name__ == "__main__": 77 | tf.test.main() -------------------------------------------------------------------------------- /example.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "code", 5 | "execution_count": 2, 6 | "metadata": {}, 7 | "outputs": [ 8 | { 9 | "data": { 10 | "image/png": "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\n", 11 | "text/plain": [ 12 | "
" 13 | ] 14 | }, 15 | "metadata": { 16 | "needs_background": "light" 17 | }, 18 | "output_type": "display_data" 19 | } 20 | ], 21 | "source": [ 22 | "import tensorflow as tf\n", 23 | "import matplotlib.pyplot as plt\n", 24 | "\n", 25 | "# Read Mackey-Glass data\n", 26 | "# see http://www.scholarpedia.org/article/Mackey-Glass_equation\n", 27 | "\n", 28 | "with open('mgdata.dat.txt') as f:\n", 29 | " data = map(lambda l: float(l.split(' ')[1]), f.readlines())\n", 30 | "\n", 31 | "_=plt.plot(data)" 32 | ] 33 | }, 34 | { 35 | "cell_type": "code", 36 | "execution_count": 3, 37 | "metadata": {}, 38 | "outputs": [], 39 | "source": [ 40 | "from esn_cell import ESNCell\n", 41 | "import numpy as np\n", 42 | "\n", 43 | "washout_size=50\n", 44 | "units=30\n", 45 | "\n", 46 | "# build the graph and evaluate it\n", 47 | "tf.reset_default_graph() # so multiple evaluations won't fail\n", 48 | "\n", 49 | "data_t = tf.reshape(tf.constant(data), [1, -1, 1]) # reshaped for dynamic_rnn: [batch, time, elements]\n", 50 | "\n", 51 | "esn = ESNCell(num_units=units, connectivity=0.2, wr2_scale=0.7)\n", 52 | "states_t, _ = tf.nn.dynamic_rnn(esn, data_t, dtype=tf.float32)\n", 53 | "washed_t = tf.reshape(states_t[:, washout_size:, :], [-1, units])\n", 54 | "\n", 55 | "with tf.Session() as S:\n", 56 | " tf.global_variables_initializer().run()\n", 57 | " states = np.mat(washed_t.eval())" 58 | ] 59 | }, 60 | { 61 | "cell_type": "code", 62 | "execution_count": 4, 63 | "metadata": {}, 64 | "outputs": [ 65 | { 66 | "name": "stdout", 67 | "output_type": "stream", 68 | "text": [ 69 | "Test MSE: 0.001225\n" 70 | ] 71 | } 72 | ], 73 | "source": [ 74 | "tr_size=500 # we train on the first 500 samples to perform next step prediction\n", 75 | "beta_ridge=1 # with lower beta, 0.01, it fits much better. You can't see the difference in the plot\n", 76 | "\n", 77 | "# train data\n", 78 | "tr_states = states[:tr_size]\n", 79 | "tr_target = np.expand_dims(data[washout_size+1:tr_size+washout_size+1], axis=0)\n", 80 | "\n", 81 | "# test\n", 82 | "ts_states = states[tr_size:]\n", 83 | "ts_target = np.mat(data[washout_size+tr_size+1:]).transpose()\n", 84 | "\n", 85 | "# ridge regression to compute the output projection\n", 86 | "wout = tr_target * tr_states * np.linalg.inv(np.transpose(tr_states) * tr_states + beta_ridge*np.eye(states.shape[1]))\n", 87 | "wout = wout.transpose()\n", 88 | "\n", 89 | "ts_out = (ts_states * wout)[:-1]\n", 90 | "\n", 91 | "ts_mse = np.mean(np.square(ts_target - ts_out))\n", 92 | "print(\"Test MSE: %f\" % ts_mse)" 93 | ] 94 | }, 95 | { 96 | "cell_type": "code", 97 | "execution_count": 5, 98 | "metadata": {}, 99 | "outputs": [ 100 | { 101 | "data": { 102 | "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXcAAAD8CAYAAACMwORRAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAIABJREFUeJzsvWm4JNlZHvie2CMzb9699r26qxf1ot4kgVbEYmQBQpbMYhvwGAYzxgxjP2ZgjAyDWQxibBiMEdswAg1I2BgNSAiQENqlRuqWelO3uru2rqpby11zjT3i+MeJE3mXjIgTmVF1M6/yfZ56nro3M+OeG/eL93znW96PUEoxwQQTTDDB3oK02wuYYIIJJpigfEzIfYIJJphgD2JC7hNMMMEEexATcp9gggkm2IOYkPsEE0wwwR7EhNwnmGCCCfYgJuQ+wQQTTLAHMSH3CSaYYII9iAm5TzDBBBPsQSi79YMXFhboiRMnduvHTzDBBBOMJR5//PFVSuli3vt2jdxPnDiBxx57bLd+/AQTTDDBWIIQ8pLI+yZhmQkmmGCCPYgJuU8wwQQT7EFMyH2CCSaYYA9iQu4TTDDBBHsQE3KfYIIJJtiDmJD7BBNMMMEexITcJ5hgggn2ICbkPsFAoJTiw1++jhdutHd7KRNMMEEf7Alyn8yBvfX4xAsr+MH3PI4f+5OndnspE0wwQR+MPbk3bR8v//cfwR/+nVDT1gQl4dHz6wCACyudXV7JBBPcOqx1XHTdYLeXIYSxJ/fnrrXQtH385Puf2e2lfFXhycsNAEDLCbDe9XZ5NV89+PLVJn7zE+cmp9VdQBhRPPRzf4Pv/b3P7/ZShLBr2jJl4dwmz5FSCkLILq7mqwdnVzqY0hW03QA3Wg7mqtpuL+mrAv/qj5/ACzc6uPPAFN5wx77dXs5XFR49vwYAePyljbHgmrH33M8td5P/TzzIW4OOG2Cl7eLB47MAJvf9ViGKKC6uWQCAxy5u7PJqBkMQRvjY88sIwmi3l1IYX7neKx642nR2cSViGH9y3+S5XxuDG74XcHGVbagPTcj9lmKl48ILGClebdi7vJrB8FN//mX8T//vF/Cx51d2eymFcWmt50iutN1dXIkY9gS5n5ivAJiQ+63ClQ3mPd53ZBoAsGFNyP1W4MpGj9CXxpTcH7vIEvHjWEL70rqV/H+tMyH3mwrbC7HUsPHIiTkAQGNCMrcESw22ib7sECP3ied+a8A31bsP1seW3LmtnF0evyqrS2tW4tCsdUbf5sea3C+sdkEp8MAxFh5oOeNRojTuuNqwYaoyFmoapk11Qu63CJzQX35sZizvueUFWI1J8dImL3gcEEYUlzcsPBhzzcrEc7+54PH2+4+y3bRl+7u5nKEQRuNT2na1YePQjAHy4Xfgw/hfQDuru72krwpc2bAxV9VwoG7A8kL4Y5aUvLzeO22MWyjvWtOGH1Kc2T+FqiZPPPebjXMrHRACnPnKu/Df9J+D023s9pIGwt9+5QZO/9sPbUkOjzKuNmzcVg+Az/069tNVHGuOR93vuOPKho3DMybqBqtgHjdnhnvr9x6eRsMas7XHVUon6xTfon8JLXtC7jcV51a6ODGjQ/3kf8Aj5FkcX/74bi9pIPzR310CAHzoqWu7vBIxLDUcvFZ+Nvn6RPfJXVzNVw+WNizcXg/xDx59O75P/uuxC0NeXu8l4huWh2iMTqs8mfryz/8Yfsn/RSw2R9/mx5vclzt43cxy8vW0dWEXVzM4eJXPs9dau7ySfDh+iNWOizP0AkBkLCnHMOPd2O1lDQTLC/C6d34Mf/bE0m4vJReUUiw1bPy98OOot8/iZ9TfR3PMQhuX1i1UNRkPGldxHNfQHqPN6aU1C6oMGC99FADwsuYnd3lF+Rhbco8iivOrHTykswczAsGCM576MjxRtjoGSZrr8UZ01D0HLN6JNf0IZsPxjLk/cbmBS+sWfvR9T+z2UnKx1vXg+BHudHprddcu7eKKiuPyuoVXTjfwtr/7Dvy++otjFXe/tN7Fg9MWSMQ2pEXv8i6vKB9jS+5XmzYcP8IduAioFTxjPoJF/+puL6swbC9M4o/j0BjBm2fmOs8DB+5FR9+HxWj8GlIA4MnLzeT/o67Vwmvc97efgV87xL658pVdXFFxXN6w8FrjLADgmLSCZnN8umzPLXfx6hrjl45Ux1ywnPOJ3cfYkvu5FdYtdtB+Edj/MnTUBdSj8UuoXm8xT3i2oo4FuS81bMyhBd26Dhy4F7ZxANPoAN54lbYBvU5bYPTLaJc2bMygDcNehnfHtwMApMb4nFQppbi8buMuqefxkuUv7+KKxOGHEc6vdvBy9TIAgufrX4t9Y+DQjC+5L3cAUNQazwH774GjzWGGtoAR98C241qTeWQ/MPsEzvhfGXk50WtNB3dKcTjgwD0ITdZAFnXXdnFVg+FGu9fRvNwa7e7mKxsWTpE44X78axBRAtken3DYSseF7Yc45l9EJOsAANoajwKCl9a68EOK0+EFYP40GtVTzKFxR7u6bXzJfaWDl5kbkNwWcPA+eMY8FISAM17e+/Wmgzq6+OG1n8f79Z/GRne0vferDRv3G7HXsnAHYLKmDqc9fuR+velgKi4rvD7i5L7UsHGPfh0AoB28GxuoQXHG556fj0/aC9aLsI++HgAgda7v5pKE8cINRuKLXRaKDM15AEDYHe3NdWzJ/exyB2+sX2FfHHoQvsE8SIz4Dd+Oa00Hr5GeTr52Vs7v4mrysdSwcZe+DGg1YOpAQu7eGJL7jZaDn65/EH+p/ThWN0Zb6+TKho179RVA1qDOncA66tDd8bH1cysdLKAJzVlDdPzV8KgMqTseVVYv3GijTrrQ2peBA/cCFWbzVnO0QzNjS+7nVrp4RDkPyDqw/2UIDbabBu3xMBiOa00bL9N7a/bXRjuOerVh4zS5BsyfBggBqbBNNRizsIzjh9iwfLy99Qe4S7qM2csf3u0lZWJpw8bt8jVg7hQgK9ggMzDc8UlInl3u4F6VOWPywXuxjFlo1ng8qy/e6OAN0/Fa998LxKHIYMQdmrEk96blY7Xj4vbgReDgfYCsgsYepNte3+XVFcP1poM7lF7mnW6MLrlTSnG14eBQuATM3wYAkLihd8brvq+0XSyiR45G89wuriYblFJc2bBwJLwCLNwOAGhJ06j443PPn1lq4rXTzM71w/dhldahOuOx/hdutPE6M34uDz8Eqcps3h9x2Y1ccieE/B4hZJkQ0neOHSHkHxNCnor/fZYQcn/5y9yKc6sdyAixr/MV4NCDAADZnAEA+GMmQXCt6eCEdAP2wVcgpARyc3RrlxuWj9B3MO1eS8hdrrFNNbLGx4sEWIz9OOl5jpXu6NYtN20frudizrsKzDNyt6Qp6OFoJ/Q4wojimaUWHtSuANV9kKcW0SE1aH4z/8O7DC+IcGG1i/vwIjs1VechVeKY+4g7NCKe+7sBfHPG6xcAvJ5Seh+AnwXw2yWsKxPnV7q4jSxBDm3gMCN3pcLIPbDGj9wPBleBhTuwiumRjkMuNWwcIzcgIUpIRjOqcKkCao8ZuTcdHCPMk1zGHKbsK7u8onRc2bBxjCxDogGwcAYA4Ck1mGNC7udWOrD9ELc5zwBHXwEA6Eo1aMHod2RfWu8iiCIcs54BjjwCAJBrjNypNeZhGUrpJwGkblGU0s9SSvmT/SiAIyWtLRWX1y3cL8WJx8MPAQCUKlOGDMeI3B0/RNDdQDVsQFk8jQ06BdkZXZJM4u0Ai7kDMDUFXRigI14Wth03Wg6OScugIHhWuRtT3ugesbeUQcZhGVeZggof8Ee7ygcAnrrSxAGsoWZdBo6/GgA7eRjBaCexASY7cBirMNzVhNxNXUeHGqDOaG9OZcfcvx/AX5Z8zR24smHjYeMKoFaBuZhkDAMW1UGd0T/qcdzYFBpQF29DEzWo3uhuTlcbNk4m5M7CMqYmo0tNwBs/cj8hrQDTh9HWFlANR9duLq5ZuJ3E+jcxuQfqFPvaHW2CAYCnrjTwWu1F9sXxrwUAuEodZtge+b6Ui2sW7kscSRYlqGhy7NCM9uZUGrkTQr4OjNx/POM9P0gIeYwQ8tjKyuBlRFc2LNwjXQL2vwyQ2K9Q0WS0YY4VuV9et3GSxLW+c6fRlqah+SNM7k0Ht8vXQWv7AaMOADBVZujE6+Z8erRwveXilLIKMnsSnjYDk1pAMJo9BhdWurhPuwLUjwAGO6EGKrv/GAN7f+pKE99YOwdoU6yUEOzkISMaeafg0loXD6sXQSUV2H8PAMBQZXSpAYy4zZdC7oSQ+wD8LoC3UEpTA1GU0t+mlD5MKX14cXFx4J+3tGHhRHiRkXsMU1XQphWQET8qbcbZ5TaOc3KfPYGOXEdlhJNMSw0bZ5QbILHXDjDP3YIO4o+2oW/HjaaDI7gBzB6Hp7GkMEY0hnphrYu75CVg/93J9yIt9txH3N7DiOK5ay08ED0LHHsVIMkAAF9jmxTs0XVmACb1+5B2EWT/ywCFddZyz13yR3tjGprcCSHHAPwpgO+hlL4w/JKyEYQR0FpCJeoAB+5Jvl/RZLRQARmDYyrHuZUubleWQeuHAa0CW66jEo6uhMLVho3juJqEZADmuXeoCXnMyL3RamIuWgdmT8DXWYJsVMn98koTR8LLwL67ku9FBvfcR5scrzZsVIMGFp0LSUgGGJ+w0kurXZwJzwKHHki+x06rJqRx99wJIe8F8DkAdxBCrhBCvp8Q8kOEkB+K3/JTAOYB/AYh5AlCyGM3cb243nJwBnHN6f6t5N6lBqRgfASsnl5q4i71OkicnHSUOmSEI3tU7Wwsox41t5C7ocqwYEAORtvQNyOMKJRWXHI6exKhEXvuJXY3X1638OkXh79e1w1Q7b4EhQbAvt5JlegxuY84OV5Y7eIR6Xn2RZxMBQCi19h/Rpggw4iCNC6iEnWBg70Kb1OT0aEG5GA0n1MOJe8NlNLvznn9BwD8QGkrysGVDRunSSztu3hH8n0WHjAgjXBYYzO6boDnltZwUr8IHPgmAECoxgbvdgB9atfW1g9eEKHWfQnQkCT1AECVJVjEgBKOz6Z6tWHjYMTDYScBkyWJqdMEKeH6QRjhte/8GADg7M+/CYo8+AH5wmoXd5K4Bn+T5y4ZzFYitzvSnYgX17p4QHoRVNZADr2890JC7qNLkMttB0dpXECwiWt0RUIXJpRgdCusgDHsUF1uuzhGlhHq04muCQBUNAUWdMhjQjIfe34Zt9FLUKiXHPl65F5eFn6j66FTgtLkjZaDk9haKcPhSSa0MToxnV3p4Hhc447ZE5DNOElpl+MF88laKgJcWB3OM7241sUZ6TIokZMadwBQDLb5B87okiPAelLukS8Di3cmMWsAkMbAc7/RcnFiU8EDByEErmRCHfHT6tiR+7fdfwj/6AyFNHdiy/dlicAhJtQxIZk/e+IqvrUSN/2eeC0AgGrc4Msh9zCieOBnP4J//Lt/N/S1rjZsnJKuMZKZOb7lNVeqQI3slE+OHp671sIZchmROQ9U5iCbLMThW+Wc+i5vWPg66Ut40fhebDz2J0Nd62LsudO5U4BqJN9XTWYrvj3a5XgXVru4S7oMsimECgByfDKNRrg/4kbLwQlyHaFaBWr7trzmjYHNjx25A4DcvASyjWAAwJcMKNHoN3W0HB+feP463q5+BjjyCmBqP3tB3xSWKQFfuLgOCRGCK19iieghcLVp4wS5gaB+FFC0La/5cgUq9YBwPCbaf+7cGh7SLkM6eB9ACLSSyf3Kho1vlz8DAKhf+shQ1zq/yiplpE2VMgCg6RVElIy8576+chXzdH1LZRsAqJV4c7JGN2ew3GaeezR7CiBbA3aeXIEe2UA03HN1MzF+5B5FQOMSMNuH3MfghgPAo+fW8Er6NBacS8Aj3997gcfZSwrLXFjt4v9Q/gh/of8krjz76FDXutpwcIQsQ5rrc9+VKvvPCMdPOa41bTx97jJO0YtJOMwwdNhUQ1RSWGZpo9fsNd8cbtrQjdV1HMaNLclUAKjoKrowELqjGxqglGK2HTcvbSN3hW+oI3zyWG45OEmuQ144veM1X6mw/4ywzY8fuXeuA6G7IzQAAIFssv/4ox2a+bsL6/hHysdBKwvAy96afJ/EcdSyDOZa08Fb5U+zL5778yGvZeO4tAJ57uSO10Ju6DfxiH21YeP+n/kw/tf3fmmo67z7sxfx9eQLkGkInGGSSVVdRgcmwpLW3+i6OC0xcp9xl4YqbdU3XoAEuiWZCrDqMBs6ohH23Ju2j1M0rkraRu6GWY1PHqNL7ivNDo5IK5Dmd5J7oIx+Qnj8yJ1L4s72IRk1JpkRJ/cXllbwBvlJkLu+dUuSKUmSleRB3mh0MQV2L5SV4TzIVrOBWbT7bqph4rnfPC/yL5+5jofdR/HIl38Ofncw/Z0gjPD+L1zEj1c+ACze1dMKUZVStULczjqqcLAs74dK/YFLLP0wwrQV2/umag2Ayz7ooCNMLsttF4fJKkLZAKpbmxa5JlFY4ua01LDxgSevIozK6RPxG1ehIEqx+Zvv0AyL8SP3Bq9P3nnD6S04KnXdAD//F8/ii5cGIxhKKci1p2BSG7jt67e8xhN7QUlxSHt9CTphlTJm++JQ1yJNvqn2ue/qzQ/LfPTL1/Br6q/je5S/wY3PvW+ga3z+wjpe534M+/wl4Bt+OpGu4J57WeGwKCbzJfNO9o3WYIqT15ssoUdBgNkTW16rxKW/ZQ4mP7/Swb//wLN4aa2cTXq55eIQWYVXPbgjZs36I3TQEsNK//IPH8dvve+/4+OPPVXK9SI+47V+aMdrVCv3lH0zMH7kft93AP/mxRTPnZNMeQb/Hz70HL7ndz4Dxw8BAO/6+Dlc+swf48If/8RAx+21rofb/a+wL2LPkUM3qgiohKAkD9Jos/ror5DTmHGWgHDwkkijHRPUzIkdr0Va+UfUF2+08Z8+8gLcIETT8oFLn0WVMO0X6eInB7rmFy5u4DvljyGcP5OEZABGlB1aASlp/ZLFyH2tHodSmoOR+5UNG8fJdbjVQ1tOeAAndx0osTP4tz5+Dsqjv4an/vSXS7nectvBIbIOTO8UijVjfZayxLcopaitPI4P6u/AnX/7/fkfEIDC5bdr+3f+vFvg0AyL8SN3QlhZkryz/4oqccy9pPDActvBY5/6S7zryj/AU3/6fyGKKD7zxSfxW9qv4m3d98G/8NnC17y0buFu6SW4xj42g3QTKjo7qgYlJZkMl4mzvWDcyzpf21cHug6lFFNOrEq4zYMEAGjlh2X+xe99Esc/+a/xt+/7v/Gx55fxFvIpBEoVnwvvht4cbM7s8y9dwYPSWcj3vHWLJ1nRFHRgQC5JK0S2mUJ2d5Z57iH3AAtiqWEzz33u1I7XDFWGRQ1IJYYgm0tfxr9V34tvXfoV0AE3pM1Ybrs4SNagzB7d8ZoZ67OUtTndaLm4x38WAHDYeXHgDZXDDyOY8fODqYM7XqclV7bdDIwfuWeBk0xJBvP89TZ+UPkL1IiDB557J546exFv7P5F8rr1XPG5m5fXmTZ3OH/7jtdMlYUHyor96h4LHa3W4njtgCTTsgMcoCvwJQOIZ6ZuhsQTwWUlJC0Pr+t8CG+TP4U3nf0ZfO5TH8Gblc9DuvvbcAEHYdrXB7pu5cZjTInwxGu2fl9j970sctc8Ru7h/B2IKIGzMdh6lzZY+am2eNuO13hYQyqpkSaMKGZXn0i+bgxZnw8Aq80u9qEBtR+5x7IVZamJXm3auE/qjUr0LxZ3vDajYfnYTzYQEQWIJy9tBrkJp9WysbfIXS3Xgzy33MHd5CUsGydZt+EH/yO+U/4Elg+8AZeiRfgrxeduXlm3cIpchbr/zI7XKpqCDjVLOaoGYYRKwOq2uQeJ1tJA11puO1gkTXjmvh2xUwCQSjb0L19t4RHpebhKDS1awS+t/yhqsCA99L1oaftRCRqAX6yBxPFDLFhn2RcHt06C5PddKYEow4iiEss2m7OHsI4p+K3BpmttrF7DDOlCXthJ7pwclZKa9ta6Ls7gIlzJxEvRPjgv/O3Q13Q3rkAitG9YhsvmSiU5Yk3bxyGyhvNTD8OlKlpnPz/U9RqWh/2kAcdYTHIzm9FzaEa32mdPkXtPjKgcg7+6vIKj0goqD30nPh69HG9tvQf7yAaih/4pXqL7ITUuFL5mc30F08SC2ueBrejxUbUEkmw5AWZIB64yBWn2GAAgbA5G7ittFwtoIqz0l2nu6ZyUQ+6X1i3cI11AePqb8OLLfwIRJIR3fCtw7GtgmXEoq+DvcnndwhlyhX0+1kTn0BQJFjGhlUDuTdvHPGnBlyuYrtewQqcRDUjuSWVYn/JTTo5yUE6X5GrbwwGyDq96CI+S+zG38vmhm9IIdybqh3e8xrWg5JI2p5bNPG1t/jiepcdBl7441PU2LB/7sIGgsq/v65zcR7nDdo+Re7nVMiSuzKkduhPkje+ARapwjr0BM/e9GZfofpid4kOVg434MzM7j6ossWeWkthr2j7mSBu+PoP6zAIsqsNdG2wI9HLbxSJpQKrvTCwBgKyzE1NZDTUrzS4OYB36wkk89NYfhfRjZyF/13sAQuCbC+xN3WLDXpYaTHDOn90ZDgMAT64ynZ/AG2rtDcvDHGnB0+cwV9WwSqdBrOWBriXb8e9YO7DzNYnAlQyoYUnk3nFxgGwgqh3A9YVXsWbAIQlS68RhwBTPnSkrlmMzbcvBIhqY3n8Mz+A06o1ngSgc+Hoblof9ZKPvvQcAxeA2P7pl13uK3OXYc49KCsso/KGsHcDr3/CNqLzjEox/+n4YuoYNaQZG0CpcgSK3uTez0+ArKkuoSiWQe8PyMIs2QmMOi1M6rtE5+I3BPfdF0oQ2vTOxBLCaZYeqCEoydHv9KhQSQZ6N71F1vhcOMuKYf0Ed85W2iyNkBVKfUk4A8Erqsm3YPubQRmjOYa6iYQUzUO3Bpo6pTqwvX13o+7onmVCpOxSJcay0Xewn65CmD0O77fUsV/D8R/HLv/EbuPQLD8I/+4nC19Tj3MP2GncAMBQJFozStKC85jJkQmHMHcFK/W5okQ2sPD/w9RoxuUspNm+oClyqjnSH8N4i9zg8UJbehubEzSdcNEhWkvibo86CgAJ2sXp33eLeTP+jalmx36btY5a0Qc15LE7puEFngdZg1TLNTgezpAM1xXM3VNYtWZahR8304zypxEqgBe/7RrOBedKGvnii7+s+7zgcUh+9YXmYJy3QygJmKsxz1921gcpmDZeTY39yTzqyS3BmVts29qEBbfYQ7r3tJJ6hJ+B97rfwz278Ao5559D96C8Vuh6lFGbQQAQJMGZ2vK7IEhP6C+1ShtNEbZa0Vuv74e+PB2tcHfzk0exYmCHdDIdGhg0NQYll12VjT5G7oWlwqFpa11uFl0L1qXMdZDQbpRRVdxkRZKC6M5bHqzaUEoYAMHLvQK7OYaGm4xrmoHQHq5YJ2+wEQ6b6kzs39MgrJ0QgddKbR+Rq7LkXJHd/jcWvtW1qohwR99yHTJA1LBYOk6oL0BQJbXkWauQWPhH4YYRq2GAVSrwKbBsCmYchhyd3p9OAQiJoUwt4xck5/Jn6ZtSjBurExqfCe1C7/oVCM2Y7boAZ2oKrTvdNSAKAJ5uQEJYyuza0YnswZzF//GVoURPOhcH1lJwWe/bVqf4bK3dooklY5tbAUKVYTKkccq8G63Als6fWuAmBGZNMAXK3vBDTtAVHm+lr8HzYtBpYQ3szTdvHLNpQagtYqOm4TudgOCuDiap10zc5ANAVGQ7VEJXkxchO/KD2KUHTq9MIKUHQLTYSjyangZ0bBgCEWjla+o2uhzm0oNbZ5m3zEX6dYnH3hsUSs66+s/SUI1DKI/egy04JxJyFpkj4tu/7N3jv6Xei8z1/hU8YX8fyEQVqxxsWOzl6+mzqe/zk5DH880r5LFZjBg8cn8dno3tAX/gwmzG7VryqLWjH96PSf/2GKjOxuYnnfmvQ203LCQ9UgiZsdeeREgCoWXzuZiMOlfhaf4ORJAJfMiAhGtqb6XQ6qBIXWn0BVV3BmrQAmQaFE5EAIHdjYupz2gCY5+5AL03TR/Pj0Mi2qhYAqFd0tFCF3yko/8DJdap/gqzXiDXc72C1N6CTAFocwvLNxa0/XxANy8MCmvCN/p4jAEQqF8oroYTTjuWO4xDK/cdm8d3f888xe/oR+LU491GA3Ju2jzl0EBrpm1NY4smD8ByMOYP7j0zjb+RXw3RuAL94FNGvPwKcL5YzSJwHs//6DVWGCw20YEnurcSeI3eLlqNX4fghqrQLX633fT0JDxQg942uhznCkm1p8OVyxM+8NssXyHG81jFjr3uAWnd9e+5hGwxFgl2ioRtBGyFRAC4EtwlThoIGrSKMPU1RqE68qfVJ7gEA0cpJqPod9nOk2sLWn9cpVg65HtsKrWSQe5mCbYnnu3NDpbzapSlebcVzPv2a3jhC3lFegt3IHncIZqDIEg686rvwh8HX4wvRGUg0RPDkHxe7YNxlvHna22aYKgtFlrH2m4U9Re6myvU2hvcg206AOrEQav3JXa3GHn2BY3wzrqRI8waA8ryZkHsecWjDr8aJoQGSqobHqzb6E6OpsSMqKeG+803VVep9G6amdBUdmIgKdvEa7hp8oqfOpk06Dof8HWgn3gg5KfNQVsET00YcliEpyVQAm5r2hr/vxIk9d3PnSVWfO4qIEtCGOLnzsIzUJ7TGkciFlHDy0LwWQsjJCexff9OdOP59v40L3/qn+OvwYQTnP13oehI/CaRsToYqwaZ6KTZ/s7CnyN1QeXhg+N205fioowuqp5B7XJlTpJt0w/KYwdf6kyQAhGo5FRCUe7bcOKfiWHO7eFJV9VvwibZlzNtm8HAYKeG+t50A06QLX+1PwlVdQRcmaIG8iuOHqIcbsLX5vhsGABCjJC84Fg1DlZGaXl9ASEnxsEzXxTyaUOr9T0sAQLTy5hfI3tawzGYsztTQRBV+W3yDalguZtFOTUgCAE0kuoe3Gz1owVGmkr+vJBG85vYFvPGufXiBHoHWuVKoZFTxeJgnx3MvqYnsZmBPkbsZJznKMPaW7aPCeBrDAAAgAElEQVROrL7HVACoGho6tJjIV6Obb/DJUXtIb4aLV3HP3ZjZBx9y4bBMFFHoIet0TYOpynCggQTDjzhsx5tqqKfcd511ZpIC92e142IeLfhmuhep6OVIuCa16bHnPlMzsY46glYxfZlOex0aCWFM909iAwApkRzVhNx33vcZU0ODVhF0xENh3XYDGgmh1dMdGaLxU+pwz2sQRqhEbXba24b5qoYVaQESDYUdG0opDL+JkMiAtrOYAug5klIJNn+zsKfI3VAl2NAhlbCbtpwAdViQ+hxTgU0KjgXCA057DTKh0KfTDT7xZoY0eMXdSu4LUxXcoLO9GnJBtJ0AU7AQpOQeAECPj6hSOLyht5wAddJFlEruxRu9Nro+6qQLmnJNAFDjmaTD5mt0d2sIay6udS+qL+PzUrwMz10yyhPK04IOK9HtE7aqmyqaqCEqkF8K45yPOpVu60lYaUhnrO0EmEYXgbbz70sIgVOJ+yUEw0puEKFOO3CVmdSTnq5KcKBNyP1WwYiPSmV4kC3LwRSxoVT7k3s1bjiKCowJ8+IHVklJTALoJRGHDA9o/tZj5cKUxrpUN4pJoTZtH3VYCLV8z10uoRW+7fiYRhekT3gAAKqawgSnCnQ2shCb1TeezGEmm/VwnnvdW4El14HYK52talih06AFwzJeN/77pYQFAUAqyXMPIwozbMNVan3JbNpUsUFrhXoLgiT3kH5aSjz3Icm9afuZDkE4Vazah4UGO/D6bBYcPEpQhs3fLOw5cneoXsoNdzrs4dJSyJ1pgBcj9yhJcqYnVKGX442ZfgOOXANkFQCSWveisr/NODxFU8JTQG9TVUrw3HkiW6qkkHssrlaki7ft+Jgm3dRTGNCbSTpMj0THDTAfrcIyeqGUuaqGFUxD6hYj95CH+/r0WHBwfRM65Cmv47LTkpdyOqubChqoQXIKlJ9a2aWEACDp5ZH7NLqpm7c5EztTtlhYqeMGmEUHgZ5uLzzPJJdg8zcLe4rceadkGTfcbTNDNmr9jbOmMw+yUNNLN9+bkUqot3b8EFO0zboDYzB9mXnWpVqgQapp+5iCBWKke5CqLMEjOtTIGbr5qm17mEYXSrX/fa9oLKGqhZZwQ1bL8uNrpjfUsMlAA5J7FAKhj+WWg4NkHUG117I+G4dlVHu12L3xYrtKifkCgKbpCKg0tHhVKybHtMqwaVNFg9aguE3xi2ZU33AoejkhyKbNNm+S4hDoU7wnRYzc246PGdIFNdLtRZUluCXZ/M3CniJ3JkakMw9yyBvux+3MaWEZJs9rFkrAbU9y9oOkD1+10bJ9zIMpE3Is1pi+jBw6hY7XDdtDnViQMx5SAKxNHgCGDIk53RYUEkGt9f95TA2xWJWIlVwz3YvkErSFG+B8G/idrwPe9WqsrizjCFnZohs0V9WwQmcgR24h3ZpEGTSldJOtWYE15GkD6FUopYU1pk0VLVShBW3hihPCN6eM9XM1UTqs5255qMOCknIirlcMNGkFoWDOoBOHZWiOzQeSwfSlwuGURG8W9hS5K7EHKSEa+oaHFgvLZMV+Oyg2bCApN0sprwIAiR/DhwjLNGwfB8g6gkovPMCVIQEUqnVv2SyhqqR4RRyhXE5Diht3nmrV9A0wLDgI3YvLQvUMck9mkhYkytUn/xK49iSw+jz2ff4XMEO6kA7ck7w+bapYQ0yaHfFSQolv7hmeO+8MHtZzb/OcRIqt1+J8BABhpyOZapVB7rqmlaKsaHFdnJS/70xFxQadQtAWI/dWnKCVUqQHOEI5nms7orXue4rcASAo6NWlgdrppWEAI4MuNSAXIGHJ6zCVvBQhKADQdRMhJUPFUZl86wbIJh0VQ5V7seACte6W3YVB/FRPmiOQ44d/2ORel5F7WswdAIJE5EuMiMN4w8iKuZuqAosahe3mqU//BRyq4kvyvThx8b8BAKZPPZS8LksEthaTToG4e6JznhFzZ400w+ubtGLPPS2sQQjp3XPBDVUNuszW+3QZc/Cmw2E3JzcmbWOqP7lPmyoaqPYa+3LQcXxU4EI10jcmAAhLsvmbhT1H7qFSzg1PtCpSyL2mK7GCozi5a2EHnlxJLa8CAENXYMFAWCBRC4BVAvz3/xm48EmsbWywaU+zWyVzpemY7Au0kQddtsmpOZ47Lem+Rxlt8BxhwcnzyTWzyD0e2FxkpielFNXG83iOHscvWG8FAHRQhX70wS3v6+nLiJdDJnalpjsCnByHnV/APXclw1MN5GIbqhZ24crVTFvnObJhw0q8/j4t7MZyBlOggjF3y2pDIhSqmb6xAkBUonzCzcDeI3e+mw7pzUheungVwGLuHWpCiVyhcWRBGMGIbPhK+sMKAJX4gQ0KHlWjT7wTePq/An/2w7BXmLxtdWHrQJDK/FFYMIAbzwpfl8abXJbXC2xuJR/yiJqzqQLohSoEyZ0KXJNXyxQZOH153cbB6Drqh27D08rdeLv7U/jVU78FKPrWN3LBNcGwDKUUWmjBkyqpcrlAr5Fm2GoZq9uBTvzMhHOYJPrznQ4/jGBGVq6ts3JCfeiTRyL3mxJWqpsqWqiACOY83C6zK72SQ+5yeR3CNwN7jtzLIhnZayMCSa0z1mQJNol/lkDFTNcLUSN273ibAlNj4mdFEnuUUmw88UHW5t64hFMX/hAAYBy4c8v7jsxP4cvRCURXn+h3mb6I7OxNLllDSV6M5PYEoFKRkLtg/NftycGmweQDmws0wF1Za+IQWYO+cBq/9Lb7cGP2AXzH33vDjvcptXmEkIQ9dzeIYFIbvpIe0uBrZpo+w91zr52fkygyfL7rBrGtZ5MjLyekQ4ZlaM7JbNpU0aEGJF8wRxOfmuWMkBgAIFHlHM1yyD1H7mUdlbSgnek5EUJ6D5+AB9l1A9RgI1SzDcbUFNgwCmmnPH/xMuajNfxK8HY4cg2PrPwp25j23bXlfXcdnMJT0UngxtPC4wEJL3/LaKYBAKqWtanml9DxgdyiZagSf19OWMaCAaVAc9TatYtQSITK/lN4y8sP41P/+xtxZv/OOO1szcQG6sIx905CjtmOACfHYfVNgpgcszx3mujd59tlJ7b1KCMZDPB7rg9dLdM77fX/+04ZrHxWNITq2fHvmJEvADaHIiee+y1BT4xouBuuB+1MPRUACBVxg+feTJTR6QnwgR06aIE46ovPMU/cnb8LH6SvBgAsq4d3JG5fdqiOp6OTrGV69QWhaydH2RzPnajlbKoqD4dlbCZELxaWUf38DaoSn5iUSHwmaWuVVR1NL+4cB7gZRbtUu26AKhxEuY5AHEoa0tYT+eSsv3EB7Z2uG2JKwNYNRYJTgpqokuMQVOJ8ihI6Qn/bgJN7RuEDsLnDdhJzvzUogWQcP0SNpisTckQFNMC5N5NV2gbEsV+qF8oZeDdeBAB87StfiZ+13ob/P/xafPTOn9vxvpMLNTwvn2ZfLD0udO2eTna2546SNlUtaMORqoAkp76nJ/IltgEaQRu2XMu8pqGwTbXIdd0mC7PIUxlyEmD6MsvRNKK2WFim7QSoEgc0h1x4WGZYLSUq0HBEeOWIwGmp4/rM1jPKIIHeaakMhyCElPpsVTQFHSo+9Snkf/8cz52UZPM3C3uO3EkJ4YE8LXeOxLMSMnj2wGZ1egJxySKKleQFsRjYq+6/D03U8L/5/xKnH3jdjvfJEoG+/060pGngpc8KXVukXhkAZE5EQzQxUcoUKL2cE5NS4UST/6BSSmGE7dxrShIpPnCaJ0hTdO45ZqsaVlHMc2eOQI7nG4dlhhVsIzlhDQBQDPENteOy/BLJKSXksrlFdIL6gcn99tf/B5jd+wX+tkm+S8smd2ncPXdCyO8RQpYJIc+kvE4IIb9GCDlLCHmKEPJgv/fdKiQTdYa44VxoKsqLM2vi3kzXDTAFG1IOubMjpF6oOUrqLsMhJsxaHR/8kdfgl99+H151qn8T0D1HpvH58A7QS2Lknjx4GSV5ACDpw5+Yul6IaXTh5WyqFcOAQ1UhRc6uF8KE22t8ykDRgdPKNnnfNMxVVazQGUjWilDndNeLyd0Qi1kPq+mzeYpRGhRDPBTGNydZwJGx6YAqrvF9jCKKetiArWY3HAUFQqiJMmiezXNyH1FNdxHP/d0Avjnj9TcBuD3+94MA3jX8sgZHGbtpK1aZy6zYwOZu0nzPo+MEqMKGYgp4MwUNvuKtw4obZe45PI1/+PDR1Pc+fHwOXwxOgmxcFJIhUAOLDeqQlcz3ySWIQLUddt/zTkwVTUYHZk9cK+eaJrxeNU8GkoHTghur5q7DkcxcD+/wTAUrtA4p9HqaKxnouCGqxIGcc1oyFCY7q0TOYIPP+XW8ddZwlNE5XdVVdKkOKtB/0XVc1IgD2czO0/CcgVyUHL/4B8B/uhu4/gxajo8F0oSXMWsWAKJEbVUgCc9tOOfvKhtjXudOKf0kgKzq/7cA+APK8CiAGULIwYz331TIiari4CTTijXMpRzjTKo2BDw912pDJhSKmU9cFgwoodj6bS/EbLQBV882bo6Hjs/iaXqSfXHtqdz3K6HNGq9yIMcPwjA1yy2baehn6a4DTNPdorqQPK/lhTCI16tsyAAtKLdsBE04SvZaAeDIrIkVGjsKAuWQHYd5vnm2wuU2ABTzHjvLwHMfSPozqn6DyRRn1NRX4glYgQC5O112EtAqOeQe93QoRcS3KAX9yE8B7avAJ9+J1Q4bJB5VskNjvRBqvs0km02O516Gzd9MlBFzPwxgc8vjlfh7uwJZG343bVkupmBDrWYbp2yIVxB4FvPY0iSEOYzNR20Bb2y142KRNBHmGDfHkVkTy9ox9sX6ucz38maaJF6ZAVNX4QypE9KKPXeSs6lWNaZ1Egk8qLYXwoDbK9XMAC1Qy+34IapRN3OISbJeXUHTiB+J9fO577dsBwbxc095AHp5giL2/uc/AvzxPwE+/9uIIopq2ICjZYc1qrqCDjUQCoTCgtjW854fgyeEaSisBdW+cR4kPnHS8x/HWsvCAmlCyklqo0CFlcIlw3M8d0PX4VKluHxCGQPNBVAGuffLYvTdhgkhP0gIeYwQ8tjKSrGBwaIwNGVovQ23vcrajzNmnQI9HRiRP1YYNwOJhGUsKi5ItNJxMUM6IBlCW5tBCMHCoRPwoQAbL2W+1wsjmHCE4tWGIsV66EOGZWCBZIQHAKbpbsEQKhd1/BAmvNzKB6AYufMBEVlDTDYjmI2rlNayN1QA8GJbUSv5G0fhJLBnITr3Mfb/L/1/aDsBZtGCr2c0MIENp+nCQOTk/5wgsfXs9csSgScVqxV/+vHPAAB+N3gTG+r90mdQIw6Uevo4QgC9goAchyAII2jUBgUBck57PCxWyKHxHeBdrwY+8cvinxkQZZD7FQCbg7xHAPSVHaSU/jal9GFK6cOLi2KeZlHwDHwhvYrWNeDd3wI8/ScAehOT9Olsb6BiqOgKNhxxj4fkJGlVWYJbwODX2i7q6EJN0T/vh5P76riKBaCRTe6WG7J6awFyT3RChthU2914+lWOjk2Va+kLeGG2zxKqRMBz7830zH9YW7aPKdipMrnbMTu/Dw1MAWtnc9/rW8xWpJyYO1C8ae/yi09CCl08FZ0Clp/FxspSHNbIdg4qmhJvqPlhGe7I5FVYAcXlQtaX2P17X/h1AIADz7+H/ah9t2d+LrmXOeu3/BAVuOy0mqGLA/RyBqFX4NT05B8BGxeAo4+If2ZAlEHufw7ge+OqmVcBaFJKi437KRG8PKyQB/ml9wAXPwW8/58DgYcwHhGWNdwXYN6MJTiaLZnYJGDwflK1kX/dVqcNnQTQatne7mYcma3gUriAYONS5vu6XoAKcRHlxB6BXuVDVMTQO8vMi/nsfwYA2Hz6Vc7vwvMSRIAQbC+ESbxeoj0DveYoAXKPZ73mlbZyHJ2r4EJ0AFSA3CNX3FaK6pt85VnW8PbemByjC5/EfrIBWjuQ+blqrKUkErNOwmUCdpNUKAluTtHGJbhEh7LvTpxXb8fx5Y+y9R2+K/NzsiEWc7dcRu7JppMBNvmtWJTg+rOfRkOaxcri1wh/ZlCIlEK+F8DnANxBCLlCCPl+QsgPEUJ+KH7LhwCcB3AWwO8A+Bc3bbUCMAe44ctP/jX7TxQAlz6bkHteiVsl9iCFFByTBzZHrwKbvDGB38HrCOiCbMPR2QpWMY2onR0a68aeOxUkdxdaMRGrx98N3HgG+PA7ALfd+11SpFs5mL64WLmo7YfQ4UHSBDx3TqYC1207fpx0zz5lcBydreA8PYBwNT8sU8QRoAWb9uwbbHP5hPIauJKJ6osfQI04kOZPZ36ODyYnAg5H5IpVmwCbW/jFQhtV5zqa6n68+vZF/JXb081XFrM9d9WcQkRJrsNkeQFM4gqdVvl4ySI23zz/RTzpH8Wv/o1Yh/gwEKmW+W5K6UFKqUopPUIp/X8opb9JKf3N+HVKKf1hSulpSum9lNLHbvqqM6CrLPYresP9MALWzuJD4StYOdhLnwOx8sfhAdxz14USe4nHkNOhCgCRLF5WyIdb5BHiZhyeNbFG65Ds1cz3db0AFTi5bdhAz9CLVCldf/YzvS8ufjrRcs+TF65oTHtdFmh+4TH3pIoqA5puMk0eobCMhynYkHMqQjiOz1dwPjoIpXM1f9MuYCtFNX209hW0pGncefIovkTuxv6lDwMAjP23ZX6uqimx+Fb+vUm0YgTyHEk+R2Bz8oII0+EaHHMfXnPbAv7AeyNcquBjtTfvVOLcvn5dLIRqecxeRMndKaCNs95xcZRehT93O/7dt9wt9JlhsOc6VHnMXfSGP//SEvaRBp6KTuGicgK49Dk27xLIJfckDimSUOEPhQi5F5A1SIZbCHqQALBQ07BGp5lIVgaRWW6ICnF69fwZ4K3wVPR4HVHg+pP4QPgqBEQDLn4akhWXCdayk2PJkGyBclHHcaCSsFeHn/U76PHADpFEbafBku45GxHHyYUqLtI49JFXMVPglFe0BV5112Bp83jVqTl81Lkj+f7MkWyyYc11Zm+ISNaaklLC/NNS8h6Be36j5WAWbaCygFeemsN1zOMh9zfx6Tt+MvezVT0eSZhzyrb9EBU4QtVV3OZFT00vXLqKCnFx+vQZGGq6FEZZ2HPkzmO/ojd8+RI7Hk0dOoPPuLeDXnkMC+5lNJV5QM2Ou1V1OU7sCRi8L27wNFGbzH9ge8MtxMl9vqpjFXGsuJvuvXfcABW4vXr+DBjxiUlUfvbi8gb2oYGz0WG8KJ8Clh6Hxsl9KrtNwowlGpiWfra6ZRCHCFQBz72IaJtrMZLQq2Ix9wN1A1ekeFhKTtxdKuAIFGnaazk+pqMmQmMerzo1j7+KWFJvhcxDWjiV+dlqPERGDe3cEt2kAU/Ac0/i8gLrv95yMEfaUGrzqGgK3vLyQ+iggm9/4EjuZ3nOIMhpfOu6LCwjdlplNi/MNUtsU589cFzo/cNiz5E7z2CL3vCN5SsAgAfuvhOPhneA+F28NvgcGnq+wXDPXSReKPMWcaGqDfFGLOoICnttgqnJ6MrxZtBNj7tbrocqcaEIeu4OxEWszp47C4lQzB86ic86J0GvPgGje5WFxnI8d0LIpkRc9r33Y3IX8dy5MmQokCB3YnLXcqb1cEgSAeZiAs0h92R0o0DMvUeOApVVHQ9zaCGqLODug3VsaIfx9e4v45eO/JfczzJHhpfoZt9zKRC39SQuL7D+9Y6NaXShTLFc2H/8h/fjEz/2Btx7JD80xnsjaI5UiO2xhCoR2JiYzavCNu+sM66ZWjwm9P5hsefI3VC4GJHgDd9ghT13334aj0VnAAAm8eDW8/8AVZ2RgYjkqhzaCIgCyGrue2mBsExPB0PAS9r8OV5LzkWj+sC12bVlgWaaojohnXha1N133IknotMggY277S+gpczlSh0AQKiIHed5ck+kWoZX4YiU0YZxvTcR8PA4DizOY53M5JagKmEBz90QP+WtdVwskBZIbRGKLOGVJ+dwjh7GK+6/J/ezW4bT5NxzmTcBCXQFkwLkbjVZ/wmvYlNkCcfnxe4/25zMXiVS2s+ItYgkgZMej7mL2nzYug4AkOvZlUllYc+Ru6lJsKnei/vlgFjMc51ZPIza4lHW3APAP/zK3M9yb0AkDqlEDnxJwJPBJgkFkaSwoA7Gdqg8EZhh7LzeWhMld2iQQlfo5wcNpmR5x5k78SXKknl3ROfRMsSam0NFrOEoKYkV8CINVY69O4GmtAE21ZMLNVyNZkFb2ZXCatBFCDk3SQgASgGhvPV2B3ViQZ1i5Pgr3/VyvPNt9+GtD+TfczYkW6wPQIkc1pyUUycOAJImbutOk4UQzeniPTJVXUEH+SFUyw9RIeLkblNNWJUz4gO6c3J5ZWHPkbuusPCALHjDNXsVHtEArYZHTszhu9yfxPvDV0O5/ztyP1uJq2XyqjYopVAjR6h2FiimjyOq2rgdCif3jHZyHp9Uhchdiu+72KYatNmDOjV/CNrcCaxIrGFsY/4Boc+LJp0jQW1ugIXZbKqDipyYClyX4/h8BdejGfiNvj1+7LqUQuPzRwXIUdd1+FQWKiDobLB7btQZudQNFd/xyFGoshgNRHxDzfF+1dBBIInaurjn7rUZOWq14uTIQ6h5pZxWnGeSC+SZRLkG9gYLO+Y0MpaFPUfuRZXmDH8dXWUWIASvPDWHx+kd+Ff+D+P4gXwhLt4pKdMACNK1MdwgggkXgSC567oOF6qwDgbz8jSha3Mkin0ZD2oQhydEqmX4EVUVFIFKJtEb07j/2Cx+1f0WLNF5WKfelL94AFDFGo4iXzxEwCf2CLXye8VPTAfqBm7QOZB2uudu+6y3wBcQawN69i4yc9dqsXteqYuXzW5GKCDP4IcRdCpu65qmI6CSGLnHmjUkZypYP9TiZzUvhMrDMiJ5Jn5aVUJXyOY1vwVHrmUKtJWJPUfu/KgkUz+/kiKMYAQd+BozljffewivP7OId7z5LqFSJV2RYBPePp1OxDavnRUQ4AJ6Q7JFjqqiqo3boSUDL9I996R+X4DAVFmCyycZCQzsUL0GbKkGyApec9sC/jD8Brza/c84/cAbcj8LAOCnm7z4uCdeucEHpYiMfUveU+DEtL9u4AadhequA0H/8BVrHLN7RJoDXZFiuQ2BCp8uy6+Ilm/ugJZP7rbPOoLFbZ2VKIr0pYQWH5copuezGcmovZwQquuy0llJIAGvyhJ86JAQJgqbaaCUwuBDRW4R8jNXYwYuYAWAeQNy+s3csHxMEQtRrB+uKRJ+/5+9Qvhnbana8LpApb9HxPVNIgHvEQAqsRTqtNfN3H3ZEd7uiUcVQM3Q0aEmahmeOy3QTANs0gnx7dwYt+G34Jh1mAC+4a79qBsKjs5VsK8udo8IX1Pe6SYQj7nzahmRRh0SDOC5TxtY4yWo1jpQ31nyyeen5g1S5zDjsYx1obLZ/Pm0WUiGZGfoszixCmcoaOuGxk58FbebS0bEE9es2Q7eYauENpujmjJyMZE0FtxckxOKb2Wenm0/RJ12EGjFTx2DYs+RuyJL8CVO7nZmiWDTZiqEVDCJ1w+hUgFC5HozTFNczGNinruB0OlkkrsbRKjAQTgAuU8ZCtowYdpNpJ1RksSiYEVIIBtAhNzkHptR24avMkOfrqh4/N99Y1950TQoglr6RfoLeLWMSOdroVruGLMVFW0S26OdQu4eG6ROtRyVwxi8aU9EbiOZlVqgbHYzJAHtHTvuCBYZjgKw6jaL6pgRWL/oyMd+qGhxTwrAiDjlGrwKSnTT3mLzGY2EDcvHNOkg1G/dqIs9F5YBtu2mGWg5zHMf1NgBMZlYO47jiRKBmcgaZBNX1w3iEXKDkLuKNjUT7e1+IPxhEiT35GSSQ+4t28cM6SDQew+DKktQBBN7wGYt/RxyL1BzbaislluOvNyQXpLTKVAKSQhByEtQrbW+7+F6PqKnJTMWyhPKE7jDee6SwD1nYRlXmNy5mqhIzkDxi50kN4OFUOM1ZYTyIsERe8n7FTGuaVjckbx1nvseJXexrr1W7LlLQ9xwkaoNO9EUFzT4+IGN8sq24oaLqGCNO8ASTB2YiDKqZZJmGkHNclGFwg3LxzS6wBD3nTcP5VW2JNU7wp67WKOOUqBvYTOoGVd6WP2Hm3W9eJC6QEIP6PUXUAE1zt6s1MHIPUkyZpAjzy+Jer49WxfILwVduJKZGlLJgmgpZ1SwtDix+Zw8U9P2MUXs3gZ5C7AnyZ0Ke5AearCh5kxHyoRIkike9UYEDSY5QuaQux3X5FIBkaPtmDIUdKjZ63Dtg94xWIxoRBUKG5aHGskfFp4FwzThUiV37FtSgyxYCmmBJ8jzyV20b2HLevhQlVTPnY3YEyWBRLBNoDpM4RvhgJ67bpjwqJJbPGAI6ucDm+RCBMhdD7vw5OJeO0evNyLDZgqWuIrafNP2UYGTO8CkTOxJcu8NMMg2GLsdiz9VxbXQt6OX2MuLQ7rC3Yxck57keI88LFO0gQlgYZkWKpmlkErQZd6pQDMNIK5Q2LB9VOEIjZFLQ6Klb2d77krosNpiOb9UVFek3hSsDLKJIgqtQN/CZqi8Rtvu77lbThDfGzES4KWQQhU+gcVmrg7g+QI9wbYs7R1eLSPqyPAQZJ7NuEEIk1o973sARAIh1GRGgOCzSgW5JpHyEKifLwt7ktwhOJ3G7bJ4s1Eb3HNPOtkyiLgnOyvqubMB0HkPrO2F7AhfIO7LwT13KcOL0UILnlTgYVLFwmGW66FGnF7cfADw6oc8HRgldBFIuli3pLS5+in9uk7A1DIHqVKaqlWZp51yYrJtCyoJhTc+s4Dsgxw6wvXn/VDhs2szTkvckRGRewB6mkR5tt7lQzSU4rbOkVT7ZISVkioo0VCnoM17cUOgPPHchwMVlEF14xs+zG4qC1QQWK6PCnGhCLQ0A72p8FIeSSY6GMXXPzGMeQcAACAASURBVGWwmLvi939QmXcad0oKggh67l7sbQ9zROUbYJjVhBVG0GgxQgvV/Lgsv++DJLJnKxo6ND3X4fP5qaKeuyqmpRSE0cCnDQ6ugpoVCuPFA3IBcreokSsX0nECVoUjGO7pCzU/PyYXKJ0FAKKKJVSDAnNxy8KeJHciKIPKSUZEAS4NqplP7p4jrkwI8KNqvmYNG6YhpoOxHTVdQZtWenW/22D5IWpwCnlKybSjnOSSHysqKpVhPHc5V0vfCSKYxCtEaCKOAVcOFBnosB3TZlylZKeRe3xvBMldtAWeh0sGKZvl4DmJrOE0rutAIyFkQzQEKQltTpYfS/EOQe5EoHxWKlgF1ZNczr7/QaIiOiH3oSDqQSYVBkMYjKHrcKiaOeEliAlIETR43qEq0SCz8812fZjEEz4RbMaUoaIDXhq2k2g6TlCoUxJAz1vL2VT5wIRhDL03JDsnkQ23EKFRAe/Oiuey0kGqlOITU5hC7olHL1juZ8RNTErk9t2kOWy/WHNRP1Q1GR2aPc2IOzKiNsnzS3LO4BXbY+MSh3lWe+Wz6etXwmL9C6LDUqICUh5lYU+SuyQoIzqI+NN28NhvljfDlQkV0Zg7r10GMsmLS/IOElbSFAm2lC4E1XED1IjTi1MKQBLUoecx26Fi7lwIKifXYcDvVU+JQCTM5gVxgry43dTjXEdaWCYqMIUJ6IVlAGRuqo4XsbDGMJ57PLAj695wR0Yt4MjYVIccZcuF8HJi0SqcfshrfAsjCj2KPXBBzz1x2HIcmqJ/1zKwJ8m9pzSXfcNpge7FNFTibtKsOGTAtb8LNDF1BUry+M9UBQdGbEfS4t6HaHgbfJGGEdH7niTkBmhG4WCVG9lSAT3ZB/G/ryIgt8zCMmKzZbejpscnprRcAU8QC/YWqLIEj+SX/ibNRUPYelWT0cnZUMMC+vlAL78EINMpcOL1DxNCNXQDDlVT7z3/GYGkCVcUJaHIPMnlglIeZWBPkrum6fAh53qQPfGnITx3XkGQEftNGjQEf46+XR8nBbxSZNCEMM0o4+y4AarELuRpGJoCh6q5DSnUG96LqQoMybbj8EmRzVvW84/uLCwjXhGyGVz2IbVKqWBvAYBe1U6GrbDThjeUrSeDyTPuTVRAPx/gaqL5Jw/bi2DAg6QPsTnllHLypsAiYbye5HKeIyneb1EW9iS5G3EGPm83TTL0AzykHBU9lgrI8NwTxTvRDDwhPQPL8NwTHYxBDSZDCKrjBqihWLkiL2vLUyik3vCGXuFDsrPIPY4zFyF3zagghJQdlvEZCciDJLJ5CarfnyAlr7iHJyK3we/FMGENTo5ZG2rRISayRODxZrCcU5gBD/IApyWOisbyNGlDsp24KbAIufMmsiDH5sNEelqsZ6QM7ElyFxVTkkoIy1Q19rBmNQMlgxQKGGYo0CodDkAEm0Ey2sk7to8qbMgFukh5cizMaYUPeTXNEIauKzIcYkCL0gc2c0IoQmg1Q4ln8GYQpevDhDdkCWqnrwZ40a5gAKAC5XhOweaifuDkKGcMJh8k1LlFTTQFjudBJwFkbfjNKY3ck6RzAafDjOcYJBO/0sA99yES2kWxJ8ndUCXYVMu94UVa09NQ0WS0YYJkNAMlVTkF/rCRQBaeFjwCbwfJCEE4TgcyoYVq0c1YSz+6RYaetKKn3HsnDssUCZ+wKhw9syLEcR3W2SyYIN+MKV1Fh1biAS87Nd0TvXHBmDuwuUsynRx7PRGD2/qUsVmeIeX+DBDqTEpKM5wx346LEgQTtf3AmrDM1BAqD8sUkfPgXJMbiuR/64nnPhzMWCM6T3hLCW3h1vQ0TBkqWrQKyU1XV0x0PwqQMBVopon8AlPm+0DOqB7w+PzUAk0Xuiqx+55XpeRzQx+O3F2FJ4T73/ui3ZJAr8Qyq/qpV+5X/L4bqgQrUSfcuSlpQZfNHxUYEs5BBciRlYX6Q4U1DFWGmzckewDPXURZMSknHmJzqvIhOCmnbNuLtZoKbEw8Z5BH7qSE02pR7ElyNxSxsIwSOvAFB/mmoW4qaKPSkyPtA2kgcs/XwYiGjOOpyTSmncbOh2OrBRqNkrK8PEPnJ6YhNlUA8NV440lr5edx2gKEUNNZWCYrbxDGOQNlgBABIQQ+r1Lq019gRF24BcWxRBqvXM+DTvxC96If8kbtFdHP50g89yxyj21KtPO1HyqxEmra2p3YGSiSg+Mx97yEKuGD4+UJuQ8F3tiRdUyNIja0ehitDQCoxx2HSminNhz1dm1xgycCNeOJwQzoAetGBT6V+x6xw7hTkhQYjMBHHOYZehKOGNJzD3noIsVzd9w4Tlsg8SnUtxCH2ZLW84KIUsjd8UNUaBeB4BQmDiKgb5KcNoYIawDY1AeQEoYcYIgJBPpSQme4ECTQCyulDcnmYRmpwOmGx9zzKvOk0GWzjgucyIbFniR3EQ/SDSIYBTPj/VDTFLQRG0OKB9mL7YuTQZL4ylKwGzKOV9PV1ATTILXoLByWLwIlhS6iEgw94tK1KXNgg4LNYwBQ01mlVVbMPRoyZxBp/U9MLYfNFwjUYs1dRIAc/biySh2gwmfrz8r23Ivo5yfXVPPDSrSEsuW6oaJDjdTeCN4LUESIjzs0WRsrpRQk9BBKt85rB/YouRtx7DdL45rX/Q4jpAQwJcHeMbu/ByklHra4wat6FRFINrkP6bnzVvjA7kPuSUddAc9dib2YDG0ZbuiBNFxIBgAoJ/cUz53HaYsc5au6kitB2yP3wR5WYqSQux1giti930sQPWXSDM83tqNBavM3g+RMY5IHKFIQ0YLq9YoM/rzWY889TbPJ9llzWhGtpp6qZfra3SCCBh/hkGHIotiT5M6rNrI8SNvn4k/Dee4AEGjZJKOELgKiApL47TZ1Nfe4J4Ve/AMGIxmePOznuSt8ozLFte5NjVUOZIlAMUP3EJZA7tDjSU4pJ6bAicMnhcndABFJZA+4qUrJiWPrfW87PqZgFR6mIdIZHJUQ1mA/i4fC+t9zJbTj8IP4hCoiIJvd04EawnM3VVbKSQMg8Ha8bsdCfEWaArlwW5aqZdcNoMNHNPHchwevt84iGdsbvh2bg2rZiT0lcpimeAFU48RepoJdNKTnrnOVv53krnob7D8FyF1X4vueoVBoeSEz9BISS7LJyb3/pppUSxWpc49LIaUsRc4hPfdE03tHWCbAFLFACgqqaZrGcieZnns55C7xwTZOo+/rSugWzmOpAi38dICihO3QFQkOb5jqV/7r+jCIXyhHY6gyHKrl2zzxSrH5Itiz5G7lkAyvpBjW2AH0HsY+sV8/jKBRt3C8raYr6FA9c+qNHLmslFMaLHbNfobRt4lJcRssLFRgzikfdpzEXfug6wbQSTnkbpgmi3emEE2U9BeI/43Zpmr0BmD3AQ2G89yVSpbnbvc2LUEwfRYje3pUSeSucHK3N3a8lujnS8Xui67lOzJJ2GOIkzYhZFNN/U6bT8J4Bck9T3KZOzRUmYRlhgaLuWtQQie1e5E3dYhOOc+CZMSTnPp4kI4fwiB+4dh+VWfDKLI0a+TIQyipA5dyssqQ/qVhht+EI08VGslmxJUDauj07b4E2Kaqwx+6DBJg3cEtVFIVFovKPgAsQd6lOuTIS5dbHrJm2TSrzNPeTu5dGxXiQq0Umwwm1JFdQkISAGqmgRY1EVk7yX1QzXhTIClJSvDcAYDq6eW/ybNW4GdwPXolk9yD2OZvXXcqsEfJnY8eA5Ca3ONT2skQ7cwcCh+w3YdkHJ8JHkUFvbyaHrfyp1RtUEqhRMNl4Gtx2d92nRMviFCJ2vDUYh6koUhwaEzaKfedxx8LyfCmYKbCGsj87k6iAQarsKjqm1QK0zzJIUs5a0b/KiW3y04gesGB7Uw2V0uSpn1REjmy2btVBN2dM2C5LG9UcNPjypA0I+aelBMPuf5Qi23a3nnaCxJFzgHCMhmzFxKH5hY2MAF7lNwNAY1rXvY0bPUAAGiV9NivE4d/ogE896xOSTeIoMMfKjFZM2KtkG0PVcP2MIMOfL0YySiyBI9vNhn3XYdXisbGTEVFGyZCK6U7eABCY79DtsrisCWoXF/G3zaww4tn+qrVgptqfGLKkn3oNRcNZ+9ThoIGrSHss6EyzfjiE6p4X0rW+ntVOMORe2Skh5VoQfVWgEsuZyu4ukEEnfggt1BXBtjT5J59w61k1uPwYZmpio42NRFlkHtRT5UnVGnKUZsbTDhE7LoWyxVvV1ZsWD5mSAeRUXxweJAjAuUGETQSlOLFzFQ0tGgVNCXmTgaUZ4iUnC7MYUtQ9XhgxzZy92PPnRTIcwA9zzdLbmOQztF+qBsqGrQKau/03C0/gEGKzzkVWX8yIWnI6jbCQ159yZ3r+hTjhJ7N9z+tuj4rhRymjHMQCJE7IeSbCSHPE0LOEkJ+os/rxwghHyOEfIkQ8hQh5O+Xv1RxyBJBkDPAwI7r3GVjeM+9bjAPMujjQdp+CKOgpjjAK1n01HJO1w+hDVleVdVldKgJmfpbSsM2usxzJ5X5wtdM4q1p5O6zE0cZXsyMye57avPYgKGInq5PiixvOGzzGO+C3RqWSZyDgqWQlTgsQzPUOAdpLuqHuqGgiWrfUyofjl10/KApoM8ihy4CohUqJ+4Hidt0n80pKcUsuP4wR0/fDcLY5kcsLEMIkQH8FwBvAnA3gO8mhNy97W3vAPBfKaUPAPguAL9R9kKLIswRI/IcCxKhA80f3Y66yWK//eKQLObuF/byWELVSCf3OCxDh/DcFVmCJ+8sDduwPMyQDuTqXOFrRjna4l4Yk3sJXsxs7LnLXlpn8GChCKplT2MqowS1Q80dXbCUb1IFZJYBXqWU3RNBSpJ8mDJUNGkNcp/TUpLHKkrusaBX2imV5ZeGlwoBAL0yBY/KfT335FkrGKpNcgwZp9WybL4IRLbBVwA4Syk9Tyn1ALwPwFu2vYcC4BY5DeBqeUscDHka0V4c3xtEtnU76oaCBmqgVv8kkz7A7MdanNhL66bj3gAd0hsIeAhikxfZ6FioExtqrbjnnoSfUj13fj9KCMtUVTRRhea3+mujDxqnzWuxj+JTzoAbK+sMNnbIRBNeSlvQc096IjKqTZINacgS1JkKu+eK19hxz/mEqqKa8bw/IitmbcAr3CvSD3VTQxM1hH0csd5Jr5jDF+WcVr04hCqNILkfBnB509dX4u9txv8J4J8QQq4A+BCAHylldUMgTykvcJmxSyWQzGxVwxqdArHWdrzGm6WKkjtvg5cDuy9xOT4zmGFLCqM+Kn92i/0eRn2x+AXVvCNqbOglHFGndAUNTLFKhT49Bgm5F/RWk/bzlLCMPEDH8WawRikT0rbNQ+Ib7AAxd5vqkDImJEmRj5AoQ4c1Fmo6GrTGujy3/Y0HkVgGeiePtFOq7YWl9UbUTRUNWkPQ2fmsSgN67kI2D683b/UWQeQv3a+IejvbfDeAd1NKjwD4+wDeQ/5He2caJEl61vffk0dl1tk9PdNz7r3alXZX6MBrnTbowCAJI3xItgQRgK1gIwwKg8EYZEcQBn8xdoQ5IgjCCmzzxYAxxkihIJAJGfwBA2IxEmhXrLSXtLPXHD19V1VmZb3+8L5vVnV1VU9XVtZUZU/+Izq6Krsm66mct5583uf4/0UOnVtEHhORx0Xk8atXr05v7RQYCBiMv+DpCHkOC2atXuGGauJ2DkcD3Z4uqE77H5umZVBj2wrtgpl1m60sL86QI+tuXwOg0pw+ck9FRia0QkZmi+rkMTwmQsc33Q8jN1allKF0DqaeA3Asf8qYtaOUMvMFs3Up7VIdCHMYeLHl88kSuU+mfbBts3lEvtWKq+cf4FBqw6ZlpnbuKV3IePs7dpeaw3e1GXrcoDG2T9/Lmsbzjl7zdpft5hBIToPjOPfLwJ1Dz+/gcNrlY8BvACil/ggIgTOjJ1JKfVIp9ahS6tH19QxR4RRQN6FBnZUfZBhn6gHXaVGJNqGfHPjbQCRhSude8Y7st7YLZmbnnkrtDVIEaVQzBfWAhRwjiqnQw63ks0WNbWvb3kHnHiV2Kz/9+3jBZBGTOFEEzDZf0Ax8dgm1cx/alfm9XWKpwJSTjDUjTjNpSjJOlCm+H5/v5Sj0q7bj5GDevR31qEl3akENO2E7aSo4MsRb/Rz4iFZrumYwrtsnde5TdsukszITmx/6xrkvX+T+p8ADInKviFTQBdNPj7zm68B7AUTkIbRzn29ofjPcxMkMZK9mXzCtqscWLR1ljyz4TtQzghHTLRjXkYGq/TjnnnadzBYNjJPac/au6AeNc1Ofz7nJTVXflKJcIneApGp2FyORu+25zkLp7FcP72bS85qb6iwMf3qqsYpDP12fSV8RJrtE3vS6rDVTkHT70aHgAgaBQF6Us5I694MOsmvIyfwpiLfAEM5Z2ooxKUgbEMxaXwI4XQ/YVHWcMQVVrczmTp3qlJtw48S9CE/6y1dQVUr1gI8DnwW+jO6KeUJEflpEPmhe9qPA94vIF4FfA75PqQnz57cIzk1oRPNMy4gIUWDTA9cO/K0bdU1XzvSF28SbTOXa7SVUpDfzgnHHRKmzOPf0JjZpoccxFUlyKy6lrW0j1922oE47GQwQhjUSJagx1A9dU+uYpQVVRIi9g+Lku4Y0bFqhDtDaoIOhvXFrpU9F8ol8AcSui90rB44PuFmmHGIanigfs266aX0pB+feqHCDJl50sJUzTvqEqkPsTq/M5t1EWCfp3nr9VIBjMU4ppX4HXSgdPvaTQ4+fBN6Zr2mzwbmJgIHKWdOwXz0NuxyKIK1IdybVdr8KXSakZfqm62RG5161XBuDKLXSuUqCi5uhzz3VFZ1UyI7yXejSMOm9ketuieGyOPd66LNLlVp7m9FERreX6ChyRkeT+HWI0emw5jm2DWlYMqVQB5hdnjPUpTTCwR/ZyDcnPnF35YJO1u68fOB4r5ONM756YOiwfaigGSU2BTm7/TZy95K2Hjoy3x8rsddzq0z7P5vOykwYYkpS0rMli9yLCr8SkuBMbg/rzcaFfgg1U2LYOxhBWjWgTJXyI1ry0jzejBV4zzp305aX9BX1+Dr7/lqmzgo/vNmOaTbd11E0Gi26yj903dOBmgwTjY1Q6+L22uO5ggKimVMEqnJQrm67E9OU/YG61JToH9FAYPus86Kcbaycoa0q9LcPOvd+hvF9MH3uqXOfvNbzcI7VikvbNdd4KK2Ukp5NSZ0AQ2moSYHkjBTRWXFinXtoJN8mO/d8L7jXHJ/7TRd8lrHpYPKisXnUWVs5q6FmKLSyetf3uqyzSVQ9VA8/FsIgoKv8idOSeS/0082QDZr0dg+nZaoSZXLuzdBnV1VJxjj3dL5gxoGa1LmbHdN2u0eTfWTKASaLxH7OMYNAereRDxMnwJlmwCvqFNGNFw/akIFVEQYTqsD4tEyiC6qSE2VuJzRre2jn0Y6yi/cElYBEyYBiegQqx+aNaXBynbvv0lFHTO0lsw2ijKJie8JHcr/JDPJg7hGReyfqafHnGdMy9VCPwsdGau/Kdpd12SSpnc10vprhdO9NGABK4nwmJS1O1ytsqCbx9sH6veX0mXa+AHT//C7VwcToEGyf/swpghHq2Z1OTEPaOFP2uKfwJxf17BBNHkycoHvdX2WN/tZB5546tynTMgd51sdH7hV6uY3v95tmTGdo56F79DuDVt4pUA/1EFlvAj13P+dA8rg40c59/4jIXWaUqBvFqVaLXRXS2znoZFRk/2OndzJuOLklr2e+SLOmZZqhx46qkezrLp8rOx3WZQu3OX0xFaxzD9JawyjyjtzPNAM2VJNkTFomJJp6WhIMa6OqpimTYXTifFpQ3fBgl9J2p8cKe5koH4BBKmRSQTXHyH3dRO6y88rBP8zCGe9Nvjl1e3qIKcuNeuxbrV7UD0Yi97p0IUNapmoK2skE515G7jnDDkZMIiOSJOf0QL3CddUi2j7YQZDmmDNE2N4RubzELJhZ+8VXqnqcPDFDHVe22pxhC//UxUznq/ouHeVPdO7MqGI0ivVGwAYtnDEF1Syj8DAYMpIxgg4pT8iM9qe1DvMe27u71KWbaXAMjhaZ1jnr/CLfS6tVXlFrVNqvHmhdVDMwT6ojOk5sn3seU80AjdMXiJWLGtp57HUTGrSn5vUBqFd0liDpTggkbdt1KZCdD9IIciJta75pmTONgKuskmyPRjPZebTTQs2YfuvEdJ3M6mRWqhW2VB1l+n63r7+KJ31qpy5kOl+t4mlu8QnXPe8upTMNHbl73ZFpyTjbtCTonPuOquLGh697N86nS8mzUnrGuXfMVHAws3MfP/BWyakgCXCuFXJN1nRf/VC/uDND5O4cMQiUDr7lNOF5cbXOi+oM3avPpMdsWixLzUOv+cliKWpGiuisOMHO3fChT4ggnTQtk8/d9Fwr5IpaRXZfPfiHXvY2qGq1qiOMMZ9hoA8624KxRFCOoXCNNnU047XOZzqfzblPpJ/NiZ3Q4nRD59wrvZ0DSjg25z5tzzUY1kaqeL0xzt2kCGbt0w+qTV2EM849MlPBkmEqGIbqM0fk3PPgUQLTelk362N7EP3OIoUnRzBx5s3Nct96nafVRZIrf5Ue2+n2qNPGm1KcHIbW/KQUcM671ePixDr3enB0WsaxzH55RTMrAVfUKpX2yGDuDPJgltM97oyJ3HPKXa9UfbZUHdcMdSSbl80f7jziX01G1ajqTFQxSvJhJ7TwXYdOxUxMDqVm2t2YqkR4WdIyhpLXT9qQ9A78zbblOTOmwxpVLbUX75sWVMtSmNW5B0fn3PPmE1crd+kHN55Pjw1YFae/5u4RcylxFOGKyi1yf/Bck6fVHYRbz6b/vzvtiAYd/AzOvW4kMW8u7lIWVHOBjdwnORknZydzuh5wjVM6ghy6gzsz3LU1M2RIr3M496ty6he3kbsf684Q10ZiK3dkOp+NYiaRKM0qUTcOvcAUIYece2zyn144PV+/6wiRayPJEZ3TtAV1Rl50szvotfVNVVnZuozOPa3PHNEKOesN6cD7nX2NfnB9kNqYRQrvqPpSz9aXcppqPtsMuOzdqZktzc2pu7eDI2pqiUOAqq/F7CexWjplWiZf1K2TmbBVclVMIu7MFKjp+RyhE5j+2aHUzCzCvvVAc4aMq8KrnNIbVd9lTxp4/QgV7RG2X9Z0tvVsxG6WxGoSw9+sEnXj39TkqYc6ZmxbWlaN3JQGYKSo2o0tw9+MLaiG9tfOF4gVv8jo3O3wmJpYkOzlVpAEOHvmLNdUi+jq0+kxLyPFMoAfTk4rJabjLC/KChEhWXtQP7mqUzOx6RZzsxRUjfbCJOcueQ9MHhMn1rnXAo+OCgZ5wCEkfYWvZmP2G4ekbnrDdwbO3etnX/A2LdMf59xzSsuICO2Kdijb119hvX+VvfB85pte1RSXJtHPzmOL6jYPzxik3ToZ2+d6lYPdLBZRyhU0W/63ER6U2vOj2Zx7NQzoKm9sl1J6Q8qRT/yutRpfU+eIrmjn3u9rtaTYmZ6bBSAMAyLljU1tDBhc8+s2CS8+BIAyzj2dRg6mp3/QSlIh7gQ+/VmVu7Li5Dp3E7mPczI2kkkk39YkaZoi0+6gY8adOeceHuB9STFDlDSKnhlYuvbKC1yUa/Qa2TplAGqmBdWZQD/rziFyD1rmpjoUuc80GQyoCc49MYXiWaPIRuCxo6rp+SvxpmYkzOBcQF/3DpWxgzRxHOHkmLMGuHe9zvPqPO6NZwHNllmlm4liGTTFtS5KjmkeyJHkz+K+Oy7wbP887ef+RL9HJ7tzrxuh+UnO3Stz7vnCtkK6SecQjWjKD+3mw29tUUmHI3TkrpTCVV2jgONOfb5GaBzAOEWgOL+tnmX527p6mYtyHVnNVkyFgapOyo09gkEhO7+FXltdJ1FCb3uwY0q7ibIOvgQTnLtxNLO2oDZDjz2qSLRLO0po9nfp+K1MUS/onaquz8xv4G0Y95zWzr3aeRWifd0nLm16U0rUWdj60rgUZH8O3CxvuWeNx/uvxb38ee0frHhHBrI8y0fvJ+OduzuHNX8cnFjnXq94OoJUyYEWORi0s81C2zoOjbVz9JRDb0tPvsWJIlDZFXCagc8eVZz4cEE1z8jdX9E7ju71FzjPBtUzd2c+V+A5dKjg9w/fVAHcOWxR15o1rrNCd2uwY0rFljM69zT3OiLfl+TUgtoKfbZVDa+7xY39iBXZJbZdPxlg1/u47jBL+ZBnt0zou+zUzTrZeJadTkyTfZJKtp2H7W4bl1ZScyjCP3C2wZP+QwTxJlz7Ks6+6XKrT8+p5DhC7IS6QGvz6wa9pI+H8T/lEFM+qAW6sAccqsDbcey8KFAtzq7UuMYKnU0tVNUxEntZBCNgMAbvjRlMybPrpLaqnXv16hdwRRGeuSfzuURk8HmtjQZ9U+sAcl3oZxoB19TKgchdzTA8BuDalriRyL0f5XNTXa35bNCkEmvnvsou/TC7c7eF7HHDY3bgLW/nImv36wcbz7Dd6dGUNqqSjfjMdreNj9zzHTgE7ZCTS2/TT77+R1S6JqWXsZEgdscPkUWJbkPtZZB7nBUn1rlXXIeujBcASJVdclwsMBhkSkwE2YkSAolIMr6Ppp4dP0zj5Dhhe/F0i8vqDA9s/B8A5OxDM50vsYyJIzfVKLG1juzi0uNwplHhmmodFI+YgfYBwKsdnCC1yCtFEPou+04Lr99le3ubVdnLXEwFo8ZEMLYVMk9JyWE0LuqOk/61Z9jpxLTYzzS+D9AwveJj51J6+bT9juLuB9/AddVk75k/pBrdIHKqU0vsWST+eOKzyAxgzaK5mxUn1rmLyIAG9VDknp/g7jDOtQKuqtW0FbITax3PfkZ6WN916DpV/H73UGrJ6eeXh3zwfJOv9i9Rx3yJ1l830/lS9sHRm6oZAMq7S0lTP6zgDQ2QiS1uZYzcKzWdXuiPrY5X1AAAIABJREFUMEPmSQIVBTpS373xKqdlGzdDSsCiZtIy41oJ85SUHMad589xVa2w9/JTbLd7NGjjVLOxWtYquld87CBQziR/Fm+97wx/1n+Q5Ln/y5ps0w0ykrYBfW88g2veXPrT4MQ6d2DA5T0mLaMpUPNd7OdN5O63dQSp1YBmo1odyLEdjCDznLB94GyDp5QuonYqa5mjL4v+BIa/bqL1U2fRHx2H9aZOywSd62me35mhSwmgWQ3YUVXivYNybHly4/SNuPfuxqucYYtKRrI2GKQhx/Va9+ekBHT/2QbPqgskV76ic+6yj5vRudeDyfoLak7EWw9daPIF9xFa7Rd4m/PkgFIhA/oTIvc8ZBmz4mQ79wkc17YVMs8cHuhR/uvOKarRBiQ99qIedelkjh4BEn88eZibY3tVPfB46TUfZUdVUe/6xMznmyRObiP3vKOY0HfZcU/hqSgtgLrJbDn3wQTpCKd7ntw4VR0pysYz+JIQrGZ3Lrb1V8ZMBg+cY77X/TXrDZ7uXyLceprtdkSDNpUME55gIvcJN6d5TXh6rkN017sAuCgb+He8OfvJ/PGRu5UILCP3nCETOK7nwbUBOhXUDdYRFOxdZa/bo0Ync+8yQH9Mv7VSCqcfZW6xHIef+t5vhx9/juo7Hpv9ZEddd8k/HQbQDUwL265OzbgzdhPZYnbSPhi5k2Mh2zHDV80bTwJDcxIZYNMa7ph2PNXLlyTPYqXm80rlLsLeNrL1dTzp49eyFYUbgUdbBTjjesXnOOH51re+k2f6eq6jfv/bs59ogrBOxwQ0s8oyZsHJdu4TOK67cWJku/K/4HYgiN1X2Ov2qNMZMN5lQeVwWiZOVO65axGhWcunD1pNWOjRHPOP6XXf0ykxbwYSKxhwuh9SY8qR4c+2nJ7bfcK8aTaBFBiZ6xjBPFkJo1XdMbN65fP6vWagrZhofzKftAzAex86x1+8/ed54Zv+PfLI38t8HicYv8O2jJZ575qOA++Wv+MtxCSmuchqMuY4sWfhtM7DFrB7hd3uupFOyx65i/23Q1OqtiC8iAr8ceBMcO4DLc/8r7s01mET2L2ibyKqTeRUqWTsymmGPttj1JicHNNhZ0+vcUM1eLj7lyBkZuIEXXyPJRjwuwxjjs7RP/da2ICLG9q508o23VwP9ISq12vruslQ22DeDK7DcBzh777/22Y+jwTjxUa6vYSK9DIpPM2KEx25O8GkyF2nB2adMhyHyopZ3DuvmLRMd6C6kwGppubQMM2gAr+czl1sGmpC58A8tqjpdd+7yn6kd0y9Gb5QltPdGXHukuMQ1qXVKi+r0ziiiJ0AWpdmOl/sVvFUfKizSnLm0B/GmUv3s68CXrf/uD7QzFYU1sNvIQ6Hhw7z1l6YB7wJkpjRHNf8zXCinbsXjGeas33uebHMDaN2Wi/u7uZL7HZi6nTwZ3Duo3JsYHQ8F1SBPw7cCQpSVjRiHumw+qmzhoLgFfaihJp0SGZw7i2jLeuMfAYnx24Z3W2i8+zt5r0z9/737CDNiM0yR+f4hrvWeELdzWlMbSJj5K5bl20L7UEHmUbuC0htHBee2WH3u+PSMvMJJG+G28S5j6RlLL/1HNIy66strqkWnesvELU1R3QWGlEL3wzTqCHnPs8IOA9Y564mRO7ziCDXWzU2aNLZfJn9bo86XfoZeU5gkHP3ewc/Q0oClYNY86XVKn/cfxiAyqU3zHy+dKcyct3T3cYcnOMjF1t8sa/z7on4EGRf64k7fqftLYibZRqE1SqRckk6o/z/+cgyZsGJdu6VquG4jsZ3y+TJkmdxthXwslqjv3mZXttwdQfZnUxY1xFBvD9Iy1gJuazDUfOGH9boKxmz0HWtYB4L/WxrQEGwa7qU1AzOXfPcV6kke9Dvp8fdGSicx+EjH/vnvPj6f0L4Hf9u5nP1ba2jO7rbmF/OOvBcXrnr2wHo3fXOmUbs09bloe9rv69wVaQ1Bm7x+P40qJuCcNwZk5bJQZYxC050QbUWVGirCn60f+CDxnGEJ32SjEIOR+FcK+QZdZq7dl+mVzXOLSOZEkA9DNlTAexvYTfVnbhPKBF4M3ThzBG1is8+AV5798B1t6PY89iinm2GXFMrXNi9yn6U6PmCSjaxadBpgtgdSi+FrVQHIHYC/JwczevvuwPu+7e5nCvdqYymkvrzpZz9sX/8Xbz0500uPvSO2U7k16DDgZ22pazoL2nzgEXV0P62OqNpmXyUu7LgREfuVo1plAbVEinNI3I/3wp5Wa0R7r9MknJENzKfr2nSA72hljwrvpCVq3ze0AMpIb1RFaM5RjHrzYCrrOK1B/MFs+yYgAF9rfkcdseUZOQsnzdSDvrRgbc5i0UEnsvFv/53oHF2thONGX7Tg2/Z+ZluFepGsONQzt1q7uaQxpsWJ9q514LxTHO9OY1jg27p2vDWCXo7BLtGbDoDR7RFIx2mGUrLGLbJrKRY80a14rKrQvqjUUycmEJ2/l/U0/UK19UKQfc6e92YmnRxZhgeA0j8g8XstnXuy+po0pmIwXVXSuH2Yy0E4i73Rj2dBxl27mnb75Jec4NaoCN3NaagWiHGzVG/9rg42c694tJRFZKRnPs8ZLuGEdV1x8z5/a8YQ7ITQtkxeDrD3TK2SLOskbsWLxgtqFr60zxFIyw812G/sobf79LZ26ZOZ9C1kxUjgh2dOCGU5a11OMHhtEycKCrE9JY8rQHgpvYPO/f5TTXnCctqeWjNxwmhzK65mwUn2rnXDUf0aEFVxfPdporpV747NuLBtexsc83QZ3dEjck6mUXk8Y6Dmsk/jhb2upEmDpvXQo9DfRONN19mhT2CRvYdEzDk3PWuSbN8zkYEN084tisrGh14ixbCbTItnOok+xfDzTINGoHPngqReDRLYJS75rBbvRlOtHO3ZEqjzj2Zg2zXMILTetLwdeo5vR2eQYTBtuQND9PYbh9nDhFwHmiGlr71oHOP4xhXFM6ctqjK5Hz9zad1C+qMzj11lkORe5Xu0jp3d8w0c0r54OQrKTkP+GMEUiw3yzK3QYJmtRxHfJbkJO6SBSfaudcNGdFo36yag+DuMM5cvJdIuZyVTbqV1ZmGU3RBNcSNRyJ3ogG9wpKhbvKPowu935tfrQPAP3UHACtbT+kDM4hfwLAak43c9Y5pWZ17pdqgr+QAk6VNayx75AuDmY7eEFnbss90WDQDn30V4o7MRcxD//W4ONHOXUuPVQ7TiM5xHBvgdZfWeEbpvHsyA0c06NTSrqriDS2aTrTszt0du9CT7nyde80QcZ3etc49ezoMBmpMljzM1jryGGCaBxqhzx4hcWc4rbE4sYhpUa3WiJRLvD/s3LWaGUta57CwkXtKWGcwLy794+CEO3edcx/luJ6XMo3Fa8+3+KrSUWRw8ZGZzuU6QuTW9TCNEaKIoi6uqIVU4I+DhoncvRH61mQOQsfDWD9zmm1V42LH1DpmjNyDuo7cbSTcMeIrsqQtqPa6J+3hFF5i9IKX37k3Ql+3/e4Pt/2atMwCctbTwLOqaUn7gDB8nspd0+JEO3erqO6OckTPOXJvBB6n3vGPAPAfePfM54u9ulFW13b3Ih0NLGvOverrzgEv2T+w0JlzOuzOUzVeVKe5EyOUPUMhG6BRDdlXQRpJ2hZUWdabauixp8LBfAUD57isqaRhNMe0/aZTzQWwv+fVNPHZkDB8P55vQHMUjuXcReR9IvKUiDwtIj8x4TX/QESeFJEnRORX8zUzG+oVXYz0RgUMcqRtnYS/+f5/CP/sSXjDR2Y+V6rGZApN/WhxW73jQESIvRquSgb6l8x/oT94vpmmwwCYQfwCtLPZYeBs2pHpUlrSdFjTRO797khaRuK50P3mjUbgs0vtEI/SMneGDaM/htunP0cu/Zvhps5dRFzgF4H3Aw8DHxWRh0de8wDwCeCdSqlHgB+eg61Tw3GE2K0TjPCDyJxkxw5h5dLMTH8wLLVnnbsVf17OyB0gcQ9zus87/9gKff6qf5d+28pqZiV7i0bgH4gkOz0teL6szl1H7tWxrYTLGggMo2FupsPdMnbnsQjirWmR6qgOt0MueeT+FuBppdSzSqkI+HXgO0de8/3ALyqlbgAopa7ka2Z2pEx5Qxc8T8GFW4LgYIvYskfuMCwYPNQOOeecO8DDb9PCC3L6NTOfy0buynTLdNMupeW8qWoO+hAZdu7WORZgrTcCnVaS6GDNYFHj+9NC+YdV01JB9SVVYroEvDD0/DLw1pHXPAggIn8IuMC/Vkr97uiJROQx4DGAu+66K4u9U6PnNyBB9/6aoZQBv/XyOsdhSDCSlllgBf646Pt1TQI1FLnfiuLSB77jw/DwafzVu2c+VyPw2FSDSLIT9QglJgmWN3LfJ8SNr6bHFkk5Oy1a6UzHjfRYShO9pHWOYajg8JyB3IKAZhKOE7mPo79TI8894AHgXcBHgV8WkUOTO0qpTyqlHlVKPbq+nk1rcVr0x2iQzpslL29IOkxjFo11ksv8hR0ntXerdkz3vwdO3z/zaVqhzgFbwY64q9Nhyxy576nwQAOBlXkrgnO3PEpeb3jnoYVpvCW95sOQ4LCwDjMKtc+C4zj3y8CwuOMdwEtjXvMppVSslHoOeArt7BeOAVPe4IK7BXPu3sjkXrrVW9KWPACpjFFjmnOXUt6w08F2gKyXpsOW87pXfZe9EYGRdJq5AM696rtGIGWwZtLOsALYP5hoHnT7LDIFfBzn/qfAAyJyr4hUgI8Anx55zW8D7wYQkTPoNM2zeRqaFU54OHJ3k+WX7RqGV9OLpm9a3MQOSizxgnfGaEoWrdbRCDx2hiLJftcWspfzutsuJb/fgX4CDOgHFkFcNS1EhMir4/e7qY6qHd8vws7DG8ONM1jzSxi5K6V6wMeBzwJfBn5DKfWEiPy0iHzQvOyzwHUReRL4feDHlFLX52X0NJDgYEpDKa3sUgQKVIugrjNc3T0zuVeACHicYLAkixvFzoKK59BxalR6eoCsv+SRO0DiHUyHWeKwefH55I2eN1pfKs6acc1E83Cf/iIDmmN5N6XU7wC/M3LsJ4ceK+BHzM9SYTSlYZVdEqdSmAmuarVBooS4vUWVYZHm5f3CWmFv1d1NizZOwQrZALHXwOn3IdobFLKXOIpM/Dr0SNWjulGPiiQkBeg2AcOh30N/X2trJAXoDLMIzA472tffUzDi3i7LGbkXHda5961zN90DSQH4rS2aVZ+9obFsx0bAS/yF9Y1z7w3x0BctLQMH1ZhUvPyR+6AdT+9UbVpjWakqRjHaANFf4Pj+tKiHAXsqoGcmmpO+Wqi494l37oHZKtkR8gGRUnGceyP02KZGv70JLDaPd1wEVf0ljQ3PiVYEKl7k3h9WYypA5D7oUjLOvQBts8NIGyAONQ8sf0BgC/A2LaNJz2IS8cBxb7k9J965V2s1YuUS79sL3qciyy+4O4xm6LOl6ijj3N0FtlcdF/VqSFtV6LW1k9HXPaaPA04xah0AajiSLEKXUnBQR3Xe2gV5Q8IR5x4t/zW3qAe6lbN/gEU0XpivOfHOPWWa6wymDIuiTGOhh2kaOJ1NEwEvf+TeCFz2CNO0jN0xJU4FZNzoxHJChtvb4uVPhzkjgh39aHETkllwqJ1wgUNA06JhJDEtN06q/7qga38bOHdLg6oXi9XxLAJLnkUr9NikjtfdpNdXBMT0pJILb828UDcDNX3r3OOkcOkwAKnqtB7dbaS3/Jw+btVG7rpbRhUscj/UTliAXapFw0Tukip32ci9dO5zQdP0KisjYNCNdbdMEVjyLBqhx5aq48XbdMzOY1HRwHFRDzx2qEF3uNYRLWyhZ0Wlbjjh25sDNSzbXruE8E3kbhsIFslKmAVWIMWmNgoVuY9IYlqhkUVx6Z94564j9wE/SKqmXoDFYlH1XbalSRBv0Y56hEQkS+4kG4HHtqoNRTFJYeTehlFpaZqMePc6furcmwu06Gj4DT0TEe9pfpZ5i8HnjaDWpK+EyMx0SAFmOiwahmLcKpB14sVKBJ58526Z5swX007sFWGxWIgIbbeFp2L293apS0cTcy0xbOTudg92KRXppgrQbLToKp/21lWqap9E/KXulqlWG1qqzjh3CtRtAtCqBuwSpupXToEG3+qBy44a0D9044QqEWpBxeAT79yboa+dTHSwyCEFiyCjik4FdLau0aBNv7K80SMMInfP3FQ7C17oWXGqXuEGDdpbV2myT2wnKJcUjarPFnUS49ylYLMFNrVhRbKLxODquQcnmju9PlXpLqxGc+Kdu3UyfjxIy1SIkSXXZBxFP9Db7c7ONerSGfQDLynqFZcdavi9wXUPiQrxJR3Gaq3CDdUk3r1GQ9qaQnqJodd7ncS0zRYpZw2DomTfRu4FI/mLvYaW2ovbKf8//mIook+8c3cdYc9tEvS2QSmdlpFiaDIegBF7jnev06Q96AdeUniuQ9uxKliJjtylu7CFnhVr9Qo3VAP2r9Nkvxg7JuqQOvfln6odRquqW5fp6MjdLcDA3jAGkpjbqXLXokjPTrxzB+i6TTwV67tpquxSjMVi4da0c+/vb9Bgf9B/vcToDpFAdXt9qkRL3UY4DmebAddp4Xeu05T2QJBhSdEI9U7VMX3ibmzaN5dUGnAUq1WfTdVARmc6CtLd1gtM62x70+Tcu8iCrv1t4dwjO0Le2WQ/0q2EblAsJ+M3TwPQ39+kIW28JY/cAXq+uQF1ttIWTqcAogvDWK35XOU0rfgarQLcVBuBxxZ13MhGvpYyoRjO/VRN1zi87g06cZ86bSK3ttQzHcNQoW2dvWFy7ovT3C3GFZsRvcrgbtqOetTp4AXLnTsdRdA8A0Cyd50Gbfz6yoItujn6wWDasGsW+qKimKwQEfaDdap0uV9exF85v2iTjkQz9HUhO9KRu2fTMpVirPdm6LGlmgTRFntRjxodem5x1ozUBs69u+CA5rZw7kkwiCCjbhtXFG643K2Eo2g1W3SVh9p+iYokuEseQcLQ6L6J3Kt0cQvm3AGi+jkAKpIQrN15k1cvFq3QY1saVHrbJEmfimqTiAteMdIajiO0/RUq/X329/epS3cgtl4AeMPO3aQivWAxvua2cO7KdJrQ2aTX0T2oUimWcz+/UuUqqzS2tcDVsqcHAJyave7babfMoraos8BbuZQ+doYeLyNEhJ7fxFUJ7f1tanTpucVKhcUVI06zfZUanUGRsgDwzQ67v79B3O3iS1KmZeYJf2iEvGdoCIqSg7Q4vxLyslrjvvgr+kDj3GINOgZ869y723SjHqHEuEGxrjvAyr1vGjxpXlicIceETUN2djao0SUpUFoDIA709zXauUaDDiz5wN4wwsYqiRKi3ev0DN2ylH3u84Pf0MVI1b6BsrJvBYvcz7VCXlFrrIjpfiiAk7HygP325pDQcbGiSIA3P3D34MmFNy7OkOMi1M492tmgJh0Sr1jOXVXXAOjtXqcmnUJ9V1drAVvUiXY26HeNr1nQmi8OsfYMqK+YHvG9G6iuKUQWLHI/Xa9whbXBgeZyF/YAgoaJwHY36UeWUbFY1x3gDXessvHh32Kt6kH9zKLNuSmkugqbEO3doEqxctYATl2v8/7edZp0kAI1P6yYVs5Texv0PevcF3P9bwvnvlqvsq2qyO4GKjqrDxYs9+s4wlb9XjBUG0VIy7QaddqqQrx3gySNYoo1X2Cx9sh7F23CsWGLer29G9Tpogrm3F1zA1X7G9SlM+CoLwBWaz5bNFhtb5D4htlyQfWx2yIts1avsE2dePcGxNbJFGerZ/HqylBKoADdDytVnxs06O1dT3ndl5lR8aQgnYnYu05VOoXbLQVD9tfp4BQucq/jdDbBUCgsas3fFs79VL3CtqrTb9/ASft+i7XgAX7gwx/guYvfjvqeTy3alGNhteazqZqoveuozmIX+u2ESkvvTtubr7DCHk51dcEWTYdmq6V3fNuv0qBNpQAzHRYrNZ9NGpoNNbJrfjGR+22RljlVq/CyqnO2fQMnLm7u9+4zTXjsVxdtxrGxUvW5ohqcb98AZSP34nxRi4pma5V9FdDdvMKq7OGZhoKiYNXs+Krbz+OIwmkufwrSwubc/XgLV5VpmbljrVZhw/CDuIYd0nYUlJgf9Je0idfZwInKyP1W4VStwjXVgl0duVeaxXLu51ohV9QqF7tP6wMFKGJbBJ7LntMk7O0QxIuN3G8L594MPa6xSti9ThBvoZDSud8CtKo+G6pJJdoc3FRL5z53nKpXuMYKp/a/hiMKr14s535xNeRFdYazGMGR+vpiDZoS3UB3+5ztvaQPlM59fnAcYc8/RZDscVZt0PVa4LiLNuvEI/RddpwWQW97EMUUYLK26Dhdr3BVrXJX8nV9oLZ29D9YMpxrhbyohhx6gSJ3gLim25Tv6V+m5wQLa364LZw7QLuio5fXOC8SV8qo/VahE5xBUFxIXtI7pgJ2KRUN51dCXlDrBBLrA9ViOXffddgOLw4O1M8uzpgsMDMoDzovEC1Queu2ce5xqCOBB+QyiaXlLDF3xDVdDLuPF4ncemGoW4uM0He5Ed4xONAomHMEng0eGjwpWFrJX9X8Q+uyTVRb3LDh7fNNO3UXAC1po8JitYYVGk0dgb1eniMKypvqrUKnOUSZsP66xRmSEe9997fy9f46O3/tBxdtytRonLlIpHTaV60sjkX0tmiFBKidvR+e04+dRrEKNEWGf+oSXIZQYtqN5WZUPElILnwjth5ZxKngv//onXTe+BShX7za2APnV/iKupPXy/NU1u5amB23TeR+cX2NjvIBqN35hgVbc/ugcfoCbaULSrJ6x01eXSIv/MgH38KvPPhL7Hz004s2JTOK6NgBXne+xTNK71irlx5ZmB23TeT+8MUWX1WX+AZ5Hv9SAZj9Tghee2GF59QFHpavEZ5ebqGLk4RW6PN93/VdizbjtsSFlZAX3vjDfMH5Ft705u9emB23jXN/5OIKP/MNv0B391M8etc7Fm3ObYNHLrb4XP8+Hna+RnD/Ny3anBIl5g4R4eMf+jbg2xZqx23j3AF+/MPfDHzzos24rXC2GXLjHf+SJ898nIdf855Fm1OixG2D28q5l1gMfuADb1m0CSVK3HY4VkFVRN4nIk+JyNMi8hNHvO5DIqJE5NH8TCxRokSJEtPips5dRFzgF4H3Aw8DHxWRh8e8rgn8U+BP8jayRIkSJUpMh+NE7m8BnlZKPauUioBfB75zzOv+DfDvGGgFlShRokSJBeE4zv0S8MLQ88vmWAoReTNwp1LqMznaVqJEiRIlMuI4zl3GHFPpH0Uc4GeBH73piUQeE5HHReTxq1evHt/KEiVKlCgxFY7j3C8Dw9MndwAvDT1vAq8H/kBEngfeBnx6XFFVKfVJpdSjSqlH19dLCoASJUqUmBeO49z/FHhARO4VkQrwESCdaVZKbSmlziil7lFK3QP8MfBBpdTjc7G4RIkSJUrcFDd17kqpHvBx4LPAl4HfUEo9ISI/LSIfnLeBJUqUKFFieohS6uavmscbi1wFvpbxn58BruVozq1EaftiUNq+GJS254+7lVI3zWsvzLnPAhF5XClVyEGp0vbFoLR9MShtXxxuG8rfEiVKlLidUDr3EiVKlDiBKKpz/+SiDZgBpe2LQWn7YlDaviAUMudeokSJEiWORlEj9xIlSpQocQQK59yPSz+8KIjIfxaRKyLypaFjayLyeyLyVfP7lDkuIvIL5rP8hYh84+IsBxG5U0R+X0S+LCJPiMgPFcF+EQlF5PMi8kVj90+Z4/eKyJ8Yu/+bGcJDRALz/Gnz93sWYfcwRMQVkT8Xkc+Y54WwXUSeF5G/FJEviMjj5thSr5ch21dF5DdF5K/Mmn97UWw/Dgrl3I9LP7xg/ArwvpFjPwF8Tin1APA58xz053jA/DwG/NItsnESesCPKqUeQtNI/KC5vstufxd4j1LqjcCbgPeJyNuAnwF+1th9A/iYef3HgBtKqdegeZF+ZgE2j+KH0EOCFkWy/d1KqTcNtQ0u+3qx+Hngd5VSrwPeiL7+RbH95lBKFeYHeDvw2aHnnwA+sWi7xth5D/CloedPARfM4wvAU+bxfwQ+Ou51y/ADfAr4W0WyH6gB/w94K3oAxRtdO+hp67ebx555nSzQ5jvQjuQ9wGfQZH1Fsf154MzIsaVfL0ALeG702hXB9uP+FCpy5xj0w0uKc0qplwHM77Pm+NJ+HrPdfzNafGXp7TdpjS8AV4DfA54BNpWmzxi1LbXb/H0LOH1rLT6AnwP+BdA3z09THNsV8L9E5M9E5DFzbOnXC3AfcBX4LyYd9ssiUqcYth8LRXPuR9IPFxBL+XlEpAH8D+CHlVLbR710zLGF2K+USpRSb0JHwW8BHhr3MvN7aewWkb8NXFFK/dnw4TEvXTrbDd6plPpGdNriB0Xkm4547TLZ7gHfCPySUurNwB6DFMw4LJPtx0LRnPvN6IeXFa+KyAUA8/uKOb50n0dEfLRj/69Kqd8yhwtjv1JqE/gDdM1gVUSsCPywband5u8rwMattTTFO4EPiqbL/nV0aubnKIbtKKVeMr+vAP8TfWMtwnq5DFxWSllZ0N9EO/si2H4sFM25H0k/vMT4NPC95vH3onPZ9vj3mEr824AtuyVcBEREgP8EfFkp9R+G/rTU9ovIuoismsdV4FvQxbHfBz5kXjZqt/08HwL+tzKJ1FsNpdQnlFJ3KE2X/RFjy3dTANtFpC5aOxmT0vhW4Ess+XoBUEq9ArwgIq81h94LPEkBbD82Fp30z1AI+QDwFXRO9V8t2p4x9v0a8DIQo+/2H0PnRD8HfNX8XjOvFXT3zzPAXwKPLtj2v4Heav4F8AXz84Fltx94A/Dnxu4vAT9pjt8HfB54GvjvQGCOh+b50+bv9y163Ri73gV8pii2Gxu/aH6esN/HZV8vQ/a/CXjcrJsn66a4AAAAYElEQVTfBk4Vxfbj/JQTqiVKlChxAlG0tEyJEiVKlDgGSudeokSJEicQpXMvUaJEiROI0rmXKFGixAlE6dxLlChR4gSidO4lSpQocQJROvcSJUqUOIEonXuJEiVKnED8f4pFR9uu3NheAAAAAElFTkSuQmCC\n", 103 | "text/plain": [ 104 | "
" 105 | ] 106 | }, 107 | "metadata": { 108 | "needs_background": "light" 109 | }, 110 | "output_type": "display_data" 111 | } 112 | ], 113 | "source": [ 114 | "%matplotlib inline\n", 115 | "_=plt.plot(ts_target)\n", 116 | "_=plt.plot(ts_out)" 117 | ] 118 | }, 119 | { 120 | "cell_type": "code", 121 | "execution_count": null, 122 | "metadata": {}, 123 | "outputs": [], 124 | "source": [] 125 | } 126 | ], 127 | "metadata": { 128 | "kernelspec": { 129 | "display_name": "Python 2", 130 | "language": "python", 131 | "name": "python2" 132 | }, 133 | "language_info": { 134 | "codemirror_mode": { 135 | "name": "ipython", 136 | "version": 2 137 | }, 138 | "file_extension": ".py", 139 | "mimetype": "text/x-python", 140 | "name": "python", 141 | "nbconvert_exporter": "python", 142 | "pygments_lexer": "ipython2", 143 | "version": "2.7.15" 144 | } 145 | }, 146 | "nbformat": 4, 147 | "nbformat_minor": 2 148 | } 149 | -------------------------------------------------------------------------------- /mgdata.dat.txt: -------------------------------------------------------------------------------- 1 | 0 1.200000 2 | 1 1.085805 3 | 2 0.982477 4 | 3 0.888982 5 | 4 0.804384 6 | 5 0.727837 7 | 6 0.658574 8 | 7 0.595902 9 | 8 0.539195 10 | 9 0.487884 11 | 10 0.441455 12 | 11 0.399445 13 | 12 0.361433 14 | 13 0.327038 15 | 14 0.295916 16 | 15 0.267756 17 | 16 0.242276 18 | 17 0.219220 19 | 18 0.246463 20 | 19 0.307757 21 | 20 0.397178 22 | 21 0.494698 23 | 22 0.583265 24 | 23 0.655619 25 | 24 0.710732 26 | 25 0.750036 27 | 26 0.775630 28 | 27 0.789630 29 | 28 0.793964 30 | 29 0.790330 31 | 30 0.780201 32 | 31 0.764842 33 | 32 0.745342 34 | 33 0.722627 35 | 34 0.697486 36 | 35 0.675245 37 | 36 0.663863 38 | 37 0.668461 39 | 38 0.690802 40 | 39 0.728579 41 | 40 0.777080 42 | 41 0.830922 43 | 42 0.885404 44 | 43 0.937379 45 | 44 0.985353 46 | 45 1.028993 47 | 46 1.068476 48 | 47 1.104007 49 | 48 1.135587 50 | 49 1.162981 51 | 50 1.185804 52 | 51 1.203651 53 | 52 1.216485 54 | 53 1.225608 55 | 54 1.233433 56 | 55 1.242714 57 | 56 1.255372 58 | 57 1.271314 59 | 58 1.287582 60 | 59 1.298593 61 | 60 1.298236 62 | 61 1.282756 63 | 62 1.251977 64 | 63 1.208379 65 | 64 1.155518 66 | 65 1.096929 67 | 66 1.035636 68 | 67 0.974022 69 | 68 0.913880 70 | 69 0.856496 71 | 70 0.802634 72 | 71 0.752489 73 | 72 0.705736 74 | 73 0.661730 75 | 74 0.619840 76 | 75 0.579818 77 | 76 0.541986 78 | 77 0.507193 79 | 78 0.476675 80 | 79 0.452062 81 | 80 0.435599 82 | 81 0.430438 83 | 82 0.440628 84 | 83 0.470066 85 | 84 0.519976 86 | 85 0.586417 87 | 86 0.661005 88 | 87 0.734798 89 | 88 0.801487 90 | 89 0.857915 91 | 90 0.903110 92 | 91 0.937260 93 | 92 0.961090 94 | 93 0.975605 95 | 94 0.982012 96 | 95 0.981697 97 | 96 0.976237 98 | 97 0.967452 99 | 98 0.957519 100 | 99 0.949112 101 | 100 0.945426 102 | 101 0.949830 103 | 102 0.964947 104 | 103 0.991405 105 | 104 1.026797 106 | 105 1.065501 107 | 106 1.100331 108 | 107 1.125689 109 | 108 1.139706 110 | 109 1.143858 111 | 110 1.141285 112 | 111 1.135400 113 | 112 1.129145 114 | 113 1.124705 115 | 114 1.123387 116 | 115 1.125572 117 | 116 1.130703 118 | 117 1.137322 119 | 118 1.143128 120 | 119 1.144988 121 | 120 1.139072 122 | 121 1.121762 123 | 122 1.091658 124 | 123 1.050963 125 | 124 1.004313 126 | 125 0.956414 127 | 126 0.910743 128 | 127 0.869387 129 | 128 0.833268 130 | 129 0.802381 131 | 130 0.776007 132 | 131 0.752966 133 | 132 0.731924 134 | 133 0.711727 135 | 134 0.691683 136 | 135 0.671748 137 | 136 0.652640 138 | 137 0.635941 139 | 138 0.624249 140 | 139 0.621204 141 | 140 0.630916 142 | 141 0.656368 143 | 142 0.697366 144 | 143 0.749925 145 | 144 0.808058 146 | 145 0.866325 147 | 146 0.921143 148 | 147 0.970719 149 | 148 1.014423 150 | 149 1.052204 151 | 150 1.084218 152 | 151 1.110668 153 | 152 1.131784 154 | 153 1.147901 155 | 154 1.159582 156 | 155 1.167774 157 | 156 1.173954 158 | 157 1.180189 159 | 158 1.188916 160 | 159 1.202192 161 | 160 1.220445 162 | 161 1.241186 163 | 162 1.258763 164 | 163 1.266286 165 | 164 1.258944 166 | 165 1.235924 167 | 166 1.199665 168 | 167 1.153978 169 | 168 1.102639 170 | 169 1.048778 171 | 170 0.994755 172 | 171 0.942235 173 | 172 0.892280 174 | 173 0.845406 175 | 174 0.801591 176 | 175 0.760280 177 | 176 0.720531 178 | 177 0.681399 179 | 178 0.642465 180 | 179 0.604178 181 | 180 0.567762 182 | 181 0.534886 183 | 182 0.507477 184 | 183 0.487817 185 | 184 0.478731 186 | 185 0.483538 187 | 186 0.505308 188 | 187 0.545260 189 | 188 0.601152 190 | 189 0.667339 191 | 190 0.736852 192 | 191 0.803747 193 | 192 0.864109 194 | 193 0.915841 195 | 194 0.958028 196 | 195 0.990449 197 | 196 1.013370 198 | 197 1.027499 199 | 198 1.033953 200 | 199 1.034205 201 | 200 1.030058 202 | 201 1.023661 203 | 202 1.017569 204 | 203 1.014712 205 | 204 1.018122 206 | 205 1.030285 207 | 206 1.052185 208 | 207 1.082272 209 | 208 1.115781 210 | 209 1.145484 211 | 210 1.164577 212 | 211 1.169838 213 | 212 1.162239 214 | 213 1.145265 215 | 214 1.123018 216 | 215 1.099141 217 | 216 1.076439 218 | 217 1.056806 219 | 218 1.041191 220 | 219 1.029549 221 | 220 1.020763 222 | 221 1.012659 223 | 222 1.002189 224 | 223 0.985975 225 | 224 0.961373 226 | 225 0.927878 227 | 226 0.887701 228 | 227 0.844748 229 | 228 0.803028 230 | 229 0.765798 231 | 230 0.735436 232 | 231 0.713515 233 | 232 0.700766 234 | 233 0.696985 235 | 234 0.701059 236 | 235 0.711217 237 | 236 0.725485 238 | 237 0.742205 239 | 238 0.760487 240 | 239 0.780547 241 | 240 0.803796 242 | 241 0.832465 243 | 242 0.868391 244 | 243 0.911255 245 | 244 0.957877 246 | 245 1.003735 247 | 246 1.045223 248 | 247 1.080692 249 | 248 1.110207 250 | 249 1.134864 251 | 250 1.156158 252 | 251 1.175524 253 | 252 1.194054 254 | 253 1.212379 255 | 254 1.230695 256 | 255 1.248884 257 | 256 1.266640 258 | 257 1.283480 259 | 258 1.298500 260 | 259 1.309769 261 | 260 1.313696 262 | 261 1.305660 263 | 262 1.282615 264 | 263 1.245222 265 | 264 1.197020 266 | 265 1.142193 267 | 266 1.084148 268 | 267 1.025192 269 | 268 0.966703 270 | 269 0.909441 271 | 270 0.853817 272 | 271 0.800079 273 | 272 0.748416 274 | 273 0.698999 275 | 274 0.651991 276 | 275 0.607558 277 | 276 0.565929 278 | 277 0.527497 279 | 278 0.492962 280 | 279 0.463451 281 | 280 0.440647 282 | 281 0.426956 283 | 282 0.425606 284 | 283 0.440320 285 | 284 0.474057 286 | 285 0.526868 287 | 286 0.594386 288 | 287 0.668819 289 | 288 0.741983 290 | 289 0.807811 291 | 290 0.863005 292 | 291 0.906455 293 | 292 0.938388 294 | 293 0.959730 295 | 294 0.971732 296 | 295 0.975805 297 | 296 0.973487 298 | 297 0.966480 299 | 298 0.956735 300 | 299 0.946570 301 | 300 0.938761 302 | 301 0.936469 303 | 302 0.942809 304 | 303 0.959995 305 | 304 0.988265 306 | 305 1.024910 307 | 306 1.064101 308 | 307 1.098665 309 | 308 1.123405 310 | 309 1.137060 311 | 310 1.141552 312 | 311 1.140181 313 | 312 1.136291 314 | 313 1.132636 315 | 314 1.131148 316 | 315 1.132844 317 | 316 1.137804 318 | 317 1.145212 319 | 318 1.153459 320 | 319 1.160217 321 | 320 1.162401 322 | 321 1.156239 323 | 322 1.138207 324 | 323 1.107121 325 | 324 1.065472 326 | 325 1.018065 327 | 326 0.969583 328 | 327 0.923356 329 | 328 0.881269 330 | 329 0.844032 331 | 330 0.811458 332 | 331 0.782721 333 | 332 0.756648 334 | 333 0.732041 335 | 334 0.707977 336 | 335 0.684032 337 | 336 0.660379 338 | 337 0.637844 339 | 338 0.617994 340 | 339 0.603317 341 | 340 0.597306 342 | 341 0.604023 343 | 342 0.626663 344 | 343 0.665554 345 | 344 0.717249 346 | 345 0.775948 347 | 346 0.835981 348 | 347 0.893317 349 | 348 0.945695 350 | 349 0.992089 351 | 350 1.032149 352 | 351 1.065827 353 | 352 1.093216 354 | 353 1.114525 355 | 354 1.130140 356 | 355 1.140719 357 | 356 1.147307 358 | 357 1.151472 359 | 358 1.155376 360 | 359 1.161622 361 | 360 1.172652 362 | 361 1.189671 363 | 362 1.211384 364 | 363 1.233268 365 | 364 1.248462 366 | 365 1.250668 367 | 366 1.237057 368 | 367 1.208749 369 | 368 1.169213 370 | 369 1.122479 371 | 370 1.072115 372 | 371 1.020906 373 | 372 0.970856 374 | 373 0.923279 375 | 374 0.878864 376 | 375 0.837673 377 | 376 0.799122 378 | 377 0.762077 379 | 378 0.725223 380 | 379 0.687680 381 | 380 0.649539 382 | 381 0.611928 383 | 382 0.576625 384 | 383 0.545677 385 | 384 0.521332 386 | 385 0.506185 387 | 386 0.503249 388 | 387 0.515553 389 | 388 0.545016 390 | 389 0.590971 391 | 390 0.649578 392 | 391 0.714975 393 | 392 0.781321 394 | 393 0.844174 395 | 394 0.900712 396 | 395 0.949309 397 | 396 0.989066 398 | 397 1.019593 399 | 398 1.041016 400 | 399 1.054012 401 | 400 1.059763 402 | 401 1.059877 403 | 402 1.056343 404 | 403 1.051530 405 | 404 1.048181 406 | 405 1.049234 407 | 406 1.057364 408 | 407 1.074217 409 | 408 1.099463 410 | 409 1.129911 411 | 410 1.159358 412 | 411 1.180342 413 | 412 1.187519 414 | 413 1.179893 415 | 414 1.160138 416 | 415 1.132500 417 | 416 1.101156 418 | 417 1.069486 419 | 418 1.039921 420 | 419 1.013946 421 | 420 0.992104 422 | 421 0.973929 423 | 422 0.957909 424 | 423 0.941608 425 | 424 0.922086 426 | 425 0.896761 427 | 426 0.864540 428 | 427 0.826563 429 | 428 0.785791 430 | 429 0.745799 431 | 430 0.709874 432 | 431 0.680764 433 | 432 0.660696 434 | 433 0.651282 435 | 434 0.653232 436 | 435 0.666083 437 | 436 0.688225 438 | 437 0.717346 439 | 438 0.751092 440 | 439 0.787658 441 | 440 0.826121 442 | 441 0.866430 443 | 442 0.908937 444 | 443 0.953453 445 | 444 0.998343 446 | 445 1.040707 447 | 446 1.077710 448 | 447 1.107795 449 | 448 1.130955 450 | 449 1.148364 451 | 450 1.161881 452 | 451 1.173615 453 | 452 1.185533 454 | 453 1.199113 455 | 454 1.215074 456 | 455 1.233217 457 | 456 1.252395 458 | 457 1.270558 459 | 458 1.284811 460 | 459 1.291496 461 | 460 1.286632 462 | 461 1.267273 463 | 462 1.233267 464 | 463 1.187540 465 | 464 1.134458 466 | 465 1.078063 467 | 466 1.021283 468 | 467 0.965883 469 | 468 0.912684 470 | 469 0.861823 471 | 470 0.813029 472 | 471 0.765889 473 | 472 0.720090 474 | 473 0.675568 475 | 474 0.632548 476 | 475 0.591509 477 | 476 0.553138 478 | 477 0.518356 479 | 478 0.488427 480 | 479 0.465150 481 | 480 0.451069 482 | 481 0.449518 483 | 482 0.464138 484 | 483 0.497449 485 | 484 0.548889 486 | 485 0.613937 487 | 486 0.685516 488 | 487 0.756539 489 | 488 0.821649 490 | 489 0.877611 491 | 490 0.922941 492 | 491 0.957377 493 | 492 0.981433 494 | 493 0.996094 495 | 494 1.002626 496 | 495 1.002505 497 | 496 0.997416 498 | 497 0.989331 499 | 498 0.980616 500 | 499 0.974093 501 | 500 0.972911 502 | 501 0.980045 503 | 502 0.997456 504 | 503 1.025106 505 | 504 1.060061 506 | 505 1.096296 507 | 506 1.126435 508 | 507 1.145185 509 | 508 1.151448 510 | 509 1.147526 511 | 510 1.137132 512 | 511 1.123948 513 | 512 1.110994 514 | 513 1.100433 515 | 514 1.093503 516 | 515 1.090464 517 | 516 1.090554 518 | 517 1.092009 519 | 518 1.092154 520 | 519 1.087570 521 | 520 1.074588 522 | 521 1.050551 523 | 522 1.015530 524 | 523 0.972735 525 | 524 0.926852 526 | 525 0.882125 527 | 526 0.841574 528 | 527 0.807007 529 | 528 0.779199 530 | 529 0.758018 531 | 530 0.742566 532 | 531 0.731406 533 | 532 0.722900 534 | 533 0.715607 535 | 534 0.708656 536 | 535 0.702035 537 | 536 0.696789 538 | 537 0.695155 539 | 538 0.700526 540 | 539 0.716816 541 | 540 0.746707 542 | 541 0.789509 543 | 542 0.840822 544 | 543 0.894785 545 | 544 0.946675 546 | 545 0.993905 547 | 546 1.035658 548 | 547 1.072137 549 | 548 1.103946 550 | 549 1.131720 551 | 550 1.155965 552 | 551 1.177045 553 | 552 1.195250 554 | 553 1.210928 555 | 554 1.224643 556 | 555 1.237320 557 | 556 1.250254 558 | 557 1.264696 559 | 558 1.280754 560 | 559 1.295926 561 | 560 1.304798 562 | 561 1.301360 563 | 562 1.282431 564 | 563 1.248773 565 | 564 1.203585 566 | 565 1.150617 567 | 566 1.093152 568 | 567 1.033733 569 | 568 0.974216 570 | 569 0.915907 571 | 570 0.859682 572 | 571 0.806072 573 | 572 0.755304 574 | 573 0.707338 575 | 574 0.661923 576 | 575 0.618766 577 | 576 0.577790 578 | 577 0.539365 579 | 578 0.504340 580 | 579 0.473962 581 | 580 0.449885 582 | 581 0.434360 583 | 582 0.430460 584 | 583 0.441959 585 | 584 0.472278 586 | 585 0.522256 587 | 586 0.588109 588 | 587 0.662049 589 | 588 0.735564 590 | 589 0.802320 591 | 590 0.858901 592 | 591 0.904119 593 | 592 0.938081 594 | 593 0.961541 595 | 594 0.975573 596 | 595 0.981463 597 | 596 0.980670 598 | 597 0.974844 599 | 598 0.965872 600 | 599 0.955985 601 | 600 0.947869 602 | 601 0.944657 603 | 602 0.949571 604 | 603 0.965078 605 | 604 0.991748 606 | 605 1.027218 607 | 606 1.065921 608 | 607 1.100647 609 | 608 1.125785 610 | 609 1.139541 611 | 610 1.143502 612 | 611 1.140898 613 | 612 1.135167 614 | 613 1.129238 615 | 614 1.125241 616 | 615 1.124412 617 | 616 1.127041 618 | 617 1.132491 619 | 618 1.139256 620 | 619 1.145032 621 | 620 1.146719 622 | 621 1.140542 623 | 622 1.122941 624 | 623 1.092564 625 | 624 1.051655 626 | 625 1.004876 627 | 626 0.956938 628 | 627 0.911294 629 | 628 0.869992 630 | 629 0.833904 631 | 630 0.802975 632 | 631 0.776445 633 | 632 0.753120 634 | 633 0.731683 635 | 634 0.711024 636 | 635 0.690511 637 | 636 0.670155 638 | 637 0.650707 639 | 638 0.633757 640 | 639 0.621894 641 | 640 0.618745 642 | 641 0.628412 643 | 642 0.653867 644 | 643 0.694910 645 | 644 0.747548 646 | 645 0.805795 647 | 646 0.864214 648 | 647 0.919217 649 | 648 0.968989 650 | 649 1.012876 651 | 650 1.050798 652 | 651 1.082888 653 | 652 1.109334 654 | 653 1.130368 655 | 654 1.146335 656 | 655 1.157821 657 | 656 1.165790 658 | 657 1.171740 659 | 658 1.177759 660 | 659 1.186302 661 | 660 1.199457 662 | 661 1.217701 663 | 662 1.238616 664 | 663 1.256610 665 | 664 1.264766 666 | 665 1.258152 667 | 666 1.235818 668 | 667 1.200128 669 | 668 1.154887 670 | 669 1.103900 671 | 670 1.050333 672 | 671 0.996577 673 | 672 0.944317 674 | 673 0.894628 675 | 674 0.848034 676 | 675 0.804508 677 | 676 0.763481 678 | 677 0.723987 679 | 678 0.685046 680 | 679 0.646212 681 | 680 0.607917 682 | 681 0.571394 683 | 682 0.538323 684 | 683 0.510647 685 | 684 0.490642 686 | 685 0.481118 687 | 686 0.485367 688 | 687 0.506452 689 | 688 0.545643 690 | 689 0.600816 691 | 690 0.666462 692 | 691 0.735702 693 | 692 0.802596 694 | 693 0.863192 695 | 694 0.915333 696 | 695 0.958045 697 | 696 0.991048 698 | 697 1.014557 699 | 698 1.029238 700 | 699 1.036179 701 | 700 1.036836 702 | 701 1.033001 703 | 702 1.026813 704 | 703 1.020815 705 | 704 1.017924 706 | 705 1.021163 707 | 706 1.033033 708 | 707 1.054562 709 | 708 1.084289 710 | 709 1.117550 711 | 710 1.147159 712 | 711 1.166234 713 | 712 1.171403 714 | 713 1.163530 715 | 714 1.146078 716 | 715 1.123176 717 | 716 1.098510 718 | 717 1.074927 719 | 718 1.054358 720 | 719 1.037797 721 | 720 1.025239 722 | 721 1.015616 723 | 722 1.006796 724 | 723 0.995774 725 | 724 0.979204 726 | 725 0.954462 727 | 726 0.921015 728 | 727 0.881002 729 | 728 0.838263 730 | 729 0.796774 731 | 730 0.759792 732 | 731 0.729733 733 | 732 0.708225 734 | 733 0.696068 735 | 734 0.693122 736 | 735 0.698307 737 | 736 0.709853 738 | 737 0.725752 739 | 738 0.744290 740 | 739 0.764513 741 | 740 0.786554 742 | 741 0.811716 743 | 742 0.842063 744 | 743 0.879202 745 | 744 0.922590 746 | 745 0.968978 747 | 746 1.013982 748 | 747 1.054240 749 | 748 1.088328 750 | 749 1.116473 751 | 750 1.139879 752 | 751 1.160112 753 | 752 1.178656 754 | 753 1.196627 755 | 754 1.214649 756 | 755 1.232874 757 | 756 1.251102 758 | 757 1.268897 759 | 758 1.285593 760 | 759 1.300020 761 | 760 1.309900 762 | 761 1.311386 763 | 762 1.300050 764 | 763 1.273576 765 | 764 1.233379 766 | 765 1.183325 767 | 766 1.127546 768 | 767 1.069254 769 | 768 1.010541 770 | 769 0.952611 771 | 770 0.896083 772 | 771 0.841265 773 | 772 0.788335 774 | 773 0.737448 775 | 774 0.688763 776 | 775 0.642454 777 | 776 0.598723 778 | 777 0.557849 779 | 778 0.520299 780 | 779 0.486867 781 | 780 0.458804 782 | 781 0.437963 783 | 782 0.426964 784 | 783 0.429224 785 | 784 0.448421 786 | 785 0.486957 787 | 786 0.543819 788 | 787 0.613610 789 | 788 0.688229 790 | 789 0.759930 791 | 790 0.823357 792 | 791 0.875803 793 | 792 0.916518 794 | 793 0.945921 795 | 794 0.965020 796 | 795 0.975106 797 | 796 0.977616 798 | 797 0.974120 799 | 798 0.966370 800 | 799 0.956398 801 | 800 0.946634 802 | 801 0.939969 803 | 802 0.939606 804 | 803 0.948514 805 | 804 0.968502 806 | 805 0.999146 807 | 806 1.036925 808 | 807 1.075412 809 | 808 1.107591 810 | 809 1.129155 811 | 810 1.139786 812 | 811 1.141940 813 | 812 1.139048 814 | 813 1.134371 815 | 814 1.130494 816 | 815 1.129145 817 | 816 1.131129 818 | 817 1.136308 819 | 818 1.143660 820 | 819 1.151376 821 | 820 1.156916 822 | 821 1.156974 823 | 822 1.147708 824 | 823 1.126020 825 | 824 1.091693 826 | 825 1.048062 827 | 826 1.000093 828 | 827 0.952168 829 | 828 0.907222 830 | 829 0.866816 831 | 830 0.831413 832 | 831 0.800638 833 | 832 0.773536 834 | 833 0.748873 835 | 834 0.725456 836 | 835 0.702433 837 | 836 0.679494 838 | 837 0.656965 839 | 838 0.635864 840 | 839 0.618023 841 | 840 0.606259 842 | 841 0.604353 843 | 842 0.616305 844 | 843 0.644590 845 | 844 0.688261 846 | 845 0.742802 847 | 846 0.802186 848 | 847 0.861224 849 | 848 0.916571 850 | 849 0.966518 851 | 850 1.010389 852 | 851 1.048024 853 | 852 1.079467 854 | 853 1.104862 855 | 854 1.124459 856 | 855 1.138695 857 | 856 1.148304 858 | 857 1.154446 859 | 858 1.158842 860 | 859 1.163793 861 | 860 1.171892 862 | 861 1.185233 863 | 862 1.204187 864 | 863 1.226208 865 | 864 1.245613 866 | 865 1.255392 867 | 866 1.250477 868 | 867 1.229795 869 | 868 1.195680 870 | 869 1.151986 871 | 870 1.102598 872 | 871 1.050755 873 | 872 0.998896 874 | 873 0.948727 875 | 874 0.901310 876 | 875 0.857110 877 | 876 0.815980 878 | 877 0.777172 879 | 878 0.739509 880 | 879 0.701849 881 | 880 0.663688 882 | 881 0.625533 883 | 882 0.588764 884 | 883 0.555226 885 | 884 0.526980 886 | 885 0.506368 887 | 886 0.496179 888 | 887 0.499584 889 | 888 0.519434 890 | 889 0.556828 891 | 890 0.609727 892 | 891 0.673038 893 | 892 0.740417 894 | 893 0.806314 895 | 894 0.866906 896 | 895 0.919953 897 | 896 0.964268 898 | 897 0.999297 899 | 898 1.024988 900 | 899 1.041798 901 | 900 1.050690 902 | 901 1.053062 903 | 902 1.050689 904 | 903 1.045715 905 | 904 1.040676 906 | 905 1.038447 907 | 906 1.041976 908 | 907 1.053666 909 | 908 1.074494 910 | 909 1.103024 911 | 910 1.134696 912 | 911 1.162390 913 | 912 1.179128 914 | 913 1.181349 915 | 914 1.169841 916 | 915 1.148159 917 | 916 1.120591 918 | 917 1.090966 919 | 918 1.062233 920 | 919 1.036398 921 | 920 1.014532 922 | 921 0.996730 923 | 922 0.982037 924 | 923 0.968454 925 | 924 0.953157 926 | 925 0.933080 927 | 926 0.905956 928 | 927 0.871497 929 | 928 0.831772 930 | 929 0.790306 931 | 930 0.750769 932 | 931 0.716288 933 | 932 0.689355 934 | 933 0.671844 935 | 934 0.664875 936 | 935 0.668563 937 | 936 0.681910 938 | 937 0.703023 939 | 938 0.729645 940 | 939 0.759766 941 | 940 0.792114 942 | 941 0.826405 943 | 942 0.863243 944 | 943 0.903483 945 | 944 0.947046 946 | 945 0.991971 947 | 946 1.034902 948 | 947 1.072749 949 | 948 1.103931 950 | 949 1.128496 951 | 950 1.147655 952 | 951 1.163223 953 | 952 1.177157 954 | 953 1.191170 955 | 954 1.206433 956 | 955 1.223394 957 | 956 1.241735 958 | 957 1.260430 959 | 958 1.277822 960 | 959 1.291578 961 | 960 1.298522 962 | 961 1.294761 963 | 962 1.276946 964 | 963 1.244354 965 | 964 1.199550 966 | 965 1.146802 967 | 966 1.090183 968 | 967 1.032672 969 | 968 0.976085 970 | 969 0.921304 971 | 970 0.868572 972 | 971 0.817775 973 | 972 0.768693 974 | 973 0.721193 975 | 974 0.675320 976 | 975 0.631308 977 | 976 0.589552 978 | 977 0.550600 979 | 978 0.515212 980 | 979 0.484493 981 | 980 0.460074 982 | 981 0.444313 983 | 982 0.440392 984 | 983 0.451992 985 | 984 0.482084 986 | 985 0.530946 987 | 986 0.594807 988 | 987 0.666712 989 | 988 0.739091 990 | 989 0.805939 991 | 990 0.863560 992 | 991 0.910267 993 | 992 0.945774 994 | 993 0.970643 995 | 994 0.985912 996 | 995 0.992878 997 | 996 0.993014 998 | 997 0.987970 999 | 998 0.979654 1000 | 999 0.970338 1001 | 1000 0.962752 1002 | 1001 0.960010 1003 | 1002 0.965206 1004 | 1003 0.980626 1005 | 1004 1.006750 1006 | 1005 1.041302 1007 | 1006 1.078822 1008 | 1007 1.112006 1009 | 1008 1.134987 1010 | 1009 1.145864 1011 | 1010 1.146365 1012 | 1011 1.139948 1013 | 1012 1.130249 1014 | 1013 1.120336 1015 | 1014 1.112457 1016 | 1015 1.107947 1017 | 1016 1.107180 1018 | 1017 1.109542 1019 | 1018 1.113466 1020 | 1019 1.116514 1021 | 1020 1.115467 1022 | 1021 1.106593 1023 | 1022 1.086650 1024 | 1023 1.054728 1025 | 1024 1.013329 1026 | 1025 0.967095 1027 | 1026 0.920603 1028 | 1027 0.877212 1029 | 1028 0.838948 1030 | 1029 0.806712 1031 | 1030 0.780472 1032 | 1031 0.759440 1033 | 1032 0.742312 1034 | 1033 0.727581 1035 | 1034 0.713911 1036 | 1035 0.700463 1037 | 1036 0.687149 1038 | 1037 0.674774 1039 | 1038 0.665176 1040 | 1039 0.661327 1041 | 1040 0.667154 1042 | 1041 0.686467 1043 | 1042 0.720869 1044 | 1043 0.768074 1045 | 1044 0.822677 1046 | 1045 0.878826 1047 | 1046 0.932298 1048 | 1047 0.980915 1049 | 1048 1.023994 1050 | 1049 1.061635 1051 | 1050 1.094225 1052 | 1051 1.122167 1053 | 1052 1.145783 1054 | 1053 1.165352 1055 | 1054 1.181208 1056 | 1055 1.193893 1057 | 1056 1.204334 1058 | 1057 1.213970 1059 | 1058 1.224688 1060 | 1059 1.238262 1061 | 1060 1.255129 1062 | 1061 1.272940 1063 | 1062 1.286218 1064 | 1063 1.288448 1065 | 1064 1.275486 1066 | 1065 1.247173 1067 | 1066 1.206257 1068 | 1067 1.156501 1069 | 1068 1.101449 1070 | 1069 1.043964 1071 | 1070 0.986190 1072 | 1071 0.929644 1073 | 1072 0.875333 1074 | 1073 0.823826 1075 | 1074 0.775291 1076 | 1075 0.729516 1077 | 1076 0.685997 1078 | 1077 0.644176 1079 | 1078 0.603810 1080 | 1079 0.565257 1081 | 1080 0.529468 1082 | 1081 0.497807 1083 | 1082 0.471979 1084 | 1083 0.454183 1085 | 1084 0.447334 1086 | 1085 0.455022 1087 | 1086 0.480671 1088 | 1087 0.525599 1089 | 1088 0.586995 1090 | 1089 0.658056 1091 | 1090 0.730704 1092 | 1091 0.798457 1093 | 1092 0.857459 1094 | 1093 0.906035 1095 | 1094 0.943854 1096 | 1095 0.971297 1097 | 1096 0.989153 1098 | 1097 0.998506 1099 | 1098 1.000695 1100 | 1099 0.997297 1101 | 1100 0.990146 1102 | 1101 0.981409 1103 | 1102 0.973686 1104 | 1103 0.970009 1105 | 1104 0.973559 1106 | 1105 0.986926 1107 | 1106 1.011033 1108 | 1107 1.044061 1109 | 1108 1.080921 1110 | 1109 1.114365 1111 | 1110 1.138095 1112 | 1111 1.149519 1113 | 1112 1.149833 1114 | 1113 1.142310 1115 | 1114 1.130654 1116 | 1115 1.118124 1117 | 1116 1.107193 1118 | 1117 1.099442 1119 | 1118 1.095508 1120 | 1119 1.095035 1121 | 1120 1.096670 1122 | 1121 1.098111 1123 | 1122 1.096200 1124 | 1123 1.087212 1125 | 1124 1.067817 1126 | 1125 1.036841 1127 | 1126 0.996426 1128 | 1127 0.950987 1129 | 1128 0.905085 1130 | 1129 0.862205 1131 | 1130 0.824575 1132 | 1131 0.793330 1133 | 1132 0.768669 1134 | 1133 0.749978 1135 | 1134 0.736027 1136 | 1135 0.725257 1137 | 1136 0.716157 1138 | 1137 0.707637 1139 | 1138 0.699344 1140 | 1139 0.691886 1141 | 1140 0.687004 1142 | 1141 0.687654 1143 | 1142 0.697718 1144 | 1143 0.720768 1145 | 1144 0.757882 1146 | 1145 0.806213 1147 | 1146 0.860171 1148 | 1147 0.914200 1149 | 1148 0.964614 1150 | 1149 1.009770 1151 | 1150 1.049409 1152 | 1151 1.083943 1153 | 1152 1.113981 1154 | 1153 1.140068 1155 | 1154 1.162618 1156 | 1155 1.181942 1157 | 1156 1.198359 1158 | 1157 1.212344 1159 | 1158 1.224702 1160 | 1159 1.236669 1161 | 1160 1.249762 1162 | 1161 1.265031 1163 | 1162 1.281665 1164 | 1163 1.295788 1165 | 1164 1.301211 1166 | 1165 1.292623 1167 | 1166 1.268390 1168 | 1167 1.230440 1169 | 1168 1.182357 1170 | 1169 1.127794 1171 | 1170 1.069782 1172 | 1171 1.010614 1173 | 1172 0.951945 1174 | 1173 0.894917 1175 | 1174 0.840268 1176 | 1175 0.788392 1177 | 1176 0.739373 1178 | 1177 0.693021 1179 | 1178 0.648978 1180 | 1179 0.606960 1181 | 1180 0.567048 1182 | 1181 0.529843 1183 | 1182 0.496407 1184 | 1183 0.468171 1185 | 1184 0.447014 1186 | 1185 0.435496 1187 | 1186 0.436993 1188 | 1187 0.455290 1189 | 1188 0.493052 1190 | 1189 0.549452 1191 | 1190 0.618967 1192 | 1191 0.693236 1193 | 1192 0.764479 1194 | 1193 0.827557 1195 | 1194 0.880008 1196 | 1195 0.921189 1197 | 1196 0.951448 1198 | 1197 0.971623 1199 | 1198 0.982832 1200 | 1199 0.986405 1201 | 1200 0.983860 1202 | --------------------------------------------------------------------------------