{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPython 3.7.3\n", "IPython 7.5.0\n", "\n", "numpy 1.16.3\n", "scipy 1.2.1\n", "sklearn 0.21.1\n", "pandas 0.24.2\n", "matplotlib 3.0.3\n" ] } ], "source": [ "%load_ext watermark\n", "%watermark -v -p numpy,scipy,sklearn,pandas,matplotlib" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**4장 – 모델 훈련**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "_이 노트북은 4장에 있는 모든 샘플 코드와 연습문제 해답을 가지고 있습니다._" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 설정" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "파이썬 2와 3을 모두 지원합니다. 공통 모듈을 임포트하고 맷플롯립 그림이 노트북 안에 포함되도록 설정하고 생성한 그림을 저장하기 위한 함수를 준비합니다:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "# 파이썬 2와 파이썬 3 지원\n", "from __future__ import division, print_function, unicode_literals\n", "\n", "# 공통\n", "import numpy as np\n", "import os\n", "\n", "# 일관된 출력을 위해 유사난수 초기화\n", "np.random.seed(42)\n", "\n", "# 맷플롯립 설정\n", "%matplotlib inline\n", "import matplotlib\n", "import matplotlib.pyplot as plt\n", "plt.rcParams['axes.labelsize'] = 14\n", "plt.rcParams['xtick.labelsize'] = 12\n", "plt.rcParams['ytick.labelsize'] = 12\n", "\n", "# 한글출력\n", "matplotlib.rc('font', family='NanumBarunGothic')\n", "plt.rcParams['axes.unicode_minus'] = False\n", "\n", "# 그림을 저장할 폴드\n", "PROJECT_ROOT_DIR = \".\"\n", "CHAPTER_ID = \"training_linear_models\"\n", "\n", "def save_fig(fig_id, tight_layout=True):\n", " path = os.path.join(PROJECT_ROOT_DIR, \"images\", CHAPTER_ID, fig_id + \".png\")\n", " if tight_layout:\n", " plt.tight_layout()\n", " plt.savefig(path, format='png', dpi=300)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 정규 방정식을 사용한 선형 회귀" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "\n", "X = 2 * np.random.rand(100, 1)\n", "y = 4 + 3 * X + np.random.randn(100, 1)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.plot(X, y, \"b.\")\n", "plt.xlabel(\"$x_1$\", fontsize=18)\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18)\n", "plt.axis([0, 2, 0, 15])\n", "save_fig(\"generated_data_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "X_b = np.c_[np.ones((100, 1)), X] # 모든 샘플에 x0 = 1을 추가합니다.\n", "theta_best = np.linalg.inv(X_b.T.dot(X_b)).dot(X_b.T).dot(y)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.21509616],\n", " [2.77011339]])" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "theta_best" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.21509616],\n", " [9.75532293]])" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X_new = np.array([[0], [2]])\n", "X_new_b = np.c_[np.ones((2, 1)), X_new] # 모든 샘플에 x0 = 1을 추가합니다.\n", "y_predict = X_new_b.dot(theta_best)\n", "y_predict" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.plot(X_new, y_predict, \"r-\", linewidth=2, label=\"예측\")\n", "plt.plot(X, y, \"b.\")\n", "plt.xlabel(\"$x_1$\", fontsize=18)\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18)\n", "plt.legend(loc=\"upper left\", fontsize=14)\n", "plt.axis([0, 2, 0, 15])\n", "save_fig(\"linear_model_predictions\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([4.21509616]), array([[2.77011339]]))" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.linear_model import LinearRegression\n", "lin_reg = LinearRegression()\n", "lin_reg.fit(X, y)\n", "lin_reg.intercept_, lin_reg.coef_" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.21509616],\n", " [9.75532293]])" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "lin_reg.predict(X_new)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "`LinearRegression` 클래스는 scipy.linalg.lstsq() 함수(\"least squares\"의 약자)를 사용하므로 직접 호출할 수 있습니다:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.21509616],\n", " [2.77011339]])" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "theta_best_svd, residuals, rank, s = np.linalg.lstsq(X_b, y, rcond=1e-6)\n", "theta_best_svd" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "이 함수는 $\\mathbf{X}^+\\mathbf{y}$을 계산합니다. $\\mathbf{X}^{+}$는 $\\mathbf{X}$의 _유사역행렬_(pseudoinverse)입니다(Moore–Penrose 유사역행렬입니다). `np.linalg.pinv()`을 사용해서 유사역행렬을 직접 계산할 수 있습니다:" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.21509616],\n", " [2.77011339]])" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.linalg.pinv(X_b).dot(y)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 경사 하강법을 사용한 선형 회귀" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "eta = 0.1\n", "n_iterations = 1000\n", "m = 100\n", "theta = np.random.randn(2,1)\n", "\n", "for iteration in range(n_iterations):\n", " gradients = 2/m * X_b.T.dot(X_b.dot(theta) - y)\n", " theta = theta - eta * gradients" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.21509616],\n", " [2.77011339]])" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "theta" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.21509616],\n", " [9.75532293]])" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X_new_b.dot(theta)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "theta_path_bgd = []\n", "\n", "def plot_gradient_descent(theta, eta, theta_path=None):\n", " m = len(X_b)\n", " plt.plot(X, y, \"b.\")\n", " n_iterations = 1000\n", " for iteration in range(n_iterations):\n", " if iteration < 10:\n", " y_predict = X_new_b.dot(theta)\n", " style = \"b-\" if iteration > 0 else \"r--\"\n", " plt.plot(X_new, y_predict, style)\n", " gradients = 2/m * X_b.T.dot(X_b.dot(theta) - y)\n", " theta = theta - eta * gradients\n", " if theta_path is not None:\n", " theta_path.append(theta)\n", " plt.xlabel(\"$x_1$\", fontsize=18)\n", " plt.axis([0, 2, 0, 15])\n", " plt.title(r\"$\\eta = {}$\".format(eta), fontsize=16)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "np.random.seed(42)\n", "theta = np.random.randn(2,1) # random initialization\n", "\n", "plt.figure(figsize=(10,4))\n", "plt.subplot(131); plot_gradient_descent(theta, eta=0.02)\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18)\n", "plt.subplot(132); plot_gradient_descent(theta, eta=0.1, theta_path=theta_path_bgd)\n", "plt.subplot(133); plot_gradient_descent(theta, eta=0.5)\n", "\n", "save_fig(\"gradient_descent_plot\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 확률적 경사 하강법" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "theta_path_sgd = []\n", "m = len(X_b)\n", "np.random.seed(42)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "n_epochs = 50\n", "t0, t1 = 5, 50 # 학습 스케줄 하이퍼파라미터 learning schedule hyperparameters\n", "\n", "def learning_schedule(t):\n", " return t0 / (t + t1)\n", "\n", "theta = np.random.randn(2,1) # 무작위 초기화\n", "\n", "for epoch in range(n_epochs):\n", " for i in range(m):\n", " if epoch == 0 and i < 20: # 책에는 빠짐\n", " y_predict = X_new_b.dot(theta) # 책에는 빠짐\n", " style = \"b-\" if i > 0 else \"r--\" # 책에는 빠짐\n", " plt.plot(X_new, y_predict, style) # 책에는 빠짐\n", " random_index = np.random.randint(m)\n", " xi = X_b[random_index:random_index+1]\n", " yi = y[random_index:random_index+1]\n", " gradients = 2 * xi.T.dot(xi.dot(theta) - yi)\n", " eta = learning_schedule(epoch * m + i)\n", " theta = theta - eta * gradients\n", " theta_path_sgd.append(theta) # 책에는 빠짐\n", "\n", "plt.plot(X, y, \"b.\") # 책에는 빠짐\n", "plt.xlabel(\"$x_1$\", fontsize=18) # 책에는 빠짐\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18) # 책에는 빠짐\n", "plt.axis([0, 2, 0, 15]) # 책에는 빠짐\n", "save_fig(\"sgd_plot\") # 책에는 빠짐\n", "plt.show() # 책에는 빠짐" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.21076011],\n", " [2.74856079]])" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "theta" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n" ] }, { "data": { "text/plain": [ "SGDRegressor(alpha=0.0001, average=False, early_stopping=False, epsilon=0.1,\n", " eta0=0.1, fit_intercept=True, l1_ratio=0.15,\n", " learning_rate='invscaling', loss='squared_loss', max_iter=5,\n", " n_iter_no_change=5, penalty=None, power_t=0.25, random_state=42,\n", " shuffle=True, tol=0.001, validation_fraction=0.1, verbose=0,\n", " warm_start=False)" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.linear_model import SGDRegressor\n", "sgd_reg = SGDRegressor(max_iter=5, penalty=None, eta0=0.1, random_state=42)\n", "sgd_reg.fit(X, y.ravel())" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([4.10549653]), array([2.86315909]))" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sgd_reg.intercept_, sgd_reg.coef_" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 미니배치 경사 하강법" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [], "source": [ "theta_path_mgd = []\n", "\n", "n_iterations = 50\n", "minibatch_size = 20\n", "\n", "np.random.seed(42)\n", "theta = np.random.randn(2,1) # 무작위 초기화\n", "\n", "t0, t1 = 200, 1000\n", "def learning_schedule(t):\n", " return t0 / (t + t1)\n", "\n", "t = 0\n", "for epoch in range(n_iterations):\n", " shuffled_indices = np.random.permutation(m)\n", " X_b_shuffled = X_b[shuffled_indices]\n", " y_shuffled = y[shuffled_indices]\n", " for i in range(0, m, minibatch_size):\n", " t += 1\n", " xi = X_b_shuffled[i:i+minibatch_size]\n", " yi = y_shuffled[i:i+minibatch_size]\n", " gradients = 2/minibatch_size * xi.T.dot(xi.dot(theta) - yi)\n", " eta = learning_schedule(t)\n", " theta = theta - eta * gradients\n", " theta_path_mgd.append(theta)" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.25214635],\n", " [2.7896408 ]])" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "theta" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [], "source": [ "theta_path_bgd = np.array(theta_path_bgd)\n", "theta_path_sgd = np.array(theta_path_sgd)\n", "theta_path_mgd = np.array(theta_path_mgd)" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(7,4))\n", "plt.plot(theta_path_sgd[:, 0], theta_path_sgd[:, 1], \"r-s\", linewidth=1, label=\"SGD\")\n", "plt.plot(theta_path_mgd[:, 0], theta_path_mgd[:, 1], \"g-+\", linewidth=2, label=\"미니배치\")\n", "plt.plot(theta_path_bgd[:, 0], theta_path_bgd[:, 1], \"b-o\", linewidth=3, label=\"배치\")\n", "plt.legend(loc=\"upper left\", fontsize=16)\n", "plt.xlabel(r\"$\\theta_0$\", fontsize=20)\n", "plt.ylabel(r\"$\\theta_1$ \", fontsize=20, rotation=0)\n", "plt.axis([2.5, 4.5, 2.3, 3.9])\n", "save_fig(\"gradient_descent_paths_plot\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 다항 회귀" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import numpy.random as rnd\n", "\n", "np.random.seed(42)" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [], "source": [ "m = 100\n", "X = 6 * np.random.rand(m, 1) - 3\n", "y = 0.5 * X**2 + X + 2 + np.random.randn(m, 1)" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.plot(X, y, \"b.\")\n", "plt.xlabel(\"$x_1$\", fontsize=18)\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18)\n", "plt.axis([-3, 3, 0, 10])\n", "save_fig(\"quadratic_data_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([-0.75275929])" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.preprocessing import PolynomialFeatures\n", "poly_features = PolynomialFeatures(degree=2, include_bias=False)\n", "X_poly = poly_features.fit_transform(X)\n", "X[0]" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([-0.75275929, 0.56664654])" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X_poly[0]" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([1.78134581]), array([[0.93366893, 0.56456263]]))" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "lin_reg = LinearRegression()\n", "lin_reg.fit(X_poly, y)\n", "lin_reg.intercept_, lin_reg.coef_" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "X_new=np.linspace(-3, 3, 100).reshape(100, 1)\n", "X_new_poly = poly_features.transform(X_new)\n", "y_new = lin_reg.predict(X_new_poly)\n", "plt.plot(X, y, \"b.\")\n", "plt.plot(X_new, y_new, \"r-\", linewidth=2, label=\"예측\")\n", "plt.xlabel(\"$x_1$\", fontsize=18)\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18)\n", "plt.legend(loc=\"upper left\", fontsize=14)\n", "plt.axis([-3, 3, 0, 10])\n", "save_fig(\"quadratic_predictions_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.preprocessing import StandardScaler\n", "from sklearn.pipeline import Pipeline\n", "\n", "for style, width, degree in ((\"g-\", 1, 300), (\"b--\", 2, 2), (\"r-+\", 2, 1)):\n", " polybig_features = PolynomialFeatures(degree=degree, include_bias=False)\n", " std_scaler = StandardScaler()\n", " lin_reg = LinearRegression()\n", " polynomial_regression = Pipeline([\n", " (\"poly_features\", polybig_features),\n", " (\"std_scaler\", std_scaler),\n", " (\"lin_reg\", lin_reg),\n", " ])\n", " polynomial_regression.fit(X, y)\n", " y_newbig = polynomial_regression.predict(X_new)\n", " plt.plot(X_new, y_newbig, style, label=str(degree), linewidth=width)\n", "\n", "plt.plot(X, y, \"b.\", linewidth=3)\n", "plt.legend(loc=\"upper left\")\n", "plt.xlabel(\"$x_1$\", fontsize=18)\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18)\n", "plt.axis([-3, 3, 0, 10])\n", "save_fig(\"high_degree_polynomials_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [], "source": [ "from sklearn.metrics import mean_squared_error\n", "from sklearn.model_selection import train_test_split\n", "\n", "def plot_learning_curves(model, X, y):\n", " X_train, X_val, y_train, y_val = train_test_split(X, y, test_size=0.2, random_state=10)\n", " train_errors, val_errors = [], []\n", " for m in range(1, len(X_train)):\n", " model.fit(X_train[:m], y_train[:m])\n", " y_train_predict = model.predict(X_train[:m])\n", " y_val_predict = model.predict(X_val)\n", " train_errors.append(mean_squared_error(y_train[:m], y_train_predict))\n", " val_errors.append(mean_squared_error(y_val, y_val_predict))\n", "\n", " plt.plot(np.sqrt(train_errors), \"r-+\", linewidth=2, label=\"훈련\")\n", " plt.plot(np.sqrt(val_errors), \"b-\", linewidth=3, label=\"검증\")\n", " plt.legend(loc=\"upper right\", fontsize=14) # 책에는 빠짐\n", " plt.xlabel(\"훈련 세트 크기\", fontsize=14) # 책에는 빠짐\n", " plt.ylabel(\"RMSE\", fontsize=14) # 책에는 빠짐" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAagAAAEYCAYAAAAJeGK1AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAIABJREFUeJzt3XmcFNW5//HPMwvDvgmCQtgERBE1Om5xw6vG5eeS6NVoYmLcxRhjEhSXKJgYozeYxOsC0ahRo9dEYtySIK64Io4LokQUFWQRQRQRmIFZnt8fp4vuaXpmeoaZ3ub7fr3qNV3Vp6ue7umup86pU6fM3REREck1RdkOQEREJBUlKBERyUlKUCIikpOUoEREJCcpQYmISE5SghIRkZykBCUiIjkpownKzH5lZnPMbLaZvW5m4xoo9yMze9fM3jazx8ysXybjFBGR7Mt0DeoLoNzd9wQOA35rZkMTC5jZWGACsL+77wRUALdnOE4REckyy9ZIEma2B/AosL27f5mwfArwhbtfFpvvBawEtkosJyIiha0k0xs0sxHAv4CtgBNTJJ1hwN+iGXf/wsy+BIYAc5LWdTZwNkCXLl12HzVqVBtGLiIiLfXaa6995u59m/OajCcod38fGGFmXwf+aWaHuvs7CUUMqE16WQ0pmiPd/VbgVoDy8nKvqKhoo6hFRGRLmNmi5r4ma7343P0N4GXgoKSnlgCDohkz60yobS3JXHQiIpJtGUtQZjbGzE40M4vNDwD2At4ws6fMbP9Y0XuA75lZj9j8j4AX3X1lpmIVEZHsy2QT3yLgXGCCmVUDHYArgNeAoUBvAHd/xsxuBmbGyi0DTspgnCIikgMylqDcfQ2hNpTKsKSy/wv8b5sHJSIiOUsjSYiISE7KeC8+EZF8smbNGlasWEF1dXW2Q8lZpaWlbL311nTv3r1V16sEJSLSgDVr1vDpp58yYMAAOnXqRKyPlyRwdyorK1m6dClAqyYpNfGJiDRgxYoVDBgwgM6dOys5NcDM6Ny5MwMGDGDFihWtum4lKBGRBlRXV9OpU6dsh5EXOnXq1OrNoEpQIiKNUM0pPW3xOSlBiYgUqAsvvBAzqzftuuuuzV7P2LFjmTx5chtE2Dh1khARKTCzZs1i+fLl7Lfffuy99971nisqKuKhhx6iuLiYo48+mksuuYTrrruuXpkuXbqwdu3aTIackhKUiEiBmTdvHvPmzWu0TGlpKUcffTTXXHMNV1999ablM2fO5NhjjwVg+PDhLFy4kNraWo466qg2jTkVJSgRkUyZNClMbez000+nrq6O2267jWnTpvHRRx9RW1tLv379OPDAAxk/fjx9+4Y7XyxYsID33ntv02vnzp276fGCBQsAOOSQQ9o85lSUoEREMuWqqzKSoACuvfZa7rrrLu68807GjBlDaWkpCxcu5OKLL+bkk0/mySefBOC+++7jqquuqvfaLl26ZCTGpqiThIhIc5i1fNqS1zdTTU0NxcXFdOjQgeLiYoqKiigtLaVDhw7U1ta/5d7BBx/MF198sWmKLrodPnw4JSUlPPXUU1v8sbWEalAiIgXosssuo6ysjHHjxvHRRx9RU1ND//79GTt2LDfccEO9ssXFxXTt2pXa2lqqqqr4/PPPmTt3LlOmTOHQQw9l7NixWXkPSlAiIs3h3vLXmm3Z65uhpKSECRMmMGHChCbLzpgxg9LSUjp27EjXrl3p2bMn2223HcceeyyHHnpoBqJNTQlKRKSAjB49mkWL6t9d3d1Zv359yiGb7r//fjxDSbO5lKBERDJl4sQ238Q777wDwPLly+nZsycdO3ZkwYIFjBgxgvnz5zNw4MCUr4uunfrWt7612XPf//73GTVqVJvGnYo6SYiIZEqGevABlJeXM336dCBcnNulSxeKihre5U+fPp2pU6emfO6MM85g3333bZM4G6MalIhIgVq3bh2rV6+md+/eLFmyBIDVq1cD4ULd5O7ktbW1DY4gUVJSQseOHds24ORtZnRrIiKSMaecckqDzx122GGbaliRJ598km7duqUsf/DBB2+6dipTlKBERApQVGNK16RJk5iUwSbIdOgclIiI5CQlKBERyUlKUCIikpOUoEREJCcpQYmISE5SghIRkZykBCUiIjlJCUpEpB2aNm0aQ4YMyXYYjVKCEhEpQGeccQYlJSX1JjOjoqIiZflbbrmlXtno9htlZWV07tyZN998M8PvIMMJyszOMbM5ZlZhZm+Z2XkpymxlZuvMbFbCNDmTcYqI5LtbbrmF1atXs3r1atasWcNDDz1Enz592GWXXVKWHzduHFVVVVRVVbFhwwYqKyv53e9+R+/evbn//vvZddddM/wOMjjUkZkVAyOAfd19rZkNABaY2cPuvjShaB/gJXfP3l2yRETyXFlZGWVlZQDU1dUxefJkfvazn1FZWcm6detYv359vfJmRklJCR9++CEPPvggU6ZMYfny5Rx++OGMGDEiG28hczUod6919/HuHg2VuwrYCBQnFe0D7GxmL5vZq2Z2o5n1S7VOMzs7VhurWLlyZRtGLyKSn6qqqjj77LMxMy666CJGjhxJr169OPXUUzeVmTNnDieeeCLbb789RxxxBKtXr2bGjBksXbqUPfbYg+OOO44dd9yRK664IqOxW7bupGhmU4Eidz87aXkZUOPutWbWBfglMBYo90aCLS8v94baVkVEWuI///kPO+ywQ71lSTekzajm7K6rq6t55JFHmDBhAuXl5dxxxx107tx50/PTpk1j/PjxLFy4kOrqal544QV22203evTokXJ9CxYsYMOGDYwePbrBbab6vCJm9pq7l6f/DrI0mrmZXQ0MAI5Pfs7dNyQ8XmdmFwNrgOHA+xkLUkQkT61cuZLddtuNIUOGcOONN3LEEUc0WPbBBx/k4osvTnvdO+64I4888khrhNmkjCeoWIeH7YDj3X1jOi8hNEWuadPAREQKRN++fZk3bx7dunXb1PEh2QEHHMCjjz7KyJEjOeCAA9Jed0lJ5tJGJjtJFAG3AL2AE9y9Jra8GJgBTHL3583sGOBVd//EzIzQxPesu3+aqVhFRBqSpbMizdatWzc+++wz+vbt22CZwYMHs3Dhwk2dKWbNmsX111/Pq6++ymeffUZJSQmDBg3iiCOO4JJLLqFXr16ZCh/IbDfzI4FzgGHAC1EXcuAIYCjQO1bOgQfNrAJ4Bdga+F4G4xQRKSjvvvsulZWV9ab77ruvXplZs2ZxwAEHsP322/P000+zevVqPvnkE6ZMmcLs2bMZO3YsdXV1GY07YzUod3+M0FyXymMJ5R4FHm3u+jP8uYmI5I2ysjI6duxYb1lpaWm9+ccff5xBgwZx9dVXb1pWUlLCvvvuy3XXXcdee+3F4sWLGTx4cEZihgIaSWLOHFi1KttRiIjknvXr17N27dp6U/J5qcMPP5yPP/6YSZMmsWjRImpra6mqquKVV17h0ksvZeedd+ZrX/taRuMumARVVwe3357tKEREcs/o0aPp1q1bven73/9+vTJ77bUXzz//PG+//Tb77LMPHTt2ZJtttuHMM8+kvLycZ555hqKizKaMrF0H1drMyn3w4Ao++ACKky/9FRFpgcau65HNtfZ1UAVTgwJYtAgebfbZKxERyUUFlaAAbrwx2xGIiEhrKLgE9fTT8M472Y5CRES2VMEkqJ49449vvjl7cYhIYSmU8/RtrS0+p4JJUFtvHX98993w5ZfZi0VECkNpaSmVlZXZDiMvVFZWbnZt1ZYqmATVrRvstFN4vG4d3HlnduMRkfy39dZbs3TpUtavX6+aVAPcnfXr17N06VK2TqwptIKsjGbeVn78YzjnnPD45pvhggsgw932RaSAdO/eHYBly5ZRXV2d5WhyV2lpKf369dv0ebWWgrkOqry83GfOrGDgQFi9Oiz75z/hyCOzG5eIiOg6KLp0gdNPj8+ry7mISP4qqAQF8KMfxe94OX06zJuX3XhERKRlCi5BDRsGxx4bn588OXuxiIhIyxVcggK46KL447/8BZYty14sIiLSMgWZoL7xjTABVFfrXJSISD4qyAQFMH58/PGUKfDVV9mLRUREmq9gE9Qxx8CIEeHxl1/Cn/6U3XhERKR5CjZBFRfDz34Wn//DH0Jzn4iI5IeCTVAAp54KffuGxx9/DA88kN14REQkfQWdoDp1gvPPj8//9rdQIANniIgUvIJOUADnnRcSFcCbb4b7RYmISO4r+ATVpw+cdlp8Xl3ORUTyQ8EnKAijnEcefTScjxIRkdzWLhLUqFFwyCHhcV0dTJ2a3XhERKRp7SJBQRhENnLbbVBVlb1YRESkae0mQR11FHzta+HxZ5+1bZfzxYvVjCgisqXaTYIqKYFx4+LzN9/cNtt54YUwgsWIEfDss22zDRGR9iCjCcrMzjGzOWZWYWZvmdl5DZT7kZm9a2Zvm9ljZtavNbZ/5pnQoUN4/Mor8NprrbHW+n71K9iwATZuhCuuaLzsl1/C44/DlVfCwQeHW4Vce23rxyQiko8ylqDMrBgYAewbu+3vEcD1ZjYgqdxYYAKwv7vvBFQAt7dGDH37woknxudbuxb10UcwY0Z8/oUXwrVXyT79FA48EHr1gsMPD0nt6afD6y+9FJ58snXjEhHJRxlLUO5e6+7j3X1tbNEqYCNQnFT0O8Bf3H1lbP4G4HAz69EacSSOLPF//werVjXv9atXNzwy+m23bb4s1XVXF10Ezz3X8KgW48ZBZWXz4hIRKTTZPAf1B+Cv7p7cnWAY8EE04+5fAF8CQ5JXYGZnx5oLK1auXJn8dEp77gm77x4eV1XBHXc0/ZqPP4bf/x722w9694aBA+Hll+uXqa5Ova777qufBN94I9xEMbLrriFp/vnP0COWghcsgF//Oq23IyJSsEqysVEzuxoYAByf6mmgNmlZDSmSqbvfCtwKUF5entYoe2ahy/npp4f5a6+FAw6AvfbavOzf/w7XXQevvlp/+Zo18MMfwpw50LFjWPboo6HpDmDbbaFfv5CMqqrCrT4mTAg1posuitecjj4aHnkkvt6qKjj33PD4uuvg5JNh9OgwX1cHt98eEp57SJTRtPPO8J3vQGlpOp+AiEiecPeMTsBk4B9AhwaevwO4MmG+MyFB9W1svbvvvruna/169/793cOu3r1zZ/fHHos/v2aN+w9/GH++oenKK+Ov+eY348uvuML9zjvj84MGudfUuP/73/FlxcXu8+bVj6u21n3ffeNlvvGNsGzRIveDD248ln33dV+8OO2PQEQko4AKb26+aO4LWjoRakBTgb8CJQnLi4GnCJ0iAA4C5gM9YvMXATObWn9zEpS7+yuvuG+1Vf2Ecdtt7q++6j58eP2df0mJ+2GHhed/85v48tLSkGQ+/DC+zMx94UL3ykr3Pn3iy6dNc99pp/j8Oeekjuvtt8N6o3Lf/a57t25NJ0sI25s+vVkfg4hIRuR6gjoKcOBVYFbCdBTwIXBsQtkLgDdjZR8Gtmlq/c1NUO7u8+e7Dx1afydfXFx//pRT3D/7LP6a2lr3vfeOP7/ffu6XXBKfP/LIeNlLL40v79kz/rhLF/dPPmk4rssvT52AiorcJ0xwf+op9wcecP/jH90vvDAsT0yQv/hFqLGJiOSKliQoC6/Lf+Xl5V5RUdHs1y1fDkceGc4XJeraFaZMgVNO2fw1c+fCbrtBTU2YLy6G2thZs4cegmOPDY8XL4ahQ+PPRSZNgokTG46psjKcV1qwIL5s5Ei46y7Ye+/Nyz/3HJx0EnzySXzZfvuFc1/bb9/wdtrCBx+ErvVffBGmzz8P59bGjoVjjgnnAEWk/TGz1zxcYpS+5ma0XJ1aUoOKrFnjfuih8VrInnu6L1jQ+GsSa03RtO227tXV9csdf3z9Mv37u3/1VdMxzZzpXlYWakQXXui+bl3j5T/91P2QQ+pvq6wsNElu3Nj09rbUggXu3/teiLehJsjycvcZM9zr6uq/dtky9yeeCOfa8sUzz7ifcYb7WWe5X399OIf5/vvuVVXhf/XFF+4rVrgvXRrOeYq0d+RyE19bT1uSoNzdN2xwv/129z//Ob0d+vr17sOG1d8BX3HF5uWefbZ+mVtvTT+mZcvcP/44/fI1Ne5XXRXOmSVuc9dd3V96KZwXS2XjxtDB4tNPUz+/YYP7vfe6H3SQ++jRodnzppvcKypCUjn33M232dh00EHhfN5ZZ7mPHFn/uQMOCJ/R55+n/75by5Il7nfd5f6DH7jvsov7cce5P/xw/e/Du++6H3NM+u81mnr1CucgDzssfF7Tprl/+WXm36NItrQkQbX7Jr4t8cQT8M1vhsdmYSSIwYPrl3EPTYjTp4dmt2eeCeMCtqU334QzzoDXX9/8ud69YcCAMKrGF1/AsmWwYkWIE2CHHeDQQ8PtSXbaCe69F265pX7zYVMOPDA0bfbuHUbLWLGi+SPId+gQmjNra2H9+jBVVsJWW4VBf6OpV6+wPCqzYUMYMmqffUIX/aY+64ULw/t75BGYPz91ma23Dk29GzeGW7VETbtbqrQ0XOJw1FHh7447xi9bECk0LWniU4LaQtdeCzfdBBdcABdfnLpMZSW8807Y4WdqB1RTEy4uvvLKzN1a5IAD4JprYN99N39uyRL45S/DxczJ5+TKykJifOutcL1Xa+nSJVyYvdde4YLoXXYJg/gWFcFLL8Ef/gAPPtjybX7/++Fc5Pz5YXr3XVi5MiSeaCouDufh0klqRUUhvp13Dsl16FAYMiRM224bkq17+Pw2bgzrNItPRUXh+6XzfG3LPRwIrV0bn6qrw8Fp797Zji53KUFlIUHluvffD+P7vfJKqAUlJwcIO7S+fcPgtRs2pF7PNtvAeeeF2tHrr4eRNF5+OXQEKS8Pyeeww5reOb73XkicS5bAHnuEzhN77hl2rMuXw1//GkbaaKt/ZadO0L9/qO0mKysLtdz/+q8Q09NPh44py5bVL3fggXD99fERSZpSVxcS19KlYZo9Gx57LPU4jQ0pLg5TdXW8tptK166w3Xbxadiw8H779w8Xj/frB507p7/dQue++XfWPfxunnwSnnoq/J8qK8OBXjQ19D/o0yd0TBo5MnzOq1aF6fPPYd260HoxbFh8GjgwJLWttgqtAVGNv64ubLOyMrQmdOu2ZQceUbzZPHhRglKCalRtbdhRRs16vXvHR70oLQ1NZC+8EJoun3gC/vOfUPO44AI44YT4SPCJamrapsny/fdDEuncOT516BDiXrw4Pn31Vf0yRUVhhI9Zs0ISTMchh4T3eOihm9dwa2vDZ3H33WGkkAsuaL3eiEuWwL/+FQYYnjMn9IDMxM+xS5ewQ+zTJ/zt0SPsEGtr41NdXZjc43+LiupPyZ9Bx45hx7zTTqEGOGpU/c/TPf3m0cTtRtsuLg7fNbOQqJcsCU20ixaFqbo6HIB06hS227Fj+F6XlISpuDgcILz7bnz65BPo3j3+WfTqFVo70v3utLauXUPteOPG+ss7dAgHkX37ht9tXV283MaN4T1vs004ENlmG+jZM/w+FiwI36sPPgj/1+j5aOrZM7z/Hj3C32jq1i3+t0uXsP6ipLF8Nm4MSXft2pBIR45s/L0pQbWXBDVpUpikUUuWhET12mshAcyZE68NlZWF80o/+QmMGZPdOCPr1sG8eaGpc/78+I534cL4MFoQdrQdOoS/EN+R19SEnXSuKCoKO7YortZqvjXLTCJvTFlZSCZdu4YduBl8+GFhD/JcVhavfUfNmpGodt/YgZsSVCEmqFTJKBd+oXlq5cqwIxk+PBwx54sNG8K/PDqvlYp7uFt0dMT8wQchwX36aWg+jf62ViePQta9Oxx0ULhP24EHhhpWVCsrK0v9P6irCwdF770Xpurq8B2Lpo4dQ63mww/D/+bDD8P/5PPPQzPg6tX1f9ZRbbCqKrRu5LqqqvDZNEQJqhATlFloa5sxI9zd8I03QrtEc/9vqnW1jeTPNcc/Z/cw2PGqVSGZrVoVmkmjc1xRU1pxcbzjRdS0EzW7Rc2ByVavDjXAd94JU6omy2i9TcUYNSFGU1RDjLZrFpqohgwJnRMGD47vzKNzN1VVoXx1dbwWt9VWoUPOqFFhGjw4vP/os1i1KvTa3H33tu9tm6y2NtRMysrClPg5rV8fDq5Wrgy9b0tKQi26Q4dw0LJ2bdgtRNMXX4TzXcOHh3ORw4eHsollPv00nHdesyZM0eOvvoov++qreA/aZMXF9WuRs2fH78iQii7ULTSTJzd9gc3EiemtC9o01DaR7nvLpuTPVZ/zJpWV4SL4yspwAXvyBdotUVcXrvfLy6G8Un3Oycsy+Z1vxrbq6sK1n599Fqaqqub/P9GFunmmoS/IxImpk9Gxx7r/z//E52+5peltvP66+9FHh/LNueo3G6LPo7IyDNUAYfDDXBHFt3x5+D+Ul4cYd9zRfcyYcEU0hOfmzYv/gnM90eZjUs03a9eGz/mvfw0jAvzv/8ZHnn7kEfe33gpXbqf6X7QkiaWTDNPZVrrbS4MSVD5ZubLhHcO6dfVHsU3eSScmrSlTUn+BLrgg7DS3pNaVSa+9FmI7+GD3jh3jse68s/vf/x7/DLIVe01NiOfb3258PKfEqWfP8H+A+of8LT2Sbq33Hq1nzRr3G24I8d1zj/uqVa2/rfZs4sRwUHjxxfVHi25qGjvW/ac/db/7bve5czffT6STWFKVgXCrhRkzwlAwEJLkHXe4/+tf8d/g8uUhWUZDqCSvq4XfTSWofPH22+49eoSP/8UXN38+GgY9SjDJJk4MR2CJX+rf/S4MCjd5svt558WXd+gQBvOL5ktLwzDo0XpywbXXNv2j3XrrkKiycbT/1VfuBx4Yj6W4OIx39NBDYX7uXPc334z/wH/wg/r3WoEwUONPfuL+8sthvrIy7Cxmzw4D+YH7X/4SdhZTp4b52bPrD+SXzo4iWaoy4L7PPqk/58GD403Lzd1WJmU7nqa2/8or4TNM92CmqamsLAzkOWpUmD/jDPc//CHc2mDFirCsosL9b3+L/55OPDHcqG6PPTa/h1C6U4cO4e8xx7hfdJH7n/4U5pctq9/Gl8bvUgkqH/z856m/CNEXfu7cMLCdWRhAr7EfQnT029B0yinuH30UykL9RHXuuWl9qdrcscc2/HlAONIbMKD+c5dfHgbFc2/5TjpdifdMSfX/aujo9oorWr4zSpyKisJO6TvfCfM33BB2Qi+8kPr/l+pIuq4ujOZ7662hBpi4/v33D38POWTzARVHjAhH8k89ld62UmmrRNLSeFqioSSfXKamxv3BB+vfdbS42P2kk9xnzUodc+Kyurow/9hjYcDK1vj+NDR9/evh7/jxoZWiJevo0iUMWhmNiN0EJahct3Zt/LzFXnvF/9F9+4Ydbm1tuI0uuI8b1/i6GjpP1dDONPqR/fnP4Wgseu7DD9v4TTfiscfiN+CKkm2iaL6hG2RFiSt5ePiWtLWn2glddll8R7Htti1fD7ifeWbb7GiGDw8HGw88EM5eQ6jN/eMf7r//fZgfNKjx70b0viZMaHxb3/52qH1H5zLT2Cml3JFvqTfeCOv96U/dr746NHM/8EBYlng7gdZKoFGSf//9UMuNmm0vvzx8xvfcE/9fpPM5J6+7sflo2bp1YWj8d94J8zfe6L7bbqm3Fd2w7r77QtPdyy+H/Uu624rU1cXPnf33fzdvf5PyY1SCyl01Ne7bbx8+8qFDw9DhEIa3BveBA+NH3f37h/s1pCudL36kocSWmMQy4fTT3Tt1Ctu+9NKwrKmdWW1tKHPaae5du8Zj7949NJ+99158PevXuz/3nPs114T5W24JNYGlS+NHqvPnuz/+eLxJ7cUX401q69fH19+/fyibzg45lcTXRe8huQtUQzuPysrQdHjnnWFZdIDTkmnUqPi5h8Y+52j7P/xhw+saPTr8/de/wk4sWk9NTfgcx4+P30L6wgtDrW/JktSfYbrfu3QOyrp0CQcVUc03+c6gzTl4Wbw43pSeePvtxqahQ8PB1ldfpfc5p3uA09h89H1u6n2l+39Pd/urVoWmzHvvTeu30eoJCvh2kytIo0wmppxPUFHzWs+eoYeXe/iCrFsXbsub+CW///7mrbs5CSqyalX9bY4bl9aXrFXMmxff7mmnNa+3W+LRaKrp4IPD38TbDCdPUWJMNZWUhCPT6Oi0Xz/3//wn/fhSSfcEdkvKzJrVcHPQHnuEv6+/Xr+jTTr/51Tbmjo1fpCVPA0eHP+8mtqJn3pqqHUsXZp6Ww19zsuXuw8ZEl/Pb39bvzmtoelrXwvNUNG5mYkTw/c9qhX88IfuV14Zzq9Mnx6WRTXm5GnkSPdf/zo8Hjs2dZmGmn9bqiVJrKWdbFra+y9LCWpZ0vzHTZXJ1pTTCWratPiX95lnNn9+9er61fXmXmDQ0i8jhCPE6EQouF93XThybM56mmPdunhTyFFHbX6Hx6ak+rG88Ua8i3fyFNU4Tjst1FLTOQpubKfTGlqrF1/yTqG6evNlqXYcLdlRJa5nwwb3p5/2TUkwuSPAkCGh+S26VCCxg0nytMMO4e8DD4SerQ3FnNg8HiXeZNDwOd6WTJ06hZuCQejQ0lingJZ+zq0l29vKRi8+4JPG5htalo0pZxNUY01qzSnTVrE1tO0hQ+LNSsmv2ZLttfb7TIzvs8/iMSfeDTD5PXzxRcM7mDVrwl0mU50TyzUtPZJuzW019T9NjCfqqj95csPna7beOvz9+9/jCaumJn5ny6FDQ00q3aawmpr6vVoTp+jk/q23xjuLpHof6SSfXP+u5IBM1KA2qy2pBtWEujr3bbaJf+Gbkq0v+oYNYdsnnFC/E0W0U/je99xvvjnMJ9fw0r2QcNas0PQWNb+1hpbupNM5As7HnU42j6SbuyPfsMH9+efjB0SpEkTfvvGmtF694s2tLY2nJf/3bPZWLCBKULno/ffDxxxdF9OUbO4Uo2031Ztr6NDQKeGpp8LFfOn86KuqwogLEK6naMv32ZIdSlteGNtepPM/bexgobIy1F4hnFdLvGAb3GfObF48rXXwIq2iTRIUUAp0AMqS5jcta+5G22LK2QQVXdh23HG5fyTW0I/1nHMaTlb6riw9AAAWfklEQVTduoW/w4a5b7dduHYGQtfWRFEPxREjQg857fwLT2t3Imno8oItbWZujTLSbC1JUI2OZm5mdUBiAUuajwacbeAGAJmTs6OZ/+AHcM89cMMN4W53+Sb51h5m4X7pF10EL77Y9OsvuADOOCPc+dAdZs4M94YXaYhuMVOQWjKaeVMDyh+0BfEIwHPPhb/5ulOeOHHzZfvsE269C2HM/v79w6076+rCfQ123DHc/KaqCqZOhX/8I+xczjsvfz8HyZwcvl2JZFajCcrdZ2YqkIIU3RK1Z8/cuW1rcyXvLJITVr9+4e9229VfPn8+XHYZ3HtvuEsbwLXXtkmI0g6kOlCSglfU2JNmVmZm3ZKWdTKzCWZ2k5n9V9uGl+dmxvL7/vs3fBvUfJPq6DZ55zFxIgwaFO6Slqh799BUoyNkaS59Z9qlRhMU8D/AWdGMmRUB04GJwN7Ao2Z2dNuFl+fyvXkvXck7j2h+0qT4qW2IP9bORkTS0FSC+n/A7QnzpwB7At+Inew6Hri4jWLLf1EN6sADsxuHiEgeaipBdXb3LxPmfwb8yd3fBHD36cCQNootvy1bFjoOdO0KX/96tqPJPp1DEJFmaipBbTSzTgBmti+wE3BTUhlLd2NmVmpm482s2sxOaqDM7mb2uZnNSph+nu42ckbUvLfvvlDSVGfJdkDNeiLSTE3tOWcAU83sn8BVwMPuPj960sx2AL5qxvbOIlxHNauRMn2Av7v7WY2UyX1q3hMR2SJN1aAuBQYDdwIfAmdHT5iZAb8H/i/djbn7Le5+PVDbSLE+wDfN7JXY9OvknoQJMZxtZhVmVrFy5cp0w8gMJSgRkS3S6EgSTb7YrAew1t0bSzipXvcsMNXd70/xXCegyt3dzHoTmhQ7ufu3G1tnTo0ksWJFuD6oUydYvRo6dMh2RCIiWdUWI0k0KqkDRatw98qEx5/Hzj8tNrNOic/ltOefD3/32UfJSUSkhRpNUGb2YTorcfdhrRNOSsVAFbChDbfRuqIOEmreExFpsaZqUEOApcADwGM0fu6oRcxsK+AR4Ifu/n6sd990d19tZiXAb4B73L2utbfdZqLzT4V+ga6ISBtqqpPEEOBPwLeBe4DDgMXuPjNx2sIYOhM6YvSIzXcCnjKzV4GXgOWE669y36RJYSifOXPC/EEHaWgfEZEWSquTRKzH3qHAacCxwMvAbcCD7r6xTSNMU850kvjTn+CsWA953R5ARARoWSeJpmpQwKbbS85w95OBgcBDhCGOlpnZ75sfagF75JFsRyAiUhDSSlCJ3P1z4DngBcLddfdv7aDy1rp18MQT4fHP8qNVUkQkV6WdoMysh5mNM7PXgJmEDhYHNbfKllVtfS7oySfDTfr23BOuv75ttyUiUuCaTFBmdpCZ3Qt8AnyfcOHstu5+nru/3tYBtqqrrmrb9T/8cPh77LFtux0RkXagqeugPgA6ANOAcnefl5GoWps7HHFEeFxXB0XNbtlsWm0tPPZYeHzMMa2/fhGRdqapPfVQYADwE2CumdUmTXVm1urXRrWqSZNCQnr88TBfXNw2Xb9nzYKVK2HYMBg9unXXLSLSDjV1oe7QNNaxbWsE0mYmTQrdvgcODPPl5TB7dkhSrSlq3jvmmNZft4hIO9RUDWoZcBHwKuHap7PcfZG7LwI+Br4F/LttQ2wFa9fGH1dUxHvapSPdmlbUvVznn0REWkVTCeoSYB/gx8AvgBNit7jYG3gD+CWQ+93V1q2rP//rX6f/2nQ6VsyfH6ZevWC//ZoXm4iIpNRUE9/JwOHu/jGAmb0FPAmUAbcDh7p7jt2IKYWoBrXzzvDxx2Ew1xdeaDqZTJsW/v7jH/DtRu72EdWe/t//091zRURaSVM1qG5Rcop5jZDUxrj7+XmRnCBeg9pmG/jxj8PjxmpR0Zh6J5wQ5o87rvGOFepeLiLS6ppKUMWJMx4G7lvj7gvaLqQ2ENWgunaFn/wEunSB6dPh7LNTl580CX70o/rLvvvd1Alq5Up46aXw+LDDWitiEZF2r6n2qG5mdk3Ssq7Jy9z9stYNq5VFNaguXWCrreDcc8NID7fdBrfeunn5N96AKVNCl/TaWujcGe67D04+GY46qn7ZKVPig8J2S3lnehERaYGmEtRrhE4SjS3L/SG7oxpUly7h789/DjfdBBs2hF595QmjNdXVhdpTXR389KfQvTv06BHG1jv3XJg3LyyrqwvnsF5+Of7aqHv5xIm6xYaIyBZqNEG5+9gMxdG2ohpU164hcST2zNtjj/D3yivD8rvuCkmnf/9Qtnv3UIu6//5w/dSECdC7N7z3XihXUhJqYaefrttriIi0ojYY8ycHJTbxTZoUEknitVEQRoJ45x04//wwP3lySE4Qmvpuvx1KS2HqVLjmmtDDr3t3+Pe/4bTTMvZWRETai/aRoBI7SUSi5r5p08J5qRkzYMwYWL8+3Kr9u9+tv46ddoLLL4/PDxoEL74IhxwS5idObLv4RUTaofaRoBJrUIkmToTjj4e5c8NgslET3c03bz5c0aRJ9c8rffxxSGjRMp1zEhFpVe0jQaWqQUE8qfzxj6GpLjJmzObXPUVNg1ESix4rMYmItIn2MexBQzWoSGLtyEydHUREckD7rkG1lM43iYi0ufaRoJqqQSVKJ/moWU9EpM21jwSVfKFuY5R8RERyQvtIUIkX6oqISF5oHwmqOTUoERHJCe0jQakGJSKSdwo/QdXVhdEhIIxKLiIieaHwE1Ricioq/LcrIlIoMrrHNrNSMxtvZtVmdlIDZczMfmVm881snpn9xcxafvKoOV3MRUQkZ2S6SnEW4f5RsxopcypwJLCru+8IVAPXtXiLrX2RroiIZERGE5S73+Lu1wO1jRT7DvBHd6+Mzd8AnNzijaoGJSKSl3LxpMww4IOE+Q+A3mbWI7mgmZ1tZhVmVrFy5crUa1MXcxGRvJSLCcqoX8Oqif3dLFZ3v9Xdy929vG/fvqnXpi7mIiJ5KRcT1BJgUML8IGAtsLpFa1MNSkQkL2U9QZnZVmb2opmNiC26BzjTzDrE5n8MPOjewntgqAYlIpKXcuF+UJ2BwUB0juluYDgw28xqgHnA+S1euzpJiIjkpawkKHcfm/B4MTAwYb4WuDw2bTl1MxcRyUtZb+Jrc6pBiYjkpcJPUKpBiYjkpcJPUKpBiYjkpcJPUOpmLiKSlwo/QambuYhIXir8BKUalIhIXir8BKUalIhIXmo/CUo1KBGRvFL4CUrdzEVE8lLhJyjVoERE8lLhJyjVoERE8lJhJyh31aBERPJUYSeoDRugthZKS8MkIiJ5o7ATlLqYi4jkrcJOULpIV0QkbxV2glINSkQkb7WPBKUalIhI3insBKUu5iIieauwE5RqUCIieauwE5RqUCIieauwE5RqUCIieauwE5S6mYuI5K3CTlDqZi4ikrcKO0GpBiUikrcKO0GpBiUikrcKO0GpBiUikrcKO0GpBiUikrfaR4JSDUpEJO8UdoLShboiInkrownKzA40s9fN7C0zqzCzvVOU2d3MPjezWQnTz1u0QdWgRETyVkmmNmRmPYEHgaPc/WUzGws8bGZD3X19QtE+wN/d/awt3qg6SYiI5K1M1qAOA+a7+8sA7v4s8AlwcFK5PsA3zeyV2PRrM+uWaoVmdnasJlaxcuXKzQuok4SISN7KZIIaBnyQtOyD2PJEDwJD3H0v4AhgKHB3qhW6+63uXu7u5X379t28gGpQIiJ5K2NNfIABtUnLakhKku5emfD489j5p8Vm1inxubSoBiUikrcyWYNaAgxKWjYotrwxxUAVsKFZW6upgQ0bwAw6dmzWS0VEJPsymaAeBnY2szEAZrYnMAp42sxeNLMRseUnxTpUYGYlwG+Ae9y9rllbS6w9mbXWexARkQzJWBOfu39pZicAd5iZE5r3jgQ6A4OBHrGinYCnzKwOcGAmcGWzN6gu5iIieS2T56Bw92eAPVI8NTChzJ3AnVu8MV2kKyKS1wp3JAnVoERE8lrhJih1MRcRyWuFm6DUxVxEJK8VboJSDUpEJK8VboJSDUpEJK8VboJSDUpEJK8VboJSDUpEJK8VfoJSDUpEJC8VboLShboiInmtcBOUalAiInmtcBOUOkmIiOS1wk1Q6iQhIpLXCjdBqQYlIpLXCjdBqQYlIpLXCjdBqQYlIpLXCjdBqQYlIpLXCjdBqQYlIpLXCjdBqQYlIpLXCjNB1dXB+vXhcefO2Y1FRERapDATVGUluEPHjlBcnO1oRESkBQozQal5T0Qk7xVmglIHCRGRvFeYCUo1KBGRvFeYCUo1KBGRvFeYCUo1KBGRvFeYCUo1KBGRvFeYCUo1KBGRvFfYCUo1KBGRvJXRBGVmB5rZ62b2lplVmNneKcqYmf3KzOab2Twz+4uZNZ1pli2LP1YTn4hI3stYgjKznsCDwI/cfWdgPPCwmSWPRXQqcCSwq7vvCFQD1zW5gU8+gddeC9OCBWGZmvhERPJWSQa3dRgw391fBnD3Z83sE+Bg4NGEct8B/ujulbH5G4CngPOb3EJ5ef15JSgRkbyVyQQ1DPggadkHseWNlfsA6G1mPdz9y8SCZnY2cDbAVkBSeoJLL4VLL+VT+GQJLEt+Ogf0AT7LdhDNpJgzQzFnhmLOnO2b+4JMJigDapOW1bB5M2NyuZrY382aI939VuBWADOr+Mx9sxyVy8yswhVzm1PMmaGYMyMfY4YQd3Nfk8lOEkuAQUnLBsWWN1ZuELAWWN12oYmISK7JZIJ6GNjZzMYAmNmewCjgaTN70cxGxMrdA5xpZh1i8z8GHnR3z2CsIiKSZRlr4nP3L83sBOAOM3NC092RQGdgMNAjVvRuYDgw28xqgHmk00Ei1tSXZxRzZijmzFDMmZGPMUML4jZVTEREJBcV5kgSIiKS95SgREQkJylBiYhITsr7BJXO+H7ZZmalZjbezKrN7KSE5Tkdu5mdY2ZzYrG9ZWbnxZbvFOt5+ZaZzTWzo7IdayQ2juMcM5sd+2zHxZbnbMwRMxttZp+b2aTYfM5+P2Kf4atmNis2PR1bnrMxA5jZz83s7VjsFWbWOVdjNrMfJ3y+0bQmFm9OxgxgZhfF4nol9vey2PLm/wbdPW8noCewCtgnNj8W+BTonO3YkuI8D/g58DxwUj7EDhQDk4GusfkBQGXs7wLgO7HlOwCfAwOzHXMsnp8BpbHHfQnX0G2XyzEnfB+eBW4GJuXB92MhUJTiPeRyzFcB1wIlCfH2zuWYk+LfBlgU+w3mZMzA/sBSYKvYfO/Yd+WwlvwG870Gtdn4fkA0vl/OcPdb3P166o+QkdOxu3utu49399jQ8KwCNhIuAegE/C1W7j/Ac8C3sxJoEnf/nbtXx2aHEBLUQHI4ZjMrAu4CLgNWxhbn9PeDsOOZaWZvmNnfzGxXcjjm2GDVhwFfAS+a2UxgH+BQcjTmFC4hHMDsR+7GHH1/e8X+die01FXRgt9gvieodMf3y0X5FvsfgL8C2wIfeuwwKCan4jazEWb2PvA4cAq5H/PVwBPu/lLCslz/fvRz9/2B3QkX4T9JuPA+V2PeHRgNLHH3vYALgfsIB1y5GvMmZrYNcBxwCzn83XD3dwnjo75qZu8BbxI+6xb9BvM9QaU7vl8uypvYzexqQrPC+eRB3O7+vruPIBxR3k34EeRkzGZ2PDDI3W9KfoocjRnAY3cbcPc6d78XeC32VK7GvDWw0N3vAnD3Nwh3SYDcjTnRpcDNsRaNnP1umNlIYCpwqLuPJIzhfQ0wlBbEnPU3tIXSHd8vF+VF7GY2mXDkeby7byRP4oZNO6GXCefTcjXmI4AdopPgwJmx6dfkbsypFBPONeRqzCuANUnL6sjt7wYAZrYtofYUHcTk8m/wGOAFd68AcPcFwD+AQ2hJzNk+qbaFJ+R6EIadHxOb3xP4AuiZ7dgaiPdZ4p0kcjp2wsHLVEKzXknC8mJC1fyI2PwwwsnOETkQ8xjgROIjpAyI/QD2zdWYU7yHSbEpZ78fwB7A7gnzRxJOjA/O4Zg7EM7T7Beb3z4W6y65GnNC7DcClyXM5/J34xhgMbBNbL478Drwo5b8BjN5u41W5w2M7+fuOT/yeR7EfiRwDlABvGBm0fJfEE5s3mxmv4wtO9Xd3898iJtZBJwLTDCzasJO6Qp3f9HMcjXmlHL8+7EW+J2Z9Qc2EHY033T3Rbkas7tvNLMjgT/FOqXUEb4Dc3I1ZgAzGwAcT8K9lHL5u+Huj5jZcGC6mVUSxlr9J+Fg93ma+RvUWHwiIpKT8v0clIiIFCglKBERyUlKUCIikpOUoEREJCcpQYmISE5SgpJ2z8z+YGaeNL3ZwnU9a2bjm/maSWb2UOzxQjP775Zsu61YwjUGsVgfy2Y80n7k9XVQIlsidouC/sALwKykp+vM7FtArbs/Git/LTAhqdw6d+/azO0uJ1wD8ngaZXcC5jZS5B1336mR1z9J44OI/sbdo9sh7A68kvR8EWEUhv5NxSrS2pSgpD3bMTY1php4NPb4MsKFypEDCQOlYmYLCKOnFwNN1TA6EEZ3bo4+wLoUy+uaeN1RNPw7vytpnW8QbkGRuO7zgG+lGaNIq1KCknbL3e+IjSpwFvDfhAEtiwn31pkJTHb3lQkvGQ6MTJgfk7Cu4bCpxtKgWHNZJ+K3JUjXBndvblKjsdeYWUfC7SeisnWEUSISy+wHvNjc7Yq0BiUoae8uAU4FTiM0pVUTakL/A/wfYZDLyHeBiUmvT1WracwooCPQ2cwuBH4fW/5wE69bnXAqKNHt7n5OcwIws1LC/Xq2JTTfNVSuH3A4YeBakYxTJwlp70oItwHYGPtbR0hSGwm1qWRPEXbu0TQAQhOfmdXQ9E3j9ibcmfgUws3nugG/SSPOnu5ekmJqNDmZ2XIzq0mYnJBUZxMGSv20kZdfCVS4+6tpxCfS6lSDkvbuGsKAp1MITXwlwHLCyPM/SVG+ltAMVkyoCfU2szHAOHd/wsyebWJ7JxLu7XMR8Ft3X2pmG1vhfTRkO8L9gwAcqI4NnNqF8D4+TvUiMzuCcNuP/dswNpFGKUFJu+buNcB1sSkd3yTUsKoIO/jVhNsIPAw80dgLzewbhFsjnAD0A+4zs0Mae02Crxpo4gPo1NC5JndvqAlyKCFhLU4R50GEW3Nf4u6z04xPpNUpQUm7ZGbvEO5fVG8x4fYA6wk770Qnufskwr2aWrK9rYB7gF+6+1ozu57QOeMGGjkP5O5vE68BtaZRwMcebkIZxVhKqNlNJNym5PcNvVgkE5SgpF1y99EAsXsarXb3qth9bN4Htnf3Bu/0GV0/5e4PpXj6HuDdFMt/B/yHcPM53H2Vmf0A2J02+B2aWUkT690FWBDryQehVngWcDZwtLvPaO2YRJpLCUrauwrgfOAhQgeJdTR9bdHhhM4OmyUod7+9gdecDRTFunJHZf8N/NvMJiUXNrMhwEdNRh/3irvvnTD/CzbvcZhKZezvOHe/xczuaEl3dpG2oAQlAl3MrCfhzrADAWLzEDoVpDqPU2xmDY0gUZO8k3f3Dc2MaRHheql01UuqLW2OVHKSXKIEJQJ/aeS5xwk1pmSHkHCRa5KnqH/9VLN5uNW1koW0a7rlu4iI5CRdqCsiIjlJCUpERHKSEpSIiOQkJSgREclJSlAiIpKTlKBERCQnKUGJiEhO+v9TPQo1HK+tMQAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "lin_reg = LinearRegression()\n", "plot_learning_curves(lin_reg, X, y)\n", "plt.axis([0, 80, 0, 3]) # 책에는 빠짐\n", "save_fig(\"underfitting_learning_curves_plot\") # 책에는 빠짐\n", "plt.show() # 책에는 빠짐" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.pipeline import Pipeline\n", "\n", "polynomial_regression = Pipeline([\n", " (\"poly_features\", PolynomialFeatures(degree=10, include_bias=False)),\n", " (\"lin_reg\", LinearRegression()),\n", " ])\n", "\n", "plot_learning_curves(polynomial_regression, X, y)\n", "plt.axis([0, 80, 0, 3]) # 책에는 빠짐\n", "save_fig(\"learning_curves_plot\") # 책에는 빠짐\n", "plt.show() # 책에는 빠짐" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 규제가 있는 모델" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.linear_model import Ridge\n", "\n", "np.random.seed(42)\n", "m = 20\n", "X = 3 * np.random.rand(m, 1)\n", "y = 1 + 0.5 * X + np.random.randn(m, 1) / 1.5\n", "X_new = np.linspace(0, 3, 100).reshape(100, 1)\n", "\n", "def plot_model(model_class, polynomial, alphas, **model_kargs):\n", " for alpha, style in zip(alphas, (\"b-\", \"g--\", \"r:\")):\n", " model = model_class(alpha, **model_kargs) if alpha > 0 else LinearRegression()\n", " if polynomial:\n", " model = Pipeline([\n", " (\"poly_features\", PolynomialFeatures(degree=10, include_bias=False)),\n", " (\"std_scaler\", StandardScaler()),\n", " (\"regul_reg\", model),\n", " ])\n", " model.fit(X, y)\n", " y_new_regul = model.predict(X_new)\n", " lw = 2 if alpha > 0 else 1\n", " plt.plot(X_new, y_new_regul, style, linewidth=lw, label=r\"$\\alpha = {}$\".format(alpha))\n", " plt.plot(X, y, \"b.\", linewidth=3)\n", " plt.legend(loc=\"upper left\", fontsize=15)\n", " plt.xlabel(\"$x_1$\", fontsize=18)\n", " plt.axis([0, 3, 0, 4])\n", "\n", "plt.figure(figsize=(8,4))\n", "plt.subplot(121)\n", "plot_model(Ridge, polynomial=False, alphas=(0, 10, 100), random_state=42)\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18)\n", "plt.subplot(122)\n", "plot_model(Ridge, polynomial=True, alphas=(0, 10**-5, 1), random_state=42)\n", "\n", "save_fig(\"ridge_regression_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[1.55071465]])" ] }, "execution_count": 39, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.linear_model import Ridge\n", "ridge_reg = Ridge(alpha=1, solver=\"cholesky\", random_state=42)\n", "ridge_reg.fit(X, y)\n", "ridge_reg.predict([[1.5]])" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([1.47012588])" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sgd_reg = SGDRegressor(max_iter=50, penalty=\"l2\", tol=1e-3, random_state=42)\n", "sgd_reg.fit(X, y.ravel())\n", "sgd_reg.predict([[1.5]])" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[1.5507201]])" ] }, "execution_count": 41, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ridge_reg = Ridge(alpha=1, solver=\"sag\", random_state=42)\n", "ridge_reg.fit(X, y)\n", "ridge_reg.predict([[1.5]])" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "data": { "image/png": "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06dP58SJE+zdu5egoCCGDRvGG2+8waRJk3jmmWeoX79+if3nzZvHyJEjKzyv1rrM7SkpKTRu3LjUdn9/f1JSUqr3JoSoxSSm5Je/nJhSGa+99hobNmwgNjaWjh07AqZjcevWrVm0aBEPP1zeZN3VU504d+7cORYvXsyYMWPIXypO1BK1PvFxJVpr5s2bx+jRowkKCirc7ufnR2pqKuPGjSt1zNChQ9m4caNN1y3rS621li+7EC7OUTHlYvLy8njttde49957adu2LTk5OYCJQ+3bt+fQoUOljklNTeX48eMVnrtTp07lvlbVOLd48WLOnj0rzVy1UK1PfIrfVV3MmIgxhXdqFYkdE2tLkcq1a9cukpKSiI6OLrE9NzeXxx57DF9f31LHBAQE4OfnV+1r+vv7c/r06VLbU1NTy7xDEqKuk5him61bt5KUlMSbb77Jm2++Wer166+/vtS2hQsXlmqSK0t5tVDViXPz58+nffv2REZGVnhd4VpqfeLjSvbv3w9AmzZtCretXbuWAwcO0KNHjzKPsbVaulOnTuzcubPEtsOHD5Oenn7RuychhPNzREypSEHNzbJly8pMsIqXtcCoUaMYNWpUta4HVY9zqampfP/990yYMKHa1xTOSxIfJ+Lu7g6YERhgAkvBF6+8IGNrtfTgwYOZOXMmZ86coWHDhgAsWLAAb29v+vfvX+3zCiEczxExpSLNmjUDoHHjxkRERNjtOsVVNc59/fXXZGZmSjNXLSWJjxOJiIigfv36TJgwgSlTprBgwQKSk5Pp0KED8+fPJywsjNDQ0BLHBAYGEhgYWO1rjhs3jlmzZnHLLbcwceJEEhISmDp1Kk888UTh0M+PPvqIBx54gH379hXejZ07d46lS5cCcPToUdLS0li0aBEAQ4YMwcfHp9plEkJYwxExpaLY0LVrV3r06MFdd91VOLosKSmJ33//nS5dunDfffdV+9rlqUycK27+/PmEh4fTuXNny8sinIDW2mUeERERujzbt28v9zVXsmDBAh0aGqo9PT11r169dEJCgv7www+1r6+vfuWVV+xyzW3btukBAwbo+vXr65CQEP3000/rnJycwtc/+OADDej9+/cXbtu/f78GynwU368steVvJSoHiNFOED/KekhMsT6mVCY2HD58WN911126WbNmun79+vqSSy7Rd999t961a5fl5SlQUZwrkJSUpD08PPSMGTOqdP7a8nlxBbbGFKVtGJJY0yIjI3VMTEyZr+3YsUOycxchf6u6RSkVq7V2yh6iElOEVeTzUnNsjSky/a4QQggh6gzLEx+l1ItKqS1Kqd+VUpuUUn8tZ7+HlVI7lVLxSqklSilrp+oUQtQKElOEEFayR41PChCptb4MuA6YqZS6pPgOSqkoYCJwlda6GxADvGeHsgghXJ/EFCGEZSwf1aW1fr3Y01DgLJB8wW53AJ9orZPyn/8bSFJK+WmtU60ukxDCdUlMEUJYyS59fJRSHZRSe4Afgb+UEXjaAvsKnmitU4BUTFC78FxjlFIxSqmYpKSkC18WQtQBElOEEFaxS+Kjtd6jte4ADAQ+Ukp1vWAXBVy4/G9OWeXRWs/VWkdqrSObNGlij+IKIZycxBQhhFXsOqpLa/0HsA4YcMFLR4DWBU+UUj5AYP52IYQok8QUIYStLE18lFJhSqnbVf5yt0qpFsDlwB9KqeVKqavyd/0YuFspVbBQy8PAb8Xa54UQQmKKEMJyVnduPgiMAyYqpbIBL+AZIBa4BAgA0Fr/qpT6L7Ayf79jwAiLyyKEcH0SU4QQlrI08dFap2HutMrS9oJ9ZwGzrLy+EKJ2kZgihLCazNxcx+3du5exY8cSHh6Ou7s7UVFRji6SEMKFSUwRzk5WZ6/jtm3bxtKlS+nTpw9ZWVmOLo4QwsVJTBHOTmp86rihQ4dy+PBhFi5cSNeuF44QFkKIqpGYIpydJD5OKDk5mbFjxxIUFERAQAATJ04E4Morr2T27NmWXsvNTT4CQtR2ElOEKCJNXU7m9OnT9OvXjwYNGvD+++8THx/PlClTCA0NZd++fYwePbrE/lprcnMvnLetNA8P+VMLURdJTBGipNqfmitlHsUNHWq2LV5ctG3uXLNtzJiibceOmW3Nm5c8PiLCbI+NLdo2darZNnWqTcWdPn06J06c4IcffmDYsGFMnjyZoKAgJk2axJNPPkn9+vVL7D9v3jw8PT0rfAghLCIxRWKKcGmSsjsRrTXz5s1j9OjRBAUFFW738/MjNTWVcePGlTpm6NChbNy4sSaLKYRwERJThCit9ic+WpfeVvyurMCYMSXvzMDclZV1fPG7sgJTp9p8Z7Zr1y6SkpKIjo4usT03N5fHHnsMX1/fUscEBATg5+dXarsQwk4kpgjh0mp/4uNC9u/fD0CbNm0Kt61du5YDBw7Qo0ePMo+ZN28eI0eOrPDcuqxgK4QF1q2DFSsgKgr69nV0aURxElOEq/jzTxg+HDp3huBgcHeHgQPtE1Mk8XEi7u7ugBmBASawTJgwofD3ski1tHCkdetMcMrKAi8vWL5ckh9nIjFFuIpFi8DTEzw84PnnzbaXXiqKKfEn45nyyxTevvFtm68liY8TiYiIoH79+kyYMIEpU6awYMECkpOT6dChA/PnzycsLIzQ0NASxwQGBhIYGFjta547d46lS5cCcPToUdLS0li0aBEAQ4YMwcfHp9rnFrXfihUm6cnNNT9XrJDEx5lITBGu4vPP4e9/hx07zHOti2JKj8gM7vzyTuJPxtO2cduLnqdStNYu84iIiNDl2b59e7mvuZIFCxbo0NBQ7enpqXv16qUTEhL0hx9+qH19ffUrr7xi+fX279+vgTIf+/fvt/x6Wteev5XQeu1arb29tXZ3Nz/Xri29DxCjnSB+lPWQmFI7YoozqC2fF0c4ckRrf3+tz583MaRePa2hKKaM+XaMZiq64+yO+mzmWZtjitIu1E4bGRmpY2Jiynxtx44ddO7cuYZLJKpD/lauq6z+PBX18VFKxWqtI2uulJUnMUVYRT4v1bNuHUybZn7/7jvzc+lSuOUW+OUX2N/gU/7y9V+o516PdQ+uo2eznjbHFGnqEkJUSnn9eQoeQghRFQUxJSMD6tUzz/v2hSFDIDAQMnx3MnbJWABmDZ5Fz2Y9Lblu7Z/AUAhhibL68wghRHWtWAGZmeb3nJySMaVbr3RGfn8r6dnp3BV2F6N7jS7rFNUiNT5CiEqJijI1PQU1PlFRji6REMKVRUWZYetal44pvbrX53zmLTRqonj7xrdRF86WbgNJfIQQldK3r2nekjl7hBBW6NsXeveG0FB45JGSMaVXD3d2fvYiP3wxGW9Pb0uvK4mPEKLSpD+PEMIqWsOuXfDFF9Cihdm26uAq2ge0Jzy8ORMmYHnSA3bo46OUGquU2qKUilFKxSmlHipjn0ClVLpSan2xxz9tvbazjFA7exaOHzc/RUnO8jcSrkNiiiFxxXk50+fElezZAz4+RUnP9qTtDP18KL3f6Y1X0GGSkuD0aeuva2mNj1LKHegAXKG1PquUagHsVUp9o7U+WmzXIGCt1jq6zBNVg6enJxkZGQ6fHOvsWdi9G/LywM0NOnaEBg0cWiSnkpGRISs7i0qTmGJIXHFuEteqZ/36ohrkP8/9ydDPh5KWmcZ17a6jtX8LuneHLVugf39rr2tpjY/WOldr/aTWuuCe5E8gC3C/YNcgoLtSap1SaqNSarZSKtiWazdt2pSjR49y7tw5h2bfZ86Y4ATm55kzDiuKU9Fac+7cOY4ePUrTpk0dXRzhIiSmGBJXnJPENdsUDF8/n3OemxbcREJKAr2a9eLDmz7ETbnRo4dJfKxm7z4+/wIWaK0PXbA9Bmiutc5VSvkCLwBLlVKR+oIIo5QaA4wBaN26dbkXatSoEQDHjh0jOzvbundQRZmZZrE1rUEps+6IParqXJGnpyfBwcGFfyshqqHOxRSQuOLMJK5V37p1cM+9edz/v/tZc2gNLRq24JsR3+DjaWpZw8Nhwwbrr2u3xEcpNQ1oAdx64Wta68xiv6crpSYAaUB7YM8F+84F5oKZZfVi12zUqJFTfPiKz2RbzgLIQogqqssxBSSuiNrlzBnTx+frtMks2LaAhl4N+e6u72jZqGXhPpdeCp9+av217ZL45HcqbAfcqrXOqswhmGa3NHuUp6bJyBchrFXXYwpIXBG1y8aNpkYnpGETPN08WXT7IsJDwkvsExRkajqtZmkfH6WUm1JqDtAKuK0gQCml3JVSy5VSV+U/H6aUapb/u8JUS6/QWidaWR4hhGuTmCJE7VTQsXl8v/HsfGQn17a7ttQ+gYFw6pT117a6xmcIMBbT3r6m2EyL04BLgID85xr4SinlCeQBccDdFpdFCOH6JKYIUcv8tO8nft50CQ+P6ABAW/+2Ze4XGAjJyUV926xiaeKjtV6CqWIuy5Ji+y0GFlt5bSFE7SMxRYjaZXnCcoZ9Poysdo2ZGbYJaF7uvl5e4O0NqanQuLF1ZZBFSoUQQghhd78d+o1h84eRmZtJ/YRb6NWhWYXH2KOfjyQ+QgghhLCrtYfXMvjTwZzLPscA//von/4f3Nwqbr+yRz8fWatLCCGEEHaz9vBarvvkOs5mnWVEtxG03fwubhGVq3eRGh8hhBBCuIyk9CQGfzqYs1lnubPbnXx888f8EetBRETljpcaHyGEEEK4jCa+TZg2YBrrj65n3k3zcFcexMZS6cQnKEgSHyGEEEI4uTOZZ2hYryEAj17+KI/oR1BKcfSoWW+uZcsKTpAvMNBBTV1KqTlKKa2UKjXuTCl1qVIqSyn1b2uLJoQQQghX807sO3SY3YFdp3YVbiuYg6ugtqey8/LYo8ansn181uX/vKyM197ATAs/1YoCCSGEEML1aK2ZtmoaY5aMITE9kZ/2/VRqn02bKt/MBY7t3Lw+/2eJxEcpdQMwGHhWa51iZcFcwbp1MGOG+SmEELaSmCJcVXZuNmMWj+GZX5/BTbkx54Y5PHr5o6X2i42FXr0qf16HdW7WWu9SSiVTLPHJnxr+dSAeeNvaYjm/detg4EDIyjKzSy5fXjcXECy+YnRdfP9CWEViShGJK64lLTON2xfezo/7fsTbw5tPb/mUmzvfXOa+sbEwe3blz22PGp+qdG5eD1yhlFJaaw08BnQEBmmtc60tlvNbscIEqNxc83PFirr3BZVALYR1JKYYEldcS05eDv0/7M/mE5tp4tOExXcu5vKWl5e57/HjkJkJbdpU/vz2qPGpyjw+6wE/4FKlVFPgGeB/Wuvl1hbJNURFmS+lu7v5GRXl6BLVvLICtRCieiSmGBJXXIuHmwcPRT5E56DOrB+1vtykB0z/nl69qrbgaMGoLq0tKGy+qtT4FO/gfDVQDxhvXVFcS9++5k6kLlfHFgTqgjuzuhqoQarmhe0kphgSV4o4a1zRWrP/9P7CVdVHR4zmnvB7qO9R/6LHbdwIvXtX7Vr165vPwZkz0KhRdUtcUlUSnw1AHvAgcCUwU2udYE0xXFPfvs71YaxpEqgNqZov29mzsGqVo0vhWup6TAGJKwWcNa5kZGfw0NKHWLR9Eb+P+p3OTToDVJj0gEl8Hnyw6tcs6OdT44mP1vqMUmo7prbnBDDdmiIIVyaBWvpmFMjONoFt2TLz2LQJIiMdXSrhiiSuOGdc2Zu8l+FfDGdL4ha8PbzZk7ynMPGpiNYQEwNz5lT9ugX9fC65pOrHlqWqMzf/DnQDJmmtz1hTBCFcW12tmtcaduwoSnRWrjSBKToaJk+Gq64CX9+qtecLIQxniytfbv+SB759gLTMNNr5t+PL278kPCS80scfPmxiQWVnbC7O6pFdlU588oevRwExwDzriiCEa6tLVfNHj5r3WpDs1KsHgwbB3XfDe+9BkyaOLqEQtYOzxJWM7Aye+PEJ5sSaqppbOt/C+8Pex6++X5XOU9C/pzo3QlaP7KpKjc+TwCXA3fnD2YUQ+Wpr1XxqqqnJKUh0EhPhmmtMsvPss9CundToCGEvzhBXElIS+GDzB3i5e/HP6H/yyGWPFC4/URUxMdVv+q7RGh+lVABwHdAd+AfwutZ6/cWOEUK4rqwsWL++KNHZuhX69DGdLD/+GHr0MMOthRC1V57OQ6FQStG1aVc+vOlDOgV1okdIj2qfc+NGeOKJ6h1b0zU+1wGfAScxa3I9VdEJlVJjgYeAbMALmKO1frOM/R4GHgVygAPAg1rrxKoUXghhm7w8iI8vSnTWrIGOHU0/nWnToF8/M5zUkSSmCFFz9iXvY+Q3I3mg5wPc3+N+AEZ0G2HTOfPybK/x2bbNpiKUcNHER2v9OfB5ZU+mlHIHOgBXaK3PKqVaAHuVUt9orY8W2y8KmAhEaK2TlFJTgfeAG6v+FoQQVXHwoElyli83j0aNTNPVAw/AJ59AQICjS1hEYooQFcvKgq+/hp9+MoMOPDxg8GAYOtT8Xhl5Oo+3Nr7FxGUTSc9OJzE9kXu634O7m+1VvPv2gZ8fNG1aveMd2cenQvlLVzxZbNOfQBZw4b/cHcAnWuuk/Of/BpKUUn5a69TiOyqlxgBjAFq3bm1lcYWoE5KT4ddfizolnz5t+ulER5sFMasyfXxNk5giRPm0hjfegFdfhS5dYPhwU0Obng4zZ8Lf/2764lU0d86uU7sYtXgUaw6tAUwNz+zBsy1JeqB6ExcW57BRXdX0L2CB1vrQBdvbAl8UPNFapyilUoFQYEvxHbXWc4G5AJGRkdKpWogKnD8Pv/1W1Hy1cydceaWp1Rk7FsLCwK0qi9U4F4kpQgBpaXD//XDsmLmx6XzBdDqPPmoSjvvuM3Nq/etf4OlZcp+s3CxeXvMyL61+iczcTIJ9g/nvkP9ya5dbLS2rrYmPU9f4FKeUmga0AMr6F1TAhQub5lC1tcOEEJgJzjZvLkp01q83yc3AgfDaa6ZzspeXo0tpO4kpQhiJiTBggJkr6/PPzbQSZend28wAPWIEDBkC334L3t5FrysUi7YvIjM3k5E9RvLata/h7+1veXk3bDB9BqvLJWp8lFL/BNoBt2qts8rY5QjQutj+PkBg/nYhxEVoDQkJRYnOL7+YtvPoaHjkEVi0yLSnO0Li2UTiEuOIS4xj2KXD6BDYwZLzSkwRwjh7Fm64wTRrvfBCxfv7+cHixfCXv5gmr1ffOoqXhydNfZvi6e7Je8PeIz07najQKLuU99w52LLF3IBVV0GNj9bWTJ9haeKjlHID3gT8gdu01jn5292Bn4CpWuvVwMfAHKXUv/Pb3x8GfivWPi+EKCYpySQ4BclOZqap0Rk61FRht2hR82XKycvhs62fseXEFuJOmmTnZPrJwtcb1mtoc+IjMUWIItnZcPvtEB4Ozz9f+eM8PODNuRl0H/c67f41g9u738zHN38MQO8WNrRBVcKGDaYG2sen+ufw8THN8+fOmdngbWV1jc8QYCxmduc1xSY5moaZ/DAAQGv9q1Lqv8BKpVQ2cAywbbycELXIuXOwenVRopOQAFdfbWpJHv67AAAgAElEQVR1/v5305GxJiYO1Fpz7MwxtiRuIS4xjtPnT/PyoJcBcFfu/O37v5GaWdR3uFG9RnQP7k5Y0zA6B1VuDZ8KSEwRIt9TT5mh4XPmVP77r7Xmi21f8NTypzh66QEA9h3KIDs3G093z4sea4XVq02TnK0Kan2cLvHRWi/BtLWXZckF+84CZll5fSFcVU4OxMYWJToxMdCzp6nV+e9/TVv9hR0T7WXj0Y18EvdJYS1OckZy4Wte7l68OOBFPN09UUrxt8v/hqebJ+Eh4XQP7k4bvzbVmtW1PBJThDB+/hkWLDDNRpWNBasPruYfP/+DDUc3ABDWNIzRLf/NjLEDSL3b9J2xt9WrTUdrWzVsaJr5rGDvUV1CiDJoDbt3FyU6K1aYxfuio+Ef/zC1Ow0aVHyedeuqvpaP1ppDqYcK++JsSdzC7V1vZ3iX4QDsSd7DrN+L8gf/+v50D+5OeHA4YcFh5OpcPDGR94UBlehkIISwyalTZgTXvHmm5qMyDqUeImpeFHk6j2DfYF4c8CIje47Ew82D/b/C3/4Gn31W+rjqxJTy5OSYpq758207D5jmrnPnbD8PSOIjRI05caLkAp9gEp3hw+GttyAkpGrnW7fO1AgVrN68fPnFA9WkZZNYc3gNcYlxpGWmlXitqW/TwsTnilZXMGPgDLoHd6d7cHdaNGxhaS2OEKJqxo6FO+80U1JczP6U/YQ2DkUpRWu/1jzc+2ECvAN4st+TNPAqupOaNs0sP/P113DzzUXHVzWmVOSPP6B168onaxfj62vmJ7KCJD5C2MmZM7BqVVGic+SIuYuKjoZJk6BDB9v66axYYQJUbi5kZWm+XJrMicarCvvj7Dy1ky3jthS24/92+LfCCcqCfIIIDw4vrMnp07JoyEWbxm146soKV6cR1ZCXZ+ZdSUgwNXq9ejm6RMLZffONWVbm00/L32fPn3uYvno6H8d9zLcjvuWGjjcAMGtw2S2/Pj7wwQemo/SgQaYZCS6MKea5LYmPVf17QGp8hHBK2dmmWrdgOYg//oDLLjOB5d13ISKi8tPHX0yezsNNuREVBR6eueRqTa5bFq8dv5HXvii5hvDuP3fTtWlXAJ7t/yy5ebmEh4QT7BsstTg1bONG8x9NZia0bQtHj0Lz5vDkk3DTTbLKvSjt7FnTJPXBB2Wvmbc9aTsz1szgs62fkafzcFfuxJ+ML0x8LuaKK+Daa03tzyuvmG1RUaamp6DGJyrKtvKvXg233WbbOQpIjY8QTkBrs3BeQfPVqlXQrp2pKn7mGTNbsi1DOHPzctmbvLdEX5y4xDhu7Hgj/xnyH/r2hXcXHeCeN96F0BU073KIsKbXFdbkhAWH0TGwY+H5BrWtoJ5c2IXWMHeu+UzMmQO33GK25+SYu/nJk81M2zNnSvIjSnrhBdPf75prSm7fdHwT01dP5+sdX6PReLh5MLLHSCZfNZm2/m0rff4ZM8xQ8wcfNIsT9+1r4pkVfXy0Nosez7JouIGPjyQ+QjjEkSNFNTrLlpm7sOhouPdec1dW3VESf577k8b1GxeujTNm8Rg+ifuEjJyMUvtuT9pe+Psd17emeZdougePJ8inBoZoiCr7+GN4/XXzn0DHojwUDw+49VYzA+/gwTBuHLz5JrhbszyScHHx8fDhh7B1a+nXftr3E1/t+Ip67vV4oOcD/KPfP7jE/5IqXyMkxAyRf/xx+O47s61vX9s7NYMpd8OG0KqV7ecCU+MjTV1C1IDUVLMOTkE/nVOnTI3OwIFmArG2lb+5AiA7N5vdf+4uVYtz9MxR4v8aX9gs5enmSUZOBi0btSQ8OLyoP05IOO0D2heez9Pdk2suuaa8ywkHO3TINGX9/HPJpKe4gADz2brxRjOi7/XXa7aMwvloDU88AU8/DX6B53n/j89QKEb2HAnAuMhxnD5/mscuf4xmDZvZdK1HH4V33oGlS82yFlb59lszwapVpKlLCDvJzDQjGwpqdOLjzd1PdLQZ+tmjR+UX+DyZfpKUjBQuDboUgL3Je+n6ZleyckuvuODj6cPhtMOFic8z/Z9h2jXT7LJujqgZeXkwcqT5Dyw8/OL7NmxoRtj07GlqgKz8D0O4nqVLYV/SUY53fotWb7zNqXOnCGkQwl1hd1HPox6N6zcunEjUVl5eppn1ySdNnx8r+iGCSXxmzLDmXCCdm4WwTF6eqZItqNH57Tfo1MkkOtOnQ79+ZXcqLC4zJ5Mdp3YU1uIUPBLTE7mq9VWsGrkKwEzuh6Ktf9vC2Y0L5sZp59+usJkLIKRBFce2C6czZw6cP29qcSojIMAk17feaiawbNnSvuUTzkdrzfJ9Kxnx1X85d9PXvLzWrLvbM6Qnj/d5HDdlnzV3b7wR3njDDMIYN8728x07Bnv3mv5JVvH1tW6hUkl8RJ1z4EBRorN8Ofj7m5FXo0ebIaMBAWUfp7Xm+NnjxCXG0TOkJ8ENggF44scneDPmzVL7N/RqSMN6DQufe7p7kjwxGR9PG3o8C5eQmWkS5yVLqtZn54orzEKz995rPpvS2bluWX1oNdGfDoDWZkmY4Z2H89jlj3FFqyvsOgpTKXjtNdPUdddd0KiRbedbvBiuv97a2eZ9fODwYWvOJYmPqPX+/LNkP50zZ0wfnehoM4yzTZvSx+Tm5bL5xOZSfXH+zDC3HJ/d8hl3ht0JQM9mPekY2LGwBqegL05ZyzdI0lM3fPopdOtmmq6qatIk0+z12Wdw993Wl83VZGWZ72xGhmkS9PNzdImskafzWHVwFbHHYhnfbzwAYX5X4nn0ah4YGMUzg8fQolHNrT7csydcd51pnrK1ierbb+Gee6wpVwHp4yPERWRkmCargkRn924ztHzQIHj4YfMfUkE+YpZvOMyWE1tIzkjmvh73ASYo9X2vL9l52SXO3bh+Y8KDw/H1Klopb1SvUYzqNarG3p9wbnl58OqrZoRWdbi7w3/+Y2b0HjrU9rtvV5SWZkbDLVli5oKpV880OaemmpmAr7zSzGYcEeHoklbdodRDfLTlIz7Y/AEJKQm4KTfu6HYHLRu1ZOarbvwlZyVz7nBM2aZPN/3RRo+u+sCNAmfPmr9ZWcth2EL6+AhRTG6umSywINHZsMHMTREdbUbI9OljOvABJKQk8M6mZSX64hSsLu5Xz497w+9FKYWnuydDLx2Kl7tXib44rRq1kon/xEUtXmxmZR4woPrn6NvXdDR98UXT8bSuyM42cx69+CL07w8PPGDWeSqo5cnJgbg4M0ru//4POnc2/1lfdpljy12Rc9nnWLhtIR/FfcSv+39FowFo2agl94ffTz33ehw5Am+/bRYhdZQWLUxn/PHjTa1jdfz0E1x+ufU1c1LjI+o0rWHfvqJE59dfzXwUAwfCY4/BVVfnkZx3gC0ntvBrYhzq+DVc1cbMm/7zvp8Z913J3ntBPkGFSzeczzmPt6c3AF/e/mWNvzfh+l59FSZOtL1/zssvm9rJBx80He5ru0OHzOSOjRvDDz+YEZQX8vAwy3z06mXmnvn4Y1MrNmoUPPusqRlyFlrrwpuk9Kx0Ri0eRU5eDvXc63FTp5u4v8f9RLeNLhzU8ODfYMwYx3dqf+IJ6NLFxNaK1gYry0cfmdpKq8kEhqLOOXkSfvmlKNnJzjaJzv/9n5kZdOmJd4k9FsvLJ+O4+82tnMk6U3js+ZzzhYlPn5Z9uDvs7hJ9cWT5BmGV7dvh4MGi2ZltERxsRoQ9/TQsWmT7+ZzZr7+aTrVPPmn+463M19HLyySFN9xgmr369jV9SxyZOOTm5bLiwAoWbFvA+iPr+WPsH7i7udPEtwkT+k2gTeM23N71dhrXb1ziuK1bTU3h7t0OKngx9eubjs5//7upSa9KB+U9e0w3A6ubuUAmMBR1QHq6aScuSHT2H8wlMnofbS6LY/C1W0hx28O8Wz8vTFj+8+1/2JJYVEcc0iDENE81DePadtcWbg8PCeeTWz6p8fcj6obPP4c77rBu9uVHHjGL2cbEQGSkNed0Nl9/bYZQf/aZuZmpqpAQ+N//4J//NMnP4sVl1xbZS05eDqsPrmbh9oV8ueNLTqafLHxtw9EN9GvVD4DpA6eXe46nnoIpU0xtlzO46SYzqeGMGaYmrbL+9S+ThNqyVE95pKlL1Do5OSa4FyQ6sbFw6VXx6Mv/RdZ9cWSfi+eXnAxIB3aYY16NfpXWfq0BeLj3w5zNOkt4iEl2mvg2cdybEXWS1uY/7y++sO6cPj6mxufpp03zT22zeLFJer7/3raV6pUytWOXXGL6Rs2fX3p9K3s4ePogke9EcurcqcJt7QPac0fXO7ij6x2EBYdVeI5ffoGdO6vfp8YelDJ9rXr2hGHDKpdIJiebz//27RXvWx3SuVm4PK1h244cPv9pNz9u2UJ8UhxereLo2TiKpyb+g6uvhrjkM/R7/z1IM8e0atSKsOCiIePFq4tHR4wu91rr1lmz6J4QF7Nxo6npseU/8LI8+KDp4LxypenwW1ssW2be23ffWfdvNnw4NGliVgRfuNDaf6/U86l8v/d7dv+5m2ivZ1mxAq7u34r6HvXpENCB4V2Gc1uX2+gR0qPSTed5eTBhArz0UtEADGfRsqWpRbvvPvPZrqh8b79tuh40s20FjXI5bY2PUsoTeAyYAdyjtZ5fxj4RwM9A8dbMhVrr16wsi3A+x4+bSdn+GfM823O/IbvxdvDIhFAgFDKBBh1g8GAz1W2YZxizrp9VuNJ4gHc5MwtexLp1pvo8K8t8cZcvl+TH1bhKXPnsM9NPxeruYl5eZl24p5+GVatqx6SGu3ebf6tFi6B3b2vP3b8/LFhgkp8vv4Srrqr+uRJSEliyewnf7vqWlQdXkpOXgzrSjxmfPkN2lsLLy42Fi7cw5Br/avUTnD/fLIFz223VL6M93Xuv+Td84gmYPbv8z15ioulr+eOP9iuLlTU+aK0tewAPAeOB1cCIcva5DninOuePMBUFuoQbbzTbvv22aNvbb5tto0cXbTt61Gxr1qzk8b16me0xMUXbnnvObHvuuaJtMTFmW69eJY9v1sxsP3q0aNvo0Wbb228Xbfv2W7PtxhtLHl/L3lNmTmbhe/rb4n/onq9fp32eDdHL/QZqDfqlvt/qy16+RzMVPfpGs9+P17TRz/zyjF64baHeH/+bpe/ppZe0dnc3m9zJ0i89lVrl96S1rvbfae1arV96KlWvpY9T/Z1seU9a6yp99oAY7aRxxaqYkpOjdUiI1jt3lv1vYOvfNfdB83fd+YTz/F2r+55SUrTu2FHrHVfZ97P6889aN22q9bafq/6ejj0xRnf+T2fNVHSvMebaMc3QV39wtR4ybpV2d8+zLKasWlX596R1zceU8/eZ9/TtjWW/p/Pnte7XT+tnn9V2/exlr4/Rbm5a5+XZHlMsrfHRWr8JoJS62BJ7QcC1SqkN+c+XAS9rrc9c5BjhZLTWZOVkUjB6dG/yXm6efws7T+2kYMq/WbH5E5C4QZuOrWCjmZV2cO8nSM8aS6+gGFjyd65tdy3XDnjB7HvsmKXljIoyd8xZGdl4kU1U30xLz38xRbVNDfFiOcuz7kAqm6rOFeLKihXQvDlceql9zl+wMO5338GlLlw3npdnanquvx46ZWBSWTsZNMjUUtx7L8RcZL/jZ0+wJPYdcvJy+Gv+Nr/6fuz6cxeN6jUiuu1lwDLCg7uz8v6VrLsUfp1nXUypSo2UI2JKvfwmrt9/h+2vmJF3BX33NWZS2KZN4bnngBfsVw4PD/PItCCEK23uliyllFoBzNFlV0l7A+e11lopFQD8B/DWWt9czrnGAGMAWrduHXHw4EHLyysu7nzOebYnbWfLCbNsQ9xJM/HfZc0v4+Xu37FsGfzwyxl+imwEWuGv29M1qDv9O4UR2cr0xwltHGq3BfYq4qg+PjNmwDPPmAkW3d3NpGyTJtXc9Z2FUipWa23zmCSr4oo9Ysrf/276lkyZYvOpypWdbRKrjz4yMxe7opkzzQislSutWwW8IrNmwVtvmWHWAQFwNussKw+s5Kd9P/FTwk/sPLUTgOYNm3Pk8SOFTVaxx2LpHtwdT/fS47ltjSnHjplJVmNiTIfsynJkTDlwAO6803RiHj/ezK79zTdw+jSsXWuWE7G3gAAzZD4oyLaYUuOJTxn7NgMOAw211hkX2zcyMlLHxFwsd6+7rPjPXWvNkbQjBHgHFC7JMOHnCby27jXydF6p/d2TuxL6XTyDBpm7kKCwP7isbccSyznUZdK/yKiJxKeMfSsVV6yKKZdeaoayW92x+ULvvGP6xdizL0UBq28Yfv/drAK+cWPZ6+PZ0/jxsGkTjHj1PR794a8llqJp6NWQgW0HMrj9YEb2GFlmomO1++83nYCruiaWo2OK1uYzMWuWmWdq6FAzes7bu2au36qVSbJat7YtpjjDqC534Dymb6uohup8GdKz0ok/GV+0dEN+Lc7p86dZcucSbuh4AwAN3JqCBv+czmQfDSPvWDi9WnRnaO9wht/Tkrb/Ln7WaqzIWIv17Wv+FjKizCFqLK4kJJi73pqYO+a++2DaNJNE2HOZBqv/g01LM7UFb71l/6QnNy+XLYlb+HX/r/xy4BeGtB/Cq68+zK23wjfvdSS3eS6Xt7ic6LbRXNf+Oi5vcXmNJDsF1qwxI9qqM+zb0TFFKbMUiy3LsdjCqtmb7Z74KKUCgW+B+7XWe5RSI4AftNanlVIemJEaH2tdRpWCqJQVK0yAys01P1esKPpC5Ok8Dp4+yImzJ+jbymxMz0rH72U/cnVuqXMFegfy26YU1s4zX85te8ZyTZ+HuXaAN9G3QvfuRf0NRMX69pWExx6cKa788IPps1IT3wsvLzP8efp008xgLxeLKdUxfrz5z/LWW60qYUlbE7eyLGEZKw6uYNXBVZw+f7rwtdy8XB6+7GE+/RSu6t+XyTef4sVR/vYpSAWys+Gvf4U33qj+4rN1OaZYNaS9Jmp8fIA2QMGSZd7AcqVUHqZv1EqgCnNDigsVduDN0nh45pES/C1/XfITcSfj2Jpolm9o2aglhx8/DICvly/tA9rj5e5F9+BwAnPCSE8IZ+9vYcSubMYvXRQDB8Irr0Dfvg2dav0bIfI5TVz5/nvTYbemPPCASXy2bDEradtDUUwxP6Oiqn+u7783i4rGxVlTtqzcLGKPxRIWHEYDrwYAvLjqRRZuX1i4T2jjUAaEDmBA6ACuucTMZOjrC0u+9aBPH3+6d3TMEPJ//cvMj2OPtazqAquGtNsl8dFaRxX7/TDQstjzD4AP7HHduiI3L5d9KfvYmriVbk270bfvpSxfDi/MW80POROZeXi96d2QL6RBCF2adCErNwsvdy/274fHvbbzy3I3fvzFdBiLjobHHoABHzvPtOlCFOeMcSUz03TU/fDDmrumt7eZV+Wll8x8NfZgVZNKSopZePPDD6tfw5F6PpX1R9az5tAa1hxew4YjG8jIyeC7u75jSIchANzU6SZ8PH0YEDqA/qH9CW0cWua5mjc3NWXXXmua3GpyVfcDB8zN5IYNtWMuJkdwpRofYaNVB1eVGFEVfzKec9km7X3pmpeYdNUk+vaFJ4OzSfw5k7DgewvXqQoPCcf9fFN++QUefcg0X6Wnw6BBbgwebGbmbNXKwW9Q2I3MWm1fq1dD164QGFiz1x03zqwCv2uX/YbQW9Gk8sQTZsmD6qzBdT7nPH3e7UNcYhyakoNwOgd1JjOnqPvWXWF3cVdY5ardevaE998361H99lvVRlVVV26u6Z81YQK0a2f/69mTI2OKU9f4iKrLycthz597iEuMIyElgUlXFY1RHPnNSBJSEkrs36JhC8JDwrnEv+hbO7DtQDaN3cS5c+YLvex/8NQy2LvXDH+NjjaLHnbrJnccdYGjR4DUBQX9e2pagwbwt7+ZJq+PPqr561fGTz+ZVdfj48vfJz0rndjjsaw7vI51R9Zx/OxxNowyUzHV96hPRk4GHm4eRDSP4MpWV3JF6yu4svWVBPkE2VS2oUPh0CEYPNjESnsnrq+/bn6OH2/f69ibo2OK1Pi4uAOnD/C/nf9jS6Kpydl2chuZuUV3MOMix+HvbTrgDe88nD8z/qR7cHdTk3PB8g25uWZRz+XLTY3Ohg1mhMnAgfDvf8Pll4NnzQ1aEE7C6g6qorSffjKLOTrCo49C+/bmxqZ9e8eUoTxnz5pVut9+2yRpxcUlxjEnZg7rj6wnLjGu1CCLY2eO0bxhcwCW3LmElo1a4u1p/Xjphx+Gw4dNjdSyZfYbkr1li6mdK1jLzZU5OqZIjY8LyMrNYtepXcQlxrElcQsRzSK4o9sdAOw6tYvHf3y8xP6hjUPpHtyd7k27lwgGr0S/UmI/rc1aNwUrmf/6q2m7jo6Gxx+Hq6+ufnu6qD2s7KAqSktONv02IiIcc30/P1ODO306fOBkvSaffhoioo6S0WYjk5f/TnhweGHsS0pP4q2YtwBwV+70DOnJ5S0up2+rvvRt2ZdmDYpWuewQ2MGu5XzpJTOnzi23mIkVrR7Icfo03HEHvPYahIZae25HcHRMkRofJ/X+H+/z64FfiUuMY0fSjhITZY3oNqLwy9+zWU/G9BpDeEg44cHhdGvaDb/6fuWdlsRE+OWXomQnJ8ckOrfcAv/9r/1WxBWuy9FzftR2a9ZAnz6OrU3929+gQwfYt8/xfUdWH1zNyoMr+Sl+I795bSQv9Dhf5ne+vrnTzYWxr3eL3rwy6BX6tOxDRLMIh0546uZm+vuMGAG3324mh7Tq75mTY5Ke664zy2bUBo6OKb6+UuPjEAXLNxRO/JcYx8LbFhY2Sy3evZj/7fwfAApFO/92hIeYjsZXtS5alKWpb1PeHvp2udc5e9asxFyQ6Bw+bFYdHjQI/vEP06FR+umIitTlOT/sbdUqU7vqSP7+8NBDpubivfdq5pp/nvuT2OOxxB6LLdEkP+v3WSzavsjs5At+9fyIbB5J7+a9GXBJ0Yx3jeo1YsIVE2qmsJXg4QGffWaGmN9+u5mBu35928/75JPm52suvLZaWRwZU3x84IwFq+9J4lMJ+1P2M/mXycQlxrHr1K5SbdJbT27l6jYmAo7qOYrB7QfTPbg73Zp2K5xnoiI5OaYNuCDR2bQJIiNNP525c83vNbW2jRCiYqtWmVGRjvb449Cxo1nDqIPFLUMZ2Rn8euBXNh3fxKbjm4g9Hsuh1EOFr0c2jyS6XTRganWObG/B+YTefP7PSDoGdXDY+nxV5eUFCxeaZq/oaDPkPSCgwsPKpLVZs+3nn03HaYnb1vH1hRMnbD+P/EmAc9nn2HZyW2FfnLjEODoFdWLOjXMAM7pgfrxZHshNudEpqFNhX5zwELMIZ4GCpR4qojXs2FGU6KxaZYZVDhwIkyebUVi+suSVEE7pzBnYtq1m54Epj7+/WST12WdNbUV15Ok8ElIS2HxiM9m52dwZdicA6dnp3PBZyZjm4+lDz5Ce9GrWi5AGIYXbe3rcxZ7Zd/HHH9CqSbXfjsPUqweffmqGnF9xhWn26tq1aufIyzOdzjdsMPM7yZxo1pLOzdWgtUajC+9CZv42k3f/eJc9f+4pNU9E0rmkwt9DGoTw0U0f0aVJF7o06VLtEQZHjxaNvFq2zNxlREfD3XebauomLhgshKiL1q0znZqtaBKxwmOPmdqezZsrt2bY3uS9rDywks0nNrM5cTNbTmzhTJZpQ2jn364w8QnyCWJ4l+G0bNiSiOYRRDSLoGNgR9zdSg5Pys01M0q/8IJrzwvm5mZq8Tp3Nl0LnnnGJDKVWY7kyBEzku3MGdMfUwaYWE86N1fgTOYZtp7cWqIvztaTW1l85+LCZqmzWWfZ/eduPNw86BTUyUz4lz9cPDy4aC54pRT3hN9T5TKkpZlOYAWJTmKiWa9m4EBzd9aunfTTEcIVOUP/nuIaNDDNK5Mnw9KlZpvWmsT0RLac2MKWxC0Mbj+YsOAwAObHz+eZX58pcY6QBiGFNTlaa1R+cFp420Iq8q9/mSRw3Dhr35ejPPigSXzuvRc++QQmTTITHpaVAKWnm7mUnn3WjLKbNMnc1ArrSY1PvjydR1J6EsENggEzvXmvub1KTfhXYOepnYWJzwM9H+DmzjfTOagz9TxsH8eYlQXr1xclOlu3mjl0oqPh44/NnZirz+MghDCJz9NPO7oUJY0erXn+fx9xx3txJHuZm72T6ScLX3dX7oWJz1Wtr2JEtxH0CO5BeEg4PUJ6lGi2qoo9e2DGDNO8U5sWMG7f3ozc++Yb8/6efNIkQ717mzl/kpNNDdvixaZpbPlys4izsJ86WeOTq3NZfXB1ib44W09uJbRxKNse2gaYEQNpmWl4uXvROaiz6YNTrC9OU9+mhedr07gNbWhT7fLk5ZlZSQsSnTVrzGirgQNNle8VV9hvUiwhhGOcP28GHzhiZEuezuPg6YNsPbmVrYlbOXH2BLOHzAagXj1F3oApfHHkaOH+jeo1ontwd3oE9yCiedGEQ/1D+9M/tL/N5Slo4nrmGccPp7cHNze4+WZT2xMXZ25sN24079vf30xn8M9/QnCwo0taN9TJGp/Nxzdz9Yel65fTs9LJycvBw80DpRQbR2+kRcMWxPzuyYoV0C8Y+ra1pgwHDxb101m+3LTjDhxoqkY/+aTikQCydpIQru3DD83kgfHxNfMdjjkWw9zYuWw9uZX4k/GczTpb4vWbGrzC77/5EBUF469+mHffy+Xa7uE89UAYbfzaFDZZ2cMrr5h5bx591G6XcApKQXi4eYwd6+jS1F11ssZHKUVE84jCGpywpmF0D+5OoE/JhVZCG4datqZISoqZGbmgViclxcylM3CgmTujKrNxOnqdEyGEbdatM5MG5uSY77IV3+HU86lsS9pG/Ml44k/Gsy1pG3d0vYMxEWMAOH7mOO9seqdw/2DfYLoHdyesaRjeJ65h6PXexWLKJHSqAkcAABLfSURBVIY9afoSvniPffsQxsSYvj2xsbWriUs4rzo5gWHPZj3ZOHpjpfat7poi58/D2rVFic7OnabJauBAM89DWFj1v+SOXudECGGbFSsgO38y9qp+h9Oz0kvMUjzym5EsS1jGkbQjpfZt1ahVYeJzWYvLmHX9LLo17Ua3pt1o4ls0/HPGjNIxZdIkM1L0qafsN6lherq5xuzZrj2KS7gWH5+6WOND5W9fKrumSF6e6aBWkOisW2fmboiOhpkzTVArr4d+VZutHL3OiauRZkHhbKKiTC2Km1v53+EzmWfYcWoH25O2s+3kNrYlmcfh1MOkTUornNT0xNkTHEk7Qj33enRp0sVMeJoYzbk9l3FLg6I28+AGwTx6edltSeXFlBdeMM0y330HN1RuarFK0xpGj4Z+/cySDK5EYoprs6rGR2mtK97LSURGRuqYmJhK71/ehzwhoSjR+eUXM3/OoEHmERVl2u8rc+7qNFvJF69ypFmw9lBKxWqtIx1djrJUNaacOGFmSX7qKejd7ywN2m3F18u3cBLTn/f9zLWfXFvmsV7uXsSMjikcWRV/Mp567vVo698Wdzd3y2PKypVw551mdXAr5wh74w0zSvW331xr8IbEFNeXlWWSn5wc22KKS9X4VFXBmiKnTsEXXxQlO+fPmy/ADTfA669Dy5ZVP3d1m61k7aTKkWZB4Ux+P/o7m45vYsmG7Xg+uJ3/1t/BsZXHYCXcG34v826aB0D7gPZ4uXvRKaiTmfA0qAtdm3ala5OutAtoh4dbUcjt1rRbiWtYHVP694e//MV0xv3yS2v6+6xYAS+/bIauu1LSAxJTagOr5keyNPFRSnkCjwEzgHu01vPL2EcBLwC3A7nAJmCs1tqCljvj3DkztHzZMrNeSkKCmWxs0CAztXvnzrYHAWm2si/59xUFaiKu5Ok8DqceZsepHexI2sGOUzuYGT0Tv/qm+vf5lc+zdE/+zICNgTNmKZtOQZ0I9QstPE9o41DSJ6eXSHAqyx6f+RdfNP+5v/KKqaWyxebNZhHPzz6r2qAOZyExpXbw8TGTA9vC6hqf0YAG1l9kn/uAIUAPrXWGUuoD4BXgkepeNDfXjDAoqNHZuNFMFhgdDf/5j1lPx9OzumcvW9++pqpUmq3sQ/59RTF2iyv7T+8nYm4EO0/t5Fx2yc4DD/Z8kMtbXg7AkPZDaOrblNVfdeae67tyz/WdaePXptTSDUopPFT1wqo9PvP16sGSJeZcbdqYpq/q2LULhgyBN980N5CuSGJK7eDra3viY5c+PkqpFcCccu7Mvge+1lrPzX/eA1iutQ68cN8LFbTHaw27dxclOitWmJEFAweaR//+0LChxW9KCFEtVvXxsUdcUc2VJn9elmDfYDo36UznoM50CurErZ1vpUWjFoX75uaaeboSEiCwwmjlXOLj4ZprTG1NVROXrVtNt4Dnn4eRI+1TPiEqq3172LfP9fr4tAX2FXu+DwhQSvlprVMv3FkpNQYYAxAY2JGRI02yAybJGT4c3noLQqo327qo5aQzeZ1R6bhSIqa0DOTbB76lU1AnArwvPvvozp3QtKnrJT0A3bqZ1cZvu80kMJVdU+vLL82+//433HWXfcvoKiSmOJavb8X7VMQRiY/CtMEXyMn/WebsOPl3cHMB/P0jde/epq26Y0dZ4FNcnIziqFMqHVeKx5TIyEjdr1W/Sl1gwwaz9p6ruvpqMxJr2DAz6eD06SaRK8vx4yZBWroUfvjBrEQvJKY4AysSH0fMt3kEaF3seWvgLHC6ogPbtYOHHjLrYUnSIypS1igOUWtVO65U1u+/m/6Crqx9e7PelKcndOoEjz0GP/5oug4cPAhffWVmpu7a1az4/scfkvQUJzHF8Xx8bD+H3RMfpVSgUuo3pVSH/E0fA6OUUgUD0x4FvtKuNKGQcAkFozjc3WUUR23jiLgSGwuRTjkbUdU0amQ6KW/bZu6eZ86E6683C26+/75pyouLM4tvumKznj1JTHE8V2nq8gHaAAXTAn4EtAd+V0rlANuxYUSXsE5ta7uWURy1Wo3Glaws2L7djBatLZo1M+sN2pPEFGE1K2p87JL4aK2jiv1+GGhZ7HkuMCX/USu54pe9trZdy4SRtYcj48q2bXDJJdYE3eqQmOI8JKY4lqvU+NQprvpll1lNhSjfpk3Qq5djri0xRYgiLtHHp65x1c5v0nYtRPliYx3XyVdiihBFpMbHCbnqtOjSdi1E+WJjqz/rsa0kpghRxIoan1q9OrujuGJ7vBD24uqrs2dnQ+PGkJhohng7gsQUIYzffoMrr3S9mZtrPen8JkTtsWMHtG7tuKQHJKYIUeCKK2w/h/TxEUKIi4iNdVzHZiGE9STxEUKIi9i0SWYvFqI2kcRHCCEuwpEjuoQQ1pPERwghypGba5ZvqE0zNgtR10niI4QQ5di9G0JCwM+v4n2FEK5BEh8hhCjH5s3Qs6ejSyGEsJIkPkIIUY7Nm6WZS4jaRhIfIYQohyQ+QtQ+kvi4sHXrYMYM81MIYS2t4Y8/6lbiIzFF1AUyc7OLctUVm4VwFcePm+SneXNHl6RmSEwRdYXU+LgoV12xWQhXUdCxWSlHl6RmSEwRdYUkPi6qYMVmd3fXWrFZCFdR1/r3SEwRdYU0dbmovn1NVbSs2CyEfWzeDDfd5OhS1ByJKaKukMTHhcmKzULYz+bNMHWqo0tRsySmiLrA0qYupVR/pdQmpVScUipGKdWnjH0ilFLJSqn1xR7jrSyHEKL2cERcOXMGjh2DSy+1rexCCOdjWY2PUqrx/7d39zFy1VUYx78PLZVWoUipBLFL29iAkhZEoDaNcbWRhgbUhAA1mGi0FqWiiRANCYLhxaohQSJGrAoJ9Q/5wzWNoFFT2EbrCpay2wCKTROoxAq16KLY9z3+cW91GHa32537Ovf5JJudufPbnWdPZ0/P3jszF+gDLo2IAUm9wAZJ8yLiPy1LTwV+EhGfzuq+zaw7ldVXtm2Dc85Jnu9iZt0lyz0+y4FnI2IAICL6gV3AsrZ1pwIXS3os/bhD0oljfVNJq9O/8rbs3r07w7hmVgOZ95WJ9JTBQTj33Mx+BjOrkCwHn/nAjrZtO9LtrfqAuRGxGLgEmAc8MNY3jYh1EXFBRFwwe/bsDOOaWQ1k3lcm0lOa9oousybJcvARcLht26H2+4iIvRER6eWXgeuByyRNzzCLmXWHUvrK0JAHH7NuleXg8wLQ07atJ90+ninAPmB/hlnMrDsU3lcOHYKnn4aFC4/1K82sDrIcfDYAiyQtBJB0EXA28IikzZIWpNtXpk9YRNJUYC2wPiJGMsxiZt2h8L6yfTucfjqcOOYzD82szjJ7VVdEDEu6ArhPUpDsjl4BzADOBGamS6cDGyWNAAFsAm7OKoeZdY8y+ooPc5l1t0zfwDAiHgUuHOWmt7WsuR+4P8v7NbPuVXRfGRryK7rMupnP1WVm1sIvZTfrbh58zMxa+FCXWXfz4GNmlnrpJdi3D+bMKTuJmeXFg4+ZWWpoCBYtAqnsJGaWl1oPPgMDsHZt8tnMrFMbNsDBg+4pZt0s01d1FWlgAJYtgwMHYNo02LgRliwpO5WZ1dXAANx7L4yMJL3FPcWsO9V2j09/fzL0HD6cfO7vLzuRmdVZf3/STyLcU8y6WW0Hn97eZE/PlCnJ597eshOZWZ0d2bvjnmLW3Wp7qGvJkmRXdH9/0qC8S9rMOnHSSTB/Pqxa5Z5i1s1qO/hA0pjcnMwsC4ODsHQp3Hhj2UnMLE+1PdRlZpalwUG/caFZE3jwMTPDg49ZU3jwMbPGGxnxyUnNmsKDj5k13nPPwcyZMGtW2UnMLG8efMys8XyYy6w5PPiYWeN58DFrDg8+ZtZ4HnzMmsODj5k1ngcfs+bIdPCR9D5JWyVtk7RF0ntGWSNJt0l6VtIzkn4k6Y1Z5jCz7pF3X9mzB4aHYe7czKObWQVlNvhIOhnoA9ZExCLgBmCDpBltSz8OrADOi4h3AgeBb2SVw8y6RxF9ZXAweRn7cd7/bdYIWf6qLweejYgBgIjoB3YBy9rWXQV8LyL2ptfvBj6aYQ4z6x6595WtW+H887MJa2bVl+W5uuYDO9q27Ui3j7duB3CKpJkRMdz+TSWtBlanV/dLeiqjvFk7Ffh72SHG4XyTV+VsUP18Z3XwtZn3lfae8sQTSU+5++4OUuanyv+2Vc4GzteJKmeDznpKpoOPgMNt2w7x+r1K7esOpZ9H3fsUEeuAdQCStkTEBZ1HzV6Vs4HzdaLK2aAe+Tr5cjLuK3XpKVDtfFXOBs7XiSpng457SqaHul4Aetq29aTbx1vXA/wb+GeGWcysO7ivmFmmshx8NgCLJC0EkHQRcDbwiKTNkhak69YDqyRNS69fB/RFRGSYxcy6g/uKmWUqs0NdETEs6QrgPklBsqt5BTADOBOYmS59AHg78LikQ8AzwOcmeDfrssqbgypnA+frRJWzQRfnK6CvdG3tClDlbOB8nahyNugwn/wHkZmZmTWF37nCzMzMGsODj5mZmTWGBx8zMzNrjEoNPlU/19cE871b0suSft/ycX1B+Y6XdIOkg5JWjrGmlPpNMFuZtbtG0lD677pN0rVjrFsj6U+SnpL0kKTTqpJP0ixJr7bV786C8t2W5ns8/R357BjrCq9flfuKe0oh+Uqpn3tKx/ny6ykRUYkP4GRgD7Akvd4LvAjMaFv3CeAJYHp6/X7gngrlWw58v6QaXgtcD/wGWDnGmrLqN5FspdQOmALcCbwpvX4GsBc4o21dL7ATmJ1e/yrwUIXynQX8uqTH3heB49PLs0neQ2de2fWrcl9xTyksX+H1c0/JJGNuPaXwH2acH/Iq4Hdt2waBy9q2/QJY3XL9PGBPhfJdDTwPPJZ+3AGcWHAt+8dpAqXUb4LZSq9dmuMEYBjoadv+XeBrLdffTPLy6pkVybeU5D/OAeAPwLeB00qo34XA39rrUkb9qtxX3FMKy1eF+rmndJYv055SpUNdHZ+TJ8dso93vkftuz9cHzI2IxcAlwDyS9xipirLqNxFVqd23gAcjYmfb9tfULiL+QdIs5hYXDRg73xbgrRGxhOQvoQPAzyWpiFCSFkjaDvwS+Fi8/tx7ZdSvyn3FPaUYVaife8ok5NVTsjxXV6dyOddXhiaUL/5/dmgi4uX0WPJfJE1vva1EZdXvqKpQO0m3k+z2vXy0m5nYYzQ34+WLiP0tl1+V9CXgFZI39tued7aI2A4skPQu4GFJH4yIp1uWlFG/KvcV95QClF0/95TJy6unVOKBmar6OXkmmq/dFGAfsP8o64pSp3MaFVq79El75wCXR8SBUZa8pnaSZgCzOPpjoKh8r/sSkt/xV3IN1iYiniTZNf7+tpvKqF+V+4p7SjkKq597Sjay7ilVGnyqfk6eCeWTtFLSyenlqcBaYH1EjOScb1Tps/KrUL+jZiurdpKOk3QvMAe44kgDkDRF0kZJ702XrgeubtmFvwbYHBG7q5BP0ocknZ5eFnAr0B8RL+acb6GkK4/s/pZ0BrAYeLIC9atyX3FPKSBfGfVzT+k4X649pTKHuqKYc30VkW86sFHSCBDAJuDmvPONoxL1m2C2smq3AriG5Hj2b1sOX99O8nyAUwAi4lFJ3wE2SToI/BUY9SW0ZeQjqVmfpOOBEWAbyRM78/Y88Bngy2ldpgFfIXmlT6n1q3JfcU/JTRXq557SmVx7is/VZWZmZo1RpUNdZmZmZrny4GNmZmaN4cHHzMzMGsODj5mZmTWGBx8zMzNrDA8+ZmZm1hgefMzMzKwxPPiYmZlZY3jwMTMzs8bw4GNmZmaN4cHHzMzMGsODjxVC0nRJL0jaKekNbbf9QNJhSUWcnM/MuoB7ik2WBx8rRETsBW4B5gDXHtkuaS3wKeC6iPhxSfHMrGbcU2yyfHZ2K4ykKcAQ8BZgPrAKuAu4JSJuLTObmdWPe4pNhgcfK5SkS4GfARuBDwD3RMTny01lZnXlnmLHyoe6rFAR8RCwFVgGPAh8oX2NpDWSHpe0T1J/wRHNrEbcU+xYTS07gDWLpCuB89Kr/4rRdznuAr4OXAgsKSqbmdWPe4odKw8+VhhJFwPrgZ8CB4FPSrorIv7Yui4i+tL1PcWnNLO6cE+xyfChLiuEpMVAH7AZuBq4CRgB1paZy8zqyT3FJsuDj+VO0juAh4E/Ax+JiP0RsQP4IfBhSUtLDWhmteKeYp3w4GO5Snct/woYBi6JiFdabr4V2At8s4xsZlY/7inWKT/Hx3IVETtJ3mBstNt2ATOKTWRmdeaeYp3y4GOVI2kqyWNzKnCcpBOAkYg4UG4yM6sj9xRr5cHHqugmkreiP2IvsAnoLSWNmdWde4r9j9+52czMzBrDT242MzOzxvDgY2ZmZo3hwcfMzMwaw4OPmZmZNYYHHzMzM2sMDz5mZmbWGB58zMzMrDH+C0VhRsqleKE5AAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.linear_model import Lasso\n", "\n", "plt.figure(figsize=(8,4))\n", "plt.subplot(121)\n", "plot_model(Lasso, polynomial=False, alphas=(0, 0.1, 1), random_state=42)\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18)\n", "plt.subplot(122)\n", "plot_model(Lasso, polynomial=True, alphas=(0, 10**-7, 1), tol=1, random_state=42)\n", "\n", "save_fig(\"lasso_regression_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([1.53788174])" ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.linear_model import Lasso\n", "lasso_reg = Lasso(alpha=0.1)\n", "lasso_reg.fit(X, y)\n", "lasso_reg.predict([[1.5]])" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([1.54333232])" ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.linear_model import ElasticNet\n", "elastic_net = ElasticNet(alpha=0.1, l1_ratio=0.5, random_state=42)\n", "elastic_net.fit(X, y)\n", "elastic_net.predict([[1.5]])" ] }, { "cell_type": "code", "execution_count": 45, "metadata": { "scrolled": false }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "np.random.seed(42)\n", "m = 100\n", "X = 6 * np.random.rand(m, 1) - 3\n", "y = 2 + X + 0.5 * X**2 + np.random.randn(m, 1)\n", "\n", "X_train, X_val, y_train, y_val = train_test_split(X[:50], y[:50].ravel(), test_size=0.5, random_state=10)\n", "\n", "poly_scaler = Pipeline([\n", " (\"poly_features\", PolynomialFeatures(degree=90, include_bias=False)),\n", " (\"std_scaler\", StandardScaler()),\n", " ])\n", "\n", "X_train_poly_scaled = poly_scaler.fit_transform(X_train)\n", "X_val_poly_scaled = poly_scaler.transform(X_val)\n", "\n", "sgd_reg = SGDRegressor(max_iter=1,\n", " penalty=None,\n", " eta0=0.0005,\n", " warm_start=True,\n", " learning_rate=\"constant\",\n", " random_state=42)\n", "\n", "n_epochs = 500\n", "train_errors, val_errors = [], []\n", "for epoch in range(n_epochs):\n", " sgd_reg.fit(X_train_poly_scaled, y_train)\n", " y_train_predict = sgd_reg.predict(X_train_poly_scaled)\n", " y_val_predict = sgd_reg.predict(X_val_poly_scaled)\n", " train_errors.append(mean_squared_error(y_train, y_train_predict))\n", " val_errors.append(mean_squared_error(y_val, y_val_predict))\n", "\n", "best_epoch = np.argmin(val_errors)\n", "best_val_rmse = np.sqrt(val_errors[best_epoch])\n", "\n", "plt.annotate('최선의 모델',\n", " xy=(best_epoch, best_val_rmse),\n", " xytext=(best_epoch, best_val_rmse + 1),\n", " ha=\"center\",\n", " arrowprops=dict(facecolor='black', shrink=0.05),\n", " fontsize=16,\n", " )\n", "\n", "best_val_rmse -= 0.03 # just to make the graph look better\n", "plt.plot([0, n_epochs], [best_val_rmse, best_val_rmse], \"k:\", linewidth=2)\n", "plt.plot(np.sqrt(val_errors), \"b-\", linewidth=3, label=\"검증 세트\")\n", "plt.plot(np.sqrt(train_errors), \"r--\", linewidth=2, label=\"훈련 세트\")\n", "plt.legend(loc=\"upper right\", fontsize=14)\n", "plt.xlabel(\"에포크\", fontsize=14)\n", "plt.ylabel(\"RMSE\", fontsize=14)\n", "save_fig(\"early_stopping_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n", "/home/haesun/anaconda3/envs/handson-ml/lib/python3.7/site-packages/sklearn/linear_model/stochastic_gradient.py:1185: ConvergenceWarning: Maximum number of iteration reached before convergence. Consider increasing max_iter to improve the fit.\n", " ConvergenceWarning)\n" ] } ], "source": [ "from sklearn.base import clone\n", "sgd_reg = SGDRegressor(max_iter=1, warm_start=True, penalty=None,\n", " learning_rate=\"constant\", eta0=0.0005, random_state=42)\n", "\n", "minimum_val_error = float(\"inf\")\n", "best_epoch = None\n", "best_model = None\n", "for epoch in range(1000):\n", " sgd_reg.fit(X_train_poly_scaled, y_train) # 이어서 학습합니다\n", " y_val_predict = sgd_reg.predict(X_val_poly_scaled)\n", " val_error = mean_squared_error(y_val, y_val_predict)\n", " if val_error < minimum_val_error:\n", " minimum_val_error = val_error\n", " best_epoch = epoch\n", " best_model = clone(sgd_reg)" ] }, { "cell_type": "code", "execution_count": 47, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(239,\n", " SGDRegressor(alpha=0.0001, average=False, early_stopping=False, epsilon=0.1,\n", " eta0=0.0005, fit_intercept=True, l1_ratio=0.15,\n", " learning_rate='constant', loss='squared_loss', max_iter=1,\n", " n_iter_no_change=5, penalty=None, power_t=0.25, random_state=42,\n", " shuffle=True, tol=0.001, validation_fraction=0.1, verbose=0,\n", " warm_start=True))" ] }, "execution_count": 47, "metadata": {}, "output_type": "execute_result" } ], "source": [ "best_epoch, best_model" ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "import numpy as np" ] }, { "cell_type": "code", "execution_count": 49, "metadata": {}, "outputs": [], "source": [ "t1a, t1b, t2a, t2b = -1, 3, -1.5, 1.5\n", "\n", "# 편향은 무시\n", "t1s = np.linspace(t1a, t1b, 500)\n", "t2s = np.linspace(t2a, t2b, 500)\n", "t1, t2 = np.meshgrid(t1s, t2s)\n", "T = np.c_[t1.ravel(), t2.ravel()]\n", "Xr = np.array([[-1, 1], [-0.3, -1], [1, 0.1]])\n", "yr = 2 * Xr[:, :1] + 0.5 * Xr[:, 1:]\n", "\n", "J = (1/len(Xr) * np.sum((T.dot(Xr.T) - yr.T)**2, axis=1)).reshape(t1.shape)\n", "\n", "N1 = np.linalg.norm(T, ord=1, axis=1).reshape(t1.shape)\n", "N2 = np.linalg.norm(T, ord=2, axis=1).reshape(t1.shape)\n", "\n", "t_min_idx = np.unravel_index(np.argmin(J), J.shape)\n", "t1_min, t2_min = t1[t_min_idx], t2[t_min_idx]\n", "\n", "t_init = np.array([[0.25], [-1]])" ] }, { "cell_type": "code", "execution_count": 50, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA1gAAAI4CAYAAAB3HEhGAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAIABJREFUeJzsnXeYJFd5r99TncP0TE/YOJu1STmDJBMshBAyyWSDwBgQcIkiCekCNsEEEUS0TTCIHCyLi8EggpAECggFJO0q7K60OU3unKvq3D+qe7d3dkKH6u7q2fM+Tz+7HerUme6q+up3viSklCgUCoVCoVAoFAqFonm0Tk9AoVAoFAqFQqFQKBYKSmApFAqFQqFQKBQKhU0ogaVQKBQKhUKhUCgUNqEElkKhUCgUCoVCoVDYhBJYCoVCoVAoFAqFQmETSmApFAqFQqFQKBQKhU0ogaVQKBQKhUKhUCgUNqEElkKhUCgUCoVCoVDYhBJYCoViToQQtwshvtPpeSgUCoVCoVB0A0pgKRQ2I4T4ZyHEViHEyzs9F4VCoVAoZkII8R0hxCOdnodCsRBRAkuhsBEhxOXAm4C7gEs7PJ2WIIR4nRBCdnoeCoVCoVAoFE5ECSyFwl6uBL4J9ACHOjwXhUKhUCgUCkWbUQJLobAJIYQPeDbwC+BC4O4Gx7ldCPFLIcRzhBCPCCHyQojHhBCvmva5Zwoh7hBCZIUQ40KIbwohItPG+YkQ4hIhxL1CiJwQ4nEhxKVVn1krhPhq+fWsEGKnEOLdc8xtD3BD+f+y/HimEOJXQoitM3z+RUIIUwixopHvQqFQKBTtRwjhEkK8SghxmxBiVAgRE0LcLIQ4adrnPiSE2COEyAghHhZCvEMI4S6/d6oQ4hYhREIIcVgI8VMhxKlV264RQvyXECIuhEgLIX4jhDij3X+rQtEKlMBSKOzjqYAJFIF+4I9NjHUm8B3gX4HnADuAHwghngEghLgM+D3wKFYo4tuwxN3Ppo1zLvBTLK/as4DHgJ8IIfzl9z8KLAeuBp4G/AC4Xgjxd7PM61LgQ+X/n1Z+3Fee66lCiJOnff6FwN1Syv21/+kKhUKh6DBrgOuBXwPPB15Wfu3HlQ8IIf4R+Bfgn7Hsx5eAtwPD5Y/8AjCwbNirgBjw7vK2i7EWIZcArwZeBOSBO4QQm1v7pykUrcfd6QkoFAuIi4AHgCuAH0spc02MNQxcLKW8DUAIcReWyLpaCHEH8NXyPt5S2UAIMQ7cKoQ4X0p5b/nldcBzpZS/KX9mJ3AYy+D9D/BBKeW+qv0+IIR4I3Ax8Kvpk5JS7hBCHCz//0hytBDiF1jG8xVYBhchhAY8D0vEKRQKhaJ7OAScIqWcrLwghLge+LoQIiKlTALnAfullN8rf+SvQogfA6YQYhBLkH1ESnlP+f3bhBDR8v8/gCW+LpVS5svj34q1YPcxLEGnUHQtyoOlUNjHKcBu4PXAFyovCiH+rxBiezlU7kU1jvV4RVwBSCl14L+wvGRnYgmnf5+2zZ1YHrTzq17bWhFX5XFGsYTQqvLzfeU59gshniaEeBPWdSFKHUgpC1iesldUvXxReZwb6xlLoVAoFJ1FSpmVUk6WQwU3CyFejBX6DtBX/vcBYI0Q4l1CCFd5u1zZHkwCe4F3CiHWV40bK//3WcD/VsRV+T0TuAm4rLxAp1B0LeoAVijsYxnwt8DvpJTbq17/A3A58Kc6xto+w2t7sUIPTys/v1MIoVceQA7rnO6v2ubRGcZJURZQQoizhBB3AxNY4RxvArw0dm34LrBRCHFm+fkLgdvLok6hUCgUXYIQwi2E+AQwCmwFPgecXn67Yh++C/wb1oLiY0KI11SEkZRSAi8BFgGPCiG+JYRYXbWLVVg2bTp7gDAwZOffo1C0GyWwFAr76MMyCtdWvyil/IuUcmedYxVmeM2PFVJRWfF7DpY3q/pxGvC1ecYBEOUQjluBNLBZShmVUp6LZUzrphwGsoOjXqwXAj9pZCyFQqFQdJSPAO8B3gf0SCnXlp8fQUppSinfjhVZ8QTwPeBmIYSn/P4DwCbgw1jh4o8KIZ5bNYR3hv1WXmsmxF6h6DhKYCkU9qEBX5JSHrBhrN4ZXluDFRe/p/y8IKV8ZIbHWI37eCGWKHz1NI/b8oZnba1ovqJcKWoVxxfdUCgUCoXz+Ufg21LK71TlE89oG6SU90opnwe8GKsQ0sur3stKKa8DTgIeBL5cfmsvsHKG4VYCU+UcL4Wia1ECS6GwgXI1pdOA1eWY9S8LITY0MeRThRADVeP7sIzWz7Hi3g9i9dyaPo9QJRa+BnqxPGJHDJkQ4plYhnAu9PJnZ7p+fB9LWP0zVqjkVI1zUSgUCoVz6MXK163mDdVPhBD9097/FZZN6RdC9FXbCCllCriNoyHsPwNeKIQIVI2nAa8EbrHlL1AoOoiqIqhQNIkQIohV8eh5wMeBR4BvSil3NDFsGPitEOJfgARwTfm1L0op9XKvqp8IIQzgR1ihgOcAV2GFCsZr2MedWIssXxNCfB04C6sE+8Q821Xi5q8SQhwGSlLK/waQUu4XQtwGvBR4bc1/rUKhUCg6ga+6N1UVDwBvEkI8iCW03olVXKmaPwshbscqZJTCyuEtAr/FKrt+tRDii+Wx1mAtCv68vO1XgDdj2blPY9mwdwArsHK3FIquRgkshaJJpJRZLHEFVs8QO/gtVo+QbwMR4H7gWVLKXeV93iiESGPFtv8SKy9rN1bfkkSN875XCPEWrHK5rwQewvKSXT/Ppndi9b36F6zVyumNiW/EqiD4P7XMQ6FQKBQd4yRmzrt9LdbC4bex7Mv3sELAq8O+3we8C/ghEAS2AM8rt/OYxCqK8R6ssL9JrB5aHwKQUk4JIZ4GfL78uhu4B3iGlPJxm/9GhaLtCKvQi0KhaBVCiA8Bb8EqgJHCMlbnSilHZvn87UC6HNPedQghvgn0SSlVHxOFQqFQKBQnHEpgKRQOo5sFlhAijJUf9kop5c2dno9CoVAoFApFu+maIhdCCI8Q4n1CiJIQ4pWzfOYcIcSUEOKeqsd72z1XheJEQwixXAhxPlYIyaNYIY4KRdeibI5CoVAoGqWbcrCuBCRWjO5sDAI3SSmPq66mUChayj9g5WTdCbxMSml2eD4KRbMom6NQKBSKhui6EMFy+NTXpJTHNTAVQrwa+CRQyW25Bfh0uTzo9M++CaviDT6/75zFy5cjkQhEU/OTkiZHsCz6bGPkDZNUyWDI55lzR5Wftdm52DGGbkhGDh9CAn2Diwn73E2NKSUIO/6w6vFmeS9tGBSlSa/bjauOWVfOK2HnRI/dwaxvFYVkkhIBNPpkd6yhSCRxbwGf4SJoeGrZwAFISoE8Jga+fBBkdwQEaJ4crkAKPduH1Gfq8+kAZjht9u7bPSGlHGr7VBxsc5q1N3PZmplwC4FevvbYYWOatgPzfGZk5BACWLxk2ZzjgL02Zcbx69jG5RIYRv0XuZbbnXk4Mu8uuq90uTUMvbvWA11ugaF3z3cMHfyemzwX9u7d1bDd6Y67r9r5GfAjKaUs92f4Klblm7+f/kEp5TeAbwCsOmmd9H7i9QBE9WjDO5/IZAFYLHsaHyNtjbGE0DGvSylJl4rkdJ0hTeONa5Zw0+HZi8VNprMsIdjwPAAmk+W/x934OIWSTipbIPGLf8Pn0Vh5+f+xxtQCuBo48KfimfKc/A3PqZpYzBpvyBeY8f1Ej8nhNSZmUbJqn4tQdv6b6NhkGoBBX2tuXuPl8fsDM4+fD8NfX2LNc9X9JssebfxGJjZh3Sf2B1t7qTDdEtd7wuwIxwk9Llj8MxeuwvGzjo0f7T3Z1+I51cLZH4myb/VWzEkXiS8MYhyoQRx2mP51CZ7z6UeQWpq/fPVUdt/WTF9p+4lndQCiQ5FjXt+772N7Z/p8h+mYzWnW3kyks8fZmfm4YrifHxyYYvKInWrMNjRrW6YS5f27Z75uV0j9v88zGPGw/lnvnHkcm+3JdOazL7Px3MsWc/NvRuvbV4vtTi086wVLuemGJ4DZ7ZPTeParVvP7H+2pa5uKXZyNVtvLS16/kVu+vb2mz06Vr6czER1s/F61Xhr5nptlKlcEoG8g3PAYe/e+t2G70/k7FBup6jZeKQH6XmC/ECJQ/d5x25WXw50qrkwpSRTylEyTgNtN2OMl4Jq9l6wTxJWUkmyhRK5YAsAjNAaCHrxoFDEZNXP0Cg8hrfYb0naLK4DelMYlQ4N8f/8oO9caLDskGZjSZl117rS4AvCn4drSMN84uJ+952pk+iXr7pa4jPr21S5xBaDpgosnljP1pyQTzzE5cKXO0h+78U5a37PThFWFgbGVbPnBCJGrJol+ZIzk1/op3l/fzVS7mdrZy+Rdr8Nc9AMueu8W+tcl+eu3NyJNZ3jgKr9v5TefLrScRKM2p0InxVWzOF1czTtOC8VVxbZA/eKq7n05QFhV7JJbE10jrGphNiHVDptoF3PNdWqGv6+doqvVVI7FqfLx2YzQaoTuOUoaw4VVErsw3webEVcVmhFXFaaLq5JpkCgUMKWkx+sl4J5bkEzaYDgrNGoATSlJ5QqUdAMkLHUFjnSmHXT5KUmTcTNPQpYQpiCo1X4YtlNcVRj0eFj/pJt9KwwOLTfJByTLDrnQ5LEiq5WGrhZhVY0XjQ1/lByckuw7S5DrFWy8TeLPzL9ttVFppyERCKL3uPCNCg6/3GD/m3SW/LeL4t3li6NDjZr+pI/4hxYTedckvVdNkvl5D9mbIiA7E6ZTC7IY5A8fPo9z3rCNzS/aQ9+aFHdedyaFpHNujvqCbuJZndh40tEiaxo12RxpQ4xrs+KqXu9VhWYW8E4kcdUuYQWdE1f12iUnsxDEVL3M9LdNF10LQXD1B7xM5YrEJ9NtFVnOWLJsECHEgBDiLiHE+vLzVwoh+sr/dwOfAr7f6oT7iUy2aXE104piXteJ5fMARH3+msWVXd6rRtANk3gmR0k3EBI0xHHx4B6hMaT5cSGIyyKHjCzz5QJOxTMdEVcVXKZg9V4Xi8Y0pvolu9YalNxH5+wkcVVBAMNbYfMfJPke2PI8QWLx3NtUe606ZViCuzVWft2NmDA59God83leeh1u5My4i/gnhsjdHiT0ohSR90wiAs6O65eGxv3fOJm7rz+NRZtjPPf6u4muSc6/YRuZ7s3qNHbZHIFoynvVKXGlm80f050UV1PxzBFbshDE1aDP2xFxFZ9ME59M0x/wdq24ik2kiE2k0HXzOLtX/TjRmP73V76nyqNbqRyn8aqFiVbT1QILq3P4KqC3/DwA/EEIcR9wN1bi8XvmG6SZJONKqEYzTDd6UkrSxSLJYgGPptHvD+CZIySwmk6GBhZKOolMzko+ltb3Opsx9AiNRdpRAzdpFjBmEVmV1UY7aMYACgRLRl2s3Osi75M8cZJOJmg6UlxVEz0Ip/9K4snDo5cKDm+auUZEO0MC5yI2niT9RIq+zxYIPySZ+jsXo69xYTrdjuuC9H9GSX2nD99ZeQa/eQjPqflOz2pedt06zO8+8BSE2+Q5n/0zq55+qNNTOgaHeS5tsTmNYoe9acZzZW3fnPeqGZoVV9A6r1UslmHIF2ipuIpNpjsaEtjNwmomodAfdOPWOrug6HSmi81uFluV47ZyHLearjuipJTPrPr/fmC46vkNwA3tnpOdoYGmlCQLBYqmcSTfqpaKQJ3Mu6rOt3JrGoZhzimuKgghWOYKkjV14rLIqJmjX/PhF0fFZCuMYrMGsC+p4dsp2LtKZ+canaiusXrK/lPJzvCLQBJO+7Xkyb8R7H6KRnpAsu7PEq28IO0EcWWUzCOeispNtfyhge+gZPLvNIqL3Cy9Qccz1bEp1oAgf0sYmdKIvGOKvmsmSFw/QPGvzs7Lmnyij5uvuoinX/sgT7v6YfrXJXnouxuRpjPCHDspspxiczqZd1URV54G12TtCA10sriChZ1r1Y2hgDMJACWimmP691cdTthNoYTtChlUR1sT2BUaWBFXumkSL+Rrzreq0Mm8K1NK0rkCRd3A53ET9nuJJXN1GcOg5gYT4rLIlFmgT3gJau6WFLWwywgGCoLB+wpMnewhttGDa0SyfA9oNlVObYVBc5dg422S/WfAgTMFuT5YclMKT1p23PBMF1YVBBC93cR3SDLyGhf73+1myfcNgjucXaK28Jcgk094iVw1Se97JgEYf81yR+dl5eM+bvng+Zxz5eOc8pLdRFenuPMzZ1LMOL8y4olCp0IDrW07m3fVKJXw824VV0pY1c50UdVpu7bQqXy/U1n9mO++G8RWO0RWt4cIdgw7QwOhkm9lFZ2qJd+qgp15V/UaQMMwSWRyFHWDkM/bkLiqENTcLNYCuCt5WXoGiTPFVQWXDpu2CxYdlEwsETx5MpRsuBdtpVETwMqHJZtuNclGYPcVYdxrO2c8Y+NJYuNJ+oJuXHNcjYI7JCu+qONOwKErXcSeqTmjFdYcmFNu4h9fdOR55F2TCL+z87JMXeO+/ziFe75yKotPn+S5X7yL3lXdFwqy0Ohk3lUzC3idLmqhl/vu2C2u2hkSCO0XV90UCjhT2J8K+Wsvs4UROp1W52UpgdUEdoQGLpbBI/lWLk0j6vPXnG9VoRNFLYolnXgmhyklkaCfgM9DLDlvVeI5cQnBUCUvSwhEUMOw4Ta6umSuXcQm0wz6vAhg+T5YtUOSDcH20yDT+CJx21YMxYMpVv8wjacEj7zAz+GT22+MZvNazYZnEoa/rBPaKpl8vovRV7swne5cKQnGr1hO+vu9eM/K0/fRMVyLS52e1bw8+dsV/P7ap+D2mVz2uT+z4oKR+TdStIRuzruCzomrSgREMznWM9EOr5WuG0dsTDvFVXVuipOFlRJVzmW2AhlOpZUiSwmsBrArNHCRDJIoFMjqJfwuN1GfH5dW+09iR2hgvSuMVr5VkWSugKZp9IUCeN0u28rnCiHwpyT9RTd5TTLiK1IUja/6t8IYVgxfNf2TsOERq7jHE6fC5GD947bLsFUudkvzGmfclKPvgMGuZ/h48hle2tEKqdprVW9ujVaEJd8z6P+1QfpMwcG3uyk132GhxQhyv+0h8ZlBtIhJ38fG8J7e3GJEO5jYFuXXV11IfG+YZ3zwQc64Yod1gCvahhPyrjpR1MIuceUR9l7QFmpI4HRh5URxpURV91H9+1RXa3Qa1cUv7EQdmXViW2igCbFCDkNKq3Gw211TMYsKlXK5zXqvoD5xlarkW7ldhAO+Y+bcrLiCo4axx3DhNQXjvhIjvhIDRTchsz7PXrvEVYVgFjZshT0bYN96QS5s5WXV8qu2W1xVLnruImy+ucC+80wOnOMl26+x6bcFvFn7b6TtahYsgP4/WHlZo692sf8qN0u+ZxDc6eyb/9KjfmIfXkTo7WNE3jfJxHe8xH7ipbYjZGaii3rn/1AT5Kb8/P6ap3D+Wx/jtFfuJLo2yV2fO4NS1umuw4XDiZh3Bc2Lq8VuPzsa3vvxtFpcVfe1cmvty9V0ssdK5VQtDCrVGuHob+rEPK3+gJcpG3Oy1NHaAM14rybSWdDBVQQTSZ/Pj7fOkMAK7QwNNEyTZDaPYUqCPi8B71FB2GyFpwrTi1r4pMaSvJdxX4kJn06xJOnTXTWFfLRKXM2HR4eTHoODqyXjSwW5oGTNDnDrs2/TDgM3V5VAIWHVvSVCEyZPXOzjoZf62fzbAj2j9uUL1RsOWAuhxyXDX9Q5/Ho3h97sYvAXJr13mjYHBDVGbCwx8xtjMPXuICuuLjL0eusx9g9RKNQ/63i6NOt+7BRepu7ini+fytTOCOde+TiXff7P/PETZ5M80L6GjScizSzmdXvelR3iyi4WstcKnC+slKhaOMxUFMNpQstOkaWO3DpoNjRQSgkl0Erg0jR6vb66QgIrTKazeOhveB5QnxEs6jqpbAGASNCP111VRr3JCk9HxpnFMLoRLCl4mPLoJD0GJU0yWHSj1XAb3QpxVYsBFMDwHgikJfvXWXlZa7ZbHq7pdFpcVTO4yyAQz7HtMj9bX+hn3Z+KLN42hzKsdf8tEFcVvBOw4ks6o69yMfH3LgrLBUM3GWjNT7tmZhM5feHZvTzJL3jwnVdE+KH/U0ni14UxR+tbaJlt/JmEV/OCS7DjV6uI7+nh6dc+yGXX381dnzuDg/fO07la0RDNhgZCd+ddNYMSV3NTHQblJHGlRNWJw3ShtVBFlsrBqpFmQwOlKZmayqGVaCjfqkI7S7JX+lslswU0TdAXDsworuzwXlnzmdkwCgT9JTf9RTc5zeSwr0RpjrwsuysG6roB1G8AByZg/SNWZe4dp0Js4Nj3nSSuKoSmJKfflKP3kMmTf+tj59Maz8tqJteqHrQCLPmOQfS3BqnzNQ6+zYXewsi52FjiyKNybPSFPcc95kYw/qp+4h/tQRsw6f9MEs/p9hS/mGke1XNuhrFH+/n1VReSOhjib//5r5z2yidVXlaL6Na8q04XtbCLdoQEtrOQhVPzrGbKq1KcGEwvhuEk7MjJUgKrDho1eIZukojlwYCwx0uPt7bmwbPRjpLsstzfKlso4nW76AsFZhSEdoUGzrfqKBD0GC4WFz2YQnLYVyKrGcd9zu6Kgc2uLoYysHErBDOwZ4Pg4EqQOFNcVfAU4ORf5Vn2UJGRUz08+nw/xTp/5lZ6rWZCSBj4ncmSG3SKiwT7r3KTW2NfsOB0gVIRL25N1CCmZqf4sIfYByKYMY2+D6cIvCAHNhegny64KsKwUbGVnQjwuw88lV23LuOMK57g6dc+iDvQRpfhAqeToYHWtu0vanFk3w4JDWxXvlW7vVZOEVazFaxQnJg4tbx7s+eKElg10IzBKxYMkrE8hiGJ+vwEPZ6GxdVkOtuWvCvDNIln8hR0g6DPQ8+0YhZgf95VrfhNjaUFLx4pGPfpxN06snxDardRrBjBZhOOPSUrL2twRDK2XLB9nYHhaa24qvR/adRoCQlr/lxiwy150kMaD780QGqotstFu8VVNeFHJCu+rKMV4OD/cZG4oPFLXLWoqs87VR/GiIvYNREK93roeV2OyFUZ8LbOK1QRhtC4Z8sourj7+tO5/xubGH7KGJd97s/0LLO/HcKJhhNCAxvadoHkXbW6v1XFawXtEVdOK7uuqgAqZmN6H62FgBJY89CowZNSksuUSCcKmID003AxC2hfSfaiblj9rUyTSMBH0He8t63VeVfz4ZZWXlZI10h4DMa9+pGx7DaKdhlBTcKK3TD4cJ7coIuRp4XJhVpTjqFRz9VMDD1hcNrP8wgJW1/kZ2zD7GO2KyRwPryjMPxFneAOyfhLXYy91IWs8dSbTVS1GpkXJD8bJv3DAL6/KRL9ZBJt6HgPrZ3MFkZYO4Jtv1jDHz58Hv6+ApddfzdLzx5vzWRPIJoJDTzR8q7sFlfQHq9Vu8QVOMNrpbxVilpxqjerEZTAqoG6xZUpySSL5DIlvD4X0g9LtCa6z5ZpZUl2KSW5QolkNo8mhNXfynP8RbBdeVfzIRAMlNxEiy5ymklm0EVvwMbk5jnKsTdDz/4SGx8oYbpg27keYjV6hWqlckFy2zhseMLkjP/O0TNq8sSzfOy60Iucpg076bWaCVceln7LIHqLQfICjYNvdaHPchp3SlQdjyB7U4DEp8K4Fpfzsk5pT1PiZoTW6JYBbn7PhWTGAlz8kfs55aU7sTvM8USgmSJKzeRdVejGvCvoPnHVaipeKyWsFN3KQvFmKYE1B42EBhqGSTKWp1gwCIQ85DWDJaI5cdXq0EApJel8kUw536o3FMDlmv3Q6ERo4EwIBBHDTXDSAJfgYK9OxtN8afFayrE3QsXohZOSzfcWCWQku073cHCty5bbUTs9V9Px5OGU/82zdEuJw2d4ePDlAXK95TAzh4mrCkLCwM0mS76rU1gq2P9uN/mVR5XhTDlVTqD4gNfKy0oJ+j6SInB5nnYJlulCq1Yyo0F++/6nsveOpZz1uh38zdUP4fKpvKxasaO/YjPeq25uJtwsC01cQefDAZWwUthBt4ssJbDmoZ4VxVLRIDmVxzQlPb0+MrLUTA9RoPWhgYZpksjkKZT0I/lW2iw5Yp0ODZyJWCyDuygZTrhxmzDSYxDzG0fysuoer0XGsCKuKniLsOGBEgMHDUbWuNl5hhu9CRvUSnFVQTNh7V1F1t9aINev8ddXBTmsZTseEjgf4S2S4a/oCB0OvNXF4U15B3ir5sY45CL2gV6KD3joeWOWnrdnwNM+r1Aj3iyj4ObOz57BX2/YyMqLRrjsc/cQWmxf1dOFTidDAxva1iHNhJuhleKqnVUCneK10nVTCSuFrTi50uB8qKN/FuoJ15BSks/p5NIlXC5BuNeHy61BqblqThVaFRpY0g2SuTxI6An48M0QEljBrtDAlsXMm7A84WY8bDAVMim4JYvSrpr6ZR0Zr4XiaiY0Cau26QRTJvs3uNl2rod1W3QC2fpupNshrqpZtF0nWcwzelkvu948xPiBEqf9JN6WfTdK9uEEPR8SpN/WQ+bKHlzrvcgb88xR7b/jyJwgcV2Y0MtzhF6Rx73CIPGZHszJ9qyLVURWpa9Wbb20BI/dtJbY7h7+5uqHuPwLd3PHdWcy8vBgayfbxXQqNPBEz7tqtbiCE8drpXpYHUslqsMuokMRW8frRvqDbsf2zZoNdSbMQD3hGlJa+VbFgoHH5yLc40VowpaY+FaFBkopyZd0MvkimiaIBP245wgJrNDpvKuZqDaOGoJFaRde3WQqaHKwV2dJyo3HrF1ktUpczWb8BLDooEkgU2LXaR62nedhzaM6fRO13fm3W1yBZTwGxmHFrhL3v3WQ1LCHPU8PseqOjONaIlV7X/pxE/2PHJMvkiSe7aO4zMXi/8ziTjls0tVIQeanQUq73UTelSb6mQTJz4YpbWuf160v7DmmeXEtQuvwX4e4+aoLeeaH/8rFH7uPB2/YxOM/X03TLv0FxolYkt0JeVcLQVw5UVjZmfvrVGoVT3ZFdcSz+nH7NErmMa+dKAKs20SWElizUMuKomGYpBMFDF0SCHnwB90IIWwxfK1qKFzJtyqUdDxu15whgRXsCg2U0r4b2dmaCQsE0bwLnyEYDRsBQ5+HAAAgAElEQVQc6NVZnHYRLM195W9FUYt6DGBP3MrL2nm6h51neFi6S2fpbmPO29FOiSsoG4+s5KnXj7P74jCHzg9y6Pwg5311Ak++84KlWlhVhwAKEwZ/lse332D8igAHrwmz5OsZfPsc7MoCivd6iX2gl95rUvR9NEXqW0Hyv7NvoWI+GvFmpUdC/OZ9F3DhVVs4543b6F+X5J6vnIpRbLya6kLkRCvJDs2FBtohrro936rT4upE8FjNJaTaGRI/075c2tHXZxJgsHBFVzeJrIV5ZjRBrSuKpaJBOlEAINzrw+s79qbBCaGB06s7lXSDRDYPQMDrIeibvyeXXaGBlb5MdoYGzkWwpDGcEIz06BzuMRjISnrzGmIGydKKohaNGEBvATY+UGLvJjeH17rJhQWrH9NxzVCtu+Piqoxmwrpb0qSWecgucrPliiibfp4gNNHaEuOzznEWYTWdnvtKeA8bjLwlxMH3hhn6YY6ee9tTsa9RjAMuYldHiLw7Q+QtWSJvyTL2iiiU2ucVqvZm1SKy9JybP33qLE59+U7OuOIJIivS/PETZ5Mdb80NbjdxooYGdqqoxULyWkFnxNVCFVaziSkn5xZXmG2OC1l0dYvIOgEcuvUzl9GTUpLPlkjFCwhNEIn6jxFXdoUGNj3GtBCOanHVE/AR8h/f32o27AoNnEnc1Es9RtJjCpYn3ISKgsmQya4BHXNa8YtWGsZGDKBmwurHdIZ36MQHNbad6yEfOPZ7c4q4qubM78U49UcxTDdsfVWUyfUdMP51VgT0HTAZ/nQa326DsX8KMvESP9LhV0SZ1Uh8KkzxYet3WPTTGFpfe71v9VcZFDzyXydx+8fPoWdplsu/cDeLTp1s3QS7gGac+Z0MDdQNsyvzrhaSuOpUIYuFVLyi0rMxNp7EKFnXz0qxpupHNzPT31L9d3c71cUvnIrDbyfay3wrilJKMqki2XQJj9dFb9RvFbOYhhO8V3B0lXEqlSVR7m/VG/TPWcyiGrurBtpFPUZSQ7A47cJbrhi9L6pT0qy7m3ZVDKwXASzeb7D+oRIlr2DbeR4SA9Zx5kRxVSFySOeM78cJTuhsf2Ev+y4KHtcvqyXzm9bDqh5cacmyL2fova1A4hIfh98RwmhRA2jbMAXxj0ZIfjWEzEP0swnc69tbEr2RUu4H71vEb95zAYWUh0s+cR8bnreXE7lfVreGBjZCR/Ouymp2oYirdlOp3tbNwqpaWFTbs76g+5hwu4XMQhVbThZZSmCVmS800DRMkrECxbyBP+gm3GsVszhmDAcVtljsDlr5VrkCZtnA9IUDeNy15T/YXTXQI5o/1GoJDZwJgWBFwsOSpAtDWCIr5rdC2NpVMbARIjHJ5vuKePOSJ89wc3iV1S+r3eKqntU8b8bk1J/GWbQlx4ELQmx7UQTd2xrBMr2PVaMIEwb/K8/Qd7Pk17k4cE2YwrDzL435W31MXRuBkiD6r0n8Fxfauv9GRFbyYJjfvPcCDt0/xPlveYynvmsrmqcz4aSdpNEzolOhgRVx1cx1vBN5V7puHVvdKq46WX59ei+rbmM2QbUQvFPNstDEllNFlvPvItrIbCuKpaJBIpbHMEzCvV6C4dnD6zpd2KJiCE1TMpnKki/pBLweBnqC8xazmI6TqgbaEeIRKmkMJ6wLylTIJN9nT4PfCq1YZfTlYdP9JaKjJodOchN/WgSjTTUCKuKqXjQD1v0uzZpbUsRXe9lyRR/Zfnsn3YoGwZF7Siz7fAbpgoPvD5M+x3n9saZj7HUzdXWE0mNuIm/PEH5jBlyd6ZdVK6Wsh9v/9Wy2/OgkTnr2QS799F8IDORbNcUFRydCA6E7866AmkPh66Fd4gra77Xq5ibB1UJBCaramE1sdRtOFFlKYDF3PHw+V863EoLeqB+vb+YTtZlmj9XYERrYj494JgeAS9PqyreChREaOBs+QxB9soAnbZBd5OaJVQI7MlhaaQw1E/r+GGP4sRyxpR62XdRDIdjaU7dRcVVBAEsfynPyjQkMn8bWV/cxtbb576aZcMBa8O81rLysfQajbwwy+SJfW8Icm0GmNeIf7yH7P36Clxfo+0gK0du+vKxGRBZSsOVH6/njJ86id0Way794F0ObYy2a4cKg0w2FG6HTeVcezf7rZDvElVEuCtUJcQXdJaxmE1WK+qn+/rrRq+U0kaUEVpnp3qtKf6tsqoTHqxGZJd8KnFXYQuiSRDaPKSV9IT/RcGOixIkNhe1CmLC6qlnrrmHI2WDHWmUMYxMpBLBkZ4H1f8lQDAgee1qYxGBrjEiz4qqa3gMlTv9BDH/MYNuLe9l/QbBhr6Ed4YC14E5Kln0xQ+RPBeLP8XP4bUGM5tc9WospSH83SOKLITwn6fR/Jol7bfvyshr9Tfb/eQm/ed8FlHJuLvnkXzjpOftsntnCoNOhgZ0oyW7tt7miFnYSm0wfaefRKnFVCQmE9oqrbgsHVKKq9XSzV8spIksJrBkwDUkqXqCQ18v5Vj40be5l7E57r6SUiKJEK1rP+0J+3K76w7KaCeeYjlNCA48Zr2wgBbBhr2TZmMR0CfYvFeR8jY3ZbFGLuZhu9HrHdTbfkcaTlzzx1BAja322hjnaKa4q+FImp/4kztCjefZfFGL7CyIYntrdQq32Ws2EMGDox3mGfpAlt9HNwQ+EKS51/uWy8CcfsQ9apXijn0jie3r78rL6wp76vFhlEvt6+M27L2Tk4QGe+o5HOf9tj6C5nd2XrBOo0MDaaEXFwHaHBLrnud+wk27xWilR1Rm6TWhVjmEniCzn3zG0gepLmV6y8q30kkk4Mne+FTijsIVpSuLjWTQd/F43Az3BhsWVHTgxNBBm7ncVzsHScQlSsn+JYOfy+sa0s6jFdGZbUfRnTTbfmSJ6uMSBUwLsPitoS15WK8RVBZcOJ92cYvVtaaZO8rLl1X3k+uafdLu8VrMRuavE8i9kMH2CA1eHSZ/pfIOu73Iz9f4IpSfc9F6VIfy6LGjty8tqRGQVMx5u/9i5PHLjWjY8dz+XfPIv+PvaW7TDqajQwPrpZnHVLrqlOuBMhSoU7We60HIyThFZSmBVUcjpJGMFBBDp9+P113Yid7KwhV4ySIxnwYSw30vY72sqqdeJ3is7mMtI9mRh3X7r/4ZbMNpPTXlZrTSK84VruAxY+0CWZdtyTC33sP2iMIVA4797K8VVBQEseyDHKTcmKAU1trymj5EzZj9OOi2uKvh3GQx/Ko33sMHom0NMPb8L8rKSGvGP9pD9lY/gC/L0fTiFCLfeK9TMbyVNwUPf3cifPn0m/WtTXP6luxjYELdxdt2HCg2sD7tDAxeyuALnhgMqb5VzmZ6j5VScILK6RmAJITxCiPcJIUpCiFfO8hkhhPi4EGK7EOIxIcQPhBDzqh8JZFJFMqkibo9GpN+Pe5Z8q2rs8F5B4+EbxZxOetKqvtUX8uP3Nn5zY6f3yomhgTC3kXRJWL9X0p+QJHoEBxaDXoNXqJVGcT7jJ4BlTxQ46d4MhaCLx5/WQ3KgfiPUDnFVTe/+Eqf/MIbh09j17B6rX1b1fDoQEjgf7oRk2fUZeu4qErvcz8hbghjNH+atxRCkvxUi+ZUQns06/Z9N4lrV+rysRkMFK+y7cym/ef9TMUoal153D2svOWDj7GqnlTanHlRoYG20IpwcWieuOpFv5XSvlfJWdQ/dEDbY6WO8awQWcCWWFrpnjs/8I3A5cKaU8mSgBFw338Dxok4hp+MPuOnpmz/fqppOeK+klNyzK042UUBqYPrB00BI4HTsKmxhF60MDZwJAQzGrZDBghf2Lpm9+EU78q5qpW9MZ9OdKdwlyY6nhhhd7UXOVRqzel8dujD6Eybn/vsEAAcuCLHjeT0UMR3jtZoJTYehH+QY/EmO7ClWXlbM4/wwtvxtPmIfioBb0v+pJL4L2zPnZkRWfHeEm999IWOP9HPhVVs5982P2TizmmmZzakFO7xXDW2rQgPbIq6Atva3crLXSgmr7qQbwgY7WVmwawSWlPLfpZSfB+bqSvkK4OtSylz5+ZeAf5hv7JJpEop4CfbUXs68U2XZTVOSiRV46EAKb8CN6YPFnubm0erCFlJKTNMkkSyil+ZvKtqu0MDZ6MnCyhErXHD/UsGf9h17o9iJvKv5CKRNNt2RondMZ/9pQX6dSmLOc3ZXG7RO4M1KLvjcOKv+mGZyg49v+SYoRt2OFFcVBND7xyLLvpjBCAl+tmIvmdOcfzOgP+km9v5eSrvd9L4vw6FV21ual2XHb1hMebn1X87l8Z+vZtPz99owq/popc2Zj4kj4X3d5b2CzoUGdqO4agdOrhCowgAXBt3gzeqEyFpoR/NaYGfV851AvxCiV0p5zF2yEOJNwJsA+ocW8abli+vakd4XxdOEPtVNE+ira4ypTJHfPDqJWTJ47uYBlvdbxsgjmpiHUZ5HE2MA6Lox4zilksmd945jGpK8Ickk81x43iBrVoZnHMcwTGAAd5PzOTqvwYYrMqWLBt/ZOsqW8QyLT/bywvUDR3q4tqLKk17ufVJDdOqsSCm5M5vhrmyGpS8c5MWRPnpm8G4aJWtfLocssWzPZfmfUJLUNWu4MN/HWqPBko5tJDVR4paVhxl5q8l5k4OcMzWAwNnJWeaUycHDjzG2YhfrvjHIqu1n4jZaI2h10zpZ3O5mvetnMXnHKPC+pufUAhqyOYNDQ/zjwMCsgzZjX3TTxEN/Y9saJh4x+7bRgIuXnT7z+/NtO+d+daPhbeeyGVu3eHG5BM+9rDb7btmxxm3GfBhHrvFzjx/p9/HsV61uen922JR6iAz4ueT1G+f9nJPsT2RRkGe/9YxOT6MunDxno5zq6/Ic++PWemy0Ct2kptSf6fz4j43vc6EJLMGxq42VhIPjvlUp5TeAbwCsWrdOfndysuad2OG9qrdyYDGvk01YDY9DUT+rhoL82/0HmlppBHu8V7OFdhi6STqRxzBMNJdgoM+L0AR33DPOfVviBELHewydthK5HgicF2bLWIZvPDTC4JY0g57W3JBWYuPt4MWvXsXPp+J8PT3Guvsz9MSOnhad9lxVUx0S+Mb3nsN/Zg7x/cEpVt0SY+k9KYfLFXj+e8/jx5OPcN9TJnhs32EWfTeL5vyoQc6+7hT2r36URy64heRXQ+RvbY2gjadLRBf1tmRsh2C7zWnGe9XqwhYvO72fG7dMHfd6JTSwEVvSTGjgfHlXk1NFBvq93Pyb0fnHcpDn6tmvWs3vf7Snqf11wmt1yes3csu3t8/6vpNsT4Vnv/UMfv/vD3d6GnXh9DnHs9ZlMDoUOfLafMdGO5jK6kQHe+b/oE04YP3AVg4AK6uerwTSgG2lqNrdVFhKSS5VJBsv4HJr9Az4cXtd6IZpi7iyi+nGsVjQScaymKZJT58fTdPQNEFPXwBfwE0+WyKdyGOaR8OUWtEcslljKYCnr+glkrZKuU+cHmay34aa6NOwU1wBbPD52XxHCpcu2XFhmPFV1vfgJAM3Pd+qX7o57dsj9G/PsffSfp580QCG29kSyy01Fn0nx8CNOTKnuzlwdZjSkPMvq4OjK4n9s2VoIm/P4H1KscMz6lpaYnNUaGDt2LEg5yRx1SxOLGQxPRRQsbBxcl5WO0MFnX8nMAdCiAEhxF1CiPXll74PvFEIUbmKvQP4maw1479G2pV7JU1JJl6gkCnhDbgJ9/vRXFpTScjHzcPmwhZSSnKZIulEHs2lEekP4vEevaAKIQj1+An2+CgVDZKxbDksw8LuhsJ24d+RJrrN+t7HF7tJROw7dVp1wgfSJpvvSNMzrrP39CB7Tg8gNWeKqwquomTDjeOsuC3OxGkhHn3dYgoR+wWtnQig79YiS7+SwYgIDlwTJnty57/j+dC3e5h8ey/6Hhd9H0iz6GdTIOzNy2q2oqDTaLXN6WRhi26tGtgsC01cgXNyrZSwOnFxYjn3dp8XXS2wgCCwCqjEoHwPuAO4VwhxPxDBMni20M6mwoZukprMoRcMAhEvgcix4XTN5ky1wnslpSSTLJDLFPH63ESiAVyzBFn7Ax56ogGkhGQsx5SNhSNqrRpYL4txc9KOAoGMyeHlHrZt9tHs7WirDaJbl6y/N8OSJ/JMrPIx+ndLKPk7e9rPVylQAMN3JNj0k3Hy/R62XLmUxCrn52QFtxsMfzqNe9Lk8NuCxC71Nn18tBrjkIupDxwN4+i9Jo0Itr5fVhfTMpvT6dDARuhU1UC7SrK3UlxVyrC3q1Kgk8TV9KqAihOXyu9fybvrNO2sKth1AktK+Uwp5U/K/98vpRyWUt5ffm5IKT8opTxTSnmulPK1UkpbpbMd3qv5KOV1UpM5pJSE+/34gp4j4sqp3ivDMElO5SgWdAIhL6HI/A2PPR4XvdHyHAwI4Kq5vPh82GkwK4nJAG4DVu4rHXm+f6Wnpn5Zc9FqgyiA0B1jLL5tglzUzeOXDpHp70ylvnrKsEefyHHatw7jzpk8fsViDp/X43jB4pmULP9cmvBfS0z9fYCxNwQw29c/tDFKgrEXR0l9M4j3rBLRTydxLZu/2ueJQjttjgoNrB2niys48UICjZKpyq0rjsOJIYPtEFldJ7A6RTu8V1JK8ukimXgBl0ujZyCA23v83bsTClscnYufUlEnOWXlW4V7/TMWr5gNzaWBC/xuF9mSTiJfwGxCZLXKe1VtKAWw6fECSw6VyAUEe1d7yfvqzxVq1ypK5aI2PFpk4+8nEKZk+7MGmVhjXxPnmubRQI+rwKTOad86TN+TOfY8t5+dzx/AdHbEIFoRFn0rR///y5E+28PB94cpDTg7lwwEuZv9xD/Sg9YjiV6XxHuOPXlZCy1MsBWcqD2vGsGO0MCFJK7AOV4rUMJKMTOVYCYniKx2nS9KYNVBK71X0pRk4wXy6RIev5vwgJVvVY0d3iu7QgOn4hmQkly2SCqeR9M0ItEgXl99B24slkEIQY/PS9jnoWiYxLL5chn7+miF0YxPpmctqduXMFm5t4QUsHe1h2RP7adTuwzj9DCNYEJn8+/GCY8X2fuUKPvOjiDbcO/fTANhd0Gy8afjLP9TnPGzwjz6uiUUepytsgQQ/V2Rpf+WRe/XrLysjc6eM0DpMQ9T749gjGj0Xpsm+NKc7XlZipnpJu9Vp6oGVmjGe6XElc3zqMqzckLZdYVzcZonq9WL3Op0qIFWe68M3SQ1laNUMPD3eAn2zu4BatZ7Bc2HBgIgJaGsIJcu4vG5rHyrBpttDPkCCCEIejz0BXyYSGLZPAVdn3/jadgtruYjkJes3l3En5ccGvYwNuSqOYytXYZx+mqiuyhZ/8dJFm9LM74hzI6/HaDka92loBlxVUEAK29PsOGnY2QHPWy9cinJFV2Ql/WYzvCn07iSksPvDBG/2Pl5WeaEi9gHIxT+5CX8qhyR96URfqfPunvpxsIW0J0NhZW4snEOKs9K0QBOEVntOHeUwKqRVnmvSgWd9GQOaUhCUT/+kGdGceUo79VkGn9KHsm3Ckf8iAYaM84U6uF1uegP+HFpGol8kUyxVFNeVjtCA2fDbcDKvSX6YgZTg24OrPBgzHFmtTM0cDbDJyQMP5Rk9Z9jZPq9PH7pIJmo/XlZdoiraga25zjt2yO4CiaPvXYxo2fP3LDaSXjGTYY/kyb0sM7kywKMvS6A2ZkUuNopCpJfDpG6IYDv/HJe1hKVl9Uq2u29OhFDAxeCuHJKvpUKB1Q0g5OOmVbejymBNQ+t8l4dybeKFRAujfBAAI9v7hAiJ3ivYuNp3EkD06g/32omZlqNdGka0YAPv9tFplgikS/WlJfVbu9VNQJYMqKz5HCJTEiwZ42Xgvf476VdK4+1VuwZ2Jtj0x8mANj+rEEmV9mXl2W3uKoQHC9x2rdG6N2dZ9fzBth1eT+mw69kWgEWfyNL/y/ypM/zcPB9YUrRLsjL+mWA+Md60KIm0c8k8Z7ZWF6WysOamWaa1tfbrH463ea9gsZDAxeKuAJneK2UsFI0S6WEeydp9bnk8NsSZ2C390qakmyikm/loqffP2d4nRO8V1JKiokCrpSBSxMN5VtVM99q5JG8LK+HomEQy82el2W396oZg9kXN1m1t4SpwZ41HlIz5GW1O+9qPoKxEpt/N0FoqsieC6LsP9O+vCy7xVUFd95k04/HWHZngtFze3jstYsphpx9ORNA9OYCS/4jS2lI48C1YXLruyAva2s5L2tCo/eDaYIvyoHjAx2dTzcWttCNxkstT8UzHQkNrERAKHHV5BxUOOBxxMYSdT0Ux9NpkdVK1JkyB63wXhm6SSZewNRN/GEPvllCAqfTSe+VNCX5iRx6uoT0CCK9QbQGQgKnM5/BFEIQ9HpwaxqJfIFYNk/E78PnPv6m1G7j2YzBDOSsvKyDwx4ODnsYmNAZHDeIt7GDeL3Jxp6CyYbbJtl/VoSxTWFyfR7W3j2Fu9jYjXRsLNEycVVBSFh1a5zQSJGdLxjggfeuYMWtMYbvdPYFO/SIzvB1aUbeEuTQu0IM3pgn8sciTvZnmWMuYtdGiLw9Q/i1OcKvzTH2D1EoOHnWzqebClsc2W8ThS0awY6qgUpcNbH/E1RY1SqI6rFz840ZXdQ75/sLjb6gm3hWJzaeJDoUmX+DFtAfdDM1kSI62GP72CfWGdMAdnqvSgWDbDwPQCjqw1ODB6jT3itTN8mNZjELBoZfMNgTbCokEOpfjfS6XfQH/STyBRL5AiGvh6DHjRCC2GS6o6GBs+HRrbys0SVuJgfd5H2CYEwwOE8YaLM0sxokJKz8a5JgrMS+c/t4/NIh1t05RTBeX7GRdq/UDT6WJTBZYsubl7H/4ijelMGih5u/KWsl3lGT5delGfunIBOvDFBY6WLwxzm0+uu6tI+CIPn5EP6LrDDB6CeTJK4LY4453wvnNJrx/3WyLLtH9De8fSdCA/WSgcD+hR4lrhYWs9ksuxcJ5xtvpnksdNFVEVkLEWfH1HQ5Fe+VlJJ8pkQmlke4RDnfqvYLVqe8V3peJ3swjVk00MMaZtDVtLhqFCsvy4+vnJeVLBRta0o8HbuMpiZhyWGdxSMlMiGNxNl9FFpZrc8mYzi4O8fGP0wgNcH2SwaZWlH7jVGr8q7mIzRa4tzP7SeyO8fOFw6y+7Ko4/OyXHlY8rUs0V/nSV3o5dB7Qui9TvcICcZe3E/842FcQyb9n03iObU0/2aK4+gm71U3FrZoVeGjE0FcLfRcq+qwPV23ivf0hT3HPdrNTPs/EcIMnZCP1YpiFw6/BekczSQfV2OaksRolnzKKmfe0197OfNOeq+KyQK5QxkQguDyMNKrNbUCWaGZWHohBBGfl5DXQ0E3GE9l6fPZdxG0y3tVjQB4IkH0kQSGS7Bncw+p3tYZLLuMYWiqxObfjROI6ey+qJ8Dp/fMm5fVKXFVwZM1OfkHYyz9c5KR8yM89prFlILOvsQJCf2/LLD46xmKS10cuDZMfq3zPULFB73Ero5gxjT6/iVF4Hl5VF5W7TQqo0+0suzQXM8rj2bv+d8ucaXrVq5bp8QVLCyv1XSRUi1i3JromM2aj9kEl64bC1JsdUpkteo8c/bdRxczmc6CIUmOWQbRF3QT7PPVXc683d4rKSX58RyFiTyugJvQ8jCJbL7pOdiFEIKQ10Ov3wcCJjAo0Hji9XRaZTiXlGDN4ym8eYMDJ4UZX+qz9Xa0FRcmT95kw20TDD6ZYfTkHp58ej+6Z+7jt9OGSkhY/fsYJ/1sgvQyL1uuXEp6aev70jRL+CGd4c+kEQXJwXeHSF7kTINfjTHiInZNhOL9HnpenyXyzgx4lchqNd1Wlr0ThS1a4b06UTxXsDDE1XSvTyc9U3ZRLQqBBeXVWgjH3HSUwJoBO7xXoigJTAICAhEvgYivrvA6O7xX9WLqJtlDGUqpIt4+H4ElQYTLmrMd3iukbGo1sppsIseQcOMCpjBJYyKbkCyt8F7BsW5nT0myanuayGSRiWUBDq4Nztkvq15acYHSTFh1f4KV98VJLfKx7dIhcpHj99OOohb1MPRIhlNvGAXgkdct5vB59iew2o33sMnwdWkC23XGrwgy/g9+pMOdWTIvSHwmTPrHAfzPLBL91yTaoOqX1Qq6rSx7p0MDW5Gb2w5x1R90U2OQi337XSAhgQtRVM3GTGGE3U4nQwX7g27bwwSVwLIZKSXx0QzeqXKp8YEAvmBjJ3ez3qupRLZmw2hU5Vv5FwXw9fs7lm81HxUD6kYwgAs/ghQm8SZFVquMZ/VKpCZh2Z4si/bnSPV52Luph2KTeVlzNRS2i6GdWTbcOoHhFmx79iCx5UcFt1Mv7OGRIqd/8zBogj3P7Wfr65fYVn6+VbiysPTfsvT9Nk/y6T4OXRVCjzh80lKQvTFA/JNhXMsMKy/rZJWX5RQ65b2CzoUGtqJqYLvEVbvpdq/ViSSqZmIhCq1O52PZhRJY02imNLs0JdmdWTwprHyrgdrzrTpJKVkkeygDAoLLwnjCRw1JMyEe1ei6YatgqxhQDUEfGmE08kgmMDDqFFnt8F5VI4CBsQIrn8igewS7N4VJz+AVqmkfbbwQhSetvCx/UmfX0/o5dGoPUx3Ou5oPT9bk/E/tAyA97OPxVy+iFHD2OSkkDPy8wOL/zFJY6eLANWHyqxzuygKK93uJfaAXMyWI/muKga/FUXlZ9qC8VzVu26LQQCWunMeJLKpmYqEIrW48FmfD2XcaHaKR8ECzZJI/eDRXKdRAvlWFZpORoTbvlZRWf6v8RO5IvpWrxWXEW4FA0INGFA2DSl5WfTd27fBeTSeU0ln9eBqXLtm/PsyTp/Y0dDvazguSN2ey8Q8TDOzKcvjUHkafN0xP1Ne2/TeCZsIFH9vLuv+ZILnSz9Y3LiGz2PmGOPxAieWfSSMMOPTeEMmnOn/OxkErLwvAtcik560ZcCuR1QydLMvejYUt7A4NXIjiqiffP0wAACAASURBVBISCN13QzuTsFIcZaEIrU55sewME1QCq4pGvVdGziC3N4dZMCn2Qd+SkGPD6yqYhknucIZSsoin11vOtzr2cLDLe2VHo8gjY83R98qPxiAuBDCFQaaGkMF2e6+m4y2arH3c+mzJ52LPxjC6u7Zjp1MXIM2EVffGGbh9hOyqMNueP0w+4nwjt+jhDKd8dwTTJXjkn5Ywubn5AjKtxnfQZPjTafw7Dcb/McjEy/1Ih1+1ZVZj7CVRMjf6CVxSzsuK2leI5kRElWWvYVubr+Wtsg3VdEpcAV2VbzVbBUDF7EwXWt1Ep45Lu89Fh5vq9lOv9yp3IHfEc+Ud8mL6mxNW7SjNbhQMsgfSGAUD/1AA/0Cg5YLQ7nK5s+FGMIgLH4IkJokaRFYnvFfVaCZseiDO0IEc+bCbJ87opeit7fvq1IUoPpagd0uM9b89iOHT2PaCYRIrnC9Yeg4WOf0/RwiNFtnxsiH2Xdzn/LysjGTpVzL03lIg8bc+Dr0zhBF2+KSlIPPjIInrwrhWGEQ/l8B/sip+US+d8l5Bd5Zlt8t71Y6iFp0WV92A8lY1T7eKLOj+XCwlsBpESklhtICZt1Zmg2uCJF2lplYaK7SyNHspVSR7KH0036pnZgPSzCpkNe3yXlWjIYiiEUaQQzI5S15Wp71X1QhgcLRA/6gl1neeFmFkxew3Gk648PSFPfSM5Nn0iwP4kiV2XrKUw2dEHZ91400bnPzdURY9kOLg3/Ryz4dXofudfSkUJgzelGfRDVkKa6y8rMKws+cMUPiLl9i1EWResOKzWfzPbL1XYKFxInmvminLrsTVPPvsInGlhJW9VL7DbgoZ7IbjdD6cb6HbRD2l2c2iSXZnFj2l4wq7CK47Ws68GVrpvZJSkp/MkR/P4fK5CNaQb2VLaXaaW5FsFCsvy0UUDR0rL6s4w61/p71X01l8IM+6RyxDGFvkY3LR7P2yOnUBmn6B9mZ0Nv7qIP07Uxw+Z4DdFy/BqDHMsVNoJqz71RTurOVV2fqGJWQHnW/Ee+4tsfzz1gLJwfeHSZ3n/Dkb+9zEro6QfchFzxvjhF8XA5fTZXjnOZG8V04JDVTiqrMoYdVautGb1e7FZDvLtSuBVSdG3iC3LweAJ+rBv8QqZ96MMaymFd4raZjkRrKUEkU8ES+BpSE01+w/vVO9V43gR2OgnJc1iUG23JTYSd6r6XgLJhsejNMTKzK2IsC2c/owq/SKU7xX1WiGZNWfxlj+lwniK0Nsf/4w+R7nG8fzPneAU24YwfBpbH3DEiY3tn8xoF58+0yWfzqNb4/B2OuDTLykC/KyMhoHPxwg+8swgUsy9P3fcUSvChmcjxPFewXOCA0EJa46hRJW7aGbRJbTj9n5cLhZbg+1rqWWkiXyB/IIt8C/wo934NgLsR3hgXZjFAwyB9MYed3KtxqsLd/Kid6rRo2opyovK4FJohww6DTvVTUuE5bvOnqzs3djmJLn6O/mFO9VNQJY/Gick353iFLAzfYXDJNc7rxzYjqR/QVO++ZhghMldrxiEfuf0ev4MEd3SrLsSxkitxdIXOLj8NuDGCHneg3j6RKYgsxP+0h+pR/36hLRj4/hXlvs9NQcifJe1bitzd6rVourdtMNzYOnF69QtJ5uElndjBJYZeYKD5RSUhgvUBwrogU0AisCx4TX2eG9akVp9lK6nG8lIbg0NGu+ldOxw4hW8rJCCLJIihEvdq+f221ABbD5gTjDT6bJh9w8eXovI7LzN6TzGcHIoRybfrEfb0bnyUuXMnJan+MFiy9lcMp3Rhh6MM2BZ/Sx/RVD6F7nChaw8rKGfppn6HtZcie5rbys5c69pEcX9QJQ+EuQ2EeHQIe+D43he5p9nu6FRLd5r7q5sEWrKwZWbEO7vFeVMuzdIKzAuX0UFzLdJLKcELXTCM61xg5B6pL8wTx6Qsfd58a/zD9jvpWTvFdSSgpTefJjOVzecr6Vv7YLrZ2l2Z3gvapGIIjgwpMqIt2CMb+gaPMZ0AoD2pPQWb7TugmNnT2EPCnSEcFSz4XYl9bZ8L8H6Nud5tB5g+x55mLn52UZsO6Xk6y+eYrY+gCPvGEpuQHn3qBUiPy5xPLrM0i3lZeVPtv5czb2eYn98yJKT/iIvDlG6DVxlZdVplu9V43gBO9Vq/OuOiGuwNnhVSoc0Bl0g8hy8nE8H0pgYXkKZsLIG+QOWP2tfIt9+AZ9LSlnbmdxC2lIciNZivECnh4vgWUhNLf6matxF02G8hIBjPsEGRt6K7c6/CMSL7Holv34JvKMntTHyIZj87LaRT3G0KVL1tw+yrL7JoitCbPj74YphJ19sRTA0vtSnPz9UUpBja1vWEpsvfPzsvx7DIY/lcZ3wGD0yhCTL/T9f/bePLyxs7z7/zznHO2LJdvyPmtmy0pCBrJAQgJZIKEDpUBYCgHKUijwplB+QBfa0vYFSoGU5oU2hB1SCi2QhJBACAFSEhISsk6YZDK7x7tkWftyznl+f8ia8XgkW5aOpOMZfa7L14ylo6PH9tFzn3v53rft28/LlMrcp3rJ3OHHe2WKrg/PIAIdXRZ0sle10mjgreNctZZOOaD9WA1OVquxqtFF5867CnpSPzLfyj3sRgtU3rDs1NwiYjpLequsjqvXgzuysvlWdm1uYaWAuVxn75AQyUlcJsRdCnGHaDgr1GwjquiS9btm6TmQZG7Ay8Hn9FKscV5Wo9S7+Qpg4Ik4p/x0nIJfY9eONSQH7e+wdB3Ic9aXxnHHiux6XYTRi1aBLishGbo+TeDeAvGXupl4jxfD7r9qU5D+dojEF8M4NuVLuqx17S+DbRed7FWNr7WwpK/jXDWfTjmgvVkNTtZqLBPsOFiLkFKSn8mTn8yjuBQ8Ix5U99IpDjuUB6oZk8zhFEiJZ8iHM1if0bBjc4tmoQI9eYm/KEk7BDMuYbkuy2oEEDmQZHhnjIJXY/85ETLB1hisRgxj1+EMW28bxZHV2X3lEJOn299hcSUMTv/aJL1PpDl0aYhnXtOL4bB3Wkjo0Hdzlt5vZ8ls0zj8YT+FgfZu8/FUcdlj8r/2Ef94HwgI/e0UrgusCVytRjrZq9qwInvVca6aT6cccHVg57+NHa/rWug4WAuQhiQ3lkOP62hdGu5hN2IJ3YgdmltIKUkeSOCe0VHm9VZajXoru2NllBIqC5kF0FWUhPMmBQWm3YLCCu+hW9F6d7FgORDNse7RGRRTcvDsCLvP72/ee1sU1XInimy9bZSuQ2kOnxfhwMV9mBbMj2smqi7Z9MMo634aI7bVyxNvGyAXtv/nq+t/Cwxdn8Z0C0Y/7Cf9nPauudzgYin0/U5m/6aP4l4nwT+L4Xt9HBS7u+H2oJO9WhnNbmoBHecK6GStViF2zmKtNuz3iWwTZt4kN55D6hJnnxNHjVmBdmavpCHRD6VxJk00v6PUgl2p74b1RG5usZBqEUuvAVpOEnMJpt2CcEHitXk6y5XRWf/INLsvHMRwqkxs6qJ/zxyiCfekVhlIVZdsvHuCieeEGX9uN7mQk413T+BM65acvxkIYOg3SbyTRXb/US83PvsVIsn5G7T3f4G3zh8XVzy8e+1bq52m5Xj2GIx8MsXEu7xM/KmP8O05wrfnm3J9WIVMqMx9IoL/j+N4r06hrS2SuKEHmT7xY4HRVKaTvaqRRuxCK3RXJ7tz1XGsVichv4N4qsjs1FxNQbEOS7NqrJYQ4kVCiN8JIR4XQjwkhDi/wjHnCiFiQojfLPj64HLnzhdNsqNZkOAecdfsXDVKI1HHuUSB4p4kRlInH1ZLeqs6nasOJZzzuiynCbMuhbkadFmtmG2yVO2xqku2/mqM7kNJ4kM+nr5oCN1h74+1AAYfm2Xjz8bJBZ3s2jFCst+a0tRmEtqX48ybJo46V4ufN7MtXtHyaHHJ0GfSBO4rMHu1m4l3eTFb+KuupTzwOAxB6uthkjeGcWzLE/74JOpIHedpkGbaHCvpZK9WTrNLA1tJx7nqYCV2/buFvNqq02HZ65NZBSFECPg+8HIp5f1CiEuAW4QQG6SUC61LL/A/Usp3rOT8iZzOiEvBNeCqueNeO5tbGIkid955GGlCrk+jz199hlcttKS5hYRi3kBKWVPjjWY1t1gOFejNS+YckHIIigrkCkunsloRrVzKiAqgb1+STJeLXNDJvnMj7EnkLXnfcsenZhA6lGHbbYfYc9kgu182zO/yOSTVu3ragW/f+0kIfL7dy1gRig6Rb2ZxHTKYebWb0f/Pz2zemuujFuqNhOZ+5UM/rBG8Lkr476bgpxYvbAmabXMW08le1U6j2asTSXdlN+dK10u20q436R1qp5PFahx7fTqrcyXwtJTyfgAp5S+EEOPAS4DbFhzXC1whhHhg/vufAZ+UUh4XVhJCvBN4J0Cwd5C3PX8IdQUZIN0M4WgwAagbIRyi9nNIKXnyyTiPHUgT6XHxwov6cbmVFZ2j4jr0la2jGobRg1bhPJMHEtxzR4HZtCSYTXPe1etxuJZuHKLrvWgWZuQM3Vzx+XYfSHH/YzF+/KtJLrl6iO6u4w2zrps0uwu+UTRRa3yP6azOd/bM8uODCV7y+q2cFm4sXaHrhqV/h0rkpMlt6RQ/zaY5609P5wqPD60J4xAa5XV/8lrcHteSx1zxgfNatJr6ODye5qcDY3xfPcBlf3066zL+pr6fbko0rbE5CMVnc4yte9qiFdVMU21Ob2+EPx7pPvJcvfZEN0ygvv17pfYHIORTeeV5PXXbDMMwgcp2YjlKN+8rswuP7nGiagpXvGoYQzcBmrKf6UfObc35gj1uLnvb1qrPr8QmtIKyY9U96Oe1H3thm1ezMoL9Ptvv24tpxZqt2LsXEuzzcvl7ntPQOQwT1BZV6OgmaJrCf/6y/nOsFgdrI7Bn0WN75h9fyPeBm6WUUgjRDdwAfAP4w8UnlFLeCNwIsO6UU+R/js2uaEGNRhzLZR21Rh6lIdFHM5iJIkrIwUsuG+TL948BjZd4NEt/JaWkGE1TGJ9DSvAEnIzvmeOW/9iJZ203irt6lKtdGazF9CiQdkpu+/k4oUW6rFZELOuJUq73aew/t4+7Dye5+3CSrfeO1aW7aWWpRxC48N1ncl8+y7Ojc2y8exxn1j4iuM//78dxe5afg/fTzz6w5PN2oK9bkPmbCD8ePET3bXlCd+abkjUslweu0iho023Ot0ZjwNFqiHrsSSNNkmJzmRXbjlee18NXfnIQqK/jbCMa3XpsQmymQHevk+9+qeSgrxbd1WVv28rPvlI5qGA33dVCO3HFB85bFXvgQjprrk48VbRs/778Pc/hri881th6MjrhSNCS9SxHLKMT7g00dA4bxUCWRMBxHbR1Fq1fSpmVUsr5/8eADwJ/IISwtMi81eWBMm9Q3JPETBRRB91oI160+VCZFc6VFSwuD5SmJH9olsL4HGrQjeJxEgi78GzoBd0ks2caPVFZs2IX5wrAacLLLxnAUUWX1apykJXgTuv82em9qPOljfvO7atbl9WqUg8BXOzxsuHucXJhJ7tesYZUX/t1WRfu2M43nv5Xeoe6ayptHT8vYPv2846Y5JWj6/A/VCT2CjeT7/BiLp2Yq5tV6lxBi21Ovc5VvdTjXC2kXueqXqzQXp0Iuis7O1cdOnQ4ltXiYI0Caxc9tnb+8aVQgRxgueCgVd0DzWSRwrMppC5xbPCh9bpXNDy4FqyefWUWdNI7x9Dnsjj7ArjXdh8R1qh+F55NERSnRu5AjMJkgvn7E9vidav05iXeoiTlEERdArPdi1oGRQg2/2aSwV2zFF0q+8/pJbcKjGD4QJqtt42i6ia7XzbMzJbWRKsqceGO7bzns9ficGrHfub6K7fET3Z1sf/Kbp59RQ/GEuMd7IBDKvR9NUvPf2dJn61x+EN+ir2rxRy0hJbYnEaDdVYMqF8J5VKwemmH9qqZ5qWVuquOc9WhHditbftqanSxWizqLcBZQogzAYQQzwe2AT8XQvxaCLF5/vHXzYuTEUJowCeAb0opbXU/XEvkUUqJPp2juD+NcAqcm/woCzayUu29/chPzJF5ehIALeTB2R88ziFUnBqeUyJoIQ+FqSS5gzGkTX+eMgIIFyWhgklegQmHxGxyLbAVG0nXVJZ1j80AcOA5vcz12X8AtCdeYOuto/jHsxx8YR8HL4hgtninunDHdv7sc9eiVhI6TEyU7trmv6RpcuCpQ7wj/EbW3BNn5jl+dr6ln3zQuvr1ZiCA0N0FBv8tgx4SjH7ER+ZUa27erCwtaRMtszmtHvXRSHMLsC4gVyuNZK/04rw2qAnZq45z1XGuTnTs9vdt5fXf7dUazk6vCgdLSjkHvAb4ihDiQeB64CrAC6wDypbcA9wthPgtcB8wAXzAyrW0ojxQmhL9UAZjIofS5cBxSgDhPP5mzVblgVJSiKYoTpeMoXdzH+413VVfIxSBaySMcyCIkciR3TONmddtVR5YCZ9e6jIoFUG+30+2wt/FSqzYUNypIusfmcGdLDC+LczUhuDy7eeb2D2wFrSCyaa7xuh/fJaZU7vY/bJhip7WOCzX/v1reO/n3oKiLL89Sik5uOswH7nqEwhg5N45tn5nilyPg8ffMUhibZNq7yzEu0tn5JMptFnJ+Hu9zF7utH2ZY7Oxk82pRKMD6uuxHY3Yi0bnIzZiE5rZL6fjXHU4GbBbFmu1YI9PbA1IKe8BnlfhqZEFx3wV+Gqz19LMiKMsGBQPpJE5E7XfjRpZXljfCJZEI02J59lZCoDqc+Ja043iWP5mWAiBMxJA8TjIHYyReXYKEfKAxcOFrcZlgnsihdHnIxp0E8gUCGaKtm4vrhVN1j4RZXJjF7E1fjIhJ8M7YzgK9s0cCgnDD0XxRPMcuKiPXTvWsPHucXwzzWsxfu3fv4Yr3/SiZT9zUkpMw+Ten/2a/3j3fx3zXPczWc68aZxd1/Tx1Jv6Wf+TGP0PpWx9fThmJMP/kmLqTR5ir/JQWKMS+WYWpY7xU3XNvrIhzbY5jTZKqodGs1dWdJtdCY1kr+IWzcyqRKvnXdnJueo4VicX5eHDHVbOqshgnUgsVR5opub1VgUTx3ofWl9lvVWjRtJKZEHHNXq0lM29obcm52ohmt+Nd1MfilNFjWXIxzO212UphqRvLoc3VyTpdRINujAtvINuRp2xkDCwZ46Bp2fJBZzsOX+AnM8ehnspuvel2PqjUYQpeeaqYaKbGuvsU42VOFcHdx3mjze/n32791c8xhPVOfPL43TtybLvqh72vrwb094Vgyh56L8pS/cPc6TOdZR0Wd31XdSrvDzQ1pxMg4WhseyVowkt2VtdGthxrjp0WJ10HKwV0KzyQCkl+kyO4r40QhM4NgVQAktvZI1GEq0oDzSTeXKPTyDyBu613fjPHK4726Y4NfIhL9LtIDebJjudRJqNOVnNimCWW/IKIJwqEErlyTlUpro8FFXrDHqzDGtoMkvfnlLK/8DZvSR629+tbzm8sQLbbj2EfyrHgYv7OXReL9LCe6eVOFeP3/t7PnLVJ5Y9p5aXbPvONMP3zjH13AA7rx2g4Le3lyWA8E/yDHwhg96jMPpRP5mtta+5E+msjUbjRyfTYGE70srSQDvQca46nGxlgidTm3bbYHVJhzRL862M8RxKsKS3UpYZwmsVjRhMfSpF4fdTSEXg3dSH1mWBAVUEoYEu3GEfxXSexIEZzGJjXaua1Zq3jAD8OZ3eRA5TEUx1eciuMIPXDroPp9n0mwncKZ2x07qZXn+0vbhdN1Itb7LpJ2P0PRln+vQQu186RNHd+Ba2EufqJ9/8JZ+89v/VfG4BrL0nzpbvTpPpc/D4OwZIrLG/Lsu3U2f4UynUpGT8fT7il9auy+pkr2qj1a3ZYXVlrxrR41qtvS1j9byrahjFUum2HbJXHeeqQ+fvXx8dB6uFLDaOsmBS3JvCjBdR+9xoa72IZTIg7S4PlKakuC+Gvm8WJegmvzaIusTA4JUihMAV8uLwlW5CU2Oz6NmCZedvFu6iSV88i2aaRIMuEh6H7RsFaAWTNY/P0DWeJro2wOgZ3Rjz159dN1QhYeTBGdb9cpJ0xM3TO9aQ6anPYblwx3b+46FPLutcSSnJpnLccN3X+Prffq+u9+rZleHML09QDGjsfOsA489vTpmjlTinTEY+lcL3hE70tR6mrvVgLnFZdLJXtdNI8rXVrdkbrXY4UbJXJ6PuquNcdehQPx0Hq0asLg800zqFZ5PIvIG2zofWX/t8q1ZHIcvIgkHh91MYU2nUwQCOrb1QqY11HSwWM3v7gvhHuhGqQnpijvycPXRZSxlZzZRE4jm8eYOEz0ks4LL/vCwJg7vn6N8dJx1ysf+5EfSAvZuMAPTsSbLl9sNI4Omrh4lt9K/o9Rfu2M47P/EGgj2BZZ2rn3zzl7ztzA9y360PNbRm73SRs284DMD+l3az96rulrefXylKHvpvzBD+UY7U+U7GPuBDD1f/fXWyV/bkZGrN3szmFq0qDbTIrDa2jo5z1aFDQ9jgY7x6sKI8UEqJEc1T3Jsq6a1OCaAGW7uJ1RORNFN58k9OIjNFHJt6cKwNEY9bm01bXA6iOlT8QyE0r5NcLE1i/0zNuqxmlYjA0kZWAcKpPF2pPFmnylTIg75CoXU7hM3h8QxrH49iqoLYi9eT7PO19P3rwRfNs+3WUXwzefZfMsDo83pq0mVduGM77/nMm3F5l858lZ2rerNWlfDEdM7/hwMM/XqOye0BnnpzPwWfvbdhIaH79jwDX0xT6FcZ/Yif7KZjy2BPgLlXtqcd5YGrtTW71Xt/q7JXdtFd2bVMvEOH1YS9LfuJhinRD2fRx7IoAa2kt3K3R6+zkoikPp2m8NQUQgHnaX2oPUcdzWaXfwhFwdsXRHWWHI7koSim3pguq9kIILBAlzUZ8pBbBbosb6LA+t9NoyYLjD13kJlN3bYvc3TkDDbfcZjIU3Gmzgzz7BVD6M7q21p5xpWqLf33aIZzVUZIWHd3nM3/M0160MnDH1zD2Pn2Lxn0Pa4z8s8plKxk7DofcxeXdFmd0sDW0ermFqX3tH8TnDLNyF61qmugXeZddeZcdahGx/FeGR0Hq0XEomn8B3TM2QJqxIW2zres3uq4c7RYfyVNSXH/LPreGErAhfP0fhRf68vHhBD4h8N4+4NIU5I8FCNncfasGRzVZUlmgi6Sq0CX5SiYdP/iAMHRBNFN3YydM3BEl2VXhIQ1v5lh7b2TpAY87HrFGjLh46/TC3ds58o/fhFimYyiNJvnXC2kd2eGM746AcCBK7qZOsv+WUPnhMnwp1J4n9KZeb2H6Td6kFqnNLDZdJpb1E4zKhdaURoIHeeqg33pXBMrp+Ng1UCj+iuZ1AnsK6IVJNpaL9qAp+525q0ylLJoUNg1jTGZQh3w49gWQTQpC1Nrvb3D68I/FAYgP5smn8jaQpe1FCVdVhZPwWBuleiyhCkZeHKKvqemSUV8HLxgDQWf/TfX3t1Jtvx4FKkKnnn5CLPrSw7LhTu28/l7P857r3/Lks6VlJJELMUNf15/M4uV4psosv3Thwjuy7Hnlb3c/7F1ttdlqVkY+GKG0B05ki90kvjLLvRgu1d14tNpbtF6TqbSwI5z1aGDtazYlAshPEKIjwkhdgkhckKIQ0KI/yuEOKE/lfXqr8ypPObvU0iFkt6qq70NBGqZZ2KmCyW9VaqA45RuHOvCxzmEjQ6PXEytEUvVpRFc14PmcZKLpkq6rEVOVjPnX9WDAnQn8wTTBbJOlemQe8W6rFYjgPDBOdY8NIbhVDlw/gipSGtv8OrBN51n2y2H8MTynP6+S/jio5/ivde/hchIz5JBDUM3uOG6r/Gucz/ccDOLleLImpz2rckj3//+jf0Uvfb2soQE9eYU/n9NYKzVOHSdRnadva/pk5HVVh5ox+YWJ0tpIHScqw4drGRFVlwIMQj8Fvhr4DHgX4EE8FHgBstXt4qRpsTcl0Huy0JQI7XB0Ta91UowZtIUdk4B4Dy9D7W3etlSuyKUQlHw9h8NmafH48fpstrR4GIpBBDMFulJ5NEVhamQh5zD3jfRAN5YlnX3HcKRKXL4uYNEN4btX+aYNXiLNsg/Xn0ZoS7/8vOtTMkXPviNljtWCxESLvj4ATb9YIbkGhePv32Q9ID9b3YGDnoY+byOKMLh96jMnddxsqxmNZYHngjNLVo18wra71x1OgZ26GA9Nd/hCSGcwG3AeuBSKeU1UsoPA+cBB4G3CyEGmrLKVYYsmpi7UsipAmLQRXxQ0OdqTF8Rm8s01VBKKSkeiFPcE0P4nbjOaI/eqlaEEHRtiODtC2IUdFJjcfSc/cX2nqJBXzyLYkpmgm6Sbu0Yh8UOpSKLceR01j5wmMB4ipktPYydPYBpc13W6/9iB54abtSkKfnJt37ZVudqIZEn0iVdloAn3zrAzOn2zBoubGzhmoA11+t49kimX6sx/SoFaf9Y0qqiHeWBq6m5hdWcjKWBHTp0sJaVhND/AjgX+LCU8tflB6WUKeAH8+e6yNrltZ9oKrOi8kCZ0jGfSELaQGzyoqz1QJ16q1YhiwbFXdMYE0nUfj/OJuqtrMbhK+myhChlsgqJbLuXtCwOU9I3l8VdMJjzu5j1O49xstodzayEYkoGH58ksmuG1ICf3ZefQsFjv3VCSXPVO9y95DFSSqZHoy3VW9WKf7zAmTeN4xsrsPuPIuy/LFRT+/lWUXauFja2ULMwdJNB6B6DuReoHH6Xir6y0WQdLKbZQblKtKu5RTPGcpwM2auO7qpDh+OJZXRLzlPTJ1sI4QE+BIwDN1Y4JDr/70mdwTKnC8h9GXAIlNP8CJ+9bkArRSXNTIHiMzPIgoG2IYzWt/xdkZX6q0Zq7suoTg3/UJjMdIJsNAUOFel21N1IpBUoEnqSeZK6ScLnpKgq9CTz7V7Wkgige3+cgs/BxpNWCwAAIABJREFU3JouDlywhqHHJvBF7ePUlgcIL/W3z+UKfOnD37ZN1qoSzrTJad+cZP+V3Yxf2EWm38nm/5nBkWtvi5RKzlUZYULvj0xco5Kpa1RG/1xj4KsG7lG7F5Xal2gi02lu0WJamb2yQzCt41x16HA84d7GR6fUmsH6QyAE3CylrFSHVb5rLzS8olWINCXm/gxybwYCGsoZAds5V5UwohkKO6eQpsR5Wl9NzlUZK41oIzX3ZYSq4O3vwtXlQRQNUrNpTMPe/fqO6rJy6GpJl2U0STtmJQM7p9nwy/1oeZ3R7UPE1ofarsta2Cmw2gBhKSXxZJq/+vHP+GZ6FMNhXwccQDFh4x0xNt4aJbHOzRNvHyDd1/6boeVasgcelYz8mw4mHH6vSuJce/+eT0Q6zS0ao1WNLdpJR3fVYbURtyiz1Cpq3UWunv93WAjxdxWev2z+30MNr2iVIYsm5rMZSOiIARdirfuY6LkVEUir519JKck/OAqA8Dtxbu5FOFdHSeBSCCHISfB3eUjPZUnEUvhDXjSHvZ1dT8Ggby5LNOAmt66bVCyFL5XDzrelzqzOut+MMnFGH9Pbepne1sumu/eiFlvv1JazVtUcKyhd8zdc9zV+fetDTJ/Wxdzze3n65WvYePc47oS9tXv9j6bwThd4+rURnnzbAJtuidLz+9bPgVvJQGHXWEmXNfEmlak3aORHDHpvMxH2jnmcUKym8kCwR3OLVmWvwB6lgR06rDbCkdUzE6TWT/gL5/993TLHPdXAWmzHcvormdYxn0lDUSI2elEizcs+WGUspW5SfDZ65HvnqX3LDl5dbTjdThRVJR1Pk4yl8QY9uBo0wM02vA6jpMuadKrM9QQoOjVCsZStnSzFkAw+Nomim8yt6eLZl2xk4y/248i1Jsp04Y7tvO5DO+gd7l62HHTmcIz7bn0IAfQ9NYcnVmDfpQPs2jHChl9M0jVq78HVgcMFzvrSBE+/NsIzr4kwfO8ca34RR7QodbhUaWA11DQM3Wgw8weSuYtVCoOCgW8aqNZOeDhh6ZQHtoeTIXsFndLADh2azbIlgkIIH7AWeFJKKRZ/AQGgCIxKKffPv+ajQojfCiESQohpIcRtQogzmvmDtBpzpoC5s1SaoJzub6pzZRVKVqewcxIzkUNbH8Z93poTzrkqozlUAj1+NKdKJpElOZtueChxsw2vIsE1OktgLk0m4GF6IISh2ruVu6BUMjj0u3GUosHeS9Yzta236e9bzlotN98KIJ/J851P33rMY4GJLFtvPYQrUWTP5YOMP8f+7eedKYPTvz5B3++SHL6oi12vi6C7mv/5rce5KiNMiNxi0nezTm694NB1GvmhOtawykpD2kmnPLDOdZxE2auOc9WhQ2WsanABtWmwhuf/Havy/JWAA7h9wWOXAF8ALgReDOjAz4QQS7f2WgVIKTEPZpF7MuBXV43eKrE/RmBXHGmYOE/tQ+s/8Vt8KYqCP+TD5XGiF3TiUwlM0941SgIIxjN0T8+hOzSmBkLknfa/vgJTadbdXyo7nV0fYnZdV1Mdltd9aMeSJYFwtFPgjR+9uWJDC1daZ+vthwnvTTF+bg/7Lh3A0OwdcFAM2PijGBtujzK30cMTbx8k09u866MR52ohwYclwzcYoMDo+zSSZ9v799xuVuPsq0awQ3kgnPjZq05pYIcOy2NFgwuorUSwvHtVa3H21vl/v1J+QEp55cIDhBBvAuaAF1CapbUqkbqJuXteb9XnRKzzLJkBatRIWoGUErkvjm9fAuFz4tzSg2jghr3RIZLHnKsJ4uTFCCHwBj2YpkkxrzM3ncTjd+P2LX1z3m48mQJacZZopIuZgRCheV2WnXFmimy6aw8TZ/UzdWqEqVMjbP7pHhTTGlerXBLYM9S97OSDfCZf1bFaiGJI1v9yEm80z+HtPeS6Rjjl7nFcSftmTAQw8HAK73SRZ14d4ck/GWTTD2bofsbabo5WOVdl3KOSkc/pTFyrMvmmki6r53Zz2TLHeEYv1d3vt2QZq4ZOeWDrOFmyV9ApDezQoVXU8kmfmP/3uBbsQojzgauAO6SUDy5xjgClbNnsilfYJqKpY50jmTFKequCidjgQemr7Qa9nQ0upG5i7pyGmSyFHheBjRHblQRa0UGwFvwhH3rRIBlLkU3lUBSB0+Yd+xxFg76JWWK9QeLzuqyuFuiywn1ddZeRqIZk6JEJnnnpJgAOnTfM0CMTDeuyamlkAaWAwszhGN/59K01t2EXQP+TcTyx/Lwuaw0b7pkgOGaf9vOVCB7Mc+aXxnn6tRGefl0fI7+IM/KrOUuuD6udqzJaCob/3WDmFZL4pSr5oXldVpVfdac0cGV0ygPrp5O9Wp0sDLxFx6rv/YuPG9s7yRkXbkVRFd787jdy18332m4mop2Ip4qW24MVvf8qtAXL7ihSyhkhxO+Bc4UQZ0kpHwcQQqwDvkMpM/WeZU7zr8CjwP0NrrellBtcyGgBc28G1Pn5Vv7WRqDqKfeQmSLmY1OQLSK2dJP1KwRt5ly1Gs2h0hUJkI5nSCeypBNZQn1Be8/LMiU9U3MkQj5SXV6KDo3u6TlUi7JCzUAAW+98lmSfj4mz+jlwwQhDj0zgjdefgaulJLDWrFU1gmNZtt16iD0vGeTZK4YYfihK35NxWzcacSUNTv/6JPuu7mb0khDpASebfziDWmj8+miWMRUGRL5v4jwsmX6VyqHrNAa/quOaOPa4skFdTV2jrKBTHlg7VpQHdrJX7aNW52ip1y8MvEVGenjnJ94AcMx5Kh23sDmSqqlc+aYXAXScLBuz2mxBrQr6f5w/9m4hxOeEEDcCjwFdwNXl5haVEEJ8llIXwj+SUhoNrrelSCkxD2VLbdi983qrFjtX9SBnMpgPjkHRQDmnH2VNkGVrqk4SFEXBH/Yd+T4Vz6wKXVZXPE14OkHRqTE9GKawSnRZa+8/hKKbHHr+MLNrgivSZZVnW317zw30DleWb0opMc2ltVYrwZXU2fqjUUIH0hx+fi/7X9SPqdr7s6PqklNuibL+zhizWzw88ScDZLvrvz5aFansekAy/AUD6YDR92ukzjz+97zaDKpVdMoDW0sne9V6FjYqUhRxxDm6cMf2ms9RKfDm8rp4z2fefMx5Kh23OLAqhOCKP764jp+kw4lCLKNbpr+CGh0sKeXNwFuAKeDdlMoCvwucIaW8r9rrhBCfA14PvFhKubfh1bYQoUvMZ9LIsTwi4kQ51Y9w2rujm5QSc1+8lLnyOlCeN4QIexo2nquFeDRVU0RTCEG4vwtv0INe0EnGUuhF+/v+3kye3olSle30QIh0k3VkK5l7VA1Xusi6+0fxzWSYOr2PydMjmDX4K4uNb7Us48zhGG885b28/6KPNexclVF1yYZ7Jhh6KMrsRj9PXz1M3uaNbAQw+GCS0741SdGr8sTbB5ndtPJyr1aXgXgOSNZcr+Mcl0y8RSP6UgUpFuiuOtTMaisPtAOd7FX7qOYcXfuxVx8JrH3+3o8v6XD1DFUOvKmaynuvfwv/8fCnuHDH9qrHLcbO1SwdVh81ewxSyq9LKU+XUrqllCNSyndKKQ9XO14I8a/AGyg5V7usWGzLSBuEdhZhTkes96Bs9K5Yu9TqBhdSNzGfmEbujSP6fSjnDiA8Rzd0uxjPSy/9Cu959/u45EVfa/dScHmcBMI+pIRkLEUuXa2Pi31wFg0i47O4ckXivUHiYV9TuvVZeZOt6ibDvxune0+MuTVdHDpvBN219GDrWksCF7dftwoBDDw+yyl3jVMIONj1ijUkB+wfpe/an+esm8Zxzersen0foy+sPWvYrhp7LQEjXzAI/sZk9nKVg9cqmPb/VduS1VQeOBtN1V0eWGswrRZOhuyV3ZwrqO4cBbr9NWe1omOxqucXQhDs9vPez72FfMb+tr1DdVaj/gpW4GCtBCHE/6PUXfD1wKwQYmD+y/69waeL8GASRQflVD9Kf/1ZglaVecjpDOYvD8J0BrE5jDi9F2HT+UmnbnsEgNNOe7jNKymhOTWC3aXLMpvKkU5kGp6X1WzUeV2WL5EhHfQy09+FYXN9nQAiu2MMPTJO3u9k/wVryIaOdfo3bF7f8pLA5egazbD1tlEcWYPdLx1i6rTmtp+3AtecwRlfnaBnZ4ZDLw7zzKt7MRzVr494qth2AbMwIPI9A99/FiieppD8Sw+FXrv/pq2nM1z4xKTd2atWs7C8u1oWKjZeuefZ4ixSueSv0rn+619uQy6jRxaKwO1z2d6u2xkrqlkapdkVDVbOvyrTrLvw91DqHHg3ML7g6y+a9H6NIyXszaE8nsbwCLQzgohAezfF2Fxm2YikjGYxH58CKOmt1nY1Lc3daIv2a689gBBH5WBXX/0di1bWGIqqEIoEQUAhW5zXZbVvM64lWiOA0Gya8EyCgstR0mU5rL9erd5YA5Np1v1mFAQcPH+EQ88rTZ29cMd2XviSC9tSErgc7kSRrT86RNehNKPnRzhwUd+q0GVt/v4M6+6aJbbNy5NvGyAXOv76aFa3wHqYy+h4fmUw8jUN0w2H3qmT2mpvfeSJgl0qHFrJ7EzypMhetZpatVXR8dnjnJ5qTpCqqUfO9d7PvYWb95acrf51vQhFYBpL7xNClGxKx8mqHzvYiGZjpf4KmuRgSSlFla+/q/ecQogXCSF+J4R4XAjx0HyL+MXHCCHEPwghnhZCPCWE+JYQwlfpfMes1wTxeBplXw456CB+moZw2TMDVEZKiXlgDvPRSXBrKM8dQHTbM5J4+eX/wXf/61kuuODYSOnZ5zzWphUdj1AE4b4uvAH3EV2Wobdel7XSKI03nScyEQdgZiBEZpmyuhWtpUkbqitVYMP/HgQg0+Nl8rQIr/vQDrRlHMRmlgQuh1qUbLx7gsHfRYltDvLMVcMUVoEua+j+BKfePEU+qPL4OwaIbzx6I20n56pMOBLEc0Bhzb9rOKKC8TcaRC8xkMsNy2oCzbQ5VlNLMM5O2Kk9e7Npd/aq1eWBtWirbnr002zdfgr3/+hhpkejR6oSkjWUnIr5AFxkpIdXX3c1Ukp+/t37aioDPBK4GxjgSLR34dfgYF0/c4cOlbC3FzGPECIEfB/4MynlWZQyYbcIIRbXUlxLqQHH2VLK04Ai8Knlzp+YK0BUx9ziQZ7qBZuXW0nD5Le37EM+Owt9XpTzhhBh+0Ygt2x+8rgmhuXvL77y261f0BK4vK55XZYkEUtRyLU/Nb4czoJOZHwWR6HIbCTIXMiHafNInVo02fKTZwnvmyW+tosem5QELoUABh+dZePPxsl1Odm1Y4RDuv2vj9DeHGfdNIEzYfD7N/Qxdn4AfT5DaxfnanFTC0dCMPJllcCjgtiLTcavaW2wo9k2pxJ2GEy/EhqtaGhne/ZWNrdoF+3qHFiLtsrX5cXQDR7+2RO8/6KPHalK+Prff29FeqlyZuqiVzyPe/77fhLRZG1ZqsnJyuer8niH9tGKhkfNKA8EEKshZSqEuAb4P1LKCxc89ijwN1LK2xY8dgfwAynljfPfnw3cLaXsWer8muaSvuG1oJX8Td0wcLK0CH85ioaBUzR4Dt3AKSr4wHkDmSkiXBrUEB3TdRNHpfOsEF03cCgrO8+H/mKU5z+/8vyj8qV3zatPaXRpAOhFA4dFzrGUoBdLH7rIiJ/pw2kcLSoL0ws6Wh3vJYGiU0MqCuGARmbamhu2YsGoaz1L8aprXslfffyjDK8ZIhqN0dPTjVLh2jp0YJRzt55n6XtbgakJMhE3KuAZt/dA4iMokBpyYWqCQUMjM2aPG3rdKG0EWpXRA8WwRO+C5BMHH5ZS1t7DuQGabXPcHo/09K895rFGbEZVW7EMul4qrarVPvSEHETjxfnXrtweHHnfYqOvrW0/mk2NozkVAs7+Yx4vFo2m7+d6oWQ/6tk7w0N+Zscay9Q1Y99ejr4N3Tzw0AP4fLXpCCvt7wttg2maaFptGcDyuT7xuX/kre+6tqI9OcISMoo+11BN79dOutcEiR1qTfmpbkgczsbuZaH+a1o3ZFXbYBVFQ+JwVP4Zp+b21W137F3jcpSNwJ5Fj+2Zf3yp4/YA3UKILinlMeEcIcQ7gXcCqKoTZ17S5SnV+Uq0hlN7UmoNDyiVVD6HXlCZy+mgGwSdThzupS9+KSXCinGpUluxvut5z6s+XFaIkiPT3WtNNygprRn3JSWk43n0Irg8GppDITLsa9nA2dLfa+XkCiZzKR1FgMut4RqypqeMlNJSXd/VL7+af/ynf8DjLUW/I5FeTNOkUCjidB4tZ8lmslx//fV0r7FXu24TScwwQEq8mkp4TQBsPY4YQJIQJqZi4JDgdlp3fTS2qhLVrq+CYhBz5BGtby3SVJvjcDjoWxQca8RmVLMVy75uhbZBUwU9ofnPaB324Nj3rY+V7PPJgoIQEO4/tsJDyuZ/YsvB63reR3WqhBv8fB55/xa1Hnc4HHz2Xz+Dz+elWCzicBzdy6vZkOE1Q8ft77+47+f84rKfA8fbiqUon+vTn/1nnnpmJ3/1N39JOBxe8c9vN3tTCdWptGSdVl5D9VzTy9kHKzj6HpWfbyQRvFocLAEsrhHROb7EcfFx5bzfcf7SfMTxRoDBkQ1y89nvBIcgvklF9ysMUH8nJ6s6QS1VV//iU3zc9a2nIasjtnQjhgMVL8JyhygrRMwrLQm5/PL/OO6xsnEsFjVuvvGvyKaDnG1NAsuS1r2maZKOZ9B7DFxrnHj8bq544wa++/knmi6ILjM7nVhR3b4EEiEfqS4vzlyR7pkEL33Xmdz1Bes0bla2+v3IBz96nMFUFAVTLzA9laBnqJvoWIzvfPpWxm7Ncg4vtuR9rSDv19j7kkFEt5MzH4rypsu2cNfnHmz3spbEVGHX5WGczw9y6p48m29P8rK3n2Xp9VEP5WYu1co/5s4xmf4Dg4EkDN2s8T9P/EMrl9dUm7Nu4yly+Jr/c8zzjdiNejVYsXh6Rbbh5ZdE+NEvpoHGSgRb1aJ9dvJGwv1unjv45mMfny8RbEWTi3o0WJe/5zmWfD7LZYLN0GFduGM7r/vQDnqGuomNz5KYTbHxjLV84+P/zVw0eeS56FgMl9d1pFvvQqJjs5yjV9/fx36Y5SbzO0fOJaDqyJyF5xr7YZY/++HfcO3fv4Yr3/SiFd2gL7Ueu3DF+8/jp599oGnnb4Y+dyXX9HK2wSrKpYFLNbd4+pmP1n3+1eJgjQKXLXpsLfDfFY5bu+iYFBBf6uROl4Lc7kc8niH0lI6ywQuRRpfcXIK9bpTnDWE+OY18OoZ8OoZy6bqKm0+7OkRt3vTkcY+V9zkhJOdecBf/+7M/avGqqqMXDdLxNKYp8QY9uCyas1IP8Yxek2E2hSAWCZD3uPAms4RiqaZFZuOpoiWGuloLdpfHxVsv+mDD528WyUEPey8dAAGn/HScrsMZxOX2zlzlAypPvaqX3Do3I/enWfPrjC1ybUsZUKlIpl9qMne+iWePYPC7Kmq25atuqs3p0F7CvYGW6bBq3cubQbivqylarHKnwHIzi97hbnqHu3lm527u+Oo9AMfoZRcfD7U3Lbrv1oeOnOvCHdu59mOvJtDtP8Zpqnaur//t9wBW7GSdrCzsGtwufa6dnKtGWRVNLoBbgLOEEGcCCCGeD2wDfi6E+LUQYvP8cd8E3i6EKN8Zvw/4vqxFaBbQkM/zUwwI5N4M5v7MsvMVmklsbnl9hNAUlOf0HfnefHgcmbfXQLZqe5qmGWw787d4fO1tY1umkC2QjKWQQKDb11bnqtaNpehQmRoMkXc7CUWThJvoXDWy2ZZnoty85wa+8uRnqhq6dLKxeTzNQgKTp3ex+8ohHFmdrbeN0nXYHvqlpUiOuHjsTwbIDzjZessca1eBc6X7JIevNZg73yR0n8LwN9viXEErbI4N6A75mNSrl3F3aIxm3yTWtIa+LsvHbVQbBD+0pnIXvvtufYgbP3rzMR0D62ladN+tD/Gu7R/hhuu+VvO5vv633+OG6752pAGGlBKzr6/isXFl9XTitJqFWauOc2UNqyKDJaWcE0K8BviKEEJSKsO4CvAC64Dy1fANYBPwoBBCB54C3lvzGzkV5rZp9B1UkBN5ZMZE2exFONrjh9ZS8iGEQH3JeuRUGvOJacz/HUXZPoDoan9XwS988d/weud4y7V/fURvdcy9tTDbnsWSUpJN5chnCmgOFV/IW1EcG+4NEGvB3JRayXqczPYGEBJ6J+O4WuRYrzSLtThy6fG5MQwT0zBxLBCu5jN5Hrrvd5avt1FMVXDwBRFim4J07U+x/leTqLr97533neZh4pUR3EmTbTfH8UZbP3KgEksZ0NygZPz1OoYP+v9bJfh4++J/LbM5HVZMqMdPzIJy8FbSzizWkTVYVIEA1TsF+gLVJxQszEQ1ykrPddzx3lfD+tJ/r/hAc8vt7I4dslZw4jlXsEocLAAp5T3A8yo8NbLgGAP4q/mv+hACZZ0H06si92Uwn0yibPEh7D7zps+HONVE/j6K+fAEYmsPynDzL6Dl2H7unZimgqqax2WzNM1gYHh/W9YF83qruSx6QcflceIJuG1fRiCBZJeXZMiHI1+kZzqBusyQRasol5usxFBXinSqqkI6niaeLRyjt/JvarxTkZUUfBp7XzJAptfN4MNRBh6btUUGaClMBZ6+LET8/C5C+wps+VECLW8Ph3ApA5o4y2TqFQZqGkZu0nCPt/833TKbs4qZzmfr1mHN5AsNtWpvlFYFzcKRYNsHDtezdy9FbGKW3gpOll2rEDpUxi6zEE9E5wpWkYPVapSIE+lRMHenMZ9KITZ4USzqdtcslKEAMuIt6bJ2RTGTBeizbvDsSvF65zj11AdQ1aMOQKUmF+0gny2QSZTaa7dbb1WNxVFPUwhmewPkvC68qRyhaLLlN/wrqen3h3xV9Vb+sJ93bT820H/FB+zTjj3Z72bfiwcwVcHGu8YIHbJ/SeAMJqNvHCC7wcPwAxnW/m+aNsznrUg1AyoVyczlJvEXmHj2CQa+q6Kl2+9cdViecNjHbA2DYSu+tsff0LDh1Ui7s1hWOVmegJtiQT+uM6BdqxA6HI/dHCs48Zwr6DhYSyL8GsoZAczdaeSeDGbaQKy1d5ZDOFSUs/uRe2aRBxL45rLILU5ElR7/zWT7uXcClbMr7WxyUcgVjzhXgbCv6TMW6mFx1LOoqcT6guiaSlcsiS+Za1s2pWyoFxvphV2lEtEk6hKltdGxWLOXWRcSmDm1i0Pn9eJKFNly9zjuOfsPEx4PK4y+aRjTp7LltgS9T9c+rLPZVHOuDI9k/LUG2VMkXb9RiNypIEz77q0dOtSLHbJY0LiT5Qt6+Og33kdkqJsff/lunv/Sc2xdhdDhWOxSDgity1pBe5wr6DhYyyIcCso2P/Jgdl6XZaBsap8uqxaEEIhN3Zh+J+pTM+SfmMS5pQfF39ps1sDAPjTtWO1H2TctN7l4+P7LLc1ixbKFqrX5UkriUyUjp2oKvpAPVbXv37FMzuMkdkRvNYcrb48b/oVGerHWKhQJYpqSnz70NC86cyNu99G/Sa3do1qNqQoOXRAhuiVI8GCaDb+cRC22pvyyXuKpIvFzA0z8UR/OtMnpN8/im7aH3gqqG9F8v2TsDTpGAPp+oNL1iP0/hx1OPFqtrW13FgtW5mQd04p9Io5pGIT7uvjsu7/EIz9/km/90w+OOd5OVQgdjmInxwpODucKVk8XwZYQTWUqzr8SikBZ70Vs8EBSx9yZQmbscxNTDWXAT2pbGAQUnprCmG5tffR3v/cRnnjihZT7aR3XV2u+yYVVhHqqD7EzTUkqfrTMK9Dtt71zJYEpj4toJIhWNIiMz9rGuSpv0uWNu5LWSlEE54z086UPf7vh7lHNpuBReeZlw0S3BBl4JMYpPxu3tXMVTxWZzRSZ2NHL+DX9BA8XOetbq8O5Sp5ucugdOlKFka90nKsOJwd26ChYZvH+XYly0Cwy0oOiCHqHwkRGerjja/fwyM+PH8HSwZ7YoTvgQk4W5wo6GawVofS5kB61pMvamUTZ6EX0HJstsWrIsFWYXg3XGf0Un41S3BvDTBfQ1oaqDuuzkrIG6+jsq2Ofb1WTC0M3SMUzmIaJN+Cu2F62VmIZvSXRThOQGyMUXRqedElvpdhET1NmYSS0mtaqtz9kafeoZpCKuNn7kgFMh8KGu8cJH7C3UDueKqL7FCbfOkJirZPBhzKs/6V99FZQ2YhKIYm+xGT2YhP3QcHgd1S0VKcksMPKsbqTYKv2dbBHFguOOlnVhhFXCpoJIbjg6nP5z0/e0ppFdqgbu+isyhhm6dpvVaCh3c4VdBysFSMCR3VZ5rMZRMZAjNhfl+XYFkE/GMeYSCGzRRybepquy1pKg9WqJheFXJF0IoMQomG9VauGU+qKYCboRlcFzskE4Vzett3rRjYP8KYP76h6/dtVa1VmZkuQQxdEcKaLbL5zDE+80O4lVaVsMLPDLsbeOoTuUdh8e4LI7+2jt4LKzpXhlky82iCzRRL8rULfjxWEYderusPJRCuHDpe1WHZxsqB6yWC1VuzVHu9gD+zmWMHJlbVaiD0+4asM4VRQTvUj92eRY/O6rFO8CM2+pS5CCBzrwiheJ8V9MfKPjeNYF0aNVJ9b0SiVNFhH19PcJhdSSnLpPLl0HlVT8Ye8KDYvCQTIOVSigVLUsDeRIxtLMwe2McYXXnUO11z3MnoGQyRiKVRNweN3c8dvd3HJWafgcR010HbVWkGpnfnoeRFmTu0iOJpm/S8m0Qr2LAlcWMajX9zHwSsDaFmTM74Txz9pr8HilQxpPiIZf4NOsQv6blXoeqgjhK9ET9DLpM0qIJpJuMfPTDTV1lbt7cAuDS8WUsnJmp2M0zMYPu5YuwfNTlbs6FjBUZuwVNMrq7CTcwUdB6tuhCIQG72YPhV5IIu5M4X/H5F7AAAgAElEQVSyuXnOilWoER/C46Cwc5Li3hgIUHubs+7vfu8jeL1zvPlNH0NVzWMGDWuawdYzH7S8yQWANCXpRIZiXsfpduANemydYYSS3irlcTDndeAwJD2JHJopcdvIGF941Tm84+OvPtLSPtQbwDQlX7zt13z5zt/y6g1r+ZPXX0Jk+GhXKTuWBhY9KnsvHSA94KH/8VmGHo7aqryuzELHKtTfxYGLfYw9z0vwUIEttyVwZuy16ErlH6lTTSZeZaAUYORrKp6D9g9yrFYm9GxNw+mtppFZWHahHYPk7ZTFgkVOVqR0g1qpFbtdg2YnI3ZrXrGQVmatwH7OFXQcrIZR+o/VZTmGNDg+6GMrFL8T5xn9JSdrTwwzU0Rb09UUJ2T7uXeiKC1s1W6YJGIpTMPEE3Dj8jht71yZwKzfRdat4cnrhJP547rP2MEYX3Pdy46bF6Yogle94Ex+/g+38+Svxvjzr/+mak2/HUj3utj7kkF0l8L6eybo3me/WTyLjWbRLXjq5UHm1jsZeCTL+ntSVPlItYVqeqvYpSaxS0xcoyW9lSNh78/haqa7y0tsrr5Zbd0hH5PxNP2ae8WvbWQWlhUs1TXWztixVBBK+01Xb4CP3vh2fEEv37/hDi7+w/OOacVux6DZyYZuSttmrKDjXJWxzyd7FSOCR3VZvlEdvZBF7bO3LkvxOXFtH0E/EMcYTyLTBRybexCadeU7rW5yUczkIZ1HCoE/7MPRhPlWVkc6dUUQDbooqgrBdIFAtnic3soOJSVCCHqHQhWf6+8O4souGBi4IBIK9nG0opsCHLwwgiNrsPVHo3hj9tJbVYpGpntVdr2yi4Jf4ZQ7k/Q/mWvX8ipSUW/lkkz+kUF6myTwO0Hfj1QU3b57YYfVSajHT9zCYcWtzmLZYV9fTFdvgL/+yrvoGQzzsdd/nifue4abPv5D2+zhJzt2zlhBawcHl7GrcwUdB8syhEtBOc1P7pkkzqk8MmegjfgQqn1vLIQicGwII3wO9H2z5B8ew7E1ghpaeSSzEks1udB1B//2+Q/h0Xsafh8pJfm5LPnZNCgC0+tsinNlNTmHQizgRgI9iTye4tItttsV7ezu7+JP/+ma6o0sxuPHPbawQ1W9Qy2tQgoYfX4v06eHCIxl2HDPBFreHimgxW2SFxrNmS1Onn1ZEC1X0lsFJuyvtyr0lOZbFbshcrtC1wMKwrYtWjp0aC9lJ6udWayyrrZ3MIRhmJimySff8SVGn520bbDsZKKSjdAsDIRbRauzVtB85yqWbSwIa/+70FWEUASZQRWP14UxnqW4J4m2zofist+HYSFanx+hKqVW7k9Pw6Ye1J7GhdZLNbkAk4suupuH7nltQ+8hTUlmOoGeKeDwufD0BphrY8lKLUgg5daY8znR5vVWDnNpPU0ro50LG1mk4mmc7pJR/ektD3LRS885tpFFtsB/XX9H1XO120AX3Qr7Lh0gNeil78k4w7+dsYXeaqlIpBRw8AU+Dp/vJXC4yNZbEzjT9nAIy1QypqktJpOvNhAGDH9dxbu/o7fqsDR2bHTRypbtZdoVPFusq9UUlULepLv/aLWCnYJlJxN2z1aVOVGzVo06V9BxsKxHCLReF4pboXgwQ/HZJNoaH2rQ3puS2uNFCbgo7J6h+GwUM1NAG2lMl1VucnHtmz+Gohzf5OI5Zz/MzgdfWneTC7NokJ6cwywauLt9OFvYzKJeIyyBWb+TjNuBO6/TncqvaL5Vsw3xYoMb7PZjmiY3/ftP+PfHfs/V45O87xUvpLc/RHQ8zn9dfwf3/fiRJc+52EBDaxytTLeTvZcNUnSrrPvlJD17WtOKuRpLZavK6C7BM1cHiG900f9Ylg0/T6HYZ3ZwZb0VktmLTaIvNnFNwOB/ajjmOlmrDq3BSh1WK1u2H3nPNuqxKulqnS4H11z3suP29eXmZnVonFpshJ04EbNWUNpTQj3+hs/TcbCahOJ34NwUoHggjX4gjex3o0ZcttZlCaeK89Q+9P2zGGNJzFgW57YIwlX/ZbL93DsRwvomF8VsgexUKaPj7e/C4W1dBLReI6wrgmjARdGhVtVbLfm+LchiVW5kofDya17AN3/5KM988V6u+7df1XXuVjpasY1+DrywDy1nsPX2w3ij7ZkVtRKDmelR2fWKIPkulY13JRl4zP56K9MpmfhDg/TpksBjgr5bVZSi9XtcLGOv8sgORwmHfUzPptvSSdBqHRa0p6Ngu5ys3sHKutqeKo/D8Y4WdJytRlhtThW0x7GC1pUEWuFcQcfBairCqeA4xY8+msGYzCGzBtqI1/a6LG1DGOFzou+fJf/oOM6zBlA8K99Am9HkQkpJIZElF0ujOFR8/V0oTR6YbAV5TSEaLOutcngK9aUlmlmz7/I4qjayGAgHGHkyZomappKjZRVSwOHtPUydGcY/nmXDPRM4cq1NAdVjMKObnOy+KoBahNP/K05wzF4ORUW9Vbg036oQgd47FUL3Wa+3srOA+URjUs/V1UnwRKXVpYILnaxWEOzxYxgGmnL8z1hJV7uYZu7jJzqr0akq03GuaqfjYDUZoQi0NV4MTx5jIkdxTxLHOh/CxrosIQRavx8ME/3QHIUnJ3Gc0sNK752sbnIhTUl2JkkxnUfzOvFGggil8qJa0b63FgMsgbRbI+5zopnzeiujcRGQ1ZHOLees50//7zVVn4+Oxy1vVbDQqMxOzR3TeraeiKjuLOmtksNeIk/FGXmgdXqreg2mBO7/iwgA/vEiW29J4ErZR29VzZimN5lMvMYACcPfUPHutV5v1XGuWkd3yEcs3j7t6ky+YCsdVjtKBeGok2U0eQsIdvv4qy+/C9OEQr6IcwW62sUsdLQa3cNPZFazUwUnrmMFzXGugOPG7XRoAkIItIgbx3ofUpcU9qQwk/aP+GhDQVxnDyI8GsXdM2jRLFLWfse6XJOLyy7/FTP52oSEZtEgNR6nmM7jCnvx9lV3rqz+kFSilg+7BOJ+J3G/C3fRoC+etcS5snKDczg1XveBq/jYN96Noih8/99/Ri537N9kpQa3HsqdkcpGJ54qHvmqhWzYya5XrCE14GHtvZOs+U3znKuFayvfUIT7uo75qgXdKdj1yqN/yzO+E7e9cyWRxF5oMPbHBtocrP13reNc2YTuLi8Terbdy1gx4Qb361CP3xJBeiXaUZra7BvYQMjLX970LvpGuvnnP72JG//6e0wfnsU0JdOHZ/nSx/57WV1tJRrdw080Fv789doIOxDP6B3nqk46Gax5oqkMAzTeOW8plIAD5yY/xQNpivvTqANu1F6b67JcGs7T+inui+GYyZArStwjYYS6/E3V0SYXf4OiyOOaXJx66gP87K6LYZkslp4tkJlKIAFvfxCH12XBT2YN1bJYxrzequBQCWQKBDMr01stR72lggs7BM7NJDENk57BEHd/9zd8619+xMF+Fw+7irz/D15AX0+w5kYWVrI4s1XJQC+Mjs6u93Hgon7UosmWH4/im7ZOb1Xt5qC8xoU3FCshG1bZ9cog2bDKhruTDDySs00z82pdoUyHZPIVBqmzJP4nBP0/bK7e6mR0rnqCXiYTGfq15tqiDsvTriwWgOpQmqLH8nd5+cuvvIuBdb18+j1f4akH9wBYvr8vtYefqJmtSrZiNTlSi2lHd8CFrHbnCjoOVssRThXHxkBJlzWxQJdVJRtjB4QicGzsJinAOZ0hs2caz7oelBqaX5TKBKulEpZu1X683iqI6rDPJVvNAOc1hWjAhVQE3Ykc3jr1VrWwEiO8uENguC+IlJJbb/o53/q3nzB2WphMyMUDP3iYP//MPba44a9koMoGWwqYPT9C/Hm9uMYz9N9+mGJGZ6F6oJIxX0lEtRkGMrbRye6rAwgDTv/eHF2H7BPhrRapLIYkY6/XKfRDz10K4XubM9/qZHauVjPtbHTRTNrR8OLIey9oamSFo+Xr8vCXX34ng+sj/MuffZWdDzzb8DlrYbmA2Wp0uJYLvK122pWxgtbZgGY7V9BxsNqCUAXaWi/GdB5jMkcxn8Kxzotw2luXFdzYw5xLxTWeJvPsFO413WjB6qLocpMLRSmf49jnNc1gZM1BHqrwWmlKstEkxVRZbxVAKCsrRWqFDmsxaZfGrN+JakoiFpUEVmOlnacqdQgUQnD+1efwj79+GMOpMrhrlq4pe5cZhfu60B2CfReESQy56d2TZs3Dcyh+HyzaKxd2ulr4+nYggYf+tJuiX8UT1Tn1f+ZwJ+xRErhUtDKzwWT8tQYoMPRtFd/u5lSWd5yrk5dG52GFevzEoqmm7ff/P3vvHR3JWeb7f96q6tzqVqsVZzTJk22Pc8I54QS2weAE2OaatHA3EC77Y1l2793AWfaw3F12gb0mGWPA2cYY42yMxzlnezw5S6PQUudQVe/vj1ZrWlJLanVXd5dm+nOOz7HU6uoaqep96vs+z/d5GjEbC6rvLlg8RFjXDYSAf/ufN/LWsxtrcLazM3ntLadCoZHMtBl3oIipYhoprODAyFoV0xRYDUIIgdbpRrhV9J0JspviOBZ7UWyysEyH6XXgXdFBevsw6e1DaK0eXL2hkmWOMze5UHn33Q9w728/RPukij9TN0j2RzGyOq5WL65W75zLKGvRvnc6hpM6IW++kUXC48CV1QnH5jbfqlLKDcCKqkzbIbC9uxWEYPFrg3jmQb18KqCx+dQ2Mn6VxS+N0LEpOe3P2iUIZn0K7340QM6f30Q54uYIqk0aBU4XVCWSkQ+YDJ5n4hyCnt9oOIdrk9dsiqvG09bqo38k0ewkOIlGlgpC5SJrcsWCw6mRy+TwB321OtU5M936XGpjbDLVirCCeCpuzFEKu8SQWmKXckA4cMQVNAVWw1EDDsSKFvTtCXJbE6g9HtSwfboplUJxaniWt5PaOoQ+kkIfSeE7tGeKL2umJhfFHqzBRMv4zqWezpHsH0VK8HYGcPjs47cqRai9heHhOANBN1mHij+ZJWix32rWc5hlPlbvii7+7NtXTitS9w1GWfrKAFrOHtmUmRhZ6GbrSa0ohmT140P4B2tjbreSdFDhlc/lfYZLnoiz4KWULcovZwqqpibZd4lB7CiJ7x1B990qSrZZEtjk4KSRpYJQmcgqVbHgmGaIsN0oR9SUI8LK+YxKfbQHAo0WVnBglQROpimwbIDiUnEsb0HflcDYm0Km9CmlTtVQi/kmQlHwHNJOavMAZipHassA7iVhFOf+S6rQ5OLT1/0dQkxscpEn30nw3t9+KO+3iqVJD8VRtDG/lbP6y7PWZYJZBdLd/rr4rWaiVNMLRVW4+PozuexLHyQVT/PAzes5++MnTgi66XSWO757v+3FlQT2Ht7C3sNb8A5lWf7UMM6Uvc8ZYGSJg/c/nA9cC59LsvAle5RfFtpAlwqquYBk79UGmYWStscV2v6kIGRTXM0H2oJe+kaTdGv190JZ4cOqpl17rcsEoXGlgjB3kVXJEOH5xMEqiqzATsIKDkxxBU2BZRvyviwfxr4Mxr407qTA7DZRtOr8DrWcbyKEwLuiEz2WJr1zeL8vq2W/mDvu2AfHhVXJQcPdW0FKUoNxcvE0mmfMb1VGl8LZqHWZYFKFiFOgSnD0x/E6Gjv14MxLjuG6r3+IjgUh0qkUF11yIV2Lwjz34Ovc+M/3EIskeG/Dbq768oV0hQMM9I9yx/f+wLM23800NMHWk1oZ7fUQ3ppk8YsjKDbXVhLYc7yH7af58A4ZHPGrCO7Rxp/0bIE1tcRk75UGUoOeX6v4NzT9Vk3qQyjsJ1Knsu5KKJQK2kVkwfTNL5xuB7mcPmG+VYFyhgg3OTCxg7CC+q7/jRJX0BRYtiI/4NeN8KjIHQmSu+O4O71oHnv/mbQWN97lnaS3D5HeNoSzO4Cj3Y/PFx1rcrHfjFQQW7ru4Oab/w/xqA91cIBczsAV9OIKzd1vVW8kMOoQJBwCpyFpy0iiOZPhnNmwwHvy+ev47DcvGc9OeX1ePF4PD9y8npu/8zsAou1ufrVvN7f89U9Y+M4wnnkwiy3dorL51DbSLRqLXh6lY2PCFuV1M2FosPn8FgbXuglvSLPiwRhqg3/VkwOrOmkzQCIZPd5k4CITRwQW/EbDOdj0WzWCRrdqr0XFQz2pZdVCo/1YsP/BeLpslsOp8bX/+jSaQyWX1XEUVYLUY6ZhE/thN2EFB27WqpjmoGEbogYcpLodoAhSexNko5k5DfitNQOZqWVOikvDs7wDNeAm2xclszPCccc+wOQmF/u1k8kxR91PatM+hG6gh7y423w1EVdWDqE0gEFXXlz5cpL2jESl8Q+LV3zp3JIdAo87+3AkMLC0hT2HtuFK6Cx9dWBeiKvRHhfvfbAD3aWw6okhOueBuEoHFN66upXBNS4Wr0+w6j77iKtQR6BkcDVVyb5LDQYuNvFuEiz6cW3E1XBSb4orm9PWWn0DhFLxYS6UO3y+FPUaMt+IAcRTzmPsXi5+eNYcKl/5/rUcdtIKbvjW7dzwt7dbMkS4yfxk8pDgRoorvVCW3t5yUIgraGawbIt0CHwL/KT2JckMpjEzBq52T8OzO6GQj0ikdMmhUBXci9vIDcTJ9kfpDG2ascnFoYe9wFOB4zHCS4gmrBsOW4yVZYJZAcMugSGgNWPim/RPa5QRWtVU2rtL16OHe1rZdVgbibCb4N4EXZtG69LdsBok0Heonz3rWvCM6CxfP4wr2Rhv21wYXeRgw8UBpAJr744S2trYBhzltNzVWyR7rzJIL5KE/qQQfrzpt2pSOTPFh7Leb/MywWIaWSpYoDibpTlU/v6/ruGo09fyk/99B+vvfRmwfohwE/tjl4wV1DdrBfYRVzBPBJYQ4gzg38mfbxb4cynlcyV+7ljgEeD9om/fIaX83myfEfZ76Ysn6aYxZRmlEKrA0+0lG8mQHclgZE08Xd6qfVm1RAiBs7MFxe3gF/9yPb5ggv/57f9ECKY0uRCK5LQrXmL90yugRgLLKpIqjDgFioSOjMQ5g52mnoH3kEMX8vm/u3Ra4d0/HCURctG1cYTWvUnbZ4AMTbDthFZGFnto25ZkyYujKDWcJWYFEth7jIdtZ/rwRAzW3BPFM9I4QVhucE0tMtl7lYHphO5bVVreafqtiqlH3KkFjWx0YQfq0ezCDn6sYsLdrXzh7z/CcWcfxo3/fA9/vPOFRp9SkzpjJ1FVoHjt12r83GonYVWg8SvDLAghWoG7gQ9LKZ8VQpwJ3CuEWCalnDwApx24S0r5uXqfZ60QQuBqc6M4VdIDSZK743i67CMCp0MLuPGu6OCU4x/GNAWqKks2uehZsK3m51JNwJXAS29FiLiUcb/VTOOg61Wj73Q5+PgXzuLCqz9AZDDGfb98ivMuP2FCmWAqk+OH9zxF24v7EJEMwgYPAjMRMQzeO7eddEBj4aujdG2wf0lgDsmmC1sYOMxN28YMKx6IoWUbIwjnEmDf8Q+z638YOKKw8CYN176m36qYgz3uNNqHVU03wXrRaJF18vnruOJL59LeFSSTyeH2OLn53x/kjp89CUzfAKPJgYWdhRUcfFmrYubDHXg+sEFK+SyAlPIJIcRe4Bzgvkk/2w6cJ4R4fuzrR4HvSClnfOI1bLhDPnkX0uF3oDj9pPqSJPck2Lh5+rlHdsEfSrLupDdQ1embXCRT+QUhFPYzOBS3VVA1yZcE7tkUw5eTBHOy7Af+Wgbdtccs5bN/ewndi8I8eteL3PqDR0glMuzY2McVXzqXcFeQvkiMG27/E+//6mW6NBcRMnMeVFlPot0ubopGyHlUVj45TKDP3hlNgEyLwi9cgwwc5mbR0wl6n21MhnAuAVaqkoELTTa278G7SdB9h4qasn9JoNpT9/b2NY87s9GvN6bRRbWdZ6tt125VmaCV3tvpaJTImtzUyO1xoucMosPxsjsNNpnf2FFYQf031ewqrgCEXZonCCGcwJMlXnoAWCGlvKboZ+8CnpRSfn/SMTxAWkophRBtwA8Aj5TyoyU+7/PA5wG87b3Hfunv/pmlHR4cVfb90A0Th7AmFVrqWJmMwfpn9rG3L8WqlQGOOzqMqs7+gKTrhmXnZYwN0dFmOV44/FNaWh5HUaYagk1TIxY7m6Ghz044R02pzSOqMeawLPf4kWiWx58bJJHSOfPkThZ3zG03Vx//vLmd52SWrVjCcScehc/vJZFIEh2JsqC3h+hojKf/9Dx9e/aN/2zWMHl4R5St0Qzrun2c2uGb8O81xmZdWdAB3zKklLyQTvFEKkGXy8FH3C20qjPlCO3BdiXDHa4IupB8NBNitVH/3X6jqEx1clfAUiQVnYc6d9DnTnJippuj9oZRaiAJC2ZmK0pCJCZ7et9loGcT/3nMrS9LKY+r+qBF1DPuFMec9vaOY7/9nz+a8dyqiSXVxqHp4kWwRWM0NnuDB8MwZ40Ps31+tbHA0E2+9+//hKop/K+/+lZVx5oNq9b7AoGwm+hQetrXL//kpfhbpjYkiccS3PHre8e/NormG9Zj3Q90eonum5zgtTfz6ZwLa35rl5fY8PTXRyOYbd0PtLmIDlu3caqbee2i1qj0sHD8L3zh6orjjm22NqSUWeCkyd8XQnyTfPO2YnRKdECUUqaK/n9YCPE1YKcQwlP82tjrPwZ+DBDsWSwfe3cYfUfei1VNI4mhaP5GtWLncXiaOnrpcXDoGifvvDfK5p0J3J2z+7KGRxKWlnxEytihvOLyt0uKKwBF0fH5/sjdd58xnsWK1DiDNVJmmWBqbL6VkNCWlSzucPPIb7bN+fMiVTa8OPn8dXzguuPHdyn9fh8+n5dX1m/gv755B9nM/vZ0GZfCruU+sm6Frl0pzjiik8dufL/kcSMD+exno3c2TVWw7YQgkSVeQjtSfOLIdv7032809JxmQwJ9R7nZdpYfV8TgM54eXvvhO+yo4zlUsnOZXmCy92oDQ4HuO1SOOb6dR3++wdLzsrosRHh1Atdux9kTJ/VUuOrjlaKecac45iw5ZLm89f3hGc9tqIpW7cOj+ThUqQ9runjx4TM7+P0TA7O+v5z4MOP7xzJY1cSDkaE4+/am6OzxVLR+z5VCabgVmaxzr1894/356c+Xvi68Pm/J9xXWfKjtuv/BLx3JIz96vWbHrwV2P+eRSR0rQx2BWa+PelLuuv/BTyy17D6sddaq0Mk0VOXxbbSXPS27gMWTvrd47PuzoQJpYEbZ3OpxoAU0tAQkIhlMs/KsXjhQ+5IOIQTHHh3G3enByBgkd8cxMo1vGzuZ2+/4Bjf+4p8pJEmnJktNjjtu4kyOalr0lsNMZSMSiDoEwy4FzYTOjMRV5WzYatr5Ttd6fdGKrgniKh7Q2LamBcMhWPx+grZ92Rk3CUq19603Ga/Ke+eEiSz2sOD1KMueieC0+fwzU4XN5/nZem4Lwe1Zjvj1CB1y6iDPWlFouVtot1uuuIoeZbLrMwaYsOinGi1vWr/sF5eFWCGu1J4Uoa9sxLE8QeyWXuJ39VZ9zDlS87hTS9qC1cWhtlYf/XrlO+ShkK+qdu3VPthA/UuGCtd9PVq4p5KlL62h/tGS3y9eL4pbdzexL6VarNutFNDqdX/Wz0xl5424gvkhsO4FjhBCrAMQQpwArAEeEUKEhRBPCyFWjr121Zg5GSGEBvwLcLOUcubHZAGuThe5AOhZg/hQakJq3a44/E68C/wgILknQS7W2LbQpTju2AcxzfxlVqrJRXf31vGvrbigZ2KmG9IEhlyCmEPg1SUdGYlaZfVstQF32tbrXfnvS2Cw28XOFT4cWYOl78bxxcv7rMJi3YhgG+t08t557WT9GiueHKbn3bjtm1lkfQpvXdnKviM8LHwuwdp7omiZ2pdXF/4+xcKqXKQi2XeRQf9lBu6dgsU3aLj6rP1N12K2lfPIEUJ/tQkcJiM/WE76hdpkr2ah9nGnyaxYseFWTxdEPUTWJZ8+Da/fjaFPTLBmUllu/9GjM59fU2jZmlLrvZ1EVYF6CyuYmLWaD+IKbFQiOB1SylEhxOXAz4UQknyZxkVSyhEhxCJgCVB4EvUAjwkhTPLPn38C/r7czzK8gpDmIjGSITacwht04XTb+1ekulS8C/2k+5OkB1IYGQNX2F2XeVkDmdSMZSBe7yhr1z6Pqu5/zpiuyUU9GU5lJ5QK5sbmW+kCglkTn45lD/yVmKC7F4f5zN9cPO3fcKh/FFOBPUu9xEJOAsNZerYlK5pvVU9DtAT2rfKx66gA7pjO8qeGccfsP98q1qPx3qUBDKfC6ntHCW+s/UZGtQZm3Svpu9IgtUzS+qxC+0MKwrReXIGFZmYh8V7Yh++D+8ht9RL9xVLMaP0yhMXUM+5MRzjgpb+KMsH5jhXNLjRH/f2ctWx8ccFVJ3Hll87lqQde5/VnN3HFF88h3BVkqH+U23/0KM889GZ551g0P6vZDKNxlCr/szON6go7n7JWxcyLO0pK+Ufg+BLf3wn0Fn19I3BjNZ+lOVVawm4SIxmSIxkMn4nb72j4gN+ZUFQFT4+PzFCaXDSLmTVwd3lRilytba0++i30YZUzUPK4Yx8knxsqRb488Mn1V048bo27CU4ePDzutwLaLSgJLEW5rdtVTeXia0/h0v9xOrmMzuP3vMQpFxwxoUwwk8rymxseY9vqFjIehc5dKdr6M1UJwnoEW1OBHce3MrTMS3BXimXPjaDq9miwMxP9h7vZcq4fZ9zk0Dsj+AZrJwit6gqV7pbs/YSO4YOuu1QCr1tbqFCLFrzCbdByzXZch8ZIPdtG/K6FYDS2wKKecacWWDEPq5p27dV2E7SSyZtqtaYWIuusS4/lmq9eyAuPv8MN//hbTMPkmQer86wWrzP18mkd7Mw3UQX1b7s+/rl16BBYK3EF80Rg1RtFVfC3uUlFs2QSOQzdxBt0odSow91M9OmpsgKkEAJ3uwfVpZIeTI3Ny/KhuhrXkSfhKzIAACAASURBVK27eyuaNvGBtKBTNc1g7drneemlCxuSxRpKZXG0OIk5FRyGpC0r0Wr4vB9qb2F4hqYXK9ct4rN/ewm9h3Ty7MNvcvO/P8joUJx3X9k23np9qH+UX/78cW7ZvQ2cgkUbE/jL6OhV9jnWSGhlPQqbT20jGXbS82aUnrftXxJoKrDtLD99R3to3Zpl5f1RHOnaXCBWttuNrTPpv9RATUHvz1Tce2ojrqwMsmpXmsD1W1HDWWJ3LCT9TPvEz6xDu+0mU6m2XbsVWLHhVog581lknXLBEVz/Nx/mtaff5wffuhPTsH4nsNT6D02xZQXzUVRB44QVzH9xBU2BNS1CCDwBJ6pDIRXNEh9K4Qu5a9YSshRtQe94N6hycbQ4URwKqf4kyT1x3B0eHP7aBZWZygRvv+MbnH7abRx++FMIsb88cD+ls1hQ20GTgbCPgWyWtFPBo0tC2fLnW1XLcFLnwx89enxA5NC+KHu3D7DuxBUM7h3hu1/5Fa89vXH855956E2eeehNJDDc6WJfrxtXTtK7KYEzWxuLh5VCK97uZPOpIUxVsHz9MK277dVathRZr2DDJUFivQ4WvJBkyfoEwmJtZfUME6lIBs81GTnVxL1N0HObipaw7qquVaB1Hj5Kyyd3QFZh5IfL0bdODHR2nnHSpDxmKyWvB4XKhUaILIDhKjoMHnfmWr7w9x/h3Ve28R/fuG2K98pqJme1mmJr7sxXQVXgYBFWUFvvf/NumQEhBC6vA1VTSIykiQ2l8AVdOOzuy3JreV/WviTpfSnMjIGzzfo5PbOVCRY8WAVRNVuTi/HjWjRoshQ6kggGplPFkcgREmrdxFWovYUjTziEz3zzEtxjQb69O0i4K8CrT7/Pf33zDjIldutNAXuXeImGnbREsizYlkSpg32+GqElgcHlXnYcG8QVN1j11BCeqP0N1fGuvN9K9yis/H2UjvesawRXq8GQhkfSd7lBcoUk+LxCx4MKwrBeXFkaaIXEe14/vgv6yW33EL1xKeboxAffpriyxodVbhXEdFRbJjhbKXk5WLHh1iiRBZVns448eSV/8e2Ps/md3Xzva7eQq3O34JnEFjQFF5TuxjvfBFUBOwgrmN9Zq2Kad0cZ5H1ZHhKRDImRDG6/ictnc1+WNubLGkyTHc1iZE1wyaqC5VyZyYPViCYXaUxGxs6nDYVU2iCCUddge/1Xzx8XVwWEEPQe0llSXOWcgp3LfWQ8Kh27U4T7qvNbVcJcS0dMBXYeG2RwuY/AnjTLno2g5ezvt9p3qIvN57XgTJgcfssI/n3VPczUYxcz05n3W+kB6PytSvAV6zLstTI0C5dByyd34FoXJf1CiNgdvaDvP++msLKOSqogJrzfJmWCVm24Tfbg1pNyRdbJ56/j8k9eyKe/4AUJA3tH+O6Xf10yPtSTyetXKcF1MHAgCaoCjRRWUL81v57iCpoCawp9JOlm6m6hoir4w26So1nS8Rx6zsQXdCFK+LLs0v1JCIG7w4PiUskMpnDmFLJeLP+rT1cCUsqDtZ/pywPB2mYXEkkCSQwTDQihoiFw1TnYqqpCe1fphbjQer2YhF9j9yFepCLo3ZSgpcEZoOl2M4uFVtatsOXUNhLtTrrfjrHgrZjl5XVWIwVsO8PH3uO8BHZkWX1fFEeqspOuZ2lI7FCT/o8aKBlY+HMVzy5rxFUtg63akcn7rToyxO9eQGp9O8U9O5vi6sDEijJBq8rGW8N+hsscOm81xSILppYMnnz+Oj77zUv2NzYSEAz7OeqUlWV3CKwXpQSXYU5dA+drlms68TjfxVQxdhFWcGCUBE5mfl75NSLs9zIUn363TwiBN+gk41BIx7L5ksE6+LKqLfFwBpyozrwvS4uaZNEtaz8/UwnI7Xd8A693lGuv+d+oqjHBg1WvJhcmklFM0kjcCFpREJNyQPUoGVl1+EKu/8r5M7ZeLyCBSIeT/kUenGmT3s1xXBl7jdQp1X0q3eGk75x2pEPhkKeGCe2yv98q5xFsuDhAdLGTnpeTLH1ibn6ryQ8U9Qi+UkiGzjaJnGHi3inouUVFi1ef16x1sHUeGqXlU9vBEIz+93Jym5t+q/lCo8sEa1E23ohSQdh/b5XKZpUaLu9yO7jiS+faTmBNJtQRQHUos5YVFtNI8VU4r1KiEA4sITWZRgsrOHCzVsU0BdYcEULg9uV9WcmCL6vVhcNVm19ltSUeBQq+rNjuGPFoGrfuwONz1rzM8bhjH0RRGpPFKvitdKAFBR9iiriqdV2+P+Dm6i+cxVkfOpLB/lHuv/15zr3kGFzu/fN90kUDIk0BfYs9jLa78I/kWLA1gWovbTWFUEeAwUVO9qzzoCYNeh7qR0RyjGDv3ct4p8aGSwNkfQorHojS+fbMfqtSQXjyA0WtMdySvo8bJFdJAi8JOu5XUSzwW9V2vonEe+4+vBf2oe9xE/35MszI/nutKaxmptqKiGrbtVtVJmi3LFaj/FgFSmWz2ktUMkDpCof5wExrox1KDEuJwgOZRs2xmnAOdVzvGymuoCmwKsbhUvGHPSRGMiQi88eXFVgcILonRjqZbz/vC7gtaT9fKnhW2uTCCjKYRIr8Vi6mzzLWoi5fCDj9/HV84otn4fG5uO+W57j7l0+TSeXYuqGPKz93JuHOAEP7ovz8/z7EE394nZagg01H5ANp+5407XvT9m9nLmDn4R4GlroIDOQ45OUkmuaBjvy1UDxbpYAdRNdbVwaJLnLijBocfusILX0TA70dy0Oy7ZI9n9DJhaDjPoXgi1OzsXOl5gHXaRC4eieuo0ZJv9xK7LZFkGv6rQ427JjFsovIgnw2Sw34ME0TVZk6WqW4wuFA4WARNY3GDtkqAN2UB0XWqpjGP+nMY1RNoSXsJjmaIR0fm5cVKO3LsgtCCAyvgt+hkYxniEaStAQ9VZU5Thc8rWhyMdcs1nR+q3KwKtD2Lmvn+q+cz5ojFrHhzZ38/P8+zM6tA+OvP/PYuzzz2LsT3pMNOtiyJr/4+UdydOydB+V1TsHm43zEwxpdm9L0vpeeUl5XKoiWEl2QL9WoNVLA9tN8RBfl/85LfzKIkTAZmfRzdgv+8TUm/ZcZCB16f6Hi2V5dWbJu1l5cKeEMweu3oXanid/bQ+qJDgp+q3rV3jexhsKg+mqxUxYL7CGyAJas7OJb//4JclkDXTcnVDhkiiocmjQpF7sIKzi4slbFNAVWleR9WS4yWo50PEdMT+Frzdeq9+uNb3RREiFwj7Wfj4+mGY0k8QfcOC0uc6ymyUUlSCQjRX6rIApKmeKqkkB78jlrJ2Si7v7FU/QsDnPRFceTSmS44V//wJMPvoGcxdMz1KYSGSsBCb8cQUsaYIMsz0wkgiqbjvdhOAXLXkkQ3p0r+70ziZdalowYbsGuj4VILHcRejHBmldA8fop0dPGNkghGT7DZPhsE9fuvN/KEa18A6deQdexKkbg2u0AjN5wCLn3939WM2tVGdXEk2rLBK3AjlksaLzI8vld/M13r6K9K8C//K/b8PpcfOlbH8Ln9zLUP8rtP3rU9v6rJvZgeHKTJRsJq1r3KmhUI4uZsPdT3DxBCIHbnx9KnBzJEB9KEWh1E81YM0OnFsGxX0/T5XQTaPMQH00TH03j8TlxeysrcwyFfAxEEhN2JwtNLq679u9RFLPiJhflZLGK/VZ+FPwl/FazMZdSwZPPWcvnvn7R+E5jR3eQz//1RQhF8Mf7X+fWHz9BbDQ14zFMAf1dGqOhfEnIIZsyOL1eIsm5z0upJ4O9DrYf4cWRkax5Ko43as3gy1rWwifaBO9d4CbjFyx/IkP3u7O/p9EYLkn/ZQaJtZKWVwWd96koemXiarKw0moW7CSeMwfwXbwXo8/N6M+XYg658ufQzFpVTDjgZShavRe3WnLSHoZQqwfRN0pkuTwOvv6dy1mwuI3v/s2dbHx7NwB33noft/9nXlTZNQ40sQ92ylZB/dd6O2WtimneuSWYrlX7bDhcGv5wfihxIpJGOECq0na+rGLTsqoqBEIeErEMqUQWPWfgD7gtK3M87tgHEWK6oDy3LNZ0QTUzNt9KAiEU3DP4rWaj3Ba+V37uzAllHABCEYwMxfnJdx+Y9XN0DXYvdJDyKoQHddoHjHE5WOlQylojBew81M2+Q9y0DOb9Vo6szXuwAzuOc7Dz+Pzf84i7U7T02+MhcSayYcneq3WyYWj/g0Lrc5X5reoaeB0mLVfuxH3sCJnXgkRvWQTZ/OZBM2tlD6rpSNvW6qv680ttxM35GDUaRF9vkaU5VL76T5exYu0Cvv9/fstbL2+b8Hrhfh0ejAFNodVkInbLVkHjhBXYT1xBU2BNYbZW7bOhagotbR6SoxlyGYO4zOD3uGwnsooRQuBrcaFpCsl4lmgkhT9YWfv54hp7K5tclAqqEkkSSRQTFQjPwW81G7MF2fbO0pmWQGj2h5CUW7C714GhwoJdOQKxqQ/8s81LqTc5p2DLsV5i7Q46t2TofSeFYnNtJQVsPt1J/6F5IXz0LUm8IzY/aSCx0qTv4waYsPCXKt6tc78P672jqYSyBK7firYgTeL+bpKPdgKimbWymGrLBK3oSGsXrM5iQf1ElqIK/vzvLmHdccv473/5PS+uf3/an7VbLGjSWIaTOvrYI4MdRBU0pjqh1lmrgczMFUjl0LxTa4BQBN5WF5HhJJmcgZ5IE/C6UJXqynKqnYc1meLZJkII3F7nuC8rGknim6Mva3KN/cxNLjTuvOtrnHbqnXg90bJnYRWCqhybb5VC4hqbb1Wu32o2Zguyx5y8YvpuT/tKN3AoMBJU6O/W0HRYsi2HOzP9A/9M81LqSTKQ91vlXIKlryZo31W+36pR6E54/jN5sdv5Xo7lf8qi2DxxJZFETjMZOsfE1Q89t2g4RuZ2TTeiVMSxIk7gum2gSqI/XUb23fy93MxaWYsdygQ1Ta1qJhbYO4sF+6/X4bHjWy20hIDPf/0iTjh9NTf95yOsf+itWd8zORZAU2gdTJQq8baDuGqksILai6tQGRvmM9G8Q2uEEALpEBiKRGRMRhIpWjxunNrUh/JysHr3cbrZJg6nRqDNW5Uvq5DFmqnJharqXHjBTwkEhssuEywEVWPMb5UD/Aj8JYYHV0uxyCrQvTDEtX9xLkedtJyhfVFaWr04nftvoUw6x20/eaLk8SR5v9VIm4o3brJwTw61TOtSI3cwhxc42HaUFzUrWfN0HN+oNX6rWpJsFbx7Yf4B0DdgsOKPWfu3u3dK+j9iED9c4n9D0HWvipIr/6wbM99E4jl9EN8lezAGXER/vgxjwNXMWtkcqzfqGkW1cxJnw8psVnFDpEwqi8fn4o6fPclDd788p+M0hdbBgx1LAItpxAZaPbNW1YoraAqsmlLYcWz1uYmm0kSTaXxuJ26HZuuSwXFfVjTvy8rPyyqvzLE4i3X7Hd8Y//5rr32PH/5gO05nPmMjBAQCQwgBa9c+z9vvnMJpp97Jww9fP2M2yxSwT+oIIar2W83GeNMLReGKz5zOh648gVzO4OYfPMbD97zMiWeuntBF8LafPDGl/TqAro75rXwKbUM6HfuMOT/w1zubJYFda930r3DjH9ZZ/lICxwzZNrswtFRl4zkuFB0O/22K4F6bp62AXEiy52qdbCe0P6TQ+nR5GwYNNTZrJh3fzZvwM28GiP16MTKjNrNWdcAOZYJ2yGIVqEWpYAErRNbkhkgenwtdN+jfE6n4vIrv94JHC5pia75jd1EFB6awAuuyVsU078Y6oKoKQZ+HeCpDIp1FN0z8bmfDRVZhtkmpQCmEwBdwoSaVvMgaNvG3ulHV8gTN5HknH//YMGLykKQxFEXng+feRFtb/4zZrFQuh+FUwJSoORO3s/aX7/mXHs3lV52N3+/jyQff5JYfP8HocF5AlppnNZm0W7BrzG/VsztHMFrdA389slm6Q7DlGC/RTgcd2zIsemse+K2AZ76YXxj9+wzWPJjBlbD5SQOJ5SZ9l+ezggtuVvFtnv3+anTHKG1RksD128a/jt64lOFkDjCawqrG2KFMcLrqh0ZQy1LBAtWKrFINkTRN5crPnTlr/CiHZlZrfjMfRBU0VljB/BNX0BRYJQn7vfTFK+skOB2KELR4XCQzOVLZHIZh0jJHX1a9Z5kIIfD48r6sRDRNdDiJP+jGMYuwKTXvZNWqNI6JMWa86YWiSNra+sazWZNbt0spiWVypHUdp6oQ8LnGRU6tWLiojU//2VmsO3oJQ4MR/v4rt/POGzvnFGBHAwp9PRqqAUu253CnrXngr2VATbUobDreR9ajsOT1JB07srO/qcHoDth4tmv868N/my67/LJRSCQjp5gMftDEOQALfqPhiEy/4WKXIKwtixP6y80AjP5sKX0veoC8J68pruYHVsWRgyWLBdX5ssLTNESa7vuV0sxqzQ/sspaXS6OqEuZr1qqY5p1XBwolHUIIfG4nmqoQT2UYSaQJeFw4KvRlWXd+MwdKp0tDDeV9WbGRNB6/E7dndl9WcRbrr/+/xYTbnKw74oucftptrF37bEl/lhAmJ33gXgItQzz88PXEEi1E0xlyponXoeFz7v9cq4LqKWeu5qrrTiPc0cLwYIwdWwc54tglpFM5fvbDx1DcQ+zZnS/nKGcXUwL7OlUiYQ1vwmTB7hzTzluuAqvLBiM9DrYe5UXVJaufieOP2FylAKmg4N0L3KRaBcueztDzhm5/v5VDsu8Sg9iREv/bgq57VJRs6bNudLZqPxL3yUP4L8vP6YnetHhMXDWFVSNo9BB7K7NYk6sd5kohi1VrkQWVZbPio8mS3WVna4hUDaU24aApthrFfBVV0DhhBfNbXEFTYNWcUiUdLoeGqihEU2lGx3xZHqdjmiPUlnIDparlfVnxWJpUPIuRm9mXVSqLVaBU84vCYVTVYPWqFxFCcsyxf+C3D12KKSUBtxO3tv9ytSqonnLmaj7/l+eNl3C0dwYId7Tw9us7+f537icWTXHeZQuB8oKrrsKehQ6SPoXQsE5n/9z9VnOl2nkpEtiz2s3eVW58EZ3lLyZwzgO/VWSxyoZzXQgTDvt9mtbd88BvFczPt8p0Q/hRhdCTU/1WtgvGqon/Y7vxfGCYzDst7PhJD2ZKbVipyMGOVWWCVjS7sCKLNV2cmNNx6lAqWGAuImvtUYvxtrgxTROlqFplpoZIVlK8djTFVv2w3RpeJo1uUFTPrBXUVlxBU2A1DE1VaPV5iM3Rl1Uo72gEQhH4A27SyVzelxUx8/OyZvBlldqdLG5+USqbpYwZfg5d+zzPvHw8F593H4+UaH5hRVC96rrTpg4MFoKunlZi0alzEGYKrmlXfr6VrkH3nhyto/V94C8WWnqZH61rsPVoH6PdDtp3ZFj8ZmoetDOH3Uc72H6iA9+QyZoHM7hj9heEyaUmfVcaSAUW/FrFt3H/fWPXgKwEcoT/4R0Ahh4IM/i7DpCiIS15DyQafbVa0ezCTlmsAvXIYkF5JYNLVnTxtW9/jL5dER6880Uu/dTJszZEqiUziS1oCq5Kmfx7BPus3+VyMAgrqE/WqpjmHTUDfVjrw5qMIgSBYl+WaRLwuCbsdNWDmZpdTGaqLys15suaWuZYzu7kjK3cNZ0rL/0NodDAtM0vqmnVGwx5ae8svRCGO6ZfIEuJrGiLwt4Feb/V4u05PBb5rSqhMCdjtt3KlH/Mb+VVWPxmko5t9m9nbmiw8SwXQys02jfqrHgigzo1vtkKiWT0RJOBC0wcw3m/lXNI2FZUFdCWJAh+Nj8IPPpCgMF7Ow+4zlHzlXDAS3+0+jLBZharOqbbcOteGOIb372CRCzNd75+G8MDMR7//et1PbeZmLzWNAVX+RwIgqqAXYQVHDhZq2Kad9A0hP1ehuLWZIpmCobFvqzYmC+rxQa+rNko+LJioyliIym8fieuaXxZM03ELs5mud0jXHvNP+Bw5BcwRUAotG/a5hfFzGXnUtNULvrIMXzkqhOm/Zmhgdi0r8H+wDqUymIs8TAc1vAkTRbuqo3fqhJmaoYx0qWx5WgfiilZ9WyclmGbnPQMpFvy862SIcHSZzIseH0e+K00yb6LDWJHS3zvCpy/ksQz+3/Xdg3M/qt24Dkx7zvc+o/L8GbaaQ3X57PrFXQbTa038GbjQMxi1Xo2VikmZ7MO6W3jG/92JUKIcXFld5qCayqlhBTYd82eCweLsIL6Z62KObjuGBsz7stK5n1ZfrcT9zS+rLagl5y0vo5rrjuReV+Wl0Q0TTKeRddNfC0TfVnl7k7mDJMTjr5/2lbuQhgTml8UC625+LGO/8AKPvXZ0+nqaeWlZzfxzlu7uPKaUyaUCWbSOW69af2s59zS4Wfzovy/tTVi0NVnzwf+YqE1lNQZOdRDZJ0P74jOihcTOBuYbSuXkYUKG87LX5uH3p8htMv+gjAXkOy9yiDTK/E8DK5HJEIKewdo1cT/kT3j4mrgO0fizdTvYfVgyVpZNaHDimYXB1IWq0C9SgWLaQ370bM6X//Xy/EHPHz7q7ewd+dwXc/BKkqtUcWdCYuZ78JLNw9sMVWg0aKqQL3LAaEx4gqaAstW7PdlpYmP+bJ8dZqXVelOpKII/EE3qUSWdDKHoZu0BN0oRb6sUMhHzpxeEKZzOtFMlt4FO2ZofmGyZvULACXLBWcrD1m8rJ1rP38mhx+5mJ3bBvn2397Jm6/uAGA0khjvIjg0EOPWm9bz9BMbZvx3Zxywp2Ps3NImzq1JRIWDKOtFoKuFbYdqjHSq+LelaX8pTnzs123XICmBPUdqbDvJiTciWfNgGk/U3oJwOKmTWyqJXQvSCS03Qld/AOqUAaoU4c/hvXYrnpUpEuu7iT/cm5/sXQcOlqyVlVjR7MJOWSyr2rYXb7jVE5dL4x/+7Up6l4T51l/9htdf21HxcGI7Mp3YKBZepcRKI2PLdMKpGE1TDighNRm7CCvdlAxmsnVZ3xuZtSrGnk9VNsLKMo5ydhsVRRDwuklmsqSyOrppEvC4UZSpDzpW7DxOPce570QKIfD6XWgOlXg0zWgkhT8w1ZclpZzydTybI5XTcSgKd975DZQxRVWq+UVBbK1d+zxvv3MKp51654RsVqnykEDQwxXXnMLZ5x9OPJ7hZz98jMceeAPT3H8uTz+xYVZBVUzMA33toJiwqE/iyQhGKK+Fe6NIewSbj9BIewW97+t07hSIkL1b+RoabDrDxeAqjfAWnZWP2ddvVfj9SSSZD0DiI+AYVei5zYNzyN7lvgCcvof2jw4gc4LR2w4h/Ub91ODBkrUqRaPLBK2k2ixWAatKBevpx1JVhS9/82JWru7hP75zP9u3DdIa9lc0N2u+USxOSomV6TJf9eBAFk4zUSyqwB4ZK01TD4qsVTH2eJKyKVb7sMrdbcz7slyoqjo2LytFwOtCU/c/qGkzdO6rlGp3Ip0uLd/KfTSd92W1uHB78qV32iRPmSklo+kMOcPE49DwOyf6t2ZsfqHmuOD8nxEMDpXMZg1msnT53Fxw8dF87BMn4XRpPPi7V7nrludIxDMV//sksHFJ/hzdGUnPADjGTrGaQZS1ZrRNsPVwB0hY+VqOQGSi0LVjK9+MX/DuBS4S7QqLn8/S+0rONuWXxb+fwo5tqL0FqUoGPpgmcVQO72aNrt95UDN2OevSDKeyBE4cpeejA/mvb1iLvrc+gelgz1pZEV+saHZhxeBhK7NYVpYKzlQ5YRVCwBe/ej5HH7+MH3//EV54euP4a8VNMMBecaFeHKwipxHYJVsF9V/f7ZK1KqYpsGyM26GhKYJoMt/8wu924XbW/k9WzU6kpqn7fVmxDEbOwNviGn99IJOiVXMxms5gSkmLy4nHMfXfVNz8wusd5ZpP/QOalgPyAS0YHCzZ/CIU9rNmVTdf+LOz6e1t45UXtvCrn/6JPbsiFf17Chgin7Uq0NsHpSRuJYMoa4UE+peo7F6u4olLlr+Rw5We+T2z7T7WQ3CNLlB47zw3UoG1f8jQtqOxfquZukYVdmx1n0nfR1Okew1CzzhpW+9CSPuKK92UDGcyrP5/7wGQ3dLCyC3Lkcn6zOM7mLNWkzlQslhz6UY7G1ZlsaD2LfGv/fyZnHrWWm75xXoef+jNKa8XHnQPdqHVpDbYKVsFTWFVzLwQWEIIB/BXwL8A10gpb53m5wTwj8AVgAG8AnxBSmndlliVzNWUrKkqrT4P0VSaeDqDbhr4xkrgrNh5nIwVO5FTfFmGCVKCEEhTEkmlUYQg5HHhUGcvnzru2AeB0juRqmrw5S+/BexmwYIbyWQCLF7czvbtg/zNN25j6xu7q/q3AETSOXb0QE6DziFJMM6M2RQ77FpmpcnWwzUiXSqhfoMl7+ioFWzmllPuYZXokkj2HK6x9RQnntG838o7Uj+/VaVG5/QCnb0fTWG6JN33ePBvaMzQ8HIoXJPSlWPp1/bfG5EbV4FZ+/EQ8ylrVY+4Y1WVRLXNLqyMJVY1vLBCZGmOfHyxuunFKWeu5qrrTqO9swUhBK++uIV7b39xxvc0hVYTq9BNaatsFTROWEHtxFW/PsuO9CzMC4EFfI78RtRzs/zcdcBFwFFSypQQ4kbgX4E/r/SDw34vfXFrdhgrNSUriiDodZPIZElndQzDJJWr7a5+tUGy4MvKz8vKoOsmQ5EM3QYgIORxo5bwlZWiVLlgoZpQCJPR0fxzj8/3PVau/AF/fOJdbrjhjwzuiwJUFVjjHrjj3UFMBXr7wVtmheHkYFrPQJpxw83DQ0Q6FRZu1OnaYVhWXldOO98CcxFepgq/0yJsPc1F29a832osYWkps5me51rO8q5vmF2fSKLFBb03+3AN2M9vNTkQaz1J3l/7BE4lzeidy0i/2j7Du61hPgmrIhoWd+aCFc0urMKOpYJCiHF/LlQXDyAvrj7/l+dN6Dx76LpFnHLm6rK8vE2h1aRSxYIZowAAIABJREFU7CaqoDFrez2yVtWKK5gnAktK+SMAIcTFs/zolcANUsqCtP0+8BizBLqRrE6vlOMNFuyIEAK/24WmKMTTWe56rR9Vyy/wVje7sHK2icvtQNXyO+OGLnG5NTK6znAuXfbuZHG5YKnmF4UikL6+G1my5O84/LCFGIY5p/btk5HAcBCGWgUdbg3/juy432ou1LtkMBoSbFnnQDMMVryWIzhc2wzQTIKkXHNzzi/ou9RHXE2y6KUsi14s329VTpeoYqzyA0hFMnhOmk3hKJ6tKt33elDT9R0QPhulgrFr3RDBy7YBLoZ/sgZ9d+0DYrXlgMHOCCdd8hR33mHlWc1OreNOMVaUCR5IWawCVmSxClQTD4q56rrTJogryMe5q647bU7NkppCq0k5lFrHC89UjaSRwgpqn7Vqa63++LYRWEIIJ/BkiZdOl1KW22/1EGBz0debgTYhRFBKOTrp8z4PfB7AtaAXQ8/y4YXttJWYPaWbrThKOm4qoQ3dMHGIyo/XH8vw8HtDxFMZzlnTxtI2d1XHK00YXTcsO+77L7lRFbjykkUA+bJBQJvj8Rcu3DVt8wspDbZv/ydWrvwBF17QNfbdLnQ9//NamRmzrGHy6LYRhkbSrG7zcOkRHSTXVt++ztDNOZ3HXJBS8mIywSvxGGFV47qlXTg6a2/wrpYdIsPt6gA5JNe5u+g9TIPDyn+/1oBAk1R0Hm7fzqg7x/HZLo5RO1Eus8/mjF7UIbMQiCWSvQvfZqB7C75YmHVDp5A6sba/u+LzmNzkplxc4Q0ED70Hadam7LKecac45rS3d/Cp3raxV9rQTbPKGFN9XAHQjVaAaY/T6lP5yImzdZi0KnZ0VBwnCrz5hhNVFVXFg8m0d5bepGnvbOG8yxZWdMwChRjREnLywU8srepYjSDQ5pp35223cy5eN6G0mAq2Oqu+1iql0nU9GNSK7sM5fmbR3Fe1Bg3eChTmyxb/u+7/YeXHs43AGgtmJ1V5GEG+Br5A4al4yl9ESvlj4McAC5YeIkdyOjdt6yPgdOHSJv5aCjXyVhmRh6rs+gTwsSO7+PXLfTyyYQhk/h/eU+UxJ1PIYlmxEzk0kiPc6uD3TwyMfy9S0cyTr43/3/f/4zw2bToS08zvOEiZpa/vRvz+L/PAg/0T3hUpszwkq+XnW2Ud0BEBc3uS5DKdh++u3ssF+d3KAlbtVpoKbF+jMdyj0rrPoPedDI4rTR75zTZLjl8r+lbB1hMErhgc+rhk6YecPHL7tkaf1oykuwz6LktiqJKu33k47qguW/yeZzI6C49O8MrNuLqjJJ/rpP8Pi1hxqWLZNT0ZS3Y2heTIs1/mmCNeYnBXB4//8nzgBWtOsIh6xp3imLNk+XL5q137h9BaEWMKZYLVxpbhGbJYHzkxzG+fH5r9GBbGjsriRJ6h4SzhNue08QDmXjJ48cUxOroCU74/uC9m2T11ziU93HVjvhvhfMpqffATS22xHs4FO5zzXBtVnHfZwpqt39NR7bp+4QVdU+7DcqhnOaAVWatiGp9ntJZdwOKirxcDcWBkpjc5VEGb24OqKIxmMyRy2Qkzm8J+6zs89evV1cx7nSpBrxu3QwORL2kzpbXlYFZfbJMJhXwTUr5z5ZlnvoqUE7M0Uho888xXp37W2IIw0/DJhBt2dIOuQu8+CMVmbmZRCa1h//6W7qlyN8inJ+uCDcc6GO5RWbBZ55A3ddTGNt2bFVOBzScJtnxAIbgXjrhf4h2d/X2NJnpYlt2fyj849v7KR8s7jW9mMZzKjl9HhWurODirnUnavvgOzmUxovcsJXbfEjBqt+wXlwNWKq4crixnf+ohjjnvJTa9vIo//PelJEbt4TeYhoriTjFWxJhwwLo41adXvi7D/thhhY+h2jhR8phF1+dcBxLfetN6MumJBtFMOsetN6237PxUTRm/lwv3uBXxool9mPx3LbV+24HBTNaSdX2uDGRSDGRShEK+eSmuwEYZrEoQQoSB3wGfllJuBG4GPiuEuHVsZ/IvgLvl5Am3JVAVhZDLTSybJZHLoZsmLU5XTXxZVpmShRD4PS40VSGeytJnpOhQrS8XtKqefjoqrbOX8jUmV/FImUXKV4Hzp/z8dDX4EogEYLAVXDlYMACOGg+0tWJuVqw177cyFVj+Wo7WIfuXBGbdsOEsQaxTsPANyeLXJKJ+jQIrQgrJ4FkZRk/I4tmu0v1bD2qqsXtT5ZidXYcNE/jYVmRWJfLTNeR21i4wWtV2PRAe4ezrHiLYPsLz953MO0+tw/ptjuqwMu7UAiu8WMOj1ccnK728YK0fq0BxTIDyslkFn9VV151GuKOFoYEYt960fk7+q7lQyqsF8yuz1cR+7dRnopFNieo1LLiWwqrAvBZYgBdYAgTHvv4lsAJ4QQihA+8wB6OxEIIWpxNNV4jnsujpFEGXG03JP0zZdV6J2+nIZ98SaQbNNK2KE4+w5k9rdZCcTDUteYubX5T9eZNElimgLwxxn6AlIekaAqWOj0WVtHSXwECvws6VGq6UZPUbOu6kzVUKEGvPiyvdAaueMGnf3ugzmh3DY9J3aYrUUoPgS07aH3chzMY88JfdQUpIfOfsxn/WXrI7fIz+ZgVmrDYPY1YG4oWrd3DG1Y8iTYWHf/Zh9m5ujMegDCyNOwWs6FhrZUdBq5onWbFBZ2Xr9inHHrtu59IA4+knNtRMUE1H8T3fFFv2p1TG0c6iCg4OYQX1EVcwzwSWlPLMSV/vBHqLvjaAvx37ryKEEHgdDjRFYTSTJpJOEXC5LJtXUiAc8NJvgRergENTEeTHTUXMLDlh0iIcCAsycFYOkCxFLYNnyc8bE1n9RpZUr5OsA9ojklC0MXvlc+kmZSqwY7XG0AKV4IDBsrftXxII0L8CtpwkcCZh3aMSX3Vzn+tCptNg72VJDL+k8343gTfr/xAz111P4dIJXrEF15pRki+216wk0NpALFl35qsce/4LDPeFefyX5xOPTPW4NIp6xB2rsVsWy0qRVSsqyWY1iqbYsh/zUVAVaPQYjXoNC66XsCowrwRWPXGqKm1uD6OZDKOZDD6Hiaz5TPjqCAd9DI0mcAuVuNTJSZOQYl2ZYy1LBWsdPCfj6vLS58/XAS7cB77qrQJVM5vQyrpg8zoHyaBCz1adni3WzbeqFaaAbScI+tYIgnskq56UOMqcJdZIYmty7PtQCiUlWPgrH+6++s23qrSURG1P0fqpTahtGaL3LiH1QgdWbxlYHYg1R45Tr/gjy47YwpbXVvDUnWdg5CZ626z239idaisl7JbFsrIKIhTyMVBF04tZj19BNqvRTF4fhosaeEBTcNWK+SyoChxswgrqJ66gKbBmRFUUQm430WyGRC6HELBXJujBuj9QtTuNkxEI0qZBUHEwKnMMmmnaFFfFbW4L1LpUEGofPCHfrnrUbTLkNXEYgp6YRnw0QQr77FgWL9KFYOnsdrF5nQNThUPeyBEamB9+q/fPEES7BT1vS5a+PD/8VkNnZBg5KYt7p0r3PR60ZO39VtXW5zvXjBC8fDNSV4j8bDW57dbM+ypQi0Dsb4tyzjUP0do9zIv3n8RbTx7JZEFYrwBsF6yslLAqi2WnUsECta52GG+AYdFw4nrSFFzWcyCIqQKNFlVQ33W93lmrYpoCaxaEEAScLpJ6jkQuhyTfk1+zoAGjlTuNBQpB0ac40KRCxMwwYKYJKU7cFviyat3wAmoXPE0kA36DuEviywg64yoKwrIBlLWgNexnsBO2LgMtJel5NkXIsP9tG2+D984S6G5Y+aRJx9ZGn9HsGC5J/6VJkocYBF510PGIu6Z+K0tMz0LiO3MP/nP3kNvtZeTXKzBHXRadYe2C8YKVOznj6kcRAh75+UXs2bhowusHm7CajF2yWHYuFaxHSfl8KhucjtkEFzRFV4HpOjXOVzFVjJ2EFRy4Wati7P+kZgOEEPgczrwvK52hX6QISzdurCkbsjqLBftLO9oVNxEzw7CZpUVI/EKr2JdlZZCcjloFz5wi6WvRyaoQSiqEUgqiaLfcjiLLFLBrKQx1C1oikqUbBfG4yTDlN8RoBPsOgS0fEGhpOPwBiX949vc0mky7Qd/HkuQCko4H3ARfr83v1spOUsJpELh8C+5DR0i9Gib626WgW5Ntq10wlhx22hscd9FzjPaHeOyX5xMbDo6/Ws8AbFfslMUqYMdSwXqKLGDeC60CpdacUqIL7BtjqmHyGqybsvwGQvMMO4gqyK/rhWHBB3rWqpimwJoDLlWjzaMwnEoxJNIEpRMf2oQH9blSyywWgCYU2hU3IzJLTObISZNWxVmxL6tepYJWBs+UZtLXku8E0R1T8eVKP4Taabcy54CtqyAREHTtlvTsyBdPlSofBHsEQilg27GCvYcJAn2SVX+SOG3gbZuN+Ooc/R9KoWQFC3/jxbPb2mWxFu151XCa1k9uRG1PE7t/EclnurDCb1XLgKw6cpzysT+x/OhNbHvzENbffhZ6dr/f6mDPWk3mQMtiFbBqg64RzZHgwBFaxUy3Jk0nvArYIe5Mppx5YRNmBY7NHDtQmDzXrdHCqoCqKgdcE4vZaAqsOaIpCooEp1AZVbJkpUFIuqoSWWB9Fqst6KVvNEm35kEIQStOHOhELfBl1bqrIFgTPCWSqMtk0GfiMKE7quGcpeTLDibnhB+2rgZDhaXvS0JDpX/OTvNREq3w+qX566n7XcnSF2Vd291XgkQyfFqGyClZXLtVeu7xoMWrzwDVet6Jc9UIwSu2gCmI/GI1uS3Vd9yr9U6nrzXGOdc+RFvPIC8/eDxv/PEYCoKwmbWait2yWIV4Ui1WV0HUuzkSHNhCazKzrV2TBdjkbFAjOJDE0lywS7YK6r+m26EcsBRNgVUBAkFWGrRIBzGRQxdp2qSrYl9WLbJYBQqlHUII/MKBQyoMj/uyXLhF5WWOtfZjVSOyTCSDPoOYW+LN5v1WqixfBE/OZtWLoQ7YeQg4srDqXfCUcVmUatlbCHT1EFuJELx+Sf7aX/60Sdemmn9k1RguSf/FKZIrdFped9D5sBthVLZJUj8DtMR7eh/+D+5C7/cw8quVmCPV+a3qEZS7D9nNWZ98BEUzefSmC9n13hKgKazKwaosllUbeDlZfXOdWoisWjdHKvm5B5HQmo7J69yBlg2yO3YSVdAUVpNpCqwKKOwuBnDikAoRkWFApGiTblxV+LJqkcWaXNrhEiodipthM8OwmaFFOCryZdXDjwWViSxdkfT5DTIOWdJvVfZnjy1Yuilrns2SAnYvgYEegX9EsmwjaPrcj1MIbqqWFzyTH/6tFlxvXCiIdwocScnKpyStey09fE3Ithns/ViKXKtJ+8Nugq845nR9FP9OdTOfpqv5Q4XDIPixrbjXRUi/0cbo3UshV/laU7imoZaBWbL25Lc44cPPEB0K8thNFxAdbAWa5YDlYFUWy8pSQauoRal5vUoFJ9MUWk3qyWAmW6f1u3wasVlWj3LAPr26ESFNgVUFhd1FTSoMizSDVfiy6pHFKjDFl4VJK3P3ZdXDjwVzE1npMb+VKaArpuLPVl/ypWn5B9laiaycBttWQTwo6NgjWbjdmulFkx/6J5cSQuWCSwrYcXReXAEced/88FslVuTouziFogsW3urFs3PmJXC2rlL12LFVQ2mCn9qE1pki9mAvyfXdVHqF1GvHU9V0PvDR9aw8bgM73l7Kk7edTS7jbAqrCqg2i1XAig08TVUsa9ueP6f56ccqeQ5NodWkRkyupNE0tSmsbCysCjQFVoUU7y46UOiQHiIiw6iSzTeSkM6Ksia1ymJNDoqKEIRwEkcnJnMMysp8WfXwY0F5ATTqMhnwGWgm9EY1nBWWfJX8/BrNRUn6YMtq0B2wZKOkbdCSw5bEKsGlO+GFq/PXSdcGybIXJIrNx3JJJJGTswyfnsHVp9B9txdHdOK1bscWvc7lowSv2gwCRm5aRXZTcPY3TaKUqCpsGtQCbzDO2dc8RMeiAV595Fhee+w4BtJpoCmu5ordslgFrOwqeCCJLCgttKAptprMDTs1q5hMI4UV1EdcWZGxbwosi1AQtEkXMXLERD4rFJYu1Dn4smqVxZquC5QQgpYxX1bEzDA45styVeDLqsd8rOkCqEQy6DOJuk08WUHXHP1WczoHCzsNDrfDjuWg5WDVW+Ctr1e7ona9ydb8fCvIz+Va/pzNO1kAplPS/6EUidU6LW850O5RiOlT6y/t5R2QeE/px3/BTowBDyO/WoExPLf7qxH1+Z1L9nLWNQ/jcOo8dtP5vPxqN5APjE1hVTl2ymJZ2VXwQBVZMPGea2a1mpRDU1RNZT4KqwJNgVUFYb+Xvvj+wCcQBOR+X9a+seYXc/Vl1WIuFky/6+gu8mUNmRkCwoFvDr6sevmxYGoA1YWkv8Ug7ZC0phTakpX5reZ0DlV2GpSM+a0WCPyjkqXvg6MCv1UtKCUyCpmu2FKFvWc7EDlYfE8Gb79kGHu16p2chTLaTOJX5zDCEu8DGtpzCqFwS4POrkwcBoFLt+M5eoj0WyGidy1DZstbQxoZoFef+A4nXvIUiRE/t/zgPIb6836rprCqDquzWFZ2FbSiVLCWIssuNLNaTUphZ0FVoJHNiOpdDmiluIKmwKoJHjQ0qTA05stqlU58OGZ/I7XPYk0nssZ9WWaWaJEvy64iC6AvniDdpmEq1vmt5nQeFZQN6hpsWwmxVkH7XknvdhA2TwIFwz52HWay+1CJfwhWPaPi1B0Qzr8+26yUcrGqxW9BJCaXZNl3fgwkdP8ugHenc/yc7YoSzND6yU1oPUnijywk8UQP5fitGtlNSlENTrr0KVaf+C673lvEXTedSiblbAorC5m8mVfxcWxYKgjW+3kLIitn2qt2ebqsFjTF1sHCfBBVcOALK6hN1qqYpsCqkukCnwOFTulhWGQYUbJk5+jLqkUWa7bSDkUIQoqTuMz7snT5/7N33mGSXOW9fr+q6jg5b07aXeUAEgIhJASSEJIAk5EIBmOBjQ3XNnDtiwPGxvHaxr42xhgwyBYZJBkhIWShhBBKq5x2tdqcd/JMT8eqOveP6t7t7e2Z6Z6u7q6ePe/z9DPTPdVVX5+prq9+5wsnQ48Rrrguq5EiK2E6zPRbiKOIDzu0m5UJ2HpQadpgKu7VW+XCsOolRd9wI61cGLaleOmVLhPLFAM7hLWPGxgla4n5lVrnV8MIhWLy3BRjr04SHjEZuq2T0FT9ao78IrRmiu5rt4GlmPjmBrJbuufcPgiOOtYxw+ve/z8MrTnEQz87g/tvexnd3R3E6/v1P2EJYqqgnyLLz3rewk2hUsGcwZpLbGkWD0G4TlfDiSSsoH7iCrTAqisGQp+KMEWOhOSwcemtoC6rnh0FYe5Zx6N1WcK4m626LqveIkuhGA85TFsOUUfoz4WZspMM28ErbC4WWuO9sHs9mA5seA7a/An61JVUh2LLqx3S7bDmcYOhbVL39MtacS3F8GXTzGzM0vZimIGfdWDYwbYZFLFXHabjqt04Y1Gv3mpk9nM5KGuf9K88xOs/cAehaJYfXf9aDu86ne65NaGmBoLY8MLPeqwCfvqOQjOXwk1js+uyZqNUbBW34daRrdainFDWompuGrmeVb2jVsVogeUDc6VvCEJXvi5rIl+X1acihOepy+rrjHNoqn5RrPlmHaNi0W94zS9G3QxdEiJeYV1WvURWVlwORnIogQ7bpCdnIkggC5sLQksBuQ1hDi0X2qYUa1+EUK6pJlbE+FKXl17pIg6cdp9J50jQRQrkOh0OXT1Fts+h94E4XY/FAi8IsVw637KL2LkjZF7oZvIHa1GZ4y/LQRFVBdaft5kL3vZzEhNxvv/lK7HTK5tt0gmDH1EsP/1LkOuxABA5ri6r2X5iLnr62o+04S4X2dKCK1i0oqAqoIVVfdECq0HEsQgpYVQyDFdRl9WMVMECoXxd1ribYTJfl9VVYV2W3zn1GXE5GPWUSV/Wot05VqAGSWSBd4G1DcX2JVnSfULbfof1uw2MYGarHEGh2HeqYu/pLm0TsPEBk0gq4CIFSK3IcujKaZB8vdXu4N+EhNZM0fuRLQAk7l7GzN3LvAXG8gQxtUQMh7Ou+jkvv2gLOzYv5f4fXYmdrn8+YLEjPpHxK4pVwE//4nc9lt8TdIUbyCD5ifko/c5rwdVcWllMFWi2qILmCCtorLgCLbB8o5Ii5BBmfr2sNBP59bK65qjLqmeqYKWzjoYIvUaEaZUjoWxyKkOvEcasoC7Lr5z6GdNhNGQjyhNXbW756F/hYjE87gm7ZjrQdESxc7VNLmSwfJ+BsTXDWP5vQXWIjqXY9gqXsRWK/l3Cuk3H11sFDYVi8pw0Y6+ZITRusuTWTkKTLVBvtWr6iLia+NZ6Ms/3AMEUVQVmQmO85UP3sWr9IZ7+5dk88rMLUKq+jWW0sCqPX1EsP7sK+l2PVa9U8yD5iWrRgqtxzFYTF6RrcjVoYdV4tMBqMCZCn4oySZYZscnh0quimHOkMtWrbTtUNusoInRKPs3RzTLseosShyuoyyqIrIWgUExYDlMhh4gjDGRDc45TgWZHsyY7XfascDBcWLfDpC1pQNFFeaSo615QnGG6TbHlQodUB6x+0mDJ1haotzIVI5cmSJySIf5SmME72zFyje0kuRAGPvMERruNPRph4pvrObTHAoKVAljMcCbF0IpRfvXX7yHenubumy5j2zMb63rMRjriVqMQxfJTZPlBK4ksaG2hVaASwQXB8TNBpLjerZigXYcXQhBEFXjX85zyOno24nrejHTAcmiB5SOVttIVhG4VIaxMxiXDsKTonaUuy89ZxlKqdYgxsbAMgzE3w4iboUvCtBnzn0K93W1HvlyV4qAYCedIm4oO26AnZ1V1w9+MnHuF4tCgy+Ehl1hSWLPLJFSmwcJ8DTEazcSQy9ZXuYiCU+836DocfJFitzscfNMU2QGHngfjdD/aAvVWpkvHm3ZjtHuLnm39p/W4Ke/7E0RnXvjuvOLivVz05ntJJ2Pc8vW3M3pwoK7HbVQnqVYmqKmCfje9aERn2laqz5qP2a4jI7MspXGiCK+5OjQW6t0WC6XrvzVbWBWwLPOEiFoVowVWHah0ZjGOhaWEsXxdVo+KEC/zL6l3qmA1IiskBgNH6rKy5FyXLgnNW5dlWQaKygqQsuIyHM5hS/l6q0ppZM69Yyh2r3SY7lT0jAnL95sYau4x6WlyVEuh2H+yYs+ZLvFJr94qmgy4SAFSy3McunIKZcHQrR207Yg026R5mQjPsPJXdxJfm2T4rkFyj66nKy740HHbV4qdc29vjFde/iBnXvAU+3cu464fvIF0sn4Ga2FVPUFLFTxil09RLGicyCrQyhGt2ahWeBUTdBFWaXv7xSSiSgmSqILGZyAETVgV0ALLZ6qdWQzn67LGJM24kSGnHDpnqcuqV6pgtbOOpXVZtnLpMSKY84gsETnyxZvNUc4YDqNhGwNYkgkR8aHGo94zlOmwYtdqm0wElu036Bs1qo6mlItqQf2cm2Mqtp/nMrpK0btHOOlRA9MJtrhSKKbOSjN60QyhSZOh2zoIjwf3Elb4P8ZWzbDugzsxYy5jN59MbnN/ky07ntJUkkgsxaXv/DHL1+3juUfO5ME7Xo2apfaxVk7EdEA/et34GcUKcqogNGch+4LQgsUltoqZT3RUuz7XbOl29WQxC6e5CJqogsZPkgVVWBUI7t1JA6lHY7dqZhZNhP58XVYiX5fVU1KXVc9UQai+1e6RuizXYEIV6rLC89ZlzeYoS+ut+rMhLB9TvuoVzZrqcNm90kGUV2/VPlObIJxr8Um/xFY6rnjxQodkF6x82mDZltaotxq9JMH06RniO0IM3tGBkQ1WKmO5BhWxMw/R/cZtOIkwIzecgX24+U6wmHI5+r1DI7zhmtuJtSe5979fz9anTqnLsU9EYVXMQWZYQm2fu9K09Ir25XPr9lYWWXC8z4DFK7Rmo1rxstjS7YJG4Ty08yUXQRJV0NjreCPqrA7ZtU06aYFVBxYys1ioy/LWy8oyLCn6VJRQ0aLE9V6AGKpP7YgZFpY6WpfVLWHi89RllTpKF8Vw2CZturTbBr1V1ltVg1/RLIXi8IDLoSGXWBpW77II5/y1eS6xBQsTXJODXr2VEjjlfoPuQ8ESKeWw2xwOXT1NZolN98Mxeh6OB0IQjmSyx8zYHnNjYbh0Xrqd9vMOkNnRxdiPTkal5l+WoVHYyj3yHSh20utOe4nXvvVuMqkIt37jrQzvH/L92Ce6sAJ8P3v9SBUs4Hc9ViuLLNBCS9NcykWqTNNourjSwmp+tMDCc3Z+zCaWshCn10aIkDLy62Wl6FERYiX/Ju+f3+ujpR4LdYjF62VN5OuyOuepyyo4ygNuGjdmYIuiN2vRscB6q2qoNZrlGIq9KxwmuxTd48KKffPXW9XKfN2i5hNbCsXBDYpdZ7vEpmDjL01iieaLlPlIL8lx6Oop3FC+3mp7c+qtZusyVW7G1ohn6XnbFiKrpkg8vIype9Ycs75Vsyh21KUOWsTlvNc/zDmveYKDu5fws++/kdSM/w5M11kdi19RLL9TBbXIOp5yQgu02NL4TxDT/wo0W1hBY8RVX2ftx9ACq07U4vTCmAyqKGOSYczI0K5cOlUIQY44wGq78lXKQh2iKUKfEWFK5ZhRNrkK6rJiXRHGnQwol6FsmKjb2GjKQtr0ZvL1VukILD1g0D9Sfb2VH5Te1M9VrOwaiu3nuoysUfTsFdY/amCW6W4YNKZOTzNySQJr2mD5zZ2Exxpzuapl/ZPQUIKed7yAGbcZv2UDqecG/TavauZr1RuOpnn9O+5k5fo9vLDpNH55+0W4PtdbaWF1PP3tcUb8EkY+pwr6mSmxmEQWHPsd0lEtjV8EWVTBiSOswB9xBVpgHaG/Pc7BhL9RrFqcnonxshgCAAAgAElEQVRBv4oyQZaE5PLrZUUw8iIL6t/0olqHKCJ0FdVljeTXywqVLEqslDrSICMkJsaMw6TKEm2woyxQadrgdLtXbwWwdodJR431Vn5SevNfSF3LxeHga4VML6x41mT5C8Gvt1KGYuTiGabPShPbFWLwpx2YmfqMtZ+LScZOP0z3ldtwkhYjN5xJ7lDzahEqXf+kZ2CMy99zO+3d0/z8x5ew5fHTfLVDC6u58dvv+JUq6Gc9Fvjfvh2aK7IKlOs+CFpsaeYn6IIKmpvO3cgGFn5GrYppCYElIiHgd4C/Bj6glPruLNudC9wJvFj08g+UUv9Q6bGCkioIXl1Wj4oQztdlHS6qy7LM+t7c1zLrGM/XZY27GYbdNN1yNH3NVYoJN0sah5iYdEsY6ZIjjhJm7zBYT+bKs1dKcbjf4eASl2ga1tSh3spvLMvEWh9j58syuCZseDyMeiHNaJltg9SG1467HLpqiswym65NMXofjCM1ptfN1dXKl4JsUXS+biftr9xPZncn4zefjJtszphWs7DkmlO289q33oWdDXHr9b/C4b1LfbNjMdRZtZrf8XMB4gJ+TuJV20ipon0GQGQV0CmEmvloBVEFWlj5RUsILOAjeM3+Hppnu37gRqXURxZyED9TNgr4kR/fRshrJFFUl1WgXlEsqE1khUvqsmwUtqMYcdPYKDolRJtYR+q0Cl/iZjvLUifpGvDj8TEOLnXpmhBW7q1/vVWtKBSPMsWW8zNEksL6hyPEZgxY4FoojRJgh0JJ9l0zgRtxGby9g/atldVbVdIWuF6drWwzQ997niOydpLEpqVM3bUGGpzqWo2o8lC0r7mHy1/7cw7vHeTO77+R5LQ/47MYhFURLed3glyPBYtfZMHsKYSgxdaJRqsIKjj22g0nhrCC+okraBGBpZT6EoCIvHmeTfuBN4jIw/nnPwP+Rik1Xc3x/I5i+ZEfH8nXZY3m67L2pzN1b90OtYmsQl3WpMrhKsXhRJYeFH1GhMgs7dyD4iwLF8Lt3SkOpVJ07HVYNR4JfHodwNhSh00yStewwbqnIljz1FvNJT6qXQellErE2Ugmi9vmcsvAS7hTEL+xjfRhIU3QF5BU7Fz7MOHYFOO3rif1jP8d92ajFsd91qufpGP1g2x54hQeuO1iHKd2N7DIhBXQWL8T5FTBevgYP+uxIDh+o5TS72VxGiFowbXYaCVBVaDZ1+7FKKwKiFL1WAWqekQkDPy8zJ8uVkpl89vcC3x5jlSNGJBWSikR6QW+CMSUUm8rs+1HgY/mn54BPFv7p2go/cBIs42okla0GVrTbm1zY2hFm6E17T5ZKdXh5w4b6XcWgc+B1jxvtM2NoxXt1jY3hla0GWrwO4ERWJUwn6Mrs/1SYA/QoZRKzbHdJqXUef5Y2Ri0zY2jFe3WNjeGVrQZWtPuZtlcD7/TiuMPrWm3trlxtKLd2ubG0Io2Q212B6cNWn0wgTSQabYhGo1Gozkh0H5Ho9FoTnBaWmCJSJ+IPCAiG/LPrxGR7vzvFl73pxuUqtOiURqNRqM5odB+R6PRaDTz0RJNLuYgDqwGuvLPY8BdIuLidX+6D/hsBfv5Sn3Mqyva5sbRinZrmxtDK9oMrWl3UGz2w+8E5bNUSyvarW1uHK1ot7a5MbSizVCD3S1Vg6XRaDQajUaj0Wg0QaalUwQ1Go1Go9FoNBqNJkhogaXRaDQajUaj0Wg0PqEFlkaj0Wg0Go1Go9H4xAknsEQkJCKfFpGciFwzx3YiIp8XkS0i8ryIfFNEmrYst4i8VkQeF5GnRWSTiLxqlu3OFZExEXmo6PGpINnZimPb7HEtRyXncgDHuhKbAzXWIvIbIvJU/tx4WkR+a5btfltENovIsyJyq4gMNdrWEnvmtTvfEW+mZKz/vhn25u35fN7mR/LfyY/Nsl2gxno+WtHvtIrPqdTWII1t3p6W8zva5zSOVvQ7rehz8jbVx+8opU6oB/BbwKeA+4Fr5tjuQ8BjQCz//BvAF5tkczcwClyQf34JcAiIl9n2CuCrQbazFce2meM6h+3znstBGusqbA7MWOOtafT3QHv++XIgBSwv2e4SYDcwkH/+OeDWFrD7ZODOZo9zkT2fBEL53weABLA2yGNd4edqKb/TKj6nGluDMrZV2hyYa2HeHu1zGmNzy/mdVvU5eZvq4nea/sGaOKD3zuPobgc+WvT8HGC0Sba+B/hlyWtPAm8us+37gF3Aw/nHXwIdQbKzFce2meNawWeY9VwO0lhXYXOQxzoKTAKrSl7/N+Cvip73ADbQ1Wyb57H7QrwbuweBR4F/AYaabW/etlcAB0vHMOhjPc9nagm/0yo+pxpbgzK2VdocyGuh9jkNt73l/E4r+py8fb75nUWZIigi4ZLwY+ERrmI364BtRc+3Ab0i0jXL9jUzm93AKSW2FOxZV2Y3NwFrlFKvBK4E1gL/VS+bSygdMyhvZ8PHdg4qtbmZ41oLQRrrSgnyWP8T8D2l1O6S148ZZ6XUOJ5zWdM40+ZkNrs3AcuUUhfgzdBlgZ+IiDTYviOIyAYR2QrcAbxfKTVZskkgx7oV/c4i8Dmg/U7QCNI4V0rQx7kV/U7L+Byoj99p9YWGy6KUygJl88WrQACn6Lmd/1k3UTqb3SLyhyW2FOw5zhalVKro97F8HvEeEYkV/61OlI4ZlLez4WM7BxXZ3ORxrYUgjXVFBHWsReQv8NIe3lHuz1T4HW00c9mtlMoU/T4jIr8PTAHrga0NM/JYm7YCG0TkZcBtInK5Uuq5ok0COdat6HcWgc8B7XeCRpDGuSKCPM6t6HdazefkbfHd7wT2hA8Ae4FVRc9X4eVlTgTAFvLP91bwXhNIA5n5NvSBSu1cDGPbyHGthSCN9UJp+ljni3BPB96Rvykt5ZhxFpE40Edl39G6UYHdx70Fzy9M1dWwClBKPYGXRvK6kj8Fcqx9Iijf11bxOaD9TtAI0jgvlECMcyv6nVb2OeCv39ECK0++s8kDIrIh/9INwHVF6R2fAG5S+eTLBvMj4CwROTNv6/l4KRx3ltotIteISHf+dwv4a+AGpZTbRDvvbsGxvTtA41oxAT+PyxKwc7jUNkNEvgysBN5VcBgiYorIXSJyUX7TG4D3FaXB/DbwgFJquNE25+2ryG4ReYuILM3/LsCfA/cqpQ41weYzReTdhVQREVkOvBJ4IshjXQsB/r62is+Zy1btdxpAgM/hWQngOVxqX8v5nVb0OXkb6uZ3FmWK4AKJA6uBwuD9F17I8hERsYHngY83wzCl1KSIvAv4uogovLDkVUqpCRFZWWJ3DLhLRFxAAfcBn22mnbTg2HK8zU0b1yoJ7FjPQZDH+irgN/Dyxn8hR9PE/wIvT78XQCl1j4j8K3CfiOSA/cCs7bgbQEV2443vTSISAlzgabyC72awC/hN4A/yYxgG/gSvI1mQx7oWAvl9bRWfM5etBHRsYdH5ncCO8xwEfZxb0e+0os+BOvodCdCkgkaj0Wg0Go1Go9G0NDpFUKPRaDQajUaj0Wh8QgssjUaj0Wg0Go1Go/EJLbA0Go1Go9FoNBqNxie0wNJoNBqNRqPRaDQan9ACS6PRaDQajUaj0Wh8QgssjUaj0Wg0Go1Go/EJLbA0Go1Go9FoNBqNxie0wNJoNBqNRqPRaDQan9ACS6PRaDQajUaj0Wh8QgssjUaj0Wg0Go1Go/EJLbA0Go1Go9FoNBqNxie0wNJoNBqNRqPRaDQan9ACS6PRaDQajUaj0Wh8QgssjUaj0Wg0Go1Go/EJLbA0Go1Go9FoNBqNxie0wNJoNHMiIveKyPXNtkOj0Wg0jUNElojIARH5s3m2+7SIqEbZpdG0AlpgaTQ+IyKfFZFnROTdzbZFo9FoNJpyiMj1IqKKHgdE5E4RuTi/SRzoBZY00UyNpiXRAkuj8RERuQr4KPAA8IYmm1MXRORDerZSo9FoFgUvAWfmH+8FxoD7ROTtSqntwCDwsSbap9G0JFazDdBoFhkfAb4KbAS2NdkWjUaj0WjmIqOUerbwRETuBdYAfwrcpJSabJJdGk1LoyNYGo1PiEgEuBy4BXg18MsF7udeEfmxiFwhIs+KSFpEnheR95Zsd4mI3C8iSREZFpGvikhnyX6+KyKXicgjIpISkRdE5A1F26wTkS/mX0+KyDYR+b05bNsJfCP/eyGt5BIRuU1Enimz/VtFxBWRlQsZC41Go9E0DqWUAn4GnAxHrvOfLvxdRHryqYUTIjIuIv8IhIr3ISIREfknETksIjMicouIXF7wF0XbtYnI34nI3ryfe0JE3tSYT6rR1BctsDQa/3gV4AJZvLz1+2rY1znA9cBfAFcALwLfFJHXAojIG4E7gefwUhF/G0/c3VSyn/OA7+FF1S4Fnge+KyLR/N//DFgO/D5wEfBN4AsicvUsdr0B+OP874W0kkfztp4hIqeVbP8rwC+VUnsq/+gajUajaSJZvFTBYxARAX4EXAJ8CHg7XrbGH5Vs+kXgOuAzeD5jH55vKd6XCdwGvBvP/1yKl1r/o4Kf02haGZ0iqNH4x4XAY8D7ge8opVI17GsF8Hql1D0AIvIAnsj6fRG5H8+BfUcp9ZuFN4jIMHC3iJyvlHok//JJwJVKqZ/mt9kGHMATbT8C/kgptbvouI+JyHXA6/Gc3zEopV4UkX3534vTSm4BxoH34KWWICIG8CY8EafRaDSa1uC1eFGsUq7Em4h7nVLqXoC8P3oBWJ9/vhT4MPDHSqn/yL/vARHpAq4t2tf7gAuAc5RSLxRtdybwB9Q2QanRNB0dwdJo/ON0YAeec/lHABGJish/51PwnhSRO0RkXQX7eqEgrgCUUjbwfbwo2Tl4wulLJe/5BV4E7fyi154piKv8fg7hCaHV+ee783b2ishFIvJRvOtCTxWfG6VUBi9S9p6ily/M7+cH1exLo9FoNI1FRAwRWSEif4M3wfeZMptdBuwriCs44pt+VLTNa/F8yPdK3vv1kufvBO4pElcFfs6xPkyjaUl0BEuj8Y9leMXB/6OU2lL0+r8ppe4AEJGPA1/DixDNxZYyr+3CSz08M//8F17GxjEY+W0KPFdmP9PkBZSIvAz4VzzhNonXmCPMwiZf/hP4TRE5Ryn1JF564L15UafRaDSa4HG6iNiA4F33bwbOUkqly2y7CthZ5vWDRb+vBhRQmha+o+T5BuDk/LGLkfxDo2lptMDSaPyjGxigaOYv76TuKNrmIeDTzE+mzGtRwAEKju8KoJx4OTzPfsBLp+8H7saroTq1IArzXaSqRin1kIi8iBfFKgisv13IvjQajUbTEF4C3pb//W/xIlBRjvqZYtpmeb10Qs4BSoVTuaU9biafUq7RLDa0wNJo/MMA/p9Sau8c23yCY9MpZqOrzGtrgf0cnUE8pr3uAvgVPFH4PqXUcNHryyk/S1kJ/wlcJyLfwpvJLG26odFoNJrgcMSPiMgfAk8A/yf/KOUAXup3KcVdYvfi3VsuyW9fYHnJe3YCXTX6MI0msOgaLI3GB0Tkg3ipe2tExBSRfxaRjSXbfAav41K53PZSXiUifUXvjeB1W/pvvEYa+/DW3Cq1oy3fnakSuvBmGqeK3n8J+WLlObDz25a7ftyAJ6w+i5cqeVwnKo1Go9EED6XUU8CNwP8SkVJBBN7SIxvzqeWAV2eM102wwEN4tcDvKnnvNSXPbwFeKyIbSg9SvNyIRtOqaIGl0dSIiMTxnMmbgFOAZ4GdSqkXi7b5NPAOvI5+yQp22w7cISJXi8hr8JxeO/BP+aLi3wPeLyJfz69zdZGI/C5ezVVHhab/Au8a8GUReZWIfAz4FjAyz/t25X/+rohcKyLvLPwh3479HrwC5u9WaIdGo9FogsGfAhHKd3/9Fl4WxQ9F5Ffyy4X8lKKMC6XUNrzGRn8jIh8TkQtF5K84KsIKqYL/ATwF3CMiHxaR80Xk7SLyTeBz9fhgGk0j0SmCGk2N5AVTYXHEn5T+XUQ+idee9jKl1ESFu70Db7bw60AnsAm4VCm1PX/MH4hIAvgT4Md4efE7gC/gNauoxO5HROQ38VriXoNXN/Xu/D7m4hd46179KV4ErHRh4h/gpZFUkgqp0Wg0moCglHpeRL4LfEhEvlDyt5SIXEZ+mRA8v/MD4EGOTSm8Dvg74PN4dVsP4nXX/QmQyu8rKyKX4q31+BdAH16zjIeBL9ftA2o0DUK8Rbs1Gk09EJEVeN2UtuN17wOwlVLnzfGee4GEUqolV7QXka8C3Uqp0hQRjUaj0ZyA5BcPvhdYoZTa12RzNJq60zIpgiISEpFPi0hOREpzeQvbnCsiYyLyUNHjU422VaMpoJTaq5QSpdRJSqlz8o9ZxVWrIyLteFGw0jVPNJqWQvscjWZhSJn1Q/A6Fe7Q4kpzotBKKYIfwcvdfWiObfqBG5VSxxX/azSa+pEviF6Ol274HMe2ptdoWhHtczSahXGTiGzCWzTYBN4IfBwvdVCjOSFomQiWUupLSql/wKv5mI1+4A0i8nD+8ZciUmnBv0ajWTjXAncBceBdSim3yfZoNDWhfY5Gs2BuwWt09JP84zLgg0qp65tplEbTSFquBitfn/JlpdRxHcpEJAaklVJKRHrxCjFjSqm3ldn2o8BHASLRyLmDy5d5r9ewgHhhKGtZgrzw35hvH5YI9hz/O6VqXwpdAY6rcFG4ChylcAFXec9dFCr/fL6zKDviLbMU7h+YcztvCXfBkPyy8iIYRT9N8f5DlggGQtlEhGo+YwX/M9MUHKe670nhe1U+U6JGKvjOmpaBY8+tccbFJo1LCKFbWVg1nzG1YVqCY1cwziWbTIYzZMWlww4RdRoblDdDgpOr/NzIRmdwLJtIqg2jwbYWM5vdVnwcCWWwp/tRbpMTHEpOx127d4wopea+gNTDjDr5nKHly1GopvqcSv1NgXJ+xw+/V6Bmn1Viy8GD+xFgaMmyBe3Lr8t3tWNUqc+pq5/xDlDV5pX4naBRsd8JENrmxlGL32mlFMF5UUqlin4fy+fC7xGRWPHf8n//CvAVgNXrT1Lhv/wwPXZPTccfmUkypGqbvBxJJFlC27zbvX9FL9/cW36JodGE1wV8CfF59+OgsHG9h3i/F15TZa7ZhgJDCaYSjCMPPLFT9FPyPwESMxleuvFf6WsLse7qTwCgxBNlSryHi0IZ4IrCFXAMhSsKx1A4hvf8OHsUWDaEbSGcK3pkhUhOKrpxGR+fYSASm3ObK984xO0/PTTvvo7sczQBQH8kXPF7KmUiv+/e2Nz7vvy9a7jz2zvn3EYBw+tg13lCLgJLX4BVTypM2/v7+IjXk6M33pjLxGUfPpmffX3LrH8fHz6yXBfdRTa5ETjwQZPUyQZ9P3boubdxDv7y3zqbO7/0VMXbS7tD958OY7S5jH9uEPdwcy7Bs9kd70tx9RcfYPpAnDv+96tQTnOSHCaS3knYM3B0OZxdu/9812zbN4tafQ6wYL8zMuNd52vxOZX6mwKlfqcaXzMbo1P5z2EtfB8AY5N5W6yj1/Ppm/+B/s4QGy79X9Xta2KGIStakz0FxsdnAOb1M8VU4nPq6Wegcl9TTCV+Zz4Kfgca43vm8zuNoNi3VcLbf/dcbvrCYxVtW3wNbSaNGOexgt/o9y+JYNfuzyzY7ywqgVUGE6+NaGaujeaPv8yPX+KqVmZzeApFDtd7iCeocri4csxGWAgmBkYWxIVuiWC6gpUXVdXOto5NJrEQIsogahi0ZStdA/dYFIrRqSSuBV2RMDlLeY+QImspEnEX2zrmDYRzQjQrRDLez2jGwHKORikrEVfVEgRxVSkCDG6H3r2KXS8XDpwujK2GdQ8qeLqx4mouZhNWBYwMLPsPh0PXwuibTZw49P3EbXI8rjwqYTL19310f26Yrk+NMPG5QVQqOJnaydEYD3/xdC7+zJOc+Z5tPP3t49YAbQjdcYuJpM348FRgbhAqpCqfU+ukXq3iyg9qEVcF6iGuFryvJourefdZZ2EF/vuaSmi0sGok8wmocn5tLkyj8vfMdewWu7bOS2/cYixpMz4y7avIWigtfRaLSB9eru+HlFJb852efqqUmhARC/hr4IZK6kFqcXSFmcRaGDkijCqfTZyNIWLYuGRxyYpDNi+mCnecosDCIIqF5RqEECwMTC/uxOhUkhDiq9PbUeNnGp9IYgBL3Wh+FY3jcUSRDSmyYUUm/0hFXKbaj25j2RDNGDCRY6A3gpNSmK4/t+KtJK6KsbJw0kOKge2KbRcIL1xu0LU0xikP5yDr++GqouAc5nMm4sDQtxyMlGLiUhMVhf6b3SNR1CDhHAox9c+9dP3BCJ0fH2Xy7/spGy5uErsfWMq2u4Y54z3b2LdpgNEXu5tiRxBFVpB8jh/iqhZ/M5pI1iyuRqeSWlxVs88ARq38oNHZEvViNjFTrYDyk7mOXc7eoFxrF0qQRFZrn81eQf1qjq4iHgPuEhEXLwPqPuCz8+2klhz4ArVGr2Dhzk4phaMU48kUETE5SAo3f2cpCkIYtBMi5BqEMLCYPRLlV7pGAb+cHjCv4zOVEMsKsRJR4IgiE/HEVjqiSFgOznKTBA4oiKahbcagfUZomxEsp/rzoVXFVTHO89Os2gIzF8XY+7IQj6+1WH9vlt7dc9X414dKhVUxomDgRhcjAxOvM3FDwuD3nUCKrNwLURL/2U3Hr0/Qds0kM99pjoiZjU3/fipLzhzlwk8+zW2/cyFOZmGR51op/P+rTaGpI033ObVO6Pklrmql4GtqQYsr/2hm1KpVhVW561IzxVS1lLO19DO1ouAKishqnTMhj1LqkqLf9wArip5/A/hGI+1pZN1VMdM5m5SdI+s4ZB3HSzgxIKdcIhhEXJMw5pxiajb8EFdjk8mGiqu5MJUQTwvxtMH4+AxxoDcWJRlXzMQVM22KsV6X0X6OCK6OhEH7tNCWrKCOaxGIq4Kj649Y9D+So2+7w9bXR3jh6ihDz+dY88ssVq6uJnh2zJMOOB8C9N3qIlkYv8JEmTD0XQcJYN11+p52rJU54lcnsHeFyfzSn0kNP8glQzz4/87ksr98lHM+8CKPfe3UptrTzJuWIPkcP+quwB9x1ey6Ky2u/KHgY6Bx4qpV0wFbXVBVQvHnKWQQFGglsRUEkbW4zowG42dq4Hwopci5LlnHIePYfHWHdxE3EFDe7P0gMawaOu/7MaMIRx2fX9TF8bnQkRA68r7FFUUqpki0KxJtipE+l+EBrw4tPTpCqselc1oI2ccKrsUkroodXfuIy9k/TLH7FSH2vSzE5HKTDXdl6DxUH6UyPjyFk/P2XavDEqDvf1zEgbGrTBAY+k4wRVbiW92YK3N0XDeGvdfC2d3Y1Jy5OPhUP1tuXcUpb9nJ7l8OMfx8b7NN0tDYphal2K73JWq2uCrg5ySeH7SquNJRq/KcCIJqLko/a6uJrWaLrBPnTKkT9UwNVEqRdR0ytieqCplOIcPg1X2dPJfIYoowNpPyJRceTtxiY0N50aq2JAzhdS2caVNMdyiGQzkmVzjsA2JJoWtK6Jo0SB7w9lkvx9cIpzeXszNcWPNwjt5dDi9eGuGZt0ZZuSnHysdzvqbdFS7a1RTuVkLvXS7iwuibTFB5kRW0dEFHmPqXPno+f5iu3x1l/E+GUDPBaXrxxPUns/y8YS74nWe47ROvwVlgkxpN7fhVd1UrQRBXQcqQKKDF1dy0irAqFVUnkqCaj+KxaBWx1UyRFRxP3mLUKzVQKUXGsZnKZBhJJZnMZMg4NmHTpDMcoT8Wpyca4xW9nViGwdjMLB0fqiCo4sovFuL4TFfonDZYvt/kN4aWsPFFiyUHva/LwSUuW062OXheCHtdmEzEN1OBxoir8ZFpxkem6Y1b8zq8zoMu5/wgRf9LDnvOD/Psm6Nk2mqvWxwfnlpQrVU19Nzj0nubQ+Jcg8PvNoPUS+IIaspk6p97MXodOj42RpBUoJ22eOhfzqBzeZKz3ru12eacsASl7irkwy2DX36mVlpBXPVHwi0vrgq+BoIrrgq+qNgfFR6a8hSPT/HYBZHCfU5xamoj0GfPAvA7NVAphe26pB2btO1FqgSImBYRyyRsmGUXEvQjF75AKza1qAQ/HJ+IEM0I0WGTwWEYTiRI9ZvkhkwOrBIOrIK2aUXPMPSMep0KF0qjxBVU5+ysLJx8V4aePQ7bLg7z5LtibMw/X5ANdRZWxfTe7YIFY1eYSE4xcFPwWrjb2yIkbuim49cmiL95muQtwZkRPPhUPy/dsYJT37aTXfcvZWxb1/xv0vhGkOquaiFIHQOD5mOO2d9oAtvub3lhBcGPWvmZmn6iUi6qFeSIViMjWfqMWiB+pGoMqjhJO0fKzuHkV0yPmCZR0yJslhdVpfiVGlgrQUzZKOD3rKIFrB0xYQSyYcV4P4wNwN51wr41iq4x6DsMHZNUdSMfVHFVzOCLNu2HHba8IcrzV0dY+ViOlZsqTxlspLAqpud/XNwQTLzexMhA/23BK8hK39WGWp2g4x1TjD2SI/W0N0Y9g80XNI9//RSWn3+YV37iWX76yQtQrk5+aCTNrLvys6lFLZwo4grAMvyfAmp01AqCKaxKGyn5nZp+IlPa9TVoQqvR6YL6rKqSWlMDlVLgQMw2GXE8h2EZBh1WiIhlYVQgqsArNg5a3ZVf+Fl3Ve98+HAWhvZ7j2RcMTYIY/0w0S+E04q+w57YCs3Tga8VxFWB+ITirJtSbL8ozJ7zwkwPGmz8WYbQnEurNk9cQb7xxW0ubsQTWWbSSx9sBOOHJyvetudrHcQ3TrLsD9OMfaoLNWlU/P56CrHsTIhH//00Lv4/T3Lym3ax+Za1dTuW5ih+pQYulMXWMbAVxFWrR66CKK50XVVjCbLQaqTI0mdZFdTi7JRSZNI2M4kchoIsDjHLImaFsIzqZoM9p+fPujlBSdmA+jS18ItKnF88CfGdsGwXTPYqRrS2RqEAACAASURBVAbxUghXKLrHYPAAxBPHR7VaSVwVMG1Yf0+WjoMu2y8K89Q7Y5x6e5q2seNDWc0UVsUIMHCzixsXRt9kYs4oOh/xr95pNiHU3R6qeB8qDVNfaKfnb6bo/PgMk3/VXvH7yx3fT9G1+xdL2LdpgLPfv5XdDywhOerf5IXmeGpNDfRr8fpmi6sjdmhxtSAa2Y3Wtt3ACqtm+58TkeLF4gupmEGgUSJLn3FVUq2zcx2XdMomk7JR+eKqjnCYqGlVlAI4G7UWG/uRD19gMTS1qIRKnZ+hvFqsnlFIRxUjQzA66EW14tOKwQPQPerd8LeiuCogwJIXbNpGXTZfEeHpt8fYcHeG/u1H67KCIq4KSL6boBOHw+8yMacd2l5YmMgaPzyJbTvHCJtqxNRs2DstEtfH6fhoktjVGVK3VnZDWO7YpaKrNsElPPJvp/HmL93Puddt5v6/fVkN+9JUQqvXXUEwOgZqcdUYH2MFJHNYC6vgENQarUaILH3mVUi1qYGO7ZJK5simvZvNUMQkg8OQEa9JWI0mkrruag7qIa5s21mw84umYcUuWLoHxgYUw0th50YvfbDjpQyr0mGo48ROI9I1Og67nH1jms1XRNhyRZTUI1nafjp6JFIXNAcnDiy93mHfx0wO/qrJ8i85RPfML7JKxUp3ewjLEF9EVSmpn0YIn52j/QNJcs9a2DsXNobFtk0kckc+g20vrDnJzKE4z37/JM75wFa23jHCwSf7F7QfzdwsltTAIKWfB9G/1EtcNVpYQTBSArWwCi6FWrdCRCtIIqteBGS+IdhU4+zsnMv0ZIbJsTTZtEMkZtHVFyVjOmBSs7iqlaDVXbVEUwsfCo5NFwYOwalPwtrNCkm6jJ4R5ZkLwxxcbeLUYXmhRubCh5OKM25JM7Alx+7zw+x/azedHcFtc2tkYel/OJjTcODXTXKzrKE7fnjyyAM8wVJ41Bdh6kttuAmh83dnIFR7KmOp7aWfrVKev2kt0/vjvOI3nsewgpP2sVhYTKmBteBX+rlSSourOlDsX5otrsq1WNcEk9L6rGZTz/btWmBVyHzOzs65TE9kmBpPY2cdonGL7v4YbR1hTNMb5lodnreP5rdk97PuCoLf1MJPBOClBMt+mWTjY1ni04p96y2euTDMAR+FViEXvpGOz3Cg/3sjDNw9xeRZMZ5/Zxe5aNAaoh/FSsCyr9ooE/ZfZ+HkT8PmiapjUdMG019sw1rl0P4+fxvJFCJvpWKrEtycyaavnErXyhlOfvMuX+3SeDQ7NbDZdVd++Rjb9mcCQIurYwlKI4uCsNLrVrUWhf9VkNbPqofI0gJrHuaLXjm2F7GaGk9j5xxibSG6+mLE28MY+chHrW1yIVipgRDcuivf9tcAB9gxodjwZI5THsnSPumyf73Fs68Oc2ilSS1dsMdHppuSCz8+PIUAGx7PsPHHU0wvDfHstd2kO4N7mQkPw9JvOOT6YO+1irHR5oqqUrJPhEneHiH2pgyh0+ZpRblAFiK09m0aZN+jA5x57Vai3fO0j9RUTK1dav1qyV4rQWpqIT6teqfFVXAWDW7EIvWa+hOUaFbhXPZbZAX3zicAzJWq4TouM1NeKmAuH7Hq6osRawsdEVZQey486NTA+Wj12cW2acX6p2xOeTRLbFqxd6PFsxeEGVlqUG1i2PjIdMMdX+ksIkD/lgyn/XCSbJvBM+/tZqa/DjmQPjB+eJL0QxO0fT1B7oww9oc6mi6qSkn8VxznoEHnx2eQqH9dD0upVmg99rVTsMIuZ79/a91sOpHQdVcefja1CEnttzh+Zka0uriC5qYE6lTAxUfQRJafaIE1D6XiSilFMpFlYjRNJl9j1V0SsSpFpwaWR4urY2mbUmx8MsfGx7OEMopdp4V44fwQUz2VzcA2S1xB+VnErr05zvzOBKLg2Wu6mVoeDGdYLgVwyRMuXXdmmLokwtRrgiWwyAjTX2zDGHRpe7+/qYLlKBVaszG1r50tt63ipMv30L0mGGkerU4zUwO99wej7qqmffg8ebcYfEutNDtqpYXV4qY4ZbDZ+BnF0gJrFkpnEwvrWE2MpkknbcIRk66+KG0dswsrnRpYHj/Xu4LmtWOvlGodYMe44pRNOdY+m8OxhK0vD/PSWRaZOYYsaOKqQHzU4cxvTxBKujz/zm7G1zRPvMxXV9V3c5rYczmG3xMjtS5YEbfc5hCpn0SIX1W/VMFSKolmPfOd9eSSIV7+4S0NsWmx4kf0qpmpgUGqu/Ls8G/yzg+0uKrh+FpYnTA0uy7L73NcC6w5KMwm2rbXwGJmKothCB09Edq7IkeaV5RDpwbOsp8WqLvyk4U6QAF6D7mc/lCWZS/ZTPcYPPeqMPvXHV+fFVRxVSAy7XLGdyeIjdlsflsXo+vrW4BdSjlhVQ5RMPT1JKExl0MfjWN3BatBR+JbXqpgx2/NQLh+qYLFzBfNyibCPPu9k1j28hGWnDPSEJsWG351DVwofqQGQjDElV/+pR7LfbSauCrUWzUrJbBc6rlm8dPslEE/uwpqgVWGQqGxchXJ6SxTY2kc2yXeEaazJ0IoVNnstk4NPBalVN6eEyc1EGpzgIYLS3c5nP5Qlp5hlwNrLZ57ZZjJXu/mv9HiaqFOL5xUnP79SdoO2Wx5SycjJ0fqaKVHpcKqGDMJQ/+exI0Kh66Lo4J0hcwIU19uw1rm0vbOVEMPPZfI2nLrKhIHY7z81zZ7KlVTNSd6aiD4J65q9S/18C2tKK6gOVEr3cBC02yRBf6kCgbp9iEQFGYTsxmHybE06ZRNJGrS1RcjGrMqWscqaNErP9B1V9UzMZrwzQGGM7D2OZuNj2cRpXjpZWE2r4eO7sal3NXq9KyM4vQfTNK5L8eLV3fUTWQtRFgVE9nvMvDNFOn1FqNv9S+V1Q9yT4dI3RMm/tY05sr6LZBYjtlElmubPPXNDfSeNM2aiw401KZWR6cGBqvuSour5osr0OmAmuaKLL/OfS2wSnGhbSJMYjKDCHR0R2jrjMxaZzUbfji9IEWvasWv9UgKtErdld90jCtOezhHzzMzJFeGee51HYwuD1XdbbBa/JpRNHOKU2+qj8iqVVgV07EpR+e9GSYvjzBzVrAcfeL6OCopdPxmsuERo8K4ltZl7bhvGeM7Ojj7/VsRUy8+XAk6NTB4dVfg/8SdnyxWcaXTATXlaPa5UGsUSwusIkbHklijBtmM13a9szdKKFxdsbsfjS2gdqfnV7tcCNZ6JPWou2q1GcbJ4Wl6nk9x2n3TRBIuO17exrbz4uTC9akZ8jtdw8zBqTdN0rHfZutVHYydVPs4+SWsium/MU1kl83hX42R6w1OPZaaNkj8V5zwqTbR12WbYsNx0SwlPHnDBjqWJTnpsn1NsakVafXUwKCsd3UidAxczOIKmn8zrQkmzeou6Mf3QJ/RgFKQHM5hTZuYltDWFcEKVa89dWrgsRRqrhQQEkEphZuPtRRuV6sRXfVKDfSThjrBhMspDyQ4tC7CvlOiPHeJxeqnkvQc8i91rF7Oz8zBaTdO8ty7utjy5k5OvXn+xW3LUSys/EZsGPpaij1/2M7hX4uz7B9nkIAEZ9L3hIlelqH9A0kyD4dQM42fK+tuDzGRyDF+eJKewS72PTLI8OYuznzPS2y/axmuHaxOjEFC1Rh49Ct6teD3+9SSPWhNLXzZlxZXlR3zBBFWlSzcXi227Ryz357BLt+PETTGh6foGehs6DFr/T4s7jO7QkYzOaLTDm5c0dPWVlGd1WwEIXoF/qcGKqVQgI3CwcVVCgdPMLkK7yfeNoWfR+gQMobiwHSW9ljRjLvyhJYAhhIMwFDe7yaCqcBUgqkES3lCbVDPMB7zpRdgyfYMXYdzbH95nG3nt9O/K0Ou1js46u8AzZzitBsnefY93Wx+axd7nMqjMcXOpZ4LA4dGXAa+k+Lwh+OMXxWh99ZM3Y5VFUpIfCVOz99N0XZNisR/1H7dWQgFkeUhPP2tDVz6+U2cdPlett6+uik2tQq1pgYu1NcEKTWwFoJYd9WqfkVHrWpnLiHlt4+yDDlmn+WOvZhEV3fcYiJpN0Vk1cLiObtrxOlxGQwtPF3Dr+hVs9e8Ukoxlt9Hm2Ex5mZwlItdKpryGICBYCBYGIh4zwVIp70br3bDwlJCW8ykJ2ce2Y/KP1xRuIAr3u+2uDgCqlTnLjVJuTksVwg7QsiBsCOEbcE6buP5CVrHwLmYb4YxlnA59f4E+0+JcvCkCNePjzLUYRCfXljIpVEO0MooTvvhBM9e2823u0c5pc8kPurMbVsdo1bl6Hg0R/K0LONXRog/bxPdPrd9jcLeaZG6M0LsjRlSd0Zwdjfncl6oyeoZ7OLAE/0cfr6bM969nW13rtBRrFmoNeG0lVMDg1R3dSKLq2ZGraD1xVU5UdMon1TJcUvta3XB1Yoiq7XPcJ/ojVg1iasCzezmBNV3dFJK4bgK23HIOS624+K47hHvn1A2JoKFEBfTiypJPrqEgQFzRvvsbM5zgK4XiWoLm3TalZ9yLgpHFBOJNK4JsUiInKnIGZAIu8esB2W6ELaFqC1E8o/ZRFc9667qQaWO0FCw4oU0ncM2+17dyQsXdbD6mRT9e6qr02n07GI4qTjtB5O8eN0Az7+zizO/PUGkjDBsVNSqHAPf87oKHvpQjJV/mcAISCBr5tsxohdm6fi1JBN/1kHtt+4LpyCynvnOei79/CbWXbqPl+5Y1TR7FiPNTg20HX9yZINSdwXBXetqsYqrVhZWpaKlWYKqEoptK6RyF2hVsVUQWa1C657pPlJr84WgNLaAucWVUgrbcck5DjnbxXacI9EkASzTwMmn7fWbUSxkwemSfuTGGwiGEqys8pxg0dI/CoUjkDUVWUuRNRUZSzEeU0fuMUMORHNC1DaI5YSQKy1Xd7UQR9g5YnNFby/Xbz7AznPiTPearH4mhVHBvVGznGB0yuV9mT6+Fj7EC2/v4ozvTGBlj8ZMGx21KsVIw+B/Jtn/e22Mvj3KwHfSTbGjFJUwmPlejI7rkoTPzZF9rLGLOBcorsfiiX5GtnRxxru8KJYqXRlbUxM6NTCYdVd+iisn33U3KD6l5mO2sLhq5sSeX8wmtlpRaBWaXrRCFEt7Pmqb8w16YwvHdUllc0wm04xOJ5lMpklmcrjKJRKyaI9G6GmP0dsRp6sthoGw1IoTEqNmcVXPzk6CF6GK2wbdaZPBGYuVkyHWjlksmzTpnTEIOcJMWDHc7rC7x2ZHR4aZQYtodxjXp4n+eufHw8IcYZthsvGhGZa+mGZ0VYTNF7aTic39oZvtBJeoECf/aIpUr8mWt3TiGse3Xm8msZccuu7KMnVxhOSpwblRSN0Rwd5n0P7BpBfGbBJHOwtO8ez3TqJ9SYo1F+t1sfzCj4m8WlMDQ7LwWwY/UgODXHflF0GbsKv5mC0orgp+Z/zw5JHOtM32P35R/HlKl9toJZq5CHGlaIHlA0GKXimlyNkOM+ks44kk44kUM+ksjusSDVl0xCL0tsfpaY/THosQDVuYhiem/OjqdNQW/xYUrgYDIWYb9KRNlk5brBm3WDFh0TdjYGYV2U6D/YPCtpWwdxAm2sGu8VsQ1OJjAZZvSbP+kQSZNpMXLupgurd8TUxQnGD37hzr7pxmck2Yza8Oo/C39Xqt9N6SJnTAYfj9MdygrEHsCIkb4lgrXKKXNTd3sfB/2vvoIOM72zn9XdsbvlbXYqTZqYF+dabVdVeVYVW57mYlNFpctdraVotZVM1GqwqtVjifQAusmghM9GpyBhxFIp1hPJFiMpkmlc1hiNAWCXsRqrygioSssosm+7WgsF/pGwVqdYKCEHEEtS9Fx36b9XtgxSFF1zTkLDjcJ2xfAXuGPLHlVPGNaETdlR90H7I59f5pzJzixQvaGVl57M1AUMRVgaFnM/TdPc7Eq7pIv7632eYcg2HD4A0p7G5h9K1BUViQfSRE9gWLtvekINJ8QTN+aIrnf7iO7tUJlp833GxzFgXNjF7B4kkNhOCKq4nRxKKIXAXNp8xFccvzE0FUlaNVhVbQo1gtI7BEJCQinxaRnIhcM8s2IiKfF5EtIvK8iHxTROrav7iZ0SvXcUknshhpMDOQztpYpkF7NHwk5S8WCWEalf2bgxa9qseijwLE0zA4Dmv2w+r9it5JcExPbG1bAfsGYDpO2a6JBVotjSM643LqLxJ0jNrsPCfO3lOiKILpCMcPTzJwxyg9m5PsfEMPE2uDI2QAojscuu7JMvXaCAei/q05VxvCzA0xzB5F/Orm1ocVblB23r+UmcNRTnv7jqbas1CC4nP8iF7VmhpYC0FMDfSLejS18BstrspTmn5+IgqrUooXkA+60Ar6+QUtJLCAj+Dd8z40xzYfBK4CzlFKnQbkgL+thzHNasuulCKbtrntmWGmhlOkEznCxlFR1RmPEg2HMKqon/IzetWs1MD5KOcIBYjkoH8SVufFVs8UpMNwYMCLbA33wHj62K41rSauClg5xfqHZxjYmeHghihbTg+hjOBcqAozid3tIXraQmy4eYTYcI6t7+gn3R0MGwv0/jiNNepy3+BBVEA6kec2h8g8GiL+1jTS1vwVkccOTLP5x2sYOnOM3vXBdtazEBifU2tji4VSbWfa2ViMqYGt0jEQGieunJx33QmKTymlXBpgPdIxW5lisdkKIivIUSxRPixI2khE5F7gy0qp75b52+3AzUqpr+SfnwPcpZTqK7PtR4GPAvQPDJz7+S99qSo7bMclVIM+tV3vQlTpPpJZhxcOJHjuwAzJrENHxGT9YJyNg/GaL8q249ZUvAzezTEw637+7998DssUPvm//3TefTmOi1WjPaV2VXMRdZViz1SG50eS7JhI4wIrO8KcNdjO6q4IylF1uyjbtovlw0fv7IsyNVo+kqGU4sHEDD9Pz7DaCvH2jk4iPo33QrFth56l7UwfOlZcj4nNV+OjdLsmH071EWpiG/JSdsUT/GT5Xs4f6efc8f5mmwNAqm2KLS97gKHdJ7F098ZZt+scamPqkP8TGcXYriIUtel/3b+SObyBqafeXNP+PvzxDzymlDrPJ/Mqppk+xw8/U9P7S3xDT8xkPFX5OnCFtu61+Jf5fMtcFPsdv/zKQnzKXBQ6Bhbvr7M3wtRY7fWUfvmTSnByLt1DcaaHgxLVP0rhfwbH/98acS30m0bZbLtH9YFl1TaT2DkYZ+qw/+dGYeUIM1SfE/3DH3vfgv1OMKcZFs46YFvR821Ar4h0KaWOkeJ5h/gVgNUnnaT+c3S04oOMHGl3W9u6V5VErxzbJTOTI5vyoihW2KStO8K1Zw7wb4/tY89kbTPVfjW2mC96NTqRo687xK33zl2PEaQCZBNYY8DgKzvZtHuKPdNZzLRL7HCWZUnxvWGbn9Gryz58Mj/7+pbZjzU8xZrTOth5fjf/vu0A6+8bI5RpTtSjMEv27s++hv/5wsPH/X3Nhhibrx3kq1u3sf7HlX9PG8G6/7uCRzuHOfhP2wmNBmOyqvNTYQ68fBvP/vEoKlHe6bzhk68sO9Z+MpHwFhq/7I+WcvLVz/OL7w6SGgtWuqcP1M3n1Opnam3LXi569a6zevnB02MV76NW/1JramDB79xw885A+JRSZotcXf7eNdz57Z017bvWJkkVH6coJfDy3zqbO7/0VN2PWQ3zdaFtxLXQbxptc+FaXktb93qeGxNJO5Bt21spRbASBCieXivkdvn+Oeu9qLCdc0iMp5keSZFN2YRjFh39Mdp7o4SiFq5b+83cYm1sUUytjtBy4bylHazdB53bU4ijSKyKsm19mJE+s6qmGHPRyDz5Qmenvp0p1t8/RqrT4sXX95GNNf5yUEkL9p6tKZb/fILhl7Vz+Oy6llRWzYUjg+DCyDv9O2drZeb7USQC8bcEoxZry49XI4Ziw5W7m2pPnairz2n1xhZBSA3E5ywdvzsG1jPVvN4Eud6qNBVQs3BaJWUwaCw2gbUXWFX0fBWQACb8OoAftVcwu+Ozsw6JsTSJ0TRO1iHSFqJzME68K4JZEuuvNS8eFn9jC78QIDphs363zaqdWaJpl5FByxNa/bUJrUaLq2K6DmTYcN8Y2bjJlkv7ycQbV1BUzfpWK++bpHNHmh1X9pLsD44zb7dD9NyeJnlOKDBrYzl7LDIPholdFYxarD1P2+zbNMCGN+7BsJpvj8/UxecEoS277hp4LPVY76rV6niPOU5AxVWQ1k5cTARZZAW1FqulBZaI9InIAyKyIf/SDcB1IlK4an0CuEn5XGhWj+iVk3NJjKdJjKVxcg7R9hCdA3FiHeHj2qr7sSbJidrYYqEUd3iKpxQr99is2Z4lnnQZGfCE1mivueAFjBudylFMx3CWjfeM4oQNXry0j0xb/UVWtQ5QFGy4eQQjp9j69gHcgDSWAOi+O0vosMPIu6KogFxRZ34YxYhD7KpgrIu15dbVxHqyrHz1wabaUyuN9DnNil4FYc0rv7oG2raDVNHwaTbqlRroNyeyuNJdAetPkEVWEAnI7cCCiQOrgUJi6H8B9wOPiMgmoBPP4flCPaJXruOSnMwwPZrCzh4VVtH2MDJHEW2tTSmg9uhVUFMD/e7wVChCLp1tjGYUK/barNmRJZZSDA9ZbD8pzGSXMWeL92NsDUgqR9tYjg33jOKEDF58XR/ZOkayFpq2EU44rP/RCMklYXZd2lMn66pHbOi7MU1uqcnUxfXpAlYtzi7L6yj4pnQg1sU68EQ/0wdibGz9NMG6+5xmt2WH5q955dmwOFuy16tj4IkurkALq0YQZJEVtChWywkspdQlhW5OSqk9SqkVSqlN+eeOUuqPlFLnKKXOU0r9qlLK1xH3K3qllCKdyDKVr7GKxK2KhFWQolfgX2qgX/idxlFgLmcYTStW7smxalcWy1YcWBZi15oQqdjcM6dBc4ht43mRFfZEVi7q/+WhIK4WSs9LaZY8PMXBV3UysS44DRPiT9vENtuMXR3BCUg51syNUYwOReyy5kaxwFt4eOtPVzJ05jidK+q3QHc9aIbPaXZb9lrxI3rlB6EK14CcC78n7ECLK7/Q6YDNIYgiKyjnZDEtJ7CaxUgi6duiwrmMzfSIt4aVFTbp6I8R64wclwo4G0GovQpq9Aqat/hjPKlYvTPH0n05bEvYtSbMgaUW9hzBoEatT1LpxadtPMf6+0bJRQ1evKQPO+xfW/RaxVWBVXdNEBvOsu0tfdiRYLRtF6DvxhRuXJi4ItJscwCwXwyRfc7yml343fKyCgr/820/W4GTE9ZfsadptgQdP7Ikmh29CkJjC7/qeVul7gpOTHEFOmrVLIIosoKGFlgNYjSRBEcxM5FmZtybUW7ridDeEz2uecWs+6ix8BiCGb0KamOLAtWsdyJA15TLum1ZekdsJrsMtp8UZqIkbbDRqYHV0D6a46T7x8h0WLx0cR+O6UMNg0/iCsC0Fev/e5Rsu8nOK3p92acfRPa6tD+aY/J1EezuYAi/5C1RzAGXyAXZZptCZjLC3kcGWff6fYux2YVvtGr0yq/GFos9NdBvGtGOPcjiStM8giaygtbsQgusCqg1eqWUwkgpYiOQS3t1Vh39MUKR5lysghK9aoXGFgudbTQUDA47rN2eI5JRHFwWYs+qENlQa6RzdB7OsvbBcWZ6Q+x4dQ+qBr3gp7gq0H4gy/IHphg+p53x9cFJFey95f+z9+ZhsqR1ne/njS33qszaz6mz9ulDNw10N73ax2aVRRtvX1C5MCqCjhcflhEHN7hug1fG0RlBGQYemDsooqjgMAqjICiCzdY0DXY3S+/LWWvNyso91vf+kZnddepkVW6RGZFV8Xme81R3VlbEW5UR8Xt/2/dXRyqQvy0ca7K+oeOcU5qS7cH3Yj3y2cPEJ20Wb1oJeimhY9yzVxCe0kC/slfj0nc1TMLkXEXS6+Ej+hx2JnKwhox0JKWzVYxNUDSFzEyi0WfVo7LRXsxeQXiFLfyKNsYsyZEnbOYv2NTjgscuM6guxMiFrDSwHbmzdY58c5PNxTinr5/sa3s+zMjWoX8pkFixePRl07g+ljIOgp6XTNxhUTqlY8+G4PEqBbW/i6OfdNGe5nR+/xDZWNnkwrdmqK7HOPGis4GuJazs5+wVhEfYYhjVEOPadwXhca4g2tCHlbBkscJECHYA4WaQqKJTcaierqKYEM8YpKe6LwccFnsxexWEsEUvCCBX8Dj+qIW+aVM6meHsiRSONjynwLU9X4zi7MNV5r9bYu3yFCtX9Lb5G7ZBVFw48b/XsSZUTr8gO5Rz9EPuMybChfxt4ejFqn8hhlcRJF8WnNhF6xqQnuDRzy9y8Po1YpPBi2+EhSh7Nbg9aNkUv4J2YS8NhNFUQUTOVUQnwlYqGJYywcjB6oJeo4rSk5irJuYFE08BawbiKb3veRxR9qozYcxebae8VCL77SLzZ6pUJjQevSpDJeO/8fL74bJ4b4ns6Rpnr52gcLA7p2FUBjFz1mL+rhJLN2UoHwiHRLpWlEz8i0X5Jh0rBFksWRfUP28Qu8VCyQbf+/TYPx9EUSXHnnsh6KWEiiCzV3tBlh32V2ngqErMgyQqCRwfwvL5hCEg0CJ46x9i+okqerZH/VwdZ9NBm9SwpmFeG1x90A+i7FX3DEvpaTqpMbVicex7JVRHcvpkitUDcd+6Y1pGUfXxzhbA8TsLJDdsHrslR21i9wfYqKONR/65gF52efS2qYF6xfwk+1kT4UDhB8ORxap9Jo7QIB4CyfbN0xnyD09w/AXng15KKAhD9mrg84ckezXwccaoNHCYhKHvKspajSdhyWKFgcjB6kAvUUWn4lA7U8OzPWIHYpQTLgw4RT7KXnUmLMIWu7HdKMbrHsfvLzGZt1k7GOfM5Slf1PpgOEZRcSUnvpRHcSWP3DqFq7dfaxBGUTMlRz+3QWUxxsqz0yM7725oJcnEqkmNbQAAIABJREFUlyxKN+vYU8F7fe4FFesejcSLzUAl21s89sUDzDxtk/QB/4VuxpFxzl6FQZYd9kdp4Cj6riLnKqJfos/rYiIHawd6iSpKKbE2LMwLJoqmkDicQEs1Hk5BRxZbRNmrzgyzVh4uNYqKBwcer7LwRJVKRuOxK9OYAwz3HXZJh1H1uOzLG5hplcdvyu6YdQviITvz7SqZJ+qcfkEWZwgDkvsh+zkTJBReFJIs1mcbku3GNXbQS+GJOw4AcOw5+7tMMMjslV9DhQchTLLsftqTYZUGQuRcRYSfKIvVIBw7kZDSTVRRSom1YmGv26hplfihOIquDBxZhCh71Q1+Zq9gOAZxt5IOAeTWLI4+WMZTBY9fmaHcoQRvN4ZtGDOrFofuKVI4nGDlaRffH8OQY+8WARz/TB4nqXD2uZOBrGE7WkGS+bpN6fsN3FTwWSzzLh1vU4SiTLC6lmDlu1mOPmcp6KUETlDZKwjHUGE/CFv2Csaz7woi5ypiMMLy2YWhhzBysNrQbVRRurLRb1Vy0Kd0YvMxxJahtFH2ahvSv9Kkcc9ebSdZcTn+vRK66XLm8hQbM70Z51GqPc09UCF7tiF6UZkKj3pQatlm7ltllm7MUMuFo9E1+zkTaQg2nxsCAQ5HUP9ijNiNNo4WvJP1xJcOkDteYmJxuPdeWImyV/5kr8IqbOEno+q7ipyrCL8Ick8QFqGLyMHagU5RRc/xqJ2r4dU9YvMxjKmnZlv5lb0alGFmr6SUeJ7EsV2sukOtalEtm5SLdUqFGsWNKpv5KoX1CoW1Co7tsppvNP6vVWqsV2rkq3U2anU2aybFukXZtKjZDqbj4ngesoNDNi7Zq26jjrotOfZAmVTRYelosmvxi1FHagRw9M4CRs3lsVtyrG80jH8YDOPhL2wiXMmZF4ZDtt1Y8kh+26b4PAMZgmd+7fMGQoONueBL8858eR6Aw6eWA15JcOzX7JWfQ4UHZRyELWA0pYFBETlXe4voc2wQOVjb6Caq6Fke9bN1pCOJH4yjtZHa9iN7NWh5IPiUvZINR6petakU6xQ3qhTWGo5TcaNGuVinVraoV20cy8XzJCBQFIGmqWiGCkDMUDFUBUNV0FQFRQASHM/DdByqtkPJtNism+SrdVabjlihZlI2LeqOg+t55Mcke9VP1FHx4PDDFSbXTNYOxlk6nOjKyRp1xEazJce/WsBMqaw9dz40D1Sj7HLwq0XWn5EKjWz75D9ZuJMKpRuC/xu5pzXsR1Tyc+eCXgrV9QSr909y5Jb952D5kcsPS4VEv4QlewX+CluMW2lg0H1XkXMVsVcJQUw1fOwWVfRMj/r5OhJJfDGOGlN9P3/Q2SvpSdy6g1NzUMsOigtFakBDFFHVFIyYhqIpqKqCogoURUEIdp71JWAyozMR37nhX0qJJyWulLiexPU8XClxPA/LltDqzTcEcaFQwcNAoAGCwXpchiXL3o9hFMCBJ2pojmR9IY5UBQcer7b9DYOMPKbXLLJ3r1O4cYbChRrZ0+GISh/4apGlGzOcfmGWq/58JejlkLjfQb/gUny+QeZr9oBX6uDUvxhD/5ki6qFJ3LP+P7964ezX5nn26x4kOV2juh6Ofp5RsV+VA/eqLPu4lgZC5FxFDIeNlU1yc+HoiQ6CKIPVA57ZKAsESCwm2jpX6+XqWGavPNvFKphUz5cpP16ktlTF2rRAQDypk56IMzmdJDuTYiKXJDURJ5E0MGIamqaiKGJH56pbYyiEQFUUDFUloWukYwaT8RjTyQSzqQS5RAzF9hAe2EiKeKzhsoJLAZcaHl6PseEwZa+2IoC5c3Vmz9XYnDY4fzy5s2pfgMYxd+cqiXWT06dmcWLheJxolmTxy0U2TyQoHglewU8Ak1+wMI9qmMeCdWgAzC8ZICH+nOD7sM58rVEmeOjm4B3hUTKok73fs1ewP4QtYPilgZFzFTEMos81crAuYq1c3TGq2HKuhBDEF+MoxnD+dKPMXnm2i7lRp3K2ROVMGTNfR3oSY9IgsZDCyanMTKVJpmMYcQ1VVXbOUHVAVwb7ewkh0FUV1YMFVWcOjTlUJlEwENSRFPBYxiXfdLZkl85WmLJX25lZMpk7W6M4ZXD+2MVOVtBNyQC5pM7RO5Zx4ipnb54JdC1bmb+rhF52OfO8cPRiZb5uIeqS4nOCL1v0CgrpwjSxWy38KVbrn+LZFMXzSRZvWg10HeNC0Nkrx/Wi7FUbxjF7FWT1Q+RcRewHIgerCzyrURbYybnyo/EYhpu9kp7EKlpUzpWpnCljbZgIRRCbjpM6nCF1KENsOkHRMgcekgzDnXulIkiikENlHpUpFJII7C3OVgEXC9nW2Qpr9mo708sms+dqFKcNlo40erLC0pQMkMxbLNyzQf7yCTYXwxFZVx3Jwa9sUjwep3g4+CyWUofMXRblG3TcEFTC5dYOoB3w0C5zA16J4NzX51i4eh01FvRaxoMoexVlr/wiiABd5FxF7BciB6vJTuIWntPsuZKyq8xVWI2fZ7vU12qUnyhirtXAkxhTcVJHMiQPpjEmYyj6xb/bOM29EghiKEyiMtd0tuLNzNY6Lmu4VNtktcKcvdrKzJLJ9IU6hdkYq4uNzyXo7NVWA7lwT55YweLMqVk8Neguowbzd5fRKi7nbg1HDfjElyykISjfGHwWa3J9HulA7JQV9FI4941ZVMNj4er1oJeypxm0OiK/WUUXwW4Z9kv2ynG8PVsaCJFztZ8IwwiXoIgcrC1sLw+UnsQ8byLdhlrgbs5VmAYLb81euXWH2lKFypkydtFCS+kkDqZIHkoTy8ZQtPG4BHoxiC1nK9t0tiaal/kmHiu4lPDYyI9H9mors+frZFdN1hfiVI6mh3aeTrQbKKx4cOQrq1gZnaVrcgGt7GJUW3LgziKFkwkqc8EbdOO0h3HGpXRL8GvRHAP72xqx7wu+THDlOzmcusqB69YCXUfY8aO/14/qiH7xY+4V7P3s1V4vDYycq/3Dfv+sx2N3HQBSSswlE8/yiC3EUOOdm9PDlL1y6w7VC2Wq5ys4dRcjGyN1JENiLokW13btpfLLEPopowv9GUQFQQqFmWZWS0dQxqOejaFNxPB8W91TDCvyKICF0zViy1VKV+YoTfuTYeyF3aJRmaUauYdLLD8zi9lmdEEQLHyjjGJ5nL9lIuilIIDM1yzMYxrWgeAfvfWvGWgHPdTDwZbmebbK8n1THLwu6sMaFn5kr4ImrNmrYVRBDDvuGWRpYETEfiF4Kx8CJJdmr6w1C7fqYswaaKnhP4z8ErcQlkd1qUL1fKXhHE7FSR/JEJuKj022ahi0slpTqMygotoeJV2wlBCUNH9i+KOQ1C2sFsnes068ZHP+yiz1EVyb29ktKrV41xpCwtmbwiF4odU95r5VZv2ZKcxM8Ap+6btscCWlm4MvE7TuaqwhdpPd4Z2DUyjbu8r1XvjWNBOLVVKztaGvZRwJerAwDDZTcS9nr/xkr2avor6riP3I/t1x74JdtHE2HbRJDX2y8wMhDOIW0vEw8g7JJQe37mBMxUgdzmBkYwil+54YP1SewH9xCz8NYmW9woIrmKt5xDwoGgrLcUFVHdzRGnZTMkAurnLou3lUR3L2GVM4I3Kcu4lAGjWX+Xs32DyaprQw+gxbOw7cWUIqsHxDJuiloJUkye86lG/UkQG3qnkbCvZDKrEbg+/DunBPwyFfuDYqE9yJfisk9kL2yi/GIXs1LBsS9EDhyLmK2G9EDtY23LqLtWKhJBSMme4fnkGVB0opcfMm5gNFtLKHPmGQPpwhlo335FhtJYziFsNAlzBtSmbqHgqwEVNYjwnscGg07IpmeSx+J49rqJx/em5kXTTdGMn5bxfQyzbnbpwJuLunQbzgkHuwxvJ1abzgk1ik77JxphTqJ4JfjPkNA+1yFzE5jGLZ7tl8Ik1tw2Dh6nyg6wgjeyF7NSh+lpvv1+wVBFcaGDlXEfuRyMHiqaGP0m30XQlNEF+IdzXzKUhxC2m52I9VcM7V8HRB6lCa+EwCoe4NpSfwN+II7RWfYh7M1iWTloelwEq897LBjbXS0LNX25WfEmWb+YcKVHMx1o4ONzvTS/284koOfjNPdTZO4Vj7uXKjZuGuEk5KZf3pwfdJpu61EZakfH3wmw7rbh2hQOzZwy8T3B3B8n1TzD1rnaBFN8JImPp7+8GvoN0gRNmr0RP1XUXsZyIHq4mUEnPFRDqS2EIM0YPU9KiNn5SShx4qYj1UQtYctMUE9TkN1RgsIu5XnTyMRpq9X9oZRgGkHZivSeJuo2xwNSZwQp7Nyi7XmFyqsn4kTSU73MhsL1HIqUdKxDcsLjx7OvBSOIDJR+vE8jbL1wdfJqiYkPy2Q+XZwZcJOo+peAWBce3wHKxCubtjL983RWrGJL2wd0rSgmZQZdrtqrQ9/3yIBgtDlL0Kgih7FbFfiRysJk7Rwa24GNNGV4qBftFrfbx0PJzTVe78+hoiqWGcnGBTdX0ZChwBKjBlSXKmh9PMZj18evfI5yiM424RyPmHNzFqDheuyOFq4bgOhIQD/5qnnjPYOB6cpPyT6wHmv1mmdDRObTp4hcPUt2zcSYX68YDLBKXA+lcd4xq78aENid0ELlqsfHcKgLlnbAxtHeOGH9LsQRMGcYuwz72CvZm9ipyriP1M5GABriux1hp9V1q2+4fcqMUtvJqD9XAJr2Rz3XVT6MdSiOZsrkGijLA/xC26LesQQNKF+bpE9+BL38yzYYhdC5dGIW6xUwRS8SQHv7eBoyssncz6ft5+DWX2sTLxDZOla0bXI7Ybs/dWwJOsXBu8w5f6tg2OpHJt8BsQ614dZVKiHQ1Wrn3zdBqzpDN7VeRg+cFeELcIa/ZqnOZeweizV1FpYEQEBB/K7RIhxPOAd9NYswW8WUr5tW3vuR74HPDglpc/LqX8g92OXTId5gTE5mNd9V1tZVTRRXfDwjlXBU2gX5bmqqdn+c69/jaEh7E8MEhUCTOmZObaSe59sIgtYNqSqCP2FrqJQMYrDrNPlFg9PkFxNRxS1wJYuGeDx5+/wObRFNkn/Nss9YNRdsk9XGPtWSmOfL7Qd8Lm/af/mKzX/Bv//Pv46ebrBSXBG4789I4/txWlDokHHKpXa/CJ/tbhF9a9DSdPv9rGeTxAkyAFa/dnmX16OBysYdqcbtgL4hZhyF75SZS96p4oexWx3xmLDJYQIktjG/ImKeXVwC8BfyuE2G49ZoD/KaX8vi3/Oho625UYM8bI50R1E2GUUuIs1XDOVhslgZdnULY8jAetkQ8roxC36AYBXHdVlqlWyWBMYG3xwUchbgHdRSCnzpSJlyyWL5+k5vijCjdoJDL3WBmjaLP8rJwv6xmU2XsqWBMam8f62/iduv2Gp5yrbez0+k6k7nOw51WsuWAfw15ewTmnYDzT8f3YneZfbWf1/izZIxX0VLCiG8O2Od0y7uWBYUBKGWWvRkiUvYqIaDAWDhbwUuABKeVXAaSUXwAuAD+w7X0zwEuEEHc2/71TCNGxq91QFbRMbw8hv2rjd4swSilxzlZxV02UnIF+PIUYghPoZ3nguIlbdEvCbSgNCmAtLqiH8M4RwMKDBVxN4StL/mWLBolECglz3ylQmYtTngteSSz7UA3V9Fh7Zu/qhq99xyt58x++zre1JL/dcCKqzwy+kMD+jo7+dAeUYIs51x5olLhOnwx8kzZUmzNs/CgPDIO4RZS96p8oexWxXylUHXKzE0EvY2xKBC8DHtn22iPN17fyCeCjUkophJgC3gv8KfCK7QcUQrweeD3AzMwsrzk83dOCHC+LPqB/6rhZdNH+GI7jcccdK5wr2FxzTY5nPiN7UfliLqHyyqundj1G1+twBj8GgOtOo+1wnPvuNVBVwQ/94HyXa5pB63OOV9u1OV7fx5uYivHiHz8GQLXu8rmvrLBRsnnuDTMcmj/CMBOfrt3IRPWivP/lpTLfXKvxY6+7igPJwQyd47gDfw6WlPy3zQ2UV1zGS1I77z0n5lO85K03D3SubqgrBR68VuUHTp5Apbvf7ebn3sjTr76yYwlxr+v/C+tRkreleMm1h3v6uUHZ/rfOz57jdOpebv21q0hW/DNMjifRtO6FPIRWB+7i5tckqJ665qLv/cWbfVtWNwzd5vzkoakdT+54HtC/jRnULuz089mUystv7mwr/bApu9mTbrn3Hh1NU3jJjywOdBwYzIbshON4be3HxHScF/3MFQMd27W9nuyGH2RmE/zIr3+/73+nYTIqu+Mn47Tmlg2YmEvy4jde0/kHfMD1QNX9ufg/elf/PzsuDpYAtndgO2zLwEkpa1v+Oy+E+EXgjBAisfV7ze9/EPggwNETJ+Sfne2+n6lVGz9IBms3+VzpSewnKsiyg3Ywwf2e5P77Lu5LeOXVU3zgjrO+lAf6VSu/W8RxPW8xPWXw6c8sdz5OM1LoVwarFXnsN4P14h8/xuc++viT/x8HKjHBF76+ylTJJGkNTxxg++yrbvAUQfr5i3zqnhWOfWutSxeizbl9VIGavGma+6/K8r//9AGMWvu/10veejOffdedvpxvN6yTCer/Zo6//uS95B6ud3z/2z78pq6cK6Dn9ctXxjl7q8Fn3nMniv8Vejuy/W+tzLrMfADu/sa3qH3an0xjr+WBLW5/RpLC+gP8y/sCnaEWqM0ZtEJiEHn2lrhFO9vy8pun+Zs71zsfY0Cb0hK3GDSDtbJSZ34uzmc/cW6g44D/s692Ky9/0c9cwT9+6IH+j93MXo26PPAFr38mn//Dr4/0nIMyKrvjJ+O05pYdePEbr+Fz77tnNOcMSQYrhIVObTkLHNn22pHm67uhAnXA9HtBw6qNv8i5OpREnY4N5TwtRuFc9UOYygO3owDTpkQxXfKZGNUB54/5jeJJTi2kMDMGm/PhKLGZ+V4RFMH604J/6E0+2igTzF/Z+R7+T3//dq5+ztN7Fr/plsT3HKQhqJ8I9hryVhXcdYF+xQi9vB3IPzLJ1OWBlwiGzuZ0y6Czr2BwcQs/2A/lgcMk6r2KiAiWcXGw/ha4WgjxLAAhxE3AlcDnhRBfFkKcbL7+6mZzMkIIDfhd4CNSSn86/oeMlBLnTLXhXC0mUHM7OwWOOxa/0p5FAWKrFQzHI5+JUdf93yAPUkP/tMkY8aLF2rEJvBDc5fGSTeZclfUrJgKXbFfcRi/WxtOSuw76fduH38SRKxcvda7m25e5FpTeN4SJhx1wJbUrgi4mENgPauhP88fB6na4cDvyj0yQnqtjpC1f1tIngdmcaPaVP2ysl9EV/x5+4yZuEQTjVBoYMXwGsQN7gaCteldIKTeFEK8EPiSEkDRKNW4DksBRoFWHkgD+SQjhARL4IvCbfq7FD+ncdhFGKSXOhRpe0UY9EEed6py5itQDOzOsyOPGWonppIZXrLM6GWd9IsZsoY7hs+PbbxRSCMHsY0XOXDPDxoEU0+d6iyoPIxo5/WCRx1+wQOlggonzwUrJTz1QZf2ZKcqLBpmzl27kX/uOV+6cuVpaevI/pZS4rsdrTv58X+tQ6hA77VI/qRFg0gMA50GN+C02YsJDFgffmPZTHgiw8WijTy93vMTyfb31xvpFmGxOL0Szr8aHYYpbRNmriLDQrx3ol0I1+CqMFmPhYAFIKf8ZuLHNtw5tec8fA3887LUMI7rorVt46xbqTAxtZjTRv6g8cHAUCTNFk5XJOGsTMeY366he0DmaBqlNi+RGnfzhNLkLVZQe1+W3ElT2dAXVdMlfngncwZp8pA6eZOPyxEUO1qnbb+Df/s6rSaTjHcsCpZSUSxVef82vDrSWxEMuhRcYeBoj7cPajv1wwxzoJxysb/V/zwwatdx4rFFGmg3QwYJw2ZxeCLo8cC/OvhqmDdkrRMqBEWEhDP1XMD4lgnsar2zjXKihZDTUheBLKyJ6Q/Uk00UTqQjWM7HAS+C2MvNECddQ2TgQfMmR4kqyj5cpHE3jqcGWkuh1j8w5k8KJpzZyr33HK3nzu19HMpPoyrm6947v8dcfHnxKcPwRB3SBeSzYPizn0YaDpZ0YXLRlkKhlvWBQ39TJHd2bZVS7sRfKA8PAxnrZ90CdXwxzdmKQ0uwREREXMzYZrL3C9vJAaXvYZ6qImIJ2ONVVM31+s4oudpb4HVfGqTxwO4brkSuZ5CfiFFIGucpg/SN+Gcpk0SZZMNk4lGbqfAURsPc39UiZ9Ssm2TycJPd4sKVAk4/UOfu8SeyEws++7Ud56Wue15Vj5dou7//lj/CVT37DF6nc+CMNh6Z+XCXx8PAUKTshawLnvIJ2vP80mj8194LN0xkmj4yfsECQROWBERCMuMV+z159tPY/EcuXKiQXlARvOPLTAawoePZ7/xVEGaye8Du6KKXEPlMFV6IdSSFGGNX3c7hwC+lJ3JqFXahirZQwzxeon85Te3wdr2ZTWKlRe2yN2hPr1M9uYC5tYq2XcUp1PMsBKcemPLBdBDJpuaRrNpWETs0HZUG/DOXUmTJOTKU4F3zZTXq5hlZ12DieDnopZB+tgxC85vde3bVzde8d3+M1V7yFr3zyG76tQ61ItBUX83jw8S7ncRXt2GBOnh8194XTaSYPlyFU+eDwE5UH+ktUHhixG6duv4E/f+S/tnWuALJesKXwQbOf+68gymAFirtmIisNxUAlPvryoEGNobRd1JJJ0pRUq0W8+raLWxEITUE0lZyklEjXA1viuV7jv7fsnzQBlbiOGtPREgZqTBuaPPawmKxYmJrCRjqGsVFDlcFvEFMbJkbFJn8wxcRyreNcrGFGJIVs9GLlT2TwVIHiBvf3SZ03efnhK/g/fuBUV87VP3zki3z4tz4+lLXEH3epnQz+cew8oRE/ZSPiElnv7d7zM2JZPJvCSDvEsxb1wnBHVYSFqDzQH6LywIhR8Np3vLKrwFzEaAlL/xVEDtZI2VrC4Zku7nIdZUJD2UWOfTtBl3FI28XNV3HXa8iSiQE4ikBNGuizCdSEjohpKLqK2DJGXjmnk5sySF4+99SxpEQ6HtJy8OoO1UIVz3ZxalXMQhWhCLRkDCMdQ43rY/EgE8BU2WQ5m2AjbTBdMvse9OvnmnLnKyyfzFLP6CRKwabuJ5+osHblJKUDCSbPBnc93/rDN/CGF/wwSsDOFTSUBMs3GTgZgVYKzul0nmgEetRDLs7DvZsHvyKWxXONIcMTi5V942AFSdB2BaLyQD+IygNHQ+RcRXRD5GB1iR/y7NAo4ZBS4pyrgiLQDiZ7vkkHlWfvpzzQK5s4S2W8fBUkiISGPRXHTRlMT6b7etAIIRC6CrpKsW5DNkEmZuC5Hk7Nwqla2BUTu1xHaAqxTAI9E0dRO1e2jrL/aju6K5msWmymYtRMh6TVW8nVMCKREys1Vo9PUDiQIlEq+H78Xsgs1VBsj83DyUAcrFO338Brf/PHyEztft1KKalXTP6/X/sLX0sC2xE73bhGrMMq2neDK3NwzzQcLO1Ibw6W3/X2LQcrc7DCynf2Xr+p34RhuHBUHhixH4icq84Uyva+Lw+EyMHqCb/KN7yCjay4aIsJhB5MG1y3xtAr1nHOFvFKJqgCdS6NOptCSRlUhyTPrqgKRjqOkY4jPYldNbFKdeobFeqFCsZEgthksqOjNcr+q+2kaw7VmMZmyiBu1XpudvQ7Eqm6ksxqjeJcgvmHRc+S7X6iuJLMhRrFxRSwNtJzv/Ydr+SlP/k8RIeBmKPIWm3FONtwsMxDKskgHaxlBWmDuth7H5afBrW6GsdzBJmDwWdWRoFfAbz9jt9CSX6yV4cL7yci5yrchKk8ECKRi5HRKg+UnsRZqiESak+lgTDaMg6vbmM9sIr1vVW8uo12JEvs2QfRj+VQUqOL6glFYKTjpA9kSS/m0JMxrM0apTN5zM0qMgQ9Tu0QQLZs4aoKpWQ4Sigml2tIVaE0ojlru5E5V8Wa0DEzo4vxnLr9hu6cK2+0zhWAWgNt3cNaDPiR7AncCyrawe4drGFEK6WnUFlJkJ7fP45HUP1Xe608MKz9VzDc4cKjZr8NF97VuZqfb/szBSU8GdlREakHPkWUweoCP8sDnZU6OBLtSOdZO+0YtDywE1JK3PMlnHObIATa4UnUhfSTQhVBohoaybkJXMuhnq9Qz1ewSnUSsxm0WDicmK3EHI+E6VBO6KRrTuCCF4mihV53KM4lmFwJVt0oc75xT5UOJImVhrs5OHX7Dbz6l29nZnGq4z3nOi7v+8U/HXpJYDuM8y7WwWBnYQG4FxTUA15X7x2mMS0vJ0jP728Vrm4YVJ4dBi8P9IOwlQeOG6Puv4L9M1y4Y+ZqaQlo7p9cj9ec/PkRri58ROWBDXreNQshEkKI3xRC3C+EqAshzggh/qMQYk/faX5EF6Xr4a42hS1Swfi2uxlDz3SwvrOCc3YTJZcgds0BtIMTbZ0rPyOOvZZ1qIZGamGS5NwE0pNUzheoFyqhzGZNViwkhCKLJYDMap1KNoarBVviEN+00WoO5SEP1j51+w28/nd/nNlD0x2dK7NqBuZcAehLHva8ggy4+sRdUlHnXbodmjYsY1peSZCa2/sOlh8BvEH7rwY/f/BZcb/LA6P+qwjovixQSsnp+8/te+cqKMJWHgg9OlhCiAPAXcCvA/cAfwQUgbcD7/V9dXsMd90CD9S5YI1RO2Pobtax7ltG1m30y6cxTs4gOsxyGkb/VS/oqRiZxRx6Koa5UaW6XER63tCak/uR2NU8SdJ0KMc13BCUbWfWaqAIylPBXoMCSC/XKc8PL2p96vYbeOMf/BSx5O4qdFJK8vUq7/+t4YtZ7Iax7CJ1gTMd7IXiLiuIGCjZ3R2sYZeCVFcTJHIWihbc8OVREcmz+0NYywOHKc8eMTx6ca7+4SNf5G23/e6IVhZOgigPDGv2CnpwsIQQBvAp4BjwAinlq6SUvwrcDJwGflYIsTDE5wpkAAAgAElEQVSUVY4568UqeBJ3zUTJaCiJ3h+0w6yTd1bK2PevIgwV45kLqNPjY+yFqpCYzRCfTuPULMrnCxCggEM7MtXGQ6ecCD6LFS/ZqJZLeSp46evUSh0ro2MPYQZcK3OlarsfW3qST/3Nl7nuL97LZ++61/d19IK+3CjLs2eDLRN0lxtmQZ3f2bFpGdJhloJU1hpBgOS0ObRz7Hf2Wv/VfiSaf+U/p26/gQ984z/15FyNsmc3zIy6PBDCmb2C3jJYvwRcD/yqlPLLrRellGXgfzWP9Rx/lxc8fvVfzZQ1cCXqTP8b22H0XzlLJZzHNlAm4xjPmEOJj1+UTQhBbCJBamESz/GgYuK63fWQjALdk8Qtl0pcp5Prt7FaHGotvQBSeZNKLt5xLcMmtVoHoDrrr7PXTeZKSsnq2XXe++//hD/5rY8BUJsN1gHWV5sO1lyw/Y7uWuP8yszu99CwDWltvfH5JWbqQz3POBMGeXY/iPqvBiOI/qu9ymvf8Ure/O7XMTGd6TjGo1au895f+JPIuWJvilvkB8yOdXVXCiESwC8DF4APtnnLevPrnsxg+VG+4eYtRExBBNR7BZcaQ2eljPNEASWXQL98uqO6WtjREgbpA5OUzhcob5TJ5NJdzcwaBem6zVpMoxZTSZrBljylNkyKC0nqaZ1EgA/FxLoJUlKdjjF5xp9ARjeZK7Nq8sG3f/TJckADUE2P2kywDpa6KRGWxJ4O9pr11prDhndwsEY146SWb2SwErm9m8HaC/LsYei/8puo/2p39qqCYNdKs1HWqi1BiFuENXsF3asIvgLIAv9DStluR9Z6wlq+rGqPoZgesuaiHogHPj+hZQzdQu3JzFWvztWGj/OvNtbLvtbNqzEdUjG8qkm5UOk4THZUxGwP1fWoxPTAHazkZmPDWp00AnWwVEcSK9pUfShX7FYp0HXci5wraGT14us2telgHSwBaHkPJ2AHS9YEXhWUqUsdrFFGKWsbjedCIrt3HSyI+q/8wG87EtGZvaYg2Kp8iJyr3tmr2avcTGagY3TrYL2s+XVRCPEf2nz/Rc2vZwZazR5kvVglvtnYqKjZcBgAr+5gP7yOSOroJ8c/c7WVwnoZVIX0ZJJyoUq1WCM50Z8kvp8IIGk6lBI6riJQA+wT0y0PveZQmzTgXLD9D4m8RW1qsPuilbXqJGaxPXO1lXjeoXww+PtTy3s4ueDvR29DQcldfI2Oou9qK2bJwHMhno3idsMg6r8aDZHARbg5fvIYH/jGK7oKxkpP8g9/FjlX7Yik2S+l27v+1ubXV3d433cHWEvo8KV8Q0oSJSCtIbT+ItP5zapv/VdSSuyH1wGB/rQZREhK6PykVd4RT8WoV0w0QyMWgpKPpOlQShrUDJV0PdiHQ6JoUc0GL3QRL1gUjqbw1P6dilf/8u0dnat2mauL1+GQf3oSKbpWJx8KWkFSDcEsLK+goGSfymCN2rkCQAqskkFsMnKw2hH1X0VEDMap22/g1h84habvvhWWUlLaqPDhd3w8UKXZMDKqkvF2DKs8cNDeqxYdd9dCiBRwBPi2lFJs/wdkABs4K6V8vPkzbxdC3CWEKAohVoUQnxJCPNOXFY+YQcs3FAuk5aFOhCOd7l4oISsW+vEcSmxvR9XiqRiarlIr1fAGFL3wIwqpuxLN8agZwf/d4yUbJ6ZiG8E62PFNCxSBmen9/jh1+w28547fZmZxatf3dTPfKlZwkKrASgfr3KibHm5GBD4Ly9sUKJMX3zNBGFGzpBPL7L3yE4j6r8LIOApcRPRHqySwo3PlNUoCf+76X42cq20EVRo4iuzVoOWB0J2K4GLz6/kdvv9SQAf+bstrzwfeB5wCXgg4wD8KIXbfCe1B9Epjk6L0sYH0k3yhgrBcnHNFlFxirKTY+0UIQXIigZRQK4dDiSxuu5i6QtAah/FK48FopoK9LmPF5joyvTmd3QwQbikF7pa5amGUGn1x1mSwDpZWlKAK3HSwHpZXVFAmGqm8ICOUZknHyNhjUQ7SD1H/VfgYJ4GLYavO7lW6HePhOi7v/feRSuBuRNmrnenmzmw9bXbqNP7p5tcPtV6QUr506xuEEK8BNoHvpzFLa9+gVTyEoSACzhQA5JZMXCnRjmT7Psa41cyrmko8GaNeNYklXTQ92A10zHIpJ3QsXSFuB+dmxZ50sDTSG8GJCBjNCJjVRQCiJWQxfXAK6Xk9KQV2XEex8VC10hpBavWopYZT42YEWim4WkVZEoiUpFCxaHQQBoNV1jGy4QiORISTSOAiolu6FUOC3m3IfiPKXnWmm13/UvPrJRLsQojvA24DPi2l/Poux8g0z7XR8wrHmPXNCnqNgaTZ/WpEFpaLu1ZBnUsPPOsqrAqCOxFLxUBAvRK8GlnMcUFKrA6Rs2GjOhLVcrF2GHo9qoenVvcQjtd0bHZma8ZKUcSOzlUvWaut6OVGBstOBxsIUcoNp9tLBZzBKguECkoyuAglQKWoYqTCLcUbBOvFweyCn329ERHjQDdVD9CwIcV8OXKuuiDKXu1Ox522lHJNCPE94HohxNVSynsBhBBHgb+kkZl6Y4fD/BHwr8BXB1zvyFgvVwfvv7IBV6IkB9tM+2EIjdU6SFAP+OOZjxOKIoglDMyqhed6gc7GUiRorsTSFagFtgwAjFp7Bys3NzmyOScCMKoOdocyl26ELADWzuX5+ef8Zs/r0KvNIb+pgB3fSjODFbCDVdnwyAC5I2m89Y5vHxp2VSWeDrqgNpwMKnAxCH4IXPg57iMiohPdiiF16teNCK5sfBRzr/zKXkH3KoK/A/w58E9CiD8DUsD/BUjgZS1xi3YIId5FQ4XwVillsAOARoxab2yWRDzYTZuUEmO9jpKN73lhi51oOVhW3SKeCrYx23A8TD34klG97lCdDL60Rqu62IlL75GtJYHdqOybVZO//M+f7GsNQoJac3ESAWewqo1nhpcIzsEqlG3Slcb5RSK4MsVC1cGua2jxvdd/JQNUqvSLvSZwMQwiifbg2VoWuBtRSWB37NXSQL+zV9ClgyWl/KgQQgd+BXgDsAZ8DHiHlPLcTj8nhHg3DWn3F0gpH/VhvWOFYoXDwWLTRLG9fSFssROqpqJqKlbdIZ4Kdi2a61GNa3iikdEKbB2mi2OoSILssgGt7mJOXtyD1e1sK9dxEYrC+vk8f/mfPzmQcdRqHk48YAer2W7kxYP5RFrGMxVLAXVEPJjsUcuYqkoSLeYGq50/JCKBi4hxpVXlEPZhw93YESkla+cGtx/7gUDGdWxhnLJX0H0GCynlh4EPd/t+IcQf0XCuni+lvL+PtY09qiVBE4EP8q2eLxIHlOzeLscorJd3VYDSYxr1ionneShKcBtpvSkZ7ygKxoDy8YOgWR4oAk8TqM6lG9hC2R6JAdVMl2rs4mh4N+UcfkccVVPixgJ2sMzG5yBjo39mbDWe0mr0K4rY6B2blnOVm53AtRrBKVWLygQjIiK6o1sxC7Nq8tV/uZMPvOGvRri68Sao0sBhkq86vjtX0IOD1QtCiP8GvAZ4ObAhhGgJZJSllPti0MR6sUrKlqFQD9TKNiKp9z3oeK+gGw0Hy7FcjAAzFarX7LNRBQRYNKs2VQwdXUF1Ll7IKPuwVMvD3VYyOX2wfTmHlBIp8SVjdck6bC9wB0u4gCvxRjwDentkUlrNEkE9mMxRK1Lp2o3PQzX2VXX5rvghcLFX2PBxblWnAF3EeNBr1ip9efCD3ceBIMd1wPgIW2xlWMXBLdGLf9r2+juA/zCkc/qGHwIXAIYrEANs2PwwhFJKlKqDMjX47zNuEu3bUZsS7a7j0hjdFtA6Wg5WwJlN1Wkq1mkKQXp6iiPxdIXjJ4/xnjtexszBKeQOhYv9ilh0tQ47+AwWgLBBaqO7NtqVfciWzRmxg7W9idlzGp+HsscyWIN+uoMKXOwlBcFIoj1iK91UP2y1Iy95682jWNZYE1TfFYyfsMVWhuJgSSl93x0IIZ4HvJvGmi3gzVLKr217jwB+m4YAhwt8E/g5KWUgnoF0JWLAjdLAhtDxUFyJ2EGOu1f6VX364AceJpuFcvmX+NOP/Bdf1tIrQggUReAFWJYHoDQdLK9N6UJudmJkwyOfXIfa/hodVZ294nj88DOu4Pt/4BS63vi9BQIp5UXlHYOIWHS3DokdsHofgHAkckR98TvW1DvNDNYIg7vtykCk21xHAM2K42hzxoVxD9ZFhIteBJGGbUf2GkH2XY2jsMVWgg/XdoEQIgt8AniTlPJq4JeAvxVCbA/jvZbGXK5rpZRXATbweyNd7FZcGXj/FWYjMyGMYJWMss3Zxum0yeLBBwJbh1AVPC9YB0sASIn/YYge1+E2+30CvkYVV/LWF976pHPVQgiB67h4Xn+zrXpFuBIZgiei8BjJk3lXw9m6RUb099jad3XRMtxmBksd7T07tjZnBOQLFV8UBCOJ9vEnyMxGi+0zEnfquep3RuJ+JmhRCxg/YYutCDkGerFCiFcBb5FSntry2r8CvyGl/NSW1z4N/C8p5Qeb/38t8E9Syundjh9PJGTs4JEn/99xXQwGC93arotWlQhdIIz+jmU7LoZov8OZmdBZK3bxcHMksmSiJHUYcLit47jofYhDtLJXQjTkiWs1+ImfOA7Q1/F2XJ/tondwFhzHBQma3v3fIjcfZ+VsBX2HTE8/mJqC6kk079L7z7EctAHPlTuYZuP87v0Jniqopw2Mqo1mt9/A2lbDQR90Pdv5kVe9nF/77bezePgg585d4NChg20No+d5LCQP+3runajN6riGIH3O6vpnpg5PkD9T9HUd9ctU1IpEXx6OU+G4ktmjExQu7JJFMCT6CQvnvI7cHK6X5TQdfa1NECierTN5sMTaQ1NcyJ+9W0p5w1AX02QUNicxf2S3t+yI7boYA6QWd7MrnZiZ0FnKm+h9/nyLfm3JJcexdz9OoXgOTVdIJw50eSx/n3O27fZlN3ILSTaWOrcI+GErBsG23IvOP4znYSfufuBODh89tOt7qpUqb33jL/OJv/qbS74XxJoHZRRrbj2X9T73r9vpZk+y/fztbIJf2K3fr8NecGXzsb7tzrgMaLgMeGTba480X9/tfY8AU0KISSnlRR37QojXA68H0HWd+S3zoSTawIFbKTVWqnWSuko61d+fWaLtWKuvqYKZic6lW7bpUihBJq1hxAf8uKW2qyLPTrSyV9BwshIJuPVWh4ceTA+2nm1IScfygMJqHelJcvPdR2BVTWF2MeWrlPly3iSW0Jhoc21IKQc+l2qo5A7u/ve1PUm95pCeipPYZfjy9lK9QXnZD7+M33nn/0si2YhgHz68uON7L1y4wNTh4UawWqwqDhZeT+dTDcX39S2pVWIpjexh/5UuWgE1Labten14iksVi1Quhp4anuJGK7yw0/WlxBpO5sRsggv5oS2jHUO3OXN9lgFLubNd6Ornd7ErndBUwXzOQAz6hOrTllxymA7PynJNQQiYmuncp9WN/egVKfvrt1N1hdxC5z47P2zFIGy3DcN4HnZi8fDBtq83BJEkFy5c4F3/5d184Sufb7u2INY8KMNec8tO+Gn3u9mTPHn+5lc/z9/++J3fO4jW17g4WIJLu/AdLi1g2f6+VoHlJbvHZsTxgwBHT5yQ8//2LU9+b1CRi5bK0zX3W6jTMbQD/ZVC5DerO/Zgvfzmaf7mzvWOx5AlE+/rF9BPTqMOKHSxsVHpuazjtT/1i8ClF/Kb3nSGP3nPHwy0nu10owJVijUiKJmp7p27F//4MT72nvt8HRh59kSSdM0mW700C+lHD9aL33gNn3vfPbu+p57Wefy6WRa/vU4mb+74vpaaoF+9WG/7xbc/6VxtpV3P1Sd+/7M823mhL+ftxAM/NkNtVufa91/o+mde8vM389l33enrOh7/9Qype21mP1r39bhbyz06XR/qvM3UHyxTfH8O88vDGRy3U1ngVi57/uPc8oa7+Zs3/SAPPODv86IDw7U5l52Qi696y/a3dMV6sTqQyMVudqUTL795mg/9w+mBSwT7sSVtj7Ne3lXkIr/2PqZmDK498bMdjzUMFcF+Bw2/6Geu4B8/1F0p/ah6dtuee5ttGMbzcDtb+63ySwU8x0Npo9a8XRDp2bS3I6NYs98Mc83DKgvsZk8C3dmFQelFlv2BB9/e93lC0HHQFWeB7fUUR5qv7/a+I0AZKHR7Ir8UBOe1JCgC2aYEbJQUao2Ns9yhBGzYpFKXllsJAbEYHDjy0MjX43nB98VJACECHTIM4DXv/k4zXP1+0M7sIMEOsHp2fWQ9V9uRimj0PwWMVHiqB8onejaaLcvgDfde6WREW+IW3pDX0YaR2Zxe8MO5iojwi1H35mzvt5o5mEPV1aYy8FNEQhb9EYaeKxi+czUqxiWD9bfAu4QQz5JS3ieEuAm4Evi8EOLLwOuklA8BHwF+Vgjxl1JKC/h3wCdkUI1migA32F201BUQIM3RXVTb2SkN+4Ov+BB//Ee/O7J1SCnxXA89Fuxl39orih0uy1EpCcpm74LS5TXa7+DhrRHHzdVNPM9DVS6tey6XKkOTYO8GqQpEm4HLI0cTjXlYPtC3wWx+PHJI6v3dSu+2xC2kO/JY4HjanC7YSxLtEfuLdhLsQggqm1XMmsX0wamhzEjcD4TBuRq2JHvLuRqmsMVWxsLBklJuCiFeCXxICCFplGHcBiSBo0DrivhT4HLg60IIB/gu8OYAlgyA0ASyzw3bIGUcFy9CIBI6sk0pWpAIAYbRvZiAH7Tk2dU+xT7yVceXMkGvmUFTA85uus0RAkoXsvUtyfZenaztQx9z81mkJ3FsB22LamDNsrn7K9/s8TfwF08XKCFwsKTWmIU1KIMYTKE1/w6O/5mjXoyoojYzWO5oM1jjanMiIoKg3+Bbr+xU/ZDOpfm5G6Lbrl/C4lyNglE5VzAmDhaAlPKfgRvbfOvQlve4wK81/wWO0BVkPbgBri2UtIG7VvVdrKAb3vf+/8ob3/DvdsxiJVJFapXRNJg6dlMRrwcFwRa5mQwbayVf1uE2M0eBO1h6cx1dlo+2nKxeaBtxVATVjdqTEceV9U3+4PNf4qqV0aoYbMfVBXot2BpBKUDqAmH3f21slU7u22AaTQl/y9/nRa8RSkVv3LOePcKBXE3G0eZERIyafuxCt2ytfiisFHasflg/H6ztGGfC5FztldLAFmPjYI0jwlDwSnYgjs1WlIk47koFWbIQE8NTBNsJx9HQ9fYX983P/Tu+8Ol/M5J12KaNUATKLop5o8Bpytq2k2gfJS0HayeJ9p3oJVrZTcTxsefPU52OcdXRzlLKw8SNKcQLwZXSAsjm7amY/V0bfhlLMQQHq5/yD9VoXJuuPS7twhER+xO/Z2Jtr36YWsghpcSx3YuCpFG/Vf/sN+dqlNkriBysoSJiSkPRwPIgNvoIbAslGwcBbr6KEoCD9cH//m5+6jVvIZO5eCMvBBw7+W349PDXID2JbTrEEkagzi6ArSoIT6Ls4mCNog/LiamolttR5OKide1SKrg12rh+YYPH7ju9o0bx1oijE1PRzODVJdy4gloPdh1erPEHEz0KCPqStdqCiDcvCtOfe6Xf2nrNcHBtBelFDlbE+JGbyZDvU0mwFwpVJzAlQRhOFmunfqtqMeq38oMwOFcthj1MGEbvXEHkYA0VEW84VV7dRQ3QwRKqgpJL4K5V0Y5MInwc7tstO7V8a+poMgZWvfEwMeLDrxPvhK0p6K4X6PwSADumopu9l7C2c7K2RxtnF6eYXZzi7IMXmD08TWyL/PH2iKOdUImVgu0RlICTUNACLhH0Es2+uHr3Xu8wDKVozp/y6oM/KwZpXNbiDo4Z3LMz4mIcxx1Yoj3CX1rBuDDg+FiVEfVbDY+wOFfDFrWA3iTZ/SYKC25hveyvhK2Iqw0Fv2rwfVjafBpcD3c1GJne9fX2vryqOSRS/hiH7HSafO1S4QwpJfWqiaopqH30X/mJpOlgOcFnbKyEhl7r79psPZhbD+p20UaAWNLgg2/7813l1+2khh7wPeLGBFIVwa8j1RRAqXTeqBTK9tAMpUg2SwRrg4UBBjWgWtzFqQUfFImIiNid7TahV07dfgPvueO3+fNH3sv77vyP7CTEGfVb9U/LZuTmJkPhXA2bIPquthJlsLYx6Ays1pBhaDTzi7iKF/CHDCAyMUTawDlfRJ1NjXwW1K/86hHe/KZ1nvOcAsq2AVDX3/I5vvSPPzq0c9umjed6pCYSoSgPlEIQsztv5IdZJugJsOMqEyu1vo+xNZO1U7Rx+uAUX/nkN3Ys4XA1gRtXMSrB3iN2uuF465WAM1hPOli7r2PYEUgl1ZRHr/QXg/Orrt5I2ti1yExFRIwDWp8KvZeozc5NtlWbjfqt+icsWSvY231XW4kyWENg6yBIJa0hay4y4HlYQgi0Q5NgubhL/qjh9crll1cvca6EgMWjwxs4LKWkVq6jagr6gOWBuZnMwBER02gYoFjAGSwroYEQxAb8fXJzk1x10wlcr/3v0ynaaKUbxtPwuUG6V6xM43MxSgFnsDLNEsFS++fFqCKQIuXh1QT0IY/up/HUUzZWJcpgRUR0YlQy193QaxZrR7XZYi3Q4fN7hf3mXLUI0rmCKIM1dJS0hrtq4lUc1IlgNwrqZBw3l8A5V0SZSqCMuB/p4YeTzM87aNpTm1gpadTNDYl62cRzJelcMvDsFUBdV9EcryeJ9mE0MJvN3qlYpTdDeOq2Z/OqX/ghpg9kyS8VePQ7Z7nhhc9gM18mlUlc1OPWTbTRzDTXEXAPlpVpOnqlYDcp7kRTOn+bg+W3iEUnlAkPWeo9/ua38TRSFtW1waoK9grrxepFwbuIiBZh6sPqZ2Zi1G81HEZtNzoxKucqyL6rrUQZrCEjkhoo4BXDMehXP5oFAfYjeeSIZcIvu6x6kXMFjQxWdnrVtz6srdiWQ71qYsR1dCP4WIInwNQVElb3m/hhPYjqaR3hehg9RD1P3fZs/u/f/jFmF3MoimDmYI6bXvws7v/m4/zSy36fd7/lwyyf6S3aaE42xC9im8HeH+ZkM4O1GWwGy5kUKBUPpfmxbO+zGpWRVDIuXo8O1jCMZyxtYZaNzm+MiBiQnXp4I3qnl36s7/8/b9wxxhr1W/VPEHZjN9xmkcsonKuwEPyuc48jFIEyoeMVbaQnR977dMl6Yhr68Snsh9dxzhTQj+ZGdu53vvMEb3rTFE9/+lcvcbT8nofluR6VzSqKqpDMJHw77iDUjEZZXsLqfRPvdxarNmEQL9s9KRm+6hd+6CI1wBazB3PUKib3fOkBXnfd2wG6jlzWswZazUGzgi2ZNLMaetlFdYIt5XUmFbSCDDzyqEx6uOvd91MMJzIpiU+YmMXIwYoYX0Yl1Q7By7VvpZ10+9ZRHvkLG1x4bIVn3Xol5x5ZYubg1K5qsxHdEbTtaMcoM1cQfGlgiyiDNQKUSQNciVcOh2etTidRF9K4S2Wc5fJIz72w8FjbLNbRE9/17RzSk5QLVaSUpCaTvju1/UZIqjEN1fV6VhD0+6HkKYJ6Wiex2Vu0duZAtu3r01teb0XLtmZedqOWM4hvBB81rk/pxDaCzzKbkwK51rg/gow8KlkXr9CdgzUs46nFHVTDo14c/ey+iIhxYxQ9Lb3SsgXwlJDF7KHpRgXE4hTPuvVK7v7He/mVl76zo9psRGfClrWCp+yDqg/X3QibcwVRBmskKBkNNIGXNwPvw2qhHcki6w7O4xsIVaDOpEZy3o99/G0kk5u85iffgaY9taHVDYtEqkitMqCRkJJyoYLruKSyyYsmvvtBbibDxlrvIiGOIjANlYmK1ff8K7+ik7UJHRRBsgcH69rnXoknJWqb1a9fKFzyWjd1+FI0HKyZB4LvHahNaWQf63G6r4+0DKM3o5C6III1jqpEmfTwNna/d4YdlYxPmgDUN6O5SxER3RKmLBY8ZQt2GuVx5MpFPNfbVW02YnfCmLWC/Zu5ahGeu3API4RAzRm4qybS8hBG8IlDIQT6yWnsB9ae7MfS5tIjOfcN138GuDiLoyjuwHLt0vPQbBfbdklNJDBi4XBmAcpxDaQkafaX/fKzibmSjYEnSRTbO1gXCVksF7jw2CrPOvU01s5vMDGVvljIombxV3/46fZrbj7oW2Ui2x2t+qSO1BSS66Yfv1bfuIbAntBIrI02g7XdKHoxWM8o6Plg+8CUXOP8Xn5nB2sUhjORazi8tULkYPnFghaOcumI4RAmsYut5OYmmd5llEdEf4TVsYLRqgXCcJyrQXsyg9/p7xPUqUbkxg14M7kVoSjoT5tBmYzjPLaBfaaw43A/P2lXJqgokgOHH+37mJ7tUj5fwK3bkNDb9gr5SS9lgh5QieskLBdtQGERP6R4K1NxEkULtc3ogEuELA7keOYtJ7n7C9/lrbf9Hh/8jY+zem6jUcZxboP//pt/zVf+/lu7nm9rw/NWg1CdaWyck2vBZY4AqrMNxy+xOhoHayfhCnum8X19Pdg+MHWmcW/u1IM1KsOZnGrMaKvlI6fAD/KbwQyZj2gQpub7UTNzIIvrtA8cRUIW/RHGcsAWo3SuhqUY6IfgTZTBGhHCUFAmddy8iTobQ2jh8G2F2nCynMc3cM+XkBUb/cQUwufSuq187ONvA+Dmm/6M6677OooicR2VC2cu6+t4dsWktlZCAqmFScrV4fb09FomWIlrSEWQrg22gfcjOmnHFMy0zuyj7Y/TTshCCMGRkwdwbJev/P23OjpU7diazWoZhspcHMVyiReC7X2qzjV+3+QQHaxuIo3WTKP8Ul8N1sFSZhrG0Vu79BkwSsOZaDpY1Xx8X29OI8affkvL+zrXEAfUd8PWCoj1CwXu/Ow9PP9HbsJzPWzLuUjRNxKy6J1C2cbxZOicqhajdq6Gctymc5WdHqyqKxy7/H2COvMBteUAACAASURBVBcHL1xZLGgoHWrHc2jHcnjFOua9S7j54UY7k8lNrrnm7icHD6uay5XPuqsnuXbpeVTXSlRXighNJX0whzbkzFWveEApqROzXN+GCw+SxSpNN7IB6fX2WaNuhCwGYWu0bXM2RuxCre+eNL+ozusopkdsw9+HdStTtXUw8G5G0Z4V4En0NV+X0TPqnIP0wF17aiNUqDoUqg652YmRlXykpqvYVY3ltchMRezMmulfQC2Sah+M4yePXVQBMbuY44d/+vlUizV+9RXv4gO/9rEnKyCWz0RCFr2w1ZZo2vAC4IMQhHPld/bKL+cKogzWSFHiKsqEjrtmok6HJ4sFjSyFNp9GyRjYj+SxH1rHzVbQjmaHMpD4hus/gxAXR+pVze5Krl1KiV0xqecrSNfDmEwQz6UuGiScr1lMjaBMsJP0bjmh4ykKE9WaL+ccNItVmoljVGxitYudCaEIbvup57KTt9NOyGIQMody2NNxZs8Vn8zuOCOey9aicsAgtdy/+EiL7aqJvUYYrQWBtgFKwGKG6pzb6L9yGn+RUdfSt0jNVimuNgICYWteHkemJpMsbVb3VB9WbjrNxvpolXAHoRub4QdBZbFu+L5r25bnK6rCypl1Vs6sX1QBsVN/bsRTbC0FDCujthHDFrXww7mCyMEaOepCHO9BG2e5jr6YDHo5l6AkDYxnzOMulXDOFbHuXUKdTaMd9PdC7keuXUqJU7Oob1TxLAfV0IjPT6BtE7PITqcpDNnodlPy4QooJXTiluNb9gr6N552TKGWjTHz+MUO2tyhKX7una/i6TdcxiP3neHQ5fMXzyPZRciiX0rNsrzMskl6i+HY6qSMwuhKAZUFg7m7e79eWqUafjUaW/MCYznY8kAAdcHBXW5cW0E5VwDx6QrFlWTkXEXsCUZZJthi1IqCqUx7NeKphfYVEN2oze5HwixesZ295Fzla5ZvzhVEDtbIUWIq6rSBu27hTRkoifB9BEIRaAcnUGdSOOc2cVfLuKtl9LSBO6eiJPSLskX90OrD2lgvc+OzvstLX/4RAHTdvkSuXXoSu1zHLNbwbBehKSRmMujp2MDrGCabKQMpYLIynJKTXo1ncS7JD954Bb/wG7cws9Coj7/vaw9y6oeuxXU83ve2v+BLn/rmJTX0f/WHn+6r72rXtRyIoVgeqfxThkTT1IuMyfYhleC/01Wd0/F0hfT53ct2d5rptX3N/SJVsOYgeX/QDpZEXbApfin+ZElgEOSrNpMLVdYfPRDI+SPao2kqy06deS1Sdgw7o1YUVHUV27YxjEszWLtVQHRSm91PjJNjBXvPufKb8O3uA2K9XGWB0WSU1Pk47qaNc66GfiIdWidBGCr68Sm0gxM4SyXkcplaaRUlpqFlk2gTcURMG3j9h44+hJSNDBbC4/pbPscdn/0RnLqFXTGxKxZIiWKooXOsdir5MDWFalwnXbXQ26j1DUrLeHbrZEngppdfx//zEy8m0cz4zS7meOGP3szpBy7w+2/8H+SXGgauXyGLbpFAcSHGxIqJ2OVPs93AbBXI2E6/Rrl0qKHumTlrdRyMPEyDZ80BmiB2PlgHS0x4/z977x3e1nnffX/uM7AJAgQpkaL2sIYlWZ6yEw8lnnHizGbUTeI8WX2TpmmbtNeT7jZ987TJ05GO5G3jjKZp0sROnG073lPx3kt7S6S4SWycc+73DxAUCHEAxDkHhxQ+16VLIgkc3AJxzvd8799CiUgKx7QGmiuDzlU+fCGD5El3Rkc0aVKOkynmbqUJlnAjirVoaRu/+w/vx+fzYRjmpBqhajMgzlSjVW9qeaNYiObKzugVNA1WQxCqgtYVxDiSxuzPoXV4ezdQ+DX0FXGSER11NEcgaZDvHSXfO4rQVdSIHzXsQw36ajZckcgo6zc/RekpmmayfvMTPHDLeaRHIqAI9LAfX0sAtcZjO12HNV3KhwUMRfyopkU07VxBTS07lOmYj0+8+4oJc1VOMBKYMFdukG3VyIc1ul6uLS1vOuGZyXjNxsASH+qoQeZosdlGo8Qtt7T4ufYfa5zBGk4bBFcXI3m+sShul4KVC2jLoj4Axnqb6YFN3MXJFHO30wTdiGJddM0WPv75dyMtyb23P8ir9x+rKwPiTDBa89VUlWiaq+poGqwGobTqKCMaZm8WpUVHCXizK0w58USEIUUQWhzEKpiYoxmMZA5jJIMxNN51UIDi0xA+DaErCFVFqAJZMMmMFcj3J8GSSNNCGiY73vwrijGNUwghufStj/PwXe9Em2M6oht1WCUqdyRHwz4MTaF9JONKm85qdiiHloTpbJv64mRXh8BqGe4ubii0Hrdn/tVcxUkC+9aEiJ0o0NZggcstFYicRO9rzOuXBDO2qfg5Mo/7XX39SgGNdhZvCkd7GxNFa+Is8XiYvqEUHX57Gm705/K0+73VQdYr2N3wopRC3t4VI5vJEQwH2PP8If71D7/LuW9fzs7bn7clA6LSaMH8Nlvz3VRBY2py56u5gqbBahhCCLQlIfJ7xzAOp9DXtiAUb6S9VYOiqyiJCHoigpQSmTMwMwWsbAErZyALBlbaQprF5g5WzmAsZ5A/MX6xFCA0le6Vx9D0yc0uNN1k2boj6I94XzArdyQzukoyqBPJFAgU7GtsMe3rV5EqmA+oXP6mczmVhzkZuzsEzsbw0gDh/jx61vn3ZyZyrQr5qEr0icYPYM0uE/iPyhlTJp2gUjC17l6spII14t6Gz1QCGu0axTQUkn3NFMEmMzPfOgnG21sY7B9zNU0Q7EkVLA2iLzVBCoYDGAWTu/9nJ/3Hh4DlNqx0MlPNUIT5YbYWgqkq0TRXtdM0WA1E6Ar60hCFgymM4xm07qBnaotqQQiBCOhTtnOXUoIlUft9xGM+whu7QBETZvJHP/szhgaStPt9vOldX6dz6X58en7OQ4cbxWDaIBrRGWrxoxumY40tpmImkxVrb+G3vvReXr99PccP9dG+OIav7PfkRIfAmchFVNJtPpY+615K4nQMryjeJLQebmxfdKlCrlsQe9g9w2laUwumujSLcdTPtP36bWY6AW1dMsJYbwvS8s4oiyZnFm6M+nCLWmt2p2OqQfSarvLu372OR37+TL3LnJHKBkiV5qXRhmuqNPX5bKjKaZqrudE0WA1GadFRF/kxT+awgipqwt7UnLZYmN7hVMO6PgkhQBUgBIoqZpz9dezwGlaseRWADVue5OlfXz2pm2CtxBIRBgeSjotkvL2FwYExBqJ+JJAYzbk+PDfeEeWcS9Zy0x+9mY4lcdLJFN3xVbzuzeeiBX189Vt38+g/3s0l121zvEPgTAwuH59rdMSe9MB6GF7pwzdqEhw0Z3+wg2SXCtAEgYPuhK+mFUtFonXnyT7oTsroTAIaWzLM4OE2V9bRpEklbqSYu93sot56rEDIT/sSZwfRV0u1DZCcMF0z1fsuFENVolFjOhaCuYKmwfIE6qIAMmNiHM8g/ArKPAh9O0Fbe89p3QQfueddjV7WrEggnwhhqgqJ0RxaAwbmvu7aLXz0T946sbsYiUa45sbXc+TYAJ/+xx+g/mIXPks63iFwJiQwuCJIpC+HL91YU2MpMLJcJ7HbfTNcSXZVcQVOG6ySWAKo+ukbHWpXHuGTGIedrb+aTTxVn0GkI8n+X8+vKHaTJtXSiJlYMPd6rFWbuvndv/+taX/udpp5JTM1QJqNylmG9bzeQqJpruqnabA8gBACbVmYwv4xCodS6KvPvM5ZofAoazc8N6mboB1RLHA21UMCI7rA1HX0oQxBszF1Re/55FWnpW4AaAGdoRePsyTbWEMDkG7TybbqLH+ysWIMMLZExwwoxA+4l8o5HZnVAv2kRHNow7zcWM0kltqKYlTROORctLsa8Yx1DyMUGD7i7q54k/mNE40unE4TdDuKVaKWVMHrPnApN372zYwMJLnt3+/mLR/a4fggeruoxgjZNctwobAQjVU5bpkrwJUmZ02qQKgCfUUEVEHhYBJRaPTA0amJx8P05TL2HjMRYdP2Ozmtwn88ilUPTp9MSQ1SuiBckGhj+YmLhNu0L55aIBa3tdB+yP2d0qnoXx1CGBZth+39/MyFoTU+hClpPdTg+isB2dWC4D5nzvdysZxNMLVVWay0gnnSmQh6tQIaXzYEwNCRuCPraOId7NKSuAPXeae1w+kbyWlfd/w6MDyLVrXEw/zhV/4XH/zc23ju4V388Tv/iR/9293c/Bc/pO/YEJYl6Ts2xM1/8cOGZUU0sZeFbK4GM3lXzRU0I1gTJCIhelwcNjwVwqegr4xQ2J8kcLKAtcRCmSKVZyGydOlhNK2im6Bm0tl9sDELqoIxDUZ9CkFD0lqQiAakfQgheMPbz0ciEVMku508OYLPA9ErUxMMrggSP5JFbfDmgQQG1/poPVxAyzd2LblugRUUBPfZ+zuai1DqqzIYBwNF12cj5ZsO1QhofMUQ+bTe7CBYQSIaonc0zWKtcRoF9tX1xuNhhoZSNq1q/tKIKNZUTS9K7dcTXTFGB5Nouoo/6OM/v/Bj7vrezonnNjLNvIkzNMpYwcI1VzBPDJYQ4grgnyiuNw98Skr52BSPOx+4G9hd9u1bpZT/4MpCbUAJqOirwuT3J0kfTxJaEkbRvT8jq16+fvOnJ9I73vuRL5JJh0EK7v75B2w5vt2pHiVzFTAk8bycsDZutuBdvLSNj/7JW9l0wSqO7OtlcXfbpA6BmVyB//ziL2xpz1svgyuCWLpCx97G31Cl21WycY0lTzY+spc5q/jJCe6xx+hVmw5YiQiYqN158r+0V4TmIp5tKwYZOhzHrU6G03Em6U6TqXG6UVKjarFgssm6/jcunNR+PdbegmVJbvnnOyaZqyYLi7nqhV0sZHMF8yBFUAgRA24DfkdKuRX4Q+CnQoiptvHagR9JKS8u+zPvRE4JamQXaVhSkj6ewsw1PgLhBv25Yj3MgT2b6Vp6gK5lB+pOEQR7Uz1KNVelyFVbmbkqx8lUQaEIrr/xdfzt9z7Byg1d3PyFn/K53/wqN3/hp/SdGMayJMcHRvmXf/4FLz6yByheSGdLCXEKCZxcFyY4VCA80NiUPICB9X6wJG17c41eCumzBL7j9ddflf9+q0kHrERblUUoUNhnz+BXmJt4CtWibfkgAwcTtq1jLixk3ekxGp+i6wTxRGRCQ+YT8faWhqWWl64T7/69606r4VUUwZXvuaQRy2riAvXohR04ba4GM/mGmiuYHxGsa4FdUspfA0gpHxBCnACuBH5e8dh24BohxOPjX98D/J2UcsYtokzeewYm1hFhSKQInzRIH08SXBxCC829NqLXyNraqr0vl6HDb9/NWPmwyJ6jqxAXA0jbGl1A/VEsCQz7BGlNECpIYoWpzZWdu5Kvu3YL7/nkVbQvbqW/d4R7fvgEF75hE2s3L+XpB1/jW1/6BUN9xdfa+asXefjuF9l/dpTWqI+OR/sRnBJRO+agzIWxxT6yMZ0Vjw81vGOfBPo3+Gk9UsCXbmx6oOWHzKr65l/ZtQOpr8sgTTD2139O15oSWE586RCqbjFwoLEGCxd0pxG0tYYYHGn8YO35hhszsRrV8CLeEWVR99T1jm63X2/iPF6JWoGz5grcbWgxFUJKbzRTEEL4gIem+NEdwFop5QfKHvsj4CEp5T9XHCMIZKWUUgjRBvwbEJRSvmOK1/s48HGAUPvS8//si18iGlTR6wzqGaaFLuwJDBqmRT5jcf+DPQyP5Lnw/ARnrY0ihCAWVhlOVW8MDcO0bV0Apmmh1XC8L33pr1BVwWc/+5fTPsYwTDRFkOj4OtHoPQgBlqUxNvoGBvo/Uv+aDQtNqf0WP9rm5+SJNPc/0U/vQI5tG1o5Z310xqHQhlG8aZ5h7NesrFq7gkuv2I6mnxJdKSWFQoGdDz7BgX2HT3vOA0dHeXEgw4fO76TFOP3cNgvFdakuxq5/MDbMScPgE7EE2gzvWXRRiNGTzt78HVPyfD3Qzw25Vs4zw3Ufr5417w+P8qvOo7z12Aq6s7WtpbxZ5VQt12cjmggwOnBqFtmejY9iKSbrX7685mOVM/6xR5vjBz+49GmiG++g/5HfwcxMvun78G//5tNSygvqWmAFbupOuea0t3ec/4V/+WrN67VDX+o5Rkl37NSTWrVkJkoaUuJL//evUTWFz/7Bn9d13LlqRy0YhjWhF5Xnp1NousbFrz+fdRvWTPnz5GiSW7/zk6qP58Y13G7OlDXXqxn1Ek0EGOwrfqbnqg/VYIyPyVFteo2PfOx9c9Ydz0SwpJR54OLK7wsh/gSodBIGU6Q3SikzZf8eFEJ8FjgihAiW/2z8518DvgYQWbxc/uiFk6RjFp2i/puuAZsKkQdH0nRqQWQsgJK3eOKpAZ7dNYo/EeQdl7Tzk8cHqj+WzcOGh4ZSNUWwBgbzJNp83HFn7/THHEgSiYzyqU89MNGuXVEMwuEH+Ml3X1d3FKs0OLLWnchzr1/CHfedwBQQz0v6nhninmeGZn1eKYo1113JL//0+knmCopNLcaGMtz8p6enTqYiKofXtxDvzdFiSO755q6p11U2bNLpaFY6pnHgukUseWGU+185NuNjr/7kOdz91ecdXc/+N4YRW4P0fm0fd+fq31yqZ82971FRWgUvf3kvr1QZxLKrGPmqD68/9fnQLRJfHiRzb5x7bpv6M1MNdqR8XPLRXegjAe78xjAw+wybenFTd8o1Z8XqNfL7uwdrXq8d2lLSlbnw9u0JfvL4AIPDxVpKOzSlVi2Z9XgDyYl63sH+PG3tPu66beZrz2zMVTtqoVwvJp2fDrFq4xI+9Te/waKlcZ68/xW2Xrz2tPbr//k3P2Pn7dVf39y4htvNQl9zoyNWJXZ8aD23ffVlx+utoPGRqxKer8ECjgLLK763fPz7s6ECWWDGYouIX8XKWaiNr7+fEqEIgotD+GJ+CmMF0seTjI41vpbFbuKJCJdedp8j7dqh9pNOUmzDfvtDPQB05CShGrJJ672QTNd6faqLpKnAiZUh9KzJouMz11iU51w7XZfVs6kFpWDRsafxJ5elQP+GAG17c2g2mKt6kALSmwSh1yRiFnNVqq8aThuO5MvrazMIDQq75nbjPpg2GEwbxNtb6v7Md6zto39fO41ucIELujOfaYvVvxE5n3Djhq107jhdjyWE4C0feD1/9Y2Povs1vvCJ/+TL//sHfP3//Gyihrf36CD//LkfNLsFzmPqrcu1E7eaWYB3zBV4KII1Az8F/lEIsUVK+aIQ4iJgA3C3ECIB/Az4kJRyjxDifcCdUsphIYQG/C3wHSnljLcwfl1BjajIpInhM9F83uvaJ4TA3xZA9atk+jL88s6jqLEAeos+Y6qak9hdhwXutGuvJp/epFhvldUE3R0BzANp5vKpmGtXwXMvPQtLStQpbjQHek/f2e9dHqLgU1ixK4lSZTSkvDYL7I9mZaIaQ8sCdL6aRPPAXLfBtT6MkMKilxt/35tdKTBbBOGXpnfsbu086pvSSAMKe2o/l+0UzkA0Q3TxGHsfWFv3sWzAcd1pcgontMQJnK7FsrurYGUN7y++8wgX7tjI5ovW8MR9r/D1//MzUqPFDbmdv3qRnb96ceK5TulCE2fxSsQKJuuDk2mBTpmrepvmeP7MkVKOCCHeDXxTCCEppmlcPy5my4AVQGmrPwjcK4SwKAYgHgT+oprX8Xf4MdJp0iM5IokgisP51nNFC+uE/SqRbIHekxmMdIFAexClig+vnY0unJph8vWbPw1Au9/H1W/9L7qW7ue/vvoX2BVsjSUiE+ke05FRi+bKAqJ5i6su7uCeA4fqet1qC5hjiQgf/MPr2X7l2Qz0jNASD+Hzn2puksvkueWr90x6zkibzkjCR/vxLKEa6vJKlLfrBfsE9fjmFhRDsvi1xkevAE5uCeIbNYkdbHynseQWAYYk/Opk41kZUXRDIH0bUxT2BiFf/TnmxI5kx7o+AE7uXmTbMeeKW7rTxH4tiSci9JelCdpFNdphF4YN1vx1127ho3/y1om0v46uGB/6ozdTKJjc/IWf8sBPn5nx+U7pQhNn8JKxAneiVuBdcwXzwGABSCnvBy6c4vtHgKVlX38L+NZcXkOognwM/IOSzEiOUMzfsMhQOT1G5rR8eUVTuPqNXdx69wlyg1lSR8bwtwXQo75p19wWC0/kzXuZ8m6CB/ZsZs2G51m85DC9x1fa+jpT7UQaotiCPasJdEvSnpPokro/B6VdyZlMVmlg8Ps+dRW6T+MHX7mHX/73o2y/6mze88mrSCxuZaB3hFu+es+kXcZcQOHE8hDBMYP2E3Mviq7sNAj1CWo6rjO8PEjny2No+cZv5GdbFYZX+Vj2aOq0DFS3kQJS5yiEdkmU8WBao8RRaTXQluVJ3dZe1eOd7AC1eEMvRk5l8FDb6a+bcd8Uu6E7c6HXqK8Oq601RE8ddVhnOm5EsaD+roLv+eRVp7VeF0KQHEnPaq4m1tLgDrRNZserxgrmv7mK13nc5tlShvQJAi062bE8uVSBQMTZtqyzMVNLXSEEvlY/Wkgj258lN5ClMFYg0B5ADSyMX+vh/RsxTYWVa1+y1WBV7kSWaq3G9KKRiuYtIoa9VSAzmazuVR185I9vYP22Fbz05H6++Xc/p/dIsQC+Mm2jHFOBo6vDKJak+0DKlvXaYbQkcPScKGrOovM1d3Z8Z6NnWxAsyaIXne/MNRvZFQIjJgj8uMBwuhhxbJQw6puLmy75l2avqXF6R3Lxhl5O7lmEZU5Oxm2EufIqiWiIgVFvdDxri4Xptbl5kp04MRPLrShWKZ2qHpM1XQ1vLFH7+duMZnkPrxkrcC9qBd43V9A0WKfhD2mYBZNssoCqK+h+b79Fiq4S7AxhpArkBrKkj6fQwjr+Nj+K7nwtmRO58xMpHgQ5cWQNq856nsVLDnH3zz9gyzysEgOZPMGIj1FdYCqCgCFpLUg0hyIcJZO1dcfZfPgPrqF9cSvpVI5AUCedyvHvf30bD/+yus5AEji+Kkw+oLB8dwrd5hqneozWaKefsU4/S58ZQfVA7ZWpQ++WAIk9OfzJxkbThtMGya065CW+582GC6NvSxJzUMM8Nv1mkhs7kv6WLPGlwxx8bOWp1/Vg0XITZ4jHw/TZ2E2wPBPCCdyYi1VPPZYQglQySyR6+vs5VQ1vVetpRrM8wXDamGi53mj9KGe+pwSCveYK5kcXQVcRQhCK+lE0hdRwDtOOZGiHEUKgR3yEl7Xgi/kx0gVSR5Jk+9JYBefWH48730nqwJ7NxNoG6Vq235ZOggASSSARItfqY8ivoACJrEUi75y5KvHm917E7/312+noiiEUQbglAAhu/f/urdpcAfQtCZCM6Sw+kiGcdK7rVGXHwdm6DkoBR8+N4h8z6NjrjZTUvk0BzIBC1zMzd1d0ivIugFKF/AUakV0KiWiDxVGz8G1Mk38hzHTx2nLRdFI4OzcWO3X2vNJZfN2muWriUdz8TMbbW2ruKhjvaOFz//oBItEgpjlZ/6eq4a15TeOaUI0eNLGHyk6yqq54xlzZ2UV21teaR+YKmhGsKRGKIBL3MzaQITWUJdIWRFFrS8CqN09+LghFTNRi5YdzFEbzFMYKaBEdX8zv+ZSOSvpzeXqPFzslCwEbtjzJ07++es5RLIkkiySJhTF+TH0sT4equdYU+jd/+w0EKnY+VU3hhpsu497bnqrqGMMJHwNdAWJ9OeJ97qRPlV/MZ5qjdXJdmGyrzpqHB6vuZugkEjh+fpBwT4GWY+7cDEx101F6/5LrLaywScvzjd/b0jemEQFJ/vnTBcXNVA+ArrNPkEv5GDzY1jRXTWwhnohQsJy7CLkRxYLaOtFe9MZNfOSPb0Dzadz8hZ+SzxZmrOGta10Od6Ft4s00wHIWQkogOGOuoGmwJpGIhOhJpukkhKIqhGMBkoPZcZMVQFTZWbDRefKKphBoD+KL+YtGayyPkSygBjWEaiFVaWsDD6fSBIcGkmzY+iRSFs1QaR7WI/e8q6ZjmUgySFJYWBQ/9K0oBFWVkXyeIZwXSiHgijdtpa1j6gtRYpp8+UqSUY0TK4KERwp0Hs40ZFrQVOmDAOE2H8c3txA9kaX1WONrnaDYmj3bpnHWz0cdfa+q7f43eq6FmoTw3sY30PFvS2JlFAq7T527bhYon0LStfkER15axEDaaBorF7Cr0YWdm3Z2pwk6iZsdBUvMVI8VCPn44Gev54obzmXfy0f5yl/8aFIdr5OU64HpgU21+Y7XTRW4vwE3H80VNA3WjGg+lXDMT2o4R2o4SzgecL2zYD1COGG04v5iNGs0j2ZKRtJp/EEdX0BDVevbSXeqXTtAJDLK+s1PUHrLNc2sOoolkeSRpMejVgA+BGEEfgRi/HbbDaFctqqDD3/mWtZvWUo+b+DznX7aVZMXnw6rHF0TJpA26d5vT1OLeqiMau3f0oKlClofHWTEAzn6Eji2PYR/2CSx277ZV+UCaFpMpG3MhhGWpNZLYo8pCKuxvz2JhW9bspgeaCgNMlZFWrtHCLelOfT8xqa5qpJGZEjMRzRdxams71giwuBA0rUo1nRNktZuWcon//pddHTF+Mk3H+S2mx84LTXQDUqpa+XXx0ZrwHxhPpgqcH8DrrzB0XwzV9A0WLOiBzRCrZL0SJ7UcI6wR9q314KiKvjjAXwxP8Mnkyg5iZXKk0nl0XQFn1/H51dR6jRbdnPlVQ8jKntqzxDFkkgKQBaLDBKLYmVJCEEIBX0GS+JEuoc/qPOumy7lTe++kNRYln//u19iFAw+9kfX4w+cmm2VzeT55j/dNeOxMiGVI+si6HmLZXtTqB7bKVQ2tZFcE6ZrV5bF/hBDjJ4W1XFbbEdW6CS7dFbfNTbn1uzT1RiURLCWXPixbRao0Pp048+zZHQAJWKRfybi+m5kOYOZPCs3HAZg6JAnBgx7nkZniId7hwAAIABJREFUSDjNfBk6XMLNVMFzLlrNh37/ahZ1xhjoHWHfq8e44PINDJ4c5W/+n2+x+/nDjq9j1nXaPPJjIdKIeYf1spCiVuC8uYKmwaoKX1BHWpAZy5MeyRFqnX8mC4rNMOKLWxgcThEXPvJZg1y2QDqZI50ETVfQfRq6T0XVlKr/j06ldnR2HkDTJg/O1TSTzu6DE19b45Gq3HikquQ7/AiCCAJl0arpKEWx7BTKCy49iw/+7pW0L27lvl88x/e/9gDJ0VNpc+/92A4Si6IMnBzlBzc/wAO3FxtcTJUCkg2qHF4XRjUky3cn0YzGd+Yrx1Th0NYQgTGTrr3F/2OlYFSmE5ZwSnglcOSSML5Rk0Uvz56uOFOxth3iJ4Vk5HyLwCGBr7/x146hxHHMjKD3SX9DjBWcEtC1208yeDROetj5pjlNnMGuIfZOZUT05/K2Dx4Gd1MFX3flxkmbc+1dMdq7Yrz27CH+/jPfJZOyL0pvB9XW7Z4pzEdTBY1JG5+vKYGVnJmf9DngD+tIIDuWJy29M4h4rqiqQjDsIxDSMU2LQs4knzPIpPJkUuOdCX0qmq6g6bUZLru45dbPATA0kOSG6+5g87mP8s1/+2tSeT95TPLjESsoRqr844bKj0CpMYHOLqFs72zlQ5++mvNet5ZDe0/yr5//DntePjbpMTvvfZWd97466XvTpYBkgipHzgqjWLB8d9L2dux2cHRTkHxQsOHR1LSNLaYTk3LhLaXbVTIXQR5ZoTO2VGfVPWOMjlXX3MJJwUuvlhTaoe2BxkevhvIFhttOkHosTKy1uto/uykJ6KJlOotW9/LS3Vsaso4zGTvrsLw8xN5p3XIrVfC9H9sxKfOhRKKz1XPmqpLpzBYsXMM1U7Oj+UCj0sYXirmCpsGqiUC4eHHLjs2eLpiIhugdtS9PvsfI1C2EUyGEQNNUNE0lGPZhmRaFvEkhb2IUiqarhKYpqLqCqhYNl6oKhCIm3gM7UzuklJhSYloWpgrP7NrAORc+RHTlqxzdvRUAHSZqqnxVRKpmo1ahfN2VGyciUYN9o+x+6Rjnv34dUkr++yv3cudtT2GZ1RuiSpOVDqscWRtBNYuRK1/eY3mBwEiHRt9KP4v3ZYkMmbM/oYJywZku3a5SkGdDAgde14o+bOB/POkJURu5yEJNQeTlxm3KlAQzfF4aSysgX17q/hoqxLP77L0oquToi8tdX0sT72J3muDEbEUHolglnE4VbF809XWs2gZJXqHSbDU6ldwOZksln280Im18IaQEVjL/PskNJhDWEQIyo3mSg1ki8eq7C86VttYQgyP25dzP1PlJURX8QQV/UEdKiWVJjIKJUbAwDZN81kBKo+I5Ak1VKBRMkuQRQqCIot0pei+BlJJc3iJvmONFxxIpwZISSfFva/z1zPF/T6ApHD6+gnQ6xJZ1r9Czexv6HKJU1VKNUJ6WrrG4lfbFrex95Thf/ssfM9g3twGRpQvaCTPL8LoIvoLl2chVwSc4uK2YGtj9mnNdA2sVqYFVKtluH2vvz5Foa7zAFWLF5hbxhxUU032DVbkTGX3jAFrBR363u6mBUwno8nMOkx4O0n+ow9W1zHfs3sCzA6+nCTqJE2nm5Zx7yRosKVGn0Ly+nuEZOwx6mUankteK06nkjaZR9bgL0VxB02CdRnmr9unwh3SEEKRHcowNZojEA55rEGEHQghUVaCqCv5x3SyZLtOwsEwL05RYllWM1EhIF6a+ABmWZGgkz3B26lQGAShCoCgCn6KgCIGqKGhK8e+RwRR7dm9kw4ZXeESRWJYz73e1QjldukZrW3jO5qrEcKvCcFcULWUSfWkEXVfrOp4TSODQOSEMXbDu8elTA93GUuDQdh/BIYtFu7wxBHP4YgskxJ5w9xoxVYqHCBn4zh4l1r+KEy51MpxOPFXdYMmmo+x/Ym1xQnWThmBHdoQTaYLzLYrlRD2WP6jz/k+8kSvfei59PSO0xkP4/Kd0J5ctcOs3HgJmbuM+X5gug2G2gcZ2GbBqBicvBCNVSaPTAWHhmStoGqw54wtqCEWQGs4yNpAlHPejefBG2G7KTddUDA4mafcHkeORqdLfmiKItujEgv7xPTiBEKCM/z1bnnw8EWHX7o2cs+1p3vnBf+KXt358zgOHZ2M2k6WqCu2Lp0nXmCaNoxok0N+uMtChEUpadB8zGS1IBgveE86TK30Md+osfTlDaLT21ECn6N2okYkrbLgjO+fOgXZi+iWj51m0vCTQxlwyNDOIpf/cYYQmaRtYBgw7v5YZdiaXbDqK7jc4/OwKx9fhNTzw0QTsz46wCyejWE41vAB767HWbVrCJ/70BhZ1xfjZ9x7jh996mIsuP+u0Bkk77311xjbu851qDE2taeTllNf+LkTzNBONHM/hxkD5RporaBqsutD9Ki1tAZJDOZKDWUKtfnyByW+pXfNK7CpInjiejQMiyymlB1JhmIQQ+HwKPnXuJnRo+FxM87skOk7MaeBwLUy3G3n2eSu46dNXT2sIB07O7UJvCTixRGMsqtI6bNJ5wkBw6qI32F+MinlBPFOtKkfPDtLaW2Dxfu8UVxs+OHyhj+gxk7aD3jB9oxdYWAGI7XR+86Wa9I7A9kGMYwFC6RhOGqxqxHPluQfJJv307OlybB1N3MWuNMESTkSxhlzo+ldPqqCqKZx3wRZu+shGBvrG+H9//3u89sIRYOoGSSXKTRZ4Qyvcoh5jVMuojYWCF4wVLMyoVTkLL6/NZVRdpSURQNUU0sM5MmN55Hj9UCLqnfx4t4jHw/TlMo4c2+fLUPJuG7Y8STA8912raoglIhMXg7aOFj79l2/jT//xN9F1lZ9//zFy2cKkx+eyBX5w8wM1v05eh0MrdcZaFDp6jQlzVc6E0aoihcFJDF2w74Iwelay6tl0w4cdl3PkAh9GAFbtzHtiXZYqGbrEIrhfEDjhUL1g2pj4E29vmVEste40+rIMmcfbHFkLFMWzGnOl6gZLtx7m8HMrkA6l+54J9BreiT61xextsx+PO9e2v3QD5gSlz335jWS1dK9I8PmvfJBzzjubh+96ic99+BsT5qoayq8BjdaKJt6jpBXArHrhyOuXacNCN1fQjGDZgqIqRNoCZEbz5FIFzIJFKOZHcbj5hR3YvePoJBecfydSCkAiFNPxKBaArqtsPmcjv/mBjQghuOUbD/HLHzxOIW9yaE/vlOkatZAMKxzvLp6GS48YRFLTFzM1OpolBew/P0TBL9jwaBLNQ4030nHBic0ai181iPR7oyBsbJvEjEL8x/YbiLnsQAYuGUTmBbmn4rDM9iXVlPKxdPMRdL/BwadX27+QeYAQ0MPMtb6zYdfAYbuzI+ZLFMvpVMFaml4IAde+8wLe99s7yKbz3HvXw3zji4/O+fXP5GhWk9NpZMQKitpgWMX7hYWcElhJ86ybhlrFTwhBMOpD1RUyo3nG+jOEY37712Vju3Yn55fYLYqh0AgbNz6OqhZvnlXVYsOWJ3n611c7Vou17YKV3PTbb6CrO84j97/KLf9+P/29p6JmM6VrzIYE+jpUBts1/FmL7qMFfIVZnwY0TjyPbgww2qGz8rk04RFvpOBB8b3cf5kfxYAVjzu3M10LUpEMXmbiPyoI7bNno6VyR7oWoRR+E//5Q+SejyEz9n5e5pLyseqCfaRHgvTu6bR1LU0ai92a4lQtlhupgjOZrPIRH0MDY6THcixb3cEzO/dy89/fwUXX1d9Vs3R9WKi1WU1mp9HGCk7pg6opZ5S5gqbBmpJEJMRAsvadQSEE/pCOqhfTBZODWYQOUpW2DDv0akFyJU6I4gXn3wlURCaE5UgUa1FnKx/82BVccMlajh0Z5M47HuDLf1Xs1GRH8XJeh+NLdLIhhdYhk8W9BkqNwaBK8QRnjVb/Mh+9awIsOpCj/Yg3TEyJvnUqI90qqx/MoTvXLb4mxrZKjDbouEOpez6bHSLpP38IJWCReTRR11rKmWsuvS+Uo/vso+x6aCNSNtMD68WuOl+nZi3agd0bdiWcjGLB1CarcsRHoiNKW7vkvp8/x9f/4c7xZ9o3tqAZzTqz8IKpAndqrcA5Y2VHqUvzTHMATVdpSQRJj+YoZE36zTRtoSCq4r2bCaeaXYC9otjZeQBNmxw10TSTzu6DdR/79TvW876bLqO9o4V0Ooc/oGMUTL77zYe4/SfPcOVbu2yZcyKBkZjCyUXF027J0QLRsfrS2dzYpRxNaBzaGqSlr8Cyl52pr5srBT8cfL2fSK9J5yveqDmQimRwh4n/OIR3zc1c1ROtmmJFBC/rp3AkiHHInrrQejpArTjvAKpusf/JNVU/x8mamfmMnWmCdm3e2a0pTkex3DZZU434EEKw5cJVjq2hGc1a+HjFWIE7HQLBeXNVbx1o8yxzCKEIwrEA+YxBaiTHUDJD2O8j4NPqjmb1GN66yZ0Ku0Xxlls/N/HvaLSPD7z/89z1qzfzxBOX0l5HJubrd6zn45++ZkLwwpEApmnxvW89zF2/eH7SY+sxWQUNero0UhGVUMqi63gB3UY/UFmfZdhUhpSJKOy7IIQ/ZbHmqbQnWp+Xc+D1PgwfnP1AzhONLQBGt0kKbdD1XbXm6JUTIqmvS6J15hj93jKoN5pmg3Cu2b6XoeMxBo9UF01bqOaqmpmLTU7hRBTLra6C5drhxIiPaml0HW8T+/GisYKmuYJmF0HH8QU1rADomkoql2ckncUw537329bqjBj3GvbnVjnVUXB0tIOBgS7O3rwLqO8G7P0fueK03URVVbjhXRdO+fhaO0RJYCiucGC1j3RIYVGPwbLD9pqrciq7SNXTSSofEOy5OIJiwbrHU2iGt9zV0HKVvvU63c8VCA96Y22WVoxeBY6IqqNXU3UCtFMog1f0Y41p5J6NzfkY1XYHnI3o4mEWrT7JvsfWUY3Z82Je/ULGzs07OzXFyY6C4I6J71rWxh/82Q22j/iYC6VrTL0a0aQxGBaOakatVOqD0ymB/bk88UTE0+YKmgZrWhKRED3YVO+kCLK6SSTgw7QshlMZUtlT7dwbjd3tdStxwmQdOLCVrq59dC4pilWtAtkSDfKR37mSWNvU//dEx/QXq2pNVtYvOLRSp7dTJ5CRrNqfp23IdCXSomlKXUbL0AW7L45gaIJ1j6fwZ7zRma+E4YO9V/gIDlose6rK7iAuMHKRhRGDxD0z1145bapKqB1Z/GePFmuvjNov93YL59qL92CZYtb0QCdFdKGRiIZsaddu5+adU5rihJaUPl9OmqzN25bzf7/6Qa6+/hx2PvAa2QrtmOuIj3qxazOuifOUawY0ps36VLhlrMDZDTe7zRU0UwRdoZQnH9B1fJpGKpcnky+QKxiEAz58mlpz2mBB2n/D60TLdqfy5/cf2MoFF/yKlStfIpfbXnWah6opXPuWbbzrxosJBH1kMwWCodPT/Qb6xmY8zoTJGkieli5oqNDfoTEcU1BN6DpWIDpqNSSFbS7NMEwNdm8PkwsprHs8RWjUOx0DS+y/1Ec+JNh6ZxbFI97PDEgGL7cI7RWEDkw2M/bWVFVPcEcfsiBqbm7hRKqHUCzWXLyXoy8tIzs6/c18M2q1cLBTU0pa4mSqoN31WH6/xo0fvpxrb9jGsSOD/MUffp+9u3rYdv4K/tcnr6RjceucR3zYRfm1qJQ6CM30QS8wnW5oWuNjI27VWcHkzQ8nm1nYHSlvnkEuoyiClqCfgK6RzOYZy+TQVIVwwIeuqlUdw4k0QSdbtgMULHvvgvv6lpFMxli16gV27doOzN4R6ryLVvH+j17BkqVtPPfUQb5z8wOsXNMxqQYLiruJ3//2w1WtI5aIMDhu7mIhH8Nxlf52FUuB+JBJe5+J6gEDUK2ImirsuShCplVlzVMpogPe29XsX11MDVz6VJ6WPg+8ueMMXm5hBaD9ruJ53ChTVUK0FAhcOET2yTgyqc/+hHGcEs5lWw8TjGbYs/OsKX9+Jhorr9Vh2TkTywlNcWrDDuyvxzpr0xI++Znr6FwS4/YfP83/fPtRCvniNeG5pw9x09v/BbCnM61duN2dtsnpNFo3ZsPNOiuYf1GrcppnjouUt9PVNZVYOECuYBRrs1JZfJpKyO9DUxu3O+FUFMt+BAcObGHDhsdR1fyMO5Ddy9r44Md3cM75Kzl+dJAv/uWPefbJAwAcOzIIwPtuuoxERwsDfWN8/9sP8+gDu6peSWsiQo/M0t+lY/kVwkmLRb0G/rw3UkArmc5stbZo7L0oTLJNZfUzaWK93jNXubBg3xXFroHLnvZOamAhLhm+2ML/NKT2m5RuARspjqHL+0GVZO5fVNXjnd6RPOvS10gNhTn+8tLTfnYmmis7SURD9I7a067dbpzQFKfatscTEfoHknVFsXRd5d0feB1veecF9J8c5fP/+xZeefHoaY+zozOtUzSNlrt43VRB44wVzE9zBU2DNSN27i5O1U5XCEHAp+PTNTK5Apl8gbyRwa9rhPz6jG3dNVWxfW6J01Esu2vODhzcwpYtD7Ns6S4OHtpymsmKtAT4jd+6hKvffA6ZdJ5v/8f93PXL5zErWuw9+sCumgxVCQkkQzDQCnlfEC1tEt2TptOoLhLpBUoXclOBVzcJsm0aHY8n4VAOPCaoUsDuK/1YKpx1b67hqYGDaWOi2HjsNySY0PV4BK298ekbImgQuLSf3POtmP0zt9l0I9WjpWOUJRuP8+zPz5s0+6pprLyJXdoy36JYJeaaKrh63WI+8ZlrWbainbtvf57vfuMhspnpN4LKU83BW9EsaKYPOsl8MFXgvrEC53XBDXMFTYPlCRQhCAd8BH066XyebN4gVzDw6xpBn+56RMuJHUdNK5oOO3cejx1bRy4XYNXqFzh4aAtQPCFHh9Ncev0WPnTTZYRCPu6+4wV++N87GRu1p6uVBMbCMBiFvE/gy0u6+iSRtMLImMkgxZolr4nldJgq7N2mk20VrHzZIJHyMURukgB4QVCPnK8z2q2y9r4cwRH3o4NTFYFrmoL//CADW9O0PehHSzbeXAEEL+tHCVik71k87WPczKFff9mrWKZg73h6oNO7k/ONHuzZyLNj6LATA+3t1pR4PEzfUMqxKFat9ViqpvCO927nHe/bzvBQir/989t4/umDVb+ml6NZJZpmqz7mi6Eq0UhjBfM3alXOvDgzhBA68HvA3wIfkFJ+f5rHCeDzwHsAE3gG+G0ppbPbXTUwkwAqiiAS8BPy6aTzhQmj5dPUCaNV2QxjXkWx6pz/VYllaaTT29l89otcvP0WOju/weOPj3LhhatYurSNp58+wP98/SGOHhqw5/UEjERgKAqGVjRWnX2SlvSphtOlC5HXxbKEocOebTrpiGD1Swbxk8WwUOXFv1xQS7gprMPdCkfO1+nYZbBol/Opi1OZqakE0UTSd3UWbVgQe8Ibv2vhNwle3k/uxSjm8dOvDYOZPIYlXRNNzVdg7SV7OPTsSjKjoXkTtXJLdxKREAPJ+g2NXUOHS3g5ilXCyVTBmUxWaTh9oqOFkaEUhYLJos5WHrr3Fb79H/eTSuZqfs1yk+V1pjNbds1fXAhUqyFexM3NtxILJWpVzrwwWMDHKAYOHpvlcTcB1wPbpJQZIcS3gC8Cn6rnxe3aXaxWABVFGTdaPjL5AtlCgXzaRFMUAj4Nv178tTmx01jCiShWCbtE8dLXr+PCCz/G3r3vZ3T0ESKRL/OOd3yFoaEUX/ziL7j7rpds6Qg1kjM4GYfRCFiKIJCVLBqUhDPTT/KZDzuSeT/sOVcnFxCsfcGgdWB6dawUhvLc/HKcMF25sGD3VQGCI5I1D9k3UHimtsTVCuELLX0U4hZdPwyimN4YdRy8vB8lbJK+61T0qnI3UnWxC9Xq7XvxhfI8fs+6eWOuxmmo7jSS+RLFcqqrIExvsiqH08cTEaSU/PK2p/nO1x+s6zVLN7SGJT2tHeWcthlXcV09EyJc02nJfDFU0JiIFbiTzdAIcwXzxGBJKb8KIIS4YZaHvhf4Dyllqe/iPwP3UofQ2bW7OBcUpZg6GPLrZAsG2XyBZDZPKpdn5wF1YmDxfIpi2SmKN954CeFwz/hXkp6eb7FixZ9jGCGeevpgXQXLpfqqkQjsfukktEBLGmKjkmCVG4xezq9PRwR7z9GxVFj3XIGW4dpS7qYTjqkiXeXUKraWAruu8WPqsPlnWdQaglfVzHWpRwALUYunWnsJ79EI762+S5+TiIBJ8A0nyb0YxTgaaphonlqQZOOOV+g52MbxvR3zxVgB7uuOl9IES9gdxXLKZDnFVCbrfTdddtpweiEEF71+Xd0Gq0RpA2S+mKwS5fMXwd2NOLdYCGaqnEZqhFtRK3DfXIGHDJYQwgc8NMWPLpdSVhszXw3sK/t6H9AmhGiVUo5UvN7HgY8DtLd38P6lbdMe1LBi6DbNZDbMGAC6qP14UkqOjeR4+USSF4+PYUnojPpY2xHirPYwARt3pQ1j7uucilce09FUwVt2dAAdmKaFVuex29tb2L37cxTnZVtIaXLo0N+wbt2/8abrSrv3izEME02ZPbogpaQ/Y/DaQJrdgxkyhkVEV7hsaZQ1ET8R39ybV5Qaa1SzDjuItvm5+saVU/7sYC7Hj0eG8AvBe2JtLLrePXNgzJBD0pIIsOND6yd97w59iDEtxTvybWx6W203jU7OCpFI7ug4iBCCd4TW0nKjN26CTnS/Sm/QYhPnEnxfK8CU0arWmI9r3tnt+Hq0tj20do4gX3kHN/7W2rqO9cNbbVpUGW7qzsya04ZhWTboTBuGadl03T79WLGwytu31zZT7RQJDMO0TVNKmGZxPVPpyYsv+FBVUaYHc6GoIVC8frcvmvpGun1Ri23nVGvMx3s+tn5SQya3tKMeZtKdEjNpQCPGO0UTAa768GTdmSnV0QszqKp5n2fDsE5tqrqR0VCuOeWvXarPtxtjfFasWmcPg598e+7P9YzBGhezi+s8jADKp6KWthpOe4ellF8DvgawYs0a+d9HB6c96IDNc0oG6m6nq/CBC5dw6/N99KUK9IwN88j+YQKoBIWKX6goNtQ7DQ6nbNttHBgukIjp/OKBvonvDdVZpHzddXvo7f0WUDyRpMzT0/MtIpHf5447eyc9dmiGSFZeKzatGAsVm1YgJZE0LElBOGNyztYQd912bM7rLGfYpWjW1Teu5O7vHTzt+31LFA6v1wikJaueK/B8zp7/lx1cfeNK7r/l8MTXPWfB/ksUlrwo6X2mn94Znus2yfUFet6R4ZKhLh77zvFGLwcAESnQ9qd7SD4Z5fZvnCSWmD7yfs07u237TE9FaWfyNz57P6mRMD/5TjvS8tJvsIibujOb5tilM6U0dDuiWKU0wVIU6+3bE/zk8bnXtJYyI+xOPy9FsSr1ZGAwT6LNd5oezOk1xq/dN9wwRsfi6Gk/7z85Zts5VXl+uqUb9TKd7lTL0CwZENMxVUSsmgwGgHd+8mxu++rLk77n9WhUPe9zoyJW17yzm+/9z4GJr53MZmhUSmAlnjFYNnEUWF729XIgCQzXc1CvDYMECPmKM7OCPh3DshhJZskLi6w0QYK/zGypdZgtJ2uxoL56rJ07P0NHx+StJilNdu78DHDtpO+XpwtKIOcrpgAmg6dMVTAHiwaKTSucGg5cWcjslmBKAUfXqpxcrhHtt1j9UgHVnP15jWKkEw5sF8SOSlY86615YmZA0ndNFn+PwtZ8O/fS2B46pc/Sorf1IHRJ/uEVxBLOnbMzUZ5Pv3ZrhuUbe3nylxcjrfkzumAO2KI7dumMnc0u7K7Fcir93Ol6LDiVLnjz1+/ns5+9fs7D6eeCl9PN7WSuxmaq1PRqj1WZ1rhQaXS6eClqdSYYqxKNj3XWgRAiIYR4VAixbvxb3wE+Op72AfC7wG3S7gFMdZKIhug17BEtIQS6qqIgWKwESCh+wkLDwGJY5um1MvSZWUatPDlp1jSLqi3m7Ie0dBKU58nWgpTPUZnFI2UeKZ897bGGkGhdIQ7GLPZ2w+EuwWC0aKQ6BiWrjsGyXoglnTNXJWKJyCnBdKFjlKHBnnN0Ti7XWHTYYO0L3jZXmSjs2iEIjMJZD0mEp85e6L8qixmQLLo9iGJby43aGczkJz4/iXUascuGyTzVgTnQWHMVT0SIJyJs2fEs+ayPXU9sbMh6nGK+6k499Bhzu0ZPR69hz8iMcty4qYonItx336v8wz/cTl/vKJYl6esd5Wv/ctecZinWSrluzIdug24Rb2857U+TU5+TwUx+4r6jEXVWbjQ38pq5gvkfwQoBK4DW8a//C1gLPCGEMIBXmMednGqhrTVE70iaTi2IX6hEpcRAkpUmWWmSlAZJaSAAHwo+oeITCj5Ob/0+6bixML02pgpWUk+R8i23fm7anxmKJKtJMrokq1nkxz/piqWiJ030lEWnoTlupmbCjV3JdItg3xadgh9WvFKg/YS3++gW/PDqlQIkbLxXok0/o7MhJNcVGNtcIP6ID/9J96My0+1CRq7dizQEqfucr6uqZCrxjLYPs3Lzfl588FwK2ZkHHc9DHNUdO5pdJKIheutORS/iVBTLiewIJ+djTbzGuMm6775XbelSWyuVo0Bg4Ua0msyNRker4PTugE7VWjnZyKLejaB5ZbCklDsqvj4CLC372gT+dPyPrTiRJmhnt6dKhBDoCHSh0IKOJSU5THLSIi9NxmSh2CoP0FHQx82WJhR0xGmmy8lUwXpF0RCSvCbJqZKcVjRW5vi5LCQECoK2lCBYEPhNgUBnaCzJENUPknQSJ4yWlJK+JQpHztLQCrD+6QLhUW9vqBewePWNgnwIzr5LEkg2ekWTMYMWfddl8fUqtO10zzRU7lRXCqa+YozA5iGS9yzBSrrXsGSm9rpbdjyHaaq8/MgW19bjFG7qTiO71s6GnVEsR+ct4tx8rBJzGUZsN/Nt5mKYDnuqAAAgAElEQVQTZ5lNJ9zErXEcTkat7IiyzyuDtZCweygkFHcae8ajWJUoQhBEIzjum0wpKWCSlxZ5aZGRBmmYMF0aAg0FTQgCUT/pZA4TiQIIh9KiZhJFiaSgQEGV438gP/5vsyzRVTMhaAj8WUFgwlCdvl4vCGQldtVnmSr8YnSYwxt1WgYsVr1cQPdYJKgSKeCH6gDJDlj/gKSlb/bnuIlEcvK6LKZfsuT7IYTlfGpgVbuQQtLy5sOYIzqpRzodXxPMPrckHBtj7Xm7ee2xTWST9mwgzTWN+EzHrk08p2YuOhXFKtVjOUm5hgANN1oLvT6rydR4IVpVwm1jBc5FrewokWkaLGCsUKxNmilVroRds0pKOBHFqmZ2iSoEKhqB8f+ylBITSUFaFLAwpKSARbZURhAWHCUPEjQpUCWoUqBS/LciBYoEZdzOKLLYWksgxk2bxBpPW4TiDbVEIsf/7U8EGEvnOKpkCek6plJM8yv/uxzFAt0UhPICnynwG8W/VVn9ja9XTVaJuQhmqkVwYLNGPptlyT6DzoNmA6uEqkMC+y4RnFQyrHpMkjg861NcZ2xrgdR6g8R9fvx9zqUG1iqWgfP60bvTjNyyGgrOpixWOxBy6xueRUp48cFtdb/mmWqs7EoTtHsTryDtSzF2OlVwaChFwXI2Jbp0HnhBRyqNFjTN1kKlNIgaGm+qwD1jBe5ErezqP9A0WEDaNBnMZoj6/ejK9DcpdqdvOBXFmstOoxCiGLUSCuXWrGS8DCSj6SxSAZ+iYApJXrEwRdEgzUZOkfSM5WmZaUqvv/je56RZNG8WqJYgZAg0S6CbAm3cWKnSnkiaF01WiVoEUwroWaFyfJWKnocb4wleO+iN9uEzIYGDFwhOrhNcbkYxdtXV8NMR8nGTvquyBA+pxJ60/zMy19QO4TeIXHOU/KEw2eenn+NXL9UaKyhGr9Zd8Bq7n9xAeqQ+sfVi0bIb2K0zdkax7MbpofZATY2d5vxaHtKRZo3WwsRLKYAlatGGenF6aLDd5gqaBguAuK4jgaFslrCuE9L0qqJZXqaaKFY1TBgvIBAuimGHNrnOw0JiAZaQWOMBK0nx31D8WpOCcFClbbzbhCj9GTdKxehXMRI2MpRGcPpME6coXRj6x41MowWyktkEMxsUHNykkYopxHtNlr9msOw9Pl5ryGpr4+g5cOJsQeerkh1rW7mnvokKtiNVSe/bMghTsPgXQUQNEdKZsEMsw1ceRwkZDH/7LHAgTjkX8Tznjc8A8OL95835dZ0W0vmCF6NYmqrYpi0lnGykVCqsd7omC7xlsqBptBYC0+mEG4OBZ8JNYwXzK2pVTtNgAT5V0BYIMpbPkSoUyBkmUb8fTZn6Q2xnmqCd3Z5KOJUvD1OLoYIo9vuXYqKGqxJVCsI+lRZz9jSmNhdmmkyF1wSykkrBlMDoKp2hDT4UC1a9VCDea3k+JbDEsbPhyDaFjr2SVU9IxFrvrbx/R45cp0Xnj4JoY3MXNbt3H7XONKFLesk82YFx3F5hmKt4trSNsO6CXbz22CZSc4heNY3VKbwaxSpht8kCBxspjW+WumWywFubdVOlnUPTbHkVL0aqSiwkYwXOmitoGqwJFCFo9QfIGgZj+RyD2QwhTSesT45mebnLUyVOiGAJpwcQuzE4csrX9bjJguIFNxOEw2uKbdiDvQbtL2QhJxHzRDSPbYJDFyi075es3Sk9aQqTZxUYuTBP61M+Intq787nmFAKScvbDiIzGsm7l87++CqpVzzPvfopLFPhhfvPrfm5Z2o64Gx4MYrlxAaek/VY4L6eeFVHpopqQdNsNZKp5pl5yVRB44wVON8h0Ml5r02DVUFA0/CpKmP5HGmjQM40aPH58amTIy9nehTLSTEs0UiTBad2Ib2EpUBPN/QuAdWEFXsk8X4VEQkznDslmqWp6V7k2NlFc5U4KFn3iPcGCQPkYxYnr8/gP67Qfn91Ldnd2nkMXtiHb3mKkVtXITP1X8LtEM945wCrt+3hxQe3kRmrXrCaUavpsXMzzwmNcSJVcKGaLPBGNKtE+bWpabbcx8tRqnLcNlYw/6NW5TQN1hSUolk502Asn2c4l8WvqkR8PlShNKNYOD/HpESjTBacEkivmJWRGBxdBfmAIN4n6T4IunHq55UXaS+K5tEtcPg8hcQByVkPe9NcWZqk551pkND50xDCnDq+NpjJT+rmBM4LpdKSJ3LtUXL7Wsg+l6jrWHaK5/nXPU4+66u6c2DTWM1vSht4Tpksp2iEyQJvdBmcjqbZcp75YqhKNNJYwcIwV9A0WDPiVzV8AZVUoUDaKJDPZAjrPoKa/W+bk1Gs+ZwqCI03WUBDdyGzATi2EkbjgkBasvZlScvozM9RNWXadBBwXzglcPhcwbGtgo59krWPetNcleZd5Tssum4Noo8U666mSuOAye+zG6treeshhGox9tOVzLWxRX8uP7FpYId4dq4+xrKNh3ny9u3kM7NfC5rpgNVj54B7uzXGySwJpwfbu60nXo5mlTOT2YKm4aqG+ZDyNx1NY2UvTYM1C0IIIj4fAU0jmc+TLOTJGAUiAR8nsim68PZNwkJIFYTGmixNUxuSU29oxXTAvs7i3K8lByWLeqjZmFRe3N0WTgkc2C7o2SBYvFuy+jFvmiuAkQvzJDcXCN6rkXtZksM7Qxz9m4cIbBpm7M6lmAO1nW+Vwln6TNeNkFz45sdIDkd49dEtMz60aay8gdcbXrihK40yWeDtaFY5jdaN+cJ8NlTQGFNVwg1NaJS5gqbBqhpNUYgFimmDyXyekXwOBOSliQ97Bnw6EcUq4XSq4EI3WeDeLqQloL8TepaCqULiJHQdAb1gz/GnuvgPTlFvZod4WgrsvVTQv0qw5CXJiqe91dCiXBwLq03G3lBAf0Wh8+VWRMI7KxWhAtEbDlE4FiL9aGfVz3NaPNds20P70j4e/P4bMY2p5aSZDlgfdkexnGh40TRZNbzuPIlmVVKN4fJKOr0TTJfFMJ/MVDlNY+U8TYNVI6W0wYxRNFp9SpaAVIlKHzqNnU0wHU6nCp5pJgtwRCAlMNgBJ5ZBwS9oGZYsOQQhF8r9qjVdJaoxX4YOu3YIRpYIlj9tsfSlupY4J6YTxRKl/3c+ZnL8PcP4BlWWPNhqyxBrO4m+9RAiYDLyjVVMDJibATfEU9MLnP+mx+k70sH+59ad9vOmsfIudkaxnMqSWOgmC5zREbeYzljMdM31esRrprXPVyNViReMFSx8cwVNgzUnhBCEdJ2ApjGQSpMTJidFhiAqLXUaLaeiWE6mCoJ7TS+g8SYL7E33kMBQezFilQsKQknJir2z11k5zXSCMtXOZSWFMBy9xkeuDdY+YrFon33rmu21K5lNGE2/Re8NI2DB4p9HUQre2ijxbxkgsGWIsbu6MU9Of11wWzg373iOcGuKB753VXEG3jhNY2U/Xo5iQVFfekbStm/gLWSTBQvDaJUzU01qNbpRwk4jNttrljcqWigmqpJGmiooaoIhreLrnwHGqkTTYNWBIgQKAiklYaGTokDGJqNld558CScbXkw1hNgpvGCyoL7BklLAYAJ6x41VICVZtUvSOjjX9gXuMJsIpVol+y81MXRYense7ajFYBXHrezIV88aqkWqkt63jFKIWiy5rRV9zJ50X7tQonmibz1E/nCY9MNdUz6mEeIZiY+y5Yrn2P/cWk4ePLWuZp3V/MCpjTwn9MUtkwXQN1TcJPSC0Vpo1HLNnil7wu7XdbdRkbt4wViVUFXljDJX0DRYdVNq2d4qfUTQSYpC0WgpGQJSJSJ1/DXWaDmxwwjudBUEdzoLgndMFtSWV28pMLAITnYVW64HU5KVuyQxjxurahjqstiz3UIrwNn3q4QzIaiym7jbQieR9F2ZJNttsOjOFgInah8m7ChCEn3nAYQmGf3h6kmpgY0Wzgvf/GukFDx1+8VA01i5gZ1RrBJOpArOV5MFjdeU0rlsWHJeNMJwioVqeNyg0dpQwi1NcNJY9RiZ2R80A02DZROlwcMlo5WiQJICWcXEJxUiUieAWlNthxNRLLdSBd00WdC4ncdJa5kl3aOgFzsC9i8GUxeExyRLD0qiQ/PfWEkkJ86SHN5qER6G9Y+o/P/t3XuMY+d53/Hvc0jOfWdmV7tarda7kixpZTmyYkdWJVm+BrUFy7FbJbAj5AK4QGM3TosAuQIFagSNm/SPFCjQtEkcIK2jxE3TxJHjxHYiK5Ysr2zJSpxYsqXKumu1N+1triSH5Hn6Bw9nuRQ5Q+6cc3gO5/cBBhwOz5AP3+Hw4XPe57xnrJLtZ3X2bassv6HKzoenmHm6v5MJp2nqthOMX7vI4r1X0Dg98Zo928NKnpcfepkr3/Q8f//lm3nhZAEoq7BKUVwnuU+qVTDvq9YOu8iC8yvXtp/sfrsWW7K5rOQGSL+wgviLq60WVi0qsGLQeeLhAsZsVGitep1lq3EmqFJwY9pLTFMk2OQjdVKzWJBcv/z6/adcZEE2kuJ6LB2FVnWHUTtY4twlzbbAubNw6VFnZmmoYcYmDJzn3hpy6gpn18vG1d8KKPQ4OW9WLNxY5txby+x4fIL5x4b7eummuG+VmTuOsPjELC9/fQ6i5eKHmTgBCsU6t37o65w5OcsD912nwiplSZzkPu4deUnml2EUWTC8HXejdoyWxCdLRRWk28WQxqzVrrmtvyeqwIpR557FAGOGEtNepOINlq3GYrDGkq8xSZFpL1Ii6DmrleSy7ZD88VjbucgKzfFrpji9K6Q85VjdmT4acuDVgInK5r+fF5Up5+m3NVidh9c9EbD/ScvcCnydlg9VOf2uFaaeHWP3A9OZi/eMl3n9R56hvlLg6J8eYOclO4Yd0rrXv/1bzO1Z4Iv3fJDZ2dlUHrN9T6U0xT2LlUS3RN5XrW19UMxCTlGhJXC+qIrzRPFbNSqFFcRbXIEKrNhstGfRMCYpMulFat5g2eqUqbMa1ClGs1qTFCn0+KCXZKtgWkVWWoa559FxypPOmZ3OufmQsADjFbj8lYCd5wIKoXF2YZlW00feE+S5vSHP3BLiBtcdDth5LFur73WzesUaJ9+7xMTRIpd+eQfm2Siuzu+NdPbf/Qpju6uc/t83MDs5N9S4Wl6tltm5Z4Hb3vs4zzx+Da88dyDxx0yyBSTP4p7FSrJVMO9FFmRrx12vxTDynkukt24zVbGdKH4LhlFYQfZnrdqpwIrZZnsWSxTY6QXmGKPsdVaszkKwxoKvMUGBKS9ecKxW0q2CSR6PBecTYS1aojMNae95XCs1C6qz8yHVCbAQ5heMXWcCplYvnNEZhT2RjnPkB0Jeud6ZWoBDDxeYWMlGobKR8uU1Tty5yNjpApd9YZZgyG2M3RLn5I0nmH/rWZYeOsDaS8Mvrs4n0Sk+8BP3Ua8X+ebf3p7oY6qw6k9cs1iQTLfEqBVZkI1jfeHCmYs85xLpLmvtfy3DOAVH3mat2qnAitEgexYDjGlKTHuJmoesWo1VGlSCKuZEM16F9RUIk1q2PenjseD8P4aT7lnek9zzWCs6C3Mh5+ac1enm85paMfYfCZhfMAqbnAy2/Q0zTwcyr004z9wSsnips+d548pvZ/94K4DK3hrHP7RIcanAvs/PEawNZ7Zto8RZvHSF+fc9R/WFOZYOJz9D1Eu3JHrozU9y+VVHeegL76K8vL2W2s2iVq6Js8iCZI7HGpUiC7I1m9WS11wiF8pqUQUqrC6WCqwEDJr0SgTM+TizOFVvsGqN9RZCc5icK1JbqXO8vsJlxeRebEkWWcVi8wNtmsdkQbx7HtdKzsJsyOKcszLlYM0WwL3Hmy2AY7WLKzTy0vZxdl/Iszc3Wx+vfjRgz4vZbwkEqO6pc/xfLFIoG/v+YpZCOb24u53TplvitPE6u+56irBS4OznD11w4t609EqikzMr3Pq+hzn2wuU89Q9vTOSxVVgNLqlWQRVZG8vabFa7vOQSyXZB1TLMwgryXVyBCiyAWOdVtpL0DGOCIhNexBmj4g3K0fFaPtMM9GSjwmS9wFK9HlvMaZ0fy6z5oTHtIgsubs+j46xOOV9bWODpa2pUol+bqMDekwFzCwET1fg+CPdq+4DhJsgwcF78wZAT1zhT5+DabxaYXMr+rBU0i6tjdy0QrBn7PjdHcSX5EwkPnjid+R/5PoW5Kqc/ewPharp/642TqPP2O79GoVjnoS+8m7hPKKB2wK2Lu1UwyXMwJmXYiypBNgstyFYu2c763dmWBSqs4qECKwFxnBCyfWEMj2a2ztWqlEsNyhMNfu+lY5QmjYlGgclGgfFGYdOl3zeSVpE1jETYstmeR8dZG4PlmZDlGWd5xmkU4LnlJaYaxr5jxuxiwPha8sVFVhLk8rzzzC0NKrNw2dPGwccDgk3aH7OiVVxZrVlclZaSKa62uidy5vYjTB46w8J9V7F2JJ2V+aC/JHr1Dc9w5fXP88h9t7FwZj62x97uhVVcO/WSWLYdkltYaRRPDwLZWGmwl873o/Y2QlDBlZQ8FVRwYT6AdE8an0YHQ9rFFajAWnecFS4j5pOVxbRnsTWzdVmpyKnFFTyA266c45GTSyyV6iyN1cFhPAwYbxSYaASMNQo9VyXsZTsUWXB+z+PJapnGBIzNj7MyHbIy7dSiXFNag9kFY8dSwF237uWrf/tq6nGux7tBsQXJJMjQnFeuDzl6vVOqwPUPBsydzEdLIEDl0hrH/+Xi+sxVaTGe4qpz7Ouhbylpjl9zhtl3vsTqE3tYeWzfVsPbVCuJ1j3cNIFOTq/ytvd/jRNH9vL4N34wlsff7oVVu7hyThw79C64vwSXbk+jyAI4cW4lkfvvJcttg52GkU9GXd6KqXbDmK1qGdXCqkUFFnE3vTQltWdx9+w0pxdXuXl+lhdeqhPiVAshlUKDaqHBYqnGYqtIaBhjYYHxRsBY2Pza7Jw/aRZZcD4RplFo1QOnMu6UJ0LKl41RnghpFAAaFOows2JMv2rMrASMV1kfq4kgO4VF55t2ErNbK3POszc3WN0Ju19sLmRRvMjjy4ahsq/GsdYxV1ucudoscRaLF3/fxUtW2fmhp1k7Ns25L11NMu9ETZ1JtFDY7DXtvOODD1As1Xnw3h/Gfev/AzrO6rwk/tJJtArmsciC4axeC9luG+ymWxHQOcMFKrradcsJkJ+CqmW7FFYwnOIKVGBdIMuzWO0umZ1aTxwBxmTUJggQ4qwVQipBg7VCSLlYZ6UU/aLDWBhQioqtUhhQCo2CX7iUeBrLt68/VgKzWY5TLTnVMac67lTGnMp4SL24vgHjNWPHSsBkJaB+okKh2vzQszvjCbFTr/aPeugDL90bBs6RN4Ycu84prsGhwwG7jmanuOzH6sE1TnwgWi3w3lmKy/0VQGknTZussevDT+K1gDN/fj3U429f3ErLx3VveZIrrnuBb3z5dhZO79xSHCqseotzFivuHXpJniIEkl9YaZir1wK5KrTabbYTr92oFl69ni/kr5BqN8yiCtLrYBjmrFU7FViR3TNTnIo7QSU0i9XSbe9iQPO4rIlGAWrN5FK3ZtG1FoSsBQ3KhbaiCzBnvdgqhgFFD5jaOc7RhVX2BZObznpt1cUUWaE5taKzVnJqxeYKf+1f6yFHxdRUOWCyakxUmwtTFNpXaZuahqn8JsR2rTf/1okIeyXHzsS4sCfk+ZtCKjtg9wvGlf+Yr1krgOVrqpy8Y4mxMwUuu3eOYpfVAjOROIOQXT/6FIUdVU798ZsIl8ZjvfutJtEdOxe49Y7DHH1+P088cuNFx6HCamNx55y4WwUhmfNjwfkPPknPZA1r9VrIf6HV0ut9sVtuuZgde8PQHnd7zO3yXEi1G+axVS0n6pX1SYHtUFi15KLAMrMS8PPAbwI/7e5/0mO7m4D7gKfbfvx/3f2/9PtYcc9iJZH0AIqFVuLYOPkZRsmNUj244Fk1zFkLQmrRV91CKoWQRrFxvjiZgme8TDE0io3muZ2KoVEIoRDNfAWhEXjzujkE3rw06Kswcxw3mN05xdnlVV4JKsyXxgiD5gIT9dZlwakXnXqheQ6qsGOHv4UwVjPG14zZleZCFONrxtia9b34x6gkxHa9ksT6TNc4nP4hY+lqo7jkXP4V5+DZ7CbGXhZvKHPqPSuMHysy9meTnKv2XmVzuInTmX//s4wfXOTs5w9RO7ojlnuNK4mahbznrq/gbjxw7w9zMc1so3KcVVp5J+6ck0TXRJ7Pw2hm7JqfTrUdvd0o5hXo/j7a2rEH3VsN+9VPcbbRzrJ+dO6MHDXDnq2CC3NBsVhIfHVAyE5xBTkpsICfobnw0jc32W438Ofu/jMX8yBJzGK1JNUqeLEtHAW/sLWwpTXjVQ9C6uYs19YIC44VjFoxpBw4YZ9dY+ZAVGyVSyGvVKoEe5rxukUrabV/fru0eWWB2mvup9CAYt0o1Y2pSvNy/atmNOvCeGZcOhNiPeU+/jTsvGSGkwfqHLlujbAA+54tsu+ZEouvrnCK/hJX2nsoeyXU6m1Vqm+vUny2yNhfTmJ1y2zCnLn9CFM3nmTxoQOUv7dny/cXdxJ9y7seY++BE9z/Z+9lZXGw4m9UCqs2ieedVs6Ju1UwqeOxYFcs99kujSILsrG4EoxeodXLVt6D+ynOsvoeP0xZKKog3VyQ5KxV8z3v4uWiwHL3/wFgZh/cZNPdwPvM7JHo+leA/+zuS4M8XhKzWEm1CsbdwrE+49VoVlE7rMSZs6uA87ooATpOw5rH7DQCJ7Rmy14YNC8dcPPzRRRQDI2JsYAdlWKz8CKa5fLmDFj77FfBjeWFCntsnEKD5u0Jtyl20/4GldUleLeiPBMytRBwxffGmFxp/r37TVob9eX30l6QdfvdXq0aLb1iOzfpFJ8OuOTwPDaX7bbGxuIYK/90KctfP7Cl+2kl0riT6MKpeb776A08991rB/q9UWwHTCvvJNEqmLfjsbZLkQX5WNp92FQ8DS6pnDCoNHPB8Xo5sRmrrRZXAOae7gGgvZjZGPC1Lje9093Xom0eAH53g1aNSaDi7m5mu4DfBibd/a4u234M+Fh09Qbgia0/i1TtBk4NO4gB5TFmyGfcijkdeYwZ8hn3de4eT09lJM28MwI5B/L5ulHM6clj3Io5HXmMGbaQdzJTYPVjs0TXZft9wMvADncvb7DdY+7+1niiTIdiTk8e41bM6chjzJDPuIcVcxJ5J4/jD/mMWzGnJ49xK+Z05DFm2Frc+VqDeXAFoAJUhx2IiIhsC8o7IiLbXK4LLDO7xMwOm9m10fW7zWw++r5Ic/Wne9xHcJUCERFJnfKOiIhsJheLXGxgCrgCmIuuTwL3m1lIc32FB4FP9nE/n04mvEQp5vTkMW7FnI48xgz5jDsrMceRd7LyXAaVx7gVc3ryGLdiTkceY4YtxJ2rY7BERERERESyLNctgiIiIiIiIlmiAktERERERCQm267AMrOSmf2SmdXM7O4NtjMz+3Uz+39m9j0z+yMzG9oZ3MzsXWb2D2b2HTN7zMxu7bHdTWZ2xsy+2fb1i1mKM49jO+xx7aaf13IGx7qfmDM11mb2cTP7p+i18R0z+0SP7X7OzJ4ysyfM7K/MbG/asXbEs2nc0YINKx1j/VvDiDeK59ejmB+N/id/tsd2mRrrzeQx7+Ql5/Qba5bGNoond3lHOSc9ecw7ecw5UUzJ5B1331ZfwCeAXwQeAu7eYLuPAn9P84SRAP8T+O0hxTwPnAZui66/GzgBTHXZ9g7g97McZx7HdpjjukHsm76WszTWA8ScmbGmueT2bwEz0fX9QBnY37Hdu4GXgD3R9V8D/ioHcV8H3DfscW6L5xeAUvT9HmAZuCrLY93n88pV3slLzhkk1qyM7YAxZ+a9MIpHOSedmHOXd/Kac6KYEsk7Q39iQxzQBzZJdF8CPtZ2/c3A6SHF+uPAwx0/+0fgg122/UngReCR6Os/0TzhZWbizOPYDnNc+3gOPV/LWRrrAWLO8lhPAAvAwY6f/w7wG23XdwJ1YG7YMW8S9+00P9h9A/gW8N+AvcOON4rtZuB45xhmfaw3eU65yDt5yTmDxJqVsR0w5ky+FyrnpB577vJOHnNOFF9seWckWwTNbKxj+rH1NTbA3bweeLbt+rPALjOb67H9lvWKG3hDRyyteF7f5W4+B1zp7rcA7weuAv4wqZg7dI4ZdI8z9bHdQL8xD3NctyJLY92vLI/1fwX+j7u/1PHzC8bZ3c/STC5XphfahnrF/RhwubvfRnMP3RrwRTOzlONbZ2bXmtn3gb8BfsrdFzo2yeRY5zHvjEDOAeWdrMnSOPcr6+Ocx7yTm5wDyeSdvJ8Hqyt3XwO69osPwIBG2/V6dJlYUdorbjP79x2xtOJ5TSzuXm77/kzUR/yymU2235aQzjGD7nGmPrYb6CvmIY/rVmRprPuS1bE2s0/RbHv4sW430+f/aNo2itvdq23fr5jZrwCLwDXA91ML8sKYvg9ca2ZvAf7azN7r7t9t2ySTY53HvDMCOQeUd7ImS+PclyyPcx7zTt5yThRL7Hknsy/4DDgCHGy7fpBmX+a5DMRCdP1IH79bACpAdbMNY9BvnKMwtmmO61Zkaawv1tDHOjoI9weAH4s+lHa6YJzNbAq4hP7+RxPTR9yv+RWaeWEx0cD64O7fptlG8p6OmzI51jHJyv9rXnIOKO9kTZbG+WJlYpzzmHfynHMg3ryjAisSrWxy2MyujX50D/Cv29o7/h3wOY+aL1P2eeBGM3tTFOs/o9nCcV9n3GZ2t5nNR98Xgd8E7nH3cIhx/l0Ox/bvMjSufcv467irjL2GO2MLzOx3gQPAh1sJw8wKZna/mb0j2vQe4Cfb2mB+Djjs7q+mHXMUX19xm9mHzGxf9L0B/xF4wN1PDCHmN5nZR1qtIma2H7gF+HaWx3orMvz/mpecs1GsyjspyPBruADnJL8AAAPWSURBVKcMvoY748td3sljzoliSCzvjGSL4EWaAq4AWoP3hzSnLB81szrwPeDfDiMwd18wsw8Df2BmTnNa8k53P2dmBzringTuN7MQcOBB4JPDjJMcji2vjXlo4zqgzI71BrI81ncCH6fZN/51O98m/imaffq7ANz9q2b234EHzawGHAV6Lsedgr7ipjm+nzOzEhAC36F5wPcwvAj8G+BXozEcA/4DzRXJsjzWW5HJ/9e85JyNYiWjYwsjl3cyO84byPo45zHv5DHnQIJ5xzK0U0FERERERCTX1CIoIiIiIiISExVYIiIiIiIiMVGBJSIiIiIiEhMVWCIiIiIiIjFRgSUiIiIiIhITFVgiIiIiIiIxUYElIiIiIiISExVYIjlmZpNm9kkze8rMKmb2spn9RnQSPxERkVgp74hsTicaFskpM9sH3AccAv4CeAH4EeCNwKfd/ePDi05EREaN8o5If1RgieSQmY0BDwNvAO5w98PRz2eA7wKvA/a7+/HhRSkiIqNCeUekf2oRFMmnXwJuAn61leQA3H2Z5l7FAHjHkGITEZHRo7wj0icVWCI5Y2aTwC8Dx4BPd9nkdHR5WWpBiYjIyFLeERmMCiyR/LkLmAc+6+61LrdPRJdr6YUkIiIjTHlHZADFYQcgIgP7QHS538x+rcvt/zy6fDmdcEREZMQp74gMQItciOSMmb0IHOxj06vc/YWEwxERkRGnvCMyGLUIiuSImU3TTHJPuLt1fgE7gBpwpJXkzOydZvaXZvaKmbmZfXRoT0BERHJFeUdkcCqwRPJlf3R5tMftdwAl4K/bfjYDPAH8PFBOLjQRERlByjsiA9IxWCL5MhZdVnvc/q+iyz9o/cDdvwh8EcDM/ldikYmIyChS3hEZkGawRPKldQLH1yyFa2a3AncCX3L3R1ONSkRERpXyjsiAVGCJ5Ii7nwKeBG4ysxtbPzezK4A/ARaATwwpPBERGTHKOyKDU4ugSP58Cvhj4H4z+yNgGvgI4MAHtIKTiIjETHlHZACawRLJGXf/LPBR4CTwszTbM/4UuMHdHx5iaCIiMoKUd0QGoxkskRxy988Anxl2HCIisj0o74j0TwWWyIgzsxngmuhqABw0szcDZ9z9peFFJiIio0h5R7Y7c/dhxyAiCTKzdwNf7XLTZ9z9o+lGIyIio055R7Y7FVgiIiIiIiIx0SIXIiIiIiIiMVGBJSIiIiIiEhMVWCIiIiIiIjFRgSUiIiIiIhITFVgiIiIiIiIxUYElIiIiIiISExVYIiIiIiIiMVGBJSIiIiIiEhMVWCIiIiIiIjH5/6JRMysZYW4JAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "def bgd_path(theta, X, y, l1, l2, core = 1, eta = 0.1, n_iterations = 50):\n", " path = [theta]\n", " for iteration in range(n_iterations):\n", " gradients = core * 2/len(X) * X.T.dot(X.dot(theta) - y) + l1 * np.sign(theta) + 2 * l2 * theta\n", "\n", " theta = theta - eta * gradients\n", " path.append(theta)\n", " return np.array(path)\n", "\n", "plt.figure(figsize=(12, 8))\n", "for i, N, l1, l2, title in ((0, N1, 0.5, 0, \"Lasso\"), (1, N2, 0, 0.1, \"Ridge\")):\n", " JR = J + l1 * N1 + l2 * N2**2\n", " \n", " tr_min_idx = np.unravel_index(np.argmin(JR), JR.shape)\n", " t1r_min, t2r_min = t1[tr_min_idx], t2[tr_min_idx]\n", "\n", " levelsJ=(np.exp(np.linspace(0, 1, 20)) - 1) * (np.max(J) - np.min(J)) + np.min(J)\n", " levelsJR=(np.exp(np.linspace(0, 1, 20)) - 1) * (np.max(JR) - np.min(JR)) + np.min(JR)\n", " levelsN=np.linspace(0, np.max(N), 10)\n", " \n", " path_J = bgd_path(t_init, Xr, yr, l1=0, l2=0)\n", " path_JR = bgd_path(t_init, Xr, yr, l1, l2)\n", " path_N = bgd_path(t_init, Xr, yr, np.sign(l1)/3, np.sign(l2), core=0)\n", "\n", " plt.subplot(221 + i * 2)\n", " plt.grid(True)\n", " plt.axhline(y=0, color='k')\n", " plt.axvline(x=0, color='k')\n", " plt.contourf(t1, t2, J, levels=levelsJ, alpha=0.9)\n", " plt.contour(t1, t2, N, levels=levelsN)\n", " plt.plot(path_J[:, 0], path_J[:, 1], \"w-o\")\n", " plt.plot(path_N[:, 0], path_N[:, 1], \"y-^\")\n", " plt.plot(t1_min, t2_min, \"rs\")\n", " plt.title(r\"$\\ell_{}$ penalty\".format(i + 1), fontsize=16)\n", " plt.axis([t1a, t1b, t2a, t2b])\n", " plt.ylabel(r\"$\\theta_2$\", fontsize=20, rotation=0, labelpad=15)\n", " if i == 1: plt.xlabel(r\"$\\theta_1$\", fontsize=20)\n", "\n", " plt.subplot(222 + i * 2)\n", " plt.grid(True)\n", " plt.axhline(y=0, color='k')\n", " plt.axvline(x=0, color='k')\n", " plt.contourf(t1, t2, JR, levels=levelsJR, alpha=0.9)\n", " plt.plot(path_JR[:, 0], path_JR[:, 1], \"w-o\")\n", " plt.plot(t1r_min, t2r_min, \"rs\")\n", " plt.title(title, fontsize=16)\n", " plt.axis([t1a, t1b, t2a, t2b])\n", " if i == 1: plt.xlabel(r\"$\\theta_1$\", fontsize=20)\n", "\n", "save_fig(\"lasso_vs_ridge_plot\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 로지스틱 회귀" ] }, { "cell_type": "code", "execution_count": 51, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAoAAAADQCAYAAACX3ND9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAIABJREFUeJzt3Xt8VNW5//HPk3CHFIkgIBKBAxWtICBaWi8z1jtVpFKVU63g+SlStVWrraL1Uq3VtrZFW+nRnhYL1GpVWrXeADWoKOUalWqCgkkAuQVIIAkkkDy/P/ZkCCGXAZJMMvN9v17rNbPWXrPnmc3OzMPae69t7o6IiIiIJI+UeAcgIiIiIs1LCaCIiIhIklECKCIiIpJklACKiIiIJBklgCIiIiJJRgmgiIiISJJRAigiIiKSZJQAioiIiCQZJYAiIiIiSaZNvAOoT/fu3b1fv37xDkNEklhOTg4AxxxzTJwjEZFkt3Tp0gJ379EY62rRCWC/fv1YsmRJvMMQkSQWDocByMzMjGscIiJmltdY69IhYBEREZEkowRQREREJMkoARQRERFJMkoARURERJKMEkARERGRJKMEUERERCTJKAEUERERSTJKAEVERESSTEwTQZtZW+BG4EHgu+7+dC19DLgPuBSoAJYB17p7SX3LGuVTAGVlZWzdupUdO3ZQUVHRWKsVaVapqamkpaWRnp5O+/bt4x2OiIgkqFjvBHIN4MDCevpMAEYDw9x9p5lNB34B3NDAskNWVlZGfn4+3bp1o1+/frRt25Yg5xRpPdyd3bt3s337dvLz88nIyFASKCKNqrJy/1JRsfe5e/3Pqz/WfF5fgYbba3te22NjPq+utvYD6Vtfe10OtH+jcveYC5AJjK9j2avApGr1YcCWhpbVV7p06eLTp093d/fy8nIPhUI+c+ZMd3cvKSnxUCjkTz/9tH/xxRe+YcMGz87O9q1bt0b7Z2dn+7Zt2/apFxYWurt7WVmZZ2dne1FRkbu779q1y7Ozs3379u3u7r5z507Pzs72HTt2uLt7aWmpZ2dne3FxcfT9s7OzvaSkxN3di4uLPTs720tLS93dfceOHZ6dne07d+50d/ft27d7dna279q1y93di4qKPDs728vKytzdvbCw0LOzs728vNzd3bdt27ZPfevWrZ6dne27d+92d/ctW7Z4dna279mzx93dCwoKPDs72ysqKtzdffPmzZ6dne1VNm3atE9948aNnpOTE61v2LDBV65cGa2vX7/eP/3002j9iy++8M8++yxaX7duna9atSpaX7t2ra9evTpaX7NmjX/++efRen5+vufm5kbreXl5npeXF63n5uZ6fn5+tP7555/7mjVrovXVq1f72rVro/VVq1b5unXrovXPPvvMv/jii2j9008/9fXr10frK1eu9A0bNkTrOTk5vnHjxmg9OzvbN23atE998+bN7u5eUVHh2dnZXlBQ4O7ue/bs8ezsbN+yZYu7u+/evbvR970PP/zQFy1a5O7uH330kYdCoWh9+fLlHgqFfPny5e7uvmjRIg+FQv7RRx+5u/uCBQs8FApF/70zMzM9FApF/73mzp3roVAour1fffVVD4VC0e314osveigUin7+559/3kOhUDT+p59+2kOhUHTfnzlzpodCoei+On36dA+FQtFt+cQTT/iZZ54ZrT/22GN+3nnnRetTp071Cy+8MFr/1a9+5RdffHG0/uCDD/pll10Wrd93331++eWXR+t33XWXT5w4MVq//fbb/ZprronWb7nlFr/uuuui9RtvvNFvvPHGaP26667zW265JVq/5ppr/Pbbb4/We/bs6UcffXS0fvnll/t9990XrV922WX+4IMPRusXX3yx/+pXv4rWL7zwQp86dWq0ft555/ljjz0WrZ955pn+xBNPROuhUCim7z334HsjFAr5888/7+7B330oFPIXX3zR3YO/41Ao5K+++qq7B3+HoVDI586d6+7B31EoFPLMzEx3D/b7UCjkCxYscHftew3te3feeY9/5zvf8y++cP/0U/f/+Z+pftFFP/e33nJ/9VX3MWOm+1ln/dn/9Cf3adPcTz99tp9yyot+773uU6a4n3DCXB8+/G2/9lr3q65yHzjwfR88+AMfO9b9m990P/LIj7xfv1V+2mnuo0a5p6ev8l691vvxx7sPHuzepcsX3q3bNu/b1713b/f27bd5p04lfthh7mlp7qmpO71Nm93etq17SkosaZpKyy8s8QZyp1hLY94LeACwqlp9FZBuZl3rW+buRdVXYmaTgElAzKMfO3bsoG/fvhQWFh5C+CItR5s2bWjTpkXfqlukVdu5EwoLu1BU1I8334TCQli06Hg+/bQ7d98NRUXwzjvfZNOmb3D2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wIPAzMj/SBOWmZ1kZidWq48mOLzwuvabgJmlmNn/An2BS6r/gJtZqpm9YWanRepjIodpMDMjOJSX6e4b4xF7E6vrO+dN7TeBuvadJN9v9lHPd9A87Uf72Od3TL9htWryPKjJDwEfDHcvMrNLgD+bmRMMZ45290Iz6wscDXSNdJ9BcGhhkZntAT4GbohH3E3NzKoOuRxTY1En9t0mHYE3zKwScGA+cHdzxRlHxcBvzKwXwf8UtwLnJPt+U8No4FqC87TeDX6fAfgJ8C7Qn+Akdgj2ndlm1haoBD4ELm/WaJtJXd857P+3laz7DdS97/yMJN1valHrdxDaj6Lq+B3Tb1gNzZEH6V7AIiIiIkmmpR4CFhEREZEmogRQREREJMkoARQRERFJMkoARURERJKMEkARERGRJKMEUERERCTJKAEUEamHmY01s2/HOw4RkcakBFBEpH5jASWAIpJQlACKiIiIJBndCUREpA5mtgo4MlItAp5z96S4ZZeIJDYlgCIi9TCzJ4EO7j4+3rGIiDQWHQIWERERSTJKAEVERESSjBJAERERkSSjBFBEpH6lQHczSzWzQfEORkSkMSgBFBGp30ygP0Ei+EScYxERaRS6ClhEREQkyWgEUERERCTJKAEUERERSTJKAEVERESSjBJAERERkSSjBFBEREQkySgBFBEREUkySgBFREREkowSQBEREZEkowRQREREJMn8f3w+1c5lCaxjAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "t = np.linspace(-10, 10, 100)\n", "sig = 1 / (1 + np.exp(-t))\n", "plt.figure(figsize=(9, 3))\n", "plt.plot([-10, 10], [0, 0], \"k-\")\n", "plt.plot([-10, 10], [0.5, 0.5], \"k:\")\n", "plt.plot([-10, 10], [1, 1], \"k:\")\n", "plt.plot([0, 0], [-1.1, 1.1], \"k-\")\n", "plt.plot(t, sig, \"b-\", linewidth=2, label=r\"$\\sigma(t) = \\frac{1}{1 + e^{-t}}$\")\n", "plt.xlabel(\"t\")\n", "plt.legend(loc=\"upper left\", fontsize=20)\n", "plt.axis([-10, 10, -0.1, 1.1])\n", "save_fig(\"logistic_function_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 52, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['data', 'target', 'target_names', 'DESCR', 'feature_names', 'filename']" ] }, "execution_count": 52, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn import datasets\n", "iris = datasets.load_iris()\n", "list(iris.keys())" ] }, { "cell_type": "code", "execution_count": 53, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ ".. _iris_dataset:\n", "\n", "Iris plants dataset\n", "--------------------\n", "\n", "**Data Set Characteristics:**\n", "\n", " :Number of Instances: 150 (50 in each of three classes)\n", " :Number of Attributes: 4 numeric, predictive attributes and the class\n", " :Attribute Information:\n", " - sepal length in cm\n", " - sepal width in cm\n", " - petal length in cm\n", " - petal width in cm\n", " - class:\n", " - Iris-Setosa\n", " - Iris-Versicolour\n", " - Iris-Virginica\n", " \n", " :Summary Statistics:\n", "\n", " ============== ==== ==== ======= ===== ====================\n", " Min Max Mean SD Class Correlation\n", " ============== ==== ==== ======= ===== ====================\n", " sepal length: 4.3 7.9 5.84 0.83 0.7826\n", " sepal width: 2.0 4.4 3.05 0.43 -0.4194\n", " petal length: 1.0 6.9 3.76 1.76 0.9490 (high!)\n", " petal width: 0.1 2.5 1.20 0.76 0.9565 (high!)\n", " ============== ==== ==== ======= ===== ====================\n", "\n", " :Missing Attribute Values: None\n", " :Class Distribution: 33.3% for each of 3 classes.\n", " :Creator: R.A. Fisher\n", " :Donor: Michael Marshall (MARSHALL%PLU@io.arc.nasa.gov)\n", " :Date: July, 1988\n", "\n", "The famous Iris database, first used by Sir R.A. Fisher. The dataset is taken\n", "from Fisher's paper. Note that it's the same as in R, but not as in the UCI\n", "Machine Learning Repository, which has two wrong data points.\n", "\n", "This is perhaps the best known database to be found in the\n", "pattern recognition literature. Fisher's paper is a classic in the field and\n", "is referenced frequently to this day. (See Duda & Hart, for example.) The\n", "data set contains 3 classes of 50 instances each, where each class refers to a\n", "type of iris plant. One class is linearly separable from the other 2; the\n", "latter are NOT linearly separable from each other.\n", "\n", ".. topic:: References\n", "\n", " - Fisher, R.A. \"The use of multiple measurements in taxonomic problems\"\n", " Annual Eugenics, 7, Part II, 179-188 (1936); also in \"Contributions to\n", " Mathematical Statistics\" (John Wiley, NY, 1950).\n", " - Duda, R.O., & Hart, P.E. (1973) Pattern Classification and Scene Analysis.\n", " (Q327.D83) John Wiley & Sons. ISBN 0-471-22361-1. See page 218.\n", " - Dasarathy, B.V. (1980) \"Nosing Around the Neighborhood: A New System\n", " Structure and Classification Rule for Recognition in Partially Exposed\n", " Environments\". IEEE Transactions on Pattern Analysis and Machine\n", " Intelligence, Vol. PAMI-2, No. 1, 67-71.\n", " - Gates, G.W. (1972) \"The Reduced Nearest Neighbor Rule\". IEEE Transactions\n", " on Information Theory, May 1972, 431-433.\n", " - See also: 1988 MLC Proceedings, 54-64. Cheeseman et al\"s AUTOCLASS II\n", " conceptual clustering system finds 3 classes in the data.\n", " - Many, many more ...\n" ] } ], "source": [ "print(iris.DESCR)" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [], "source": [ "X = iris[\"data\"][:, 3:] # 꽃잎 넓이\n", "y = (iris[\"target\"] == 2).astype(np.int) # Iris-Virginica이면 1 아니면 0" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "향후 사이킷런 0.22 버전에서 `LogisticRegression` 클래스의 `solver` 매개변수 기본값이 `liblinear`에서 `lbfgs`로 변경될 예정입니다. 사이킷런 0.20 버전에서 `solver` 매개변수를 지정하지 않는 경우 이에 대한 경고 메세지를 출력합니다. 경고 메세지를 피하고 출력 결과를 일관되게 유지하기 위하여 `solver` 매개변수를 `liblinear`로 설정합니다." ] }, { "cell_type": "code", "execution_count": 55, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,\n", " intercept_scaling=1, l1_ratio=None, max_iter=100,\n", " multi_class='warn', n_jobs=None, penalty='l2',\n", " random_state=42, solver='liblinear', tol=0.0001, verbose=0,\n", " warm_start=False)" ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.linear_model import LogisticRegression\n", "log_reg = LogisticRegression(solver='liblinear', random_state=42)\n", "log_reg.fit(X, y)" ] }, { "cell_type": "code", "execution_count": 56, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "X_new = np.linspace(0, 3, 1000).reshape(-1, 1)\n", "y_proba = log_reg.predict_proba(X_new)\n", "decision_boundary = X_new[y_proba[:, 1] >= 0.5][0]\n", "\n", "plt.figure(figsize=(8, 3))\n", "plt.plot(X[y==0], y[y==0], \"bs\")\n", "plt.plot(X[y==1], y[y==1], \"g^\")\n", "plt.plot([decision_boundary, decision_boundary], [-1, 2], \"k:\", linewidth=2)\n", "plt.plot(X_new, y_proba[:, 1], \"g-\", linewidth=2, label=\"Iris-Virginica\")\n", "plt.plot(X_new, y_proba[:, 0], \"b--\", linewidth=2, label=\"Not Iris-Virginica\")\n", "plt.text(decision_boundary+0.02, 0.15, \"결정 경계\", fontsize=14, color=\"k\", ha=\"center\")\n", "plt.arrow(decision_boundary, 0.08, -0.3, 0, head_width=0.05, head_length=0.1, fc='b', ec='b')\n", "plt.arrow(decision_boundary, 0.92, 0.3, 0, head_width=0.05, head_length=0.1, fc='g', ec='g')\n", "plt.xlabel(\"꽃잎의 폭 (cm)\", fontsize=14)\n", "plt.ylabel(\"확률\", fontsize=14)\n", "plt.legend(loc=\"center left\", fontsize=14)\n", "plt.axis([0, 3, -0.02, 1.02])\n", "save_fig(\"logistic_regression_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([1.61561562])" ] }, "execution_count": 57, "metadata": {}, "output_type": "execute_result" } ], "source": [ "decision_boundary" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([1, 0])" ] }, "execution_count": 58, "metadata": {}, "output_type": "execute_result" } ], "source": [ "log_reg.predict([[1.7], [1.5]])" ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsgAAAEYCAYAAABBfQDEAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAIABJREFUeJzs3Xdc1fX+wPHX9xwOew9FZLknuEcKrjRTUcvSTDA1c3Fo3FG/e2/jtm51u91RAc7SDNx7jxwBrtyAC2VvEOSwOev7+4M0zYxzNCLy83w8fDzyy+f7+Xy+X8DefPh83m9JlmUEQRAEQRAEQainaOoJCIIgCIIgCMJviQiQBUEQBEEQBOE2IkAWBEEQBEEQhNuIAFkQBEEQBEEQbiMCZEEQBEEQBEG4jQiQBUEQBEEQBOE2IkAWBEEQBEEQhNuIAFkQBEEQBEEQbiMCZEEQBEEQBEG4jUVTT+DX4O7uLvv7+9/6u7GqGl1KBkajkQpLJSWSgRqtlsDAQCws7nwlxcXFODo6YmVldcd1XcZVjJXloFCgdHFD6doCycra7LnJspHS/AsYDFoUShU2dh7Y2LujUKru61lNVWeoJrc6BYNswFJhjbNlCxxUbigk8TOTIAiCIAjN3+nTp6/LsuxxP/c+FAGyv78/p06duuOasbKK8phtaKJi0SanUOBkTeeRU3EOn4aqrS8Aly5domvXrkiSxJgxY4iIiGD06NEoFApkWab2/Ak0MVFU7l6HXFeMTe9HcQ5VYzdiPJKF6a/WaDSQeXE3iXGRZF3ei0JRRLueTxMYrKZV28FIkvSLvo+b6gw1fJu/hm1Zn5NafhZbizJGtZ5JiE843vadGmVMQRAEQRCEX4MkSZn3fa8sy7/kXH6T+vbtK/84QL5JlmVq4k6iiYqlctM+MBqxHTMEZ3Uor+1cT3R09B3t27Vrx4IFC5g1axaurq4A6EuKKF+3DM3qhegLcrBo5YPT1Pk4TnkBC7cWZs21rOgqSQnRXDyxHG2NBvfWPQgMjqBj32moLG3v7wU0QJZlLmtOsD0zkviCdehlHb3cRjLB70X6eYxDKSkbZVxBEARBEITGIknSaVmW+97XvQ97gHw7fW4BmiVr0SxZh6GgmOOednztbOCbK8n8+D3Z2NgQGhqKWq2mZ8+eAMh6PVUHt1MWG0XNsQNIKkvsx0zBeXoE1j0GmDVnXV0VV06vIjEukpK8RKxsnOkyYBYBweE4e7Q3qy9z3KgrZE/OMnZlL+J6bQ4trH0Z57uA0d4v4GTp3mjjCoIgCIIg/JJEgNyAHp0D5NNnT2NhY2lSe1mrpXLTPsqiYqlNOE2WlcSGDs6sybxMWUX5Xe0HDRrEJ598wiOPPHLrmjb1MmWxUVRs/gpjVQVW3fviHKbGfuwzKKxtTJ67LMvkpSWQFB9F6rmNGI16fDuPJnBIBP5dxyIpGmfPsMGo53jxdrZnRnK+9CAqhRVDPKcw3u9FOjn1a5QxBUEQBEEQfikiQG6An8JTfsNlJl1nP0L3BUE4tXEz+d6685coi4qlInY71dVV7G3nSoy+hMTMtDvanTx5kr597/4cGCsrKN/6NZrYKLTXLqJwdsXp6dk4TQtH5e1v1nNUavK4cHQpF44spqo8H0e3NgQELaDrwNlY27ma1Zc5MisusDN7Id/kfkWNoZIOjn0Z7xfBUM9nsFSafzBREARBEAShsYkAuQE9OgXIHwX+gdTNichGGf+xXQmMCMb3sc4mr8AaysopX74RTfQqtNcyOO9izRovS7anJNGrVy9OnDhxR3uNRsPZs2cZOnQokiTV73U+cRhNbBSV32wBoxG7YeNwCovAdvAos1aCDQYdaec3kxgfRV5qHEqVNR17P0vgkAha+PQ2692Yo0pfzoHclezMXkhW5UUcVW485j2bEJ8FtLT1b7RxBUEQBEEQzCUC5Abc3INcmVtG8uIjXFhylOrCCpzaexAQHkTXWQOwcjbtAJxsNFK9L4GyyBiqd31LsWSkekRfBr3+CjZD+9/KOPHpp5/yyiuv0K1bN9RqNWFhYTg4OACgK8ihfM1iNGuXYCgpQuXfAadnF+D41CyUjs5mPdv13EQS46NIORWLTluFp/8jBASH06HnZJQqq4Y7uA+yLHOu9CA7sqI4XrQNZJn+LUII8Qmnl/sokSpOEARBEIQmJwLkBvz4kJ5Bqyd143kSI+PIP5qOhY2KjqF9CYwYgkeP1ib3q0vLQrNoDZovNmAsLcOyWwecwqdhHzqebv37kZKScqutg4MDM2fOJDw8nM6dOwNg1NZRuWcDmtgoas8eQ7KxxWFCGM6haqw6B5r1jHXVZVw6sYKkhGjKiq9i49CCbo/MofvgeTi4+JjVlzmKa7LZmb2QvTlfUKYtorVtR0J8wxnZegb2KvOCfUEQBEEQhF+KCJAb8HNZLIrPZpMYnUBK7Cn0NTpaDW5LYEQw7Sb1QGlpWi5jY00tFWt2oomKpe50MjX21vyvjQ3rUpOpqq6+q/2jjz5KREQEISEhtwqT1F44gyY2iortq5DrarHuG4xzqBr7UU8iWZp2uBDqV7izr3xDYnwk6Rd2ICHRNvAJAoLC8e44otFyKmuNdSQUbGB7ZiSXNcexVtoxwiuMEN9w2jiYF+wLgiAIgiA8KBEgN8CUNG+1N6q5tPw4SdEJaFKvY+vpSLc5j9B93mDsW5u2EirLMrUnzqOJjKFy/W4qtLXs7OjOyqo8rubm3NXex8eHBQsW8NJLL2FnZweAoayU8o1folm1EF12GkoPT5yemYfT1HlYtGhl1nOXl2SQlLCQi8eWUVtdikvLLgQGq+ncbzqWNo5m9WWOa5ozbMuK5Nv81WiNtXR3GcJ4XzWDWj6JhaJxKwQKgiAIgiCACJAbZGoeZKhfgc3cc4nEqHgyd19CUki0mxRIoDoYryHtTV6B1ReVUL50HZrFa9Bl5/FdC1tWu0nsuZKE0Wi81a5ly5ZkZWVh+aNVYtlopDpuD2UxkVTH7wGlEvtRk3AOi8C6b5BZK8F6bQ1Xz64jMT6SoqxTqKzs6dx/BoHBalw9u5jcj7kqtKXszf2SnVnRFNSk42rVirE+8xjjPRdXa/OCfUEQBEEQBHOIALkB5gTIt9OkXScpOoGLXx6n7kY1bgFeBIQH0SmsH5b2ph2Ak/V6qrYfpCwyhpqDx8lXwYaOLqzOvcr1shu8+eabvPvuu3fck5OTg7u7O9bW9SnUtFmpaGKjKd/4JcbyMiw7BeAcGoHDhFAUtnZmPVNB5nckxUeRcnoNRoMW7w7DCRgSQdvuE1AoG6fyuEE2cLp4D9uzojh1fTdKyYLBLScx3u9Fujk3XiltQRAEQRAeXiJAbsD9Bsg36Wu0XFl1mqSoeIrP5mDpaE2XmQMICA/CpVNLk/vRXrpWn1N55RZqKir4po0zj784j47zp6Ow+SGf8Lhx4zhx4gSzZ89mwYIF+Pv7A2CsqaZix2o0MZHUXTqHwsEJx0kzcZoWjmWbjmY9U01FMReOf0FywkIqbmRh7+xN98Hz6DZoLrYO5pXHNkdu1VV2ZS9iX86XVOrLaOMQSIivmhFeYVgrG6eUtiAIgiAIDx8RIDcgsHtv+VziaRSKB1uplGWZgmPpJEbFc239OYw6Az6jOhGoDsY/pDsKpWnpzYwVlZR/vRVNVCzai9dQuDrj9MJknOZPJcuopUOHDrdKW0uSREhICBEREYwcORKFQlG/1/nMUcpio6jcuwF0OmyDHsMpVI3dsHFISqXJz2Q06Em/sIOk+Giyr+xHobSkQ6/JBASr8fQf2Giru7X6Kg7lr2JHVjRpFeewt3BmZOuZjPdV42XXeKW0BUEQBEF4OIgAuQEuyo7ypLbLCFH7Mmpma+ydH/ygWHVhOReWHSN50REqc8pw8HWpz6k8+xFs3O1N6kOWZWoOn6AsMoaqrQfAaOTcwI78OfUUWUUFd7Xv0KED4eHhzJw5E2fn+oOD+uICNOuWUr5mMfrCXCy8/XGaOh+np2ejdHU365lKCy+TFB/N5e++QltbTgufPgQEhdOxz7NYWJpeHtscsixzoewIOzKjOFK4Eb2so6/744zzDaefx1iUkunBviAIgiAIwk0iQG5Ap7Y95HGei7l0rAwrWyXDQ1sxIcKPNoEOD9y3UW8gbWsSiZFx5B6+htLKgg7P9CYwIpiW/fxM7keXU4Bm0WrKl65DW3SdhFb2rHLUcejKhbva2traEhYWhlqtJjCwPoWarNNReWArmtgoak4cRrK0wn7c1PpDfQHmfW1o6yq58t3XJCZEUZp/AWtbV7oMfJ6AoAU4ubc1qy9zlNbmsztnCbuzl1BSl4enTRvG+sxntPdsHC1NLw8uCIIgCIIgAuQG3NyDfO2Mhh3R2RxelUddjZFuQS6Mj/Bl8KSWWKgevPpbyYV8kqLjubzyJLrKOlr09SXwxSF0mNILC2vTVq2NdVoqN+xBExVL7bGzZFgr2NDeibWZl9BUVNzR9plnnmHNmjV39VGXkowmNoryrV8jV1dhFdgf57AI7MdMRmFlfVf7e5Flmdxr35IYF0la0hZk2Yh/13EEBIfj13m0WeWxzWEw6jlatIVtmZ+TfCMOS4U1Q1s9S4hvOB2d7uvrXBAEQRCEh4wIkBvw40N6FaVa9i3PZefCbPJTq3FtZcXjc7wZO88HNy/TA8h70ZbXcOmr70hamMCNS4VYu9vRdfYjBCwIwtHP1eR+as9cQBMVS8Wq7VTV1rC7vSsx2mIuZGUAEB8fT1BQ0B33VFdXY2tbf9jNUFlOxaavKIuNQpd+BaWLO45T5uD07HxUXr5mPVNlWS7JRxaTfHQxNRVFOHm0JyAonC4DZmJt62JWX+bIqEhme1YkB/NiqDVU0clpABP8IgjynIylonFKaQuCIAiC0PyJALkB98piYTTKnNpdzPaoLE7vuY5CKTF4UktC1L50D3Z54ANqsiyTczCFxKh40rcmAeAf0o1AdTA+IzuZvAJrKC2j/MuNaBauQpuWxVk3a+I7tuC/62NRtfa81a6yspI2bdowYsQIIiIiCAqqz5csyzI1Rw9QFhtF1cFtANgNH49zWAQ2gx416zkNei2p5zeSGBdJfvpRLFQ2dOwbSuCQCDxa9zDj7ZinSqfhm7yVbM+MJLc6BSdLDx73nsNYn3m0sDEv2BcEQRAE4fdPBMgNMCXNW961KnYuzGbflzlUlulpE+hASLgPw0O9sLF/8PzAFVmlJC06wsVlx6gprsS5UwsCFgTRZeYArJxMOwAnGwxU74mjLCqW6j3x9cVDJo3COSIM66C+LFmyhPnz599qHxAQQEREBKGhobcq9enystCsXkT5uqUYblxH1aYTzqFqHJ58DqWDk1nPVJxzjsT4KFJOxaLX1dCq7WACgyNo12MSSgvTy2ObwygbOV9ykO1ZkZwo2g7AgBYTGO8XQU/XxiulLQiCIAhC89JsAmRJkuYB4YAOsAQWybIc/aM2bkAWkHTb5QRZlv/8/cfVwIuAHsgAZsuyXPhz45qTB7m22sDhVXlsj8oi7VwFdk4WjJrVmnELfPHuaF5Rjp9iqNNxdf05EiPjKDyRicrOkk5h/QhQB+Me4GVyP9rULDTRsZR/uRFjWTmWAZ14y7GKlUcO3dXWycmJWbNmER4eTocOHQAw1tVSuXs9mtgoas+fQLK1w3HidJxC1Vh17G7WM9VW3+DS8eUkJUSjuZ6KrUNLug2aS/fB87B3bm1WX+YorMlkd/ZidmcvpVx3HR+7zozzDWdk6xnYWTReKW1BEISmkl+Rz9SNU1n79Fo87T0bvuE35EHm3pyfW2g6zSJAliRJCfwTeFuW5UpJkloD14D2sizn3tauExApy/Kon+hjGLAS6CPLcrEkSW8DfWVZDvm5se+nUIgsy1w6Vsa2zzM5srEQvU6m92NujI/wo99YD5TKB1+pLDqdRWJkPCmrT2Oo0+M1pB2BEUNo+0QgSpVp6c2M1TVUrNpOWWQM2vOXSbFXstbfno2pF6iuqbmr/ejRo1Gr1YwdOxbl9/mSa5NO1edU3rEaWVuHzYBhOIWqsX90IpLK9JR4stFI5qU9JCVEk3FxF5KkoF3gkwQGR+DVfkijre5qDbXEFaxjR1YUVzTfYaO0Z4TXdMb7ReBn37VRxhQEQWgK4TvDWXx6MfP7zCdqXFRTT8csDzL35vzcQtNpFgHyXQNLkjVQCATIspx12/XBwCYgDbAAjgPvy7JcKEnSQuCGLMt/+76tC1AMuMmyrLnXWA9aSa+0oI49S7PZtSibkrw6WvhZExLuy2PPe+Pk/uBbCWpKqrj05XGSouMpzyjFrpUj3ecPptvcwdh5mrYSKssytUfPUBYVS+WGvZTratnRyZ2vK3JJzcu9q/3XX39NWFjYHdcMpdfRbPgCzZpF6HMyULbwwunZ+ThNmYOFh3k/sWuKU0k6soiLx7+grvoGbq26ExAUTqf+07G0Mi1P9P24UvYd27OiiCtYi85YRw/X4YzzDWdQiydQKhqnlLYgCMKvIb8in7aftaVWX4uNhQ1pL6c1m9XUB5l7c35uoWk11wB5EaCQZXnuj65bAXpZlg2SJNkB7wLDgL7AHmCdLMtf3Na+BBghy/L5H/UzF5gL4Ovr2yczM/OB56zXGTm+rYhtn2eS9O0NVFYKhk71ZHyEHx37mrd/96cYDUYyd18kMTKOrL2XUVgoaPd0TwLVwbQa3NbkFVh9QTGapevQLFqNLq+Q4y1tWeMKey8nIcsyrq6u5OTkYGPzw95nWZZv9S8bDFQd3okmNorqhH2gUmE/+mmcQ9VY9x5k1kqwTltNyunVJMVHUZxzFktrRzr3n0FgsBqXlp3Me0Fm0GivszdnGTuzFlFUm4m7tTdjfeYx2vsFXK3EP6yCIDQ/4TvD+eLsF2gNWiyVlrzQ64Vms5r6IHNvzs8tNK1mFyBLkvQ+0AN4SpZlbQNtlUA50BOIAlbJsrzito8XAo/Lsnz2Xn086AryT8lIrmBHdBYHVuZRW2WgU38nxkf4EjylFZZWD54fuOxqEUnRCVxcfgKtpga3QC8CI4bQaVofVHampTeTdToqtx5AExlDzbffkWMJGzu64BHcn79Hf35H20OHDvGXv/yFiIgIJk+ejLV1fbo7bXoKmlXRlG9agbFCg1WXnjiFqnEYPw2Fja3JzyPLMgUZx0mMi+TaufUYDTp8Oo0iMFiNf7dxKJSNs7prkA2cLN7JtszPOVvyDRaSimDPKYT4htPF+RFxqE8QhGbh9lXUm5rLauqDzL05P7fQ9JpVgCxJ0idAO+CZhoLj79tbABWAP/AhkCHL8rvff8yW+uC5lSzLxffqozEC5JuqNDq+WZnHzugssi9X4eRhyejZ9Yf6Wvg+eHlmXVUdV2JPkRSdwPXzuVg529Bl5gACwoNw7tDC5H7qklPQRK+ifOUW5KpqrPoH4hwRhv3kMSisrXjqqafYtGkTAO7u7syZM4f58+fj61ufQs1YXUXFtljKYiPRXklC4eiM41PP4zRtAZZ+7c16puqKIi4cXUrykUVUluXg4OJLQFA4XQc+j42Dh1l9mSOnKoUdWVHsz11Btb6cdo69GO8bwdBWU7FWmh7sC4Ig/NpuX0W9qbmspj7I3JvzcwtNr1kEyJIkKYBowAUIlWVZ//11JbCP+sN78ZIkTQBOyrKcL9Uv7/0D6CXL8hhJkoYDi4D+sixrJEl6FQiRZXnoz43dmAHyTbIsc/abEnZEZ3FiWxEAA8a3IETtS6+Rbr9ITuX8I2kkRsaTuvEcRr0R39GdCYwYgt+YriiUJuZU1lRQsXIzZVGx6K6ko3R3gbAQAhZ/eNehPoVCwYQJE1Cr1Tz66KO3cirXnoqnLCaKyv2bQK/HNvhxnMMisB06xqzqekaDnrTkbSTFRZJz9RAKpSUd+0wlIFiNp19/s96POWr0lRzKi2Vb1udkVl7AXuXC6NazGes7Hy/bdo02riAIwv3qtbgX5wrO3XW9p2dPzs675y9QfxMeZO7N+bmFptdcAuQQYDtwCjDc9qH3gc+AP8iyvFWSpPHA3wAVYAQSgddkWS79vp+XgOepTxWXB8yXZTn/58b+NQLk2xVl1bBzYRZ7v8hFU6zFp7Md4xb4MHJGa+ycTM8KcS9V+RqSlxzlwuIjVOWX49jGrT6n8vMDsXEzLRWdLMvUHDhKWWQMVdsPUSrr2dLFndjrGWQX3Z01r3PnzoSHhzNjxgwcHesPDuoL89CsW4pm7WIMRfmofNriNG0Bjk89j9LZ9IqBAKX5F0lMiObyd1+hq6ukhW9fAoMj6ND7GSxUD17d8KfIskzyjXi2Z0VypHATRtlAX/cxTPB7kT7uo1FIjVNKWxAEQRCExtcsAuSm9GsHyDdpaw3ErStgR3QWV05osLZT8uhzXoSE++Lf3eGB+zfoDKRtSSQxMo68uFSU1io6TetDQHgQLfqYXl1Ol5mLZvEaypeuo+56KfGt7Vltr+PwlQt3tXVyciIrK+tWkAwga7VU7t9MWUwktacTkKyscRg/DaewCKy79jLrmbQ15Vw++TWJ8VHcKLyEtZ0bXR95gYCgBTi6+pnVlzmu1+ayJ3spu3IWc6OuAE+btoT4hvOY9/M4qBqvlLYgCIIgCI1DBMgNaKoA+XZXT2vY9nkm364pQFdnJHCYKyFqXx6Z2AIL1YOvVF5PyiMpKp4rMSfRVWnxHOhPgDqYDpN7orQybdXaWFtH5bpdlEXGUHcyiTQbBevbO7Eu7QIVVVUATJw4kS1bttyzj7rLiZTFRlGxLQa5phrrXo/gFBaB/einUFiadrgQvi/TnXKQpIRo0hLrx/PvFkLgkAh8Oj5q1lYOc+iMWo4UbmJnVjTJN+KxUtgwtNWzjPeLoL2jecG+IAiCIAhNRwTIDfgtBMg3aa5r2ftFDjsXZlGUWYublxVj5/vw+BwfXD1NDyDvpU5Tw6UVJ0iKTqAspQgbD3u6zR1E97mDcPA1fdtD7clEyqJXUbl6BxV1tezu4MbXNQV8tnQxox5//I62//73v6murmbOnDl4etafKjaUl1G+aQWaVdHoMq6idGuB45Q5OD07H5Wnt1nPVFGaRfLRxVw4toyaiiKcW3QkICicLgNmYmXz4On17iW1/Bw7sqI5lB9LnaGars6DGOcbTrDnZFSKximlLQiCIAjCL0MEyA34LQXINxkMMid3FbM9MpMz+0qwUEl8lTkU11a/zH5b2Wgk+0AKiZFxpG+/gCRBm4kBBEYMwXt4B5MPDRqul6L5YgOahavRZeZg4dUSp/nP4jRnChaeHtTW1uLt7U1JSQkqlYqnn34atVrNoEH1+ZJlo5HqI/vRxERSdXgnKBTYPToR51A1NgOHm3V40aCr4+q59STFR1GQcRyVpR2d+oUREKzG3Svgfl9Vgyp0N9ifs5yd2QvJq76Gi2VLHveZwxifeXhYmxfsC4IgCILw6xABcgN+iwHy7XJSqji7/zrj1Y2zx7Y8o4SkRUe4uOwYtSVVuHRpSaA6mM7P9cfSwbSAXDYYqNr1LZrIGKr3JdQXD3l6NHs6uPL8u2/e1b5nz56o1WqmTZuGrW19CjVddjqaNYvQrP8CY1kJlu274hSqxnHidBT25u3JLso6TWJ8FClnVmPQ1dK6/VACgsJp2+NJlMoHPwj5U4yykTPX97E9K5KTxfWltAe1eJIQ33ACXYeJnMrCQyW/Ip+pG6ey9um1Ih+tGc7ln2PYV8OImxVHYMvApp6OIPyuiQC5Ab/1APnXoq/VcXXtGRIj4yk6lYXK3orOz/UjUB2Ma9dWJvejTUmvz6m8YhO1Gg0H/JxYZVHJidSUu9o6Ozvz/PPPEx4eTrt29SnUjHW1VO5cQ1lMJHXJp1HYOeDwxHM4h6qxbN/FrGeqqSrh0vEvSYqPprw0AzvHVnQfPJ9ug+Zg52T6M5mroDqdHVnR7Mv9kgpdKX723QjxVTPCKwxbiwc/gCkIv3XhO8NZfHox8/vMF/lozdA9ujsXii/QzaMbyeHJTT0dQfhdEwFyA0SAfLeC7zJJioonZc1pjFoD3sM7EBAxhLYTuqOwUJrUh7GyiorY7ZRFxaJNusIlBxXr/GzZdC2ZmtraO9pKksSLL77Ip59+euuaLMvUJX5Xn1N511pknRabgSNwDovAbsR4JAvTq+sZjQYyL+0hMS6SrEt7UCgsaNfzaQKD1bRqO7jRVnfrDDV8m7+GbVmfk1p+FhulA495z2KczwJ87Ds3ypiC0NRur24mqpqZ7lz+OXot+eGw7/n558UqsiA0IhEgN0AEyPdWU1zBhWXHSF50hIqsG9h7O9N93mC6zXkE25aODXdAfaBbG3+KsqgYKjftR6PXsr2zG1+XZZNe8EOK6ujoaBYsWPCTfehLiylftwzN6oXo87Ox8PTG6dkFOE55AQs30ysGApQVXSUpYSEXT3yJtkaDm1cggUMi6NRnGior0/JEm0uWZa5ovmN7ViRx+WvRyzp6uj3KBN8X6e8xDqWicUppC0JTuL26mahqZrqbq8c3iVVkQWhcIkBugAiQG2Y0GMnYkUxiVDzZ+6+gsFTSYXIvAsKD8HykjckrsPq8QjRL1qJZsg5dfiHHPO1Y5Wzku7xMsnNycHD4YfuBLMu88847TJw4kV696ldVZL2eqkM7KIuNouboN0gqS+zHTMEpTI11jwFmrQTr6qq4cnoVSfFRXM89j6WNE10HPE9AcDjOHuaVxzbHjbpC9uZ8wc7shVyvzcHD2odxPgsY7fMCzpaNV0pbEH4Nt68e3yRWkRv249Xjm8QqsiA0HhEgN0AEyHeqrTZgbXvvbRQ3rhSSGBXP5a++Q1tei0dvbwLVwXSY2geVrWnpzWSdjspN+yiLjKE24TQV1ipaT5uIU0QY1r26AnD06FEGDx4MwKBBg1Cr1Tz99NNYWtaPoU29TNmqaCo2rcBYVYFV9z44hapxGDcVhbWNyc8ryzL5aUdIjI8i9dwGjEY9vp1HEzgkAv+uYxstp7LBqOd48XZ2ZEVxruQAFpIlQ1pNYYLvi3RybrxS2oLQmG5fPb5JrCI37MerxzeJVeSmN2zFMAZ6D+SjkR/d9bH8iny6L+zOiokrGN9p/H2PMWfbHDI0Geyfvv+uj73YpD9JAAAgAElEQVS8+2Wu3bjGpimb6BjZkdcGvYa6v/q+x5qyfgoA6yava7Btnb7uFxnzt+pBAmRRS/chs+zVy/xvdhJ/HHSchI0FP9nGpVNLhn72NLNy32PYwikYtQYOzF7Ncu+3SHh1C5q06w2OI6lUODwzDp/41fie30br6U9SsWYn2b2fIHvwVMpXbSfq889vtT969CihoaH4+Pjw5ptvkpOTg2W7zrR48zPaxOfi8XY0cl0tRX99nvQh3hT/81V02ekmPbMkSXi1C+LxmauZ+U4WA8a+S0l+EjuWjGfle+05/c3H1FSVmPYCzaBUWDC45ZN82O8bFgVdYIzPXI4VbuWV4wN46Whf9uesQGuobbgjQfgNOZZz7I7gGEBr0HI052gTzah5SL2RatZ14bfB2sKaXp69cLN1e6B+wgLDOJR+iMLKwjuuG2Uj6y+uJzQgFAuFBYEtA/Fy8HqgsTq6daSTWyeT2v5SY/4eiRXkh4ROa2TzfzLYtTib9/f0oTCzlpi/X2Xq6+0YEPLze3xlWSYv7hqJUfGkbkpENsr4jelCYMQQ/EZ3NnkF1lBWTvmKTWiiV6G7msF5F0vWeFmxLSUJnU53R1ulUskTTzyBWq1m2LD6FGqyLFNz4jCa2Cgqv9kCRiN2w8bhFKrGNugxs1aCDQYdaec3kxgfRV5qHEqVNR17P0tgsJoWvn1M7sdc1foKDuSuZEd2NFmVF3FUufGY9/OM81mAp22bRhtXEARB+Gk/t4L8S5FlGf9P/Xl10KtE9I+4df1g+kEmrJ5A0atF2KpsG238h5XYYtEAESDDmf3X2bkwm0ef82LQEy0B2PtlDie2F/HW5t4m91OZW0bykqNcWHKU6oJynNq5ExAeRJdZA7F2Me2bWzYaqd5/BE1ULFU7DnFdMrKlsxsxRWnkXS++q33Xrl1ZvHgxQUFBt67pCnIoX7sEzdolGK4XovLvUH+ob9JMlE4uJj8PwPW8JJLio7hyMgadtgpP/4EEBKvp0HMyStWDVzf8KbIsc770EDuyojlWtAVZNjKgxXhCfMLp5T4KhSR+uSMIgvBruBkgW1tYs/XKVh5t8ygxiTH4O/uT8HwCqvdUHJpxiGH+wziSdYQ/7P0DOeU5SJLEY+0e47+j/4uztXOD4/z1m78SlxXHkeeP3Lo2Z9scag21fP3k1wB4/8eb90e8z8yeM3n78Nt3zef4C8fZcHED73z7DgWVBbSyb8W8PvOI2B1B+svp+Dv7E7YpDAuFBSueWMHhjMMM/2o4u0N389aht0gvS6eVfSuix0UT5Bt015gA265s46OEj0i7kYaFwoIRbUawbMIyLhZf5L249ziZexKdUYeHrQefjfmMYf7DfvHPyS9FbLEQfpZOa+T0nuu4tbZi4IQfVosvHy/DtVV9AGg0mvaDkn1rZwa+M5aZmW8zevUMbD0dSfjTFpa3fpMDL6yi+FxOg31ICgV2o4Px2rYI/9Rv6PCnOcwtMPLNdScWevciqMOduZAvXrxIy5Yt77im8vTG7eV3aXM4i5b/jkXp6sH1D/9IenBrCt+YS92l8yY9D4C7VwDDn1nErPdyCZ70P2qrS9n/9XSW/92HYztep6I0y+S+TCVJEj3dRvBGrw2sGJrBM23/xuWy47xx+nHmxndmc8b/qNSV/eLjCoIgCPd2ruAcDpYO5P4xl0MzDt318Zf2vMSjbR4l7095pESk0KdVHzS1GpP6nt5jOseyj5Glqf9/itagZeOljYQFhJk8n5O5J3l247N8+OiHFL9azJapW1h2dlmDY78f9z4bpmyg+NViJnaayIwtM36y3YaLG5i+eTp/CfoLuX/MJeOVDEa2HYnBaCC5KJnJXSdzJeIK+X/KZ07vOczbMc+kZ2+ORID8EJCNMmnnKwgc5opCUZ8FoiC9mtK8Ojr2c0KWZRQK6VaQXJJXS3LCDQ6tyrtnn0pLCzpO7cPTCa8w9exrdArrR8qq06zp9TEbBv+XlNWnMWj1Dc5N1cYH949fo01OHK2X/5Oxnv58eVXPLttOzOzeDztbWx5//HE6dOhwx30FBQVs3rwZg0KB4/hp+Kw5gs+WMziETKNiWwxZE3uS/WwwFTvWIGu19xj9TlY2TvQc9jJhf7vExPB9ePo/wun9H3F811sm3X+/PKy9mdHxfVYOy+a1wFgcVG4sufwHwg635vML80mvSGzU8QVBEIR6rR1a89bQt1AqlNio7j4MPqD1AA5mHORU3insLO2I6B+Bn3N9Fdx+S/vh+YnnXX9u6urRlR6ePViTvAaAvdf2Yqm0ZGTbkSbPZ/m55Tze/nFCOoYA0NalLZ+M+qTB51o4biG+Tr4ATO42mbQbaZTWlN7V7o2Db/DHgX9kQqcJKBVKLBQWPNfjOWxUNoQFhjGx00RO559m5fmVXCm5wrXSaw2O3VyJAPkhUKXRk3mhkr5jfkgx9u2afBxcVfh2tb+VOk2hqN/nu+q9VJLjSvlXWCIndhQ12L9HT29GLJnKrNz3CPrPk1QXVrB32les8P07x9/aSWVuwyuhChtrHGdOwvfkJnyOr6fXU+N5PaWK+GpP3tBYU7l5H7L+h4B78eLFTJo0ibZt2/LBBx9QVFSEdddetPxgGW3ic3H/v08wFOVR8MdnSR/uR8lnb6MvvHfAfztJocC38yhC5m7lub+nMWDM2ybd96BUCkuGe03jv48c4/NBZxjqOZVvcr8i/EgPXj0xhLj8deiMpgX7gtDY8ivyGbpiKAWVP33Y97d8/4OO3ZSacu4Pw9jejt4/m040amwU4X3Dmb9jPn2W9GFt8tpbHzs55yQFfy6468/twgLCbgXIq5NXM7X7VJSKe2eV+vF8MsoyaO9yZ5rSdq7tGnyu7i263/rvm3udy+vK72qXdiPtnmkH/3PsP3T4vAOrklZRUl1CJ7dOGGVjg2Pfr6b+PhUB8kPApaUVQU+1ZN1HadTVGDj7zXUOxuQTONyVzgPu3DclSRIvLuyGS0srPHyt7zjAp9f9/DeCtYstvf4wnOkpbzB+13xa9PXl5Pv7WOH3Nrsnf0nO4auYsufdekAPPFf+C//sOPz+8We8cm+QPymCjLaPUvrBQqpz8lm0aBEA2dnZvP766/j4+DB9+nROnDiBwtEZl9l/wm//VbyW7MSqa29Ko94lfbgf+S9PoeZknEnzAHB09cPRzd+ktr+k9o69+EPAF8QMy+WFTp9wvTaHD88/w4xv/Yi5+jaltfkNdyIIjei9uPdIyErgvW/fa3b3P+jYTakp5/6wjn07SZKY0XMGp+aeInpsNOG7wtlyeYvJ908LmEZiYSJn88+y7co2wgLvvb3ip3jYeZBTcedWxryKhhd/TK0h0NqxNVdKrtx1Pf1GOn/e92d2he4ielw0f3jkD/Rr3c+0Sd+npv6ciwD5ITH5L22pvKHjj48cZ0d0NhNf9sOvmz2VZXdmjzAaZfQ6I2s/TOPpV3/IqqCtM3JoVT6z2n7LvuU/v89YUijwH9OV8Tvm8dy1N+n5h2FkH0hh8/DPWR34EUkL49FW1jU4Z4sWbrj+bQH+qd/QanMUqk5tKHn9v6S0Hc4Udz88XH44jKfVaomJiWHgwIH069ePFStWUFtXh92wsbReuhO//Vdxfu5lqo9+Q07oULLGB1K2ehHGqkoz3+Svy8HSlafa/IllQ67yTp+dtHPoRWzqOzz3rS8fnnuG5BsJJgf7gvBLya/IZ/m55RhlI8vPLTd7hacp73/QsZtSU879YR37dmW1Zfz90N/J1mQD4O/sj6XS0uQ9yACtHFoxvM1wXtj+At6O3vT1Mu/82NRuU9l6eSv7UvcBUFhZyOsHXzerj5/zt6C/8fGRj9l7bS9G2YjBaGBV0iqKqoqQkW+lqUstTeXlPS//YuP+2G/hcy4C5IeEh7c14Z935R/7+vLXtT0YEOLBX0ee5NyBO/P/KhQSB77Oo67awHi1363r105ruJhwg6dfa0NuShV/GnycgzEN/9Tq1NadoH89wfO57/Lol9NQqJQcDl/P8tZvEvfyRm5cKWywD8nCAvsnRuG9fwV+l3bjNW8aL2XWceiGK//170PftnfuTz59+jSzZs3C29ub1157jerqaix92+Hxl09oE5dDiw++QLJQUfz3BaQHt6b4H6+gTU8x8U02DaWkpL/HWN7ru4tlwSlM9HuJM9f38eqJYMKP9GBn1iJq9VVNPU3hIfFe3Hu3frVqkA1mr/A05f0POnZTasq5P6xj387GwoYafQ0jVo6g5Sct6be0HzN7zDR7FXh64HTO5J8hNCDU7DmM6TCG6HHRvLLnFTw/8WRM7Bgmd50MgITplWbvZU6fOXw25jPeOPQGnp944vs/X/al7iOgZQD/GPEPZmyZQYt/tWD65umE9w1/4PHu5bfwORdp3h5SVeV6di/OZuTM1jh7/FAdz6A3Mq9rAuNf9GPii34Y9EYkhcSFhBt8OieZR55oyTN/bUtZYR3xGwoZPKklvl3sTR5XlmUKjmeQGBnHtfXnMOoM+IzsRIA6mDYh3VBY3Hsv1u2MFZWUf70VTVQs2ovXuOCoYq2vDZtTkqnT/rA63a5dO1JSUlD8KEeyLMvUnj2GJjaKij3rQafDdvAonMIisBs2Dklp2jx+aTptNSpL09Ll1eqrOJS/ih1Z0aRVnMPOwomRrWcS4huOt13HRp6p8LB60FLTTXl/cy6T3ZRzf1jHbi5O5Z2i39J+FP65kBZ2P1/XoDn4JT/nIs2bYDY7RwuefrXNreD45g9KB77OQ1trZOKL9avHCqWEQiERMMSVJZeCcfe25t0nzqDXyTz7ejt8u9hTU6knbl0+36zMbXBcSZJo9UgbRsfOYFb2Owx8fxw3Lhey68llfNX2XU59uI+a4ooG+1E42OMcHopv8k5aH/qaAaNG8O6lKr7VevN65/74taz/JlKr1XcFx5cuXaKsrAyb3oPw/HcsbQ5n4fbKe2ivXSR/wUQyRrajdMk/MZQ2XDHwl5Sw5VUOrJrN+v8M4tq5jQ22t7awY4zPHCIHneFfA+Lp5zGWnVnRzInvxOsnR3O8aBsG2fArzFx4mNy+snOTOSs8TXn/g47dlJpy7g/r2M3F2fyzOFs742Hr0XDjZuC38jkXAbIAcKtS3bqP0hgzz+fWdaOhPnDW64woFBITX/SjW5AL+76s34d8ak8x/5udzJ6lORzfVkRE76Oc2nN3sY+fYtvSkX6vj2ZG+t8Zu2k2zh08OPa3HXzp/Rb7nvuawpOZJs3bdtgAWm34HP+MQ7R/I4LnSxXsKbRnaauePFGtwnDjzv1hs2fPxtvbm7lz53L+/HksPDxxDX8D/0MZeH6+AZV3G0o++QvpQ7wp+L+Z1CaeNPU13heDXsup/R+Rem4DA8a8zYAxb3P24CekJ+8w6X5JkujuEsT/9VjFV8OyCGv/DpmVybxzZiKz49qzPu1jNNpfN9gXfr8etNR0U97fnMtkN+XcH9axf4s0tRpiEmNuvZPzBef5IOEDZvaYafJBvN+638rn/FfdYiFJ0jwgHNABlsAiWZajf9TGAXgDmABUABLwZ1mWv/3+4zeA249Ypsqy/LMbecQWC9OVl2hxdPthy8Xx7UV0D3bB3lmFts6IpZWCw6vz2PhJBp+fHsSfgo7Td4wHj81qjZuXNRv/nU5pXh1z/t35vsYvvZhPYnQCl7/6Dl1lHS36+hKoDqbD1N5YWKtM6kPWaqnYsBdNZAy1x84i2VjjEDYBZ3UoFww19OlzZynpoKAg1Go1kyZNwtKy/tnrrl1EExNJ+davkasqsQrsj3OoGvuxU1BYWd/Xs91L1uX9JCUspHP/52gX+AQAF499SfqF7Yx7YfN99ak36jhWtJXtmZEk3fgWlcKKYa2eJcRXTUen+/ptkyAIgtDEyuvKmbZxGifzTqI1aHGwdGBq96m8P+J9LJWWDXfwkGkWpaYlSVIC/wTelmW5UpKk1sA1oL0sy7m3tesL9AaWybJslCTpKeBDWZY7SpJkBSTJsmzWBksRIJtHlmUkSUJbZ2Trpxlcz6nl2Tfb4+xhSVmxlrfGnmLIM61o1daG9f9M5/9W96BVW1tkWebcgRLWfpDG/63ugUvL+y/TrC2v4dLKkyQvTKD0YgHWbnZ0nT2QgAVBOPq7mdxP7ZkLaKJjqVi1A7mmlvMBPrxbnk5SZvpdbT09PZk3bx5z587Fy8sLAENlORWbV1IWG4Uu7TJKF3ccJ7+A07PzUbX2u6sPcxn0Wo5u/ytGg5Yhkz5F+n47yME1c1EoLBg2JRqj0YBCoaSmqoS8a3G06/GkWWNkVCSzIyuaA3krqTVU0cmpPxP8XiSo5dNYKn/ZYF8QBEEQfiuaRYB818CSZA0UAgGyLN+zlq8kSYOAGFmW234fVF/4/o8NcB54T5bltJ+4by4wF8DX17dPZmbDv64X7lZVrmftB6mcP1hKm0AHSnJrUVkreGtzb94cc4p+4zwYN98HpUV9YLfuozQSNhTw2alBv8j4siyTc+gqSVHxpG1NAlnGP6QbAeHB+I7qdCugbIihtIzy5RvRRK9Cm5bFOVdr1rRSsf1KEnr9nRX/LCwsePLJJ3n55ZcZPHjwrXnUHDtIWWwUVQe2AmA3PASnsAhsB428719t6XW1bF8cQkDQAtr3fAoATUk6cRtepF2Pp+gy4Idfm9VffwmjQUeXgbPo2PsZs8aq0pfzTe5X7MiKIqfqCo4qd8b4zGGsz3xa2Pje1/wFQRAE4bequQbIiwCFLMtzf6aNHRAH/EeW5VhJkiy+v0crSZIl8CLwEtBdluV7nuwSK8gPrrJMx6ndxfh1d6CFnw0qKwUfTzvP0KmtCJ7seWvV+Rn3A8z7XxdGhHlhNMq3Slv/Eiqyb5C8+AgXlh6jpqgC544tCFgwmC4zB2DlbFrmB9lopHpvPGWRMVTvjqNIYWRLZzdiClIpKLlzn+78+fNZuHDhXX3o8rLQrFlM+bqlGEqLUbXphHNoOA5PzkDp4GTWM1WXF7L6454891bqrewVp/Z9SGnhJQKD1Xj6D7jrnrzUBBLjo9DWaujQeypd+j936/2b9A5kmXMlB9ieFcWJom0A9G8RwgS/l+jpOuJ3s49NEARBeLg1uwBZkqT3gR7AU7Is/2TtXEmSbICtwCFZlj/8mb6uABGyLO+/VxsRIDeOT+ckEzDMlRGhXhgMMhs+TmP3khxWpA9t1HENdTqubThHYlQ8BccysLC1pPP0fgSog3EP8DK5H21qFproWMq/3EhdmYbDPo7EWldz9OplAJKSkujevfsd9xQXF+PhUX9S2Kito3L3ejQxkdSeP4Fka4fjxOk4haqx6tj9rvHu5fD6CKxtXek76q/kpR8hfuPL9BrxZ7oOnHVHO6PRgIR0a9U8fvOfuHxiBWFvXMHG3t3k8W5XWJPJ7uzF7M5eSrnuOj52nRnnG87I1jOws3C8rz4FQRAE4begWQXIkiR9ArQDnvmZ4NgB2AbslmX54wb6uwqEybJ84l5tRIDcOI5vK2Llm1cJHOaKrs7I1VMaZn7Ykd6j3M1a0XwQRWeySYyMI2X1GQy1OryGtCNQHUzbJ3ugVJmYU7m6horVO9BExlB37hJX7ZR818ufvy2LwrJT21vtrl+/jo+PD0OGDEGtVjNu3DiU3+dLrk06RVlsFJU7ViNr67DpPxSnUDX2I59AUv384cLKGzmcPvBP8lLjcXRri1+Xx3H37omLR0esbJ3val9dUcS36yOwcWhBux6T8Ok4ggvHvuDUvn/Qb/SbdwXWptAaaokrWMeOrGiuaE5go7RnuFcYE3wj8HPoZnZ/giD8tPyKfKZunMrap9c2SR7fph5faF6a+9dLswiQJUlSANGACxAqy7L+++tKYB/1h/fiJUlyAXYDq2VZ/vRHfTwKZMmyfPX7v8+nPitG75v9/RQRIDee2io9e7/IQWWloMcIN1p3sGuSedSUVHFp+XGSohMoTy/BrpUj3eYNpvvcQdi1Mm3bgyzL1B47S1lkDJUb9tYXDxk1GKeIMOzGDePjTz7hL3/5y632fn5+LFiwgNmzZ+PuXr+Ca7hRgmbDF2hWL0Sfk4GyhRdOU+fh9MxcLDx+/h+X6ooirGxdqKksJub9zowMXU77nk8hG423Vo1zU+M5e+Bf2Lv4EjTxX1hY2lCQfpwLx5bSwrcfFaWZ5KXG0T1oAZ37mVfd6aYrmpPszIrmcP5qdMY6Al2HEeIbziMtnsBCYVomEUEQflr4znAWn17M/D7ziRoX9dCNLzQvzf3rpbkEyCHAduAUcHv1gveBz4A/yLK89fsV5vlA8o+6GAt0Bj4AHKlPFZdJfQq4ex7yAxEgP0yMBiOZuy+SGBVP1p5LKCwUtJ3Ugx4vDqHV4LYmr2rrC4opX7YezaLV6HMLsfBrzfutZJafiOPH3zNWVlZMnToVtVpNv379AJANBqq+3YUmNorq+L2gUmH/2FM4h6qx7jP4Z+ehrSkn+ehiOvefga3DD1WRTu//J3lp8fh1HUtgcH2JT4NBR0H6MQ6umUPbgCfoO+qvVFcUcu3cBtr1mISrZxdzX+EtGu119uYsY1f2YgprMnC39maM91we95mDq1XzW0kQhKZ2e4WwpqgG19TjC83L7+HrpVkEyE1JBMgPp7JrxSQtTODSl8epK6vBLdCLQHUwnUL7orIzLQWdrNdTufUAmsgYag6fINcSNnZwYXVOCiWasrva9+/fH7VazZQpU7C2rk+hps24imZVNOUbl2Os0GDZuQfOoWocxk9DYdvwivv13ESSjy6hMPMEI6ctx83r7v3NstFIYnwUqec3MvTpyFtttHWVZF7YhV5fS5f+z5n0zD9mkA2cLN7JtsxIzpbsx0JSEeQ5mRDfcLo6DxKH+gTBROE7w/ni7BdoDVoslZa80OuFX3VVrqnHF5qX38PXiwiQGyAC5IebrqqOK6tOkxQdz/VzuVg62dBlZn8C1cE4dzC9bn3dhatoomIp/3ortZUV7GvjTCwazqRfu6vtli1bmDhx4h3XjNVVVGyLpSw2Cu2VRBSOzjg+9TxO0xZg6df+3vOvqyI9eTvuXoG4tup6a8uF0aBHobTAYNChVNZvfTi24w302mqCJ/2HzIt7uHhiOXXVpVhaO1FeksYjIR/g1/Vxk5/5x3KrrrI9K5L9uSuo1pfT1qEn433VDPOahrXStEwigvAwun017qZfc1WuqccXmpffy9eLCJAbIAJkAer3GOcfSSMpOoFrG85h1BnwHd2ZQHUwfmO7oVCamFO5vJKKlZspi4pFdzmNZCcVa3xs2JqSTJ22Dh8fH9LS0rCwsLh1j9FoRJKkWyW9a08l1B/q27cR9Hpsgx/HOSwC2yGPIylNO1yYnrQdr3bBWNk6Y9DVoVRZkXJ6NWcOfMLU106z4X9B+HUZQ5eBs7B38uLMwX9Tpckj+Ml/39f7u12tvoqD+bFsz/ycjMpk7C2cecx7NuN8F+Bl2+6B+xeE35vbV+Nu+jVX5Zp6fKF5+b18vTxIgGxaRCAIvwHVFXqqNLr7vl+SJLyC2jF61QxmZr3DgHfGUJKUz44JS/m6/buc/vgbakqqGuxH6WiPc8R0/C7upvX+5QwYPpT3L1byrc6bv3YZwKuTpt7KbnHT5s2b6dKlC59//jnl5eXY9Aum1f/W0OZQJq4vvk3dlfPkzQshY1QHbiz7F4YbJT87B4OujtLCSxzf9RY1FcUoVVbUVBRz9tB/6NjnWa6d34TRoKNjn2exd/JClmXcW/fges5ZqssL7/sd3mRtYcdYn7lED07k4/7f0tv9MbZk/o/Zce1589QYvivehVE2PvA4gvB7cSzn2B3BBoDWoOVoztGHYnyheRFfL2IFWWhGNv47nZi/X2PEdC/Gq33x7+7wwH0adAbStiSSFBVP7rfXUFqr6PhsbwLCg2nZ1/TqcrqsPDSLVlO+bD2G4lJUndrgHB6Kw4wnUTo5MGLECA4dOgSAnZ0dzz33HGq1mm7d6lOoyTodlfs3UxYTSe2peCQraxxCnsUpLALrbr1/ckxtTTkn939ATspB3L0CqdTkYqGyZtwLm9m6cAz+3cYRMHg+CmX9Svap/R+Rem4Dz7zaON8L12tz2ZO9lN05Syity8fTpi3jfBcw2ns2DiqXRhlTEARBEO5FbLFogAiQfx/SEyvY/N8MDq/OR1dnJGCoC//P3n2HR1mljR//PjOTSjqQhJQJvSYRpJcgqCAlgAUUBMRCzYT13V333Xfdorv+3L7urmQCSFNpgmAhoQsCoReBhN4z6QkpkzqZdn5/BBCkTTKEED2f6+K6nJnznHOeZyLcHM6571G6CPo+G4jGxfl/DCk8kU1qQgpnlx3CUmEmqHcE0boY2o7rhsbdsfRm9moz5as3YNQvx3TgOEoTTyxjh9Bn7TxKy8tvaz9o0CB0Oh1jxozB5Vq+5OqzaZQs11P29VJEVSXuXfvU5FQePg6V6+2HC6srS0g/vZGAFpH4+Eeg1rix+dOXaff4eNp1G3cjJ/WC3zQj5vn/0LHnpFtSxz1oFruZvXlfkmzQc6I4BTeVB0+0mMCoiHja+nSrlzElSZIk6YdkgHwfMkD+cSktNLN5USbr52aQd6WKpiFujJgZzrBp4QQEO5ad4l6qjVWc+eQgqfoUSs7l496sCZHT+xM5ox/e2gCH+zEdTsOYuIKyFUmUV5vY2C6ApaZ8Tmek39Y2NDSUGTNmMG3aNIKDaw5A2EpLKP3yE4wrErFcPoe6aSA+46biO2EmLi3C7zn2tpXTCGs7iA49J2K32/jum79zcu9HTHn3cu0ehpMulR4n2ZDI9pxlVNsq6ezXj5HaOGKCx+Gicn2oc5EkSZJ+WmSAfB8yQP5xstkEhzYUkKw3cGTzVdQahQFjgxgVH0Hnfn5Opx8TdjsZ286Rqk/hSlJNWu5Wo6OIjo8h7Mn2DvdvKyzGuGgNxrkrsVzJ4EhTd8l27RcAACAASURBVD4L0rD+bBo2m+2Wtj4+PuTk5ODp+X1GCGG3U7lnK8bleiq+TQZFoclTY/CbFI9Hn8F3nMeltHXsX/97wtoNwmatJt9wmL6j/oK245CHVuXwZuWWErZmLSHZkEh25QX8XYN4JmwqI8Jn0Nzj3sG+JEmSJNWFDJDvQwbIP36Z5yrYMM/AlsVZVBittH7Mm1idlsETQ3D3dCwrxL2UphdxYt5uTi7Yh6mwAv+OQUTpYuj0Sk9cfTwc6kPYbFRs2IlRv5zKzSnkauCLDgGsyLlAflHNobzXXnuNxYsX37UPS+YVjCvnYvx8EfaSQlzbdsb35Ti8n52M2svn1rbVFZzavwi1xo2wdk/iF9iu7g/gAbELO0evbmWdYQ6HCjagKCr6BT5HrDaO6IBBMqeyJEmS9MDIAPk+ZID802GqsLJ9eQ7JegOXU8vw8tPw9KuhjNJpCWnrfBlsq8nC+dVHSU3YRf4hAy5ebnSc3JPo+BgCOrdwuB/zucsY566kdMlaTMZStml9WOlSwYcfL6LngP63tP31r3+N1Wpl1qxZtG1bky/ZXm2ifP0qSpYlUH3iMEoTL3yenYLvxDjc2nZ2+j4fhrzKKyRnJLI5cxFlliIivLoQq43jyZDJeGqcP4ApSXeTU5bD+LXjWTV2VZ1yujpzfUOO7ayGHFuqm5/6d+ZMgIwQ4kf/q3v37kL6abHb7SJtV6H4y/ijYqRmkxiubBS/G3ZI7E/KEzab/YGMkXvwitgyZanQu/1cfMhs8cXgD8X5NUeFzWJ1uA9beYUomb9SXImOFedoJy74dRf5v/izqL6QLoQQori4WHh6egpAAGL48OEiOTlZWK3fj1F17IDIeWuyON/ZVZxrh8iY/KQo27RW2C2WB3Kf9c1krRRbMpaI+D2Pi2EbEc9t8Rb6k/HCUHa6oacm/UjNSp4lVH9UibjkuId+fUOO7ayGHFuqm5/6dwYcFnWMHeUKsvSjV5RjYsP8DDYtyKQwu5rg1h6MnKll6Ouh+DR1/qBY1dVyTi7cx4l5eyhLL6JJqC+RM/oTOb0fnkE+9++Amr+omnYfpkS/nPK1W2qKhwyLYW0bP97Uf3Bb+1atWhEXF8frr79OQEDNwUFrUQGlny/CuHIu1mwDmuAwfCfMxGfcVDTNgpy+z/omhOCc8RBJhgR25qzCKsx0bfoUo7Tx9G4ei1qluX8nknQfN1cIq0tlMGeub8ixndWQY0t1I78z51aQ1e++++4Dns6j56OPPnp3+vTpDT0NqYF4eGuIHtSU0T+LoGWkF5lnK9i8MJN1H6aTe7mSZmHuNA1xr3P/Lp6uhAxoQ/TsgQT1CKf0ciGnFu3n+H93UnwmD89gH7zC731oUFEUXCJC8R47DN+pY1H5eFGxfiettn9H96AwqrRBXCrMv9G+pKSErVu38uGHH3L58mXCw8MJbd0Wjx4D8Js0G7cu3bFkXKL084WUfPpfLJfOoA4MQRMc9sju81UUhWbuofQLeo4R4TPwdgngyNXNbMz8iC1ZSzDbTIR5dcRd7fxWGemn69ff/Jrvcr7DJmyoFBXl1eWMbD/yoVzfkGM7qyHHlupGfmfwxz/+Mefdd9/9qC7XyhVk6SfpcloZSQnpfLs8B1OFjU59/YjVaRkwNhhXN+fzAxefyydNn8Lpjw9gLjXRvFsYUboY2k/ojounY6vWwmKh/MutlCQsw5RymAxXhTXt/fjMcIbi0tLb2s+aNYvExMRb3jNfPEPJikTKvvwEe3kpbl0ex3eiDu/YCajcHTtc2JBsdiv7C5JYb0jkaOE3aBRXYoLHMTpiNh39ejf09KRG5uYVtetqs7LmzPUNObazGnJsqW7kd1ZDlpqWpFpqFeXNz+ZHsixrEDP+05HSq2b+MSmVV8J38PFvz1GQUeVU//7tAxn43xd4Les9Bs97CbvFxvapK1kS9gd2v/UVxosF9+1DcXHB+8URhO9agTY1iS6vvcQvLpnYUdqcf7TpQXRE61vaDxw48LY+XNt0JPD3H9IqJYvm7yYiLGby336DywPDKPjbr7AYLjl1n9dlnN1GVcW9y2PXhVqloX/Qc/y551bmDzjF8PDp7M9fx8/39+Fne3uwOXMx1Tbnvivpp+O9Xe/dVgLdJmy8t/O9er++Icd2VkOOLdWN/M6cJ1eQJQmw2wVHvykkKSGdg8kFKAr0fTaIWJ2WxwYHOJ9TWQiyUy6SmrCLi1+kIuyCiGGdiI6PIWJYJ4er2tlKSin9+AuMiSswn79Mqr8bq0LcOGTM59zFi7i6fr86bbPZ0Ol0vPjiiwweXJMvWQhB1cGdGJfrKd/6JdjteD4xAr9J8XgOGFqn6npWi4lFvwvGZq2m/ePjiYrREaSt26FhR1Ray9iW9SnJGYkYyk/h49KUoWGvMzJ8FsGereptXKnx6za/G8dyj932ftfgrhydcbRer2/IsZ3VkGNLdSO/sxoyzdt9yABZqo28K5Wsn5fB5oWZlBZaCO/UhFE6LU+9Eoqnt/MHxcqzjZz8aA8n5u+lMrcUn9ZNiYqLofPrfXD397x/B1wrHvLNXowJy6hI/hazouD/7NP46SbiMbgPiqKwfv16YmNjAejUqRM6nY7Jkyfj41NzcNCam4Vx1XyMqz7CdjUPl4i2+E6Yhc8Lr6H29a/VPRVmnyA1Rc/ZQ0uxmCsIiuhNdIyOdt1eRO3ifHXDOxFCkFa0k3WGOezL/xoh7PRqHkusNo7Hmw1Fpch/IJMkSfopkwHyfcgAWaqL6iobu1blkKQ3cP5wKR5eap56JZRR8Vq0nbyc7t9mtnLxi+Ok6lPI2X0JjYcL7V/uTnT8QJp3DXO4H8uVTIxzV2Jc9Dn2whJcO7XBVzeRCV8vZdPWLbe09fLyYsqUKeh0Ojp16gSAMJsp37KWkmV6TN/tQXH3wHv0JPwm6nDr9Fit7qm6ysiZg5+QmpJISf5ZPLya06XfNCL7zcA7QFurvmrjqimL9Ya5bMpcQIk5n1DPdozUxvF06BS8XWoX7EuSJEk/DjJAvg8ZIEvOOnOghGS9gV2rc7FU23nsyQBi47T0HROIWuP8SmXB8SzS9CmcXX4Ya6WZFv1aEaWLoe3YrqhdHVu1tleZKF+9gZKEZVQfPsEFDxWft/Hh80unKK+suK39k08+iU6nY/To0Wg0NWNUnzpGyXI9ZUnLEaYq3B/vj9+keLyGPo/i6nhKPCEEGee2kborgSsnkgBoFTWa6Jh4wto/WW+ZNCx2M3ty17LOMIfTJftwU3vyZItJjIrQ0co7ul7GlCRJkh5NMkC+DxkgSw9KSYGZzQsz2DA/g/x0E83D3Rk+I5xhU8PwD3J+K4GpuJLTHx8gLXE3xgsFeAZ502VaPyJn9MMrzPGVUNPB45QkLKN81QbKzCbWt2/K0opczmVl3NY2LCyMlStXMmDAgBvv2YzFlK5dgnFFIhbDRdTNgvB9aQa+L01HExxaq3sqLUrnxO55nNy3AFNFIX6BHYgeGE+nnq/g6uFYnui6uFB6lGSDnm+zl2O2m+jiP4DR2tn0DXoWF5Xz+a8lSZKkR5sMkO9DBsjSg2azCQ4m55OUYODoN4VoXBUGvtiC2LhwOva5d85jRwi7HcOWM6QmpHBlwykUlULrZ6OI1sUQOqidw/1bC4ooXbga49yVWDKyOdTMg5WBKjaeScNurznh7OLigsFgIDj49tQ/wm6nMmUzxhWJVOxYDyoVXkOfx3eiDo+eA2t1n1aLifNHV5OWoicv/SAurk3o2OsVomPiCWhRf+Wxy8xFbMlaQrIhkdyqS/i7BjE8fAYjwmfQ1D2k3saVJEmSGlajCZAVRZkBxAEWwBWYJ4RIvEM7HTAbsAJXgDeEEHn3++xuZIAs1afMs+Uk6Q1880k2laVW2j7uQ6xOyxPjW+DuqXa6f+PlQk7M3c2pRfswFVUS0KUF0boBdJjUE1dvxwqcCKuVivU7KElYRtU3e8l1gbXtA1iRfY6nnnmGlStX3tL+woULpKSkMH78eDw8avIlWwyXKFmRSOnaxdiNxbi264LvpHh8Rk9C1aR2e7Jz0w+SlpLI+e8+w2atJrTtIKIHxtM6agwqdf1UzLMJG0eubibZoOdwwUZUipp+Qc8xShtPpH/MI1tA5V5yynIYv3Y8q8auqlNuU2eub8ixJakxacw/64157uBcgFyn+tR1+QWogX8CXtdehwJVQOgP2g0CDEDza6/fBZLv99m9fnXv3r225bslqdYqyyxi/bx0MaNLihjGRjHW/xux8FdnRPbFigfSv6WyWpxcvE+sfPxv4kNmi7neb4kdsz8XhadyatVP9ekLIm/2n8QF767iBG3EkajhomTxGmGrrLrR5mc/+5kAREBAgPjVr34lLl26dOMzW2WFKPl8kUgf002ca4e40M1H5P1ptqi+eKbW91RZmi8Ob/2bWPJOhPhwNmLR70LFwU3viQpjbq37qo2sigvio9O/FGO/8RfDNiJmpkSK5PS5otJSVq/jPmizkmcJ1R9VIi457qFf35BjS1Jj0ph/1hvz3IUQAjgs6hi3NtgWC0VR3IE8IEoIYbjp/blAsRDi7Wuv/YECoCnw17t9JoQw3m0suYIsPUxCCNJ2FbNuTjr7vspH2AU9RzRnVLyWx4c2Q6VyPqdy3oErpOpTOL/qKHaLjbCn2hMdP5BWsV1QaRxbtbaXlVO6bB1G/XLMJ8+jCvDD5/UX0LwympYD+lB6U7U+RVEYMWIEOp2OZ555BpVKhRAC07H9GJfrKdu4GiwWPPo9TfO3/41b+8ha3ZPdbuPKiWTSdidiOLMFldqFtl3HEh0TT3CrvvW2umuyVbIjewXJGYlcLD1KE40vT4dOITY8jjCvDvUy5oNyc6WsulTIcub6hhxbkhqTxvyz3pjnfl1jraT3H2DVzcHxNa2Bi9dfCCGKASPQ8j6f3UJRlOmKohxWFOVwQcH9q5ZJ0oOiKArRTwTwuzXd+PjKE4z/XRvOHzby++FHmNo+hS8+uExZscWp/oP7tGLo0ld4LfNP9Hk/lpKz+Wx4biGftP4Th/+yhaqCsvv2o/L2wm/Wy2jTkgn9dimeg3tT8u+PSY8ezc9COtEyuMWNtkII1q9fz4gRI+jQoQMffPABJSUleHTrS/A/l9FqZwZN/+c9LOnnUXnWPgWeSqWmdfQYxsRtZtLvzhI1YBZXTq5nzX/6s+of3Tm5dyEWc2Wt+70fd7Unw8KnMqfvEf7Zezc9m49gvWEu03Z35LeHnmF//jpswvbAx30Qbq6UVZcKWc5c35BjS1Jj0ph/1hvz3B+EBllBVhTl/wGPAS8IIcw/+GwLsEII8fFN7+UBw4C/3e0zIcRdS8PIFWSpoVnMdvaszSVJb+DUnhLcPFQMnhjCqHgtrR9zPpOD3Wrj0roTpCWmkLntHCpXNe1eepzo+IEE94pwfJ6ZuZR+tArjR6sw5xWwt4UXK3ytbDtz4ra2Hh4eTJw4kTlz5uDuXrMXWtjtdarGdyfm6nLOHlpG2u5ECrPTcPPwo3PfN4jsPxO/5m0fyBh3Ulydx8aMj9iQMZ/C6iyCPFoyInwmz4S9ga9rs3obtzZuXtm5rjYrPM5c35BjS1Jj0ph/1hvz3G/WqFaQFUX5J9CFOwTH12QC2pvae1KzvSLzPp9J0iPLxVXFoAkh/Gt3HxKO9mPwxBC+XZ6NrutefjlgPztWZmMx2+vcv0qjpu3zj/HcN/FMPPU2kdP7c+mrVD7v/S9W9fwnpz8+gLXqTv+7/WCeYcE0/dObtDLsIHTFvxnSqgNzz1Sz1a09MyJ74ef9fTBfVVXF0aNHcXP7Pr3dgwqOAVzdvIgaMJMJvz7O82/uIrzDEI7v+C9L32vHunkjuHJyA8Je92d2N/5uQbzc9vd88sQVftd1LYHuESw5939M3hHGv1Jf5azx0AMfs7ZuXtm5rjYrPM5c35BjS1Jj0ph/1hvz3B+UhxYgK4qiUhRlHhAOjLseHCuKolYUZZuiKDHXmi4FJiqK4nvttQ7YI4QouM9nktQotOnqw5sLIlmaNZip/+xASZ6Zv72cypSInXz6h/NczTLdv5N7COgUzBNzxvJ61ns8oR+HtdLMN68tZ0n4O+z59dcYLxfetw/F1RXvCbGE7/mM8O++ImryWN66WMWOsub8tU0PoiJaARAfH3/b/uADBw6QlZXl1D3cMhdFIbRNDMNfX82UP6bTa9g7FGQeJWn+SD59rx3fbf8XpoqiBzbedWqVhv7Bz/P33juY1/8EQ0NfZ3feGv5nXy/e3NeLbVlLMduc+67qal/mPsy2W//CY7aZ2Zu5t96vb8ixJakxacw/64157g/KQ9tioShKLJAEHAZu3tT3/4APgZ8LIb6+1vZnwOvUpIPLBmYKIXLu99ndyC0W0qPMbhcc2XyVpAQDhzcWoFIr9HsuiNi4cKKeCHA+p7IQZH57njR9Cpe+TkPYBa1iuxCli0E7pIPDq762YiOli9dgnLsS88V0jgW402/GKwTrJqMJDb4xVufOnTl//jzPP/888fHxxMQ8+BRqNquZi6lfkrorgZxLu1G7uNOh+8tED5xN87CuD3Ssm1VYjGzLXkqSIYHMirP4uDRjePg0RoTPJNCj/kppS5IkSbX30PIgK4riCuQKIQLqMlhDkQGy1FjkXKokOdHAlsVZlBdbaBnpxcg4LU9OCsHT2/n8wGUZxZz8aC8nPtpLVX4Zfu2aExU3gE6v9sbNz9OhPoTdTuWmXZQkrqByw86a4iHPD8VXN5G9llKGDBlyS/vIyEh0Oh2TJk3Cy6v2B/juxl5VicrDk4Ks46SlJHL28DKs5kpatOpHVIyOtl3HotbUT8U8u7BzvHA7SQY9B/LXAdArMJbR2tl0bfpUo8ypLEmS9GNTLwGyoii9hBAHr/33L4QQHyiK4gZUCSEaMvtFrckAWWpsqqts7FiZw7o56Vw6VoaHt5qhr4UxclY44R2dDzJt1RYurD1OasIucvddQePpSodJPYjWxdAs2vFS0uaLBoxzV1C6eC32YiOprZrxb00Je86fvq2tj48Pr776KnFxcXTo4FwKtYK//QprbibW7HT8Xv8l3s+8gKmymDMHPiFtdyIlBefx8A4kst90IvvPxMuvduWxayOvKp2NGR+xKXMBRnMBYU06MDJ8FkNCX6WJi+/9O5AkSZLqRX0FyDbAXQhhURTFJoRQXwuQKwF3oAi4fvFVIUTrukzgYZABstRYCSE4c8DIujnp7P48F6tF0O3ppoyK19IrNhC12vmVyoKjGaQmpHB2xRFsJgshMW2Ijo+h9bPRqF0dW7W2V1ZR9tl6jAnLqD56igtN1Kxq7c2aiyepqLw9PduQIUN46623GDp0aK3mKsxmipd8gHHVfEIXbsKSnU7Rh+/gP+u3eA2OrWljt2M4s4XUFD1XTq1HUVS0jnqW6Bgdoe0G1dvqrtlmYlfuapINiZw1HsBd3YQnQyYTq42jlXdUvYwpSZIk3V19Bch24Atq8gy/ei1AdgcqAE9qquANvtbcIoR4ZHduywBZ+jEozqtm08JMNszL4GqmiUCtOyNnaRn6Rhh+zZ3fSmAqquDU4v2kJe6m9HIhnsE+RM7oR5fp/fEKcWwlVAiBaf8xjAnLKPt8E2UWE8ntm7G0PJsL2bcmm3n77bd5//33azXHij1bMa6Yi8+zr+A15FkAjGsWU7E9iZDEL29rbyy8zIndczm1bxGmyiICWnQhakAcHXtOxtXdu1Zj18ZZ4yHWGxLZmfMZZruJKP8nGBWho2/gs2hULvU2riRJkvS9+gyQ9dQcqJv9gxVkTxrRVgsZIEs/Jjarnf3r8knSGzi+vQgXNxUDXwxm1OwIOvR0/p/07TY7hs2nSU1IIX3jKVQaFa2fiyZ69hOEDGjt8AqsNe8qpQs/xzhvJebMHA4EevJZM4XNZ9IAuHz5MlrtrQfbzp8/T7t27e7YnzCbufqv3yAsZpr/7r83Dhfm/W46ikZD4LuJd83DbDVXce67z0hL0ZOfcQQXN2869Z5C1IA4AoI71ebx1EqpuZDNmYtYnzGXvKorNHULYXj4DIaHTyfAreFzieaU5TB+7XhWjV1V69ymx3KOMeiTQex6bRfRQdH1NMO7c2buUuMjv2+pLuozQHYXQpiv/febgCvwd2SALEmPhPRT5axPNPDNJ1lUldto39OXWJ2WJ14KxtXdsZLT91JyoYAT8/ZwatE+qkuqaBoVQrQuhg6TeuDSxO3+HQDCaqVi3TZKEpZT9e1+sl3heM+2TP/gL7j3euxGu8uXL9OmTRt69OiBTqfjpZdeulGABMBebSJ7eiy+L8/C+5kXALBkXCb/vdl4PfMCPs+/iqIoCCFQFAXr1TysWVewZKXjPeLFmrkIQd6VA6SmJHD+6OfYbWbC2j9F9MB4WnWJRaV2/iDkndiEjUMFG0hKT+C7wi1oFBcGBI9lpDaOLn79G+xQX9z6OOYfmc/M7jPRj9TX6trIxEhOFpykS/MunIi7vZBMfXNm7lLjI79vqS7qM0B2u7YH2Q4cARSgGzJAlqRHSkWple1Ls0jSG8g4XYFPMxeeeSOMkbO0BEV4ON2/pdLMuRWHSdWncPVYFq6+HnR6tRdRcTH4tw90uJ/qk+cxJi6n9NOvEeUVuPWIxC9+El4vjeQ37/yBv//97zfaNm3alKlTpzJr1iwiIiKwXs3DMKYrLb+5iMqjJuNG0by/YL54Gr9JOtwf6w2A3VSF6fgBCj94G5/nplB1OAXzpbMEzHwbr6HP3QigK8vyOblvISd2z6W8JBMv/3Ci+s+ic9838PR2/J5qK6viPMmGRLZkLabSWkpr78cYpY1nUMjLuKsdyyTyINxcKau2FbKO5Ryj20fdbrw+PvP4Q11FdmbuUuMjv2+pruozQH4OsANf3WkPsgyQJenRIoTg+LdFJOsN7Ps6H4SgV2wgsTot3Z5uikrlfE7lnL2XSdOncGHNMewWG9qhHYmOjyFiRBdUagdzKpeWU/bpl5Tol2M5cwl1M3/+0dKNJakHqTZX39JWpVIRGxtLfHw80Xu+QuPfFP8Zv8F0ZA8F77+J3xtv4fvCazfal61fRVnyCjSBIaibBuE/9VdYMi9TsW0dfq/8DFWTW7OA2G1WLp9MJnVXApnntqFSu9Ku24tED4wnKKJXva3umqwVfJuzgiRDApfLUvHS+DE07HVGauMI8WxTL2PeLG59HIuOLsJsM+OqdmVqt6kOr8xdXz2+7mGvIjszd6nxkd+3VFf1GSBXAaVAoNyDLEmNS76hig3zM9i0IBNjgZnQ9p7Exml5ekooXn7OHxSryC3l5Ed7ODF/LxXZRnxaBhA5sz+d3+iLRzPHUtEJIajavo8S/XIqvt5GkbCyrmMzlhZeISM/77b2fdu14o9RYbQ1FePWsh1NYobh1qkrLhFtUfsFYCsuJPcXExDmagJmv4v5/EnKklcQ9LdPcG1Zs7e5+vRxKnZtRO3fDN8Xp97Sf1HuadJ2z+X0gY+xVJcRGN6d6IHxtOv2EhpX51fi7/YMThbvJsmgZ0/eWmzCSo9mwxiljadH8+GolAf/2+zNK3LXOboy98PV4+se1iqyM3OXGh/5fUvOeCh7kIUQKhkgS1LjY662s/vzXNYlpHP2gBH3JmqenBxCbJyWVlHOZ3KwWWxc/jqVVH0KWTsuoHbT0H5Cd6J0MQT1cLy6nCUjB+O8lZQuWI25oJCUEC9WeFvYcfbkbW13rfuSAcNGYisqIH1YRwL/shjvYWMpS15J5Z6t+L36c9w61KRWK/jzz9GEROD/6v9QNO8vVOxIxj26F5asdOwlhTT/Q8KNtteZTWWcObSUtBQ9RbmncPcMoHPfN4gcMAvfpq2ce2D3UGjKZlPmQjZkzKOoOodgj9aM1M7imdDX8XZ9cPWZbl6Ru87Rlbkfrh5f97BWkZ2Zu9T4yO9bckZ9BcjvAe8IIeyKomwUQgy/KUDWAG8LIWqXo6mByABZkmpc+M7IugQDO1bkYKm2EznQn1E6Lf2eC0Lj4vzfdwtP5pCmT+HMpwexVJgJ6h1BtC6GtuO6oXF3bNXaXm2m/PONGBOWYTpwnMseKj5v48vqK6coLS8nMjKS1NRUFEXBVl5K6WfzcR85AU2zIMy7t1CyIpEWc9agqNQorq7kvPkSLmEt8R49ibxfTyEg7vd4DX0OgLzfvI5HnyfxGTPpjnMRQpB1fgepKXoupX2FEHZadh5J9MB4tB2GOFymu7asdgt78r4g2ZDIieJduKk8GNhiPKO18bT1fdzp/rvN78ax3GO3vd81uCtHZxy957Ue73vcspp3nbvGnarfVjk9t/txZu5S4yO/b8kZD7PUtKykJ0k/AqWFZrYsziI50UDelSoCWrgxYmY4w6eFEdDC/f4d3Ie5tIrTnxwkNSGFknP5uDdrQpdp/Yia2R9vreMroaYjJzDql1O2MplyUxWb2jUlbNTTTPzruygu3wfcCxcu5J133uHXL44h9uoZWn26DUVRMF8+R/qwjrTceoGrH7yNJjCEpm/+6cY+5MIP38Wam0nQnxdiLy+jImUTwlSFz3Ov3DaXsuIMTuyZz8l9C6gqy8eveTsiB8yic+/XcPP0c/qZ3c2l0uOsz5jL9uxlmGwVdPLrS6w2jgHB43BVOZZJRJIk6afoYQbICjBQCLGzLoM1FBkgS9Kd2WyCwxsLSNYbOLzpKmqNQv/ngxg1O4Iu/f2cPqAmhCBj2zlSE3ZxJanmn99bjookOn4g4U+1d7h/W2ExpYvXUpK4AuuVTNQhgfjOGI/vtBdRBzenW7duHD9+HA3wZnMVzwV74RPVgwAPN1xbd8R/xv+RPW0Ege/OxT26541+00dF4/fKm7h360vhf36PvbwUtbcvloxLNP3Fn2kycNjtc7GauXD0c9J2J5JzeS8aV0869JhEdIyOZqH1twe33FLC1qwlrDfMI6vyHP6uQTwTNpURqsIyFQAAIABJREFU4TNo7hFeb+NKkiQ1Vg8tQG6sZIAsSfeXdb6CDfMy2LI4k/ISK62ivYnVaXlyUgjuns7nVC5NL+LE/D2cXLAX09UK/DoEEq2LodOUXrj6OHYATthsVGzchTFhGZWbU0CjoWxEf0bs/pK8osIb7fzV8GQTKNF2ZLzuZ4wb2Jeyv/6SwD8k4Nq2pjBI5cGdZM+IpXVKNtkzYvHo9zS+Y99AExRC8aJ/Yc3Ppvlv/nXP+RRkHCU1JYGzR1Zgs5gIaRNDVIyONtHPodY4X93wTuzCztHCb1iXPodDBTWltPsGjiFWq+OxgMENllNZkiTpUSMD5PuQAbIkOc5UYeXbFTkk6w1cOl6Gl5+Gp18NZZROS0jbJk73bzVZuPD5UVL1KeQdSMeliSsdJvckOn4gTbu0cLgf8/krGBNXULpkLSZjKdu13qx0rWTfhbO3tQ3z8+HjzgFo/7qIdjFPYs3PIXvaCLxHT0QTHE7JJ/8h+J/LcdG2rsmssXcbRfP/TPAHK9E0C7rvXEwVRZw6sIS0FD2lhZdp4tOCLv2m06X/dLx8Q2r1fGojr/IKyRlz2Zy5kDJLEeFNOjFKq+Op0Ffw1NRfKW1JkqTGQAbI9yEDZEmqPSEEJ3cXk5xoYM/aPKwWQY9hzRgZp6XniOao1c6vVOYdSictcTfnVh7BVm0ldFBbonUxtBoTjdrFsVVre0UlZSuSKNEvx3z8DGe9NayOaMKaCyeoMtUcJlOACb4wKUDFY+NegXIjwlRJ6KJNZL0xnCaDRuI7YSaKpqaSXtH8v1K+eQ3aL2r3+4aw20k/vYnUlATST29CpahpHf0c0U/MJqT1gHpb3TXbTOzKXc269DmcLz2Mh9qLp0OnEKvVofWqv1LakiRJj7IHHiArijK0th0JIbbUZQIPgwyQJck5RbnVbJyfwcaPMijMria4lQcjZ2kZ+nooPk2d30pQdbWcU4v2kTZ3D2XpRTQJ9SVyRn+6TOtHk2Afh/oQQmDac4SShGWUr92C0VpNcodmLCvN4mJOFgD/Fx/H//WPxrV9FK6tO6Ly9CLnFxPwHjke7+HjblTZu9irGc1/+x98xkxC2O11ylZhLLhI2p65nNq3iOqqEpqGRBEdE0+HHhNxcWtCcDDk5QFBx+C1QbB4F+RHExQEubmOjXEs5xiDPhnErtd23chBfLbkIEkGPTtzPsMqzDwWMJhREbPp03wUatWDK6WdU5bD+LXjWTV21U8uH+2dnrujGvq5NeT4DX3vzmjMc/8pq48A+XIt+xFCiNZ1mcDDIANkSXowrBY7e7/MI0lv4MSuYlzdVTwxoQWjdFradfd1un+7zU76hpOkJqRg2HIGlYuatmO7EqWLoUW/Vg6vwFpz8jEuWI1x/mdYsvPYF+TJZwHw308W06Fn91varh7Qjgy/EAb/6d90e+wxihf8HePqj2i1vba/Dd6ZxVzJucMrSE3RczXrGK4evnTq9SpPjP1PTYNZkRB4EvK7wNyag4yO/sPe9ZzEd8pBXGIuYEvmItYb5pJvMtDMPYwR4TMYHjYdPzfnS2nHrY9j/pH5zOw+8yeXj/Zez/1+Gvq5NeT4DX3vzmjMc/8pe+hbLBRFaQ30EkJ8VpdBHzYZIEvSg3flRBlJCQa2Lc2mutJGh96+jI6PYMC4YFzdnM8EWXwun7TEFE5/fBCzsYpmXUOJjh9I+wndcfF0bNVaWCyUf/UNxoRlVO06hOLuhveEWHx1E3HvHklWVhavdtLyM387ByohPDiQ3gFNaPnuHPwGj7yxovwgCCHIubyXtBQ9F46tIf4/5prV45ndavaACGDucciPdihA/mFFu7tVsrPZrewvSGK9IZGjhd+gUVyJCR7HqIh4Ovr2rtP93Vzd7KdW1czR534nDf3cGnL8hr53ZzTmuf/UNUSA3B34WAgRdd/GjwAZIEtS/akwWvjmkyySEgxkna/Et7krw6aFMXJmOM3DnS/PbKmo5uzyw6TO2UXhiRzc/Dzo9HofouMG4NumucP9VKedrTnUt/RrREUl7n26sqq9H7/6dAEeCoz1AbOA/VVQ6decadOmMXPmTMLDH3wKtYrSXLx8g79fPb4eIF9bRXbkt+UfVrRzZDUzo/wMyYZEvsn+hEprKe18ujNSG8egFhNwUzv+Xd1c3eynVtWsLs/9uoZ+bg05fkPfuzMa89x/6uqrkp4K+F9gCqACPgP+JISwKYrSAkgVQjj+p1MDkgGyJNU/u11wbFshSQkGDibnA9B7dCCjZ0fw2OCAB5JTOTvlIqn6FC59cRy71U7E8M5Ex8cQMayTw/uEbcYySj/+AmPiCsznLpHm58qqMA++PpeG2Wy+pa1KpWLMmDHEx8czePCDTaGmBN+0enzjJoG5x8k9WE1QRM+7XXrbKuZ1jq5mVlnL2Zb9KcmGRNLLT+LtEsDQ0NcZqZ1FC89775a7eTXtup/Kqpozz72hn1tDjt/Q9+6Mxjx3ybkA+V5/ovwSmAl8APwNGA/88dpnRYB/XQaUJOnHSaVSeHxIM975+nEWXxzI2P9txcmUYn7z1CFmdN7NuoR0Kkqtde5fURRCB7Zl+KrXmJL+R3q9M4yCo5kkjZzPp+3e47t/bsNUVHHfftS+3vi/OYWI0xsJ3byEvgMH8v6pcnZawvl1596ENv9+f67dbufLL7/kqaeeQqfT1Xnud/T8nctb88LLrP5XL1b/qw9nDi7Farm9rPOkL+987ctrX3ZoaA+NF7HaOOb2T+NvPb8lOmAwX6b/mzd2teWdI6M4XLAJu7Df8dr3dr1322c2YeO9ne85NHZj5sxzb+jn1pDjN/S9O6Mxz11yzr1WkM8AM65XzVMUpRuwQQjR4tprC+AvhCh3eDBFcQHeBP4CTL7THmZFUTYBN9dtdQP8hBCtrm3t2Aqcu+nzz4UQ98zmL1eQJalhmE02dq7KZX2igbMHjXh4qXlycgij4iOI6OzldP82s5WLX6aSpk8hO+UiancXOrzcnej4GJp3c3xrhCU9C+PcFRgXfo65sJhdod6saFLNrnOnbrTZtGkTzzzzjNNzvk75nQe43B78YnHn2JC/k5qipyT/LO5NmtGl3zQi+8/AJyACAI/3PW5Z0brOXeNO1W+r6jSfq6YsNmTMY1PGAorNeYR4tiVWG8fToa/i7fL9eki3+d04lnvstuu7Bnfl6IyjdRq7sXDmuTf0c2vI8Rv63p3RmOcu1d8WizKgvRAi59prD6AMcBFCiGuftxZCFNRionGAB/AsoHfkkJ+iKD8H2gkh4hRFeQYYK4SY5uiYIANkSXoUnD1YQnKigZ2f5WKptvPY4ABGxmnp92wgao3zh/oKjmeRpk/h7PLDWCvNBPdtSbQuhrbjuqF2dSy9md1UTfmq9ZTol1N9KI0LnmrWtPbmqL2Sw2mpqG7axlFdXc2ECROYOHEiY8aMQaN5cCnUoGZLSea57RzfNYcrJ5IAaBk5iuiB8YS3f6recipb7Gb25K5lnWEOp0v24abyYHDIJEZpdbT2eaxexpQkSaoP9RUgHwDmCSGWXHv9AvC+EKLjtdfFQOfrAXQtJ7zjWt/3DJCvBeVngAFCiAxFUSYCfwauZwn9BvirEKLsXv3IAFmSHh0lBWa2LMpk/TwD+ekmmoW5M2JGOMOmheEf5OZ0/9UllZz++ABpibspOV+AZ5A3Xab1o8v0fniHO74zzHQotSan8qoN2Kur8RzcF7/4iTQZ/RSKRsOyZcuYPHkyAGFhYcycOZOpU6cSFHT/ynu1VVZkIG3PPE7uXYCp4ip+gR2IjtHRqdcUXD0cyxNdFxdLj5Fs0PNt9nKq7VV09uvPqIh4+gc9j4uqfkppS5IkPSj1FSCPAL4ANgJWIBaYIoRYfe3zIiBSCJFdhwnvwLEA+RfUrB7PuvbaAzBdW8EOABIADyHEc3e4djowHUCr1XZPT0+v7TQlSapHNpvgYHI+SXoDR7cWonFViBkXTGyclk59/Zw/1Ge3Y9h6ltSEXVxZfwpFpdB6TBRRuhjCBrdzPKdyQRGliz7HOHclVkM2mrBgfGeMZ1TSJ+w9ePCWti4uLrz44ovodDr69OlzxzGs+TkUvP8mvi/H4dHriVrdp9Vi4sKxNaTuSiAv/QAurk3o2OsVomJ0NG3RxeF+aqvMUszWzCUkZySSU3kRf7dghoVNY2T4TJq6118pbUmSJGfUW5o3RVF6U3M4TwG+EELsuumzYqBLfQXI14Lhs9SsHhvu0qYFkAF4CyHuugFMriBL0qMt81wFyXoDWz/OorLUSptuPoyK1/LE+Ba4ezpWcvpeSq8Ukpa4m1OL9mEqqiSgczBRuhg6Tu6Jq7e7Q30Im42K5G8x6pdTuXUPuRr4omNTVmSdI7+46Lb23bp1Iz4+ngkTJuDh8X0KtYo9W8n9+XjsJUW4tuuC70QdPmMmo2pSuz3ZeemHSNudyLkjK7FZqwlt+wTRMfG0ih6DWu1Sq74cZRd2jlzdTLIhkUMF61EUFf0Cn2NURDxR/gPrbduHJElSXTz0PMjXBv01NfuIHT6kd9O1O7h/gPxLavZAz7hHmzBqtmD4CHGXI9fIAFmSGouqcivbl2WTlGAg/WQ5Xv4uPPNGKCNnaWnR2tPp/q1VZs6vOsrxOTsp+C4TF283Ok3pTVTcAAI6OZ6yyXz2Uk1O5SVrMZWVsS3Cj+WaMg5ePHdbW39/f5KSkujfv/+N9+ymKsqSV2Jcrqf65HeovHzwfvYV/CbqcG3TsVb3VFV+lVP7FnFizzxKi67QxDeUyH7T6dJ/Ok186i8NVXblRTYY5rE5axHllmJaekUyUhvHUyGT8dA4fwBTkiTJWQ0SIDvj5gBZUZSmwDrgVSHE+Wufe/L96nH6TdeNBzYJIUoURdEAS4Dy61sw7kYGyJLUuAghSNtVTLLewJ4v8hB2QY/hzRkVr6X7M81QqW5dqcwpy2H82vGsGrvKodykQgjyDqaTmrCL86uPYjfbCHuyPdHxMbQaFYlK49iqtb28gtJl6zDql2M+cY5T3hpWRzThi/NpmKqrAfDy8iIrKwsfn9v3CgshMB0/gHFZAuUbP0dYzHj0exq/iTqaDI5FqcXBP7vdxpWT60lLScRwZjMqtQttu44lakAcLVr3v2V1NzgY8vJu7yMoCHJzb3//Xky2SnbmrCTZkMiF0u9oovHl6dApxIbHEebVoXadSZIkPUAPPEC+lm3ibpZQc1jvF9faqoAdQoiBDg96a4AcDuwDnhVCHL72+VtAhx9mq1AU5TUgHrBTk1J/J/CHe22vABkgS1JjdjXLxMaPMtg4P4PiPDPBrT0YpdMy5LUwvP1rthLErY9j/pH5zOw+s9YVrqoKyji5cB9pc/dQnlGMV7g/kTP702VqXzwDvR3qQwhB1a5DGBOWUf7lVkpsFtZ1bMrykkyGPTeGxMTEW9ofPXqU7du389prrxEQEACAtTCf0tULMK6chzU3E02IFt/xM/F5cSqagNrVZCrOP0daSiKnD36MucpIs9CuRMfoaN/jZVxcPbnXToi6rpkIIThTsp91hjnszl2DVVh4vOlQYrVx9AqMRa04v1VGkiSpNuojQN53l/aCmsN6BUAnwHbt/XNCiEf2dz8ZIEtS42cx29nzRR7JegMndxfj5qFi0Msh9J7qypPbHsNkNTlV4cputXE5+SSpCbvI3HYOlauaduO6ER0fQ1Dvlo4f6svKxfjRKowfrcaSm4+lVSih8a/g89oLqP19AXjllVdYunQpHh4eTJw4EZ1OR9euXQEQVisV25MoWZZA1f7tKC6ueI14Cb9JOtwf612re7JUV3D28HJSUxIozE7DzcOPTn1eZ+Dzd08d/yD+UbG4Oo9NmQtYb5hHYXUWge4RjNTOYmjY6/i5NooCrJIk/Qg81C0WiqKoAQs1wfL1PzGEDJAlSXpYLh4rJTnRwLfLc/hu8H/JfnwLNrUFV7UrU7tNrfUq8g8Vnc4lLXE3pz85gKWsmsDu4UTpYmg//nE0Ho6lNxNmM+VfbKEkYRmmPd+heLjjPXEU5gnDaDv86dvKWvfv3x+dTscLL7yAq2vNGOYLpylZrqf0q08QFeW4RfbAb1I8XiNeROXucadh7zwXIci+tJvUXQlcOv4F8f+13KOtw93el81uZX/+OtYZ5pBatAON4sqgFhOIjdDRwffupbQlSZIehIYIkM2AN6AB3IEcGSBLkvSwnc80ELmoPWaqb7znItz47uUzRLZv6XT/5jITZ5YeIk2fQtGpXNybNqHz632InDUA31ZNHe6n+tgpShJXULZsHVVVlWxs488yayFp6ZdvaxsUFMT06dOZMWMGoaGhANjLyyj96lOMy/WYL55G5ReA77ip+E6YhUtY7e6z3JiNt9/dU7PV17GU9LKTJGck8k3WJ5hsFbTz6cHoiNkMDH4RV7VjmUQkSZJqo77yIE8FJl57+ZkQYv6199WA+XpA/MPXjyIZIEvSj1Pc+jgWHV2E2fb9aqxi1RB+dBjTPf5EbJyW6EEBzudUFoKsHedJ1adw6as0hF3QcmRnonUxaId2RFE5VgnQVmykdMlajIkrMF9M51iAO6tauLLubCpWq/WWtmq1mueff57ly5fj4uJyYx5VB3ZgXK6nfOuXIARNBsfiOykez35POzyPez2OfMNRmod3c6ifuqiwlrI9aylJhgQyKs7g49KUZ8KmMlI7iyCPiHobV5Kkn5762IM8G/g/4J/UbKX4BfChEOKfMkCWJOlR0W1+N47lHrvt/XBbR/roEygrshDRxYvYOC1PTg7B09v5ctDlWSWcmLeHkwv2UplXhm/b5kTrBtBxSm/c/R1LRSfsdio3p1CiX07l5t24713Ox5uSmTdvHtnZ36eWHzJkCFu2bLljH5acDIyfzad09QJshfm4tGyH78tx+Dz/Kmofv3uOf7csFt6eebz/RjDBLfsQHRNP227jUGvqp2KeEIJjRdtJNujZn/c1AD2bj2R0xGy6NX1a5lSWJMlp9REgnwZmCiF2XnvdB1ghhGh90x7kxYAbNVssnpcBsiRJj5LqKhs7P8th3RwDF4+W4uGtZsirocTGaQnv6HyeXpvZyoU1x0hN2EXuvitoPFzoMKknUboYmj8W6nA/1vxCNIE12zUsFgtff/01er2eHTt28NVXXzFmzJhb2m/evJmWLVvSoUNNCjW7uZryTWswLtdjOroPxcMT79GT8JsUj1uHqFrdU3VlCacPfEza7kRKCs7j4R1Il77TiOo/Ey//sFr1VRv5VQY2ZMxnU+YCjOYCQj3bE6uNY0joqzRx8a23cSVJ+nGrjwC5DNAKIYqvvfYErgohPG8KkOdQsxfZCvyvDJAlSXoUCSE4c8BIUkI6KatzsVoEXZ9qyqh4Lb1jm6PWOLYt4V4KjmWSqk/h7LLD2EwWWgxoTXT8QNo8F43atW6r1idPnqRjx46o1d//1mqxWGjZsiXZ2dk8/fTTxMfHExsbe6ON6eR3GJfrKUtagag24d4jBr+JOryGPo/i4nh1PWG3Yzi7lbQUPZdPJqMoKlpHjSEqRkdYu8H1trprtlezO/dzktL1nDHux13dhCdDJhGr1dHKu3bBviRJUn0EyPuBOUKI5ddeP09NvuGu1/IeVwshXK59pqFmi4Xzf8rUExkgS5IEUJJfzaaFmayfm8HVTBOBWndGztIy9I0w/Jo7v5XAVFTBqSUHSEtMofRSIZ7BPkTO6EeX6f3xCnF+JXTNmjWMGzfulve0Wi0zZ85k6tSpNG9ek0LNVlxI6drFlKyYizXzMurAFvi+NAPfl6ajCWxRqzFLC6+QtjuRU/sXY6ooJCC4M1ED4ujY6xVc3R3LE10X541HSDIksDPnM8x2E1H+TxCrjaNf0HNoVPVTSluSpB+X+giQhwJfAhuoyXUcC4wXQiTfZQIRN1e8e9TIAFmSpJvZrHb2r8snSW/g+PYiNK4KA19swejZWjr0uvf+XUcIu530TadJ1aeQvvE0ikqhzfPRRMcPJCSmTZ1XYA8dOsT7779PUlISdrv9ls9cXV156aWXiI+Pp1evXjXzsNmo3LWJkmUJVKZsAo0Gr6Ev4DdRh3uPAbWah9VcxbnvPiMtRU9+xhFc3Lzp1HsKUQPiCAjuVKf7cUSpuZDNmYtYnzGXvKorNHULYXj4DIaHTSPAvXbBviRJPy31lcXicWAsoALWXK9y1xjJAFmSpLsxnC4nOdHAN59kUVVmo10PH0bptDwxvgWu7s7vHDNeLCBt7h5OLd5PdXElTaNCiNbF0H5iD1y93OrUZ3p6OvPmzWPhwoVcvXr1ts979OjBb3/7W5599tkb75nTL1CyZA5lyZ9iLy3BtUM0fhN1eI+eiMqzSa3Gz00/SOrOOZw/uhq7zUxY+yeJjomnVeQoVGrnD0LeiU3YOFKwiXWGORy5uhm1omFA0FhiI3R08esvD/VJknSbh5IHWVGU0UKIdXUZpKHJAFmSfpzulo0hKAhyc2vXV0Wple1Ls0hOzMBwqhyfpi4MfSOMkTPDCW51e3aK2o5tqTRzbuURUhN2cfVYFq6+HnR6tRdRswbg3yGodpO9xmQysXr1avR6PQcPHrzls3/84x+89dZbN14X/OpvWDNzsVzOwK1/K0znt2I+cxyVty8+L7yG78txuLZsd98x754BI5f//rInkQNm0aXvVDy9A+t0T47IrrhAkkHP1qwlVFiNtPKOZrR2NoNCXsZd7VgmkZ+qnLIcxq8dz6qxq+pUcVKSGpOHFSDb7nYQT1GUx4UQ39VlAg+DDJAl6cfpXouGdS14IYQgdUcRSQkG9n2dj7ALeo8KJDYunG5DmqFSKU6NLYQgd99lUhNSuLDmGHaLjfAhHYjWxdAyNhKVum7HOQ4dOoRer+ezzz5DURSysrIICAhAmM0Uf7AE4/xVFPx1Np19m1L8xwT8356JuoUrJSsSKd/0OViteA4Yiu+keJo8MQJFfefV83vd9xdznibz3DZUalfadRtHdEw8QS1719vqrslawbc5K0gyJHC5LJUmGl+Ghr5OrDaOkCZt62XMxi5ufRzzj8xnZveZTleclKRHXX1tsXgZMAIFwBUg9+aDeIqiuAohzIqihAL7hRDhdZnAwyADZEn6caqPAPlmBZkmNswzsGlBJiX5ZkLbezJylpYhr4bi7X/3g2KOjl2ZV8rJBftIm7ebiiwj3hEBRM3qT+c3+uLRrG6p6K5evcrBgwcZMWIEABVb92Ccu4KimK5E/WI67dq14y/dB9OjzE5E8gIArAW5GFcvwLhyHrb8bDRhLfGdMAvfsW+g9r+1YuD9nnlR3hnSUhI5feBjLNVlNA97nOiB8bR/fDwaV8fLY9eGEIKTJXtITtezO28NNmGle7NnGK2dTY/mw1Epj+wZ8ocqpyyH1h+2xmQ14aHx4NKbl+QqsvSjVl8Bsh04AzQDTEDozSvIiqJkAU8CWuBNIURsXSbwMMgAWZJ+nOo7QL7OXG1nz9pc1s1J58x+I26ear6uHPLAxrZbbVz6Oo3UhF1k7biA2k1Du/GPE62LIahn3avLCbOZq7/5F8Js4XemDBYsXAjAewSiaNRkvDEa3axZRD32WE17i4Xyb77CuFxP1cGdKK5ueMVOqDnUF1XzZ4yjz9xsKuPMoaWk7U6kKOck7p4BdOrzOlExcfg2bVXne7qfQlM2mzIXsjFjPoXV2QR7tGKkdhZDQ1/n/7N333FRXfn/x18zQ++CYAHG3gV7F2tMNIIxJrH3WBnMlmSzv81uNtnd7CbZ/X53vxsZ7C2C3ZgItmgsYI0dsFeGpiDIUIdp5/fHGKOxwIgkouf5eMwjMnPvOedefZi3Z879HC+nym8P/jy6d+dJJ5UT0zpMk7PI0nOtOgOyhxCiVKFQeAB6IYRKoVBsB8YDN4AUYMedzz59suFXPxmQpZ+aPBk8PCA6uvLn/M//QEIC7N1bXaOS7PVzBeR7XT5ZSHx0Gr9d+ui6vFXpO+9MNinaJM5/+T2mEiMBXdS0m9OHpm91wMHFvvJmVkM5WeEz8J49lk+P7yMmJgZPfQkfEsAOivmKQgD69OmDRqPh9ddfx9HRESEExktn0K+KofDrLxGlJbi064b3OA3er0+w67qFEGRe2kvK/hiuJG9CCCsNWw8lNEyDuuXLld4e215mq4mDNzeRoIsh5fY+nJQu9K03mgh1FM28O1VLn8+ye2ePfyBnkaXnXVUC8uP+ZhKAn0Kh6AN0vOf9PoATtk1CkoHfADXy4b1nQb9+8P/+36M/z84GPz+Ij69aP9Onw6BHTHj96lcwdCiUl0ODBqCt4oTCyJG2V2U8rT4f5vPPoV49WxCeMAGKix9/vEIhw69UsaYdvPjNkurbtMKvTT36xYxkatbf6DP3TUxF5eycGMuy4D9z8A+bKUzLr3RbVn0RxjOXcR/Sh3/84x9kZGSwaPgEFD6eXKYcAAWQmJjIqFGjaNCgAf/87e/J/N/F3Bz1RzwHz6BRUib+f/ovlsICbr4/0e7rUSgUBDXvz5Cp65n80XW6vPxHcnRH2Tx/CLF/b8nJPf/BUHrb7nYr4qB0pE+9kfyz215ieiXzUuAkkm6s551DnfnNoR58l7kSo7X8qff7rPpb4t+wivtLA1qEhb/t+9svNCJJerY9LiArgO7Ad3de976vAFTA59g2DTlTbSN8wbm4QIcOtpBcFePHw549Dz59brXC+vUwbhw4OEBoKNSvX7W+mjeHO7vgVuhp9flTS5faAvLy5XD4MFy8CDNmPN0+pF9enUcUf3jU+z9H306U84+Rp0hNyqeyD0E/tB0vV9pF9WHc2Q8YvktD/d5NOPHP7/iy8V9IeG0hul0XKmzfoU5tPN54mdufLcRaZkB5+DStLt5g5P9+wtx93zJy5EhUDraybB1xISLbQMl/llF4NBlTejYqbw9Unt54j5lNg+3nCFy2E3/Xh4fZytxzj1pBdB/6NyaSRBRFAAAgAElEQVT/RcfLE+Nw9Qxg/6bfsuzPQexeM4PczNN236fKaOQZwpw284ntl8nMlv9HkSmf/0mZyMS9wSy/+Edyy9Krpd9nyaGMQxgtxvveM1qMHMw4+AuNSJKebY9bYhEFzBNCWO78bLmzxKIUaAZcE0I4KRSKI0CkEOL4zzZqOz3LSyz69YPu3eGzz6q3HyGgYUP43e8gKurH93fvhmHDICcH3J6j6kihobZZ49/9zvbz8ePQtStkZtrKVD1siYVCYftHRL9+D29TLrGQKpJ1uYQt89L5dmkGxQVmGoV6Eq5RM2BcPVzcq14fuDAtnzMLD3Jm0UHKcovxaRFAaGQYLSd1xdn74Q/AmTJucPvzhZQlHcOxcTDug8Nwbt8Kx6YNUPn6kHH0FKcj/8i5M2f4piwXenfkq85DAPD/zwdYDeXcWvEVxZ8txO/PUXhPeQNTZhr61fMpXL8Yy+1bODZqYaupPGISKg8vu64pN+MUyYnRXDy+CrOpjHqNexMapqFJuxGoHKq+u+HDWIWVU3nfEa+L5vsc2/5XPeoMJ1ytoZ1v9W2lLUnSz6u6llh8AZQrFIpchULx7b39/eS4LcBwpCr7+GPbbPF779lCXPfuYDbf/9X/gQO2oFe/PgQGwpQpUFBQcdsKBYwdC6tX3//+6tXw+us/huOgINus66PGA7BhA4SEgL+/LYhqtbb2r1+3fT5+vC2Agm3cCgVs324b9w/n7N//4xju7RNg82bo2dPWZ1AQTJwIRiOcOgVvvAFqtW3pRGjow8NqaSmkpkLfvj++16mTLRDf++8ko9F27+5demGx2O65wWD7R8PFi7BzJ3z9dcX3WJLqN3Vn+v+2ZGVGP95Z2AaFEubOPMP4wL0s+M05Mi+VVKl9rwa+9Ph7OJN1f2HQl+Nx9nEl8VcbWRb4IXtmryUvNeuBcxyD6hIw988EfruMemv/D/fw/mS+NJnSPUcAcNtzlJbXcpm+ejFRa5byt9+8R/HXu/CaZtvSuvx4KqeXrOKTG+fYHrOYS51eo2zPKWq/9ykNE9Op888vUXp6k/vJO1wLCyTnYw3llyr/paJ/UHsGjl3MlL9l0mv4/1Ciz2LHijEs/7gBR7Z+TLH+wWuqKqVCScfag/io4zcs7XuVNxr9jpT8ffzh6EBm7m9DfJqWEnPhU+9XkqSao6KnIzoDQ4H/3vPeBCDvnp/3AD2f8rheWKdOgaenbaZzz54HP3/nHRg4ELKybOGtUyfQ6yvX9oQJcOgQ6HS2n41G2LjRFmgrO56jR2HMGPj0U8jNtQXHOw/GP9Ynn9iCdW4uvPYaTJr08OM2bLCN8//9P1uf16/DSy/ZgmtqKrz1Fly4YFubPX06zJz5YBvFxbYZ81q17n/fzw+Kin78edEi2zEvvfTjey+9BI6O4OpqC+KvvAL//KftfktSZbm4OzBkejDRJ3ryr6RudB5SmwStjmnNk/jT4GMcjs/BYnny5RcOLo60nNCVkYffZeTR92j6VgfOLTvCqpDP+KrfF1xafxKLyXL/OQF+KBwdUXi44/uhBtc+XQDwfX86dZb8g+IFa+jzzRGaLdqMx2sDcW7TDGG1YjGaUJ06j5/BzPRj3/LKiW0s/ss/2BGzGOHgiNfwCag3HCF4w/d4DBpB4YYl6Ia2JWNCf4q2b0CYTJW7Z2616DjgXSZ+eImIWVvxD+rI99v/woqPGrBt6UgyLydWacnKo9RxbcDUFp+xsl8G74aswEXlTsy5KCbsCUR7VoOu+NxT71OSpBpACPHQF2AF3O752fKTz6/d+a8vcPNR7TwLr06dOolnVd++Qvz+97Zff/SREIGBQlitP35uMgkBQuzZY/t59mwhunYV4ujRB9vq3FmIOnUefN2rfXshPv/c9uvNm22fm80/fh4YKMSyZY8ez+zZQoSH39/mrl22MV67Zvt53DghJk2y/XrPHttnyck/Hn/6tO29vLwH+2zRQoiPP37w2n5QWipEUpIQK1YIodEIoVQ+eIzFIoSTkxCHD9//vqenEPv22X49aZLt/HuVlf34MpkebHfuXCGGDn302CTpcfKyykTsXy6JcfV3i8FsE5Ma7hXrPr8iCnLLn0r7pblF4tjnO8Xyhh+JL5gjltT/kzjy122iOFtf6TYKFq4Rl9zbifR+40X5hatCCCGuX78umjdtJibgLVYSKJrhJLA9xC1aqhuK2LEzRab2y7ttmPNyRd6Cz8TVfg3ExWaIq70Dxa3ovwpT7g27r6kg57JI2vSuWPD7WuKLOYi4f7QVyUnzRLmhyO627HH+9hHxr9MTRfh2JzF4G+L9I/3E/uyNwmx5yF8MkiQ9s4Bj4gmz4+NmkD8EHvmIrxCi0Z3/5mNbjiE9BUFBjy9dpdVCZCTMmmWbPV679sfPjh61bXH709e9xo+HNWtsv169GkaPhkdsmPXQ8Vy/Dk1/skFVkyYVX1fbtj/++oflHIUP+Qbz6lXb0omH+fe/oVkzWLUK8vJsDwJarQ8ep1RCq1b3z8AfPQolJdCy5aPH6OJimz02GGyz0AUF97/uvXeSZC/fei6M+3NTVqT15YN17fFXu7D09xeZELSXf09J4cLRSn4V9AiutT3o9P5LTLj8Z8I3T8cvpB5H/ryV5eqP2D5mOVn7rzxyBvaHWd6yfUfxHBeB36fvYsm1VctQ16/PuQvnGbd9LYXNgnkTbwDCcGOWzoBpVQJfz/kDSX4dOPXFElS+tfGd8Xsa7rpCvXnf4NS0Nfn//TPX+gaT/duxlJ04WOmZYG//JvQe/j9M+WsGA8YsRqlyZO+62Sz7MJB9G97h9s0LVbpnj9LCpyvvha5gZf8MpjT/jBul1/jk1BtMTmzE6iufUFCeUy39SpL0DKlskubOjHFVXoAj8B5gAkY/4phOQD5w+J7Xu3c+UwB/Ay4AZ4FYwL2ifmvSDHK3bvd//tMZ5HsdPiyEr68QmzZVvr+sLCFUKiFOnBDC3f3BmeifziD/dDwTJwrx5pv3v3fgQMUzyPe6dOn+4+/ts2FDIT799MFxX70qhEJhm33+waFDD7b9gyVLhPD2FmL7diFSU22z62PG/Pj5w2aQhbDdD9sCjYe/+vZ9eH81WZ06D7/Wn3778Cx63O9VRap63U/jvl1LKRRzZ6eK4e7fisFsE7/qelB8tzJTlJeZH3ueUvnwvn/6jcrtizdF4q83ivne74svmCNWtftMpC46IIwltlnrrMIs0WdZH5FdlC2sFou49fEXwpB6UQghRFH8bmHW22ZqLQbb8YWr4sXFtkPE+++/L9arGopZ1BIBqAQgpuIjPvFoKEwP+fql/Mp5kfPJr8Tljt7iYjNE2rD2omDdYmEpLan8zRJCWK1WkXllv9ixYpyI/rWj+GIOYlP0IHHl9NfCYnn8PasKs8UkDtzYJP7w/SAxeBsifLuj+OzUWHE2/6Cw3vsVmyRJzxSqaQb5p0H6aWx9NB3bV3OHH3NMbWCjEKL7Pa//vfPZJOBVoL0QojW2oP35UxhXjVBQAB99BOl3KhI1bAhOTpVfgwy2h9v694dp02yzw53tfLZz9Gj45hv49s5jmzdvwh//aF8bj/PBB7Y1vzt22GaHLRbbjHFOji0C/FCm7soVW/3mR5k61dbWpEnQrZtt5njhwsqP42Hx41//qtq1Pat+WvqvovefF1W97qdx3xq29SQqpg2xmf2Y9UUrigtM/GtCMhOC97L8g4vk6Moeet7Dvjl52Ps+zQII+88Ipmb+lf4LRiGsgt3T17As8EOSfvsVf4r/gP26/fxt399QKJX4fTQH5zbNsJYZMJ69TN6f/oM5Nx+lsxPm3Hxu/3sptSe9wYfdBuDf2Jctg4oRTX0BOE85ff2DIe/+p4YtFgtOjVvg/8f/o1FiBgF/nY+wWsj54zSu9Qki99N3MequVOp+KRQK6jfuxcsTY5nyl3S6vfpX8m+cZcvi4Xz51yYc2/kZZUW5lWrLHiqlAz3rDOcfXb5lYe9zDFXP5vvcBH57pCfvHOrMjowllFse/nslSVLN9LNuUC+EiLkTdi2POaw28LJCoThy5/V3hULheeezUcACIcQPfxP9FxhTjUN+pri6QlkZDBhgqznapYutWsTjHrJ7mAkT4MQJW+1jew0ZAjEx8Otf26pMDBlie3AOHr80pLKmT4cvvoA//cnWvlptC+MhIfD3v9sCb0CA7RoiIx/f1vvv25aYFBfDypW2KhaS9Cxy93bktTkNWHgujH/s7EybXrVY//lVpjTax19fP8HJ7/IqvSzhYRzdnWk7oxdjTv+eEYm/Qv1KK5KWbWPl2ZVYhZWlx5eQdU+1CKWrC96zxqB0cyFr6HRuTvuAmxN/h0NQXWq99zY581ayvIWOrO4miiYVsWX3FiZ26Ek9T28c6tS+r++hQ4cyYsQIvvvuOxRu7niPnol682mC4vbh1nMQBSu/IG1QMzKnD6Vk71bEo9L/T7h51aHr4A+Z/PF1hkxZj7dfYw7F/4FlHwWzM3YyN9OOPvH9epxgj5bMavVfYvtlomkdg9lq5P9SpzFhbxCLz/+OrNLKhX1Jkp5tj6yDXK2dKhR7gflCiAdWdCoUClfAIIQQCoXCF4gGXIUQrysUigvYai5/d+dYT6AQ8BFC6H/SzgxgBoBare6UlpZWrdf0Ijt2zBbWb960hdea4FFbTf9wLbcfshdCdDTs2vX81UH+JbZrflqqMvaqXnd137ebaWVsW5DOtkXpFN4yEdzSnaGRal6aFIiH96NrKle272nr3ubLc19iwozKrKTv5Y78q+NntH67Oy6+7nePsxQUUrotEae2zXBoEIjC2YntA/ozL/gsCa0KcFI6Ma3jNH476Sj+//dHvMa/hrBaUSiVnD9/nlatWt1tq2XLlmg0GiZOnIiXl61esvlmFvo1C9CvW4gl9waO6iZ4j5mN1xtTUPn42nXP8rPPkpwUzfmjKzGVF1OnQVdCwjQ06zASB0cXu9qqLCEEKbcT2Zw2l0M5XyOElS7+rzJUHUnn2oNRKn7WeShJku5RlTrIz1xAfsix9YB0wBM4DcwQQuy985krUAr4CiEeuVfps7xRyPNg0SLbbG1+/tOZRf45VBSQH6VvXxmQnyXPc0D+gdFgIWn9DeK1Oi4c0ePqoWJT8SP2ja9k39lF2TT+ojEGs+Hue04WR/78nwnUMvvQfExHQqP6ENAx+KHnrujfiYMNiokPLUJphdmHAvj1xRY0vZ5437Fz587lnXfeeaANDw8PJk6ciEajoXXr1rZxG40Uf/sVBXFaDMf3o3B2wTNiHN7jNbi07lDxRd3DWFbIuaNfkpKk5fbN87i4+9Gmx3Ta9p6Fl28Du9qyxy1DJlvTF7A9fSG3jTep59aECLWGlwIn4+lYq+IGJEl6qp73gBwEnAe8gF3AciHEl3c+awEcA7zEYy5EBuSnR6+H+HgYOdK2/vn0aRg+3Pb6z39+6dFJT0IGZPvPfRrnP4kLR/UkaNN4b8UjSr1Usu/ILZEsObnkvq2HnVROjFOPZsLBVzm/8ijmUiN1uzckRBNGs7fao3J2vHvulVWriPrOmyMNS3EyKwnNduHC7B78/k9rEELctxPduXPniImJYcWKFRTdW4j8jn79+hEVFcVrr72Gw51tr8vPJ1MQG03R5liEoQyXDj3wHh+F5ytvonCq/O56QggyLu4mOSmaaymbAWjYNoLQMA3BzQeiUFbP7K7JauTgzU1sTpvL2YIDOCtd6Vd/LMPUc2js1a5a+pQk6UE1OiArFAo/YDMwWQhxSaFQjAa2CyEKFAqFA7AMKBZCzFYoFFOAKcBLQgijQqGIBjyFEI/YdsJGBuSnp7DQtiPf0aO2jUY8PW0P7n3yiS0wSzVP3boPf7CsTp0HywQ+a6oSUqt63b/kfVMqBUI8ePEKhcBqrfhrnA4LOnDqxqkH3m9ftz0nZ56kvKCUc8uPkDLvAAUXc3AN8KTN9B60ndmLPlsHcOrGKVyNCt484YXRQXC4URm12rTh5MyTj+yzqKiIlStXotVqOXv27AOfR0VFMXfu3PvesxQWUPjVcvSrYjBdv4TKLwDvUTPwGj0Tx7pBFV7nff3n60g9uJAzBxdSVpyLT0BzQsM0tOw6CWdXb7vasseVwlMk6GLYkxVLubWM1j49iVBH0avuGzgq5V+aklSdanpADgYOAcOFEMfuhOAobBuVCGAf8GchRJlCoVABf8W2u58ZW6m3KCHEY/cElQFZkqTnkcUi+D4hh3itjpM783BwVND7rbpEaNS06uFz30zukxBWK+m7LpAcncS1hDMolAoavxZCiCaMoP7Nnqh9IQT79u0jOjqar7/+GovF9sz2kSNH6Nq16yPHUXpgJ/rYaEr2bgGlEveBr+EzPgrXbv3sGofFVM6lU+tJSdJy4/phHJ3cadFlPKFhUfjVb1txA0+oyHSbXZnLiddpyS69Qi2nOgwOns6rwbOo7RJYbf1K0ousxgXkn5sMyJIkPe8yLpaQoNWxc3kmpYVmGrf3ZNicBvQdXQ8Xt8fsBlRJhdfzSJm3n7NLDmPIK6FWqzqEasJoOaELTl6uTzbmjAwWLFjAqVOniI+Pv+8zvV5PeHg4kydPZsyYMbjd2WHIlH4N/Zr56NcvxlqQj1OzNniPjcTrtQkoPTwf1s0j3dQdIyVJy8UTa7CYDAQ27UtImIbGocNRqRyf6JoqYhVWjt/aQYIuhqO5W1AolPQIGM4wdRQhvn2r/I8aSZJ+JANyBWRAliTpRVFWbGZPXBbx0Tqupxbj4ePAy28HMXS2mvpN3KrcvrnMyKW1J0nWJpFzTIejhzMtJ3UlVBOGb6u6T+EKbO59wK9WrVpMnTqV2bNn0+TO1p1WQxlFW9agj9NSnnocpbsnnq9PwmecBqcmj9ky8yHKSvI4e2gJqQfmU5h3DXfv+rTpOYO2PWfg7l3vqV3TT2WVXmGrbj7fZi6lyJRPQ4+2DFXPZmD9ibg6yLqUklRVMiBXQAZkSZJeNEIIUpNuk6DVsX/jTawWQechtRk2pwGdXqmNUln1mcob36eRHJ3IpbUnsBotBA1oTogmjMbD2qJ0qNqsdceOHTl58v41zQqFgiFDhhAVFcUrr7yCUqlECIHh9BH0sVqKt61DmIy49hiIzzgN7gMiUDg8uiTeT1mtFtLObiM5MRrd+R0oVY40afcGoWEa6jXuVW2zu+WWMvZmryJBF8PlwhO4OXgxKHAyQ4NnE+xhX9iXJOlHMiBXQAZkqbrV5Afdfkkq1cN3hVMqbbsoVqeq/p5Vdew/55+ZW5kGti9KZ+uCDG7fKKduY1fCI9W8PDUIz1pVX0pQmlPE2SWHSJ1/gCLdbTyCfGg7qxdtpvfELcC+ZQ8/yM/PZ9myZcTExHD16tUHPm/SpAmRkZFMmTKFWrVsJdTMeTkUrluMfs18zNnpONQLxnv0LLxGTsPBz74i7QU5l0hO0nLu++UYy/TUDmxHSJiGFp3G4ujsXnEDj5BdlM3ojaNZ++Za6nrcP+MuhOC8/gib0+ay/8YGzMJIB79BhKsj6eYfjkpZ+bAvSZIMyBWSAVmqbjW5VNov6Ze8b790mbdf4tpNRisHvrrJlhgdqUm3cXZV0ndMPSKiGtC0g1eV27darFyLTyVFm0T6rgsonVQ0e6sDoVFh1OnW8IlmYK1WK1viVvPFPz7nuwupD+wo6Orqyu7du+nevfvd94TZTMmeBApWzqXs8G4Ujk54DBmJz4QonEO72jUOU3kJF47FkZwUTV5WCs6uPrTqPpWQXrPwCWhm9/VEbolkwfEFzOo0C+1Q7SOPKyjPYVvGIrbo5pFXnkmAi5qh6tm8HPQ2Pk7+dvcrSS8iGZArIAOyVN1kQH4yMiA/+flVdeVUIQkxOvbEZVNeaqF1Tx/CNWp6v1kXR6eq1wfOP3+TlJgkzq/4HmOhAf+OQYRqwmg+phMOrvaVN9MvXkfO9D+hc1awoZkPa9LOU1BkK14UEBCATqfD2dn5oecaL5+jYFUMRZtWYC0pwrltJ3zGR+Hx6iiULpV/uFAIQdbV/SQnRnP19FdYrWbUrQYT2ieKBq0Go1RWvKTk3g1aXB1cufqrqw/MIv+UxWrmcG488WlzOZ2/BweFE33rjSZCraG5dxf5UJ8kPYYMyBWQAVmqbr902KmpZEB+8vOflqLbJnYtzyQhRkfW5VJq1XFi8PRghswMxj+o6tszG4vLubDye5K1+8k/k42LrxutpnYnZHZvvBvXrnQ75afPUaCNoyguntLSEnY08WWl+RYRY0bx908/ve/YPXv2sHv3bmbOnElQkK1esrW4iMLNsehjozFePovSxxfvN9/Ge8xsHIMb2XVNJfpsW03lAwsoKczGy68RIb0jad19Ki7uj94e+94NWpxUTkzrMO2xs8g/pSs+R4JOy67MFZRZimnm1ZmIBlH0rTsKJ1X1bKUtSTWZDMgVkAFZqm7PStipaWRAfvLznzarVXBy5y3itTq+T8hFoVTQY3gAERo1of18q15TWQiyEi9zem4iV79OQVgFDV9tTYgmjAavtKz0rnaW23oKV2xCr43DePk61gA//GeMxmvmaByDbLOx4eHhbNmyBZVKxfDhw4mKiqJvX1sJNSEEZUf2oo/TUrzra7Bace83FO/xUbj1GmTX7noWi4mrpzeRnKQl60oiKkcXmnccQ2ifKAKCO9537MO2967sLPJPlZgL2ZMVy+a0aNJLzuHl6MfLQW8Tro6kjmv1baUtSTWNDMgVkAFZqm7PWtipKWRAfvLzq9PN66UkxKSzY0kGRfkm1K09iNCoGTChPm6eVX9QrDizgNQFBziz8CClN4vwbupPSGRvWk3uhkutypWiE1YrpTsPoI+OpWTLXlAq8Rj+Evmv9yNkwlsPrFVu06YNGo2G8ePH4+lpe3DQdCODwjUL0K9diCUvB8eGzfAeMxuvN6ag8vKx65puZaWQkqTl/NGVmI2l1G3YndCwKJq2fxOVo/Mjt/e2dxb5vnsgBKfz95Cg03Io5xsQgi7+Q4lQa+hQexBKRfVspS1JNYUMyBWQAVmqbrKKxZORVSyevP+fQ3mZhX1rsomP1nH5RCGuHipemhxIhEZNcMuq1+m1GM1c2Xia5OhEsg9ew8HVkebjOhOqCcO/feW3kjZdS0c/fw36xespz79NYpAnca4G9l8698Cxnp6eTJ48mcjISFq2tJVQsxrLKd6+Af2qGAwnDqJwdcNz2Hh8xmlwbhlq1zWVlxZw7shyUvbHUJB7CVcPf9r0nM7MtK9JufXgFts/bO9dVTllOramL2BHxmIKjDkEujW3PdQXOAV3x+rbSluSnmUyIFdABmRJkqQnJ4Tg/BE9CVodieuyMRsF7Qf6ERGlplu4PyqHqs9U5p7KIDk6kYurjmMuM1GvV2NCo8JoMqIdKqfKzVpbywwUrdmCXhtH+fFULrspWdfYi/VXz1BSWvrA8YMHDyYhIQGV6scH7AxnTqCP01IUvwpRbsClcxg+4zR4vDwChWPlS+IJqxXdhZ2kJGm5fmYLAI1DhxMSpiGoWf9qe7jOaC1n/431JOhiOFdwCBeVOwPqjydcHUkjT/vCviTVdDIgV0AGZEmSpKejIKecHUsy2DIvndx0A/7BLrw6K5jB04LwCXh4JQl7GG6Xcm7ZYVJi9qO/cgu3ul60mdGTtjN74VG/cjOhQggMR06j18ZSvG4bRUYDW5rX5suSLC5lZtw9buTIkaxdu/ahbVgK8incuBT9qnmY0q+iCqiH98gZeI+agUOd+nZdU2HedVL2z+Ps4SUYSvLwrduakN6RtOwyASfXqpfXe5TL+hNs1s1lX/YajFYDIbX6MlQ9m151RuCgrJ6ttCXpWSIDcgVkQJYkSXq6LGYrh+NzSdDqOPVdHg5OCsLeqsuwOQ1o2c2+9bsPI6xW0nacJzk6kbRt51CqFDQeHkpoVBj1+zSt9AysOSePwsXr0M9fgyk9i+/9XVntr2T7+RT27t1LWFjYfcevWrWKJk2a0LWrrV6ysFopTdxOQWw0pUnbQaXCY9AIfMZrcOkcZtdMsNlk4NKJtSQnRZOjO4ajswctu04itHckvvVa23V/7FFkzGdH5hISdDHcLLuOr3M9Xg2exZCg6fi6VN9W2pL0S5MBuQIyIEuSJFWftLPFbJ2vY+fyTMqKLDTr5EW4Rk2/MfVwcqnaltMA+iu5pMw/wNklhym/XYpf23qEaMJoMb4LTh6Vm7UWZjMlCXsoiI6l7LtD3HCEpiMjqDVnIs5dQ1EoFJSUlBAYGIher6dTp05ERUUxatQoXF1t9ZKNuivo42Io3LgUa2EBTi1C8BmnwXPYeJRu9u2udyPte5ITo7l0Yi1Wi5GgZv0J6RNF47bDUKqqZ8c8q7By7NZ24tPmcuzWdlQKB3rVeYMItYY2tXrLmsrSc0cG5ArIgCxJklT9SovM7F6ZRUKMjrQzxXj5OfLy1CCGzg6mbqPKVad4HFOpkYurj5OiTSL3ZAZOXi60mtyNkMje1GpRp9LtGM9dpiBmFUUrNmEtKsG5c1t8NONZXXKDWVGa+4719fXl7bffZvbs2TRqZKuXbC0rpShhNfrYaMrPnULp6Y3XiMl4j43EqVFzu66prCiXM4eXkLp/HkW3dXj4BNG21yza9JiGm1flr8leWSWX2ZI+jx0ZSygx62noEcKwBnPoX28sLg5PvpW2JD1LZECugAzINUNNeKq/ulSl5FdVqyn8kudX9fe8Kue/yH/eqpsQguS9+cRH6zj0TQ7CKuga7k94pJqOL9dGqax6TeUbh6+THJ3I5fWnsJosBA9qQUhkGI0i2qJUVe6hQWtRMYUrv7HVVD57mYteTsSqXdh0MZVyY/l9xyoUCoYOHUpUVBSDBg1CqVTa1jqfOEhBnJbiHRvAZMKt1yC8x0fh3m8oClXlZ8+tFjPXziSQkqQl/cIulCpHmrZ/i3Z95lCnYbdqm901mAyzfScAACAASURBVEvYm72aeF00V4tO4+7gzaDAKYSrIwl0t38rbUl6lsiAXAEZkGuGZ7kubHWryrX/0vV4a+rYX+Q/bz+n3AwDW+fr2L4og4IcI4HN3BgaqWbQ5EA8fKr+oFjpzULOLDpE6oIDFGcU4KmuRdvZvWnzdndc/T0r1YYQgrI9hynQxlHyzXfkW0zEt6rNyrw0dDkP/mupadOmfPLJJ4waNerue+bcGxSuX4x+9XzMNzNxCGqI9+hZeL/5Nirfyu8YCJB/8zyp++dx7shyjIZC/IM6EtoniuYdR+PgVPntse0hhOBMwQG26GLYf2MDZmGio9/LRDSIoov/q6gUVV8qI0k/NxmQKyADcs3wIgeWmhoyq3p+Te5bso+x3MrBr26wea6Oc4cKcHZTMWB8PSI0DWgUWrkg+zhWs4Wrm1NJiU4kY88lVM4ONBvdkVBNGHW6VH53OVPGDQoXrEG/cC3GnFvsr+fBai8zuy+k3nfc4sWLefvttx84X5hMFH/3Dfo4LWVH9qJwcsZj6Gh8xkfhEmLf/6eNhiIuHIsjOSma/OwzuLj50qr7FEJ6R+Jdu7Fdbdkj35DN9ozFbE2fT155FnVcG/Jq8CwGB03Dy8mv2vqVpKdNBuQKyIBcM7zIgaWmhsyqnl+T+5ae3OWThcRHp7F3VTZGg5U2vWsREaWm14g6ODhWvaZy/tlskrVJnF/xPaYSIwGd1YTO6UOzkR1wcKncrLW13Ejxhu3otXEYDp3kuouSDU29WZt2DqWDAxkZGbi5/biuWghBQkICgwcPxvFOveTyS2fQx2kp/PpLRGkJzqFdbTWVXx2J0tml0tcjhCDz8j5SkrRcSd6EEFYatn6VkDANDVq+Ytf22PYwW00cyvma+DQtKbf34aR0oW+90YSrNTT3fqLMIUk/KxmQKyADcs3wIgeWmhoyq3p+Te5bqrqifCPfLsskIUbHjatl1KrrzKszgxgyIxi/+pUPkI9iLCzj/MqjJEcncfv8TVz83Gk9rQchs3rh1bDyM6GGE2fQa+MoWhVPiaGM66GNGPDBr/EY8fLdzUP27t1L//79qVevHjNmzGDGjBnUr2+rl2wp0lO06UsKVsVgunoeVa3aeL01De8xs3AMrPzsNkBxQSapBxZw5tAiSgtv4O3flJBes2nVbTIu7r52tWWP60WpxOui2Z0Vi8FSQkvv7oSrIwmrNxInZdXrX0tSdZABuQIyINcML3Jgqakhs6rn1+S+pafHahUc236L+Og0jm27hcpBQa8RdYiIUtOmd60qP6AmhCBjzyWSoxO59k0KQkCjiDaERvUheGDzSs/AWvILKFy2EX3MKkxX01HV9cd75ii8Z4xizK+i2LBhw91jHRwcGDFiBBqNhrAwW71kIQRlB7+jIDaakj3xALgPGIb3uEjcer5k13VazEaunN5IcmI02dcO4uDoSosu4wnpHYl/UHv7bpAdSkx6dmWuIF6nJbP0It5O/gwOms6rwTMJcFVXW7+S9CRkQK6ADMg1w4tcVUBWsbifrGLx4sq6XMKWeel8uyyT4tsmGoZ4EB6pZuCE+ri4V70+cJEun9QFBzmz6CBlucX4NA8gJLI3rSZ3w9m7cg/ACYuF0u2JFGjjKN2WCA4OLGnpw4rsS9zIu/XA8SEhIWg0GsaNG4eHhwcApsw09KvnU7h+MZbbt3Bs1MJWU/n1iag8K7dj4A9yM06RnBjNxeOrMJvKqNe4F6FhUTRpNwKVg5NdbVWWEIKTebuI10XzfU4CAN3rvEa4WkN73wGyprL0TKgxAVmhUDgCvwI+BSYIIdY85Jg6wF+BPkARUA5ECiFSFAqFH6ADUu45Zb8Q4r3H9SsDsiRJUs1iKLWwd1UWCTHpXDlZiLu3Ay9NDiQ8Uk1Q86rX6bWUm7i0/hQp2iRuHL6Oo7sTLSZ0IVQThl/bym8lbbychn7eKgqXbqS8QM+eYC/inEs5dPn8A8d6e3szefJk3n///bvLL6zGcoq3rqMgNpry5O9RuLnjNXwi3uM0ODdrY9c1GUpvc+7wMlL2x6C/dQU3zzq06TmDtr1n4eFt3/bY9rhZlsZW3Xy2Zyyi0JRHkHsLItRRDAyciLtD9W2lLUkVqUkBORJwBYYD2kcE5CGAqxDiqzs/vwu8IoR4WaFQtACihRCD7OlXBmRJkqSaSQjBuUMFxEfr2L/hBmaToOPLfoRHqukaHoBKVfWZypzjOpK1SVxcfQKLwUT9Pk0I1YTR+PV2qBwrV97MWlpG0ap49No4yk+d46K7irWNPNh45QylZWV3j1MoFFy9epWGDRs+0IYh5ZitpnLCaoSxHNeuffEeH4XHwNfurnWuDGG1ojv/LclJ0Vw/uxWFQknjkOG06zOH+k37VNvsrtFiIOnGejbr5nJRfxQXlTsD608kokEUDTyqbyttSXqUGhOQ73aqUOwF5j8sID/k2LHANCHEAIVC0Qv4CrgKOACHgU+EEA98UapQKGYAMwDUanWntLS0p3gFkiRJ0s/t9s1yti1MZ+uCdPIyy6nT0JVXZwXz8tQgfPyrvpSgLK+Ec0sPkxKTROH1fNzre9N2Zk/aTO+Je73KLXsQQmA4eIICbRzFG3ZQaDKQ0KI2K4syuZKVybBhw/jmm2/uOycvLw8hBLVr2+olW/Jvod+4FP3qeZgzruNQJxCv0TPxHjkdB/+6dl2T/tZVUg/M58yhxZSX3savXltCwjS06DIeJ2cPu9qqLCEEFwuPsUUXw97s1Zis5YTU6suwBnPoEfAaKmX1bKUtST/13AbkO8stDgBvCyH2KRQKZ8AshLAoFAp3bEsx+gGdxWMuRM4gS5IkPT8sZiuHvslh89w0UvbdxtFZSd/RdQnXNKBFF/vW7z6M1WIlbdtZkqMT0e04j9JBSZM32xOqCaNer8aVnoE138hFv2gdhQvWYMy8weE6bgSPjKDvR++i8qt197gPPviAf//734wZMwaNRkPnzrb/nwuLhZJ9W9HHRlO6/1twdMTj5TdsNZU79rRrJthkLOXS8TUkJ2nJzTiBk4sXLbtOIjRMQ606Ley7QXYoMObybcZStujmkWNIw885kFeDZzIkeAa1nKtvK21Jguc0IN9Zb/wt8B8hROwjjlEBhUB7IcSlR7UlA7IkSdLzKe1MEfFaHd99mYWhxEKLrt5ERKkJe6suTi5V3/2t4HIuKTFJnF16BKO+DL/Q+oRG9aHF2E44uleuvJkwmSj+5jv02jjK9h5B4eyEx+ih+ESNh7bNCA4O5tatHx/u69q1K1FRUbz11lu4uNjK3RmvXUS/eh6FG5dhLdLj3Ko93uM0eEaMRenq9qiuHxyLENy4doiU/TFcOrkOq8VEcItBhIZpaNg2HKWyenbMswgL3+ckkKCL4UTetzgonOhd9w0i1FG08ukhH+qTqsVzF5AVCkU9YBvwTyHEqse044DtQb6GD1tm8QMZkKXq9ktWY6iqF7XvqqrJY38elRSa2bUikwStjowLJXjVdmTwtCCGzlYToK769symknIurDpOcnQieclZOHm70npKN0I0Yfg09a90O+WpF9HHrKLwy68RJaXcDG3MO0VXOHnt8gPH1q5dm+nTpzNr1izUalsJNWtpCUWbYymI02K8kILSywevEVPwHheJU4Omdl1TaeFNzhxaROqBBRQXZODp24C2PWfSpsc0XD0rf032yii+QEJ6DLsyV1Bi1tPEqwPhwZH0qz8WF1Xlw74kVaRGB+Q7M8WbgclCiEsKhaIBtnD8oRBi40/OGwYcFUJkK2z/3Pw70EEIMeRx/cmALFW3X7oWcVW8qH1XVU0e+/NMCMGp7/KI1+o4sjkHgG4RAUREqWk/0O+p1FTOPnCVZG0SVzacwmq2on6lJaFRfWgwpDVKVSVrKuuLKPpyEwXaOEwXrpHq7ciaIBe+vpSK0Wi871ilUsmwYcPQaDQMHDjwbk1lw7H9FMRGU7zzKzCbceszBJ9xGtz6DEahqvxMsNVi5mrqZlISo8m4tAeVgzPNOo4iJExD3QZd7bo/9igzF7M7K5YEnZbrxal4ONbi5cCpDFXPpr5bk2rrV3px1PSAHAwcAoYLIY4pFIoNQH/g3iUT5UKIvgqFIgL4AHAErEAy8L4QIv9x/cmALFU3GZBrXt9VVZPH/qK4mVbGtgXpbFuUTuEtE0Et3AmPDOalyUG4e1X9QbGSbD1nFh0kdcFBSrL0eDXyo+2sXrR+uweufpUrRSeEoOy7gxRo4yjZvJt8Yebrln7E5aWRnnP/VxStWrXizJkzD4R8880s9GsXol+3EEtONg5BjfAZF4nXG1NR+di3u15+9lmSk7ScP/olpvJiAtSdCQ2LolnHUTg4Vn13w4cRQpB6O4l4XTQHbn6FEFY6+w8hXK2hc+3BKBXVs5W29PyrcQH55yYDslTdZECueX1XVU0e+4vGaLCQtP4G8VodF47ocXFXMWBCfSI0ahq29axy+xaThatfJ5OiTSJz32VULo40H9ORUE0YAZ0qv7ucKS0T/YI1FC5aR/mtfJLqe7Da08TeC2cAiI6ORqPR3HdOSUkJ7u62MC5MJop3bqIgNhrDsSQUzi54RozFe3wULq072HVNRkMR57//kuQkLbdvnsPF3Y/WPaYR0msWXn4N7WrLHnmGLLalL2RrxgJul9+grmtjItQaBgVNwdOxVsUNSNI9ZECugAzIUnWTAbnm9V1VNXnsL7KLx/TER6eRuPYGRoOV0H6+hEeq6TE8AAfHqs9U3krJIkWbxIXYo5hKjNTt3pD2v+1Ps7cqH1CthnKK121FH7MKw5HTXHVV8lUzHz5ZOA//bj+2I4SgS5cueHp6otFoeO2113C8Uy+5/HwyBXFaijbHIspKcWnfHe8Jc/B85U0UTpUviSeEIOPSHpITo7mW8g0CQaM24YT2mUNw84GV3qbbXiarkYM3NxGvi+bM7f04KV3oX38cw9RzaOzVrlr6lJ4/MiBXQAZkqbrJgFzz+q6qmjx2CfS3jHy7NIOEGB05aQb8Ap15dWYwg6cF4Vuv6ksJyvVlnFt+hJSY/QQNaEb/eaOeqB3DsRQKomMpXrMFUW7EtV83vDXj8HhtIEeOH6dHjx53jw0MDGTmzJlMnz6dunVt9ZIthQUUblqBPk6L6folVH4BeI2cjveYWTjWDbJrLEW300k9sIAzBxdSVpyLT0BzQnpH0qrbZJxdq15e71GuFp4mQRfD7qyVlFvLaO3Tkwh1FL3qvoGjsnq20paeDzIgV0AGZKm6ySoWNa/vqqrJY5d+ZLEIjm7NJT46jRPf5qFyUBD2Vl3CNWpa9/Sp+kN9ViumUhNOHpUrCffIcd7KR79kA/p5qzGnZeIQWIe17erypx2bsFgs9x3r6OjIm2++iUajoWdPW71kYbVSemAn+jgtJXsSQKnEfcAwfCbMwbVbP7uu02Iq5/KpDSQnRXPj+mEcndxp0WU8oWFR+NVvW6XrfJwi0212Za4gQaclq/QytZzqMDh4Oq8Gz6K2S2C19SvVXDIgV0AGZEmSJKkimZdKSIjR8e3STEoLzTRu50lElJp+Y+vj4lY99YHtJSwWSrbuQx8dS+m3+7nhAF+18GVV9mVy8vMeOL59+/ZERUUxZswY3NxsJdRM6dfQr5mPfv1irAX5ODVtjffYSLyGT0TpYd+a7BzdcZKTtFw8sRqLyUD9Jn0IDdPQuN3rqFSV3x7bHlZh5fitHSToYjiauwWFQkmPgOEMU0cR4ttX1lSW7pIBuQIyIEuSJEmVZSgxszsum/joNK6nFOPu7cArbwcxNFJN/SbPTp1e48VrtprKy7/CoC9kdwMvVjmWcPjyhQeOfe+99/jXv/5133tWQxnFW9dSEKulPPUYSndPPIdPxGecBqemrewaS1lJHucOLyVl/zwK867h7l2fNj1n0LbnDNy961XpOh8nu/QqW9PnsyNjCUWmfBp4tCFcHcmA+hNwc6j6A5hSzSYDcgVkQJYkSZLsJYTgzIEC4qPTOLDxJhazoPPg2kTMaUDnwbVRKp+NmUprSSlFcZspiI7DmHKB856OrGvgxsbLqZQZDABcuHCB5s2b33eeEOLubKvh9BEKYrUUb12LMBlx7T4An/FRuA+IQOFQ+ZJ4VquFtLPbSE7Soju3HaXSgSbt3yQkLJL6jXtX2+xuuaWMvdmrSdBpuVx4AjcHL16qP4lwdSTBHi2rpU/p2ScDcgVkQJYkSZKqIi/LwPZFGWxdkE5+djl1G7kyNFLNK1MD8fR9Nh4UE0JQvOswxYvXUPzVTvTmcuJb1ia9YQBLtnxzX8WJ7OxsBgwYwLRp05gyZQq+vrZ6yeb8XArXLUa/Zj7mLB0O9YLxHj0Lr5HTcPALsGs8BbmXSUnScvbIMoxlemoHtiMkTEOLTmNxdK5cnWh7CSE4rz9CfFo0STfWYxZGOvi9xFB1JN39I1Apq17/Wqo5ZECugAzIkiRJ0tNgMlo59PVN4qN1pCbdxslFSb+x9YjQqGnasfoqOVTG/t99TXFGAUVp+YRO6UTtzNPoF6zFciMXx8bBeM8ei9fUN1D5+vCXv/yFjz/+GAAXFxfGjRuHRqOhQwdbGTlhNlOyJ4GC2GjKDn2HwtEJjyEj8R6vwaVdN7tmgk3GUi4eW8XpxLnkZSXj5OpN625TCOkdiU9As+q4FQAUlOewPWMxW9LnccuQgb9LMEODZ/NK0Nv4ONsX9qWaSQbkCjxJQJZPqL9YanIVCkmSfhnXkouI16axJy4bQ4mFVj18CNeo6f1mXZycf77d3yxGMyf/vYczCw4wbPtsitLyOfLRNjr/8WUavtyc4k07KdDGYUg6hsLFGY8x4byUtJEzly890FaPHj3QaDS8+eabODvbKm8Yr5ynYFUMRV8tx1pShHPbTniP0+A5dDRKF9dKj1MIQfbVAyQnRXPl1EasVjPqVoMJDdPQoPUQlMrqeRDSYjVzJDeBzWlzOZ2/GweFE33qjeSdNgtxVlV+/FLNIwNyBZ4kIMsapy+WmlzHWJKkX1ZxgYmdyzPZEqMj81Ipteo4MXh6MENmBOEfXP0BTLfzPCnz9tNyYleaDA8F4OzSQ1yLP8PQTdPuHleefJ4CbRxFsZspLS1hR+NarLTkkZJ27YE2AwICmD59OjNnziQ4OBgAa3ERhZtj0cdpMV46g9LHF683puIzNhLH4EZ2jbmk8AZnDi4i9cB8SvRZePk1IqT3bFp1n4qru18V7sbj6YrPkaCLIa04lc+67JYVL55zMiBXQAZkqSIyIEuSVFVWq+DkzlvEa3V8n5CLQgE9htchXKOmXX/fagljFqOZg3+Ix2q00Oe/I+6uM949Yw1KByX9YkZitVhRqmzvm8uMKMoNFC7/Cn3MKoyXrnG6ljNr6zuz+WIKJpPpvvZVKhVHjhyhU6dOd98TQlD2/T70cVqKd24CqxX3fkPxHqfBrffLdu2uZ7GYuJr8NcmJ0WRdSUTl4EzzTmMIDYsiQN2p4gae0L0PKErPLxmQKyADslQRGZAlSXqabl4vJSEmnR1LMijKN6Fu7UGERk3/8fVx93p6D4qZDSbiwxcQMrs3Td9oD4D+Wh6JczbQ5I12tJr843rh4ozbXN2cyrVvUmgxoQstxnaidOcB9No4ShL2cEth5euWfsTmXCXrVi4AjRs35tKlSygfEXpNNzIoXLMA/bpFWG7dxLFBU1tN5TemoPLysetabmWlkJIUw4WjKzEZS6jToBuhYRqadRiJyrFqG61ILyYZkCsgA7JUERmQJUmqDuVlFhLX3SB+bhqXjhfi6qHipUmBhGvUqFt5VLn90puFrG7/TyZe+TOObrZqGsc+/Zb8czcJ1YRRt1vDu7OlpTlFlOUWU5x+m7NLD2O4VUL/BaPwaRaA6Vo6+gVr0C9ajzH/NolBnsS5lfPa5PG8+4c/3Nfnpk2b2L17N5GRkbRqZauXLIxGinZsQB+nxXDiIApXNzwjxuEzToNzq3Z23jM9544sJ2V/DAU5F3H1DKBNj2m07TkTT191le+Z9OKQAbkCMiBLFZEBWZKk6iSE4OJRPfHROvatzcZsFLTr70vEnAZ0j/BH5fDkD/XtjVqPi68bnf8wiKwD10j61UY6vDeA1lO639f/D1tO/7AEYv/vvsa/fSAtxnW5e5y1zEDx2q0URMdSfjwVhYcbXpNH4BM5FqdWTQHo1asXBw8eBGDgwIFoNBoiIiJwuFMv2XD2JPpYLUUJqxCGMlw69cZnnAaPl0egcKp8STwhBOkXdpGcpOV6ajwAjUJeIyQskuDmA+USCalCMiBXQFaxkCoiq1hIkvRzKcgp59ulmWyZpyNHZ6B2kAuvzgpmyPQgfALsX0pQnHGb459/R1bSFbwa+9FgcCtqtw+iVnN/nH3u3/nv0roT5KVk49XYj/MrviewX1O6ffwq+iu5ZCVdRVittJ7aAyEE5d8nUxC9kuJ12xBGE64DupMZ0Yvuv5n1wBiCg4OZNWsW06ZNIyDAVkLNor9N4Yal6FfPw6S7gsq/Lt6jZuI9agYOderbdY2F+Wmk7J/H2UOLMZTkUatOK0LCImnVZSJOrl5237Ofk8FSiovq2dmB8UUiA3IFZB1kSZIk6VljMVs5kpBLglbHyV15ODgp6P1mXYbNaUDLbt52z5CW5hThXMuNstxiYlt+wsAlY2n2VgfMZUYcXG0zt+UFpXw7fiUWo5kuHw6mXs9G6Hac4/CftuDfIYiyvBIMucX0/vfr1O3WEABzTh6Fi9ehn78GU3oW3/u7ssZfybbzKVit1vvG4OTkxMiRI4mKiqJr1653Z61Lk3ZQEBtNaeI2UKnwGPQ63uM0uHbpY9d1mk0GLp1cR3LiXHJ0x3B09qBll4mEhEXiV6+NXffr57D4/O+4Zcggx5DGiIbv0rvuG7/0kF4oMiBXQAZkSZIk6VmmO1fMlnk6dq3IorTQTLNOXgyNVNNvTD2cXe2rD2wsLCN1wUFaTe2Ok5cLF2KP0nx0x7sh2ZBfwo6xK3j1q2nkpWZz5KOtBL/Ugo7vDgDgwO+/wSPQh3bv9L2vXWE2U5KwhwJtHGW7DpLtCBub+7I66yK5t28/MI6+ffuyZ8+e+wKwUXcF/ap5FG5cilV/G6fmbfEep8Fr2HiU7vatyb6ZdpTkpGgunViLxVxOULP+hPSJonHbYShVv+yOeSarkU3X/83W9AV80mk7Nw1pxF76iNFN/ki3gPBfdGwvEhmQKyADsiRJklQTlBaZ2b0yi4QYHWlnivH0deSVt4MYOjuYuo3s/5rearZw8n93U3arhO5/fRUHVydKbhSyLPBD3r7xCcc//w5TSTkd338J70a2+sNnFh/k4qrjvL57DlazhewDVynJLqT56B/LrhnPXaYgZhVFKzZhKCpiZ0Mf4pSFHLv64+YjM2fOZP78+Q8fV1kpRVvWoI+Npvzsyf/f3n3HR1mlCxz/PemkEzqEBKSXBAULLShSluoiFqqCHTJh+2d33c/dq3t39+re3b2r14QiooiEIiIKCKKCQuhFNKF3EmooyaSXmTn3jxnYIZBkElogz/fzycfMO2fe97yPB/LkcN7n4BUcSujIiYSNjcfvnnZVusfCvPPs2TSLtPVTyc1KJzg8ks69JtGpx4sEhjaqcsxuhO/Pf80XGdPo1/RZejYaAcCqE++zJXMZ/9l1yW3pU22kCXIlNEFWSil1JzHGkLb2IksT09n0WSbGYXhgaAOGW6LoOrA+Xl6eL0soupjPjje/4dT6w4S3aUjB2Rz8wurQ//2xrHz6AzpMeJA2T3e93H5xn7dpPqAdnV/pxaY/LONC2mkCm4SSfyKbbq8OuFxODsCRm0fO3KVYE+dSsucQe0J9WRgVyJKDaWzdto2YmJgr+vLOO+/Qpk0bBg4ciJeXF8YYinZuwpqcRO6Xi6C0lMBeAwgbZyGo7zDE2/PZc4fDzrFdy0lbP5X0fV/h5e1L63ufIrZPAo1bdL9lD/WVOkqYfeBVSh0lTOrwNl7ifCjy7V0v4y0+JHSait1hw9vr9s5y1waaIFdCE2SllFJ3qvMni1gxPYOV72aQnVlC09aBDIuPov/EZoTU9fX4PIXncjmwcCdN41oR3ro+4u3FZ/0S6f7XYUQ+0gaAczszWDFyFkOXvsz3f1+Nf1gdOk/qRb1OTdjz/ibObDnOozNGX3VuYwyF323BmpRM3mffkGsvpfGwfoRZxhE4sDfi5cX58+eJjIykuLiY1q1bEx8fz8SJE6lbty4AtnNnyFn0Htb507GdPYlPs2jCRk8i7KkX8Y6oX6WYXTy7j13rp7F3y2xKinJoEHkfMXEW2nYbg6/fzX1grsRexGvfD2No88mX1xyfKTjKtL1T6NXoCQY0mwiAiHAi/wC7s9azN3sjnev2oX+zZ29q32qbOyZBFhFf4OfAG8AzxpgF12gjwH8BTwN24HvgFWNMfkXvVXTd2pQge3tDmWcmAPDyArv97r7+nVxJ4nr6fifft1LKc6UlDjYsPsOyxHT2bMzGv44Xfcc3Zbglinu6VL2SQ2l+MavGfEjPN4cT0bEJAJ/EvUXTuFZEdGzMgXk7uO/XfWnez7nkIef4RZYNmc6w5a9cXo5xzfOeOEPOuwuxzliAPfMCvq2jCYsfy4ycDF59/bUr2gYGBjJu3DgsFgtdujjrJRubjbzVn2NNTqJw87eInz/BQ0YRPj6BgNgHrnXJcpUU57F/21zSUpK4cHoX/oF16dj9eWJ6TSasQasqnctTWcVnsWy8l/f7HL5cvWLh4TfIyN/LsCgL7cMfAiC75ByJuyfhJd70bvQkKWcWUWjP5eedZtKgTvOb0rfa5k5KkOOBOsAIIKmcBHkiMAXobYwpFJEPgHxjTEJF71V03dqUIN/uery38/q3+96vx/X0/U6+b6VU9RzamcPypHS+m3eK4kIHHXuF89iUaHo+3ghfP89rKu+dvYXv/7GGJr1aYuwOTq0/wqhtdynbAQAAH/xJREFUv2H9bz4jqEkoXX72MAERQQDsnrWJ7X/9iglHXqvkrE6O4hLyFq/CmjiXok07SfcXFrUJZ+HxfWTn5lzVvnfv3iQkJPD444/j56qXXHxwN9bkqeR8PgeTn4d/zAPOmspDR+HlH+DxfRpjOHVoHakpSRxJXYLD2InuMJjYOAvRHQZVaXtsT0zdk0CwbwSj7nmVPVkbmL7v5zzR4jcMjHzucpsd51bxefr/8Wybv9A69D4APtj/Kt0aDCI24uHyTq2q4I5JkC9fVOQ7YHo5CfJKYIkx5l3X63uB1caYehW9V9H1NEF20gS55tIEWSlVHbkXS/h69kmWT83g9OEC6jb2Z/DLkQx5pTn1mnqWQBZlFbD3g81EdGxM3Q6NCY2OYPUL8whv24BuvxtweZOR+ff9jfbPPMB9v3r08jFPFe3cgzVpLrnzlpNfWMCXrSNILj1P2vGjV7Vt3Lgxf//73xk/fvzlY/a8HHI//ZDseVMpPbIP77r1CX3yBcLGTsa3WbTH/QDIs55i1/rp7N40k4KcM4TVb0Xn3pPp+NBzBARFVOlc5TlXdIJFR/7G7qwUGgfeQ7f6g2gVci/NgtoS7Ovcgvti8Rn+mTqBX8TMokFAJOBcp9yoTgtGt/oDR3J+ZPv5lYT61mdQ8xdvSL9qm7stQd4PxBtjVrtehwA5QDiwtbz3jDHWMud5GXgZICoqqtvx48dv3g3VILc7WdIEuXo0QVZKXQ+Hw7Bj1XmWJ6WzbcU5vLyFHiMaMjwhmpg+dav8gNq6XywmvG1DYuPjANg1cyM73vyaJ9b9nOBm4dXup/1iNjkfLMY6dR4lR9L5ISKABU18WbY/DZvNdrnd4sWLGTly5FWfN8ZQuGkN2XMTyV+zFICgvsMJG28hsEe/Ks0E220lHP7xU1JTEjl9ZAM+vnVoe/84YuMsNIi8t/ITeCC7OJNg37pYS87xUkp7fhXzAb0bP4ExhlJHMcmH/kTqxe94LHoKpwsOk3zodT58JJ3NmUv55uSHdAjvQWbRcXJKLhDfMZGWITGVX1RddrclyAeAl40x37le1wEKgAhgS3nvGWOuLsLoojPITpog11yaICulbpRThwtYMT2dVbNOkpdVSovOwQyNj6LfM02pE+xZ5YSTaw+ydspiIh9tQ0BEIHve30LPN4bTdky3yj/sAeNwUPDlOrKTkilYuY5MLwdL2tUj+exhfOoEcPTo0ctbVwPYbDbmzJnD008/TXCws15y6al0rPOnk7PoPewXz+Hbsi3h4yyEPD4B75CwKvXn3MkfSUtJYv+2udhKC2nSsiexfabQqstIvH083x67PPm2HFZmzGBgs+cJ9atHfqmVIF9nH/dmbSKn9AKfHP0fooI70r/pBBL3xDO29X/Sq9HjAPxv2vN0iehLv2bPXHdfapO7LUFeA8w2xsxxvW4HbAdCgdXlvWcquBFNkJ00Qa65NEFWSt1oRQV21s4/zfKp6Rz6PoegMB/6T2jGsPjmRLarfFOO0vxi0qatx9gdNHu4NY27t7wp/Sw5nI512jxy3l9McVY2p9tE0u1XLxM6/jG8gp3rn5csWcLIkSMJDQ1l4sSJxMfH066d8+FBR0kxeSsXYZ2bSNGPW5DAIEJ/+gxh4yz4t+1cpb4UF2Szd8tsUtcnYT13iMCQRnTq+TKde75McN3IG3K/xfZCFhz+K4X2XJ5p82cCvIP45uSHLDryJv/qsYXE3ZOpH9CM8a3/RB0f5/+nuQdf53zxCX7R+T0KbLnsOP8lxfZCrXpRiTs6QRaResBSYKIx5qCIPAc8B/Q3xpSISCIQYoyZUNF7FV2vNiXIWsXi6uN3QjUHrWKhlLpZjDHs25zN0sR01n9yBluJ4b4B9RhuieLBYQ3x9r419YEr4ygoJHf+cqxJyRTv3INXaDChE0cSFj+WwfEvsWbNmivaDxgwgISEBIYOHYq3q15y0a4dzprKy+ZhSoqp80AfwsYnENx/BOLreUk843CQvu8rUlOSOLbnC0S8uCdmBLF9EmjW+uHrrqmcXZzJx0feZNv5FTQLbEuwb12GR1loENCc174fxpROM2gb9u+8bvL6WEa0+Dntw3vw0cE/UmDLIdAnjDOFR5jY5r+5v8Gg6+rP3epOT5CbA5uAEcaY7SLijbOU21DABuwBEowxORW9V9H1alOCrJRSSpUn62wxX848wYoZGZw/UUTD6ACGTo5i4PORhDe4/qUEN4IxhqJNO8lOnEveJ6swpSUsaBfBnNyTHD518qr20dHRTJ48mRdeeIH69Z31ku1ZF8hZ/D7Z86ZiO3EM74ZNCRv9CmGjXsanQeMq9cd6/gi7Nkxnz6ZZFBVcJKJJJ2J7W2j34DP4+Vdte+yyckouUGjPo2FAFCLCkZwfeW//b5jU4f+ICu4AQOrFtby+Yxhz+57itR3DuK9ef34S+QL1Apqy+Og/uVh8ipfa//O6+nG3uuMS5FtNE2SllFLq3+w2B5s+z2RZYjqp313E19+LPqMaMzwhmnYPVG397s1kO3OOnPcWYZ0+n5KTZ9jSMJD59YRV+1Ipm7/4+/szevRo/vKXvxAZ6VwOYex28teuwJo8lYKUL8HHh+CBTzhrKnfrVaWZYFtJIQd2zCdt/VQyM3bg6x9Ch4cmEBNnIaJR+xtyv7mlWfztxzEkdJxG48CWXCw6zR93DKFv03E0CGjOZ8fe4rddkmkSeA/GGH64sJqFR/6b33WZT13/27Otdk2mCXIlNEFWSimlru34njyWJ6XzzYcnKcq30/aBMIYnRNHn6cb4BXi+1fPNZGw28j5fjTUpmcJvN3PSDxa3qcv8Ewe4YM2+3M7f358TJ05cnkl2V3LsINZ5U8lZ/AGOXCt+7bs4H+obPhavwCDP+2IMZ45tJi0liYM7F+Gwl9C8XX9iesfTsvNwvLyrt4W0MQaDYUXGdL5In0bbsAfJs2VRYi/kz/ev5I/bB/NAg6EMbT7p8jbVHx95k5Qzi3in545qXfNupwlyJTRBVkoppSqWn2Nj9ZyTLE9KJ2NfPqH1fBn0UiRDJkXRKLrO7e7eZcW7D2KdmkzOnM8pysvlq5bhJGPl+6OHmDBhArNnz76ifUZGBg6Hg+hoZ71kR0E+uUuTyU5OomR/Kl6h4YSOfI6wcfH4RbeuUl8KcjPZvXEmuzbOIC8rg5C6UXTuNYlOPV6kTkiDat9jbmkWKac/pkVIDM2D2hPgE8zffhzDw01GE9f4qct1qEetrs8rHd7i0abjcRgHXnJjNzy502mCXAlNkJVSSinPGGP4Yc1Fliels/lz5xPADw5ryPCEKO7rX++6H1C7ltSkdYRE1SV6SCe8vD1L8uw5eeTOWUJ2UjKl+46wK8yXpqOG0fUPP8M3utnldpMmTWLmzJkMHz4ci8VC//79ERHnWuft68lOTiLvq8VgsxEYN4iw8RaC+gxGvD2fPXfYbRzdtYzUlEROHFiDl7cfbbqOIjbOQqPoB29IzN7e9RIxEQ/zaNPx2I2dT478DytPvMvsh6/ebEU5aYJcCU2QlVJKqarLTC9kxYwMvpx5Auu5EiLbBTF0cnMGTGxGUJjnVSEq4rA7SO7432QfyCS0RQSdJ/em4ws9qFPPs2UPxhgK12wiO3Eu+UudlS6ChvclPGE8Jfd3IjIykvz8/Mvt27VrR3x8PBMmTCAszLne2pZ5GuvHM7EumI498zQ+kS0JHxdP6BPP4x1etd31Lp7ZS2pKEvu2fkhpcR4No+4nNi6BNvc9jY9f9WfiN2cuZc7BPxIb8QiljmIOWrczse0bdK0/oMo7G9YWmiBXQhNkpZRSqvpKih2kfHyaZUnp7N9iJSDIm0fHN2WYJYqWMSHXfX57qZ0jn6WSlpTCybWH8A7wpe3orsQmxNGwW5TH5ylNP4V1xgJy3l2I/XwWp1o24k9+WXy7f/dVbYOCgnjmmWewWCx07uysl2xKS8n7egnZcxMp2p6C+AcQMmwMYeMTCOjUtUr3VFKUy76tc0hNSSLr7F4CAiPo2ONFYnpPJrReiyqd65IiWz6rTszC18ufLvUepVlQm2qdp7bQBLkSmiArpZRSN8bBHVaWJaazdsFpSoocxD4SwdDJzen5eCN8fK9/DeyFXadITUph/0fbKM0vodFD0cRa4mjz9H14+3s2a+0oKiZv0UqsSckUbfmRI3W8WNQqjI+P7ibXbTb5kj59+pCQkMCTTz55eSa2eH+a86G+z+ZgCgsIuLe7s6byoCfx8vP3+H6MMZw8+B2pKYkcSf0Mg6Flp2HExiXQvF3/Km2PrapGE+RKaIKslFJK3Vg5F0pYNesEK6ZncOZoIfWa+jP4leYMfimSiCYB133+Ymsh++ZsJTUxhewDmdRpEEzHF3sQM6kXIVGeL3so2rELa1IyufOWkVtcxMo2EcwtymRvxvEr2vXs2ZMNGzZc9Xl7TjY5Sz7EOm8qpUcP4F2vIaFPvUjYmEn4NmlepXvKzcpg14YZ7N40k8LcTMIbtCGmdzwduj+Hf52aU17vbqEJciU0QVZKKaVuDofDsG3FOZYlprNj1Xm8fYTeTzZimCWaTr3Cr3ttrDGGjG/2k5q4jmPLnUslWj4WQ2xCHJGPtvX4/PYLWVhnfYJ12nxKj2WwvV4ACxv58MX+NOx2O8nJyYwdO/aKz5w9e5aGDRs6H+pzOCjY+A3W5CTyv10OQFC/nxI+zkKdHo9W6T7tpcUc+uETUlOSOHNsEz5+gbS7fzyxfRKo3zTG4/OoimmCXAlNkJVSSqmb79ShfJZPTeer90+Sb7XRMjaE4QlR9B3bhICg6tUHdpdz/CK7pq9n98xNFF3IJ7xdQ2ItcXSY8CB+oZ49AGfsdvJXrMWalEzBqhTO+MDyDvX5w9v/JPSR7pcTXYfDQdu2bQkODsZisTB27FiCgpwPDpaeOIZ1/nSsi97DkX0Bv1YdCBtnIXTEs3gFV21NdmbG96SlJLF/xzzspUU0bRVHTJyFVl1G4u19Yx6ErK00Qa6EJshKKaXUrVOUb+PbeadZ+s5xjqXlERzuw4DnmjEsPoqmrT3flKM8tqJSDn68k7SkFM5uPY5vsD/tn3mA2IQ4Ijo28fg8JQePYZ06j5wPFuOw5uLXpT3hCeMJGTucVWu/Y8iQIZfbhoeH89xzzxEfH0/r1s56yY7iIvK+WEh2chLFadvwCgohZMSzhI2Lx791xyrdU1H+RfZsnkXa+unkXDhCUFhTOvV8mU49XyI4rGmVzqWcNEGuhCbISiml1K1njGH3+iyWJaWzYfFZ7DZDt5/U57EpUXQb1ABv7+svTXZ223FSk1I4uOB77MU2mj3SmtiEPtzz0xi8fDyrZezILyA3eSnZicmUpO3HKzyURfc15b82fU1hUdFV7QcPHozFYmHQoEF4u+olF/24ley5ieStWIgpLaFO90cJH2chqN9jiI/ns+fG4eDY3pWkrkskfe+XeHn50OreJ4jpHU/TVnG3rJzbt6fmsTd7E8Oi4okK7nBLrnmjaYJcCU2QlVJKqdvr4ukiVr57gpXvZnDhVDGNW9Zh6OQofvJCM0Ii/K77/IXn89gzaxNp0zaQe/wiQc3CiJnUm04v9SCwUahH5zDGULR+O9lJyeQt/gqrrZhl7eozN+cER06fuqp9y5YtiY+P5/nnnyciwvngoO3iOXIWzcI6fxq2U+n4NI4kbMwkQp96EZ/6jap0T9nnDpGWMpW9Wz6guDCbek1jiI1LoN394/D1v/6Z+IrMPfg6C4+8gc2UcG+9fgyLstC9wfDL21zfCTRBroQmyEoppVTNYCt1sOHTsyyfms6udVn4BXjx8JgmDLdE0abb9VdycNgdHPtiN6mJ68j4ej9evt60fvJeYhPiaNyjpcczsLbTmVhnfox1+gJKT59lU6NA5tc1fL1/F2Vzp9dff53XXnvtimPGbid/zTKyk5Mo3PgN+PoSMvhpwsZZCLi3e5VmgktLCjiwfR6pKYmcP/kjfnXC6PjQc8T0jie84c2rhZxdco5VGe/xRcY0zhVlUD8gkqHNJzMo8kXC/RvetOveKJogV0ITZKWUUqrmOZqWy/KkdNbMPUVRvp323cMYbomm91ON8fO//vrAWfvPkjZtPXtnb6XEWkiD+yKJscTRdkw3fAM9m7U2paXkLfkaa1Iyheu2keEnfNK2LgvS95KVk4OPjw/p6ek0aXLl2mebzYaPa2lFyZH9zprKn87GkZeDf6euhI2zEDJsDF4Bnu+uZ4zh9NGNpK5L5PAPn+Bw2IhqP5DYuASiOw3By8vz7bGrwu6wseXccpanJ7Hzwjf4iC9xjZ/msegptAu7MVtp3wyaIFdCE2SllFKq5srLLuWbD0+yPCmdkwcLCG/ox6CXIhn8cnMaRlV/e+ZLSvKK2T93G2lJKVzYdRr/uoF0fL47MZN7EdaqgcfnKU7bT3ZSMrkffU5BQT5f3VOXzJh7eHPhR3j5/zvhPnDgAH369OGFF15g0qRJNG/urJfsyMslZ+lcrMlJlBzcjVdYXUKfeJ7wsfH4Rt1TpXvKzznD7o0z2bVhOvnWU4RERBPTO56OPV6gTlC9Kp2rKtLz9vJF+jS+PjmbQnsurUO78ljUFB5uMho/7+uvf30jaYJcCU2QlVJKqZrP4TDs/OYCyxKPs3X5OUSgx4hGDI2P4t5HI25ITeVTKYdJTVzH4U9TMQ5D9OAOxFriiB7UweNd7ezZOeTM/hTr1HmUHjyGd8N6hL70NGGvjMa3eRN++ctf8tZbbwHg5eXFiBEjsFgs9O3b11lT2RgKt63DOjeRvK+XgMNB4MNDCB9nITDuJ1XaXc9uL+VI6mekpUzl5KHv8PYNoG3X0cTGJdAwqlu14uSJAlsua07NZVl6Iul5ewjxjWBgs+cZFhVP48CWN+26VaEJciU0QVZKKaXuLGePFfDF9Ay+nHmC3IulNG8fxPCEKB59phlBodf/oFjeKSu7Zmxg97sbKTiTQ+g99YiJj6Pjcw8REOHZA3DG4aDgm41YE+eSv/xbECHwp/34yQ+r2H308FXtO3TogMVi4dlnnyUkxFkv2XbmJNaFM7AufBf7+bP4RrUibGw8oU88h3dY3Srd0/lTaexaP419W+dQWpJPo+iHiImLp+19o/D29Xx77KowxvDjxW9Znj6VTZmfYYyDBxoMYXhUAl3rD8RLbt9W2pogV0ITZKWUUurOVFxoJ2XRGZa+c5yD23MYFh+FJalqNYYrYi+xcXhJKmlJKZxKOUyb0V0ZNH9ilc9TeuwE1mnzsc5aRMmFLNL+OYUZX3zOmjVrrmobHBzMhAkTsFgsdOjgLKFmSkrI+2ox2XOTKPp+AyEjnqXx/3xYrXsqLrSyb+uHpKZMJTtzP32eeJsuD/+sWueqinOFGaw88S5fZswkq+Qs/3hoPZ3q9rrp1y2PJsiVEJFzwPFKG5avPnD+BnWnNtG4VY/GrXo0btWjcasejVv1aNyqR+NWPe2MMVXb2tDlzilmdx2MMZ6vwL8GEdle3d9AajONW/Vo3KpH41Y9Grfq0bhVj8atejRu1SMi1V4+cPsWhiillFJKKVUDaYKslFJKKaWUG02QPfPu7e7AHUrjVj0at+rRuFWPxq16NG7Vo3GrHo1b9VQ7brXiIT2llFJKKaU8pTPISimllFJKudEEWSmllFJKKTeaICullFJKKeVGE2QXEfmziPwoIltF5HsRmVxOO4uI7BORXSKyXEQa3eq+1iSexE1E6olIvohsdvv6x+3ob00iIp1E5KKIvH6N98QV2/0iskdE5oqIZ3uf3uUqiVs313vuY+3Xt6GbNYqIpInINreYXLW1l465q3kYNx1z1yAiv3b9nNwmIttFJLDM+zrersGDuOl4cxGRKWXisFlEckTk4TLtqjXWasVGIR7KAu43xpSKSAPgqIh8aYw5eqmBiDwC/A7oZow55/oBPQsYdjs6XENUGjecOwBtNMYMuD1drHlEJBxIAuaX02QCMAS41xhTKCIfAH8DEm5RF2skD+JWH1hsjHnp1vXqjhACdDHGOCpoo2Puap7ETcdcGSLyJ8Af51iyuf7cFpVppuOtDA/jpuPNxRjzDvDOpdci0gTYDJTdHKRaY01nkF2MMf9rjCl1vWwB5AEXyzQbBcw1xpxzvX4bGCQiYbemlzWPh3GrD8SKyCbXb8Xv1OaZdxHxAj4E/gCcK6fZKGCGMabQ9fptYMwt6F6N5WHc6gMDRWSL6+uvIlKtbUbvMhHAWhHZKSIfi8i912ijY+5qnsRNx5wbV1L3EyAX2CAia4Ee1/glQ8ebmyrETcdb+X4PJBlj8sscr9ZY0wTZjYi0EZGDwCpgvDHGWqbJPcDhSy+MMVmAFWdiWGt5ELftQFNjTA/gEaAEWCEicmt7WmP8BfjaGLOxgjZXjDXX9xG1+ZcxPIvbp0ALY8xDwGCgJTDnVnSuhmtkjIkDugGfA9+ISFSZNjrmruZJ3HTMXakb0Ak44YrJL4B5ItKqTDsdb1fyNG463q7BNXs8Eph6jberNdY0QXZjjDlojGkD9APmiEinMk0EsJc5ZqOWx7GyuBljio0xdtf3+cBvgfZA61ve2dtMRJ4AoowxiZU15cqxZnP9t1aONU/jZowpNK7i7saYi8CvgeEiUucWdLPGujRzYoxxGGOSgR04Z6vc6Zgrw5O46Zi7SkPgmDHmQwBjzE5gNTCoTDsdb1fyKG463sr1Ks7Z47xrvFetsaZrkK/BGLNTRDYBfYHdbm+dAC7PHrgWz9dzHa/1KohbWYJzYObcko7VLIOBDiKy2fU6EpwPnhljnnJrd8VYc32fB2Tfkl7WPJ7GrSxvnGv4im9y/+403lz950/HXOWuFbdrtanNYy6Tq2Pk4OrJJR1vV/I0bmXV9vGGiDTFOXvcvpwm1RprtfU3tSuISIyIPH3pn/xFpBnwELBTRFaLSJyr6UfAOLdpeQuwwW1Ncq3iadxE5DHXP3/gavtfwHfGmLO3q++3izHmRWNMN2NMd2NMd+A919ckEdkgIm1cTT8CXhQRP9frKcCnl2YOahtP4yYio11r+RARH+AN4KNKHrK6q4nIAyLSze31EKADzuUCOubK4WncdMxdJQW4R0R6A4hIO+BRYJuOtwp5FDcdb9f0KjD10uyxOCtnXfdY0xlkp+PAJOB3IlIK+AF/xPnPaS1xPqiBMeZbEUnC+dBGKXAKGH17ulwjeBQ3wACfiogvzt+IU4Fxt767NVogEA1c+uVrDs4lKFtFxAbsoRY/3V2BsnGrA6wWEQfOcbcW+M/b1LeaIg/4XxFpjHOW6SIwEB1zlfE0bjrm3BhjSly/TLznerDWgbOKQCY63spVhbjpeHPjmph7AmjndviG/N0mtfeXNaWUUkoppa6mSyyUUkoppZRyowmyUkoppZRSbjRBVkoppZRSyo0myEoppZRSSrnRBFkppZRSSik3miArpVQNIyIDRWSLiOSJyH4R+VmZ9zeLSJVKYonIMREpu5tZRe3F7fvlIvJ6FT7bQkSMiNSvSh+VUqqm0ARZKaVuIhH5D1eyeOlrSpnXRkTGu7XvCnwGJOGs5fkK8HsRebmS6wwRka2upPqAiPxWRLw96F87EbG5fZW66ppXuJGPiPxKRE6KSL6IfCwi9TyJh1JK3Qk0QVZKqZvrb0AI0BVnYf/pwCighev4PsDq1v4pYKUxZo4x5oIx5jvgH1SwuY6IPAQsAd7FWTD/FZw7ff6uss4ZY/YDAW5ffsBC4OMKrjcR+A/gReB+nJsCLajsWkopdafQBFkppW4iY0ypawtUPyDLGFMKzANauo7XB9y3q/cC7GVPU8llxgBfGmPeM8acNMZ8C/wV505cnvTRdukL5+6YfYDXKvjIb4E3jDErjTF7geeBfiIS68n1lFKqptMEWSmlbo36wE73AyISDBQBR90OfwIME5EnRSRIRLoDv8I5q1seAWxljtmowt/xIhItIrOBXwL9jTEXymkXAnQAvrt0zBiTDhwCHvT0ekopVZP53O4OKKXU3UpEjuFcR+x+7NJs8Lduh8+4nol73BjzmYiMBv4MzAXOAInAtAou9SnwlYg8CazAuczi91ScVF/qzwDg5ziT29lAN2NMbgUfCXH9t2wCfd7tPaWUuqNpgqyUUjeJMaZFNT+3FFhahfZrRWQCzmUVC3Emq+8Df/Lg4yddnxkFFAOISNmfDX/n3wnxWZyz0/WAI25t6rvOpZRSdzxNkJVS6hYQkaeAj8ocXmeMGVhOe2+cSyeuZShQ6H7AGLMAWCAi3saYsmuYy2WM2QPsEZHfAL8pp1k48CawyxhjF5F9QD9gm6uvLYDWwG5Pr6uUUjWZJshKKXVrLMeZRLorFhExxlzrIbxioKIybW8Dvyh78FJyLCIBOKtLNAWyKuucMeYfOKtlXEVEPitz6J/AWyKSinP99FRgtTFGE2Sl1F1BE2SllLrJXGuRI90OGZzLFPyATBFpaYwpcv+MMcZHRP4PCDbGPO86TxCQB3R0VY9ARH6Pc73xJT44y7V54UyMzwB/8aCPr1Nx5Yof3Po2W0TqAu8BYcAXOKtfKKXUXUETZKWUusnKrkUWkU44axR3AcaUTY7dlAD+bq8v/Z3tXrFiKs6H+eDfiXchkGeMcbhd8w0PuroUeKKc9xzuL4wx/wL+5cE5lVLqjqMJslJK3WSuXeY6AX1xrh/ugHOW919ApIjkACfdl1q4HpSzAQFuD81dSpbNpbXGxpgcIOdGdZXyfy44cCbsSil119M6yEopdROJyH8Ae3FWlPDDucNdKM6d9aw4S6xtAbq5faYFUIpzlnmk63v37Z8PAmtvQneH45x9vtbXuptwPaWUqpHk2s+GKKWUUkopVTvpDLJSSimllFJuNEFWSimllFLKjSbISimllFJKudEEWSmllFJKKTeaICullFJKKeVGE2SllFJKKaXcaIKslFJKKaWUm/8HM2qeJWix7S0AAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.linear_model import LogisticRegression\n", "\n", "X = iris[\"data\"][:, (2, 3)] # petal length, petal width\n", "y = (iris[\"target\"] == 2).astype(np.int)\n", "\n", "log_reg = LogisticRegression(solver='liblinear', C=10**10, random_state=42)\n", "log_reg.fit(X, y)\n", "\n", "x0, x1 = np.meshgrid(\n", " np.linspace(2.9, 7, 500).reshape(-1, 1),\n", " np.linspace(0.8, 2.7, 200).reshape(-1, 1),\n", " )\n", "X_new = np.c_[x0.ravel(), x1.ravel()]\n", "\n", "y_proba = log_reg.predict_proba(X_new)\n", "\n", "plt.figure(figsize=(10, 4))\n", "plt.plot(X[y==0, 0], X[y==0, 1], \"bs\")\n", "plt.plot(X[y==1, 0], X[y==1, 1], \"g^\")\n", "\n", "zz = y_proba[:, 1].reshape(x0.shape)\n", "contour = plt.contour(x0, x1, zz, cmap=plt.cm.brg)\n", "\n", "\n", "left_right = np.array([2.9, 7])\n", "boundary = -(log_reg.coef_[0][0] * left_right + log_reg.intercept_[0]) / log_reg.coef_[0][1]\n", "\n", "plt.clabel(contour, inline=1, fontsize=12)\n", "plt.plot(left_right, boundary, \"k--\", linewidth=3)\n", "plt.text(3.5, 1.5, \"Iris-Virginica 아님\", fontsize=14, color=\"b\", ha=\"center\")\n", "plt.text(6.5, 2.3, \"Iris-Virginica\", fontsize=14, color=\"g\", ha=\"center\")\n", "plt.xlabel(\"꽃잎의 길이\", fontsize=14)\n", "plt.ylabel(\"꽃잎의 폭\", fontsize=14)\n", "plt.axis([2.9, 7, 0.8, 2.7])\n", "save_fig(\"logistic_regression_contour_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "LogisticRegression(C=10, class_weight=None, dual=False, fit_intercept=True,\n", " intercept_scaling=1, l1_ratio=None, max_iter=100,\n", " multi_class='multinomial', n_jobs=None, penalty='l2',\n", " random_state=42, solver='lbfgs', tol=0.0001, verbose=0,\n", " warm_start=False)" ] }, "execution_count": 60, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X = iris[\"data\"][:, (2, 3)] # 꽃잎 길이, 꽃잎 넓이\n", "y = iris[\"target\"]\n", "\n", "softmax_reg = LogisticRegression(multi_class=\"multinomial\",solver=\"lbfgs\", C=10, random_state=42)\n", "softmax_reg.fit(X, y)" ] }, { "cell_type": "code", "execution_count": 61, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "x0, x1 = np.meshgrid(\n", " np.linspace(0, 8, 500).reshape(-1, 1),\n", " np.linspace(0, 3.5, 200).reshape(-1, 1),\n", " )\n", "X_new = np.c_[x0.ravel(), x1.ravel()]\n", "\n", "\n", "y_proba = softmax_reg.predict_proba(X_new)\n", "y_predict = softmax_reg.predict(X_new)\n", "\n", "zz1 = y_proba[:, 1].reshape(x0.shape)\n", "zz = y_predict.reshape(x0.shape)\n", "\n", "plt.figure(figsize=(10, 4))\n", "plt.plot(X[y==2, 0], X[y==2, 1], \"g^\", label=\"Iris-Virginica\")\n", "plt.plot(X[y==1, 0], X[y==1, 1], \"bs\", label=\"Iris-Versicolor\")\n", "plt.plot(X[y==0, 0], X[y==0, 1], \"yo\", label=\"Iris-Setosa\")\n", "\n", "from matplotlib.colors import ListedColormap\n", "custom_cmap = ListedColormap(['#fafab0','#9898ff','#a0faa0'])\n", "\n", "plt.contourf(x0, x1, zz, cmap=custom_cmap)\n", "contour = plt.contour(x0, x1, zz1, cmap=plt.cm.brg)\n", "plt.clabel(contour, inline=1, fontsize=12)\n", "plt.xlabel(\"꽃잎의 길이\", fontsize=14)\n", "plt.ylabel(\"꽃잎의 폭\", fontsize=14)\n", "plt.legend(loc=\"center left\", fontsize=14)\n", "plt.axis([0, 7, 0, 3.5])\n", "save_fig(\"softmax_regression_contour_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 62, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([2])" ] }, "execution_count": 62, "metadata": {}, "output_type": "execute_result" } ], "source": [ "softmax_reg.predict([[5, 2]])" ] }, { "cell_type": "code", "execution_count": 63, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[6.38014896e-07, 5.74929995e-02, 9.42506362e-01]])" ] }, "execution_count": 63, "metadata": {}, "output_type": "execute_result" } ], "source": [ "softmax_reg.predict_proba([[5, 2]])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 연습문제 해답" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 1. to 11." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "부록 A를 참고하세요." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 12. 조기 종료를 사용한 배치 경사 하강법으로 소프트맥스 회귀 구현하기\n", "(사이킷런을 사용하지 않고)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "먼저 데이터를 로드합니다. 앞서 사용했던 Iris 데이터셋을 재사용하겠습니다." ] }, { "cell_type": "code", "execution_count": 64, "metadata": {}, "outputs": [], "source": [ "X = iris[\"data\"][:, (2, 3)] # 꽃잎 길이, 꽃잎 넓이\n", "y = iris[\"target\"]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "모든 샘플에 편향을 추가합니다 ($x_0 = 1$):" ] }, { "cell_type": "code", "execution_count": 65, "metadata": {}, "outputs": [], "source": [ "X_with_bias = np.c_[np.ones([len(X), 1]), X]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "결과를 일정하게 유지하기 위해 랜덤 시드를 지정합니다:" ] }, { "cell_type": "code", "execution_count": 66, "metadata": {}, "outputs": [], "source": [ "np.random.seed(2042)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "데이터셋을 훈련 세트, 검증 세트, 테스트 세트로 나누는 가장 쉬운 방법은 사이킷런의 `train_test_split()` 함수를 사용하는 것입니다. 이 연습문제의 목적은 직접 만들어 보면서 알고리즘을 이해하는 것이므로 가능한 한가지 방법은 다음과 같습니다:" ] }, { "cell_type": "code", "execution_count": 67, "metadata": {}, "outputs": [], "source": [ "test_ratio = 0.2\n", "validation_ratio = 0.2\n", "total_size = len(X_with_bias)\n", "\n", "test_size = int(total_size * test_ratio)\n", "validation_size = int(total_size * validation_ratio)\n", "train_size = total_size - test_size - validation_size\n", "\n", "rnd_indices = np.random.permutation(total_size)\n", "\n", "X_train = X_with_bias[rnd_indices[:train_size]]\n", "y_train = y[rnd_indices[:train_size]]\n", "X_valid = X_with_bias[rnd_indices[train_size:-test_size]]\n", "y_valid = y[rnd_indices[train_size:-test_size]]\n", "X_test = X_with_bias[rnd_indices[-test_size:]]\n", "y_test = y[rnd_indices[-test_size:]]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "타깃은 클래스 인덱스(0, 1 그리고 2)이지만 소프트맥스 회귀 모델을 훈련시키기 위해 필요한 것은 타깃 클래스의 확률입니다. 각 샘플에서 확률이 1인 타깃 클래스를 제외한 다른 클래스의 확률은 0입니다(다른 말로하면 주어진 샘플에 대한 클래스 확률이 원-핫 벡터입니다). 클래스 인덱스를 원-핫 벡터로 바꾸는 간단한 함수를 작성하겠습니다:" ] }, { "cell_type": "code", "execution_count": 68, "metadata": {}, "outputs": [], "source": [ "def to_one_hot(y):\n", " n_classes = y.max() + 1\n", " m = len(y)\n", " Y_one_hot = np.zeros((m, n_classes))\n", " Y_one_hot[np.arange(m), y] = 1\n", " return Y_one_hot" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "10개 샘플만 넣어 이 함수를 테스트해 보죠:" ] }, { "cell_type": "code", "execution_count": 69, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0, 1, 2, 1, 1, 0, 1, 1, 1, 0])" ] }, "execution_count": 69, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_train[:10]" ] }, { "cell_type": "code", "execution_count": 70, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[1., 0., 0.],\n", " [0., 1., 0.],\n", " [0., 0., 1.],\n", " [0., 1., 0.],\n", " [0., 1., 0.],\n", " [1., 0., 0.],\n", " [0., 1., 0.],\n", " [0., 1., 0.],\n", " [0., 1., 0.],\n", " [1., 0., 0.]])" ] }, "execution_count": 70, "metadata": {}, "output_type": "execute_result" } ], "source": [ "to_one_hot(y_train[:10])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "잘 되네요, 이제 훈련 세트와 테스트 세트의 타깃 클래스 확률을 담은 행렬을 만들겠습니다:" ] }, { "cell_type": "code", "execution_count": 71, "metadata": {}, "outputs": [], "source": [ "Y_train_one_hot = to_one_hot(y_train)\n", "Y_valid_one_hot = to_one_hot(y_valid)\n", "Y_test_one_hot = to_one_hot(y_test)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "이제 소프트맥스 함수를 만듭니다. 다음 공식을 참고하세요:\n", "\n", "$\\sigma\\left(\\mathbf{s}(\\mathbf{x})\\right)_k = \\dfrac{\\exp\\left(s_k(\\mathbf{x})\\right)}{\\sum\\limits_{j=1}^{K}{\\exp\\left(s_j(\\mathbf{x})\\right)}}$" ] }, { "cell_type": "code", "execution_count": 72, "metadata": {}, "outputs": [], "source": [ "def softmax(logits):\n", " exps = np.exp(logits)\n", " exp_sums = np.sum(exps, axis=1, keepdims=True)\n", " return exps / exp_sums" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "훈련을 위한 준비를 거의 마쳤습니다. 입력과 출력의 개수를 정의합니다:" ] }, { "cell_type": "code", "execution_count": 73, "metadata": {}, "outputs": [], "source": [ "n_inputs = X_train.shape[1] # == 3 (특성 2와 편향)\n", "n_outputs = len(np.unique(y_train)) # == 3 (3개의 붓꽃 클래스)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "이제 좀 복잡한 훈련 파트입니다! 이론적으로는 간단합니다. 그냥 수학 공식을 파이썬 코드로 바꾸기만 하면 됩니다. 하지만 실제로는 꽤 까다로운 면이 있습니다. 특히, 항과 인덱스가 뒤섞이기 쉽습니다. 제대로 작동할 것처럼 코드를 작성했더라도 실제 제대로 계산하지 못합니다. 확실하지 않을 때는 각 항의 크기를 기록하고 이에 상응하는 코드가 같은 크기를 만드는지 확인합니다. 각 항을 독립적으로 평가해서 출력해 보는 것도 좋습니다. 사실 사이킷런에 이미 잘 구현되어 있기 때문에 이렇게 할 필요는 없습니다. 직접 만들어 보면 어떻게 작동하는지 이해하는데 도움이 됩니다.\n", "\n", "구현할 공식은 비용함수입니다:\n", "\n", "$J(\\mathbf{\\Theta}) =\n", "- \\dfrac{1}{m}\\sum\\limits_{i=1}^{m}\\sum\\limits_{k=1}^{K}{y_k^{(i)}\\log\\left(\\hat{p}_k^{(i)}\\right)}$\n", "\n", "그리고 그래디언트 공식입니다:\n", "\n", "$\\nabla_{\\mathbf{\\theta}^{(k)}} \\, J(\\mathbf{\\Theta}) = \\dfrac{1}{m} \\sum\\limits_{i=1}^{m}{ \\left ( \\hat{p}^{(i)}_k - y_k^{(i)} \\right ) \\mathbf{x}^{(i)}}$\n", "\n", "$\\hat{p}_k^{(i)} = 0$이면 $\\log\\left(\\hat{p}_k^{(i)}\\right)$를 계산할 수 없습니다. `nan` 값을 피하기 위해 $\\log\\left(\\hat{p}_k^{(i)}\\right)$에 아주 작은 값 $\\epsilon$을 추가하겠습니다." ] }, { "cell_type": "code", "execution_count": 74, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0 5.446205811872683\n", "500 0.8350062641405651\n", "1000 0.6878801447192402\n", "1500 0.6012379137693313\n", "2000 0.5444496861981873\n", "2500 0.5038530181431525\n", "3000 0.4729228972192248\n", "3500 0.44824244188957774\n", "4000 0.42786510939287936\n", "4500 0.41060071429187134\n", "5000 0.3956780375390374\n" ] } ], "source": [ "eta = 0.01\n", "n_iterations = 5001\n", "m = len(X_train)\n", "epsilon = 1e-7\n", "\n", "Theta = np.random.randn(n_inputs, n_outputs)\n", "\n", "for iteration in range(n_iterations):\n", " logits = X_train.dot(Theta)\n", " Y_proba = softmax(logits)\n", " loss = -np.mean(np.sum(Y_train_one_hot * np.log(Y_proba + epsilon), axis=1))\n", " error = Y_proba - Y_train_one_hot\n", " if iteration % 500 == 0:\n", " print(iteration, loss)\n", " gradients = 1/m * X_train.T.dot(error)\n", " Theta = Theta - eta * gradients" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "바로 이겁니다! 소프트맥스 모델을 훈련시켰습니다. 모델 파라미터를 확인해 보겠습니다:" ] }, { "cell_type": "code", "execution_count": 75, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ 3.32094157, -0.6501102 , -2.99979416],\n", " [-1.1718465 , 0.11706172, 0.10507543],\n", " [-0.70224261, -0.09527802, 1.4786383 ]])" ] }, "execution_count": 75, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Theta" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "검증 세트에 대한 예측과 정확도를 확인해 보겠습니다:" ] }, { "cell_type": "code", "execution_count": 76, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.9666666666666667" ] }, "execution_count": 76, "metadata": {}, "output_type": "execute_result" } ], "source": [ "logits = X_valid.dot(Theta)\n", "Y_proba = softmax(logits)\n", "y_predict = np.argmax(Y_proba, axis=1)\n", "\n", "accuracy_score = np.mean(y_predict == y_valid)\n", "accuracy_score" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "와우, 이 모델이 매우 잘 작동하는 것 같습니다. 연습을 위해서 $\\ell_2$ 규제를 조금 추가해 보겠습니다. 다음 코드는 위와 거의 동일하지만 손실에 $\\ell_2$ 페널티가 추가되었고 그래디언트에도 항이 추가되었습니다(`Theta`의 첫 번째 원소는 편향이므로 규제하지 않습니다). 학습률 `eta`도 증가시켜 보겠습니다." ] }, { "cell_type": "code", "execution_count": 77, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0 6.629842469083912\n", "500 0.5339667976629505\n", "1000 0.503640075014894\n", "1500 0.4946891059460321\n", "2000 0.4912968418075477\n", "2500 0.48989924700933296\n", "3000 0.4892990598451198\n", "3500 0.48903512443978603\n", "4000 0.48891736218308185\n", "4500 0.4888643337449302\n", "5000 0.4888403120738818\n" ] } ], "source": [ "eta = 0.1\n", "n_iterations = 5001\n", "m = len(X_train)\n", "epsilon = 1e-7\n", "alpha = 0.1 # 규제 하이퍼파라미터\n", "\n", "Theta = np.random.randn(n_inputs, n_outputs)\n", "\n", "for iteration in range(n_iterations):\n", " logits = X_train.dot(Theta)\n", " Y_proba = softmax(logits)\n", " xentropy_loss = -np.mean(np.sum(Y_train_one_hot * np.log(Y_proba + epsilon), axis=1))\n", " l2_loss = 1/2 * np.sum(np.square(Theta[1:]))\n", " loss = xentropy_loss + alpha * l2_loss\n", " error = Y_proba - Y_train_one_hot\n", " if iteration % 500 == 0:\n", " print(iteration, loss)\n", " gradients = 1/m * X_train.T.dot(error) + np.r_[np.zeros([1, n_outputs]), alpha * Theta[1:]]\n", " Theta = Theta - eta * gradients" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "추가된 $\\ell_2$ 페널티 때문에 이전보다 손실이 조금 커보이지만 더 잘 작동하는 모델이 되었을까요? 확인해 보죠:" ] }, { "cell_type": "code", "execution_count": 78, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1.0" ] }, "execution_count": 78, "metadata": {}, "output_type": "execute_result" } ], "source": [ "logits = X_valid.dot(Theta)\n", "Y_proba = softmax(logits)\n", "y_predict = np.argmax(Y_proba, axis=1)\n", "\n", "accuracy_score = np.mean(y_predict == y_valid)\n", "accuracy_score" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "와우, 완벽한 정확도네요! 운이 좋은 검증 세트일지 모르지만 잘 된 것은 맞습니다." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "이제 조기 종료를 추가해 보죠. 이렇게 하려면 매 반복에서 검증 세트에 대한 손실을 계산해서 오차가 증가하기 시작할 때 멈춰야 합니다." ] }, { "cell_type": "code", "execution_count": 79, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0 4.7096017363419875\n", "500 0.5739711987633519\n", "1000 0.5435638529109128\n", "1500 0.5355752782580262\n", "2000 0.5331959249285544\n", "2500 0.5325946767399383\n", "2765 0.5325460966791898\n", "2766 0.5325460971327975 early stopping!\n" ] } ], "source": [ "eta = 0.1 \n", "n_iterations = 5001\n", "m = len(X_train)\n", "epsilon = 1e-7\n", "alpha = 0.1 # 규제 하이퍼파라미터\n", "best_loss = np.infty\n", "\n", "Theta = np.random.randn(n_inputs, n_outputs)\n", "\n", "for iteration in range(n_iterations):\n", " logits = X_train.dot(Theta)\n", " Y_proba = softmax(logits)\n", " xentropy_loss = -np.mean(np.sum(Y_train_one_hot * np.log(Y_proba + epsilon), axis=1))\n", " l2_loss = 1/2 * np.sum(np.square(Theta[1:]))\n", " loss = xentropy_loss + alpha * l2_loss\n", " error = Y_proba - Y_train_one_hot\n", " gradients = 1/m * X_train.T.dot(error) + np.r_[np.zeros([1, n_outputs]), alpha * Theta[1:]]\n", " Theta = Theta - eta * gradients\n", "\n", " logits = X_valid.dot(Theta)\n", " Y_proba = softmax(logits)\n", " xentropy_loss = -np.mean(np.sum(Y_valid_one_hot * np.log(Y_proba + epsilon), axis=1))\n", " l2_loss = 1/2 * np.sum(np.square(Theta[1:]))\n", " loss = xentropy_loss + alpha * l2_loss\n", " if iteration % 500 == 0:\n", " print(iteration, loss)\n", " if loss < best_loss:\n", " best_loss = loss\n", " else:\n", " print(iteration - 1, best_loss)\n", " print(iteration, loss, \"early stopping!\")\n", " break" ] }, { "cell_type": "code", "execution_count": 80, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1.0" ] }, "execution_count": 80, "metadata": {}, "output_type": "execute_result" } ], "source": [ "logits = X_valid.dot(Theta)\n", "Y_proba = softmax(logits)\n", "y_predict = np.argmax(Y_proba, axis=1)\n", "\n", "accuracy_score = np.mean(y_predict == y_valid)\n", "accuracy_score" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "그래도 완벽하고 더 빠릅니다." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "이제 전체 데이터셋에 대한 모델의 예측을 그래프로 나타내 보겠습니다:" ] }, { "cell_type": "code", "execution_count": 81, "metadata": { "scrolled": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "x0, x1 = np.meshgrid(\n", " np.linspace(0, 8, 500).reshape(-1, 1),\n", " np.linspace(0, 3.5, 200).reshape(-1, 1),\n", " )\n", "X_new = np.c_[x0.ravel(), x1.ravel()]\n", "X_new_with_bias = np.c_[np.ones([len(X_new), 1]), X_new]\n", "\n", "logits = X_new_with_bias.dot(Theta)\n", "Y_proba = softmax(logits)\n", "y_predict = np.argmax(Y_proba, axis=1)\n", "\n", "zz1 = Y_proba[:, 1].reshape(x0.shape)\n", "zz = y_predict.reshape(x0.shape)\n", "\n", "plt.figure(figsize=(10, 4))\n", "plt.plot(X[y==2, 0], X[y==2, 1], \"g^\", label=\"Iris-Virginica\")\n", "plt.plot(X[y==1, 0], X[y==1, 1], \"bs\", label=\"Iris-Versicolor\")\n", "plt.plot(X[y==0, 0], X[y==0, 1], \"yo\", label=\"Iris-Setosa\")\n", "\n", "from matplotlib.colors import ListedColormap\n", "custom_cmap = ListedColormap(['#fafab0','#9898ff','#a0faa0'])\n", "\n", "plt.contourf(x0, x1, zz, cmap=custom_cmap)\n", "contour = plt.contour(x0, x1, zz1, cmap=plt.cm.brg)\n", "plt.clabel(contour, inline=1, fontsize=12)\n", "plt.xlabel(\"꽃잎 길이\", fontsize=14)\n", "plt.ylabel(\"꽃잎 폭\", fontsize=14)\n", "plt.legend(loc=\"upper left\", fontsize=14)\n", "plt.axis([0, 7, 0, 3.5])\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "이제 테스트 세트에 대한 모델의 최종 정확도를 측정해 보겠습니다:" ] }, { "cell_type": "code", "execution_count": 82, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.9333333333333333" ] }, "execution_count": 82, "metadata": {}, "output_type": "execute_result" } ], "source": [ "logits = X_test.dot(Theta)\n", "Y_proba = softmax(logits)\n", "y_predict = np.argmax(Y_proba, axis=1)\n", "\n", "accuracy_score = np.mean(y_predict == y_test)\n", "accuracy_score" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "완벽했던 최종 모델의 성능이 조금 떨어졌습니다. 이런 차이는 데이터셋이 작기 때문일 것입니다. 훈련 세트와 검증 세트, 테스트 세트를 어떻게 샘플링했는지에 따라 매우 다른 결과를 얻을 수 있습니다. 몇 번 랜덤 시드를 바꾸고 이 코드를 다시 실행해 보면 결과가 달라지는 것을 확인할 수 있습니다." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.3" }, "nav_menu": {}, "toc": { "navigate_menu": true, "number_sections": true, "sideBar": true, "threshold": 6, "toc_cell": false, "toc_section_display": "block", "toc_window_display": false } }, "nbformat": 4, "nbformat_minor": 1 }